An Ada design pattern recognition tool for AADL performance analysis

This article deals with performance verification of architecture models of real-time embedded systems. Although real-time scheduling theory provides numerous analytical methods called feasibility tests for scheduling analysis, their use is a complicated task. In order to assist an architecture model designer in early verification, we provide an approach, based on real-time specific design patterns, enabling an automatic schedulability analysis. This analysis is based on existing feasibility tests, whose selection is deduced from the compliance of the system to a design pattern and other system's properties. Those conformity verifications are integrated into a schedulability tool called Cheddar. We show how to model the relationships between design patterns and feasibility tests and design patterns themselves. Based on these models, we apply a model-based engineering process to generate, in Ada, a feasibility test selection tool. The tool is able to detect from an architecture model which are the feasibility tests that the designer can apply. We explain a method for a designer willing to use this approach. We also describe the design patterns defined and the selection algorithm.

[1]  Marco Spuri,et al.  Preemptive and Non-Preemptive Real-Time UniProcessor Scheduling , 1996 .

[2]  Alan Burns,et al.  The Ravenscar tasking profile for high integrity real-time programs , 1998, SIGAda '98.

[3]  Alan Burns,et al.  HRT-HOOD: A structured design method for hard real-time systems , 2005, Real-Time Systems.

[4]  Alain Plantec,et al.  Refactoring of an Ada 95 library with a Meta CASE tool , 2006, SIGAda '06.

[5]  Tullio Vardanega,et al.  A Metamodel-Driven Process Featuring Advanced Model-Based Timing Analysis , 2007, Ada-Europe.

[6]  Alain Plantec,et al.  Investigating the usability of real-time scheduling theory with the Cheddar project , 2009, Real-Time Systems.

[7]  Zoubir Mammeri,et al.  Scheduling in Real-Time Systems , 2002 .

[8]  Frank Singhoff,et al.  Stood and Cheddar : AADL as a Pivot Language for Analysing Performances of Real Time Architectures , 2007 .

[9]  Alain Plantec,et al.  Towards User-Level Extensibility of an Ada Library: An Experiment with Cheddar , 2007, Ada-Europe.

[10]  Alan Burns,et al.  Hrt-Hood: A Structured Design Method for Hard Real-Time ADA Systems , 1995 .

[11]  José L. Fernández-Sánchez,et al.  Modelling and Evaluating Real-Time Software Architectures , 2009, Ada-Europe.

[12]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[13]  Alain Plantec,et al.  Enforcing Applicability of Real-Time Scheduling Theory Feasibility Tests with the Use of Design-Patterns , 2010, ISoLA.

[14]  J. Javier Gutiérrez,et al.  MAST: Modeling and Analysis Suite for Real Time Applications , 2001, ECRTS.

[15]  Jérôme Hugues,et al.  Expressing and Enforcing User-Defined Constraints of AADL Models , 2010, 2010 15th IEEE International Conference on Engineering of Complex Computer Systems.

[16]  Anneke Kleppe,et al.  The Object Constraint Language: Getting Your Models Ready for MDA , 2003 .