SlideShare a Scribd company logo
Unified Process
Introduction to Rational Unified process
Martin Terreni
Agenda
• What is a software engineering process?
• Waterfall model
• What is RUP?
• Why RUP?
• RUP workflows and phases
• RUP BKP
• Summary
• Bibliography
What is a software engineering
process?
• First –what is not?
– It is not UML! (it is not any modeling or coding
language at all!)
– It is not planning MPOR Items and there
schedule (though it is related…).
– It is not writing lot of IPS, EPS and other over
head docs (and if it is all you are doing
something wrong).
What is a software engineering
process?
• Then what IS IT?
– Who is doing what, when and how (and
WHY!!)
Waterfall model
Completely understand requirements, finish
design, code, test
and only then implement.
Waterfall Process Assumptions
• Requirements are known up front before
design
• Requirements rarely change
• Users know what they want, and rarely need
visualization
• Design can be conducted in a purely abstract
space, or trial rarely leads to error
• The technology will all fit nicely into place when
the time comes (the apocalypse)
• The system is not so complex. (Drawings are
for wimps)
What is RUP?
“a web-enabled software engineering
process that enhances team productivity
and delivers software best practices to all
team members”
The Rational Unified Process, 2nd Edition
What is RUP?
• RUP is a method of managing OO Software
Development
• It can be viewed as a Software Development
Framework which is extensible .
What is RUP?
The Spirit of RUP:
• Attack major risks early and continuously…or
they will attack you.
• Ensure that you deliver value to your
customer.
• Stay focused on executable software.
• Accommodate change early in the project.
• Baseline an executable architecture early on.
• Build your system with components.
• Work together as one team.
• Make quality a way of life, not an
afterthought.
Why RUP?
1. It accommodates changing requirements
2. Integration is not one "big bang" at the end of a
project
3. Risks are usually discovered or addressed
during early integrations
4. Reuse is facilitated
5. Defects can be found and corrected over
several iterations
6. The development process itself is improved
and refined along the way
Workflows and phases
Management
Environment
Business Modeling
Implementation
Test
Analysis & Design
Preliminary
Iteration(s)
Iter.
#1
Phases
Process Workflows
Iterations
Supporting Workflows
Iter.
#2
Iter.
#n
Iter.
#n+1
Iter.
#n+2
Iter.
#m
Iter.
#m+1
Deployment
Configuration Mgmt
Requirements
Elaboration TransitionInception Construction
time
conten
t
Workflows and phases
Major Milestones
Workflows and phases
Phases and iterations
Workflows and phases
Three Types of Projects
• Project Ganymede, a green-field development of a small
application. The initial development cycle of a brand-new
application where everything, including the requirements,
have to be designed from scratch.
• Project Mars, a green-field development of a larger
system so that we can articulate the major difference with
the first example.
• Project Jupiter, an evolution cycle of an existing large
application (the "version 2.0"); this is more representative of
a large number of RUP projects, which only evolve existing
systems and do not create them from scratch.
Our project
Lets take an existing project that needs a
new improved version.
We have a simulation system for logic
circuits and a test plan DB.
The customer wants them to communicate
and work atumaticaly.
The Inception Phase
• In this phase a business case which includes: Business
context, Success factors such as (expected revenue,
market recognition, etc), and Financial forecast are
established. Besides a business case a basic use case
model, project plan, initial risk assessment and a
document that generally describes the project (the core
project requirements, constraints and key features) are
realized.
The Inception Phase
Objectives of the Inception Phase:
1. Understand what to build. Determine the vision, the scope of the
system, and its boundaries, that is, what is inside the system and
what is outside. Identify who wants this system and what it is worth
to them.
2. Identify key system functionality. Decide which use cases (which
ways of using the system) are most critical.
3. Determine at least one possible solution. Identify at least one
candidate architecture.
4. Understand the costs, schedule, and risks associated with the
project.
5. Decide what process to follow and what tools to use.
The Inception Phase
Lifecycle Objective Milestone
• Stakeholder concurrence on scope definition and an
initial cost/schedule estimate (which will be refined in
later phases)
• Agreement that the right set of requirements has been
captured and that there is a shared understanding of
these requirements
• Agreement that the cost/schedule estimate, priorities,
risks, and development process are appropriate
• Agreement that initial risks have been identified and a
mitigation strategy exists for each
The Elaboration Phase
• Elaboration is the second of the four phases in the RUP
approach. The goal of the Elaboration phase is to define and
baseline the architecture of the system in order to provide a
stable basis for the bulk of the design and implementation
effort in the Construction phase. The architecture evolves out
of a consideration of the most significant requirements (those
that have a great impact on the architecture of the system) and
an assessment of risks.
The Elaboration Phase
Objectives of the Elaboration Phase:
1. Get a more detailed understanding of the
requirements.
2. Design, implement, validate, and baseline
the architecture.
3. Mitigate essential risks, and produce more
accurate schedule and cost estimates.
4. Refine the development case and put the
development environment in place.
The Elaboration Phase
Lifecycle Architecture Milestone
• Are the product Vision and requirements stable?
• Is the architecture stable?
• Are the key approaches to be used in testing and evaluation
proven?
• Have testing and evaluation of executable prototypes demonstrated
that the major risk elements have been addressed and resolved?
• Are the iteration plans for Construction of sufficient detail and
fidelity to allow the work to proceed?
• Are the iteration plans for the Construction phase supported by
credible estimates?
• Do all stakeholders agree that the current Vision, as defined in the
Vision Document, can be met if the current plan is executed to
develop the complete system in the context of the current
architecture?
• Are actual resource expenditures versus planned expenditures
acceptable?
The Construction Phase
In this phase the main focus goes to the development of
components and other features of the system that is
being developed. This is the phase when coding takes
place.
At the end of this phase the first release of the software
product is expected and this is a major criterion of its
milestone.
The Construction Phase
Objectives of the Construction Phase
1. Minimize development costs and achieve
some degree of parallelism.
2. Iteratively develop a complete product that
is ready to transition to its user community.
The Construction Phase
Initial Operational Capability Milestone:
1. Is this product release stable and mature
enough to be deployed in the user
community?
2. Are all the stakeholders ready for the
transition into the user community?
3. Are actual resource expenditures versus
planned expenditures still acceptable?
The Transition Phase
The focus of the Transition phase is to ensure
that the software fully addresses the needs of its
users. The Transition phase normally spans one
or two iterations that include testing the product
in preparation for release and making minor
adjustments based on user feedback.
The Transition Phase
Objectives of the Transition Phase
1. Beta test to validate that user expectations are met.
2. Train users and maintainers to achieve user self-
reliability.
3. Prepare deployment site and convert operational
databases.
4. Achieve stakeholder concurrence that deployment
baselines are complete and consistent with the
evaluation criteria of the vision.
5. Improve future project performance through lessons
learned.
The Transition Phase
Product Release Milestone
• Are the users satisfied?
• Are actual resource expenditures versus
planned expenditures acceptable, and, if
not, what actions can be taken in future
projects to address this issue?
RUP BKP
1. Develop software iteratively
2. Manage requirements
3. Use component based architecture
4. Visually model software
5. Verify software quality
6. Control changes to software
Summary
The RUP is a software development approach
that is iterative, architecture-centric, and use-
case-driven.
It is actually a framework to be tailored to create
a suitable process for a specific project.
The transition between phases is done by mile
stones reached during iterations.
It has 6 main BKPs to follow.
Summary
Questions?
Bibliography
The Rational Unified Process Made
Easy: A Practitioner's Guide to the
RUP.
By Per Kroll, Philippe Kruchten

