Replacing an existing system with a purchased product.

Removing an application or system from service.

Keeping an existing system unchanged.

Procedure for reverting a deployment.

Ability to reuse software components.

Discipline focused on dependable software operation.

Ability to recover from failures.

Duplicating resources to improve reliability.

Maximum acceptable data-loss interval.

Target time for restoring service.

Test of restoring data from backup.

Practice of disaster-recovery procedures.

Evaluation of potential threats and impacts.

Document listing identified risks.

Actions reducing risk likelihood or impact.

Decision to tolerate a known risk.

Shifting risk to another party.

Eliminating an activity causing risk.

Lowering probability or impact of risk.

Test determining whether a service can accept traffic.

Copy of data or service state.

Delay between source and replica updates.

Reads reflect recent successful writes.

Understandable consensus algorithm based on replicated logs.

Gradually replacing instances with a new version.

Stops old instances before starting new ones.

Percentage of users remaining active over time.

Cache loads missing data from backing store.

Memory management using reference counts.

Managing system resources throughout their lifetimes.

Resource management tied to object lifetime.

Value identifying or accessing another object.

Fixed-size circular data buffer.

Allows certain memory operations to be reordered.

Memory ordering that publishes prior operations.

Lock allowing multiple readers or one writer.

Lock that can be acquired repeatedly by same thread.