This preview shows page 1. Sign up to view the full content.
Unformatted text preview: Rational Unified Process Part 2
Original slides modified for instructional purposes. Originally designed by Rational Software Corporation
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 1 /26 Introduction to Rational Unified Process - Continued Chapter 2 Text CONTINUE to read the RUP, third edition, especially chapters 3-6 I assume you have very carefully read chapters 1 and 2 at a minimum.
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 2 /26 Process Architecture - Lifecycle Phases
Inception Elaboration Construction Transition time The Rational Unified Process has four phases: At the milestones, we have: Inception - Define the scope of project What is included; what is not; identify all actors and use cases; draft about 20% of essential use cases; High level identification. Lots of artifacts: Business Rules, Vision, desired Features, Domain Model, costs, schedule, Risk List, Business modeling, and more) Elaboration - Plan project, Specify features, Baseline Architecture; have about 80% of essential requirements identified; Good grasp of requirements and architecture. Reduce risk. Most key analysis and design done. (often a couple of iterations...) Construction - Build the product via several iterations; up to beta release; Essentially more design, programming and unit test; iterations; assessment, ... Several iterations (time-boxed)... Transition - Transition the product to end user community; end-user training and support; installation, etc. (Here again, lots of activities: clean up, plan next evolution?? etc.)
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 3 /26 development cycle iteration phase inc. elaboration construction transition milestone An iteration endpoint when some significant decision or evaluation occurs. release A stable executable subset of the final product. The end of each iteration is a minor release. increment The difference (delta) between the releases of 2 subsequent iterations. final production release At this point, the system is released for production use. Fig 2.6 UP phases overview
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 4 /26 4 Number of Iterations? Amount of time spent in each varies; sometimes 3-5 iterations in construction; For a simple project one iteration in elaboration; Can be very complex. Most practitioners suggest six plus or minus three iterations! Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 5 /26 Phase Boundaries Mark Major Milestones
time Lifecycle Objective Milestone Lifecycle Architecture Milestone Initial Operational Capability Milestone Product Release Elaboration Construction Transition Note the titles of the Milestones. At each of the major milestones, the project is reviewed and a decision made as to whether to proceed with the project as planned, to abort the project, or to revise it. The criteria used to make this decision vary by phase. These are indeed MAJOR milestones! Lots of evaluation criteria as we move from phase to phase... (next overhead.)
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 6 /26 Major Milestones Evaluation Criteria (at end of phase) Inception phase (LCO Life Cycle Objective Milestone) include: Stakeholder concurrence on scope definition and cost/schedule estimates; Business Model, business vision, and related business / domain related documents developed and verified. Requirements understanding as evidenced by the fidelity of the primary Use-Cases of new application; Very high level. Credibility of cost/schedule estimates, priorities, risks, and development process; Clear vision of project Depth and breadth of architectural prototype; High level. Perhaps some basic modeling... actual expenditures versus planned expenditures All stakeholders `on same page.' Go - No-go decision.
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 7 /26 Major Milestones Evaluation Criteria (at end of phase) Elaboration phase (LCA Architecture Milestone) include: Stability of the product vision; Resolution of major risk elements; Adequate planning and reasonable estimates for project completion; Note: we really don't have a `time projection' until this milestone. Stakeholder acceptance of the product vision and project plan; Acceptable expenditure level. A base line architecture established. (note title of milestone!) Around 80% of use cases captured, modeled, and understood. Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 8 /26 Major Milestones Evaluation Criteria (at end of phase) Construction phase (IOC Initial Operational Capability Milestone) stability and maturity of the product release (i.e., is it ready to be deployed? ready to go into beta?); readiness of the stakeholders for the transition; acceptable expenditure level. Note, again, title of milestone. Are we ready to ease into transitioning to the new application? alpha, beta testing training customer service transition plans established.... configuration management?
9 Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved /26 Major Milestones Evaluation Criteria (at end of phase) Transition phase, (Product Release) - a decision is made whether to release the product. This will be based primarily on the level of user satisfaction achieved during the transition phase. Note: considerable testing takes place during Transition. Chance for remedial maintenance prior to release. Often this milestone coincides with the initiation of another development cycle / evolution to improve or enhance the product. In many cases, this new development cycle may already be underway. This phase also includes training, user documentation, clean-up Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 10 /26 Iterations and Phases
Inception Elaboration Construction
Devel. Iteration Transition Preliminary Architect. Architect. Devel. Iteration Iteration Iteration Iteration Devel. Transition Transition Iteration Iteration Iteration Minor Milestones: Releases An iteration is a distinct sequence of activities with an established plan and evaluation criteria, resulting in an `executable' release (internal or external) and assessment of the iteration Number of iterations per phase is variable. Each iteration can result in an executable release where the system evolves into a large system. (I prefer the term `base-lining' or `versioning' vice executable release. But there is quite a difference between the two terms.)
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 11 /26 Releases Internal and External An internal release is kept within the development environment and (optionally) demonstrated to the stakeholder community. (Depends on nature of iteration) An external release is provided to stakeholders (usually users) for installation in their own environment. May be for operational testing prior to Product Release, ... External releases are much more expensive (they require user documentation and technical support) and normally occur only during the transition phase. Remember, ends of an iteration marks a minor milestone. end of a phase marks a major milestone. Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 12 /26 :Major Disciplines (Activities) Produce Models:
Business Use-Case Model The business itself; generally larger than the application domain of project..., Business Business Vision, Business Rules, Object Model Domain Model... realized by The RUP is a model-driven approach; Models are needed to fully describe the application from viewpoints of different stakeholders. by implemented Requirements
Use-Case Model Analysis & Design Design Model Implementation
Implementation Model verified by Test In more detail:
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 13 Test Model
/26 Major Models The Business Model is a model of what the business processes are and the business environment. (Very Important!!) What is the application domain? It can be used to generate requirements on supporting information systems. The Use-Case Model is model of what the application is supposed to do and its environment. (functional requirements) Create Use Case diagrams and Use Case Narratives (Specification) The Analysis and Design Model may be considered an object model that realizes the Use-Cases. Serves as abstraction of the implementation model and its source code. Create analysis and design classes, interaction diagrams Architecture-centric. The Implementation Model is a collection of components, and the implementation subsystems that contain them. Primarily programming realizing the design model; unit testing and more.
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved The Test Model encompasses all of the test cases and procedures required to test the system. (test plans; test scripts; test suites, etc.)
/26 Development team verification; user validation
14 Bringing It All Together: The Iterative Model
Development Team Focus Phases Core Process Disciplines
Business Modeling Requirements Analysis & Design Implementation Test Deployment Inception Elaboration Construction In an iteration, you walk through Transition all disciplines. Core Supporting Disciplines
Disciplines group activities logically
Configuration & Change Mgmt Project Management Environment
Preliminary Iteration(s) Iter. #1 Iter. #2 Iter. #n Iter. Iter. #n+1 #n+2 Relative amount of color shows level of activity in each iteration Iter. #m Iter. #m+1 Iterations
15 Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved /26 Summary these last two sets of slides: (1 of 2) The Unified Modeling Language (UML) is a language for specifying, visualizing, constructing, and documenting the artifacts of a software-intensive system A software development process defines Who is doing What, When and How in building a software product The Rational Unified Process has four phases: Inception, Elaboration, Construction and Transition Each phase ends at a major milestone and contains one or more iterations An iteration is a distinct sequence of activities with an established plan and evaluation criteria, resulting in an executable release
Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 16 /26 Summary (cont.): A discipline groups related activities together Rational Team Concert is a framework within which the development activities are defined and executed RTC can be used to manage agile planning, process definition, defect tracking, build management, and reporting. Users can use the software to track and manage the relationships between artifacts and promote best practices for development and gather project information. Unified Software Practices v 5.0-D Copyright 1998 Rational Software, all rights reserved 17 /26 ...
View Full Document
This note was uploaded on 10/04/2011 for the course CEN 6016 taught by Professor Bobroggio during the Fall '11 term at University of South Florida.
- Fall '11