uml 2.0 why should i care and what should i do - …...why should i care about uml? (any version)...
TRANSCRIPT
![Page 1: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/1.jpg)
![Page 2: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/2.jpg)
UML 2.0: Why Should I Care?
And What Should I Do?
![Page 3: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/3.jpg)
Cameron Skinner
Embarcadero
www.embarcadero.com
EMBARCADERO
![Page 4: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/4.jpg)
John Hogg
IBM Rational
www.rational.com
IBM Rational software
IBM Software Group | Rational software
![Page 5: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/5.jpg)
IBM Software Group | Rational software
UML 2.0: Why Should I Care?UML 2.0: Why Should I Care?§ Reason #1: structure modelling§ Better architectural communication
4A nice-to-have, but not a fundamental change…
§ MDA enabler!4Generate better applications faster
![Page 6: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/6.jpg)
IBM Software Group | Rational software
Full benefits of model-driven development require structural code generation from the model
•Faster development•Higher quality
Structures Enable Model-Driven Architecture
0%
Behaviour
Structure
Hand coding
% G
ener
ated
Cod
e
100%
90%
![Page 7: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/7.jpg)
IBM Software Group | Rational software
Automating Structure Generation Enables Control
• It’s not what you draw, it’s what you do with it• Code Generation
– Shorter time-to-market, better quality
• Model-Driven Testing– Full control of stubbing
• Thread Assignment– Inheritance of controlling threads
• Build Minimization– Full two-way encapsulation
• And more…
![Page 8: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/8.jpg)
IBM Software Group | Rational software
UML 2.0: Where Are We?
• We’re not there yet• Official UML 2.0 adoption
~October 2003• Official UML 2.0 availability
~October 2004– I.e., no more changes
![Page 9: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/9.jpg)
IBM Software Group | Rational software
UML 2.0: What Should I Do?• Learn UML 2.0
– Forewarned is forearmed– But be careful of what you’re taught
today…
• Be wary of “UML 2.0 today!” claims• Understand how to apply UML 2.0, not
just draw it• Get ready for the future of software
development
![Page 10: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/10.jpg)
Dirk Epperson
Kabira
www.kabira.com
![Page 11: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/11.jpg)
Levels of Abstraction
![Page 12: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/12.jpg)
Why should I care about UML?(any version)
§ Before UML modelers spent as much time arguing whether arrows should be round or pointy, as they did about the viability of modeled systems.
§ Current programming practice is tied too much to lines of code.
§ Model Driven Architecture (MDA) gives us the level of abstraction required to get above the fray of the lines of code!
§ UML is virtually necessary for MDA (see the first point) and is nearly sufficient for MDA.
![Page 13: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/13.jpg)
UML 2.0
§ The Good News§ More ways to express a concept§ Action Semantics§ Foundation for MDA
§ The Bad News§ Expression comes at the cost of Complexity§ How many developers can create a fully semantically
correct, verifiable, executable model?
§ More than one way to do the same thing§ Java learned a lesson from C++ about this.
![Page 14: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/14.jpg)
§ Shakespeare and Dickens were able to use the full expression of the English Language.
§ But newspaper reporters use a vocabulary of only about 1,000 words to get the story across.
§We are in danger of ending up with a UML that only a Shakespeare can use!§This does not bode well for the longevity of UML.
Where is this heading?
![Page 15: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/15.jpg)
What is needed…
§ A profile which describes UML for mere mortals.§ An executable context which provides a normal
mode of MDA.§ An audit context which will guarantee the
executability of a model.
![Page 16: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/16.jpg)
Pete Rivett
Adaptive
www.adaptive.com
Adaptive
![Page 17: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/17.jpg)
Lovelace
Joaquin Miller
Lovelace Computing
www.joaquin.net
![Page 18: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/18.jpg)
Lovelace
Why Should I Care?
§ Obscurity, complexity, and over-ambition
§ Consistency, capability, and quality
§Minor quirks and major advances
![Page 19: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/19.jpg)
“I gave desperate warnings againstthe obscurity, the complexity, and
the over-ambition of the new designbut my warnings went unheeded.
I conclude that there are two ways ofconstructing a design:
One way is tomake it so simple that
there are obviously no deficiencies
and the other way is tomake it so complicated that
there are no obvious deficiencies.”Tony Hoare
Turing Award Lecture, 1980
Lovelace
![Page 20: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/20.jpg)
Lovelace
Consistency: great care has been taken, to good effect
Capability: significant gains,building on other established standards
Quality: much improved
![Page 21: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/21.jpg)
Lovelace
ClassifierInstanceSpecification+classifier
0..*
Instance
«instantiate»
No objects in UML 2 models[but instanceSpecificationswill fill the void]
Minor quirks
![Page 22: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/22.jpg)
Lovelace
Classifier
TypeTypedElement
Association
+type
0..1
Type distinct from specification[but only one type per element]
Associations may be typed
Major advancements
![Page 23: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/23.jpg)
Lovelace
y:S3Triangle
sideA = 4 sideB = 4 sideC = 4
draw ()
x:A2S1Triangle
angleA = 60° angleB = 60° sideC = 4
draw ()
Equilateral
« instance » « instance »
Same type, different implementation
![Page 24: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/24.jpg)
Lovelace
Right
y:S3Triangle
sideA = 3 sideB = 4 sideC = 5
draw ()
« instance » « instance »
x:S3Triangle
sideA = 4 sideB = 4 sideC = 4
draw ()
Equilateral
Different type, same implementation
![Page 25: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/25.jpg)
Lovelace
As you use UML 2,think about UML 3
CommunityUML
www.cuml.org
And What Should I Do?
![Page 26: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/26.jpg)
This is a workshop.
Let’s work!
![Page 27: UML 2.0 Why Should I Care And What Should I Do - …...Why should I care about UML? (any version) Before UML modelers spent as much time arguing whether arrows should be round or pointy,](https://reader036.vdocument.in/reader036/viewer/2022070817/5f1445e2d1c87d11ad330ffd/html5/thumbnails/27.jpg)