When you are putting together the roles and responsibilities to implement a Business Intelligence or Data Warehouse project, you probably have the following roles defined:
- Team Lead
- Designer / Data Modeller
- ETL Developer
- BI Developer
Im assuming the Initiation, Strategy, Scope and Requirements are already done and your moving into the implementation phase by the way.
One of the key things we make sure we have in any project is a multi-talented team because you can be sure that you each team member will need to cover some other things while on the project, not just their core role. This is especially true of smaller teams/projects.
So here are the things we look for in team member so we have good coverage in a project:
System Administrator / DBA
The system administrator is the person who is going to manage the server & software and make the changes you need throughout the project.
Typically the servers/software are in development mode not production (yet) so the standard help desk / change request / change management processes / post production support resources aren’t applicable.
Even if you have another company/group/set of resources do the install and config of whatever server side software you are using, you are always going to need to tweak stuff throughout the project. We still ain’t out of the box yet Dorothy.
So one fo the team has to be the that go-to guru that just makes stuff work when it needs to.
Data Model Visionary
If your project is big enough you will most likely have a dedicated data modeller. But typically the data modelling will be undertaken as part fo the detail design and this can be done by various team members throughout the lifecycle of the project.
The risk is that as each piece of design work is done, it may not be aligned to all the other pieces of design work and so slight variations can be introduced. Also the person doing the design is focussed on delivering their piece in the best and quickest way, which may not align with the future roadmap or vision.
So somebody has to have a end data model in their head and make sure everything the project does moves towards it. Im not saying you need a end state data model before you can begin, but you need somebody with a view of where it wil all end up.
Even if you have a full set of requirements for the project before you start, you wil still need to engage the key stakeholders throughout the development processes to ensure your on the right track. (hopefully your days of develop it and they will come are long gone).
To make this an easy process somebody has to fil the role of Business Analyst, prepping for any meetings/workshops, facilitating them to make sure they aren’t a complete waste of time (and have a planned outcome) and documenting the results. Aka a BA.
Typically done by the BI orientated folk, but then I have found a lot of ETL devs have this skill they just hide it on purpose!
This is the go-to person that fixes stuff when it breaks. They have that logical problem identification and resolution thinking that means when something is broken (or never worked in the first place) they can sit down and work out what wrong and how to fix it.
You oh so know that this person is needed a few times on a project. Typically when you have the pleasure of implementing or using new software, or near the project crunch time.
This is the person who when the s##t hits the fan or is about to, jumps in and takes control and calms everybody down makes sure everybody concentrates on the facts and then works with everybody to come to an acceptable resolution.
Every project has rough spots, especially if the project is making a lot of changes that involves lots of people, teams and stakeholders. So the interceptor makes sure everything goes smoothly when things get political.
The key is finding people that are able (and happy) to do multiple roles in a project. Then you can manage any hurdle that appears!