Today almost every IT project, whether Agile or Waterfall, includes the role of Business Analyst. But what do business analysts do? And why is this role important? Today we'll answer these questions in addition to detailing the day-to-day duties and qualities needed to be a successful business analyst.
Are Business Analysts Actually Necessary?
Let's start with a story.
Once upon a time, there was a brilliant programmer named John. While working on a task, John got an idea for an amazing feature that would solve a problem for his users. Inspired, he worked day and night to create the feature. After many hours of work and many cups of coffee, John released his invention to customers. He was extremely proud of his tool, and he expected his users to message him in awe, asking how he got such a great idea and thanking him the the tremendous help.
But soon he realized that users mainly ignored his feature, and when they did use it, they didn't use it in the way he intended. He started to wonder where the disconnect was between the masterpiece he had designed and the way in which it was being used (or ignored).
After talking to users directly, John realized that he wasn’t fully understanding the problem users faced. His feature, although it was awesome from UI to the last line of code, was not solving their problem. That’s why it wasn't in high demand.
This scenario taught John a key lesson: before starting to develop any feature or application, he needs to understand the business problem that the feature or application is intended to address. In fact, he needs to ask a lot of questions:
- Who are our users?
- What are their day-to-day processes?
- What problems do they face?
- How can we help solve their business problem(s) with software?
This is why the job of Business Analyst exists. Business analysts ask all of those questions, get an understanding of the business process and business needs, and then translate those needs into the documents - requirements and specifications - that programmers can use to create a software solution.
A Day in the Life of a Business Analyst
In essence, a Business Analyst, or a BA, is an interpreter between the business world and the IT world.
Everyday duties include talking to the customers (both stakeholders and end users), documenting their needs and asks, and transforming those into requirements. BAs also need to document the current processes (most commonly in the form of flowchart diagrams). This is important in ensuring that all of the steps/inputs/outputs will be incorporated into the new automated process.
"As Is" and "To Be" diagrams are common outputs of a BA on a new project.
Once a high level business process is clear, specific requirements are created for each system and feature.
On Waterfall projects, there will be lots and lots of documents, and every little feature must be documented and signed off on by the customer.
Agile projects have less documentation, and documents are more in the form of mind maps and user stories, sometimes with visuals, sometimes just with verbal descriptions. The more documentation and analysis, the better. But in Agile projects, there might be not much time for analysis. The team decides which features to implement during Sprint Planning, and development starts immediately after. This is when a business analyst's job gets very tricky.
Qualities of a Successful Business Analyst
A good business analyst is a communicator. Active listening, understanding users’ needs, asking questions, reaching out, and orchestrating meetings are some of the things business analysts do every day. Essential to this role is the ability to communicate in various settings and capacities, including one-on-one conversations, interviews with stakeholders about their wants and needs, presentations of features or documents, and meetings connecting various business users to gather multiple perspectives.
Multi-tasking is also a must. This job requires switching between various tasks quickly. A single BA might work with multiple departments on completely different projects, but even within the same project, tasks can vary from writing a specification to talking to a user, drawing a diagram or a prototype, testing a feature, and presenting a concept to the team or to stakeholders.
An analytical mind is key, as this role requires the ability to dissect a concept and analyze every part of it.
Business analysts also need to know a lot within different spheres of business, including internal systems, such as Sales, Marketing, Finance, Legal, and Administration. Erudition and knowledge in different areas significantly help on the job.
Finally, a successful business analyst is a quick learner. Business analysts must be subject matter experts. Of course, it’s impossible to know everything, but it is the job of a business analyst to be able to answer questions from both business and IT perspectives.
Which Tools Do Business Analysts Use?
The first and primary tool of a business analyst is the brain.
Pretty obvious. The job requires a lot of thinking, analyzing, understanding new concepts and processes, and learning lots of new terms, tools, and sometimes even programming languages. You could say that the "Input" a BA absorbs is information from interviews with stakeholders, users, and the IT team, plus existing documentation and observations. The "Output" is visions, diagrams, prototypes, and specifications. In the initial stages of a project, a business analyst can work without a computer, instead drawing mind maps or process diagrams like the following on paper.
The most common tools business analysts use in their work are:
- A tool to create diagrams and mind maps, like MS Visio, Lucidchart, or something similar.
- A prototyping tool, like Balsamiq mockups, Axure RP, or even Excel.
- Any text editor, such as a Google Doc or Microsoft Word.
- A tool to create presentations, such as MS PowerPoint or Google Slides.
- A tool like Confluence for creating project documentation that will be accessible for the team.
Aside from the tools that are needed to produce project documentation, business analysts need to be familiar with the systems their users utilize. These might include CRM systems, ERP systems, and accounting software.
On some projects, it can be really helpful for a BA to know SQL.
In general, the more tools a BA knows and the more experience they have with different systems, programming languages, and business domains, the higher their level of expertise is. The more you know, the easier it becomes to learn new softwares, concepts, and languages.
What's Your Story?
Are you a business analyst? Working with one? Interested in becoming one?
Comment below to share your experience with and thoughts about this role and its associated skills, as well as how you think the role appeared in the IT world!
Vlada Pobedrya is a Business Analyst at Avenue Code with 10+ years of experience. She started her career in IT as a QA, then transitioned into Business Analysis, where she has worked on multiple complex projects using both Agile and Waterfall development models. She has trained junior QAs and Business Analysts. Vlada is passionate about learning, new technologies, and skills. She loves hiking, rock climbing, and scuba diving.