共用方式為


Scrum in a Heat

In my group we have adopted Scrum, along with a "Heat" variant. That is, a Heat is 3 month-long scrums. During the heat we are expected to release something for our stakeholders to preview (Sprint 1), collect feedback while continuing development (Sprint 2), and integrate customer feedback as appropriate and release (Sprint 3).

Here are the basic rules:

  • A Heat is three (3) Sprints.
  • A Sprint is one (1) calendar month.
  • One (1) week planning iterations are used for engineering purposes.
  • The goal of a month long sprint is complete code ready for release (the features implemented are complete).
  • The goal of a planning iteration is to keep planning to a short time period enabling more accurate estimates by developers.
  • The stories for the month long sprint should be well defined prior to the inception of the sprint, t-shirt sized to gauge the anticipated story load for the sprint, and prioritized.
  • The sprint backlog defines the release for the end of the sprint.

Comments

  • Anonymous
    January 12, 2007
    Trackbacks don't appear to be working. So I will use the comments to the same effect: Doug Seven at MS, describes a variation of on Scrum where they only get Customer feedback one sprint in three. This isn’t Scrum. Scrum relies on getting frequent feedback from the Product Owner (aka Customer).... http://www.notesfromatooluser.com/2007/01/scrum_in_heat_i.html

  • Anonymous
    January 12, 2007
    Mark - I don't think I was very clear with this explaination (the dangers of blogging in a hurry). Let me try to clarify. The team interacts with the Product Owner (PM @ MS) and the Onsite Customer (PdM @ MS) daily. As a matter of fact, the Product Owner, Developers and Testers all work in the same room. The Onsite Customer is readily available daily, attends all planning sessions, and frequently attends the daily standups. We release demos/betas for external customer feedback once a month. In the 1st month of the heat we release a demo. In the 2nd month of the heat we integrate the feedback from the 1st month's release along with more features, and release a beta. In the third month, we integrate any remaining feedback, and polish for production release at the end of the Heat. The weekly iteration planning is an XP thing. We have a 1-2 hour planning meeting at the beginning of each week to plan the engineering tasks for that week. A good break down is that we use Scrum as a project planning methodology with month-long sprints, and XP as an engineering planning methodology with week-long iterations within the sprints. At the end of each sprint we have a release. At the end of each iteration we have some of the tasks associated with the features set complete, but possibly not yet releasable. For example, this month we are working on a new UI for posting to forums. The "release" for the end of the month is a 5-step UI that enables authoring a post, tagging it using our Tagspace solution, previewing it, and possibly editing it before posting. This week we have tasks to complete the Master Page and Step 1's UI, plus enable searching for related threads/forums based on keywords using a REST interface. Next week we will take on the tasks of the UI for Steps 2 & 3, etc. I hope this helps clarify what I meant in my original post.