Architecture Analysis & Design Language
The Architecture Analysis & Design Language (AADL) is an architecture description language standardized by SAE.[1] AADL was first developed in the field of avionics, and was known formerly as the Avionics Architecture Description Language.[2]
The Architecture Analysis & Design Language is derived from MetaH, an architecture description language made by the Advanced Technology Center of Honeywell. AADL is used to model the software and hardware architecture of an embedded, real-time system. Due to its emphasis on the embedded domain, AADL contains constructs for modeling both software and hardware components (with the hardware components named "execution platform" components within the standard). This architecture model can then be used either as a design documentation, for analyses (such as schedulability and flow control) or for code generation (of the software portion), like UML.[3][4]
AADL ecosystem
AADL is defined by a core language that defines a single notation for both system and software aspects. Having a single model eases the analysis tools by having only one single representation of the system. The language specifies system-specific characteristics using properties.
The language can be extended with the following methods:
- user-defined properties: user can extend the set of applicable properties and add their own to specify their own requirements
- language annexes: the core language is enhanced by annex languages that enrich the architecture description. For now, the following annexes have been defined.
- Behavior annex: add components behavior with state machines
- Error-model annex: specifies fault and propagation concerns
- ARINC653 annex: defines modelling patterns for modelling avionics system
- Data-Model annex: describes the modelling of specific data constraint with AADL
AADL tools
AADL is supported by a wide range of tools:
- MASIW - is an open source Eclipse-based IDE for development and analysis of AADL models. It is developed by ISP RAS
- OSATE includes a modeling platform, a graphical viewer and a constraint query languages
- Ocarina, an AADL toolchain for generating code from models
- TASTE toolchain, supported by the European Space Agency
A complete list of the tool set can be found on the AADL public wiki
Related projects
AADL has been used for the following research projects:
- AVSI/SAVI: an initiative that leverages AADL (among other languages) to perform virtual integration of aerospace and defense systems
- META: a DARPA project for improving software engineering methods
- PARSEC: a French initiative to validate and implement avionics systems from architecture models
- TASTE: a platform for designing safety-critical systems from models
A complete list of the past and current projects/initiatives can not be found on the AADL public wiki because it has been retired. No replacement has been provided as of Dec 2020.
References
- Architecture Analysis and Design Language, Software Engineering Institute, Carnegie-Mellon University, Pittsburgh, Pennsylvania, USA. Archived 2013-11-01 at the Wayback Machine
- Detailed presentation of AADL Archived February 4, 2012, at the Wayback Machine
- Bordin, M., Comar, C., Falis, E., Gasperoni, F., Moy, Y., Richa, E., & Hugues, J. (2014). System to software integrity: A case study.
- Delange, Julien. "Code Generation with AADL: A State-of-the-Art Report".
External links
- AADL.info
- AADL public wiki
- AADL tools
- AADL at Axlog
- AADL at Ecole Nationale Supérieure des Télécommunications de Paris (ENST) Archived 2006-11-27 at the Wayback Machine
- AADL performance analysis with Cheddar, Univ. of Brest (real time scheduling and queueing system analysis) Archived 2011-02-28 at the Wayback Machine
- Industrial project support using Stood for AADL
- AADL In Practice, a book dedicated to the use of the languages and its related modeling tools