Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

Using SCADE System for the Design and Integration 2011-01-2577


Published
of Critical Systems 10/18/2011

Thierry Le Sergent and Alain Le Guennec


Esterel Technologies

Sebastien Gerard, Yann Tanguy and Francois Terrier


CEA, LIST

Copyright © 2011 SAE International


doi:10.4271/2011-01-2577

be used as the basis to develop scripts that will automatically


ABSTRACT integrate the complete application software.
This paper presents the SCADE System™ product line for
systems modeling and generation based on the SysML INTRODUCTION
standard [2] and the Eclipse Papyrus open source technology.
The International Council on Systems Engineering (INCOSE)
SCADE System has been developed in the framework of
[1] defines system engineering as an interdisciplinary
Listerel [7], a joint laboratory of Esterel Technologies,
approach and means to enable the realization of successful
provider of the SCADE® tools [8], and CEA LIST, project systems. It focuses on defining customer needs and required
leader of the Eclipse component, Papyrus [4]. functionality early in the development cycle, documenting
requirements, and then proceeding with design synthesis and
From an architecture point of view, the Esterel SCADE tools system validation.
are built on top of the SCADE platform which includes both
SCADE Suite®, a model-based development environment The main challenges of System Engineering are related to
dedicated to critical software, and SCADE System enabling providing non-ambiguous and coherent specifications,
model-based system engineering. SCADE System includes making all relevant information readily available to all
Papyrus, an open source component (under EPL license), stakeholders involved in the development process,
integrated in the modeling platform of Eclipse. Using this establishing traceability between all activities, and providing
integrated modeling platform, both system and software the appropriate level of verification and validation. Model-
teams share the same environment for system development. based approaches can play a central role in System
Furthermore, other model-based tools can be added to the Engineering. Among the benefits, Model-based System
environment, due to the use of Eclipse. Engineering (MBSE) avoids duplication and parallel
evolution of data between system teams and software teams,
SCADE System avoids duplication of efforts and hence reducing the nightmare of information
inconsistencies between system structural descriptions made resynchronization.
of SysML Block Definition Diagram (BDD) and Internal
Block Diagram (IBD), and the full software behavioral SysML is specifically targeting system-level specifications.
description designed through SCADE Suite models. Once the We currently observe a trend toward more formalization of
system description is completed and checked, the individual the system-level artifacts through the use of modeling
software blocks in the system can be refined in the form of languages like SysML.
models in SCADE Suite or in the form of manually
developed source code. Automatic and DO-178B Level A- Esterel SCADE is a proven solution for developing safety-
qualified code generation can then be applied to the SCADE critical and mission-critical software. Although SCADE Suite
Suite models. Moreover, the SCADE System description can is already connected to various tools that together form the
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

overall development environment, its scope does not directly certification standards. In the rest of the paper, “Scade” is
encompass system-level artifacts themselves. There is an used to refer to the modeling notation and “SCADE Suite”
identified need to smoothen the integration between system- refers to the toolset that supports the Scade notation.
level artifacts and SCADE Suite designs, making the
transition process from system to software more reliable and The Scade notation includes both block diagrams and state
efficient. A good process, in which the right formalism is machines that can be nested at any levels. This powerful
used for the right artifact, is an important aspect. Good tool notation has been formally defined [9] to provide a rigorous
support is also essential for automating as many tasks as description of the SW behavior, leaving no room for
possible while preserving overall consistency of the system to uncertainty. Characteristics are:
software flow.
• Strong typing
Esterel Technologies is working on a combined modeling • Explicit initialization of data flows
solution that brings together the respective strengths of
SysML and SCADE Suite. The combined process facilitates • Explicit management of time with clocks [9, 11]
the work of both system designers and software designers
with respect to the overall design. Therefore, the • Concurrency based on data dependencies
requirements are captured from both the system designer's • Deterministic execution.
point of view and from the software designer's point of view.
The requirements also consider the interactions between them The SCADE Suite toolset supports a model-driven paradigm
and how they can synchronize their respective points of view. in which the Scade model is the software specification.

