Decision Model & Notation – A new approach to business rules

Business rule engines (BRE) have been around for a long time. Introduced in the early 1990s, BREs have found application in many industries, particularly those that are heavily regulated where compliance and auditability are key concerns. A BRE enables complex rules and regulations to be encoded in a rule language, some of which bear a passing resemblance to English. The BRE can then evaluate the rules against enterprise data to ensure that the business transactions, etc. that the enterprise is performing comply with those rules. Today one of the most popular rule engines is Drools, an open source engine sponsored by Red Hat with a powerful rule language, called DRL, and a highly efficient algorithm that can scale to support hundreds of thousands of rules and terabytes of data.

Rule engines are a great idea. It’s much easier to simply specify all the rules that should apply to a particular transaction than it is to write a program in a traditional language like Java to verify compliance. And it’s much easier to change the rules in a BRE when needed than to modify and test a traditional application. Today’s focus on digital transformation is finding ever wider applications for BREs, from cleansing big data, to fraud detection to identifying patterns in event streams from the Internet of Things.

However, rules engines have had difficulty gaining traction with the business community – the analysts and business experts that understand the rules of the business and would be the logical people to encode them in a rule language. Even though such languages can be tailored for ‘business users’, it is still a steep learning curve fraught with potential pitfalls – conflicts between rules, unseen overlaps, gaps and so on. These difficulties have limited the adoption of BREs to organizations with more complex needs, and with the skills needed to fully utilize the capabilities of a BRE.

Now, however, there is a new approach. In 2015 the Object Management Group published a specification for a graphical decision language designed specifically for business users. Now in its 3rd year and version 1.2, Decision Model and Notation (DMN) manages to combine a straightforward representation of the inputs, outputs and rules that govern a business decision, with the expressiveness needed to encompass the information required to fully automate any decision. At the heart of DMN is an expression language called FEEL, for Friendly Enough Expression Language. FEEL is designed from the outset for use by business people, allowing them to specify business logic with no greater complexity than a typical Excel spreadsheet.

Here at Red Hat we are proud to offer full DMN support with our rule engine – Red Hat Decision Manager. If you would like to learn more about DMN, and how it might help you better automate business decisions, we have joined forces with the IIBA to host a webinar on October 18 at 1pm ET to further explore the topic. I’ll be joined by Denis Gagne at Trisotech for a deeper dive into DMN and the Red Hat engine. If you would like to register you can do so here, and we’ll be delighted to have you join!

 

From BPM and business automation to digital automation platforms

The business processes that create customer value are the critical piece that links together all of the different aspects of digital transformation. But still, many of the critical activities that contribute to it are either manual or a succession of disconnected workflows or applications that prevent organizations from having an end-to-end view of how their processes deliver customer value.  

Evolving from workflows to BPM – business process management – added a whole collaborative layer and execution structure to the traditional hierarchy and project-based structure of the enterprise. When it was paired with access to the critical data and documents, alongside activity visibility and business rules, it helped to exponentially grow productivity and agility in the enterprise for many years.

Nowadays, enterprises have discovered already how to use these technologies and apply them to work with structured and unstructured processes, to create business rules to guide and support decision making, or the importance of integrating process outputs and inputs in real time to external systems that interact with the processes. These process-centric applications are even cloud-ready so you can run your processes in the cloud and open them up more securely to all of your internal and external collaborators.

But times are changing. Productivity and agility are no longer the name of the game. It is no longer enough to provide ease of use, business, and IT collaboration, or fast modification of processes and rules. Speed and support for digital transformation have become top priorities. Those process-based applications need to be quickly deployed into production, be portable, reusable and consistent across environments, and scaled in the hybrid cloud. Our customers expect cloud-native technologies at the core of their processes. They expect to run their process workloads to scale across the hybrid cloud to provide a consistent experience to their customers and collaborators. Ideally, they also want to future-proof their investments with modern technologies such as containers.

Continue reading “From BPM and business automation to digital automation platforms”

Effective Case Management within a BPM Framework

