At one of my very first jobs in the service industry, I had a boss who had a variation on an old adage. He would say, “The customer is not always right. In fact many times the customer is dead wrong; but the customer is always the customer.” This statement highlights the idea that whether something is right or wrong is less important than the role that each of us fulfills. Without consumers, there is no need for anyone to produce the things to be consumed. Obvious, right? But then why do so many build an acrimonious relationship with the very individuals that create the need for their service?
In data modeling, business users and internal IT users, make the world go around. If they don’t use the models that are designed, or worse, if they cannot relate to the designed data models, then what value has been delivered? If designers look down their noses at the users, as if those users are stupid and cannot possibly understand the value the designers have granted to those users, then chances are very high the designers were too self-absorbed to listen to the users’ thoughts and needs in the first place. Therefore, the designers’ proffered solution may very well be insufficient.
Customers provide the input for data modeling; and without that input, a data model is just ungrounded babbling. This does not mean that the users are “always right” and that they should dictate a data design. Data modelers need to listen to their users, and need to be hyper-vigilant in finding coherency and sense in what they model. Customers may need to be guided and chided into expanding their world. There are times when there are issues with the semantics involved in the universe of discourse being modeled.
Semantic issues are data modeling issues; it is not unusual for a problem to revolve around a lack of words—an insufficient set of semantics to describe the business. The users often do not see these problems, but they do notice issues, issues wherein differing people or groups are using the same words to mean different and multiple things. A good data modeler will pick up on this set of inconsistencies and work on addressing exactly that confusion. Many times, the result can incorporate “expanding the language” to allow for each semantic variance that is used by one group or another to have a name that uniquely identifies it. Then on re-examining the problem with the new and expanded language, a resolution emerges that addresses the issues in a substantive manner. As a result, problems get fixed.
Working through these issues requires close collaboration with the user community. Users need to be walked through the differences and distinctions in the words they use and the meanings they are placing on those words. In opening the user’s eyes to the nuances in the language that have been ignored, that have caused the problems, that are now being addressed in the new solution, the data modeler is winning trust and acceptance for that new solution. The customer becomes an advocate for the new data model and the changes it brings. Without the customer as part of the team, working closely with the designers on exposing the semantics of the business data, success is much harder to attain.
In many places today, users are seen as “the problem.” Too many managers still believe in controlling all aspects of a message and keeping users and staff in the dark about as much as possible. These old-school approaches are no longer viable; we are in an age of transparency. Customers are the data modeler’s business partners in working through solutions to organizational issues. If that is not the case today, then you have your first issue that needs to be addressed.