UML and the Unified Process. Renaud ... OO Process ≠ UML .... Applying UML
and Patterns: An Introduction to Object-Oriented Analysis and Design and.
UML and the Unified Process
Renaud FLORQUIN Isabelle LECLERCQ FloConsult SPRL http://www.floconsult.be mailto:
[email protected]
!! OO Process ≠ UML
Un
ifie
dP ro c
es s
Decision
UML Abstraction
Process
FloConsult SPRL; 2003-2006
2
OO SW development (1)
? Iterative/incremental Risk-driven Architecture driven FloConsult SPRL; 2003-2006
3
Unified process phases Inception 10%
Elaboration
Construction
30%
50%
Transition 10%
time Inception Define the scope of the project and develop business case Elaboration Plan project, specify features and baseline the architecture Construction Build the product Transition Transition the product to users FloConsult SPRL; 2003-2006
4
UP practices 1. Iterative/incremental software development approach 2. Risk management 3. Use Case driven 4. Architecture Centric 5. Supported by UML
FloConsult SPRL; 2003-2006
5
1. Iterative/Incremental Iterative development Rework scheduling strategy to revise and improve parts of the system Refactoring e.g. only 10 % of the code should be optimized for performance
Incremental development The software is developed and delivered in stages (increments)
FloConsult SPRL; 2003-2006
6
UP: iterations Number of iterations Depends on the process phase Generally ranges from 0 to 3
Duration of iterations Depends on the size of the project From 2 weeks to 6 months
Time-boxing: Iterations are fixed in length If needed, reduce scope, rather than slip completion date FloConsult SPRL; 2003-2006
7
Tr an si t
io n
on st ru ct i C
El ab or
In ce pt i
at
on
io n
on
UP iterations: small project
Iteration Number I1
E1
E2
C1
C2
C3
T1
a et
y er
B
o Pr
l ra
se ea el R
iv el D
B
u ct te
al tu ep
hi rc
c on
A
C
e
e yp
in el as
t to
Iterations: from 2 to 4 weeks FloConsult SPRL; 2003-2006
8
on ns iti
ru c
Tr a
on st C
In
El ab or at
ce pt io
n
io n
ti o
n
UP iterations: larger project
Iteration Number I1
I2
E1
E2
C1
C2
C3
T1
T2
T3
y
t to e yp
e in el as
o Pr
lB
e
a ur
s ea el
er
R
iv el
a et
ct te hi rc
l ua pt ce
on
D
B
A
C
Iterations: from 4 to 24 weeks FloConsult SPRL; 2003-2006
9
2. Risk management (1) Risk reduction Breaks the project into small sub-projects Possibility to handle riskiest sub-projects at first
Elaboration (early): Understand better the requirements Baseline the architecture “executable” architecture Main components Selection of technologies ... FloConsult SPRL; 2003-2006
10
Risks management (2)
Inception
Elaboration
Construction
Transition
Project Risk Exposure
High
Waterfall
Incremental
Low
Project Life Cycle FloConsult SPRL; 2003-2006
11
3. Use-case driven Basis for the entire development process Help to synchronize the content of various models Drive numerous activities in the process Capturing for functional requirements Validation of the design model Definition of test cases Planning of iterations Reqts
Analysis
Design
Impl.
Test
Use Cases bind these workflows together
FloConsult SPRL; 2003-2006
12
4. Architecture centric Models to visualize, specify, construct and document architecture 4 + 1 (now N) views model of architecture
Successive refinement of an executable architecture Architectural prototypes for validation and baselines
Inception
Elaboration
Construction
Transition
time
Architecture FloConsult SPRL; 2003-2006
13
4+1 Views Views of a SW Architecture: Logical Process Implementation Deployment Use cases
End-User Functionality
Logical View
Implementation View Use-Case View
Now N+1 views Process View Performance Scalability Throughput
FloConsult SPRL; 2003-2006
SW Management Programmers
Deployment View Topology System Integration Telecommunication
14
5. Supported by UML Visual modeling 13 diagrams Most of them Object-Oriented Not Use Case Activity, State, ... => depends !
FloConsult SPRL; 2003-2006
15
!! OO Process ≠ UML
Un
ifie
dP ro c
es s
Decision
UML Abstraction
Process
FloConsult SPRL; 2003-2006
16
BUT... What is UML ? Unified Modeling Language The UML is a graphical language for Specifying Visualizing Constructing Documenting
Standardized by the OMG www.omg.org
FloConsult SPRL; 2003-2006
17
UML = Notation UML: Takes the best of each of the 3 methods OOSE (Jacobson) : Use Cases OMT (Rumbaugh) : Analysis
Booch : Conception, Architecture
And of many others: Harel Kruchten
But only notation, impossible to standardize a unique process
FloConsult SPRL; 2003-2006
18
UML static diagrams Static Diagram
Used in ...
Notation Class
Class
OO
Inception analysis/design (Domain model)
Class2
Elaboration analysis/design (Design model)
✔ Package
Elaboration analysis/design (N Views)
Deployment
Node
Node
Elaboration analysis/design (N Views)
Component Component
FloConsult SPRL; 2003-2006
✔
Component
19
UML dynamic diagrams Dynamic Model
Used in ...
Notation
OO
Inception requirements (High-level, 20 % detailed)
Use case
Use Case Actor
Use case
object1:Class
object2:Class
Sequence
Collaboration (Communication)
Elaboration requirements (System Sequence Diagrams) Elaboration analysis/design (between objects)
1x 2y object1:Class
object2:Class
Activity
Elaboration analysis/design (between objects)
(✔)
✔
Elaboration requirements (to illustrate Use Cases)
(✔)
Activity Activity
Activity
State1
State
Elaboration analysis/design (between objects)
(✔)
State2
FloConsult SPRL; 2003-2006
20
Bibliography
Applying UM L and Patte rns : An Introduction to Obje ct-Orie nte d Analys is and De s ign and Ite rative De ve lopm e nt , 3rd Edition by Craig Larman; 736 p, October 2004, Prentice Hall, ISBN 0-13-148906-2
The Rational Unifie d Proce s s m ade Eas y: A Practitione r's guide to RUP by Per Kroll, Philippe Kruchten; 464 p, April 2003, Addison-Wesley, ISBN 0-321-16609-4
UM L Dis tille d: A Brie f Guide to the Standard Obje ct M ode ling Language , 3d Edition by Martin Fow ler; 192 p, September 2003, Addison-Wesley, ISBN 0-321-19368-7
FloConsult SPRL; 2003-2006
21