Find a term
Understand maintainability, code structure, and the costs of decisions that make future changes harder. Learn what quality signals can and cannot establish.
Terms beginning with S
29 termsSafe deletion
Safe deletion is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtScalability debt
Scalability debt is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtScalability testing
Scalability testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtScenario testing
Scenario testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtSchema debt
Schema debt is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtSchema migration
Schema migration is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtSecurity debt
Security debt is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtSecurity testing
Security testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtSemantic versioning
Semantic versioning is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtSeparation of concerns
The practice of organizing software so distinct responsibilities can change and be reasoned about independently.
Code quality and technical debtService extraction
Service extraction is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtShift-left testing
Shift-left testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtShift-right testing
Shift-right testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtShotgun surgery
A code smell in which one conceptual change requires small edits across many modules.
Code quality and technical debtSimplify conditional
Simplify conditional is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtSingle responsibility principle
A design principle that asks a software unit to have one coherent reason to change.
Code quality and technical debtSmoke testing
Smoke testing is a brief set of checks that determines whether a build or deployment is stable enough for more detailed testing. It typically exercises a few critical paths and fails fast when a basic capability is unavailable.
Code quality and technical debtSoak testing
Soak testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtSoftware bill of materials
Software bill of materials is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtSpecification by example
Specification by example is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtSpeculative generality
A code smell in which abstractions or extension points exist for hypothetical future needs.
Code quality and technical debtSpike testing
Spike testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtState transition testing
State transition testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtStatic-analysis false-positive rate
The share of reported static-analysis findings that reviewers determine do not represent actionable issues.
Code quality and technical debtStrangler fig pattern
Strangler fig pattern is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtStress testing
Stress testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtSubsystem testing
Subsystem testing is a software testing or test-design practice used to gather evidence about a defined risk, behavior, boundary, or operating condition. It makes the question under test explicit, identifies the inputs and observations that matter, and gives a team a repeatable basis for deciding whether the result is acceptable.
Code quality and technical debtSupply chain risk
Supply chain risk is a software maintenance concern describing a condition that can make future changes, verification, operation, or ownership harder. Its practical importance depends on supported behavior, rate of change, and the consequences of delay.
Code quality and technical debtSystem testing
System testing evaluates a complete integrated software system against specified requirements. It exercises the system through intended interfaces and considers whether the assembled product behaves correctly in a representative environment.
Code quality and technical debt