My work on modeling the dynamics of software reuse is an extension of an ongoing research program to study, gain insight into, and make predictions about the dynamics of the entire software development process. This is being accomplished through the development of dynamic process models using the techniques of System Dynamics. System Dynamics is the application of feedback control systems principles to model, analyze, and understand the dynamic behavior of complex systems. Its origins trace back to the pioneering work of Jay W. Forrester [#!forrester61!#].
To-date, the focus of my work has been on the study of software project management [#!abdel91!#,#!abdel89b!#]. For example, my colleagues and I have modelled/investigated the dynamics of software project staffing [#!abdel89a!#]; cost/schedule estimation [#!abdel93!#]; quality assurance economics [#!abdel89a!#]; and organizational learning [#!abdel90!#].
The current research effort extends the application of the System Dynamics technique to model the dynamics of software reuse. In contrast to our project management models which focus on the individual project lifecycle, the scope here is broadened to capture the operations of a software development organization as multiple software products are developed, placed into operation, and maintained over a long period of time.