Abstract
Business process management systems are an important piece of infrastructure for digital transformation initiatives. Rapid development of executable business processes is a key requirement in this context. Even though there are various process modeling languages available, none of them is designed with the ambition to be code efficient and expressive at the same time. In this paper, we investigated the research question how a process scripting language can be defined that addresses the four requirements of code efficiency, control flow expressiveness, data processing and event processing. To this end, we designed and implemented a process scripting language based on Kotlin. To analyze the language regarding the four requirements, we use the language in a case study of a real-world process of our industry partner.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
https://github.com/factdriven (commit tag ER-2020-Demo).
- 7.
- 8.
- 9.
- 10.
https://github.com/factdriven (commit tag ER-2020-Demo).
References
Business Process Model and Notation (BPMN) version 2.0. Tech. rep. (2011)
van der Aalst, W.M.P., ter Hofstede, A.H., Kiepuszewski, B., Barros, A.P.: Distributed and parallel databases. Workflow Patterns 14(1), 5–51 (2003)
Armbrust, M., et al.: A view of cloud computing. Commun. ACM 53(4), 50–58 (2010)
Buyya, R., Yeo, C.S., Venugopal, S., Broberg, J., Brandic, I.: Cloud computing and emerging IT platforms: vision, hype, and reality for delivering computing as the 5th utility. Future Gener. Comp. Syst. (FGCS) 25(6), 599–616 (2009)
Ceh, I., Crepinsek, M., Kosar, T., Mernik, M.: Ontology driven development of domain-specific languages. Comput. Sci. Inf. Syst. 8(2), 317–342 (2011)
Crepinsek, M., Kosar, T., Mernik, M., Cervelle, J., Forax, R., Roussel, G.: On automata and language based grammar metrics. Comput. Sci. Inf. Syst. 7(2), 309–329 (2010)
Dieste, O., et al.: Empirical evaluation of the effects of experience on code quality and programmer productivity: an exploratory study. In: International Conference on Software and System Process, ICSSP 2018, pp. 111–112. ACM (2018)
Dragoni, N., et al.: Microservices: yesterday, today, and tomorrow. Present and Ulterior Software Engineering, pp. 195–216. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-67425-4_12
Dragoni, N., Lanese, I., Larsen, S.T., Mazzara, M., Mustafin, R., Safina, L.: Microservices: how to make your application scale. In: Petrenko, A.K., Voronkov, A. (eds.) PSI 2017. LNCS, vol. 10742, pp. 95–104. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-74313-4_8
Dumas, M., La Rosa, M., Mendling, J., Reijers, H.A.: Process-aware information systems. Fundamentals of Business Process Management, pp. 341–369. Springer, Heidelberg (2018). https://doi.org/10.1007/978-3-662-56509-4_9
Georgakopoulos, D., Hornick, M., Sheth, A.: An overview of workflow management: from process modeling to workflow automation infrastructure. Distrib. Parallel Databases 3(2), 119–153 (1995)
Hirschheim, R.A.: Office automation: a social and organizational perspective (1986)
Jordan, D., et al.: Web services business process execution language version 2.0. Tech. rep. (2007)
Kiepuszewski, B., ter Hofstede, A.H.M., van der Aalst, W.M.P.: Fundamentals of control flow in workflows. Acta Inf. 39(3), 143–209 (2003)
Kosar, T., et al.: Comparing general-purpose and domain-specific languages: an empirical study. Comput. Sci. Inf. Syst. 7(2), 247–264 (2010)
Mateus, B.G., Martinez, M.: An empirical study on quality of Android applications written in Kotlin language. Empir. Softw. Eng. 24(6), 3356–3393 (2019)
Mendling, J., Nüttgens, M.: XML interchange formats for business process management. Inf. Syst. E-Bus. Manag. 4(3), 217–220 (2006)
Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316–344 (2005)
Mernik, M., Hrncic, D., Bryant, B.R., Javed, F.: Applications of grammatical inference in software engineering: domain specific language development. Sci. Appl. Lang. Methods 2, 421–457 (2010)
Power, J.F., Malloy, B.A.: A metrics suite for grammar-based software. J. Softw. Maint. Res. Pract. 16(6), 405–426 (2004)
Prechelt, L.: An empirical comparison of seven programming languages. Computer 33(10), 23–29 (2000)
Richardson, C.: Microservices patterns: with examples in Java (2019)
Russell, N., van der Aalst, W.M.P., ter Hofstede, A.H.: Workflow Patterns: The Definitive Guide. MIT Press, Cambridge (2016)
Van Deursen, A., Klint, P., Visser, J.: Domain-specific languages: an annotated bibliography. ACM Sigplan Not. 35(6), 26–36 (2000)
Weidlich, M., Decker, G., Großkopf, A., Weske, M.: BPEL to BPMN: the myth of a straight-forward mapping. In: Meersman, R., Tari, Z. (eds.) OTM 2008. LNCS, vol. 5331, pp. 265–282. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-88871-0_19
Wohed, P., van der Aalst, W.M.P., Dumas, M., ter Hofstede, A.H.M., Russell, N.: On the suitability of BPMN for business process modelling. In: Dustdar, S., Fiadeiro, J.L., Sheth, A.P. (eds.) BPM 2006. LNCS, vol. 4102, pp. 161–176. Springer, Heidelberg (2006). https://doi.org/10.1007/11841760_12
Zur Muehlen, M.: Workflow-Based Process Controlling: Foundation, Design, and Application of Workflow-Driven Process Information Systems. Logos Verlag, Berlin (2004)
Acknowledgement
The concept and design of Factscript as well as its implementation in Kotlin was done by Martin Schimak, plexiti GmbH.
This research is partially funded by FFG (ref. no. 876062).
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
Vidgof, M., Waibel, P., Mendling, J., Schimak, M., Seik, A., Queteschiner, P. (2020). A Code-Efficient Process Scripting Language. In: Dobbie, G., Frank, U., Kappel, G., Liddle, S.W., Mayr, H.C. (eds) Conceptual Modeling. ER 2020. Lecture Notes in Computer Science(), vol 12400. Springer, Cham. https://doi.org/10.1007/978-3-030-62522-1_13
Download citation
DOI: https://doi.org/10.1007/978-3-030-62522-1_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-62521-4
Online ISBN: 978-3-030-62522-1
eBook Packages: Computer ScienceComputer Science (R0)