Eric D. Schabell: August 2015

Monday, August 31, 2015

7 Steps to Your First Rules with JBoss BRMS Starter Kit

Exactly one year ago we announced and launched a site for you to get started with the JBoss BRMS product, we called it the JBoss BRMS Starter Kit.

Shortly thereafter we hosted a webinar presenting the starter kit, which was one of the largest registrations and attended JBoss BRMS webinar to date.

Now we have produced more content, demos, examples, videos and workshops that we want to share in a logical order for interested parties to get started quickly with JBoss BRMS.

The last weeks we have revamped the original content and present what we hope you will enjoy. This path has been set out in seven steps that provide a straight forward path towards discovery, introduction, installation, learning, hands-on experiences and finally provides you with a way to pass it on with workshops-in-a-can.

If you can't wait, feel free to jump right in:

Start exploring the JBoss BRMS Starter Kit Today

The seven steps to your first process are listed as the sections you will work through in the JBoss BRMS Starter Kit and are as follows:
  1. Targeting the right audience, who are you?
  2. Background on rules, events and processes
  3. How to get the products (where and what)
  4. Video quick tours 
  5. How it's done, example projects provided
  6. Get hands on with workshops, either locally or in the OpenShift Cloud and examples of them canned for your reuse
  7. Looking to Automate your business?
  8. References to help you past the starter kit
The video section is growing with small videos that are meant to isolate individual issues, components, ideas and actions in the product and will grow over time.

Feedback welcome, please don't hesitate to reach out about the content or structure and enjoy your JBoss BRMS Starter Kit.

Friday, August 28, 2015

Launching Digital Sign for JBoss BPM Suite Starter Kit

Just in case you missed it, we recently showed you the 7 Steps to Your First Process with JBoss BPM Suite Starter Kit but we don't want to stop there.

The next time you are in a Red Hat office somewhere in the world, keep your eyes peeled for the digital signage that is displaying all manner of news.

These signs are somewhere on the walls at our offices all over the world, from Amsterdam to Singapore, from Raleigh to Tokyo.

Keep your eyes peeled as we have hijacked the sequence and inserted our very own JBoss BPM Suite Starter Kit announcement.  It looks like the image found here and even includes a QR code that you can scan to jump right to the workshop itself.

Looking to Automate your business?
Feel free to use the slide in your presentations and if you happen to see one of these live, snap a picture, push it out on twitter to @ericschabell.


Wednesday, August 26, 2015

7 Steps to Your First Process with JBoss BPM Suite Starter Kit

Exactly one year ago we announced and launched a site for you to get started with the JBoss BPM Suite product, we called it the JBoss BPM Suite Starter Kit.

Shortly thereafter we hosted a webinar presenting the starter kit, which was one of the largest registrations and attended JBoss BPM webinar to date.

Now we have produced more content, demos, examples, videos and workshops that we want to share in a logical order for interested parties to get started quickly with JBoss BPM Suite.

The last weeks we have revamped the original content and present what we hope you will enjoy. This path has been set out in seven steps that provide a straight forward path towards discovery, introduction, installation, learning, hands-on experiences and finally provides you with a way to pass it on with workshops-in-a-can.

If you can't wait, feel free to jump right in:

Start exploring the JBoss BPM Suite Starter Kit Today


The seven steps to your first process are listed as the sections you will work through in the JBoss BPM Suite Starter Kit and are as follows:
  1. Targeting the right audience, who are you?
  2. Background on rules, events and processes
  3. How to get the products (where and what)
  4. Video quick tours 
  5. How it's done, example projects provided
  6. Get hands on with workshops, either locally or in the OpenShift Cloud and examples of them canned for your reuse
  7. Looking to Automate your business?
  8. References to help you past the starter kit
The video section is growing with small videos that are meant to isolate individual issues, components, ideas and actions in the product and will grow over time.


Feedback welcome, please don't hesitate to reach out about the content or structure and enjoy your JBoss BPM Suite Starter Kit.

Tuesday, August 18, 2015

How You Can Change JBoss BPM Suite the Open Source Way

