Marco Dorantes' WebLog

"Computer science is no more about computers than astronomy is about telescopes" -Edsger W. Dijkstra

The growth of a feature

The growth of a feature

  • Comments 3

For some time I have been looking for the time to post a general picture of the design and programming approach I have been trying in several projects, the life-cycle for a single feature would be depicted like this:

The main points here are:

  • Functional capacity is accumulated and maintained in time as iterations are done.

  • Each iteration ends with a releasable, production-grade slice of functionality from each feature selected for version N.

  • Each iteration ends with a useful version from the customer perspective so that if the project ends at that time, there is an up and running subset of capacity.

  • RTM date planned accordingly to a chosen capacity level.

  • The design is always in flux, even after RTM N. Actually at RTM timepoint there is a frozen branch in the version control system for the shipped bits, but the mainline version continues in flow.

Part of the background of this life-cycle is explained by the following post:

Organic and evolutionary software design – a metaphor http://blogs.msdn.com/marcod/archive/2005/04/14/TheEmbryo.aspx

  • It's not quite the same as growing plants, (project running late? use some miracle grow!) but feature

  • When agile development still was not called agile development, there were planning-oriented technicians

  • When agile development still was not called agile development, there were planning-oriented technicians

Page 1 of 1 (3 items)
Leave a Comment
  • Please add 7 and 2 and type the answer here:
  • Post