Rational Unified Process - PowerPoint PPT Presentation

1 / 81
About This Presentation
Title:

Rational Unified Process

Description:

Phase plan showing dates of major milestone. Establish Business case and Scope ... MILESTONE THREE. Initial Operational Capability. Evaluation criteria ... – PowerPoint PPT presentation

Number of Views:217
Avg rating:3.0/5.0
Slides: 82
Provided by: graduatest3
Category:

less

Transcript and Presenter's Notes

Title: Rational Unified Process


1
Rational Unified Process
  • Prepared and Presented by
  • Christopher Tokpah
  • Betty Rahedi
  • Kholekile Gwebu

2
Scope of Presentation
  • Introduction and Overview- Khole
  • Iterations -Chris
  • Users-Betty

3
Rules for Software Development
  • Fast Development High Quality On Budget
  • E-Software Paradox
  • Speed and quality not a choice but a necessity

4
Project Failures
  • According to Tom Maurer Up to 98 of all
    software projects are
  • Over budget
  • Late
  • And viewed as unsatisfactory by their user

5
  • Only 26 of software projects succeed.
  • Standish Group, CHAOS Report, 1998

6
Possible Reasons
  • Projects are not well defined and processes are
    unclear
  • Communication between project member is poor
  • Processes are not properly linked or properly
    automated.

7
Rational Software
  • Software company founded in 1981
  • one of the worlds largest software companies
  • Same company that came up with UML
  • attempts to provide a software development
    platform that improves
  • speed
  • quality
  • predictability

8
About Rational
  • Consistent delivery of quality requires specific
    knowledge of how tasks are performed in an
    environment.
  • The Rational Unified Process (RUP) is one of the
    answers Rational has come up with.

9
Rational Unified Process
  • What is RUP?
  • Is a Web-enabled software engineering process
    that enhances team productivity and delivers
    software best practices to all team members
  • Goal
  • Ensure the production of high quality software
    that meets the needs of it's end users, within a
    predictable schedule and budget.

10
RUP
  • How ?
  • Best Practices
  • Tools
  • Services

11
SourceRational Software
12
RUP
  • RUP provides a disciplined approach to assigning
    tasks and responsibilities within a development
    organization.
  • Process is continuously updated and improved to
    reflect recent experiences and evolving and
    proven best practices.

13
Characteristics of RUP
  • Enhances team productivity
  • Creates and maintains models
  • Guide on how to effectively use UML
  • Supported by tools which automate large parts of
    the process
  • Configurable
  • Captures many of the best practices in software
    development

14
Team Productivity
  • Provides every team member with a common easy to
    access knowledge base with guidelines, templates
    and tool mentors for all critical development
    activities

15
SourceRational Software
16
Creates and maintains models
  • Emphasizes semantic rich representations of the
    software under development

Class Diagrams
Object Diagrams
Component Diagrams
Use-case Diagrams
Models
Deployment Diagrams
Design Model Use-case Model Test
Model Implementation Model
models
Sequence diagrams
Collaboration diagrams
Activity Diagrams
17
Guide for how to effectively use UML
  • UML was originally created by Rational
  • UML is an industry standard language which
    allows requirements , architects and designs to
    be communicated clearly.
  • The knowledge base of RUP allows development
    teams to gain the full benefits of Unified
    Modeling Language

18
Supported by Tools
SourceRational Software
19
Configurable
  • Fits small development teams as well as large
    ones
  • Unified Process founded on a simple and clear
    process architecture that provides commonality
    across a family of processes
  • It can be varied to accommodate different
    situations.

20
Captures many best practices
  • Develop software iteratively
  • Effectively manage requirements
  • Use component architectures to build resilient
    architectures
  • Model visually to manage complexity
  • Verify quality throughout the lifecycle
  • Control changes to software

21
What is an Iteration?
  • An iteration is a complete development loop
    resulting in a release(internal or external) of
    an executable product, a subset of an executable
    product under development which grows
    incrementally from iteration to iteration to
    become the final system.

22
ITERATIONS
TRANSITION
CONSTRUCTION
ELABORATION
INCEPTION
23
INCEPTION PHASE
  • Establish Business case and Scope
  • Identify all Actors
  • Define Nature of Interaction

24
Business Case
  • Success criteria
  • Risk assessment
  • Estimate of needed resources
  • Phase plan showing dates of major milestone

25
  Establish Business case and Scope
  • Identify all Actors
  • Define Nature of Interaction
  •       

26
OUTCOME
  • Vision Document
  • An initial use-case model(10-20 complete)
  • An initial project glossary
  • An initial business case

27
OUTCOME
  • An initial risk assessment
  • Project plan, showing phases and iterations
  • A business model
  • One or several prototypes.

