The Incremental Commitment Model (ICM) was presented in 2006 in a paper titled Using the Incremental Commitment Model to Integrate System Acquisition, Systems Engineering, and Software Engineering written by Barry Boehm (Spiral Model) and Jo Ann Lane, a Principal at the University of Southern California Center for Systems and Software Engineering.
The ICM model emerged primarily as a result of recommendations from two independent studies. The first is the October 2006 Defense Software Strategy Summit in which Dr. James I. Finley, Deputy Under Secretary of Defense (DUSD) Acquisition, Technology, and Logistics (AT&L) sought to find ways of better integrating software engineering into the systems engineering and acquisition process. In the second initiative which ran concurrently with the Defense Software Strategy Summit, the National Research Council addressed the problem of better integrating human factors into the systems engineering and acquisition process.
In their paper, Boehm and Lane propose the ICM model to organize
systems engineering and acquisition processes in ways that better accommodate the different strengths and difficulties of hardware, software, and human factors engineering approaches. It also provides points at which they can synchronize and stabilize, and at which their risks of going forward can be better assessed and fitted into a risk-driven stakeholder resource commitment process.
Boehm and Lane’s analysis surfaced five problems common across current development models, including Boehm’s Spiral Model, relative to integrating their hardware, software and human factor aspects. The problem areas are:
- Complex, multi-owner systems of systems
- Emergent requirements
- Rapid change
- Reused components
- High assurance of qualities
The most important conclusion, though, was that there were key process principles that address the challenges, and that forms of the models were less important than their ability to adopt the principles.
—Boehm and Lane
These key principles are:
- Stakeholder satisficing
- Incremental and evolutionary growth of system definition and stakeholder commitment
- Iterative system development and definition
- Concurrent system definition and development
- Risk management – risk driven anchor point milestones
ICM draws on the strengths of existing models such as the early validation and verification of the Vee, lighter-weight concepts such as Agile and Lean, Spiral risk management and the Rational Unified Process (RUP) phases and anchor points. We have not discussed RUP in detail but it is an adaptive approach originally developed by Rational Software which was purchased by IBM in February 2003. RUP’s foundation is a set of building blocks that consist of Roles, Work Products and Tasks. The project life cycle consists of the four phases of Inception, Elaboration, Construction and Transition. There are six engineering disciplines that include Business Modeling, Requirements, Analysis and Design, Implementation, Test and Deployment. Three supporting disciplines are Environment, Configuration and Change Management and Project Management. As for Agile and Lean, we’re going to inspect lighter-weight concepts in the next section of this chapter.
Compared to the Waterfall variants we’ve seen so far, ICM advocates for the concurrent engineering of requirements and solutions. Feasibility rationales are expressed as simple pass/fail milestone criteria. Certain risks are mitigated by avoiding unnecessary documents, phases and reviews. Emergent requirements are handled through change processing and rebaselining activities to stabilize development for the next increment.
The life cycle is divided into two stages: Incremental Definition and Incremental Development and Operations. Incremental Definition is the three phases of Exploration, Valuation and Architecting. Incremental Development and Operations comprises two phases: Development Architecting and Operation Development Architecting. Timeboxing is employed to regulate iterations.
In concluding their paper, Boehm and Lane said:
The Incremental Commitment Model described in this article builds on experience-based critical success factor principles (stakeholder satisficing, incremental definition, iterative evolutionary growth, concurrent engineering, risk management) and the strengths of existing V, concurrent engineering, spiral, agile, and lean process models to provide a framework for concurrently engineering system-specific critical factors into the systems engineering and systems development processes. It provides capabilities for evaluating the feasibility of proposed solutions; and for integrating feasibility evaluations into decisions on whether and how to proceed further into systems development and operations. It presents several complementary views showing how the principles are applied to perform risk-driven process tailoring and evolutionary growth of a systems definition and realization; to synchronize and stabilize concurrent engineering; and to enable simultaneous high-assurance development and rapid adaptation to change.
A natural extension and enhancement of the Waterfall variants, ICM is a true evolutionary prototypical hybrid inculcated with the characteristics of Waterfall, RUP and adaptive processes. CrossTalk, The Journal of Defense Software Engineering is an approved Department of Defense journal. In articles published in CrossTalk (2002-2005) called the “Top Five Quality Software Projects,” well over half of the best documented government software-intensive success stories, when analyzed for the use of critical success factors, explicitly applied ICM principles.