CS427 2-1
Rational Unified Process
The Unified Software Development Process by Ivar Jacobson, Grady Booch, and James Rumbaugh
The Rational Unified Process: An Introduction, by Philippe Kruchten
The Rational Unified Process Made Easy, by Per Kroll and Philippe Kruchten
CS427 2-2
SEI Capability Maturity Model
1. Initial - anything goes2. Repeatable - SCM, QA, planning,
tracking, requirements3. Defined - process defined and
followed4. Managed - measure and act on it5. Optimizing - keep improving process
CS427 2-3
Best Practices:
Develop software iteratively Manage requirementsUse component-based architecturesVisually model software Verify software quality Control changes to software
CS427 2-4
Develop Iteratively
Waterfall Requirements High level design Low level design Implementation Testing
Iterative development – all activities at the same time
CS427 2-5
Components of RUP
Artifacts - what(things people make)
Roles - who(roles people play)
Activities - how(things people do)
Workflows - when
CS427 2-6
Artifacts
Vision statementIteration planUse-case model (UML)Software architecture document (UML)Design model (UML)ComponentIntegration build plan
CS427 2-7
Roles
Project managerArchitectSystem analystUse-case specifierDesignerImplementorTesterCM manager
CS427 2-8
Activities
Plan subsystem integrationImplement classesFix a defectPerform a unit testReview codeIntegrate subsystem
CS427 2-9
Workflows
Project management Business modelingRequirementsAnalysis and designImplementation
CS427 2-10
Workflows
TestConfiguration and change
managementDeploymentEnvironment
CS427 2-11
Implementation Workflow
Architect
System Integrator
Im plem entor
Code reviewer
P lan SystemIntegration
DefineO rganizationof Subsystem
PlanSubsystemIntegration
Im plem entC lasses
Fix a defect
Perform UnitTest
Review code
Integratesubsystem
Integratesystem
CS427 2-12
Iterations
Preliminary It. Iter. 1 Iter. 2 Iter. 3 Iter. 7 Iter. 8 Iter. 9
ElaborationInception Construction Transition
CS427 2-13
Four phases
Inception get the idea, initial planning
Elaboration create the architecture build skeleton system detailed planning
Construction build the rest of the system
Transition
CS427 2-14
Iteration Plan
What are we going to do this iteration?
Who is going to do it?What order are we going to do it?Do we have enough resources?
CS427 2-15
An iteration workflow
Each iteration uses some of the standard workflows Requirements, design, implementation, test
Workflows can run in parallelEarly iterations
Much project management Much business modeling Little implentation
CS427 2-16
Architecture
Describes components and how they are connected.
Component is system/subsystemArchitect responsible for architectureDevelopers responsible for
componentsElaboration phase writes code for the
architecture
CS427 2-17
ManagerArchitect (technical lead)Business experts
(systems analysis, use case specifier)Developers
(designer, developer, tester, CMM manager)
CS427 2-18
Summary of RUP
Develop software iteratively Manage requirementsUse component-based architecturesVisually model software Verify software quality Control changes to software
CS427 2-19
Summary of RUP
Complicated processFramework - you are not expected to
do everythingDon’t focus so much on the process
that you forget the product!
CS427 2-20
Keys to good software
Good peopleUnderstand the problemUnderstand the solutionEnough timeGood process
CS427 2-21
eXtreme Programming
Spend two hours reading “Extreme Programming Explained” or reading
http://c2.com/cgi/ wiki?ExtremeProgrammingRoadmap
http://c2.com/cgi/ wiki?ExtremeProgrammingSummary
http://www.xProgramming.com/and http://www.extremeprogramming.org/
Top Related