The paper presents the results of combining a selected subset The SCADE Suite KCG C code generator is qualified for
of SysML with SCADE Suite and how the modeling avionic systems with respect to DO-178B at the highest level
constructs used at the boundary between the two formalisms of safety (Level A) and for industrial and railways domains
can be synchronized to support the resulting “mixed with respect to IEC 61508 up to SIL 3 and EN 50128 up to
language” modeling experience. The resulting tool is branded SIL 3/4. This, in addition to several verification tools such as
SCADE System. SCADE Suite Model Test Coverage™, provides evidence
that the code that will be embedded fulfills the high-level SW
PAPYRUS - SYSML requirements.
Papyrus is the UML editor of the Eclipse open-source
platform and is the result of a joint effort from different WORKFLOW
initiatives launched by CEA and TOPCASED [5] some years INCOSE provides guidelines; in practice, each organization
ago. Papyrus is aiming to provide full support to UML and a defines its own workflow depending on internal constraints.
very advanced support to UML profiles. This latter concept is The better the Commercial Off-The-Shelf (COTS) tool
the lightweight extension mechanism of UML that enables supports the different workflow steps, the more efficient it is.
one to customize it later to fit to different specific domains
and concerns. This paper is not a methodological paper but a technical
paper focusing on the way that the required features can be
In order to enable systems architects to model their systems, implemented in a COTS tool to support individual MBSE
the OMG (http://www.omgsysml.org/) has standardized the activities.
UML Profile for Systems Engineering (in short SysML).
SysML has been defined as a general-purpose modeling So an ideal toolset shall support MBSE activities, automating
language for systems engineering and was designed as a the tasks, still be customizable and ensuring information
UML profile. In addition to its UML support, Papyrus also consistency between the teams. To that end, in addition to
provides complete support to SysML enabling one to edit being a SysML modeler, SCADE System supports
BDD, IDD, as well as the other SysML diagrams. Papyrus requirements traceability, model diff, and automatic
also enables validation of the models with respect to its production of system design documents.
underlying language (SysML in this case) and comparison
and merge of SysML models. Project specificities also require additional verification or
development tools, so the COTS tool should allow
SCADE SUITE development of such complementary tools. SCADE System
SCADE (Safety Critical Application Development Model APIs provide an adequate means for such
Environment) is both a notation and a toolset that was developments. This is presented in the last section of this
specifically designed for the development of critical systems paper together with the architecture of the SCADE System
in aeronautics, railway, and industry that must comply with modeler tool itself.
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

Among the activities that must rely on safe foundations, the • The “opaque behavior” can be attached not only to mere
System-Software synchronization is a key feature. The SysML blocks, but to any entity to which an “opaque
mechanism implemented in SCADE System provides the behavior” can legally be attached.
basic bricks that allow system teams and SW team to work
efficiently on the same project. The foundation of this feature • The connection between a behaviored classifier and the
is detailed in the next section of paper. opaque behavior providing its main behavior need to no
longer be implicit and direct (implicitly matching behavioral
flow ports of the behaviored classifier with the inputs/outputs
SYSTEM-SOFTWARE of the Scade node). Instead, the connection between the
SYNCHRONIZATION structural interface and the behavioral interface can be made
explicit. (Some suggest using delegation connectors in the
BOUNDARY BETWEEN SYSML AND SysML model itself; some suggest using an explicit
SCADE SUITE behavioral description that realizes the transmission.)
The proposed approach assumes that SCADE Suite will be This explicit separation also shields the behavioral interface,
used for application-level behavioral specification, at made of the parameters of the opaque behavior, from the
minimum for selected software components deemed critical. more complex features available to describe the structural
interface of the behaviored classifier (non-atomic flow ports,
Scade is a structured behavioral modeling language. Unlike etc.). As a consequence, the mapping between the opaque
SysML, it does not enforce a strong separation between behavior and the corresponding Scade node can be kept more
structural interface and behavioral interface. In Scade, the direct and simple, and therefore, easier to maintain in an
unit of modeling is called the “operator”, which can be automated way (the mapping is kind of “canonical”, whereas
considered as a type of “functional block”, performing a the connection between structure and behavior in SysML
computation using a set of inputs and providing a set of might not be canonical).
outputs, as a result. On the other hand, SysML separates
structural descriptions on one side (blocks and their The following sections describe the boundary between
interfaces) and behavioral descriptions (behaviors, such as SysML and Scade. We follow a two-stage approach.
activities or state machines) on the other side. Therefore, the
most straightforward representation of a Scade operator in the • The first (optional) step is to make the SysML opaque
SysML world would be as a so-called “opaque behavior” (a behavior that acts as the Scade operator surrogate explicit, in
behavior of which only the input and output parameters are cases where it was left implicit; it is a simplification step in
known, but which implementation is considered hidden or preparation for the actual mapping to Scade.
external to SysML). • The second step describes the actual mapping between the
SysML opaque behavior and the corresponding Scade
Once promoted as opaque behaviors in a SysML application operator interface in details.
model, Scade nodes can be used like any other behaviors in
the SysML model. DETAILED SPECIFICATION OF
• They can be used in architecture models represented as
SYSTEM/SOFTWARE BOUNDARY
block diagrams: Some of the blocks will use Scade operators Canonical SysML Opaque Behavior of a Block
as their “main behavior” (a block can have any behavior as its
In the top-down scenario described previously, it is assumed
“main behavior”).
that the SysML block (or the behavioral feature) to be
• They can be used in architecture models represented as implemented in Scade already has an attached opaque
activity diagrams: Some of the sub-behaviors called within behavior. In cases where there is initially no such opaque
the activity will be the Scade operators directly. behavior, the tool supporting the approach provides a means
to automatically derive a “canonical” opaque behavior for the
In a more “service oriented” context, they could also be used
block or behavioral feature. The next subsection describes
as implementation “methods” for some SysML operations (an
how such a “canonical” opaque behavior can be derived from
operation can have any behavior as its implementation
the interface of a given SysML block, to act as its main
“method”). Previous work on the UML/SysML gateway [12]
behavior. For the sake of simplicity, we assume in subsequent
for SCADE Suite focused solely on the first use case (block
sub-sections that leaf SysML blocks to be implemented in
diagrams). Moreover, a Scade operator was always directly
Scade already have an opaque behavior, be it explicit or
derived from a SysML block, without having to use an
automatically derived.
opaque behavior as an intermediate “proxy” between the
SysML world and the Scade world. We now consider making
the “opaque behavior” always explicit because this has
several advantages over the previous approach.
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

Automatic Derivation of an Opaque Behavior for a SysML to overcome the limitation of “shallow/flat”
Given SysML Block connections).
In cases where a SysML block only has atomic flow ports
typed by a value-type (not by a signal), deriving the
corresponding “canonical” opaque behavior is
straightforward: the opaque behavior will simply have one
parameter for each flow port, keeping the same name, type,
and direction. We consider that the values carried by the
atomic flow ports are bound to the corresponding parameters
of the behavior as if the ports were somehow connected to the
corresponding parameters of the behavior using delegation
connectors.