More Related Content

What's hot

What Is the Rational Unified Process
What Is the Rational Unified ProcessWhat Is the Rational Unified Process
What Is the Rational Unified ProcessRobson Silva Espig
 
Process model
Process modelProcess model
Process model
kazim Hussain
 
RUP VS RAD Methodology
RUP VS RAD MethodologyRUP VS RAD Methodology
RUP VS RAD Methodology
thaleader
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Rody Middelkoop
 
Traditional Process Models
Traditional Process ModelsTraditional Process Models
Traditional Process Models
Ahsan Rahim
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
zeal123123
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
Hassan A-j
 
3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
Delowar hossain
 
Software development life cycle Construction phase
Software development life cycle Construction phaseSoftware development life cycle Construction phase
Software development life cycle Construction phase
REHMAT ULLAH
 
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
Abhinav Shukla
 
Software process Models
Software process ModelsSoftware process Models
Software process Models
SADEED AMEEN
 
Chapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_modelsChapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_modelsPiyush Gogia
 
A Review of RUP (Rational Unified Process)
A Review of RUP (Rational Unified Process)A Review of RUP (Rational Unified Process)
A Review of RUP (Rational Unified Process)
Waqas Tariq
 
The Software Development Process
The Software Development ProcessThe Software Development Process
The Software Development Process
Cesar Augusto Nogueira
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process Models
Nana Sarpong
 
Software process model
Software process modelSoftware process model
Software process model
Muhammad Yousuf Abdul Qadir
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
Muhammed Afsal Villan
 
Soft engg introduction and process models
Soft engg introduction and process modelsSoft engg introduction and process models
Soft engg introduction and process models
snehalkulkarni74
 

What's hot (20)

What Is the Rational Unified Process
What Is the Rational Unified ProcessWhat Is the Rational Unified Process
What Is the Rational Unified Process
 
Process model
Process modelProcess model
Process model
 
RUP VS RAD Methodology
RUP VS RAD MethodologyRUP VS RAD Methodology
RUP VS RAD Methodology
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Traditional Process Models
Traditional Process ModelsTraditional Process Models
Traditional Process Models
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
 
Software development life cycle Construction phase
Software development life cycle Construction phaseSoftware development life cycle Construction phase
Software development life cycle Construction phase
 
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
 
Software process Models
Software process ModelsSoftware process Models
Software process Models
 
Chapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_modelsChapter 2 software_development_life_cycle_models
Chapter 2 software_development_life_cycle_models
 
A Review of RUP (Rational Unified Process)
A Review of RUP (Rational Unified Process)A Review of RUP (Rational Unified Process)
A Review of RUP (Rational Unified Process)
 
The Software Development Process
The Software Development ProcessThe Software Development Process
The Software Development Process
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process Models
 
1.sdlc
1.sdlc1.sdlc
1.sdlc
 
Software process model
Software process modelSoftware process model
Software process model
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Soft engg introduction and process models
Soft engg introduction and process modelsSoft engg introduction and process models
Soft engg introduction and process models
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 

Similar to Unified process

Lect6 life cycle phases
Lect6 life cycle phasesLect6 life cycle phases
Lect6 life cycle phases
meena466141
 
GSEP - PROCESS AND CHECKPOINT
GSEP - PROCESS AND CHECKPOINTGSEP - PROCESS AND CHECKPOINT
GSEP - PROCESS AND CHECKPOINTAlex Himmelberg
 
ID, UP, & RUP.pptx
ID, UP, & RUP.pptxID, UP, & RUP.pptx
ID, UP, & RUP.pptx
Ravindranath67
 
The Waterfall Model
The Waterfall ModelThe Waterfall Model
The Waterfall Model
Damian T. Gordon
 
Software vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfSoftware vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdf
avishekpradhan24
 
Recent and-future-trends spm
Recent and-future-trends spmRecent and-future-trends spm
Recent and-future-trends spm
Prakash Poudel
 
what-is-devops.ppt
what-is-devops.pptwhat-is-devops.ppt
what-is-devops.ppt
MohammadSamiuddin10
 
Models of SDLC (Contd..) & Feasibility Study
Models of SDLC (Contd..)  & Feasibility StudyModels of SDLC (Contd..)  & Feasibility Study
Manual Software testing - software development life cycle
Manual Software testing - software development life cycleManual Software testing - software development life cycle
Manual Software testing - software development life cycle
Vibrant Technologies & Computers
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
Mubashir Ali
 
Management of time uncertainty in agile
Management of time uncertainty in agileManagement of time uncertainty in agile
Management of time uncertainty in agile
ijseajournal
 
Rup
RupRup
Rup
13ehnam
 
