75
Views
38
CrossRef citations to date
0
Altmetric
Original Articles

Knowledge Creation and Retrieval in Program Design: A Comparison of Novice and intermediate Student Programmers

Pages 1-46 | Published online: 11 Nov 2009
 

Abstract

Program design, from initial idea to executable code, was studied in a group of novice (first programming course) and a group of intermediate (second course) student programmers. The approach of the intermediate students could usually be described as forward and top-down design, but the behavior of the novices could not be so easily captured. Top-down design depends on both the expertise of the programmer and the difficulty of the problem. When faced with a difficult problem, even the expert has to build up a solution from simple pieces. In the approach adopted here, top-down design is based on the refinement of a known solution or schema that is retrieved and expanded at progressively greater levels of detail. If the expert knows all the required abstract and detailed schemas, then the design shows a pattern of top-down and forward expansion at all levels. When a schema cannot be retrieved and has to be created, top-down design breaks down and is replaced by bottom-up design. At the extreme, a rank novice has to create all the required plans, and design then shows consistent bottom-up and backward solution development. Separating plan retrieval from plan creation has three important consequences. First, a model of plan creation shows how knowledge, in the form of plan schemas, is created during the process of program design. Second, plan creation reveals the internal structure of a schema that is hidden in the final program code. Third, the behavior of designers, described as top-down or bottom-up design, may be explained as a result of specific knowledge that is used to design a program.

Reprints and Corporate Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

To request a reprint or corporate permissions for this article, please click on the relevant link below:

Academic Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

Obtain permissions instantly via Rightslink by clicking on the button below:

If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.