Figure 3. Opaque behavior for block with non atomic


ports.

In addition to data types, signals can also be used to type an


Figure 2. Opaque behavior for block with only atomic atomic flow port or a flow property of a non-atomic flow
ports. port. Normally, a signal is handled by a special kind of
behavioral feature called a “reception”. Here, the chosen
solution is having a Boolean property for each signal to hold
However, as already mentioned, the structural interface of a its presence status and linking the presence status to a
block can make use of more complex features that require corresponding Boolean parameter of the opaque behavior.
some “massaging” to be mapped to parameters of an opaque
behavior. Note that at this stage, we do not consider automatic
derivation of opaque behavior for a block having so-called
Non-atomic flow ports are typed by a flow specification, “service ports”, since each service would better be handled by
which is a special kind of interface made of individual flow its own implementation behavior. In that case, the designer
properties that are grouped together. Moreover, such a flow might want to attach a Scade opaque behavior to the
port can be marked as “conjugated”, which implicitly appropriate individual service behavioral feature instead.
reverses the direction of all its flow properties. This allows
the same flow specification to be reused for two conjugated Automatic Derivation of an Opaque Behavior for a
ports on both sides of an assembly connector. In this case, we
Given Behavioral Feature
consider all flow properties of the port as if they were
individual atomic flow ports with same type and direction (or Creating an opaque behavior that implements a given
opposite direction if the port is conjugated). In order to avoid behavioral feature (typically an operation) is much more
name conflicts if several ports happen to carry homonymous straight forward; it simply amounts to creating an opaque
unrelated flow properties, we additionally prefix the name of behavior with parameters equivalent to those of the
the derived atomic flow port with the name of the port behavioral feature it is meant to implement. The association
carrying the flow property to ensure parameter name between the parameters of the behavioral feature and the
uniqueness. Again, we consider that the individual values corresponding parameters of its opaque behavior is implicit
carried by the non-atomic flow ports are bound to the and automatic.
corresponding parameters of the behavior as if the ports were
somehow connected to the corresponding parameters of the Mapping between a SysML Opaque Behavior and
behavior using delegation connectors with “nested connector a Scade Operator Interface
ends” on the flow ports' side to pick the right individual flow Because an actual Scade operator is conceptually very close
property (“nested connector ends” were introduced by to its SysML opaque behavior surrogate, the mapping is again
fairly straight forward. The main difference, however, is that
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

Scade does not support bidirectional parameters contrary to System-Side “Component Specification Proxy”
SysML behavior parameters. A Scade operator always has a (CSP)
disjointed set of inputs and outputs. Nonetheless, the
Once a SysML application component has been allocated to
following mapping can still be defined.
SCADE, the appropriate opaque behavior, which will serve
as the boundary between the two modeling realms, must be
• Parameters having direction “in” are each mapped to a
prepared.
corresponding input of the Scade operator interface.
• Parameters having direction “out” or “return” are each • First, it can be derived automatically as explained
mapped to a corresponding output of the Scade operator previously, if it does not exist because the system designer
interface. stopped at the level of “functional blocks”.
• Parameters having direction “inout” must each be mapped
to a couple {input, output }. To avoid name conflicts, the • Second, the system designer must anticipate that this
input's name will be prefixed by “input_” and the output opaque behavior might later be updated as a result of a
name will be prefixed by “output_”. Appropriate traceability bottom-up propagation of changes that happened
information is retained to re-synthesize a bidirectional concurrently in the Scade model. To make sure these
parameter in the reverse mapping. modifications can be applied without disruption and can be
The types of the parameters are mapped as follows: tracked judiciously, the opaque behavior should be
• predefined types of SysML are mapped to corresponding considered as an independent “unit” from a storage/
Scade predefined types, if a match exists; configuration management point of view. We will call this
unit the “Component Specification Proxy” or CSP. Bottom-
• enumeration types of SysML are mapped to corresponding
up modifications can then be incorporated carefully using
Scade enumeration types; and
diff/merge facilities in the SysML modeling tool.
• value types (with unit and dimension) are mapped to a
corresponding homonymous alias of the Scade predefined Note that if the opaque behavior changes as a result of a
type “real” (the unit and dimension are however currently bottom-up modification, this might imply structural changes
ignored). to the SysML block to which it is attached (or to the
behavioral feature). Notably, ports may have to be added/
When no Scade type can be inferred from the SysML model, removed/modified along with delegation connectors between
specific translation directives can be added in the tool the ports of the block and the parameters of the opaque
configuration to force a user-defined type mapping. behavior. A specific “wizard” in the SysML tool could be
developed to ease the “reconciliation” process between the
structure and the external behavior. At this stage, such a
TOOL WORKFLOW “reconciliation wizard” is out of scope, and the structural
Based on this mapping, the workflow in SysML-Scade reconciliation must be achieved manually by the system
synchronization can now be detailed. It is summarized Figure designer.
4.
Software-Side “Component Implementation
Proxy” (CIP)
Any Scade operator that implements the behavior of a
component of the SysML application model is associated
with a corresponding SysML opaque behavior. This SysML
opaque behavior can be derived automatically from the Scade
operator interface, and we call it the “Component
Implementation Proxy”, or CIP, on the SCADE side. This
derived SysML opaque behavior should normally not be
modified directly by the component designer using SCADE
Suite.

There are, however, a few circumstances in which the


SCADE Suite user should be aware of it. These are listed
below.

• When the initial version of a Scade node is “bootstrapped”


from an existing SysML opaque behavior coming from the
Figure 4. SysML-Scade synchronization. system application model, the component designer using
SCADE will select the right CSP to be used to produce the
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

initial version of the Scade node, and the tool guarantees that principles in mind: a generic platform that supports graphical
the reverse mapping (i.e. producing the CIP) is idempotent editors. For Papyrus, the generic platform is Eclipse. For
(the CIP after bootstrapping is equivalent to the CSP used for SCADE Suite, it is an internal platform called SCADE Studio
the bootstrap step, but both can evolve concurrently from that is based on the Microsoft MFC framework, which was
then on). developed in the 90s. It provides services very similar to the
Eclipse subset used by Papyrus.
• After the Scade node has been completed, it may actually
appear that the interface of the Scade node has to be modified A first possible solution for integrating Papyrus and SCADE
because of important design choices that have to be Suite IDE would “simply” be to port SCADE Suite to the
propagated bottom-up to the system application model. To Eclipse platform. Though technically possible, this solution is
that end, the component designer can decide to publish a new not the ideal solution for two reasons:
version (through the configuration management tools for
instance). Each time a new version of the Scade node is • the number of Esterel Technologies' tools (SCADE
published, the corresponding CIP should also be made LifeCycle Reporter™, SCADE Suite Model Test
explicit and published alongside the Scade model, so that the Coverage™, SCADE Suite Design Verifier, SCADE Suite
system designer can pick it and use it to produce the next Timing and Stack Verifier, etc) already relying on SCADE
version of the CSP on the other side if he agrees with the Studio would make the porting effort very significant; and
changes.
• the look and feel of the SCADE Suite interface would
• The component designer can also be informed that the CSP change for current users.
corresponding to the Scade node has changed and that
changes need to be propagated top-down. In this case, the Likewise, it does not make sense to update the Papyrus
new version of the CSP is compared with the current version Eclipse project to make it run outside Eclipse.
of the derived CIP, and the change-set describing the SysML
modifications is then translated into a corresponding change- Instead, a hybrid platform has been built that blends the
set to be applied to the Scade model itself. Diff/merge Eclipse and the SCADE Studio platforms. The later remains
facilities in SCADE can then be used to analyze the impact of the main “host” platform, but most Eclipse platform User
the changes on the Scade model and to incorporate them Interface (UI) elements involved in the Eclipse plugins
(implicitly creating a new version of the CIP). making up Papyrus are transparently intercepted and
“reframed” to fit in the SCADE Studio platform at the
In some settings, it might be possible to share the
appropriate place. Therefore, the integration is fine-grained.
configuration management unit representing the opaque
From the Eclipse-side, this special reconfiguration is
behavior for both the CSP and the CIP, hence forcing any
recognized as another UI “perspective”. The following UI
side to take action any time the view of the interface changes
element categories are supported:
on the other side. However, one might prefer a setting in
which the system design team and the software design team • Navigator/explorer views (as SCADE Studio “browser
are loosely coupled and can work concurrently using explicit tabs”)
synchronization milestones (through exchanges of CSP and
CIP) when they see fit. • Ordinary views (as SCADE Studio “output tabs”)
• Property pages and tabbed property pages (as SCADE
SCADE SYSTEM DESIGNER Studio property pages)
This section describes how the SCADE System modeler is • Editor parts of the editor area (as SCADE Studio editors)
built from the pre-existing Papyrus and SCADE Suite tool set
with a short focus on the model API provided by the • Menu contributions and key shortcuts
underlying architecture.
Moreover, the integration is not just “cosmetic”; indeed, both
platforms are model-based platforms and each provides its
TECHNICAL ARCHITECTURE own framework to support model entities:
Papyrus and SCADE Suite were developed independently.
For user adoption this may have several drawbacks: • The Eclipse Modeling Framework (EMF)

