Chapter 2. The Quality Landscape

No software system is completely and utterly defect-free. The testing and reviewing that you perform will always highlight defects and deficiencies in your outputs. The level of testing and reviewing that you actually perform and when you perform it dictate how many defects can be highlighted and fixed before the system is put into live service or production. The preparation, execution, and delivery that you perform should really ensure that quality is maintained throughout the project. The software quality landscape encompasses the categories and measures for defining and maintaining software quality. The measures are intended to reduce the number of defects that are found out late in the process and to produce high-quality code and artifacts throughout the project. There's no doubt that quality has costs associated with it, but the extent to which it actually costs needs to be understood, controlled, and minimized without compromising the final result. I mentioned in the previous chapter that I consider quality to be a component of scope, and the software quality characteristics contain the high-level categories for each of the quality areas. The total number of defects and their scale should be reduced as much as possible during construction to avoid unnecessary delays, excessive numbers of defects during formal testing, and cost overruns. To support these principles, you need to implement and employ tools and processes that help to maintain ...

Get Design – Build – Run: Applied Practices and Principles for Production-Ready Software Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.