Mortgage application process with
business terminology updates.
This is an update announcement where we have pushed out a new JBoss BPM Suite Demo project with some improvements, but it is also a showcase in how Open Source works at Red Hat with JBoss products.

The best part of this story is that you can follow along and track as direct usage of the product in a project results in refinements that make their way back into the community and eventually into the next version of product.

Let me explain.

Since the release of JBoss BPM Suite 6.0 we have had an example application around submitting a mortgage application, it was a fully supported example you can obtain with the product download. I have canned this example application in one of the JBoss Demo Central projects which you can find here:


The original version of this process was based on a rather technical terminology with process steps not really aligning with a real business oriented solution that you would encounter in the field.
Original mortgage process with technical terminology.

A few weeks ago we showcased a collaboration effort with Signavio that demonstrated the transition of a process designed in the Signavio Process Editor and then imported into JBoss BPM Suite for further development of the actual implementation details around the process. This collaboration led to some discussion around the language used, we made some revisions and wanted to push these back out to all the users of the example application.

This is where Open Source is at its best, as we have the ability and tooling in place to facilitate providing all these new changes for every single person in the world that wants to make use of them. To do this there is a path to take that leads us from our local changes, back to the community and then into the product itself. 

Updated mortgage process with business
terminology to be imported into
JBoss BPM Suite from Signavio tooling.
This is the process we used and wanted to share so that in the future if you want to push your suggestions back into the products, you can see how this works:

  1. Make all changes to the project you are working on, in our case we have a git repo in the Mortgage demo project (link above) that we want to push back to the community.
  2. You have the option to raise a PR against the community code base, or as we choose to do here was just to raise a bug report in the public Red Hat Bugzilla system and attach the new product internal git repository as a zip file:
  3. Wait for the changes to be evaluated, prioritized and added to the jBPM community project.
  4. When this bug is closed it will state which tag to watch for that will be created for productization to start towards a new JBoss BPM Suite release.
For now you can enjoy this new process not only in the JBoss BPM Suite Mortgage demo project and also as part for the showcase of the JBoss BPM Suite and Signavio integration demo project:

Looking forward to your contributions now that you know where to put them and remember, together we grow!

Friday, August 14, 2015

JBoss BRMS Complex Event Processing (CEP) Performance Benchmark

Technologies come and go, but one thing remains constant.

We love the complex components that make our lives easier when designing enterprise solutions and as architects and developers we are constantly searching for ways to make our lives easier.

One way to do this is to keep up on the popular new sites that relate to technologies of interest. Another way is to read as much as we can in the form of books, magazines or blogs on technology topics.

Introduction

A more subtle and deeper dive into the roots of the technologies that interest us is found in the research arena. For example, on this site you will find some of the earlier works I was involved in when I was supporting research into generic information retrieval at the Radboud University Nijmegen, Netherlands. This experience has shown the value of watching the more rigorous and deeper sources that contribute research papers to various scientific based conferences in the areas of technology that interest me.

When Mark Proctor pointed out a new comparative study of Complex Event Processing (CEP) engines that included the JBoss community based Drools project engine, it was time to dive into the paper and examine the results as they pertain to JBoss products. The community components referenced in this paper are part of the Drools project, which can be found in our directly supported JBoss Business Rules Management System (BRMS) and JBoss BPM Suite products. The community version used was 5.5 which was integrated into JBoss BRMS from version 6.0 and beyond.

I do realize not everyone enjoys the rigorous and often mathematical foundations that are used in these papers to prove and support the theoretical results. Therefore, in an attempt to bring the JBoss relevant information to you with regards to the ties we have between community and products, this article will focus on extracting the CEP related results for Drools only.

You are free to download and read the complete original paper that was presented at 10th International Conference on Cyber Warfare and Security (ICCWS-2015) as the authors were so kind as to put the entire paper online.

Overview

This paper takes a look a a class of information systems that gathers data and events together to provide the ability to audit or maintain some form of security in today's complex information technology environments. They classify these systems in the paper as Software Information and Event Management (SIEM) system, into which the popular open source rule-based Drools Complex Event Processing (CEP) engine fits for the authors evaluations.