Software Engineering Methodologies
Software Engineering MethodologiesSoftware Engineering Methodologies
Software Engineering MethodologiesDamian T. Gordon
 
Rational unified process lecture-5
Rational unified process lecture-5Rational unified process lecture-5
Rational unified process lecture-5
MujiAhsan
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
Rupesh Vaishnav
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
Azhar Shaik
 
Conventional software Management---.pptx
Conventional software Management---.pptxConventional software Management---.pptx
Conventional software Management---.pptx
TONY562
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
Masoud Kalali
 

Similar to Unified process (20)

Lect6 life cycle phases
Lect6 life cycle phasesLect6 life cycle phases
Lect6 life cycle phases
 
GSEP - PROCESS AND CHECKPOINT
GSEP - PROCESS AND CHECKPOINTGSEP - PROCESS AND CHECKPOINT
GSEP - PROCESS AND CHECKPOINT
 
ID, UP, & RUP.pptx
ID, UP, & RUP.pptxID, UP, & RUP.pptx
ID, UP, & RUP.pptx
 
The Waterfall Model
The Waterfall ModelThe Waterfall Model
The Waterfall Model
 
Software vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfSoftware vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdf
 
Recent and-future-trends spm
Recent and-future-trends spmRecent and-future-trends spm
Recent and-future-trends spm
 
what-is-devops.ppt
what-is-devops.pptwhat-is-devops.ppt
what-is-devops.ppt
 
Models of SDLC (Contd..) & Feasibility Study
Models of SDLC (Contd..)  & Feasibility StudyModels of SDLC (Contd..)  & Feasibility Study
Models of SDLC (Contd..) & Feasibility Study
 
Manual Software testing - software development life cycle
Manual Software testing - software development life cycleManual Software testing - software development life cycle
Manual Software testing - software development life cycle
 
system development life cycle
system development life cyclesystem development life cycle
system development life cycle
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
 
Management of time uncertainty in agile
Management of time uncertainty in agileManagement of time uncertainty in agile
Management of time uncertainty in agile
 
Rup
RupRup
Rup
 
Software Engineering Methodologies
Software Engineering MethodologiesSoftware Engineering Methodologies
Software Engineering Methodologies
 
Ppt nardeep
Ppt nardeepPpt nardeep
Ppt nardeep
 
Rational unified process lecture-5
Rational unified process lecture-5Rational unified process lecture-5
Rational unified process lecture-5
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Conventional software Management---.pptx
Conventional software Management---.pptxConventional software Management---.pptx
Conventional software Management---.pptx
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
 

More from Jean Pаoli

CMMi 4 techstaff
CMMi 4 techstaffCMMi 4 techstaff
CMMi 4 techstaffJean Pаoli
 
eXtreme programming
eXtreme programmingeXtreme programming
eXtreme programmingJean Pаoli
 
SW development process and the leading indicator
SW development process and the leading indicatorSW development process and the leading indicator
SW development process and the leading indicatorJean Pаoli
 
Effective prioritization & zbb
Effective prioritization & zbbEffective prioritization & zbb
Effective prioritization & zbbJean Pаoli
 
PMC post implementation review
PMC post implementation reviewPMC post implementation review
PMC post implementation reviewJean Pаoli
 
Design patterns intro
Design patterns introDesign patterns intro
Design patterns introJean Pаoli
 
Innovation management speaker notes
Innovation management speaker notesInnovation management speaker notes
Innovation management speaker notesJean Pаoli
 
Diversity in thinking styles (part 1)
Diversity in thinking styles (part 1)Diversity in thinking styles (part 1)
Diversity in thinking styles (part 1)Jean Pаoli
 
Mgmt forum MTC 5
Mgmt forum MTC 5Mgmt forum MTC 5
Mgmt forum MTC 5Jean Pаoli
 
Stress management
Stress managementStress management
Stress managementJean Pаoli
 
Cohr managing stress training
Cohr managing stress trainingCohr managing stress training
Cohr managing stress trainingJean Pаoli
 

More from Jean Pаoli (16)

CMMi 4 techstaff
CMMi 4 techstaffCMMi 4 techstaff
CMMi 4 techstaff
 
