# Debuggability

> The ease with which a fault can be located and understood from a system's observable behavior.

Record: `lexicon:debuggability`
Kind: quality-attribute
Layer: [Observability](https://banes-lab.com/records/layer/observability.md)
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-debuggability

Listed in [Lexicon terms](https://banes-lab.com/api/records/lexicon.md), after [Simplicity](https://banes-lab.com/records/lexicon/simplicity.md) and before [Maintainability](https://banes-lab.com/records/lexicon/maintainability.md).

## Category

- [Quality Attributes](https://banes-lab.com/records/lexicon-category/quality-attributes.md)

## In tension with

- [Encapsulation](https://banes-lab.com/records/architecture/encapsulation.md)
- [Event-Driven Architecture](https://banes-lab.com/records/architecture/event-driven-architecture.md)
- [Metadata-Driven Design](https://banes-lab.com/records/architecture/metadata-driven-design.md)
- [Metaprogramming](https://banes-lab.com/records/architecture/metaprogramming.md)
- [Observer Pattern](https://banes-lab.com/records/architecture/observer-pattern.md)
- [Encapsulation / Debuggability](https://banes-lab.com/records/tension/debuggability-encapsulation.md)
- [Event-Driven Architecture / Debuggability](https://banes-lab.com/records/tension/debuggability-event-driven-architecture.md)
- [Metadata-Driven Design / Debuggability](https://banes-lab.com/records/tension/debuggability-metadata-driven-design.md)
- [Metaprogramming / Debuggability](https://banes-lab.com/records/tension/debuggability-metaprogramming.md)
- [Observer Pattern / Debuggability](https://banes-lab.com/records/tension/debuggability-observer-pattern.md)

## Reinforced by

- [Observability](https://banes-lab.com/records/architecture/observability.md)
- [Traceability](https://banes-lab.com/records/architecture/traceability.md)

## Linked from

- [Separate, trade, or mitigate](https://banes-lab.com/software-architecture/principles/separate-trade-or-mitigate.md)
- [Architectural rules and principles](https://banes-lab.com/software-architecture/glossary/architectural-principles.md)
- [Core Modular Design](https://banes-lab.com/ontology/principles/architecture-category-core-modular-design.md)
- [Event / Messaging / Asynchronous Architecture](https://banes-lab.com/ontology/principles/architecture-category-event-messaging-asynchronous-architecture.md)
- [Error Handling / Resilience](https://banes-lab.com/ontology/principles/architecture-category-error-handling-resilience.md)
- [Metadata / Self-Description / Declarative Systems](https://banes-lab.com/ontology/principles/architecture-category-metadata-self-description-declarative-systems.md)
- [Metaprogramming / Language-Oriented Architecture](https://banes-lab.com/ontology/principles/architecture-category-metaprogramming-language-oriented-architecture.md)
- [Observability / Auditability / Traceability](https://banes-lab.com/ontology/principles/architecture-category-observability-auditability-traceability.md)
- [Behavioral Patterns](https://banes-lab.com/ontology/principles/architecture-category-behavioral-patterns.md)
- [The resolutions](https://banes-lab.com/ontology/schema/the-resolutions.md)
