The Challenges of Requirements Engineering in the Development of Smart City Software Using Agile Methodologies: A Systematic Literature Review
Subject Areas : Information Technology in Engineering Design (ITED) Journalhoubakht Attaran 1 , Esmaeil Kheirkhah 2 , hassan shakeri 3
1 - Department of Computer Engineering, Mashhad branch, Islamic Azad University, Mashhad, Irann
2 - Department of Computer Engineering, Mashhad branch, Islamic Azad University, Mashhad, Iran
3 - Department of computerEngineering, MashhadBranch,,Islamic Azad University,Mashhad Iran
Keywords: Requirements Engineering, Software Development, Smart City, Agile Methodologies,
Abstract :
The software requirement engineering processes of smart city software enable software designers to identify changes in customer software requirements. However, challenges exist with regard to the requirement engineering processes of smart cities, which hinder the rapid and sustainable development of software. Research addressing these challenges and existing solutions is widespread, diverse, and extensive. In this study, we utilize a systematic literature review accompanied by thematic categorization and gap analysis to examine existing solutions to the challenges. Typology categorization of the challenges facing the development of smart city software, particularly in requirement engineering, and the approach of solutions to these challenges are presented. Our study covers the period from 2009 to 2023. We searched Scopus and Web of Science as the largest databases for reputable academic publications. A total of 80 credible articles were selected and reviewed using predefined criteria for exclusion. Following the review of challenges and solutions, deficiencies and shortcomings are evaluated, and a framework is proposed to facilitate requirement engineering for smart cities with a harmonized approach. This study contributes to the theoretical boundary of software requirement engineering approaches for smart cities and their extraction for operationalization.
1. Houbakht Attaran, , Nahid Kheibari, and Davoud Bahrepour. "Toward integrated smart city: a new model for implementation and design challenges." GeoJournal (2022): 1-16.
2. هوبخت عطاران، اسماعیل خیرخواه. "بررسی متدولوژی¬های تولید نرم¬افزار برای مهندسی نیازمندی¬ها در پروژه¬های بزرگ"، پانزدهمین کنفرانس بین-المللی ساستک، موسسه آموزش عالی خاوران، 1401
3. Luong, T.T.; Sivarajah, U.; Weerakkody, V. Do agile managed information systems projects fail due to a lack of emotional intelligence? Inf. Syst. Front. 2021, 23, 415–433.
4. Xu, Y.; Koivumäki, T. Digital business model effectuation: An agile approach. Comput. Hum. Behav. 2019, 95, 307–314.
5. Janssen, M.; van der Voort, H. Agile and adaptive governance in crisis response: Lessons from the COVID-19 pandemic. Int. J. Inf. Manag. 2020, 55, 102180.
6. Torrecilla-Salinas, C.J.; Sedeño, J.; Escalona, M.J.; Mejías, M. Estimating, planning and managing agile web development projects under a value-based perspective. Inf. Softw. Technol. 2015, 61, 124–144.
7. Manifesto for Agile Software Development. Available online: http://agilemanifesto.org/
8. Alsaqaf, W.; Daneva, M.; Wieringa, R. Agile quality requirements engineering challenges: First results from a case study. In Proceedings of the IEEE International Symposium on Empirical Software Engineering and Measurement, Toronto, ON, Canada, 9–10 November 2017; pp. 454–459.
9. Mersino, A. Agile Project Success Rates Are 2X Higher than Traditional Projects. Available online: https://vitalitychicago.com/blog/agile-projects-are-more-successful-traditional-projects/ (accessed on 14 April 2023).
10. Rehman, A.U.; Nawaz, A.; Ali, M.T.; Abbas, M. A Comparative Study of Agile Methods, Testing Challenges, Solutions & Tool Support. In Proceedings of the 14th International Conference on Open Source Systems and Technologies (ICOSST), Lahore, Pakistan, 16–17 December 2020; pp. 1–5.
11. Govil, N.; Sharma, A. Information extraction on requirements prioritization approaches in agile software development processes. In Proceedings of the 5th International Conference on Computing Methodologies and Communication, Erode, India,8–10 April 2021; pp. 1097–1100.
12. Ramesh, B.; Cao, L.; Baskerville, R. Agile requirements engineering practices and challenges: An empirical study. Inf. Syst. 2010,20, 449–480.
13. Razali, R.; Anwar, F.; Rahman, M.A.; Ismail, F.F. Mixed Methods Research: Insights from Requirements Engineering. J. Bus. Res. 2016, 14, 125–134. Available online: https://academicpublishing.org/index.php/ejbrm/article/view/1347
14. Jarz˛ebowicz, A.;Weichbroth, P. A qualitative study on non-functional requirements in agile software development. IEEE Access 2021, 9, 40458–40475.
15. Bjarnason, E.; Unterkalmsteiner, M.; Borg, M.; Engström, E. A multi-case study of agile requirements engineering and the use of test cases as requirements. Inf. Softw. Technol. 2016, 77, 61–79.
16. Neto, F.G.D.O.; Horkoff, J.; Knauss, E.; Kasauli, R.; Liebel, G. Challenges of Aligning Requirements Engineering and System Testing in Large-Scale Agile: A Multiple Case Study. In Proceedings of the IEEE 25th International Requirements Engineering Conference Workshops, Lisbon, Portugal, 4–8 September 2017; pp. 315–322.
17. Hoy, Z. Requirements engineering for agile teams and startups: A challenge-solution gap analysis from a systematic literature review. In Software Engineering Practices for Start-Ups; CRC Press (Taylor & Francis): Boca Raton, FL, USA, 2023.
18. Webster, J.; Watson, R.T. Analyzing the Past to Prepare for the Future: Writing a Literature Review. MIS Q. 2002, 26, xiii–xxiii. Available online: https://www.jstor.org/stable/4132319
19. Karhapää, P.; Behutiye, W.; Rodríguez, P.; Oivo, M.; Costal, D.; Franch, X.; Aaramaa, S.; Chora´s, M.; Partanen, J.; Adherve, A. Strategies to manage quality requirements in agile software development: A multiple case study. Empir. Softw. Eng. 2021.
20. Dybå, T.; Dingsøyr, T. Empirical studies of agile software development: A systematic review. Inf. Softw. Technol. 2008, 50, 833–859. Information 2023.
21. Page, M.J.; McKenzie, J.E.; Bossuyt, P.M.; Boutron, I.; Hoffmann, T.C.; Mulrow, C.D.; Shamseer, L.; Tetzlaff, J.M.; Akl, E.A.; Brennan, S.E.; et al. The PRISMA 2020 statement: An updated guideline for reporting systematic reviews. BMJ 2021.
22. Alam, S.; Shah, S.A.A.; Bhatti, S.N.; Jadi, A.M. Impact and Challenges of Requirements Engineering in Agile Methodologies: A Systematic Review. Int. J. Adv. Comput. Sci. Appl. 2017.
23. Curcio, K.; Navarro, T.; Malucelli, A.; Reinehr, S. Requirements engineering: A systematic mapping study in agile software development. J. Syst. Softw. 2018.
24. Elghariani, K.; Kama, N. Review on Agile requirements engineering challenges. In Proceedings of the 3rd International Conference on Computer and Information Sciences, Kuala Lumpur, Malaysia, 15–17 August 2016.
25. Inayat, I.; Salim, S.S.; Marczak, S.; Daneva, M.; Shamshirband, S. A systematic literature review on agile requirements engineering practices and challenges. Comput. Hum. Behav. 2015.
26. Okesola, J.; Adebiyi, M.; Okokpujie, K.; Odepitan, D.; Goddy-Worlu, R.; Iheanetu, O.; Omogbadegun, Z.; Adebiyi, A. A Systematic Review of Requirement Engineering Practices in Agile Model. Int. J. Mech. Eng. 2019, 10, 671–687. Available online: http://eprints.lmu.edu.ng/3119/1/Agile%20model_Okesola%20IJMET.pdf
27. Muhammad, A.; Siddique, A.; Mubasher, M.; Aldweesh, A.; Naveed, Q.N. Prioritizing Non-Functional Requirements in Agile Process Using Multi Criteria Decision Making Analysis. IEEE Access 2023.
28. Harvie, D.P.; Agah, A. Targeted Scrum: Applying Mission Command to Agile Software Development. IEEE Trans. Softw. 2016.
29. Alsaqaf,W.; Daneva, M.;Wieringa, R. Quality requirements challenges in the context of large-scale distributed agile: An empirical study. Inf. Soft. Technol. 2019.
30. Hess, A.; Diebold, P.; Seyff, N. Understanding information needs of agile teams to improve requirements communication. J. Ind. Inf. Integr. 2019.
31. Firdaus, A.; Ghani, I.; Abg Jawawi, D.N.;Wan Kadir,W.M.N. Non functional requirements (NFRs) traceability metamodel for agile development. J. Teknol. 2015.
32. Alrezaamiri, H.; Ebrahimnejad, A.; Motameni, H. Software requirement optimization using a fuzzy artificial chemical reaction optimization algorithm. Soft Comput. 2019.
33. Drury-Grogan, M.L.; Conboy, K.; Acton, T. Examining decision characteristics & challenges for agile software development. J. Syst. Softw. 2017.
34. Borrego, G.; Morán, A.L.; Palacio, R.R.; Vizcaíno, A.; García, F.O. Towards a reduction in architectural knowledge vaporization during agile global software development. Inf. Softw. Technol. 2019.
35. Martínez-García, J.R.; Castillo-Barrera, F.-E.; Palacio, R.R.; Borrego, G.; Cuevas-Tello, J.C. Ontology for knowledge condensation to support expertise location in the code phase during software development process. IET Softw. 2020.
36. Heikkilä, V.T.; Paasivaara, M.; Lasssenius, C.; Damian, D.; Engblom, C. Managing the requirements flow from strategy to release in large-scale agile development: A case study at Ericsson. Empir. Softw. Eng. 2017.
37. Rojas, L.A.; Macías, J.A. Toward collisions produced in requirements ranking: A qualitative approach and experimental study. J. Syst. Softw. 2019.
38. Mishra, D.; Mishra, A. Complex software project development: Agile methods adoption. J. Softw. Maint. 2011.
39. Behutiye,W.; Rodriguez, P.; Oivo, M. Quality Requirement Documentation Guidelines for Agile Software Development. IEEE Access 2022.
40. Wagner, S.; Fernández, D.M.; Kalinowski, M.; Felderer, M. Agile Requirements Engineering in Practice: Status Quo and Critical Problems. CLEI Electron. J. 2018.
41. Al-Ta’ani, R.H.; Razali, R. Process Model for Systematic Requirements Prioritisation Process in an Agile Software Development Environment Based on 5S Approach: Empirical Study. J. Theor. Appl. Inf. Technol. 2017.
42. Martins, H.F.; de Oliveira, A.C.; Canedo, E.D.; Kosloski, R.A.D.; Paldês, R.A.; Oliveira, E.C. Design thinking: Challenges for software requirements elicitation. Information 2019, 10.
43. Mathrani, A.; Wickramasinghe, S.; Jayamaha, N.P. An evaluation of documentation requirements for ISO 9001 compliance in scrum projects. TQM J. 2022.
44. Madampe, K.; Hoda, R.; Grundy, J.A. Faceted Taxonomy of Requirements Changes in Agile Contexts. IEEE Trans. Softw. 2022.
45. Hoda, R.; Murugesan, L.K. Multi-level agile project management challenges: A self-organizing team perspective. J. Syst. Softw. 2016.
46. Mishra, D.; Mishra, A. Managing requirements in market-driven software project: Agile methods view. Tech. Gaz. 2010.
47. Chen, P.-S.; Chen, G.Y.-H.; Lien, S.-F.; Huang, W.-T. Using Scrum and unified modelling language to analyze and design an automatic course scheduling system. J. Chin. Inst. Eng. 2019.
48. Gupta, A.; Poels, G.; Bera, P. Using Conceptual Models in Agile Software Development: A Possible Solution to Requirements Engineering Challenges in Agile Projects. IEEE Access 2022.
49. Gaikwad, V.; Joeg, P. A Case Study in Requirements Engineering in Context of Agile. Int. J. Appl. Eng. 2017.
50. Tanveer, B.; Guzmán, L.; Engel, U.M. Effort estimation in agile software development: Case study and improvement framework. J. Softw. Evol. Process 2017.
51. Bhalerao, S.; Ingle, M. Incorporating Vital Factors in Agile Estimation through Algorithmic Method. Int. J. Comput. Sci. 2009.
52. Alsaadi, B.; Saeedi, K. Data-driven effort estimation techniques of agile user stories: A systematic literature review. Artif. Intell. 2022.
53. Dragicevic, S.; Celar, S.; Turic, M. Bayesian network model for task effort estimation in agile software development. J. Syst. Softw. 2017.
54. Usman, M.; Britto, R.; Damm, L.-O.; Börstler, J. Effort estimation in large-scale software development: An industrial case study. Inf. Softw. Technol. 2018.
55. Elghariani, K.; Kama, N.; Mohd Azmi, N.F.; Abu bakar, N.A. Implicit thinking knowledge injection framework for Agile requirements engineering. Int. J. Adv. Comput. Sci. Appl. 2018.
56. Vithana, V.N. Scrum requirements engineering practices and challenges in offshore software development. Int. J. Comput. Appl. 2015.
57. Kasauli, R.; Liebel, G.; Knauss, E.; Gopakumar, S.; Kanagwa, B. Requirements Engineering Challenges in large-scale agile system development. In Proceedings of the 25th International Requirements Engineering Conference, Lisbon, Portugal, 4–8 September 2017; pp. 352–361.
58. Saeeda, H.; Dong, J.; Wang, Y.; Abid, M.A. A proposed framework for improved software requirements elicitation process in SCRUM: Implementation by a real-life Norway-based IT project. J. Softw. Evol. Process. 2020.
59. Santos, P.O.; de Carvalho, M.M. Exploring the challenges and benefits for scaling agile project management to large projects: A review. Requir. Eng. 2022.
60. El-Najar, T.; Ahmad, I.; Alkandari, M. Easycomm: A framework and tool to solve client communication problem in Agile development. IAENG Int. J. Comput. Sci. 2019.
61. Medeiros, J.; Vasconcelos, A.; Silva, C.; Goulão, M. Quality of software requirements specification in agile projects: A cross-case analysis of six companies. J. Syst. Softw. 2018.
62. Kasauli, R.; Knauss, E.; Horkoff, J.; Liebel, G.; de Oliveira Neto, F.G. Requirements engineering challenges and practices in large-scale agile system development. J. Syst. Softw. 2021.
63. Levy, Y.; Stern, R.; Sturm, A.; Mordoch, A.; Bitan, Y. An impact-driven approach to predict user stories instability. Requir. Eng. 2022.
64. Thomas, M.; Senapathi, M. Agile requirements engineering: An empirical analysis and evidence from a tertiary education context. Issues Inf. Sci. Inf. Technol. 2019.
65. Muntés-Mulero, V.; Ripolles, O.; Gupta, S.; Dominiak, J.; Willeke, E.; Matthews, P.; Somosköi, B. Agile risk management for multi-cloud software development. IET Softw. 2019.
66. Behutiye,W.; Rodríguez, P.; Oivo, M.; Aaramaa, S.; Partanen, J.; Abhervé, A. Towards optimal quality requirement documentation in agile software development: A multiple case study. J. Syst. Softw. 2022.
67. Jain, R.; Cao, L.; Mohan, K.; Ramesh, B. Situated boundary spanning: An empirical investigation of requirements engineering practices in product family development. ACM Trans. Manag. Inf. Syst. 2014.
68. Bernier, C.; Dubé, L.; Roy, V. An Agile Method, a Contractual Relationship, and Distance: A Triad of Challenging Conditions for a Successful System Development Project. J. Inf. Technol. Case Appl. Res. 2012.
69. Urbieta, M.; Antonelli, L.; Rossi, G.; do Prado Leite, J.C.S. The impact of using a domain language for an agile requirement management. Inf. Softw. Technol. 2020, 127, 106375.
70. Gahyyur, S.A.K.; Razzaq, A.; Hasan, S.Z.; Ahmed, S.; Ullah, R. Evaluation for feature driven development paradigm in context of architecture design augmentation and perspective implications. Int. J. Adv. Comput. Sci. Appl. 2018.
71. Rosenberger, P.; Tick, H.J. Agile enhancement of critical PMBOK V6 processes. J. Mod. Proj. Manag. 2021.
72. Al-Zewairi, M.; Biltawi, M.; Etaiwi,W.; Shaout, A. Agile Software Development Methodologies: Survey of Surveys. J. Comput. Commun. 2017.
73. Amna, A.R.; Poels, G. Ambiguity in user stories: A systematic literature review. Inf. Softw. Technol. 2022.
74. Hoy, Z. Dataset for Agile Requirements Engineering Challenges-Solutions Updated May 2023; University of Portsmouth Research Portal: Portsmouth, UK, 2023.
75. Alavi, M.; Carlson, P. A review of MIS research and disciplinary development. J. Manag. Inf. Syst. 1992.
76. Medeiros, J.; Vasconcelos, A.; Silva, C.; Goulão, M. Requirements specification for developers in agile projects: Evaluation by two industrial case studies. Inf. Softw. Technol. 2020.
77. Martini, A.; Bosch, J. On the interest of architectural technical debt: Uncovering the contagious debt phenomenon. J. Softw. J. Softw. Evol. Process 2017.
78. Lohan, G.; Conboy, K.; Lang, M. Examining customer focus in IT project management: Findings from Irish and Norwegian case studies. Scand. J. Inf. Syst. 2011.
79. Liebel, G.; Knauss, E. Aspects of modelling requirements in very-large agile systems engineering. J. Syst. Softw. 2023.
80. Canedo, E.D.; Calazans, A.T.S.; Bandeira, I.N.; Costa, P.H.T.; Masson, E.T.S. Guidelines adopted by agile teams in privacy requirements elicitation after the Brazilian general data protection law (LGPD) implementation. Requir. Eng. 2022.
81. Werner, C.; Li, Z.S.; Lowlind, D.; Elazhary, O.; Ernst, N.; Damian, D. Continuously Managing NFRs: Opportunities and Challenges in Practice. IEEE Trans. Softw. 2022.
82. Brataas, G.; Martini, A.; Hanssen, G.K.; Ræder, G. Agile elicitation of scalability requirements for open systems: A case study. J. Syst. Softw. 2021.
83. Oriol, M.; Martínez-Fernández, S.; Behutiye, W.; Farré, C.; Kozik, R.; Seppänen, P.; Vollmer, A.M.; Rodríguez, P.; Franch, X.; Aaramaa, S.; et al. Data-driven and tool-supported elicitation of quality requirements in agile companies. Softw. Qual. 2020.
84. Traini, L. Exploring Performance Assurance Practices and Challenges in Agile Software Development: An Ethnographic Study. Empir. Softw. Eng. 2022.
85. Del Sagrado, J.; Del Águila, I.M.; Orellana, F.J. Multi-objective ant colony optimization for requirements selection. Empir. Softw. Eng. 2015.
86. Al-Ta’ani, R.H.; Razali, R. A framework for requirements prioritisation process in an agile software development environment: Empirical study. Int. J. Adv. Sci. Eng. Inf. Technol. 2016.
87. Trkman, M.; Mendling, J.; Krisper, M. Using business process models to better understand the dependencies among user stories. Inf. Softw. Technol. 2016.
88. Trkman, M.; Mendling, J.; Trkman, P.; Krisper, M. Impact of the conceptual model’s representation format on identifying and understanding user stories. Inf. Softw. Technol. 2019.
89. de Souza, P.L.; de Souza,W.L.; Ferreira Pires, L. ScrumOntoBDD: Agile software development based on scrum, ontologies and behaviour-driven development. J. Braz. Comput. Soc. 2021.
90. Raharjana, I.K.; Siahaan, D.; Fatichah, C. User Stories and Natural Language Processing: A Systematic Literature Review. IEEE Access 2021.
91. Usman, M.; Petersen, K.; Börstler, J.; Santos Neto, P. Developing and using checklists to improve software effort estimation: A multi-case study. J. Syst. Softw. 2018.
92. Rahy, S.; Bass, J.M. Managing non-functional requirements in agile software development. IET Softw. 2022.
93. Ernst, N.A.; Borgida, A.; Jureta, I.J.; Mylopoulos, J. Agile requirements engineering via paraconsistent reasoning. Inf. Syst. 2014.
94. Sarkan, H.M.; Ahmad, T.P.S.; Bakar, A.A. Using JIRA and Redmine in Requirements Development for Agile Methodology. In Proceedings of the 5th Malaysian Conference in Software Engineering, Johor Bahru, Malaysia, 13–14 December 2011.
95. Farid, W.M.; Mitropoulos, F.J. NORMATIC: A visual tool for modeling non-functional requirements in agile processes. In Proceedings of the 2012 IEEE Southeastcon, Orlando, FL, USA, 15–18 March 2012.
96. Farid,W.M.; Mitropoulos, F.J. Novel lightweight engineering artifacts formodeling non-functional requirements in agile processes. In Proceedings of the 2012 IEEE Southeastcon, Orlando, FL, USA, 15–18 March 2012.
97. Anand, R.V.; Dinakaran, M. Handling stakeholder conflict by agile requirements prioritization using Apriori technique. Comput.Electr. Eng. 2017.