Testing is the most commonly used approach to the assurance of software quality and reliability. The testing of object-oriented software is much more complex than that of conventi...
This paper explores how to characterise security properties of software components, and how to reason about their suitability for a trustworthy compositional contract. Our framewo...
Software evolution is characterized by inevitable changes of software and increasing software complexities, which in turn may lead to huge costs unless rigorously taking into acco...
Hongyu Pei Breivold, Ivica Crnkovic, Peter J. Erik...
Software migration is an inherently knowledge intensive activity, which requires a great amount of expertise and experience from different sources. Knowledge-based approach to sof...
Software merging is a common and essential activity during the lifespan of large-scale software systems. Traditional textual merge techniques are inadequate for detecting syntacti...