no magic@md day2011
DESCRIPTION
TRANSCRIPT
The Truth is in the Models
Adopting UML as
modeling platform
by Andrius Strazdauskas
No Magic
About myself
• Andrius Strazdauskas
• European Sales Director @ No Magic
• 13 years in modeling industry
• Former:
• Programmer @ No Magic
• Project manager @ No Magic
• Product manager @ No Magic
• Standards Architect @ OMG
`2
Evolution of modeling standards
A lot of modeling standards are available:
– UML
– SysML
– BPMN
– SoaML
– UPDM
– SBVR
– IMM
– and many more
3
4
Evolution of modeling
• Models are getting larger
• Models are getting more complex
• Models are used at more and more domains
• Models tend to overlap
As a result there are a lot of disconnected models
that are modeling connected things
5
How to…
How to have models that are:
• Integrated,
• Traceable,
• Based on standards…
6
UML as platform for model
integration
Pros:
• UML has infrastructure
• UML has extensibility mechanism
• UML is rich enough to cover most types of models
• A lot modeling standards are built on UML
• Wide support in tooling
• Standard persistence
7
UML as platform for model
integration (2)
Cons:
• UML is very complex (~250 concepts)
• UML is perceived as technical/IT language
• A UML profile need to be created for each new
modeling standard in order to integrate it into
master model
• Can be extended, but not subtracted
8
What’s next?
• So if UML can host any type of model…
• …literally every UML tool can allow working on any
kind of model !..
• Or… is something that is good for everything is
really good for nothing?..
9
Is this BPMN?
10
This is how it should look
11
If a tool needs to model non-UML models it needs to
stop being a UML tool :
• Hide UML
• Show domain specific information
What are the challenges for UML tool?
12
How did we do it?
Basic ideas:
• Change (extend) the metamodel
• Change the way diagram looks like
• Introduce custom diagram types
• Hide unnecessary UI
• Change the meta-names
• Add additional modeling rules
• Add model validation rules
13
Metamodel changes
14
Diagram Element Change
15
16
New diagram types
Domain-specific
diagram palette
Diagrams are
customized using
MagicDraw UI
This customization is UI driven, no coding is required.
17
GUI changes
Domain-specific
properties
Domain-specific
names
Can be further
customized by
user
This customization is model driven, no coding is required.
18
Role-based perspectives
This customization is UI driven, no coding is required.
19
Validation
Model-
based
(OCL) rule
definition Validation
results
This customization is model driven, no coding is required.
Summary
• UML can be used as a platform for different kinds
of models
• MagicDraw can be transformed into a DSL
solution at a pretty low cost
• User friendly / domain specific interface instead
of technical one is the key
20
QUESTIONS?
Awards
Best Team
Development
Tool
Best Java
Modeling Tool
Jolt Productivity
Winner Best Java
Database Tool