An Experimental Analysis of Code Inspection and Static
Analysis for Concurrent Java Components
[experimental materials][presentation
slides]
Abstract:
The results of empirical studies are limited to particular contexts, difficult
to generalise and the studies themselves are expensive to perform. Despite these
problems, empirical studies in software engineering can be made effective and
they are important to both researchers and practitioners. The key to their
effectiveness lies in the maximisation of the information that can be gained by
examining existing studies, conducting power analyses for an accurate minimum
sample size and benefiting from previous studies through replication. This
approach was applied in a controlled experiment examining the combination of
automated static analysis tools and code inspection in the context of
verification and validation (V&V) of concurrent Java components. The combination
of these V&V technologies was shown to be cost-effective despite the size of the
study, which thus contributes to research in V&V technology evaluation.
Study components have been contributed to the Benchmark of Documented Multi-Threaded Bugs [related information].
“There are three principal means of acquiring
knowledge. . . observation of nature, reflection, and experimentation.
Observation collects facts; reflection combines them; experimentation verifies
the result of that combination.”
Denis Diderot
