I am frequently surprised when I meet Business Analysts who
don’t have much knowledge about databases, why they’re structured in different
ways for different purposes, or even how to write a select statement. I think as analysts, we have to take some of
the blame for this happening, but I also think that non-IT businesses who have
an IT group often pigeon hole business analysts firmly in business and don’t
foster in their BAs a need to understand data, database architecture, or any
other data skills. That’s a shame.
As Business Analysts, we work with the business teams to
understand the business, the conceptual objects that are created by our
business and the processes that affect them.
We also should understand how the data in the business is used today and
have some ideas of how that data could be used to greater advantage in the
future. As we work on a project, we do
discovery on what elements of information are needed to complete a business task. We should understand how those information
elements relate to each other and how they are comprised of various
attributes. Working through analysis on
a human resources project will almost invariably ask you to create an object to
represent a person. How that person is
related to an employer, other employees, benefits packages, payrolls, etc. is
the stuff that data design is made for.
Most IT shops have DBAs who will assist with the creation of
tables, relationships, indexes, and all else that goes into creating the data
infrastructure that supports a product.
As BAs, we are not likely to be asked to do that work ourselves. I put it to you, however, that you must know
the concepts behind data design and architecture so that you can work together with
your DBA in a meaningful way. You are
going to understand the nuances of information interrelations. You will have a good idea of what elements
are most important, which data will be most frequently referenced, so you have
valuable insights that will help the DBA do their jobs more effectively. As a B.A., you can definitely add value in the
data design phases of any project.
During discovery and data design, you will use data
modelling. Data modelling refers to the
creation of a description of how a database is or will be structured and
used. Some common models are: Flat,
hierarchical, relational, and object-relational. These models allow you to quickly and
efficiently convey to others how what objects are important in your business
process and how they relate to each other.
Entity-relationship models are a
very useful means to communicate those relationships. You should also be aware that individual
items of data have their own properties.
Is it a numeric field? Is it a
text field? Is the value stored in this
field always one of a predetermined set of answers? If you don’t have a sound background in data
modelling, there are many wonderful ways to learn about them, from taking a
class in person to participating in a class online. You can also find many, many websites on the
topic as well as books. Please look at the end of this article for some links
and suggestions.
Once you’ve conquered the art of working on the design of a
database, you need to be able to work with the information. You need to be able to recover it and
manipulate it. You need to be able to
pull out pertinent information from several tables and combine the
results. For this, you need SQL. As a BA, you need to at least be able to
construct a select statement and give it criteria upon which to select and a
way to sort the data. Ultimately, it
would be handy for you to know how to create a complex selection between
several tables and store the results into a temporary table. You should also understand how to update,
add, and remove records. These basic
skills are relatively easy to do, once you know the ins and outs of data and
relationships. SQL script is relatively
natural and easy to work with. It just
takes time and practice. You also need a
data base that you can completely muck up and not cause a problem. If you can do that, you will be able to help
your team test your software, set up specific scenarios for “what if” testing
and create reports that will benefit your stakeholders.
Again, there are tons of resources out there that are free
or moderately priced. Go out and find a
book about SQL. Don’t get paralyzed in choosing which “flavor” of SQL to
use. Your employer has probably chosen
their database technology, go with it.
Or, you can use an open sourced database manager and learn from it. SQL for Oracle is not drastically different
from SQL for Microsoft or an open sourced system. Making the effort to learn and being rewarded
by the warm glow of learning will reinforce your effort.
You may have noticed that I haven’t even started a rant
about understanding data flow within and between systems. That’s a whole other article. Be prepared.
Until then, happy modeling.
Resources
Coursera is a wonderful source of learning. Courses are developed and delivered by major
universities. There is little to no
charge to learn. Visit www.coursera.org to learn more.
EdEx is another free to low cost option for folks looking to
learn about many different topics. Visit
www.edex.org and search for topics to get
started.
SQLcourse.com offers an interactive SQL learning environment. It’s pretty nifty in that you can actually
interact with a SQL interpreter to do your practical work. www.sqlcourse.com
Microsoft Virtual Academy has free on-demand courses for
beginners to advanced folks. They’re set
up so that you can create lesson plans for yourself and they feed in to MS
certification, if you want to go that far.
Here’s a link to the English SQL Server Courses: https://mva.microsoft.com/product-training/sql-server#!index=2&lang=1033
A great choice is the “For Dummies” series. Do not discount these books for
learning. Amazon.com has almost every
version you would want. You can also get these books on Google Play.
The O’Reilly series of books (the ones with the interesting
animals on the front) are consistently well written and very useful for
different levels of users. Amazon and Google
Play are good sources.