I am trying to implement more functional design by using different ADT types for the same entity’s workflow stages, e.g. PlacerOrder, ValidatedOrder, DeliveredOrder in order to get rig of states and conditional checks.
Are there any related best practices? Currently I delete source aggregate and create a new one on the “transitional” event processing.
Thanks in advance for any cues and ideas.