Skip navigation
All Places > Alfresco Process Services & Activiti (BPM) > Blog > 2017 > April
2017
salaboy

Activiti 6 is on the Way

Posted by salaboy Employee Apr 26, 2017

Activiti 6.0 Final release is around the corner, and I’m super excited of being part of this release because it is the first step towards a bright future. I’m looking forward to working with the community to shape up the next releases of the project to make sure that we push BPM to the next level.

 

On the Activiti 6.0 release you will find:

  • A new refactored Process Engine optimized and battle tested by several community users and organizations. The introduction of native BPMN support instead of the Process Virtual Machines offers better performance. This builds on top of Activiti’s stateless architecture to bring even higher levels of performance and scalability.
  • The only Open Source BPM framework with the potential and plan for further bringing Content and Process together. Content enriches process management making it true context-aware digital flow rather than just state transitions and service orchestrations. Knowledge and context become the driver for semi-autonomous process.
  • Improved & flexible persistence mechanism which give us the right tools to move highly distributed environments. We are actively working on solutions that when combined with stateless architecture of Activiti’s process engine create new-infinite linear scalability. With Activiti’s small footprint this is ideal for cloud-era on-demand architectures. We are also supporting this direction with our first take in modularizing Activiti’s process services
  • Support for ad-hoc BPMN activities that combined with our Content roots broaden the scope and depth of unstructured and dynamic processes
  • Introduction of modern App Design modeller web app that offers in addition to BPMN modelling, forms, decision tables, granular capability-driven identity management, as well as the ability to bundle models into deployable model-driven process applications

 

