oose_week 3 - iterative development- rup
TRANSCRIPT
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
1/28
Iterative development
and The Unifed processChapter 2
Applying UML and Patterns
-Craig Larman
1Agile - Scrum - XP
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
2/28
The Unifed Process
• The Unifed Process has emerged asa popular and eective sotwaredevelopment process.
• In particular, the Rational UnifedProcess, as modifed at RationalSotware, is widely practiced and
adopted y industry.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
3/28
The Most ImportantConcept
The critical idea inthe Rational UnifedProcess is IterativeDevelopment .
Iterative !evelopment is successively
enlarging and refning a systemthrough multiple iterations, usingeedac" and adaptation.
#ach iteration willinclude re$uirements,analysis, design, and
implementation.Iteration
s aretimebox
ed .
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
4/28
Agile - Scrum - XP 4
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
5/28
• Team-Uniying Approach
The RUP unifes a sotware team y providing a commonview o the development process and a shared vision oa common goal
• Increased Team Prodctivity – "nowledge ase o all processes
– view o how to develop sotware – modeling language – Rational provides many tools
DesignerAnalyst Tester
Architect
Tool
Specialist
Developer
Project
Managemen
t
The !ational Unifed Process
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
6/28
"hat is !ational Unifed Process#!UP$%
RUP is a complete sotware%developmentprocess ramewor" , developed y Rational&orporation.
It's an iterative development methodologyased upon si( industry%proven estpractices.
Processes derived rom RUP vary romlightweight)addressing the needs o smallpro*ects )to more comprehensive processes
addressing the needs o large, possily
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
7/28
Iterations
#ach phase has iterations, each havingthe purpose o producing ademonstrale piece o sotware. The
duration o iteration may vary romtwo wee"s or less up to si( months.
Inception Elaboration Construction Transition
Iterations Iterations IterationsIterations
The iterations and the phases fig
1
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
8/28
!UP phases
Inception • #stalish the usiness case or the
system.
#laoration
• !evelop an understanding o the
prolem domain and the systemarchitecture.
&onstruction • System design, programming and
testing.
Transition • !eploy the system in its operating
environment.
8
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
9/28
!ational Unifed Process #!UP$-!esorce &istogram
Supporting Workflows
Project Management
Environment
Business Modeling
Implementation
Test
Analysis !esign
Process Workflows
!eployment
"e#uirements
$onfiguration $%ange Mgmt
PreliminaryIteration(s)
Iter.#1
P%ases
Iterations
Iter.#2
Iter.#n
Iter.#n+1
Iter.#n+2
Iter.#m
Iter.#m+1
Ela&oration TransitionInception $onstruction
time
c on t en
t
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
10/28
Unifed Process 'est practices
• +et high ris" and high value frst
• &onstant user eedac" and engagement
• #arly cohesive core architecture
• Test early, oten, and realistically• pply use cases where needed
• !o some visual modeling with U-
• -anage re$uirements• -anage change re$uests and confguration
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
11/28
Inception
The lie%cycle o*ectives o the pro*ectare stated, so that the needs o everysta"eholder are considered. Scope
and oundary conditions, acceptancecriteria and some re$uirements areestalished.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
12/28
Inception - Activities
(ormlate the scope o the pro)ect.
• /eeds o every sta"eholder, scope, oundaryconditions and acceptance criteria estalished.
Plan and prepare the 'siness case.• !efne ris" mitigation strategy, develop an initial
pro*ect plan and identiy "nown cost, schedule, andproftaility trade%os.
*ynthesi+e candidate architectre.• &andidate architecture is pic"ed rom various
potential architectures
Prepare the pro)ect environment.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
13/28
Inception - ,it criteria
n initial usiness case containing atleast a clear ormulation o theproduct vision
% the core re$uirements. – in terms o unctionality, scope, perormance,
capacity, technology ase.
n initial ris" assessment.
n estimate o the resources re$uiredto complete the elaoration phase.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
14/28
,la'oration
n analysis is done todetermine the ris"s, stailityo vision o what the product isto ecome, staility o
architecture and e(penditureo resources.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
15/28
,la'oration - ,ntry criteria
The products and artiacts descriedin the e(it criteria o the previousphase.
The plan approved y the pro*ectmanagement, and unding authority,and the resources re$uired or the
elaoration phase have eenallocated.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
16/28
,la'oration - Activities
efne the architectre. Pro*ect plan is defned. The process,
inrastructure and development environment aredescried.
/alidate the architectre. 0aseline the architectre.
To provide a stale asis or the ul" o thedesign and implementation eort in the
construction phase.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
17/28
,la'oration - ,it criteria
detailed sotware development plan, withan updated ris" assessment, a managementplan, a sta0ng plan, a phase plan showingthe numer and contents o the iteration ,an iteration plan, and a test plan
The development environment and othertools
aseline vision, in the orm o a set oevaluation criteria or the fnal product
domain analysis model, su0cient to eale to call the corresponding architecture1complete'.
n e(ecutale architecture aseline.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
18/28
Constrction
The &onstructionphase is a
manuacturingprocess. It
emphasi2esmanaging resourcesand controllingoperations to
optimi2e costs,schedules and
$uality. This phase isro"en into severaliterations.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
19/28
Constrction - ,ntry criteria
The product and artiacts o theprevious iteration. The iteration planmust state the iteration specifc
goals Ris"s eing mitigated during this
iteration.
!eects eing f(ed during theiteration.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
20/28
Constrction - Activities
evelop and test components. &omponents re$uired satisying the use cases,
scenarios, and other unctionality or theiteration are uilt. Unit and integration tests are
done on &omponents. Manage resorces and control process. Assess the iteration
Satisaction o the goal o iteration is determined.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
21/28
Constrction - ,it Criteria
The same products and artiacts,updated, plus3
release description document, whichcaptures the results o an iteration
Test cases and results o the testsconducted on the products,
n iteration plan, detailing the ne(titeration
4*ective measurale evaluation
criteria or assessing the results o the
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
22/28
Transition
The transition phase is the phasewhere the product is put in the handso its end users.
It involves issues o mar"eting,pac"aging, installing, confguring,
supporting the user%community,ma"ing corrections, etc.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
23/28
Transition - ,ntry criteria
The product and artiacts o theprevious iteration, and in particular asotware product su0ciently mature
to e put into the hands o its users.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
24/28
Transition - Activities
Test theproduct
deliveralein a
customerenvironme
nt.
7ine tunethe
productasedupon
customereedac"
!eliver thefnal
product tothe end
user
7inali2eend%usersupportmaterial
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
25/28
Transition - ,it criteria
n update o some o the previousdocuments, as necessary, the planeing replaced y analysis o the
perormance o the pro*ect relative toits original and revised successcriteria.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
26/28
Advantages o !UP
The RUP puts an emphasis on addressing very earlyhigh ris"s areas.
It does not assume a f(ed set o frm re$uirementsat the inception o the pro*ect, ut allows to refnethe re$uirements as the pro*ect evolves.
It does not put either a strong ocus on documents
The main ocus remains the sotware product itsel,and its $uality.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
27/28
ra1'acs o !UP
RUP is not considered particularly 8agile9 :owever,recent studies have shown that y adopting the rightessential artiacts RUP is agile.
It ails to provide any clear implementationguidelines.
RUP leaves the tailoring to the user entirely.
-
8/15/2019 OOSE_Week 3 - Iterative Development- RUP
28/28
Than" ;ou