Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 /26 RUP Architecture.

Slides:



Advertisements
Similar presentations
Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
Advertisements

1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
RUP/UP Software Development Method Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
PRJ270: Essentials of Rational Unified Process
Rational Unified Process
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
SE 470 Software Development Processes James Nowotarski 21 April 2003.
NJIT From Inception to Elaboration Chapter 8 Applying UML and Patterns Craig Larman.
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
Requirements - Why What and How? Sriram Mohan. Outline Why ? What ? How ?
Copyright  Larry Dribin, Ph.D. SE470_ProjMgmt_v1.ppt SE470 - ProjMgmt - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Lifecycle Phases time InceptionElaborationConstruction Transition  Define the scope of the project and develop business case  Inception Define the scope.
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process.
Rational Worldwide Software Symposium
SwE 313 Introduction to Rational Unified Process (RUP)
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.
Rational Unified Process – Part 2
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Object Oriented Analysis and Design Using the UML
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
Principles of Object Technology Module 1: Principles of Modeling.
UML - Development Process 1 Software Development Process Using UML (2)
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,
RUP Fundamentals - Instructor Notes
Software Development *Life-Cycle Phases* Compiled by: Dharya Dharya Daisy Daisy
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.
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
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
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.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Introduction to Rational Unified Process Adapted by Dr. Spiegel.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
RUP Fundamentals Instructor Notes
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
Chapter 8 Workflows of the Process Taken from Walker Royce’s textbook – Software Project Management plus a number of Personal Comments.
The Rational Unified Process 1 EECS810: Software Engineering.
The principles of an object oriented software development process Week 04 1.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
Introduction to Rational Unified Process
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Rational Unified Process (RUP)
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
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
RATIONAL UNIFIED PROCESS PROCESS FRAMEWORK OVERVIEW.
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
Process 4 Hours.
Iterative, Evolutionary, and Agile Rational Unified Process
Object Oriented Analysis and Design
Rational Worldwide Software Symposium
Rational Unified Process
Rational Worldwide Software Symposium
Rational Worldwide Software Symposium
Presentation transcript:

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 /26 RUP Architecture

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 2 /26 InceptionElaborationConstructionTransition Process Architecture - Lifecycle Phases The Unified Process has four phases: Have phases are described below and note what the expectation is at the end (milestone) of each phase.  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; (for us, use-cases) Good grasp of requirements and architecture. Most key analysis and design done. (often a couple of iterations…)  High risk items addressed and mitigated time

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 3 /26 InceptionElaborationConstructionTransition Process Architecture - Lifecycle Phases The Unified Process has four phases: At the milestones, we have:  Construction - Build the product via several iterations; up to beta release; Essentially programming and unit test; iterations; assessment, … Several iterations (t ime-boxed )…  Transition - Transition the product to end user community; end-user training and support; installation, etc. Alpha testing Beta testing Get ready for total deployment time

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 4 /26 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 InceptionElaborationConstructionTransition Phase Boundaries Mark Major Milestones Lifecycle Objective Milestone Lifecycle Architecture Milestone Initial Operational Capability Milestone Product Release time At each of the major milestones, project is reviewed; decision made to proceed with project as planned, abort project, or to revise it. The criteria used to make this decision vary by phase. These are indeed milestones! (Minor milestones are at the end of iterations – coming) Lots of evaluation criteria as we move from phase to phase… (next overhead.) Note the titles of the Milestones.

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 (Life Cycle Objective Milestone) includes:  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 (Life Cycle Architecture Milestone):  Stability of the product vision;  Resolution of major risk elements;  Adequate planning and reasonable estimates for project completion agreed upon; 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 Initial  Are we ready to ease into transitioning to the new application? alpha, beta testing training customer service transition plans established…. configuration management?

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 9 /26 Major Milestones – Evaluation Criteria (at end of phase)   Transition phase, (Product Release) - decision made whether to release the product.   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 to improve or enhance the product. In many cases, 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 – Closer Look at Process Architecture  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  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. Number of iterations per phase is variable. Each iteration can result in an executable release where the system Each iteration can result in an executable release where the system evolves into a large system. evolves into a large system. PreliminaryIterationArchitect.IterationArchitect.IterationDevel.IterationDevel.IterationDevel.IterationTransitionIterationTransitionIteration InceptionElaborationConstructionTransition Minor Milestones: Releases

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 11 /26 Major Core Disciplines (Activities) Produce Models: Analysis & Design Implementation Model Test Model realized by implemented by verified by Requirements Implementation Test Use-Case Model Design Model Business Modeling Business Use-Case Model Business Object Model The RUP is a model-driven approach; Models are needed to fully describe the application from viewpoints of different stakeholders. The business itself; generally larger than the application domain of project…, Business Vision, Business Rules, Domain Model… In more detail:

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 12 /26  Business Model  Business Model is a model of what the business processes are and the business environment. (Very Important!!) What is the application domain?  Use-Case Model models what the application is supposed to do and its environment. ( functional requirements )  Create Use Case diagrams (graphics); Use Case Narratives (Specification) (some key alternative / exception scenarios in use cases.)  Analysis and Design Model realizes the Use-Cases.  Serves as abstraction of the implementation model and its source code.  Architecture-centric.  Implementation Model is a collection of components, and the implementation subsystems that contain them.  Primarily programming – realizing the design model; unit testing and more.  Test Model encompasses all of the test cases and procedures required to test the system. (test plans; test scripts; test suites, etc.)  Development team verification; user validation

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 13 /26 Bringing It All Together: The Iterative Model Project Management Environment Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter. #1 Phases Core Process Disciplines Iterations Core Supporting Disciplines Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Configuration & Change Mgmt Requirements ElaborationTransitionInceptionConstruction In an iteration, you walk through all disciplines. Relative amount of color shows level of activity in each iteration Development Team Focus

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 14 /26 Process Notation – Figures used in the RUP Role Activity Artifact Describe a Use-Case Use-Case Package Use-Case responsible for Use-Case Specifier A work item - a worker may be asked to perform A piece of information that is produced, modified, or used by a process A role that may be played by an individual or a team in the development organization Could be source code, documents, class, risks list, glossary, sequence diagram…etc. Part of the Configuration Smallest piece of work that is relevant. Workload divided by activities needed. Defines the behavior and responsibilities of an individual or a group working as a team. In the RUP, a Worker is more of a ‘role’ that defines how individuals should carry out work. kept in a Package (repository)

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 15 /26 Resource Paul Mary Joe Sylvia Stefan Workers Are Used for Resource Planning Each individual in the project is assigned to one or several workers / roles Worker (role) Designer Use-Case Specifier System Analyst Implementer Architect Activities (work items) Define Operations Detail a Use-Case Find Actors and Use-Cases Perform Unit Tests Identify Design Mechanisms A worker may wear several hats. all in same day… Some ‘roles’ are accomplished by a team. Often the case…

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 16 /26  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 Summary: Rational Unified Process (1 of 2)

Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 17 /26 Summary (cont.): Rational Unified Process   An artifact is a piece of information that is produced, modified, or used by a process   A worker is a role that may be played by an individual or a team in the development organization   An activity or work item is a unit of work a worker may be asked to perform