Behavior-Driven Development (BDD) improves the collaboration between developers and stakeholders following agile software development practices. Acceptance Test-Driven Development (ATDD) is an extension of BDD where requirements are accompanied by automated acceptance tests, translating functional acceptance criteria linked to requirements. While BDD and ATDD have been successfully applied in industry, few universities report on teaching BDD and ATDD principles as part of their curriculum. However, there is a need for education providers to teach industry-relevant practices so that junior developers’ skills are better aligned to industry’s expectations. Therefore, we report on how BDD and ATDD techniques have been taught in a two-semester software engineering project, including (i) the lack of observed evidence on the implications of applying BDD and ATDD on the functional suitability of software products, (ii) the lack of engagement with BDD and ATDD from students, and (ii) recommendations to educators to improve students’ engagement with these practices.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Towards Improving Behavior-Driven Development and Acceptance Testing-Driven Development Teaching in a University Project Course

  • Marina Filipovic,
  • Fabian Gilson

摘要

Behavior-Driven Development (BDD) improves the collaboration between developers and stakeholders following agile software development practices. Acceptance Test-Driven Development (ATDD) is an extension of BDD where requirements are accompanied by automated acceptance tests, translating functional acceptance criteria linked to requirements. While BDD and ATDD have been successfully applied in industry, few universities report on teaching BDD and ATDD principles as part of their curriculum. However, there is a need for education providers to teach industry-relevant practices so that junior developers’ skills are better aligned to industry’s expectations. Therefore, we report on how BDD and ATDD techniques have been taught in a two-semester software engineering project, including (i) the lack of observed evidence on the implications of applying BDD and ATDD on the functional suitability of software products, (ii) the lack of engagement with BDD and ATDD from students, and (ii) recommendations to educators to improve students’ engagement with these practices.