软件体系结构的4+1视图new
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Example Of Process Blueprints
The Development View
• The subsystem decomposition • Notation for the development view • Style for the development view • Example of development blueprints
“include”, “with” • Containers: subsystem (library) • Stakeholders: developer • Tool support: Rational/Apex
Notation For The Development View
• A version of the Booch notation, the Apex development environment from Rational s upport the notation.
• Garlan and Shaw’s taxonomy: pipes and filters client/server (for simple system)
• Similar to the process groups approach of the ISIS system as described by K.Birman with another notation and toolset (for complex system)
Style For The Development View
The Logical View
• Concerns: functionality • Components: object or object class • Connectors: association,
inheritance, containment, • Containers: class category • Stakeholders: end-user • Tool support: Rational Rose
The Process View
• The process architecture can be viewed as a set of independently executing logical networks of processes, distributed across a set of hardware resource connected by LAN or WAN. • A process is a grouping of tasks that form
The SA is the structure or structures of the system, which comprise software element s, externally visible properties of those elements, and the relationships among them.
The Process View
• Concerns: performance, availability
fault-tolerance, integrity
• Components: task
• Connectors: Rendez-vous, message
•
broadcast, RPC, ect
• It’s an object-oriented style • Guideline for the design
• to keep a single, coherent object model across the whole system
• to avoid premature specialization of classes and mechanisms
• The notation used for the process view is expanded from the notation originally pro posed by Booch for Ada tasking.
Style For The Process View
• Several styles would fit this view:
• The development architecture takes into account internal requirements related to the ease of development, software management, reuse or commonality and to the constraints imposed by programming language and toolset
The Development View
• The development architecture focus on the actual software module organization. The software is packaged in small subsystems that can be developed by developers.
Notation For The Logical View
The notation for the logical view is derived from the Booch notation, we use Rational Rose to support the design.
Style For The Logical View
The Development View
• Concerns: organization, reuse portability, line-of product
• Components: module, subsystem • Connectors: compilation dependency,
Architecture Blueprints
The “4+1” View Model of Software Architecture
SA deals with the design and implementation of the high-level structure of the software.
How to capture the gist of the architecture of a system?
when you treat the things, you must be as concise as possible, but not too simple.
——Einstein
• /developer works/cn/rational/r-4p1-view/
Examples Of Logical Blueprints
The Process View
• The process decomposition • Notation for the process view • Style for the process view • Example of process blueprints
static organization of the software
• Physical view
map to the hardware reflect the distributed aspect
• Scenario (use case)
The Logical View
• Object-oriented decomposition • Notation for the logical view • Style for the logical view • Examples of logical blueprints
• class diagram focus on a set of class and their relationship
• class template focus on individual class and their main operation
• Other approach: E-R diagram
SA View is a simple description of a system with a certain point of view.
——Philippe Kruchten
The “4+1” Views Model
• One View
struggled hard to represent more on one blueprint than it can actually ቤተ መጻሕፍቲ ባይዱxpress
The “4+1” Views Model
• Logical view
the object model of the design
• Process view
capture the concurrency and synchronization aspect of the design
• Development view
• Containers: process
• Stakeholders: system designer, integrator
• Tool support: TRW/UNAS/SALE(software ar chitect lifecycle environment)
Notation For The Process View
• /mojiedao/blog/ item/74e984dddd81af355882ddf5.ht ml
• What’s SA and SA View • The introduction of “4+1” view model • Correspondence between the views • Tailoring the model • Iterative process • Documenting the architecture • Conclusion
an execute unit. • Software is partitioned into a set of independent tasks. A task is a separate thread of control that can be scheduled individually on one processing node.
• The 4 Views
the code view the module view the implement view the concept view
• The 4+1 Views
proposed by Kruchten in 1995
The “4+1” Views Model
Multiple views allows to address separately the concerns of the various stakeholders of the architecture and to handle separately the functional and non functional requirements.
The Logical View
• The system is decomposed into a set of
key abstractions in the form of objects and object classes. • We use Rational/Booch approach for representing the logical architecture, by means of class diagram and class template