Success factors for measurement programs as identified in the literature typically focus on the `internals' of the measurement program: incremental implementation, support fr...
Code duplication, plausibly caused by copying source code and slightly modifying it, is often observed in large systems. Clone detection and documentation have been investigated b...
Magdalena Balazinska, Ettore Merlo, Michel Dagenai...
The design of software is often depicted by graphs that show components and their relationships. For example, a structure chart shows the calling relationships among components. O...
The language AML is used to specify the semantics of architecture description languages, ADLs. It is a very primitive language, having declarations for only three constructs: elem...
CYNTHIA is a novel editor for the functional programming language ML in which each function definition is represented as the proof of a simple specification. Users of CYNTHIA edit...
Jon Whittle, Alan Bundy, Richard J. Boulton, Helen...
Refactorings are behavior-preserving program transformations that automate design evolution in object-oriented applications. Three kinds of design evolution are: schema transformat...
Modularization and abstraction are the keys to practical verification and analysis of large and complex systems. We present in an incremental methodology for the automatic analysi...