Saturday, April 11, 2009

If the customer is reasonably clear on what they want and the nature of the application is such that unless you have a lot of business domain expertise you cannot really shape the requirements, then isnt it best that the customer interacts directly with the developers and get the app built? An iteration manager to coordinate things might be sufficient... Looks like BAs will be out of business soon ;-)

I agree to an extent. I believe a BAs role is to enhance value to the customer by refining business processes or by bringing in experience gaining in similar projects & fields. Value could also be added in projects where the concept behind the project itself is complex. For simple web-based/client-server systems which are just glorified input/output forms, a BA is really an overhead. Of course, this is with the assumption that the rest of the team & the customer are capable of development without the need for specific coordination & translation effort.

The flip side to this argument that complexity requires business analysis is the development of video games which are inherently very complex. In the 90s, most of the cutting edge work came out of small dedicated teams consisting of developers/designers without the need for specific BAs as such.

Very true. Often times, BAs are in business as customers do not have the bandwidth to interact with the developers and QAs directly. I guess startups and lean practitioners would often not prefer to have BAs on their projects as they can spend enough time with the development team to shape the software to their liking.

Agree. BA's need not be staffed by default on all projects. If the client is fairly clear, then an Iteration manager with a little bit of common sense is enough irrespective of the size of the project.

No requirement is really clear unless somebody puts an effort to understand these requirements :) Thus,you always need people in development team who can play *role* of a business analyst. This person need not to be business analyst by designation.