Smart engineering

Engineering

To remain competitive at a global level with our embedded products, continuous performance improvement and cost reduction is required, in combination with increased quality, security and safety. In parallel, the organisation of the embedded systems value chain is getting more and more complex, with distributed teams spread all over the world (multiplication of middle parties, off-shoring...). The need for efficient and non ambiguous ways to exchange specifications between all the stakeholders is getting crucial. It is also necessary to have sound system engineering processes, to be able to master the system and software development (metrics, valid forecast,...) To meet tough requirements in terms of cost and delay, the software architecture of embedded systems has to be flexible, dynamically adaptive to various environments (cloud, low energy consumption, network optimisation,...). It should also be able to support the reuse of existing components, which raises the need for proper Intellectual Properties management, in particular when open source software with various licenses are concerned. In most application domains like for example transportation (aeronautics, automotive, railway, subway, marine), an important issue at stake is the very long lifecycle of embedded systems, which of course impact the life cycle of the associated engineering tools chains.   To face all those challenges,  system/software engineering processes, methods and tools have to deeply evolve.

Traditional development processes of embedded systems and software based on the « V » cycle are characterized by a sequential succession of activities of specification, design, implementation, integration, verification, validation, and possibly certification, and require a great number of iterations, often resulting in extra costs and delays for our products. The model driven engineering approach allows to get rid of these drifts, first by expressing in a non ambiguous way the system and software specification thanks to the use of formalisms (UML, SysML,...) and by providing capabilities to execute, simulate and verify the models. These models also give a precise representation of Intellectual Property, they can be shared between the different actors of the development chain through common engineering platforms thanks to the use of common modelling languages and tools interoperability standards. Models shall support the description of both static and behavioural characteristics of the system, both nominal and degraded use cases. Models allow the automation of implementation, verification, traceability and ease the conformance process to safety/security standards. Just like the 3D modelling has allowed important productivity and quality gains for the physical design, extensive use of system/software modelling will have the same profitable consequences for the system/software engineering.

To support the necessary industrialisation of the model driven engineering processes, all the components of the engineering platforms will have to comply to robustness constraints, in particular scalability, and to support a collaborative use in an extended enterprise frame. Of course, the deployment of such formal methods should not be done to the detriment of the necessary agility of the processes.

A full model driven engineering approach requires a clear definition of the system/hardware/software transitions. An integrated system/software modelling will allow performing architecture analyses and trade-offs, taking into account different viewpoints (safety, installation,...) and various transversal needs such as estimation of communication volumes, weight, power consumption... and hybrid simulation (physical environment). It is also necessary to address the issues at stake at the implementation level, in particular performances and hardware/software interactions. This implies the early availability of virtual execution platforms, with the adequate representativeness level, in order to be able to get credit from the verification performed on those virtual platforms and thus alleviate the verification effort on the final product. The combination of formal verification on models (through static analysis) and dynamic analysis on virtual platforms should lead to brand new V&V strategy. This is indeed a decisive factor of cost and time reduction in the complete development cycle.

Moreover, the hardware of those execution platforms is quickly evolving from mono-core to multi/many core. The problematic of High Performance Computing and Embedded systems are beginning to merge, and tool suites are needed to ease the adaptation of existing or new applications, in order to take the full benefit of these new environments. Overall, the engineering platforms have to address the deployment phase and support the developer in the distribution of applications on various infrastructures (embedded, cloud,...).

An important trend in the embedded systems domain is to support the product line concept, which has to be addressed efficiently in the engineering environments, through the variability management in the design models, in order to favour the reuse of system/software components. This has to be coupled with an incremental certification approach, when those reusable components are integrated into certified systems.

Another important trend is the increase of constraints combining safety (the system always behaves as it is supposed to) and security (authentication, data protection, confidentiality and quality of service,...). The engineering platforms have to integrate a complete set of performance analysis, compiling, testing... qualified tools in order to guarantee those requirements, whatever the applicable certification standard (DO-178B in aeronautics, IEC 61508 for industrial processes, EN 50128 for railway, IEC 60880 for nuclear plants, ISO 26262 for automotive, EAL for security, etc.…). They should assist also the developer in the definition of protection and containment mechanisms, to allow the safe and secure cohabitation of mixed-criticality applications on the same execution platform.

Engineering tools and platforms are crucial to meet the very challenging business objectives of embedded systems. Various business models will coexist to sustain the tools and services market. Together with the proprietary model, the open source model is a promising way of disseminating and exploiting results, both from the users and providers point of view, given that the ecosystem is sufficiently structured and sustained[i]. 

 

Sources & background information

Sources:

  • REVISING EUROPE’S ICT STRATEGY, Report from the Information Society Technologies Advisory Group (ISTAG), Final version - February 2009
  • Orientations for Work programme 2011-2013, Report from the Information Society Technologies, Advisory Group (ISTAG), Final version - November 2009
  • ICT 2020 - Research for Innovations, Federal Ministry of Education and Research Germany (BMBF)
  • National Roadmap Embedded Systems – Safetrans DE
  • ICT2030.nl - ICT-agenda for the future of the Netherlands, ICTRegie
  • ITEA and ARTEMIS: two instruments for industry driven innovation based on ICT
  • Horizon 2020 - The Framework Programme for Research and Innovation (2014-2020)
  • Rapport Potier -  “Generic Bricks of Embedded Software” France 2010 – updated in 2013

Background information:

  • ITEA 2 Roadmap, 3rd edition, February 2009
  • ARTEMIS SRA, 2011
  • White paper on the Future Internet PPP Definition, The European Future Internet Initiative, January 2010
  • White books/papers from CATRENE, CELTIC, EURIPIDES, EUROGIA


[i] Refer to the Polarsys initiative (Eclipse Industrial working Group) for the very long term support of open source engineering tools for critical embedded systems

 

 

Authors: Marie-Line Valentin

Projects related to the challenge Smart engineering

16018

COMPACT

16044

DevOpsKit

16008

HybridMDE

16037

PAPUD

16054

QUANTEX

15016

EMPHYSIS

15015

ENTOC

15025

Flex4Apps

15010

REVaMP²

14004

ACOSAR

14009

MEASURE

14018

OPENCPS

14035

Reflexion

13024

COLOC

13040

IDEaliSM

13028

ModelWriter

12038

FIONA

12002

MACH

12007

PRO-HEAL

12018

SCALARE

11005

Empathic

11011

MERgE

11004

MODRIO

11013

PROMES

11020

SITAC

10037

ATAC

10020

CREATE

10021

MANY

10006

SEMOSA

09013

AMALTHEA

09018

DIAMONDS

09011

H4H

09034

ISN

09033

TIMMO-2-USE

08019

OPEES

08021

OPENPROD

08026

UsiXML

08020

VERDE

08009

ViCoMo

07010

Evolve

07013

GEODES

07003

ITEI

07024

PRISMA

07021

SEMbySEM

06043

3D-Testbench

06014

D-MINT

06042

ES_PASS

06020

EUROSYSLIB

06022

FLEXI

06011

LINDO

06035

MoSiS

06015

ParMA

06005

TIMMO