Page 59 -
P. 59
44 BERENTE AND LYYTINEN
must be reflective (Checkland, 1981; Hazzan, 2002). Through this reflection, designers learn and
continuously revise their practices and iterate over the design objects and design processes they
will engage in (Rossi et al., 2004). During design activity, designers thus learn by iterating over
their cognitive models of the method (second loop learning), and they can also capture the ratio-
nale for these iterations in order to facilitate the continued evolution of methods and associated
mental models (Rossi et al., 2004).
Cognitive Iterations of the Design
The situated action tradition frequently ventures beyond stages and models and draws attention to
other forms of cognitive iteration. For example, systems design has been likened to a hermeneutic
circle (Boland and Day, 1989), where a designer iteratively compares an artifact with its context
to understand its meaning. Checkland (1981) recommends specific representations, such as rich
pictures and holons, to guide a system developer in iterative hermeneutic cycles between the
representations, personal judgments, and understandings of reality that will progressively refine
his underlying design conception. To understand a given process, the analyst iterates cognitively
between perceptions of the social world external to him, his internal ideas, various representations,
and the methodology of the analysis (Checkland and Scholes, 1999).
Researchers have also likened forms of systems development to dialectic cycles (Churchman,
1971). Such cycles are evident in participatory approaches to design that encourage dialogues
between system developers and the user community (Floyd et al., 1989; Mumford, 2003). These
dialogues can result in a series of explicit agreements concerning system functionality, the antici-
pated environment, or appropriate methodologies (Mumford, 2003). They also typically involve
iterations of cooperation and conflict that are intended to improve user-related outcomes such as
user satisfaction or system use.
Other approaches consistent with the situated action perspective offer radically alternative
iterations. For example, the early PIOCO methodology (Iivari and Koskela, 1987) goes beyond
sequential stages and formulates iterative problem-solving processes within multiple levels of
abstraction. Rather than freezing portions of the design into predetermined linear phases, devel-
opment follows a nonlinear iterative (recursive) progression that is explicitly allowed throughout
the design. The design can be frozen at specific levels of abstraction before tackling subsequent,
lower levels of abstraction.
In all of these examples, the cognitive iteration does not stand on its own, but is intimately
involved with the designer’s interactions with representational artifacts, the social context, and
managerial concerns. Cognitive iterations are not discrete, fully formed views of the information
system and its design, but rather form incomplete perspectives about the design object and the
design process. They instantiate representations of the system on three levels: technical (computer
system, such as code), symbolic (data and inferences, such as data models), and the organizational
level (tasks supported, such as anticipated sociotechnical work scenarios) (Iivari and Koskela,
1987; Lyytinen, 1987).
Little empirical research has been conducted on software developers’ cognition (Boland and
Day, 1989; Curtis, Krasner, and Iscoe, 1988; Jeffries et al., 1981). Most studies observe cognitive
challenges related to designs that demand iteration, but do not test or compare iterative versus
noniterative cognitive practices. Exceptions do exist, however. For example, an early study com-
pared the traditional unidirectional flow of problem information from a user to a developer during
requirements definition with an iterative dialogue, where both the user and developer prepared
their suggestions and offered feedback in a “dance.” The iterative method generated greater mu-