The latest thinking in architecture descriptions recommends the concept of architectural views.
Philippe Kruchten [Kruchten 95] describes an architecture for software intensive systems called "the 4+1 Architectural View Model". It is based on the use of multiple, concurrent views. The views are used to describe the system from the viewpoint of different stakeholders, such as end-users, developers and project managers.
- Logical view: the services that the system provides to end-users depicted with UML model types: Class diagram, Communication diagram, Sequence diagram .
- Development view: The system from a programmer's perspective, concerned with software management. This view is also known as the implementation view. It uses the UML Component diagram to describe system components. UML Diagrams used to represent the development view include the Package diagram.
- Process view : The process view deals with the dynamic aspects of the system, explains the system processes and how they communicate, and focuses on the runtime behavior of the system. The process view addresses concurrency, distribution, integrators, performance, and scalability, etc. UML Diagrams to represent process view include the Activity diagram.
- Physical view: The physical view depicts the system from a system engineer's point-of-view. It is concerned with the topology of software components on the physical layer, as well as the physical connections between these components. This view is also known as the deployment view. UML Diagrams used to represent physical view include the Deployment diagram.
- Scenarios: The description of an architecture is illustrated using a small set of use cases, or scenarios which become a fifth view. The scenarios describe sequences of interactions between objects, and between processes. They are used to identify architectural elements and to illustrate and validate the architecture design. They also serve as a starting point for tests of an architecture prototype. UML Diagram(s) used to represent the scenario view include the Use case diagram.
Other examples of view based architectural descriptions can be found in:
- The US Department of Defense Architecture Framework [DoDAF]
- UK Ministry of Defence Architecture Framework [MoDAF]
- UK Department for Transport Enterprise Architecture Framework [TRAK]
- ISO/IEC 42010 Systems and software engineering - Architecture description [IEC 42010]. This standard aims to standardise the practice of architecture description by defining standard terms, presenting a conceptual model for expressing, communicating and reviewing architectures and specifying requirements that apply to architecture descriptions, architecture frameworks and architecture description languages.