Process Engine
📄️ Process Engine
The tSM Process Engine is a universal tool for designing and executing processes and activities within the platform. It provides a comprehensive set of tools for process management, including a graphical process/activity designer, execution control, and the ability to modify process instances dynamically. Activities can be mapped to either automated actions (interface integration) or manual tasks assigned to users or groups.
📄️ User Task
User tasks represent manual activities that require interaction from a user or a group of users. Each user task can be configured with various attributes, conditions, and privileges, making it adaptable for diverse operational scenarios. User tasks can be linked to forms, enriched with skill requirements, and have complex status management options.
📄️ Service Task
Service tasks in tSM form the backbone of automated workflows, enabling robust integration and efficient process execution. By leveraging scripting, connectors, and tSM services, service tasks ensure that complex operations are handled seamlessly, improving overall operational productivity.
📄️ Gateways
Gateways in BPMN are used to control the divergence and convergence of the process flow. They provide a mechanism to split or merge multiple paths, controlling the flow logic. In tSM, the following gateway types are supported, each with its own unique semantics:
📄️ Starting a Process
In tSM, the most common method to initiate a business process is by using a none start event and associating the process with a primary business entity—such as an order or a ticket. This approach ensures that when a new entity is created, the corresponding process instance starts automatically and is directly linked to that entity’s lifecycle.
📄️ Process messaging
This chapter focuses on using message and signal events for process communication within the tSM Process Engine, which is based on the BPMN 2.0 standard. It provides an in-depth look at how messages and signals can be used to orchestrate and continue process executions, both within a single process instance and across multiple processes or external systems.
📄️ Transactions
The tSM Process Engine is designed for distributed, microservice-based deployments. It ensures that each part of a process either completes successfully or rolls back to a known stable state (a wait state). This transaction-oriented behavior guarantees data consistency, reliability, and clean handling of exceptions.
📄️ Process Versioning
The tSM Process Engine supports the deployment and management of multiple versions of a single process definition. Versioning ensures that you can continue to evolve and improve your processes over time, while still supporting currently running instances. It also enables controlled rollouts, hotfixes, and major or minor updates.
📄️ Process Engine Internals
The tSM Process Engine is an integral component of the tSM platform, providing robust and extensible process management capabilities. It is fully aligned with the BPMN 2.0 standard, ensuring compatibility with industry tools such as Enterprise Architect and other modeling solutions. By adhering to BPMN XML standards, with carefully designed custom extensions under the tsm namespace, the tSM Process Engine delivers both flexibility and interoperability.
📄️ BPMN XML Reference
Overview
📄️ Persistence
The tSM Process Engine primarily uses a relational database to store runtime and historical information about process definitions, instances, tasks, variables, and more.