Rational Unified Process

Slides:



Advertisements
Similar presentations
September 2008Mike Woodard Rational Unified Process Key Concepts Mike Woodard.
Advertisements

Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
Arlow and Neustadt ch.21 What is the unified process? People are more important than any process. Good people with a good process will outperform good.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 4: Phase Management - Elaboration.
Rational Unified Process Software Engineering Lab. Summer 2006.
NJIT From Inception to Elaboration Chapter 8 Applying UML and Patterns Craig Larman.
Software Project Transition Planning
Copyright  Larry Dribin, Ph.D. SE470_ProjMgmt_v1.ppt SE470 - ProjMgmt - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Iterative development and The Unified process
Page 1 R Risk-Driven and Iterative Development. Page 2 R Copyright © 1997 by Rational Software Corporation What the Iterative Life Cycle Is Not It is.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
The web application development process Basharat Mahmood, COMSATS Institute of Information Technology, Islamabad, Pakistan. 1.
Unified Process Review
Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 /26 RUP Architecture.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
By: Muhammad Raza Ali Khan
George Blank University Lecturer. Iterative, Evolutionary, and Agile Introduction to the Rational Unified Process.
UML - Development Process 1 Software Development Process Using UML (2)
PRJ270: Essentials of Rational Unified Process
Rational Unified Process
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
Software Engineering Chapter 15 Construction Leads to Initial Operational Capability Fall 2001.
RUP Fundamentals - Instructor Notes
Software Development *Life-Cycle Phases* Compiled by: Dharya Dharya Daisy Daisy
Software Engineering Chapter 12 The Generic Iteration Workflow Fall 2000.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Rational Unified Process (Part 1) CS3300 Fall 2015.
Rational Unified Process Fundamentals Module 4: Disciplines II.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
RUP Fundamentals - Instructor Notes
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
Object Oriented Design and Analysis Rational Unified Process.
Iterative Project Management Chapter 3.2 – The Unified Process Modified considerably by Instructor Class Discussions / Presentations.
Rational Unified Process , Introduction to UML. What is RUP? The Rational Unified Model is a software engineering process Both process and product Provides.
Chapter – 9 Checkpoints of the process
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 6: Phase Management -Transition.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
Fifth Lecture Hour 9:30 – 10:20 am, September 9, 2001 Framework for a Software Management Process – Life Cycle Phases (Part II, Chapter 5 of Royce’ book)
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
RUP Fundamentals Instructor Notes
Inception Chapter 4 Applying UML and Patterns -Craig Larman.
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
Chapter 8 Workflows of the Process Taken from Walker Royce’s textbook – Software Project Management plus a number of Personal Comments.
Project Initiation at The Regence Group 12/19/2015John Garrigues1.
Software Project Management (SEWPZG622) BITS-WIPRO Collaborative Programme: MS in Software Engineering SECOND SEMESTER /1/ "The content of this.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
An organizational structure is a mostly hierarchical concept of subordination of entities that collaborate and contribute to serve one common aim... Organizational.
Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts Rational Unified Process Fundamentals Module 4: Core Workflows II - Concepts.
Rational Unified Process (RUP)
Requirements Management Overview NIGMS Software Development.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 /26 Rational Unified Process – Part 2 Original slides modified.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
Process 4 Hours.
Iterative, Evolutionary, and Agile Rational Unified Process
Unified Process Source & Courtesy: Jing Zou.
Unified Process (UP).
Rational Unified Process
Chapter 2 – Software Processes
Presentation transcript:

Rational Unified Process Methodology used by Rational Rose

Process Structure Two dimensions. Horizontal axis represents time and shows the lifecycle aspects of the process as it unfolds. Vertical axis represents core process workflows, which group activities logically by nature.

Two dimensions of RUP

Phases Inception Elaboration Construction Transition

Inception objectives Establish software scope and boundary conditions. operational concept. acceptance criteria. descriptions of what is and what is not included. Discriminate critical Use Cases of the system. primary scenarios of behaviour. Exhibit at least one candidate architecture. Estimate overall cost. Estimate risks.

Inception activities Formulate scope of project Plan and prepare a business case and evaluate alternatives for risk management, staffing, project plan Synthesise a candidate architecture.

Outcome of inception A ‘vision’ document, i.e., a general vision of the core projects requirements, key features and main constraints. A Use-Case model survey – all Use Cases and Actors that can be identified so far. An initial project glossary. An initial business case including business context, success criteria and financial forecast. Initial risk assessment. Project plan, with phases and iterations.

Other artifacts produced Initial Use Case model (10%-20% complete) A domain model static picture of scope. A business model (if necessary)workflow. A preliminary development case description to specify the process used. One or several prototypes. Behavioral, Structural, Exploratory or Evolutionary.

Evaluation criteria at end Agreement on scope definition and cost and schedule estimates Requirements understanding as shown by the correctness of the primary Use Cases. Credibility of the cost and schedule estimates, priorities, risks and development process. Depth and breadth of any architectural prototype that was developed. Actual expenditure v planned expenditure.

Elaboration objectives To analyse the problem domain. Establish a sound architectural foundation. Develop the project plan. Eliminate high-risk elements.

Elaboration objectives Define, validate and agree the architecture as quickly as possible. Agree the vision that came from the inception phase. Agree a plan for the construction phase. Demonstrate that the architecture will support this vision for a reasonable cost in a reasonable time. Vision is the mission statement of the project

Elaboration activities The vision is elaborated and a solid understanding is established of the most critical Use Cases that drive the architectural and planning decisions. The Process, the infrastructure and the development environment are elaborated, and the process, tools and automation support are put into place.

Elaboration activities The architecture is elaborated and components are selected. Potential components are evaluated. make / buy / reuse decisions determine the construction phase cost and schedule. Architectural components integrated and assessed against primary scenarios. This is done iteratively.

Outcome of elaboration Use Case model (at least 80% complete). All Use Cases identified. All Actors identified. Most Use-Case descriptions developed. Supplementary requirements. (non-functional or not associated with a Use Case) Software architecture description.

Outcome of elaboration Executable architectural prototype. Revised risk list and revised business case. Development plan for overall project. coarse grained project plan, with iterations and evaluation criteria for each iteration. Updated development case that specifies process to be used. Preliminary user manual (optional). An executable architecture is a partial implementation of the system, built to demonstrate selected system functions and properties, in particular those satisfying non-functional requirements. It is built during the elaboration phase to mitigate risks related to performance, throughput, capacity, reliability and other 'ilities', so that the complete functional capability of the system may be added in the construction phase on a solid foundation, without fear of breakage. It is the intention of the RUP that the executable architecture be built as an evolutionary prototype, with the intention of retaining what is found to work (and satisfies requirements), and making it part of the deliverable system.

Evaluation criteria at end Is the vision of the product stable? Is the architecture stable? Does the executable demonstration show that major risk elements are addressed? Is construction phase sufficiently planned? Do all stakeholders agree that current vision is achievable, using current plan with current architecture? Is the cost acceptable?

Construction All remaining components and application features are developed and integrated into the product. All features are tested thoroughly. Emphasis is placed on managing resources and controlling operations to optimise cost, schedules and quality. Parallel construction can accelerate the availability of deployable releases.

Construction objectives Minimise development costs by optimising resources and avoiding unnecessary scrap and rework. Achieve adequate quality as rapidly as possible. Achieve useful versions (alpha, beta or other test releases) as rapidly as practical.

Construction activities Resource management, resource control, process optimisation. Complete component development and testing against the defined evaluation criteria. Assessment of product releases against acceptance criteria for the vision.

Outcome of construction A product ready to put into the hands of end users. The software product integrated on the adequate platforms. The user manuals. A description of the current release.

Evaluation criteria at end Often called the beta release, is it ready? Is the product release stable and mature enough to be deployed in the user community? Are all stakeholders ready for the transition into the use community? Are the actual resource expenditures v planned expenditures still acceptable? Transition may have to be postponed by one release if the project fails to reach this milestone.

Transition This moves the software project to the user community. After release, issues usually arise that require new releases, either to correct problems or finish features that were postponed. This phase is entered when a baseline is mature enough to be deployed in the end-user domain. This means that some usable subset of the system has beem completed to an acceptable level of quality and that user documentation is available.

Transition phase includes Beta testing to validate the new system against use expectations. Parallel operation with the legacy system that the project is replacing Conversion of operational databases. Training of users and maintainers. Rollout of the product to the marketing, distribution and sales teams. It concludes when the deployment baseline has achieved the completed vision.

Transition objectives Achieve user self-supportability. Achieve stakeholder concurrence that deployment baselines are complete and consistent with the evaluation criteria of the vision. Achieve final product baseline as rapidly and cost-effectively as practical.

Transition activities Deployment-specific engineering, i.e. cutover, commercial packaging and production, sales rollout, and field personnel training. Tuning activities, including bug fixing and enhancement for performance and usability. Assessing the deployment baselines against the vision and the acceptance criteria for the product. The activities depend on the goal For fixing bugs, implementation and testing are usually enough. For new features, iteration is similar to construction phase.

Evaluation criteria at end Is user satisfied? Are the actual resources expenditures v planned expenditures still acceptable?