# PragmaDev Studio

PragmaDev Studio is a modeling and testing software tool introduced by PragmaDev in 2002 dedicated to the specification of communicating systems. It was initially called Real Time Developer Studio or RTDS. Its primary objective was to support SDL-RT modeling technology. Since V5.0 launched on October 7, 2015 RTDS is called PragmaDev Studio, and it is organized in four independent modules: Specifier, Developer, Tester and Tracer. V5.1 launched on November 29, 2016 introduces a freemium licensing model.

## Features
### Specification and Description Language

The Specification and Description Language (SDL) is a modeling language standardized by ITU-T to describe communicating systems. SDL is graphical but contains an action language with a semantic of execution making the SDL models executable. SDL is considered formal because it is complete and non-ambiguous. SDL-RT is a variant of SDL where the action language is replaced by C or C++ instructions. SDL-RT is considered semi-formal because it mixes SDL with code. ITU-T has standardized a UML profile based on SDL making by extension any SDL tool a sort of UML tool.

### Simulation

PragmaDev Specifier embeds an SDL simulator that behaves like a model debugger. It is possible to set breakpoints graphically, to view variables, and pending timers. During execution a live trace is generated based on the Message Sequence Chart ITU-T standard.

### Code generation (compiler)

PragmaDev Studio can generate C or C++ code out of an SDL model, and PragmaDev Developer can generate C or C++ code out of an SDL-RT model. The generated code can be adapted to any Real Time Operating System or scheduler. The tool offers a number of integrations with debuggers such as gdb so that the user feels he is still debugging the model, not the generated code.

### Model checking

PragmaDev Studio can export the SDL model to different formats such as IF, FIACRE, or XLIA in order to verify the model in third party tools such as IFx from Verimag, TINA from LAAS, or Diversity from CEA LIST.

### Functional testing

PragmaDev Tester supports the TTCN-3 international standard for testing. The tool can either simulate the test cases against the SDL model, or generate code to be compiled and run against a real SUT.

### Model Based Testing

* PragmaDev Studio can generate TTCN-3 test cases out of Message Sequence Charts resulting from a simulation.
* Test cases can also be generated out of the SDL model through a third party technology such as IFx from Verimag or Diversity from CEA-LIST: Laboratory for Integration of Systems and Technology. For that purpose PragmaDev Studio exports the model to a pivot language that is understood by the third party tool.

### Deployment simulation

PragmaDev Studio can simulate the deployment of many instances of an SDL model for verifying its behavior in a distributed computing environment. This feature is based on research from Humboldt University of Berlin.

### Performance analysis

PragmaDev Studio introduces a Performance Analyzer to find the best architecture for time or energy in a set of scenario.

### CPS simulation

PragmaDev Studio supports Cyber Physical Systems (CPS) simulation via the Functional Mock-up Interface.

## Application domains
### Telecommunications

* Alcatel has selected PragmaDev for the development and maintenance of their telephone switches.
* Sharif University has studied an optimization of the MAC layer for the IEEE 802.11wireless protocol.
* Modeling and simulation of IoT.
* Testing of network protocols.

### Avionic and space

* Specification and development of the Air traffic control system for Airbus planes.
* System architecture optimization for a space mission.
* Integration in TASTE, the ESA framework dedicated to the development of real time and embedded systems.

### Semi-conductors

* Hardware architecture optimization of micro-processors.

### Security

* Development of a decentralized earthquake early warning system.
* Design and implementation of an automatic identification system.
* Safety requirements verification applied to European Train Control System.

## PragmaDev Studio history

| Release year | Version | Summary |
| 2002 | 1.x | SDL-RT support with code generation for VxWorks and debug with Tornado. |
| 2003 | 2.x | UML support. |
| 2004 | 3.x | SDL support including simulation. |
| 2009 | 4.x | TTCN-3 support for testing. |
| 2015 | 5.x | New look and feel. New organization in modules: Specifier, Developer, Tester, Tracer. |

## PragmaDev

The creator of PragmaDev Studio is the private company PragmaDev. PragmaDev was founded in 2001, and is located in Paris, France.