📑 Table of Contents

A Software defect indicator is a pattern that can be found in source code that is strongly correlated with a software defect, an error or omission in the source code of a computer program that may cause it to malfunction. When inspecting the source code of computer programs, it is not always possible to identify defects directly, but there are often patterns, sometimes called anti-patterns, indicating that defects are present.

Some examples of Software Defect Indicators:

  • Disabled Code: Code has been written and the programmer has disabled it, or switched it off, without making it clear why it has been disabled, or when or whether it will be re-enabled.
  • Routine Too Complex: A program (method, module, routine, subroutine, procedure, or any named block of code) contains more than 10 binary terms in conditional statements.[1]
  • Unused Variables: Unreferenced variables are a strong indicator for other errors.[2]
  • Number of Distinct Committers: The amount of unique developers that have made contributions to a project's commit history. This is a process metric that is useful in indicating software defects. [3]

See also

edit

References

edit
  1. ^ William T. Ward: "Software Defect Prevention Using McCabe's Complexity Metric", Hewlett-Packard Journal, April 1989, pp 64-69: Control-flow complexity has been correlated with low reliability and frequent errors.
  2. ^ David N. Card, Victor E. Church, and William W. Agresti: "An Empirical Study of Software Design Practices", IEEE Transactions on Software Engineering, SE-12, no. 2, February 1986, pp 264-71: 46 percent of routines with no unused variables had no errors compared to only 17 to 29 percent for those with one or more unreferenced variables.
  3. ^ Madeyski, Lech, and Marian Jureczko. “Which Process Metrics Can Significantly Improve Defect Prediction Models? An Empirical Study.” Software Quality Journal 23.3 (2015): 393–422. Web.
edit

📚 Artikel Terkait di Wikipedia

Software bug

A software bug is a defect (bug) in computer software. A computer program with many or serious bugs may be described as buggy. The effects of a software

Software metric

Connascent software components Constructive Cost Model Coupling Cyclomatic complexity (McCabe's complexity) Cyclomatic complexity density Defect density

Technical analysis

deliver technical indicators (e.g., MACD, Bollinger Bands) via RESTful HTTP or intranet protocols. Modern technical analysis software is often available

CodeScene

approach to validate how these indicators are associated with business-critical variables such as development velocity and defect density. The platform uses

Maneuvering Characteristics Augmentation System

purchased, in addition, the AoA value indicator, and Lion Air had neither. Boeing had determined that the defect was not critical to aircraft safety or

OpenText ALM

milestones and monitor progress using performance indicators. Real-time traceability of requirements and defects. [citation needed] The Lab Management module

Agile software development

light indicator may also be used to inform a team about the current status of their product development. A common characteristic in agile software development

Software agent

In computer science, a software agent is a computer program that acts for a user or another program in a relationship of agency. The term agent is derived