Over the last week, I have managed to spend a couple interesting hours with Bonitasoft, the opensource BPMS.
What follows is not a full blown review. It is more of a couple of random observations and perhaps an insight into what aspects of product development will be increasing important to enterprise software in the future.
Who am I to have an o pinion?
The time I spent with Bonitasoft was completely motivated by my desire to see something new.
It was not part of a formal vendor evaluation for either my employer or a client. I think this is important to understand. I was following my curiosity, not looking at it to solve a specific problem.
Also, it should be noted that I’m not a developer or a sysadmin.
I do manage technical teams and have managed BPM delivery teams for going on 5 years now. I understand what a BPMS should be able to do but you wouldn’t pay me to install your production server or code your SAP integrations. In the BPM space, I would class myself as a power business user.
Why is this important? My view is that I am the target market for BPM.
The promise of BPM and perhaps enterprise software in general is make it possible for non-technical users with the right training and experience to be more involved in the development and maintanence processes of their tools. This is the path to business agility. Business users just expect it work for them.
In my experience, BPM is increasingly being purchased out of business budgets and business users want to be able to play with your software before they even call and talk to you. App stores, the consumerization of IT and SaaS have all taught them that they should be to get access to your software without a drawn out procurement process.
What about BonitaSoft?
I had a productive afternoon with it.
In about three hours, I managed to get it installed on my laptop, build a small process and integrate it with Twitter using an pre-built connector.
I, also, encountered some problems. To start, here are the good points:
- The installation was easy on my Win7 laptop and its obvious that some thought went into making the application fit on a normal laptop and install elegantly.
- I was impressed by what installed: Not only did I get the development studio but a runtime environment (jetty and solr, I think) also installed so I could run my processes as I built them.
- The ‘getting started’ tutorial was very useful – although I only skimmed it then started doing my own thing. I did refer back to it a couple of times and always found it useful. A great endorsement for the product is that I usually needed to go back to the document for fairly specific items (how to set up a variable).
- The out-of-the-box portal looks like it was styled by Darth Vader in red and black but worked well to let me see my process working quickly.
- I liked that running a case from the portal (called the User Experience in Bonitasoft) would run the human interaction in the portal but that the same code could also run in a separate window (see the gallery above).
- I felt confident that integration points (called connectors) could be built by developers but reused by business users since I used an out-of-the-box one to send messages via Twitter. Here’s the test account I used if you are interested.
- As you would expect, some things were not where I would expect them. For example, the conditions coming out of a decision gateway are added to transitions, not to the gateway itself. I would prefer that logic all in one place – complex gateways must be a nightmare to check but even in these circumstances it was relatively straight-forward to understand what to do.
Overall, I managed to install and get the product working for me in a couple of hours without needing to talk to a salesguy. A very positive experience. Obviously, I wasn’t developing custom integrations or deploying code to a production system. I didn’t it set it up for a team to collaborate on a project but it was fun to get started.
Unfortunately, I had a less positive experience when I opened Bontia Studio a few days later to show a coworker my little experiment. The studio worked fine but runtime environments simply crashed and would not reset from inside Bonita Studio. Eventually, I found a forum article telling me to manually delete certain directories on the file system and restart Studio which worked fine.
From the forum, it was obvious that others were having the same problem. Its the kind of problem that the open source community is brillant at resolving so I’m sure the next release will take care of it. But, it is also the kind of problem that the open source development community is tolerant of and the business user community less so. Business users just expect stuff to work and work well.
Bonitasoft is still installed on my laptop which is probably the highest praise I can give it but it, like the rest of BPM, is not quite ready for a pure business audience.