CHARACTERIZING THE PROGRAM DESIGN ACTIVITY - NEITHER STRICTLY TOPDOWN NOR GLOBALLY OPPORTUNISTIC

被引:33
作者
DAVIES, SP [1 ]
机构
[1] HUDDERSFIELD POLYTECH,SCH COMP STUDIES & MATH,HUDDERSFIELD HD1 3DH,ENGLAND
关键词
D O I
10.1080/01449299108924281
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Early studies of programming and of other more general planning and problem-solving activities emphasized the hierarchical nature of such tasks. For instance, the dominant approach to problem-solving and planning views such processes as top-down focused activities which start from high level goals that are in turn decomposed into achievable actions via a successive refinement process. Similarly, empirical studies of the programming activity have highlighted such top-down and breadth-first decomposition strategies. These processes are also clearly mirrored in prescriptive accounts of the programming task. More recent characterizations of the programming activity present an alternative view-one which emphasizes the broadly opportunistic nature of the programming process. From this perspective, program design is seen to deviate from the top-down, breadth-first model proposed by previous studies. Here, program design is viewed as opportunistic in the sense that elements of the design can be created asynchronously at any level of abstraction within the solution space. Hence, the program design process is seen to be neither decompositionally nor hierarchically levelled, but mediated by the serendipitous and opportunistic discovery of new knowledge and design constraints and so on. The paper presents empirical support for a model of the program design activity which suggests that the programming process can neither be viewed as strictly top-down nor as globally opportunistic. Rather, it is shown that while opportunistic episodes may occur at any point in the evolution of a program, the programming activity itself is hierarchically structured and proceeds in a largely top-down fashion. Program design is seen as a hierarchical goal-directed task with random opportunistic excursions caused largely by simple cognitive failures.
引用
收藏
页码:173 / 190
页数:18
相关论文
共 58 条
[1]   THE ROLE OF DOMAIN EXPERIENCE IN SOFTWARE-DESIGN [J].
ADELSON, B ;
SOLOWAY, E .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1985, 11 (11) :1351-1360
[2]  
AGRE PE, 1987, 6 NAT C ART INT MENL, P268
[3]   ERROR-DETECTION PROCESSES IN STATISTICAL PROBLEM-SOLVING [J].
ALLWOOD, CM .
COGNITIVE SCIENCE, 1984, 8 (04) :413-437
[4]  
AMBROSINGERSON JA, 1987, AISB Q NEWSLETTER, P57
[5]  
Anderson J. R, 1983, ARCHITECTURE COGNITI, DOI DOI 10.4324/9781315799438
[6]   LEARNING TO PROGRAM IN LISP [J].
ANDERSON, JR ;
FARRELL, R ;
SAUERS, R .
COGNITIVE SCIENCE, 1984, 8 (02) :87-129
[7]  
BELLAMY RKE, 1990, LINES THINKING REFLE, V1
[8]  
CARPENTER PA, 1989, COMPLEX INFORMATION
[9]   ASPECTS OF SOLUTION STRUCTURE IN DESIGN PROBLEM-SOLVING [J].
CARROLL, JM ;
MILLER, LA ;
THOMAS, JC ;
FRIEDMAN, HP .
AMERICAN JOURNAL OF PSYCHOLOGY, 1980, 93 (02) :269-284
[10]  
CARROLL JM, 1985, ADV HUMAN COMPUTER I, V1