Skip to main content

Author: Gurpreet Singh Kharbanda

To BA or Not to BA

The article presents my perspective on the best practices of the trade, including things that a BA should keep in mind while carrying out his or her responsibilities. 

I have had a number of people ask me what it is that a BA does in any software engagement. Is it really important to have a BA for every project? Is this a generalist or a specialist skill? While answering these questions, I found myself struggling to restrict the tasks to be carried out into one domain; to clearly categorize the required skills as the must-haves and the good-to-haves. Like everything in life, here you also have a choice to do it for the sake of it and get it done, or do it with the intention of adding value to multiple stakeholders. As this role entails a unique advantage of interaction with people at every stage of SDLC, you have a chance to get a holistic view. The role offers you an opportunity to be a “requirements collector” or something more. 

Through this blog I am going to share my understanding of this universe and what can help you excel as a BA.

  1. Facilitate reverse flow of knowledge and experience: The client, for sure, can have a much better understanding of their business, but the BA often has interface with a team (or at least some members of the team) who might have worked in the same domain for multiple clients. This exposure more often than not helps them develop insight regarding solutions. Encouraging brainstorming and generating ideas by collaborating with them gives you an opportunity to act as a conduit to pass these on to the client and help define and refine the solution. However, using your understanding of the business and their inclinations, you must filter these ideas so that they end up having higher relevance to the client.

    So next time your team comes asking questions about the implementation details, respond to their questions with your questions to elicit answers from their experience.

    A caveat here though is to be attentive to the rationale behind the suggested approaches, which might as well be rooted in simpler implementation, reduced effort, and the tendency of taking a path of lesser if not of least resistance.

  2. Identify the opportunities to pitch in: When you hear “I don’t know” or a tentative tone a few times while discussing requirements or solutions, that’s your cue to be a hero and you should not miss such opportunities to shine. This is where your research/domain expertise can help you earn a couple of extra brownie points. If you have spent some time going through the trends, the best practices and the common pitfalls, such homework is bound to help you. Being aware of the possible solutions in the same space can help you pick the relevant features from them and customize them to meet your needs. After all, getting inspired is no crime! 

    Similar situations can also be exploited to cross-sell solutions, if you are aware of the capabilities/strong practices of your own organization. This is a prospective win-win situation for everybody. Your organization benefits from the increased business, you get to work on your revenue-pulling skills (which are obviously highly appreciated) and the client gets integrated solutions without having to interact with multiple vendors (which can get complex at times).

  3. Know your customer…and their customers: Spend some time understanding your client’s business, their competitors, their concerns and their KPIs. Such measures are greatly welcomed and appreciated. This is that extra mile you could go to delight them and win them over. Knowing the customer’s customer is the best thing you can do for yourself as this helps you put things in perspective. You are better able to grasp the context and priority of your client’s needs. This helps you to create value for them as well as build domain expertise for yourself.
  4. Give up the ego: Don’t be too hung up on your ideas. You must have heard this a zillion times but it is still hard to practice. Do more listening and have an open mind. Learn to appreciate others’ views and try stepping in their shoes rather than concentrating on selling/pushing your own ideas. At the end of the day the best solution is the one that makes the clients happy, and that is what should be your focus. 

    The same applies when you interact with your own team as well. You will end up working with a better designation, never underestimate the importance of wisdom that comes from experience. Humility is indeed a virtue.

  5. Balance the Act: When the clients’ expectations are of ultimate flexibility from the team and the development /delivery team’s tendency is to avoid changes to the requirements late in the development cycle, someone has to play the moderator to get the required time from the client for the team by pushing deadlines, and cajoling the team, on the other hand, to absorb the changes, which are the client’s priority.
  6. Work your ancillary skills: While mastering of the support tools (PowerPoint, Excel, and Visio, etc.) may not fall under your immediate responsibilities, these are certain to help you differentiate yourself. Be aware of the utility tools available that can help in performing your tasks effectively. You can find lots of software assistance to create UI mockups, functional prototypes depicting flow, requirements management, etc.

    Some coding/architecture knowledge won’t hurt you either. It helps you to connect with your own team and earn their respect, and to have them consider you one of them and not someone who is from a different planet speaking a different language. Another way it benefits you is you get to gauge the effort estimates that you might have to deal with every now and then.

  7. Be a people person: Healthy relationships with other teams working with the client (UI design, development, etc.) will help you ensure smoother execution of the project. Synergy is the keyword here. Don’t try to offload your responsibilities. While you could implement easier processes at the expense of their increased efforts, it is not a recommended path. Be ready to be of help and work together even if it goes beyond your call of duty. Such will be the instances that will help you grow professionally and enhance your skill set. This could be the best hands-on, cross-cultural training that you might receive — a lot better than classroom training. 
  8. Comply with the processes: Where there is the thrill of being in the fore with the client, the action of thinking on your feet, there is also the not-so-happening part of this role, which involves sending MOMs, documentation, change management, versioning and scoping, etc. You might hate this part, but the fact is, when bad gets worse, you will find these things coming to your rescue. This comes with the bonus of making your own delivery folks happy about your work, as they are constantly under pressure by the auditors and quality folks.
  9. Don’t go soft on your Soft-Skills: There is no way you can get away without these in your ammunition. Facilitation, conflict resolution capability, diplomacy, presentation skills, etc., are all required in proposing your ideas and countering others without making them uncomfortable. These are most important when you present ideas and negotiate timelines or approaches with your client.
  10. Create reusable resources: Using your comprehension of the business and experience to generate artifacts that can foster the understanding in the team, transition of new resources is another good activity. Try translating your tacit knowledge to explicit knowledge by documenting it as process flow diagrams, systems’ interaction diagrams, etc., so that others can take advantage of it.

Practicing the points mentioned above will take you a long way. A couple of characteristics that will prove to be the icing on the cake for you are being crystal clear and concise in your communication and documenting requirements. Nothing should be left to the imagination of the developer. Your knowledge about the client’s needs and priorities should ensure that no grey areas are left with regards to requirements. Above all, be ready to don multiple hats: of a PM, a QA resource, of a QA lead, a client, etc. And be aware that being part of a project leadership team along with the Project Manager and Tech and QA lead, your attitude toward problems and work is bound to have a rub-off effect on the resources working with you. As Uncle Ben very rightly told Spiderman, with great power comes great responsibility.

Don’t forget to leave your comments below.