Dmn

Are You DMN-Ready?

A primary design goal of the DMN standard was accessibility to subject matter experts and other "business users", i.e. non-programmers. DMN promises executable decision logic without programming, and it achieves that through a combination of standard diagrams (DRDs), standard tabular formats (boxed expressions), and a business-friendly expression language (FEEL). Nevertheless, you constantly hear that it's too hard for non-programmers. Absolutely not true, but what is true is that not all business users can do it.

How Contexts Simplify DMN Logic

I have made the point on multiple occasions (for example, here) that DMN is both more business-friendly and more powerful than better-known Low-Code languages such as Microsoft's Power FX. One reason for that is DMN's context boxed expression, which breaks down a complex bit of business logic (or decision logic, if you prefer) into multiple simple pieces, without cluttering up the DRD with dozens of little decisions. A context is a two-column table, the first column naming a new variable local to the context, and the second column a FEEL expression for its value.

Low-Code Business Automation is DMN's Killer App

[This post is my presentation at Decision Camp 2022, delivered September 27, 2022.] As a longtime DMN practitioner and from the beginning one of its biggest boosters, I am what you call a true believer. But while DMN continues to gain traction, even I would have to admit it has so far underperformed in the marketplace. The industry analysts say, "OK, we're aware of it... But what's the killer app?" It may not be what you think.

Datatypes with Constraints

As a followup to my post from last month, there is another aspect of datatypes I've been thinking about. When a simple type is subject to constraints, such as a numeric range or a list of enumerated values, I have been teaching students to create an item definition that expresses those constraints. For example, if a numeric value is always positive, we might assign it the datatype tPositiveNumber, a Number subject to the constraint >0.

Good DMN Begins with Datatype Assignment

In my DMN Method and Style training, we cover a lot of advanced topics, including calendar arithmetic, iteration, filters, and data validation. But I have found that problems in students' certification exercises more often relate to something much more basic, which we discuss at the very beginning of the course: assignment and naming of datatypes. Actually, the runtime engine often does not care whether you've assigned some decision to a datatype or not.

DMN Training Updated

With the imminent launch of version 11 of the Trisotech platform, I am happy to announce a new version of my DMN Method and Style training, effective immediately. Previously I offered two courses, DMN Basics and DMN Advanced, in which the focus of DMN Basics was top-down logic decomposition using Decision Requirements Diagrams (DRDs) and the proper use of decision tables, including hit policy. Unfortunately, the features of DMN most important in real projects, including Business Knowledge Models (BKMs), contexts, and FEEL, were left to the Advanced course.

Stateful Decision Models

Recently I viewed a DecisionCamp presentation on an application of DMN to a public-facing portal in the Netherlands for what we call in the USA building permits. Here is the link. The scope of the project is impressive, combining regulations defined at the national, provincial, and municipal level, plus those of special districts. The ultimate decision on what kind of permit is required depends on not only the location of the property but the nature of the property improvement.

A Standard for Low-Code Business Logic

Here's a thought: What if the greatest opportunity for DMN is not decision management? Over the past year, I have come to this conclusion, and that greener pastures lie in the direction of Low-Code Business Logic. Its addressable market is far larger, and there is less organized resistance among incumbent vendors than DMN faces in its home territory. In fact, I will assert that DMN should be considered the standard for Low-Code Business Logic.

What Makes BPMN and DMN Standards?

A couple weeks ago my attention was called to a LinkedIn post, one of those clickbait polls: "Is BPMN the standard? Do you use it? Would you expect it from others?" About 65% said Yes, but naturally the haters clogged the comment thread. Of most interest to me was a comment by Alec Sharp, a respected process modeling consultant, who says... BPMN is what I call a "claimed standard"... in practice rarely followed, at least as intended.

Translating Excel Examples into DMN Logic

In my Low-Code Business Automation methodology, the first step is something I call whiteboarding - developing examples of the logic created in Excel with an eye toward generalizing the logic to handle any possible example and then translating to DMN. This is actually the hardest part of the project, and the only part requiring subject matter expertise. The rest of it is purely mechanical. In the beta testing of my Business Automation training, some students have complained about the difficulty of doing this.