Software Process Modeling

Volume 10 of the series International Series in Software Engineering pp 87-109

Simulation Process Modelling for Managing Software Evolution

  • Meir M. LehmanAffiliated withSchool of Computing Science, Middlesex University
  • , Goel KahenAffiliated withCrown Poly, Inc.
  • , Juan F. RamilAffiliated withComputing Department, Faculty of Maths and Computing, The Open University

* Final gross prices may vary according to local VAT.

Get Access


Software that is regularly used for real world problem solving or addressing a real world application must be continually adapted and enhanced to maintain its fitness to an ever changing real world, its applications and application domains. This adaptation and enhancement activities are termed progressive, As progressive activity is undertaken, the complexity (e.g., functional, structural) of the evolving system is likely to increase unless work, termed anti-regressive, is also undertaken in order to control and even reduce complexity. However, with progressive and anti-regressive work naturally competing for the same pool of resources, management will benefit from means to estimate the amount of work and resources to be applied to each of the two types. After providing a necessary background, this chapter describes a systems dynamics model that can serve as a basis of a tool to support decision making regarding the optimal personnel allocation over the system lifetime. The model is provided as an example of the use of process modelling in order to plan and manage long-term software evolution.

Key words

Complexity feedback laws of software evolution process improvement resource estimation System Dynamics