As valuable software systems get old, reverse engineering becomes more and more important to the companies that have to maintain the code. Clustering is a key activity in reverse ...
The navigation of structural dependencies (e.g., method invocations) when a developer performs a change task is an effective strategy in program investigation. Several existing ap...
A new generation of intelligent applications can be enabled by broad-coverage knowledge repositories about everyday objects. We distill lessons in design of intelligent user inter...
Current trends in software engineering promote the contention that the use of model-driven approaches should prove as beneficial to high-integrity systems as they have to business ...
Building open distributed systems is an even more challenging task than building distributed systems, as their components are loosely synchronised, can move, become disconnected, ...