A Survey of Software Architecture Viewpoint Models Nicholas

  • Slides: 26
Download presentation
A Survey of Software Architecture Viewpoint Models Nicholas May nick_may@netlink. com. au

A Survey of Software Architecture Viewpoint Models Nicholas May nick_may@netlink. com. au

Overview Surveyed five similar approaches to documenting software architecture To identify: • Their strengths

Overview Surveyed five similar approaches to documenting software architecture To identify: • Their strengths and weaknesses • An optimum approach to documenting software architecture Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 2

Contents Background: • Software architecture • Documentation approaches Survey: • Comparison Framework • Review

Contents Background: • Software architecture • Documentation approaches Survey: • Comparison Framework • Review of the five approaches Conclusions Questions Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 3

Background What is Software Architecture? Structures Styles Rationale Tuesday, 29 th March 2005 =

Background What is Software Architecture? Structures Styles Rationale Tuesday, 29 th March 2005 = Components and Connectors = Constraints on Composition. = Non-Functional Requirements A Survey of Software Architecture Viewpoint Models Slide 4

Background - IEEE Standard 1471 -2000 Adapted from “IEEE Recommended Practice for Architectural Description

Background - IEEE Standard 1471 -2000 Adapted from “IEEE Recommended Practice for Architectural Description of Software Intensive Systems”. IEEE (2000) Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 5

Background - Viewpoint Models Viewpoint models utilize perspectives to separate the concerns. Perspectives are

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. Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 6

Survey Framework • based on IEEE 1471 -2000, IEEE (2000). Viewpoint Models: • “

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. (2002 b). • ISO RM-ODP, ISO (1994). • Siemens Four View Model, Soni, D. et al. (1995). • Rational ADS, Norris, D. (2004). Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 7

Survey - Comparison Framework Stakeholders eg. Architects, Testers, Managers. from “Documenting Software Architectures: views

Survey - Comparison Framework Stakeholders eg. Architects, Testers, Managers. from “Documenting Software Architectures: views and beyond” (Clements et al, 2002 a, page 10). Concerns eg. Performance, Implementation, Privacy. from “Software Engineering” (Sommerville, 2000, page 101). Structures eg. Decomposition, Layer, Process from “Software Architecture in Practice” (Bass et al. , 2003, page 39). Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 8

Survey – Example Translations Stakeholders Implementers: Concerns Reliability: Programmers and Systems Engineers. Quality of

Survey – Example Translations Stakeholders Implementers: Concerns Reliability: Programmers and Systems Engineers. Quality of Service, Fault Tolerance, Availability, and Failure Modes. Structures Deployment: Hardware and Software components. Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 9

Survey – Summary of Models Focus SEI Communication “ 4+1” Design Siemens Design RM-ODP

Survey – Summary of Models Focus SEI Communication “ 4+1” Design Siemens Design RM-ODP Re-use Rational ADS Design Tuesday, 29 th March 2005 Features Viewpoints Independent viewpoints 3 viewpoints Iterative design process 5 views Flow of information through viewpoints 4 views Defines a common vocabulary 5 viewpoints Defined mappings between 4 viewpoints views A Survey of Software Architecture Viewpoint Models Slide 10

Stakeholders Structures Tuesday, 29 th March 2005 Concerns A Survey of Software Architecture Viewpoint

Stakeholders Structures Tuesday, 29 th March 2005 Concerns A Survey of Software Architecture Viewpoint Models Slide 11

Conclusions - Viewpoint Groups “ 4+1” model SEI model Siemens model Rational ADS Functional

Conclusions - Viewpoint Groups “ 4+1” model SEI model Siemens model Rational ADS Functional Logical view Module viewtype Module view - Behavioural Process view C&C viewtype Execution view - Development view Allocation viewtype Code view Realization viewpoint External Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 12

Conclusions - Optimum Set Rational SEI Tuesday, 29 th March 2005 ADS - Requirements

Conclusions - Optimum Set Rational SEI Tuesday, 29 th March 2005 ADS - Requirements viewpoint - Module viewtype - C&C viewtype - Allocation viewtype A Survey of Software Architecture Viewpoint Models Slide 13

