I had a chance to catch up with Marwane from IDS Scheer the other day and talk about ARIS, IDS Scheer’s enterprise modeling product. The ARIS architecture or platform has currently more than 25 products for enterprise modeling divided into 4 platforms (Strategy, design, implementation and controlling) and 6 solutions (Enterprise BPM, EA, SAP, SOA, Process Intelligence, Performance Management and BAM, GRC) – everything from organization models to functions, value chain, data, process, structural behavior etc. What they are best known for, of course, is business process modeling and this is central to their products which are all pretty business process oriented. Their focus is on allowing you to model your enterprise and at some point that means having to deal with automation (very few modern enterprises can run on manual processes after all). The product that particularly interests me is the ARIS Business Rules Designer (though I wish they had called it the ARIS Decision Designer) as this allows you to model decisions, and the rules behind them, as part of modeling your process. Just as modeling processes requires an eventual transition to executable process models in order to set theses processes to production, so modeling decision making at design time requires an ability to specify business rules which can be run in a productive environment.
The product is designed to let you specify rules at a reasonably high level – against a business vocabulary rather than a detailed object model. The intent is to keep business designers at a conceptual level – once they have a good model of their process then they can model explicit decision making in a declarative way. The primary interface for this is decision tables, chosen both for being intuitive and for their easy support for branching and parameter-based logic (important in a process). The vocabulary against which the rules are written is modeled as a UML diagram or an Entity Relationship Diagram. A vocabulary model can then be automatically generated out of these data models. The interface used to model decision tables also allows capturing rules in natural language syntax. It is designed for supporting capturing business rules while they are still at an early stage of specification. The underlying components (rule engine) of the decision modeler are from Corticon’s product (as I discussed before).
I liked the way IDS thinks about decisions. Decision services are defined within the process that map to a Rule Flows. Rule Flows are a linked and ordered set of decision tables, in future versions it will apparently be a workflow of decision tables. These are integrated into to process steps by annotating functions with Business Rule Objects. These Business Rule objects have Rule Flows assigned to them. While they see some confusion around the difference between process/workflow and Rule Flow, their approach is exactly the one I would have described, modeling complex decisions as rule flow and action steps as process. After all, many processes consist of business rules/decisions but not much else. In these circumstances Rule Flow helps manage these more complex decisions. All of this maps exactly to how I would think about decisions in process (check out this presentation on using decision management to make processes smarter and more agile, for instance, that I gave at the Intalio user group).
I look forward to working more with the ARIS products.