220.127.116.11 Specification and Description Language (SDL), (SBM Part)
Specification and Description Language (SDL)
Z.100, chap. 2.2 (process diagram, signals),
Z.101, chap. 2.3.4, 2.3.5 (communication concept)
Z.100, chap. 2.4 (block interaction diagram)
/SDL, 1985b/ Annex D, chap. D.4.3.4 (dynamic semantic)
/SDL, 1991/ chap. 9.1.3, 9.4.1 (time sequence diagrams)
/SDL, 1992/ chap. 4 (basic message sequence charts)
SDL is a language for the specification of event-driven systems, in particular telecommunication systems (primarily in the function areas call handling, maintenance, error recovery, system control, and design of data communication protocols). However, SDL can also be used for behavior specifications of other event-driven (sub-) systems. SDL especially permits the specification of concurrent communicating real-time processes in form of nested state automata.
The language is defined in graphical and (semantically equivalent) textual notation.
Criteria for the Application of SDL:
- SDL is specially suited for the behavior modeling of (sub-) systems with relative few but complex components. The time sequence diagrams (though not part of the SDL standard but designed for the cooperation with SDL) are particularly applicable for the specification of the system behavior as seen from the user's point of view; based on its simple form they are also easy to handle.
Strong Points of SDL:
- The strong points of SDL are the simple dynamic semantics ("SDL machine") properly modeling the behavior of real-time systems. This also includes the possibility to dynamically generate process instantiations. The method has already been applied for many years to specify complex telecommunication systems.
The special value of the method is based on the combination of behavior specification and system structuring without a method break; the asynchronous communication mechanisms as an overall basis are valuable for later implementation.
Based on the simple dynamic semantics and the direct transmission of signals important dynamic characteristics of a specified system (e. g. deadlocks, race conditions, reachability, etc.) are comprehensible.
Peculiarities to be taken into consideration when modeling with SDL:
- A possible loss of signal effects may be a disadvantage in the application for the behavior modeling. This can be the result of the semantics when handling the process input queue (see /SDL, 1985a/, p. 101, chap. 2.3.5, /SDL, 1985b/, Annex D, chap. D.18.104.22.168.1, p. 109). Handling the process input queues may be controlled by applying the save mechanism, though (see /SDL, 1985a/, p. 101, chap. 3.3.2, /SDL, 1991/ chap. 3.8.1, chap. 8.3.4) so each state only consumes the signals required for its activation and leaves other signals in the queue. This has the effect as if each state has its own signal input queue which predominantly corresponds to the semantic intuitively expected.
- Based on the total functionality range of the method and because of a number of special symbols, the notation is relatively comprehensive. Basic components are easy to learn, though. The adjustment of process and block tree diagrams requires special attention. The dynamic semantics are of moderate size and free of problematic assumptions; they contain the rules required for the execution of parallel, asynchronous communicating automata and for solving realistic, possible conflicts. Training (see /SDL, 1985c/) and experience are needed for this method.
The method is utilized in SD1.5 - User-Level System Structure and SD3.3 - Definition of Requirements for the Functionality to model the courses of functions.
SDL can be transformed into Petri Nets (PNET) according to /SDL, 1988/, chap. 3.3 which permits the access to its analysis features.
- Tool support is required for the generation and reconstruction of the specification of systems with considerable size (for more information see /SDL, 1985b/, Annex D, chap. D.10). So far, several tools supporting this method are available on the market.
The formal SDL definition renders the language suitable for the mapping on programming languages (see /SDL, 1985b/, Annex D, chap.D.10.2, D.10.8).
Published versions of the method: none, since SDL is standardized.
||Reference volume of the CCITT; standard notation and language concept of SDL
||Annex to the reference volume, includes syntax and user information in form of examples
||Material of SDL course
||Includes information about transforming SDL diagrams into Petri Nets
||Practice-oriented introduction with many examples, supplementary to CCITT reference volume
||Reference volume of the CCITT for "Message Sequence Charts", an SDL-oriented version of Time Sequence Diagrams
Last Updated 01.Jan.2002
Updated by Webmaster
Last Revised 01.Jan.2002
Revised by Webmaster