28
MILESTONE ONE
  • The Life Cycle Objective

29
Evaluation Criteria
  • Stakeholders Concurrence
  • Requirements Understanding
  • Credibility of cost/schedule estimates, priority
    risks and development process.

30
Evaluation Criteria
  • Depth and breadth of any architectural prototype
    developed
  • Actual versus planned expenditures

31
ARE WE ON TARGET?
ABANDON!
32
ELABORATION PHASE
  • Analyze problem domain
  • Establish strong architecture foundation
  • Develop project plan
  • Eliminate high risks

33
HOW?
  • Mile wide and inch deep" view of the system
  • Architecture decisions based on whole
    system(scope, functionality, nonfunctional
    requirements)

34
OUTCOME
  • A use-case model (at least 80 complete)
  • Supplementary requirements
  • A Software Architecture Description
  • An executable architectural prototype.

35
OUTCOME
  • A revised risk list and a revised business case.
  • A development plan for the overall project
  • An updated development case
  • A preliminary user manual (optional).

36
MILESTONE TWO
  • Lifecycle Architecture

B
L
O
C
K
S
37
Evaluation criteria
  • Is the vision of the product stable ?
  • Is the architecture stable?
  • Does the executable demonstration show that the
    major risk elements have been addressed and
    credibly resolved?

38
Evaluation criteria
  • Is the plan for the construction phase
    sufficiently detailed and accurate?
  • Do all stakeholders agree that the current vision
    can be achieved ?
  • Is the actual resource expenditure versus planned
    expenditure acceptable?

39
ARE WE ON TARGET?
Abort or rethink project!
40
CONSTRUCTION PHASE
  • All remaining components and application
    features are developed
  • All features are thoroughly tested

41
OUTCOME
  • The software product integrated on the adequate
    platforms.
  • The user manuals.
  • A description of the current release.

42
MILESTONE THREE
  • Initial Operational Capability

43
Evaluation criteria
  • Is this product release stable and mature enough
    to be deployed in the user community?
  • Are all stakeholders ready for the transition
    into the user community?
  • Are the actual resource expenditures versus
    planned expenditures still acceptable?

44
DID WE HIT DEAD CENTER ?
Postpone transition by one release
45
TRANSITION PHASE
  • "Beta testing" to validate the new system
    against user expectations
  • Parallel operation with a legacy system that it
    is replacing
  • Conversion of operational databases

46
TRANSITION PHASE
  • Training of users and maintainers
  • Roll-out the product to the marketing,
    distribution, and sales teams

47
TRANSITION PHASE OBJECTIVES
  • Achieving user self-supportability
  • Achieving stakeholder concurrence that deployment
    baselines are complete and consistent with the
    evaluation criteria of the vision
  • Achieving final product baseline as rapidly and
    cost effectively as practical

48
MILESTONE FOUR
  • Product Release

49
Evaluation criteria
  • Is the user satisfied?
  • Are the actual resources expenditures versus
    planned expenditures still acceptable?

50
Benefits of Iterative Approach
  • Risks are mitigated earlier
  • Change is more manageable
  • Higher level of reuse
  • The project team can learn along the way
  • Better overall quality

51
Users
  • Analyst
  • Developer
  • Test
  • Manager

52
Analyst
  • End users representative
  • Collect and Communicate all project requirements
    to ensure project success
  • Phases Inception Elaboration
  • Workflow Business modeling Requirements
  • Include Business Process Analyst and Systems
    Analyst

53
The Iterative Model Graph
54
Business Process Analyst
  • Business Modeling
  • Understand Business Processes
  • Business - Glossary - terminology
  • - Business use CASES
  • on services

55
System Analyst
  • Workshop
  • Requirements Model Business
  • Vision - Use CASE models

56
RUP
  • Template
  • Problem statement
  • Product position statement
  • User description
  • Product features listing
  • Tool Mentors Pull down menus with extensive
    guidelines in Rational Rose

57
RUP
  • Change Request documents changes in
    requirements and tracks defects

58
The Analyst RUP
  • RUP provides
  • Guidance in business modeling and requirements
  • Rational development tools
  • Productivity enhancing templates
  • RUP helps the Analyst bridge the gap between the
    Developer and User requirements

59
Developer
  • Defines resilient architecture to meet Users
    requirements and accommodate change by designing,
    implementing and testing components. Needs to
    accurately understand end user requirements.
  • There is a need for
  • Effective communication
  • A Common language and processes must be used
  • This gap is bridged by RUP

60
Developer
  • Phases Elaboration Construction
  • Workflows Analysis Design and
    Implementation
  • Developers include
  • Architect
  • Database Designer
  • Implementer
  • System Integrator