I’ve joined Alfresco almost 4 months ago after being for more than 10 years contributing with several Open Source projects on the BPM and Model Driven Frameworks landscape. (You can find my articles, tutorials, books and my thoughts about BPM, Case Management, Rule Engines and AI in my personal blog: http://salaboy.com). I truly believe that we can simplify users experiences by providing the right tools for the job. Also, Developers and DevOps experiences can be simplified by making Activiti project even more ready for the Cloud and continuously updating to the latest standard technologies. I’m looking forward to help the Activiti community to evolve beyond traditional BPM Process Engines to a full-fledged Cloud Ready Business Automation Platform.

 

When I joined Alfresco, I realized the importance of completing the Activiti v6 work already in progress. You’ll see more innovation beyond the original v6 scope in the near future. In contrast with the how the Open Source project was previously organized, I’m committed to make sure that the next releases are built collaboratively between partners, community members and companies that are already using it.

 

Going forward, you will be see me around a lot in the community (http://github.com/salaboy, http://salaboy.com and http://twitter.com/salaboy) and conferences spreading the word. Please get in touch if you want to get involved.

dougjohnson

The Future of Activiti

Posted by dougjohnson Employee Apr 24, 2017

My name is Doug Johnson. I’m responsible for the BPM strategy at Alfresco working with the Activiti project and separately Alfresco’s commercial offerings. As a 20-year industry veteran with 17-years of BPM-specific experience, I’ve seen a lot of new business and solution requirements challenge BPM technologies. Ever increasingly, requirements are demanding even faster and simpler development cycles, better interactions and integration with systems and services, and compelling user experiences and engagement… to name a few trends.

 

The future of Activiti is strong. While statistics are hard to precisely determine, due to Activiti’s flexible licensing terms and easy-of-embeddability, Activiti is absolutely a top Open Source BPM project worldwide—it’s likely the most popular. It’s used to help developers create process-related solutions every day. Some of the largest companies in the world are powered by Activiti.

 

Alfresco, as the main project sponsor, is resolutely backing Activiti with experienced committers and community support. We have added to the Activiti team with outstanding engineers with rich process management and process intelligence backgrounds—including contributors from Bonita BPM, jBPM, Drools, and Pega—as well as those with data science and machine learning experiences including a PhD in advanced mathematics.

 

You’ll be hearing from these new Activiti committers soon and more regularly. At the helm, Mauricio Salatino joins Activiti from a history of Open Source success. He is one of many persons bringing a fresh perspective as Activiti continues to deliver the most relevant process technologies for today and tomorrow’s needs.

 

For those attending BeeCon 2017, I look forward to meeting you this week. I and others will of course be sharing some of the latest in Activiti, including some exciting announcements. Just as important will be the conversations and discussions with you. For those unable to attend BeeCon 2017, watch the forums for pending announcements on further opportunities to interact with the Activiti team in May 2017.

Business Process Management (BPM) best practices often suggests that the BPM solution not be the system of record. In particular, the business data required for the Digital Business Solution should exist in other data stores outside of the persistence store being used by the BPM engine itself. Business data that is used and or created during the execution of a business process should exist and be maintained in one or more external data stores (e.g. RDBMS, NoSQL, etc...). Therefore to simplify and accelerate the development of enterprise scale Digital Business Solutions, Alfresco Process Services (Alfresco’s Enterprise Edition of the Activiti Community Edition (Open Source)) provides an important and valuable component called "Data Models" which is the focus of this blog.

Please note that I’ll be using the acronym APS throughout this post to refer to Alfresco Process Services.

Business Data Integration in BPM solutions

If you haven’t read this blog post (a bit old, but still very relevant) Storing data in automated business processes :: AirQuill  & More on Orchestration Data :: AirQuill  already, you must read it first (especially the first blog) before you go into my next section. This is a great post explaining why storing data outside of process engine tables is so important!

Integration options available in APS

Good news is, APS provides a variety of options for customers to do the business data integration. Listing down below all the data integration options that are available when implementing business processes using Activiti engine:

  1. BPMN Service Task Component
  2. Custom Java Logic wired into the process using listeners such as Execution Listener, Event Listener, Task Listener etc
  3. Execute Custom SQL
  4. REST Task Component (APS/Enterprise Only Feature)
  5. Data Model Component (APS/Enterprise Only Feature)

 

Since the purpose of this blog is to go through the Data Model component, I’ll only be focussing on the 5th item in the above list. Please checkout Activiti User Guide , Activiti Custom SQL User GuideAlfresco Documentation | Alfresco Documentation  and Alfresco Process Services Blogs for more about the other 4 options.

Advantages of Data Model over other alternatives

Given below are some of the pain points we hear from business process modelers, analysts, developers, etc quite often.

  • Systems in my organization are so difficult to integrate into our processes.
  • Data modeling capabilities in our existing BPM platform is highly technical and have got a steep learning curve.
  • As an analyst/modeler, I would love to have some features in the product that allow me to model my SoR (System of Records) data model in the process platform.
  • Our organization has very mature and well defined REST APIs around all our IT systems. However as a business analyst/process modeler, mapping REST API requests and responses are too technical a job for me!
  • We have well defined and re-usable web services based on standards like SOAP, POX etc in our organization. We wish our BPM system has inbuilt capabilities that allow us to write re-usable and business friendly components over these web services.
  • We have been using Activiti community version for a long time. We have a lot of reusable Java code that allow us to integrate our processes with our IT systems. In order to understand those external system integration we often have to dig into the Java source code associated with the process. When moving from community to enterprise, it would be really nice if we can visually represent those data structures in the BPMN modeler and have direct integration of those components to other process components such as forms, rules etc.
  • As a business person, when I review a BPMN diagram I see a lot of service tasks with hidden Java logic in it. Every time when I do this, I have to go to a developer to understand the java components and to find out the input and output fields of those components. This makes me look stupid!
  • We are an organization with a lot of old school two tier applications (client->database) with no APIs. We need our business processes to talk directly to our application databases!
  • We use Alfresco Content Services as our System of Records for documents. What are the integration capabilities of APS with Alfresco Content Services.

 

Data Model is the component that can address all the above mentioned concerns/pain points in an elegant, simple and user friendly fashion without the complexities of similar components that is normally found in other large BPM vendor products.

 

Enough of overview and description and let’s see it in action.

Data Model Demo

The crux of the blog is in the following video which I recorded to demonstrate the various capabilities of the Data Model component

Summary

Let me summarize the post highlighting the key features of Data Models:

  • Data Models allow you to separate the data integration from business process modeling, In other words, process modeling is made easy with Data Models where it allows you to hide the implementation complexity from process models.
  • Data Models are integrated with all other modeling components such as forms, decision tables etc available in APS thereby reducing the time to market of your business process solutions.
  • Data Models allow you build re-usable domain entity objects/components which in-turn can be reused in a uniform way across multiple processes.
  • Data Model is a business friendly integration alternative available in APS.

 

Hands-on time!

If you are new to the APS, this post will help you get started with it - Installing Alfresco Process Services Trial using an Installer 

If you are new to the Data Model component, I highly recommend you to first read a couple of other posts which are given below, before trying out the demo I used in this post.

The complete source code associated with the above video presentation along with a detailed readme file is available at https://github.com/cijujoseph/activiti-examples/tree/master/activiti-custom-data-model-sample

 

I'll be creating more data model examples in the coming months! Stay tuned...