Benefits of Data Driven Design
When using Data Driven Design (DDD, see the editorial for a description) the developer first designs data storage in a relational database. Once the database design is complete, business objects are derived along with an implementation of persistence code based on the database design. Your objects and database are closely linked in design, not in code. In other words, both your database and object interfaces are designed by the same schema.
This was the model originally supported in Entity Framework. It would interrogate your database schema, and then build business objects matching the tables, and generate code to read or write data out of your database into business objects.
The NetTiers templates from CodeSmith also follow this design technique very closely. In fact, Entity Framework looks very much like NetTiers implementations. That’s not surprising since both frameworks follow the repository pattern for persistence. Telerick also has a good library for Data Driven Modeling.
I don’t know of any tools where you can do Data Driven Modeling from non-relational stores. But, there is so much out there I don’t know about, I wouldn’t be surprised if some brilliant person has created something.
Here are some questions you might ask when deciding if Model Driven Development best fits your needs.
- Do I need to persist my application data to a single data schemas?
- Can I wait for my database to be designed before my application?
- Will the majority of my business models match closely to a good database schema?
- Am I willing to have a bad database schema if my model doesn’t fit a relational database design (I highly disagree with doing this)?
Write to btaylor@sswug.org with your experiences related to Data Driven Modeling. Perhaps you have suggestions for tools, frameworks, processes or even questions to determine if Data Driven Modeling is right for you.
Cheers,
Ben
$$SWYNK$$
Featured Article(s)
Troubleshooting problems with user-defined functions in SQL Server 2008 R2
This article describes the problems you can have with SQL Server 2008 R2 user-defined functions (UDF).
Featured White Paper(s)
All-At-Once Operations
Written by Itzik Ben-Gan with SolidQ
SQL supports a concept called all-at-onc… (read more)