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-
   54   55   56   57   58   59   60   61   62   63   64