Simulating A Real-World Software Evolution ProcessBW Chatters, ICL As part of the on-going FEAST investigation into the effect of feedback on the long-term evolution of software systems, System Dynamics models of the evolutionary processes of real-world software products are being developed. The model described here simulates the evolution over 13 years and many releases of one of the constituent parts of VME, ICL's mainframe operating system. The model reflects the assumption, supported by ICL expert opinion, that, in addition to any exogenously-generated demand for VME enhancements, enhancing VME results of itself in demands for further enhancements. This circular process is embodied in the model structure. Model input parameters have been calibrated using metric data and collaborator experts' judgement. Graphical comparisons of model outputs against actual values for implemented change requests and accumulated code size are shown. The feedback-based model provides a plausible explanation of trends in VME evolution, and that the successful calibration of a model abstracting lower-level dynamics such as release schedules suggests that these may have only limited influence on global process trends. These findings are broadly in line with the Laws of Software Evolution. The results of the work demonstrate that a simple model can successfully simulate the externally perceived behaviour of the software process.
|