The Business Analyst is the Tester!

I just ran into this article on CIO website: Why You Need to Break Down the Wall Between Business Analyst and QA Teams. I am a bit surprised about the fact that this wisdom surfaces only now.

I know that usually BA's and Testers are different people and have a different role. I sometimes also deal with BA's who don't like testing. However in most projects, I have always tried to make the BA the tester or one of the testers of the system. It only makes sense. The BA is the one who writes the requirements based upon his interpretation of the what is required. If lucky, the BA is doing much of the design as well.

The developers interpret this interpretation of the BA and build the system. If you then have Testers that are positioned far away from the original BA, then they test the system on their interpretation of the interpretation of the BA. You have a high risk that you end up with something that was not envisaged by the business and was not envisaged by the BA.

Having the BA doing the testing, you remove one level of the indirection and at least get something close to what the BA had envisaged. Because the BA was the person who dealt with the source of the requirements, it is the best you can get.

Of course, intensive testing involvement by the key business users will give even a better result. However you should never only rely on them because there the risk is too high they only do it superficially and won't go through all the scenarios you will encounter during normal business use. Specialist testers in combination with the original BA(s) and end users will give in my opinion the best results. And yes, testers should be involved in early stages of the requirements and design.

I found that I achieved my best results with my super coordinators (I called them Service Delivery Managers) who play a mixed analyst, design, project coordinator and testing role during the project where they work closely with dedicated BA's for requirements, design and testing. Those people are then also fantastic to help out with the business roll out and assist business users with their normal day use. (see also "Why Business Requirements don't work")

Besides this, you'll be doing the BA a favour to make them participate in testing. This way the BA gets direct feedback of how well he has done his requirements and design work. If a BA would only be involved in the early stages of a project and never is actively involved in the outcome, the will not know if he has done a good job or not. Testing makes a BA a better BA!