Since Chapter 4, Designing for Rapidity, we have progressed from design concerns to modeling tools to code generation techniques. This chapter looks at Model-Driven Architecture (MDA), a model-centric software development approach that combines the practices of modeling and code generation into a single paradigm. MDA pushes both technologies to the extreme, using models as the basis for generating a substantial amount of the code for the entire application.
Vendors of MDA tools are promoting the paradigm as the next generation in software development, promising unprecedented levels of developer productivity and software quality.
This chapter examines the merits of these claims and assesses the benefits MDA offers the rapid developer. The chapter covers the concepts underpinning the paradigm and demonstrates the use of AndroMDA, an open source MDA product.