=Paper=
{{Paper
|id=Vol-3618/pe_paper_1
|storemode=property
|title=Process factory: Ready-to-use business processes templates for a fast setup (short paper)
|pdfUrl=https://ceur-ws.org/Vol-3618/pe_paper_1.pdf
|volume=Vol-3618
|authors=Miguel Agostinho,Carolina Marques,Filipe Correia,Pedro Sousa,Sergio Guerreiro
|dblpUrl=https://dblp.org/rec/conf/er/AgostinhoMCSG23
}}
==Process factory: Ready-to-use business processes templates for a fast setup (short paper)==
Process factory: Ready-to-use business processes templates for a fast setup Miguel Agostinho1, Carolina Marques1, Filipe Correia1, Pedro Sousa1,2,3 and Sérgio Guerreiro1,2,3,* 1 Link Consulting SA, Av. Duque de Ávila 23, 1000-138 Lisbon, Portugal 2 INESC-ID, R. Alves Redol 9, 1000-029 Lisbon, Portugal 3 Instituto Superior Técnico, University of Lisbon, Av. Rovisco Pais 1, 1049-001 Lisbon, Portugal Abstract The purpose of this project is to develop an approach to facilitate the modelling phase of complex business processes, in particular the ones which are a priori known as being similar with previous ones, and therefore could be partially reused. To achieve this purpose, the concept of business process template is defined as the full description of a BPMN business process that is enriched with annotations concerning its variability points. The Process Factory allows the creation of business processes templates using BPMN. Then, the templates are reified customizing each variability point, e.g., gateway decisions, pools, etc., accordingly with the reality of each application domain. To smooth the usability, the Process Factory uses a rich UX where the final product is delivered as a BPMN process that can be deployed in any BPMN compliant engine. The achieved results show that deploying ready-to-use business processes patterns using a rich UX aids the non-BPMN experienced users to model their business process, while at the same time saves their time, resources and minimizes errors. Keywords Atlas tool, BPMN, Business process, Fast setup, Process Factory, Ready-to-use, Template 1. Introduction Ready-to-use business processes templates for a fast setup is located in a broader project, named eProcess, which is currently under development. The ready-to-use is already deployed and being used in consultancy services. The project’s motivation is inspired by the fact that recent progresses and the apparent ease with which the numerous process automation solutions allow the specification and automation of processes, there are still significant obstacles and limitations both in the standards that allow the specification of processes, e.g., the notation Business Process Model and Notation - BPMN1 , as well as in the subsequent automation of the same processes, in ER2023: Companion Proceedings of the 42nd International Conference on Conceptual Modeling: ER Forum, 7th SCME, Project Exhibitions, Posters and Demos, and Doctoral Consortium, November 06-09, 2023, Lisbon, Portugal * Corresponding author $ miguel.agostinho@linkconsulting.com (M. Agostinho); carolina.marques@linkconsulting.com (C. Marques); filipe.correia@linkconsulting.com (F. Correia); pedro.manuel.sousa@tecnico.ulisboa.pt (P. Sousa); sergio.guerreiro@tecnico.ulisboa.pt (S. Guerreiro) 0000-0001-7453-5778 (P. Sousa); 0000-0002-8627-3338 (S. Guerreiro) © 2023 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR Workshop CEUR Workshop Proceedings (CEUR-WS.org) Proceedings http://ceur-ws.org ISSN 1613-0073 1 BPMN is the de facto standard used by industry and researchers for business process modeling and execution. It is also available under the standard ISO/IEC 19510:2013, https://www.omg.org/spec/BPMN/2.0/ CEUR ceur-ws.org Workshop ISSN 1613-0073 Proceedings which each business process execution engines demand compliance with their own proprietary BPMN extensions, e.g., an extensive use of XML extension elements. Furthermore, the need for investment in R&D applied to BPM [1] platforms can be clearly identified in the Gartner’s magic quadrant when referring to Intelligent BPM solutions2 . This classification is often referred by companies to make their investment decisions. Today, the challenges of BPM, as listed in [2], go well beyond the simple definition of the business process. In reality, none of these platforms present in the Gartner’s magic quadrant solves all the previously mentioned problems. This paper defines a business process as a collection of events, activities, and decisions that brings value to the customers of an organization [3][4] [5]. In fact, this definition reveals the huge variability [6] that is posed when a new business process is being modelled. A solution to overcome this variability, as noticed by Fellman et al. [7], is to use predefined BPMN model templates that can facilitate no-expert users to model business processes. With this goal in mind, the creation of new BPMN models are streamlined, allowing end users to save time, resources and minimizing errors. By leveraging the power of templates, customers can reuse the structure and logic of a previously designed BPMN, eliminating the need to start from scratch. This not only accelerates the BPMN creation process but also ensures consistency and adherence to best practices. Save Save as BPMN Model Template Save BPMN model Fast-Setup BPMN model Save as Template Reified Save as Template Template Figure 1: Work packages and their relationships. A BPMN model can be promoted to a Template, that can be reified by specific configuration. After that, it could be stored as a "normal" BPMN or re-promoted to a Template. Figure 1 depicts the work packages of our project. All the development were executed in a software tool named ATLAS3 , in specific, the process factory [8]. The document is organized as following. Firstly, Section 2 explains the methodology and the technologies used. Afterwards, Section 3 describes the work packages and the expected outcomes. Then, Section 4 details the relevance of this project for the Process Factory and for the end users. After that, Section 5 describes the results achieved. Section 6 concludes the document and refers to future work. 2 https://www.gartner.com/en/documents/3899484 3 https://atlas.linkconsulting.com/ 2. Methodology and Technologies 2.1. Goals The goal of this project is to allow ATLAS users to use BPMN processes as templates so that creating a new BPMN process is a matter of customization. In specific, users reuse the structure of a process to create a new one, customizing the previous defined variability points. This solution is useful in projects of the same domain of application, e.g., public procurement in which there are general rules that must always be respected regardless of whether it is a local administration, central administration, an institution, or another type of public organization. Furthermore, the Fast setup functionality empowers customers to make modifications to the saved template with ease. They can customize the workflow, adjust tasks and activities, define business rules, and incorporate any necessary changes to align the BPMN with their evolving business needs. 2.2. Technologies and Tools The list of tools used to develop this project are the following: Visual Studio Code4 IDE for coding the project; BPMN as the business process modeling language; Atlas as the cloud-based software platform to offer the process factory; Typescript5 as the most used programming language; Javascript an essential programming language for Atlas; Vue.js6 for some of the interfaces; Kendo UI7 for all the buttons and text boxes. 3. Work Packages The project project is organized by the following work packages. 3.1. Save a Process as a Template The creation of a process as a template consists in allowing the user to annotate which are the BPMN process elements that are enforced with variability. The list of allowed BPMN elements with variability are: Gateways, Gateway conditions, Pools, Lanes and Tasks. Later, the annotations are used to distinguish between the manually editable BPMN elements that implement the specific aspects of a given domain application from the static elements that are immutable. When all the annotation are ready, the business process is stored in Atlas with a special indication of a Template business process, cf. Figure 2. Figure 2 illustrates the process of saving a BPMN process as a template in the Atlas. This action involves adding an extensionElement with the value "isTemplate" set to true to all elements that allow variability. By doing so, users gain access to the Fast-Setup tool, which facilitates editing of the created template. 4 https://code.visualstudio.com/ 5 https://www.typescriptlang.org/ 6 https://vuejs.org/ 7 https://www.telerik.com/kendo-ui/ Figure 2: The user interaction to save a BPMN process as a template. 3.2. Editing the Process as a Template To adapt the process template to new posed requirements, the user is always able to change, add, or delete the annotations of the BPMN elements. The solution is to edit the process template and save it, again, as a template. 3.3. Fast-setup of a Process Template Reification is the act of instantiating a business process template in a specific application domain. The core idea is to reuse a previously created template process and customize it as desired. To achieve this, the user can decide what is the exact configuration for each variability point. A predefined element order is suggested, but the user can opt to change the order. As depicted in Figure 3, the screen is splitted into 2 parts. On the left part the BPMN process is shown and in the right part the configuration of a specific element is presented. During the editing process, the user can modify the names of the elements, and in the case of gateways, they can also edit their conditions. By making these changes to the elements, the user see them in run-time in the BPMN process. The user can also model the process while editing the template, meaning they can add new elements to the process, and these will automatically appear in the editing tool. 3.4. Expected Outcomes of the Project The expected outcome of this project is a software functionality ready for production environment in the Atlas cloud-based tool. It must be able to (i) import, and export, any BPMN 2.0 business process XML file, (ii) save the process as template in the internal Atlas repository keeping the annotations along with its process definition, (iii) reify a process template, (iv) offer a UI interaction for customizing the process template variability points and (v) store the newly created business process in any Atlas repository accordingly with user’ request. Figure 3: Example of a BPMN gateway configuration editing. Navigation between the variability points can be done using the "Next" and "Back" buttons. 4. Project Relevance 4.1. Creation of a Process Template The ability to create a template process has two benefits. Firstly, lies in the user’s ability to reify the elements of a BPMN process template. By reifying these elements, the user can customize them later and, with that the user can reuse the same process template in different application domains. Secondly, when a process template is created it is incorporated in the repository of ready-to-use business processes template. Consequently, any application domain requesting a business process governed by, e.g., a known public regulation that is covered by those already available ready-to-use business processes templates, allows the leverage of re usage and the drastic reduction of the deployment time. 4.2. Process Template Editing Process template editing is a crucial and highly valuable feature as it empowers users to modify already existing BPMN processes in order to adapt to their specific needs. This capability significantly enhances the flexibility and efficiency of business processes’ management. By leveraging template editing, users can build upon the foundation of an existing BPMN process and make customized modifications without starting from scratch. This saves valuable time and resources that would otherwise be spent on recreating an entire process. Instead, users can focus on fine-tuning and tailoring the process to align with their unique requirements. 5. Results 5.1. Creation of a Process Template The development of creation of a process template involved the ability to store a BPMN process as a template. For this purpose, a button was added that, when activated, adds a variable with the value "true" to the BPMN, cf. depicted in Figure 4. When storing the BPMN as a template, by default, all elements are considered as variability points. The user can manually deactivate each element as desired, causing it not to appear during the editing of the process template. To achieve this, each element needs to store the value of whether it is editable or not. For this, a custom BPMN extension (the XML tag "") was used to store each element configuration. When storing the process as a template, the system checks if the process is a template and automatically marks all elements as editable unless the user has explicitly marked them as non-editable. Subsequently, the user is granted access to utilize the "Fast-Setup" functionality to edit the template. 5.2. Fast-setup of a Process Template Figure 4: User interaction to trigger the Fast-Setup of a process Template. Upon clicking the Fast-Setup button (Figure 4), the system will search for all editable elements and create an editing window pointing for the first element, allowing the user to initiate the template editing process. Additionally, the system will highlight the element being edited, making it easier for the user to identify the element being modified. The editing window shown in Figure 5 corresponds to the edition of the name of a BPMN Pool. In this window, we can observe a mini-map centered on the element being edited. This allows the user to navigate the BPMN diagram and view other elements while editing one. This feature is particularly useful when editing a gateway, as the user may want to see its outgoing flows while modifying the conditions. The mini-map provides run-time updates, allowing the user to visualize changes as they are made. When typing in the text box, the user can modify the name of the Pool and see the changes reflected in run-time both in the process and in the mini-map. The user also has the option to clear the current fields in case of errors or if they wish to revert to the previous values. Figure 5: The Fast-Setup editing window. Additionally, there are navigation buttons available, such as "Back" to go to the immediately preceding element or "Next" to move to the next element. When editing a gateway, in addition to the previously mentioned functionalities, we can also customize its outgoing conditions. Any changes made to these conditions will be reflected in real-time. During the template editing process, the user has the flexibility to choose which element they want to edit. While there is a predefined order to edit pools first, followed by lanes, gateways and their conditions, and finally tasks, the user may still want to edit a specific element out of order. This functionality is particularly useful when editing gateways. After modifying a gateway and its conditions, the user may wish to edit its outgoing flows to maintain the context. However, this capability is available for all types of elements. To select the element to edit, the user simply needs to be in "Fast-Setup" mode (with the editing window open) and click on the element they wish to edit. This allows to focus on a specific element and make the necessary modifications. When the user finishes editing all the elements, a message will appear to inform them that they have reached the end of the elements and that they have been successfully edited (cf. depicted in Figure 6). The last functionality of the developed system is a new option to save the edited process in another repository within ATLAS. Once the user has finished editing all the desired elements, upon opening the save window to save their new process, the process name in the window will be cleared, and the user will have an option to save their process in another repository. By selecting this option, the user can choose a different repository within ATLAS where they want to save the edited process. This provides flexibility in organizing and storing processes based on the user’s preferences or project requirements. Figure 6: Finished template editing 6. Conclusions and Future Work The frequent and rapid changes imposed by the requirements demand an agile response, totally different from the classical approach of eliciting requirements [9], modelling the descriptive part of the process [10], adding the executable configuration to the process, and finally, deploying it and testing in a target engine [11]. A process factory aims at streamlining the production of business process from its inception idea until the deployment phase in any business process engine. Reusing the design of a business process from a template’ catalogue, where the variable points are customized is the key concept of our developed solution. Today, the ready-to- use business processes solution is being used in large consultancy projects. End users were informally surveyed regarding their subjective perceptions’ towards the solution, and the observations pointed to a positive perception of time saving when compared with a classical business process modelling process. As future work the following actions are identified: (i) evaluate the exact benefit of this approach in terms of time saved, resources reduction and minimization of errors, (ii) allow to specify gateways using DMN, (iii) automate the design process’ optimization, (iv) extend the approach to include BPMN sub-process, and (v) deploy the process in any BPMN compliant engine. Acknowledgement This work was supported by a pre-registered project, named as eProcess, which is under national funds with reference C669314338-00003137 (LINK CONSULTING – TECNOLOGIAS DE INFORMAÇÃO S.A.). References [1] M. Dumas, M. La Rosa, J. Mendling, H. A. Reijers, et al., Fundamentals of business process management, volume 2, Springer, 2018. [2] I. Beerepoot, C. Di Ciccio, H. A. Reijers, S. Rinderle-Ma, W. Bandara, A. Burattin, D. Calvanese, T. Chen, I. Cohen, B. Depaire, G. Di Federico, M. Dumas, C. van Dun, T. Fehrer, D. A. Fischer, A. Gal, M. Indulska, V. Isahagian, C. Klinkmüller, W. Kratsch, H. Leopold, A. Van Looy, H. Lopez, S. Lukumbuzya, J. Mendling, L. Meyers, L. Moder, M. Montali, V. Muthusamy, M. Reichert, Y. Rizk, M. Rosemann, M. Röglinger, S. Sadiq, R. Seiger, T. Slaats, M. Simkus, I. A. Someh, B. Weber, I. Weber, M. Weske, F. Zerbato, The biggest business process management problems to solve before we die, Computers in Industry 146 (2023) 103837. URL: https://www.sciencedirect.com/science/article/pii/S0166361522002330. doi:https://doi.org/10.1016/j.compind.2022.103837. [3] S. Guerreiro, P. Sousa, Semantifyingbpmn: a tool to generate bpmn models using demo (2022). URL: https://ceur-ws.org/Vol-3211/CR_109.pdf. [4] S. Guerreiro, P. Sousa, A framework to semantify bpmn models using demo business transaction pattern, arXiv preprint arXiv:2012.09557 (2020). [5] S. Guerreiro, A. Vasconcelos, P. Sousa, Business process design, in: Enterprise Architecture and Cartography: From Practice to Theory; From Representation to Design, Springer, 2022, pp. 185–210. [6] M. L. Rosa, W. M. V. D. Aalst, M. Dumas, F. P. Milani, Business process variability modeling: A survey, ACM Computing Surveys (CSUR) 50 (2017) 1–45. [7] M. Fellmann, A. Koschmider, R. Laue, A. Schoknecht, A. Vetter, Business process model patterns: state-of-the-art, research classification and taxonomy, Business Process Management Journal 25 (2019) 972–994. [8] Y. Derevyanko, S. Guerreiro, P. Sousa, Collaborative discovery and enrichment of business process models using a semantification approach, in: 2021 IEEE 23rd Conference on Business Informatics (CBI), volume 01, 2021, pp. 72–81. doi:10.1109/CBI52690.2021. 00018. [9] K. Pohl, Requirements engineering: fundamentals, principles, and techniques, Springer Publishing Company, Incorporated, 2010. [10] S. Guerreiro, Conceptualizing on dynamically stable business processes operation: a literature review on existing concepts, Business Process Management Journal 27 (2021) 24–54. [11] T. Lopes, S. Guerreiro, Assessing business process models: a literature review on techniques for bpmn testing and formal verification, Business Process Management Journal 29 (2023) 133–162.