search menu icon-carat-right cmu-wordmark

Modeling System Architectures Using the Architecture Analysis and Design Language (AADL) - eLearning

Available soon. Contact us to receive an email notification when training registration is available.

Modeling and validating quality attributes for real-time, embedded systems is often done with low-fidelity software models and disjointed architectural specifications by various engineers using their own specialized notations. These models are typically not maintained or analyzed throughout the lifecycle, making it difficult to predict the impact of system design changes, especially on attributes that cut across system functionality. Consequently, the unanticipated effects of design approaches or changes are discovered late in the lifecycle, when they are much more expensive to resolve.

A model-based engineering (MBE) approach offers a more effective way to develop, design, analyze, and maintain a system architecture. Through the application of MBE supported by system design and analysis tools, system architects and developers can

  • reduce risk through early and repeated analysis of the system architecture
  • reduce cost through fewer system integration problems and simplified lifecycle support
  • assess system-wide impacts of architectural choices early in the life-cycle
  • increase confidence since assumptions made in modeling can be validated through virtual integration of all or part of the operational system before system implementation


  • software/system architects and developers who are considering options for engineering embedded, real-time systems
  • individuals tasked with the validation of embedded, real-time system performance
  • technical managers, managers, and software/system architects who are looking for a solid overview of system and software modeling
  • individuals who make decisions about the development or acquisition of real-time, embedded systems


After successful completion of this course you will have an understanding of the

  • value of MBE for system development in your application domain
  • fundamental MBE concepts, specifically key engineering principles and methods
  • alternative choices for representation and modeling
  • core elements of the AADL modeling language
  • modeling and analysis of embedded software systems using MBE, the AADL, and OSATE toolkit
  • quantitative validation of quality attributes through analysis of system architectures
  • concepts, key principles, methods, and value of Architecture-Centric Virtual Integration Practices (ACVIP) for system development


The course focuses on fundamental MBE concepts for engineering real-time, embedded software systems through defining and documenting the software and system architecture and validating system quality attributes (also commonly referred to as dependability and non-functional properties). The course builds on the SAE Architecture Analysis and Design Language (AADL) standard for engineering real-time, embedded software systems. The lectures are designed to address the core aspects of AADL, which include language syntax and semantics, constructing modeling views and invoking various analysis tools appropriate to those views. The course also provides an overview of other types of system and software modeling, such as MDA, SysML, and UML and their relationship to the AADL.

The eLearning course presents learners with language and modeling topics in sessions ranging from 15 - 40 minutes. Course sessions are serialized and, at certain points in the course, the learner will independently complete hands-on exercises to construct models and analyze them within the Open Source AADL Tool Environment (OSATE). By the end of the course, the learner will construct a number of architectural views of a sample system and will be able to perform analysis across the entire model. These analyses will include weight and power allocations with respect to requirements, end to end latency of logical and runtime deployment views with various multi-processor bindings, bus bandwidth analysis, CPU utilization, and CPU resource utilizations.


Learners should have fundamental knowledge in the areas of developing embedded real-time systems, software engineering, and architectures. Attendees should have a working knowledge of a programming language and familiarity with a modeling language and the concept of abstraction. A working knowledge of the Eclipse environment is helpful.


The course contains approximately 15 hours of instruction from SEI experts supplemented by guided exercises and expert solutions, quizzes to confirm understanding, and instructions for installing and using tools. Downloadable materials include presentation slides, installation instructions for the development environment (OSATE), and a list of references for related tools and resources.

Learners can proceed through the course at their convenience and can review and repeat course sessions as often as needed. Upon passing all quizzes, the learner is awarded an electronic certificate of course completion and Continuing Education Units (CEUs).

If you wish to purchase this course for a group of learners, please email or telephone at +1 412-268-7622 for group rate details.

Course Questions?

Phone: 412-268-7388
FAX: 412-268-7401

Training courses provided by the SEI are not academic courses for academic credit toward a degree. Any certificates provided are evidence of the completion of the courses and are not official academic credentials. For more information about SEI training courses, see Registration Terms and Conditions and Confidentiality of Course Records.