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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
The plugin is available at https://git.fh-muenster.de/winfo/code-pro/t4pda.
- 2.
- 3.
Six sequence flows, five tasks, three events, and one gateway.
- 4.
Twenty-one sequence flows, eight tasks, seven gateways, and three events.
- 5.
References
Allweyer, T.: BPMN 2.0: Introduction to the Standard for Business Process Modeling. Books on Demand, Norderstedt (2016)
Booch, G., Maksimchuk, R.A., Engle, M.W., Young, B.J., Connallen, J., Houston, K.A.: Object-oriented analysis and design with applications. ACM SIGSOFT Softw. Eng. Notes 33(5), 29 (2008)
Camunda: Camunda modeler (2020). https://camunda.com/products/modeler/
Chen, L.: Continuous delivery: huge benefits, but challenges too. IEEE Softw. 32(2), 50–54 (2015)
Fowler, M.: Continuous integration (2006). https://martinfowler.com/articles/continuousIntegration.html
Freund, J., Rücker, B.: Real-Life BPMN: with introductions to CMMN and DMN. CreateSpace Independent Publishing Platform (2006)
Harmon, P., Wolf, C.: Business process modeling survey. BPtrends report (2011)
Hodgson, P.: Feature toggles (aka feature flags) (2017). https://martinfowler.com/articles/feature-toggles.html
Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Pearson Education, London (2010)
Larrea, V.G.V., Joubert, W., Fuson, C.: Use of continuous integration tools for application performance monitoring. Concurrency and Computation Practice and Experience on the Cray User Group (2015)
Meyer, M.: Continuous integration and its tools. IEEE Softw. 31(3), 14–16 (2014)
OMG: About the business process model and notation specification version 2.0 (2011). https://www.omg.org/spec/BPMN/2.0/About-BPMN/
OMG: About the decision model and notation specification version 1.2 (2019). https://www.omg.org/spec/DMN/About-DMN/
Peffers, K., Rothenberger, M., Tuunanen, T., Vaezi, R.: Design science research evaluation. In: Peffers, K., Rothenberger, M., Kuechler, B. (eds.) DESRIST 2012. LNCS, vol. 7286, pp. 398–410. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29863-9_29
Rahman, M.T., Querel, L.P., Rigby, P.C., Adams, B.: Feature toggles: practitioner practices and a case study. In: Proceedings of the 13th International Conference on Mining Software Repositories, pp. 201–211 (2016)
Rodríguez, P., et al.: Continuous deployment of software intensive products and services: a systematic mapping study. J. Syst. Softw. 123, 263–291 (2017)
Schneid, K.: Branching strategies for developing new features within the context of continuous delivery. In: Proceedings of the 2nd Workshop on Continuous Software Engineering Co-located with Software Engineering (SE 2017), Hannover, Germany, 20 February 2017. CEUR Workshop Proceedings, vol. 1806, pp. 28–35. CEUR-WS.org (2017)
Stiehl, V.: Process-Driven Applications with BPMN. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-07218-0
Togglz: Togglz - feature flags for the java platform (2020). https://www.togglz.org/
Weske, M.: Business process management architectures. Business Process Management, pp. 333–371. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-28616-2_7
Wol, E.: Continuous Delivery: Der pragmatische Einstieg. dpunkt.verlag, Heidelberg (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Schneid, K., Thöne, S., Kuchen, H. (2020). Feature Development in BPMN-Based Process-Driven Applications. In: Fahland, D., Ghidini, C., Becker, J., Dumas, M. (eds) Business Process Management Forum. BPM 2020. Lecture Notes in Business Information Processing, vol 392. Springer, Cham. https://doi.org/10.1007/978-3-030-58638-6_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-58638-6_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-58637-9
Online ISBN: 978-3-030-58638-6
eBook Packages: Computer ScienceComputer Science (R0)