[email protected] philip langer your custom uml ... › sites › default › files ›...
TRANSCRIPT
![Page 1: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/1.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 1
Your custom "UML like" tool based on Papyrus
Philip [email protected]
![Page 2: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/2.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 2
Building Modeling Tools based on Open-Source Technologies
Modeling toolsdevelopment
Business application development
Software and systems engineering
Hardware producers,Mobile networks,
Firmware, ...
Information SystemsInsurances, Accounting,
information management,...
![Page 3: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/3.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 3
● Model-based engineering is most successful if it is domain-specific○ Highly customized modeling environments○ Directly reflecting specific needs of a domain and its users○ User roles, their backgrounds, and methodologies
(e.g., systems architect, electrical engineer, …)
Domain-specific Modeling
Domain-specific Modeling Environment
DSML
codegen
validation
simulation
![Page 4: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/4.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 4
Domain-specific Graphical Modeling
![Page 5: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/5.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 5
Domain-specific Modeling
So let’s build our domain-specific modeling language. Yeah, but our DSML somewhat looks like
UML activity diagrams and state machines.
DSML
Maybe, however, there is also a lot of stuff in our DSML that isn’t covered by that.
Well, but there is also a lot in UML that we don’t want to have in our DSML.
That would confuse our users. They need a domain-specific language streamlined for their tasks and not a UML tool.
But we don’t want to re-invent the wheel for the part of UML that we need, do we?
What if we just wouldn’t use those parts?
![Page 6: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/6.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 6
Domain-specific Modeling with UMLDSML
To UML or not to UML?
DSML UML
![Page 7: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/7.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 7
Domain-specific Modeling with UMLDSML
To UML or not to UML?That is not the question!
DSML UML
Domain-specific tool Off-the-shelf tool
![Page 8: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/8.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 8
Domain-specific Modeling with UMLDSML
To UML or not to UML?That is not the question!
DSML UML
Domain-specific tool Off-the-shelf tool
but it can still be built on top of UML UML Modeling Platform!
![Page 9: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/9.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 9
● Open Source UML modeling platform○ Not only a UML tool
Papyrus as a Platform
![Page 10: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/10.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 10
● Open Source UML modeling platform○ Based on the Eclipse Modeling Framework○ Based on modeling standards: UML, SysML, OCL, fUML, Alf, …○ Supported by a large open-source community○ Governed by an industry consortium○ Enables to build domain-specific tools based on UML, SysML, etc.
Papyrus as a Platform
![Page 11: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/11.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 11
● Adding “domain-specificness” to UML○ “Plain” UML is a general purpose modeling language○ UML Profiles allow to extend UML with domain-specific concepts
Papyrus as a Platform
DSMLProfile
DSMLDSML
![Page 12: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/12.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 12
● Building a domain-specific modeling tool○ UML profile defines only structure of the model (metamodel)○ Off-the-shelf UML tools provide generic graphical syntax○ A domain-specific modeling environment
■ Domain-specific tooling for editing models■ Rich client platform to support domain-specific workflows, ...■ Powerful API to process models (e.g., for codegen, validation, etc.)
Papyrus as a Platform
DSMLProfile
DSMLDSML
Domain-specificModeling Environment
CustomizationDSML
Platform
![Page 13: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/13.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 13
● Customizability of Papyrus○ Customizable graphical syntax○ Customizable tooling (palette, property views, editing behavior, ...)
● Built on EMF○ Great programming API for processing models (codegen, analysis, validation, …)○ Interoperability with other EMF-based tools and DSMLs
● Based on the Eclipse rich client platform○ Easy to build a domain-specific tool around Papyrus-based editors○ Can be integrated into existing Eclipse-based tools
Papyrus as a Platform
![Page 14: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/14.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 14
Example
Develop hardware model
Design user workflows based on hw components and implement UI
Verify, simulate and analyze user scenarios
Roles Shared Model
![Page 15: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/15.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 15
Example
Develop hardware model
Design user workflows based on hw components and implement UI
Verify, simulate and analyze user scenarios
Roles Shared Model
![Page 16: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/16.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 16
● User Workflow Modeling Language○ A workflow contains tasks○ Manual task and automatic tasks○ Flow between tasks and decisions○ Duration, responsibilities, and probabilities
ExampleProfile
DSMLDSML
![Page 17: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/17.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 17
● Profile can be applied to UML models○ Stereotypes can be applied to instances
of meta classes extended by the stereotype○ Stereotype applications contain the values
→ Extension of UML’s metamodel
UML ProfilesProfile
DSMLDSML
![Page 18: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/18.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 18
● UML Profiles define extensions of UML’s abstract syntax○ Papyrus supports CSS and SVG to style diagrams○ Papyrus builds on EMF → combinable with any EMF technology (Sirius, Xtext, …)
Graphical Syntax for UML Profile Applications
![Page 19: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/19.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 19
Demo
![Page 20: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/20.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 20
● Abstract and concrete syntax doesn’t make a tool○ More customizations are required for a domain-specific modeling environment○ Papyrus supports full customizability of palette, property views, menus, ...○ Papyrus builds on Eclipse → rich tool development platform
■ Integration with other tools, code generators, etc.■ Wizards, menus, toolbars, views, ...
Tooling for UML Profile Applications
![Page 21: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/21.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 21
Demos
Develop hardware model
Design user workflows based on hw components and implement UI
Verify, simulate and analyze user scenarios
Roles Shared Model
![Page 22: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/22.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 22
● Domain-specificity is a key factor for success○ Streamlined to what is really needed○ As close as possible to the domain and to the tasks to be achieved○ Integration with existing workflows, methodologies, infrastructure, …
● DSML tools based on UML / SysML○ Guaranteed UML compliant models for re-used parts○ Reuse what’s already there in the UML tool platforms○ Interoperability with other UML models is a major advantage
● All depends on the characteristics of your DSML○ Reasonable overlap with UML → high potential of reuse○ No or low overlap → better create DSML from scratch
● If reusing UML and building on Papyrus→ You can still have a domain-specific language and customized tool!
ConclusionsDSML
![Page 23: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/23.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 23
Thanks a lot for your attention!
● Links○ https://www.eclipse.org/papyrus/download.html ○ https://wiki.eclipse.org/Papyrus_Compare ○ https://wiki.polarsys.org/Papyrus_IC
![Page 24: planger@eclipsesource.com Philip Langer Your custom UML ... › sites › default › files › slides › Papyrus a… · © 2018 EclipseSource | | Philip Langer | Your custom "UML](https://reader033.vdocument.in/reader033/viewer/2022053010/5f0e076d7e708231d43d442b/html5/thumbnails/24.jpg)
© 2018 EclipseSource | http://eclipsesource.com | Philip Langer | Your custom "UML like" tool based on Papyrus 24