School of Computing

Defect patterns and structural properties in a mature well-specified software system

Tim Hopkins and Les Hatton

Technical Report 5-08, Computing Laboratory, University of Kent, Canterbury, Kent, UK, December 2008 Submitted for publication to "ACM Transactions on Software Engineering and Methodology" (Oct 2008).

Abstract

Software engineering is not an empirically based discipline. As a result, many of its practices are based on little more than a generally agreed feeling that something may be true. Part of the problem is that it is both relatively young and unusually rich in new and often competing methodologies. As a result, there is little time to infer important empirical patterns of behaviour before the technology moves on. Very occasionally an opportunity arises to study the defect growth and patterns in a well-specified software system which is also well-documented and heavily-used over a long period.

Here we analyse the defect growth and structural patterns in just such a system, a numerical library written in Fortran evolving over a period of 30 years. This is important to the wider community for two reasons. First, the results cast significant doubt on widely-held long standing beliefs and second, some of these beliefs are perpetuated in more modern technologies. Since we obviously generalise from older languages to new, it makes good sense to use empirical long-term data when it becomes available to re-calibrate those generalisations. At the same time, the results contain intriguing glimpses into defect behaviour which may transcend whatever technology is in use.

Download publication 247 kbytes (PDF)

Bibtex Record

@techreport{2846,
author = {Tim Hopkins and Les Hatton},
title = {Defect patterns and structural properties in a mature well-specified software system},
month = {December},
year = {2008},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {Submitted for publication to "ACM Transactions on Software Engineering and Methodology" (Oct 2008)},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/2008/2846},
    publication_type = {techreport},
    submission_id = {7719_1228833580},
    institution = {Computing Laboratory, University of Kent},
    number = {5-08},
    address = {Canterbury, Kent, UK},
}

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014