Moldable scenario builder

Ivan Kravchenko. Moldable scenario builder. Masters thesis, University of Bern, June 2020. Details.

Abstract

Current behavior-driven development (BDD) practices promise to engage more stakeholders in an agile software development process through the use of behavior specifications of the software product. However, current capabilities for behavior specification restrict possible feedback as they fail to reliably connect the specification with the corresponding implementation. We analyzed 14 BDD tools to observe their limitations for facilitating feedback between multiple stake- holders. We observed that the existing BDD tools differ in characteristics regarding their support for a ubiquitous language and specification format. Despite the recent attempts to write more natural language specifications, the existing tools are largely developer-oriented and limit the engagement of other participants. The analyzed tools focus mostly on asserting input values against desired business output for a BDD scenario and much less on manipulating the output itself. To tackle the aforementioned limitations, we present our prototype solution “Moldable scenario editor” implemented in the Pharo environment. To achieve this, we allow BDD scenarios to return objects and adapt their representation to the perspective of non-technical stakeholders. We strive to engage more participants in the agile software development process by giving them different ways to experiment with behavior specifications within an IDE. For instance, we use an embedded rich text editor to illustrate how plain textual specifications can leverage the corresponding implementation. Similarly, with a combination of graphical elements, we allow users to experiment with domain objects i.e., compose new BDD tests without having to code. We speculate that such an approach can bind behavior specifications more closely to the implementation, and facilitate effective collaboration among team members.

Posted by scg at 16 July 2020, 4:15 pm link
Last changed by admin on 21 April 2009