TURTLE: a real-time UML profile supported by a formal validation toolkit

We present a UML 1.5 profile named TURTLE (Timed UML and RT-LOTOS Environment) endowed with a formal semantics given in terms of RT-LOTOS. TURTLE relies on UML's extensibility mechanisms to enhance class and activity diagrams. Class diagrams are extended with specialized classes named Tclasses, which communicate and synchronize through gates. Also, associations between Tclasses are attributed by a composition operator (Parallel, Synchro, Invocation, Sequence, or Preemption) which provides them with a formal semantics. TURTLE extends UML activity diagrams with synchronization actions and temporal operators (deterministic delay, nondeterministic delay, time-limited offer, and time-capture). The real-time dimension of TURTLE has been further improved by the addition of two composition operators, periodic and suspend, as well as suspendable delay, latency, and time-limited offer operators at the activity diagram level. Core characteristics of TURLE are supported by TTool - the TURTLE toolkit - which includes a diagram editor, a RT-LOTOS code generator and a result analyzer. The toolkit reuses RTL, a RT-LOTOS validation tool offering debug-oriented simulation and exhaustive analysis. TTool hides RT-LOTOS to the end-user and allows him/her to directly check TURTLE modeling against logical errors and timing inconsistencies. Besides the foundations of the TURTLE profile, this paper also discusses its application in the context of space-based embedded software.

[1]  Jérôme Delatour,et al.  UML/PNO: A Way to Merge UML and Petri Net Objects for the Analysis of Real-Time Systems , 1998, ECOOP Workshops.

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

[3]  Ludovic Apvrille,et al.  A New UML Profile for Real-Time System Formal Design and Validation , 2001, UML.

[4]  Andy Evans,et al.  Advanced Methods and Tools for a Precise UML , 1999 .

[5]  Jean-Paul Rigault,et al.  Integrating the Synchronous Paradigm into UML: Application to Control-Dominated Systems , 2002, UML.

[6]  Amir Pnueli,et al.  A Formal Semantics for a UML Kernel Language , 2001 .

[7]  Wolfgang Müller,et al.  A UML Profile for Real-Time Constraints with the OCL , 2002, UML.

[8]  Amel Mammar,et al.  An overview of a method and its support tool for generating B specifications from UML notations , 2000, Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering.

[9]  Issa Traoré,et al.  An Outline of PVS Semantics for UML Statecharts , 2000, J. Univers. Comput. Sci..

[10]  Johan Lilius,et al.  vUML: a tool for verifying UML models , 1999, 14th IEEE International Conference on Automated Software Engineering.

[11]  Sébastien Gérard,et al.  Using the Model Paradigm for Real-Time Systems Development: ACCORD/UML , 2002, OOIS Workshops.

[12]  Bd Bart Theelen,et al.  Using the SHE Method for UML-Based Performance Modeling , 2002 .

[13]  J. Hooman Towards Formal Support for UML-based Development of ded Systems , 2002 .

[14]  Jean-Michel Bruel Integrating formal and informal specification techniques. why? how? , 1998, Proceedings. 2nd IEEE Workshop on Industrial Strength Formal Specification Techniques.

[15]  Claude Jard,et al.  Development of Véda, a Prototyping Tool for Distributed Algorithms , 1988, IEEE Trans. Software Eng..

[16]  Sophie Dupuy-Chessa,et al.  A Multi-formalism Approach for the Validation of UML Models , 2000, Formal Aspects of Computing.

[17]  Celso A. S. Santos,et al.  Experience with RT-LOTOS, a temporal extension of the LOTOS formal description technique , 2000, Comput. Commun..

[18]  Ana Moreira,et al.  Use of E-LOTOS in Adding Formality to UML , 2000, J. Univers. Comput. Sci..

[19]  Jean-Pierre Courtiat,et al.  From the Specification to the Scheduling of Time-Dependent Systems , 2002, FTRTFT.

[20]  Ludovic Apvrille,et al.  Verifying Service Continuity in a Dynamic Reconfiguration Procedure: Application to a Satellite System , 2004, Automated Software Engineering.

[21]  M. Bjorkander Graphical programming using UML and SDL , 2000 .

[22]  Yuri Gurevich,et al.  An Automatic Verification Tool for UML , 2000 .

[23]  Jozef Hooman Towards Formal Support for UML-based Development of Embedded Systems , 2002 .

[24]  Ludovic Apvrille,et al.  New Operators for the TURTLE Real-Time UML Profile , 2003, FMOODS.