Strategies for lifecycle concurrency and iteration - A system dynamics approach

Abstract Increasingly fierce commercial pressures necessitate the use of advanced software lifecycle techniques to meet growing demands on both product time-to-market and business performance. Two significant methods of achieving such improved cycle-time capability are concurrent software engineering and staged-delivery. Concurrent software engineering exploits the potential for simultaneous performance of development activities between projects, product deliveries, development phases, and individual tasks. Staged-delivery enables lifecycle iteration to supply defined chunks of product functionality at pre-planned intervals. Used effectively, these techniques provide a powerful route to reduced cycle-times, increased product quality and, potentially, lower development costs. However, the degree and manner in which these techniques should be applied remains an area for active research.This paper identifies some of the issues and open problems of incremental lifecycle management by reference to the development of aeroengine control systems within Rolls-Royce plc. We explain why system dynamics is a promising technique for evaluating strategies for lifecycle concurrency and iteration.