  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 source-solution. Our
analysis highlights the use of reasoning from a schema and from an analog in
the code reuse activity.
