20 Jun 2016
Information and Communications Technologies
The Quality of Your Software is the Key!
Today, a lot of software development projects are sailing as did the Titanic: in a sea full of icebergs. The icebergs represent the trials and tribulations involved in carrying out these projects: ill-defined business needs and volatile functional requirements, high development costs as opposed to optimistic budgets, perilous duration and delivery dates, and unclear quality requirements. The software development industry and, above all, the users, have become increasingly demanding and an organization must fight hard to maintain customer satisfaction. At times, it can be a matter of survival.
The essential question here is: how to preserve or increase the level of customer satisfaction?
One of the key features in a software development project is the costs associated with the quality, or cost of software quality (CSQ). These costs are one of the icebergs that a project can hit. The CSQ as a whole is one of the hidden costs which each software project manager must be aware of.
Studies show (according to the company’s level of maturity) that the CSQ take up between 40% and 67% of the total costs of a project. Losses in a software project can often reach up to 40% of costs (Charrette, 2005). This is huge! However, these costs can be controlled if they are well-known.
The cost of quality, as defined by Campanella (1999), means all the costs associated with compliance and non-compliance. Primarily, they relate to the costs of prevention (quality assurance, code reviews, etc.) and assessment (test planning, test cases, etc.); secondly, they relate to the costs associated with internal anomalies (detected by the testers) as well as external ones (found by the customer).
A study was carried out at Bombardier Transportation in order to measure the CSQ for a large software development project where specific actions had been taken: such as those of the New York subway, in the United States. Over 88,000 hours of work were reviewed and analyzed to better understand and evaluate the different costs related to the CSQ. The study found that these costs were in the range of 34% of the total project cost. It helped learn the costs of all the activities: those that cost more compared to others, those which should have had a larger share of the budget, and those which should have been better controlled.
The study showed the importance of knowing the CSQ in any environment: Agile, RUP, or other. The measurement process must be adapted to the work methodology and yield benefits from the resulting information. These measures are not restricted to large companies; small businesses can also benefit greatly. High-quality products that meet budget allocations and delivery dates, as well as customer requirements, help increase customer confidence.
For more information on this study, please refer to the research papers below:
Berrhouma, N., Laporte, C.Y., Doucet, M., April, A., Mesure du coût de la qualité logicielle d’un projet d’envergure de la société Bombardier Transport, Revue Génie Logiciel, Numéro 88, Mars 2009, pp 47-57. (PDF)
Laporte, C., N. Berrhouma, M. Doucet and E. Palza-Vargas (2012). Measuring the Cost of Software Quality of a Large Software Project at Bombardier Transportation: A Case Study. Software Quality Professional (SQP), VOL. 14, NO. 3, pp. 14-3. (PDF)
Nabil Berrhouma has over 19 years of experience in software development, and software development lifecycles. He completed a master’s degree in software engineering at the ÉTS. He holds the position of business analyst in a federal bank.
Program : Software Engineering
Claude Y. Laporte was a Professor of software engineering at ÉTS before retiring. He is the Project Editor of the systems and software engineering ISO / IEC 29110 standards for Very Small Entities developing systems or software products.