Thematic Synthesis of Behavior-Driven Development: An Analytical Approach
https://doi.org/10.15514/ISPRAS-2024-36(6)-9
Abstract
Behavior-driven development (BDD) focuses on specifying system behavior through examples, fostering collaboration, and aligning development with business needs. This research provides a thematic synthesis of BDD, highlighting its challenges, benefits, and implications in software development. By analyzing 23 studies across four academic databases, the study identifies trends and themes in BDD adoption and implementation. The findings emphasize BDD's role in bridging the gap between technical and non-technical stakeholders, aligning software development with business goals. Despite initial adoption challenges, the study reveals significant long-term benefits in software quality and stakeholder satisfaction. Future research should focus on developing efficient training and tools to support BDD adoption in diverse environments.
About the Authors
Víctor Manuel ARREDONDO-REYESMexico
Undergraduate Student in Software Engineering, Facultad de Estadística e Informática, Universidad Veracruzana, Mexico (School of Statistics and Informatics, University of Veracruz). Research interests: software design, requirements engineering, software development, and software testing.
Saúl DOMÍNGUEZ-ISIDRO
Mexico
PhD in artificial intelligence, associate professor at Facultad de Estadística e Informática, Universidad Veracruzana, Mexico (School of Statistics and Informatics, University of Veracruz). Research interests: distributed systems, software development, computational intelligence, and machine learning.
Ángel Juan SÁNCHEZ-GARCÍA
Mexico
PhD in artificial intelligence, associate professor at Facultad de Estadística e Informática, Universidad Veracruzana, Mexico (School of Statistics and Informatics, University of Veracruz). Research interests: software measurement, machine learning, effort prediction, and evolutionary computation.
Jorge Octavio OCHARÁN-HERNÁNDEZ
Mexico
PhD in Computer Science, Associate Professor at the Facultad de Estadística e Informática, Universidad Veracruzana, Mexico (School of Statistics and Informatics, University of Veracruz). Research interests: software architecture, requirements engineering, software engineering, and API design.
References
1. V. M. Arredondo-Reyes, S. Domínguez-Isidro, A. J. Sánchez-García, and J. O. Ocharán-Hernández, “Benefits and Challenges of the Behavior-Driven Development: A Systematic literature review,” in 11th International Conference in Software Engineering Research and Innovation (CONISOFT 2023), IEEE, 2023, pp. 1–6.
2. M. M. Moe and J. C. Sanchez, “International Journal of Trend in Scientific Research and Development (IJTSRD) Comparative Study of Test-Driven Development (TDD), Behavior-Driven Development (BDD) and Acceptance Test-Driven Development (ATDD) the Creative Commons Attribution License (CC BY 4.0).” [Online]. Available: http://creativecommons.org/licenses/by/4.0
3. J. Ferguson and D. North, BDD IN ACTION Behavior-Driven Development for the whole software lifecycle. [Online]. Available: www.it-ebooks.info
4. C. Solís and X. Wang, “A study of the characteristics of behaviour driven development,” in Proceedings - 37th EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 2011, pp. 383–387. doi: 10.1109/SEAA.2011.76.
5. L. Pereira, H. Sharp, C. De Souza, G. Oliveira, S. Marczak, and R. Bastos, “Behavior-driven development benefits and challenges: Reports from an industrial study,” in Proceedings of the 19th International Conference on Agile Software Development: Companion, Association for Computing Machinery, 2018, pp. 1–4. doi: 10.1145/3234152.3234167.
6. “What is software development? IBM.” [Online]. Available: https://www.ibm.com/topics/software-development
7. H. M. Abushama, H. A. Alassam, and F. A. Elhaj, “The effect of Test-Driven Development and Behavior-Driven Development on Project Success Factors: A Systematic Literature Review Based Study,” in Proceedings of: 2020 International Conference on Computer, Control, Electrical, and Electronics Engineering, ICCCEEE 2020, Institute of Electrical and Electronics Engineers Inc., Feb. 2021. doi: 10.1109/ICCCEEE49695.2021.9429593.
8. D. Arnyndiasari, R. Ferdiana, and P. I. Santosa, “Software Practices for Agile Developers: A Systematic Literature Review,” in 2022 1st International Conference on Information System and Information Technology, ICISIT 2022, Institute of Electrical and Electronics Engineers Inc., 2022, pp. 238–243. doi: 10.1109/ICISIT54091.2022.9872874.
9. M. S. Farooq, U. Omer, A. Ramzan, M. A. Rasheed, and Z. Atal, “Behavior Driven Development: A Systematic Literature Review,” IEEE Access, vol. 11, pp. 88008–88024, 2023, doi: 10.1109/ACCESS.2023.3302356.
10. B. A. Kitchenham, D. Budgen, and P. Brereton, Evidence-Based Software Engineering and Systematic Reviews. Chapman & Hall/CRC, 2015.
11. J. Popay et al., “Guidance on the Conduct of Narrative Synthesis in Systematic Reviews,” 2006.
12. D. S. Cruzes and T. Dybå, “Recommended Steps for Thematic Synthesis in Software Engineering,” in 2011 International Symposium on Empirical Software Engineering and Measurement, IEEE, 2011, pp. 275-284. doi: 10.1109/ESEM.2011.36.
13. Ö. Uştuk, “Thematic Analysis with MAXQDA: Step- by-Step Guide,” MAXQDA. [Online]. Available: https://www.maxqda.com/blogpost/thematic-analysis- with-maxqda-step-by-step-guide.
14. T. Dybå and T. Dingsøyr, “Empirical studies of agile software development: A systematic review,” Inf Softw Technol, vol. 50, no. 9, pp. 833–859, 2008, doi: 10.1016/j.infsof.2008.01.006.
15. C. Wohlin, “Guidelines for snowballing in systematic literature studies and a replication in software engineering,” in Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering, ACM, 2014, pp. 1–10. doi: 10.1145/2601248.2601268.
16. M. Irshad, R. Britto, and K. Petersen, “Adapting Behavior Driven Development (BDD) for large-scale software systems,” Journal of Systems and Software, vol. 177, no. 110944, pp. 1–20, 2021, doi: 10.1016/j.jss.2021.110944.
17. H. Bünder and H. Kuchen, “Towards Behavior-Driven Graphical User Interface Testing,” in Proceedings of the ACM Symposium on Applied Computing, Association for Computing Machinery, 2019, pp. 1742–1751. doi: 10.1145/3297280.3297450.
18. Y. Wang and S. Wagner, “Combining STPA and BDD for safety analysis and verification in agile development: A controlled experiment,” in Agile Processes in Software Engineering and Extreme Programming. XP 2018. Lecture Notes in Business Information Processing, Springer, Cham, 2018, pp. 37–53. doi: 10.1007/978-3-319-91602-6_3.
19. A. Scandaroli, R. Leite, A. H. Kiosia, and S. A. Coelho, “Behavior-Driven Development as an Approach to Improve Software Quality and Communication across Remote Business Stakeholders, Developers and QA: Two Case Studies,” in 2019 ACM/IEEE 14th International Conference on Global Software Engineering (ICGSE), 2019, pp. 105-110. doi: 10.1109/ICGSE.2019.00030.
20. M. Rahman and J. Gao, “A reusable automated acceptance testing architecture for microservices in behavior-driven development,” in 9th IEEE International Symposium on Service-Oriented System Engineering, IEEE SOSE 2015, Institute of Electrical and Electronics Engineers Inc., 2015, pp. 321–325. doi: 10.1109/SOSE.2015.55.
21. M. Irshad, J. Börstler, and K. Petersen, “Supporting refactoring of BDD specifications—An empirical study,” Inf Softw Technol, vol. 141, no. 106717, pp. 1–13, 2022, doi: 10.1016/j.infsof.2021.106717.
22. A. Dimanidis, K. C. Chatzidimitriou, and A. L. Symeonidis, “A Natural Language Driven Approach for Automated Web API Development: Gherkin2OAS,” in Companion Proceedings of the The Web Conference 2018, Association for Computing Machinery, 2018, pp. 1869–1874. doi: 10.1145/3184558.3191654.
23. N. Nascimento, A. R. Santos, A. Sales, and R. Chanin, “Behavior-Driven Development: An Expert Panel to evaluate benefits and challenges,” in Proceedings of the XXXIV Brazilian Symposium on Software Engineering, Association for Computing Machinery, 2020, pp. 41–46. doi: 10.1145/3422392.3422460.
24. N. Nascimento, A. R. Santos, A. Sales, and R. Chanin, “Behavior-Driven Development: A case study on its impacts on agile development teams,” in Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops, Association for Computing Machinery, 2020, pp. 109–116. doi: 10.1145/3387940.3391480.
25. R. K. Lenka, S. Kumar, and S. Mamgain, “Behavior Driven Development: Tools and Challenges,” in Proceedings - IEEE 2018 International Conference on Advances in Computing, Communication Control and Networking, ICACCCN 2018, Institute of Electrical and Electronics Engineers Inc., pp. 1032–1037. doi: 10.1109/ICACCCN.2018.8748595.
26. O. Bezsmertnyi, N. Golian, V. Golian, and I. Afanasieva, “Behavior Driven Development Approach in the Modern Quality Control Process,” in 2020 IEEE International Conference on Problems of Infocommunications Science and Technology, PIC S and T 2020 - Proceedings, Institute of Electrical and Electronics Engineers Inc., 2020, pp. 217–220. doi: 10.1109/PICST51311.2020.9467891.
27. T. R. Silva and B. Fitzgerald, “Empirical findings on bdd story parsing to support consistency assurance between requirements and artifacts,” in Proceedings of the 25th International Conference on Evaluation and Assessment in Software Engineering, Association for Computing Machinery, 2021, pp. 266–271. doi: 10.1145/3463274.3463807.
28. C. Wiecher, S. Japs, L. Kaiser, J. Greenyer, R. Dumitrescu, and C. Wolff, “Scenarios in the loop: Integrated requirements analysis and automotive system validation,” in 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS-C 2020 - Companion Proceedings, Association for Computing Machinery, Inc, 2020, pp. 199–208. doi: 10.1145/3417990.3421264.
29. C. Lauer and C. Sippl, “Benefits of Behavior Driven Development in Scenario-based Verification of Automated Driving,” in 2022 IEEE 25th International Conference on Intelligent Transportation Systems (ITSC), Institute of Electrical and Electronics Engineers (IEEE), 2022, pp. 105–110. doi: 10.1109/itsc55140.2022.9922498.
30. F. L. Siqueira, T. C. de Sousa, and P. S. Silva, “Using BDD and SBVR to Refine Business Goals into an Event-B Model: A Research Idea,” in 2017 IEEE/ACM 5th International FME Workshop on Formal Methods in Software Engineering (FormaliSE), 2017, pp. 31–36. doi: 10.1109/FormaliSE.2017.5.
31. T. R. Silva, J. L. Hak, and M. Winckler, “Testing Prototypes and Final User Interfaces Through an Ontological Perspective for Behavior-Driven Development,” in Bogdan, C., et al. Human-Centered and Error-Resilient Systems Development. HESSD HCSE 2016 2016. Lecture Notes in Computer Science, Springer, Cham, 2016, pp. 86–107. doi: 10.1007/978- 3-319-44902-9_7.
32. L. P. Binamungu, S. M. Embury, and N. Konstantinou, “Characterising the Quality of Behaviour Driven Development Specifications,” in Agile Processes in Software Engineering and Extreme Programming. XP 2020. Lecture Notes in Business Information Processing, Springer, Cham, 2020, pp. 87–102. doi: 10.1007/978-3-030-49392-9_6.
33. T. R. Silva, M. Winckler, and H. Trætteberg, “Ensuring the Consistency between User Requirements and Task Models: A Behavior-Based Automated Approach,” Proc. ACM Hum.-Comput. Interact., vol. 4, no. EICS, pp. 1–32, 2020, doi: 10.1145/3394979.
34. L. P. Binamungu, S. M. Embury, and N. Konstantinou, “Maintaining behaviour driven development specifications: Challenges and opportunities,” in 25th IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2018 - Proceedings, Institute of Electrical and Electronics Engineers Inc., 2018, pp. 175–184. doi: 10.1109/SANER.2018.8330207.
35. T. N. Kudo, R. de F. Bulcão-Neto, V. V. G. Neto, and A. M. R. Vincenzi, “Aligning requirements and testing through metamodeling and patterns: design and evaluation,” Requir Eng, vol. 28, no. 1, pp. 97–115, Mar. 2023, doi: 10.1007/s00766-022-00377-5.
36. Y. Wang, D. R. Degutis, and S. Wagner, “Speed up BDD for safety verification in agile development: A partially replicated controlled experiment,” in ACM International Conference Proceeding Series, Association for Computing Machinery, 2018. doi: 10.1145/3234152.3234181.
37. G. Oliveira, S. Marczak, and C. Moralles, “How to evaluate BDD scenarios’ quality?” in Proceedings of the XXXIII Brazilian Symposium on Software Engineering, Association for Computing Machinery, 2019, pp. 481–490. doi: 10.1145/3350768.3351301.
38. N. Patkar, A. Chis, N. Stulova, and O. Nierstrasz, “Interactive Behavior-driven Development: A Low- code Perspective,” in 24th International Conference on Model-Driven Engineering Languages and Systems, MODELS-C 2021, Institute of Electrical and Electronics Engineers Inc., 2021, pp. 128–137. doi: 10.1109/MODELS-C53483.2021.00024.
39. T. Zameni, P. Van Den Bos, J. Tretmans, J. Foederer, and A. Rensink, “From BDD Scenarios to Test Case Generation,” in Proceedings - 2023 IEEE 16th International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2023, Institute of Electrical and Electronics Engineers Inc., 2023, pp. 36–44. doi: 10.1109/ICSTW58534.2023.00019.
40. S. Rodriguez, J. Thangarajah, M. Winikoff, and M. 2023 Winikoff, “A Behaviour-Driven Approach for Testing Requirements via User and System Stories in Agent Systems. In Proc. of the 22nd International Conference on Autonomous Agents and Multiagent Systems,” 2023.
41. S. Heng, K. Tsilionis, and Y. Wautelet, “Building User Stories and Behavior Driven Development Scenarios with a Strict Set of Concepts: Ontology, Benefits and Primary Validation,” in Proceedings of the ACM Symposium on Applied Computing, Association for Computing Machinery, Mar. 2023, pp. 1422–1429. doi: 10.1145/3555776.3577696.
42. J. Saraiva and S. Soares, “Adoption of the LGPD Inventory in the User Stories and BDD Scenarios Creation,” in ACM International Conference Proceeding Series, Association for Computing Machinery, Sep. 2023, pp. 416–421. doi: 10.1145/3613372.3613375.
43. J. A. Valdivia, A. Lora-González, X. Limón, K. Cortes-Verdin, and J. O. Ocharán-Hernández, "Patterns Related to Microservice Architecture: A Multivocal Literature Review," Programming and Computer Software, vol. 46, no. 8, pp. 594-608, Dec. 2020, doi: 10.1134/S0361768820080253.
44. R. Moguel-Sánchez, C. S. Sergio Martínez-Palacios, J., O. Ocharán-Hernández, X. Limón, and A. J. Sánchez-García, "Bots in Software Development: A Systematic Literature Review and Thematic Analysis," Programming and Computer Software, vol. 49, no. 8, pp. 712-734, Dec. 2023, doi: 10.1134/S0361768823080145.
Review
For citations:
ARREDONDO-REYES V., DOMÍNGUEZ-ISIDRO S., SÁNCHEZ-GARCÍA Á., OCHARÁN-HERNÁNDEZ J. Thematic Synthesis of Behavior-Driven Development: An Analytical Approach. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2024;36(6):161-178. https://doi.org/10.15514/ISPRAS-2024-36(6)-9