A nuclear fuel reprocessing plant must ensure that all material is accounted for. The regulatory body, EURATOM, needs evidence of all events and corrections to ensure that no material is lost. Mistakes happen. The wrong drum is sent to a customer and the system of record needs to be corrected. EURATOM needs to be able to see data reports from before and after those corrections.
The reality of this project was that a very capable on site team were forced to look at other development options because the requirements were too complex for a normal coding approach. The current view data model above is quite a sophisticated representation of the entity relationships. Imagine what the model would need to look like if all of those relationships had to have a set of history tables populated by hand written code where the coding had to ensure referential integrity across time.
The solution was to have the infrastructure automatically generate all the code which would otherwise have to be written thus allowing the developer to simply specify points in time and be presented with the data which was related to the event. What was originally seen as years of work was reduced to weeks because the developers could focus on the business logic and were elevated away from tackling data relationships across time.