Do I Need Technical Skills as a BA? #
Certainly, because a Business Analyst who works on a Software Project must understand the following aspects of software development:
- Interaction with Data, Type of Data (Structured/Unstructured) and Relationship between different Data Entities
- Communication between Software Systems
- Analysis of Business Data and Information
- User Interface Elements of software
By technical skills, the first thing that comes to mind is Software Programming. It’s nice if a business analyst knows programming but that’s not an essential skill since a Business Analyst is not supposed to write software code.
A Business Analyst should have a set of other technical skills that help him/her perform the Analysis of Requirements, Design Solutions, and be able to Produce Clear and Complete Software Requirement Specifications.
Essential Technical Skills for a Business Analyst #
If you want to succeed as a Business Analyst (specifically IT business analyst), the following are the necessary technical skills that you should learn and apply in your work practice.
- Database
- Spreadsheets
- API (Application Programming Interface)
- Wireframing
1. Database #
Almost every software works with a database to process the data it interacts with.
There are mainly 2 types of Databases:
- Relational (aka SQL)
- Non-relational (aka NoSQL)
For a Business Analyst, it’s required to learn the following skills related to Database.
- Types of Database i.e. Relational or Non-relational
- Entities Stored in Database i.e. What are the different entities (real-world objects) involved in software? For Example, In an E-commerce system, the entities are Customer, Product, Order, Order Items, Payment, Fulfilment, Seller, and so on.
- Entity Relationships i.e. in the same example above, A ‘Customer’ can have Multiple ‘Orders’. An ‘Order’ can have only One Customer.
- Data Types i.e. Text, Number, Date, etc.
- Database Querying i.e. an ability to retrieve required information by Querying a database to help in data analysis and reporting activities.
- In a Relational Database such as Oracle or MySQL, the data is stored in the form of Tables (rows and columns). The standard ‘Structured Query Language’ (SQL) is used to query the data. For Example: “select * from orders;". This is an SQL statement used to retrieve all the orders. But it’s not required to master the SQL to retrieve data. Most of the relational databases provide a graphical query builder that you can use to construct your query. That makes it easy.
- In a Non-Relational Database such as Firestore or MongoDB, there is a graphical query builder that you can use to construct your query and retrieve the data. Just need to understand how to use that query builder.
With this skill, you can easily retrieve the required data and analyze that for your requirement analysis tasks.
If you are building a new system, this skill helps you design better solutions and specify the data-related requirements efficiently.
2. Spreadsheets #
A spreadsheet is a great tool that helps to analyze, manipulate, format, and visualize business data.
As we all know, there are 2 popular spreadsheet tools:
- Microsoft Excel
- Google Sheets
A business analyst should learn the following Spreadsheet functions:
- Data Formatting – Sort, Filter, Find/Replace, Conditional Formatting, Formulas
- Data Lookup – vLookup, hLookup
- Pivot Table / Pivot Chart
- Macros
3. API – Application Programming Interface #
Almost every software is connected to another internal or external software to exchange data. Monolithic (a big giant) software systems are being replaced by micro-services for ease of development and maintenance. It’s called Micro Service Architecture.
For example, In an ERP system, instead of developing each function into a single software, individual software applications are developed for each function and these systems are interconnected to exchange data. This is internal connectivity.
Similarly, a software system is connected to external systems as well. For example, an e-commerce system is connected to book-keeping (accounting) software.
The connectivity between software systems is referred to as “Interface”.
A business analyst should understand the connectivity between the software systems and what kind of data is being exchanged to perform the Interface Analysis.
Today, REST API (Representational State Transfer API) is the most widely used protocol to connect different software systems.
Suppose an E-commerce system has different functions – List Orders, List Customers, Create an Order, Modify an Order, Fulfil Order etc.
- This system exposes each of these functions as a REST API so that the other system can call these API to perform the function.
- For example, a Shipping provider’s software can use the ‘Fulfil Order’ API to mark the order as fulfilled and add the tracking number information to the order.
An API can be either Public or Private. Public API can be accessed by anyone. Private API requires authentication and authorization to be able to access the API.
In the REST API protocol, the data is exchanged in the JSON format i.e. key-value pairs.
- It uses the HTTP methods for different functions e.g. GET, POST, PUT, DELETE, OPTIONS, etc.
- It’s a Request-Response method, the same way as we browse the internet by requesting a website’s URL from the browser and the browser shows the response from the website.
Example REST API: GET https://sample-online-shop.com/v1/oders?order_no=123
Example of testing an API in the Postman Tool:
Apart from the REST API protocol, there are other protocols such as GraphQL, SOAP, Web Socket, and RPC.
Since the REST API is the most widely used protocol, a business analyst should learn the following skills related to the REST API to perform interface analysis and testing of APIs.
- Ability to understand API specification / API documentation of a software system
- Ability to test APIs using the tools such as Postman to figure out how a particular API works i.e. what input does it take and what output does it provide.
- Ability to write specifications to develop APIs
- Ability to perform requirement analysis of a Process Automation workflow that involves multiple systems connected through REST APIs
4. Wireframing #
It’s kind of a technical skill that’s very crucial for a business analyst to create visual solutions for new web or mobile apps i.e. how the new app would look like, how a user would interact with it to perform an intended function etc.
After eliciting requirements for a new UI-based application, a business analyst should do the following activities to prepare a solution and make it ready for development:
- Prepare a high-level solution outline
- Prepare Low-fidelity Wireframes (rough mock-ups) of UI elements using a wireframing tool
- Show wireframes to stakeholders and keep revising it until it is approved
- Handover wireframes to designers to create hi-fi designs
- Create requirement specifications using wireframes for the developers
To be able to create professional wireframes, it’s required to understand the basics of User Interface (UI) and user Experience (UX) and learn how to use one of these popular wireframing tools - Figma, Balsamiq, Uizard etc.
If you want to learn more about wireframes and how to create professional wireframes, check out our online course - Mastering Wireframing for Business Analysts.
Take a look at the following article to learn more about the Wireframing Tools:
Online Course To Learn The Technical Skills for IT Business Analyst #
Explore the following comprehensive online course that will help you master the essential technical skills for IT Business Analyst.
The Ultimate Technical Skills Course For IT Business Analyst
Master the must-have technical skills to thrive as an IT Business Analyst!
Conclusion #
Apart from the core business analysis skills, these technical skills are demanded the most by employers when hiring IT Business Analysts. So, it’s worth learning these technical skills to boost your performance and professional growth.