Slide 1 of 14
SDL and MSC are just two of many languages, so why should they be used in preference to any other?
One key factor to users is that they combine the power of expression and communication of a graphical presentation with the formality required to carry out formal analysis. Some other graphical techniques such as data flow diagrams lack a strong formal basis, whereas some other formal techniques such as LOTOS can be difficult to learn, read and write, because the basic presentation is not intuitive.
MSC enables the formalisation of scenario use sequences that informally describe observed behaviour in stimulus-response terms. A set of MSC drawings describes a number of traces of the observed behaviour of the system, without the need to know how the responses are determined. MSC also allows the interaction between the entities in a system to be shown.
SDL bridges the gap between specification and implementation, as it supports modelling at an abstract level as well as detailed description of the implementation. Compared with MSC (see above), an SDL description describes the entities in the system as a number of well defined machines that determine the responses for each stimulus. SDL also allows the relationships between entities and classes in the system to be shown. Together the two languages provide a complete solution for specification and design, and integrate well with ASN.1 for protocols and TTCN for validation and testing (where MSC also has a role).
The combination fits the requirements specification languages
Unambiguous, clear, precise
Easy to communicate, learn, use
Supports product development
SDL and MSC are international Standards that are well supported by tools (commercially available in 2000: Cinderella from Cinderella , SDT from Telelogic, GEODE from Verilog - now part of TeleLogic). SDL and MSC can be regarded as profiles of the well known UML model from OMG. In some respects they exceed the UML requirements and have well defined semantics where UML has vaguer “semantic variation points”. The class models of SDL follow the usual UML object model notation.