Advertisement
Advertisement

More Related Content

Advertisement
Advertisement

Scrum

  1. Paylogic, what if we go Scrum? Paylogic, what if we go Scrum? Òscar Vilaplana Paylogic October 26 2011 @grimborg http://oscarvilaplana.cat dev@oscarvilaplana.cat
  2. Paylogic, what if we go Scrum? Why Scrum Works Why Scrum works Why Scrum works for others, what it can do for us and why it will work for us.
  3. Paylogic, what if we go Scrum? Why Scrum Works Better control On complex systems, centralized control breaks down. Scrum makes the Teams self-managed. Scrum shortens the feedback loop.
  4. Paylogic, what if we go Scrum? Why Scrum Works Increment of business value The Product Owner defines "high-priority business value". The Team decides what it can do in a sprint to deliver it. Test often the value of the system being developed.
  5. Paylogic, what if we go Scrum? Why Scrum Works Scrum turns small teams into their own managers. Use many minds to solve a problem Every member is encouraged to participate. Their ideas are taken into account. They share a common purpose: they will figure out how to achieve it.
  6. Paylogic, what if we go Scrum? Honesty Honesty We are not always honest (but we have always good intentions). When are we not honest, why, and how should we do it?
  7. Paylogic, what if we go Scrum? Honesty Self acknowledgement We must be honestly account for our abilities. We must be honestly account for the project that we are working on. We must be honestly account for the tasks that we have to do.
  8. Paylogic, what if we go Scrum? Honesty Honest planning Not all tasks that we work on are planned honestly. We often need more time to discuss, review, help others. We are surprised by unsurprising events, e.g. staging issues.
  9. Paylogic, what if we go Scrum? The Heart of Scrum The Heart of Scrum How Scrum works, in a nutshell.
  10. Paylogic, what if we go Scrum? The Heart of Scrum Requirements Teams understand and commit to delivering business value Teams are free to figure out how to perform tasks Teams are given the resources they need.
  11. Paylogic, what if we go Scrum? The Heart of Scrum Teams are free to figure out how to perform tasks Once the Sprint has started, the Sprint Backlog cannot be changed from the outside. Every day, the Team has a short meeting to synchronize and pick their tasks for the day.
  12. Paylogic, what if we go Scrum? The Heart of Scrum Teams are given the resources they need. The ScrumMaster’s role is to help the Teams.
  13. Paylogic, what if we go Scrum? Bringing Order from Chaos Bringing Order from Chaos Scrum and non-Scrum ideas to bring order to a chaotic workflow.
  14. Paylogic, what if we go Scrum? Bringing Order from Chaos The team must own its work. Collective commitment. Self-organization.
  15. Paylogic, what if we go Scrum? Bringing Order from Chaos Tracer bullet When shooting in the dark, add luminiscensce to every 50th bullet. Build limited functionality through the system to demonstrate the path for all other functionality.
  16. Paylogic, what if we go Scrum? Bringing Order from Chaos Sashimi Slice of raw fish. Complete on itself. Has a complete taste similar to the way every other slice tastes. Every slice of functionality created by the developers must be complete. All that constitutes a complete product must be completed in the Sprint. Requirements gathering. Design. Coding. Testing.
  17. Paylogic, what if we go Scrum? Ready and Done Ready and Done “Ready” and “Done” are two important words, yet they are frequently misused.
  18. Paylogic, what if we go Scrum? Ready and Done Definition of Ready Tasks fully specified to the needs of the developers. Not because it’s nice to have, but because undetermined requirements can’t be worked on yet and slow down the team. Tasks estimated before the Sprint Planning meeting. If a task is not ready, it goes out of the Product Backlog.
  19. Paylogic, what if we go Scrum? Ready and Done Definition of Done. It is feature complete: the code provides all agreed features. It is code complete. There are no known defects. It has been approved by the Product Owner. It is Production ready
  20. Paylogic, what if we go Scrum? Ready and Done Definition of code complete: It is covered by unit tests. It adheres to coding standards. It has ben refactored any duplicate or ill-structured code. It contains no clever programming tricks. It is easy to read and understand. It is documented (docstrings and documentation). It has all database changelogs, migration scripts, deployment instructions. . .
  21. Paylogic, what if we go Scrum? Artifacts Artifacts What are the artifacts that Scrum adds? Who creates them? How do they work?
  22. Paylogic, what if we go Scrum? Artifacts Product Backlog List of functional and non-functional requirements that, when turned into functionality, will deliver the Product Owner’s vision. Requirements, not tasks. Prioritized so that the items most likely to generate value are top priority Divided into proposed releases
  23. Paylogic, what if we go Scrum? Artifacts Sprint Backlog Tasks that a Team defines for turning the Product Backlog for that Sprint into an increment of functionality. The tasks should take between 4h and 16h. Tasks longer than 16h are considered placeholders for tasks that haven’t been yet appropriately defined. Real-time picture of the work that the Team plats to accomplish during the Sprint. Every day, the task estimates are updated with the remaining estimated time.
  24. Paylogic, what if we go Scrum? Artifacts Burndown chart Shows the amount of work remaining across time. Visualizes the correlation between the amount of work remaining and the progress of the Team in reducing this work.
  25. Paylogic, what if we go Scrum? Artifacts Defect Backlog Bugs in the tasks of the Sprint Backlog
  26. Paylogic, what if we go Scrum? Artifacts Changes report Differences between two last Product Backlogs. What happened during the Sprint. What adaptations have been made to the project in response to the inspection at the Sprint review.
  27. Paylogic, what if we go Scrum? Artifacts Example of Changes report Why have future Sprints been reformulated? Why was the release date or content reformulated? Why did the team complete fewer requirementns than anticipated during the Sprint? Where was the incomplete work repriotitized in the Product Backlog? Why was the team less or more productive than it had anticipated?
  28. Paylogic, what if we go Scrum? Artifacts, in Paylogic Burndown chart The Team will update it during the Daily Meeting.
  29. Paylogic, what if we go Scrum? Artifacts, in Paylogic Burndown chart example
  30. Paylogic, what if we go Scrum? Artifacts, in Paylogic Scrum dashboard example
  31. Paylogic, what if we go Scrum? Artifacts, in Paylogic Scrum dashboard example
  32. Paylogic, what if we go Scrum? Artifacts, in Paylogic Scrum dashboard example
  33. Paylogic, what if we go Scrum? Artifacts, in Paylogic Defect Backlog The Team will add tasks to it during the Sprint.
  34. Paylogic, what if we go Scrum? Artifacts, in Paylogic Changes Report The Team will make it on the Sprint retrospective meeting.
  35. Paylogic, what if we go Scrum? The Scrum flow The Scrum flow What does it mean, exactly, to “do Scrum”?
  36. Paylogic, what if we go Scrum? The Scrum flow Basic Scrum flow Produt Owner produces a plan (Product Backlog). The Team commits on some of the tasks on the plan. The Team synchronizes frequently. At the end of the Sprint, the Team presents the results and re-evaluates.
  37. Paylogic, what if we go Scrum? The Scrum flow Detailed Scrum flow Product Owner produces a plan for the project that includes the Product Backlog. Work is done in Sprints. Sprints start with a Sprint planning meeting Product Owner and Team get together to collaborate about what will be done for the next Sprint.
  38. Paylogic, what if we go Scrum? The Scrum flow Sprint planning meeting: Build the Sprint backlog. Product Owner tells the Team what is desired. Identify everyone’s most urgent needs. Focus on the immediate future. Team tells the Product Owner how much of that it can turn into functionality over the next Sprint. Cannot last longer than 8h. Team plans out the Sprint: Sprint Backlog. Two parts: Choose the tasks that will go into the Sprint backlog. Timeboxed to 4h. Figure out how it will turn it into an increment of potentially shippable product functionality. Timeboxed to 4h.
  39. Paylogic, what if we go Scrum? The Scrum flow Deciding tasks for the Scrum backlog The Team can make suggestions, but the decision of what Product Backlog can constitute Sprint is the responsibility of the Product Owner. The Team is responsible for determining how much of the Product Backlog that the Product Owner wants worked on the Team will attempt to do during the Sprint. It is up to the Team, acting solely on its own and without any direction from outside the Team, to figure out how it will turn the Scrum backlog into an increment of potentially shippable product functionality.
  40. Paylogic, what if we go Scrum? The Scrum flow Daily Scrum meeting Every day, the team gets together for a 15-minute weeting: Daily Scrum. Purpose: Synchronize the work of all Team members daily Schedule any meeting that the Team needs to forwards its progress. Everybody must attend. If a member cannot attend in person, he must be either on the the phone or have another member report on his status. Be on time. Only pigs talk. Chickens are not alowed to talk with Team members after the meeting for clarification or to provide advice or instructions.
  41. Paylogic, what if we go Scrum? The Scrum flow Questions to answer on the Daily Scrum What have you done on this project since the last Daily Scrum meeting? What do you plan on doing on this project between now ath the next Daily Scrum meeting? What impediments stand in the way of you meeting your commitments to this Sprint and this project? Reporting has to be specific: commitments are only real if they can be assessed. The purpose is for the Team members to synchronize with each other, not report to the ScrumMaster. When adjustment is necessary, the purpose is not to blame anyone.
  42. Paylogic, what if we go Scrum? The Scrum flow When reporting on the Daily Scrum Do not digress. Report briskly. Only the person who is reporting talks. The rest listen. Don’t engage in side conversations. If you need to tackle something in detail, set up a meeting after the Daily Scrum. Chickens, if present, are not allowed to talk or affect the Daily Scrum.
  43. Paylogic, what if we go Scrum? The Scrum flow Multi-team projects: Scrum of Scrums Daily Scrum with one member from each team in a multi-team project. Coordination. Resolve dependencies between teams.
  44. Paylogic, what if we go Scrum? The Scrum flow Sprint The Team can seek outside advice. The Team is utterly self managing. No one can provide advice, instructions, commentary or direction to the Team during the Sprint. No one is allowed to change the Product Backlog during the Sprint. If the Sprint proves to be not viable, the ScrumMaster can terminate the Sprint and set up a new Sprint planning meeting. If the Team feels itself unable to complete all of the committed tasks, it can consult with the Product Owner which items to remove. If the Team determines that it can address more Product Backlog, it can consult with the Product Owner which items to
  45. Paylogic, what if we go Scrum? The Scrum flow Responsibilities of the Team members Attend the Daily Scrum meeting. Keep the Sprint Backlog up to date and publicly visible (including the estimates).
  46. Paylogic, what if we go Scrum? The Scrum flow At the end of the Sprint: Sprint review meeting. 4-hour time-boxed. The Team presents what was developed to the Product Owner. They decide what the Team should do next.
  47. Paylogic, what if we go Scrum? The Scrum flow Before Sprint Planning: Sprint retrospective Between ScrumMaster and Team 3h time-boxed ScrumMaster encourages Team to revise its development process to make it more effective and enjoyable for the next Sprint.
  48. Paylogic, what if we go Scrum? The ScrumMaster The ScrumMaster What is a ScrumMaster? What does he do? What are his responsibilities? What authority does he have?
  49. Paylogic, what if we go Scrum? The ScrumMaster What does the ScrumMaster Do? Has to make a personal commitment to his teams. The team needs to sense that someone is deeply invested in its work and will protect and help it no matter what. His attitude should reflect the importance of the project. It’s a role without authority. It’s not delegating: it’s being personally responsible. Earns the team’s respect because he fulfills the duties of the role and not simply because he was assigned the role. Key duty: find the biggest, nastiest problem that the team has and solve it within a day or two of the first Sprint meeting. Enforce the meaning of Ready and Done. Prevent waterfall.
  50. Paylogic, what if we go Scrum? The ScrumMaster Roles of the ScrumMaster Remove the barriers between development and Product Owner: Product Owner drives development. Teach the Product Owner how to maximize ROI and meet his objectives through Scrum. Improve the lives of the development team by facilitating creativity and empowerment. Improve the productivity of the development team in any way possible. Improve the engineering practices and tools so that each ingrement of functionality is potentially shippable. Keep information about the team’s progress up-to-date and visible to all parties.
  51. Paylogic, what if we go Scrum? The ScrumMaster Trust and openness The ScrumMaster must promote trust and openness. Honestity brings conflict. When facilitated well, conflict brings an agreement. When an agreement has been reached, people can commit and results are achieved.
  52. Paylogic, what if we go Scrum? Sprint Sprint For how long should we Sprint? What should we do in it? Who gets to decide what?
  53. Paylogic, what if we go Scrum? Sprint What length to choose? A good length is 2 weeks. However: it’s good to have more than one sprint per release.
  54. Paylogic, what if we go Scrum? Sprint 2-week Sprint It gives enough time to finish the longer tasks. It’s widely used. It has less planning overhead.
  55. Paylogic, what if we go Scrum? Sprint 1-week Sprint It gives more fine grained control. It ensures more quality: at the end of week 1, the tasks of the First Sprint must be done (Potentially Shippable). The Product Owner can see finished functionality 1 week before it’s released. Addresses the difference between Potentially Shippable and Shippable. It has one oportunity to correct the course. It can adapt to changes If a task is not Ready, it may still be doable in this Release. It’s the same as the support schedule (see later). We don’t add or remove people in the middle of a Sprint.
  56. Paylogic, what if we go Scrum? Sprint Proposed Sprint length I propose 1-week Sprint. Key pros: Fine grained. More quality. Can correct course. Review: After 2 releases we evaluate it. If we see that 2-week release would be better, we change.
  57. Paylogic, what if we go Scrum? Sprint First Sprint Build the core of the features. Produce the first Potentially Shippable results. If a task for the release was not Ready, the Product Owner takes care that it will be for the next Sprint. At the end, the Product Owner examines them and gives feedback.
  58. Paylogic, what if we go Scrum? Sprint Second Sprint Add any necessary changes from the Product Owner’s reaction. Re-adjust, e.g: If we were slower due to emergencies. If we were faster and we can take more tasks.
  59. Paylogic, what if we go Scrum? Sprint Sprint planning and retrospective meetings The Sprint planning and retrospective meetings take a significant amount of overhead. After the Team is used to Scrum (about 8 Sprints), they can be collapsed into a single, shorter meeting of about 90 minutes.
  60. Paylogic, what if we go Scrum? Sprint Working during a Sprint Commit and push frequently. Push at least once per day. But don’t break the tests: add any necessary code. You can break your own tests and mark them as xskip. But not others’. Run tests frequently so you don’t have to fix everything at the end of the day. Work must be done in priority order. No multi-tasking. A Team member cannot work on a new task until his current task is Done.
  61. Paylogic, what if we go Scrum? Questions Questions Answers!
Advertisement