Idea: Real-world measurement of changes to Implementations vs. changes to Interfaces

October 12, 2008

An idea for a paper.

For some software project:

  • What proportion of changes are “harmless” changes to interfaces? “Harmless” interface changes: Add a function or class, remove an unused function or class, add optional arguments to a function.
  • What proportion of changes are “harmful” changes to interfaces? “Harmful” interface changes: Change function parameters, remove a function or class and references to it.
  • What proportion of changes are changes to implementations? 
  • How do these proportions change over the lifetime of the project?
The numerous implications are left as an exercise for the reader.
(I always wanted to leave something as an exercise for the reader.)
Advertisements
%d bloggers like this: