Software architecture description is the set of practices for expressing, communicating and analysing software architectures (also called architectural rendering), and the result of applying such practices through a work product expressing a software architecture (ISO/IEC/IEEE 42010).
Architecture descriptions (ADs) are also sometimes referred to as architecture representations, architecture specifications
or software architecture documentation.
Architecture description defines the practices, techniques and types of representations used by software architects to record a software architecture. Architecture description is largely a modeling activity (Software architectural model).
Architecture models can take various forms, including text, informal drawings, diagrams or other formalisms (modeling language).
An architecture description will often employ several different model kinds to effectively address a variety of audiences, the stakeholders (such as end users, system owners, software developers, system engineers, program managers) and a variety of architectural concerns (such as functionality, safety, delivery, reliability, scalability).
Often, the models of an architecture description are organized into multiple views of the architecture such that "each [view] addresses specific concerns of interest to different stakeholders of the system".
An architecture viewpoint is a way of looking at a system (RM ODP). Each view in an architecture description should have a viewpoint documenting the concerns and stakeholders it is addressed to, and the model kinds, notations and modeling conventions it utilizes (ISO/IEC/IEEE 42010).
The use of multiple views, while effective for communicating with diverse stakeholders and recording and analyzing diverse concerns, does raise potential problems: since views are typically not independent, the potential for overlap means there may be redundancy or inconsistency between views of a single system. Various mechanisms can be used to define and manage correspondences between views to share detail, to reduce redundancy and to enforce consistency.
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.
This course teaches the basics of modern software development: designing software, working in a team, writing good code, shipping software, and evolving software. It emphasizes building software that
Software architecture is the set of structures needed to reason about a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations. The architecture of a software system is a metaphor, analogous to the architecture of a building. It functions as the blueprints for the system and the development project, which project management can later use to extrapolate the tasks necessary to be executed by the teams and people involved.
Covers modular decomposition in software projects, emphasizing minimizing dependencies and the benefits of modular programming.
Explores modular programming principles, software architecture, dependencies, and the production of executables in a project.
Explains the Model-View-Controller architecture and its principles, emphasizing the independence of problem resolution from user dialogue and graphical display.
As a key enabling technology of Industry 4.0, Digital Twin (DT) has been widely applied to various industrial domains covering different lifecycle phases of products and systems. To fully realize the Industry 4.0 vision, it is necessary to integrate multip ...
Conception, organization and introduction Rafael Moneo once said that to talk about type in architecture is to talk about the essence of architecture. Indeed, when conceiving architecture is almost impossible to not start from an existing type, no matter h ...
Honeybees are essential to human society, providing pollination services globally as well as producing honey and other valuable products. Effective management of apiaries should not only rely on beekeeper knowledge and skill, but also incorporate new infor ...