The authors see the most important feature of these systems to be "...the correlation engine, which is used to normalize, reduce, filter and aggregate events from a set of heterogeneous inputs." The paper promises to compare and present performance evaluations of the following correlation engines:
  • Simple Event Correlator (SEC)
  • Esper
  • Nodebrain
  • Drools, which is supported by Red Hat in JBoss BRMS & JBoss BPM Suite
The remainder of this article will refer to the results in relation the the supported JBoss BRMS which productizes the Drools CEP engine that the authors consider a correlation engine in this paper. Remember that JBoss BPM Suite is a super set of JBoss BRMS, so therefore we choose to focus on JBoss BRMS for this article.

The testing architecture that pushed a load through the JBoss BRMS CEP component using a set of rules for processing, monitors the progress and then filters out the results into a report. Events were generated to trigger rules and in a predefined distribution.

The paper also states that the CEP component was optimized to produce the best results possible, but the authors do not present any details as to what this might entail. Testing was done on a virtualized Xeon CPU X5660 processor, Linux based operating system, with 4GB of RAM allocated and there were multiple runs of the test suite.

Benchmark

The final numbers were taken as an average over the results as measured over three runs and reflect measurements based on execution time and throughput (events processed per second). The following shows the results for set number of rules with variable number of events and for set number of events with variable number of rules.

1. Execution time and throughput for 500 rule set

The events are scaled up and the rule set remains static in size.
  • 1k events
    • Throughput - 125 events/sec
    • Time - 8 sec
  • 10k events
    • Throughput - 1111 events/sec
    • Time - 9 sec
  • 100k events
    • Throughput - 6250 events/sec
    • Time - 16 sec
  • 1 million events
    • Throughput - 14286 events/sec
    • Time - 70 sec
Compared to the other engines, with medium to larger event sets we see dramatic processing throughput increases, being the fasted correlation engine measured by factor of two or three. The smaller event sets see little change due to the initial cost of indexing and engine setup, which Mark Proctor noted in his article on these results.

2. Execution time and throughput for 1 million event set

The second results offered are based on a single large event set and rules sets that grow in size.

  • 20 rules
    • Throughput - 21,272 events/sec
    • Time - 47 sec
  • 200 rules
    • Throughput - 14,925 events/sec
    • Time - 67 sec
  • 500 rules
    • Throughput - 14,286 events/sec
    • Time - 70
These are dramatic and as the rule sets scale up in size the performance scales quite well. Again, the smaller rule sets feel the effects of engine setup and indexing actions causing a standard time loss that becomes negligible as the workload increases.
Looking to Automate your business?


We will leave the conclusions presented by the authors as an exercise for you to read, but without a doubt, JBoss BRMS CEP component provides a solid and powerful engine for processing your event streams no matter the size or rule complexity.

Monday, August 10, 2015

Processing with a Camel - Updated Integration with JBoss BPM and JBoss Fuse 6.2

With the release of JBoss Fuse 6.2, we wanted to revisit the integration demo. Christina Lin put the fine touches on all JBoss Fuse updates, added parameter passing to a process from the Camel and Andrew Block added an all new installation setup for Windows users.

With these changes we have brought the JBoss BPM Suite and JBoss Fuse Integration Demo project up to date and feel that you have a great example of their integration capabilities.

This project provides an automated installation (repeatable) in minutes where you get JBoss BPM Suite running on an instance of JBoss EAP and a separate instance of JBoss Fuse in its very own Karaf container.

This demo project tells a single story around using a JBoss Fuse camel route to interact with a rules and process project deployed onto JBoss BPM Suite.

Background

External BPM customer evaluation process.
This demo is brought to you in part by our very own Christina Lin who is the JBoss Technology Evangelist that focuses on JBoss Fuse & messaging products. If you have a use case you would like to see then just let us know by raising an issue on the project.

The project can be found on github and has documentation to get you up and running in minutes.

Demo details

Upon starting the server you will find a JBoss BPM Suite setup with the Customer Evaluation project ready for you to inspect, build and deploy for use by the JBoss Fuse camel route we will deploy.