In real life, organizations have workflows which may not fit into prescribed, sequential process path or which require human intervention or approval before the entire process can be completed. Within the business process world, more unstructured and unpredictable work is handled through case management rather than process management.

There are slightly different standards defined for case management and process management, which reflect the differences in the types of process flows and data being handled in each type of model.

But the question for business architects is which standard to use or whether to try to balance both — and then for developers to try to create models on different or shared development platforms.

A Quick Comparison of CMMN and BPM for Development Standards

First, it may be helpful to explain why there is a difference between business process management and case management. Both models are defined by two separate specifications, Business Process Model and Notation (BPMN) and Case Model and Notation (CMMN), respectively.

Continue reading “Effective Case Management within a BPM Framework”

Process management and business logic for responsive cloud-native applications: Red Hat Process Automation Manager is released

Today, Red Hat announced the latest major release of its business process suite, with a new name and several major changes that pivot the focus of the product itself. Red Hat Process Automation Manager is about more than providing a business process modeler or optimizing resource allocation. This is the first generation (at Red Hat) of a digital automation platform — a hub where business users and technical developers can collaborate to create strategically-relevant, intelligent applications.

Red Hat Process Automation Manager has two core conceptual areas:

  • The first is based on decision management (the “intelligent” part of intelligent or even-driven applications). This includes the decision engine of Red Hat Decision Manager and allows automated, immediate responses to interactions, from event processing to resource optimization.
  • Second, Process Automation Manager provides the means of modeling and applying business logic within an application. In combination with a graphical UI, these creates a platform for business users to be able to design business logic in collaboration with the technical teams.

New feature: Process management + case management

The heart of a BPM platform is the “BP” — business process modeling. The previous BPM Suite supported BPMN, the notation specification for business process models, and DMN, the notation specification for data models. The assumption behind a lot of these specs is that the workflows or processes being modeled are relatively static or sequential. For certain types of business processes, that is an accurate assumption (things like resource optimization or scheduling). However, in many organizations, there are also processes which are not linear or which may follow different steps in a dynamic sequence or may be interrupted or require human intervention at certain points. These are generally defined within a related notation specification, Case Management Model Notation (CMMN).

While there are differences, there is also a lot of conceptual overlap between business processes / BPMN and case management processes / CMMN. Process Automation Manager combines the functionality of both process models and case management models within a single digital automation platform. (This is covered in more detail in the blog post here.)

Supporting both linear process / task models and dynamic or unpredictable case management models within the same platform allows developers to have a simpler development process (and, combined with other features like Process Automation Manager’s new graphical UI, makes collaboration with business users easier).

Process Automation Manager also supports other types of modeling and visualizing data and worflows:

  • Data modeling
  • Decision modeling
  • Custom data dashboards
  • Process simulations

New Feature: An easier way for business users to collaborate (graphical UI)

Previous versions of Red Hat JBoss BPM Suite were designed around business process logic, but were intended to be used by Java developers within the application development process. Beginning with this Process Automation Manager 7.0 release, there is a new Entando UI included with the platform. This provides an easier, graphical interface where business users can just drag and drop elements into their models — using ultimately the same platform that the developers are using to create the application. Business processes, rules, and logic can be written into the application essentially without having to write a single line of code.

This also effectively changes the workflow for creating event- and process-driven application. Previously, developers did all the work within their development environment. Now, business users can work in parallel (using the Process Automation Manager UI) to create artifacts which can be pulled into the developer’s IDE and code. Everything can then be packaged up and deployed in containers or other environments.

New feature: Cloud (and container) native applications

With more distributed, hybrid infrastructures, it is imperative that applications be able to function exactly the same regardless of the underlying platform. And those applications need to be designed, natively, to work in a distributed, dynamic environment so that they can be rapidly deployed, updated, or scaled.

Process Automation Manager can itself run in Red Hat OpenShift containers, in public or private clouds, on-premise, or in all environments — depending on the needs of your development and infrastructure teams. Additionally, the models and applications created using Process Automation Manager as a platform can be deployed into cloud instances, OpenShift containers, or local instances. This allows truly hybrid development, testing, and production environments.