• two different tools to install, two different windows on the • The SCADE Studio Modeling Framework
screen, two different look and feel; and
Both frameworks offer generic model-oriented services based
• no sharing of existing or yet-to-be-developed add-ons. on model meta-data. These modeling frameworks are also
combined. The hybrid platform supports EMF-based models
However, despite their different technical origins, both as if they were SCADE Studio-based models. That is, EMF
Papyrus and SCADE Suite were developed with the same meta-data are translated at run-time into the corresponding
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

Figure 1. Technical architecture of SCADE System.

SCADE Studio meta-data, and proper API bridges have been accessible from the SCADE Suite IDE that allows traversal
set-up to call back into EMF code where appropriate. So, of the model. An html wizard derived from the meta-model
existing SCADE Studio plugins that work at the generic guides tcl script developers in the traversal of the models.
meta-data level can also work with EMF-based models The tcl script not only interacts with the model but also with
unchanged. the IDE allowing, for example, locate feature on graphical
views of the model.
Finally, the concepts of “workspaces”, “projects” and “files”
are also unified and synchronized between the two platforms, Due to the SCADE System architecture presented in the
allowing the system projects and software projects to be previous section, the existing SCADE Suite technology has
managed uniformly with configuration management tools. It been extended to the SysML models. This makes the
is even possible for a single project to have both a “system” development of easy to build tools that require both System-
nature (supported by Eclipse/Papyrus plugins) and a “Scade” level and SW-level information possible
nature (supported by native SCADE Suite plugins). Both
sides always have the exact same view of the project's Three actual examples of the API usage are provided below:
resources.
The first example is model documentation generation.
The solution developed is pictured in Figure 1 and a screen SCADE Suite and SCADE System reporters are simply
shot of the resulting IDE is shown in Figure 5. realized with tcl scripts that traverse the respective models
and share the same RTF and html drivers. It is then easy to
This tool architecture provides several benefits: produce documentation that mixes system and SW
• the development of the Papyrus tool can be pursued as part information when required.
of the Eclipse consortium without constraints;
A second usage is for code and configuration file generation
• there is full compatibility ensured between SCADE System from system models specifying, for example, multi-tasks
and Papyrus, as they rely on the same code; systems. Each task represented by a SysML block is
• SCADE System is open to other Eclipse tool extensions, implemented via a SCADE Suite design with code generated
provided that they comply to the supported Eclipse subset, in by the SCADE Suite code generator. The task's connection,
addition to the openness brought by Papyrus for modeling periods, etc. are specified as a SysML model with a specific
extensions; and Real-Time profile such as MARTE [5]. The APIs are used to
• there is one window and look and feel for SW design with generate the wrapping code and RTOS configuration files
SCADE Suite and system architecture design in SysML with allowing for the complete generation of the multitasks
SCADE System. system.

