Artifact: Architecture |
The architecture describes the blueprint for software development, frequently represented using a number of architectural views. It also contains the rationale, assumptions, explanations and implications of the decisions that were made in forming the architecture as well as the global mapping between views.
Domain: Architecture Work Product Kinds: Specification
Purpose
This artifact focuses on specific aspects of the design, concentrating on structure, essential elements, key scenarios and those aspects that have a lasting impact on performance, reliability, adaptability and cost. It defines the set of mechanisms, patterns and styles that will guide the rest of the design, assuring its integrity. Teams are formed around architectural elements, which are the units of implementation, unit testing, integration, configuration management, documentation, and many other activities.
Relationships
Roles | Responsible: Architect | Modified By: Architect
Tasks | Input To: Demonstrate the Architecture Design the Solution Develop the Architecture Analyze Architectural Requirements Plan Iteration | Output From: Analyze Architectural Requirements Develop the Architecture
Description
Main Description | This artifact is a communication vehicle that tells Developers what pieces to build, as well as how those pieces behave and interact with each other. It determines the project structure so that managers can plan the project. It also gives whoever must maintain and change the architecture later their first glimpse of the system.
Illustrations
Templates | Architecture
Tailoring
Representation Options | You can represent the architecture in many forms and from many viewpoints, depending on the needs of the project and the preferences of the project team. You can express the architecture as a simple metaphor or as a comparison to a predefined architectural style or set of styles. It may be a precise set of models or documents that describe the various aspects of the system's key elements. Expressing it as skeletal code is another option. It is frequently a design artifact that must be represented in a readable and accessible way, employing Architectural Views for describing and communicating the architecture. A view is a representation of a system from the perspective of a related set of concerns. To choose the appropriate set of views, you must identify the Stakeholders who depend on software architecture documentation and the information that they need.
More Information
Checklists | Architecture
Concepts | Patterns Component Abstract Away Complexity Using Visualizations Visual Modeling
Guidelines | Architectural View Layering Representing Interfaces to External Systems
This program and the accompanying materials are made available under the Eclipse Public License v1.0 which accompanies this distribution. View copyright information here: OpenUP Copyright