This talk gives an overview of the main Sirius features and shows how it can be used to create custom tooling for your own business or engineering domain.
It takes the form of a customer-consultant role-playing game with a live demo of Sirius illustrating:
How to use Sirius to create custom graphical modelers (diagram, table and tree editors) based on a given domain model (Ecore)
The numerous customization mechanisms provided by Sirius to implement specific needs (conditional styles, filters, layers)
The resulting Sirius modeling environment, ready to be delivered to end-users
Sirius Role Playing Game - Build diagram, table and tree editors in 20 minutes
1. Sirius Role Playing Game
Build diagram, table
and tree editors in 20 minutes
Stéphane Bonnet (Thales, Sirius co-lead)
Cédric Brun (Obeo, Sirius commiter)
http://www.eclipse.org/sirius
3. Sirius in a nutshell
● A system to quickly define custom multi-
view worbenches
– Based on graphical editors/modelers
● Based on Eclipse Modeling Technologies
– No need to be an expert for most uses
● New Eclipse Project
– But already proven technology
4. What benefits?
● For developers: reduce cost & complexity
– No need to be a GMF expert
– Dynamic & iterative (live) development
● For end-users
– Tools adapted to their needs and workflows
– Improved experience (compared to raw GMF)
5. Two parts
for two kinds of users
Specification
Environment
(Specifier/Developer)
Runtime Environment
(End-user)
6. The Specification Environment
● Define custom multi-view
workbenches
– Diagrams, Trees, Tables
● With little technical
knowledge
● Get a working modeler fast
– instant feedback
● Highly customizable
– native tooling
– Java or extension points
7. The Runtime
● Executes the
specification
● No code generation
● Environment adapted
to user needs
● Viewpoint-based
● Simplified workflow
● Modeling Project Row 1 Row 2 Row 3 Row 4
0
2
4
6
8
10
12
Column 1
Column 2
Column 3
9. Live Demo
Stéphane will play
the Customer
Expresses the needs
No technical
knowledge
Cédric will play the
Specifier
Implements the
modelers
● Eclipse 4.4M6 (Luna)
● Sirius 1.0M6
12. What one can get…
…in more than 20 minutes
Thales System Engineering
Workbench
13. Sirius in Thales (1/2)
●
A Sirius-based modeling
ecosystem
– From ad-hoc DSLs to
fully industrial products
●
Scalable
– 400+ EClasses,
– 30+ kinds of diagrams
– 1,5+M EOjects (and
counting)
●
Widely deployed
– Dozens of Sirius-
specifiers
– Hundreds of daily-users
of Sirius runtime
14. Sirius in Thales (2/2)
Capella enrichment with domain-specific viewpoints
●
Extensions of the core product
– New representations,
layers, style
customizations
●
Simplistic
– Annotation-based
coloring of elements
●
Advanced
– Performance, Safety,
IVVQ, Product Line,
Computation, Etc.
15. Other Sirius references
● Embedded in the Obeo Designer and Obeo SmartEA
(proprietary) products for 4 years
– many use cases & customers
● At Eclipse.org : EcoreTools 2.0 (Luna)
● Open Source modelers on Github and the
MarketPlace
– Many fields (UML, Risk Analysis, SysML, TOGAF, Entity...)
– 2800+ installs in February 2014
● And now... you!
– Public release v0.9 made available in November 2013
– Version v1.0 planned for Eclipse 4.4 (Luna)
16. Themes for 2014
● Streamline and separate API levels (Core, RCP,
IDE / Diagram,Table...)
● Feedback and error messages for Specifier
● Improve the onboarding experience
● Performance and scalability: aiming at lazyness
● Diagram features: user experience,
compartments
● Support and maintenance
19. Three things to remember
about Sirius
1. A full-featured environment to create custom modelers
● Easy to use
● Fast, iterative (live) development
2. Mature, many deployements
● Inside Thales and elsewhere via Obeo Designer
3. Official Eclipse project
● around 8 full-time commiters
● Very active support on the Forum
● v0.9 released, v1.0 will be in Luna
20. Thank You!
● Project Web Site
– http://www.eclipse.org/sirius
● How to get started
– http://wiki.eclipse.org/Sirius/Getting_Started
● Forum
– http://www.eclipse.org/forums/eclipse.sirius
21. Sirius Related Content
On Wednesday :
EcoreTools 2.0 - the Luna Revival: 10:30, Grand Peninsula G
Let's get Sirius (BOF) : 18:00, Grand Peninsula C
On Thursday :
KitAlpha and Sirius (Poster session):10:00->13:00, Exhibit Area
Arcadia / Melody (aka Capella): 11:45 , Grand Peninsula B
Use Cases of Polarsys Technologies : 11:00, Grand Peninsula B
An Arduino Programming Platform For Kids : 14:15, Grand Peninsula A
The research leading to these results has received funding from the European Union’s
Seventh Framework Program (FP7/2007-2013) for CRYSTAL – Critical System Engineering
Acceleration Joint Undertaking under grant agreement № 332830 and from specific national
programs and/or funding authorities.