Software synthesis is defined as the task of translating a specification into a software program, in a general purpose language, in such a way that this software can be compiled...
The management of knowledge and experience are key means by which systematic software development and process improvement occur. Within the domain of Software Engineering (SE), qu...
Knowledge management (KM) plays an increasingly important role in software development. We find that a missed aspect of software development methods is their possibility to play a...
Code clones are generally considered harmful in software development, and the predominant approach is to try to eliminate them through refactoring. However, recent research has pr...
Authentic descriptions of a software architecture are required as a reliable foundation for any but trivial changes to a system. Far too often, architecture descriptions of existi...
Arie van Deursen, Christine Hofmeister, Rainer Kos...