I got an overview of JBoss’s new intelligent, integrated enterprise approach as well some of their new product announcements. They are adding new data services, BPEL support, productizing their event/rules combination and adding some new connectivity elements.
The world has obviously changed in the last few years. The fully automated processes of the past, JBoss feels, seemed complete but allowed fraud and bad customers to get through a rapid process as easily as good ones. Essentially companies pushed the automation of processes past the point where the technology could handle it – the processes were too static and too hard to change and there was not enough decisioning intelligence in the process. Today we have changing regulation and markets, increasing business event streams that need to be considered, decisioning that needs to be more sophisticated, and customers want error-free self-service. Fraud is continuing to be an issue with more of it being sophisticated and organized. An integrated enterprise is still a good thing but now it needs to be able to cope with this accelerating pace of change in events and decision-making.
This is a challenge as we generate more and more data and more events. Time to answer or delivery has compressed significantly. Algorithmic trades have gone from 50ms to 1ms, phone activation from 3 days to 1 minute, data warehouses from 1 week old data to 1 hr old data and so on. This accelerating data and event stream can result in a partial view of customers that don’t update quickly, events that are handled tin an adhoc manner rather than in a business-centric way, and decision-making that is simplistic or manual. This environment cannot be fixed by adding a manual steps to catch problems, at least not without really irritating customers and slowing things down.
IT needs to enable an intelligent, integrated enterprise. This means supporting observe, integrate analyze and respond steps.
- Observe events and bring them into the IT infrastructure using an enterprise service bus-based approach
- Integrate applications and the rest of the infrastructure to process the business event
- Analyze what is happening using data, rules and complex event processing.
- Responding using processes based on BPM standards like BPEL or BMPN2
JBoss sees its open source stack supporting this whole environment. Their Enterprise Data Services supports an ESB as well as data and application access. This can be extended with their low-latency, high performance MRG-Messaging environment to external cloud-based data sources. All of this is supported by their Enterprise BRMS (the commercial version of Drools). This last supports rules, event processing and the combination of the two. JBoss sees the integration of rules, events and process as the driver of the next wave of BRMS adoption.
A BRMS offers easier change so that decision-making logic can be more adaptive and dynamic – replacing code that is too hard to change quickly and accurately. This is particularly important as more dynamic logic is needed in lots of areas like supply chain event handling, compliance, governance and risk, marketing and sales logic for interacting with customers etc. Many of these areas also need better handling of events as well as handling of streaming data, “Big Data” and analytics. JBoss has some customers, such as Emirates Airlines, already moving to this kind of environment.
RedHat’s SOA product strategy is to deliver an enterprise-class SOA middleware stack built on their core open source products and the supporting community. These include their RedHat Enterprise Messaging platform as well as JBoss Enterprise Data Services, JBoss Enterprise SOA Platform, JBoss Enterprise BRMS and the JBoss Operations Network.
Product updates in this announcement:
- The Enterprise SOA Platform can support EAI/SOA/Event-driven paradigms as well as workflow, orchestration, intelligent routing etc. The 5.2 release includes support for WS-BPEL, certification of RedHat Enterprise Messaging, an update of the BRMS as well as a component refresh and a new release of the studio.
- The JBoss Enterprise Data Services platform supports master data services, data governance and enables reporting/analytics. The 5.2 release adds new data sources (Teradata, Netezza, Ingres, JSON, Mondrian), REST-ful data services, WSDL and XSD in the repository, a component refresh and the new studio.
- The Red Hat Enterprise MRG Messaging is based on the AMQP (Advanced Message Queuing Protocol) messaging protocol designed for supporting a rich set of application semantics across different application platforms (Java and .Net for instance) that is scalable, supports diverse workloads and takes advantage of hardware performance advances.
Plus of course they have released a new version of the JBoss Enterprise BRMS. In this new release the rule engine has been extended to handle both event processing and rules processing. The definitions for both are stored in a repository that can be managed using web-based tools for analysts as well as Eclipse-based tools for developers. Rules can be authored in spreadsheets, decision tables, as DRL (rule code) or using Domain Specific Languages or templates. Sessions can also be managed and monitored.
The new Enterprise BRMS uses Drools’ ability to handle sliding time windows, stream processing, temporal constraints and other event semantics to process potentially very high volumes of events. It supports both what you might call “event cloud mode” where events and facts are loaded and processed as a group as well as “stream mode” where events are time ordered and where the event lifecycle and flow are managed (allowing the detection of missing events and the use of sliding time windows). Temporal relationships such as before, overlapped by, finished before, happening during and more are supported in the rules engine. This allows rules to be used to reason against these events. All of these event processing operators can be used in the same editors available for regular rules such as DSLs and decision tables.
I have blogged before about the work the Drools team has been doing on defining a new rule sheet or decision table. This is a web-based, spreadsheet like editor for business rules. The new version handles multi-hit tables and single hit tables. It has nice features for merging cells, grouping cells, sorting by column, support for otherwise, typed columns etc. Templates can be defined to restrict the data that can be entered into the decision table, to ensure that only allowed values are used for instance. The templates and decision tables can also now be embedded into other applications or web-based mashups, allowing them to be seen alongside dashboards or application data.
With the new release, rule monitoring now plugs into the JON (JBoss Operations Network) so that the rule engine can be monitored like any other piece of the infrastructure. This includes monitoring active rules in sessions, detecting long running sessions, monitoring parameters for sessions etc. Other improvements include a preview of some support for backward chaining, free form expressions in constraints and some performance enhancements.