now defunct but is instructive in its use of sequential and iterative elements. Its
sequential model, encompassing the 5 maturity levels, is depicted as a staircase. There
is also an iterative model that is supposed to capture how one progresses from one
level to the next is a. Interestingly, in the book defining the SW-CMM[5], only one
net page of text is devoted to the iterative model, the rest to the sequential model. In
practice, progress in the sequential model was assessment driven, via a hierarchical
model. The assessment strategy was to gather evidence along the hierarchy and reach
conclusions bottom-up. Iteration was not integrated in the hierarchy, and under
assessment pressure was likely to be neglected at best. In fairness there are implicit
iterative aspects of CMM that do receive graphic expression. The change of part of
speech in the level names from past participles (levels 1-4) to present participles
(level 5, optimizing) suggests that at a certain level of success, freed from imminent
assessment pressure, we have the luxury of iterating. Similarly, in the earlier
representations of the sequential model, each level had an icon of the same form,
some kind of metric such as cost, whose magnitude and variability dropped as the
progressive model was ascended. This suggested that the same kind of achievement
was attempted, over and over again.
3.3 MIL-STD-498
MIL-STD-498 [6] attempted to bring flexibility to development environments that
adhered too rigidly to waterfall models. Its Guidebooks [7, 8] cover many cases where
iterative development is appropriate. However a picture is worth a thousand words,
the imagery is of replicated waterfalls, not of agile iterations
3.4 Boehm’s Spiral Model of Software Development
Spiral models implicitly combine iteration and sequence, since a spiral concatenates
successive circles. Nonetheless, as we saw in the previous case, spiral representations
have a weakness with regard to the sequential component. Thus Boehm [9]
apologetically explains that the radial distance in his model (figure 1), represents cost
but is not to scale. He differentiates successive iterations according to their goals and
which activities they do or do not omit. However, these are explained by anecdotal
examples, and the combination of detailed text and multiple rounds of the spiral, is
literally dizzying. This is not a criticism; Boehm's "it depends" characterization is
intellectually honest. However the lack of a stereotyped, albeit overly generalized
schema, makes it difficult to focus on the model representation.
3.5 Rational Unified Process
In contrast to Boehm, the Rational Unified Process, [10] discards the spiral metaphor,
in favor of what is in effect a matrix, of development activities along one axis, and
iterations, grouped according to phases along the other. This model succeeds in
representing graphically, much information and correlation among the information
types (figure 2). Since it has discarded the spiral, it can represent activities that do not
104