Technically, BPM/Business Rules approach place process logic with the BPM suite and decision logic in the business rules management system (BRMS). The process logic in a BPM suite sequences and controls activities and launches and cancels processes. Control is achieved with timers and exception handlers. Processes can be designed to recover from errors, restart processes and coordinate activities. The BRMS effectively designs, organizes and executes the logic behind a process decision. An effective BRMS can handle any depth and complexity of decision logic, including computationally complex logic and dense logic.
Vor einigen Tagen fand ich einen Artikel, der auf sehr anschauliche Weise erklärte, weshalb der Business-Rules-Ansatz so wichtig ist. Es sind immer noch wenige Experten, die von jener Relevanz des Business Rules Managements (BRM) ausgehen. Drei entscheidende Fragen werden sich all jene stellen, die ernsthaft über einen Einsatz von BRM sprich automatisierbaren Geschäftsregeln nachdenken:
1. Was sind die Vorteile von Business Rules, die ein zusätzliches Investment rechtfertigen?
2. Warum sollte man nicht nur die Regeln codieren?
3. Werden die Regeln verlässlich funktionieren und vor allem sich reibungslos in das System integrieren lassen?
Vergleichbar mit BPMS werden nicht alle Anwender diese komplexe Funktionalität eines BRMS in gleichem Umfang nutzen. Entscheiden für einen Einsatz eines komplexen Management von Geschäftsregeln ist die Komplexitiät der Regeln. Grundsätzlich entscheidend für den Einsatz von regelbasierten Prozessen ist ja immer noch, wieviele Prozesse automatisierte werden können/müssen, wie komplex diese Prozesse sind und wie “teuer” es ein Unternehmen kommt, diese Prozesse nicht zu automatisieren. Entscheidend für den Einsatz eines ausgewachsenen BRMS ist deshalb immer noch, wie schnell ein Unternehmen auf Veränderungen am Markt reagieren können muss, wie agil ein Unternehmen sein muss.
For those of you that could not make it, I wanted to give you the gist of what I presented. This presentation covers the evolution of the business rules technology focusing first on the drivers that forced the market to shift its focus from Business Rules Engines (BRE) to Business Rules Management Systems (BRMS). In a nutshell, the main ideas are summarized below. In a few days, the recording will also be posted on our community site for your convenience.
CEP module receives or intercepts a flurry of events and processes them with the objective of figuring out what those events are relevant for; it triggers the appropriate business processes or decision services
BPM module receives the request for a given process to be applied to a higher level entity (an application, a document...); it automates the steps defined in the business process
BRMS module is invoked with a given context to apply business rules; it makes a business decision
Function answers the question --- what is being done?Technique answers the question -- how something being done?
Application answers the question --- what is the problem being solved?
ExamplesBusiness Activity Monitoring (BAM) is an application type, it solves the problem of controlling the business activities in order to optimize the business, deal with exceptions etc...Business Rules are type of technique --- which can be used to infer facts from other facts or rules (inference rules) , or to determine action when event occurs and condition is satisfied (ECA rules) and more (there are at least half a dozen types of rules, which are techniques to do something).Event Processing is really a set of functions which does what the name indicates -- process events --- processing can be filtering, transforming, enriching, routing, detect patterns, deriving and some more.
EDA is more a manifestation of finite state machines going all the way back to Alan Turing. Old_State + Event = Some_Action + New_State. It is the simplest, yet most powerful way to design robust systems. I only wish more people would give it due consideration.
A very old implementation example is I/O interrupts (hardware events) for asynchronous I/O - real time event handling which enabled multitasking operating systems.
Many want to use web services for everything now and at times it is hard to convince people that other messaging schemes and standards are a better fit for some problems.
The Rule Builder is the rule authoring and testing tool of the QuickRules.NET BRMS. The Builder provides a simple user interface to build, test, and save rules for deployment. The Builder enables you to do the following: