9 Steps to Quality Software

Quality is Everyone's Job in the SDLC

submit to reddit StumbleUpon Delicious Save to Delicious
I was recently chastised in the comments for referring to "QA" as a group of people. The commenter fairly pointed out that quality improvements come from everyone who touches the software along the SDLC. While most of my customers do have a team called "QA", I couldn't agree more that quality improvement efforts need to be ever-present throughout the software development life-cycle.

A recent article by Capers Jones in InformationWeek drives this point home reviewing data from over 13,000 software projects:

To achieve a cumulative defect removal efficiency of 95%, it's necessary to apply at least nine defect removal activities in sequence:

  1. Design inspections
  2. Code inspections
  3. Automated static analysis
  4. Unit test
  5. New function test
  6. Regression test
  7. Performance test
  8. System test
  9. External beta test

Requirements inspections, test case inspections, and specialized forms of testing (such as human factors, performance, and security testing) add to defect removal efficiency levels.

 

That's a lot to do, but it at least lines up with what we're seeing many of our customers working towards. There are numerous tests across the SDLC, and many of them can be automated. AnthillPro can make sure the tests get run, and aggregate the data together.

Unfortunately, the parts that can't be executed automatically - like code reviews and usability testing - tend to fall by the wayside as budgets are cut and time is short. Teams with a commitment to quality should work stick by these techniques and trust in a time return down the road due to fewer defects, happier customers and less rework.




© 2006-2010 Urbancode, Inc.
Anthill, AnthillPro, and AnthillOS are trademarks of Urbancode, Inc.
All other trademarks are owned by their respective owners.
tel: (216) 858-9000 fax: i (216) 393-0006 email:info@urbancode.com