In the free Data Model Scorecard Validation Tool, there are five “killer” questions out of the over 150 questions that are part of the tool, that if answered improperly will automatically score the model with the lowest setting of “Poor”. If you’ve used the tool, you might have experienced one or more of these questions :L).
A data model should either be a representation through the eyes of a business person, or through the “eyes” of an application. This applies to terminology, definitions, and rules. Similar to how a filter on a camera can change the appearance of a scene, the filter setting for a model allows you to represent either a business or functional view on the model. Are we modeling the application’s view of the world or the business’ view of the world? A business view represents an application independent view. It does not matter whether the organization is using SAP or Siebel, the business will be represented in business concepts. An application view represents a specific application. If the application uses the term ‘Object’ for the term ‘Product’, it will appear as Object on the model and be defined according to how the application defines the term, not how the business defines it.
In general, forward engineering requires a business perspective and reverse engineering an application perspective.
Many of my data modeling consulting assignments include resolving the application/business filters. For example, a data warehouse is often designed with a business filter, yet each of the source systems have very different application filters, often leading to a complex integration project.