mades seminar @ laboratory of model-driven engineering applied to embedded systems - cea list...

49
MADES PROJECTFP7 248864 UML, SysML and MARTE in Use, a High Level Methodology for Real-time and Embedded Systems Alessandra Bagnato 24th September 2012, Laboratory of Model-Driven Engineering Applied to Embedded Systems - CEA LIST Institute Seminar

Upload: alessandra-bagnato

Post on 20-Jan-2015

422 views

Category:

Technology


1 download

DESCRIPTION

------- Lieu: salle 1073 (Nano-innov – Bat. 862) Date: 24 Septembre 2012 Heure: 14:00 – 15:00 Orateur: Alessandra Bagnato Titre: UML, SysML and MARTE in Use, a High Level Methodology for Real-time and Embedded Systems ------- Résumé/Abstract Rapid evolution of real-time and embedded systems (RTES) is continuing at an increasing rate, and new methodologies and design tools are needed to reduce design complexity while decreasing development costs and integrating aspects such as verification and validation. Model-Driven Engineering offers an interesting solution to the above mentioned challenges and is being widely used in various industrial and academic research projects. The proposed seminar aims at presenting the development context and needs that have fostered the creation of a methodology and a set of UML, SysML and MARTE model-based diagrams within the research and development work carried out EU funded MADES project [http://www.mades-project.org/] which aims to develop novel model-driven techniques to improve existing practices in development of RTES for avionics and surveillance embedded systems industries. The seminar aims at highlighting the current practice and needs in real Avionics development case studies and in particular takes advantage of the vision of an avionics system integrator, highlighting the perspective of the different needs of its different customers within the Avionics industry that have been taken as a basis to build the methodology and the set of diagrams. The MADES Project is expected to deliver important improvements in each phase of embedded systems development lifecycle by providing new tools and technologies that support design, validation, simulation, and code generation, while providing better support for component reuse. MADES technologies are expected to reduce development costs of complex embedded systems for the Aerospace, Defence and other key European industries, while enabling a next generation of highly complex embedded systems to be developed that are more reliable, yet costing less to maintain and evolve as industry needs change and hardware capabilities increase.

TRANSCRIPT

Page 1: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES PROJECT– FP7 248864

UML, SysML and MARTE in Use, a

High Level Methodology for Real-time

and Embedded Systems

Alessandra Bagnato

24th September 2012,

Laboratory of Model-Driven Engineering

Applied to Embedded Systems -

CEA LIST Institute Seminar

Page 2: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Presentation Outline

• Introduction

• MADES Overview

– Project Consortium, Motivations, SysML, MARTE, Approach and

Challenges

• MADES Methodology

– Through a Car Collision Avoidance System (CCAS) example

• Refactoring of architecture through code generator module

example

• Conclusions

MADES PROJECT– FP7 248864

Page 3: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Project Consortium

• Project type: Collaborative

Project (STREP)

• Duration: 30 months

• Project start: February 1, 2010

• Project end: July 31, 2012

• Objective: Embedded Systems

Design

• 6 partners

MADES PROJECT– FP7 248864

Page 4: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES PROJECT– FP7 248864

Partner Roles

User needs, models and Use

Cases

Cassidian [EADS] (DE)

TXT E Solutions (IT)

Standardization and

dissemination

Open Group (UK)

Technology/IT industry

Softeam (FR)

TXT e-solutions (IT)

Research/development

Politecnico di Milano(IT)

University of York (UK)

Page 5: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Motivations

• Need of effective design

methodologies for Real-

Time and Embedded

Systems (RTES)

• High abstraction level

based approaches are

promising: reducing time to

market and system

complexity

– Model Driven Engineering,

UML

MADES PROJECT– FP7 248864

Page 6: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

SysML

• For Systems Engineering

Aspects such as Non Functional

properties, Time concepts are

not present for RTES

specifications

Allocation aspects

• Widely adapted in the

industry with supporting tools

MADES PROJECT– FP7 248864

Page 7: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MARTE

• For RTES design and

specifications

– Co-Design,

– Non Functional properties,

– Time aspects,

– System analysis possible

• Specification are complex to use

• Currently lacks sufficient tool

support and complete

methodologies

MADES PROJECT– FP7 248864

Page 8: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES PROJECT– FP7 248864

The Vision

“MADES aims to develop a holistic, model-driven approach to

improve the current practice in the development of embedded

systems. The proposed approach covers all phases, from design to

code generation and deployment”

Page 9: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Approach

MADES PROJECT– FP7 248864

Design activities exploit a dedicated language developed as an extension to

OMG's MARTE and SysML profiles

Validation include the verification of key properties on designed artifacts, closed-

loop simulation

Code generation addresses both hardware description languages and conventional

programming languages

Page 10: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES PROJECT– FP7 248864

MADES Case Studies

Page 11: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

End User Requirements

• System Specification

– Requirements modeling

– Functional system design

• System Co-Design

– Software design

– Hardware design

– Allocation

– Timing and Scheduling

– Behavior

• Verification, Simulation, Code Generation and Synthesis

MADES PROJECT– FP7 248864

Page 12: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Challenges for MADES

• MARTE : designed to enable flexibility

– Drawback: Large number of concepts (700+ pages of specs)

– Same concept can be applied to different UML elements (classes,

instances, connectors, ports, attributes)

– Same design may be modeled in different ways using MARTE

concepts from different MARTE packages and different UML

elements

– Current academic/industrial MARTE modeling tools are too generic :

provide all concepts, no usage tips

– Lack of guidelines and examples

• SysML and MARTE combination: poorly expressed

– Not effective dedicated methodologies or tools

– Need of lowering entry barriers

MADES PROJECT– FP7 248864

Page 13: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Challenges for MADES

MADES PROJECT– FP7 248864

Page 14: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Methodology

MADES PROJECT– FP7 248864

• Effective SysML/MARTE subset

SysML for functional

specifications

MARTE for non functional and

co-design specifications

UML behavioral specifications

supported

Integration of Verification and

Validation (V&V) + code

generation concepts

• Dedicated diagrams

• Influence on future revisions of

SysML and MARTE standards

SysML

MARTE

Page 15: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Implementation Approach

• Generic MADES

methodology, guidelines

and examples to guide

system designers:

Modeling, Verification

Code generation, Synthesis

• Reducing ambiguities

• Reducing design time and

costs

• Reinforce formality for

Validation and Verification

MADES PROJECT– FP7 248864

Page 16: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Diagrams

MADES PROJECT– FP7 248864

Requirements diagram

SysML based requirements for initial system functional

requirements

UML behavioral diagrams

Use case, Activity, Sequence, State and Interaction

overview for initial system behavior

Functional/Internal Functional Specification diagrams

Description of system functionality by means of SysML

block and internal block descriptions

Page 17: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Diagrams

MADES PROJECT– FP7 248864

Refined Functional Specification diagram

Refinement of SysML concepts into MARTE aspects,

addition of non functional properties

Hardware Specification diagram

Description of generic hardware : nodes, memories,

communication channels, clocks etc

Software Specification diagram

Description of application tasks and software aspects

running on hardware platform

Page 18: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Diagrams

MADES PROJECT– FP7 248864

Detailed Hardware Specification diagram

Refinement of hardware concepts with details closer to

execution platform details

Detailed Software Specification diagram

Description of underlying OS (if any), refinement of

software aspects

Allocation Specification diagram

Mapping of software and hardware aspects of the

system

Page 19: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Diagrams

Clock Specification diagram

Definition of system clock types and clocks, clock and

timing constraints for hardware/software aspects

• Dedicated commands in each

MADES diagram to speed up the

design process

– Implemented in Modelio Open

Source CASE tool

– Valuable input from partners to

improve design experience

– Increased efficiency, decrease in

design time

MADES PROJECT– FP7 248864

Page 20: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Modelio (Screenshot)

MADES PROJECT– FP7 248864

Diagram Explorer

MADES tab

Dedicated commands in Diagram Palette

Page 21: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Car Collision Avoidance System

• A system able to detect and prevent collisions

– Either using a radar tracking module

– Or an image processing module

MADES PROJECT– FP7 248864

Page 22: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Requirements specification

GOALS

• Analyze high level requirements (or customer requirements)

• Produce low level requirements

BY MEANS

• SysML requirement diagrams

• SysML requirement objects and their relation

Page 23: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Extract of CCAS Specifications

System Requirements

MADES PROJECT– FP7 248864

Page 24: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Functional Spec and Refined functional

specification

GOALS

• Identify SysML blocks and their relations

• Identify what are the «active» functionality and resources

• Refine blocks to MARTE active and passive units

BY MEANS

• SysML blocks

• MARTE’s High level Application Modeling package is used to differentiate between active and passive system components.

• MARTE ppUnit and rtUnit stereotypes

Page 25: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Extract of CCAS Specifications

Functional Specifications

Refined

Functional

Specifications

MADES PROJECT– FP7 248864

Mapping

Page 26: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Hardware Spec and Detailed HW Spec

GOALS

• Hardware Specification to specify generic hardware concepts: memories, processing nodes, communication channels, etc

• Detailed Hardware Specification to refine the abstract hardware concepts (e.g. processing node -> PowerPC (adding information about frequency, number of cores, etc))

BY MEANS

• By means of MADES Hardware diagram and MARTE’s Generic Resource Modeling concepts

• By means of MADES Detailed Hardware diagram and MARTE’s Hardware Resource Modeling package

Page 27: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Extract of CCAS Specifications

MADES PROJECT– FP7 248864

Hardware

Specification

Page 28: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Extract of CCAS Specifications

MADES PROJECT– FP7 248864

Detailed

Hardware

Specification

Page 29: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Software Spec and Detailed Software Spec

GOALS

• Expressing execution platform software aspects such as schedulers and tasks; as well as their attributes and policies (e.g. priorities, etc.).

BY MEANS

• The MADES Software Specification Diagram and MARTE’s Generic Resource Modeling package

• MADES Detailed Software Specification Diagram and MARTE’s Software Resource Modeling concepts

Page 30: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Extract of CCAS Specifications

MADES PROJECT– FP7 248864

Software

Specifications

Page 31: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Extract of CCAS Specifications

MADES PROJECT– FP7 248864

Detailed

Software

Specifications

Page 32: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Allocation specification

GOALS

• Instantiating software and hardware defining number of instances

• Mapping (software to hardware) or refining (SysML blocks to MARTE RtUnit/Ppunit concepts)

• Enabling to create complete “configurations” of the system

BY MEANS

• MADES Allocation diagram

Page 33: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Extract of CCAS Specifications

MADES PROJECT– FP7 248864

Allocation

Specification

Page 34: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES Integrated Tool Set: Architecture

MADES PROJECT– FP7 248864

Page 35: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES: Verification and Validation

MADES PROJECT– FP7 248864

Page 36: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES: Verification and Validation

MADES PROJECT– FP7 248864

Temporal Logic: Example of temporal properties

Page 37: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES: Verification and Validation

MADES PROJECT– FP7 248864

Verification

Results

Page 38: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES: CCAS Hardware Generation

• Automatic generation of implementation hardware from

MADES design models

MADES PROJECT– FP7 248864

XMI

MHS

Page 39: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES: Synthesis on Execution Platform

Synthesis Place & Route

Programming

Page 40: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES: CCAS Software Generation

• Through Anvilj and MADES Design models XMI,

MADES generates platform-specific software from

architecturally-neutral software specifications.

• Programmers

– write Java code for a 'standard' desktop computer

(architectural neutral code ) without having to consider the

true target hardware

– 'deploy' their code by writing a simple text file that places

some of the threads and object instances onto the

processors of the target hardware.

MADES PROJECT– FP7 248864

Page 41: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

MADES: CCAS Software Generation

• Integrated into the Eclipse development environment

• AnvilJ translate the to java output code, according to the provided

mappings, to work on the target hardware

https://rtslab.wikispaces.com/AnvilJ

Page 42: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Case Study - Refactoring of architecture

MADES PROJECT– FP7 248864

Radar Control Panel Mock-up - 5 Java Tasks

Objective: a previously single-core program to be distributed

automatically on a two processor architecture.

Page 43: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Case Study - Single core platform

MADES PROJECT– FP7 248864

Page 44: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Case Study - Detailed Software Spec

MADES PROJECT– FP7 248864

Page 45: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Case Study – Two processor architecture

MADES PROJECT– FP7 248864

Page 46: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Case Study – new allocation diagram

MADES PROJECT– FP7 248864

Allocation diagram was modified to allocate

the tasks in a different way

Page 47: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

AnvilJ - Refactoring of architecture

• AnvilJ performed the refactoring and the code for

the new architecture was automatically generated.

• The result was to move the panel data task to the

second processor. The panel data GUI was run on

the second processor and was still communicating

with changing code.

• For more details on AnvilJ please visit

https://rtslab.wikispaces.com/AnvilJ

MADES PROJECT– FP7 248864

Page 48: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Conclusion

• MADES : SysML/MARTE methodology

– Combined usage of the two complex profiles

– High level Modeling, Verification & Validation, Code generation and

eventual platform implementation on FPGA

• MADES diagrams and guidelines available

• 10 dedicated diagrams + 5 UML behavioral diagrams

– Available as open source at http://www.modelio.org/

• Rapid prototyping of RTES

• Possible positive influences on future versions of OMG

specifications

MADES PROJECT– FP7 248864

Page 49: MADES Seminar @ Laboratory of Model-Driven Engineering Applied to Embedded Systems -   CEA LIST Institute

Thanks!

Alessandra Bagnato

TXT e-solutions – Corporate Research Division

[email protected]

[email protected]

MADES Project Web Site:

http://www.mades-project.org/

The research leading to these results has received funding from the European

Community's Seventh Framework Programme (FP7/2007-2013) under

grant agreement n° 248864.

MADES PROJECT– FP7 248864