There is sometimes a tendency in the software domain to display laxity as far as understanding customer requirements and instead focus more on the technology and solution development. This lack of alignment between customer perspective and developer perspective often leads to unclear or misunderstood requirements, to inappropriate design, and/or to false assumptions and expectations by the customer when the final product is delivered.
So, what can be done to increase the probability of success of a software project? A Standish Group Survey indicated that there are three critical parameters that contribute toward enhancing the probability of success of a project. They are:
- User involvement
- Executive management support
- Clear statement of requirements
There are other success criteria, but with these parameters in place, the odds for achieving success are greatly enhanced – and without them, the probability of failure increases dramatically.
Factors That Challenge a Project
The survey also indicated that among the key factors that challenge projects are:
- Lack of user input
- Incomplete requirements and specifications
- Changing requirements and specifications
To understand the importance of user involvement and clarity in requirements as necessary parameters for a projects success, consider a case study in which a simple LURE (listen, understand, rationalize, evolve) model with a COPIS (customer, output, process, input, supplier) perspective was used to lay the foundation for project success.
Previous improvement projects did not involve the key business users, upstream system stakeholders and the development team in the user requirements discussions. That obviously had an impact on the feasibility, clarity and finally on the capability of the system that was delivered to the business users.
COPIS Seemed an Obvious Choice
The project manager and Six Sigma Black Belt in the organization was tempted to unleash the inventory of tools to give a better customer experience in user requirement management. However, the user requirement meetings run very short, typically just two to three hours. So a tool was needed which could impress all the stakeholders involved, without adding complexity to the discussions. The stakeholders should be able to bring their perspective very quickly using the tool. Keeping such a requirement in mind, COPIS was the obvious choice which seemed to fit well into this situation.
Figure 2 illustrates the difference in perspective between the business customers and the software development team. The COPIS model helps the stakeholders gain the same perspective and thereby bringing alignment and clarity to the requirement discussions.
So, the advantage of involving the technical team in the discussions was obvious. Upfront, they provided the technical viewpoint along with the feasibility, risks and challenges to the users. The key technical team also gained an end-to-end view of the system and clarity on what the system was expected to deliver. This reduced the necessity, time and effort in playing back the user’s requirements and expectations to the technical teams.
Understanding Customer Requirements
The following approach was taken after agreement with the business and the information technology team:
- Outline key project objectives and goals for the workgroup meeting which involved all the key stakeholders – done by the change management leader.
- Explain the COPIS model and how it can help manage the user requirement gathering and subsequent development.
- Discuss the requirements from the COPIS model perspective and help the stakeholders to visualize the key dependencies and risks with respect to the inputs from the suppliers (upstream systems, users), the process to be followed and the expected output to the customers. Three such sessions were conducted and all the stakeholders agreed to baseline the key inputs, the processes and the outputs.
- Final outcome of the workgroup meetings related to the user requirements document were structured in the form of COPIS model by the change management leader and the technical team.
Benefits from the LURE-COPIS Model
The following benefits were realized by using the LURE-COPIS model:
- The LURE-COPIS model not only helped to improve the clarity in the user requirements but also improved the clarity of the development team and the upstream stakeholders on the risks and dependencies and assumptions with respect to the project development.
- The development team used the same COPIS model to assess the new components that needed to be build and their interdependencies with risk/priority ranking. This approach simplified the task of estimating the development time of the various components and the key deliverables that were to be expected from the project.
- The development team was able to map to the COPIS model to generate the detailed test cases and scenarios for complete testing of the system.
- The COPIS model gave one version of truth for all development activities to all the stakeholders involved, and also greatly optimized the user’s time and the developer’s time right from user requirements gathering to high- and low-level design of the system.
- A lot of probable rework was eliminated with this approach, leading to quicker design, construction and testing. The approach helped to bring in consistency in tracking, monitoring and reporting of the project status.
- Unlike capturing the requirements in word documents, using the COPIS model for individual functionality in single worksheets brought comfort to the development team while managing their own tasks. There was a sizeable reduction in the volume of documents.
Conclusion: A Shared Perspective
Above all, the LURE-COPIS model helped the project managers and stakeholders on both sides to clearly visualize and gauge the breadth and depth of the requirements along with the risks and dependencies and the key drivers and challenges for the project success.