Where the simple bank is for reading, this model is for running. Its five use
cases create the model’s three entities (clients, policies, each naming its
drivers, and claims), which an
execution environment keeps, checking every pre- and post-condition against
them as it runs. Process claim is the one to read closely: it waits for the
client’s documents against a deadline, screens and prices the claim, and then
declines it or has it assessed, paid and the vehicle repaired.
Who answers each lower-level service is a matter of configuration, and hence the
same model runs with people, stubs, compiled services or external systems behind
them. It ships without a defect, so it can be taken to execution as it is. If one
removes one invariant of its requests, a test run finds the defect which
lets a claim pay past its cover.