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 [email protected] Senior Product Manager, Zeligsoft © 2014 Zeligsoft Eclise Day Montréal 2014 23
© Copyright 2024