
10
Guindon, R
and Curtis,
B
Control of cognitive
processes
during soflware design: what
tools are
needed? in Proceed
ings of CH1'88 ACM Press,
(1988) 263-268
11 Curtis, B, Kraener, H and
Iscoe, N 'A field study of the
software design process for
large
systems Communications of the
ACM Vol 31 No 11 (1988) 1268-
1287
12 Curtis, a and
Walz,
O 'The
psychology of programming in
the large: team and organisation
al behaviour' in J..M Hoc, T R G
Green,
R Sumur¢..ay and D J
Gilmore (ads) Psychology of
programming Academic Press,
London (1990) pp 253-270
13
Vleeer, W end Hoc, J-M Ex-
pert software design
strategies
In J-M Hoc, T R G Green, R
Sumur~:ey and
O J Gilmore
(eds) Psychology of program-
ming Academic Press, London
(1990) pp 235-249
14 Osvies, S P
end Castell,
A
M 'Contextualizing design: narra-
tives and rationalization in empir-
ical studies of software
design'
Design Studies Vol 13 No 4
(1992) 379-392
designers in an experiment. These designers had experience ranging from
less than three years to more than ten years t°. One factor they emphasized
was the use of a problem that was significantly more complex than that
used in Reference 8. Techniques used for their study included videotaping
the participants as well as protocol analysis.
The investigators focused particularly upon the use of design schemas as
knowledge sources, underlying the use of case-based reasoning, as well as
underpinning the storage and retrieval of intermediate solutions. One of
the three designers in the study was familiar with the Jackson system
development (JSD) method (discussed later in this paper), and the
investigators comment on the forms of modelling that this encourages.
Some of the findings of this study differ from those of Reference 8,
whereas others reinforce these, including the observation of opportunistic
strategies and of simulated execution of the 'model'. Overall, although the
problem used was reasonably complex, it was still small enough to be
largely solvable in a single session (the problem was a lift control system).
In that sense, it was far less complex than the problems encountered in
most real-life software engineering tasks. Some of the factors that
particularly affect large-scale design activities are identified
elsewhere ]
~'
12.
Visser and Hoc 13 have taken a contrasting approach, and have studied the
longer-term behaviour of a single experienced designer working on a
problem over a four-week period. Again the term
opportunistic
appears as
a fairly central point, making a strong contrast with software design
methods that normally have to be organized in a procedural manner (do
this, then this, then...).
Other designer practices that are consistent with those observed in
References 8 and 10 included the use of simulation (mental execution).
Visser and Hoc's paper also assesses their work against that of others (and
particularly those described above), and identifies the type of design
problem and its size as being important factors.
Davies and Castell ~4 have examined the issues involved in studying
software design activities, and have pulled some of the material from the
studies described above into a more systematic framework. They have
also examined the methodological problems that can arise in conducting
studies of designers. This paper is written more from the psychologist's
viewpoint than some of the studies outlined above, presents no new data,
and concentrates on setting the previous observations into perspective.
Software design methods 299