The case for case studies of programming problems
Communications of the ACM
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Novice programmer errors: language constructs and plan composition
International Journal of Human-Computer Studies
Design patterns: an essential component of CS curricula
SIGCSE '98 Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education
SIGCSE '99 The proceedings of the thirtieth SIGCSE technical symposium on Computer science education
An axiomatic basis for computer programming
Communications of the ACM
The Science of Programming
A Discipline of Programming
The greedy trap and learning from mistakes
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
Hasty design, futile patching and the elaboration of rigor
Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education
Learning from wrong and creative algorithm design
Proceedings of the 39th SIGCSE technical symposium on Computer science education
Hi-index | 0.00 |
Computer science educators expect their students to develop a scientific design discipline with programs and proofs. Established acquisition of a scientific discipline encapsulates rich cognitive representation, which is reflected by competent non-specific transfer. Do computer science graduates demonstrate non-specific transfer of fundamental design notions? The study presented here reveals some undesired findings. Computer science graduates, who are engaged in teaching, showed rather limited competence with task representation and the heuristic of decomposition and (re-)composition, as well as with progression through ordered design stages. Many followed a rather unordered and unconvincing solution plan, which yielded only partial outcomes, and no conviction of exploitation. We describe our findings and offer suggestions for explicitly elaborating (sometime implicit) design notions.