Changing a schema in backward-compatible steps so old and new code can run simultaneously.
The only safe technique where downtime is unacceptable — and in close software the unacceptable window is customer-determined rather than chosen.