During my courses I often receive a question what is the difference between business analysis and requirements engineering. Delegates wonder whether these two terms can be used interchangeably, and if not what is a real difference between them. So to answer this question, let us start with some definitions.
International Institute of Business Analysis (IIBA) defines business analysis as the practice of enabling change in an organizational context, by defining needs and recommending solutions that deliver value to stakeholders. IIBA splits the business analysis practice into a number of knowledge areas defined in Business Analysis Body of Knowlegde (BABoK) as illustrated in figure 1.
Figure 1 Business analysis knowledge areas.
International Requirements Engineering Board (IREB) defines requirements engineering as a systematic and disciplined approach to the specification and management of requirements with the following goals:
(1) Knowing the relevant requirements, achieving a consensus among the stakeholders about these requirements, documenting them according to given standards, and managing them systematically,
(2) Understanding and documenting the stakeholders’ desires and needs,
(3) Specifying and managing requirements to minimize the risk of delivering a system that does not meet the stakeholders’ desires and needs.
A typical requirements engineering framework looks like one presented in figure 2:
Figure 2 Typical requirements engineering framework
A comparison of these two frameworks presented in figure 1 and 2 results in discovering an overlap. Requirements activities e.g. elicitation, analysis and management form an important part of business analysis. Business analysis though encompasses more than requirements. It concentrates on the whole business system represented by people, processes, organizational structures, information and technology. Business analysis activities focus on defining, designing and implementing business change as well as delivering benefits this change brings to the organization.
Another important aspect is that business analysis takes place in an environment in which the scope of change is still unknown and needs to be defined. Men considers multiple ways to approach/address this change, options are evaluated to finally make a recommendation . The business analysis activities results in clear scoping of change initiative. In this phase the requirements engineering activities help in clarifying the scope.
Selected solutions, that contribute to realisation of a change, need further investigation; for that we use requirements engineering again. Requirements engineering activities focus on a solution and delve into details of what a solution shall do and with what quality. It assures that a selected solution is properly analyzed and defined within the given scope.
We can conclude that requirements engineering and business analysis are interrelated, but they are not the same practice.
Business analysis concentrates on business as a whole. This practice links business change to business objectives and strategy. It defines a business case. It clarifies business processes and how business change impacts them. It discovers business and user requirements providing the scope for a solution to enable change.
Requirements Engineering focuses on a solution. It is used to define functional and non-functional aspects of a solution that fits within the defined scope. Requirements need to be SMART* to enable design activities.
In my view, requirements engineering should be seen as an integral part of business analysis.
*SMART = Specific, Measurable, Achievable, Realistic and Time-bound