eXtreme programming
eXtreme programmingeXtreme programming
eXtreme programming
 
SW development process and the leading indicator
SW development process and the leading indicatorSW development process and the leading indicator
SW development process and the leading indicator
 
Effective prioritization & zbb
Effective prioritization & zbbEffective prioritization & zbb
Effective prioritization & zbb
 
PMC post implementation review
PMC post implementation reviewPMC post implementation review
PMC post implementation review
 
Pmp study: time
Pmp study: timePmp study: time
Pmp study: time
 
PMP study TTT
PMP study TTTPMP study TTT
PMP study TTT
 
Design patterns intro
Design patterns introDesign patterns intro
Design patterns intro
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Innovation management speaker notes
Innovation management speaker notesInnovation management speaker notes
Innovation management speaker notes
 
Diversity in thinking styles (part 1)
Diversity in thinking styles (part 1)Diversity in thinking styles (part 1)
Diversity in thinking styles (part 1)
 
Mgmt forum MTC 5
Mgmt forum MTC 5Mgmt forum MTC 5
Mgmt forum MTC 5
 
Stress
StressStress
Stress
 
Stress management
Stress managementStress management
Stress management
 
Cohr managing stress training
Cohr managing stress trainingCohr managing stress training
Cohr managing stress training
 
08060 c foils
08060 c foils08060 c foils
08060 c foils
 

Recently uploaded

20 slides of research movie and artists .pdf
20 slides of research movie and artists .pdf20 slides of research movie and artists .pdf
20 slides of research movie and artists .pdf
ameli25062005
 
Design Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinkingDesign Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinking
cy0krjxt
 
7 Alternatives to Bullet Points in PowerPoint
7 Alternatives to Bullet Points in PowerPoint7 Alternatives to Bullet Points in PowerPoint
7 Alternatives to Bullet Points in PowerPoint
Alvis Oh
 
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
asuzyq
 
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
7sd8fier
 
vernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdfvernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdf
PrabhjeetSingh219035
 
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
smpc3nvg
 
Borys Sutkowski portfolio interior design
Borys Sutkowski portfolio interior designBorys Sutkowski portfolio interior design
Borys Sutkowski portfolio interior design
boryssutkowski
 
Mohannad Abdullah portfolio _ V2 _22-24
Mohannad Abdullah  portfolio _ V2 _22-24Mohannad Abdullah  portfolio _ V2 _22-24
Mohannad Abdullah portfolio _ V2 _22-24
M. A. Architect
 
一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理
一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理
一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理
jyz59f4j
 
Transforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting ProfitabilityTransforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting Profitability
aaryangarg12
 
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
h7j5io0
 
一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理
一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理
一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理
9a93xvy
 
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdfPORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
fabianavillanib
 
Top Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdfTop Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdf
PlanitIsrael
 
一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理
一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理
一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理
h7j5io0
 
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
7sd8fier
 
一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理
一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理
一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理
708pb191
 
Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...
Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...
Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...
Mansi Shah
 
Design Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinkingDesign Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinking
cy0krjxt
 

Recently uploaded (20)

20 slides of research movie and artists .pdf
20 slides of research movie and artists .pdf20 slides of research movie and artists .pdf
20 slides of research movie and artists .pdf
 
Design Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinkingDesign Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinking
 
7 Alternatives to Bullet Points in PowerPoint
7 Alternatives to Bullet Points in PowerPoint7 Alternatives to Bullet Points in PowerPoint
7 Alternatives to Bullet Points in PowerPoint
 
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
 
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
 
vernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdfvernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdf
 
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
 
Borys Sutkowski portfolio interior design
Borys Sutkowski portfolio interior designBorys Sutkowski portfolio interior design
Borys Sutkowski portfolio interior design
 
Mohannad Abdullah portfolio _ V2 _22-24
Mohannad Abdullah  portfolio _ V2 _22-24Mohannad Abdullah  portfolio _ V2 _22-24
Mohannad Abdullah portfolio _ V2 _22-24
 
一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理
一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理
一比一原版(LSE毕业证书)伦敦政治经济学院毕业证成绩单如何办理
 
Transforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting ProfitabilityTransforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting Profitability
 
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
 
一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理
一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理
一比一原版(RHUL毕业证书)伦敦大学皇家霍洛威学院毕业证如何办理
 
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdfPORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
 
Top Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdfTop Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdf
 
一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理
一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理
一比一原版(Bolton毕业证书)博尔顿大学毕业证成绩单如何办理
 
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
 
一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理
一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理
一比一原版(UAL毕业证书)伦敦艺术大学毕业证成绩单如何办理
 
Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...
Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...
Between Filth and Fortune- Urban Cattle Foraging Realities by Devi S Nair, An...
 
Design Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinkingDesign Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinking
 

Unified process

  • 1. Unified Process Introduction to Rational Unified process Martin Terreni
  • 2. Agenda • What is a software engineering process? • Waterfall model • What is RUP? • Why RUP? • RUP workflows and phases • RUP BKP • Summary • Bibliography
  • 3. What is a software engineering process? • First –what is not? – It is not UML! (it is not any modeling or coding language at all!) – It is not planning MPOR Items and there schedule (though it is related…). – It is not writing lot of IPS, EPS and other over head docs (and if it is all you are doing something wrong).
  • 4. What is a software engineering process? • Then what IS IT? – Who is doing what, when and how (and WHY!!)
  • 5. Waterfall model Completely understand requirements, finish design, code, test and only then implement.
  • 6. Waterfall Process Assumptions • Requirements are known up front before design • Requirements rarely change • Users know what they want, and rarely need visualization • Design can be conducted in a purely abstract space, or trial rarely leads to error • The technology will all fit nicely into place when the time comes (the apocalypse) • The system is not so complex. (Drawings are for wimps)
  • 7. What is RUP? “a web-enabled software engineering process that enhances team productivity and delivers software best practices to all team members” The Rational Unified Process, 2nd Edition
  • 8. What is RUP? • RUP is a method of managing OO Software Development • It can be viewed as a Software Development Framework which is extensible .
  • 9. What is RUP? The Spirit of RUP: • Attack major risks early and continuously…or they will attack you. • Ensure that you deliver value to your customer. • Stay focused on executable software. • Accommodate change early in the project. • Baseline an executable architecture early on. • Build your system with components. • Work together as one team. • Make quality a way of life, not an afterthought.
  • 10. Why RUP? 1. It accommodates changing requirements 2. Integration is not one "big bang" at the end of a project 3. Risks are usually discovered or addressed during early integrations 4. Reuse is facilitated 5. Defects can be found and corrected over several iterations 6. The development process itself is improved and refined along the way
  • 11. Workflows and phases Management Environment Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter. #1 Phases Process Workflows Iterations Supporting Workflows Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Configuration Mgmt Requirements Elaboration TransitionInception Construction time conten t
  • 13. Workflows and phases Phases and iterations
  • 14. Workflows and phases Three Types of Projects • Project Ganymede, a green-field development of a small application. The initial development cycle of a brand-new application where everything, including the requirements, have to be designed from scratch. • Project Mars, a green-field development of a larger system so that we can articulate the major difference with the first example. • Project Jupiter, an evolution cycle of an existing large application (the "version 2.0"); this is more representative of a large number of RUP projects, which only evolve existing systems and do not create them from scratch.
  • 15. Our project Lets take an existing project that needs a new improved version. We have a simulation system for logic circuits and a test plan DB. The customer wants them to communicate and work atumaticaly.
  • 16. The Inception Phase • In this phase a business case which includes: Business context, Success factors such as (expected revenue, market recognition, etc), and Financial forecast are established. Besides a business case a basic use case model, project plan, initial risk assessment and a document that generally describes the project (the core project requirements, constraints and key features) are realized.
  • 17. The Inception Phase Objectives of the Inception Phase: 1. Understand what to build. Determine the vision, the scope of the system, and its boundaries, that is, what is inside the system and what is outside. Identify who wants this system and what it is worth to them. 2. Identify key system functionality. Decide which use cases (which ways of using the system) are most critical. 3. Determine at least one possible solution. Identify at least one candidate architecture. 4. Understand the costs, schedule, and risks associated with the project. 5. Decide what process to follow and what tools to use.
  • 18. The Inception Phase Lifecycle Objective Milestone • Stakeholder concurrence on scope definition and an initial cost/schedule estimate (which will be refined in later phases) • Agreement that the right set of requirements has been captured and that there is a shared understanding of these requirements • Agreement that the cost/schedule estimate, priorities, risks, and development process are appropriate • Agreement that initial risks have been identified and a mitigation strategy exists for each
  • 19. The Elaboration Phase • Elaboration is the second of the four phases in the RUP approach. The goal of the Elaboration phase is to define and baseline the architecture of the system in order to provide a stable basis for the bulk of the design and implementation effort in the Construction phase. The architecture evolves out of a consideration of the most significant requirements (those that have a great impact on the architecture of the system) and an assessment of risks.
  • 20. The Elaboration Phase Objectives of the Elaboration Phase: 1. Get a more detailed understanding of the requirements. 2. Design, implement, validate, and baseline the architecture. 3. Mitigate essential risks, and produce more accurate schedule and cost estimates. 4. Refine the development case and put the development environment in place.
  • 21. The Elaboration Phase Lifecycle Architecture Milestone • Are the product Vision and requirements stable? • Is the architecture stable? • Are the key approaches to be used in testing and evaluation proven? • Have testing and evaluation of executable prototypes demonstrated that the major risk elements have been addressed and resolved? • Are the iteration plans for Construction of sufficient detail and fidelity to allow the work to proceed? • Are the iteration plans for the Construction phase supported by credible estimates? • Do all stakeholders agree that the current Vision, as defined in the Vision Document, can be met if the current plan is executed to develop the complete system in the context of the current architecture? • Are actual resource expenditures versus planned expenditures acceptable?
  • 22. The Construction Phase In this phase the main focus goes to the development of components and other features of the system that is being developed. This is the phase when coding takes place. At the end of this phase the first release of the software product is expected and this is a major criterion of its milestone.
  • 23. The Construction Phase Objectives of the Construction Phase 1. Minimize development costs and achieve some degree of parallelism. 2. Iteratively develop a complete product that is ready to transition to its user community.
  • 24. The Construction Phase Initial Operational Capability Milestone: 1. Is this product release stable and mature enough to be deployed in the user community? 2. Are all the stakeholders ready for the transition into the user community? 3. Are actual resource expenditures versus planned expenditures still acceptable?
  • 25. The Transition Phase The focus of the Transition phase is to ensure that the software fully addresses the needs of its users. The Transition phase normally spans one or two iterations that include testing the product in preparation for release and making minor adjustments based on user feedback.
  • 26. The Transition Phase Objectives of the Transition Phase 1. Beta test to validate that user expectations are met. 2. Train users and maintainers to achieve user self- reliability. 3. Prepare deployment site and convert operational databases. 4. Achieve stakeholder concurrence that deployment baselines are complete and consistent with the evaluation criteria of the vision. 5. Improve future project performance through lessons learned.
  • 27. The Transition Phase Product Release Milestone • Are the users satisfied? • Are actual resource expenditures versus planned expenditures acceptable, and, if not, what actions can be taken in future projects to address this issue?
  • 28. RUP BKP 1. Develop software iteratively 2. Manage requirements 3. Use component based architecture 4. Visually model software 5. Verify software quality 6. Control changes to software
  • 29. Summary The RUP is a software development approach that is iterative, architecture-centric, and use- case-driven. It is actually a framework to be tailored to create a suitable process for a specific project. The transition between phases is done by mile stones reached during iterations. It has 6 main BKPs to follow.
  • 32. Bibliography The Rational Unified Process Made Easy: A Practitioner's Guide to the RUP. By Per Kroll, Philippe Kruchten

