Deviations aren't an OOTB object type. Probably for a good reason. How *should* we authorize a temporary replacement or specification change within the platform?

We use deviations to temporarily change a spec, or replace a part in the MBOM. But our deviations are a custom object type. 

What is the "best practice" for modeling these types of temporary alterations to the manufacturing plan of record (if that's even the right context)?

I'd love to hear your thoughts, either from DS or other customers.