A number of samples, or example Business Service projects are shipped with IBM BAMOE in the file, bamoe-9.5.1-examples.zip.

Below is a list of these example projects with a brief description of each. In the documentation you will find references to these examples which refer to your local installation of the example source and README files.

Project Name Assets Used Purpose

decisiontable-quarkus-example

Decision Table, Quarkus

A rule service to validate LoanApplication fact. Rules are written as a Decision Table.

decisiontable-springboot-example

Decision Table, Spring Boot

A rule service to validate LoanApplication fact. Rules are written as a Decision Table.

dmn-15-quarkus-example

DMN, Quarkus

A basic starting empty project to get started with DMN and Quarkus

dmn-15-springboot-example

DMN, Spring Boot

A basic starting empty project to get started with DMN and Spring Boot

dmn-drools-quarkus-metrics

DMN, Drools, Quarkus

To enable and monitor runtime metrics in DMN models using Drools and Quarkus

dmn-drools-springboot-metrics

DMN, Drools, Spring Boot

To enable and monitor runtime metrics in DMN models using Drools and Spring Boot

dmn-event-driven-quarkus

DMN, Quarkus, Kafka

This example demonstrates the capability of the Kogito Event-Driven Decisions Add-on: to enable, when included as dependency of a simple DMN service, to trigger evaluations of its models and receive the corresponding results via specific CloudEvents.

dmn-event-driven-springboot

DMN, Spring Boot, Kafka

This example demonstrates the capability of the Kogito Event-Driven Decisions Add-on: to enable, when included as dependency of a simple DMN service, to trigger evaluations of its models and receive the corresponding results via specific CloudEvents.

dmn-listener-dtable

DMN, Quarkus, Decision Table

To asynchronously evaluate decision tables using Quarkus capabilities

dmn-listener-quarkus

DMN, Quarkus, DMN listeners

To evaluate traffic violations with custom DMN listeners in Quarkus

dmn-listener-springboot

DMN, Spring Boot, DMN listeners

To evaluate traffic violations with custom DMN listeners in Spring Boot

dmn-multiple-models-quarkus-example

DMN, Quarkus

To evaluate multiple DMN models in Quarkus using the importing feature

dmn-quarkus-example

DMN, Quarkus

A simple DMN service in Quarkus

dmn-springboot-example

DMN, Spring Boot

A simple DMN service in Spring Boot

dmn-resource-jar-quarkus-example

DMN, Quarkus, JAR

To evaluate DMN models imported from external jars in Quarkus

dmn-resource-jar-springboot-example

DMN, Spring Boot, JAR

To evaluate DMN models imported from external jars in Spring Boot

flexible-process-quarkus

BPMN, Quarkus

A quickstart project showing use of flexible processes containing ad-hoc components to implement case management scenarios.

process-accelerator

BPMN, BAMOE

A project that showcases the recommended BAMOE Business Service configuration.

process-business-calendar

BPMN, Business Calendar

A basic project showcasing how to use the Business Calendar in a Business Service project.

process-business-rules-quarkus

BPMN, DRL, Quarkus

A basic business rules and processes example using DRL and the business rules task.

process-compact-architecture

BPMN, Compact Architecture

This example showcases a basic implementation on Quarkus of the Hiring process that drives a Candidate through different interviews until the candidate gets hired. It demonstrates how to embed the process subsystems in a single application, removing the need for events between them.

process-compact-architecture-springboot

BPMN, Compact Architecture

This example showcases a basic implementation on Spring Boot of the Hiring process that drives a Candidate through different interviews until the candidate gets hired. It demonstrates how to embed the process subsystems in a single application, removing the need for events between them.

process-decisions-quarkus

BPMN, DMN, DRL, Quarkus

This is an example project that shows the usage of decisions within processes. Decisions can be expressed in different domains or assets, such as DMN and DRL. The focus here is to show how to integrate decisions in an embedded way using Business Rule Task where they must be deployed together with the process, in the same application.

process-decisions-rest-quarkus

BPMN, DMN, DRL, REST, Quarkus

The focus here is to show how to integrate decisions in a remote way using REST API endpoints where they can be deployed decoupled from the process service, for instance, in different microservices with its build and deployment pipelines.

process-decisions-rules-quarkus

BPMN, DMN, DRL, Quarkus

This is an example project that shows the usage of decisions within processes. Decisions can be expressed in different domains or assets, such as DMN and DRL. The focus here is to show how to integrate decisions in an embedded way using Business Rule Task where they must be deployed together with the process, in the same application. Contains additional validations.

process-error-handling

BPMN, Error Handling

A simple usage scenario of the Error Handling Strategy.

process-event-driven

BPMN, Event-Driven

A basic project that uses Kafka to showcase the configuration and usage of events between Business Services.

process-event-listeners-quarkus

BPMN, Event Listeners, Quarkus

This quarkus example showcases Hiring process and demonstrates how to implement and use ProcessEventListener and UserTaskEventListener, and how to publish engine events to an external Elasticsearch read model via the EventPublisher SPI.

process-event-listeners-springboot

BPMN, Event Listeners, Spring Boot

