Thursday 10 September 2015

Workflow For Dataflow?

Adrian Colyer is writing some really insightful commentaries on research papers on distributed computing at blog.acolyer.org.  The latest post Go with the flow is part of the series Out of the Fire Swamp. It triggered me to share an idea I had some time ago: Using workflow to coordinate microservices as a replacement for transactions.

When you're implementing a request of let's say a web API, amongst read operations, you also may perform some updates to non transactional resources such as a NoSQL datastore or another microservice.

What you typically want to provide to the client of your request is all or nothing semantics.  So when your server crashes in the middle of your request, you may have performed some, but not all of the updates to your non transactional resources.  This can lead to inconsistencies in your domain model.

In a way, a workflow is a persistent execution flow.  It stores the state of the execution so it can be resumed later.  Typical workflow engines probably don't do this efficient enough for the use case I'm discussing here.  But I believe a workflow engine can be tuned for this use case of consistency.

Imagine a request to create an invoice that performs 4 request to other services in a flow like this:




The new request implementation can first perform some reads and than replace the four individual updates with a single update that creates the workflow instance.  The workflow engine can ensure that the workflow instance is persisted in a single atomic update.  Afterwards, the workflow engine ensures that progress is persisted before and after each activity.  In case of crashes, the workflow engine can then resume in case of crashes based on the persisted execution.

The actions performed should be idempotent because it's typically not possible to guarantee exactly once execution semantics in a distributed system.

This workflow would add the guarantee that once the workflow is started, you know that at some point it will be completed.  Typically it's not necessary to block the request till the whole workflow is completed although this is technically possible.

This idea really looks close to the event store as described in Adrian's blog.  I wonder if this could be relevant a piece in tomorrow's distributed computing puzzle.

Thursday 11 September 2014

5 Types Of Cloud Workflow

Last Wednesday, Box Workflow was announced. It was a expected move for them to go higher up the stack as the cost of storage “races very quickly toward zero”.  It made me realize there are actually 4 different types of workflow solutions available on the cloud.

Box, Salesforce, Netsuite and many others have bolted workflow on top of their products.  In this case workflow is offered as a feature on a product with a different focus.  The advantage is they are well integrated with the product and that it’s available when you have the product already.  The downside can be that the scope is mostly limited to the product.

Another type is the BPM as a service (aka cloud enabled BPM).  BPM as a service has an online service for which you can register an account and use the product online without setting up or maintaining any IT infrastructure for it.  The cloud poses a different set of challenges and opportunities for BPM.  We at Effektif provide a product that is independent, focused on BPM and which is born and raised in the cloud.  In our case, we could say that our on-premise version is actually the afterthought.  Usually it’s the other way round.  Most cloud enabled BPM products were created for on-premise first and have since been tweaked to run on the cloud.  My opinion ‘might’ be a bit biased, but I believe that today’s hybrid enterprise environments are very different from the on-premise-only days.   Ensuring that a BPM solution integrates seamless with other cloud services is non-trivial.   Especially when it needs to integrate just as well with existing on-premise products.

BPM platform as a service (bpmPaaS) is an extension of virtualization.  These are prepackaged images of BPM solutions that can be deployed on a hosting provider.  So you rent a virtual machine with a hosting provider and you then have a ready-to-go image that you can deploy on that machine to run your BPM engine.  As an example, you can have a look at Red Hat’s bpmPaaS cartridge.

Amazon simple workflow service is in many ways unique and a category on it‘s own in my opinion.  It is a developer service that in essence stores the process instance data and it takes care of the distributed locking of activity instances.  All the rest is up to the user to code.  The business logic in the activities has to be coded.  But what makes Amazon’s workflow really unique is that you can (well.. have to) code the logic between the activities yourself as well.  There's no diagram involved.  So when an activity is completed, your code has to perform the calculation of what activities have to be done next.  I think it provides a lot of freedom, but it’s also courageous of them to fight the uphill battle against the user’s expectations of a visual workflow diagram builder.

