Recent research suggests that large software systems should have a documented system architecture. One form of documentation that may help describe the structure of software syste...
Reuse is an important means of reducing costs and effort during the development of complex software systems. A major challenge is to find suitable components in a large library wit...
Matthias Schmidt, Jan Polowinski, Jendrik Johannes...
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...
Problem frames provide a means of analyzing and decomposing problems. They emphasise the world outside of the computer, helping the developer to focus on the problem domain, inste...
Jon G. Hall, Michael Jackson, Robin C. Laney, Bash...
— It is through our mental models of the world that we understand it. Advances in science are nothing more than improvements to the model. This paper presents the development and...