Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Graphical DSL with Sirius: how to simplify the creation of custom modeling tools

Talk operated at Eclipse/ToolMakers’ Day 2017 Workshop for Craft conference 2017 Budapest.

  • Login to see the comments

Graphical DSL with Sirius: how to simplify the creation of custom modeling tools

  1. 1. 1 ©Copyright2016Obeo Graphical DSL with Sirius: how to simplify the creation of custom modeling tools Etienne JULIOT – 2017 04 26 Craft-Conf Workshop Eclipse ToolMakers’Day
  2. 2. 2 ©Copyright2016Obeo
  3. 3. 3 ©Copyright2016Obeo
  4. 4. Complexity?
  5. 5. Flexibility
  6. 6. ©Copyright2017Obeo Easily and rapidly create custom modeling workbenches Business Domain UsersModeling Workbench
  7. 7. ©Copyright2017Obeo Benefits End users Tools tailored to their vocabulary & processes Tool specifiers / Developers Reduce cost & complexity (2 hours hands-on session produces first results)
  8. 8. ©Copyright2017Obeo Principles Specification environment Runtime environment Tool specifiers / Developers End users
  9. 9. ©Copyright2017Obeo • The System temperature should be under 30°C and must be under 40°C . • The cost must be as lower as possible. • Several Data Source (cameras, radars, wifi) can provide several GB of data. • Each Processor must be able to capture all provided data in real time. • Each component must have an electrical power line • The total weight must be lower than 2 Kg • Etc. Demo: Trade-Off for Data Flow Time
  10. 10. ©Copyright2017Obeo Define the Metamodel Design Graphical Editor Leverage Data 11 22 33 Model-Driven Tools ● Generation ● Validation ● Comparison ● Transformation Model-Driven Tools ● Generation ● Validation ● Comparison ● TransformationBusiness Vocabulary • Concepts • Relations • Features Business Vocabulary • Concepts • Relations • Features Representations ● Displayed elements ● Shapes ● Coulors ● Fonts Edition tools ● Palette ● Properties Views Representations ● Displayed elements ● Shapes ● Coulors ● Fonts Edition tools ● Palette ● Properties Views Process
  11. 11. ©Copyright2017Obeo Complexity Management • Synchronized Editors • Conditional Styles • Layers • Filters • Validation Rules • Quickfixes • Synchronized Editors • Conditional Styles • Layers • Filters • Validation Rules • Quickfixes
  12. 12. ©Copyright2017Obeo Project history Created by Obeo and Thales to provide a generic modeling workbench that can be tailored to specific needs Contributed in Open Source in 2013 as a project in Eclipse
  13. 13. Several millions Eclipse Users 200 Eclipse Members Eclipse Strategic Member Obeo +16M Open Source Lines of Code +20 Eclipse Committers 5 Project Leaders 13 Eclipse Strategic Members (Google, IBM, Oracle, SAP, Bosch, )…
  14. 14. ©Copyright2017Obeo A dynamic Open Source project Already deployed on numerous operational contexts Sponsors working on Open Innovation mode (Thales, French DoD, Sagem, ETAS-Bosch, ...) Regular releases (2 per year, since 4 years) Important activity on the forum (+100 messages per month) Many visits of the web site (+144 000 pages views from 181 countries in 2016) An annual community event with SiriusCon (18 speakers in 2016)
  15. 15. ©Copyright2017Obeo Many ready-to-use Open Source modelers Information System Designer UML Designer BPMN Designer ... and other projects by more than 200 different authors
  16. 16. How to create a smart business with such OpenSource project?
  17. 17. ©Copyright2017Obeo Obeo Designer Training, Consulting, Projects Obeo leads Sirius development, we bring you our skills Support & Maintenance Guaranteed response time and favored access to fixes Instant sharing Fluent and conflictless work on the same data Secure Your Deployments Collaborate with Your Team Members Rely on Sirius experts
  18. 18. ©Copyright2017Obeo Real Time & Seamless Collaboration On Your Models
  19. 19. ©Copyright2017Obeo Obeo Designer Team User 2 User 1 User 2 A shared repository and collaborative work mechanisms Server
  20. 20. ©Copyright2017Obeo To get rid of file sharing problems! Classic collaboration problems Split the model into files Manage the files with a Software Configuration Management tool Manage locking at a file level Reconcile using diff & merge
  21. 21. ©Copyright2017Obeo Users’ Feedback Several users working simultaneously on the same data • Automatic propagation of modifications across all user views • Authentication and data access rights No time lost managing conflicts • Implicit locking during modifications • Explicitly created reservation locks Standard data exploitation • Storage in a multi-platform relational database (H2) • Ready to deploy server configuration based on CDO • Import/Export with local projects
  22. 22. ©Copyright2016Obeo Users’ experience
  23. 23. ©Copyright2016Obeo SOA, Entity, Database & JavaEE generation
  24. 24. ©Copyright2016Obeo Impacts Analysis Enterprise Architecture
  25. 25. ©Copyright2016Obeo Arduino Designer
  26. 26. ©Copyright2016Obeo Generate + Compile + Deploy
  27. 27. On Board Satellite Applications
  28. 28. Capitalizing on Human Expertise Risks Analysis
  29. 29. Multiplicity of concerns Collaborative Engineering
  30. 30. How to Start? Demonstrator focus on potential issues & visual Good Domain model & Modeling tool applicable on a first project ● Productivity tools ● Integration with other tools ● Packaging ● Release engineering Prototype Industrialization Deployment By Obeo We develop on your behalf We are committed to the results Independently You develop by your self. We provide training and support. With Obeo We put our experts at your disposal, on your premises or remotely & with local partner (eg. IncQuery) Team with all stakeholders : Sirius Features, Business Specifics, Integration
  31. 31. ©Copyright2017Obeo Metamodel definition Capture the core concepts of your business Represent them in a comprehensive, well formed and evolutive Ecore model.
  32. 32. ©Copyright2017Obeo Implement specific editors Choose representations that best suit your business needs Efficiently implement them: performance, UX, evolutivity
  33. 33. ©Copyright2017Obeo Develop complementary plug-ins Integrate other kind of editors (textual, forms, ...) Manage models’ life-cycle (comparison, imports/exports, ...) Generate code or documentation
  34. 34. ©Copyright2017Obeo Integrate a ready-to-use workbench Create a seamless assembly of tools Provide a powerful and intuitive environment
  35. 35. ©Copyright2017Obeo Industrialize your tooling process Select the best solutions to manage, test and build your plug-ins Create a software factory to rapidly and safely deliver your solution