1 / 17

Stages of design

Stages of design. High level design High level data structure Architecture Low level design-code design Algorithms Low level data structures Executable design Very lower level of detail. Types of design. Data design Architectural design External interface design Algorithmic design.

adella
Download Presentation

Stages of design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Stages of design • High level design • High level data structure • Architecture • Low level design-code design • Algorithms • Low level data structures • Executable design • Very lower level of detail

  2. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Types of design • Data design • Architectural design • External interface design • Algorithmic design

  3. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Design techniques • Require some sort of decomposition • Modular decomposition • Data oriented decomposition • Event oriented decomposition • Outside in design • Object oriented design

  4. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Architectural view -2 • Which structure are used, and why? • Common view include • Module • Process • Uses • Class • Data flow • Class • physical

  5. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Typical roles and responsibilities • Requirements • Technical risk • Analysis of problem domain • Design of overall software • Reviewer and approver of deliverables • Mentoring of design and developers • Integration and test support • Implementation support • Team lead • Laison to project management

  6. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles • Project management • Responsibilities • Program planning, subcontract management, supplier management, software estimation, release management, operation management • Relation to software architect • Software architect works with project management in definition of release contents and prioritization of features included or omitted from a release

  7. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • Development team managers • Responsibilities • Managing individual development teams • Relation to software architect • These managers should clearly understand the interface they provide and consume to other development teams and external entities • High level aspects (COTS tools for interfaces, complexity of development, modification of each interface)

  8. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • System architect/ chief engineer • Responsibilities • Overall system design and delivery • Technical leadership pf the systems engineering, software development, hardware design, network design, even test organizations • Relation to software architect • Interfaces between development teams, external interfaces, requirements related issues • Identify and resolve significant technical issues

  9. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • Chief software engineering • Responsibilities • Ensures the process is followed thoroughout the development life cycle. • Relation to software architect • To make sure the delivered software meets the requirements and the interface and port definitions match by those defined by software architect team.

  10. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • Hardware architect • Responsibilities • Selecting and configuring of hardware • Relation to software architect • Software architect provides low level requirements for selecting hardware • Hardware architect informs hardware restriction to provide requirements • Software architect makes sure the software architecture id defined within the constraints of the hardware.

  11. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • Network architect • Responsibilities • Defining the LAN and WAN design and configuration • Relation to software architect • Communicate for defining network requirements • Defines constraints implies by network back to software architect

  12. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • Technical leads of each release • Responsibilities • Deliver each major release • Relation to software architect • Communicate for technical issues • Software architect deliver a set of architecture views to the technical lead • Communication and interfaces with previous release

  13. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • Data architect • Responsibilities • Definition, development and documentation of the data architect. • Relation to software architect • A member of architecture team. • Software architect have final approval of the data architecture.

  14. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • System engineering leads • Responsibilities • Responsible for delivering the system requirements • Relation to software architect • Software architect review these requirements to make sure they can be delivered • Given the project constraints • Provide feedback to the system engineer

  15. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Relation to other key roles (con) • Software system engineering lead • Responsibilities • Translates and maps the requirements from higher level system group into lower level requirements • Relation to software architect • Software architecture will often be provided th the organization • SSE team will evolve the software architecture in translating requirements

  16. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Skills and background for the architect • Extensive software design and development • Technical leadership • Team facilitation skills • Communication skills • Technical skills • Knowledge of component communication mechanisms • Knowledge of domain • Abstraction skills

  17. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) Traps and pitfalls • Clear definition of leadership • Reporting structure for the software architect • Geographical location of software architect and technical leads • Architecture team size and composition • Software architect lifecycle participation

More Related