Process Automation Manager components, applications, and models can all be exposed and accessed using REST APIs, allowing integration with other software applications or management tools.

Additional Resources

  • Dive a little deeper into process automation technology with our tech overview.
  • For general information about the Process Automation Manager, check out the datasheet.
  • There are different use cases for process automation and a business decision engine. The FAQ runs through some things to consider.
  • Get started by actually using the Process Automation Manager. Red Hat Developers has a whole “hello world” example, waiting for you.

Digital Automation Platforms: Injecting speed into application development

Red Hat has just published a new study by Carl Lehmann of the 451 Group, “Intelligent Process Automation and the Emergence of Digital Automation Platforms,” that examines the increasing importance of business automation technologies in modern business, and the ways that converged solutions (digital automation platforms) are bringing value to organizations engaged in digital transformation projects.

Carl writes that competitive advantage is enabled when an organization either does the same things as its rivals, but differently, or it does different things that are acknowledged as superior by customers. In today’s competitive markets, businesses are turning to next-generation digital automation platforms (DAP) to enable greater automation of key business functions and greater flexibility in responding to their customers’ needs.

A DAP is a set of tools and resources structured within a uniform framework to enable developers to rapidly design, prototype, develop, deploy, manage, and monitor process-oriented applications – from simple task-related workflows to dynamic unstructured collaborative activity streams and even highly structured cross-functional enterprise applications. To do so, DAPs are equipped with a range of new capabilities that go beyond those of their BPM and application development predecessors.

Continue reading “Digital Automation Platforms: Injecting speed into application development”

Learning Process Driven Application Development with JBoss BPM

Are you interested in an introduction to the concepts of process management (BPM)?

Do you want to learn how your business can leverage process driven application delivery?

Are you looking for an easy to understand guide to mastering Red Hat JBoss BPM Suite tooling?

Do you want a step-by-step introduction to setting up JBoss BPM Suite, then coverage of practical and important topics like data modeling, designing business rules and processes,  detailed real world examples, and tips for testing?

For the last few years I’ve been working on putting years of working with JBoss BPM Suite, community projects Drools and jBPM together in one easy to understand book.

In 2017, Red Hat put the first chapter online for free and literally thousands downloaded it starting their journey on the road to delivering process driven application with JBoss BPM Suite. Many of you have reached out over the years to ask about the completion of this book and where you can get it.

The good news isthat the book is available and Red Hat’s providing ebook downloads for free!

Let’s look at how this works, shall we?

Continue reading “Learning Process Driven Application Development with JBoss BPM”

3 ways to effectively prepare for process improvements in your digital journey

In our journey to transform our ways of working, our focus on our customers wishes and our plans to pivot to a digital business there is always a need for process improvement.

While the transformation to a digital business can encompass many aspects that are new to your organization, there are always existing investments in technologies and processes that need to be evaluated.

Some can be modernized and migrated on to the new infrastructure that will support the digital business and others end up remaining in place as legacy systems of record.

One thing is for sure, evaluating existing business processes and looking to improve their effectiveness is going to be a necessary step. With that in mind, here are three ways to effectively prepare for process improvements in your digital journey.

1. Effective BPM theory

The first step in any journey is to plan effectively and gather as much information from the experts as you can. For this step you have many options, but the following example previews the open technology and tooling that will ensure you are ready to tackle process improvements.

 

Schabell_JBoss_front1

2. Inventory existing processes

Identifying the list of existing processes in a business, both automated and non-automated processes will be the next step on the journey.

Businesses have processes in place that might be automated in some form, but showing signs of age or lack of effective execution. Others might have partial automation and exhibit a need for further automation at the time of evaluation. Finally, there can potentially be processes in your business that are crying out for automation and are hindering other processes with their lack of automation.

Collect all this information for evaluation without regard for size, level of automation or making decisions on priority for the next step.

3. Short list processes

