Abstract
[Context and Motivation] Requirements engineering (RE) is central to software development. Despite its importance, there are many issues related to its enactment. Question and answer platforms, such as the Stack Exchange, are paramount in contemporary software development. They discuss and bring to light practitioners’ viewpoints on software engineering issues. Approaching those platforms focusing on RE deserves investigation because it can reveal current issues experienced by software practitioners and possible solutions for them. [Question/Problem] This work investigates RE issues, their causes, effects, and possible solutions as discussed by software practitioners in the Software Engineering Stack Exchange (SWESE). For that, we mine, curate, and analyze a set of 61 discussions related to RE, composed of 414 posts and 770 comments extracted from SWESE. [Principal Ideas/Results] We identify 50 issues and their relations with requirements phases. Customers’ unable to describe system requirements and the need for detailed specifications are among the most commonly discussed issues. We also list 20 causes, 23 effects, and 59 solutions for the mined issues. Examples of causes for RE issues are lack of technical knowledge and communication issues. Examples of the effects of RE issues are rework and unstable requirements. Solutions encompass practices such as clearly defining requirements and using prototypes. [Contribution] This work organizes the mined RE issues in a Sankey diagram, relating them to RE phases and solutions, which may assist practitioners experiencing them and serve as guidance for future research.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Nuseibeh, B., Easterbrook, S.: Requirements engineering: a roadmap. In: Conference on the Future of Software Engineering, pp. 35–46, ACM, New York, USA (2000)
Fernández, D.M., et al.: Naming the pain in requirements engineering. Empir. Softw. Eng. 22(5), 2298–2338 (2016). https://doi.org/10.1007/s10664-016-9451-7
Nikula, U., Sajaniemi, J., Kälviäinen, H.: A state-of-the-practice survey on requirements engineering in small-and medium-sized enterprises. Research Report 951-764-431-0, Telecom Business Research Center Lappeenranta (2000)
Solemon, B., Sahibuddin, S., Ghani, A.A.A.: Requirements engineering problems and practices in software companies: an industrial survey. In: Ślęzak, D., Kim, T.-H., Kiumi, A., Jiang, T., Verner, J., Abrahão, S. (eds.) ASEA 2009. CCIS, vol. 59, pp. 70–77. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-10619-4_9
Liu, L., Li, T., Peng, F.: Why requirements engineering fails: a survey report from China. In: 18th IEEE International Requirements Engineering Conference, pp. 317–322 (2010)
Pekar, V., Felderer, M., Breu, R.: Improvement methods for software requirement specifications: a mapping study. In: 9th International Conference on the Quality of Information and Communications Technology, pp. 242–245 (2014)
Rios, N., et al.: Hearing the voice of software practitioners on causes, effects, and practices to deal with documentation debt. In: Madhavji, N., Pasquale, L., Ferrari, A., Gnesi, S. (eds.) REFSQ 2020. LNCS, vol. 12045, pp. 55–70. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-44429-7_4
Barbosa, L., et al.: Organizing the TD management landscape for requirements and requirements documentation debt. In: Workshop on Requirements Engineering (2022)
Bonfim, V.D., Benitti, F.B.V.: Requirements debt: causes, consequences, and mitigating practices. In: International Conference on Software Engineering & Knowledge Engineering, pp. 13–18, Pittsburgh (2022)
Rios, N., Mendonça, M., Spínola, R.: A tertiary study on technical debt: types, management strategies, research trends, and base information for practitioners. Inf. Softw. Technol. 102, 117–145 (2018)
Kamei, F., et al.: Grey literature in software engineering: a critical review. Inf. Softw. Technol. 138, 106609 (2021)
Barua, A., Thomas, S.W., Hassan, A.E.: What are developers talking about? An analysis of topics and trends in stack overflow. Empir. Softw. Eng. 19, 619–654 (2014)
Tahir, A., Dietrich, J., Counsell, S., Licorish, S., Yamashita, A.: A large scale study on how developers discuss code smells and anti-pattern in stack exchange sites. Inf. Softw. Technol. 125, 106333 (2020)
Montandon, J.E., Politowski, C., Silva, L.L., Valente, M.T., Petrillo, F., Guéhéneuc, Y.: What skills do IT companies look for in new developers? A study with stack overflow jobs. Inf. Softw. Technol. 129, 106429 (2021)
Gama, E., Freire, S., Mendonça, M., Spínola, R., Paixao, M., Cortés, M.I.: Using stack overflow to assess technical debt identification on software projects. In: Brazilian Symposium on Software Engineering, pp. 730–739 (2020)
Gomes, F., dos Santos, E.P., Freire, S., Mendonça, M., Mendes, T.S., Spínola, R.: Investigating the point of view of project management practitioners on technical debt. In: IEEE/ACM International Conference on Technical Debt, pp. 31–40 (2022)
dos Santos, E.P., Gomes, F., Freire, S., Mendonça, M., Mendes, T.S., Spínola, R.: Technical debt on agile projects: managers’ point of view at Stack Exchange. In: Brazilian Symposium on Software Quality. ACM, New York (2022)
Vasilescu, B., Serebrenik, A., Devanbu, P., Filkov, V.: How social Q&A sites are changing knowledge sharing in open source software communities. In: 17th Computer Supported Cooperative Work and Social Computing, pp. 342–354 (2014)
Ahmad, A., Feng, C., Ge, S., Yousif, A.: A survey on mining stack overflow: question and answering (Q&A) community. Data Technol. Appl. 52, 190–247 (2018)
Rios, N., Spínola, R.O., Mendonça, M., Seaman, C.: The practitioners’ point of view on the concept of technical debt and its causes and consequences: a design for a global family of industrial surveys and its first results from Brazil. Empir. Softw. Eng. 25(5), 3216–3287 (2020). https://doi.org/10.1007/s10664-020-09832-9
Sengupta, S., Haythornthwaite, C.: Learning with comments: an analysis of comments and community on Stack Overflow. In: Hawaii International Conference on System Sciences, pp. 2898–2907 (2020)
Ahasanuzzaman, M., Asaduzzaman, M., Roy, C.K., Schneider, K.A.: Mining duplicate questions of stack overflow. In: IEEE/ACM Working Conference on Mining Software Repositories, pp. 402–412. IEEE (2016)
Kavaler, D., Posnett, D., Gibler, C., Chen, H., Devanbu, P., Filkov, V.: Using and asking: APIs used in the android market and asked about in Stack Overflow. In: Jatowt, A., et al. (eds.) SocInfo 2013. LNCS, vol. 8238, pp. 405–418. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-03260-3_35
ISO/IEC/IEEE International Standard: Systems and software engineering–life cycle processes–requirements engineering. In: ISO/IEC/IEEE 29148:2018(E), pp. 1–104 (2018)
Freire, S., et al.: Requirements engineering issues experienced by software practitioners: a study on stack exchange-complementary material. Zenodo (2023). https://doi.org/10.5281/zenodo.7647916
Lupton, R.C., Allwood, J.M.: Hybrid Sankey diagrams: visual analysis of multidimensional data for understanding resource use. Resour. Conserv. Recycl. 124, 141–151 (2017)
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A.: Experimentation in Software Engineering. Springer, Cham (2012). https://doi.org/10.1007/978-3-642-29044-2
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Freire, S. et al. (2023). Requirements Engineering Issues Experienced by Software Practitioners: A Study on Stack Exchange. In: Ferrari, A., Penzenstadler, B. (eds) Requirements Engineering: Foundation for Software Quality. REFSQ 2023. Lecture Notes in Computer Science, vol 13975. Springer, Cham. https://doi.org/10.1007/978-3-031-29786-1_1
Download citation
DOI: https://doi.org/10.1007/978-3-031-29786-1_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-29785-4
Online ISBN: 978-3-031-29786-1
eBook Packages: Computer ScienceComputer Science (R0)