Concepedia

Publication | Closed Access

The Processes Involved in Designing Software.

369

Citations

0

References

1980

Year

TLDR

Software design is the process of translating task requirements into a structural description of a program, and designers acquire abstract knowledge—design schemas—through experience to guide their actions toward satisfying constraints. The paper aims to describe the design schema of experienced software designers and illustrate its operation. It does so by analyzing thinking‑aloud protocols collected from expert and novice designers. Author: (Author).

Abstract

Abstract : A design task involves a complex set of processes. Starting from a global statement of the problem, a designer must develop a precise plan for a solution that can be realized in some concrete way. Software design, which is investigated in this paper, is the process of translating a set of task requirements into a structural description of a computer program that will perform the task. Through experience, designers acquire knowledge concerning the overall structure of a good design and of the processes of generating one. Using this knowledge, they direct their actions to insure that their designs will satisfy these constraints. We call this abstract knowledge about designs and design processes, along with a set of procedures which implement these processes, a 'design schema'. This paper describes the design schema of experienced software designers and illustrates its operation by considering thinking-aloud protocols collected from both expert and novice designers. (Author)