Investigation of Microservice-Based Workflow Management Solutions for Industrial Automation
Abstract
:1. Introduction
- 1.
- It identifies the challenges for the industry with regard to choosing workflow management and execution solutions, which are grouped into a workflow lifecycle, and finds that microservice-based approaches address said challenges properly, especially those related to flexibility and dynamic data exchange.
- 2.
- It investigates different microservice-based approaches for workflow management and execution.
- 3.
- It investigates and compares how the various microservice-based workflow management methods address industrial requirements and challenges.
- 4.
- It compares the concrete implementation features of the microservice-based solutions to support decision-making in various scenarios.
2. Background and Related Work
2.1. Workflows and Business Processes
2.2. Microservice Architectures
- Stateful services: Each service needs to store the communication state and keep track of the exchanges, reacting differently depending on previous requests.
- Stateless services: The services are not required to record the state of communications. Consumers will obtain the same response regardless of any previous exchanges between the systems.
2.3. Services for Workflow Management
3. Challenges and Requirements Set by the Industry for the Workflow Lifecycle
3.1. Requirements for Workflow Generation
- Challenge 1. Workflow modeling: Architectural design and workflow representation are the main concerns in this stage. Workflow modeling describes the logical model used to represent workflows and considers architectural constraints. Different languages are used to represent workflows and accommodate their design and architectural elements. According to [49], the requirements related to workflow representation are as follows:
- Fit for collaborative context: The workflow language must provide standardized syntax and semantics for workflows in collaborative contexts. This includes utilities to generate and manage workflows or represent partial workflows.
- Fit for generation: A workflow language must support the generation of workflows by providing components built with character-encoding standards without visual representation data. The language should offer these components in an order-independent manner that enables workflow composition.
- Compactness: A workflow language must represent the specifications of all the essential components and their attributes as well as the details of a workflow. Other components and details, such as information related to the graphical model display for humans or similar data, are optional.
- Compositionality: The workflow language must uniquely identify each workflow and enable referencing from other workflows. References to other workflows substitute actions built with components, thus providing references to sub-workflows.
- Open semantics: The workflow language must provide components that represent domain- and activity-specific information. The syntax of these elements is not defined by the workflow language syntax specification.
- Extensibility: The workflow language should be capable of being enhanced with constructs that extend the workflow syntax with optional components, elements, and values. For example, modules containing policies or quality of service definitions may be used to augment the syntax.
- Challenge 2. Heterogeneous infrastructure scale [55]: This is an architectural challenge where designers must decide regarding the right level of aggregation/abstraction to compose workflows, considering the unit of execution decreases in edge environments, but interaction with the central cloud orchestrator systems is required. The architecture must support scalability by aggregating functionality in sub-workflows (e.g., using hierarchical models). At the same time, designers will require the abstract representation of units to cope with many similar devices performing detail-specific functionality. This architecture comprises numerous devices at the cloud and fog levels, where scalability is essential and data become a key factor for achieving workflow objectives [56]. The alternatives for this challenge must consider centralized or decentralized orchestration, PLM-based or smart product, and the level of deployment of workflow manager (cloud, plant, workstation, etc.).
- Chaining data from heterogeneous functions: Compared to the standard cloud model, where data are stored at a central point, in an IoT architecture, the cloud and fog devices operate together. Thus, the physical location and heterogeneity of information become an additional challenge [57]. The information and functionality are fragmented and where those data elements reside is essential for the correct WFM. Designers must chain this fragmented functionality into coherent workflows.
3.2. Requirements for Workflow Selection
- Feasibility: This requirement questions not only whether a workflow is technically feasible but also whether it is possible to execute it considering the context in which it will be implemented. This implies verifying whether there are services with sufficient quality for each task in the workflow or if there are policies prohibiting the execution of a service in a workflow.
- Valuation: Valuation consists of ordering workflows according to specific criteria (amount of tasks, computation cost, etc.). Valuation is usually performed according to the quality of the expected output.
- Policy: A policy is a predefined set of rules that determines the validity of a workflow primarily based on cost or quality.
3.3. Requirements for Workflow Implementation
- Challenge 3. Collaboration: This requirement implies that candidate systems must be designed to generate and manage workflows in collaboration with other systems and their associated resources. The systems must standardize the output and communication between resources, meaning that the requirements for the partial workflows produced in terms of syntax and semantics must be met by each contender. There is also a need for the orchestration of workflows that involve multiple organizations. Once again, architectural constraints appear at this level. Heterogeneous edge cloud implementations affect the orchestration of resources from multiple administrative domains.
- Openness: A system must be able to process workflow statements generated according to other partners’ specifications and be tolerant of elements of expression that are outside the domain’s and service’s expertise. Distributed workflow orchestration is essential to exploit the potential of edge cloud architectures, where workflow elements manage different domains and coordinate in a hierarchical or peer-to-peer manner. In this environment, the concept of openness serves to assure that a service provider that encounters elements in a workflow that it cannot process does not: (1) fail with regard to the incomprehensible elements, (2) modify those elements, or (3) remove or discard those elements. Moreover, the complexity of heterogeneous application development and deployment processes needs to be hidden and a sophisticated level of abstraction has to be proposed. The solution must provide toolkits that simplify not only the tasks of resource/service discovery and monitoring but also the management of end-to-end workflows. In addition, usage policies and an adaptive migration mechanism need to be established [58,59].
- Completeness: A system should provide a complete set of services for the generation and management of workflows. In case a system provides only a part of the required services during implementation, it must be extended through services from other providers that compensate for the lacking capabilities.
3.4. Requirements for Workflow Execution
- Challenge 4. Parallel execution capabilities: This challenge refers to the execution of multiple instances from the same workflow concurrently. It is also associated with multiple workflows requesting the same service at the same time, one workflow requesting multiple services at the same time, and so on. Parallelism can be approached from several points of view, depending on which actions can be carried out simultaneously in each scenario. Hence, it encompasses multiple instances of the same workflow running simultaneously, multiple workflows requesting the same service at the same time, or one workflow requesting multiple services at the same time.
- Challenge 5. Asynchronous service execution: This challenge addresses a workflow’s capability to accommodate asynchronous service communications. An asynchronous reply from a service task implies the provision of mechanisms to listen to the reply in order to continue the execution of a workflow. In comparison, a synchronous approach requires the task to stall until a reply is received from the service being invoked.
- Challenge 6. Dynamic nature of microservice architectures: This challenge refers to a group of phenomena that occur due to the dynamic nature of microservice-based architectures. These phenomena include the following:
- Dynamism: Mixed cloud, edge, and IoT architectures are constantly changing. Edge conditions bring significant dynamism to service-based applications, in contrast to the relative stability of large data centers. Dynamic adaptation mechanisms, including run-time configuration, deployment, and switching, are essential for the smooth execution of workflows across the infrastructure [55]. According to [60], tolerance toward the loss of connectivity from the workflow orchestrator and the various controllers is typically not addressed by the technologies usually employed in WFM. Dynamism and the need to adapt workflows to changes can increase the likelihood of device failure and workflow orchestration issues [57]. The workflow orchestrator must enable near real-time scheduling of network resources such that it can adapt to changing service demands [61].
- Rotation and unreliability: This refers to the changes that can be experienced from the point of view of functionality and not so much from that of availability as in the previous case (dynamism). Similar to the dynamism challenge, edge resources are inherently volatile and are increasingly being used to support transient services. The functions offered by IoT or edge architectures are ephemeral, which imposes a much higher rate of change compared to cloud environments. This nature poses significant challenges in the different functions enabling workflow orchestration [55]. The description of resources and functionalities may not always be accurate, as they can quickly become obsolete, complicating reliable deployment and service guarantees.
- Speed: The microservices or serverless computing-based architectures that today’s application systems work on are capable of delivering on-demand services with very fast response times. Hendrickson et al. [62] identified an important feature of serverless computing architectures: the ability to deploy new instances in milliseconds. These lightweight, rapidly deployable execution units are best suited for short-lived resources where failures are common. This presents a challenge for workflow orchestrators, who have to decide where to run a given function and reschedule services to cope with deployment speed and failures.
- Discovery: Microservice-based architectures and the constantly changing availability of services at the edge cause the discovery of available services at run-time to be an essential challenge for workflow orchestrators. The discovery of the available services and computing resources at the edge must go beyond predefined contracts and addresses. The probability of trying to contact a device that is no longer available is much higher at the edge, which causes device/service registration to be a pivotal aspect for assuring workflow execution efficiency [55].
- Challenge 7. Security and privacy: IoT and edge networks are vulnerable to new types of attacks related to data flows. Attacks might come from inside or outside the company control domain and affect the management of workflows. The security requirements at the edge are numerous: control of data flows, authentication at different levels, authorization and access management for microservices, etc. Managing the security and privacy-related risks is a complex task for CPSs, although standard compliance guidelines are available for all industrial stakeholders to follow [63].
4. Strategies for Workflow Management in a Microservice Architecture
4.1. Workflow Manager and Executor
4.2. Workflow Choreographer
4.3. WSO2 Enterprise Integrator
- Tooling: WSO2 Integration Studio (WSO2 IS) is among the modules offered by WSO2 EI. It is an eclipse-based drag-and-drop graphical development environment. It includes a visual tool palette, an option to import connectors to the tool palette, top-level integration constructs, and property views for complex configurations. Among its capabilities, there is the option to create BPMN or BPEL projects that enable the modeling of processes using the graphical interface provided by the tool and the generation of XML files.
- Deployment: WSO2 Business Process Server (WSO2 BPS) allows the user to deploy or undeploy business processes written in BPMN or BPEL through its web interface in a very intuitive manner. One has to simply select the file from the filesystem and upload it. Using the features, we can manage BPMN or BPEL instances (created beforehand) through the “Instances” dashboard and filter them according to their status (active, suspended, or completed). Some server settings can be customized in the “Configuration” dashboard, i.e., it allows one to add users, roles, keystores, and data sources. Finally, it also allows for the checking of the webserver statistics through the “Monitor” dashboard, which has some indicators such as memory usage, system uptime, average response time, and fault count.
- Monitoring/interaction: WSO2 BPMN Explorer enables interaction with deployed BPMN applications and allows the monitoring of the current status of workflows. Its main features are (1) a Dashboard tab where one can view statistics such as process instance count, the status of processes, and the status of task instances; (2) a Task tab to view, claim, and take action on BPMN tasks that require user intervention (e.g., filling a form); (3) a Processes tab to execute the deployed BPMN processes and view their diagrams; (4) a Monitoring tab to view the activity of specific process instances by providing the unique instance identifier, where one can see information such as start time, end time, and task state; and (5) a Reports tab to generate statistical reports of the current user’s actions in all the BPMN processes.
4.4. Node-RED Workflow Manager
4.5. FITMAN-CBPM
5. Discussion
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Johnsson, C. ISA 95-how and where can it be applied. Technol. Papers ISA 2004, 454, 399–408. [Google Scholar]
- Adolphs, P.; Bedenbender, H.; Dirzus, D.; Ehlich, M.; Epple, U.; Hankel, M.; Heidel, R.; Hoffmeister, M.; Huhle, H.; Karcher, B.; et al. Status report-reference architecture model industrie 4.0 (rami4. 0). In VDI-Verein Deutscher Ingenieure eV and ZVEI-German Electrical and Electronic Manufacturers Association, Tech. Rep; ZVEI e. V.: Frankfurt, Germany, 2015. [Google Scholar]
- Lin, S.W.; Miller, B.; Durand, J.; Bleakley, G.; Chigani, A.; Martin, R.; Murphy, B.; Crawford, M. The Industrial Internet of Things Volume G1: Reference Architecture. Industrial Internet Consortium. 2019. Available online: https://www.iiconsortium.org/pdf/IIRA-v1.9.pdf (accessed on 8 June 2021).
- Kozma, D.; Varga, P. Supporting digital supply chains by iot frameworks: Collaboration, control, combination. Infocommun. J. 2020, 12, 22–32. [Google Scholar] [CrossRef]
- Delsing, J. Iot Automation: Arrowhead Framework; CRC Press: Boca Raton, FL, USA, 2017. [Google Scholar]
- Ferreira da Silva, R.; Filgueira, R.; Pietri, I.; Jiang, M.; Sakellariou, R.; Deelman, E. A characterization of workflow management systems for extreme-scale applications. Future Gener. Comput. Syst. 2017, 75, 228–238. [Google Scholar] [CrossRef] [Green Version]
- Ivančić, L.; Suša Vugec, D.; Bosilj Vukšić, V. Robotic Process Automation: Systematic Literature Review. In Proceedings of the Business Process Management: Blockchain and Central and Eastern Europe Forum, Vienna, Austria, 1–6 September 2019; Di Ciccio, C., Gabryelczyk, R., García-Bañuelos, L., Hernaus, T., Hull, R., Indihar Štemberger, M., Ko, A., Staples, M., Eds.; Springer International Publishing: Cham, Switzerland, 2019; pp. 280–295. [Google Scholar]
- Carrera-Rivera, A.; Ochoa, W.; Larrinaga, F.; Lasa, G. How-to conduct a systematic literature review: A quick guide for computer science research. MethodsX 2022, 9, 101895. [Google Scholar] [CrossRef] [PubMed]
- Kagermann, H.; Helbig, J.; Hellinger, A.; Wahlster, W. Recommendations for Implementing the Strategic Initiative INDUSTRIE 4.0: Securing the Future of German Manufacturing Industry; Final Report of the Industrie 4.0 Working Group; Forschungsunion Acatech: Frankfurt, Germany, 2013. [Google Scholar]
- Russell, N.; Van Der Aalst, W.M.; Ter Hofstede, A.H. Workflow Patterns: The Definitive Guide; MIT Press: Cambridge, MA, USA, 2016. [Google Scholar]
- Hollingsworth, D.; Hampshire, U. Workflow management coalition: The workflow reference model. Doc. Number TC00-1003 1995, 19, 224. [Google Scholar]
- Hollingsworth, D. The workflow reference model: 10 years on. In Proceedings of the Fujitsu Services, UK; Technical Committee Chair of WfMC Citeseer. Future Strategies Inc.: Lighthouse Point, FL, USA, 2004. [Google Scholar]
- Wikipedia. Workflow Management Coalition—Wikipedia, The Free Encyclopedia. Available online: http://en.wikipedia.org/w/index.php?title=Workflow%20Management%20Coalition&oldid=1114640089 (accessed on 23 January 2023).
- van der Aalst, W.M. Don’t go with the flow: Web services composition standards exposed. IEEE Intell. Syst. 2003, 18, 72–76. [Google Scholar]
- Erl, T. Service-Oriented Architecture: Concepts, Technology & Design; Prentice Hall: Hoboken, NJ, USA, 2005. [Google Scholar]
- Bashioum, C.; Behera, P.; Breininger, K.; McCabe, F.; Brown, P.F.; Metz, R.; Hamilton, B.A. Reference Model for Service Oriented Architecture. OASIS Standard soa-rm, Organization for the Advancement of Structured Information (OASIS), 2006. Version 1.0. Available online: https://scholar.google.co.jp/scholar?hl=en&as_sdt=0%2C5&q=Reference+Model+for+Service+Oriented+Architecture&btnG= (accessed on 22 June 2021).
- Cerny, T.; Donahoo, M.J.; Pechanec, J. Disambiguation and comparison of soa, microservices and self-contained systems. In Proceedings of the Proceedings of the International Conference on Research in Adaptive and Convergent Systems, Krakow, Poland, 20–23 September 2017; pp. 228–235. [Google Scholar]
- IBM Cloud Education. SOA (Service-Oriented Architecture). Available online: https://www.ibm.com/cloud/learn/soa (accessed on 13 August 2021).
- Richardson, C. Microservices Patterns: With Examples in Java; Simon and Schuster: Shelter Island, NY, USA, 2018. [Google Scholar]
- FIWARE Foundation, e.V. Available online: https://www.fiware.org (accessed on 25 August 2021).
- Eclipse BaSyx. Available online: https://projects.eclipse.org/projects/dt.basyx (accessed on 25 August 2021).
- Eclipse Arrowhead. Available online: https://projects.eclipse.org/projects/iot.arrowhead (accessed on 25 August 2021).
- Garcia Represa, J.; Delsing, J. Autonomous production workstation operation, reconfiguration and synchronization. Procedia Manuf. 2019, 39, 226–234. [Google Scholar] [CrossRef]
- Paniagua, C.; Delsing, J. Industrial Frameworks for Internet of Things: A Survey. IEEE Syst. J. 2020, 1–11. [Google Scholar] [CrossRef]
- Becker, J.; zur Muehlen, M.; Gille, M. Workflow application architectures: Classification and characteristics of workflow-based information systems. Workflow Handb. 2002, 2002, 39–50. [Google Scholar]
- Leymann, F.; Roller, D.; Schmidt, M.T. Web services and business process management. IBM Syst. J. 2002, 41, 198–211. [Google Scholar] [CrossRef]
- Meyer, S.; Ruppen, A.; Magerkurth, C. Internet of things-aware process modeling: Integrating IoT devices as business process resources. In Proceedings of the International Conference on Advanced Information Systems Engineering, Valencia, Spain, 17–21 June 2013; pp. 84–98. [Google Scholar]
- Gartner, Inc. Market Guide for Intelligent Business Process Management Suites. Available online: https://www.gartner.com/en/documents/3993207-market-guide-for-intelligent-business-process-management (accessed on 16 June 2021).
- Lyu, M.; Biennier, F.; Ghodous, P. Integration of ontologies to support Control as a Service in an Industry 4.0 context. Serv. Oriented Comput. Appl. 2021, 15, 127–140. [Google Scholar] [CrossRef]
- Boschi, F.; Tavola, G.; Taisch, M.; Gepp, M.; Foehr, M.; Colombo, A. PERFoRM: Industrial Context and Project Vision; CRC Press: Boca Raton, FL, USA, 2019; pp. 1–31. [Google Scholar] [CrossRef]
- Schnicke, F.; Kuhn, T.; Antonino, P.O. Enabling industry 4.0 service-oriented architecture through digital twins. In Proceedings of the Software Architecture: 14th European Conference, ECSA 2020 Tracks and Workshops, L’Aquila, Italy, 14–18 September 2020; Proceedings 14 2020. Volume 1269 CCIS, pp. 490–503. [Google Scholar]
- Bellini, P.; Cenni, D.; Mitolo, N.; Nesi, P.; Pantaleo, G.; Soderi, M. High level control of chemical plant by industry 4.0 solutions. J. Ind. Inf. Integr. 2022, 26, 100276. [Google Scholar] [CrossRef]
- Barz, M.; Poller, P.; Schneider, M.; Zillner, S.; Sonntag, D. Human-in-the-Loop Control Processes in Gas Turbine Maintenance. In Proceedings of the International Conference on Industrial Applications of Holonic and Multi-Agent Systems, Lyon, France, 28–30 August 2017; pp. 255–268. [Google Scholar] [CrossRef]
- Suri, K.; Gaaloul, W.; Cuccuru, A.; Gerard, S. Semantic framework for internet of things-aware business process development. In Proceedings of the 2017 IEEE 26th International Conference on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE). IEEE, Poznan, Poland, 21–23 June 2017; pp. 214–219. [Google Scholar]
- Steindl, G.; Kastner, W. Semantic Microservice Framework for Digital Twins. Appl. Sci. 2021, 11, 5633. [Google Scholar] [CrossRef]
- Schaffer, E.; Schobert, M.; Reichenstein, T.; Selmaier, A.; Stiehl, V.; Herhoffer, M.; Mala, M.; Franke, J. Reference Architecture and Agile Development Method for a Process-Driven Web Platform Based on the BPMN-Standard and Process Engines; Elsevier: Amsterdam, The Netherlands, 2021; Volume 103, pp. 146–151. [Google Scholar]
- Kayabay, K.; Gokalp, M.O.; Eren, P.E.; Kocyigit, A. A Workflow and Cloud Based Service-Oriented Architecture for Distributed Manufacturing in Industry 4.0 Context; IEEE: Paris, France, 2018; pp. 88–92. [Google Scholar]
- Viriyasitavat, W.; Bi, Z.; Hoonsopon, D. Blockchain technologies for interoperation of business processes in smart supply chains. J. Ind. Inf. Integr. 2022, 26. [Google Scholar] [CrossRef]
- Zubaydi, H.D.; Varga, P.; Molnár, S. Leveraging Blockchain Technology for Ensuring Security and Privacy Aspects in Internet of Things: A Systematic Literature Review. Sensors 2023, 23, 788. [Google Scholar] [CrossRef]
- Leng, J.; Ruan, G.; Jiang, P.; Xu, K.; Liu, Q.; Zhou, X.; Liu, C. Blockchain-empowered sustainable manufacturing and product lifecycle management in industry 4.0: A survey. Renew. Sustain. Energy Rev. 2020, 132, 110112. [Google Scholar] [CrossRef]
- Mazzola, L.; Waibel, P.; Kaphanke, P.; Klusch, M. Smart Process Optimization and Adaptive Execution with Semantic Services in Cloud Manufacturing. Information 2018, 9, 279. [Google Scholar] [CrossRef] [Green Version]
- Borodulin, K.; Radchenko, G.; Shestakov, A.; Sokolinsky, L.; Tchernykh, A.; Prodan, R. Towards Digital Twins Cloud Platform: Microservices and Computational Workflows to Rule a Smart Factory. In Proceedings of the 10th International Conference on Utility and Cloud Computing (Ucc’ 17). Assoc Comp Machinery; Ieee Comp Soc; Ieee Tcsc; Acm Sigarch; IEEE, Austin, TX, USA, 5–8 December 2017; pp. 209–210. [Google Scholar] [CrossRef]
- European Commission, CORDIS. Future Internet Technologies for MANufacturing (FITMAN). Available online: https://cordis.europa.eu/project/id/604674/ (accessed on 20 June 2021).
- FIWARE. FITMAN-CBPM. Available online: https://fimac.m-iti.org/dse1.php (accessed on 15 June 2021).
- De Panfilis, S.; Gusmeroli, S.; Rodriguez, J.; Benedicto, J. FIWARE for Industry: A Data-driven Reference Architecture. Enterprise Interoperability: Smart Services and Business Impact of Enterprise Interoperability; Wiley Online Library: Hoboken, NJ, USA, 2018; pp. 171–178. [Google Scholar]
- FITMAN. Virtual Factory Experimentation Report. Available online: https://cordis.europa.eu/docs/projects/cnect/4/604674/080/deliverables/001-D63FITMANVirtualFactoryExperimentationReportv10.pdf (accessed on 20 June 2021).
- Proceedings of the 2017 IEEE International Conference on Software Architecture Workshops, ICSAW 2017: Side Track Proceedings, Gothenburg, Sweden, 5–7 April 2017.
- Insfran, E. Advances in Information Systems Development; Springer: Berlin, Germany, 2022; Available online: https://link.springer.com/content/pdf/10.1007/978-3-030-95354-6.pdf (accessed on 28 January 2023).
- van Veelen, J.B.; Holenderski, M. D2.2—State of the Art for Complex Workflow Generation. Available online: https://productive40.eu/publications/ (accessed on 22 August 2021).
- Lenhard, J.; Ferme, V.; Harrer, S.; Geiger, M.; Pautasso, C. Lessons learned from evaluating workflow management systems. In Proceedings of the International Conference on Service-Oriented Computing, Seville, Spain, 29 November–2 December 2017; pp. 215–227. [Google Scholar]
- Albreshne, A.; Fuhrer, P.; Pasquier, J. Web services orchestration and composition. Hewlett-Packard’s Dev. Resour. Organ 2009, 46–52. Available online: https://www.unifr.ch/inf/softeng/en/assets/public/files/research/publications/pdf/WP09-03.pdf (accessed on 28 January 2023).
- Urgese, G.; Azzoni, P.; van Deventer, J.; Delsing, J.; Macii, E. An engineering process model for managing a digitalised life-cycle of products in the industry 4.0. In Proceedings of the NOMS 2020-2020 IEEE/IFIP Network Operations and Management Symposium, Budapest, Hungary, 20–24 April 2020; pp. 1–6. [Google Scholar]
- Ivanov, S.; Kalenkova, A. Comparing process models in the BPMN 2.0 XML format. In Proceedings of the Spring/Summer Young Researchers’ Colloquium on Software Engineering; 2015; Volume 27, pp. 255–266. Available online: https://www.researchgate.net/publication/281371417_Comparing_process_models_in_the_BPMN_20_XML_format (accessed on 28 January 2023).
- OMG. Business Process Model Furthermore, Notation (BPMN); OMG: Milford, MA, USA, 2022; Available online: https://www.omg.org/spec/BPMN/2.0/PDF (accessed on 28 January 2023).
- Vaquero, L.M.; Cuadrado, F.; Elkhatib, Y.; Bernal-Bernabe, J.; Srirama, S.N.; Zhani, M.F. Research challenges in nextgen service orchestration. Future Gener. Comput. Syst. 2019, 90, 20–38. [Google Scholar] [CrossRef] [Green Version]
- Jiang, Y.; Huang, Z.; Tsang, D.H.K. Challenges and Solutions in Fog Computing Orchestration. IEEE Netw. 2018, 32, 122–129. [Google Scholar] [CrossRef]
- Wen, Z.; Yang, R.; Garraghan, P.; Lin, T.; Xu, J.; Rovatsos, M. Fog Orchestration for Internet of Things Services. IEEE Internet Comput. 2017, 21, 16–24. [Google Scholar] [CrossRef] [Green Version]
- Giang, N.K.; Blackstock, M.; Lea, R.; Leung, V.C. Developing IoT applications in the Fog: A Distributed Dataflow approach. In Proceedings of the 2015 5th International Conference on the Internet of Things (IOT), Seoul, Republic of Korea, 26–28 October 2015; pp. 155–162. [Google Scholar] [CrossRef]
- de Brito, M.S.; Hoque, S.; Magedanz, T.; Steinke, R.; Willner, A.; Nehls, D.; Keils, O.; Schreiner, F. A service orchestration architecture for Fog-enabled infrastructures. In Proceedings of the 2017 Second International Conference on Fog and Mobile Edge Computing (FMEC), Valencia, Spain, 8–11 May 2017; pp. 127–132. [Google Scholar] [CrossRef]
- Rotsos, C.; King, D.; Farshad, A.; Bird, J.; Fawcett, L.; Georgalas, N.; Gunkel, M.; Shiomoto, K.; Wang, A.; Mauthe, A.; et al. Network service orchestration standardization: A technology survey. Comput. Stand. Interfaces 2017, 54, 203–215, SI: Standardization SDN & NFV. [Google Scholar] [CrossRef]
- Velasco, L.; Castro, A.; King, D.; Gerstel, O.; Casellas, R.; Lopez, V. In-operation network planning. IEEE Commun. Mag. 2014, 52, 52–60. [Google Scholar] [CrossRef] [Green Version]
- Hendrickson, S.; Sturdevant, S.; Harter, T.; Venkataramani, V.; Arpaci-Dusseau, A.C.; Arpaci-Dusseau, R.H. Serverless Computation with OpenLambda. In Proceedings of the Proceedings of the 8th USENIX Conference on Hot Topics in Cloud Computing, Denver, CO, USA, 20–21 June 2016; pp. 33–39. [Google Scholar]
- Matta, G.; Chlup, S.; Shaaban, A.M.; Schmittner, C.; Pinzenöhler, A.; Szalai, E.; Tauber, M. Risk Management and Standard Compliance for Cyber-Physical Systems of Systems. Infocommun. J. 2021, 13, 32–39. [Google Scholar] [CrossRef]
- Derhamy, H.; Andersson, M.; Eliasson, J.; Delsing, J. Workflow management for edge driven manufacturing systems. In Proceedings of the 2018 IEEE Industrial Cyber-Physical Systems (ICPS), Saint Petersburg, Russia, 15–18 May 2018; pp. 774–779. [Google Scholar]
- Albano, M.; Ferreira, L.L.; Sousa, J. Extending publish/subscribe mechanisms to SOA applications. In Proceedings of the 2016 IEEE World Conference on Factory Communication Systems (WFCS), Aveiro, Portugal, 3–6 May 2016; pp. 1–4. [Google Scholar]
- Kozma, D.; Varga, P.; Szabo, K. Achieving Flexible Digital Production with the Arrowhead Workflow Choreographer. In Proceedings of the IECON 2020 The 46th Annual Conference of the IEEE Industrial Electronics Society, Singapore, 18–21 October 2020. [Google Scholar] [CrossRef]
- Kozma, D.; Varga, P.; Larrinaga, F. Dynamic Multilevel Workflow Management Concept for Industrial IoT Systems. IEEE Trans. Autom. Sci. Eng. 2020, 1–13. [Google Scholar] [CrossRef]
- White, S.A. Introduction to BPMN; IBM Cooperation: 2004. Available online: yoann.nogues.free.fr/IMG/pdf/07-04_WP_Intro_to_BPMN_-_White-2.pdf (accessed on 28 January 2023).
- Jensen, K.; Rozenberg, G. High-Level Petri Nets: Theory and Application; Springer Science & Business Media: Berlin, Germany, 2012. [Google Scholar]
- Kozma, D.; Varga, P.; Larrinaga, F. System of Systems Lifecycle Management—A New Concept Based on Process Engineering Methodologies. Appl. Sci. 2021, 11, 3386. [Google Scholar] [CrossRef]
- WSO2, LLC. WSO2 Enterprise Integrator. Available online: https://wso2.com/integration/ (accessed on 22 August 2021).
- Plósz, S.; Hegedűs, C.; Varga, P. Advanced security considerations in the arrowhead framework. In Proceedings of the International Conference on Computer Safety, Reliability, and Security, Trondheim, Norway, 21–23 September 2016; pp. 234–245. [Google Scholar]
- Maksuti, S.; Zsilak, M.; Tauber, M.; Delsing, J. Security and autonomic management in system of systems. Infocommun. J. 2021, 13, 66–75. [Google Scholar] [CrossRef]
- IBM’s Emerging Technology Services. Node-RED. Available online: https://nodered.org/ (accessed on 22 August 2021).
- Larrinaga, F.; Ochoa, W.; Perez, A.; Cuenca, J.; Legaristi, J.; Illarramendi, M. Node-RED Workflow Manager for Edge Service Orchestration. In Proceedings of the NOMS 2022-2022 IEEE/IFIP Network Operations and Management Symposium, Budapest, Hungary, 25–29 April 2022; pp. 1–6. [Google Scholar]
- Hachicha, M.; Fahad, M.; Moalla, N.; Ouzrout, Y. Performance assessment architecture for collaborative business processes in BPM-SOA-based environment. Data Knowl. Eng. 2016, 105, 73–89, Knowledge Engineering for Enterprise, Integration, Interoperability and Networking: Theory and Applications. [Google Scholar] [CrossRef]
- Hachicha, M.; Moalla, N.; Fahad, M.; Ouzrout, Y. A maturity model to promote the performance of collaborative business processes. In Proceedings of the IFIP International Conference on Product Lifecycle Management. Springer, Doha, Qatar, 19–21 October 2015; pp. 112–124. [Google Scholar]
- Saaty, T.L. What is the analytic hierarchy process? In Mathematical Models for Decision Support; Springer: Berlin, Germany, 1988; pp. 109–121. [Google Scholar]
- Addinsoft. XLSTAT—Nalytic Hierarchy Process. Available online: https://www.xlstat.com/en/solutions/features/analytic-hierarchy-process (accessed on 23 January 2023).
Workflow Challenges | Workflow Manager and Executor | Workflow Choreographer | WSO2 Enterprise Integrator | Node-RED Workflow Manager | FITMAN-CBPM |
---|---|---|---|---|---|
Workflow lifecycle stage support | Selection, implementation, and execution | Selection, implementation, and execution | Selection, implementation, and execution | Generation, selection, implementation, and execution | Generation, selection, implementation, and execution |
(1) Workflow Modeling language | Finite state machines | BPMN and CPN | BPMN and BPEL | Workflow recipe in BPMN format | Workflow recipe in BPMN format. Services are semantically annotated using ontologies |
(2) Heterogeneous infrastructure orchestrator scale | Centralized, orchestrated from a central point at the workstation level | Orchestrated from a central point | Centralized, orchestrated from a central point at the cloud level | Centralized, orchestrated from a central point at the workstation level | Centralized, orchestrated from a central point at the cloud level |
(3) Collaboration workflow tasks | Only able to assign tasks to software systems; no human operators unless they interface with a human–machine interface (HMI) | Only able to assign tasks to software systems; no human operators unless they interface with an HMI | Task types provided by BPEL and BPMN modeling languages are supported (service tasks, script tasks, user tasks, manual tasks, etc.) | Only service tasks are supported; no human operators unless they interface with an HMI | Ontological model for collaborative business process assessment. BPMN user tasks are supported intrinsically by Activiti. |
(4) Parallel execution capabilities | Multiple instances of the same workflow and multiple service requests simultaneously | Multiple instances of the same workflow and multiple service requests simultaneously | Multiple instances of the same workflow are handled by the process engine and multiple services can run simultaneously using the parallel gateway node of BPMN. | Multiple instances of the same workflow and multiple service requests simultaneously | Multiple instances of the process can be launched and used by end users |
(5) Asynchronous service request | Workflow Manager performs asynchronous calls for management services, while Workflow Executor depends on the workflow task’s individual requirements | Service requests can arrive and be executed asynchronously and even in an order revealed on-the-fly if the recipe allows—as resource availability permits due to the Colored Petri Net approach | A service task can be mark as async at design time, an asynchronous service invocation follows the Request/Acknowledge/Callback pattern | The engine can detect BPMN tasks flagged as async, invoke the asynchronous service, detect dependencies, and executes accordingly | Asynchronous service-tasks are supported intrinsically by Activiti |
(6) Dynamic nature of microservice architectures | The Arrowhead Framework supports the runtime discovery of available services and the re-orchestration of faulty endpoints | The Arrowhead Framework supports the runtime discovery of available services and the re-orchestration of faulty endpoints | The Arrowhead Framework supports the runtime discovery of available services and the re-orchestration of faulty endpoints | The Arrowhead Framework supports the runtime discovery of available services and the re-orchestration of faulty endpoints | Service discovery supported at design-time, provided by a central repository of services |
(7) Computer security | Security provided by Arrowhead framework: AAA core system, authentication using X.509 standard certificates and authorization rules for granular access to each service | Security provided by Arrowhead framework: AAA core system, authentication using X.509 standard certificates and authorization rules for granular access to each service | Provided by WSO2 framework: users, roles, and certificates | Provided by Node-RED: Access to editor over https, authentication through username/password, and authentication against any OAuth/OpenID provider.Security between processes could rely on Arrowhead framework authorization core system | Provided by Activiti explorer: Access to editor over https in combination with basic authentication (user and password) |
Context | Workstation manufacturing workflows, mainly carried out using automated tools and machines on a factory shop floor | Any kind of automated manufacturing process that can be started and stopped by human operators. Furthermore, supporting automatic error handling in runtime | High-level enterprise-level processes with human intervention. Relies on other alternatives for workstation level | Any kind of dataflow or process except those involving human tasks (that require development).Specifically created for running on embedded systems | Collaborative business process management and SOA-based environment. The focus is the provision of tools for collaboration among the roles of BPM and manufacturing. |
Implementation Features | WSO2 Enterprise Integrator | Node-RED Workflow Manager | Workflow Manager and Executor | Workflow Choreographer | FITMAN-CBPM |
---|---|---|---|---|---|
Software license | Open source-Apache License 2.0 | Open source-Apache License 2.0 | Open source-Eclipse Public License 2.0 | Open source-Eclipse Public License 2.0 | Open source-GPL v3 Licence |
Management interface | Design: Eclipse IDEDeployment: Web applicationMonitoring: Web application | Web Application/Tool GUI and REST API | REST API | REST API | Web application and REST API |
Communication pattern | Processes interact by sending and receiving messages, connecting tasks in different pools and/or pools themselves | Handled at database level, the engine reads the BPMN structure to know the sequence flow | Request–response | Request–response | Follows the communication pattern provided by BPMN (sending and receiving messages) |
Communication protocol | AMQP, MQTT, JMS, Amazon SQS, HTTP, and FTP | HTTP (other possible) | HTTP | HTTP | HTTP |
Programming language | 56% Java38% JavaScript6% other | JavaScript | Java 11 | Java 11 | Java, JavaScript, and Web Ontology Language |
Runtime | WSO2 framework (JRE 8 behind) | Node-RED framework (Node.js behind) | Java Runtime Environment (JRE) 11 | Spring framework | Activiti engine |
Workflow Challenges | Mean Impact % |
---|---|
(1) Workflow lifecycle stage support | 14.14 |
(2) Heterogeneous infrastructure orchestrator scale | 10.86 |
(3) Collaboration workflow tasks | 8.59 |
(4) Parallel execution capabilities | 14.79 |
(5) Asynchronous service request | 11.80 |
(6) Dynamic nature of microservice architectures | 12.37 |
(7) Computer Security | 11.55 |
(8) Context | 15.90 |
Workflow Challenges | Workflow Manager and Executor | Workflow Choreographer | WSO2 Enterprise Integrator | Node-RED Workflow Manager | FITMAN-CBPM |
---|---|---|---|---|---|
(1) Workflow lifecycle stage support | 1.96 | 4.98 | 2.73 | 2.35 | 2.12 |
(2) Heterogeneous infrastructure orchestrator scale | 3.55 | 2.89 | 1.12 | 2.16 | 1.15 |
(3) Collaboration workflow tasks | 1.50 | 1.50 | 2.32 | 1.29 | 1.98 |
(4) Parallel execution capabilities | 3.35 | 4.24 | 2.59 | 2.66 | 1.95 |
(5) Asynchronous service request | 2.81 | 2.94 | 2.16 | 2.03 | 1.85 |
(6) Dynamic nature of microservice architectures | 3.40 | 3.40 | 2.40 | 2.40 | 0.76 |
(7) Computer security | 3.26 | 3.26 | 2.18 | 1.94 | 0.90 |
(8) Context | 3.11 | 3.93 | 4.55 | 2.28 | 2.03 |
Total Added % | 22.95 | 27.15 | 20.06 | 17.11 | 12.74 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Represa, J.G.; Larrinaga, F.; Varga, P.; Ochoa, W.; Perez, A.; Kozma, D.; Delsing, J. Investigation of Microservice-Based Workflow Management Solutions for Industrial Automation. Appl. Sci. 2023, 13, 1835. https://doi.org/10.3390/app13031835
Represa JG, Larrinaga F, Varga P, Ochoa W, Perez A, Kozma D, Delsing J. Investigation of Microservice-Based Workflow Management Solutions for Industrial Automation. Applied Sciences. 2023; 13(3):1835. https://doi.org/10.3390/app13031835
Chicago/Turabian StyleRepresa, Jaime Garcia, Felix Larrinaga, Pal Varga, William Ochoa, Alain Perez, Dániel Kozma, and Jerker Delsing. 2023. "Investigation of Microservice-Based Workflow Management Solutions for Industrial Automation" Applied Sciences 13, no. 3: 1835. https://doi.org/10.3390/app13031835
APA StyleRepresa, J. G., Larrinaga, F., Varga, P., Ochoa, W., Perez, A., Kozma, D., & Delsing, J. (2023). Investigation of Microservice-Based Workflow Management Solutions for Industrial Automation. Applied Sciences, 13(3), 1835. https://doi.org/10.3390/app13031835