You might be wondering if you need both a data dictionary and a data mapping, or you might want to make these two deliverables part of one simultaneous analysis activity. Data mapping is a special kind of data dictionary, so the two techniques are very closely related.
In a certain set of circumstances, they can be done simultaneously as one stream of analysis activity. We’ll talk about when and how that works in a bit, but first let’s clarify the difference between the two deliverables and when to create each of them.
(By the way, if you are looking to learn more about data modeling, be sure to check out our Free Data Modeling Training.)
The Difference Between a Data Dictionary and a Data Mapping Specification
- A data dictionary defines the data elements, meanings, and allowable values, often for a single data source.
- A data mapping specification defines how information from one system or data source maps to a separate system or data source.
In order to create a data mapping specification, you need to understand the data dictionaries for each of your data sources. In fact, your data mapping spreadsheet will take key pieces of information about the attributes of both sources and present them side-by-side. This allows you to evaluate how the data will flow from one source to another and what translation rules are required.
When to Create a Data Dictionary
You’ll create a Data Dictionary for the following types of projects:
- Updates to existing databases or information systems
- New databases or information technology systems
- Any project where multiple systems are using a single data source
You can create a current state dictionary to understand the data requirements for an existing data source, or a future state data dictionary to spec out the key data requirements for a to-be-created data repository.
When to Create a Data Mapping Specification
You’ll create a data mapping specification for the following types of projects:
- When source data is migrated to a new system as part of a data migration
- When source data is sent to a target data repository on a regular basis as part of a data or system integration
The type of system doesn’t really matter, they could be Commercial-Off-the-Shelf, Sofware-As-a-Service (SaaS), or in-house proprietary systems. If data is moving from one system to another, a data mapping specification will help you model those requirements.
Again, a data mapping specification can be created to model an existing data integration. But most commonly you’ll create them to model how a new data migration is supposed to be handled or a new data integration needs to work.
When to Do Both Together
Now, to the question of if and when these two documents can be created together.
Data modeling can be a complex activity that requires a lot of intellectual activity for a business analyst and a lot of collaboration with business and technical stakeholders. One reason to keep these two deliverables separate is simply to break apart the analysis into interim steps and keep things moving smoothly.
If you are working on a significant data migration project with hundreds of fields and you jump right into a data mapping exercise, you are likely to get stuck. And stuck = frustrated. One way to get unstuck is to back-pedal and create a separate data dictionary for each data source or even an ERD (entity relationship diagram) modeling out the whole project.
That being said, here are some scenarios when it could work to do the exercises together.
- You are updating the data mapping specification for an existing data integration.
- You are creating a new data model by evaluating a pre-existing data model, and so the mapping exercise is a tool for requirements discovery.
- You are working on a data migration or integration that touches a relatively small number of attributes.
It’s also likely that your data mapping exercise will require changes to one of your data models, so data mapping can lead to data dictionary updates.
When it comes down to it, as long as your data map helps you discover and resolve all of the data requirements, you’ve done what you need to do as a business analyst. If you are new to data modeling, data dictionaries and data maps will be easier to apply as discrete activities. And since they will not always be done together, you get to add two data modeling techniques to your BA toolbox.
>>Learn More About Data Modeling (Free Training)
Learn the essential Data Modeling Techniques (even if you don’t know how to code) with this free training.