Business Analysis Fundamentals PDF
Business Analysis Fundamentals PDF
This e-book will help you understand the fundamentals of business analysis.
Contents
Introduction 3
What is business analysis 4
Who is a business analyst 6
Skills of a business analyst 8
Software Development process 11
Top SDLC Methodologies 14
Case Study 16
About Techcanvass 22
Business analysts have been gaining importance in the IT industry, especially in the last
few years. This trend is expected to become better in the coming years. They play an important
role by enabling the customer organizations implement a software solution effectively and
efficiently. Business analysts work as an intermediary between the customer and the software
teams to understand & capture the requirements and communicate with the technology team.
This tutorial will help you understand the basics of business analysis, role & skills of a
business analyst and tasks carried out by business analysts in a project. This tutorial is intended
for any professional (IT or non-IT professional), who would like to become a business analyst.
We will conclude this tutorial with a comprehensive case study to help you understand the
concepts practically.
International Institute of business analysis (IIBA), Canada defines business analysis as:
Business analysis is the discipline of identifying business needs, determining the best-fit
solution and measuring the effectiveness of the solution. Business analysis comprises of three
key elements as shown below:
The first element of business analysis is to understand the problem/needs of the customer.
This is possibly the most important element of business analysis practice. Identifying the
correct problem is necessary before we can attempt to solve it.
“If I were given one hour to save the planet, I would spend 59 minutes defining the problem
and one minute resolving it,”
Nothing highlights the importance of using right techniques and methodology to understand
the problems or needs, correctly. Needs are high level problem statements or business
goals. The needs must be detailed out to help the software development team to develop a
software application. The detailed version of needs is referred to as requirements. We will
discuss requirements and how does it evolve, in the guide later.
Cost vs benefit
Risks analysis
Financial analysis like Net present value
Features of the solution & others…
Basic evaluation can be done based on cost and benefits (popularly known as Build vs
Buy). How does it help the customer? This analysis helps in taking a decision to develop a
solution from scratch or buy a product from the market.
For example, a customer may decide to develop a Financial accounting system from
scratch or may decide to buy a product like SAP, Oracle E-Business suite or Tally.
PS: The actual development and implementation of the solution is done by technology
team and is not part of business analysis practice directly.
The third and last element of business analysis is about measuring the solution
effectiveness. This is done by planning and implementing the ways to measure “What was
supposed to be achieved as business goal?”.
For example, if the customer organization wishes to improve the revenue in a state by
USD 1 million, this is a rather straight forward measurement.
Similarly, we can ascertain the metrics (the parameters to measure) and capture the data
to compute the metrics, once the solution is implemented. The actual values of metrics vs the
expected value of the metrics indicates the success or failure of the solution. Corrective
measures can be taken to fix the problem.
In this chapter, we discussed the business analysis practice and its elements. Now We will
focus IT business analyst and their role and responsibilities:
Who is a business analyst? Who is an IT business analyst?
What does an IT business analyst do? What are the roles & responsibilities of a
business analyst?
What are the required skills of a business analyst?
Business Analysis Fundamentals 5
WHO IS A BUSINESS ANALYST?
In this chapter, we will discuss the role and responsibilities of an IT business
analyst.
The focus of this tutorial course is to discuss the Business Analyst role in the IT
industry.
A business analyst performs multiple tasks during the software development process. We can
list down the key responsibilities of a business analyst as below:
Functional Testing: Business analysts also conduct functional or system level testing, where
they check the business processes and scenarios before the system is handed over to the customer
for User acceptance testing (UAT). The customer team tests the software before accepting it for
their usage.
UAT Co-ordination: During the testing conducted by the customer stakeholders, the
business analyst co-ordinates with the technology team to get the defects fixed.
In the previous section, we discussed about the key responsibilities of a business analyst.
Which are the skills, which enable a business analyst to perform the responsibilities in an
efficient manner?
The key responsibilities of a business analyst can be discussed under the following
categories:
Technical skills
Soft Skills
Let’s first have a look at the technical skills for a business analyst.
UML modelling is one of the most popular modelling skills along with user story 3C
modelling, which should be learnt by business analysts.
The detailed requirements are captured in the system requirements specifications (SRS)
document. SRS is also known as FRD (Functional requirements document).
Managing changes also needs understanding of the Requirement traceability table (RTT) and
product backlogs.
Verification and Validation: One of the important business analysis skills is the verification
verification and validation skill. Business analysts not only perform functional testing on the
developed software, but also work with the customer stakeholders, to co-ordinate during the user
acceptance testing phase.
Business analysts also need to review the requirement specifications document and they
should understand the criteria and techniques for reviewing a requirements document.
For example, if you are working for a banking project, knowing about the banking industry,
its functions and processes will help you in understanding the requirements. well without missing
out the critical aspects. However, developing domain knowledge is a time-consuming process.
This will help you in understanding the basics of business analyst activities in a project.
For an in-depth understanding, you need to read a book on business analysis or attend a
course. This chapter will help you to understand the basics.
Every software application goes through a series of steps, before it is suitable for use.
These steps are popularly known as phases of software development methodology. In this
chapter, we are going to take a look at these phases. We will also discuss the approaches used
to execute these phases.
A Software development process comprise of all the phases, as described in this section.
The methodology is also referred to as SDLC (Software development lifecycle methodology).
The stakeholder requirements are analysed, structured and modelled (using various
modelling techniques like UML diagrams) to create requirement specifications document,
known as system requirement specifications document (SRS).
For example, if one of the requirements states that only authorized users can
the system, the design phase might involve specifying details comprising of:
A login screen design (if not finalized during the prototype phase)
A database table containing user ids and passwords
The solution is designed for each and every unit of the requirements before
system design phase.
Coding: In this phase, the development team writes the code for the system and
its modules. Based on the design document and program specification document, the
team carries out the coding.
Developers follow coding standards/best practices, when they write the code.
lead or senior programmer conducts technical reviews to enable programmer avoid
Technical or code reviews are important for defect prevention.
Developers are required to conduct self-testing before handing it over for the next
of testing.
Testing: Testing phase refers to the testing of the developed software. The
software application is tested at three levels. These levels are:
• Unit Testing
• Integration Testing and
• System Testing.
We use test cases to conduct these levels of testing. These test cases are prepared
functional testing professionals using the requirement specifications document (or
name is given to it), design document and program specifications document.
Integration and system testing are generally carried out by the functional testing team.
However, business analysts must participate in the system testing to ensure that right system
is delivered to the customer.
UAT & System Implementation: The customer conducts their own round of testing once
testing once the development team completes all the three levels of testing, as described in
the previous phase. The customer testing phase is known as user acceptance testing (UAT).
Business analyst helps the customer in conducting the UAT and co-ordinates with the
development team for defect fixing. Business analyst also trains the customer team on the
developed software for conducting UAT.
Once the UAT is completed successfully, the system is ready to go LIVE. Large systems
and business critical systems are put on dry or parallel runs to make sure that there are no
unforeseen errors, when the system goes LIVE.
Waterfall Methodology
One of the most popular and simple software development methodologies. As the
suggests, all the phases of waterfall are carried out in a sequential manner as shown
We have discussed about each of the phases in the previous chapter. Waterfall
methodology is the oldest software development methodology.
Key Features and advantages of using this methodology are given below:
Each of the phases have clearly defined entry and exit criteria, so it brings
discipline
This methodology is simple to understand and simple to implement
Every phase exits with a signed and approved document
However, there are certain drawbacks of this methodology, which has led to rapid
adoption of Agile and other methodologies:
Agile methodologies have proved to be better suited for the IT industry and that is
because:
In the next chapter, we will be discussing a case study to help you understand the
a business analyst in a software project and what happens in each phase of the
Business Goals/Needs
A large petroleum and LPG (Liquified petroleum Gas) marketing and distribution
company, GPG corporation is looking to streamline the process of accepting
new LPG connections from across the country.
The customer does not want to overload its local offices in each city to deal with
paperwork. This will put a lot of pressure on the staff and will impact the current
(booking of cylinder re-fills and delivery) adversely.
Business Requirements
These questions lead to more information and it’s business analyst’s responsibility to
analyse and structure it for better understanding. The last question will help you understand
the steps of the process as shown below:
This task of creating a visual model of the process is known as process modelling. Once
the process model is created, detailing of each step can be discussed. Let’s focus on the first
step of application submission.
What will be the data elements or information, which need to be captured for
an application?
How will the application look like?
Which of the data elements will be mandatory or text or number?
This prototype is shared with the stakeholders and an agreement is reached on the
design. The discussion then focusses on understanding each data element on the screen.
This is achieved by creating a logical data model for the application. A logical data
model is not a table but captures details about the data elements on the screen. A logical
data table is created as shown below for the LPG connection application:
This is a snapshot of the full table, which will have details for all the fields of screen.
Non-functional requirements
Assumptions and constraints
Acceptance Criteria
The requirements are then reviewed and run through the customer stakeholders for
approval (validation). During this phase, the primary actor is a business analyst and is
supported by other members.
Design Phase
Once the requirements are captured and finalized, these are handed over to the
technology team for designing the solution. During this phase, the business analysts are
expected to share the requirement details with the technology team.
During the design phase, the following tasks are carried out:
The technology platform is selected. In this case, the team decides to use .NET
platform and this application is going to be a web-based application.
The database system is selected to be Microsoft SQL Server
The table structures are finalized.
The database procedures are designed.
The architecture of the system is also decided. However, in this case, we don’t
need any special architectural consideration as it’s a tiny application.
Coding Phase
It is a very small application and a 2-member .net programming team was put in place to
develop the application. Each of the programmers developed the software and conducted
their own round of testing.
Testing Phase
Once the coding phase is over, the testing is carried out. The programmers test each
other’s code by using test cases. This is known as unit testing.
Since this is a very small application, there is only one level of testing after unit testing
i.e. a combined integration and system testing.
Business analyst tests the application from the end-to-end process perspective. In this,
he conducts the testing to ensure that the application for new LPG connection is submitted
and is then received by the distributor.
This is the last phase and, in this phase, GPG corporation stakeholders conduct the
testing. Once they are satisfied with the results, the details of the distributor are captured.
Conclusion
In this business analyst basics tutorial, we discussed about the concepts of business
analysis, the tasks of business analysis & the role of a business analyst. We also discussed the
software development process and the approaches and how does a business analyst
participate in it.
In the end, we presented a case study explaining the tasks carried out in each phase.
If you are a business analyst aspirant, this was a good starting point. The next step
would be follow the steps outlines in the book “How to become a business analyst?” or talk to
a training organization providing the certification training, if you have zeroed on to a
certification.
www.techcanvass.com
+91 22 40155 175
[email protected]