1 research outputs found
Defect patterns and software metric correlations in a mature ubiquitous system
Software engineering is not an empirically based discipline. Consequently,
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 very 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
language-independent beliefs and second, some of these beliefs are perpetuated
in modern technologies. It therefore makes good sense to use empirical
long-term data as it becomes available to re-calibrate those generalisations.
Finally, we analyse the phenomenon of defect clustering providing further
empirical support for its existence.Comment: 13 pages, 6 figures, 2 tables, 30 reference