Business Rule Tasks
A "business rule task" represents a specific type of activity in a BPMN that involves evaluating and applying business rules or decision logic as part of the process flow.
Key characteristics of a business rule task:
Rule Evaluation: Business rule tasks represent activities that involve the "evaluation" of business rules, decision tables, or decision logic to determine the path the process should follow.
Decision Making: These tasks are used to make decisions or calculations based on the provided data and rules, which can affect the subsequent flow of the process.
Automated or Semi-Automated: Business rule tasks can be automated, where the decision logic is executed by a rule engine or a system, or can involve human interaction for rule evaluation and decision approval.
Conditional Flows: Business rule tasks often have multiple outgoing sequence flows with associated conditions that define different paths the process can take based on the outcomes of the rule evaluation.
Attributes:
The following are the attributes associated with the "Business Rule" tasks:
Attribute | Description |
---|---|
ID: | The "Id" attribute represents the unique identifier of the business rule task. It corresponds to the task definition key in the BPMN model. |
Name: | The "Name" attribute defines the name or label of the business rule task. |
Implementation:
The "Implementation" attribute specifies the method, class, or service that the business rule task will invoke or execute. It defines the technical implementation behind the task's functionality. Implementation options include:
Implementation | Description |
---|---|
Java Class: | If a Java class is used, the fully qualified class name is specified. This means that a Java class is responsible for executing the task. |
Expression: | An expression or script can be used to define the task's behavior. This allows for flexible and custom task execution based on the defined expression. Result Variable: You can specify the name of the variable where the task result will be stored. |
Delegate Expression: | A delegate expression can be used to dynamically determine the implementation class at runtime. This provides flexibility in choosing the implementation class based on runtime conditions. |
DMN: | DMN is a visual representation of decision logic within a business process, when selecting this option, you need to specify the Decision Model and Notation (DMN) decision reference. Decision Ref is a reference to a specific decision within the DMN model that the Business Rule Task will execute. Binding: Binding determines how the decision is linked to the Business Rule Task. Our tool offers the following options: - Latest: Choosing "Latest" ensures that the Business Rule Task always uses the most recent version of the decision. - Deployment: "Deployment" mode ties the task to a specific decision version deployed with the process. - Version: The "Version" mode lets you specify the decision version by providing a version number. - VersionTag: VersionTag allows you to label and reference specific decision versions for precise execution. Tenant ID: Tenant ID isolates decision execution within a specific tenant's scope, which is useful for multi-tenancy scenarios. Result Variable: Result Variable is where the output of the executed decision is stored, enabling further processing within the same process. |
External: | In the case of an "External" implementation, the business rule task is associated with an external service or system. This includes making HTTP requests to external APIs, invoking other systems via messaging, or integrating with external services. Topic: You need to provide a topic value. Identifies task categories within BPMN, aiding task categorization and external worker subscription. Task Priority: Assigns priority levels to tasks, influencing task processing order by external workers. Higher priorities are handled first, optimizing task management. |
Connector: | The "Connector" implementation involves the use of a connector or integration technology to interact with various external systems or services. It encapsulates the communication details and provides a structured way to make the interaction. (Note: You must define the connector's configuration to have it referenced within the business rule task.) |
Asynchronous Continuations:
Asynchronous continuations are used to specify whether a task is executed asynchronously, they include:
Attribute | Description |
---|---|
Asynchronous Before: | The "Asynchronous Before" attribute indicates if the task can be started asynchronously before other tasks or events in the process. |
Asynchronous After: | Similarly, the "Asynchronous After" attribute denotes whether the business rule task can be completed asynchronously after other tasks or events in the process. |