Chapter 1. Software Quality

WHAT'S IN THIS CHAPTER?

  • An overview of external and internal quality

  • Discussions of technical debt and constructive quality assurance

  • A look at various software metrics

  • A brief look at tools for measuring and improving software quality

This book deals with software quality in PHP projects. What, exactly, do we mean by the term "software quality"? One example of a software quality model is FURPS (Functionality, Usability, Reliability, Performance, Supportability), which was developed by Hewlett-Packard.[11]

Although the FURPS quality model applies to all kinds of software, there are even more quality attributes with respect to Web applications, namely findability, accessibility, and legal conformity.[12] Software quality is a multifaceted topic, as Peter Liggesmeyer states in the introduction to Software-Qualität: Testen, Analysieren und Verifizieren von Software, 2. Auflage.[13]

Every company developing software will attempt to deliver the best possible quality. But a goal can only be certifiably reached when it is clearly defined, which the term "best possible quality" is not. Software quality is multifaceted, thus software quality comprises many characteristics. Not all of these are equally important for the user and the manufacturer of the software.

A user's view on quality differs from a developer's view. We thus differentiate between external and internal quality, following Nigel Bevan's explanations of ISO/IEC 9126-1: Software Engineering—Product quality—Part ...

Get Real-World Solutions for Developing High-Quality PHP Frameworks and Applications 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.