This springboot example showcases Hiring process and demonstrates how to implement and use ProcessEventListener and UserTaskEventListener, and how to publish engine events to an external Elasticsearch read model via the EventPublisher SPI.

process-monitoring-quarkus

BPMN, Monitoring, Quarkus

This example demonstrates how to enable and consume the runtime metrics monitoring feature in Kogito with processes.

process-persistence

BPMN, Persistence

To implement persistence with BPMN processes

process-postgresql-persistence-quarkus

BPMN, PostgreSQL, Quarkus

To implement PostgreSQL persistence with BPMN processes

process-rest-service-call-quarkus

BPMN, REST, Quarkus

A quickstart project that processes users in the system. It’s main purpose is to to call external REST service to load a given user by its username.

process-rest-workitem-multi-quarkus

BPMN, REST, Work Items, Quarkus

This example contains a BPMN that performs two consecutive REST invocations using RestWorkItemHandler, an alternative declarative approach to service programatic calls.

process-rest-workitem-quarkus

BPMN, REST, Work Items, Quarkus

A quickstart project that processes users in the system. It’s main purpose is to to call external REST service to load a given user by its username.

process-saga-quarkus

BPMN, Saga, Quarkus

Service to demonstrate how to implement Saga pattern based on BPMN process with Kogito.

process-scripts-quarkus

BPMN, Scripts, Quarkus

A quickstart project is the simplest hello world kind of example, it accepts input and replies with hello message.

process-security

BPMN, Security

A basic project showcasing the configuration and usage of the BAMOE Business Service security features.

process-service-calls-quarkus

BPMN, Service Calls, Quarkus

To demonstrate service calls with BPMN processes

process-user-tasks-subsystem

BPMN, User Tasks

A basic project showcasing the usage of the BAMOE Business Service User Tasks API.

rules-legacy-quarkus-example

DRL, Quarkus

A simple rule service to validate LoanApplication fact. An injectable KieRuntimeBuilder is generated, so you can create Drools v7 KieBase and KieSession out of it.

rules-legacy-springboot-example

DRL, Spring Boot

A simple rule service to validate LoanApplication fact. An injectable KieRuntimeBuilder is generated, so you can create Drools v7 KieBase and KieSession out of it.

rules-legacy-scesim-quarkus-example

DRL, Test Scenario, Quarkus

A simple rule service to validate Hello fact and testing it using Scenario Simulation.

rules-legacy-scesim-springboot-example

DRL, Test Scenario, Spring Boot

A simple rule service to validate Hello fact and testing it using Scenario Simulation.

rules-quarkus-helloworld

DRL, Quarkus

A minimal hello world rule service.

ruleunit-event-driven-quarkus

Rule Units, Event-Driven, Quarkus

This example demonstrates the capability of the Kogito Event-Driven Rules Add-on: to enable, when included as dependency of a simple service containing DRL files, to trigger evaluations of its queries and receive the corresponding results via specific CloudEvents.

ruleunit-event-driven-springboot

Rule Units, Event-Driven, Spring Boot

This example demonstrates the capability of the Kogito Event-Driven Rules Add-on: to enable, when included as dependency of a simple service containing DRL files, to trigger evaluations of its queries and receive the corresponding results via specific CloudEvents.

ruleunit-quarkus-example

Rule Units, Quarkus

A simple rule service to validate LoanApplication fact. REST endpoints are generated from query rules. You can insert LoanApplication facts and query a result via the REST endpoints. Rule resources are assembled as a RuleUnit.

ruleunit-springboot-example

Rule Units, Spring Boot

A simple rule service to validate LoanApplication fact. REST endpoints are generated from query rules. You can insert LoanApplication facts and query a result via the REST endpoints. Rule resources are assembled as a RuleUnit.

standalone-editors-example

Standalone BPMN, Standalone DMN, Editors

A collection of web pages showcasing how to embed BAMOE Standalone BPMN and DMN Editors in your frontend application.

dmn-quarkus-example-gradle

DMN, Quarkus, Gradle

A simple DMN service in Quarkus and Gradle as building system.

dmn-springboot-gradle-example

DMN, Spring Boot, Gradle

A simple DMN service in Spring Boot and Gradle as building system.

process-compact-architecture-quarkus-gradle

BPMN, Compact Architecture, Quarkus, Gradle

This example showcases a basic implementation on Quarkus of the Hiring process that drives a Candidate through different interviews until the candidate gets hired. It demonstrates how to embed the process subsystems in a single application, removing the need for events between them.

process-compact-architecture-springboot-gradle

BPMN, Compact Architecture, Spring Boot, Gradle

This example showcases a basic implementation on Spring Boot of the Hiring process that drives a Candidate through different interviews until the candidate gets hired. It demonstrates how to embed the process subsystems in a single application, removing the need for events between them.

rules-quarkus-helloworld-gradle-example

DRL, Quarkus, Gradle

A minimal hello world rule service.

ruleunit-quarkus-gradle-example

Rule Units, Quarkus, Gradle

A simple rule service to validate LoanApplication fact. REST endpoints are generated from query rules. You can insert LoanApplication facts and query a result via the REST endpoints. Rule resources are assembled as a RuleUnit.