A third usage of the API is to import into SCADE System a


MODELS API legacy model developed previously with a technology that is
Based on the Eclipse Modeling Framework (EMF), Papyrus becoming obsolete. In this case, the API is used to construct a
provides a Java API on the profiled SysML UML model. SCADE System model. One of the nice features of SysML
implementation in a tool like Papyrus, and likewise SCADE
SCADE Suite has its own meta-model; in addition to the System, is the capability to set-up a model independently
classical EMF Java API, the tool provides a tcl API, directly
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

from any graphical diagrams, allowing the user to draw facilitated through both the model's detailed access through
diagrams in a second step for documentation purposes. The APIs and the openness of the platform. Such verification
core of the model is typically built from a database of tools, including those for simulation of both discrete and
“signals” like information-giving datatypes, endpoint blocks, continuous systems, will be developed in future cooperative
periods, etc. Such techniques are still heavily used but suffer projects driven by the joint Esterel Technologies and CEA
from being misaligned with existing standards, without Listerel laboratory.
COTS tool support, etc. Moving to the SysML standard
which is supported by open tools is a natural trend. REFERENCES
Of course, the model API allows automatic verification of 1. “Systems Engineering Handbook, a Guide for System Life
design rules. Integration of SW and System designs within Cycle Processes and Activities”, SE Handbook Working
the same toolset facilitates the development of complex Group, INCOSE, January 2010.
design rules that encompasses System and SW descriptions. 2. “OMG Systems Modeling Language (OMG SysML)”,
OMG, Version 1.2, June 2010
SUMMARY/CONCLUSIONS 3. “DO-178B Software Considerations in Airborne Systems
Esterel Technologies provides a seamless flow from the and Equipment Certification”, RTCA/EUROCAE, 1992
initial requirement analysis phase in SysML down to the SW
4. Papyrus, http://www.eclipse.org/papyrus
code that benefit from certification evidences provided by
SCADE Suite. 5. MARTE, //http://www.omg.org/omgmarte
6. TOPCASED, http://www.topcased.org
The SCADE System preliminary version has already been
used successfully. As part of the INTERESTED ICT FP7 7. Listerel Critical Software Lab, http://www.listerel.org
project, Siemens is using the synchronization between 8. Esterel technologies SCADE products, http://www.esterel-
SysML blocks and SCADE Suite. The architecture of the technologies.com
ZLB (simplified traffic management on secondary lines) in
the context of German railway systems has been modeled in 9. SCADE Language Reference Manual, http://www.esterel-
SysML and SW developed with SCADE Suite. Siemens technologies.com
reported that, in comparison with their previous process 10. “The Synchronous Dataflow Programming Language
based on standard C++ development, this methodology LUSTRE”, Halbwachs, N., Caspi, P., Raymond, P., Pilaud,
supported by tools allowed for the: D.. Proceeding of the IEEE, September 1991.
• increase in the precision of the architecture description and 11. “A Conservative Extension of Synchronous Dataflow
components reuse; with State Machines”, Colaço, J.L., Pagano, B., Pouzet, M..
• increase in overall maintainability of the product due to a EMSOFT'05
better level of abstraction; 12. “Bridging UML and Safety-Critical Software
Development Environments”, Le Guennec, Alain, Dion,
• the time required for the integration phase was significantly
Bernard. ERTS 2006
reduced; and
13. “SCADE 6: A Model Based Solution For Safety Critical
• the tool provides increased flexibility allowing for quicker Software Development”, Dormoy, François-Xavier. ERTS
completion of changes. 2008

