Skip to main content

Tasks

User Tasks Tasks

User tasks are used to model work that needs to be done by a human actor. When a process instance arrives at a user task, a new job is created and the process instance stops at this point and waits until the job is completed.

User tasks can be used to model a wide range of activities, such as:

  • Approving a purchase order
  • Reviewing a document
  • Completing a customer service request
  • Performing a quality inspection
  • Making a decision

User tasks are a key component of many business processes, and they can be used to automate a wide range of tasks that require human intervention.

Service Tasks Tasks

Service tasks are used to invoke services such as, providing a work item for an external worker to complete asynchronously, or invoking logic implemented as a web service. Service tasks are a powerful way to extend the capabilities of your business processes, and they can be used to integrate with a wide range of systems and services.

Here are some examples of how service tasks can be used:

  • To send an email notification
  • To call an API
  • To start a new subprocess
  • To interact with a database

Service tasks are a key component of many business processes, and they can be used to automate a wide range of tasks.

Business Rule Tasks Tasks

Business rule tasks are used to evaluate business rules. Business rules can be defined using Decision Model and Notation (DMN), which is a standard language for modeling and executing business decisions.

When a process instance arrives at a business rule task, the business rules are evaluated and the result is stored in a process variable. The process instance then continues based on the result of the evaluation.

Business rule tasks can be used to model a wide range of business decisions, such as:

  • Approving a loan application
  • Determining the discount to apply to a customer's order
  • Deciding whether to route a customer service request to a specific team
  • Calculating the risk of a new business venture

Business rule tasks are a powerful way to automate business decisions, and they can help to improve the efficiency and consistency of your business processes.

Manual Tasks Tasks

A manual task is used to model a task that is performed by a human actor outside of the BPM engine. Manual tasks are typically used to model tasks that are difficult or impossible to automate, such as:

  • Approving a document
  • Making a decision
  • Completing a physical task

When a process instance arrives at a manual task, the process instance stops at this point and waits until the human actor has completed the task. The human actor can use a variety of tools to complete the task, such as a web application, or a mobile app. Once the human actor has completed the task, they can notify the BPM engine that the task is complete.

Send Tasks Tasks

A send task is employed to model the transmission of a message to an external system, like a mail server, within a process model.

When a process instance enters a send task, it creates a corresponding job and awaits its execution. A job worker, authorized to handle the job type, can then complete it by sending the message to the external system.

Send tasks can be used to model a wide range of scenarios, such as:

  • Sending an email notification to a customer
  • Posting a message to a Kafka topic to trigger another process instance
  • Sending a request to a third-party system

Send tasks are used for modeling scenarios where business processes interact with external systems.

Receive Tasks Tasks

Receive tasks are used to model work that is triggered by the receipt of a message. When a process instance arrives at a receive task, the process instance stops at this point and waits until a message is received. Once the message is received, the process instance continues.

Receive tasks can be used to model a wide range of scenarios, such as:

  • Starting a new process instance when an order is received
  • Escalating a process instance when a customer complaint is received
  • Waiting for a response from a third-party system

Receive tasks are a powerful and flexible tool that can be used to model a wide range of scenarios where business processes need to be triggered or coordinated by the receipt of messages.

Script Tasks Tasks

Script tasks enable the execution of custom scripts or code within a business process, offering flexibility and customization. When a process instance encounters a script task, the associated script is executed, guiding the process based on the script's outcome.

Examples of script task usage include:

  • Transforming data formats within the process.
  • Implementing specialized validation logic.
  • Interacting with external APIs.
  • Adapting processes based on conditions or variables.

Script tasks provide a flexible way to incorporate custom logic, enhancing adaptability in business processes. However, careful testing and maintenance are essential for script reliability.