Applying Agile Principles to Project Management Tyler Monson PMP, CSM Hiren D. Vashi PMP, PMI-ACP, CSM, CSP
Overview/Objective Agile Manifesto Agile Principles Agile/Scrum vs. Waterfall Modified Scrum Approach Experiences, Common Issues, Difficulties Q & A
Agile Manifesto (2001) We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.
Agile Principles Software 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Satisfied customers = #1 Deliver, deliver, deliver Focus on your customer Changes 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. Changes are good! Welcome changes Focus on features Delivery 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. Faster time to market Short sprints/iterations Release on time Cooperation 4. Business people and developers must work together daily throughout the project. Single point of contact? Developers & customers Team Development
Agile Principles (cont.) Motivation 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. Leader s job in Agile Embrace Theory Y Step back Communication 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Co-location Meet / call Any team Progress 7. Working software is the primary measure of progress. We are on target Documents don t count Internal reporting? Sustainability 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. Prioritization Backlog, burn-down Collaboration
Agile Principles (continue) Excellence 9. Continuous attention to technical excellence and good design enhances agility. Supports #1 and #3 Good design needed Definition of DONE Simplicity Self-organization 10. Simplicity--the art of maximizing the amount of work not done--is essential. Agile Less Simplify = Central Tradeoff 11. The best architectures, requirements, and designs emerge from selforganizing teams. People are intelligent! Let them organize Step back and facilitate Reflect 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Throughout project Not only at end Agility = changeability
Agile vs. Waterfall Constraints Priority Driven Guess Driven Estimates
Agile vs. Waterfall
The Father of Waterfall or Agile? Dr. Winston W. Royce Managing the Develop ment of Large Software Systems, 1970 I believe in this concept, but the implementation described above is risky and invites failure.
Risk: Agile vs Waterfall
Scrum Process
1. Project Initiati on User Requirements Vision Identify Team and Roles Pre-Kickoff Call 2. Kickoff Project Charter Feature Roadmap Release Planning Super User Training Sprint Planning Begin 1 st Sprint Release Planning Jan Feb Mar Apr May Jun Highest Higher 3. Configuration Sprints 2 Weeks 1-2 (2hour) Configuration sessions per w eek Consultant shows out-of-box feature Discovery and gap analysis Action items for next session (including testing of current configurations) End of Sprint Review/Planning Meeting Demonstrate working config s from the Sprint Identify outstanding Issues Review Feature backlog and plan next Sprint 4. Release End User Training End User Support
Scrum Team Stakeholders Scrum Team Product Owner Scrum Master Development Team
Implementation Team Executives Stakeholders Internal Users Implementation Team External Users Other Departments PMWeb Owner Super Users PMWeb Administrator Core Team Lead Implementation Consultant Report Developer Report Developer
Common Issues/Concerns Scrum assumes fully dedicated teams which we don t have Team is not co-located Gotomeeting Set Meeting times Can I use agile if I have limited resources or a matrix organization? Requires Discipline Holding meetings Tracking Progress Stakeholders do not understand or buy into the process Need to educate them Modified approach Difficulty in long term projection of when functions will be released Prioritization is key Use milestones and backstops Do not have the right Product Owner Estimating Product Backlog Grooming
Q&A