Planning, tracking and managing agile web development sprints using scrum and intervals


Published on

The Web development industry, along with the software development world as a whole, is undergoing a significant transition in project management styles. The traditional waterfall methods — where projects are strictly confined to outdated specs and constantly over budget — are being replaced with methodologies collectively known as Agile software development, a faster paced, iterative style of developing and delivering web-based projects.

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Planning, tracking and managing agile web development sprints using scrum and intervals

  1. 1. Planning, Tracking and Managing Agile WebDevelopment Sprints using Scrum and Inter valsAgile, Scrum and the Web Design and Development IndustryThe Web development industry, along withthe software development world as awhole, is undergoing a significanttransition in project management styles.The traditional waterfall methods — whereprojects are strictly confined to outdatedspecs and constantly over budget — arebeing replaced with methodologiescollectively known as Agile softwaredevelopment, a faster paced, iterativestyle of developing and delivering web-based projects.
  2. 2. Agile software development allows us web developers to start with abasic spec and a general direction, then work through the project initerations — involving the client in each step and keeping time, budgetand expectations within reason — until the client is satisfied with thefinal deliverable. Agile gives the web Development Team and the clientmore ownership and involvement, and provides a more collaborativeprocess that results in a higher quality, portfolio-worthy project.
  3. 3. There are different “brands” of Agile — Lean,Scrum and Extreme Programming (XP) beingthe most common. Each one is a little differentthen the next and designed to be flexible so itcan be adapted to your workflow. The Intervalsteam has adapted many aspects of the Scrumbrand of Agile to our project managementworkflow. Our flagship product, Intervals, is anonline time, task and project managementsystem that is very well-suited to doing Scrumweb development. In fact, our team usesIntervals to manage the development processfor Intervals (kind of like that movie, Inception,but different).
  4. 4. Planning, Tracking and Managing the ScrumProcess using Inter valsThe manner in which we use Intervals forScrum development can easily bereplicated by any web design anddevelopment agency that wants to useIntervals for doing Agile projectmanagement. Here are some guidelineson how to apply the Scrum developmentmethod to the next web project youmanage with Intervals (Create your ownfree account to follow along.) We’re goingto assume you already have a generalunderstanding of Agile development andScrum, and that you have a fewcandidates in mind for the ProductOwner and Scrum Master.
  5. 5. Roles and ResponsibilitiesProduct OwnerScrum MasterDevelopment Team
  6. 6. Product OwnerThe Product Owner will be one of two people, either the customer/clientwhen working with outside companies, or the person in charge ofproduct development when working on an internal product, such asonline company software. In other words, they are the stakeholder, thego-to person when you have questions about a story.
  7. 7. Scrum MasterThe Scrum Master is often times a member of the Development Teamand operates as a buffer, protecting the Development Team andkeeping them focused on completing the sprint. The Scrum master willbe the person implementing the methodologies outlined in this post.
  8. 8. Development TeamThe Development Team is comprised of your designers, developers andany other team members involved in the sprint. Their job is to do theactual work, the brainstorming, writing, creating, comping, coding,documenting, and testing, of the stories. They are ultimatelyresponsible for delivering a completed sprint.
  9. 9. Grooming the Sprint using Tasks and MilestonesBefore the sprint planning begins, it is a good idea to have groomed thestories that will be candidates for the sprint. Grooming a story simplymeans filling in the task summary with a brief description of what isrequired to complete the story. If that isn’t possible, be sure to maketime during the sprint planning to groom the stories.
  10. 10. In Intervals, a task is the equivalent of a story. The task summarycontains the contents of the story and the task estimate is the numberof points. In this example, we are equating points with hours becausewe will be tracking time against the task during the sprint. For ourstories, we typically use the numbers 0, 1, 2, 4, 8, 24, 40, 100 for ourpoint system.
  11. 11. You will also need to have created a milestone, which is the equivalentof a sprint. The milestone simply needs an owner and a due date to getstarted. The owner can be the Product Owner or Scrum Master. Themilestone does not need to be detailed at this time. We just need it sowe have a place to put tasks during the sprint planning, when thedetails can be finalized.
  12. 12. In Intervals, a task is the equivalent of a story. The task summarycontains the contents of the story and the task estimate is the numberof points. In this example, we are equating points with hours becausewe will be tracking time against the task during the sprint. For ourstories, we typically use the numbers 0, 1, 2, 4, 8, 24, 40, 100 for ourpoint system.
  13. 13. The Sprint Planning MeetingThe Scrum master will be leading the sprint planning meeting, butparticipation from the entire team is necessary for planning asuccessful sprint. The goal is to go through the tasks in the productbacklog and move them into this sprint until we’ve reached ourestimated velocity. Our team should know our velocity beforehand, anumber of points we know we are capable of completing during onesprint. If you don’t know your exact velocity, then guess. We’ll track thisduring the sprint and adjust accordingly.
  14. 14. Adding stories to the sprint using tasks and milestones.
  15. 15. During the sprint planning, refer to the milestone view for this sprint. Itwill tell us how many points (total hours of task estimates) we haveallotted to this sprint. We want to keep that number below or equal toour velocity. In addition to the task estimates, the “Graphs” tab on themilestone will reveal several graphs and charts useful for the sprintplanning process — in particular, the Kanban-esque chart showingnumber of tasks by status and the number of tasks per assignee chart.
  16. 16. Right-click on any story in the sprint to assign itto a member of the development team
  17. 17. In Scrum, the entire team has collective ownership of the tasks in thesprint. We set the task owner as the Product Owner or Scrum Master tokeep them engaged in a guiding role, and set the assignee as the Webdesigner or developer responsible for completing the story. The storiescan be assigned during the sprint planning meeting, or, members of theDevelopment Team can assign stories to themselves when they startworking on them. If a story needs to have multiple owners or assignees,this can be done by selecting them using the multiple selection icon.Assigning multiple people to a task is a useful feature for teams thatpractice pair programming.
  18. 18. Tracking the SprintOnce the sprint has begun, typically as soon as the sprint planningmeeting has adjourned, the Scrum Master will use the milestone totrack sprint progress and manage the Development Team. In Scrum,the Development Team should be self-organizing and managingthemselves, however, the Scrum Master will need to be the one guidingthis collective team management process. This requires the ScrumMaster to periodically check the status of the sprint and guide theDevelopment Team — removing impediments, enforcing rules, limitingdistractions and keeping stories from bloating. The milestone offers afew invaluable data points for tracking the progress of a sprint.
  19. 19. Interpreting the Kanban-esque Char tThe Kanban chart is a useful task management tool. It tells us whichtasks are completed, which tasks haven’t started yet and which tasksare stuck or need attention. Intervals has a chart available in themilestone that was designed in the spirit of Kanban. The chart showsus how many tasks are currently set to each status. The goal is to moveall of our tasks from the left to the right, from “open” to “closed”.
  20. 20. The sprint is considered done once all of the stories in the milestonehave been closed. Some of the statuses they might be set to in theinterim are “in progress,” “under review,” and “needs assistance” — it’sreally up to you what statuses to create and what order to put them in.
  21. 21. Calculating Current VelocityKnowing our Development Team’s current velocity helps us determinehow much of the sprint is completed and how much is left. We can lookat velocity in two ways. The most common way to calculate velocity is tolook at the number of points completed. This method is good in that ittells us what percentage of the sprint is done.
  22. 22. The second way to calculate velocity is to have the Development Teamtracking their time, so we can compare the actual hours against theestimated number of hours, or points. Now we have a way to compareestimated effort against actual effort on each story, so we know exactlywhere we are at in the sprint and what to expect going forward.
  23. 23. Estimate the Probability of a Successful SprintOne area that we diverge from traditional Scrum practices is timetracking. At Pelago, time tracking has always been a component in ourestimating process. Historical time tracking data gives us the ability tocreate accurate estimates for the sprint planning process.
  24. 24. If we’ve allocated 160 hours to a sprint, and we are tracking our time,we’ll have a pretty good idea of how much work is left in a sprint basedon the number of hours remaining. And from that data, we’ll knowwhether or not we are going to have the sprint completed on time. If thenumber of hours left exceeds the number of hours available, we knowwe need to either take some stories out of the sprint or move thecompletion date. Time tracking gives us the information we need tomake these types of decisions as earlier in the sprint.
  25. 25. Managing the SprintSuccessful sprints require constant communication and daily check-ups. One tool for managing this process is the daily standup, a fifteenminute meeting designed to get the Development Team together todiscuss what they are working on and to communicate anyimpediments blocking their progress. These meetings give theDevelopment Team an opportunity to check in with one another andgive the Scrum Master the information necessary to keep the sprint onschedule. Keep the daily standup short and simple so it doesn’tbecome one of the very impediments you are trying to prevent.
  26. 26. The Scrum Master should be managing the sprint by monitoring themilestone and the Development Team’s activity. Using online taskmanagement software, like Intervals, will give the Scrum Master thetools they need to evaluate the current sprint and communicate withthe Development Team.
  27. 27. In addition to the software, the Scrum Master will manage the sprint bymaintaining a steady flow of feedback between the Product Owner andDevelopment Team, continually working alongside the DevelopmentTeam as a member of that team, and keeping the team focused ontheir tasks by removing any impediments and distractions that threatenthe overall success of the sprint.
  28. 28. Check out the Inter vals blog for more ar ticles…The Inter vals BlogA collection of useful tips, tales and opinions based on decades ofcollective experience designing and developing web sites and web-based applications.www.myinter Credits: VFS Digital Design, 1, 2, Alex Barth