Business Analysis Tutorial
Business Analysis Tutorial
Audience
This tutorial is meant for aspiring business analysts, and project owners or business
owners, coordinators and project team members who often work closely with business
analysts.
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.
Prerequisites
To understand this tutorial, it is advisable to have a foundation level knowledge of business
scenarios, process and domain knowledge pertaining to a few industries.
All the content and graphics published in this e-book are the property of Tutorials Point (I)
Pvt. Ltd. The user of this e-book is prohibited to reuse, retain, copy, distribute or republish
any contents or a part of contents of this e-book in any manner without written consent
of the publisher.
We strive to update the contents of our website and tutorials as timely and as precisely as
possible, however, the contents may contain inaccuracies or errors. Tutorials Point (I) Pvt.
Ltd. provides no guarantee regarding the accuracy, timeliness or completeness of our
website or its contents including this tutorial. If you discover any errors on our website or
in this tutorial, please notify us at [email protected]
i
Business Analysis
Table of Contents
About the Tutorial ................................................................................................................................... i
Audience ................................................................................................................................................. i
Prerequisites ........................................................................................................................................... i
ii
Business Analysis
9. USE-CASES ......................................................................................................................... 22
iii
Business Analysis
iv
1. Business Analysis Introduction
Business Analysis
To understand the structure and the dynamics of the organization in which a system
is to be deployed.
To ensure that the customer, end user, and developers have a common
understanding of the target organization.
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.
1
Business Analysis
Sometimes, he would interact with Business users and at times technical users and finally
to all the stakeholders in the projects to get the approval and final nod before proceeding
with the documentation.
Hence, the role of BA is very crucial in the effective and successful jumpstart for any
project.
2
Business Analysis
BA
Role
Business analysts who work solely on developing software systems may be called IT
business analysts, technical business analysts, online business analysts, business systems
analysts, or systems analysts.
Business analysis also includes the work of liaison among stakeholders, development
teams, testing teams, etc.
3
2. Software Development Life Cycle
Business Analysis
Software Development Life Cycle (SDLC) is a process followed in a software project, within
a software organization. It consists of a detailed plan describing how to develop, maintain,
replace and alter or enhance specific software. It defines a methodology for improving the
quality of software and the overall development process.
It takes into consideration all the associated aspects of software testing, analysis
and post-process maintenance.
Planning Stage
Every activity must start with a plan. Failing to plan is planning to fail. The degree of
planning differs from one model to another, but it's very important to have a clear
understanding of what we are going to build by creating the system's specifications.
4
Business Analysis
Defining Stage
In this phase, we analyze and define the system's structure. We define the architecture,
the components, and how these components fit together to produce a working system.
Designing Stage
In system design, the design functions and operations are described in detail, including
screen layouts, business rules, process diagrams and other documentation. The output of
this stage will describe the new system as a collection of modules or subsystems.
Building Stage
This is the development phase. We start code generation based on the system's design
using compilers, interpreters, debuggers to bring the system to life.
Implementation
Implementation is a part of the Building Stage. In this phase, we start code generation
based on the system's design using compilers, interpreters, debuggers to bring the system
to life.
Testing Stage
As different parts of the system are completed; they are put through a series of tests. it
is tested against the requirements to make sure that the product is actually solving the
needs addressed during the requirement phase.
Test plans and test cases are used to identify bugs and to ensure that the system
is working according to the specifications.
In this phase, different types of testing like unit testing, manual testing, acceptance
testing and system testing is done.
5
Business Analysis
To achieve the main goals, the testing strategy for the proposed system will usually consist
of four testing levels.
These are unit testing, integration testing, acceptance testing, and regression testing. The
following subsections outline these testing levels, which development team roles are
responsible for developing and executing them, and criteria for determining their
completeness.
Deployment
After the test phase ends, the system is released and enters the production environment.
Once the product is tested and ready to be deployed it is released formally in the
appropriate market. Sometime product deployment happens in stages as per the
organizations business strategy.
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.
Once in the production environment, the system will suffer modifications because of
undetected bugs or other unexpected events. The system is evaluated and the cycle is
repeated for maintaining the system.
6
Business Analysis
He is involved in translating the solution features into software requirements. Then leads
in analysis and designing phase, dictates in code development, then follows the testing
phase during bug fixing as a change agent in the project team and ultimately fulfills the
customer requirements.
7
3. Roles of Business AnalystsBusiness Analysis
The role of a business analyst in an IT Project can be multifold. It is possible for project
team members to have multiple roles and responsibilities. In some projects, the BA may
take on the roles of the Business Intelligence Analyst, Database Designer, Software Quality
Assurance Specialist, Tester, and/or Trainer when there are limited resources available.
Major Roles of a BA
A key role of most business analysts is to liaison between the business and technical
developers. Business analysts gets to work together with the business clients to
gather/define requirements of a system or process to improve productivity while at the
same time working with the technical teams to design and implement the system/process.
As a Contributor
The major responsibility of a BA is to contribute to the development of Business users /
key users in identifying business problems, needs and functions, understand stakeholders
concerns and requirements to identify improvement opportunities, and contribute business
input for developing the business case for the IT system development project.
As a Facilitator
A Business Analyst is also supposed to facilitate/co-ordinate in the elicitation and analysis
of requirements, collaborating and communicating with stakeholders and to manage their
expectations and needs, and ensure the requirements are complete, unambiguous and
map them to real-time business needs of an organization.
As an Analyst
Another important role would be to assess proposed system and organizational readiness
for system implementation and providing support to users and coordinate with IT staff.
8
Business Analysis
To help review and provide inputs to the design of the proposed IT system from the
business perspective, resolving issues/conflicts among stakeholders, help organize
comprehensive and quality UAT through assisting users in developing test cases, and help
organize training with the aim of ensuring the deployed IT system which is capable of
meeting business needs and requirements as well as realizing the anticipated benefits.
Planning and monitoring the Business analysis activities for scope development, schedule
and approach for performing the activities related to business analysis for the IT system
development project, monitor the progress, coordinating with the Internal Project
manager and report on revenue, profitability, risks and issues wherever appropriate.
Initiation Phase
This phase will mark the beginning of a new project and a business analyst will vary out
the following responsibilities:
Planning Phase
This phase will involve gathering the requirements and planning, how the project will be
executed and managed. His responsibilities will include the below functions:
Executing Phase
This phase marks the development of the solution as per the requirements gathered. The
responsibilities include:
Closing Phase
This phase marks the closure of the project. The responsibilities are:
Presenting the completed project to the client and gain their acceptance.
Develop sound business cases and more realistic estimation of resources and
business benefits.
Produces clear and concise requirements, which in turn, helps provide clearer and
more accurate requirements, if the IT project is outsourced
10
Business Analysis
Elicit the real business needs from users and effectively manage user expectations.
Improves the quality of design for the proposed IT system so that it meets the user
requirements.
Ensures the quality of the system developed before passing on to end-users for
review and acceptance.
11
4. BA Tools and Techniques Business Analysis
A Business Analyst should be familiar with various analytical tools and related technologies
when you are wearing the BA hat. I mean, if you are holding this position.
As we have already learnt earlier, business analysis is a process where you are trying to
understand a business enterprise and identifying opportunities, problem areas, problems
and meeting a wide range of people having wide range of roles and responsibilities like
CEO, VP, Director and understanding their business requirements.
Fundamentally, there are 3 types of Business analysis which we can categorize into -
For each type of analysis, there are a set of tools which are available in the market and
based on organizational needs and requirements, these are to be used.
For all the technology projects, functional and non-functional requirements must be
segregated and separately analyzed.
To define the proper tool and an appropriate technique might be a daunting challenge.
Whether you are doing a brand-new application or making change to an existing
application. Considering the right technique for the functional process is an art by itself.
12
Business Analysis
An overview of the widely-used business analysis techniques which are currently in the
market:
Process Deliverables
Processes Techniques
(Outcomes)
JAD Sessions
Business Requirements
Scenarios and Use-cases
Documents:
Organizational Modeling
Scope Modeling Business and Functional
Functional Decomposition Requirements
Interviews
Observation (Job Shadowing) Non-Functional
Focus Groups Requirements
To Determine Acceptance and Evaluation
Functional and Sequence Diagrams Business Rules
Non-Functional User Stories
Requirements Brainstorming Requirements Traceability
Storyboarding Matrix
Prototyping
Structured Walk-through
Event Analysis
Common Template:
Business Rule analysis
Requirements Workshops Business Requirements
Risk Analysis Document
Root Cause Analysis
For example, root-cause analysis is used when there is a requirement to go deeper into
a certain important area or function.
However, business requirements document is the most popular and accepted way to put
the requirements in documentation format.
In the subsequent chapters, we will be discussing some of the above techniques in-depth.
13
5. JAD Session Business Analysis
A Business analyst is the one who interacts with the entire group and gathers the
information, analyses it and brings out a document. He plays a very important role in JAD
session.
In other words, a JAD Session enables customers and developers to quickly come to an
agreement on the basic scope, objectives and specifications of a project or in case, not
come to an agreement which means the project needs to be re-evaluated.
Clarify: Crystallize and clarify all requirements agreed upon in the session.
Unify: The output from one phase of development is input to the next.
Satisfy: The customers define the system; therefore, it is their system. Shared
participation brings a share in the outcome; they become committed to the systems
success.
Executive Sponsor
An executive sponsor is the person who drivers the project the system owner. They
normally are from higher positions and are able to make decisions and provide necessary
strategy, planning and direction.
14
Business Analysis
Facilitator
He chairs the meeting; he identifies issues that can be solved as part of the meeting. The
facilitator does not contribute information to the meeting.
Key Users
Key users or also called as super users in some instances have been used interchangeable
and differs from company to company still. Key users are generally the business users
who are more tightly aligned to the IT project and are responsible for the configuration of
profiles of their team members during the projects.
For Example: Suppose John is a key user and Nancy, Evan are users of a SAP system. In
this instance, Nancy and Evan does not have access to change the functionality and profile
whereas John being a Key user has access to edit profile with more authorizations.
The JAD approach, in comparison with the more traditional practice, is thought to lead to
faster development times and greater client satisfaction, because the client is involved
throughout the development process. In comparison, in the traditional approach to
systems development, the developer investigates the system requirements and develops
an application, with client input consisting of a series of interviews.
15
6. Requirement Gathering Techniques
Business Analysis
Techniques describe how tasks are performed under specific circumstances. A task may
have none or one or more related techniques. A technique should be related to at least
one task.
Brainstorming
Brainstorming is used in requirement gathering to get as many ideas as possible from
group of people. Generally used to identify possible solutions to problems, and clarify
details of opportunities.
Document Analysis
Reviewing the documentation of an existing system can help when creating ASIS process
document, as well as driving gap analysis for scoping of migration projects. In an ideal
world, we would even be reviewing the requirements that drove creation of the existing
system a starting point for documenting current requirements. Nuggets of information
are often buried in existing documents that help us ask questions as part of validating
requirement completeness.
Focus Group
A focus group is a gathering of people who are representative of the users or customers
of a product to get feedback. The feedback can be gathered about needs/opportunities/
problems to identify requirements, or can be gathered to validate and refine already
elicited requirements. This form of market research is distinct from brainstorming in that
it is a managed process with specific participants.
Interface analysis
Interfaces for a software product can be human or machine. Integration with external
systems and devices is just another interface. User centric design approaches are very
effective at making sure that we create usable software. Interface analysis reviewing
the touch points with other external systems is important to make sure we dont overlook
requirements that arent immediately visible to users.
Interview
Interviews of stakeholders and users are critical to creating the great software. Without
understanding the goals and expectations of the users and stakeholders, we are very
unlikely to satisfy them. We also have to recognize the perspective of each interviewee,
so that, we can properly weigh and address their inputs. Listening is the skill that helps a
great analyst to get more value from an interview than an average analyst.
16
Business Analysis
Observation
By observing users, an analyst can identify a process flow, steps, pain points and
opportunities for improvement. Observations can be passive or active (asking questions
while observing). Passive observation is better for getting feedback on a prototype (to
refine requirements), where active observation is more effective at getting an
understanding of an existing business process. Either approach can be used.
Prototyping
Prototyping is a relatively modern technique for gathering requirements. In this approach,
you gather preliminary requirements that you use to build an initial version of the solution
- a prototype. You show this to the client, who then gives you additional requirements.
You change the application and cycle around with the client again. This repetitive process
continues until the product meets the critical mass of business needs or for an agreed
number of iterations.
Requirement Workshops
Workshops can be very effective for gathering requirements. More structured than a
brainstorming session, involved parties collaborate to document requirements. One way
to capture the collaboration is with creation of domain-model artifacts (like static
diagrams, activity diagrams). A workshop will be more effective with two analysts than
with one.
Reverse Engineering
When a migration project does not have access to sufficient documentation of the existing
system, reverse engineering will identify what the system does. It will not identify what
the system should do, and will not identify when the system does the wrong thing.
Survey/Questionnaire
When collecting information from many people too many to interview with budget and
time constraints a survey or questionnaire can be used. The survey can force users to
select from choices, rate something (Agree Strongly, agree), or have open ended
questions allowing free-form responses. Survey design is hard questions can bias the
respondents.
17
7. Functional Requirements Document
Business Analysis
Functional requirements capture the intended behavior of the system. This behavior may
be expressed as services, tasks or functions the system is required to perform. The
document should be tailored to fit a particular projects need. They define things such as
system calculations, data manipulation and processing, user interface and interaction with
the application.
18
Business Analysis
Business Process Model: A model of the current state of the process ("as is"
model) or a concept of what the process should become ("to be" model)
Conceptual Model - High level display of different entities for a business function
and how they relate to one another.
Stakeholder Map: Identifies all stakeholders who are affected by the proposed
change and their influence/authority level for requirements. This document is
developed in the origination phase of the Project Management Methodology (PMM)
and is owned by the Project Manager but needs to be updated by the project team
as new/changed Stakeholders are identified throughout the process.
19
8. Software Requirements Specification
Business Analysis
An SRS document concentrates on WHAT needs to be done and carefully avoids the
solution (how to do). It serves as a contract between development team and the
customer. The requirements at this stage is written using end user terminology. If
necessary, later a formal requirement specification will be developed from it.
SRS is a complete description of the behavior of a system to be developed and may include
a set of use-cases that describes the interactions, the users will have with the software.
Purpose of SRS
SRS is a communication tool between Customer / Client, Business Analyst, System
developers, Maintenance teams. It can also be a contract between purchaser and supplier.
20
Business Analysis
Revision History
Date Description Author Comments
Document Approval
The following software requirements specification has been accepted and approved by
the following:
David Instructor
21
9. Use-Cases Business Analysis
One of the nine diagrams of UMLs are the Use-case Diagram. These are not only important
but necessary requirement for software projects. It is basically used in Software life cycles.
As we know there are various phases in the development cycle and the most used phase
for Use-cases would be during the requirements gathering phase.
What is a 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 systems 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 he the end user.
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.
Benefits of a Use-Case
A use-case provides the following benefits:
Use-cases are relatively easy to write and read compared to the traditional
requirement methods
Flow of events : Description of interaction between the system and the actor
contains main flows and alternate flows.
Post Condition : Describe the state of the system after a use-case has run its
course.
22
Business Analysis
Use-Case Identification
Use-Case ID: Give each use-case a unique numeric identifier, in hierarchical form:
X.Y. Related use-cases can be grouped in the hierarchy. Functional requirements
can be traced back to a labelled use-case.
Use-Case Name: State a concise, results-oriented name for the use-case. These
reflect the tasks the user needs to be able to accomplish using the system. Include
an action verb and a noun. Some examples:
Use-Case History
Here, we mention about the names of the people who are the stakeholders of the Use-
case document.
Created By: Supply the name of the person who initially documented this use-
case.
Date Created: Enter the date on which the use-case was initially documented.
Last Updated By: Supply the name of the person who performed the most recent
update to the use-case description.
Date Last Updated: Enter the date on which the use-case was most recently
updated.
Use-Case Definition
The following are the definitions of the key concepts of Use-Case:
Actor
An actor is a person or other entity external to the software system being specified who
interacts with the system and performs use-cases to accomplish tasks. Different actors
often correspond to different user classes, or roles, identified from the customer
community that will use the product. Name the actor(s) that will be performing this use-
case.
Description
Provide a brief description of the reason for and outcome of this use-case, or a high-level
description of the sequence of actions and the outcome of executing the use-case.
23
Business Analysis
Preconditions
List any activities that must take place, or any conditions that must be true, before the
use-case can be started. Number each precondition. Examples:
Post Conditions
Describe the state of the system at the conclusion of the use-case execution. Number each
post condition.
Examples
Priority
Indicate the relative priority of implementing the functionality required to allow this use-
case to be executed. The priority scheme used must be the same as that used in the
software requirements specification.
Frequency of Use
Estimate the number of times this use-case will be performed by the actors per some
appropriate unit of time.
Alternative Courses
Document other, legitimate usage scenarios that can take place within this use-case
separately in this section. State the alternative course, and describe any differences in the
sequence of steps that take place. Number each alternative course using the Use-case ID
as a prefix, followed by AC to indicate Alternative Course. Example: X.Y.AC.1.
Exceptions
Describe any anticipated error conditions that could occur during execution of the use-
case, and define how the system is to respond to those conditions. Also, describe how the
system is to respond if the use-case execution fails for some unanticipated reason. Number
each exception using the Use-case ID as a prefix, followed by EX to indicate Exception.
Example: X.Y.EX.1.
24
Business Analysis
Includes
List any other use-cases that are included (called) by this use-case. Common
functionality that appears in multiple use-cases can be split out into a separate use-case
that is included by the ones that need that common functionality.
Special Requirements
Identify any additional requirements, such as nonfunctional requirements, for the use-
case that may need to be addressed during design or implementation. These may include
performance requirements or other quality attributes.
Assumptions
List any assumptions that were made in the analysis that led to accepting this use-case
into the product description and writing the use-case description.
25
10. Use-Case Diagrams Business Analysis
An important part of the Unified Modeling Language (UML) is the facilities for drawing use-
case diagrams. Use-cases are used during the analysis phase of a project to identify and
partition system functionality. They separate the system into actors and use-cases. Actors
represent roles that can are played by users of the system.
Those users can be humans, other computers, pieces of hardware, or even other software
systems. The only criterion is that they must be external to the part of the system being
partitioned into use-cases. They must supply stimuli to that part of the system, and the
must receive outputs from it.
Use-cases represents the activities that actors perform with the help of your system in the
pursuit of a goal. We need to define what those users (actors) need from the system.
Use-case should reflect user needs and goals, and should be initiated by an actor.
Business, actors, Customers participating in the business use-case should be connected to
the use-case by association.
26
Business Analysis
So, the uses relationship is very much like a function call or a subroutine.
The use-case being used in this fashion is called an abstract use-case because it
cannot exist on its own but must be used by other uses cases.
27
Business Analysis
Money vending machine provides Withdrawal use-case for the customer and Bank actors.
Generalization
Association
Extend
Include
28
Business Analysis
Extend
There are some functions that are triggered optionally. In such cases the extend
relationship is used and the extension rule is attached to it. Thing to remember is that the
base use-case should be able to perform a function on its own even if the extending use-
case is not called.
Extend relationship is shown as a dashed line with an open arrowhead directed from the
extending use-case to the extended (base) use-case. The arrow is labeled with the
keyword extend.
Include
It is used to extract use-case fragments that are duplicated in multiple use-cases. It is
also used to simplify large use-case by splitting it into several use-cases and to extract
common parts of the behaviors of two or more use-cases.
Include relationship between use-cases which is shown by a dashed arrow with an open
arrowhead from the base use-case to the included use-case. The arrow is labeled with the
keyword include.
Use-cases deal only in the functional requirements for a system. Other requirements such
as business rules, quality of service requirements, and implementation constraints must
be represented separately.
29
Business Analysis
The diagram shown below is an example of a simple use-case diagram with all the
elements marked.
30
Business Analysis
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:
Date Last
Date Created:
Updated:
Actor:
Description:
Preconditions:
Post conditions:
Priority:
Frequency of Use:
Normal Course of
Events:
Alternative
Courses:
Exceptions:
Includes:
Special
Requirements:
Assumptions:
31
11. Requirements Management
Business Analysis
The key stakeholders wish that someone could explain customer / client requirements in
plain English. Will this benefit them from understanding the value at a high-level? This will
be the main-focus area, as they will try to map the documentation with the requirements
and how BA could communicate in the best possible way.
At the core of the issue is that projects are increasingly complex, changes occur and
communication is challenging.
It is critical to the success of your projects for your whole team to understand what you
are building and why thats how we define requirements management. The why is
important because it provides context to the goals, feedback and decisions being made
about the requirements.
This increases predictability of future success and potential problems, allowing your team
to quickly course correct any issues and successfully complete your project on time and
32
Business Analysis
within budget. As a starting point, its valuable for everyone involved to have a basic
understanding of what requirements are, and how to manage them.
Regardless of what your team calls them or what process you use; requirements are
essential to the development of all products. Without clearly defining requirements you
could produce an incomplete or defective product. Throughout the process there can be
many people involved in defining requirements.
A stakeholder might request a feature that describes how the product will provide value in
solving a problem. A designer might define a requirement based on how the final product
should look or perform from a usability or user interface standpoint.
33
Business Analysis
A business analyst might create a system requirement that adheres to specific technical
or organizational constraints. For todays sophisticated products and software applications
being built, it often takes hundreds or thousands of requirements to sufficiently define the
scope of a project or a release. Thus, its imperative that the team be able to access,
collaborate, update, and test each requirement through to completion, as requirements
naturally change and evolve over time during the development process.
Now that weve defined the value of requirements management at a high-level, lets go
deeper into the four fundamentals that every team member and stakeholder can benefit
from understanding:
Does everyone know what were building and why? Thats the value of requirements
management.
In practice, you dont necessarily want consensus, you want buy-in from the group
and approval from those in control so you can move the project forward. With consensus,
you are trying to get everyone to compromise and agree on the decision. With buy-in, you
are trying to get people to back the best solution, make a smart decision and do what is
necessary to move forward.
34
Business Analysis
You dont need everyone to agree that the decision is the best. You need everyone to
support the decision. Team collaboration can help in receiving support on decisions and in
planning good requirements.
Collaborative teams work hard to make sure everyone has a stake in projects and provides
feedback. Collaborative teams continuously share ideas, typically have better
communication and tend to support decisions made because there is a shared sense of
commitment and understanding of the goals of the project.
Its when developers, testers, or other stakeholders feel out of the loop that
communication issues arise, people get frustrated and projects get delayed. Once
everyone has bought-in to the scope of work, it is imperative for requirements to be clear
and well documented. Keeping track of all the requirements is where things get tricky.
Imagine having a to-do list a mile long that involves collaborating with multiple people to
complete. How would you keep all those items straight? How would you track how one
change to an item would affect the rest of the project? This is where traceability and
change management add value.
35
12. Planning Good Requirements
Business Analysis
So, what makes a good requirement? A good requirement should be valuable and
actionable; it should define a need as well as provide a pathway to a solution. Everyone
on the team should understand what it means. Requirements vary in complexity.
Good requirements ensure that all stakeholders understand their part of the plan;
if parts are unclear or misinterpreted the final product could be defective or fail.
Requirement analysis in software engineering covers those tasks that go into determining
the needs or conditions to meet for a new or altered product taking account of the possible
conflicting requirements of various stakeholders, analyzing, documenting, validating and
managing software or system requirements.
Documented
Actionable
Measurable
Testable
Traceable
36
Business Analysis
A Business analyst gathers information through observing the existing systems, studying
the existing procedures, discussions with the customers and the end users. The analyst
should also have imaginative and creative skills in absence of a working System. Analyzing
the gathered requirement to find the missing links is requirement analysis.
Eliciting Approach
To elicit the objectives, ask the business expert, the development manager, and the
project sponsor the following questions:
What business objectives of the company will this project help achieve?
Do the people who will benefit from it consider it the most important improvement
that can possibly be made at this time?
Possible objectives might be reducing costs, improving the customer service, simplifying
the work flow, replacing obsolete technology, piloting a new technology, and many others.
Also, make sure you understand exactly how the proposed project will help accomplish the
stated objective.
Business Requirements
Business requirements are the critical activities of an enterprise that must be performed
to meet the organizational objectives while remaining solution independent. A business
requirements document (BRD) details the business solution for a project including the
documentation of customer needs and expectations.
User Requirements
User requirements should specify the specific requirements which the user expects/wants
from software to be constructed from the software project. A user requirement should be
Verifiable, Clear and concise, Complete, Consistent, Traceable, Viable.
37
Business Analysis
System Requirements
System requirements deal with defining software resources requirements and pre-
requisites that needs to be installed on a computer to provide optimal functioning of an
application.
Functional Requirements
Functional requirements capture and specify specific intended behavior of the system
being developed. They define things such as system calculations, data manipulation and
processing, user interface and interaction with the application, and other specific
functionality that show how user requirements are satisfied. Assign a unique ID number
to each requirement.
Non-Functional Requirements
Non-functional requirement is the one which specifies criteria that can be used to judge
the operation of a system rather than specific behaviors. System architecture speaks on
the plan for implementing non-functional requirements.
Non-functional requirements speak on how the system should look like or it can be
mentioned like system shall be. Non-functional requirements are called as qualities of
the system.
Transition Requirements
Transition Requirements describe capabilities that the solution must fulfill 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
is 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.
38
Business Analysis
The requirements trace ability matrix (RTM) provides a method for tracking the functional
requirements and their implementation through the development process. Each
requirement is included in the matrix along with its associated section number.
As the project progresses, the RIM is updated to reflect each requirements status. When
the product is ready for system testing, the matrix lists each requirement, what product
component addresses it, and what test verifies that it is correctly implemented.
Requirement description
Requirement reference in FRD
Verification Method
Requirement reference in Test Plan
Example: Connecting the dots to identify the relationships between items within your
project. It is a connector of common downstream flow.
39
Business Analysis
By tracing requirements, you are able to identify the ripple effect changes have, see if a
requirement has been completed and whether its being tested properly. Traceability and
change management provides managers peace of mind and the visibility needed to
anticipate issues and ensure continuous quality.
Quality Assurance
Getting requirements delivered right the first time can mean better quality, faster
development cycles and higher customer satisfaction with the product. Requirements
management not only helps you get it right, but also helps your team save money and
many headaches throughout the development process.
Concise, specific requirements can help you detect and fix problems early, rather than
later when it is much more expensive to fix. In addition, it can cost up to 100 times more
to correct a defect later in the development process after its been coded, than it is to
correct early on while a requirement.
By integrating requirements management into your quality assurance process, you can
help your team increase efficiency and eliminate rework. Moreover, rework is where most
of the cost issues occur.
In other words, development teams are wasting majority of their budgets on efforts that
are not performed correctly the first time. For example, a developer codes a feature based
on an old specification document, only to learn later, that the requirements for that feature
changed. These types of issues can be avoided with effective requirements management
best practices.
In summary, requirements management can sound like a complex discipline, but when
you boil it down to a simple concept its about helping teams answer the question, Does
everyone understand what were building and why? From the business analysts, product
managers and project leaders to the developers, QA managers and testers, along with the
stakeholders and customers involved so often the root cause of project failure is a
misunderstanding of the scope of the project.
When everyone is collaborating, and has full context and visibility to the discussions,
decisions and changes involved with the requirements throughout the lifecycle of the
project, that is when success happens consistently and you maintain continuous quality.
In addition, the process is smoother with less friction and frustration along the way for
everyone involved.
Note: Research has shown that project teams can eliminate 50-80% of project defects by
effectively managing requirements. According to the Carnegie Mellon software engineering
institute, 60-80 percent of the cost of software development is in rework.
40
Business Analysis
41
13. Business Modelling Business Analysis
With the help of modelling techniques, we can create a complete description of existing
and proposed organizational structures, processes, and information used by the
enterprise.
Business Model is a structured model, just like a blueprint for the final product to be
developed. It gives structure and dynamics for planning. It also provides the foundation
for the final product.
It is used to verify if, stakeholders have a shared understanding of the proposed To-be
of the solution.
Analyzing requirements is a part of business modelling process and it forms the core focus
area. Functional Requirements are gathered during the Current state. These
requirements are provided by the stakeholders regarding the business processes, data,
and business rules that describe the desired functionality which will be designed in the
Future State.
42
Business Analysis
A gap analysis is then performed to assess, if there is any gap that prevents from achieving
business needs by comparing the identified current state with the desired outcomes.
If there is no gap (i.e. the current state is adequate to meet the business needs and
desired outcomes), it will probably not be necessary to launch the IT project. Otherwise,
the problems/issues required to be addressed in order to bridge the gap should be
identified.
43
Business Analysis
Step 2
Step 1: Assess Proposed System Review Organization Readiness for
System Implementation
BA should help the IT project team to determine whether the proposed system option and
the high-level system design could meet the business needs and deliver enough business
value to justify the investment. If there are more than one system options, BA should
work with the IT staff to help to identify the pros and cons of each option and select the
option that delivers the greatest business value.
Domain and User variation: Developing a business model will frequently reveal
areas of disagreement or confusion between stakeholders. The Business Analyst
will need to document the following variations in the as-is model.
Multiple work units perform the same function: Document the variances in
the AS-IS model. This may be different divisions or geographies.
Multiples users perform the same work: Different stakeholders may do similar
work differently. The variation may be the result of different skill sets and
approaches of different business units or the result of differing needs of external
stakeholders serviced by the enterprise. Document the variances in the AS-IS
model.
Resolution Mechanism: The Business Analyst should document whether the To-
Be solution will accommodate the inconsistencies in the current business model or
whether the solution will require standardization. Stakeholders need to determine
which approach to follow. The To-Be model will reflect their decision.
44
Business Analysis
A requirement to the system is the GAAP fit analysis, which has to balance between:
The need for the technical changes, which are the enhancements in order to achieve
identity with the existing practice.
Some business analysts acquire domain knowledge by testing business applications and
working with the business users. They create a conducive learning environment though
their interpersonal and analytical skills. In some cases, they supplement their domain
knowledge with a few domain certifications offered by AICPCU/IIA and LOMA in the field
of Insurance and financial services. There are other institutes that offer certification in
other domains.
Assistance to your teams in filling out standard questionnaires for the relevant
system as may be furnished by the developers.
45
Business Analysis
Check and control as to whether the requirements set by you have been properly
reproduced and recorded in the documents describing the future model in the
system (Blueprints).
Assistance in preparation of data for migration of lists and balances in the format
required by the system.
Review of the set-up prototype for compliance with the requirements defined by
the business process owners.
In the next section, we will discuss briefly about some of the popular Business Modelling
Tools used by large organizations in IT environments.
Step 1: To open a new Visio drawing, go to the Start Menu and select Programs Visio.
Step 2: Move your cursor over Business Process and select Basic Flowchart
46
Business Analysis
A: the toolbars across the top of the screen are like other Microsoft programs such as
Word and PowerPoint. If you have used these programs before, you may notice a few
different functionalities, which we will explore later.
Selecting Help Diagram Gallery is a good way to become familiar with the types of drawings
and diagrams that can be created in Visio.
B: The left side of the screen shows the menus specific to the type of diagram you are
creating. In this case, we see:
Arrow Shapes
Backgrounds
Basic Flowchart Shapes
Borders and Titles
C: The center of the screen shows the diagram workspace, which includes the actual
diagram page as well as some blank space adjacent to the page.
D: The right side of the screen shows some help functions. Some people may choose to
close this window to increase the area for diagram workspace, and re-open the help
functions when necessary.
47
Business Analysis
The intent of Enterprise architect is to determine how an organization can most effectively
achieve its current and future objectives.
Information Perspective: This defines and classifies the raw data like document
files, databases, images, presentations and spreadsheets that organization requires
in order to efficiency operate.
48
Business Analysis
Monitoring status and controlling changes to the requirement baseline. The Primary
elements are Change control and Traceability.
Requisite Pro is used for the above activities and project administration purposes, the tool
is used for querying and searching, Viewing the discussion that were part of the
requirement.
In Requisite Pro, the user can work on the requirement document. The document is a
MS-Word file created in Reqpro application and integrated with the project database.
Requirements created outside Requisite pro can be imported or copied into the document.
In Requisite Pro, we can also work with traceability, here it is a dependency relationship
between two requirements. Traceability is a methodical approach to managing change by
linking requirements that are related to each other.
49
Business Analysis
Requisite Pro makes it easy to track changes to a requirement throughout the development
cycle, so it is not necessary to review all your documents individually to determine which
elements need updating. You can view and manage suspect relationships using a
Traceability Matrix or a Traceability Tree view.
Requisite Pro projects enable us to create a project framework in which the project artifacts
are organized and managed. In each project the following are included
Requisite Pro allows multiple user to access the same project documents and database
simultaneously hence the project security aspect is to very crucial. Security prevents the
system use, potential harm, or data loss from unauthorized user access to a project
document.
It is recommended that the security is enabled for all RequisitePro projects. Doing so
ensures that all changes to the project are associated with the proper username of the
Individual who made the change, thereby ensuring that you have a complete audit trail
for all changes.
50