Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone

Beyond our own Model-Driven Software Engineering in Practice book you may find the following books also interesting to get started in the world of model-driven engineering (including approaches for code generation, model execution and so on).

MDA Explained: The Model Driven Architecture(TM): Practice and Promise by A. Kleppe, J. Warmer and W. Bast

Ideal for getting to know the basic concepts of MDA. Once you finish it, move to one of the following ones to realize about the challenges you will need to face when applying MDA for real.

Executable UML: A Foundation for Model-Driven Architecture by S. Mellor and M. Balcer

This book describes Executable UML, a subset of UML focused on the definition OF UML models that can be directly executed or translated to the final implementation technology. To do so, all UML elements that are ambiguous or irrelevant from a code-generation point of view are forbidden. In fact, Executable UML basically consists of a limited class diagram, state machines and action semantics (a pseudo-code to specify the behaviour of the operations attached to the classes in the class diagram). This method has been successfully used in the embedded systems domain but, in my opinion, falls short when it comes to deal with data-intensive applications.

Nevertheless, the book is very useful as an example of a possible model-driven development process that achieves a 100% code-generation (for the kinds of systems that can be modeled with this sublanguage of course).

Models to Code: With No Mysterious Gaps by L. Starr, A. Mangogna and S. Mellor

A fresh look at the world of executable UML. The goal of the book is to show, in great detail, how exactly to get from executable, platform independent requirements models to efficient production code. No more hand waving. Read this great interview with its main author.

Model-Driven Architecture in Practice: A Software Production Environment Based on Conceptual Modeling by Ó. Pastor and J.C. Molina

The authors describe the OO-method approach to go from the initial conceptual schemas to the final system implementation following a model-driven development process. The book describes the relevant conceptual modeling primitives for the method abd shows how these primitives can be mapped into the final system. The book benefits from the authors’ large experience on developing real systems.

Designing Data-Intensive Web Applications by S. Ceri, P. Fraternali, A. Bongio, and M. Brambilla

An example of a model-driven development process that it is not based on the UML language. The book introduces WebML, a language for specifying and generating data-intensive web applications. WebML consists of three main components: the data model (similar to a UML class diagram), the navigation model (to describe the web pages, the data to show in them and the links among them) AND the presentation model (to describe the presentation aspects of the pages). Useful to have a different view on MDD.

Tweet about this on TwitterShare on FacebookBuffer this pageShare on RedditShare on LinkedInShare on Google+Email this to someone