A major contributor to this article appears to have a close connection with its subject. (May 2020) |
| PragmaDev Studio | |
|---|---|
| Developer | PragmaDev |
| Stable release | 6.0
|
| Operating system | Linux, Windows, macOS, Raspbian |
| Type | Software development, Conformance testing |
| License | Free and commercial |
| Website | pragmadev |
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.
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.
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.
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.
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. In that organization the execution engine is the one from the model checker that is not fully aligned with the model semantics. In version 6 PragmaDev Studio has integrated OBP (Observer Based Prover) tool developed by ENSTA research lab . In that integration OBP drives the exploration of the state space while the execution is done by the SDL execution engine. This guarantees the executions is conform to the SDL semantics.
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.
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.
PragmaDev Studio introduces a Performance Analyzer to find the best architecture for time or energy in a set of scenario.
PragmaDev Studio supports Cyber Physical Systems (CPS) simulation via the Functional Mock-up Interface.

| 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. |
| 2022 | 6.x | Model checking with OBP. |
The creator of PragmaDev Studio is the private company PragmaDev. PragmaDev was founded in 2001, and is located in Paris, France.
{{cite journal}}: Cite journal requires |journal= (help){{cite journal}}: Cite journal requires |journal= (help){{cite book}}: CS1 maint: location (link) CS1 maint: location missing publisher (link){{cite journal}}: Cite journal requires |journal= (help){{cite journal}}: Cite journal requires |journal= (help)PragmaDev is [a] provider of graphical software modelling tools based on SDL...