David Bourget (Western Ontario)
David Chalmers (ANU, NYU)
Rafael De Clercq
Jack Alan Reynolds
Learn more about PhilPapers
Brain and Mind 4 (2):229-238 (2003)
Program comprehension is an essential part of software engineering. The paper describes the constructivist theory of comprehension, a process based on assimilation and accommodation of knowledge. Assimilation means that the new facts are either added to the existing knowledge or rejected. Accommodation means that the existing knowledge is reorganized in order to absorb new facts. These processes are illustrated by case studies of knowledge-level reengineering of a legacy program and of incremental change. In both cases, we constructed preliminary knowledge from the program documentation, and then adjusted it by comprehending the actual code. The case studies supported constructivism as a suitable theory of program comprehension.
|Keywords||constructivism program comprehension reengineering concept location|
|Categories||categorize this paper)|
Setup an account with your affiliations in order to access resources via your University's proxy server
Configure custom proxy (use this if your affiliation does not provide a proxy)
|Through your library|
References found in this work BETA
No references found.
Citations of this work BETA
No citations found.
Similar books and articles
Larry Stapleton, David Smith & Fiona Murphy (2004). Systems Engineering Methodologies, Tacit Knowledge and Communities of Practice. AI and Society 19 (2):159-179.
Stephen C. Want & Paul L. Harris (1998). Indices of Program-Level Comprehension. Behavioral and Brain Sciences 21 (5):706-707.
Norman G. Vinson & Janice A. Singer (2008). A Practical Guide to Ethical Research Involving Humans. In Cogprints.
Don Gotterbarn (1999). Not All Codes Are Created Equal: The Software Engineering Code of Ethics, a Success Story. [REVIEW] Journal of Business Ethics 22 (1):81 - 89.
Guy Longworth (2008). Comprehending Speech. Philosophical Perspectives 22 (1):339-373.
Christine W. Chan (2003). Cognitive Modeling and Representation of Knowledge in Ontological Engineering. Brain and Mind 4 (2):269-282.
João P. Martins & Maria R. Cravo (1991). How to Change Your Mind. Noûs 25 (4):537-551.
Bernard Linsky & Edward N. Zalta (1995). Naturalized Platonism Versus Platonized Naturalism. Journal of Philosophy 92 (10):525-555.
Stefan Gruner (2011). Problems for a Philosophy of Software Engineering. Minds and Machines 21 (2):275-299.
Janice A. Singer & Norman G. Vinson (forthcoming). Ethical Issues in Empirical Studies of Software Engineering. Philosophical Explorations.
Added to index2009-01-28
Total downloads17 ( #97,187 of 1,101,119 )
Recent downloads (6 months)5 ( #58,910 of 1,101,119 )
How can I increase my downloads?