Then there is IFTTT and Zapier.  These are in my opinion iconic online services because they define a new product category.  At the core, they provide an integration service.  Integration has traditionally been one of the most low level technical aspects of software automation.  Yet they managed to provide this as an online service enabling everyone to accomplish significant integrations without IT or developer involvement.  I refer to those services a lot because they have transformed something that was complex into something simple.  That, I believe, is a significant accomplishment.  We at Effektif are on a similar mission.  BPM has been quite technical and complex.  Our mission is also to remove the need for technical expertise so that you can build your own processes. 

Monday 10 March 2014

Personal Workflow

How much government is ideal?  How much should be organized by the community?  Each country answers that differently.  In some countries a lot is organized by the community.  In other countries, more freedom is left to the citizens and less aspects are managed centrally.  I’ld say that Business Process Management (BPM) doesn't have any such balance yet.  At the moment, BPM is limited to top-down initiatives.  This would be similar to only having government initiatives and no freedom or initiatives from citizens.  

Corporate executives start by analyzing how work gets done in an organization.  This analysis is often challenging as people doing the work optimize their piece of the puzzle.  To get a complete understanding how people actually collaborate is not that easy.  It’s even hard for employees that get interviewed to explain all their knowledge that goes into tackling a given task.  Therefore, the procedures that result of such BPM initiatives are often incomplete.  That uncertainty creates risk for the people driving a BPM initiative.  They have the power to change things, but they don't have all the detailed knowledge that goes in to the tasks.  And this approach doesn't scale very well as there is usually just a single top down BPM improvement initiative at a time.

Still these centrally lead initiatives can lead to the biggest gains in efficiencies as top down initiatives can create the necessary momentum and executive buy-in to change things.  And the efficiency improvements are multiplied by the number of times these procedures have to be accomplished.  Imagine you can bring down the average time spent on handling a damage claim in an insurance company from 3 hours to 2h30.  For an insurance company dealing with thousands of damage claims per day, these savings add up. 

In countries with less government, self-interest is an important driver and motivation to take initiatives.  That’s an angle totally missing at the moment in BPM and a very interesting one if you start thinking about it.  

What if employees could start automating their own repetitive and tedious work patterns without having to think globally.  As an example, think of Jack's tasks like this: For every invoice email that he gets from Supplier XYZ, he extracts the attachment and uploads it to Google Drive, then passes a link to the document on to Jane in procurement.  What if Jack can build a workflow by himself for his own repetitive work.  He can start improve his own work without requiring any change to be discussed between colleagues.  Since people keep working as they work before, it's really easy and fast to start automating these process snippets. That really reduces the risk and makes it a much faster approach.  All the fine details of how work is done, what's important and what not doesn't have to be talked through.  Instead, employees can just build workflow snippets directly themselves.  

Personal workflow adds an interesting approach next to top down BPM initiatives.  Picking the low hanging fruits like that is easy and scalable.  Imagine all employees creating their own workflows.  This doesn't require meetings and decisions that take months.  Instead it takes 5 minutes to get going.  And all employees can start doing it simultaneous.  Just like societies require a good mix of centrally controlled government and self-interest initiatives, I think that both personal workflow should complement top down BPM initiatives to harvesting those low hanging fruits.

Thursday 20 February 2014

Cloud governance and partner ecosystem

Scott Francis is a distinguished member of the BPM community. Recently I demoed Effektif and tried to convince him that it was easy to use. His blog title Effektif: Spelling It Is Harder Than Using It seems to indicate he's convinced :-)

Scott highlights some really interesting points like this one:
I think the most difficult point for Effektif, and the tools it is inspired by, is adoption by mainstream businesses. ... when you get out of startup mode and into enterprise mode (even as a single user within the enterprise) there are rules for what kind of data can be transported from one cloud environment to another. I may not be allowed to use my personal Salesforce credentials to expedite transiting data from Salesforce to some other cloud-based tooling. Enterprise IT gets involved, HIPAA comes into play.
Right on. I agree this is the challenge. Companies have switched on-premise software solutions for cloud based SaaS alternatives. This trend continues and accelerates. Some conservative CIOs will try to ignore or even forbid this from happening, but eventually it's unavoidable. In the next decade, companies will use a mix of on-premise and cloud solutions. My advice to CIOs is to embrace that fact, get involved and learn how to control that mix.

