Where do you get the requirements that make up your backlog? There are two classic macro strategies that project teams follow to gather requirements and create a backlog. Where a backlog of requirements comes from and who was involved in the process has implications that can influence the whole life cycle of a project by setting expectations and identifying behavioral norms for the entire project.
The first macro category represents scenarios in which requirements are provided to the project team either fully or partially formed. This is very common for projects that are outsourced or in organizations where a significant barrier has been erected between corporate IT and the business. The business decides what it wants and then negotiates to obtain what they are asking for. In order for this scenario to work effectively, business departments hire business analysts (BA), create shadow IT teams or leverage super users to act as liaisons to IT. The BAs, or proxy BAs, gather and document the businesses requirements, and then during the project execution, they interpret those requirements. This type of behavior reinforces a barrier between the business and the team doing the work.
One of major problems this arm’s length process of gathering of requirements generates is an anchor bias in which the business’ expectations get set before they know what is possible. The backlog becomes the baseline against which project success will be measured. Change and evolution become more difficult because changes would be perceived as renegotiating success. Applying the Agile principal of embracing change and working with the business on a continual bias become significantly more difficult when the business has become anchored to the picture the initial requirements generates. This anchor becomes even stickier when those requirements are codified in a contract or as success criteria in a charter (a weak form of a contract).
Another behavior that falls into this category is that the BA becomes a proxy for the product owner. Proxy product owners don’t have the decision making power to change or evolve the backlog, so they tend to defend the status quo. A better solution is to incorporate the BA into the project team with a true product owner.
In the second macro category the whole team, or at least a cross-functional portion of the team, gathers the requirements. In an Agile project, the requirements are used to generate an initial backlog. Incorporating the requirements into backlog is an explicit recognition that the project will allow the requirements to evolve. Involvement of a cross-functional team will produce better requirements earlier, while incorporating Agile principles and backlog concepts help parties stay less anchored to the initial requirements given the flexibility inherent unthreatening techniques. Removing or diluting the initial anchor makes it easier for the product owner to identify and incorporate the concept of a minimum viable product into release planning. Without the anchor the project will not be perceived as all or nothing because the backlog can be re-prioritized or changed if needed.
The cross functional approach to developing requirements that includes business, BA, development and testing capabilities build bridges between IT and the business. These bridges make it less likely that the BA will have play the role of proxy product owner, because business personnel have more exposure to the project environment, making it less foreign and frightening.
How the initial set of requirements defined and who participated in the process can have a huge impact on the trajectory of a project. Whether organizations perceive IT as a partner or as a vendor will influence which requirements strategy will be most attractive, as will how dynamic the organization perceives the business environment. Partnership and dynamic environments tend more towards scenario two. In the long run, all projects have to have a set of requirements. How we organize them will affect the how, who and when of gathering requirements.