Business requirements are issues or opportunities that allow the company to generate revenue by implementing the project. Project design requirements are functional and user requirements for the project. Business requirements are based on customer needs whereas design requirements are based on technical and other considerations.
To illustrate, a business requirement could be “reducing the time by customer service help desk executives taken to search for customer database to five seconds” whereas design requirements could be “having a highly visible red button for search”
The contention between business requirements and design requirements, or what constitutes project business requirements and what constitutes project design requirements are blurred. The confusion stems from the fact that very often a single requirement is open to interpretation as both business requirement and design requirement.
Distinguishing between business requirements and design requirements is important, for business requirements are sacrosanct whereas the project design team have the freedom to decide on design requirements that best suits convenience or ensures process efficiency. One good way of identification is to consider that project design requirements generally stem from the project business requirements.
For instance, a requirement to use Java over .NET when developing a software application is apparently a design requirement, but could also pass as a business requirement if the organization had trouble managing different JRE versions in client desktops, and the very purpose of developing the application is to resolve this issue. If Java vs. .NET is a design requirement, the design team has the liberty of selecting the program based on various considerations, but since Java is a business requirement, this remains fixed and the design team has to design the project based on Java.
The correct identification of business requirement and design requirement takes place during the requirements analysis stage, which involves analyzing and reconciling the needs and requirements of various stakeholders into the project design.
The first step is to define the problem that the project seeks to resolve, and this is business requirements. The design team next devises way to best implement the project, and such specifications become design requirements.
To illustrate, in a project with the business requirement to reduce the time customer service help desk executives take to locate client database, the design team identified lack of multi-search options in the database as the major constraint, and tries to design a software code that allows for faster and convenient search. The methodologies to do so, such as the programming language used, the user interface design, the various additional search options provided and other features all become design requirements.
In large organization and large projects, the business analyst lists the functional specification document that lists out the business requirements and the programmer or project leader writes down the design requirement that incorporates technical details. In small to medium projects, the project manager undertakes both these activities.
The battle between business and design requirements becomes a contentious issue when the project owners or the stakeholders primarily care about fulfilling their objectives oblivious to other consequences, and when developers focus primarily over executing the project quickly and efficiently, giving secondary importance to the actual purpose of the project. Success of the project depends on reconciling these two factors.
Another vexatious issue is changes made to business requirements midway, which may require major changes to design requirements. Good project design allows reversibility or process backtracking to incorporate such changes.
- Tyner Blain. “Requirements vs Design – Which is Which and Why?”https://tynerblain.com/blog/2006/02/11/requirements-vs-design-which-is-which-and-why/. Retrieved April 21, 2011.
- IBM. Integratinbg Business Requirements and Artifacts with Rational Software Architect.” Retrieved from https://publib.boulder.ibm.com/infocenter/rsahelp/v8/index.jsp?topic=/com.ibm.xtools.rrc.doc/topics/c_integ_rrc.html on April 21, 2011.
Image Credit: flickr.com/Elise