6. Canvas & Decision Model and Notation (DMN)¶
6.1 The Value of Open Standards for Decision Automation¶
6.1.1 Why DMN, and What is it¶
Decision Model and Notation (DMN) is an open standard that provides a powerful framework for decision automation. It offers a visual notation for decision modeling, a standardized approach to defining decision logic, and ensures interoperability between different tools and platforms. Designed to be easily understood by all stakeholders, from business users to developers, DMN enables the creation of executable models that can be run on various platforms, ensuring consistent decision-making processes.
DMN is particularly valuable because it: - Enhances communication between business and technical teams through visual notation - Ensures consistency and clarity in decision logic across different systems - Facilitates sharing and reuse of models across various tools and platforms - Supports a wide range of decision logic, from simple rules to complex decision trees
6.1.2 FEEL: A Standard Friendly Enough Expression Language¶
FEEL (Friendly Enough Expression Language) is a key component of DMN that provides an intuitive way to express decision logic. Here are some examples of FEEL to give you an idea of its simplicity:
Simple Conditional Logic: Checking if an applicant's age is above 18:
String Manipulation: Concatenating the first name and last name of an applicant:
List Operations: Calculating the average score from a list of scores:
Date Operations: Calculating the number of days between two dates:
6.2 IBM & OMG: Working towards the evolution of DMN¶
The collaboration between IBM and the Object Management Group (OMG) has been instrumental in the development and evolution of DMN. This partnership ensures continuous improvement of the standard, alignment with industry needs, and broader adoption across various sectors.
Did you know
The team behind Drools, an open-source decision management system, has been actively involved with OMG since the early days of DMN. They have consistently implemented the standard, even in its early versions. For more detailed information on Drools' implementation of DMN, you can explore Drools' documentation.
Next, let's explore the development experience with Canvas, starting with connecting Canvas to OpenShift.
6.3 Development Experience with Canvas¶
Note
If you haven't installed Canvas yet, please follow the installation guide here: Installing Canvas on OpenShift
6.3.1 Connecting Canvas to GitHub¶
To connect BAMOE Canvas to GitHub, follow these steps:
-
Create a GitHub Personal Access Token:
- Go to GitHub Settings
- Click on "Generate new token"
- Select the required scopes for accessing your repositories
- Generate the token and copy it
-
Configure Canvas with GitHub Token:
- Access BAMOE Canvas web interface
- Go to Settings
- Enter your GitHub personal access token in the provided field
- Save the configuration
With these steps, BAMOE Canvas will be connected to your GitHub account, allowing you to import projects and synchronize your work.
Great job! You now have a solid understanding of DMN and its value in decision automation. Let's dive into the development experience with Canvas.