Reasoning from a schema and from an analog in software code reuse
Fran\c{c}oise Detienne (INRIA)

TL;DR
This paper analyzes how experienced programmers reuse code by reasoning from schemas and analogies, highlighting cognitive mechanisms and control structures involved in the reuse process.
Contribution
It provides an empirical analysis of the cognitive processes, specifically schemas and analogies, involved in code reuse during programming tasks.
Findings
Use of reasoning from schemas in code reuse
Use of analogical reasoning in code reuse
Identification of control structures in reuse activity
Abstract
The activity of design involves the decomposition of problems into subproblems and the development and evaluation of solutions. In many cases, solution development is not done from scratch. Designers often evoke and adapt solutions developed in the past. These solutions may come from an internal source, i.e. the memory of the designers, and/or from an external source. The goal of this paper is to analyse the characteristics of the cognitive mechanisms, the knowledge and the representations involved in the code reuse activity performed by experienced programmers. More generally, the focus is the control structure of the reuse activity. Data collected in an experiment in which programmers had to design programs are analyzed. Two code reuse situations are distinguished depending on whether or not the processes involved in reuse start before the elaboration of what acts as a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Advanced Software Engineering Methodologies · Software Engineering Techniques and Practices
