SDL Language Relevance to Protocol/Telecom Application Development: Case Study Bhaskar Rao.G,

advertisement
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
1
May 31, 2016
Motorola India Electronics Ltd..
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 <AUTO CODE >
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
Global Software Group
ITU-T Meet, Bangalore, 2001
2
May 31, 2016
Motorola India Electronics Ltd..
Product development with SDL
Req Analysis
System analysis
and design
Object design
Verification
and Validation
Auto code generation
System testing
Global Software Group
ITU-T Meet, Bangalore, 2001
3
May 31, 2016
Motorola India Electronics Ltd..
MIEL: Projects
• Infrastructure projects
• Control Network projects
• Other Projects
Global Software Group
ITU-T Meet, Bangalore, 2001
4
May 31, 2016
Motorola India Electronics Ltd..
Benefits of using SDL at MIEL
Attributes
Range of benefits
Cycle time Reduction 1.2 to 2X
Productivity
1.2 to 2X
Quality
2 to 5X
• 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
Global Software Group
ITU-T Meet, Bangalore, 2001
5
May 31, 2016
Motorola India Electronics Ltd..
Major Concerns
• Technical Concerns
–
–
–
Impact on Code Size & Performance <Lack of effective code generators: Handwritten code>
Data Handling Problems <Addressed in SDL-2000>
• No Support for Global Data and No effective ways to write Algorithms
Difficulty in Understanding Auto Generated Code <SDL to be maintained>
• Managerial Concerns
–
–
–
Familiarity with Current Practices <Learning Curve>
Estimation and Tracking need improvement < New approach>
Cost of the tools
• Customer Related
–
–
–
–
Not Willing
Other Modules are in C <C code integration: External procedures>
On Site Maintenance
Timely Delivery due to projected risk of using new technology <Not a Risk,
Faster>
Global Software Group
ITU-T Meet, Bangalore, 2001
6
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
7
May 31, 2016
Motorola India Electronics Ltd..
Case Study
Global Software Group
ITU-T Meet, Bangalore, 2001
8
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
9
May 31, 2016
Motorola India Electronics Ltd..
Interaction with the environment
Environment
System
L3Chnl
L3, L1
L2
L2Chnl
Global Software Group
ITU-T Meet, Bangalore, 2001
10
May 31, 2016
Motorola India Electronics Ltd..
Simplified FSM for L2
Start
Init
Idle
Packet/Call BreakN_SendM_Timer(N)
FinalAckFrame/Ack
TimeOut/Retransmit
Global Software Group
ITU-T Meet, Bangalore, 2001
11
May 31, 2016
Motorola India Electronics Ltd..
SDL System Architecture
SignalsPack
E
N
V
I
R
O
N
M
E
N
T
External
C Code
BlockType
DataDefPack
System
Block 1
ProcessType
Process 1
Global Software Group
ITU-T Meet, Bangalore, 2001
12
May 31, 2016
E
N
V
I
R
O
N
M
E
N
T
V &V
Motorola India Electronics Ltd..
Test
Engineer
Test Data
SDL
Simulator
<System>
Traces
SDL
MSC
Text
Breakpoints
Global Software Group
ITU-T Meet, Bangalore, 2001
13
May 31, 2016
Motorola India Electronics Ltd..
Application Integration
Other
Applications
Glue Logic
Generated
Application
(Single Thread)
Global Software Group
ITU-T Meet, Bangalore, 2001
14
May 31, 2016
Motorola India Electronics Ltd..
Application Integration
Other
Applications
Glue Logic
Generated
Application
(Multi-Threaded)
Global Software Group
ITU-T Meet, Bangalore, 2001
15
May 31, 2016
Motorola India Electronics Ltd..
Conclusions
•
•
•
•
SDL Suitability and Promises
Application Perspectives
Product Development Process
Case Study
Global Software Group
ITU-T Meet, Bangalore, 2001
16
May 31, 2016
Motorola India Electronics Ltd..
Q &A
Bhaskar Rao.G
gbr@miel.mot.com
+91-80-5598615 ext: 3091
Motorola India Electronics Pvt Ltd,
Banglore- 506 042
Global Software Group
ITU-T Meet, Bangalore, 2001
17
May 31, 2016
Motorola India Electronics Ltd..
Backup Slides
Global Software Group
ITU-T Meet, Bangalore, 2001
18
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
19
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
20
May 31, 2016
Motorola India Electronics Ltd..
Usage Perspectives of SDL
• Design language
– Used as primarily the design language to capture highlevel 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
Global Software Group
ITU-T Meet, Bangalore, 2001
21
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
22
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
23
May 31, 2016
Motorola India Electronics Ltd..
Requirements Analysis
• Importance levels
Attribute
level
Evolvability
– Critical, Medium, Low
• Separate guidelines to
be followed
– Effectiveness of the
code generator
Performance
– implementation/Design
aspects influence the
performance and code
size
Code
Global Software Group
ITU-T Meet, Bangalore, 2001
24
May 31, 2016
Motorola India Electronics Ltd..
V&V
• Discrete, Real Time and Remote target simulation
• Validation of MSCs
• Automatic detection of deadlocks and dynamic
errors
• Generation of MSCs
Global Software Group
ITU-T Meet, Bangalore, 2001
25
May 31, 2016
Motorola India Electronics Ltd..
Code Generation Environment
Run Time Library
UNIX, NT, pSOS,
VxWorks, …
SDL
Code
SDT Auto
Code Tool
Gen.
code
Compiler
H2SDL
SDT
Simulation
Executable
C
Headers
Manual
C Code
Global Software Group
ITU-T Meet, Bangalore, 2001
26
May 31, 2016
Motorola India Electronics Ltd..
Case Study
Global Software Group
ITU-T Meet, Bangalore, 2001
27
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
28
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
29
May 31, 2016
Motorola India Electronics Ltd..
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
Global Software Group
ITU-T Meet, Bangalore, 2001
30
May 31, 2016
Download