Now that you’re able to browse all processes in your organization, identifying the short list where quick wins on process improvements is critical to the project’s success.
Everyone wants to see gains and building momentum with processes that can be improved both quickly and effectively builds confidence. Identify processes that have impact, are visible and can be effectively improved without having major impacts to the existing architecture or business process owner perceptions. This will be different for every organization, but crucial to building success and ensuring a smoother transition on your digital journey.
Armed with these three guidelines you’re ready to effectively prepare for process improvements in your digital journey.

Build competitive advantage with business process automation

Transparency is one of those words that can mean anything or nothing. Within agile development, an objective definition of transparency, according to the Scrum Alliance, is related to respect in communication: understanding technical issues, bringing in different team members for prioritization, communicating clearly when there are project changes, bad news, or new priorities. Transparent communication between business and IT teams creates an environment that is more agile, better grounded in business priorities, and more effective. But the question is … how do you get your business and IT teams together to begin with?

Today’s business environment presents an increasing number of challenges in consistently maintaining an organization’s business processes efficiently. You may be facing challenges to grow your business and stay competitive:

  1. No visibility into the automated systems to understand how, where, and when decisions are being made.
  2. Existing systems which don’t allow you to make changes quickly, yet introducing new products and services requires changing rules and processes.
  3. Lack of consistency in making critical decisions. Sometimes, decisions are left to chance.

Business process management (BPM) provides a way to tackle these challenges by enabling collaboration between business and IT users to bring transparency, agility and consistency to the organization’s workflow.

Continue reading “Build competitive advantage with business process automation”

Adding complex business logic to processes with JBoss BPM

In June 2016 the Early Access Program (MEAP) started for the book Effective Business Process Management with JBoss BPM.

What is a MEAP?

The Effective Business Process Management with JBoss BPM MEAP gives you full access to read chapters as they are written, get the finished eBook as soon as it’s ready, and receive the paper book long before it’s in bookstores.

You can also interact with the author, that’s me, on the forums to provided feedback as the book is being written. So come on over and get started today with Effective Business Process Management with JBoss BPM.

The way the MEAP works is that every month or so Manning puts a new chapter online. Lost a bit in the holidays, but chapter 6 was made available and those already in the MEAP will have had access to start reading the chapter.

As mentioned when chapter 5 released, I expected to split out the chapter into a second as the content covered was too expansive. I divided it into the simpler basics of creating business logic with rules and moved on into more advanced topics.

Enjoy topics such as modeling complex domains with domain specific languages (DSL), capturing complex logic in decision tables and leveraging DSLs in your guided rules. All this takes you a step closer to effectively implementing your business logic with JBoss BPM.

To give you an idea of what’s available so far:

You can read this excerpt online before you decide, but I look forward to hearing from you on the content and stay tuned for more.

 

See more by Eric D. Schabell, contact him on Twitter for comments or visit his home site.

How to integrate business logic in processes with JBoss BPM

In June 2016 the Early Access Program (MEAP) started for the book Effective Business Process Management with JBoss BPM.

What is a MEAP?

The Effective Business Process Management with JBoss BPM MEAP gives you full access to read chapters as they are written, get the finished eBook as soon as it’s ready, and receive the paper book long before it’s in bookstores.

You can also interact with the author, that’s me, on the forums to provided feedback as the book is being written. So come on over and get started today with Effective Business Process Management with JBoss BPM.

The way the MEAP works is that every month or so Manning puts a new chapter online. As of this week chapter 5 is available and those already in the MEAP will have access to start reading the chapter.

This is a large chapter and it is one of the harder topics to confine to a single chapter. I do expect to split this chapter up in the future so that you have the basics and then more advanced topics regarding learning to effectively implement your business logic with JBoss BPM.

To give you an idea of what’s available so far:

You can read this excerpt online before you decide, but I look forward to hearing from you on the content and stay tuned for more.

 

See more by Eric D. Schabell, contact him on Twitter for comments or visit his home site.

  • Page 1 of 2
  • 1
  • 2
  • >