Kazman et al. is an extensive technical report covering many aspects of maintainability. Recommended reading.


Maintainability is concerned with modifications after the software baseline is established.

  • The goal of a maintenance activity is to correct defects, adapt to changing environments, or im- prove a system’s future maintainability or other quality attributes.
  • The description of a particular maintenance activity is in the eye of the beholder: A particular change (or type of change) can be labeled differently, depending on the maintainer’s intention.

We measure maintainability as the amount of work required to modify, test, and maintain our software base in response to changes in environmental elements. This measure may depend on who is perform- ing the maintenance task and that individual’s level of skill or knowledge.

from Kazman et al., p.5


Capability of a product to be modified by the intended maintainers with effectiveness and efficiency.

  • Modifications can include corrections, improvements or adaptation of the product to changes in environment, and in requirements and functional specifications.
  • Modifications include those carried out by specialized support staff, and those carried out by business or operational staff, or end users.
  • Maintainability includes installation of updates and upgrades.
  • Maintainability can be interpreted as either an inherent capability of the product to facilitate maintenance activities, or the quality in use experienced by the maintainers for the goal of maintaining the product.

from ISO-25010:2023


Effort required to locate and fix an error in an operational program.

McCall-1978


Capability of a product to be modified by the intended maintainers with effectiveness and efficiency.

  • Modifications can include corrections, improvements or adaptation of the product to changes in environment, and in requirements and functional specifications.
  • Modifications include those carried out by specialized support staff, and those carried out by business or operational staff, or end users.
  • Maintainability includes installation of updates and upgrades.
  • Maintainability can be interpreted as either an inherent capability of the product to facilitate maintenance activities, or the quality in use experienced by the maintainers for the goal of maintaining the product.

A quantification of the time necessary to make specified changes to the product.

Volere