Timing consistency checking for UML/MARTE behavioral models

AbstractUML/MARTE model-driven development approaches are gaining attention in developing real-time embedded software (RTES). UML behavioral models with MARTE annotations are used to describe timing behaviors and timing characteristics of RTES. Particularly, state machine, sequence, and timing diagrams with MARTE annotations are appropriate to understand and analyze timing behaviors of RTES. However, to guarantee software correctness and safety, timing inconsistencies in UML/MARTE should be identified in the design phase of RTES. UML/MARTE timing inconsistencies are related to modeling errors and can be hazards throughout the lifecycle of RTES. We propose a systematic approach to check timing consistency of state machine, sequence, and timing diagrams with MARTE annotations for RTES. First, we present how state machine, sequence, and timing diagrams with MARTE annotations specify the behaviors of RTES. To overcome informal semantics of UML/MARTE models, we provide formal definitions of state machine, sequence, and timing diagrams with MARTE annotations. Second, we present the timing consistency checking approach that consists of a rule-based and a model checking-based timing consistency checking. In the rule-based timing consistency checking, we validate well formedness of UML/MARTE behavioral models in timing aspects. In the model checking-based timing consistency checking, we verify whether timing behaviors of sequence and timing diagrams with MARTE annotations are consistent with the timing behaviors of state machine diagrams with MARTE annotations. We support an automated timing consistency checking tool UML/MARTE timing Consistency Analyzer for a seamless approach. We demonstrate the effectiveness and the practicality of the proposed approach by two case studies using cruise control system software and guidance and control unit software .

[1]  Nancy G. Leveson,et al.  Engineering a Safer World: Systems Thinking Applied to Safety , 2012 .

[2]  Alexander Egyed,et al.  UML/Analyzer: A Tool for the Instant Consistency Checking of UML Models , 2007, 29th International Conference on Software Engineering (ICSE'07).

[3]  Licia Capra,et al.  xlinkit: a consistency checking and smart link generation service , 2002, TOIT.

[4]  Luciano Lavagno,et al.  UML for Real , 2003, Springer US.

[5]  Alexander Egyed,et al.  Automatically Detecting and Tracking Inconsistencies in Software Design Models , 2011, IEEE Transactions on Software Engineering.

[6]  Jinho Choi,et al.  A Case Study on Timing Constraints Verification for Safety-Critical, Time-Triggered Embedded Software , 2011 .

[7]  Doo-Hwan Bae,et al.  An Approach to Constructing Timing Diagrams from UML/MARTE Behavioral Models for Guidance and Control Unit Software , 2012, FGIT-EL/DTA/UNESST.

[8]  Wang Yi,et al.  TIMES: A Tool for Schedulability Analysis and Code Generation of Real-Time Systems , 2003, FORMATS.

[9]  Luciano Lavagno,et al.  Formal Models for Embedded System Design , 2000, IEEE Des. Test Comput..

[10]  José Ambrosio Toval Álvarez,et al.  A systematic review of UML model consistency management , 2009, Inf. Softw. Technol..

[11]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[12]  Régine Laleau,et al.  Using formal metamodels to check consistency of functional views in information systems specification , 2008, Inf. Softw. Technol..

[13]  Doo-Hwan Bae,et al.  Toward Systematic Construction of Timing Diagrams from UML/MARTE Behavioral Models for Time-Triggered Embedded Software , 2012, 2012 IEEE Sixth International Conference on Software Security and Reliability.

[14]  Tai-hoon Kim,et al.  A Survey of Consistency Checking Techniques for UML Models , 2008, 2008 Advanced Software Engineering and Its Applications.

[15]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[16]  Jochen Malte Küster,et al.  Consistent design of embedded real-time systems with UML-RT , 2001, Fourth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. ISORC 2001.

[17]  Stefan Kuntz,et al.  Timing Modeling with AUTOSAR - Current state and future directions , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[18]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[19]  Kristin Decker,et al.  Uml Distilled A Brief Guide To The Standard Object Modeling Language , 2016 .

[20]  Stephan Merz,et al.  Model Checking - Timed UML State Machines and Collaborations , 2002, FTRTFT.

[21]  Roel Wieringa,et al.  Design methods for reactive systems - Yourdon, Statemate, and the UML , 2003 .

[22]  Doo-Hwan Bae,et al.  Automatic construction of timing diagrams from UML/MARTE models for real-time embedded software , 2014, SAC.

[23]  A. Baruzzo,et al.  Checking UML Model Consistency , 2006 .

[24]  Alexander Egyed,et al.  Instant consistency checking for the UML , 2006, ICSE.

[25]  Ferhat Khendek,et al.  Consistency of UML/SPT Models , 2007, SDL Forum.

[26]  Dan Ioan Chiorean,et al.  Ensuring UML Models Consistency Using the OCL Environment , 2004, Electron. Notes Theor. Comput. Sci..

[27]  Reiko Heckel,et al.  A methodology for specifying and analyzing consistency of object-oriented behavioral models , 2001, ESEC/FSE-9.

[28]  Lus Gomes,et al.  Behavioral Modeling for Embedded Systems and Technologies: Applications for Design and Implementation , 2009 .

[29]  Quan Long,et al.  Model Checking Dynamic UML Consistency , 2006, ICFEM.

[30]  Martin Gogolla,et al.  Object Constraint Language , 2009, Encyclopedia of Database Systems.

[31]  Martyn Thomas,et al.  Software for Dependable Systems: Sufficient Evidence? , 2007 .

[32]  Ji Li-xia CA Tool for Real-time Systems Verification——UPPAAL , 2006 .

[33]  Philippe Schnoebelen,et al.  Systems and Software Verification, Model-Checking Techniques and Tools , 2001 .

[34]  Wang Yi,et al.  Code Synthesis for Timed Automata , 2003 .

[35]  Michael J. Pont Patterns for Time-Triggered Embedded Systems: Building Reliable Applications with the 8051 Family of Microcontrollers , 2001 .

[36]  Marina Schmid,et al.  Software For Dependable Systems Sufficient Evidence , 2016 .

[37]  Stephan Merz,et al.  Model Checking , 2000 .

[38]  Luciano Lavagno,et al.  Uml for Real: Design Of Embedded Real-Time Systems , 2010 .

[39]  Martin Gogolla,et al.  USE: A UML-based specification environment for validating UML and OCL , 2007, Sci. Comput. Program..

[40]  Ivar Jacobson,et al.  Unified Modeling Language Reference Manual, The (2nd Edition) , 2004 .

[41]  Bran Selic,et al.  Using UML for Modeling Complex Real-Time Systems , 1998, LCTES.

[42]  Wang Yi,et al.  Timed Automata with Asynchronous Processes: Schedulability and Decidability , 2002, TACAS.

[43]  Hassan Gomaa,et al.  Designing concurrent, distributed, and real-time applications with UML , 2000, ICSE.