Ambiguous Language Flaw Type
Written February 8, 2023 by Emma MaddockAmbiguous language, such as words and sentences that can be interpreted in more than one way, often gets in the way of processes like software development being effective [1].
A good requirement follows the INVEST principle, which describes a set of criteria against which a requirement is evaluated to determine its quality [2]. Specifically, ambiguous language works against the “E” in INVEST, which stands for Estimable.
When a requirement is unclear or non-specific, it affects each team member's ability to accurately estimate the scope of the work that needs to be done. When everyone isn't immediately on the same page about what the requirement means, it can cause delays. This can be due to confusion on how to proceed, or an assumption that was made that caused work to be done in the wrong direction.
Some examples of ambiguous language that Requiremint will highlight are:
- The website should be quick;
- The accessibility of the website should be better;
- The website should be easy to use.
Since these words can mean something different to each team member, it's a good idea to replace them with clear and quantifiable language such as (using the above examples):
- The website should render in less than 200ms;
- The accessibility of the website should pass the WCGA colour blind test;
- The website should be accomplished in 4 clicks or less.
These requirements, which now use unambiguous language, communicate a clear scope of work, ensuring that the outcomes are aligned for the whole team and the stakeholders. We can now more accurately estimate the effort required to complete the task, and in doing so we can eliminate delays caused by miscommunication and assumptions.
References
[1] L. Mich, “Ambiguity identification and resolution in software development: a linguistic approach to improving the quality of systems,” Florence, Italy, Nov. 2001. Accessed: Feb. 08, 2023. [Online]. Available: https://www.researchgate.net/publication/260747794_Ambiguity_identification_and_resolution_in_software_development_a_linguistic_approach_to_improving_the_quality_of_systems
[2] “What does INVEST stand for?,” Agile Alliance, 26-Jul-2021. [Online]. Available: https://www.agilealliance.org/glossary/invest/. [Accessed: 08-Feb-2023].