Feature Development in BPMN-Based Process-Driven Applications

In the context of Continuous Software Engineering, it is acknowledged as best practice to develop new features on the mainline rather than on separate feature branches. Unfinished work is then usually prevented from going live by some kind of feature togg

  • PDF / 1,745,515 Bytes
  • 16 Pages / 439.37 x 666.142 pts Page_size
  • 44 Downloads / 194 Views

DOWNLOAD

REPORT


M¨ unster University of Applied Sciences, M¨ unster, Germany {konrad.schneid,sebastian.thoene}@fh-muenster.de 2 University of M¨ unster, M¨ unster, Germany [email protected]

Abstract. In the context of Continuous Software Engineering, it is acknowledged as best practice to develop new features on the mainline rather than on separate feature branches. Unfinished work is then usually prevented from going live by some kind of feature toggle. However, there is no concept of feature toggles for Process-Driven Applications (PDA) so far. PDAs are hybrid systems consisting not only of classical source code but also of a machine-interpretable business process model. This paper elaborates on a feature development approach that covers both the business process model and the accompanying source code artifacts of a PDA. The proposed solution, Toggles for Process-Driven Applications (T4PDA), equipped with an easy to use modeling tool extension, enables the developer to safely commit unfinished work on model and source code to the project’s mainline. It will be kept inactive during productive deployments unless the feature is finally released. During an AB/BA crossover design experiment, the T4PDA approach, including the provided tool support, showed higher software quality, a faster development process, and contented developers. Keywords: Feature-driven development · Process-Driven Application · Continuous Software Engineering

1

Introduction

Process-Driven Applications are not only based on program code but also on executable process models. This type of process-aware information systems plays an increasingly important role, especially in enterprises living Business Process Management [18]. Executable process models can be modeled in the Business Process Model and Notation (BPMN) [7,12]. The language, published as ISO standard, is especially characterized by high comprehensibility without extensive prior (technical) knowledge. To further separate decision logic from process logic, decision models using Decision Model and Notation (DMN) can be added [13]. BPMN and DMN are both maintained by the Object Management Group (OMG) and can be ideally used in combination. Forming a common language, software developers and process designers can collaborate on these process c Springer Nature Switzerland AG 2020  D. Fahland et al. (Eds.): BPM Forum 2020, LNBIP 392, pp. 35–50, 2020. https://doi.org/10.1007/978-3-030-58638-6_3

36

K. Schneid et al.

models. To make a model executable and link certain model elements to units of source code, technical parameters can be configured directly on the model level. For this purpose, the meta-model of BPMN offers dedicated attributes, which do not influence the visualization and, thus, do not disturb any business stakeholder [6]. The concepts of Continuous Software Engineering intend to increase software quality through immediate integration (and sometimes also delivery) of new features. The approach requires the automatic building and testing of software artifacts in short cycles and is getting mo

Data Loading...