Modelling Embedded Systems with AADL: A Practical Study

In today’s world, embedded systems can be seen everywhere around us. These systems range from consumer electronics such as mobile phones, cameras and portable music players to sophisticated devices such as planes and satellite systems. In either form embedded systems are designed to perform specific tasks with constraints on their qualities and available resources. These constraints can either be soft or hard depending on the nature of the system: a satellite system, for example, has hard safety constraints. Some of the major constraints for embedded systems are high reliability, performance, safety and dependability, small memory size, low power and low processing capabilities. Designing systems with such constraints is a challenge. Developing system architectures during system development has gained importance as it helps in analyzing the system before its implementation. A system architecture is a formal description of a system that describes its building blocks, their properties and the interactions among them. System architectures can be used to analyze various properties of a system such as memory consumption and system safety. For embedded systems, this is of extreme importance since a well described system architecture allows us to predict whether any of the previously mentioned constraints can be met, without requiring the construction of an often expensive prototype implementation. Description of system architectures can be achieved using the formal notations offered by Architecture Description Languages (ADLs). Such ADLs often also provide tool support for the modelling and analysis of the system architecture. Many ADLs for embedded systems are available in both academic and industrial communities, such as Rapide, MetaH, AADL and Wright. Among the available ADLs, the best known and most actively used language is the Architecture Analysis and Design Language (AADL). Standardized by the Society of Automotive Engineers, AADL was originally developed for modelling and analysis of systems in the domain of avionics. However, because of its rich modelling and analysis capabilities, it is widely used for embedded systems in other domains as well. AADL provides a modelling formalism accompanied by a toolset to support modelling activities and system analyses. AADL models can be used to perform various analyses such as flow latency, resource consumption, real-time schedulability, security and safety analysis. Because of its history in the avionics domain, AADL does not address each and every 15

[1]  Jerzy W. Rozenblit,et al.  Embedded system engineering using C/C++ based design methodologies , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

[2]  Jörgen Hansson,et al.  ANDES: An ANalysis-Based DEsign Tool for Wireless Sensor Networks , 2007, RTSS 2007.

[3]  Steve Vestal,et al.  The SAE Architecture Analysis & Design Language (AADL) a standard for engineering performance critical systems , 2006, 2006 IEEE Conference on Computer Aided Control System Design, 2006 IEEE International Conference on Control Applications, 2006 IEEE International Symposium on Intelligent Control.

[4]  Steve Heath,et al.  Embedded Systems Design , 1997 .

[5]  Capers Jones,et al.  Embedded Software: Facts, Figures, and Future , 2009, Computer.

[6]  Trudy Sherman,et al.  Quality Attributes for Embedded Systems , 2007, SCSS.

[7]  Jörgen Hansson,et al.  Flow Latency Analysis with the Architecture Analysis and Design Language (AADL) , 2007 .

[8]  Gerhard Fohler Embedded Systems Design - The ARTIST Roadmap for Research and Development , 2005 .

[9]  Jörgen Hansson,et al.  ANDES: An ANalysis-Based DEsign Tool for Wireless Sensor Networks , 2007, 28th IEEE International Real-Time Systems Symposium (RTSS 2007).

[10]  Peter H. Feiler,et al.  The Architecture Analysis & Design Language (AADL): An Introduction , 2006 .

[11]  Alain Plantec,et al.  AADL modeling and analysis of hierarchical schedulers , 2007 .

[12]  Richard N. Taylor,et al.  A Classification and Comparison Framework for Software Architecture Description Languages , 2000, IEEE Trans. Software Eng..

[13]  Dave Thomas,et al.  The AADL behaviour annex -- experiments and roadmap , 2007, 12th IEEE International Conference on Engineering Complex Computer Systems (ICECCS 2007).