Executable UML a foundation for model-driven architecture - Mellor, Stephen J. (Addison-Wesley, 2002)