skip to main content
10.1145/3422392.3422460acmotherconferencesArticle/Chapter ViewAbstractPublication PagessbesConference Proceedingsconference-collections
short-paper

Behavior-Driven Development: An Expert Panel to evaluate benefits and challenges

Published: 21 December 2020 Publication History

Abstract

Teaching modern software techniques is a challenging task as these practices tend to be collaborative and require a lot of preparation and environment setup. Among these techniques is Behavior-Driven Development (BDD), a development method which proposes software to be develop focusing primarily on its expected behavior. In this context, this paper investigates the perception of active-learning experts regarding the potential benefits and challenges of teaching BDD in active learning environments to software engineering students. To achieve this goal, we have conducted an expert panel with 28 active-learning experts from four countries. Our preliminary results indicate that experts perceive both benefits, like improvement in specification, and challenges to embrace the BDD "culture" when teaching BDD to software engineering students. Based in these findings, we found indicatives that BDD should benefit software engineering students in active learning environments, however it may require more setup, teacher preparation and engagement during the learning process.

References

[1]
K. Ahmad and P. Gestwicki. 2013. Studio-based Learning and App Inventor for Android in an Introductory CS Course for Non-majors. In Proceeding of the 44th ACM Technical Symposium on Computer Science Education (Denver, Colorado, USA) (SIGCSE '13). ACM, New York, NY, USA, 287--292.
[2]
Kent Beck. 2003. Test-driven development: by example. Addison-Wesley Professional.
[3]
David Chelimsky, Dave Astels, Bryan Helmkamp, Dan North, Zach Dennis, and Aslak Hellesoy. 2010. The RSpec Book: Behaviour Driven Development with Rspec. Cucumber, and Friends, Pragmatic Bookshelf (2010).
[4]
Louis Deslauriers, Logan S McCarty, Kelly Miller, Kristina Callaghan, and Greg Kestin. 2019. Measuring actual learning versus feeling of learning in response to being actively engaged in the classroom. Proceedings of the National Academy of Sciences 116, 39 (2019), 19251--19257.
[5]
Tore Dyba. 2000. An instrument for measuring the key factors of success in software process improvement. Empirical software engineering 5, 4 (2000), 357--390.
[6]
Eric Evans. 2004. Domain-driven design: tackling complexity in the heart of software. Addison-Wesley Professional.
[7]
Luis Fernandez-Sanz and Sanjay Misra. 2011. Influence of Human Factors in Software Quality and Productivity. 257--269. https://doi.org/10.1007/978-3-642-21934-4_22
[8]
Soren Lauesen and Otto Vinter. 2001. Preventing requirement defects: An experiment in process improvement. Requirements Engineering 6, 1 (2001), 37--50.
[9]
Paul Luo Li, Andrew J Ko, and Jiamin Zhu. 2015. What makes a great software engineer?. In Proceedings of the 37th International Conference on Software Engineering-Volume 1. IEEE Press, 700--710.
[10]
Qusay H Mahmoud and Pawel Popowicz. 2010. A mobile application development approach to teaching introductory programming. In 2010 IEEE Frontiers in Education Conference (FIE). IEEE, T4F-1.
[11]
V. Matos and R. Grasser. 2010. Building Applications for the Android OS Mobile Platform: A Primer and Course Materials. Journal of Computing Sciences in Colleges 26, 1 (Oct. 2010), 23--29.
[12]
Joseph A Maxwell. 2008. Designing a qualitative study. The SAGE handbook of applied social research methods 2 (2008), 214--253.
[13]
Rick Mugridge. 2003. Challenges in teaching test driven development. In International Conference on Extreme Programming and Agile Processes in Software Engineering. Springer, 410--413.
[14]
Dan North et al. 2006. Introducing bdd. Better Software 12 (2006).
[15]
Gabriel Oliveira and Sabrina Marczak. 2017. On the empirical evaluation of BDD scenarios quality: preliminary findings of an empirical study. In 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW). IEEE, 299--302.
[16]
Gabriel Oliveira, Sabrina Marczak, and Cassiano Moralles. 2019. How to Evaluate BDD Scenarios' Quality?. In Proceedings of the XXXIII Brazilian Symposium on Software Engineering. 481--490.
[17]
Ken Pugh. 2010. Lean-agile acceptance test-driven development: better software through collaboration. Pearson Education.
[18]
Tony Rosqvist, Mika Koskela, and Hannu Harju. 2003. Software quality evaluation based on expert judgement. Software Quality Journal 11, 1 (2003), 39--55.
[19]
A.R. Santos, A. Sales, P. Fernandes, and M. Nichols. 2015. Combining Challenge-Based Learning and Scrum Framework for Mobile Application Development. In Proceedings of the 2015 ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE'15). Vilnius, Lithuania, 189--194.
[20]
C. Scharff, A. Wasilewska, J. Wong, M. Bousso, I. Ndiaye, and C. Sarr. 2009. A model for teaching mobile application development for social changes: Implementation and lessons learned in senegal. In Int. Multiconf. on Computer Science and Information Technology, 2009. IMCSIT '09. Wisla, Poland, 383--389.
[21]
Robbie Simpson and Tim Storer. 2017. Experimenting with realism in software engineering team projects: An experience report. In 2017 IEEE 30th Conference on Software Engineering Education and Training (CSEE&T). IEEE, 87--96.
[22]
John Ferguson Smart. 2014. BDD in Action. Manning Publications.
[23]
Carlos Solis and Xiaofeng Wang. 2011. A study of the characteristics of behaviour driven development. In 2011 37th EUROMICRO Conference on Software Engineering and Advanced Applications. IEEE, 383--387.
[24]
Statista. 2017. Cumulative number of apps downloaded from the Apple App Store from July 2008 to June 2017 (in billions). https://www.statista.com/statistics/263794/number-of-downloads-from-the-apple-app-store/. [Online; accessed 29-June-2019].
[25]
Statista. 2019. Smartphone Are the Bulk of Our Digital Media Diet. https://www.statista.com/chart/18347/hours-spent-on-digital-media/. [Online; accessed 29-June-2019].

