Presentation is loading. Please wait.

Presentation is loading. Please wait.

Stages of design  High level design  High level data structure  Architecture  Low level design-code design  Algorithms  Low level data structures.

Similar presentations


Presentation on theme: "Stages of design  High level design  High level data structure  Architecture  Low level design-code design  Algorithms  Low level data structures."— Presentation transcript:

1 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 1

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

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

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

5 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 5

6 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 6

7 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) آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 7

8 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 8

9 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. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 9

10 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. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 10

11 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 11

12 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 12

13 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. آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 13

14 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 14

15 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 15

16 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 16

17 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 آزمايشگاه سيستم های هوشمند (http://ce.aut.ac.ir/islab) 17


Download ppt "Stages of design  High level design  High level data structure  Architecture  Low level design-code design  Algorithms  Low level data structures."

Similar presentations


Ads by Google