Business Requirements – This comprises the business objectives, how they are currently executed and what you want the system to accomplish in the future (creating the “As Is” and “Future” states).
User Requirements – The functional and technical requirements that employees utilize when using company systems to complete their job on a daily basis.
System Requirements – This represents the system integrations, inputs and outputs to existing systems and what requirements are needed currently, in the future and integrations between systems. Deeper investigation into this process reveals the interoperability requirements for systems all system to communicate properly.
Wants & Needs – This represents the operations and tasks and workflows in terms of features/functions that the organization requires. Wants are desired features/functions that do not currently exist but that employees would like.
As Is – This represents the current state of operations and practices used by the business and workers to support the business today.
Future – Refers to possible functionality that may be required to facilitate growth, adapt to changing business models and agility for data and portability purposes to enable different deployment models.
Prioritization – There are three dimensions as to how to prioritize an operation or feature/function. The first dimension is to rank and rate a specific feature/function with respect to another, the second dimension is its priority in supporting the business. The third dimension is the overall importance of where this fits organizationally. When prioritizing criteria, using this approach will provide perspective as to the actual want versus need debate.
Task – An individual component defined as any piece of work.
Process – A series of tasks that comprise a particular outcome.
Workflow – A series of processes that comprise a definable end.
Putting together your software requirements document
Combining all the above components will create a solid framework to compose your BRG document. A best practice approach is to understand how each task creates a process, then where it fits into the workflow organizationally. All the while considering the priority of business function as to how important it is to support the business. Inclusion of business functions, user requirements needed to execute processes and workflows on a daily basis, how the system is used in terms of inputs, outputs and data usage are all components that need to be considered when creating the BRG spec.
Dissecting each business function to be addressed by a potential software solution
A manageable approach is to dissect each business function, document it both functionally and technically starting from a high level, then working through the details of the process, then once the workflow is created, prioritize the importance of that operation. It is imperative that all processes be documented fully including the exceptions. The BRG document includes practices carried out within the course of business that may not be executed daily but once in a while, such as closing the books at the end of period or a returns (reverse logistics) process etc. Adding the exceptions to current “As Is” processes also assists in defining the “future” state as the new system should be able to satisfy the need as it is required to support the business.
Then to complete the document try to project what features/functions may be required should your business change, grow and adapt to changing customer needs and business practices. This last step will create the “Future” state of the BRG document.
Using the BRG techniques listed above will provide an approach to gathering the information, then combining the BRG Methodology Framework provides the know-how as to a proper and complete functional and technical SOP document.
Business intelligence requirements example
The following two examples apply to gathering requirements for a BI system or ERP system. Note the top business process, the tasks and criterion within the process and how it applies to the overall workflow. Criterion are individual short sentences that define needs and wants.