SDL Language Relevance to Protocol/Telecom Application Development: Case Study PowerPoint PPT Presentation

presentation player overlay
About This Presentation
Transcript and Presenter's Notes

Title: SDL Language Relevance to Protocol/Telecom Application Development: Case Study


1
SDL Language Relevance to Protocol/Telecom
Application Development Case Study
By Bhaskar Rao.G, Software Engineering
Group, Motorola India Electronics Pvt.
Ltd., Bangalore, India- 560 042
World of Communication
2
SDL, Is it only Auto Code Generation?
  • Integrated Methods and Tools for Software
    Development (Methodology)
  • Requirements - MSC
  • SAD - State Charts/UML/SDL
  • Coding - SDL, C ltAUTO CODE gt
  • Unit and Integration Testing - Simulation
    Validation
  • System Testing - TTCN/SDL
  • Code generation for multiple targets pSOS, Vrtx,
    VxWorks, NT, UNIX, Classic, OSE etc
  • Separates Functionality from Implementation and
    Environmental aspects
  • Design, Implementation and Test Development (with
    environment) language

3
Product development with SDL
Req Analysis
System analysis and design
Object design
Verification and Validation
Auto code generation
System testing
4
MIEL Projects
  • Infrastructure projects
  • Control Network projects
  • Other Projects

5
Benefits of using SDL at MIEL
  • Average test effort for SDL projects reduced due
    to V V
  • No noticeable performance overhead
  • SDL Based test automation was very effective
  • Unit, Integration, Load, Conformance and
    Performance testing
  • Less dependency on tools, Good Environment
    support
  • Auto code is Scalable

6
Major Concerns
  • Technical Concerns
  • Impact on Code Size Performance ltLack of
    effective code generators Hand-written codegt
  • Data Handling Problems ltAddressed in SDL-2000gt
  • No Support for Global Data and No effective ways
    to write Algorithms
  • Difficulty in Understanding Auto Generated Code
    ltSDL to be maintainedgt
  • Managerial Concerns
  • Familiarity with Current Practices ltLearning
    Curvegt
  • Estimation and Tracking need improvement lt New
    approachgt
  • Cost of the tools
  • Customer Related
  • Not Willing
  • Other Modules are in C ltC code integration
    External proceduresgt
  • On Site Maintenance
  • Timely Delivery due to projected risk of using
    new technology ltNot a Risk, Fastergt

7
Challenges ahead
  • Good and Effective Code Generators
  • Code size and Performance
  • Direct executable instead of code generation
  • SDL-2000 supporting tools
  • Gap between the standard and implementation
    should be small
  • Portable across tools
  • Enhancing the SDL to support General Application
    Development
  • Cost considerations

8
Case Study
9
Specifications Data Link Layer
  • The Data Link Layer shall get packets from the
    Network Layer, Thease packets have to be
    segmented and converted Frames and sent to the
    Physical Layer
  • Does Framing and Error Control
  • Note Please Refer to ISO-OSI specs for the
    detailed specifications

10
Interaction with the environment
Environment
System
Ack, Nack
Packet
L2
L3, L1
L3Chnl
L2Chnl
Frame
FrAck
11
Simplified FSM for L2
Init
Start
Idle
Packet/Call BreakN_SendM_Timer(N)
FinalAckFrame/Ack
WaitRsp
TimeOut/Retransmit
12
SDL System Architecture
SignalsPack
DataDefPack
E N V I R O N M E N T
E N V I R O N M E N T
External C Code
System
BlockType
Block 1
ProcessType
Process 1
13
V V
Test Engineer
Test Data
SDL Simulator ltSystemgt
Traces SDL MSC Text Breakpoints
14
Application Integration
Other Applications
Glue Logic
Generated Application (Single Thread)
15
Application Integration
Other Applications
Glue Logic
Generated Application (Multi-Threaded)
16
Conclusions
  • SDL Suitability and Promises
  • Application Perspectives
  • Product Development Process
  • Case Study

