Adapting Behavior Driven Development (BDD) for large-scale software systems

被引:11
作者
Irshad, Mohsin [1 ,2 ]
Britto, Ricard [1 ,2 ]
Petersen, Kai [2 ]
机构
[1] Ericsson AB, Stockholm, Sweden
[2] Blekinge Inst Technol, Karlskrona, Sweden
关键词
Behavior-driven; Large-scale; BDD; Software processes; System of systems; AGILE METHODS; ENGINEERS;
D O I
10.1016/j.jss.2021.110944
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Context: Large-scale software projects require interaction between many stakeholders. Behavior driven development (BDD) facilitates collaboration between stakeholders, and an adapted BDD process can help improve cooperation in a large-scale project. Objective: The objective of this study is to propose and empirically evaluate a BDD based process adapted for large-scale projects. Method: A technology transfer model was used to propose a BDD based process for large-scale projects. We conducted six workshop sessions to understand the challenges and benefits of BDD. Later, an industrial evaluation was performed for the process with the help of practitioners. Results: From our investigations, understanding of a business aspect of requirements, their improved quality, a guide to system-level use-cases, reuse of artifacts, and help for test organization are found as benefits of BDD. Practitioners identified the following challenges: specification and ownership of behaviors, adoption of new tools, the software projects-scale, and versioning of behaviors. We proposed a process to address these challenges and evaluated the process with the help of practitioners. Conclusion: The evaluation proved that BDD could be adapted and used to facilitate interaction in large-scale software projects in the software industry. The feedback from the practitioners helped in improving the proposed process. (C) 2021 The Author(s). Published by Elsevier Inc. This is an open access article under the CC BY license (http://creativecommons.org/licenses/by/4.0/).
引用
收藏
页数:20
相关论文
共 78 条
[61]   Measuring the flow in lean software development [J].
Petersen, K. ;
Wohlin, C. .
SOFTWARE-PRACTICE & EXPERIENCE, 2011, 41 (09) :975-996
[62]  
Petersen K., 2020, SUBM C BUT
[63]  
Petersen K, 2009, INT SYMP EMP SOFTWAR, P402
[64]  
Pressman R.S., 2005, Software Engineering: A Practitioner's Approach
[65]  
Questionnaire, 2019, QUESTIONNAIRE
[66]   A Reusable Automated Acceptance Testing Architecture for Microservices in Behavior-Driven Development [J].
Rahman, Mazedur ;
Gao, Jerry .
9TH IEEE INTERNATIONAL SYMPOSIUM ON SERVICE-ORIENTED SYSTEM ENGINEERING (SOSE 2015), 2015, :321-325
[67]  
RobotFramework, 2019, ROBOT FRAMEWORK
[68]   Using acceptance tests to predict files changed by programming tasks [J].
Rocha, Thais ;
Borba, Paulo ;
Santos, Joao Pedro .
JOURNAL OF SYSTEMS AND SOFTWARE, 2019, 154 :176-195
[69]  
Sabaliauskaite G, 2010, LECT NOTES COMPUT SC, V6182, P128, DOI 10.1007/978-3-642-14192-8_14
[70]  
Scacchi W., 1989, Digest of Papers. COMPCON Spring '89. Thirty-Fourth IEEE Computer Society International Conference: Intellectual Leverage (IEEE Cat. No.89CH2686-4), P232, DOI 10.1109/CMPCON.1989.301932