When I talk about Effektif being cloud native, most people think it's about map-reduce or horizontal scaling on the technical side. But Scott pointed out the end user concerns of being cloud native. For our customers, those are even far more important then how it's implemented. Being cloud native, Effektif will have to provide that control. Aspects like 3rd party login, OAuth, service accounts, blocking certain data from leaking out of the system, reports on which documents were shared externally, etc are crucial in that respect. That's exactly why I believe that a native cloud workflow vendor is very different from an on-premise solution that is also offered on the cloud.

The second interesting point Scott brought up is the business model for consulting partners:
So how to bridge the gap between the startup or personal users, and the enterprise user? Traditionally, this is where consulting partners come in. And the biggest challenge I see to the business models of such firms is the lack of a business model that supports implementation partners. Implementation partners can help create successful references, build out a pipeline of new customers, and innovate on top of the platform. But there has to be a path to making a living, or those implementation partners won’t show up.
I understand Scott's question like this: If workflow becomes as easy as GMail or IFTTT, then why would companies get consulting firms involved? For Effektif, that answer is straight forward. We added the simple workflow layer to the app enabling professionals to start automating basic tasks on their own without the need for consultancy. But we didn't remove the more advanced layers that allow for extra flexibility where needed.

I believe the extra simplicity will increase the demand for consultancy. The companies that will use Effektif self service, would not have used a full blown BPM system in the first place. For example: for all emails that arrive at procurement@example.com, extract the attachment and upload it to /Accounting/Invoices/Incoming on Google Drive. That's convenient and easy. People would not install a BPM system for that. In that sense we compete with non-usage more then with other incumbent BPM systems. But many of those companies that would not have used a BPM system, might eventually expand their usage and then they need consultancy.

Companies will not loose their appetite for customization or stretching Effektif to its maximum. Workflows are an easier (*far* easier) and cheaper (*far* cheaper) approach then developing custom integration applications. For many use cases, Effektif is the basis of the solution. It's often cheaper and much less risk to extend and customize Effektif in comparison to custom development. So that interest will not go away when we raise the bar for simplicity in workflow. In fact, the opposite is true. As more companies will be able to start with workflow, more people will see more use cases to start using workflow.

In respect to customization, there is one feature on our mid term roadmap in particular that we're very excited about: Custom actions. Consulting companies or internal developers can extend Effektif by configuring their own custom action types. Other users in that organization can then start using this new action type. As an example, Signavio is adding a state update action to be used in approval workflows for Signavio process models. Separate, another example could be an action that generates a document based on a template and instance data. When using JavaScript to implement the behavior of the custom action, users don't even need their own infrastructure. We also plan to support external action workers. In that case, developers use our open API to know what actions need to be executed and signal when they are done. They can write their code in any language and deploy it anywhere, even behind the firewall inside their organization. This also enables any service provider to offer their features as actions in Effektif. That is going to be so awsome! Can't wait to get it out :-)

Tuesday 3 September 2013

BPM2013

The BPM conference series just had its 10th 11th (thanks @profBPM) edition in Beijing and it was great to be part of it. The conference is the best place to see the most relevant work in BPM research. So I consider it a great honor to be invited to present the keynote of the last day.

I took the opportunity to share my ideas about BPM in the cloud. The cloud drives a transformation in our sector. The impact on BPM is not so much about the technical underpinnings of elasticity, scale and multi tenancy. But much bigger is the push towards simplicity. In cloud economics, solutions that can bring their value in a simpler way have a significant adoption advantage. The other change driving BPM forward is the addition of ad hoc collaboration. We’re heading to a seamless combination of flexible ad hoc work and repetitive processes.

Researchers might be tempted to specialize and work in more complex directions. But to my surprise, my message of simplicity was actually well received. One of the main research themes is process mining. I saw some very nice ideas about how process mining can bridge the gap between ad hoc work and repetitive processes.

The networking was great and it happened in a magnificent scenery. I even had the chance to do some sightseeing at the forbidden city and discover the chinese lightweight approach to toilets :-)

Monday 2 September 2013

Creating An Enterprise Community

