Papyrus for Real Time Embedded

Transcription

Papyrus for Real Time Embedded
Improving embedded software development productivity
Papyrus for Embedded Systems
Charles Rivet
Senior Product Manager
Zeligsoft
2014.06.18
© 2014 Zeligsoft
Improving embedded software development productivity
Where does Papyrus come from?
Developed as an open source project,
primarily by the LISE team of the
French Commissariat à l’Énergie
Atomique (CEA) and Atos
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
2
Improving embedded software development productivity
What is Papyrus?
1. Eclipse-based visual editor for UML
– Complete UML 2.5 specification support
– SysML 1.1, MARTE 1.1, RobotML, UML-RT
2. Tool for defining UML-based DSLs
– UML Profiles
– Strong focus on customizability
– Open, robust, highly scalable
3. Experimental platform for researchers
– Proof of concept prototypes
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
3
Improving embedded software development productivity
Unified Modeling Language
Source: Wikipedia
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
4
Improving embedded software development productivity
Papyrus is a sub-project of MDT
Model Development Tools
Papyrus
Sphinx
Graphical Modeling Framework
VF
MT
OCL
GEF
UML2
Compare
IMM
Search
Index
XSD
EMF
Platform
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
5
Improving embedded software development productivity
Why Papyrus?
• Software industry shift continuing:
– Build ? ⟼ Buy ? ⟼ Use
– Proprietary ? ⟼ Open
• Opportunity to organize and provide industrial
strength alternative to proprietary tools
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
6
Improving embedded software development productivity
What’s coming up
• Papyrus is coming out of incubation!
Available with Luna (June 25th)
Unless it’s late…
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
7
Improving embedded software development productivity
Embedded vs. other systems
• Single purpose
– Specialized Hardware and software
• Limitations
– Memory, processor, interfaces
• Timeliness of execution
– Cost of missing deadlines
• Resiliency
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
8
Improving embedded software development productivity
Papyrus profiles of interest
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
9
Improving embedded software development productivity
Papyrus profiles of interest
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
10
Improving embedded software development productivity
What is MARTE?
• Industry-standard language
• DSL for specifying and analyzing real-time and
embedded systems
• Refines UML concepts for real-time domain
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
11
Improving embedded software development productivity
Why MARTE?
• Provides accurate and precise modeling of
– Qualitative and quantitative, functional and nonfunctional characteristics of real-time software
applications
– Time and temporal relationships
– Different kinds of hardware and software
resources and allocations
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
12
Improving embedded software development productivity
MARTE
• MARTE spec
– ProMARTE consortium, of which
the CEA is a member
• Papyrus was used for the
examples in the book
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
13
Improving embedded software development productivity
Papyrus profiles of interest
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
14
Improving embedded software development productivity
UML-RT history
RTE
eTrice
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
15
Improving embedded software development productivity
Why UML-RT?
• UML-based DSML
Abstraction
Automation
• Constrained UML
– Easier to learn and use
• Code generation
• Runtime layer
• Less concepts
– “The model is the code”
– Adaptability
• Platform
• Language
Proven approach
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
16
Improving embedded software development productivity
What is UML-RT?
• Structured Classifiers
• ROOM Actors and RoseRT/RSARTE capsules
• Protocols
• “collaboration of pairs of provided/required interfaces”
• “standard” classes used for carried data
• Ports
• Typed with (conjugated) protocols
• Hierarchical state machines
• Part of the structured classifiers
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
17
Improving embedded software development productivity
Coming soon to a Papyrus near you!
• UML-RT
– “ROOM on UML”
– Runtime service layer
– Transformation (code generation)
All Open Source
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
18
Improving embedded software development productivity
Papyrus profiles of interest
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
19
Improving embedded software development productivity
SysML
• Not directly related to Real Time Embedded
– Often part of larger systems
• Used by systems engineers
– Drive requirements and architecture into devices
that have embedded software
• Continuity across disciplines
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
20
Improving embedded software development productivity
© 2014 Zeligsoft
Eclise Day Montréal 2014
21
Improving embedded software development productivity
Who’s using Papyrus?
What else is in Papyrus?
• Go the to CEA booth (#6) and find out more!
© 2014 Zeligsoft
2014-06-18
EcliseCon France 2014
22
Improving embedded software development productivity
Charles Rivet
charles@zeligsoft.com
Senior Product Manager, Zeligsoft
© 2014 Zeligsoft
Eclise Day Montréal 2014
23