Rational Unified Process (RUP)

Perspectives

Static

Practice

Dynamic

Definition

Iterations

Cross-phase

In phase

online mentor that provides guidelines, templates, and examples for all aspects and stages of program development

Development Phase

1) Inception Phase

2) Elaboration Phase (Ortner Phase)

3) Construction Phase

4) Transition Phase

Establish financial forecast

Generate project requirement

shows phases over time

Check the project criteria

Estimate stakeholder's concurrence

shows process activities

Understand priorities, risk and development process

suggests good practice.

Compare actual expenses vs expected expenses

Problem domain analysis is made

Architecture basic form is generated

Iterative with results developed
incrementally.

Outcome

As shown by the loop in the RUP model, the whole set of phases may be enacted incrementally.

identify use-case model

Description of the software architecture

Business case and risk identified

Understand the development plan

If seems can't proceed, can be cancelled or redesign

Build the software system

Development is the main focus

Bulk of coding take place

Several construction iterations may be developed

'Transit' the system into production

Training the end users

System maintenance

Checked against quality level set in Inception Phase

Six fundamental

Develop software iteratively

Manage requirement

Use component-based architectures

Visually model software

Verify software quality

Control changes to software

Plan increments based on customer priorities and
deliver highest priority increments first.

Explicitly document customer requirements and
keep track of changes to these requirements.

Organize the system architecture as a set of
reusable components.

Use graphical UML models to present static and
dynamic views of the software

Ensure that the software meets the organizational quality standards.

Manage software changes using a change management system and configuration management tools.

Workflow

Implementation

Testing

Analysis and Design

Project Management

Requirements

Configuration and
Change Management

Deployment

Business modelling

business use cases.

Actors who interact with the system are identified and use cases are developed to model the system requirements.

A design model is created and documented using architectural models, component models, object
models and sequence models.

The components in the system are implemented and structured into implementation sub-systems. Automatic code generation from design models helps accelerate this process.

Testing is an iterative process that is carried out in conjunction with implementation. System testing
follows the completion of the implementation.

A product release is created, distributed to users and installed in their workplace.

This supporting workflow manages changes to the
system.

This supporting workflow manages the system development.

Environment

This workflow is concerned with making appropriate software tools available to the software development
team.

In phase VS Cross-phase

Unlike the waterfall model where phases are equated(same) with process activities, the phases in the RUP are more closely related to business rather than technical concerns

UML (Unified Model Language) = standard for object-oriented modeling, so use cases and use casebased elicitation are used in the requirements engineering process.

Call project milestone (if seems unlikely to succeed)

Cancelled or redesign to better meet the criteria

Establish the business case

Understand the problem

System design, programming and testing.

Deploy the system in its operating environment.