You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Iterations or "sprints" are the fundamental building blocks of an agile development process. Iterations are short - no more than a few weeks in length - and deliver a complete vertical slice of the software system to enable customer feedback and acceptance testing. To do this, each iteration incorporates a complete life cycle of design, coding, integration, and testing. An iteration must produces working, integrated, and tested code.

Iterations are characterized as follows:

  • time-boxed - An iteration is a fixed agreed upon length (typically between 1-6 weeks) and is "time-boxed" in that it has a fixed start and end date. This is an important contrast to incremental development, where the system is built in small pieces, but the work is not synchronized to a time box. Time-boxing is an effective technique for managing scope, facilitating consistent results to the customer and customer expectations, providing for more accurate planning, and creating a team rhythm.
  • fixed-scope - Tasks for a particular iteration are assigned from the project backlog. Once assigned, the scope of an in-progress iteration is not altered.
  • completed or not completed - Each of the backlog tasks are considered either completed or not completed at the conclusion of an iteration. Uncompleted and partially completed tasks are not automatically rolled forward to the next iteration, but return to the project backlog for reprioritization.

Process overview

The iterative process in use at Drew leverages too concurrent and interrelated processes: the development iterations themselves, and the consulting process that is responsible for gathering user stories and use cases from the customer. In the case where it is possible to have full participation of the customer on the development team, the consulting process can be fully integrated into the iterations themselves, however in most practical applications at Drew this will be a parallel process that feeds requirements into the project backlog and gathers feedback from an external customer.

Consulting process

Development iterations

  • No labels