260 likes | 767 Views
Nicholas May nick_may@netlink.com.au. A Survey of Software Architecture Viewpoint Models. Overview. Surveyed five similar approaches to documenting software architecture To identify: Their strengths and weaknesses An optimum approach to documenting software architecture. Contents.
E N D
Nicholas May nick_may@netlink.com.au A Survey of Software Architecture Viewpoint Models
Overview • Surveyed five similar approaches to documenting software architecture • To identify: • Their strengths and weaknesses • An optimum approach to documenting software architecture
Contents • Background: • Software architecture • Documentation approaches • Survey: • Comparison Framework • Review of the five approaches • Conclusions • Questions
Structures = Components and Connectors Styles = Constraints on Composition. Rationale = Non-Functional Requirements Background • What is Software Architecture?
Adapted from “IEEE Recommended Practice for Architectural Description of Software Intensive Systems”. IEEE (2000) Background - IEEE Standard 1471-2000
Background - Viewpoint Models • Viewpoint models utilize perspectives to separate the concerns. • Perspectives are variously called views, viewtypes, and viewpoints. • Different viewpoint models focus on the different uses of documentation. • Communication. • Design. • Re-use. • Other frameworks exist for classifying documentation.
Survey • Framework • based on IEEE 1471-2000,IEEE (2000). • Viewpoint Models: • “4+1” View Model,Kruchten, P. (1997). • SEI View Model, Clements, P. et al. (2002b). • ISO RM-ODP,ISO (1994). • Siemens Four View Model,Soni, D. et al. (1995). • Rational ADS,Norris, D. (2004).
Survey - Comparison Framework • Stakeholderseg. Architects, Testers, Managers.from “Documenting Software Architectures: views and beyond” (Clements et al, 2002a, page 10). • Concernseg. Performance, Implementation, Privacy.from “Software Engineering” (Sommerville, 2000, page 101). • Structureseg. Decomposition, Layer, Process from “Software Architecture in Practice” (Bass et al., 2003, page 39).
Survey – Example Translations • StakeholdersImplementers: Programmers and Systems Engineers. • ConcernsReliability: Quality of Service, Fault Tolerance, Availability, and Failure Modes. • StructuresDeployment: Hardware and Software components.
Stakeholders Structures Concerns
Rational ADS - Requirements viewpoint • SEI - Module viewtype • SEI - C&C viewtype • SEI - Allocation viewtype Conclusions - Optimum Set
Conclusions - Future Work • Map Stakeholders to Concerns • Determine Implicit Stakeholders • Verify Optimum Viewpoint Set using Case Studies
Finale - summary • Software Architecture can be documented using different approaches • Viewpoint models use multiple perspectives based on the separation of concerns • Surveyed five viewpoint models • Identified their relative strengths and weaknesses • Identified an optimum set of viewpoints
Finale • Thankyou • Questions
Adapted from “Architectural Blueprints – the 4+1 view model of software architecture”, Kruchten, P. (1997) Survey - “4+1” View Model
Survey - SEI View Model • Module Viewtype • Component & Connector Viewtype • Allocation Viewtype
Survey - RM-ODP • Enterprise View • Information View • Computational View • Engineering View • Technology View
Adapted from “Applied Software Architecture”, Hofmeister, C. et al. (2000). Survey - Siemens Four View Model
Adapted from “Communicating Complex Architectures with UML and the Rational ADS”, Norris, D. (2004). Survey - Rational ADS
Conclusions – Number of viewpointsaddressing Stakeholder Roles