Editor's Notes

  1. We are going to walk to RUP basics, specially what may be useful for as in DT. Lat time we learn the words, UML (how to say things) now we will learn the syntax (What to say and how to say it).
  2. This means that also just coding is a kind of process, the secret is to define it and control it to get the best of it. Otherwise your just flowing through it not taking all advantages you could.
  3. It is the classic development model. The most easy to implement. 1) First you make ALL requirements (which means there can be no more!) 2) Then you make ALL design (If any design problems are found later “coders will have to deal with it”) 3) Make all Code (no integration testing!) 3) Test all ( BOOM!!!)
  4. Mainly (and for our interest) process. Though it does have a tool related to it, which can makes it even better, it is not necessary.
  5. A FRAMEWORK!!! NOT A PROCESS!!! The specific development process for each team and each project is to be tailored from RUP bricks to suite the specific needs.
  6. A FRAMEWORK!!! NOT A PROCESS!!! The specific development process for each team and each project is to be tailored from RUP bricks to suite the specific needs. Why it is bricks? Because you decide how it actually will look and what output artifacts are needed.
  7. Of course all advantages of iterative development. 1 – to certain level, since requirements are taken and refined on the run. 2 – ongoing integration/ testing, allows solving problems while they are relatively minor. 3 – biggest risks are faced earlier (first reqs., then design etc.) 4 – component architecture driven process. 5 – avoiding a BOOM of bugs. 6 – iterations model might be changed during the iterations.
  8. Dynamic structure. The horizontal dimension represents the dynamic structure or time dimension of the process. It shows how the process, expressed in terms of cycles, phases, iterations, and milestones, unfolds over the lifecycle of a project Static structure. The vertical dimension represents the static structure of the process. It describes how process elements—activities, disciplines, artifacts, and roles—are logically grouped into core process disciplines (or workflows).
  9. There is no chronological or end of artifact that represents end of phase, but rather the achievement of certain maturity level in each phase. This allows iterative work and continuation of workflows avoiding big-bans.
  10. Every phase might include a number of iterations until the maturity level needed for millstone is reached. Each iteration virtually includes all phases by it self.
  11. We are going to seek all three projects but mainly Jupiter.
  12. Mainly – what does the client expect? Is it worth it? Does every body else agree on this points? Maybe also build some kind of ad-hock visualization (GUI, or in our case a “clandestine connection” and some running scripts). It might have nothing to do with actual implementation of solution but it will get you and your costumer a more “eye to eye” vision of project.
  13. 1 – High level EPS 2 – Actual Use Cases 3 – Mostly though high level modules and lairs. 4 – Make all scheduling and financing plan (at least accurate enough to get going). 5 – configure your process with RUP bricks (dynamic –might change).
  14. Get main architecture designed and basic parts running so you can check with stake holders you know what they want, you can recheck your plans and you have a design and code skeleton for project base line.
  15. 1 – We want a detail understanding of most of use cases. 2 – Specially your main skeleton structure. Build main interfaces and infrastructure to a level you can compile run and test main functionalities. 3 – By doing 1 and 2 you can refine planning and mitigate technological risks. 4 – Refine the process you will use for further iterations.
  16. This is the main coding/design phase. The skeleton done in elaboration phase will be use as base line for all the rest of the system. Also taking care of finishing requirements for all left use cases. This development is done iteratively. Also it is the most time/resources consuming phase. It is also advised to do a beta deployment.
  17. 1 – Develop in components (plug ins) so you can develop in parallel. 2 - You design a little, code a little test a little. Some claim design should be done from skeleton out in iterations.
  18. 1 – How did the testing (beta testing?) go? Does it cover all requirements 2 – Did they get any training? Are sites physically ready for deployment? DBs? 3 – just checking.
  19. 1 – Some bug fixes and usability. 2 – To prevent “not a defect” bugs, High support load and customer miss conform. 3 – Prepare HW, libs. OS, DBs etc. 4 – Make sure customer agrees you cover all vision and requirements! Else you might do it all again… 5 – Postmortem, documentation and process tuning.
  20. And I would add –is it buggy?
  21. 1 – Design a little, code a little and test a little. 2 – Be sure you understand what you are supposed to do. Identify, communicate, track and manage changes in requirements. 3 – Parallel developing, reduces spreading bugs and big bans. It is also more scalable, understandable and its basic OO developing. 4 – UML. Faster understanding, trouble shooting and better desing. 5 – Unit test, flow test, regressions and….TESTING! 6 – Configuration Management.