The Best Data Modeler is a Lazy Data Modeler – #tsql2sday Post

Feb 8, 2011   //   by Karen Lopez   //   Blog, Data, Data Modeling, Database  //  2 Comments

imageSpecial note: This post is part of TSQL Tuesday , a special blog posting monthly event based on a SQL Server/data topic chosen by one blogger.  I’d love to see more data architects be part of the blog conversations.

I frequently hear from project team members that they’ve never used the automation features of their data modeling tools.  Some of the reasons they give:

  • I’m not a programmer.  It is not fair to expect me to to know how to program in order to use these tools.
  • I have no idea how to use it and don’t have the time to find out
  • Nothing I do can be automated; it’s all one-off tasks
  • You can automate some of my work???

I think if you are giving these reasons without even trying, you a missing out on one of the niftiest features of your tools. 

imageI’m not a Programmer

Great! Neither am I.  The good news is that many tools don’t require you to have full blown programmer skills in order to automate data modeling tasks.  They have macro-like languages that require a bit of logic skills, but not much more.  For instance, Embarcadero ER/Studio XE uses a macro language called Sax Basic that is very similar to VBscript.  I’m lucky in that I used BASIC early in my career and am generally familiar with the language.  The toughest part is learning the functions, objects, and properties that are specific to ER/Studio, but thankfully there is a built in Help system that does a half decent job of helping you use them.

I Have No Idea How to Use It

That’s okay, because I don’t start with a blank macro when I go to automate a task; I just start with an existing one that is close to the same thing and tailor it to what I need to do.  I needed to export some meta data from my model to Excel, so I opened an existing macro that exported a bunch of data and tailored it to include the data I wanted, in the format I wanted it.

We host a mailing list/forum just for macros and automation of data modeling tools in our InfoAdvisors User Discussion Groups.  There are sample models that others have tailored and community members who are willing to help you through a tough part.  Also, most vendors have similar resources on their websites.

InfoAdvisors ER/Studio Macro

Nothing I Do Can Be Automated

I think you must be spending a huge amount of time clicking and waiting when you could be pushing a button and doing something else like grabbing a cup of coffee or answering a question on a forum…or even helping out a team member.  For instance, some of the macros that have been posted to our communities are:

ER/Studio Exporting All a Model’s Submodels as Images

ER/Studio Macro to Convert 1 Datatype to another Datatype

ER/Studio Macro to Add all Entities from a Model to It’s Submodel

ER/Studio Macro to Print PDFs of all Submodels Completely Unattended

ERwin Macro to Generate DDL for a DBMS not Currently Supported

imageMost of the macros I write tend to be to make some boring aspects of my job less boring by allowing me to do something else.  This means printing out my entire model, exporting images, making mass updates, etc.  If it has an algorithm that I can automate, I’m going to invest 15-20 minutes so that I don’t have to spend hours or even hundreds of hours over the course of a project doing those non-architecture tasks.

Another major use of automation I do is for setting properties for my DBAs.  Their standards and preferences should be automatable.  How FKs are named, how indexes should be names, which datatypes should be used, etc.  The fact that I can run a quick macro to do these and keep my DBAs happy, well, that’s priceless.  They love me for it <crickets, crickets>…well they should love me for it.

You can Automate Some of my Work???

Yes.  Not really the analytical parts, but some of the more mundane, boring, "change all these but not those" tasks.  Sure, finding and tailoring a macro takes time, but it is so worth it the next time you push a button, wander off to the coffee room to refill your 31 oz. Trenta cup with high-octane coffee.  Managers really don’t want you spending times on tasks that nearly anyone with mouse skills could do.  By using macros and APIs, you can add significant hours of productivity to your day.  Let’s also admit that computers are generally better at doing mass changes more accurately than we are. 

So let’s summarize:

  1. Automating boring tasks makes you happier.
  2. Happier Data Architects are better Data Architects
  3. Automated recurring, boring tasks make bosses happier
  4. Automating tasks makes for more accurate work
  5. Saving time for you and your team members makes everyone happier.

A Lazy Data Modeler is a Better Data Modeler.


Leave a comment

Subscribe via E-mail

Use the link below to receive posts via e-mail. Unsubscribe at any time. Subscribe to by Email



UA-52726617-1 Secured By miniOrange