2. 4/13/2011 2 “The only constant is change” Jack Welch, Former GE CEO
3. Agile Manifesto 4/13/2011 3 Processes and tools Individuals and interactions Over Comprehensive documentation Working software Over Contract negotiation Customer collaboration Over Following a plan Responding to change Over Source: www.agilemanifesto. org
4. Agile Principles Welcome change Our project is constantly changing Optimize the project around that environment Working software is the primary measure of progress Nothing is complete until we have working software “Just Enough” Process and Artifacts Sufficient to achieve iteration goals and readily maintain the results Self-Organizing Teams The team actively participates in managing the iteration Teams develop low level plans to achieve iteration goals Knowledge transfer via conversation . . . Is the most effective communication method, written words / Models leave too much open to interpretation Collective Ownership 4/13/2011 4 Source: Scaling Software Agility – Best Practices for Large Enterprises by Dean Leffingwell
5. SCRUM’s Definitions Scrum is an agile Process that allows us to focus on delivering the highest business value in the shortest time. (Mike Cohn, Mountain Goat Software) Scrum is an iterative, incremental framework for project management and agile software development. (Wikipedia). Scrum is a Framework that let us create Software focused in both business needs and business changes in the shortest period of time. (Myself) 4/13/2011 5
6. SCRUM Origins Jeff Sutherland The first software development Scrum was created at Easel Corporation in 1993 Ken Schwaber Wrote the first article about SCRUM at *OOPSLA96. http://cf.agilealliance.org/articles/system/article/file/786/file.pdf Ken Schwaber and Mike Cohn Co-founded Scrum Alliance in 2002, initially within the Agile Alliance 4/13/2011 6 *Object-Oriented Programming, Systems, Languages, and Applications Conference
46. Sprints The heart of Scrum is a Sprint Normally contains Sprint planning meeting. Development work. The sprint review. Sprint retrospective Sprints should occur one after another, without time between sprints Scrum projects make progress in a series of “sprints” Typical duration is 2–4 weeks or a calendar month at most Product is designed, coded, and tested during the sprint 4/13/2011 10 SPRINT Shippable
47. Sequential vs. overlapping development Requirements Design Code Test Rather than doing all of one thing at a time... … Scrum teams do a little of everything all the time SPRINT Shippable Source: “The New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986. 11 4/13/2010
48. Changes during the Sprint 4/13/2011 12 SCRUM Master Changes SPRINT Shippable The Scrum Master ensures that no changes are made that would affect the sprint goal
51. Product Owner Define the features of the product Product Backlog owner Decide on release date and content Be responsible for the profitability of the product (ROI) Prioritize features according to market value Adjust features and priority every iteration, as needed Accept or reject work results He can cancel an Sprint. 4/13/2011 15
52. Scrum Master Represents management to the project Responsible for enacting Scrum values and practices Removes impediments Ensure that the team is fully functional and productive Enable close cooperation across all roles and functions Shield the team from external interferences A Scrum Master should never be the Product owner 4/13/2011 16
53. Team Typically 7 people (+/- 2) Cross-functional team: Teams are self-organizing Membership should change only between sprints Turns the product backlog into increments of potentially shippable functionality Show the deliverables to the product owner 4/13/2011 17
55. Product Backlog Is the list of requirements per product. Is dynamic and in constantly evolution. (alive document) Prioritized by the product owner Risk, value, and necessity. Reprioritized at the start of each sprint. Product Backlogs items are usually stated as user stories. Should take around 10% of each sprint to review the product backlog. 4/13/2011 19
57. Sprint Backlog Consists of the tasks the Team performs to turn Product Backlog items into a “done” increment. It is developed during the Sprint Planning Meeting. It is all of the work that the Team identifies as necessary to meet the Sprint goal. One day or less is a usual size for a Sprint Backlog item that is being worked on. Only the Team can change its Sprint Backlog during a Sprint 4/13/2011 21
58. The sprint Goal A short statement of what the work will be focused on during the sprint Life Sciences Support features necessary for population genetics studies. Database Application Make the application run on SQL Server in addition to Oracle. Financial services Support more technical indicators than company ABC with real-time, streaming data. 22 4/13/2011
59. Sprint Backlog sample 4/13/2011 23 8 4 8 16 12 4 10 8 16 11 8 16 12 8 8 8 8 8 4 Add error logging 8 Tasks Mon Tues Wed Thur Fri Code the user interface Code the middle tier Test the middle tier Write online help Write the food class
60. Sprint Burndown Chart Is a graph of the amount of Sprint Backlog work remaining in a Sprint across time in the Sprint 4/13/2011 24
61. 4/21/2010 25 4 8 12 7 10 16 11 16 8 Tasks Mon Tues Wed Thur Fri Code the user interface 8 Code the middle tier 16 Test the middle tier 8 Write online help 12 50 40 30 Hours 20 10 0 Mon Tue Wed Thu Fri
67. Estimate sprint backlog in hoursSprint planning meeting Team capacity Product backlog Business conditions Current product Techno-logy
68. Sprint Planning Meeting Is when the iteration is planned. It is time-boxed to eight hours for a one month Sprint. “What?” the Product Owner presents the top priority Product Backlog to the Team “How” the Team figures out how it will turn the Product Backlog selected during Sprint Planning Meeting (What) into a done increment a Sprint Goal is crafted. Usually, only 60-70% of the total Sprint Backlog will be devised in the Sprint Planning meeting. The rest is stubbed out for later detailing, or given large estimates that will be decomposed later in the Sprint. 4/13/2011 28
69.
70. Daily Scrum Meeting 3 questions 4/13/2011 30 These are not status for the Scrum Master They are commitments in front of peers
71. Sprint Review 4/13/2011 31 This is a four hour time-boxed meeting for one month Sprints. Team presents what it accomplished during the sprint Typically takes the form of a demo of new features or underlying architecture The Product Owner identifies what has been done and what hasn’t been done. The Team discusses what went well during the Sprint and what problems it ran into, and how it solved these problems.
72. Sprint Retrospective 4/13/2011 32 After the Sprint Review and prior to the next Sprint Planning meeting This is a three hour, time-boxed meeting for monthly Sprints At this meeting, the Scrum Master encourages the Scrum Team to revise, within the Scrum process framework and practices, its development process to make it more effective and enjoyable for the next Sprint