Page 57 -
P. 57

42     BERENTE  AND  LYYTINEN
                      The bulk of systems design research treats cognitive iteration in accordance with the rationalistic
                    tradition and normally seeks to map a designer’s mental operations into a set of corresponding
                    operations on the artifacts. Since the mid-1990s, however, there has been a growing amount of
                    research that draws upon the situated action perspective (Bergman, King, and Lyytinen, 2002;
                    Boland and Tenkasi, 1995; Cockburn, 2002; Hazzan, 2002; and others). In this alternative tradi-
                    tion, design is an ongoing dialogue that is always open to reinterpretation. Next we review ways
                    in which the information systems literature has addressed cognitive iteration and its three aspects
                    of design activity, as well as prescriptive and descriptive accounts of systems design.

                    Cognitive Iterations Within Design

                    Surprisingly, cognitive iterations as such have gone largely unaddressed in the systems design
                    literature. Although the design literature draws extensively upon the systems approach (Churchman,
                    1968), the mainstream of the systems design research rarely accounts for the iterating cognitive
                    process inherent in design (Churchman, 1971). In contrast, systems development literature has
                    focused mainly on the cognitive iterations in the form of operations associated with steps in the
                    design process, and less so with the design process itself, or cognitive iterations about the design.
                    Table 4.2 offers examples of each form of cognitive iteration as recognized in the literature. We
                    emphasize that this is not an exhaustive list, but rather is intended as an illustration.
                    Cognitive Iterations of Stages in the Design Process


                    In the systems design tradition, cognitive activity is assumed to coincide with formal stages of the
                    design—the moments at which a given aspect of the software crystallizes and becomes “frozen.”
                    The most common conceptual iteration observed in systems design is that of the step, stage, or
                    phase. Stages are iterated as they are repeated during the design. Such iterations have tradition-
                    ally been considered inevitable, necessary evils (Davis, 1974; Royce, 1970), but are now more
                    commonly thought to enhance system quality (Basili and Turner, 1975; Beck, 2002; Boehm,
                    1981; Brooks, 1995; Cockburn, 2002; Floyd, 1984; Keen and Scott Morton, 1978; Larman and
                    Basili, 2003; McCracken and Jackson, 1982). Such stages can be formal, such as the requirements
                    determination phase that results in “frozen” requirements (Davis, 1982), or they can be fairly
                    indeterminate, such as “time-boxed” steps in agile methods (Auer, Meade, and Reeves, 2003;
                    Beck, 2002; Beynon-Davies, Tudhope, and Mackay, 1999). Stages, phases, rounds, or iterations
                    of the process are prescribed by a methodology but are not directly related to the status of the
                    design or the code (Beck, 2002; Boehm, 1988; Kruchten, 2000; Larman, 2004). The rationalistic
                    tradition within systems design thus tends to equate cognitive iterations with the formal procedural
                    iterations.


                    Cognitive Iterations About the Design Process
                    Cognitive iterations associated with system development are not necessarily limited to those within
                    the process, but can also relate to the designer’s conceptions about the process itself. If we follow
                    the idea that a method is in itself a formal design model, this model can iterate during the design
                    process much the same as conceptualizations of the design object itself. This idea is prominent in
                    the concept of method engineering (Brinkkemper, 1996; Rossi et al., 2004; Tolvanen and Lyytinen,
                    1993). Method-engineering advocates claim that formal methodologies cannot specify a priori
                    all design tasks to be completed, as problems and solutions spaces change. Therefore designers
   52   53   54   55   56   57   58   59   60   61   62