# Substitutability

> The degree to which a component can be replaced by another honoring the same contract without breaking clients.

Record: `lexicon:substitutability`
Kind: quality-attribute
Layer: [Structural Core](https://banes-lab.com/records/layer/structural-core.md)
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-substitutability

Listed in [Lexicon terms](https://banes-lab.com/api/records/lexicon.md), after [Static Safety](https://banes-lab.com/records/lexicon/static-safety.md) and before [Team Autonomy](https://banes-lab.com/records/lexicon/team-autonomy.md).

## Category

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

## Contract

- [Substitutability](https://banes-lab.com/records/algorithms/substitutability.md)

## Enabled by

- [Liskov Substitution Principle](https://banes-lab.com/records/architecture/liskov-substitution.md)

## Required by

- [Polymorphism](https://banes-lab.com/records/architecture/polymorphism.md)

## Linked from

- [SOLID / Object-Oriented Design](https://banes-lab.com/ontology/principles/architecture-category-solid-object-oriented-design.md)
