Agile Planning Terminology

Terminology can vary from process to process. For example, where one process might use the term “increment,” another process might use “iteration” to mean the same thing. So in this section, we briefly explain the terms we use in this book for planning an ICONIX Process project.

  • Planning iteration: Mainly for planning and team management, this is a fixed amount of time (ideally about a week) that doesn’t result in a customer release.

  • Release increment: This is a series of iterations resulting in some working software released to the customer (or released to QA, or handed to the customer for early feedback).

  • Release: This is a milestone on the plan when working software is released to the customer (or at least to QA).

To put it another way, a release increment is planned in weekly planning iterations and produces a release of new functionality (see Figure 9-2).

image from book
Figure 9-2: How iterative and incremental planning fit together

The weekly planning iteration (which for the rest of the book we’ll often shorten to iteration or weekly iteration) is purely for planning and team management purposes. There isn’t a release at the end of each week (except if you want to demo the partially written software [or screenshots] to the project stakeholders to get their early feedback). Instead, the weekly planning iteration works as follows: each Monday morning, you hold a progress update with the team members and sort out what they’re going to be working on this week. You then update the plan (which contains the estimates) with the actuals—that is, the actual time taken for the tasks as recorded by the team.

This doesn’t take very much time, but it means that the plan increasingly reflects reality as the project progresses, as opposed to some project plans, which become more and more steeped in fantasy as deadlines loom nearer. So the weekly iteration is primarily a way of synchronizing the team’s efforts with expectations, and also synchronizing each person’s work with what the rest of the team is doing (because they’re all in one room together talking about what they’re working on at the moment).

The iteration doesn’t have to be exactly 1 week, although whatever iteration size you choose, you should try to stick with it throughout the whole project. As you’ll see later in this chapter, using fixed-length iterations is useful for measuring project speed (or project velocity). We’ve generally found that iterations of 1 week each work great because they form a natural heartbeat for the project. Each Monday morning, the team members are probably quite unmotivated after their weekend of resting, or going on fishing trips, or whatever they generally get up to, so they could do with a gentle push and some specific direction to get them productive again. The Monday morning meeting works rather well for this.

The release increment ideally should be between 1 and 3 months in length, culminating in a customer release. As we discuss later in this chapter, this may not be a production release as such (i.e., a “live” customer release). In fact, there are three types of release: internal, investigative, and production.



Agile Development with ICONIX Process. People, Process, and Pragmatism
Agile Development with ICONIX Process: People, Process, and Pragmatism
ISBN: 1590594649
EAN: 2147483647
Year: 2005
Pages: 97

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net