17
Q A
  • Bhaskar Rao.G
  • gbr_at_miel.mot.com
  • 91-80-5598615 ext 3091
  • Motorola India Electronics Pvt Ltd,
  • Banglore- 506 042

18
Backup Slides
19
SDL Promises
  • Facilitates Development of the Product from
    Requirements to End
  • MSC, UML(State Charts), SDL, TTCN, Simulation,
    Validation, Auto code, Auto Test Case generation
    .
  • Separates Functionality from Implementation and
    Environmental aspects
  • Designs captured at higher levels of abstraction
  • Verification of functionality (Make sure it is
    correct)
  • Specialization to a particular environment and
    platform
  • Code generation for multiple targets
  • pSOS, Vrtx, VxWorks, NT, UNIX, Classic, OSE etc
  • Re-targeting 2-3 staff months effort (ONE TIME)
  • Integrated approach with integrated methods

20
SDL Promises (2)
  • Graphical Representations
  • Availability of major implementation concepts as
    primitive types in the language
  • Timers
  • Messaging
  • State Machine
  • Sending and Receiving
  • Structuring mechanisms
  • Targeting specifications
  • Entire system as task
  • Multiple tasks
  • OS and NON OS communicating mechanisms

21
Usage Perspectives of SDL
  • Design language
  • Used as primarily the design language to capture
    high-level details
  • Telecom, Real Time and major protocol
    development
  • Implementation language (with code generation)
  • SDL, MSC, TTCN, Simulation, Verification, Code
    Generation, C ...
  • Completely formal SDL representation
  • Takes extra 30 effort
  • Minimizes the need for extra coding phase
  • Early verification and validation

22
Usage Perspectives of SDL (2)
  • Test case development language
  • Proved to be very good for medium and high
    complex systems
  • Unit, Integration, Performance, Conformance,
    Stress testing
  • Features enable suitability
  • FSM, Timers, Messaging, Logging, Tracing and
    Reply with tool
  • Concurrency
  • Ability to simulate the non-existing modules

23
SDL Deployment at MIEL
  • The SDL methodology at MIEL uses integrated
    methods and tools for protocol stack software
    development
  • Requirements - MSC
  • System Analysis and Design - State Charts/SDL
  • Coding - C, SDL (Code Generation)
  • Unit and Integration Testing - Simulation
    Validation
  • System Testing - TTCN/C
  • Not used for incremental changes to legacy
    products

24
Requirements Analysis
  • Importance levels
  • Critical, Medium, Low
  • Separate guidelines to be followed
  • Effectiveness of the code generator
  • implementation/Design aspects influence the
    performance and code size

25
VV
  • Discrete, Real Time and Remote target simulation
  • Validation of MSCs
  • Automatic detection of deadlocks and dynamic
    errors
  • Generation of MSCs

26
Code Generation Environment
Run Time Library UNIX, NT, pSOS, VxWorks,
SDT Auto Code Tool
SDL Code
Gen. code
Compiler
SDT Simulation
H2SDL
Executable
C Headers
Manual C Code
27
Case Study
28
Problem Solving Stages
  • Requirement Analysis
  • MSCs are helpful
  • Interface Specification
  • State Charts
  • System Analysis and Design
  • HLD with SDL
  • LLD
  • Detailed SDL and C code
  • Logging
  • Simulation
  • Verifying the correctness wrt to Requirements
  • Code Generation and Application Build

29
HLD
  • Environment
  • Network Layer, Physical Layer
  • Data structures
  • Packet, Frame and other internal data structures
  • Timers
  • A timer (set) is required for very frame
  • Messages
  • Packet, Frame, Ack, Negative Ack

30
Issues
  • Application Building
  • Separate Application, Part of the application,
    Part of the existing application, Run on a
    particular target, Multi Threading VS Single
    Threading
  • Process
  • Estimations and Actuals
  • Cycle Time, IPF, Productivity
  • Tracking and Controlling issues
  • Lack of sufficient data
  • Maintenance
  • Adding New Features, Corrections, Changing the
    implementations
Write a Comment
User Comments (0)
About PowerShow.com