A debugging pattern describes a generic set of steps to rectify or correct a bug within a software system. It is a solution to a recurring problem that is related to a particular bug or type of bug in a specific context.

A bug pattern is a particular type of pattern. The original concept of a pattern was introduced by the architect Christopher Alexander as a design pattern.

Some examples of debugging patterns include:

  • Eliminate noise bug pattern – Isolate and expose a particular bug by eliminating all other noise in the system. This enables you to concentrate on finding the real issue.
  • Recurring bug pattern – Expose a bug via a unit test. Run that unit test as part of a standard build from that moment on. This ensure that the bug will not recur.
  • Time-specific bug pattern – Expose the bug by writing a continuous test that runs continuously and fails when an expected error occurs. This is useful for transient bugs.

See also

edit
edit

📚 Artikel Terkait di Wikipedia

Debugging

In engineering, debugging is the process of finding the root cause, workarounds, and possible fixes for bugs. For software, debugging tactics can involve

Software design pattern

patterns. Abstraction principle Algorithmic skeleton Anti-pattern Architectural pattern Canonical protocol pattern Debugging patterns Design pattern Distributed

Serverless computing

fragmented chains, leading to latency, debugging and testing challenges, and reduced observability. These anti-patterns are associated with the formation of

Software testing

destinations. Glenford J. Myers initially introduced the separation of debugging from testing in 1979. Although his attention was on breakage testing ("A

Visual Studio

Studio 2008. Visual Studio Debugger includes features targeting easier debugging of multi-threaded applications. In debugging mode, in the Threads window

Structural pattern

adapters for debugging purposes. Retrofit Interface Pattern An adapter used as a new interface for multiple classes at the same time. Aggregate pattern A version

Test-driven development

production code. With TDD, both are written together, therefore shortening debugging time necessities. TDD is related to the test-first programming concepts

Magic number (programming)

penalty compared to using magic numbers in code. Especially the cost of debugging and the time needed trying to understand non-explanatory code must be