I have a client who is a systems integrator, that is, most
of the work the client does is for other clients. We are working on a business analysis process
for the company. My point of contact
asked me if there is a difference in the activities or approach of business
analysts based on whether the business analyst is doing work for a client or
for an internal project.
Clearly the job of business analysis is basically the same
regardless of whom you are doing it for.
The business analyst still has to determine the real problem, analyze
the environment and problem domain, and come up with solutions. Then the business analyst has to define the solution
in such a way that the solution team can implement the solution. And this is
done whether the problem is the organization’s problem or a client’s problem.
But there are some differences. The obvious one is in documentation. Different companies and organizations have
different standards for documentation. So a consulting business analyst will have
to be fully cognizant of the client’s standards before starting the project. As much as we hate to admit it, as human beings
the output format has a direct effect on how we do the job. We will actually focus on different aspects
of the problem or problem domain depending on how we have to document the
result. For clients this is not a bad
thing. If they want UML diagrams of the solution or fully dressed workflow diagrams
of the problem domain, they are, after all, paying for it.
Keep in mind that the client has another agenda. In house we may not be as concerned about the
documentation because we can always have a quick meeting and discuss the issues
and make changes as necessary. The
client cannot be sure that your company will be around for the length of the
contact to fully implement the solution, and most likely will not be around
after the job is done. So the client has
to protect itself and make sure that everything you do is fully documented to a
state that the client can pick it up without loss of momentum or progress, or
hand it off to another contractor to finish.
It is easy to complain about having to be a documenter
especially if your solution team is doing an Agile development process. But remember your point of contact is only
concerned about getting the problem solved. The client organization is
concerned about getting what they paid for. The client organization wants to
limit dependency on you as a contractor and be able to continue to use the solution
you install long after you have gotten your last check in payment for a job
well done.
There are more differences that are important to know if you
are considering changing jobs from an in house business analyst to a consulting
company or, indeed, if you are thinking about going out on your own to be a
consulting business analyst.