Top Banner
1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC
22

1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

Dec 28, 2015

Download

Documents

Verity Shepherd
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

1

RUP Project Estimation and Planning Demystified

Bob HeinemeyerPrincipal Consultant

Capable Software, LLC

Page 2: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

2

What We Will Be Covering

• Effort estimation– Utilizing Use Case Point Analysis (UCPA)

• Coarse-grained planning (See artifact: Software Development Plan)– Utilizing standard RUP project assumptions

concerning schedule and effort– Utilizing iteration patterns

• Project planning and estimation spreadsheet

Page 3: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

3

What We Won’t Be Covering

• Management planning– Project organization– Metrics– Quality assurance– Communication

• Fine-grained planning (See artifact: Iteration Plan)

• UCPA computational details• RUP details

Page 4: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

4

Resources•Banerjee, Gautam, “Use Case Points – An Estimation Approach.” Rational Whitepaper, 2001.

•Krol, Per and Kruchten, Philippe, The Rational Unified Process Made Easy: A Practitioners Guide Rational Unified Process. Addison Wesley Longman, 2003.

•Kruchten, Philippe, From Waterfall to Iterative Development, The Rational Edge, December 2002.

•Kruchten, Philippe, The Rational Unified Process – An Introduction (2nd Edition). Addison Wesley Longman, 2000.

•Lopes Cardoza, Eric S. and DeVillers, DJ, Project Planning Best Practices, The Rational Edge, August 2003.

•Rational Unified Process 2003, IBM Rational, Cupertino, CA, 2003

•Schneider, Geri and Winters, Jason P., Applying Use Cases—A Practical Guide (2nd Edition). Addison Wesley Longman, 2001.

•Walker Royce, Software Development Project Management: A Unified Approach. Addison Wesley, 1998.

•West, David, “Planning a Project with the Rational Unified Process.” Rational Whitepaper, 2002.

Page 5: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

5

What’s Mystifying

• 31 Roles• 83 Artifacts• 148 Activities• Four phases• Iterations (?!)• Just-enough/Just-in-time philosophy• CIO wants cost, schedule and staffing

numbers by next Friday!

Page 6: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

6

RUP Overview

Disciplines

Page 7: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

7

RUP Key Concepts

Page 8: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

8

Key RUP RolesProject Management Analysis & Design

Project Manager Software Architect

Project Reviewer Designer

Environment Database Designer

Process Engineer Designer Reviewer

Tool Specialist Test

System Administrator Test Manager

Business Modeling Test Analyst

Business Process Analyst Test Designer

Business Designer Tester

Business Model Reviewer Deployment

Requirements Deployment Manager

Systems Analyst Course Developer

Requirements Specifier Graphic Artist

Requirements Reviewer Technical Writer

User Interface Designer Change & Configuration Mgmt

Implementation Configuration Manager

Implementer Change Manager

Code Reviewer Integrator

Page 9: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

9

What Is Use Case Point Estimation?

• Procedure for doing analytical estimation of effort very early in project lifecycle

• Uses fragmentary use cases and actors plus characteristics of the project and development environment as basis

• Variation on Function Point Analysis

Page 10: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

10

UCPA: Actors

Actor Type Weighting Factor

Simple 1

Average 2

Complex 3

•Actor: someone or something outside the system that interacts with the system. •Actor type

• Simple: another system with defined API• Average: another system interacting via protocol (e.g., TCP/IP)• Complex: human interacting through GUI or web

Page 11: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

11

UCPA: Use Cases

Use Case Type Weighting Factor

Simple 1

Average 2

Complex 3

•Use case: sequence of actions that yields an observable result of value to an actor. •Use case type

• Simple: simple piece of work; simple UI; 1 entity• Average: more difficult; more UI design; >1 entities• Complex: very difficult; complex UI or processing; >2 entities

Page 12: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

12

UCPA: Technical FactorsRating

Factor Description Weight None Average Strong

T1 Distributed system 2 0 3 5

T2 Response objectives 2 0 3 5

T3 End-user efficiency 1 0 3 5

T4 Complex processing 1 0 3 5

T5 Reusable code 1 0 3 5

T6 Easy to install 0.5 0 3 5

T7 Easy to use 0.5 0 3 5

T8 Portable 2 0 3 5

T9 Easy to change 1 0 3 5

T10 Concurrent 1 0 3 5

T11 Security features 1 0 3 5

