People often talk about user interfaces (UI’s) and employ the standard selection list as a drop down menu. If you’ve been working with any type of web page or application you’ve seen them.
Many database designers really don’t understand the true relationship between the available options in any list that provides options and the item to which the selected option is being associated. Let’s take a quick example to make this more clear.
A web page offers the user a configuration menu to add options to a sandwich. The base sandwich contains ham and cheese on an eight inch long roll. The “customize my sandwich” page offers some options. Things like sauce, extra meat, extra cheese, vegetables, spices, etc. are all available options. Some options lists allow the user to select more than one, a scrolling list of check boxes, and some are single selections but in the end each of those attributes are defined in the database before they can be called by the code behind the page to create those objects you see. Each of those option sets is a domain of data. And, the sandwich itself represents a domain of data and the relationship between the two is what makes the final product unique, your sandwich.
Now that you have a better understanding of what a “domain” of data is, it is also important to understand that the relations between those domains are the real meat. The job of a good data steward is to provide an organized house to those domains and accurately represent the final product, the sandwich in the above example.
Taking this concept a step further, and moving into the reporting realm, or Business Intelligence, the relationships between the domains of data help to provide information and answer the questions most relevant to the person selling and making the sandwich. They may want to know, how many total sandwiches were made in a given month that had pickled peppers, and then how many had pickled peppers and mayo,.. and the list goes on and on. The key point here is that the domain of data is what’s important in being able to answer the questions posed by most businesses today. AND!! Creating the relationships between those domains is paramount to the good database designer.
Design your databases with these understandings in mind, and you’ll soon see how much easier it is to get the relationships tight, and the domains of data clean. In the end the reports will be super easy to write.
Data Chef out,..