The formal semantics of SDL-2000: Status and perspectives

In November 1999, the current version of specification and description language (SDL), commonly referred to as SDL-2000, passed through ITU-T. In November 2000, the formal semantics of SDL- 2000 was officially approved to become part of the SDL language definition. It covers both the static and the dynamic semantics, and is based on the formalism of abstract state machines (ASMs). To support executability, the formal semantics defines, for each SDL specification, reference ASM code, which enables an SDL-to-ASM-compiler.In this paper, we briefly survey and compare existing approaches to define the semantics of SDL formally. The ITU-T approach is then outlined in more detail, addressing the following steps: (1) mapping of non-basic language constructs to the core language, (2) checking of static semantics conditions, (3) definition of the SDL abstract machine (SAM), and (4) definition of the SDL virtual machine (SVM). The paper concludes with experiences from the SDL-to-ASM-compiler project. It is proposed that the SDL-2000 semantics can be adapted and extended to formally define the meaning of UML 2.0 class, composite structure, and statechart diagrams.

[1]  Joseph Sifakis,et al.  IF: An intermediate representation for SDL and its applications , 1999, SDL Forum.

[2]  Paolo Traverso,et al.  Applied Formal Methods — FM-Trends 98 , 1998, Lecture Notes in Computer Science.

[3]  Dines Bjørner,et al.  Formal specification and software development , 1982 .

[4]  Manfred Broy,et al.  The Design of Distributed Systems - An Introduction to FOCUS-revised version , 1992 .

[5]  Iulian Ober,et al.  Timed Extensions for SDL , 2001, SDL Forum.

[6]  Egon Börger,et al.  Abstract State Machines. A Method for High-Level System Design and Analysis , 2003 .

[7]  Andreas Prinz,et al.  Formal Definition of SDL-2000 - Compiling and Running SDL Specifications as ASM Models , 2001, Journal of universal computer science (Online).

[8]  Egon Börger,et al.  High Level System Design and Analysis Using Abstract State Machines , 1998, FM-Trends.

[9]  Yuri Gurevich,et al.  Evolving algebras 1993: Lipari guide , 1995, Specification and validation methods.

[10]  Jan A. Bergstra,et al.  Process Algebra Semantics of fSDL , 1995 .

[11]  Manfred Broy,et al.  Towards a formal foundation of the specification and description language SDL , 2005, Formal Aspects of Computing.

[12]  Ketil Stølen,et al.  An attempt to embed a restricted version of SDL as a target language in Focus , 1994, FORTE.

[13]  Egon Börger Specification and validation methods , 1995 .

[14]  Joachim Fischer,et al.  Analysis and formal Verification of SDL'92 Specifications using Extended Petri Nets , 1995 .

[15]  Andreas Prinz,et al.  Towards a new formal SDL semantics - outline of an abstract state machines , 1999, SDL Forum.

[16]  Uwe Glässer,et al.  Abstract State Machine Semantics of SDL , 1997, J. Univers. Comput. Sci..