Back to book presentation

TABLE OF CONTENTS

Chapter 1     INTRODUCTION

1.1   SDL, language to master complex systems development
      1.1.1   Overview of SDL
      1.1.2   Benefits provided by SDL
      1.1.3   SDL and UML
1.2   Contents of the book
1.3   Versions of SDL used
1.4   A first SDL model

Chapter 2     SDL-92/96

2.1 Introduction
      2.1.1   Evolution of SDL
      2.1.2   Textual and graphical SDL
      2.1.3   The Common Interchange Format (CIF)
      2.1.4   Where and how is SDL stored
      2.1.5   Lexical rules
      2.1.6   Comments and text extension
      2.1.7   Pages numbering
2.2 System structure
      2.2.1   Using system, block and process
      2.2.2   Scope of declarations
      2.2.3   Process
      2.2.4   Service
      2.2.5   Procedure
      2.2.6   Remote procedure
      2.2.7   External procedure
      2.2.8   Macro
      2.2.9   Block partitioning
      2.2.10   Channel partitioning
      2.2.11   Optional definition
      2.2.12   Optional transition string
2.3   Communication
      2.3.1   Signals
      2.3.2   Channel
      2.3.3   Signal route
      2.3.4   Connection
2.4   Behaviour
      2.4.1   Execution of transitions
      2.4.2   Structure of a transition
      2.4.3   Start
      2.4.4   States
      2.4.5   Input
      2.4.6   Save
      2.4.7   Spontaneous transition
      2.4.8   Continuous signal
      2.4.9   Enabling condition
      2.4.10   Priority input
      2.4.11   Variables
      2.4.12   Imported and exported value
      2.4.13   View-revealed
      2.4.14   Join and label
      2.4.15   Stop
      2.4.16   Task
      2.4.17   Create
      2.4.18   Output
      2.4.19   Decision
      2.4.20   Conditional expression
      2.4.21   Time and timers
      2.4.22   Internal input and internal output
2.5   Data types
      2.5.1   Predefined data
      2.5.2   Synonym
      2.5.3   Syntype
      2.5.4   Newtype
      2.5.5   Generators
      2.5.6   Inheritance in newtype
      2.5.7   External data
2.6   Constructs for better modularity and genericity
      2.6.1   Package
      2.6.2   Types, instances and gates
      2.6.3   Specialization
      2.6.4   Context parameters

Chapter 3     MODELING A PROTOCOL STEP BY STEP

3.1   Textual specification of the V.76 protocol
      3.1.1   Abbreviations used
      3.1.2   Exchange identification procedures (XID)
      3.1.3   Establishment of a data-link connection
      3.1.4   Information transfer modes
      3.1.5   Release of a DLC
3.2   Analysis MSCs for the V.76 protocol
3.3   Step 1: building the SDL architecture
3.4   Step 2: peer to peer V.76 architecture
3.5   Step 3: adding SDL behaviour
3.6   Step 4: adding parameters to signals
3.7   Step 5: adding a procedure and an operator
3.8   Step 6: using CHOICE type to simplify signals
3.9   Step 7: adding dynamic process creation
3.10   Step 8: adding package and structural types
3.11   Step 9: adding save, priority input, timer, faults in medium
3.12   Step 10: adding inheritance and redefinition
3.13   Step 11: adding a remote procedure
3.14   Step 12: adding frames encoding and segmentation
3.15   MSCs showing simulation traces of V.76
3.16   Conclusion

Chapter 4     SDL-2000

4.1   Differences between SDL-92 and SDL-2000
      4.1.1   The notion of type in SDL-2000
      4.1.2   System, block and process are based on agent
      4.1.3   UML view of SDL diagrams
      4.1.4   New model for data
      4.1.5   Textual notation for algorithms (statement list)
      4.1.6   Exception handling
      4.1.7   Composite states and state aggregation
      4.1.8   Interface descriptions
      4.1.9   Syntactical changes
      4.1.10   Implicit gates and channels
      4.1.11   Create request based on agent type definition
      4.1.12   Constructs for direct support of ASN.1 with SDL
      4.1.13   Merging the concept of signal route into the channel concept
      4.1.14   Removed constructs
      4.1.15   Other differences
4.2   Migration from SDL-92 to SDL-2000
      4.2.1   Correct spelling
      4.2.2   Replace national characters in identifiers
      4.2.3   Replace '.' in identifiers
      4.2.4   Correct conflicts
      4.2.5   Add << >> around qualifiers
      4.2.6   Replace FPAR and RETURNS
      4.2.7   Remove import declaration of remote variables and remote procedures
      4.2.8   Replace signal routes by channels
      4.2.9   Add gates for implicit channels
      4.2.10   Remove block substructures
      4.2.11   Remove 'all' in output via
      4.2.12   Replace services
      4.2.13   Transform NEWTYPE into VALUE TYPE
      4.2.14   Replace generators with parameterized types
      4.2.15   Other modifications

Sources of information about SDL

SDL/PR corresponding to V.76 step 12

Table of Figures

Index