Earlier today Last week I got into this twitter conversation (couldn't publish earlier from inside China):
It’s a condensed conversation deserves some elaboration. When the term BPM is used, always bear in mind that there are 2 sides to that coin: A management discipline and a type of software system.

Here’s the basic context of BPM as a management discipline so that everyone is on the same page: At first, some desired result must be achieved. A manager typically breaks down the tasks to be done and delegates them to employees. That’s essentially a business process.

When people repeat those tasks, they learn and start to optimize locally. For example, they experience that they get faster response from that particular colleague, or they find easier ways to get to the same result. The participants in a process optimize their tasks. After a while, the overview can get lost on how the result actually is achieved. Then, inefficiencies can creep into the overall process.

So being a manager, it’s useful after a while to get an overview of how work gets done to achieve results. Analyzing and documenting these processes typically shows a number of obvious inefficiencies.

Now take that idea and apply it to the executive management of large corporations. For them to know the details of how things get done is a big challenge to say the least. That basically requires interviewing people on how they do things. And at the same time, these people have their own way of dealing with their part of the process. So they often see this as intrusion and unnecessary overhead. It even gets more difficult for them when they are asked to change they way they do their work.

Originally, BPM systems have been developed to support the line of thinking sketched above. In a BPM initiative that is overseen by executive management, processes are documented and analyzed with diagrams in a BPM system. After these models are documented and approved, the BPM system drives the implementation of the software system to support those processes. That’s the stage when IT gets involved. IT has a head start, because the BPM system can already execute the diagrams and contains a task list for the tasks that people have to do. The only thing IT has to do is add the integration with the existing systems. But still, it’s easy to see that this whole waterfall approach leads to relatively long implementation cycles.

If I understand Derek correctly, that is the context behind “most of the complexity of #BPM comes from the program and politics – not the tech” I totally agree with Derek on that part.

But this could be read as: Compared to the management aspect, the BPM system software is almost irrelevant. And as we’re about to change the nature of that game, I obviously feel the necessity to clarify to those that interpreted it that way ;-)

The traditional to-down approach is great, but only one part of what can be achieved. I’ve spent the last 10 years in open source development building communities. And that has thought me a very important lesson: Many people don’t need to be told what to do. They are very capable to make their own decisions. Without instructions on how to do things, they often surprised me and came with the brightest ideas.

A similar trend is happening in enterprises today. The IT revolution has created tremendous opportunity for literally all people in the company to get informed and stay up to date. More people then ever in the organization are totally capable of adding great insights to which processes should be created and how they should be improved.

In the same spirit, sufficient social features often (definitely not always!) remove the need for tight authorization control. Employees want to build a reputation and so they will not want to mess up things.

This means that the tight command and control patterns applied before need to be enriched with social tools that empower the enterprise community. Employees want to move the company forward and get those results. The new, responsible knowledge worker will look beyond his own responsibilities and be open to input from above and below.

Think about this: There are many people like this in each organization. Together, they have a ton of ideas to improve the business. Many of those ideas will turn out to be giant leaps for the company. And as a side effect, the employees will see more of the knowledge they gained being translated into improvements for the company. The new social fabric in enterprise solutions will give them due credit. That is a serious motivator, even if not all of their ideas will be realized.

Imagine the scale of all those people spread over all those layers in the organization thinking and improving simultaneous. And compare this to one top-down BPM initiative.

The cloud has even accelerated the options for people to become informed, collaborate and show responsibility. Of course, the higher in the hierarchy, the more power people have. So changes coming from the executive level still have the biggest potential impact. This applies both in the positive and negative sense.

The other cloud factor is simplified user experience. Cloud services target viral adoption. Therefore, they need to be simple. Making the scope of the service smaller makes it easier to be simpler. Dropbox is a good example of that. Cloud technologies have made it cheaper then ever to build a software company. In Silicon Valley and in tech hubs around the globe a massive amount of startups is trying every thinkable combination. That leads to incredible pace of innovation.

On the one hand, BPM systems will have to reinvent themselves to capture that full potential of the responsible, informed knowledge workers. On the other hand, there is the huge amount of inspiration coming from all the cloud startups with unprecedented simplicity. So now is a great time to leverage the inspiration build the next generation BPM systems.

With this context I‘ld like to add that the relevance of next generation BPM systems will be crucial to bring out those otherwise hidden innovations that are not subject to program and politics.

Wednesday 21 August 2013

