Home > Resources > Thought-pieces > Spiral Model

An update to the Spiral Model 

27 September 2007

An interesting recent whitepaper has caught my attention recently [link opens as PDF in separate window]. Professor Barry Boehm and a colleague have updated Boehm’s venerable systems-development method known as the Spiral Model. The authors label this updated method the Incremental Commitment Model (ICM).

The paper outlines an update to the model by adopting some of the latest thinking in agile development, progressive acquisition and concurrent-engineering. The result is an up-to-date iterative development method that is scalable from medium-sized software projects to the largest systems engineering programmes. 

Some of the highlights of the whitepaper are listed below.

The authors identify five critical success factors of ICM as:

The ICM is based broadly on the RUP method, with extensions for hardware aspects and the commissioning and alignment of multiple vendors.

The phases are:

*= These phases are iterated as appropriate to build system incrementally.

The amount of work performed in each phase depends on the amount of perceived risk: for a medium-size software development project, such as a straightforward upgrade of a commercial off-the-shelf (COTS) product, the work may pass rapidly through the initial three phases to the Development phase, perhaps by using an agile method such as XP or DSDM Atern. Conversely, a programme that aims to integrate a number of products from disparate vendors to meet demanding performance requirements from multiple stakeholders will require considerable effort in the Exploration phase.

The authors also show that the ICM can synchronise and manage risks across multiple vendors/partners in major programmes by;

The authors finish by discussing the problems with adopting ICM, namely regulations and standards that lead to contracts that:

Interestingly, these monolithic contracts are increasingly falling out of favour for large programmes.

In describing the ICM, the authors make an interesting suggestion: rather than labelling the system definition set as “requirements”, which suggests something that is contractually fixed and non-negotiable, he suggests using the terms “goals”, “objectives” or “value propositions”. In addition, he suggests using mutually-acceptable ranges of capability rather than fixed performance figures. 

Experienced practitioners will be keen learn more by studying the extensive references given at the end of the paper, especially regarding:

Interestingly, the ICM approach, especially that of dovetailing Agile techniques, formalises the work Agilier has performed in delivering more rapid business benefit on our clients' programmes.

A shorter version of the whitepaper can be viewed here.