2014

Blog post @ SEI June 16, 2014.

The SEI blog has a series of post on AADL. Some of the teaching activities at ISAE using AADL got featured in the post “Architecture Analysis Using AADL: A Beginner’s Perspective”, see the following link for more details: SEI blog post


Nightly builds for OS X and Windows May 13, 2014.

Nightly builds for Windows and OS X are now available, see the Downloads area for more details.


New documentation style April 29, 2014.

Ocarina now uses Sphinx as rendering engine for documentation, see doc for the new look.


2013

AADL tutorial at Embedded System Week 2013 in Montreal July 11, 2013.

Frank Singhoff and I will give a tutorial on AADLv2 at Embedded System Week 2013 in Montreal, scheduled on September 29, 2013.

See the following link for more details ESWeek Web site, and of course register.

NEW Tutorial materials are at the end of the page

Abstract

The Architecture Analysis and Design Language (AADL) is an SAE International Standard dedicated to the precise modeling of complex embedded systems, covering both hardware and software concerns. Its definition relies on a precise set of concepts inherited from industry and academics best practice: clear separation of concerns among layers, rich set of properties to document system metrics and support for many kind of analysis: scheduling, safety and reliability, performance, but also code generation.

In this tutorial, we will provide an overview of AADLv2 and illustrate how several analyses can be combined on an illustrative example: a radar platform.

The tutorial will illustrate the two key dimensions of AADL:

  1. a modeling process, following a system engineering approach: elicitation of high-level requirements and corresponding architecture, refinements and then full implementation,

  2. connection with various analysis down and up the traditional engineering V-cycle.

The tutorial will cover both language and state-of-the-art tools: OSATE2, Cheddar and Ocarina and connections with other modeling frameworks and tools like Simulink, SCADE or OpenFTA.

We will illustrate how to merge various modeling and analysis concerns using AADL: validation of mission-level objectives, high-level system validation, verification of schedulability and reliability and then discuss alternatives to generate part of the system. Motivation for the tutorial

AADL is notation which is part of the model-based families, along with OMG SysML, MARTE or AutoSAR. It has been defined with a strong focus on analysis capabilities from its inception, while being versatile enough to be applied to a wide set of embedded systems. European projects (FP5-ASSERT, TASTE, Flex-eWare), but also US projects (SAVI, Meta) demonstrated that AADL could help engineers in their design effort in the space, avionics and embedded domains.

In the mean time, the academic community adopted AADL as a conveyor to bind numerous tools, covering model checking, scheduling, power evaluation or simulation capabilities to name a few. The AADL committee pages list more than 200 publications around AADL illustrating the variety of analysis being implemented.

The motivation of the tutorial is two-fold: 1) to underline the value of model-based as a viable solution to support design activities of embedded systems, but also 2) to illustrate how to extend AADL capabilities to meet specific project requirements.

List of topics to be covered

The tutorial will cover the following topics:

  1. Introduction to the AADL, history and key concepts (1 hour)
  2. Presentation of the case study, analysis challenges (30 minutes)
  3. How to map AADL concepts onto an analysis domain, illustrations on a scheduling analysis (45 minutes)
  4. From model to code: code generation strategies, connection with external behavioral models (Simulink) and code (45 minutes)

All topics will be illustrated through demonstration of tools; the models and the tools will be made available to participants and on author’s pages. Form of the tutorial

The tutorial will have the form of a lecture, with hand-outs and tools made available to participants. We will not ask participants to run the tools, but instead rely on interactive discussion while enriching the various models.

Materials NEW


AADL tutorial - tools April 29, 2013.

Note: updated on September 29 2013

About tool support

AADL, as a modeling language is backed by several analysis tools, we list some of them in this post.


OSATE2

OSATE2 is the reference implementation of AADLv2 done by the SEI. It support the core language, and can be completed with additional plug-ins to extend its modeling and analysis capabilities:

  • OSATE 2 Validation plug-ins
  • OSATE 2 ARINC653 framework
  • Instance Model Viewer
  • The Lute Constraint Language
  • Error Model Annex V2

Tools integrated to OSATE2

Some tools are directly integrated as OSTE2 plug-ins

  • Behavioral-Annex by Telecom-ParisTech
  • RAMSES code generation by Telecom-ParisTech
  • BLESS toolset

AADLInspector

AADL Inspector is a lightweight standalone model processing framework for AADL, see , with full customer support for industrial users

  • Import of AADL textual specifications (individual files or projects)
  • Syntactic analysis (aadlrev) for AADL v2.1 (AS-5506B), AADL Behavior Annex (AS-5506/2 Annex D + errata), AADL v1 and v2.0 upwards compatibility
  • Static rules analysis
  • Architectural metrics
  • Schedulability analysis through CHEDDAR v3
  • Dynamic simulation of AADL models, integration of the MARZIN Multi-Agents simulation engine
  • Command line options for batch processing

Ocarina suite

Ocarina and its companion plug-ins and runtimes are also available in this web site, supporting:

  • Parser: support both AADL1.0 and AADLv2 syntaxes;
  • Code generation: targeting C real-time operating systems: RT-POSIX, Xenomai, RTEMS; and Ada using GNAT for native and Ravenscar targets;
  • Model checking: mapping of AADL models onto Petri Nets, timed (TINA) or colored (CPN-AMI);
  • Schedulability analysis: mapping of AADL models onto Cheddar or MAST models
  • Model Analysis: using the REAL language, one can analyze an AADL model for particular patterns or compute metrics.