6. “Sirius is an Eclipse project which aims at providing specific multi-view modeling workbenches
through diagram, table or tree editors based on EMF.
Users can easily define their own modeling workbench, even with very little technical knowledge of
Eclipse, while still being able to deeply customize it when needed.”
7. MISSION STATEMENT
“Lower the barrier of entry to create and
deploy state of the art tools, for any domain
language.”
8. Sirius 0.9
Sirius 1.0
Sirius 2.0
☑ renamed and on Eclipse.org
☑ infrastructure and team 100% operational
☑ up to speed
13. UPGRADING
The runtime handles .odesign and .aird models for you
Easy process :
1. Check release notes for user-visible changes.
2. Change update-site, versions
3. In case of impacting API change, re-check the
for instructions
release
notes
(EcoreTools and UML Designer had no impact whatsoever)
17. SIRIUS USE CASE ?
Many variables for a given expression
nullvalues are common
Navigation with many steps aggregating data
Interactive use : context is constantly changing
Complex or custom logic : Java Services
Predictable ordering and performance overhead .
18. LANGUAGE CHARACTERISTICS
You know OCL ? Then you know AQL
No implicit variables
aql:nameis invalid and become aql:self.name
aql:self.eContents()‐>select(name.startsWith('A'))is invalid and become
aql:self.eContents()‐>select(i | i.name.startsWith('A')
self.referenceWithNoValue.someOtherAttributehas no evaluation error, and returns
"Nothing"
Classic operations : filter, collect
Convenient operations : eInverse(), eResource()..
22. in preference to Acceleo 3 or OCL
simpler for querying EMF models
more concise and very easy to learn
improved code completion
improved syntax errors detection
30. POSITIONING THINGS
Snap To Shape enabled by default for new diagrams
Snape To All Shapes mode (F4)
Snap To Grid now used when an element is created
Resize no longer change ports or children's location
Actions to distribute shapes
Action to reset the diagram origin
49. CONSTANT IMPROVEMENTS
Time (sec) Heap (Mb) Time Variation Heap Variation
Open Huge Project 10 276 -91,00% -20,00%
Open Big Class Diagram 5 24 -75,00% +20,00%
Refresh Big Class Diagram 0,731 0 -40,00% 0,00%
Save After Diagram Change 26 0 -23,00% 0,00%
Close Diagram 0,1 -6 0,00% 0,00%
Close Project 55 294 0,00% 0,00%
50. BIG OPERATIONS
Models Footprint, ~20% improvement
use of MinimalEObject
Colors transformed from full-blown EObject to
Immutable DataType
detection and correction of leaks
reduce usage of Adapters
Save Strategy
Improvements in the Image cache...
51. LATENCY
Diagram Refresh
UI Runtime
Model Element Selection Dialogs for big models
Right-click latency in the explorer
Better integration with EEF (property views)
Tables
SWT Refreshes now done as a batch
Table model refresh improvements
52. SIRIUS NEEDS YOU !
Performances depends on your .odesign specification
Focus on queries wich would depend on the number of
elements in the whole model
Measure*, Improve, Repeat
*: Sirius embedded profiler is one click away
55. THINGS WE ♡ IN SIRIUS ...
Define your properties in the .odesign file
Dynamic, no code generation involved
Flexible even for complex Ecore models
... APPLIED FOR THE PROPERTY VIEWS
58. ALREADY IN SIRIUS 4.0
Possibility to contribute SVG shapes : stencils pack
API to control the "tab-bar"
Improvement on edge reconnection feedback
59. OTHER POTENTIAL THEMES FOR ECLIPSE NEON
Bugfixes, Scalability, Performance, Headless
Better SVG rendering
Better integration with EMF Edit
Prefered side for ports
Improve the i18n Story
Your priority
60. LONG TERM, ONE STEP AT A TIME
Push limits
Scalability, Improvements in underlying technologies
Sirius Everywhere
Embeddable, reduced dependencies
...
63. ...
CloudScale-Project/ArchitecturalTemplates
The Architectural Template method is an efficient
design-time engineering method for analyzing
scalability, elasticity, and efficiency properties of SaaS
applications.
steindani/sihuhu
Basic DSL for a model railway, created at the FTSRG,
BUTE
Boereck/odesign-designer
Designer to graphicaly design .odesign files.
...
64. WANT TO SHARE WHAT YOU DID ?
GET YOUR ENTRY IN THE GALLERY THROUGH BUG 448492