Title: Systems Engineering Project: System Validation and Verification Using SDL
1Systems Engineering ProjectSystem Validation
and VerificationUsing SDL
Ron Henry ENSE 623 November 30, 2004
2Formalisms for Automated VV
- Several standard notations have evolved in
support of automated validation and verification - Specification and Description Language (SDL)
- Message Sequence Charts (MSC)
- Test and Test Control Notation (TTCN)
- These formalisms are considered complementary
- MSCs (familiar from UML sequence diagrams) are
used both to specify requirements and to trace
execution - SDL is used to specify the system architecture
and state-machine model - TTCN is an abstract representation for test cases
3 Characteristics of SDL
- Major language features
- Formal, hierarchical data flow diagrams
- Extended finite state machines (EFSMs)
- Local variables
- Timers
- SDL Evolution
- Widely used in telecommunications industry
- First ITU Z.100 recommendation in 1980
- Updated every ?4 years
- SDL-92 added support for object-oriented features
- SDL-2000 adds support for hierarchical EFSMs
(equivalent to Statecharts)
4Commercial Tools for SDL-Based VV
- Tools can provide a variety of functions
- Graphical editing syntax checking
- Model checking (static analysis)
- Executable simulation animation of a model
- Validation of a model against a use case
- Specification-based generation of test cases
- Telelogic appears to be market leader in this
area - Tau/SDL is one of the leading tools
- ObjectGeode also acquired by Telelogic
- SAFIRE-SDL by Solinet
- Tau/SDL was used for this project
- 15 licenses available under arrangement with UMD
(handled through Prof. Basili in CS dept.) - C compiler (Borland recommended) must be
installed in order to generate executables for
simulation and validation
5General Methodology
6Remote Observing Platform System Context
7Remote Observing Platform Domain Model
8MSC TurnOnInstrument
9MSC TurnOffInstrument
10MSC Observe
11Tau/SDL Model Structure
12Observatory System Diagram
13InstrumentModule Block Diagram
14CAM1 Block Diagram
15Shutter Process Diagram
16CameraManager Process Diagram
17Inheritance in SDL HomingCameraManager
18Tau/SDL Simulator User Interface
19MSC Observe Process-Level Simulator Trace
20Tau/SDL Validator User Interface
21Tau/SDL Validator Report Summary
22Tau/SDL Validator Trace Implicit Signal
Consumption
23Model Validation MSC TurnOnInstrument
24Model Validation MSC Observe
25MSC-Based Testing TTCN Structure
26Test Case Generated from Observe MSC
27VV with SDL Project Summary
- This project has demonstrated a robust framework
for VV based on SDL - Hierarchical data flow diagrams are well suited
to formalizing complex system architectures - VV is accomplished through following steps
- 1. Basic usability testing and sanity checking is
done manually using a simulator - 2. SDL model is automatically validated against
use cases in the form of MSCs - 3. MSCs are then used to generate TTCN test cases
- Tau/SDL is a powerful tool, but its complexity
presented challenges - Not all features worked
- Generated executables subject to unexplained
crashes - Error messages not always clear