Download presentation
Presentation is loading. Please wait.
Published byVerity Shepherd Modified over 9 years ago
1
1 RUP Project Estimation and Planning Demystified Bob Heinemeyer Principal Consultant Capable Software, LLC
2
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
3
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
4
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.
5
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!
6
6 RUP Overview Disciplines
7
7 RUP Key Concepts
8
8 Key RUP Roles Project ManagementAnalysis & Design Project ManagerSoftware Architect Project ReviewerDesigner EnvironmentDatabase Designer Process EngineerDesigner Reviewer Tool SpecialistTest System AdministratorTest Manager Business ModelingTest Analyst Business Process AnalystTest Designer Business DesignerTester Business Model ReviewerDeployment RequirementsDeployment Manager Systems AnalystCourse Developer Requirements SpecifierGraphic Artist Requirements ReviewerTechnical Writer User Interface DesignerChange & Configuration Mgmt ImplementationConfiguration Manager ImplementerChange Manager Code ReviewerIntegrator
9
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
10
10 UCPA: Actors Actor TypeWeighting Factor Simple1 Average2 Complex3 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
11
11 UCPA: Use Cases Use Case TypeWeighting Factor Simple1 Average2 Complex3 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
12
12 UCPA: Technical Factors Rating FactorDescriptionWeightNoneAverageStrong T1Distributed system2035 T2Response objectives2035 T3End-user efficiency1035 T4Complex processing1035 T5Reusable code1035 T6Easy to install0.5035 T7Easy to use0.5035 T8Portable2035 T9Easy to change1035 T10Concurrent1035 T11Security features1035 T12Access for third parties1035 T13Special user training1035
13
13 UCPA: Environmental Factors Rating FactorDescriptionWeightNoneAverageStrong F1Familiar with RUP1.5035 F2Application experience.5035 F3Object-oriented experience 1035 F4Lead analyst capability.5035 F5Motivation1035 F6Stable requirements2035 F7Part-time workers035 F8Difficult programming language 035
14
14 Phase Level Standard Effort and Schedule Assumptions DomainInceptionElaborationConstructionTransition Effort5%20%65%10% Schedule10%30%50%10% Walker Royce, Software Development Project Management: A Unified Approach. Addison Wesley, 1998, p.148.
15
15 Discipline Level Standard Effort Assumptions DisciplineEffort Management (PM+CCM)10% Environment10% Requirements (+BM)10% Analysis & Design15% Implementation25% Assessment (Test)25% Deployment5% Source: Walker Royce, Software Development Project Management: A Unified Approach. Addison Wesley, 1998, p.148
16
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
17
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
18
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
19
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
20
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
21
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
22
22 Future A web-based RUP project planning tool Contact: bob.heinemeyer@capablesoftware.com (602) 620-3882 www.capablesoftware.com
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.