Abstract

Many organizations use information technology to gain competitive advantage. As a result the demand for software products increased tremendously and the information technology industry has grown rapidly. As demand increased, the competition among information technology firms also increased. The information technology companies can no longer survive by just delivering the products but has to ensure the quality of products as well as the products have to be delivered on time without cost or effort overrun. Hence it is imperative for information technology companies to quantitatively manage the software development process. In fact quantitative project management is one of the requirements for achieving higher levels of capability maturity model. Lots of research has been carried out in the past to develop models to quantitatively manage the software development process. Most of these studies focussed on methodologies to quantitatively manage only one of the performance characteristics namely quality or schedule or effort. But to deliver the good quality software on time within the budgeted cost, all the critical performance parameters of software development process namely quality, productivity, effort, cost, etc need to be managed simultaneously. Many of these characteristics are related to each other and many cases the correlation is such that improving the performance of one characteristic will adversely affect the performance of other performance characteristics. Moreover all these performance characteristics need to be managed by controlling a common set of control parameters. Hence it is required to identify the best values of the control parameters which would simultaneously optimise all the performance characteristics. In this paper, the authors suggest a methodology to simultaneously optimize the performance characteristics of coding phase of the software development process. The same methodology can be used to simultaneously manage the different performance characteristics at other phases as well as the overall software development process. In this study the authors have taken two performance characteristics namely coding productivity and quality (measured in terms of defect density). The approach is to develop separate process performance models to estimate the coding productivity and defect density using the process parameters namely programmer skill, reviewer skill, review type, preparation time, module complexity and code review rate. Then the values of these process parameters which would simultaneously optimize the coding productivity and defect density are identified using Taguchi’s loss function. The proposed approach has been implemented on seven software development projects and the results are very encouraging. Moreover the optimum obtained by the proposed method is much better than that of optimizing the coding productivity and defect density separately. The project managers also agreed that a common setting for process parameters which would optimize both performance characteristics simultaneously is much easier to implement than methods for managing different performance characteristics independently.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call