RATIONALE

The language defined in SAE AS5506 has been refined and extended based on industrial experience with version 1.0 over the last 4 years.  The improvements focus on better support for architecture templates and modeling of layered and partitioned architectures. SAE AS5506B is a revision of AS5506A that addresses a number of errata that have been reported and agreed upon by the committee.

 

This Architecture Analysis & Design Language (AADL) standard document was prepared by the SAE AS-2C Architecture Description Language Subcommittee, Embedded Computing Systems Committee, Aerospace Avionics Systems Division. 

 

 


 

Foreword

(1)   The AADL standard was prepared by the SAE Avionics Systems Division (ASD) Embedded Computing Systems Committee (AS-2) Architecture Description Language (AS-2C) subcommittee.

(2)   This standard addresses the requirements defined in SAE ARD 5296, Requirements for the Avionics Architecture Description Language[1]

(3)   The AADL standard consists of a core language standard that is defined in this document and a collection of standardized property sets and/or sublanguages that are defined in annex documents.  The core language standard provides full support for modeling the application task and communication architecture, the hardware platform, and the physical environment of embedded software-intensive systems, including standardized predeclared properties to characterize task execution and communication timing, as well as deployment of the application on the hardware platform.  The standardized extensions allow core AADL models to be annotated with information that is not represented by the core language to meet specific embedded system analysis needs such as security analysis, dependability analysis, and behavioral analysis, and support for automated generation and integration of systems.

(4)   The starting point for the AADL standard development was MetaH, an architecture description language and supporting toolset, developed at Honeywell Technology Laboratories under DARPA and Army AMCOM sponsorship. 

(5)   The AADL standard has been designed to be compatible with real-time operating system standards such as POSIX and ARINC 653.

(6)   The AADL standard is aligned with Object Management Group (OMG) Unified Modeling Language (UML) and Modeling and Analysis of Real-Time Embedded systems (MARTE) through a standardized profile for AADL. 

(7)   The AADL standard includes a specification of an AADL-specific XML interchange format.

(8)   The AADL standard provides guidelines for users to transition between AADL models and program source text written in Ada (ISO/IEC 8652/2007 (E) Ed.3) and C (ISO/IEC 9899:1999).

Introduction

(1)   The SAE Architecture Analysis & Design Language (referred to in this document as AADL) is a textual and graphical language used to design and analyze the software and hardware architecture of performance-critical real-time systems.  These are systems whose operation strongly depends on meeting non-functional system requirements such as reliability, availability, timing, responsiveness, throughput, safety, and security.  AADL is used to describe the structure of such systems as an assembly of software components mapped onto an execution platform.  It can be used to describe functional interfaces to components (such as data inputs and outputs) and performance-critical aspects of components (such as timing).  AADL can also be used to describe how components interact, such as how data inputs and outputs are connected or how application software components are allocated to execution platform components.  The language can also be used to describe the dynamic behavior of the runtime architecture by providing support to model operational modes and mode transitions.  The language is designed to be extensible to accommodate analyses of the runtime architectures that the core language does not completely support.  Extensions can take the form of new properties and analysis specific notations that can be associated with components and are standardized themselves.

(2)   AADL was developed to meet the special needs of performance-critical real-time systems, including embedded real-time systems such as avionics, automotive electronics, or robotics systems.  The language can describe important performance-critical aspects such as timing requirements, fault and error behaviors, time and space partitioning, and safety and certification properties. Such a description allows a system designer to perform analyses of the composed components and systems such as system schedulability, sizing analysis, and safety analysis.  From these analyses, the designer can evaluate architectural tradeoffs and changes. 

(3)   Since AADL supports multiple and extensible analysis approaches, it provides the ability to analyze the cross cutting impacts of change in the architecture in one specification using a variety of analysis tools.  AADL is designed to be used with analysis tools that support the automatic generation of the source code needed to integrate the system components and build a system executive.  Since the models and the architecture specification drive the design and implementation, they can be maintained to permit model driven architecture based changes throughout the system lifecycle.

Information and Feedback

(1)   The website at http://www.aadl.info is an information source regarding the SAE AADL standard. It makes available papers on AADL, its benefits, and its use. Also available are papers on MetaH, the technology that demonstrated the practicality of a model-based system engineering approach based on architecture description languages for embedded real-time systems.

(2)   The website provides links to three SAE AADL related discussion forums:

·         The SAE AADL User Forum to ask questions and share experiences about modeling with SAE AADL,

·         The AADL Toolset User Forum to ask questions and share experiences with the Open Source AADL Tool Environment,(OSATE) and

·         The SAE Standard Document Corrections & Improvements Forum that records errata, corrections, and improvements to the current release of the SAE AADL standard.

(3)   The website provides information and a download site for the Open Source AADL Tool Environment.  It also provides links to other resources regarding the AADL standard and its use. 

(4)   Questions and inquiries regarding working versions of annexes and future versions of the standard can be addressed to info@aadl.info.

(5)   Informal comments on this standard may be sent via e-mail to errata@aadl.info. If appropriate, the defect correction procedure will be initiated. Comments should use the following format:

          !topic Title summarizing comment

          !reference AADL-ss.ss(pp)

          !from Author Name yy-mm-dd

          !keywords keywords related to topic

          !discussion

          text of discussion

(6)   where ss.ss is the section, clause or subclause number, pp is the paragraph or line number where applicable, and yy-mm-dd is the date the comment was sent. The date is optional, as is the !keywords line.

(7)   Multiple comments per e-mail message are acceptable. Please use a descriptive “Subject” in your e-mail message.

(8)   When correcting typographical errors or making minor wording suggestions, please put the correction directly as the topic of the comment; use square brackets [ ] to indicate text to be omitted and curly braces { } to indicate text to be added, and provide enough context to make the nature of the suggestion self-evident or put additional information in the body of the comment, for example:

          !topic [c]{C}haracter

          !topic it[']s meaning is not defined