T12 Access for third parties 1 0 3 5

T13 Special user training 1 0 3 5

Page 13: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

13

UCPA: Environmental Factors

Rating

Factor Description Weight None Average Strong

F1 Familiar with RUP 1.5 0 3 5

F2 Application experience .5 0 3 5

F3 Object-oriented experience

1 0 3 5

F4 Lead analyst capability .5 0 3 5

F5 Motivation 1 0 3 5

F6 Stable requirements 2 0 3 5

F7 Part-time workers -1 0 3 5

F8 Difficult programming language

-1 0 3 5

Page 14: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

14

Phase Level Standard Effort and Schedule Assumptions

Domain Inception Elaboration Construction Transition

Effort 5% 20% 65% 10%

Schedule 10% 30% 50% 10%

Walker Royce, Software Development Project Management: A Unified Approach. Addison Wesley, 1998, p.148.

Page 15: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

15

Discipline Level Standard Effort Assumptions

Discipline Effort

Management (PM+CCM) 10%

Environment 10%

Requirements (+BM) 10%

Analysis & Design 15%

Implementation 25%

Assessment (Test) 25%

Deployment 5%

Source: Walker Royce, Software Development Project Management: A Unified Approach. Addison Wesley, 1998, p.148

Page 16: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

16

Iteration Pattern

• A set of iterations with a particular configuration of lengths, numbers and objectives that is appropriate for projects with certain characteristics.

• Analogous to design patterns

Page 17: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

17

Iteration Pattern: Incremental Lifecycle

• Strategy– determine user needs– define the system requirements– perform the rest of the development in a sequence of builds, each build adding

more capabilities until the system is complete. • Project Characteristics

– The problem domain is familiar. – Risks are well-understood. – The project team is experienced.

• Iteration Pattern– a short Inception iteration to establish scope and vision, and to define the

business case – a single Elaboration iteration, during which requirements are defined, and the

architecture established – several Construction iterations during which the use cases are realized and the

architecture fleshed-out – several Transition iterations to migrate the product into the user community

Page 18: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

18

Iteration Pattern: Evolutionary Lifecycle

• Strategy– acknowledges user needs are not fully understood– all requirements cannot be defined up front, they are refined in each

successive build• Project Characteristics

– The problem domain is new or unfamiliar. – The team is inexperienced

• Iteration Pattern– a short Inception iteration to establish scope and vision, and to define

the business case – several Elaboration iterations, during which requirements are refined at

each iteration – a single Construction iteration, during which the use cases are realized

and the architecture is expanded upon – several Transition iterations to migrate the product into the user

community

Page 19: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

19

Iteration Pattern: Incremental Delivery Lifecycle

• Strategy– phased deliveries of incremental functionality to the customer– time-to-market pressures, where delivery of certain key features early can yield

significant business benefits– requires a very stable architecture

• Project Characteristics– The problem domain is familiar:

• the architecture and requirements can be stabilized early in the development cycle

• there is a low degree of novelty in the problem – The team is experienced. – Incremental releases of functionality have high value to the customer.

• Iteration Pattern– a short Inception iteration to establish scope and vision, and to define the

business case – a single Elaboration iteration, during which a stable architecture is baselined – a single Construction iteration, during which the use cases are realized and the

architecture fleshed-out – several Transition iterations to migrate the product into the user community

Page 20: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

20

Iteration Pattern: Grand Design Lifecycle

• Strategy– traditional waterfall approach– hard to avoid additional iterations in the transition phase.

• Project Characteristics– a small increment of well-defined functionality is being added to a very

stable product – the new functionality is well-defined and well-understood – The team is experienced, both in the problem domain and with the

existing product • Iteration Pattern

– a short Inception iteration to establish scope and vision, and to define the business case

– a single very long Construction iteration, during which the use cases are realized and the architecture fleshed-out

– several Transition iterations to migrate the product into the user community

Page 21: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

21

Project Planning & Estimation Spreadsheet

• Performs planning and estimation extremely early in Inception by combining standard RUP project assumptions, with Iteration Patterns and Use Case Point Analysis

• Best used as iterative, “what if” tool• Requires RUP roles Software Architect, Process

Engineer, Project Manager and System Analyst– One to four individuals, usually two.

• Brief demo

Page 22: 1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC.

22

Future

A web-based RUP project planning tool

Contact:

[email protected](602) 620-3882

www.capablesoftware.com