Architecture-Level Analysis & Testing
J.A. Stafford,
A.L. Wolf
Description
A formal software architecture specification makes the analysis,
design, and construction of a complex system intellectually tractable
by characterizing the system at a high level of abstraction. Defects in
the dynamic interaction and communication behavior of the components in
the system can be revealed through dynamic analysis, of which testing
is a familiar technique. Historically, testing has concentrated on
the implementation as the target of inquiry, which has meant that it is
considered relatively late in the development process. There is,
however, a highly profitable role for considering the architectural
specification of the system as a target for testing, which affords
effective reuse of test artifacts across product families and
components. This is now possible due to the emergence of formal
notations for software architecture specification, which can provide
a sound basis upon which to develop architecture-based, integration
testing techniques and tools.
There are five major contributions to software architecture and
software testing technology arising from this research. First, a set of
architecture-based integration test criteria will be defined to provide
requirements for testing architectural aspects of a system; methods
will also be developed for applying these criteria to architectural
styles and domain-specific architectures. Second, methods will be
developed for testing an implementation in terms of its conformance to
a specified architecture via architecture conformance oracles. Third,
architecture-level slicing techniques will be defined for localizing
architectural defects and minimizing regression testing. Fourth, methods
will be developed for using feature tests to discover the architecture
of a system from its implementation. Finally, various approaches to
formal architecture specification will be evaluated with respect to
their suitability to testing technologies.
Papers
Related Links
©1998 Software Engineering Research Laboratory (SERL)
Last updated: 02-14-98