Backward compatibility
A new version continues supporting agreed existing usage without requiring changes to existing consumers.
Preserve existing usage
Backward compatibility means a new version continues enabling previously supported usage within the agreed contract. Scope and direction matter: an old client should work with the new provider. The reverse direction does not follow automatically.
In a fictional example, a job API still supplies orderId with the same agreed type and meaning. An additional field can be compatible if existing consumers accept unknown fields under the contract. A strict consumer might otherwise fail. Also check required inputs, error responses and behaviour. One passing test or an unchanged URL does not prove complete compatibility.
Sources
Related terms
- Semantic versioningAn agreed version scheme expressing intended compatibility of changes to a defined public API.
- Breaking changeA change that prevents previously supported consumers or uses from working as agreed.
- Contract testA test of agreed messages between a consumer and a provider at an application interface.
- Cache stampedeA cache stampede occurs when concurrent cache misses trigger the same expensive calculation or data query repeatedly.
- BackpressureBackpressure adjusts incoming data to the receiver’s processing capacity through signals to slow down or pause.
- Race conditionA result depends on the timing of overlapping accesses and can therefore be wrong.
Your project with ASES
Describe your project to us. We will get back to you with an initial assessment.