Conclusions - Future Work Map Stakeholders to Concerns Determine Implicit Stakeholders Verify Optimum Viewpoint

Conclusions - Future Work Map Stakeholders to Concerns Determine Implicit Stakeholders Verify Optimum Viewpoint Set using Case Studies Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 14

Finale - summary Software Architecture can be documented using different approaches Viewpoint models use

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 Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 15

Finale Thankyou Questions Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint

Finale Thankyou Questions Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 16

Survey - “ 4+1” View Model Adapted from “Architectural Blueprints – the 4+1 view

Survey - “ 4+1” View Model Adapted from “Architectural Blueprints – the 4+1 view model of software architecture”, Kruchten, P. (1997) Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 17

Survey - SEI View Model Module Viewtype Component Allocation Tuesday, 29 th March 2005

Survey - SEI View Model Module Viewtype Component Allocation Tuesday, 29 th March 2005 & Connector Viewtype A Survey of Software Architecture Viewpoint Models Slide 18

Survey - RM-ODP Enterprise View Information View Computational Tuesday, 29 th March 2005 View

Survey - RM-ODP Enterprise View Information View Computational Tuesday, 29 th March 2005 View Engineering View Technology View A Survey of Software Architecture Viewpoint Models Slide 19

Survey - Siemens Four View Model Adapted from “Applied Software Architecture”, Hofmeister, C. et

Survey - Siemens Four View Model Adapted from “Applied Software Architecture”, Hofmeister, C. et al. (2000). Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 20

Survey - Rational ADS Adapted from “Communicating Complex Architectures with UML and the Rational

Survey - Rational ADS Adapted from “Communicating Complex Architectures with UML and the Rational ADS ”, Norris, D. (2004). Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 21

Conclusions – Number of viewpoints addressing Structures Tuesday, 29 th March 2005 A Survey

Conclusions – Number of viewpoints addressing Structures Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 22

Conclusions – Number of viewpoints addressing Concerns Tuesday, 29 th March 2005 A Survey

Conclusions – Number of viewpoints addressing Concerns Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 23

Conclusions – Number of viewpoints addressing Stakeholder Roles Tuesday, 29 th March 2005 A

Conclusions – Number of viewpoints addressing Stakeholder Roles Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 24

References Bass, L. et al. (2003). Software Architecture in Practice. Addison Wesley, Boston, MA,

References Bass, L. et al. (2003). Software Architecture in Practice. Addison Wesley, Boston, MA, USA, 2 nd edition. ISBN 0 -321 -15495 -9. Clements, P. et al. (2002 a) Documenting Software Architecture: Views and Beyond. Addison Wesley, Boston, MA, USA, 1 st edition. ISBN 0 -201 -70372 -6. Clements, P. et al. (2002 b) A practical method for documenting software architectures. http: //www-2. cs. cmu. edu/afs/cs/project/able/ftp/icse 03 dsa/submitted. pdf viewed on 20 th September, 2004. Draft. Hofmeister, C. et al. (2000). Applied Software Architecture. Object Technology Series. Addison Wesley, Boston, MA, USA, 1 st edition. ISBN 0 -201 -32571 -3. IEEE (2000) IEEE Recommended Practice for Architectural Description of Software-Intensive Systems. Institute of Electrical and Electronics Engineers. IEEE Std 1471 -2000. Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 25

References - Continued ISO (1994) Reference Model of Open Distributed Processing (RM-ODP). International Organization

References - Continued ISO (1994) Reference Model of Open Distributed Processing (RM-ODP). International Organization for Standardization. Technical Report 10746. Kruchten, P. (1997) Architectural Blueprints - The “ 4+1” View Model of Software Architecture. IEEE Software, 12(6): 42– 50. Norris, P (2004) Communicating Complex Architectures with UML and the Rational ADS. In Proceedings of the IBM Rational Software Development User Conference, 2004. Copyright 2004 IBM Australia. Sommerville, I. (2000) Software Engineering. Addison Wesley, Boston, MA, USA, 6 th edition. ISBN 0 -201 -39815 -X. Soni, D. et al. (1995) Software architecture in industrial applications. In International Conference on Software Engineering, pages 196– 207. Tuesday, 29 th March 2005 A Survey of Software Architecture Viewpoint Models Slide 26