About AADL

AADL is an Architecture Description Language dedicated to the modeling and analysis of real-time, safety critical, embedded systems.

View details »

Tools

AADL is backed by tools supporting a whole range of analysis: scheduling, safety, model checking, but also code generation. .

View details »

Resources

Libraries of reusable models, and examples are available to try and learn more about AADL and its toolchains.

View details »


Back to top

About AADL

AADL is an Architecture Description Language dedicated to the modeling and analysis of real-time, safety critical systems. It is a standard published by the Society of Automotive Engineers as reference AS5506B.

AADL relies on well-defined abstraction for modeling embedded systems, coupled with an extensive set of non-function properties to precise all configuration parameters. It is complemented with annex languages that help refining its semantics. The first volume of annexes defines patterns for modeling IMA systems, behavior or data modeling. See AS5506/2 standard for more details.

AADL relies on both a graphical and textual syntax to model a system, the example below is a subset of a basic model, with one periodic thread.

package foo_pkg
public
-- sample AADL model
thread foo
features
 a : in event data port;
properties
 Dispatch_Protocol => Periodic;
 Compute_Execution_Time => 5 ms .. 10 ms;
 Source_Text => "foobar";
end foo;

end foo_pkg;

Several tutorials for AADL are provided in the blog section of this site. They illustrate the various steps from basic modeling phases down to analysis and code generation.

AADL tutorials »


Back to top

Tool support for AADL

AADL is backed by several tools, covering many engineering steps, from modeling down to various steps of analysis: scheduling, safety and reliability, model checking and code generation. Such diversity supports the engineering of complex systems in a model-based way. Tools are presented as part of tutorials on AADL.

AADL tools »


Back to top

Resources around AADL

AADL is a large modeling framework. We provide several examples to help learning its concepts, and show how to use the notation and associated tools. AADLib aims at gathering ready-to-use examples for teaching purposes.

AADLib » Tutorial »