15.5. The Verification Gap

For the models to be useful, they must meet the requirements on the domain. Hence, we need to test the models against use cases as the best expression of the requirements. Each test case is a “polished” rendition of its originating use case.

Agile processes rightly propose the construction of test cases before writing code. The same applies to models: You can construct a series of test cases for the models just as you would for code.

Writing test cases first and executing them as soon as there is a model reduces the “verification gap”[3] between the model and its validation. Closing this gap is, we believe, a major contribution of executable models.

[3] This term is due to Terry Bollinger.

Final thought: Keep your brain ...

Get Executable UML: A Foundation for Model-Driven Architecture now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.