Skip to main content

Characterizing Requirements Smells

  • Conference paper
  • First Online:
Product-Focused Software Process Improvement (PROFES 2023)

Abstract

Context: Software specifications are usually written in natural language and may suffer from imprecision, ambiguity, and other quality issues, called thereafter, requirement smells. Requirement smells can hinder the development of a project in many aspects, such as delays, reworks, and low customer satisfaction. From an industrial perspective, we want to focus our time and effort on identifying and preventing the requirement smells that are of high interest. Aim: This paper aims to characterise 12 requirements smells in terms of frequency, severity, and effects. Method: We interviewed ten experienced practitioners from different divisions of a large international company in the safety-critical domain called MBDA Italy Spa. Results: Our interview shows that the smell types perceived as most severe are Ambiguity and Verifiability, while as most frequent are Ambiguity and Complexity. We also provide a set of six lessons learnt about requirements smells, such as that effects of smells are expected to differ across smell types. Conclusions: Our results help to increase awareness about the importance of requirement smells. Our results pave the way for future empirical investigations, ranging from a survey confirming our findings to controlled experiments measuring the effect size of specific requirement smells.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Ahonen, J.J., Savolainen, P.: Software engineering projects may fail before they are started: post-mortem analysis of five cancelled projects. J. Syst. Softw. 83(11), 2175–2187 (2010)

    Article  Google Scholar 

  2. Boehm, B.W.: Software engineering economics. IEEE Trans. Softw. Eng. 10(1), 4–21 (1984). https://doi.org/10.1109/TSE.1984.5010193

    Article  Google Scholar 

  3. Davis, A.M.: Software Requirements - Analysis and Specification. Prentice Hall, Upper Saddle River (1990). ISBN 978-0-13-824673-0

    Google Scholar 

  4. Davis, A.M., Tubío, Ó.D., Hickey, A.M., Juzgado, N.J., Moreno, A.M.: Effectiveness of requirements elicitation techniques: empirical results derived from a systematic review. In: 14th IEEE International Conference on Requirements Engineering (RE 2006), Minneapolis/St.Paul, Minnesota, USA, 11–15 September 2006, pp. 176–185. IEEE Computer Society (2006). https://doi.org/10.1109/RE.2006.17

  5. Dick, J., Hull, E., Jackson, K.: Requirements Engineering, 4th edn. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-61073-3. ISBN 978-3-319-61072-6

  6. Falessi, D., Cantone, G., Kazman, R., Kruchten, P.: Decision-making techniques for software architecture design: a comparative survey. ACM Comput. Surv. 43(4):33:1–33:28 (2011). https://doi.org/10.1145/1978802.1978812

  7. Femmer, H., Fernández, D.M., Wagner, S., Eder, S.: Rapid quality assurance with requirements smells. CoRR, abs/1611.08847 (2016). http://arxiv.org/abs/1611.08847

  8. Fernández, D.M., et al.: Naming the pain in requirements engineering - contemporary problems, causes, and effects in practice. Empir. Softw. Eng. 22(5), 2298–2338 (2017). https://doi.org/10.1007/s10664-016-9451-7

    Article  Google Scholar 

  9. Ferrari, A., et al.: Detecting requirements defects with NLP patterns: an industrial experience in the railway domain. Empir. Softw. Eng. 23(6), 3684–3733 (2018). https://doi.org/10.1007/s10664-018-9596-7

    Article  Google Scholar 

  10. Elizabeth, M., Hull, C., Jackson, K., Dick, J. (eds.): Requirements Engineering, 3rd edn. Springer, Heidelberg (2011). ISBN 978-1-8499-6404-3. https://doi.org/10.1007/978-1-84996-405-0

  11. IEC ISO. Ieee. 29148: 2011-systems and software engineering-requirements engineering. Technical report, Technical report (2011)

    Google Scholar 

  12. Kassab, M., Neill, C., Laplante, P.: State of practice in requirements engineering: contemporary data. Innov. Syst. Softw. Eng. 10, 235–241 (2014)

    Article  Google Scholar 

  13. Kretsou, M., Arvanitou, E.-M., Ampatzoglou, A., Deligiannis, I.S., Gerogiannis, V.C.: Change impact analysis: a systematic mapping study. J. Syst. Softw. 174, 110892 (2021). https://doi.org/10.1016/j.jss.2020.110892

    Article  Google Scholar 

  14. Kruchten, P.: What do software architects really do? J. Syst. Softw. 81(12), 2413–2416 (2008). https://doi.org/10.1016/j.jss.2008.08.025

    Article  Google Scholar 

  15. Laplante, P.A., et al.: Real-Time Systems Design and Analysis. Wiley, New York (2004)

    Book  Google Scholar 

  16. Mavin, A., Wilkinson, P.: Big ears (the return of “easy approach to requirements engineering”). In: 2010 18th IEEE International Requirements Engineering Conference, pp. 277–282. IEEE (2010)

    Google Scholar 

  17. Mencl, V.: Deriving behavior specifications from textual use cases. Citeseer (2004)

    Google Scholar 

  18. Montgomery, L., Fucci, D., Bouraffa, A., Scholz, L., Maalej, W.: Empirical research on requirements quality: a systematic mapping study. In: Engels, G., Hebig, R., Tichy, M. (eds.) Software Engineering 2023, Fachtagung des GI-Fachbereichs Softwaretechnik, 20–24 February 2023, Paderborn, vol. P-332 of LNI, pp. 91–92. Gesellschaft für Informatik e.V. (2023). https://dl.gi.de/20.500.12116/40098

  19. Pohl, K.: Requirements Engineering - Fundamentals, Principles, and Techniques. Springer, Heidelberg (2010). ISBN 978-3-642-12577-5. http://www.springer.com/computer/swe/book/978-3-642-12577-5?changeHeader

  20. Robertson, S., Robertson, J.: Mastering the Requirements Process: Getting Requirements Right. Addison-wesley, Boston (2012)

    Google Scholar 

  21. Robson, C.: Real world research blackwell. 2\(^{\underline{o}}\) edição (2002)

    Google Scholar 

  22. Seki, Y., Hayashi, S., Saeki, M.: Detecting bad smells in use case descriptions. In: Damian, D.E., Perini, A., Lee, S.W. (eds.) 27th IEEE International Requirements Engineering Conference, RE 2019, Jeju Island, Korea (South), 23–27 September 2019, pap. 98–108. IEEE (2019). https://doi.org/10.1109/RE.2019.00021

  23. Sjøberg, D.I.K., Yamashita, A.F., Anda, B.C.D., Mockus, A., Dybå, T.: Quantifying the effect of code smells on maintenance effort. IEEE Trans. Softw. Eng. 39(8), 1144–1156 (2013). https://doi.org/10.1109/TSE.2012.89

    Article  Google Scholar 

  24. Solemon, B., Sahibuddin, S., Ghani, A.A.A.: Requirements engineering problems and practices in software companies: an industrial survey. In: Slezak, D., Kim, T., Kiumi, A., Jiang, T., Verner, J., Abrahao, S. (eds.) ASEA 2009. CCIS, vol. 59, pp. 70–77. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-10619-4_9

  25. Sommerville, I., Sawyer, P.: Requirements Engineering: A Good Practice Guide. John Wiley & Sons Inc., Hoboken (1997)

    MATH  Google Scholar 

  26. Subramaniam, K., Liu, D., Far, B.H., Eberlein, A.: UCDA: use case driven development assistant tool for class model generation. In: Maurer, F., Ruhe, G. (eds.) Proceedings of the Sixteenth International Conference on Software Engineering & Knowledge Engineering (SEKE 2004), Banff, Alberta, Canada, 20–24 June 2004, pp. 324–329 (2004)

    Google Scholar 

  27. Veizaga, A., Alférez, M., Torre, D., Sabetzadeh, M., Briand, L.C.: On systematically building a controlled natural language for functional requirements. Empir. Softw. Eng. 26(4), 79 (2021). https://doi.org/10.1007/s10664-021-09956-6

  28. Veizaga, A., Shin, S.Y., Briand, L.C.: Automated smell detection and recommendation in natural language requirements. CoRR, abs/2305.07097 (2023). https://doi.org/10.48550/arXiv.2305.07097

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Emanuele Gentili .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Gentili, E., Falessi, D. (2024). Characterizing Requirements Smells. In: Kadgien, R., Jedlitschka, A., Janes, A., Lenarduzzi, V., Li, X. (eds) Product-Focused Software Process Improvement. PROFES 2023. Lecture Notes in Computer Science, vol 14483. Springer, Cham. https://doi.org/10.1007/978-3-031-49266-2_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-49266-2_27

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-49265-5

  • Online ISBN: 978-3-031-49266-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics