Posts From This Author
About Our Authors
Gorilla vs. Guerilla Modeling
By Alec Sharp on February 19, 2010View Full Bio →
Thanks for visiting my new blog on data modeling here at ERwin.com. I’ll be looking at two sides of data modeling:
- “Pure” data modeling topics in which we’ll cover specific situations and the ways in which they can be modeled. For example, watch for a post soon on “Generalization and recursion – why they go hand-in-hand.”
- The process of data modeling, with emphasis on the social and communication aspects. I’ll explore a favorite theme – making data modeling accessible to “mere mortals” and engaging them in the process.
With that introduction, let’s dive into this month’s topic, which is an example of the second kind of post.
Gorilla vs. Guerilla Modeling
I often run sessions at which a range of people, from individual contributors and subject matter experts, through to senior managers and even CxO-level executives (CEO, CFO, …) eagerly and constructively participate in the development of a data model. When I describe this to other data modelers, there are two common reactions from people who haven’t had the same experience:
- Disbelief: “You can’t have business people involved in data modeling – they’d never understand it.”
- Curiosity: “How on earth did you convince them to attend a data modeling session?”
These responses lead us to some important principles:
- The participants didn’t know they were data modeling, because I didn’t tell them; in fact, I probably didn’t even use the term.
- I didn’t have to convince them to attend a modeling session because that’s not what it was; usually, I’ll be slyly introducing data modeling within the context of a business planning, process improvement, or requirements gathering session.
This is the difference between what I call gorilla modeling and guerilla modeling. In the former, you beat people over the head about the technique, the terminology, the nomenclature, and how important it all is. In the latter, you infiltrate territory and involve people in data modeling by stealth, without them necessarily knowing that’s what’s happening. The reaction is usually so positive that I get asked back for more, at which time I might start to introduce some of the terms and concepts that make up data modeling.
If you’d like to become a “guerilla modeler,” which is especially useful in an Agile environment, here are three things to keep in mind. Each of these will be covered in more detail in future posts.
1) Reset your mindset – data modeling and database design are NOT the same thing.
Change begins within. Changing how others perceive data modeling (fear, confusion, disinterest, …) might require that you change how you perceive it. I believe that a data model is essentially a description of a business. Lock in on that phrase. Just as you can describe the work of a business with a simple swimlane diagram, or the structure of a business with an organization chart, you can describe the things of interest to a business with a basic conceptual data model, understandable to everyone without any special training.
2) Don’t talk about “data modeling” – to the uninitiated, it really doesn’t sound that interesting.
Around 25 years ago, I was starting a data modeling session with my usual “friendly lecture” on data modeling. Suddenly, one of the rough and tumble engineers at this railway blurted out “Jeez, you IT guys annoy me.” The actual language was much more colorful, but you get the point. He continued “You guys are always coming down and trying to teach us your language – entities, relationships, blah, blah, blah. Just once, I wish you’d come down and try to learn our language.” I didn’t have a good answer, so I ditched my presentation, took his advice, and asked them what terms were unique to the language of the Track and Structures group at the railway. There were plenty – close to a hundred – and so began a very productive modeling session. Since then, I’ve never started with “the lecture.”
3) Avoid the urge to normalize – it’s necessary later, but an impediment early on.
Too many data modeling courses dive right into normalization as if that were the central issue. Unbelievably, I’ve seen university courses where normalization is introduced in the very first lecture. No wonder so many people new to the field believe “if it isn’t normalized, it isn’t a data model.” The initial focus during data modeling (whether you call it that or not!) is illustrated with questions like “What are the things you care about? What do you and others call them? What are the anomalies and points of confusion? What do you want to know about these things?” Practice getting comfortable drawing simple models that include plenty of M:M relationships, embedded reference data, and compound, multi-valued attributes like “Current/Previous Pricing Agreements.” You might have to gnash your teeth at first (I did!) but it will help your business partners get involved. And please, whatever you do, don’t get hung up on details like optionality or primary keys – those can wait until much later.
All of these will be explored in future blog posts, along with other topics in the same vein such as how to speak the language of the business and avoid “data speak,” how an “as-is” data model can be a real eye-opener, and what it means to practice empathy as a data modeler. It won’t all be the soft stuff, though – we’ll get into some tough modeling issues, too. I hope you’ll be back for more. Please feel free to contact me with questions, comments, and suggestions for future posts.
If you’ll be in San Francisco for Enterprise Data World 2010, March 14 – 18, I’ll see you there. Click here to see how you can get a $100 discount on your registration for being part of the ERwin Community. I’ve been added to the program and will be speaking Wednesday afternoon on “Getting Traction for Data Modeling – Winning Over the Masses” which explores some of the themes from this post.
Follow all Expert Blog updates by subscribing to the
RSS feed.
About the Author
Alec Sharp has managed his consulting and education business, Clariteq Systems Consulting Ltd., for close to 30 years. Serving clients from Ireland to India, and Washington to Wellington, Alec has expertise in a rare combination of fields - data management, business analysis, business process improvement, and enterprise architecture.
Alec, I’ve always appreciated how you bring the human factor into data modeling.
Looking forward to reading further posts in this series!
Cheers,
Corine
February 24, 2010
OK, I’m listening! Please share more about guerilla modeling because what I’ve tried so far really hasn’t resonated with the business or for that matter, even with my IT colleagues.
March 2, 2010
Hi Alec. I’m looking forward to applying what I learned in last week’s seminar, and to reading your notes and thoughts here.
March 6, 2010
You got a new fan, Me! Look forward to hear your insights and experiences.
April 5, 2010
How you find ideas for articles, I am always lack of new ideas for articles. Some tips would be great
March 25, 2011
Alec:
Amen to the guerillas. When I either do data modeling or a data model’s review, I use the phrase, policy specification and ultimatelyl lead up to the idea that “data is executed policy.” All that is in the data is policy and if it isn’t in the data’s rendering of policy specification then it’s just anecdotes. Sometimes I create a clealy wrong aspect and then ask to have it confirmed by a policy maker. They are almost always too eager to provide “enlightenment” and then ask me to bring back more diagrams for them to review (i.e., add to my enlightment.”
So, thanks for the article..
Mike Gorman
March 28, 2011
Thanks so much for the comments, Mike - it’s great to know that you’ve found the blog. Your comments are spot-on, and actually touch on things I plan to address in future posts:
1) I’ll be writing soon about how to present data models for business review. One of the points I’ll make (and probably make so often people are tired of it) is that I don’t call it a data model. There are various other terms I’ll use, often “world view,”
but not “data model” unless it’s unavoidable. A point I do make, and you raised, is that it’s a depiction of business policy. Not all policy, but an important subset. Stay tuned for more…
2) In a post I have planned about miscellaneous tips for maintaining client interest and involvement, I’ll stress a couple of things - (a) Let the client discover things like generalization for themselves by being patient, and also a bit devious, by drawing similar entities in symmetric ways and (b) There’s no harm in letting erroneous policy into a model, or even introducing a deliberate “error” or “misunderstanding” and being patient enough to let the clients spot it for themselves.
Thanks again,
Alec





















February 20, 2010