22
Rational Unified Rational Unified Process Process Jed Kao-Tung Chang Jed Kao-Tung Chang

Rational Unified Process

Embed Size (px)

DESCRIPTION

Rational Unified Process. Jed Kao-Tung Chang. A software engineering process Process framework. What is the Rational Unified Process?. Outline. Static Structure: Process Description Dynamic Structure: Iterative Development An Architecture-Centric Process A Use-Case-Driven Process - PowerPoint PPT Presentation

Citation preview

Rational Unified ProcessRational Unified Process

Jed Kao-Tung ChangJed Kao-Tung Chang

What is the Rational Unified What is the Rational Unified Process?Process?

A software engineering processA software engineering process Process frameworkProcess framework

OutlineOutline

Static Structure: Process DescriptionStatic Structure: Process Description Dynamic Structure: Iterative Dynamic Structure: Iterative

DevelopmentDevelopment An Architecture-Centric ProcessAn Architecture-Centric Process A Use-Case-Driven ProcessA Use-Case-Driven Process Deployment WorkflowDeployment Workflow Iteration PlansIteration Plans Implementing the Rational Unified Implementing the Rational Unified

ProcessProcess

Static StructureStatic Structure

The Rational Unified Process model is The Rational Unified Process model is built on three entities: roles, built on three entities: roles, activities, and artifacts.activities, and artifacts.

Workflows relate activities, artifacts, Workflows relate activities, artifacts, and roles in sequences that produce and roles in sequences that produce valuable results.valuable results.

Example of the WorkflowExample of the Workflow

Dynamic Structure: Iterative Dynamic Structure: Iterative Development Development

The sequential, or waterfall, process is The sequential, or waterfall, process is fine for small projects. fine for small projects.

An iterative process breaks a An iterative process breaks a development cycle into a succession of development cycle into a succession of iterations. iterations.

A development cycle is divided into a A development cycle is divided into a sequence of four phases that partition the sequence of four phases that partition the sequence of iterations. The phases are sequence of iterations. The phases are inception, elaboration, construction, and inception, elaboration, construction, and transition. transition.

From sequential to an iterative From sequential to an iterative cyclecycle

Activities across one development Activities across one development cyclecycle

Benefits of an iteration approachBenefits of an iteration approach

The iterative approach The iterative approach accommodates changes in accommodates changes in requirements and in implementation requirements and in implementation strategy. It confronts and mitigates strategy. It confronts and mitigates risks as early as possible. It allows risks as early as possible. It allows the development organization to the development organization to grow, to learn, and to improve. It grow, to learn, and to improve. It focuses on real, tangible objectives.focuses on real, tangible objectives.

Architecture ViewArchitecture View

System architecture is used in the Rational System architecture is used in the Rational Unified Process as a primary artifact for Unified Process as a primary artifact for conceptualizing, constructing, managing, conceptualizing, constructing, managing, and evolving the system under and evolving the system under development.development.

Architecture is a complex concept that is Architecture is a complex concept that is best represented by multiple, coordinated best represented by multiple, coordinated architectural views.architectural views.

An architectural view is an abstraction of a An architectural view is an abstraction of a model that focuses on its structure and its model that focuses on its structure and its essential elements.essential elements.

Use-Case-Driven ProcessUse-Case-Driven Process

Use cases drive numerous activities Use cases drive numerous activities in the Rational Unified Process:in the Rational Unified Process: Creation and validation of the design Creation and validation of the design

modelmodel Definition of the test cases and test Definition of the test cases and test

procedures in the test modelprocedures in the test model Planning of iterationsPlanning of iterations Creation of user manualsCreation of user manuals Deployment of the systemDeployment of the system

The Deployment WorkflowThe Deployment Workflow

The purposeThe purpose Timing of DeploymentTiming of Deployment The Deployment discipline takes care The Deployment discipline takes care

of all artifacts delivered to the end of all artifacts delivered to the end users as well as supporting users as well as supporting organizations.organizations.

WorkflowWorkflow

Typical Iteration PlansTypical Iteration Plans

An iteration in the inception phase to An iteration in the inception phase to define the project vision and the define the project vision and the business casebusiness case

An iteration early in the elaboration An iteration early in the elaboration phase to build an architectural phase to build an architectural prototypeprototype

An iteration late in the construction An iteration late in the construction phase to implement the systemphase to implement the system

Defining the Product Vision and the Defining the Product Vision and the Business CaseBusiness Case

Building an Architectural Prototype Building an Architectural Prototype

Implementing the systemImplementing the system

Implementing the Rational Unified Implementing the Rational Unified Process Process

Step 1: Assess the Step 1: Assess the Current State Current State

Step 2: Set (or Revise) Step 2: Set (or Revise) Goals Goals

Step 3: Identify RisksStep 3: Identify Risks Step 4: Plan the Process Step 4: Plan the Process

Implementation Implementation Step 5: Execute the Step 5: Execute the

Process Implementation Process Implementation

Step 6: Evaluate the Step 6: Evaluate the Process Implementation Process Implementation

Implementing the Rational Unified Implementing the Rational Unified Process Process

SummarySummary

Rational Unified Process, or RUP, is a Rational Unified Process, or RUP, is a configurable software development configurable software development process platform that delivers practices process platform that delivers practices and a configurable architecture.and a configurable architecture.

Enables the developer to select and Enables the developer to select and deploy only the process components deploy only the process components they need for each stage of their they need for each stage of their project.project.

ReferenceReference Boehm, Barry W. 1996. "Anchoring the Software Process." IEEE Software, Boehm, Barry W. 1996. "Anchoring the Software Process." IEEE Software,

July, pp. 73–82. July, pp. 73–82.

Boehm, Barry W. 1998. "A Spiral Model of Software Development and Boehm, Barry W. 1998. "A Spiral Model of Software Development and Enhancement." IEEE Computer, May, pp. 61–72.Enhancement." IEEE Computer, May, pp. 61–72.

Jacobson, Ivar, Grady Booch, and James Rumbaugh. 1999. The Unified Jacobson, Ivar, Grady Booch, and James Rumbaugh. 1999. The Unified Software Development Process. Reading, MA: Addison-Wesley. Software Development Process. Reading, MA: Addison-Wesley.

Philippe Kruchten, 2003. The Rational Unified Process, An Introduction. Philippe Kruchten, 2003. The Rational Unified Process, An Introduction. Addison Wesley.Addison Wesley.

Craig Larman, 2003. Applying UML and Patterns : An Introduction to Object-Craig Larman, 2003. Applying UML and Patterns : An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition)Oriented Analysis and Design and Iterative Development (3rd Edition)

Booch, Grady. 1994. Object-Oriented Analysis and Design with Booch, Grady. 1994. Object-Oriented Analysis and Design with Applications, Second Edition. Reading, MA: Addison-Wesley.Applications, Second Edition. Reading, MA: Addison-Wesley.

www-306.ibm.com/software/awdtools/rup/ www-306.ibm.com/software/awdtools/rup/

Questions?Questions?