1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس...

15
1 د ن م ش و ه م های ت س سي گاه ش ي ما ز آ( http://ce.aut.ac.ir/islab ) زگ ز" ب اس ن ق م ا" های ب م ت س سي مازی ع م د ن م ش و ه های م ت س سي گاه ش ي ما ز آ ز ي/ ي ا2 ب93

Transcript of 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس...

Page 1: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

1آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

معماری سيستمهای با مقياس بزرگ

آزمايشگاه سيستمهای هوشمند93پاييز

Page 2: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

2آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Uses of views

Capturing the design decisions both early on and as enhancements are made

Capturing information about the runtime enviroment for software Providing constrains on the lower-level design and implementation Providing input to the structure of the development organization Designing the system to meet the software reliability, availability,

maintainability, and performance requirements Facilitating communication among the project teams Communicating software capabilities and constraints to varios

developers, testers, and others

Page 3: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

3آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Other way for thinking

Typical questions answered by views of the architecture What are subsystems or components of the software? What are responsibilities of the components? What are the interfaces provided, consumed by these components? What subsystems or components are impact by a change to the software? How much retesting is required if we change this component? When components are involved in installing this change? How are part of system to be physically distributed? How will a change impact the performance of the system What development teams are impacted by a change to this interface? How much effort is involves in the development of this functionality?

Page 4: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

4آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

What software architecture is not

Hardware, network, physical plant architecture Hardware model number, hardware configuration,

routers, LAN Should not duplicate information on other sources Appropriate level of detail Low level implementation details should not

included in the software architecture

Page 5: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

5آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Attributes of software architecture(1/2)

Cultural adaptability Security Data integrity Maintainability characteristics

Portability Changeability

Fragility Rigidity Duplication

Understandability Debugging support Testability usability

Page 6: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

6آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Attributes of software architecture(2/2)

Operational system aspects Availability Manageability Upgradeability Reliability Recoverability

Performance Response Scalability Capacity/throughput

safety

Page 7: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

7آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Points

Members of the architecture team need to constantly evaluate the software architecture to determine if it meets the desire goal with respect to these characteristics

Architects must constantly prioritize and manage the trade-off between these attributes for a given projects

Page 8: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

8آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Why architect?

Architecting simply recognized the need to focus on the bigger picture of the software design and to provide guidance to the development team designers

It is a place to capture early design decitions Provide constraints on the lower level design and

implementation Provide the organizational structure for the development team This goal is that a well defined architecture will produce a

system that will be easier to design, develop and maintain

Page 9: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

9آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Uses of software architecture

Training for the new team members Making modification Testers need to understand the system Ensuring architectural attributes Verification of requirements Project management Operating systems

Page 10: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

10آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Architectural viewpoint summary

Viewpoint are built by applying the various UML diagram types to specific architecture development tasks

Each viewpoint has specific modeling goals and stakeholders

Page 11: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

11آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

IEEE 1471 viewpoints

Conceptual and analysis viewpoint Logical design viewpoint Environment/physical viewpoint

Page 12: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

12آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

UML: Unified Modeling Language

Page 13: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

13آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Conceptual and analysis viewpoint

Viewpoint UML diagram Description

Analysis focused Class Describe system entities in response to a scenario.

Often refer to as a view of participating classes or VOPC

Analysis interaction interaction Interaction diagram between objects for analysis

Analysis overall Class Combination of all classes from all focused analysis

viewpoints

Context Use case Show the external system actors and the system under

design

Page 14: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

14آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Logical design viewpoints

Viewpoint UML diagram Description

Component Component Component communications

Component interaction Interaction Interactions among components

Component state State/activity State transition/activity diagram for a component or for a set of

components

Layered subsystem Packages Layering and subsystem design

Logical data Classes Critical data views used for integration

Subsystem interface dependency

Class Subsystem dependencies and interfaces

Page 15: 1 آزمايشگاه سيستم های هوشمند ( معماری سيستمهای با مقياس بزرگ آزمايشگاه سيستمهای هوشمند پاييز 93.

15آزمايشگاه سيستم های هوشمند

(http://ce.aut.ac.ir/islab)

Environment/physical viewpoint

Viewpoint UML diagram Description

Deployment Deployment Mapping of software to hardware for distributed

systems

Physical data Deployment Physical view of a particular database

Process Deployment Show the processes of a particular system instance

Process state State Show the dynamic states of a process