® IBM Software Group Using RUP Effectively: How to drive success and avoid common pitfalls Per Kroll, Chief Architect IBM Rational Expertise Development & Innovation (REDI) © 2007 IBM Corporation IBM Software Group | Rational software Per Kroll - Background Product Manager and later Development Manager of RUP since creation in 1996 Chief Architect, IBM Rational Expertise Development & Innovation (REDI Project lead – Eclipse Process Framework Core Member – SWG Agile Adoption Team (Co-) Author of The Rational Unified Process Made Easy – A Practitioner’s Guide to RUP Agility and Discipline Made Easy – Practices from OpenUP and RUP 2 IBM Software Group | Rational software Discussion Topics What is RUP? RUP and Managing Iterative Development RUP and Agility at Scale Adopting RUP and Measured Capability Improvement Framework Parting thoughts 3 IBM Software Group | Rational software What Is RUP? A set of principles A collection of out-of-the-box processes to use as a starting point A customizable process framework and knowledge base supports implementation of the principles 4 IBM Software Group | Rational software The Spirit of The Rational Unified Process 1. Attack major risks early and continuously… or they attack you 2. Ensure that you deliver value to your customer 3. Have a maniacal focus on working software 4. Accommodate change early in the project 5. Baseline an executable architecture early on 6. Build your system with services and components 7. Work closely together as one team 8. Make quality a way of life, not an afterthought 5 IBM Software Group | Rational software RUP: Out-of-the-Box Processes RUP for Service-Oriented Modeling and Architecture RUP for Maintenance Projects RUP for COTS Packaged Delivery RUP for System z RUP for Small Projects RUP for Medium Projects RUP for Large Projects RUP for Systems Engineering RUP for Compliance Management RUP for Asset-Based Development RUP for Globally Distributed Development (beta) 6 IBM Software Group | Rational software Two dimensions, four (or more) process styles Waterfall Few risk, sequential Late integration and testing Relaxed Disciplined Little documentation Light process Low ceremony Well-documented Traceability CCB High ceremony Iterative Risk driven Continuous integration and testing IBM Software Group | Rational software RUP Process Framework Waterfall Few risk, sequential Late integration and testing Common language Common Practices Oversight Flexible resourcing Reuse Low Ceremony RUP Framework Little documentation Light process OpenUP RUP “Light” RUP for large-scale SOA RUP for Sys Eng High Ceremony Well-documented Traceability CCB Iterative Risk driven Continuous integration and testing 8 IBM Software Group | Rational software Rational Process Library Broad variety of method plug-ins included in Rational Method Composer Enterprise plug-ins IBM Rational Unified Process, or RUP Project-specific plug-ins Now a library of over 100 content packages! RUP for COTS Package Delivery RUP for System z RUP for Maintenance Projects RUP for Asset-Based Development RUP for Legacy Evolution RUP with ITSM/ITUP Connection RUP for Model-Driven Systems Development (MDSD) RUP for Global Development and Delivery Standard-specific plug-ins RUP for Global Development and Delivery Maintenance IBM Rational Method for Portfolio Management (for Initiatives) IBM Rational Method for Program Mobilization IBM Tivoli Unified Process (ITUP) RUP for Department of Defense Architecture Framework (DoDAF) Solution-specific plug-ins Practice-specific plug-ins SOA: RUP for User Experience Modeling RUP for Service-Oriented Modeling and Architecture Governance: Technology/tool-specific plug-ins SOA Governance RUP for Microsoft® .NET Asset-Based Governance RUP for J2EE™ RUP for Practical Software & Systems Measurement (PSM) RUP for Rational Application Development Compliance: RUP for Rational Software Architect RUP for Compliance Management RUP Plug-in for WebSphere® Business Modeler (beta) RUP for Automated Software Quality RUP for CMMI® Compliance Support (Rational Performance Tester, Functional Tester, and Manual Tester) A collection of out-of-the-box method content and processes that you can customize to address a diverse set of enterprise and project needs and development styles 9 IBM Software Group | Rational software Process Management Create, customize, publish, and enact software & systems development processes according to project needs Governance Process Management & Best Practices Leverage a rich set of process assets and guidance to capture & maintain development, management, and governance processes Automate, integrate, and govern core business processes of software and systems delivery through an integrated set of proven, industry leading tools Establish consistent processes driven by standards and best practices to support corporate governance objectives Process Library (with RUP) Rational Software Delivery Platform Rational Method Composer Manage, author, configure, and deploy effective processes tailored to project needs 10 IBM Software Group | Rational software Discussion Topics What is RUP? RUP and Managing Iterative Development RUP and Agility at Scale Adopting RUP and Measured Capability Improvement Framework Parting thoughts 11 IBM Software Group | Rational software Waterfall Development - What Happens in Practice Sequential activities: Requirements Design Integration Test Integration Begins Development Progress (% coded) 100% Code Late Design Breakage Original Target Date Project Schedule 12 IBM Software Group | Rational software Principle: Demonstrate Value Iteratively Better progress profile Prototypes Architecture Development Progress (% coded) 100% Demonstrable results Feedback Walker Royce, 1995 Functional Releases Product Release Modern Project Profile Waterfall Project Profile Project Schedule 13 IBM Software Group | Rational software Feedback: Less Waste Never Used 45% [1] Customers often don't know exactly what they want at the beginning of a project. Rarely Used 19% [1] Implementing Lean Software Development From Concept to Cash: Mary & Tom Poppendieck – Addison Wesley (2006) 14 IBM Software Group | Rational software Iterative Development Focuses the team Time-boxed Has a plan and assessment Prioritized work Agile estimation Produces a demo-able and shippable build 15 IBM Software Group | Rational software RUP’s Project Phases and Milestones Forces extended team to agree on: Inception: Do we understand what we are building? Elaboration: Do we understand how to build it? Construction: Are we ready to release in the near future? Transition: Can we release now? iteration iteration iteration iteration iteration iteration Key stakeholders frequently do not have time to review the results of every iteration. iteration Provides explicit milestones centered on balancing risk mitigation and value creation IBM Software Group | Rational software Understand the Problem Space Your goal is to find a Path from Here to There Initial Project Status Reused assets Staffing, skills Stakeholder Satisfaction Space IBM Software Group | Rational software Divide Problem Into Smaller Problems Your goal is to find a Path from Here to There 1 2 3 4 5 6 Planned Path Initial Project Status Reused assets Staffing, skills Stakeholder Satisfaction Space IBM Software Group | Rational software Understand The Real Dynamics Planned Initial State Actual Initial State Planned Completion 1 3 2 4 5 6 Planned Path Actual Path Initial Project Status Reused assets Staffing, skills Stakeholder Satisfaction Space IBM Software Group | Rational software Use Iteration Assessments to Change Direction Planned Initial State Planned Completion Actual Initial State 2 1 3 4 5 6 Planned Path Actual Path 1 2 Initial Project Status Reused assets Staffing, skills 3 4 5 6 7 Stakeholder Satisfaction Space IBM Software Group | Rational software Iteration Assessments Helps teams see beyond their immediate deliverables Provides an opportunity to have some fun at the end of each milestone period Scenarios and samples become a regular part of the informal planning and discussions that happen every day Marketing Collateral Tutorials Web Iteration Builds User Task Scenarios Initial iterations focus on getting team leads and development team involved so they see first hand how things are shaping up As the iterations start to take shape, more participants are involved including management, sales, marketing, support, beta customers, etc. Iteration Assessments In planning iteration, artifacts needing to be built for successful exit are identified and, thru iteration, development works to build them Prior to assessment, core team comes together to verify artifacts can be built (and does what’s necessary to close any issues) At iteration assessment, broader team comes together for one day to build artifacts for themselves Issues and observations are captured and incorporated into the formal plans for the next iteration Training Material Demos PVT, SVT IBM Software Group | Rational software Plan With Evolving Levels of Detail Coarse-grained Plan: Project Plan Fine-grained Plans: Iteration Plans One For Entire Project Next Iteration Phases and major milestones What and when Iterations for each phase Number of iterations Objectives and Duration Current Iteration Iterative does not mean less work and shorter schedule It is about greater predictability IBM Software Group | Rational software Solution: Use Iteration Assessments to Change Direction Planned Initial State Initial Actual Initial State Updated 2 1 Planned Completion 3 4 5 6 Planned Path Actual Path 1 2 Initial Project Status Reused assets Staffing, skills 3 4 5 6 7 Stakeholder Satisfaction Space IBM Software Group | Rational software Discussion Topics What is RUP? RUP and Managing Iterative Development RUP and Agility at Scale Adopting RUP and Measured Capability Improvement Framework Parting thoughts 24 IBM Software Group | Rational software Challenges with Agile in the Mainstream Compliance requirement Low risk Critical, Audited Enterprise discipline Enterprise focus Project focus Geographical distribution Co-located Entrenched process, people, and policy Global Minimal Significant Agile Development Organization distribution (outsourcing, partnerships) Application complexity Simple, single platform Complex, multi-platform Team size Under 10 developers Third party In-house Degree of Governance 100’s of developers Informal Formal 25 IBM Software Group | Rational software Agile Development with Rational Unified Process (RUP) Follow RUP’s agile practices Regular delivery of working software Active stakeholder participation Test-Driven Development (TDD) Collaborative development Continuous builds Early and frequent system-level testing Just enough process RUP Differentiators – scale agility to complex situations Executive oversight Application complexity Geographical distribution Large team size Compliance requirements … 26 IBM Software Group | Rational software Lean Development Governance www.ibm.com/developerworks/ Pragmatic Governance Body Align HR Policies With IT Values Iterative Development Staged Program Delivery Align Stakeholder Policies With IT Values Risk-Based Milestones Business-Driven Project Pipeline Adapt The Process Continuous Improvement Simple And Relevant Metrics Continuous Project Monitoring Embedded Compliance Scenario-Driven Development Organization Processes Mission & Principles Measures Roles & Responsibilities Policies & Standards Promote Self-Organizing Teams Integrated Lifecycle Environment Align Team Structure With Architecture Valued Corporate Assets Flexible Architectures 27 IBM Software Group | Rational software Discussion Topics What is RUP? RUP and Managing Iterative Development RUP and Agility at Scale Adopting RUP and Measured Capability Improvement Framework Parting thoughts 28 IBM Software Group | Rational software Common Reasons for Adopting RUP Communicate Your Business Objectives through Your Organization Project Execution “We have problems delivering projects on time, on budget, and meeting all high priority requirements. There is no consistency or predictability.” Compliance Audits “It’s a nightmare every time we’re audited. Demonstrating our process to the auditor is laborious, time-consuming and painful.” Process Improvement “We know our process isn’t working. We know we need to change it. We’re just not sure what is the right process, how to effect that change and get everyone to follow it.” Outsourcing / Distributed Development “Budget was just cut 40% and we need to outsource. How do we communicate our process to the outsource vendor? If we don’t, they’re going to charge a premium.” Process Deployment / Execution “We have a great process, but it is too expensive to maintain, and we are not effectively deploying it.” 29 IBM Software Group | Rational software Common Challenges with RUP Adoption Organizational Challenges Lack of executive buy-in Lack of understanding of why to change Process group not trusted People challenges Waterfall/serial tailorings Big up front architectures/requirements Saving the tricky part for later Testing at the end of the lifecycle Process challenges Overly specialized people Too much formality Unwillingness to change Too many artifacts “Analysis paralysis” No developer testing Little/no customer involvement No continuous integration 30 IBM Software Group | Rational software Measured capability improvement framework Map business value to software delivery practices Target: Phase 1 Already implemented Outside scope Example: Financial Service Company Customer Business Challenges Operational Objectives Software Delivery Best Practices Create financial products more quickly Reduce time-to-market Functionality of customer web falling behind competition Improve productivity Continuous integration Inconsistencies with integrated financial reporting Increase innovation Shared vision Recent SOX audit failure Improve consistency/predictability Improve oversight Enable flexible/global resourcing Satisfy compliance mandate Use-case driven development Whole team Risk-value lifecycle Release planning Test-driven development Asset-based development Asset governance Iterative development SOA modeling Ongoing Adoption Assessment Business Metrics Enterprise SOA Adopt Practice SOA governance Project Time to Market (M) Quality (Defect Density) A 22 2.3 7 B 14 1.4 4 Functional testing C 18 1.6 6 Test management D 9 0.3 10 E 6 0.4 8 Structured testing … Innovation (Cust. Sat. ) Architecture modeling Security testing 31 IBM Software Group | Rational software IBM Rational Self Check for Software Teams The Assessment Tool Practice Comments Use Cases Big Picture of Practice Adoption Average Deviation Evol. Architecture Use Stories instead 7.8 0.50 Not enough, not in build 6.8 1.89 Stakeholder Feedback Want more 8.5 0.58 Time-Boxed Iterations Not well specified 8.3 0.50 Not Fridays 9.3 0.50 Iterative Not enough TDD 4.5 1.91 Non Solo Reflections Need clear actions 8.8 0.50 Reflections Static Analysis Not automated yet. 3.3 0.96 Unit Test Daily Scrum Test Early Experience Report Vision Use Cases Automated Unit Tests Scrum meeting 0 2 4 6 8 10 Deep Dive on Practice 32 IBM Software Group | Rational software Quick example: The iterative questions Target Results Section Questions Average Deviation Talk? Time-boxed Iterations Do you hold your iteration end dates fixed and adjust content of the iteration if needed? 7.3 0.645 Working increment Does each iteration (except perhaps the earliest ones) result in a stable executable release (internal or external), with tested code? 8.4 1.305 Feedback Used Do you use feedback from key stakeholders such as sponsors, partners, users to adjust the content of the next iterations? 8.6 0.479 Prioritized Backlog Do you select content for your next iteration from a set of work items (including functionality and defects)? 3.6 1.140 Talk Just-In-Time Detailed Plan Do you detail the plan for the next iteration at the end of the current iteration? 4.7 2.517 Talk Retrospective During iteration assessment, do you calibrate progress made with project goals by discussing what worked well, what didn’t work well, and how to improve? Do you improve planning for next iteration and update long-range plan accordingly? Do you use test results to improve your process? 6.2 0.837 MicroIncrements For each iteration, do you define tasks that are measurable toward the iteration objectives, and small enough to be performed by one or a few people? 3.8 3.189 Iteration Length (Computed average iteration length. The recommended iteration length should be about 4 weeks. Most projects should start with 4 weeks and modify based on needs. Some very large initiatives could have longer iterations.) 4.8 0.837 Talk 33 IBM Software Group | Rational software Example: Are we iterative? We’re iterative, right? The Big Picture Time boxed iterations Vision Use Cases 10 Automated Unit Tests 7 Scrum meetings Iterative 3 Working Software Scrum meetings 0 Reflections Prioritized Backlog Non Solo Feedback Used Custom 0 2 4 6 8 10 Estimating 235 people. Multi-shore. Java 8 week “iterations”. 24 Month project. New to agile. Iterations have enabled them to realize the plan was severely overbooked and prioritization of content began early. 34 IBM Software Group | Rational software Look at deviation among team members The Big Picture Deep dive on Iterative 30 people. Distributed. Java 2 week iterations. 6 Month project “Agile has enabled the project to be responsive to changing requirements and to deploy more function in a drastically reduced timeframe.” Sustainable Pace – Testers have worked at a frantic pace to make adjustments to scope. Recommend team understand estimating and velocity so they have higher quality iterations Focus on developer testing to reduce burden on test team 35 IBM Software Group | Rational software Discussion Topics What is RUP? RUP and Managing Iterative Development RUP and Agility at Scale Adopting RUP and Measured Capability Improvement Framework Parting thoughts 36 IBM Software Group | Rational software Parting Thoughts: Adopting RUP Focus on principles of RUP Chose a version of RUP suitable for your projects Further customize it, and use development case as a living document Only use what adds value to your project A process is a baseline, evolve it as you improve Do not let the “process police” dictate what makes sense If you like practices outside RUP, include them Drive improvement based on business needs Leverage for example mapping between business objectives and practices in MCIF Measure results (MCIF can help) Practice level as well as Business level 37 IBM Software Group | Rational software Resources RMC / RUP: http://www.ibm.com/developerworks/rational/products/rup/ EPF / OpenUP: http://www.eclipse.org/epf/ Measured Capability Improvement Framework: http://www-306.ibm.com/software/rational/announce/mcif/ Self Check: http://www.ibm.com/developerworks/rational/library/edge/08/may08/kroll_krebs/index.html The Rational Unified Process Made Easy – A Practitioner’s Guide to RUP, Kroll and Kruchten, Addison-Wesley, 2003 38 IBM Software Group | Rational software Questions 39 IBM Software Group | Rational software Learn more at: IBM Rational software Architecture management IBM Rational Software Delivery Platform Rational trial downloads Process and portfolio management developerWorks Rational Change and release management IBM Rational TV Quality management IBM Rational Business Partners © Copyright IBM Corporation 2007. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, the on-demand business logo, Rational, the Rational logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 40
© Copyright 2026 Paperzz