Architecture-Based Regression Testing of Evolving Systems


Researchers have begun to use formal architectural specification as a basis on which to develop testing techniques. These techniques promise to improve the development process by uncovering defects early. However, few of these techniques consider the ways in which software architecture can be used to facilitate (or misused to hinder) effective regression testing and analysis of evolving systems. Despite efforts to reduce its cost, regression testing remains one of the most expensive activities performed during a software system\'s lifetime -- studies indicate that it can consume up to one-third of the cost of the software. Because of the expense of regression testing and analysis of evolving software, efforts to improve the testing process should focus on techniques and tools to reduce the cost of these activities -- the emerging formal notations for software architecture specification can provide a basis on which effective regression testing and analysis techniques can be developed. This paper considers some potential areas for research in using software architecture specification for effective regression testing and analysis. Because of the high proportion of a software system\'s lifetime that is spent in regression testing and analysis, the use of software architecture for regression testing activities has the potential for a bigger impact on the cost of software than those techniques that focus only on development testing.

Related research categories:
(1) Testing
(2) Regression Testing

Go To Publications