Cited By

View all
  • (2025)Towards Improving Behavior-Driven Development and Acceptance Testing-Driven Development Teaching in a University Project CourseAgile Processes in Software Engineering and Extreme Programming – Workshops10.1007/978-3-031-72781-8_15(141-149)Online publication date: 11-Jan-2025
  • (2024)Using Behavior-Driven Development (BDD) for Non-Functional RequirementsSoftware10.3390/software30300143:3(271-283)Online publication date: 18-Jul-2024
  • (2024)Analysis of Behavior-Driven Development: A Thematic SynthesisProgramming and Computing Software10.1134/S036176882470071350:8(701-713)Online publication date: 1-Dec-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
SBES '20: Proceedings of the XXXIV Brazilian Symposium on Software Engineering
October 2020
901 pages
ISBN:9781450387538
DOI:10.1145/3422392
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

In-Cooperation

  • SBC: Brazilian Computer Society

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 December 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Agile Development
  2. Behavior-Driven Development
  3. Challenge Based Learning
  4. Software Engineering

Qualifiers

  • Short-paper
  • Research
  • Refereed limited

Conference

SBES '20

Acceptance Rates

Overall Acceptance Rate 147 of 427 submissions, 34%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)22
  • Downloads (Last 6 weeks)1
Reflects downloads up to 27 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2025)Towards Improving Behavior-Driven Development and Acceptance Testing-Driven Development Teaching in a University Project CourseAgile Processes in Software Engineering and Extreme Programming – Workshops10.1007/978-3-031-72781-8_15(141-149)Online publication date: 11-Jan-2025
  • (2024)Using Behavior-Driven Development (BDD) for Non-Functional RequirementsSoftware10.3390/software30300143:3(271-283)Online publication date: 18-Jul-2024
  • (2024)Analysis of Behavior-Driven Development: A Thematic SynthesisProgramming and Computing Software10.1134/S036176882470071350:8(701-713)Online publication date: 1-Dec-2024
  • (2024)Agile testing using user language automation with artificial intelligence in Enjisst2024 IEEE Latin American Conference on Computational Intelligence (LA-CCI)10.1109/LA-CCI62337.2024.10814749(1-5)Online publication date: 13-Nov-2024
  • (2023)Benefits and Challenges of the Behavior-Driven Development: A Systematic Literature Review2023 11th International Conference in Software Engineering Research and Innovation (CONISOFT)10.1109/CONISOFT58849.2023.00016(45-54)Online publication date: 6-Nov-2023
  • (2023)Behavior Driven Development: A Systematic Literature ReviewIEEE Access10.1109/ACCESS.2023.330235611(88008-88024)Online publication date: 2023
  • (2022)On the Evaluation of BDD Requirements with Text-based Metrics: The ETCS-L3 Case StudyIntelligent Decision Technologies10.1007/978-981-19-3444-5_48(561-571)Online publication date: 27-Jul-2022

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media