Beruflich Dokumente
Kultur Dokumente
Matthias Urech
ETL Developer
Abstract
This article provides a questionnaire that can be useful when being involved in the design
process of an interface.
Introduction
Do not design a bridge by counting the number of people who swim across the river today. That's
also true for ETL projects. Depending on your role in the ETL project, your work starts sometimes
when the data flow needs to be built. Fine, someone will tell you what you have to do. But
sometimes you will be involved earlier in the project to design the interface. As a matter of fact,
you are faced then with the challenge of gathering requirements. That's where the ETL Design
Questionnaire comes in place. Asking the right questions is not only essential, but will put you
also in a position of controlling the design process. As a side effect, you will be recognized as a
professional ETL developer that has a plan.
Sounds like the questionnaire is an exciting and useful tool to work with. But how is this different
from other methodologies or frameworks (i.e. Informatica Velocity)? Each of the provided
questions is supported by tables or graphical elements (let's call them diagrams). It is neither
about creating comprehensive documentation nor strictly answering all questions. Consider this
set of questions rather as a presentation of multiple views in order to understand the interface.
The main goal is to gather as much information with a simple approach. The key word here is
"tailoring". Decide yourself what you want to use!
Like everybody has a schema for getting rich that will not work, using the proposed questions in
this article will neither prevent you for going through the design process nor is the list of questions
complete. At the end of the day, your goal should be to provide the requirements for developing a
working interface, respond to changes, and have a good costumer communication and
collaboration. I hope nonetheless that the provided ETL Design Questionnaire will be useful to
you and to your challenges.
ETL Design Questionnaire
In this section we will go through the following set of questions:
These are just some of the tasks and the list is by far not complete. However, all those tasks have
to be done by someone. The objective of the role/task diagram is to define the involved people
and their responsibilities. In short: you can simple ask "who does what?". For example: subject
matter expert (who) provides business rules (what).
By knowing the types of relationships, you are now able to draw the data flow in the data life cycle
diagram. For example: the data flow arrow will point from system 1 to system 2 in case of a
Master/Slave relationship. What's left is to move the data flow arrow horizontally to define at
which point in time an action (i.e. create) in system 1 will cause a certain action in system 2.
Please note that the given actions in system 1 are just examples. Some systems only allow
flagging data inactive instead of deletion. And the road still doesn't end here since some systems
are connected to more than one. Therefore, you could also draw additional systems to the
diagram. In such situations it would be worth spending some thoughts about prioritizing the data
flow order and if the data food chain makes sense at all.