2. About MagicDraw
> A popular UML-based modeling tool developed in Lithuania
> Available since 1998
> Over 500.000 downloads in 90 countries
> Standard-compliant and highly customizable platform
> MagicDraw R&D teams uses a lot of Agile practices
More info: www.magicdraw.com
Awards
Jolt Jolt Best Java Best Team
Best Java Development
Productivity Productivity Modeling
Database Tool Tool
Winner Winner Tool
2
3. About Speakers
Darius Šilingas, Rokas Bartkevičius,
Head of Solutions Solution Architect
Department @ No Magic Europe
@ No Magic Europe
> 7 years modeling consultancy
> training and consultation sessions done in close to 100
organizations from 20 countries
3
4. Agenda
UML vs. Agile
Anti-Patterns vs. Best Practices
Wrap-up
4
5. About UML
UML is widely acknowledged as de
facto standard for software modeling
UML does not specify a method, just
the modeling language elements
UML receives a lot of criticism for
being too complicated and difficult to
apply
A typical modeler needs ~20% of
UML applied with a well-defined
method
5
6. Agile Manifesto
We are uncovering better ways of developing software by doing
it and helping others do it. Through this work we have come
to value
Individuals and interactions over
processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value
the items on the left more.
6
7. Modeling May Help
• It’s not about communication, it’s about the way
how you communicate
• Model could help
• Picture is worth
1000 words
7
8. Agile and UML: Friends or Foes?
Agile practitioners tend to not use modeling and UML
They focus on coding
Quite often, a big picture is lost
Our experience shows that code is not enough
Modeling is still a valuable tool in agile organizations for
capturing domain concepts and processes, system
requirements and high level designs
From our consulting experience, we conclude that a bad
name for UML results from common bad practices
8
9. Top 5 Anti-Patterns
1. Code abstraction level
2. Too complex diagrams
3. Misuse of UML concepts
4. No reuse of model elements
5. Mixed modeling styles
9
18. Issues
Difficult to read and understand
Hides incompleteness issues
Difficult to maintain
Everything should be made as simple as possible,
but not simpler. Albert Einstein
18
19. Best Practice #2
Use several levels of detail
www.implementingscrum.com
19
43. Top 5 Best Practices
1. Raise level of abstraction
2. Use several levels of detail
3. Apply consistent modeling method based
on UML subset
4. Integrate architecture views
5. Follow modeling conventions
43
44. How to Establish Agile Modeling Culture?
Define your modeling solution
– Subset of UML
– Consistent modeling method
– Simple modeling environment
Identify modeling champions
Apply Agile programming practices in modeling
Share anti-patterns and best practices
Adopt modeling incrementally
44
45. Suggested Readings
A whitepaper Efficient UML from Anti-
Patterns to Best Practices is scheduled for
December 15
Refactoring BPMN Models: from Bad
Smells to Best Practices and Process
Patterns in BPMN 2.0 Handbook
Agile Modeling
Elements of UML 2.0 Style
45
46. Thank You for Attention!
Let’s keep in touch:
Rokas Bartkevičius
e-mail: rokas.bartkevicius@nomagic.com
Skype: rokas.bartkevicius
http://lt.linkedin.com/in/rokasbartkevicius
Darius Šilingas
e-mail: darius.silingas@nomagic.com
Skype: darius.silingas
http://lt.linkedin.com/in/dariussilingas
46