PPTX

advertisement
RUP/UP Software
Development Method
Hoang Huu Hanh, Hue University
hanh-at-hueuni.edu.vn
Contents
Summary of Rational Unified Process
 RUP Structures and Roles
 Project Management Systems and
Procedures in RUP
 RUP and different types of software
projects

2
RUP. Some History Behind
The need in software development
process
 What is a software development process
 History of RUP
 RUP and UP

3
Summary of RUP
Use-case driven
 Architecture-oriented
 Iterative and Incremental

4
Use-case driven
What is a use-case?
 Use-case driven principle:

Requirements
Analysis
Design
Implementation
Testing
5
Architecture Oriented
Architecture Grows from Use-Cases.
 Steps to build architecture:

Draft version not related to use-cases
 Use-cases that correspond to the system key
functionalities
 The built architecture serves as a base for
subsequent development of other use-cases

6
Iterative and Incremental
Big project is split in many mini-projects
called iterations
 Each iteration increments the overall
project result

7
Guidelines for Planning Iterations
Iteration should deal with the group of usecases which increases the usefulness of
the product over time.
 The most serious risks are handled by
earlier iterations

8
Advantages of Iterative Process




Financial risks are limited to one iteration only
The risks of late product delivery are reduced.
Iterations speeds up the overall development
process as short and clear plan is more
preferable for efficient work
Facilitates requirements elicitation
9
Project Life-Cycle in RUP

All iterations are organized into 4 phases:
 Inception
 Elaboration
 Construction
 Transition

Milestones are used to evaluate the
project progress
10
RUP Structures – elements

Entities that make up RUP (Kruchten)
 Worker:
the who
 Activities: the how
 Artifacts: the what
 Workflows: the when
The above are predefined
 Relations predefined
 All together define process framework

11
RUP Elements - workers

Responsibilities of:
 Individual
or
 Number of individuals
Behavior determined by activities
 Responsible for artifacts

12
RUP Elements - activities
Create result (artifacts)
 Take from a few hours to a few days
 Activity can be applied many times to the
same artifact
 Basic steps of activity

 Thinking
 Performing
 Reviewing
13
RUP Elements - artifacts
Main pieces of the project
 Produced, modified and used during
activities
 Fall into following sets:

 Management
(ex: software development plan)
 Requirements (ex: specifications)
 Design (ex: design model)
 Implementation (ex: source code)
 Deployment (ex: training material)
14
RUP Elements – workflows
“A workflow is a sequence of activities that
produces a result of observable value”.
 Grouped in categories
 Core
 Workflow
details
 Iteration plans
15
RUP Elements – workflows cont.
16
RUP Elements – additional
Guidelines
 Templates
 Tool mentors
 Concepts

17
Roles in RUP
Each artifact has worker assigned to it
 All workers are defined (fixed)
 Behavior determied by workflow the artifact
belongs to

18
Roles in RUP - examples

Project management workflow
 Project
manager
 Project reviewer

Requirements workflow
 System
analyst
 Use-case specifier
 User-interface designer
 Requirements reviewer
19
Project Management Systems and
Procedures in RUP
Project planning
 Project control
 Risk management
 Project evaluation

20
RUP project planning
Phase plan
 Iteration plan
 Planning supporting tool

21
RUP project control


Project indicators
Change control
management (CCM)
22
RUP risk management

Risk-driven approach :
 Risk
List
 Use-case Survey
 Development Case
23
RUP project evaluation
Iteration close-out
 Phase close-out
 Transition phase close-out

24
RUP and different types of software
projects
25
RUP Process for Commercial
Software
High number of iterations
 Extensive testing

A
lot of test-cases
 Regression testing

Remember to keep a balance between
quality assurance and time to market
26
RUP for Contract Software
High number of iterations
 Focus more on requirements elicitation in
the beginning

 Active
prototyping
 User involvement

Focus more on testing in the end
27
RUP for In-house Software

Very close to waterfall model
 Small
number of iteration
 Good testing is preferred
28
Conclusion - Advantages of RUP







architecture brings us overall understanding of
the big and complex system
early risk handling
easier requirements change management
high level of reuse
project teams learn easier because the project is
broken down into small manageable parts
better quality assurance
Extensive CASE tool support
29
Conclusion – Disadvantages of
RUP
Very broad and complex
 You have to customize it to start really
using it
 Demands big initial efforts and
investments

30
Waterfall model
C o m m u n ic a t io n
p ro je c t in it ia t io n
re q u ire m e n t g a t h e rin g
Planning
es tima ting
sc he duling
track ing
M o d e lin g
a n a ly s is
d e s ig n
C o n st r u c t io n
c ode
t es t
D e p lo y m e n t
d e liv e ry
s u p po rt
f eedback
31
Questions?
32
Download