Lean Startup, The Easy Way

Six months into building Effektif and I’m still confident we are in the 10% that won’t fail. While I am very aware that startups have a high failure rate, I’ll share some insights as to why Effektif is in a luxurious position.

First of all I’m excited cause we’re on schedule. We’re about to finish our MVD (Minimal Viable Demo :-) and it rocks. The big new thing for me with Effektif was to build a product for end users instead of a technical component for developers. It’s a new experience, but I love it. The lean startup has totally worked for us in this initial phase. As a developer, I had always had an excuse to avoid user testing. The book convinced me to expose the product early and often to real users. It has been a great help to fine-tune the user experience and even pivot on some of the concepts.

The simplest aspect actually was the technology. On top of the experiences gained from building jBPM and Activiti, I only had to incorporate a new level of scalability on the backend. On the user interface side, Willi Tscheschner is an HTML 5 rockstar. He’s been driving Signavio’s web based BPMN editor and knows a thing or two about how to build great user interfaces in the browser.

Being the CEO is also new. Earlier this year I got totally inspired by In The Plex, the book that brings the story on how Google went from ambition to changing the world. There’s a big gap between being a new CEO and the inspiration in that book ;-) That’s where Gero Decker and Torben Schreiter come in. They take up their role as coaches very serious. They are co-CEO’s of Signavio and an important reason why Effektif is in such a good situation. They started Signavio 4 years ago and turned it into a global, fast growing cloud business without requiring venture capital. Kudo’s to what they have build. I appreciate a lot them sharing their experiences to help accelerate Effektif.

Together with Gero and Torben, we tuned our strategy and market position. The current BPM systems are far too complex. Effektif will make it orders of magnitude simpler for large and small organizations to connect people workflows with their existing enterprise systems. We actually take more inspiration from new cloud services like Trello, Wufoo and Ifttt then from the existing BPM vendors. The base pricing will of Effektif will be pay-per-use and come a lot cheaper then typical BPM products. For those with budget constraints, we also will offer a version with a guaranteed maximum.

The really luxurious part of Signavio’s investment in Effektif is their sales force. With their help, Effektif will reach to much more customers and at a much faster pace then normal startups can.

Tuesday 14 May 2013

The Case For Cases

Last year, the data produced in the world would fill DVD stack reaching from the Earth to moon and back. And it's growing exponentially. What does that mean for the enterprise? Piles of data do not always result in more information. On the contrary.

Especially for people performing knowledge work, it means it becomes harder to sift through vast amounts of information sources and share the right information with the appropriate people. It's not only time consuming, it's also risky. Tweets, Google+, Facebook, Blogs and Press articles are abundant and have typically a low signal-to-noise ratio. On top of that employees have to keep track of what's happening in their CRM, document management and many other enterprise systems. This means a greater exposure to loads of data that becomes on average less relevant. Procrastination never had an easier job looking for susceptible victims.

A case management solution is a fancy word for a system to share and discuss important topics in an business environment.  It's function is to bring people together on topics like eg introducing a new sales strategy or an important customer that may cancel a big order.  A case is the most efficient instrument to share related documents, links and tasks for topics like that.  In other words, a case is a social collaboration space for a specific topic.

To some extend, the scope of a case could be compared with an email discussion thread.  Before you bring it on, let me explain why that is a problem.  Email is ubiquitous and serves its purpose as the least common denominator for communication.  But using email has major drawbacks when used as the tool of collaboration.  First, you have to assume that people always hit Reply-All.  Reading a conversation where some people answer inline, some answer on top and some at the bottom is a challenge to say the least.  Searching the latest version of an attachment in a conversation is hard and error prone.  Involving someone later in an email discussion is hopeless as not everyone includes the whole discussion thread.

Don't get me wrong, I'm not saying cases should replace email threads.  People will continue to leverage email as a unified inbox for the foreseeable future.  But cases provide a much better structure for information that is currently buried in the emails themselves.  I think we will see a shift towards email being the unified notification inbox and the content will be stored in dedicated systems like case management systems.

