Unified Software Development Process (UP) Also known as software engineering process SEP describes...
19
Unified Software Development Process (UP) • Also known as software engineering process • SEP describes how requirements are turned into software • Defines who, what, when and how of developing software. • UML is the visual part • UP is the process part
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
Unified Software Development Process (UP) Also known as
software engineering process SEP describes how requirements are
turned into software Defines who, what, when and how of developing
software. UML is the visual part UP is the process part
Slide 2
A divide and conquer approach to capture and handle complexity
The complete large system may be incomprehensible Break down into
blocks Large blocks are called subsystems Subsystems are made up of
components
Slide 3
Also try to describe how the components and subsystems are to
be used Describe the intended interaction and sequence of
interactions SEP specification work started in 1967
Interactive-Iterative development was formalized
Slide 4
RUP is a commercial variant of UP Who introduces the concept of
worker or roles When describes activities to be performed by
individuals or teams A sequence of related activities is known as a
workflow What describes artifacts (inputs and outputs) in other
words : deliverables
Slide 5
UP instantiation Setting up the environment Setting up the
standards Setting up tracking process and reports Adopting quality
control methods Permeate this mindset through the organization
Slide 6
UP axioms Identify and develop use cases Do risk analysis of
software development Risk analysis done by project manager and
architect Architect strategic aspects of system composition and its
deployment on hardware
Slide 7
Stepwise requirement Mini projects contain all elements of a
complete software development Planning Analysis and design
Construction Integration and testing Internal/external release
Complete documentation Baseline increments
Slide 8
Requirements what the system should do Analysis refining and
structuring/modeling requirements Design system architecture, with
details, that realizes the requirements Implementation building the
software Test verifying the software against requirements
Slide 9
Projects can be a sequence of steps/iteration Identify
dependencies Parallelize activities Agreed baselines Review of each
phase Formal process of change management
Slide 10
Inception life cycle objectives (initiate project) Establish
feasibility Create business case Capturing essential requirements
and scope Identifying critical risks Project managers and system
architect Mostly requirements and analysis Maybe prototype for
proof of concept Not much testing
Slide 11
Inception Milestones MilestoneDeliverable Project
ObjectivesVision Document Scope and Key requirements Understood
Initial Use-case model + Glossary Cost and Schedule
Estimate/Business case made Project Plan and Estimate signed off
Risk AssessmentRisk Assessment document Feasibility
StudiesPrototypes developed Outline ArchitectureInitial
Architecture Document
Slide 12
Elaboration life cycle architecture (establishing project)
Create a baseline architecture Refine risk assessment Define
quality attributes Capture use cases and functional requirements
Detailed plan for construction Establish core workflows w.r.t.
requirements, analysis and design
Slide 13
Elaboration Milestones MilestoneDeliverable Detailed executable
and architectural model UML Static and Dynamic Model, Use- case
Model Vision well definedVision Document /Glossary revised Risk
re-assessedRevised Risk Assessment document Usability agreed with
stakeholdersSRS document with details Project Plan with
detailsProject Plan document and dissemination Agreement for
ContinuationProject Signoff
Slide 14
Construction initial operational capability (implementation)
Ensuring consistency with the goals of the first two phases
Maintenance and flexibility are core issues Detect inconsistencies
or hidden requirements Finish analysis and design model Code
Test
Slide 15
Construction Milestones MilestoneDeliverable Develop a stable
software that is deployable Software product, UML Models, Test
Suite Stakeholders ready for transitionUser manuals, release
preparation Cost re-evaluationRevise project plan
Slide 16
Transition product release deployment Correct defects Prepare
user site Customize software for user Modify for unforeseen needs
Manuals and documentation Consultancy and training Project review
Mainly testing and acceptance testing at user site
Slide 17
Transition Milestones MilestoneDeliverable Beta testing
completed, changes made and stakeholders agree on successful
deployment Software product Users using the productFeedback Product
SupportUser support plans
Slide 18
Stages within UP Get off ground with prototype Develop project
model with baseline increments Detail requirements and develop
structured use cases Specify details for implementation for
functional and non-functional requirements with flexibility
Implement, module/unit test Performance testing, field testing,
deployment setup Release, customize and maintain
Slide 19
Different Hats Systems Analyst Requirements Engineer Use-case
engineer Software analyst Design Engineer Architect Component
Engineer