SHARE
Facebook X Pinterest WhatsApp

In Software Development, Quality Matters

Written By
thumbnail
John Parkinson
John Parkinson
Feb 17, 2006

For much of the past week, I have been debating software quality and how to measure it with one of my clients. Twenty years ago, when I managed software development for a living, I had three quality “metrics” for my engineering teams: delivered defect density; usability; maintainability.

Each was based on several different measures—for example we differentiated between defects that were coding errors and defects that were incorrectly implemented features—and not every metric was available all the time. You don’t get to measure maintainability until you have been doing maintenance for a while.

For each metric I had defined target levels (no Level 1 critical code defects for example) and improvement targets. My team leaders all knew what these measures were and that they would be assessed on how well they did against the targets.

At the final engineering review prior to release to production, we would walk through all the measures, look at both the history and final status of the quality process and get a final sign-off from engineering, customers and the production support team.

Miss one of the critical targets and your code would not make it through the review. This approach served me pretty well for most of a decade and I started into the conversation with my client thinking that they would work this time as well.

But developing software today is not always that that simple. In addition to coding errors, feature failures and performance requirements, engineers have to worry about things like security, privacy rules, localization factors (including specific use of language and images) and device characteristics (is the user device a phone, a PDA, a TV or a notebook computer?) as well as ease of deployment and supportability. More people need to be involved in upfront design decisions, in test design and in the review of test processes.

I recently saw a checklist with over 70 required “sign-offs” before a software deliverable could be added to the production environment. All called “quality gates.”

Something seems out of balance here. Let’s concede that all these new characteristics are indeed necessary. But are they to do with “software quality,” and if so, how do I measure them? In most cases, I seem to be creating an “acceptability” metric, based on a set of non-functional characteristics that I can perhaps test for on a “pass/fail” or “present/absent” basis. I can design a review process that does this, but it’s not in my mind a “quality” issue.

So we designed a survey to see what the client’s software engineering teams are currently doing to measure quality. The initial snapshot isn’t encouraging. Many “measures” were cited, but there were few quantitative definitions or correlations between the measures being used and the “quality” of the final deliverable.

In fact, the biggest problem we observed is that there is no real definition of “quality” in use. We are going to do some more work on this over the coming months and see if we can get an acceptable definition (or set of definitions) worked out and deployed.

I’ll keep you all posted as the work proceeds, but I’d also be interested in what other groups use for definitions and how they measure against them.

Recommended for you...

Best Business Travel Items: 11 Business Travel Essentials
Kaiti Norton
Aug 4, 2022
IBM on the Evolving Role of the CIO: Interview with Kathryn Guarini, CIO of IBM
Shelby Hiter
Jul 26, 2022
Can’t Hire a CIO or CISO? Go Virtual
Drew Robb
Jul 11, 2022
An In-Depth Guide to Enterprise Data Privacy
Jenna Phipps
Jun 25, 2022
CIO Insight Logo

CIO Insight offers thought leadership and best practices in the IT security and management industry while providing expert recommendations on software solutions for IT leaders. It is the trusted resource for security professionals who need to maintain regulatory compliance for their teams and organizations. CIO Insight is an ideal website for IT decision makers, systems integrators and administrators, and IT managers to stay informed about emerging technologies, software developments and trends in the IT security and management industry.

Property of TechnologyAdvice. © 2025 TechnologyAdvice. All Rights Reserved

Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.