For organizations larger then 10 people, it's a matter of professionalism to equip employees with a case management system.  It's the way to share relevant information in chaotic world with loads of noise and only a bit of signal.  People will be better informed and collaborating becomes simpler.  These improvements in the internal organization already justify adopting a case management system.  The bonus comes from collaborations with external business partners like prospects, clients and suppliers.  The advantages are just the same in this situation, and on top you show a professional approach to doing business.
Regrettably, not all solutions use the term case for this concept.  Some solutions call it a task and others invent a new name.  But it should be clear that every organization deserves a solution for social collaboration and case management is a crucial aspect of that.

Friday 5 April 2013

BPM And Fruit Ninja



In The Zero Code Hypothesis, Scott Francis observes the contrast between 2 trends in BPM right now.  On the one hand there is Camunda explicitly saying the zero coding ambition is broken.  Scott comments:
It is kind of a fascinating counter-point to the movement to make BPM “more accessible” to the business, and I think it represents a pretty sizable chunk of the open source market that is in strong agreement.
On the other hand, there is the trend to further simplify process design for non-technical people.  Several BPM vendors concluded that BPMN is too complex for simple processes and started experimenting with process builders for people that don’t know BPMN.
Key passages from their presentation included “Enabling people who normally couldn’t do BPM or BPMN”.  BPMN was described as the invisible hand surrounded by UI.
Scott concludes that this is a contrast:
And to think that these sessions were all on day 1 of the same conference – totally different hypotheses on how to approach BPM and BPMN.
It’s a contrast, but I don’t think these two trends are contradictory. To me this is a sign that the BPM sector starts to realize that it’s dealing with two very distinct stakeholders.

BPM always has been about automating people tasks and combining those with technical system integration steps.  As such, BPM serves 1) non-technical business people that work out concrete steps how the organization should accomplish larger goals.  And 2) technical people weaving in the automatic steps and integration with other systems.

At Effektif, we take those two stakeholders as the starting point, and both types of users must get a tailored user experience.

In my opinion, it only takes a well-aimed Fruit Ninja move from the vendors to slice BPM so that both stakeholders are served well.  Meaning, with the right approach both business people and technical people can be served properly.

Slicing BPM becomes obvious if you consider all people related aspects separate from the technical aspects.  All people aspects in a process can be configured by non-technical business people.  Things like sending simple notification emails and filling out a form to complete a task don’t require technical knowledge. By default, all processes should have the ability to attach documents, links and have a discussion.  With these capabilities, non technical people can already build a broad range of useful processes that don't require technical integrations.


Fruit Ninja precision is required to resist the temptation of adding small technical aspects that enable the next interesting feature.  I believe that is where traditional BPM vendors fail miserably. In order to keep simplicity, a BPM system must cut out rigorous any technical aspect from business person’s user experience.

That slicing between technical and non-technical aspects is applied rigorously throughout the Effektif product.  It ensures a superior user experience for the non technical managers automating people processes.

Thursday 14 March 2013

The 4 Best Books I Listened To Recently

For some reason or another reading books is just not meant for me. However, when jogging or cycling, I first switched from listening to music to podcasts. Now that really works for me. Here's my favorite podcasts
This American Life
Hanselminutes
HNpod
The Java Posse
NPR's Planet Money

More recently I got an Audible subscription and really enjoyed these books

The 7 habits of highly effective people, by Stephen R. Covey

This should be a mandatory book in high school. Even if you think you're socially skilled, this book will show you whole new dimensions of listening to people and taking a constructive approach in communication.  It's actually this title that inspired me to name my new startup effektif.com.






In the plex, by Steven Levy

This is a very inspiring story with loads of cool anecdotes.  You get a peek inside Google when it was booming.  It shows that by taking an overdose of ambition, you can look from a different angle at problems then most people do.  The ambition that sparks out of the book works really contagious. It made me believe I could actually start a booming business of my own :)






The lean startup, by Eric Ries

A classic by now and a must read for everyone that thinks of founding a startup.  After the inspiring 'In the plex' that made me dream, this was the perfect counterweight that put my feet back on the ground.  It explains that most startups fail and provides a very practical approach to maximizing chances of success.






Getting things done, by David Allen

Confession: For this book I actually read the paper version.  After my studies, this is one of the only books I've managed to read completely since then.  And that's intended as a complement to the book :)  It's a practical guide on how typical knowledge workers can reduce stress and get more done. This book is related to the concept of inbox zero. If you are struggling with your inbox, go and read or listen to this book.





