Mar. 16, 1998 to Mar. 19, 1998
This empirical study analyzes changes in C++ source code which occurred between two releases of an industrial soft ware product and compares them with entities and relations available in object-oriented modeling techniques. The comparison offers increased understanding of what changes can and cannot be described using such object models. The goals were to investigate if the object model in this particular project is either abstract and stable or detailed and sensitive to change, and whether or not changes made to the C++ source code are visible in the object model. Four metrics for characterization of change are formally defined and used, namely correctness, completeness, compliance, and visibility factor. The major finding is that even though many of the classes are changed, the majority of these changes turn out to be invisible in the object model. That is, changes made on the source code level are of a finer granularity than available in common object modeling concepts. This may explain why object models seem to be of little use in release-oriented development.
Mikael Lindvall, Magnus Runesson, "The Visibility of Maintenance in Object Models: An Empirical Study", ICSM, 1998, 2013 IEEE International Conference on Software Maintenance, 2013 IEEE International Conference on Software Maintenance 1998, pp. 54, doi:10.1109/ICSM.1998.738489