Professional Documents
Culture Documents
BA Knowledge Materials
BA Knowledge Materials
BA Knowledge Materials
by Diwakar Singh
About the Material
Business Analysis is a subject which provides concepts and insights into the development of the initial
framework for any project. It holds the key to guide key stakeholders of a project to perform business
modeling in a systematic manner. This material provides a brief overview of the concepts of business
analysis in an easy to understand manner.
Intended Audience
This material is meant for aspiring Business Analysts, and Project Owners or Business Owners,
Coordinators and Project team members who often work closely with Stakeholders of a Client. In
addition, it will also be useful for anyone who is involved in capturing, writing, analyzing, or
understanding requirements for Information Technology solutions, including Subject Matter Experts
(SME), Business Process Managers, and Business Process Users.
Pre-requisite
To understand this material, it is advisable to have a foundation level knowledge of business scenarios,
process and domain knowledge pertaining to a few industries.
2
Table of Contents
About the Material........................................................................................................................................ 2
Intended Audience ........................................................................................................................................ 2
Pre-requisite.................................................................................................................................................. 2
1. Business Analysis - Introduction ........................................................................................................... 5
What is Business Analysis?........................................................................................................................ 5
Who is a Business Analyst? ....................................................................................................................... 5
Why Business Analysis is Important?........................................................................................................ 5
Organizations employ business analysis for the following reasons: ........................................................ 5
Common Myths in Business Analysis ........................................................................................................ 5
Importance of Soft Skills in Business Analysis ........................................................................................ 12
Domain Challenges faced by Business Analyst – What and How to tackle this?.................................... 14
2. Business Analysis- Core Concepts ....................................................................................................... 15
Business Analysis Life Cycle .................................................................................................................... 15
Business Analysis Core Concept Model .................................................................................................. 17
3. SDLC Overview and Methodologies .................................................................................................... 20
SDLC – Overview ..................................................................................................................................... 20
Stages/Phases in SDLC ............................................................................................................................ 21
SDLC Models ........................................................................................................................................... 22
Sequential- Waterfall Model ............................................................................................................... 22
Iterative- RUP Model........................................................................................................................... 24
Agile- Scrum Model ............................................................................................................................. 25
4. Project Scope Definition and Modeling (BPMN, UML) ....................................................................... 30
Define Scope of Project – Inputs ......................................................................................................... 30
Define Scope of Project – Tools and Techniques ................................................................................ 32
Define Scope of Project – Outputs ...................................................................................................... 33
1. Business Process Modeling Notation (BPMN) .................................................................................... 34
2. Unified Modeling Language (UML) diagrams ................................................................................. 36
3. Flow chart technique ...................................................................................................................... 36
4. Data flow diagrams ......................................................................................................................... 37
5. Role activity diagrams ..................................................................................................................... 38
6. Role interaction diagrams ............................................................................................................... 38
3
7. Gantt charts .................................................................................................................................... 40
8. Integrated definition for function modeling ................................................................................... 40
9. Colored Petri nets ........................................................................................................................... 41
10. Object oriented methods .............................................................................................................. 41
5. Requirements Engineering ...................................................................................................................... 42
Business Requirements Initiation (Gathering Stage) .............................................................................. 42
Stakeholder Identification, Analysis and Mapping ................................................................................. 42
Classification of Requirements ............................................................................................................... 46
Apply Requirement Elicitation Techniques ............................................................................................. 47
Sort the Requirements ............................................................................................................................ 56
Prioritize the Requirements .................................................................................................................... 57
Requirements Verification and Validation .............................................................................................. 58
Requirements Documentation ............................................................................................................... 60
Business Requirement Document....................................................................................................... 60
Functional Requirement Document.................................................................................................... 61
BRD Vs SRS Vs FRD .............................................................................................................................. 68
Use-Case.............................................................................................................................................. 68
Requirement Traceability Matrix ........................................................................................................ 71
6. Contribution of BA in Projects ................................................................................................................ 72
Change Management Process ................................................................................................................ 72
Gap Analysis: As-IS and To-Be mapping .................................................................................................. 73
Business Strategic Planning Technique – SWOT, SOAR, PESTLE, MOST ................................................. 75
Root Cause Analysis ................................................................................................................................ 78
7. BA Tools................................................................................................................................................... 80
Prototyping - Draw.io .............................................................................................................................. 80
Agile Project management - JIRA ............................................................................................................ 81
Repository - Confluence.......................................................................................................................... 82
Database - MS SQL .................................................................................................................................. 84
4
1. Business Analysis - Introduction
Business analysis may also be performed to understand the current state of an organization or to serve
as a basis for the identification of business needs. In most cases, however, business analysis is
performed to define and validate solution that meets business needs, goals, or objectives.
In the initial phase of a project, when the requirements are being interpreted by the solution and design
teams, the role of a Business analyst is to review the solutions documents, work closely with the
solutions designers (IT team) and Project managers to ensure that requirements are clear.
In a typical large-size IT organization, especially in a development environment, you can find On-site as
well as offshore delivery teams having the above-mentioned roles. You can find a “Business Analyst”
who acts as a key person who has to link both the teams.
Myth 2: Business Analyst and Project Manager are one and the same
Myth 3: BAs are not required in the latter phases of the project
5
Myth 5: BAs are product specialists; they don't need to have people skills
Myth 6: We don't need a Business Analyst for this type of project or product
Fact 1: Business Analyst focuses on the problem space and could at best, facilitate or
recommend the solution(s)
Almost everything worth analyzing in this world can be looked at from the perspective of Problem-
Solution pair. The problem space comprises all the activities related to the problems. Business
Analysts must focus on this domain. BAs identify the problems, prioritize, specify and communicate to
the relevant stakeholders.
The Solution space consists of conceptualizing, brain-storming and generating ideas for the pro-
posed solution(s). It takes a different set of skills, aptitude and attitude from the team members
to create and execute the solutions. BA does not necessarily need to create solutions. However
they must be able to lactate and help support the team in the implementation of solution.
6
Myth 2: Business Analyst and Project Manager are one and the some
In every technology-driven project, there is certainly one role for sure and that is the Project Man-
ager. Often times, project managers also double up as business analyst, which is not a
problem, so long as the two are clearly demarcated as different roles. However, problems start to
emerge when the roles and responsibilities of a BA are equated to those of a project manager
or vice versa.
7
Fact 2: Project Manager is the master of the project, whereas Business Analystowns the
product roadmap
Project Manager is most-certainly the owner of the project, being the key decision-maker
aboutresources, timelines, removing constraints and hurdles to ensure smooth execution of the
project. Business Analyst, on the other hand, is responsible for the product in terms of defining
the features, functionality and manages the product roadmap. It can be looked at as the PM being
the owner and captain of the project, while BA could be considered as equivalent to the
Product Owner.
Myth 3: Business Analysts are not required in the later phases of the project
This is another popular misconception that you come across during the project kick-off and
review meetings and resource planning sessions. Business analysts traditionally were confined
tothe initial stages of the project execution. They were actively allocated for the initial set of
activities in the pre-project and initiation phases. The requirements phase, among all the phases of
the project or the product’s life cycle, remained to be the forte of BAs.
8
Fact 3: Business Analysts ore very much port of the entire life cycle of the project,albeit
the proportion of their involvement may vary across the phases
BAs' contribution to the project starts much earlier than that of other team members. They are engaged
early on so as to outline the vision, scope and roadmap for the product, process or business. Moreover
analysts are required even in the pre-project (also called as pre-sales) phase. They are involved at this
stage to help in the creation of proposals and tenders.
The contribution of business analyst goes well beyond the initial requirements phase. They sup- port the
team members during the design, development and implementation. Analysts create wireframes,
mockups and sketches to help present their ideas of the proposed solution. This goes well with the
current agile methodologies e.g., SCRUM, User Stories and Test Driven Development (TDDj. Thanks to
these practices, today, analysts are involved and engaged all through the life cycle of the
project/product development.
9
Fact 4: Business Analysts need not always be domain specialists, especially theIT Business
Analysts
With the onset of business system analysts, the core skill of analysts shifted from a mere business
domain expertise to the systems perspective. BAs emerged as professionals who have at their core,
strong analysis skills and not just domain expertise. Though it could be argued that
domain/functional knowledge helps augment the analysis skills, it is not a mandatory requirement.
Sometimes analysts do need to have the general and broad-based skills to address situations that
require “inch deep, mile wide" approach.
Myth 5: BAs are product specialists, they don't need to hove people skills
Nothing could be further from truth than this misplaced notion about the business analyst’s
expertise. This stems from the objections raised by people that analysts cannot be leaders or that
they cannot run businesses. While in fact, people skills are so much needed for the BAs that it is
almost like their second nature and perhaps the most important part of their work-flow.
Fact 5: A core skill of a Business analyst is to engage, interact, communicate, lead and
work with people at different levels
People-interaction and working alongside people could be said to be part of an analyst's DNA.
While working in teams, it is very much imperative that the analysts interact, engage and
communicate with the team members continuously. Within the team, the interaction level ranges
from a deep partnership to a consulting role with various roles such as architects, designers,
developers, testers and managers. Not just within the team but on a broader level too, analysts
have to interact with several other stakeholders. These include people who may have a direct
impact as well as those who have an indirect relationship with the project, product, process or
business in question. The level of engagement varies from merely updating through to sharing
reports and from moderating interviews to conducting workshops.
10
Myth 6: We don’t need a Business Analyst for this type of project or product
This is one of the off-quoted objections you come across when it comes to allocating resources to a
team. Whether it is in the outsourced project execution, an in-house project or development ofa
product, Business Analysts are often seen as mostly support role and are considered an over- head.
However, they are as valuable to the project asa developer, designer, architect, tester, manager or other
team member.
Fact 6: Analysts ore critical for the successful execution of any type of projects or products
Whether the project is a green-field, new product development or enhancing the existing product,
analysts play a key role in defining the roadmap. BAs contribute toa great extent in product
maintenance, re-engineering projects because most the changes are to do with customer/user-facing
features. Same is the case with process improvement and change man- agement initiatives, where BAs
study and understand the as-is and propose the improvements for to-be proposition.
11
Fact 7: Analysts ploy a key role in the strategic vision, product development, customer
engagement and user experience areas
BAs have strategic, pan-enterprise level perspective, as well as a product or process specific role. Also,
analysts offer significant help in engaging with customers, key stakeholders and users, involving
conducting interviews, studies, workshops. In the course of these investigations, analysts identify the
needs, problems and opportunities and propose recommended solutions. So BAs now draw and design
wireframes and mockups of the proposed solution, create models and prototypes.
12
Here is a good list of skills you need to acquire/hone over the years to be a better Business Analyst
professional:
3. Facilitation Skill – As a bridge between stakeholders, we need to have excellent facilitation skills
to ensure that communication is proper and all the requirements are articulated well and
explicitly.
4. Analytical thinking Skill – Get analytical and problem-solving skills brushed to analyze all the
scenarios well, come up with solutions, and ensure that there are no conflicts in the team and all
the members communicate well with each other.
5. Problem-solving Skill - A definite skill for all BA, as explained in the point above.
6. Decision-Making Skill – You have come up with multiple options for a particular problem using
your analytical skills; now, you need to weigh the options well and come up with a decision to
present to the steering committee; this is why you need this skill.
7. Ability to see the bigger picture – This is a very important skill for all BAs; focusing on the given
set of requirements and not seeing the bigger picture lot of times leads to a situation where the
product does not see the light of the day or gets abandoned. Hence this is one of the very
important skills to have; you need to have good business knowledge and knowledge of
technology/business advancements to see a bigger picture and keep it in mind while the
designing of the system is being carried out.
8. Ability to appreciate and empathize – See the points coming from all stakeholders and the basis
of all requirements and make a good judgment of the same keeping all in mind.
9. Ability to influence without authority – As BA’s there are numerous meetings we need to
spearhead/facilitate, this is where we need to be good to influence senior stakeholders and
decision-makers/sponsors of the project.
10. Good interpersonal skills – Above all skills, we need to have good interpersonal skills and a good
rapport with the team and all stakeholders to make the project successful.
Above all these skills will make you a better professional each day, these skills are something we learn
with each day and polish with each day in our professional lives.
13
Domain Challenges faced by Business Analyst – What and How to tackle this?
Q. Can a Business Analyst change a domain?
A. Well, there will be lot of challenges that you have to face. We have to understand that the role
demands analysis of business hence it becomes important to understand the business context (domain).
There are two ways to look at it:
1) If you are changing the domain within the same organization, the process becomes little easy
as you get that support and time for learning domain.
2) If you are changing the organization, the process becomes most difficult as most of the
organization demands prior experience in that particular domain. Now, this is the biggest
challenge that you will face.
A. Firstly, Luck! Yes you heard it right, the first thing that you need to have is luck. You have to be that
lucky enough where you are getting an opportunity to change your job and at the same time change
your domain.
Secondly, if you are not that lucky enough, then you will have to be confident enough and assure the
hiring manager that you can pick up any domain by giving the past example." Every experience person is
once a beginner". Read something about that domain, take inputs from someone who has worked in
that domain and convince the recruiter that you are a quick learner and can pick up domain knowledge
quickly.
A. Well, if you want to learn domain, you can follow below steps:
1. Domain learning is a vast thing and it cannot be done in a day, week or month. So, do some
smart work and identify which part of domain understanding is needed to drive that particular
project.
2. Ask more and more questions. ‘Business analyst should have the skill of asking questions’. You
will have an advantage since you are new to the project you can ask lot of questions to
understand that domain.
3. Do some self research and learn the new topics/terminologies that you come across. Try to
search the topics on internet and understand it.
14
4. Lastly speak to your team members, friends or experts and understand concepts if you are
not able to do it by self research.
To summarize, yes domain changing is difficult but not impossible. Keep learning and stay motivated.
The business Analysis Life Cycle includes comprises of the following processes:-
The business analyst is not just responsible for gathering the requirements but also understanding them
only then he can provide an appropriate solution. In order to understand the requirements, the BA has
to first understand the underlying business and the existing processes of the client. A BA has to analyze
the market very accurately for that business which means proper identification of the customers for
those products or services.
Also known as the business case, this process mainly focuses on penning down the goals and objectives
of the projects. This information can be gathered by interacting with the customers and end users who
have been previously associated with this business. Their needs and requirements are clearly
understood which helps in focusing on the goals and objectives of the projects.
Before moving on, the BA is responsible for defining the scope of the project. This involves
determination of the goals of the project, what all features are to be delivered, the deliverables, what all
tasks and people needed, the deadlines for each of the tasks, and finally the cost estimation has to be
done. All these scenarios have to be analyzed as part of defining the project.
This may be termed as the major role of a BA. A BA is needed to elicit the requirements accurately in
order to provide an optimum feasible solution. There are various elicitation techniques which are used
to obtain the 3C advantage. 3C stands for correct, complete and consistent gathering of requirements.
The various elicitation techniques are as follows :-
15
• Brainstorming
• Focus groups
• Document Analysis
• Reverse Engineering
• Observation
• Workshop
• JAD (Joint Application Development)
• Interview
• Prototyping
• Questionnaire (Survey)
Once these requirements have been clearly gathered from the clients, they are further organized and
verified. During this research, many more facts come up front. Once all the internal facts, whether
relevant or irrelevant related to a particular requirement come into light, we move on in observing the
remaining requirements. This process of digging up each and every requirement in depth is known as
analyzing the requirements.
BA’s job doesn’t end with just gathering and analyzing the requirements. Once that part is over, next
comes documenting these requirements and getting them approved. After carefully analyzing each and
every requirement, BA documents these requirements using various standards such as, CMMI, IEEE or
templates provided by the organization. Once the documents are ready, they are sent to the senior BAs
or the SMEs for verification. After proper screening of these documents, the leads approve these
documents.
Once the requirements have been understood, analyzed, documented and been approved, they have to
be communicated to the clients for the final verification. The client has to understand and give his
approval that the requirements gathered are correctly understood and documented. Once this is done,
only the BA can move ahead with the further processes.
In order to communicate with the stakeholders different approaches are used such as:
• Communication Plan
• Communication Model
• Effective communication
• Efficient communication
• Communication Method
• Communication types
16
8. Process Modeling
Just documentation is not sufficient for the technical team to be clear on every requirement. So the BA
has to communicate these requirements to the Project Manager by modeling these requirements. The
BA can create few UML (Unified Modeling Language) Diagrams, create few prototypes or come up with
a number of wireframes depicting each of these requirements. It is very easy for the technical lads to
see these models and can get a good knowledge of the requirements along with the proposed solution.
Once the models have been communicated to the technical team, they continue with their various
phases of designing, developing and testing. The BA, during these phases, doesn’t sit idle. In fact, he
contributes in each of these phases as well. For example, he verifies that all the requirements have been
considered during the design phase. During the development phase, if any change requests come up,
the BA has to handle those and communicate it to the technical team after proper analysis. During the
testing phase, the BA has to go for a complete testing of the application and once when he is sure that
the application meets all the requirements, he facilitates the User Acceptance Testing (UAT) for the
client.
17
Let’s review the six core concepts in detail:
2) Need: Need is a problem or opportunity to be addressed by the business analyst. Needs can
cause changes by motivating stakeholders to act. Changes can also cause needs by eroding or
enhancing the value delivered by existing solutions or creating the need for new solutions.
3) Solution: A specific way of satisfying one or more needs in a context. A solution satisfies a
need by resolving a problem faced by stakeholders or enabling stakeholders to take advantage
of an opportunity.
4) Stakeholder: A group or individual with a relationship to the change, the need, or the
solution. Stakeholders are grouped based on their relationship to the needs, changes, and
solutions.
18
Value can be tangible or intangible. Examples of tangible values are potential or realized returns,
gains, and improvements. Intangible value often has a significant motivational component, such
as a company's reputation or employee morale.
6) Context: The circumstances that influence, are influenced by, and provide understanding of
the change. A change always occurs within an environment. A context is a wide-ranging term
that can include everything from an organization’s culture, mission, and demographics to
government policies, competitors, products and sales. In order to successfully implement the
change, the business analyst must carefully define and analyze the context within which the
change is being implemented.
Let’s consider an example to illustrate in more detail. The wave of digitization is transforming
many traditional industries. A traditional retail business that operated brick and mortar stores
for years must now compete with e-commerce companies that provide the same goods to
customers but with additional benefits such as convenience (shop from home), wide range of
products and attractive discounts (due to the lower cost business models of e-commerce
players). In order to respond to this change in market dynamics, a business analysis task can be
performed at a traditional brick and mortar retail store. Here is how the six core concepts may
be analyzed in this example:
1) Change: Provide e-commerce solutions to customers who prefer shopping online. This will
require completely new business processes and functions to fulfill online orders.
2) Need: Rising popularity and market share of e-commerce competitors who directly compete
in the marketplace with the company, to attract a growing share of customers, transactions and
volume of goods sold.
3) Solution: Depending upon the company’s organizational structure, capabilities and time-
sensitive nature of the change, the probable (but not exhaustive) list of solutions could be to
implement an IT project that enables the organization to set up its own e-commerce store,
partner with existing e-commerce players to use their infrastructure for order fulfillment or
acquire an existing e-commerce player and merge it with the company’s existing operations.
4) Stakeholder: The stakeholders, in this case, are almost from all functional areas – sales,
marketing, IT, HR and Operations – within the organization.
5) Value: The tangible value, in this case, can be increase in sales and increase (or maintaining)
the company’s market share. The intangible value can include transforming the organization to a
digital future, introduction of new talent and ideas.
6) Context: The context for this proposed change can be the growing market share and
popularity of e-commerce players, changing demographic profile of the customers,
19
improvements in the digital infrastructure in the country, entry of foreign players in the market
and easier government regulations towards setting up of e-commerce companies.
SDLC – Overview
Software Development Life Cycle (SDLC) is a process used by the software industry to design, develop
and test high quality software. The SDLC aims to produce high-quality software that meets or exceeds
customer expectations, reaches completion within times and cost estimates.
The following figure is a graphical representation of the various stages of a typical SDLC.
20
Stages/Phases in SDLC
Stage 1: Planning and Requirement Analysis
Requirement analysis is the most important and fundamental stage in SDLC. It is performed by the
senior members of the team with inputs from the customer, the sales department, market surveys and
domain experts in the industry. This information is then used to plan the basic project approach and to
conduct product feasibility study in the economical, operational and technical areas.
Planning for the quality assurance requirements and identification of the risks associated with the
project is also done in the planning stage. The outcome of the technical feasibility study is to define the
various technical approaches that can be followed to implement the project successfully with minimum
risks.
Once the requirement analysis is done the next step is to clearly define and document the product
requirements and get them approved from the customer or the market analysts. This is done through
an SRS (Software Requirement Specification) document which consists of all the product requirements
to be designed and developed during the project life cycle.
SRS is the reference for product architects to come out with the best architecture for the product to be
developed. Based on the requirements specified in SRS, usually more than one design approach for the
product architecture is proposed and documented in a DDS - Design Document Specification.
This DDS is reviewed by all the important stakeholders and based on various parameters as risk
assessment, product robustness, design modularity, budget and time constraints, the best design
approach is selected for the product.
A design approach clearly defines all the architectural modules of the product along with its
communication and data flow representation with the external and third party modules (if any). The
internal design of all the modules of the proposed architecture should be clearly defined with the
minutest of the details in DDS.
In this stage of SDLC the actual development starts and the product is built. The programming code is
generated as per DDS during this stage. If the design is performed in a detailed and organized manner,
code generation can be accomplished without much hassle.
Developers must follow the coding guidelines defined by their organization and programming tools like
compilers, interpreters, debuggers, etc. are used to generate the code. Different high level programming
languages such as C, C++, Pascal, Java and PHP are used for coding. The programming language is chosen
with respect to the type of software being developed.
21
Stage 5: Testing the Product
This stage is usually a subset of all the stages as in the modern SDLC models, the testing activities are
mostly involved in all the stages of SDLC. However, this stage refers to the testing only stage of the
product where product defects are reported, tracked, fixed and retested, until the product reaches the
quality standards defined in the SRS.
Once the product is tested and ready to be deployed it is released formally in the appropriate market.
Sometimes product deployment happens in stages as per the business strategy of that organization. The
product may first be released in a limited segment and tested in the real business environment (UAT-
User acceptance testing).
Then based on the feedback, the product may be released as it is or with suggested enhancements in
the targeting market segment. After the product is released in the market, its maintenance is done for
the existing customer base.
SDLC Models
There are various software development life cycle models defined and designed which are followed
during the software development process. These models are also referred as Software Development
Process Models". Each process model follows a Series of steps unique to its type to ensure success in the
process of software development.
Following are the most important and popular SDLC models followed in the industry −
22
Stages of Waterfall Model Resources Artifacts
Arch, DB Arch
Developers Application
23
Iterative- RUP Model
The Rational Unified Process (RUP) is an iterative software development process framework created by
the Rational Software Corporation, which was acquired by IBM in February 2003.
RUP is based on a set of building blocks, or content elements, describing what is to be produced; the
necessary skills require d and the step-by-step explanation describing how specific development goals
are to be achieved. The main building blocks, or content elements, are the following:
Roles {who) - A Role defines a set of related skills, competencies and responsibilities.
Work Products {what) - A Work Product represents something resulting from a task, including all the
documents and models produced while working through the process. Tasks (how a Task describes a unit
of work assigned to a Role that provides a meaningful result. Within each iteration, the tasks are
categorized into nine disciplines:
24
Four Project Life Cycle Phases
Inception: agreement among the team and customer as to what will be built
Elaboration: agreement within the team as to the architecture and design needed to deliver the agreed
system behavior
• No documentation required.
• Customer retention - since there is no documentation. The code in itself forms as
documentation
• Not support scalability and extendibility
• SDLC life cycle cut down by employing seasoned DEVELOPERS
25
Four main Values
1. Satisfy the customer through early and continuous delivery of valuable soft ware.
2. Welcome changing requirement s, even late in development Agile processes harness change for
the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of months, with a
preference to the shorter timescale.
4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support they need
and trust them to get the job done.
6. The most efficient and effective method of conveying information to and within a
development team is face-to-face conversation.
8. Agile processes promote sustainable development. The sponsors, developers, and users should
be able to maintain a constant pace indefinitely.
10. Simplicity-the art of maximizing the amount of work not done-is essential.
11. The best architectures, requirements, and designs emerge from self-organizing teams.
12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts
its behavior accordingly.
Scrum Framework
SCRUM can be implemented either at the beginning of the project or when you sense that project is
falling behind schedule. This model exercises full Admin Power.
26
Scrum Team: Project resources are grouped as Scrum teams which comprises of BAs, Developers, and
Testers. Each Team size will on average be 7-8.
Product Owner: He will decide what needs to be in the product and will be responsible for how the
product has to be. He will regularly interact with customers and BAs. This role may be played by BA or
any person who worked for end users for a long time or customer himself.
Scrum Master: He will monitor the performance of the team within the sprint. Team will raise all their
issues to scrum master and he will run to look for answers. This role can be played by any person in
team normally BA's plays this role.
Product burn-down: It shows how much work was left to do at the beginning of each sprint.
Sprint: This is the period that team decides to deliver their objective. Normally a sprint period will be for
2 weeks but may extend to 4 weeks.
Sprint Events/Meetings:
Sprint Planning Meeting -This happens at the beginning of each sprint and team decides on what they
will be delivering in the sprint.
Sprint Grooming Meeting- This happens at the beginning of each sprint to demonstrate Sprint ready
User stories to the development team based on the priority defined.
Daily Scrum Meeting - This happens each day where team will just answer 3 questions:
Sprint Review Meeting - This happens at the end of the sprint where team will demo the completed
stories to product owner and get it cleared.
Sprint Retrospective Meeting - This happens at the end of the sprint where team will answer these 3
questions:
27
Burn down chart: A burn down chart is a graphical view of the remaining work left versus the time in an
iteration. A project backlog or hours can be expressed on the vertical axis, while time is indicated on the
horizontal axis. A burn down chart is often used to determine when work will be completed on a project
or iteration.
Epic: An epic is a set of related user stories. They are also considered a "really big user story."
Iteration: Iteration is an iterative development concept that establishes a short time frame to deliver a
set of soft ware features or user stories. Iteration includes typical waterfall activities such as analysis,
design, development, and testing, yet they are time boxed within a one to four-week window. At the
end of iteration, the progress is reviewed with the business customer, and recommended changes can
be incorporated into future iterations.
Planning Poker: Planning Poker is an estimation game used to estimate individual user stories as a team
activity. The team gathers and reviews user stories one at a time. As stories are presented, the team
discusses the user story and provides an estimate of the work from their own deck of cards. All
estimates are presented and discussed until the team arrives at a consensus.
Release: A release is a set of working software delivered to the business customer resulting from a set of
iterations. During release planning, teams will review a product backlog to organize user stories into the
specific releases and iterations that delivers functional product to the business customer.
Scrum: Scrum is an iterative development methodology used to manage software projects. In scrum-
based projects, there isn't a specific project manager directing project team tasks; the team is self-
directed, with co- located team members relying on communication over documentation for effective
project delivery.
Sprint: A sprint is a scrum-based agile methodology concept that is similar to iteration. A sprint is time
boxed to deliver a specific set of user stories and produce working features within a set time period.
During sprint planning, the business customer or product owner specifies the user story priority, and the
development team commits to the scope for a given sprint. During a sprint, user stories can be removed
from the sprint scope, but new stories cannot be added; this allows project teams to focus on the goals
of the sprint and deliver rapidly.
Story points: A story point is a relative estimation method used to determine the size of user stories so
teams can determine how much work can be done during iteration. Story points can be expressed in a
simple sequence, t- shirt sizes, or a relative number. By adding up the number of user stories and
associated story points, the project team can establish its velocity for future iteration planning.
28
BA's Role in Agile Scrum
To Start with, once a project is kicked off, BA does the requirement planning, then conducts various
requirements gathering sessions and analyses the requirement.
Finally, the requirement is listed as 'FEATURE LIST'. This Feature list is drafted by BA and discussed with
Product Owner. This feature list will have all enhancements and existing features (If it is a migration
project).
From the Feature List, BA identifies the Epic and breaks them as Themes and then to User Stories.
Acceptance Criteria: - This area will have mandatory information that are needed in this story"
Then BA briefs the story to development team and regularly supports the team for development.
BA also does the Integration Testing and System Testing to ensure the system performs as desired
Waterfall Vs Agile
29
4. Project Scope Definition and Modeling (BPMN, UML)
Define Scope is the process of developing a detailed description of the project and product. The key
benefit of this process is that it describes the product, service, or result boundaries by defining which of
the requirements collected will be included in and excluded from the project scope. The inputs, tools
and techniques, and outputs of this process are depicted below in the data flow diagram of the process.
1. Project Charter
2. The Project Management Plan
3. Project Documents
30
4. Enterprise Environmental Factors
5. Organizational Process Assets
1. Project Charter
The project charter is a document that provides the high-level project description and product
characteristics. It also enlists all the project approval requirements. If a project charter is not being used
to its fullest in any organization, then comparable information needs to be developed and used as a
basis for the detailed project scope statement. In situations where the organizations do not produce a
formal project charter for setting out common goals, rules and regulations they will usually perform an
informal analysis to identify the content necessary for further scope planning.
Both Project Management and scope management plans have the same characteristics but whereas
the Project Management plan documents how the project scope will be defined, validated, and
controlled.
3. Project Documents
Examples of project documents that can be listed as inputs for defining scope are as follows;
a. Assumption Log
The role of the assumption log is to identify the assumptions and constraints about the project, product,
stakeholders, environment, and other factors that can influence the project and the product scope.
b. Requirements Documentation
The process of identifying the list of requirements those are to be incorporated into the project scope.
c. Risk Register
The risk register mainly contains response strategies that may affect the project scope by reducing the
project and the product scope to avoid or mitigate a risk that is to occur in the project.
The factors which can influence the Define Scope process include:
a. Organization’s Culture
b. Infrastructure
c. Personnel Administration
d. Marketplace Conditions
31
5. Organizational Process Assets
a. Expert Judgment
b. Data Analysis
c. Decision Making
d. Interpersonal & Team Skills
e. Product Analysis
a. Expert Judgment
With regards to the technique of expert judgment, one has always to consult a group or an individual
who has exceptional knowledge in dealing with similar projects.
b. Data Analysis
The best example of a data analysis technique that can be used in this process is alternatives analysis.
This alternatives analysis helps in evaluating ways to meet the requirements and objectives that are
identified in the project charter.
c. Decision Making
Multi-criteria decision analysis is the best example of this particular process. Under this technique, a
decision matrix is used to provide a systematic analytical approach for establishing necessities like
requirements, schedules, budget, and resources to clarify the project and product scope further.
An example of interpersonal and team skills is the facilitation process. This process is mainly used in
workshops and sessions happening with key stakeholders who are always high on expectations. The
ultimate goal of this process is to reach a cross-functional and shared understanding of the project
deliverables.
e. Product Analysis
Product analysis is used to define the products and services related to a particular project. The process
includes asking questions about a product or service and generating answers to describe the use,
characteristics, and other relevant aspects of what is going to be delivered.
32
Define Scope of Project – Outputs
The following are included as the outputs of the defined scope process:
A project scope statement is a detailed description of the project scope, which includes significant
deliverables, assumptions, and constraints. It also documents the project scope and the product scope
and describes the project’s deliverables and the work required to deliver them. Based on the level and
degree of detail the project scope statement defines the work that will be performed, and the work that
is minimized can help determine how well the Project Management team can control the overall project
scope.
1. Assumption Log: The role of the assumption log at this stage is to update the log with additional
assumptions or constraints which were identified during the project process.
2. Stakeholder Register: The documentation consists of all of the stakeholder’s requirements that
are to be met and also registers the important deliverables that are in the pipeline of the project
manager.
33
3. Requirements Documentation: A method that is used to record the requirements of a particular
project. This documentation will keep all the deliverables that are met and the other
deliverables that are to be accomplished by the project manager.
4. Requirements Traceability Matrix: A method that is used to compare the project’s scope,
requirements, and deliverables are all the same when they are compared with the project’s
baseline that was created during the Project Management plan.
The defined scope process takes the high-level product descriptions, assumptions, and constraints,
which were documented in the developed project charter process during the initiating process group,
and develops from them a more detailed description of the scope in the project scope statement. The
project scope may not be entirely defined during the initial stage of determining the scope.
• Flow objects. Shows the flow of the process and are represented as follows:
• Connecting objects. Used to show how tasks are connected, and in what sequence they occur
• Swim lanes. These make provision for sub processes that share responsibilities and how they
interact. The swim lanes are the people or departments that the sub process impacts on
34
• Artifacts. Used if you have additional information that isn’t a sequence flow or message flow,
but that will further explain the process
o Dotted lines. These point to the flow object that the extra information expands on
o Squares outlined with dots and dashes. These group related elements in the diagram
35
2. Unified Modeling Language (UML) diagrams
Unified modeling language (UML) is a more modern approach to modeling and documenting processes.
UML was initially developed by software developers, but has been successfully used in business process
modeling, with a more object-oriented approach to its 14 UML diagram types.
36
4. Data flow diagrams
Data flow diagrams (DFDs) show how data enters a system from external sources, how data moves
internally within the system, and how the data is stored. DFD symbols vary slightly, but are mostly based
on the same principles:
• Squares. These show external entities, which are either the source of data, or the
destination
• Rounded rectangles. These represent processes that receive data as input, interact with it,
and then produce an output
• Arrows. These show the flow of data, either as electronic data or physical items
• Open-ended rectangles. This represents data stores, and include electronic stores like
databases or XML files, as well as physical stores, such as or filing cabinets or stacks of paper
37
5. Role activity diagrams
Role activity diagrams (RADs) are used to map out the intangible roles or ideas of behavior that are
desired within the company. These can often be functions within the business, systems in IT, or
customer and supplier roles. RADs are easy to read and understand, and often provide a different
perspective on a process, which helps support communication.
• Sequence diagrams. A sequence diagram shows the interaction between objects in the
sequence in which they take place. Sequence diagrams describe how the objects function within
a system, and in what order, and are often used to document and understand what is required
for new and existing systems
38
• Collaboration diagram- Collaboration diagrams are used to define and clarify the roles of the
objects that carry out a certain flow of events in a visual format, and serve as the main source of
information when determining class responsibilities and interfaces
39
7. Gantt charts
In the late 19th century, Gantt charts were the gold standard, and are often the go-to business process
model for companies preparing for projects with distinct timelines, or that have time-sensitive processes
that need to be captured and tracked. Gantt charts make it easy for people involved in different parts of
a process to see when they are meant to start work, and by when each task should be complete, and to
check whether all the subprocesses are on schedule.
40
9. Colored Petri nets
When a system has numerous processes that interact and synchronize with each other, then colored
Petri nets are ideal. This modeling technique is used to design, specify, simulate and verify systems.
Petri nets are unique in that they can represent both a state – such as passive, unsent, or waiting – and
an action – such as send, receive, or transmit – in the same diagram. Colored nets use colors to
differentiate their symbols, and use a formal, mathematical representation with well-defined syntax and
semantics.
41
Which business process modeling technique will you select for your business? Find the one that will
ensure those involved in the system or process carry out their tasks in a consistent and efficient way,
producing a predictable, measurable outcome.
5. Requirements Engineering
42
What is Stakeholder Mapping?
Stakeholder Mapping is an effective process of finding the key stakeholders related to the project. It
helps to learn about the stakeholders and identify all the individuals interested in the project outcome.
Once all the stakeholders are identified, they can be mapped and categorized depending on different
interests and engagement levels.
Stakeholders Categorization
Stakeholders are categorized into two categories
Within the organization: Employees and Management Outside the organization: Government & Trade Association
Step 1) Identify your stakeholders: Your boss, your team, senior executives, prospective customers, your
family, etc.
Step 2) Assess how those stakeholders could be impacted or have an effect on the organization
Step 4) Identify areas of conflicts (organization vs. stakeholder, stakeholder vs. stakeholder)
43
Step 5) Prioritize, reconcile and balance stakeholders
Step 6) Align significant stakeholder needs with organizations strategies and actions
Next in this example of stakeholder mapping, let’s learn about things to take care while dealing with
stakeholders
• Both from your organization and client organization who will work
with you to implement the project?
44
Different attribute check for
Question to ask your stakeholders
stakeholder
• Interest • What direct benefit do stakeholders expect to get from the project?
• Impact • How much impact stakeholder could have on the project and does this
going to affect the success of the project
Also, you need to figure out when stakeholders will become involved in the following-
• Project Vision
• Project Scope Definition
• Business Process Analysis
• Needs Elicitation
• Requirement Validation
• Design reviews
• User Acceptance Testing
You can create a “Participation Matrix Table” for the stakeholders as given in the below stakeholder
map example:
Needs Assessment
Planning
Implement
45
Participation Type Inform Consult Partner Control
Classification of Requirements
What is Requirement?
A requirement is basically the need of the Client. This Need or Requirement will transform into a
Solution while taking various shapes and forms as it progresses from each stage of SDLC. Requirements
serve as the foundation of systems or system components. A requirement can be thought of as
something that is demanded or obligatory; a property that is essential for the system to perform its
functions. Requirements vary in intent and in kinds of properties. They can be functions, constraints, or
other elements that must be present to meet the needs of the intended stakeholders. Requirements can
be described as a condition or capability a customer needs t o solve a problem or achieve an objective.
For clarification purposes, a descriptor should always precede requirements; for example, business
requirements, user requirements, functional requirements.
Types of Requirements
1. Business Requirements
2. Stakeholder Requirements
3. Solution Requirements
a. Functional Requirements
b. Non-functional Requirements
4. Transition Requirements
Business Requirements are higher-level statements of the goals, objectives, or needs of the enterprise.
They describe the reasons why a project has been initiated, the objectives that the project will achieve,
and the metrics that will be used to measure its success. Business requirements describe needs of the
organization as a whole, and not groups or stakeholders within it. They are developed and defined
through enterprise analysis.
46
Solution Requirements describe the characteristics of a solution that meet business requirements and
stakeholder requirements. They are developed and defined through requirements analysis. They are
frequently divided into sub-categories, particularly when the requirements describe a soft ware
solution:
Functional Requirements describe the behavior and information that the solution will manage.
They describe capabilities the system will be able to perform in terms of behaviors or
operations-specific information technology application actions or responses.
Non-functional Requirements capture conditions that do not directly relate to the behavior or
functionality of the solution, but rather describe environmental conditions under which the
solution must remain effective or qualities that the systems must have. They are also known as
quality or supplementary requirements. These can include requirements related to capacity,
speed, security, availability and the information architecture and presentation of the user
interface.
Transition Requirements describe capabilities that the solution must have in order to facilitate
transition from the current state of the enterprise to a desired future state, but that will not be needed
once that transition is complete. They are differentiated from other requirements types because they
are always temporary in nature and because they cannot be developed until both an existing and new
solution are defined. They typically cover data conversion from existing systems, skill gaps that must be
addressed, and other related changes to reach the desired future state. They are developed and defined
through solution assessment and validation.
Requirement elicitation can be done by communicating with stakeholders directly or by doing some
research, experiments. The activities can be planned, unplanned, or both.
47
• Planned activities include workshops, experiments.
• Unplanned activities happen randomly. Prior notice is not required for such activities. For
example, you directly go to the client site and start discussing the requirements however
there was no specific agenda published in advance.
• Prepare for Elicitation: The purpose here is to understand the elicitation activity scope,
select the right techniques, and plan for appropriate resources.
• Conduct Elicitation: The purpose here is to explore and identify information related to
change.
• Confirm Elicitation Results: In this step, the information gathered in the elicitation session is
checked for accuracy.
We hope, you have got an idea about requirement elicitation by now. Let’s move on to the
requirements elicitation techniques.
There are several techniques available for elicitation. However, the commonly used techniques are
explained below:
#2) Brainstorming
This technique is used to generate new ideas and find a solution for a specific issue. The members
included for brainstorming can be domain experts, subject matter experts. Multiple ideas and
information give you a repository of knowledge and you can choose from different ideas.
This session is generally conducted around the table discussion. All participants should be given an equal
amount of time to express their ideas.
48
There are some basic rules for this technique which should be followed to make it a success:
Benefits:
Drawbacks:
49
#3) Interview
This is the most common technique used for requirement elicitation. Interview techniques should be
used for building strong relationships between business analysts and stakeholders. In this technique, the
interviewer directs the question to stakeholders to obtain information. One to one interview is the most
commonly used technique.
If the interviewer has a predefined set of questions then it’s called a structured interview.
If the interviewer is not having any particular format or any specific questions then it’s called
an unstructured interview.
For an effective interview, you can consider the 5 Why technique. When you get an answer to all your
Whys then you are done with your interview process. Open-ended questions are used to provide
detailed information. In this interviewee cannot say Yes or No only.
Closed questions can be answered in Yes or No form and also for areas used to get confirmation on
answers.
Basic Rules:
50
• The interviewer should organize the information and confirm the results with the
interviewees as soon as possible after the interview.
Benefits:
Drawbacks:
Document analysis includes reviewing the business plans, technical documents, problem reports,
existing requirement documents, etc. This is useful when the plan is to update an existing system. This
technique is useful for migration projects.
This technique is important in identifying the gaps in the system i.e. to compare the AS-IS process with
the TO-BE process. This analysis also helps when the person who has prepared the existing
documentation is no longer present in the system.
51
Benefits:
Drawbacks:
The moderator should work with business analysts to analyze the results and provide findings to the
stakeholders.
If a product is under development and the discussion is required on that product then the result will be
to update the existing requirement or you might get new requirements. If a product is ready to ship
then the discussion will be on releasing the product.
52
A Focus group is not an interview session conducted as a group; rather it is a discussion during which
feedback is collected on a specific subject. The session results are usually analyzed and reported. A focus
group typically consists of 6 to 12 members. If you want more participants then create more than one
focus group.
Benefits:
• You can get information in a single session rather than conducting one to one interview.
• Active discussion with the participants creates a healthy environment.
• One can learn from other’s experiences.
Drawbacks:
• It might be difficult to gather the group on the same date and time.
• If you are doing this using the online method then the participant’s interaction will be
limited.
• A Skilled Moderator is required to manage focus group discussions.
Benefits:
Drawbacks:
53
• The analysis is difficult if internal components are not available.
• It cannot be used as a standalone elicitation activity.
The plan for observation ensures that all stakeholders are aware of the purpose of the observation
session, they agree on the expected outcomes, and that the session meets their expectations. You need
to inform the participants that their performance is not judged.
During the session, the observer should record all the activities and the time taken to perform the work
by others so that he/she can simulate the same. After the session, the BA will review the results and will
follow up with the participants. Observation can be either active or passive.
Active observation is to ask questions and try to attempt the work that other persons are doing.
Passive observation is silent observation i.e. you sit with others and just observe how they are doing
their work without interpreting them.
Benefits:
Drawbacks:
#8) Prototyping
Prototyping is used to identify missing or unspecified requirements. In this technique, frequent demos
are given to the client by creating the prototypes so that client can get an idea of how the product will
look like. Prototypes can be used to create a mock-up of sites, and describe the process using diagrams.
Benefits:
Drawbacks:
• If the system or process is highly complex, the prototyping process may become time-
consuming.
54
• Stakeholders may focus on the design specifications of the solution rather than the
requirements that any solution must address.
• Formal Workshops: These workshops are highly structured and are usually conducted with the
selected group of stakeholders. The main focus of this workshop is to define, create, refine, and
reach closure on business requirements.
• Business Process Improvement Workshops: These are less formal as compared to the above
one. Here, existing business processes are analyzed and process improvements are identified.
Benefits:
• Documentation is completed within hours and is provided quickly back to participants for
review.
• You can get on the spot confirmation on requirements.
• Successfully gathered requirements from a large group in a short period.
• Consensus can be achieved as issues and questions are asked in the presence of all the
stakeholders.
Drawbacks:
#10) Survey/Questionnaire
For Survey/Questionnaire, a set of questions is given to stakeholders to quantify their thoughts. After
collecting the responses from stakeholders, data is analyzed to identify the area of interest of
stakeholders.
Questions should be based on high priority risks. Questions should be direct and unambiguous. Once the
survey is ready, notify the participants and remind them to participate.
• Open-Ended: Respondent is given the freedom to provide answers in their own words rather
than selecting from predefined responses. This is useful but at the same time, this is time-
consuming as interpreting the responses is difficult.
55
• Close Ended: It includes a predefined set of answers for all the questions and the respondent
has to choose from those answers. Questions can be multiple choices or can be ranked from not
important to very important.
Benefits:
Drawback:
Amongst the all above techniques, the top five techniques that are commonly used for elicitation are
shown in the below image.
56
Key Tasks are
• Benefit – an advantage that the business gets as a result of the required implementation.
• Penalty – a consequence of not implementing a requirement.
• Cost – effort and resources that are required to implement a requirement
• Risk – a probability that the requirement might not deliver the expected value.
• Dependencies – a relationship between requirements, for example when requirement will
require the completion of another requirement for its implementation.
• Time sensitivity – expiry date, urgency.
• Stability – the likelihood of the requirement remaining static.
• Policy Compliance – requirements that must be implemented to meet the regulatory
requirements.
MoSCoW
MoSCoW method works better than the numeric rating system as it is much easier for the stakeholders
to rate the requirements as Must, Should, Could or Would.
MUST – mandatory
SHOULD – of high priority
COULD – preferred but not necessary
WOULD – can be postponed and suggested for future execution
Voting
This is the simplest way to prioritize the requirements. When there are too many requirements that
need to be categorized into different categories with inputs from different stakeholders, voting is one of
the best ways to sort out the prioritization of requirements. Let’s say if 10 features are under discussion,
stakeholders have 10 points and they need to spread them across these features. For example, least
important= 1, most important= 10.
57
accordingly. You then continue in this way until the very last requirement is properly sorted. The result
is a list of requirements that are ranked.
Let’s look at the example of how the software requirements prioritization process may look
like:
1. First of all what you do is creating a list of all the requirements, features, or use cases that you wish to
prioritize in a spreadsheet. If certain features are logically linked, include only the driving feature in the
analysis.
2. The second step is estimating the relative benefit that each feature provides to the customer, the
business on a scale from 1 to 9, with 1 indicating very little benefit and 9 being the maximum possible
benefit.
3. The third step is estimating the relative penalty the customer or business would suffer if the feature is
not included. Again, use a scale from 1 to 9, where 1 means essentially no penalty and 9 indicates a very
serious downside.
4. Then goes the total value – it is the sum of the relative benefit and penalty. By default, benefit and
penalty are weighted equally.
5. What is next? Estimation of the relative cost of implementing each feature, again on a scale ranging
from a low of 1 to a high of 9.
6. Developers estimate the relative degree of technical or other risk associated with each feature on a
scale from 1 to 9.
7. Once you enter the estimates into the spreadsheet, it calculates a priority number for each feature
and gives you the results taking into account all the inputs.
8. Sort the list of features in descending order by calculated priority. The features at the top of the list
have the most favorable balance of value, cost, and risk, and thus should have higher implementation
priority.
58
• Verification: It is a process to check whether the software meets the specified requirements that are
written during elicitation phase or not. This is a process of confirming that the designed and built
product fully meets the documented requirements.
• Validation: It is a process to check whether the specifications written during the elicitation phase
captures all the user’s needs. During validation phase developers use different set of tasks that ensures
that the software built is traceable to user’s requirements.
There are several techniques which are used individually or with other techniques to check the system,
which are:
1. Test case generation: The requirements mentioned in the SRS document should be testable. If it is
not testable then that generally means that the test is difficult or impossible to design. It is believed that
if the test is difficult to design then it means that it will be difficult to practically implement the
requirements to create the system and thus the requirements should be reconsidered.
2. Prototyping: In this validation technique, a basic working model (prototype) of the system is
presented before the end-user, they test and experiment with the presented model to check if it meets
their specified requirements. This technique is generally used to take feedback from the user.
3. Requirements reviews: In this approach, a group of people from both organization side and user side
carefully reviews the SRS. They review the document to check for any errors and ambiguity.
4. Automated consistency analysis: First, the requirement is structured in formal notation then a tool
like CASE is used to check for any in-consistency or errors. For the identified inconsistencies and errors
corrective actions are taken. In this approach, automated detection tool is used to search for type
errors, missing cases, error in requirement specification, etc.
5. Walk-through: This is not a formally defined procedure. The approach follows few steps, they are:
In conclusion, requirements validation ensures that the documented requirements gathered during
elicitation phase correctly captures the customer’s needs and requirements verification ensures that the
developed software meets those specifications or requirements. The combination of these two is called
V&V generally means Validation and Verification which is used to check everything from documented
user’s requirements to developed software.
59
Requirements Documentation
Business Requirement Document
A business analyst who has a thorough understanding of the business processes drafts
business/functional requirement document. The business requirement document is drafted for a project
to ensure the implementation of all the requirements to achieve business objectives.
The most critical component of a business requirement document is the scope of the project along with
the restrictions and constraints. The scope comprises of three key things:
1- A summary statement
The executive summary is the outline of the requirements of the project. The best time to formulate a
summary statement is once the BRD is written completely.
2- Project objectives
The project objectives should be written in a SMART format which implicates they must be specific,
measurable, attainable, realistic and time-bound.
3- Needs statement
The needs statement outlines why the project is needed for the business and how the project will be
able to meet the needs.
4- Project scope
The project scope outlines what to be included and what should not be included.
5- Financial statements
60
The financial statements indicate the impact of the project on the company’s balance sheet and revenue
over the specific period of time. This also holds the information on the funding of the project and how it
would be done.
6- Functional requirements
This section outlines in a detailed manner the functional requirements and corresponding features
including diagrams, charts, and timelines.
7- Personal needs
This section covers the human resources aspect of the project. Who needs to be hired and when the
hiring needs to be done. It also covers the cost of the resources.
Each phase of the project is covered in detail in this section. This helps to ensure that all stakeholders
are aware of what is required and when it will be required.
9- Assumptions
The assumptions outline anticipated events that would occur during the course of the project.
This section holds a detailed list of all the costs involved in the project along with the cost-benefit
analysis. The savings from the project are also listed here.
A functional requirement will describe a particular behavior of function of the system when certain
conditions are met, for example: “Send email when a new customer signs up” or “Open a new account”.
A functional requirement for an everyday object like a cup would be: “ability to contain tea or coffee
without leaking”.
1. INTRODUCTION
[Provide an overview of the system and some additional information to place the system in context.]
1.1 Purpose
[Provide an overall description of the FRD, its purpose. Reference the system name and identifying
information about the system to be implemented.]
61
1.2 Scope
[Discuss the scope of the document and how it accomplishes its purpose.]
1.3 Background
[Describe the organization and its overall responsibilities. Describe who is producing the document and
why.]
1.4 References
[List references and controlling documents, including: meeting summaries, white papers, other
deliverables, etc.]
[Provide a list of contractual or task level assumptions and/or constraints that are preconditions to
preparation of the FRD. Assumptions are future situations beyond the control of the project, whose
outcomes influence the success of a project.]
1.5.1 Assumptions
Examples of assumptions include: availability of a technical platform, legal changes and policy decisions.
1.5.2 Constraints
Constraints are boundary conditions on how the system must be designed and constructed. Examples
include: legal requirements, technical standards, strategic decisions.
• Constraints exist because of real business conditions. For example, a delivery date is a
constraint only if there are real business consequences that will happen as a result of not
meeting the date. If failing to have the subject application operational by the specified date
places the organization in legal default, the date is a constraint.
• Preferences are arbitrary. For example, a date chosen arbitrarily is a preference. Preferences, if
included in the FRD, should be noted as such.]
2 METHODOLOGY
[Describe the overall approach used in the determination of the FRD contents. Describe the modeling
method(s) so non-technical readers can understand what they are conveying.]
3 FUNCTIONAL REQUIREMENTS
62
4.1 Context
[Provide a context diagram of the system, with explanations as applicable. The context of a system
refers to the connections and relationships between the system and its environment.]
Data 1
Data 3
Interface
Interface
Name 1
Name 2
(User) Data 2 Data 4
System/
Application
Name
Data 7
Interface Data 5 Interface
Name 3 Name 4
Data 6 Data 8
[Provide requirements of the system, user or business, taking into account all major classes/categories
of users. Provide the type of security or other distinguishing characteristics of each set of users. List the
functional requirements that compose each user requirement. As the functional requirements are
decomposed, the highest level functional requirements are traced to the user requirements. Inclusion
of lower level functional requirements is not mandatory in the traceability to user requirements if the
parent requirements are already traced to them.
User requirement information can be in text or process flow format for each major user class that shows
what inputs will initiate the system functions, system interactions, and what outputs are expected to be
generated by the system. The scenarios should be comprehensive, to the extent that all user types and
all major functions are covered. Give each user requirement a unique number. Typically, user
requirements have a numbering system that is separate from the functional requirements.
Requirements may be labeled with a leading “U” or other label indicating user requirements.]
[Decompose the context level diagrams to determine the functional requirements. Data flow diagrams
should be decomposed down to the functional primitive level. These diagrams are further decomposed
during design.]
63
[Create the initial Logical Data Model. Describe data requirements by providing data entities,
decomposition, and definitions in a data dictionary. The data requirements describe the business data
needed by the application system. Data requirements do not describe the physical database and are not
at the level of identifying field names.]
Section/
Requirement ID Requirement Definition
5 OTHER REQUIREMENTS
[Define hardware interfaces supported by the system, including logical structure, physical addresses,
and expected behavior.]
[Name the applications with which the subject application must interface. State the following for each
such application: name of application, external owner of application, interface details (only if
determined by the other application).
It is acceptable to reference an interface control document for details of the interface interactions.]
64
5.1.3 Communications Interfaces
[Describe communications interfaces to other systems or devices, such as local area networks.]
[Describe the requirements needed for conversion of legacy data into the system.]
[Provide a description of the hardware and software platforms needed to support the system.]
Do not state how these requirements will be satisfied. For example, in the Reliability section, answer
the question, “How reliable must the system be”? Do not state what steps will be taken to provide
reliability.
Distinguish preferences from requirements. Requirements are based on business needs, preferences
are not. If, for example, the user requires a special response but does not have a business-related
reason for it, that requirement is a preference.
Other applicable requirements on system attributes may be added to the list of subsections below.]
Operational requirements describe how the system will run and communicate with operations
personnel.
A. State the type(s) of security required. Include the need for the following as appropriate:
1. Physical security.
2. Access by user role or types.
3. State access control requirements by data attribute. For example, one group of users has
permission to view an attribute but not update it while another group of users has permissions
to update or view it.
4. State access requirements based on system function. For example, if there is a need to grant
access to certain system functions to one group of users, but not to another. For example, "The
system shall make Function X available to the System Administrator only".
5. State if there is a need for certification and accreditation of the security measures adopted for
this application]
65
The Security Section describes the need to control access to the data. This includes controlling who may
view and alter application data.
[List the activities recorded in the application’s audit trail. For each activity, list the data recorded.]
5.4.3 Reliability
1. Mean-Time-Between-Failure is the number of time units the system is operable before the first
failure occurs.
2. Mean-Time-To-Failure is the number of time units before the system is operable divided by the
number of failures during the time period.
3. Mean-Time-To-Repair is the number of time units required to perform system repair divided by
the number of repairs during the time period.]
Reliability is the probability that the system processes work correctly and completely without being
aborted.
5.4.4 Recoverability
A. In the event the application is unavailable to users (down) because of a system failure, how soon
after the failure is detected must function be restored?
B. In the event the database is corrupted, to what level of currency must it be restored? For
example “The database must be capable of being restored to its condition of no more than 1
hour before the corruption occurred”.
C. If the processing site (hardware, data, and onsite backup) is destroyed, how soon must the
application be able to be restored?]
Recoverability is the ability to restore function and data in the event of a failure.
[State the period during which the application must be available to users. For example, “The application
must be available to users Monday through Friday between the hours of 6:30 a.m. and 5:30 p.m. EST. If
the application must be available to users in more than one time zone, state the earliest start time and
the latest stop time. Consider daylight savings time, too.
Include use peak times. These are times when system unavailability is least acceptable.]
66
System availability is the time when the application must be available for use. Required system
availability is used in determining when maintenance may be performed.
Specific performance requirements, related to a specific functional requirement, should be listed with
that functional requirement.
5.4.7 Capacity
[List the required capacities and expected volumes of data in business terms. Do not state capacities in
terms of system memory requirements or disk space—if growth trends or projections are available,
provide them]
[Describe the length of time various forms of data must be retained and the requirements for its
destruction.
For example, “The system shall retain application information for 3 years”. Different forms of data
include: system documentation, audit records, database records, access records.]
5.4.11 Conventions/Standards
For example: Microsoft standards are followed for windows, Institute of Electrical and Electronics
Engineers (IEEE) for data formats, etc.]
67
APPENDIX A - GLOSSARY
BRD answers the WHY part SRS answers the WHAT i.e. FRS focuses on the HOW part i.e.
What is i.e. Why the requirements What requirements to be How the requirements will be
Answers? are being prepared? fulfilled. implemented.
A BRD document is created SRS document is prepared FRD or FRS document is also
When will it during the analysis phase of during the planning phase created during the planning
be prepared? the project. of the project. phase of the project.
Use-Case
A use-case describes a sequence of actions, performed by a system that provides value to an actor. The
use-case describes the system’s behavior under various conditions as it responds to a request from one
of the stakeholders, called the primary actor.
The actor is the Who of the system, in other words the end user.
In software and systems engineering, a use-case is a list of steps, typically defining interactions between
a role (known in UML as an "actor") and a system, to achieve a goal. The actor can be a human or an
external system.
A use-case specifies the flow of events in the system. It is more concerned with what is performed by
the system in order to perform the sequence of actions.
68
Benefits of a Use-Case
• It is an easy means of capturing the functional requirement with a focus on value added to
the user.
• Use-cases are relatively easy to write and read compared to the traditional requirement
methods.
• Use-cases force developers to think from the end user perspective.
• Use-case engage the user in the requirement process.
Use-Case Template
Here, we have shown a sample template of a Use-Case which a Business Analyst can fill so that the
information can be useful for the technical team to ascertain information about the project.
Use-case ID:
Use-case Name:
Actor:
Description:
Preconditions:
Post conditions:
Priority:
Frequency of Use:
Normal Course of
69
Events:
Alternative Courses:
Exceptions:
Includes:
Special Requirements:
Assumptions:
The goal of a customer in relation to our money vending machine (ATM) is to withdraw money. So, we
are adding Withdrawal use-case. Withdrawing money from the vending machine might involve a bank
for the transactions to be made. So, we are also adding another actor – Bank. Both actors participating
in the use-case should be connected to the use-case by association.
Money vending machine provides Withdrawal use-case for the customer and Bank actors.
70
Requirement Traceability Matrix
Requirement Traceability Matrix (RTM) is a document that maps and traces user requirement with test
cases. It captures all requirements proposed by the client and requirement traceability in a single
document, delivered at the conclusion of the Software development life cycle. The main purpose of
Requirement Traceability Matrix is to validate that all requirements are checked via test cases such that
no functionality is unchecked during Software testing.
• Requirement ID
• Requirement Type and Description
• Test Cases with Status
71
6. Contribution of BA in Projects
72
In project management, a change request often arises when the client wants an addition or alteration to
the agreed-upon deliverables for a project. Such a change may involve an additional feature or
customization or an extension of service, among other things. Because change requests are beyond the
scope of the agreement, they generally mean that the client will have to pay for the extra resources
required to satisfy them.
One of the more challenging aspects of change management is ensuring that all details are sufficiently
explicated and that all parties are in agreement as to what is expected. Explicit and detailed
documentation makes it easier to identify when a change request must be submitted.
Change requests can also originate internally. Internal change requests can involve a wide variety of
actions including patching and software and hardware upgrades.
Once a change request has been made, the process of change control should be undertaken to make
sure that the request is satisfied efficiently and without unnecessary use of resources.
73
1. Analyze your current state
First, you’ll need to choose which area of your business you want to focus on and start with your current
state. You need to discover where your organization currently is before you can make a plan for
reaching your goals.
For example, your company wants to become the most loved in your industry, but your customer
support team reports that many calls and customer interactions end in frustration on the customers’
part.
Once you have the big picture figured out and understand how your team or organization currently
functions, you need to become idealistic. Where would you like to be? What’s not happening that
should be? Don’t worry yet about how you’ll get there. That’s the next step. Right now, the sky’s the
limit, and you should dream big.
Completing the first two steps in isolation won’t get you great results––the status quo can seem
inescapable, and goals can feel lofty and unattainable. Putting them together, however, exposes what’s
missing between your performance and your potential. You also need to decide which solutions will
most effectively bridge the gap.
After you’ve charted out the possible ways to bridge the gap and decided which would be best, you
likely still need to convince others in your organization of that as well. The changes that you’ll
implement may also affect other teams and department, so it’s important to come up with a plan.
Establish a clear strategy and actionable objectives to help you actualize your transition and get
everyone on board.
74
Business Strategic Planning Technique – SWOT, SOAR, PESTLE, MOST
SWOT analysis
SWOT analysis is perhaps one of the oldest textbook-marketing assets. SWOT stands for strengths,
weaknesses, opportunities, and threats. You can perform a SWOT analysis both quantitatively and
qualitatively. This process will help you determine internal and external threats to your organization and
see where and how you stand out against the competition.
• Strengths: characteristics of the business or project that give it an advantage over others
• Weaknesses: characteristics that place the business or project at a disadvantage relative to
others
• Opportunities: elements in the environment that the business or project could exploit to its
advantage
• Threats: elements in the environment that could cause trouble for the business or project
75
SOAR Analysis
A SOAR analysis maintains the Strengths and Opportunities sections of a SWOT analysis but introduced
Aspirations and Results in the place of Weaknesses and Threats. Aspirations focus on what the
organization wants to do, who they want to serve, and where they wish to operate. The results section
addresses how the organization will identify and track their progress toward their Aspirations and
Opportunities. This section works to ensure that the organization is making progress and sticking to its
plan for achieving its goals.
A SOAR analysis is considered oriented toward action to a greater degree than a SWOT analysis. A SWOT
analysis is more analytical in its approach. This difference makes SOAR more useful for younger
organizations that are developing their identity or brand. SOAR provides an option for organizations that
will not know exactly what their weaknesses are yet. It is a forward-thinking examination rather than an
analysis based on experience. Additionally, SOAR tends to be more positive whereas SWOT tends to
focus on opposing forces and competition.
PESTLE Analysis
The PESTLE analysis examines six factors: Political, Economic, Social, Technological, Legal and
Environmental. The analysis uses this framework to determine whether macro-economic factors are
affecting an organization.
76
Political: how much is the government involved in the economy or in your organization’s particular
market?
Economic: how many economic factors (interest rates, employment, foreign exchanged, unemployment,
etc.) will affect your organization’s profitability?
Social: how much do emerging trends or demographic changes (population growth, age distribution,
etc.) affect your organization?
Technological: how much do technological innovation, development, and disruption affect the
organization’s market or the industry/sector?
Legal: how will changes in legislation affect the organization’s profitability, sustainability, and growth?
Environmental: how much do the surrounding environment and ecological impact influence the
organization’s policies?
Understanding these six macro-economic factors and their relationship with an organization is an useful
first step toward potential threats and weaknesses. Similar to the next analysis, Five Forces, this general
framework is best when complemented by another analysis. This analysis is commonly used in
conjunction with a SWOT analysis rather than as an alternative. The PESTLE analysis works well to
ensure that marketers are not making decisions while thinking they work in a vacuum. Similarly, the
PESTLE form accounts for the dynamic macro-economic landscape. This allows businesses to plan and
adapt.
MOST
MOST is short for Mission, Objectives, Strategies, and Tactics. MOST analysis is used to improve internal
processes and company culture by analyzing the organization’s internal environment. MOST analysis is
extremely powerful – and often empowers businesses with a new sense of capability and purpose.
Mission
Basically, this is the main purpose of the business plan that we discussed above. It should be the top-
level, overall reason for being in business in terms of what you want to accomplish. The more specific
that you can be when defining your mission, the more success you will have later on trying to define the
remaining points within the tool.
Objectives
Your objectives are one step down from your mission. Think of these are a collection of individual goals
that will add up to reaching your overall mission. Just like with the mission, objectives should be specific
enough to guide your decision making and planning for the future. With your mission in place, it should
be relatively easy to develop a list of a few objectives.
77
Strategy
These are the things you are going to do in order to reach your objectives. What actions should be taken
in order to accomplish your objectives, and in turn, your mission? Keeping up with the example we have
been using, the following are a few sample business strategies that could be used:
• Run a promotion to entice new customers to switch from your competition, such as offering
to beat any rate by 10%
• Invest in new advertising channels such as paid online advertisements or local radio
• Offer benefits to customers who take the time to leave a review about your business
Tactics
Your tactics should be the specific details that will guide your daily activities. So, if you are going to run
radio ads as mentioned in the previous example, some tactics would include writing a script, hiring a
voice over artist, contacting radio stations, etc. Using your tactics to dictate your daily activities is the
best way to make sure what you are doing today will guide you in the right direction toward your overall
mission.
4. Why? – The alternator belt was well beyond its useful service life and not replaced. (Fourth why)
5. Why? – The vehicle was not maintained according to the recommended service schedule. (Fifth
why, a root cause)
The questioning for this example could be taken further to a sixth, seventh, or higher level, but
five iterations of asking why is generally sufficient to get to a root cause.
78
7 So What Technique
So what? Its place in critical thinking differs from its conventional use; here, So what? is not a question
you ask if you don't care. Rather, you ask because you care a great deal. What you really want to know
is, “What is the relevance of this?” or “What if this were to happen?” You're truly asking, “Why is this
important?” Although that's a question with a why in it, you're really asking for the so what. However,
you must take care when using so what; people could easily misinterpret it as your being a wise guy or
insubordinate.
I can remember the very first time I asked, “So what?” A customer care manager came to me and said,
“Mike, our call hold time (the amount of time a customer has to wait on the line until a customer service
representative takes the call) is down to 15 seconds.” I asked him if I should be happy or sad, and the
manager responded that I should be happy.
I asked, “Why?”
“So what?”
At that point, the customer care manager looked at me in confusion. The conversation continued. What
was the value of answering the call in 15 seconds, when our nearest competitor took over 60 seconds?
Will our customers buy more from us? Will they recommend us? Will we retain them longer? It was
costing us a lot of money to answer calls that quickly; could..
79
7. BA Tools
Activity Tool
Prototyping Draw.io
Agile Project management JIRA
Repository Confluence
Database usage MS SQL
Prototyping - Draw.io
Visualization made easy
Teams around the world use draw.io to create powerful diagrams like BPMN and UML processes or
network architectures. You can also collaborate on digital whiteboards in meetings or brainstormings.
Smooth migration Bring your existing diagrams over to draw.io using our easy 1-Click batch Migration
function. Moving from draw.io for Confluence Server and Data Center to Cloud is just as easy.
• Process Modeling and Relationships (BPMN 2.0, ERD, Flowcharts, Swimlane diagrams…)
• Software Development and Networks (UML, UML 2.5, AWS…)
• Administration (Org charts, Mindmaps, Floorplans, Infographics)
• Meetings and Brainstormings etc.,
80
Agile Project management - JIRA
Plan: Create user stories and issues, plan sprints, and distribute tasks across your software team.
Track: Prioritize and discuss your team’s work in full context with complete visibility.
Release: Ship with confidence and sanity knowing the information you have is always up-to-date.
Report: Improve team performance based on real-time, visual data that your team can put to use.
81
Choose a workflow, or make your own: Every team has a unique process for shipping software. Use an
out-of-the-box workflow, or create one to match the way your team works.
Connect your team's work to your product roadmap: Ship faster and more reliably by building smarter
plans for your team and for your organization.
Repository - Confluence
Why Confluence?
Break down team silos An open, connected structure allows information to flow freely among everyone
at the organization.
Turn conversations into action Built for lasting knowledge so you never lose great ideas or context in a
transient notification or chat.
82
Organize everything in one place From quarterly planning docs to new hire blogs, everything lives on
Confluence.
Build a culture of open teamwork With social features, employees at every level have a voice to
contribute, share, and receive feedback.
Move work forward From actionable meeting notes to inspiring project plans, kickstart team
participation with a flexible workspace.
83
Capture everything Save time by harnessing your teams' collective knowledge into easy-to-find answers
for everyone.
Inspire conversation Encourage all teams – from marketing to engineering – to share announcements,
strengthen company culture, and get instant feedback.
Database - MS SQL
What is SQL?
• SQL stands for Structured Query Language
• SQL will let you access and manipulate databases
• SQL became a standard of the American National Standards Institute (ANSI) in 1986, and of
the International Organization for Standardization (ISO) in 1987.
84
What Can SQL do?
• SQL can execute queries against a database
• SQL can retrieve data from a database
• SQL can insert records in a database
• SQL can update records in a database
• SQL can delete records from a database
• SQL can create new databases
• SQL can create new tables in a database
• SQL can create stored procedures in a database
• SQL can create views in a database
• SQL can set permissions on tables, procedures, and views
• DDL
• DCL
• DML
• TCL
DDL
Data Definition Language (DDL) commands category is responsible for dealing with the structure of
objects. With these commands, we can modify our object/entity structure. For example, if there's one
table and you want to modify the structure of that table, you can use DDL commands.
Command Description
85
Alter Used to modify the created object.
Using these commands, you can create any object like tables, views, databases, triggers, and so on.
For example -
DML
Data Manipulation Language (DML) commands manipulate the data stored in objects like tables, views,
etc. With the help these commands, you can easily modify, insert, and delete your data.
Command Description
Using these commands, you can manipulate any kind of data stored in entities.
For example:
86
DCL
Data Control Language (DCL) commands are for security purposes. These commands are used to provide
roles, permissions, access and so on.
Command Description
Database: CSharpCornerDB
Table:
User: CSharpCorner
87
This is because this user doesn't have permission to create anything right now. We'll learn how to grant
or revoke permission on objects in our next article.
TCL
Transaction Control Language (TCL) commands are for managing transactions in SQL Server. The
following are the commands in this category.
Command Description
Rollback This command is used to restore the database to its last committed state.
This command is used to save the transaction so that we can roll back that transaction to the
Save Tran
point whenever necessary.
For example, we have a table named "tblStudent" with 3 records as shown below.
Now, we'll begin our transaction and add another record and commit that transaction.
1. Begin Tran
2. Insert INTO tblStudents VALUES ('Sumit')
3. COMMIT
Now, we'll add three records, one by one with save point, but we don't commit our transaction.
88
1. Begin Tran
2. Insert INTO tblStudents VALUES ('Kajal')
3. SAVE Tran A;
4. Insert INTO tblStudents VALUES ('Rahul')
5. SAVE Tran B;
6. Insert INTO tblStudents VALUES ('Ram')
7. SAVE Tran C;
Now, we have the following records in the table, in which the last three records are not yet committed.
Now, we have 3 savepoints - A, B, and C. Since our transaction is not yet committed, we can roll it back
to any savepoint. We'll roll it back to point B, i.e., at "Rahul".
1. ROLLBACK TRAN B
2. COMMIT
Now, when you fire the Select query, you'll get records up to ID 6.
So, these were the categories and types of commands in SQL Server with which you can play with the
data.
89
Thank you
Contact
Name: Diwakar Singh
Email: info.bahelpline@gmail.com
Phone: +91 8093744952, +91 8169048056
90