Craig S. Mullins

Return to Home Page

December 2005





The DBA Corner
by Craig S. Mullins


Model-Based Development & Management



One of the most difficult challenges today’s organizations face is ensuring the right information reaches the right people so that data is used appropriately and accurately. Data architects can design the best possible data model, but that does not mean that developers will use the information in the way that it was intended, or that business analysts will immediately understand the relationships between different data elements.

An integrated solution for modeling can help to reduce this problem by streamlining information exchange and contextualizing the data model to minimize errors. By using models as the lingua franca for all data stakeholders – whether they are application and ETL developers, BI professionals, or business users – organizations can effectively translate otherwise disparate requirements in context of one another. For example, a data architect passing a logical data model to a development DBA needs to make sure the design is properly implemented in the database to ensure the business’s rules are enforced. With an integrated approach, models – and the underlying metadata – are smoothly and accurately passed across functional boundaries.

The models for the data architect and the DBA remain similar in look and feel, and utilize the same types of notation. Further, information can be displayed or hidden depending upon the audience. Modeling solutions with tight integration across functional areas can reduce the amount of time, effort, and error involved in sharing information. And sharing at the model level simplifies potentially complex processes because models can more readily be consumed and understood by all required parties.

Of course, we should clarify what we mean by models. A model is not just a diagram with boxes and arrows.  Yes, a data model must include the visual representation of the data (such as an entity/relationship diagram, or ERD), but it must also be backed up by metadata. A model without metadata might as well just be a quick picture scrawled on a napkin somewhere. It is the powerful combination of diagram and the metadata definitions for the elements in the diagram that make a model useful.

Facilitating Data Integration

Among other objectives, a good data modeling solution can help you to reverse engineer existing schemas into models and forward engineer models into new target schemas. And if you think about it, this is basically what you do during an ETL process: you reverse engineer an existing data source (that is, you extract the data along with the accompanying metadata, and it is the latter that is described in the schema), transform that data, and then forward engineer the target data.

For this reason, it makes sense to utilize models as a mechanism to facilitate data movement and data warehouse population. A model-driven approach to data integration can enable data architects and BI professionals to import data models and the associated metadata for use during ETL. This visual approach to data integration helps to simplify the process while ensuring the complete and accurate migration and integration of data between systems.

Simplifying Application Development

And models are not just useful for database development, but also to guide application development. The comprehensive data model should be integrated into a process model to streamline the development process. With knowledge of, and access to the metadata, developers are better armed to create the correct processes the first time around.

Furthermore, application modeling solutions used by development teams enable clear application models to be created that can then be translated into code. Model-based application development enables the deployment of higher quality applications in less time. And with the appropriate tools, you can then generate code directly from models into popular application development technologies (i.e., Java, C++, VB.Net, VB, C#, etc).

Enhancing Data Integrity Across the Enterprise

Creating data models and collecting metadata that spans the breadth of an organization can deliver significant benefits such as better decision support and business information, or richer customer information and support. However, data managers know that these benefits are only realized when the information is accessible and accurate. Using integrated modeling solutions to implement model-driven data management and development can help organizations to share knowledge effectively and with minimum effort. And it will certainly produce higher quality applications and data, too.







From Database Trends and Applications, December 2005.

2005 Craig S. Mullins,  All rights reserved.