Abstract. An active area of research in computer science is the prevention of violations of object protocols, i.e., restrictions on temporal orderings of method calls on an object....
A large software project may be distributed over multiple sites when the organization believes that there are not enough people to staff a single collocated team. However, previou...
This paper presents an optimisation technique which automatically inlines certain classes within their enclosing class. Inlining a class involves inserting the fields and methods ...
This work presents a descriptive and analytic study of classes playing zero, one, or two roles in six different design patterns (and combinations thereof). First, we answer three...
The purpose of refactoring is to improve the quality of a software system by changing its internal design so that it is easier to understand or modify, or less prone to errors and...