The only things certain in this world are death, taxes, and missed requirements. In this episode, we discuss the causes of missed requirements and what you can do to minimize the number and impact of missing requirements.
A Lightning Cast is a shorter form episode modeled after lightning talks. You’ll get valuable content in 8 minutes or less.
To paraphrase Benjamin Franklin, in this world nothing can be said to be certain, except death and taxes and missed requirements.
According to research from the Standish Group, only about 26% of projects are considered to be successful in terms of being on time, on budget, and on target. A further 53% were considered challenged in one or more of these areas.
The top reasons why there projects are challenged or fail include incomplete or changing requirements, unclear objectives, and lack of user input. These issues make up 42% of the causes of project problems and all mean missed requirements.
The impact of missed requirements is far reaching and can include poor customer satisfaction, increased cost, and delivery delays.
Why We Miss Requirements
Why do we have missed requirements? We have stakeholders sign off on the requirements, but that leads to a false sense of security.
We live in a VUCA world; that is, a world full of volatility, uncertainty, complexity, and ambiguity. Things are changing more rapidly than ever and market conditions can change daily. If we’re trying to elicit all of the requirements up front, we’ve likely to miss something because of that volatility and complexity.
Clarity of vision or scope is also an issue on many projects. We’re often given a solution to implement without understanding what problem we’re trying to solve. This leads to misunderstandings and a failure to satisfy the customer.
We also need to realize that the written word is a terrible way to create a shared understanding. If we document requirements and then throw them over the wall to another team to implement, that opens the requirements up to misinterpretation.
Another common problem is missing stakeholders. If we don’t have the right stakeholders or if they can’t dedicate sufficient time, we will likely miss some of the required functionality of the solution.
What to Do About Missing Requirements
Agile addresses some of these concerns and research shows that using an Agile approach can lead to better results. For Agile projects, 42% were considered successful compared to 26% with traditional approaches. Only about 8% of Agile projects failed compared to 21% for waterfall.
Even though Agile projects have better success rates, there’s still plenty of room for improvement. 42% still means that over half of projects are challenged or fail.
We need to change the way we approach projects. We need to take more of a scientific approach rather than trying to follow a recipe.
Here are some things you can do to take a scientific approach to developing the right solution.
Smaller is better: Slice your project into smaller chunks. The smaller chunks reduce risk and lessen both the likelihood and impact of missing requirements.
Progressive elaboration & fast feedback: Instead of developing all of your requirements upfront, identify the highest priority items and define those in detail. Then take on the next highest priorities. Get frequent feedback as you progressively elaborate and adapt along the way.
Use hypothesis driven development: Treat your requirements as hypotheses and create fast experiments to validate or invalidate your hypothesis.
Use metrics: Define metrics that will tell you if you’ve achieved the right outcome. Using outcome based metrics will often tell you if you’ve missed something.
Prototype: Use prototypes, proofs of concept, and related approaches to validate your thinking.
Peer reviews: Using peer reviews can help you catch missing requirements and improve the quality.
Ask better questions: Approach projects with curiosity. Ask questions such as: What problem are we trying to solve? How can we prove that that’s the right course of action? Walk me through how you envision the process working.
Create a Shared Understanding
Developing a common understanding between the team members and stakeholders can also help you uncover missing requirements.
Use an approach such as specifications by example. With this collaborative approach, you use realistic examples to discover and define requirements.
Diagrams and visual models also help everyone to get on the same page and understand the proposed solution.
Finally, frequent demonstrations of working software will allow you to get valuable feedback and help you discover things you may have missed.
Listen to the full episode for more ways to reduce missing requirements and their impact.
Thank you for listening to the program
To get more valuable content to enhance your skills and advance your career, you can subscribe on iTunes and other podcatchers.
Also, reviews on iTunes are highly appreciated! I read each review and it helps keep me motivated to continue to bring you valuable content each week.