Experimentation on system modeling for avionics equipment


for helicopters is in progress. The objective is to compare the CONTACT INFORMATION
current process based on a custom database system with the Thierry Le Sergent
SysML capabilities to specify such systems. The advantages Esterel Technologies
of a graphical description that includes all system design thierry.lesergent@esterel-technologies.com
details kept in dedicated stereotypes have been demonstrated.
The model is now ready for clean report generation, which Alain Le Guennec
provides a much better shared understanding by all teams. In Esterel Technologies
this system, the SW part was previously developed with alain.leguennec@esterel-technologies.com
SCADE Suite and certified to DO-178B by EASA at level A.
François Terrier
The door is now open for advanced verification that CEA, LIST, Laboratoire d'Ingénierie dirigée par les modèles
encompasses system and software description with tools that pour les Systèmes Embarqués
can plug into the SCADE System architecture. This is francois.terrier@cea.fr
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

Sébastien Gérard
CEA, LIST, Laboratoire d'Ingénierie dirigée par les modèles
pour les Systèmes Embarqués
sebastien.gerard@cea.fr

Yann Tanguy
CEA, LIST, Laboratoire d'Ingénierie dirigée par les modèles
pour les Systèmes Embarqués
yann.tanguy@cea.fr

ACKNOWLEDGMENTS
This work has been partially founded by the FP7 ICT-2007
INTERESTED project and by the FUI 5th call LAMBDA
project.
Downloaded from SAE International by University of Wisconsin - Madison , Monday, September 10, 2018

APPENDIX

Figure 5. SysML IBD and BDD, and SCADE Suite design in the same framework.

The Engineering Meetings Board has approved this paper for publication. It has Positions and opinions advanced in this paper are those of the author(s) and not
successfully completed SAE's peer review process under the supervision of the session necessarily those of SAE. The author is solely responsible for the content of the paper.
organizer. This process requires a minimum of three (3) reviews by industry experts. SAE Customer Service:
Tel: 877-606-7323 (inside USA and Canada)
All rights reserved. No part of this publication may be reproduced, stored in a
Tel: 724-776-4970 (outside USA)
retrieval system, or transmitted, in any form or by any means, electronic, mechanical, Fax: 724-776-0790
photocopying, recording, or otherwise, without the prior written permission of SAE. Email: CustomerService@sae.org
ISSN 0148-7191 SAE Web Address: http://www.sae.org
Printed in USA

You might also like