liveBook · Manning

Quality measure

As explained in AI-Powered Developer: Build software with ChatGPT and Copilot

A software quality metric is a quantitative measure or benchmark used to assess characteristics of a software system or its development.

A software quality metric is a quantitative measure or benchmark for assessing characteristics such as performance, reliability, maintainability, and overall system quality. It gives development, testing, debugging, maintenance, and improvement work an empirical basis. section 6.2

Quality metrics are commonly grouped by what they measure and when they are applied:

  • Product metrics assess the software product itself. section 6.2
  • Process metrics assess development and related engineering processes. section 6.2
  • Project metrics assess the project context. section 6.2
  • Static metrics examine software without running it, while dynamic metrics assess behavior during execution. section 6.2

Code maintainability measures

For the Department-StatisticsVisitor class, cyclomatic complexity is 1, Halstead complexity is 2, Halstead difficulty is 1, and maintainability index is 100. These values are treated as favorable because lower complexity and difficulty, and higher maintainability, indicate easier comprehension or maintenance.

How AI-Powered Developer: Build software with ChatGPT and Copilot covers it

How deep it goes
Defines product, process, project, static, and dynamic categories and illustrates code measures, without detailing calculation methods.
Examples
Uses cyclomatic complexity, Halstead complexity and difficulty, and maintainability index values for the Department-StatisticsVisitor class.
What you can do after
Evaluate software quality characteristics and identify strengths or areas for improvement using quantitative measures.
How it connects
Connects software quality metrics with maintainability, complexity, cyclomatic complexity, Halstead measures, product metrics, process metrics, and project metrics.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of AI-Powered Developer: Build software with ChatGPT and Copilot. The section links point to the parts of the book it draws on.