Unified Software Development Process (UP) Also known as software engineering process SEP describes...
Preview:
Citation preview
- Slide 1
- 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