61
The Iterative Model Graph
62
Developer
  • Responsibility in Analysis Development include
  • Defining Candidate architecture
  • Refining the architecture
  • Analyzing behavior
  • Designing Components
  • Designing Real-time Components(Optional)
  • Designing the Database

63
Developer
  • Each component is an individuals responsibility
    or a small teams responsibility defined in the
    work guidelines.
  • Database Designer is responsible for the
    database model.

64
Developer
  • Architect is responsible for
  • Design model A number of graphical views
    extracted from the visual modeling tool, Rational
    Rose.
  • Software Architecture document Rational SODA, a
    document automation tool can automatically
    generate part of this document from Rational Rose.

65
The Developer RUP
  • RUP provides
  • Understanding and use of UML.
  • Productivity enhancing templates.
  • Guidance in analysis design, and
    implementation.
  • Guidance for Rational Development tools
  • Comprehensive programming guidelines for Ada,
    Java and C

66
Tester
  • Although quality is the responsibility of all
    Users, the Tester has to review the system for
    Functionality, Reliability and Performance.
  • RUP helps answer Are we really ready to
    Release?
  • RUP is an iterative approach Systems are built
    and tested in increments, avoiding the costly big
    bang effects.

67
Tester
  • Responsibilities
  • Tester Executes test by executing test
    procedures.
  • Test Designer
  • Plans the test by giving details for the test
    plan with a checklist and carries out a risk
    analysis
  • Designs the test by identifying and describing
    test cases and procedures
  • Implements the test by recording and programming
    the test script

68
Tester
  • Responsibilities
  • Test Designer
  • Evaluates the test using RUP Tool Mentors to log
    defects
  • Designer Designs test classes and packages
  • Implementer Implements test components and
    subsystems

69
Tester
  • RUP Test Plan is a complete 25 page template with
    various industry standards like ISO and MSI EEE.
  • RUP has also got Load testing for
    e-business applications.

70
The Tester RUP
  • RUP provides guidance
  • In testing using an iterative approach thus
    avoiding the big bang effect.
  • In a variety of test types.
  • For using various Rational test tools.
  • For using productivity enhancing templates.

71
Manager
  • Management involves all phases of the project
    life cycle.
  • RUP allows the development of a project website
    giving real time project status with access
    limited to the team members and stakeholders.

72
Manager
  • Roles include
  • Project Manager
  • Change Control Manager
  • Configuration Manager

73
Manager
  • Project Management includes
  • Project start - Identify and access risk
  • - Develop business case
  • - Initiate the project
  • Developmental Planning
  • - Define monitoring and control
    processes
  • - Plan phases and iterations
  • - Compile software development plans
  • - Define project organization and staffing

74
Manager
  • Project Management includes
  • Routine Management
  • - Monitor project status
  • - Schedule and assign work
  • - Report Status
  • - Handle exceptions and problems
  • Deployment Manage acceptance test
  • Other Plans
  • - Develop product acceptance plan
  • - Develop risk management plan
  • - Develop measurement plan
  • - Develop problem resolution plan

75
Manager
  • Configuration and Change Management includes
  • Create project Change Management environments
  • Manage baselines and releases.
  • Manage change requests
  • This type of management is essential for
    iterative development.

76
The Manager RUP
  • RUP provides
  • Detailed guidance for planning and management of
    iterative development.
  • Monitors and controls projects.
  • Guidance in identifying and analyzing risk.
  • Productivity enhancing templates like MS project
    plan
  • Guidance in configuration and change management
  • Guidance in parallel and distributed development

77
The Manager RUP
  • RUP provides
  • Defect tracking.

78
The Team RUP
  • The Team can develop software
  • on time and on target

79
From Waterfall to Iterative Lifecycle
  • Acknowledging rework upfront
  • Pressure from management for comprehensive
    overall plan
  • Lets get started, well decide where to go later
  • Falling victim of your own success

80
From Waterfall to Iterative Lifecycle
  • Testers may be used to complete stable specs
  • Hitting hard problems earlier
  • Bidding time

81
References
  • www.rational.com
  • www.therationaledge.com
  • http//webdev.indiana.edu/Webdev96/proceedings/wd0
    4/slides/hornyak/sld001.htm
  • Ivar Jacobson et al., The Unified Software
    Development Process, Addison-Wesley-Longman,
    Reading, MA (1999).
  • Philippe Kruchten , From Waterfall to Iterative
    Lifecycle - A tough transition for project
    manager.(Whitepaper)
  • Rational Software Whitepaper , Rational Unified
    ProcessBest Practices for Software Development
    Teams
Write a Comment
User Comments (0)
About PowerShow.com