Formal verification methods are used only sparingly in software development. The most successful methods to date are based on the use of model checking tools. To use such he user ...
It is widely acknowledged that coordination of large scale software development is an extremely difficult and persistent problem. Since the structure of the code mirrors the struc...
Software deployment is an evolving collection of interrelated processes such as release, install, adapt, reconfigure, update, activate, deactivate, remove, and retire. The connect...
Richard S. Hall, Dennis Heimbigner, Alexander L. W...
Architectural frameworks have shown to increase the design reusability in large-scale object-oriented systems. Drawing on experience in complex software systems development in tel...
Giulio Fregonese, Alessandro Zorer, Giovanni Corte...
ÐExplicitly stated program invariants can help programmers by identifying program properties that must be preserved when modifying code. In practice, however, these invariants are...
Michael D. Ernst, Jake Cockrell, William G. Griswo...
Source code browsing is an important part of program comprehension. Browsers expose semantic and syntactic relationships (such as between object references and definitions) in GU...
Premkumar T. Devanbu, Yih-Farn Chen, Emden R. Gans...
Many approaches to support (semi-automatic) identification of objects in legacy code take the data structures as starting point for candidate classes. Unfortunately, legacy data ...
To integrate a software component into a system, it must interact properly with the system's other components. Unfortunately,the decisions about how a component is to interac...