What great podcasts or books do you recommend?

Friday 21 September 2012

Activiti Moved To Github

This morning, we moved the Activiti source code to Github. This move was long overdue and it's going to simplify working with the codebase a lot for all involved.

To learn more including pointers about pull requests, check out Joram's blog post about it.

Friday 10 August 2012

Activiti 5.10 Just Got Really Fast

We just released Activiti 5.10 and it's another big milestone for the project:
  • Serious performance improvements: See Joram's blog The Activiti performance showdown for the amazing details
  • Tijs' book Activiti in Action published by Manning came out!
  • Added support voor bpmn message start event
  • Added capability for clients to validate a user's rights to start a process
  • Added support for nested sub-processes and embedded subprocesses in designer
  • Added support for catching intermediate and boundary message events
  • Bug fixes and various smaller improvements. Check out the Release notes for more details
Kudo's Daniel Meyer, Frederik Heremans en Joram Barrez for achieving the major performance improvements.

Big thanks to Camunda for contributing many improvements and fixes in this release.

Congrats to Tijs for pulling off the book and the Activiti Eclipse Designer improvements.

Now it's up to you. You're just 1 free Download away from the most amazing BPM and workflow experience. Go for it!

Thursday 1 March 2012

Activiti 5.9 Is A Big Leap Forward

We're proud to announce Activiti 5.9 is released with some major improvements:
  • Support for Exclusive Jobs and Plugability of the Job Executor Infrastructure
  • Persistent event subscriptions (infrastructure)
  • Intermediate signal throw / catch
  • Event based gateway
  • BPMN transaction (cancel end event & cancel boundary event)
  • BPMN compensation (compensation catch & compensation throw)
  • Interrupting error event subprocesses
  • (Multiple) message start events
  • Various bug fixes

Special thanks goes to Camunda, and Daniel Meyer in particular for the some great core engine feature contributions.

Go download and taste this grand cru release!

Thursday 20 October 2011

Activiti 5.8 Adds Asynchronous Continuations

Activiti is the Apache licensed BPMN process engine. We've just released version 5.8 which has following highlights:
  • Asynchronous continations (tech preview)
  • Added BPMN inclusive gateway
  • Improved Spring support
  • CDI integration improvements
  • Bug fixes
Get an opinion of your own! Go download and try it out.

Monday 10 October 2011

BPM In The Cloud

Recently the Activiti team started exploring which parts of BPM could be brought to the cloud effectively. The first thing we realized is that on the cloud, a requirement is self-service by professional consumers. This means that end users should be able to manage the apps they use. Up to now, BPM systems were managed by in-house IT departments.


Immediately it became clear that hosting traditional BPM engine on the cloud is a big technical challenge with a relative low value for professional consumers. We have to look for new ways to deliver BPM on the cloud.

BPM is about combining automatic steps with human task forms. Building task forms on the cloud is a valid concept. Look for example at Formstack. Combining such task forms in a process is a great idea I think. But the generic automatic steps in BPM processes are more problematic on the cloud.

What are those automatic steps that people want to do on the cloud? Well there is plenty of choice. Read data from a google spreadsheet, or salesforce account, then build a document that is uploaded to google docs or dropbox. It could be doable to let professional consumers build process descriptions in a web browser.

But what is often overlooked is that the data used in processes is too complex for end users. For example, from a human perspective, the data read from the spreadsheet is the same as the data that has to be put in a PDF in some subsequent step in the process. But the building blocks that are used to compose workflow processes have to rely on concrete technical datatypes. There is almost always data conversion and projection necessary between those steps in a process. Specifying technical data type-conversions in a workflow is too complex for professional consumers.

We have to make it simpler.

On the other hand, the trend to Advanced Case Management (ACM) really fits well into the cloud. Dynamic management of tasks without a predefined flow matches perfect with the professional consumer needs and capabilities. The ability to associate documents and other forms of content makes it a great match. An extra dimension is added by the fact that a cloud solution for ACM enables seamless B2B collaboration.

This already gives an initial insight in the direction that the Activiti team is currently looking forward towards bringing BPM to the cloud.