New container in JBoss Fuse.
The JBoss Fuse component of this demo consists of setting up a new container to deploy our camel route into, where we then watch messages get processed live in the management console as we push them into the waiting queue. Each message will trigger an external call out to the deployed BPM process to evaluate our customer.

Installing and running

The following steps will get you up and running in a matter of minutes with this fully automated and repeatable demo:
Camel route.
  1. Add products to installs directory.
  2. Run 'init.sh' or 'init.bat'.
  3. Start the JBoss BPM Suite server, login, build and deploy JBoss BPM Suite process project at http://localhost:8080/business-central (u:erics/p:bpmsuite1!).
  4. Add fabric server passwords for Maven Plugin to your ~/.m2/settings.xml file the fabric server's user and password so that the maven plugin can login to the fabric.
     <!-- Login for fabric repo -->
    <servers>
      <server>
        <id>fabric8.upload.repo</id>
        <username>admin</username>
        <password>admin</password>
      </server> 
    </servers> 
    
  5. Login to Fuse management console at: http://localhost:8181 (u:admin/p:admin).
  6. Connect to root container with login presented by console (u:admin/p:admin)
  7. Create container name c1 and add demo-bpmsuitefuseintegration profile (see screenshot below)
  8. Looking to Automate your business?
    Trigger camel route by placing support/data/message.xml files into target/jboss-fuse-6.1.1-redhat-412/instances/c1/customerData folder (rename this message on copy for multiple runs)
  9. Enjoy the demo!
We hope you enjoy this updated demo showcasing JBoss Fuse integration with JBoss BPM Suite.

Wednesday, August 5, 2015

Webinar slides: Developing process-enabled applications with BPA and BPM tools

Today we hosted a webinar demonstrating how easy it is to get started with JBoss BPM Suite tools together with Signavio business process analysis tools.

This webinar was be co-presented together with Signavio's Steven Lewandowski and walked you through the entire life cycle as you would develop your BPM applications and includes a live demo of the tooling all working together seamlessly.

By registering online you will be given a link to the recording to watch any time you like. Below the abstract and slides from the webinar.

Developing process-enabled applications with BPA and BPM tools

Developing business process-enabled applications can be messy—with numerous stakeholders using separate business process analysis (BPA) and business process management (BPM) tools to create a single application. Join our webinar to see how an integrated solution from Red Hat and Signavio enables all stakeholders to work together seamlessly over the entire development lifecycle.

With Red Hat and Signavio’s combined solution, business analysts can develop process models with Signavio’s business process analysis (BPA) tools and then transfer those models to Red Hat® JBoss® BPM Suite, where developers can complete and deploy the final application.
Join this webinar to learn best practices for building process-enabled applications with Red Hat and Signavio. See a live demo of our mortgage application and learn the techniques needed to use both tools successfully, including:


  • Analyzing processes and building BPM models.
  • Moving models to the execution environment.
  • Preparing transferred models for execution.
  • Looking to Automate your business?
  • Deploying, executing and monitoring business processes.

Date presented: Wednesday, August 5, 2015
Time presented: 11:00 AM ET / 8:00 AM PT
Duration: 60 minutes


The slides available online:



Hope you enjoyed the session and feel free to reach out to me through my contact page or in the comments.

Tuesday, August 4, 2015

Racing Camel Workshop in a Can Getting Worldwide Love

Just in case you missed it, we recently announced that there is a Racing Camel with BPM and JBoss Fuse workshop that you too can put together for your events, work, customers, partners and even family should you so desire.

The next time you are in a Red Hat office somewhere in the world, keep your eyes peeled for the digital signage that is displaying all manner of news. They are somewhere on the walls at our offices all over the world, from Amsterdam to Singapore, from Raleigh to Tokyo.

Looking to Automate your business?
Keep your eyes peeled as we have hijacked the sequence and inserted our very own Racing Camel with BPM & JBoss Fuse Workshop In A Can announcement. It looks like the image found here and even includes a QR code that you can scan to jump right to the workshop itself.

Feel free to use the slide in your presentations and if you happen to see one of these live, snap a picture, push it out on twitter to @ericschabell.

How cool is that?