1 / 60

Wrap up

Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles. Structures and Views. A view is a representation of a coherent set of architectural elements, consisting of: a set of elements

finn-burris
Download Presentation

Wrap up

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. Wrap up

  2. Structures and views • Quality attribute scenarios • Achieving quality attributes via tactics • Architectural pattern and styles

  3. Structures and Views • A view is a representation of a coherent set of architectural elements, consisting of: • a set of elements • the relationships among them • A structure is the set of elements itself, as they exist in software or hardware. • Often used interchangeably, text will distinguish.

  4. Groups of Architectural Structures • Module structures • units of implementation with assigned areas of functionality - usually static • Component-and-connector structures • runtime components (principal units of computation) and connectors (communication vehicles) • Allocation structures • show relationships between software elements & external environments (creation or execution)

  5. Three Types of Structures • Correspond to the three broad types of decisions that architectural design involves: • How is the system to be structured as a set of code units (modules?) • How is the system to be structured as a set of elements that have runtime behavior (components) and interactions (connectors)? • How is the system to relate to non-software structures in its environment (i.e., CPUs, file systems, networks, development teams, etc. - allocation)?

  6. Figure 2-3

  7. Non-functional Properties • Each structure provides a method for reasoning about some of the relevant quality attributes, for example: • the uses structure, must be engineered to build a system that can be easily extended or contracted • the process structure is engineered to eliminate deadlock and reduce bottlenecks • the module decomposition structure is engineered to produce modifiable systems, etc.

  8. Value of Structures • Each structure provides the architect with a different view into the system & a different leverage point for design. • Table 2.1 on page 39-40 should be useful in your class project...

  9. Relating Structures to Each Other • Although the structures give different system perspectives, they are not independent. • Elements of one structure are related to elements in another, and we need to reason about these relationships. • For example, a module in a decomposition structure may map to one, part of one, or several, components in a component-and-connector structure at runtime. • In general, mappings are many-many.

  10. Choosing Structures • Kruchten’s Four + One Views: • Logical - elements are “key abstractions” that are objects or classes in OO. This is a module view. • Process - addresses concurrency & distribution of functionality. This is a C&C view. • Development - shows organization of software modules, libraries, subsystems, and units of development. This is an allocation view. • Physical - maps other elements onto processing & communication nodes, also an allocation view, but usually referred to specifically as the deployment view.

  11. Architectural Pattern/ Styles

  12. Architectural Styles

  13. Software Architecture Styles

  14. Characteristics Feature of Architectural styles

  15. Behavioral Features Of Architectural Design

  16. Initial Rules in Selecting an Architecture

More Related