Principal Investigator: Michal Young
Research Assistants: J. Rajamani, Y.-P. Cheng, C. Pavlopoulous
Sponsors: Rome Laboratories, DARPA

The perpetual testing project is developing technologies to support
seamless, perpetual analysis and testing of software through
deployment
and evolution. Whereas the current dominant paradigm treats testing
as
a phase that succeeds development and precedes delivery, the
perpetual
testing project is building a
foundation for treating analysis and testing as on-going
activities to
improve quality assurance without pause through several generations
of
product, both in the development environment and in the deployed
environment. Software in the deployed environment will be monitored
not
only to check conformance to required properties but also to
validate
and refine the models and assumptions on which quality assurance
activities in the development environment depend. The degree of
monitoring and transmission of information to the
development environment will differ depending on performance and
security requirements of the end-user and will always be under user
control.
Perpetual testing is necessarily incremental. Analysis and testing
processes are carried out in response to changes in software
artifacts
or associated information or in anticipation of change.
Improvements to
existing technologies are focused largely on scalability and
incrementality for large evolving systems. Analysis and testing in
the perpetual testing framework is
aimed at attaining and maintaining adequate adherence of all
software
artifacts to relations captured by a rich web of hypercode links,
including dependence relations among software components and among
properties and analysis techniques.
The perpetual testing project is a collaboration of researchers at
the
University of Massachusetts, the University of California at
Irvine,
and Purdue University. This project is sponsored by Rome
Laboratories, and is
part of the High Assurance cluster of the DARPA EDCS (Evolutionary
Design of
Complex Systems) program.