I Planned all the Projects for the Year, How Can Agile Help me Get Them Done? AgileIndy April 17, 2015 Sandi Keller Enterprise Agile Coach LeadingAgile [email protected] [email protected] www.LeadingAgile.com About the Presentation § We all try to get more things done than are humanly possible. § Today we’ll learn that adding dedicated Agile Teams at the Portfolio and Program levels help us focus on delivering the right things rather than just getting work started. § And how these teams help our transformation succeed 3 The Problem With All Those Projects Annual Planning / Budgeting • Often centralized & coordinated • Beginning of Budget Year • Agree to Projects we want to get done • Estimate & Forecast Projects Hours Timeline Project A 1250 4 Project B 2300 10 Project C 8000 18 Project D 12000 48 23,550 80 • We plan for the utilization of people • Get projects started as planned making sure each one gets it’s allocated hours 5 # People What Happens Next? • It takes time to pull the team together and get going • The people you need for your project are already on 1, 2 or more projects • Projects are always bigger than the estimates • You continue to come up with more new projects without killing any off 6 What Happens Next? By MARCH, Your plan looks like this 7 Projects Hours Timeline # People Project A 1250 4 Project B 2300 10 Project C 8000 18 Project D 12000 48 Project E 4350 12 Project F 3200 8 31,000 100 What Happens Next? And by JULY, Your plan looks like this 8 Projects Hours Timeline # People Project A 1250 4 Project B 2300 10 Project C 8000 18 Project D 12000 48 Project E 4350 12 Project F 3200 8 Project S 7800 16 Project T 2100 5 23,550 80 40,900 121 What Happens Next? § You starve one project to feed another that is “higher priority” § Projects start but finish long after their planned end date § There is no accountability § Quality suffers § People burn out 9 Projects Hours Timeline # People Project A 1250 4 Project B 2300 10 Project C 8000 18 Project D 12000 48 Project E 4350 12 Project F 3200 8 Project S 7800 16 Project T 2100 5 40,900 100 You Realize This Doesn’t Work Well • Blame it on poor estimates • Double efforts the next round to get estimates “more accurate” 10 You Hear Agile Can Help With These Problems! Choose a project 11 Projects Hours Timeline # People Project B 1250 4 Project C 2300 10 Project D 8000 18 Project C 12000 48 23,550 80 You Hear Agile Can Help With These Problems! Choose a project And form a team Product Owner Analyst ScrumMaster Developers 12 Testers Projects Hours Timeline # People Project B 1250 4 Project C 2300 10 Project D 8000 18 Project C 12000 48 23,550 80 Kick off our Agile Team & Project (Pilot) ü Learn about agile ü Find a place to sit together ü Create a team board ü Do some team building ü Do all the ceremonies….demo/retro/planning/standups ü Work on improving our practices – good quality, frequent releases, planning sprints, minimizing risk ü Have successful sprints and release or project ü Might even have formal coaching 13 Agile Worked Great! • It’s not only the perception, it’s reality • The team was fully dedicated • Very few dependencies • The project was successful • People love their new way of working • Select another project • Form a second team 14 The 2nd Agile Team Is Harder Dedicating People Difficult to find people because of our utilization model § You form a team but we can’t keep people on it 100% § You still have all those projects and everyone is on more than one § Subject Matter Expertise is needed on multiple projects The 2nd Agile Team Is Harder Dependencies • If you have legacy or complex systems, you can’t put everyone needed to build a solution on one team 16 It’s Harder the 2nd Time – Dependencies The 2nd Agile Team Is Harder Dependencies • If you have legacy or complex systems, you can’t put everyone needed to build a solution on one team • You have a lot of groups to work with outside of your team 17 How do we solve this problem when Transforming the organization? We form Additional Agile Teams to support and govern the Flow of Work (and Value!) Portfolio Team 19 Product Owner Team Agile Teams and What They Do Pilot “Slice” Intake Portfolio Team Product Owner Team Delivery Team Services Team Services Team Product Owner Team Delivery Team Delivery Team Services Team Services Team 20 Agile Teams and What They Do Pilot “Slice” Intake Portfolio Team Product Owner Team Delivery Team Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Services Team Services Team Product Owner Team Delivery Team Delivery Team Services Team Services Team 21 Agile Teams and What They Do Pilot “Slice” Intake Portfolio Team Product Owner Team Delivery Teams – These teams perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Services Team Delivery Team Services Team Product Owner Team Delivery Team Delivery Team Services Team Services Team 22 Agile Teams and What They Do Pilot “Slice” Intake Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. Delivery Teams – These teams perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Services Team Portfolio Team Product Owner Team Delivery Team Services Team Product Owner Team Delivery Team Delivery Team Services Team Services Team 23 Agile Teams and What They Do Portfolio Teams – These teams make Pilot investment decisions, govern the portfolio and make sure that work is moving through the system. “Slice” Intake Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. Delivery Teams – These teams perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Services Team Portfolio Team Product Owner Team Delivery Team Services Team Product Owner Team Delivery Team Delivery Team Services Team Services Team 24 Description Structure Portfolio Teams – These teams make investment decisions, govern the portfolio and make sure that work is moving through the system. Pilot “Slice” Intake Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. Product Owner Team Delivery Teams – These teams perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Portfolio Team Delivery Team Service Delivery Team Product Owner Team Delivery Team Service Delivery Team Delivery Team Service Delivery Team Service Delivery Team 25 Description Structure Portfolio Teams – These teams make investment decisions, govern the portfolio and make sure that work is moving through the system. Pilot “Slice” Intake Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. Kanban Portfolio Team Product Owner Team Product Owner Team Kanban Scrum Delivery Teams – These teams perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Process Delivery Team Service Delivery Team Delivery Team Service Delivery Team Delivery Team Service Delivery Team Service Delivery Team 26 Description Planning Horizon Portfolio Teams – These teams make investment decisions, govern the portfolio and make sure that work is moving through the system. Pilot “Slice” 12-18 Months Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. 4-6 Months Delivery Teams – These teams 2-4 perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Structure Process Kanban Portfolio Team Product Owner Team Product Owner Team weeks Service Delivery Team Kanban Scrum Delivery Team Delivery Team Service Delivery Team Delivery Team Service Delivery Team Service Delivery Team 27 Description Planning Horizon Portfolio Teams – These teams make investment decisions, govern the portfolio and make sure that work is moving through the system. Pilot “Slice” 12-18 Months Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. 4-6 Months Delivery Teams – These teams 2-4 perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. They support the needs of the delivery teams. Product Owner Team Portfolio Team Epics Product Owner Team Stories Delivery Team Delivery Team Service Delivery Team Process Kanban Features weeks Service Delivery Team Work Types Structure Kanban Scrum Delivery Team Service Delivery Team Service Delivery Team 28 Work Types & Progressive Elaboration Work Types Epics Features User Stories • Achieves a business goal • 1-3 months in duration – can be part of an initiative • May span more than one team • Managed by the Portfolio Team • Typically 2-4 weeks in duration • Ideally contained within a team • Derived from Epics and managed by the Product Owner Team • Ideally complete end to end releasable functionality • Smallest increment of value • Typically less than one week • Derived from Features • Developed by the delivery teams 30 The Strategic Vision is Progressively Elaborated into Epics, Features and Stories Portfolio Team Product Owner Team Delivery Team STORY 31 Delivery Team Delivery Team Portfolio Team Portfolio Team Activities § Makes decisions about what to invest in and continuously manage investments § Portfolio Team reviews Epics in each state § Portfolio Team communicates decisions to Product Owner Team and key stakeholders 33 Who Belongs on This Team? Leaders in their respective areas: § Product Management § Operations § Architecture § Project Management 34 This Team Focuses On… § Strategic alignment § Understanding the broader business & market needs § The health and performance of the portfolio § Holding the system accountable (PO & delivery teams) 35 Product Owner Team Why a Product Owner Team? § Helps deal with challenges of a single Product Owner at scale § Enabler of the delivery team § Increase clarity of the backlog § Reduce churn at the leadership level and among the delivery teams 37 Product Owner Team Activities § Provide support and guidance to all involved to facilitate moving Features through the Program Kanban § Prepare Epics and Features for Agile Teams § Provide support and guidance to Agile Teams to build and test User Stories § Facilitate collaboration and communication with the Portfolio Team § Facilitate collaboration across Agile Teams 38 This Team Focuses On… § Whole system view of the backlog § Architecture dependencies § Business dependencies § Understands the scope of the release 39 Who Belongs on This Team? § Product Management § Project Management § Architects § Development § Quality § Business Analyst 40 Product Owner Team Rules of Engagement § Product, not project focused. Team stays together for a long time, just like our delivery teams. § Empowered to make decisions § Works in collaboration with the business and delivery team members § Does not commit on behalf of the delivery teams 41 Agile Governance Governance The Agile Governance Model manages: § Demand & Value Management § Work Prioritization § Execution Monitoring and Control § Scope Management and Deliverables 43 Teams and Collaborations Enterprise Agile Delivery Approach Product Management Team Portfolio Delivery Teams Product Owner Teams Three Tier Governance Model Portfolio Team Investment Alignment Investment Priori9za9on Demand Planning Strategic Alignment Epic Intake Release Targe9ng Investment Valida9on Product Owner Team Solu9on Vision Ready To Build Release Viability Story Refinement Produc9on Ready Release Execu9on Governance (Accountability) Detailed Planning (Clarity) Release Planning Build Develop and Test Integra9on Tes9ng Produc9on Ready Release Accountability Delivery Teams Sprint Plan Work In Process Daily Review Story Done Sprint Done Key GOALS in Governance Flow Investment Alignment Investm ent Valida9o n Investment Priori9za9on Demand Planning Strategic Alignment Epic Intake Produc9on Ready Release Execu9on Governance (Accountability) Detailed Planning (Clarity) Solu9on Vision Develop and Test Story Refinement Integra9on Tes9ng Produc9on Ready Release Accountability Sprint Plan Work In Process Daily Review Story Done Sprint Done Strategic Alignment Demand Planning Detailed Planning Execution Governance • Maximize Strategic Alignment • Increase Transparency • Organizational focus on delivery of the most valuable work • Reduce Time to ROI • Plan for significant risks and dependencies • Balance capacity and demand • Reduce rework • Improve quality • Agree to minimal capabilities needed to deliver value • Ensure credible release planning • Assess and guide the progress of value delivery • Minimize delivery risks • Continually make continue, pivot, kill, ship decisions Investment Alignment Demand Planning Investment Priori9za9on Demand Planning Strategic Alignment Execu9on Governance (Accountability) Detailed Planning (Clarity) Story Refineme nt Solu9on Vision Develop and Test Integra9on Tes9ng Produc9o n Ready Release Accountability Sprint Plan Work In Process Daily Review Sprint Done Demand Planning • Increase predictability • Reduce Time to ROI • Feature Definition • Estimation/Release Targeting 46 • Plan for significant risks and dependencies • Balance capacity and demand Define Features High Level Architecture Acceptance Criteria • Add items to shopping cart • Remove items from cart • Checkout with credit card or paypal UI Mockups 47 Process Flow Estimation & Release Targeting • Mock plan features into sprints using your planned capacity (for all teams needed to complete the feature) • Try to define enough features for at least 4 sprints Sprint 1 Sprint 2 Sprint 3 Sprint 4 Team 1 F1 F2 F1 F3 Team 2 F1 F1 F3 F4 Team 3 F2 F3 F2 F4 Epic A Epic B Portfolio Team Decision Decides if Epic/features move forward to Detailed Planning • Continue • Change • Kill 49 Investment Alignment Detailed Planning Investment Priori9za9on Demand Planning Strategic Alignment Execu9on Governance (Accountability) Detailed Planning (Clarity) Story Refineme nt Solu9on Vision Develop and Test Integra9on Tes9ng Produc9o n Ready Release Accountability Sprint Plan Work In Process Daily Review Sprint Done Detailed Planning • Story Mapping • Release Planning 50 • Reduce rework • Improve quality • Agree to minimal capabilities needed to deliver value • Ensure credible release planning Story Mapping • An approach to organizing and prioritizing user stories • Is a tool to help in release planning Story Maps visualize the scope Prioritize Stories Prioritize Features Activity 1 Activity 2 Activity 3 Activity 4 User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story • Story Maps organize product capabilities by user activity • Story Maps communicate the “big picture” to delivery teams Story Maps Minimum Marketable Feature (MMF) Activity 1 Activity 2 Activity 3 Activity 4 User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story MMF a These two stories represent the MMF for Activity 1. The others would be nice, but this is the minimum. Story Maps Minimum Viable Product (MVP) Activity 1 Activity 2 Activity 3 Activity 4 User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story MMF a MMF b The MVP consists of these two MMFs, which are needed for the product to be “just barely sufficient” Release Planning • Plan stories into future sprints • Identify and sequence for dependencies Team 1 Team 2 Team 3 Sprint 1 Sprint 2 Sprint 3 Sprint 4 Story 1 Story 2 Story 3 Story 4 Story 5 Story 6 Story 7 Story 8 Story 9 Story 10 Story 11 Story 12 Story 13 Story 14 Story 15 Story 16 Epic A Story 1 Story 2 Story 3 Story 4 Story 5 Story 6 Story 7 Story 8 Story 9 Story 10 Story 11 Story 12 Story 13 Story 14 Story 15 Story 16 Epic B Story 1 Story 2 Story 3 Story 4 Story 5 Story 6 Story 7 Story 8 Story 9 Story 10 Story 11 Story 12 Story 13 Story 14 Story 15 Story 16 So What About All Those Projects? Agile isn’t going to keep you from doing stupid and unrealistic things if you want to. 57 Agile isn’t going to keep you from doing stupid and unrealistic things if you want to. It does not streamline your business to make room for pet projects. It does not save you from your inability to say NO. 58 It’s not a realistic goal to get all the projects done! Today you learned how Portfolio & Product Owner teams and an effective governance model • • • • 59 Establish accountability Manage the complexity of Agile in large orgs Set you up to collectively make good tradeoff decisions Get focused on the things that really matter Successful Piloting in Large Organizations Typical Agile Pilot Portfolio Teams – These teams make investment decisions, govern the portfolio and make sure that work is moving through the system. Pilot “Slice” Intake Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. Delivery Teams – These teams perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. These teams support the needs of the delivery teams. Service Delivery Team Kanban Portfolio Team Product Owner Team Delivery Team Pilot Service Delivery Team Product Owner Team Kanban Scrum Delivery Team Delivery Team Service Delivery Team Service Delivery Team 61 Pilot Teams for Larger Organizations Portfolio Teams – These teams make investment decisions, govern the portfolio and make sure that work is moving through the system. Pilot “Slice” Pilot Product Owner Teams – These teams define requirements, set technical direction, and provide context and coordination. Delivery Teams – These teams perform the work detailed by Product Owner Team, and assist in breaking Features down into Stories. Services Teams – These teams support common services across product lines. These teams support the needs of the delivery teams. Service Delivery Team Kanban Portfolio Team Product Owner Team Product Owner Team Kanban Scrum Delivery Team Delivery Team Service Delivery Team Delivery Team Service Delivery Team Service Delivery Team 62 If You’re Already On Your Journey § Form a program team using lead members of your delivery teams + a project manager or coordinator § Reorganize backlog into Epics & Features § Create feature level artifacts and run through a release targeting exercise § Decide if you have an achievable goal - Reduce Scope - Add capacity if you have time § Collaborative workshop to build or rebuild the backlog § Release Planning across all teams for the next period of time (ideally 3-4 sprints out) 63 Thank you for coming to my talk today! If you found this information useful and still have questions, email anytime. Kindly place the following in your subject line: AgileIndy Follow Up [email protected] Q & A Appendix Teams and Checkpoints Collabora9ons Progressive Elabora9on of Requirements Strategic Alignment Demand Management Balance Demand w/Capacity Epics Aligned with Strategy and Make Tradeoffs & Priori<zed on Value Execu9ve Strategy Team Segment Strategy Team PorKolio Team Detailed Planning Execu9on Governance Work sequenced to Maximize throughput of Value and Minimize Risk Product Owner & Program Teams Con<nue, change, ship or kill Delivery Teams Systems Team Stories Investment Theme Features Investment Theme Epic Intake Stories Stories Epics Capability Model Stories Stories Features Solu9on Vision Release Planning Story Refinement Stories Develop and Test Integra9on Tes9ng Produc9on Ready Release Release Cycle Epic Flow Agile Overview Product Owner Team Roles Product Owner Team Roles Brief Description Product Manager Support the valuable solution and ensure features are ordered considering epic priorities Solution Architect Support the technically viable solution; provide support and guidance to Tech Leads and other technology personnel Release Manager (combine with Support an achievable solution ensuring demand is balanced with capacity and dependencies; facilitate release planning and protect the release plans Program Manager if small portfolio) QA Manager Provide support and guidance for the quality of the solution; ensure quality is considered and coordinated early, define testing and integration strategy Program Manager Foster effective collaboration of the Product Owner Team to shepherd Features through the Kanban and ensure effective communication with the portfolio team; May coordinate Epic and Operational reporting Program/Release Level - Other Key Roles Program/Release Roles Brief Description Epic Owner Represents the value of the Epic and Features through the Kanban flows. Build Engineer Responsible for branching strategy, environment configuration and reliable build process Core Agile Delivery Team Product Owner, Technical Lead, Scrum Master, QA Lead from Agile Teams Go to Market Program Manager Facilitates planning and coordinates go to market/customer roll out activities Functional Lead Competency Leader focused on functional excellence Portfolio Team Key Roles Portfolio Team Roles Brief Description IT Portfolio Manager Responsible for delivery capacity Product Management Leadership Ensure the solution is valuable and strategically aligned; responsible for the Epic Backlog Architectural Leadership Ensure the technical solution is viable; define the information technology systems architecture that supports the solution Operations Leadership Ensure the broader Go To Market solution is achievable PMO Leadership Ensure development of the solution is achievable; balance capacity and demand to present options for the portfolio of epics Orchestrator Ensure the portfolio team collaborates effectively; coordinates portfolio team activities, reporting and metrics Portfolio Management Key Artifacts Epic Brief Supports the definition and flow of epics from new concept until they are delivered or killed. Light weight business case document. Portfolio Backlog Ordered list of Epics to support the prioritization of the release backlog Epic Kanban Board Tracks Epics through Portfolio process and supports Portfolio Team’s Continue, Change, Kill decisions Epic Roadmap Roadmap of features for near term and epics into the future Portfolio Dashboard Indicator of health of epics, release, risks, and dependency impacts Release Plans Credible plan to meet release objectives Team Summary Portfolio Team Product Owner Team Delivery Teams Planning Horizon • 6-18 Months • 3-6 months • 2-4 weeks Activities • Define Epics • Prioritize Epics against each other • Maintain 6-18 month roadmap • Keep focus on finishing Epics • Define Features and Stories • Prioritize Features and Stories • Manage 2-3 month rolling look ahead “Release Plan” or Planning Increment • Keep focus on Finishing Features • Deliver working software with good quality • Keep focus on delivering working tested code on a consistent basis Deliverables • Prioritized Epics • Epic Roadmap • High Level Estimates • Epic to Feature decomposition • Epic Definition of Done • Prioritized Features • Minimal Viable Product (MVP) • Ready Stories • Release Plans/Planning Increment • Managed Backlogs • Prioritized Stories • Feature Definition of Done • User Story to Task decomposition • Groomed Backlogs • Sprints • Tested Software • Story Definition of Done Constraints • Capacity of the Delivery System • Work In Process (WIP) • Budget • Capacity of the Delivery System • Work In Process (WIP) • Dependencies • Skills • Velocity • Quality of Requirements • Software development tools and practices Execution 73 Governance Detailed Planning Demand Planning Strategic Alignment Governance Step Team Artifacts/Check Points Begin Epic Brief Portfolio Team Product Owner team Problem Statement Product Position or Elevator Statement Does it align w/Strategy? Portfolio Team Portfolio Team Decision Prioritize Epic Portfolio Team Add Epic to Portfolio Backlog / Epic Roadmap Weighted Shortest Job First Elaborate Epic Brief – Define Features Product Owner Team Acceptance Criteria, High level architecture, process model Constraints: Risk, compliance, etc. Is it a viable approach? Portfolio Team Portfolio Team Decision Release Targeting Product Owner Team Estimate Features, Determine teams Mock plan features into future sprints Show Epic roadmap with near term detail of features in current qtr + epics farther out. Release Planning Product Owner Team Delivery Teams (key/lead members) Feature Breakdown, Feature/Story Mapping Build backlog, Mock plan into future sprints Testing & integration strategy, Plan for risks & dependencies Release Planning Event Product Owner Team Delivery Teams Determine integrations & release milestones Collectively commit to stories for the next planning increment (Release Plan) Build & Integrate Product Owner Team Delivery Teams Story & Feature demos, Risk Dashboard, Epic Tracking, Release Tracking Is it sufficient to release to customer/production? Portfolio Team Product Owner Team Portfolio & Product Owner Team Decision Agile Transformation Journey Journey establishes practices that build on each other as you move to the next basecamp. It takes ~ 1 qtr to get to each basecamp, depending on the team Basecamp 1 Basecamp 2 Basecamp 3 Portfolio Teams • Identifying highest priority Epics • Funding Teams • Balancing Capacity with Demand • Prioritizing Epics against each other using value estimation • Reorganizing Capability teams to remove external dependencies Product Owner Teams • Breaking Epics down into Features • Maintaining 3 month rolling Release backlog • Balancing risks across Delivery teams • Sequencing backlog work based on dependencies • Sequencing Features for options • Taking advantage of automation to perform fully integrated testing Delivery Teams • Delivering consistent work • Using feedback from current sprint to improve processes • Identifying risks • Improving efficiencies based on feedback • Improving efficiencies through Agile Development Tactics Limit focus of learning and coaching until the teams are good at it. Identify metrics to measure performance. When competencies and processes are mastered, team is ready to move onto new learning and practice. 74
© Copyright 2024