A Unified Approach to Quantitative Software Lifecycle Modeling
An evolutionary process currently taking place in engineering systems is the shift from hardware to software where the role of software engineering is becoming more central in developing large engineering systems. Software productivity has been steadily increasing; but it is still not enough to close the gap between the demands placed on the software industry and what the state of the practice can deliver. A Unified Lifecycle model, integrating the three aspects of software lifecycle: the product, process and project views of software development is presented. Quantitative modeling of software processes are systematically developed, addressing all phases of the lifecycle. AHP methodology is used to rank order the suitability of different lifecycle models for a new development project. Distinct lifecycles for reuse based development and software maintenance are adapted from ULM. The 'development for reuse' strategy generates reusable components that are organized and stored in a reuse library. The selection-decision of candidate components from this library for reuse is derived using Rough and Fuzzy sets.Process models are optimized using Design of Experiments and Taguchi Methods.