When is Model Driven Software Development appropriate?
In the previous two blog posts we discussed what is Model Driven Software Development, and the benefits. Below is an outline of when we think Model Driven Software Development approaches might apply.
- When project scope includes support for large numbers of data entities, and/or large numbers of business processes and functions, and/or large numbers of business rules;
- When the requirements can be modeled using standard data patterns; the alternate to this are highly literal and de-normalized model patterns which are seldom a good idea;
- When application logic follows predictable patterns for data usage and event models;
- When you’re building or integrating an application which your organization will depend on for several years and which will likely need to adapt and evolve over time;
- When you have strong business analyst(s) and subject matter expert(s) who can lead the process and where you also want to couple highly iterative Agile Project Management methods with sufficient traceability back to the business requirements and models.
In subsequent blog posts T4Bi will outline their “Open KnowledgeFrame” and how it fits within MDD. Open KnowledgeFrame (OKF) is an innovative project accelerator from T4Bi that reduces the time, risks and costs to design and develop integrated, secure, SOA and Cloud-based business applications, and deliver results which are also more adaptable to business and technology change.
 Examples of widely known and accepted data model patterns are described in David Hay’s seminal work “Advanced Data Model Patterns: Conventions of Thought” and Len Silverston’s similarly influential “Universal Data Model Resource Book”. Martin Fowler extended these patterns into the OOAD world in his “Analysis Patterns: Reusable Object Models”. I can’t say who was the originator of most of these patterns, but over the last couple of decades their influence has been significant. For my money David Hay’s meta-modeling is second to none if you’re one of those strange people (like me) who think that’s exciting reading. These are just a few of the many contributors that I’ve highlighted.