Clearly I have been quiet for some time – busy organizing conferences and events and also spending more and more time exploring the world of Software as a Service (SaaS) as it applies to BPM. Some are talking about this conjunction as really a Platform as a Service (PaaS). Over the last 6 months or so I have been playing in the SaaS-BPM space – initially developing the process modeling training material for Appian, and more recently experimenting with a relative newcomer – Itensil.
A while back, I talked quite a bit about the Appian experience – a powerful application building environment that is now delivered On Demand. However, in common with virtually all BPM Suites, it suffered from an overdose of complexity – its just not really accessible to the common person.
Over recent months, I have been experimenting with Itensil as a vehicle to deliver both on demand BPM Training, and also to provide a robust collaboration support environment for BPM Projects. I have also used it to support the preparation of the two major events I have been involved in putting on – the BPM Technology Showcase and BPM Lisbon 2008. I think you would agree, this is not your run of the mill problem that we find in use around BPM, yet sharing many characteristics with difficult problems found in many businesses. With this series of postings I will explore what I have found out about Itensil.
If you are reading this, then you are probably already fairly knowledgeable about Business Process and will understand that I have spent most of the last 20 years focusing almost exclusively in that domain. Initially this was developing a product called Office Engine (I killed that off in 1992 – was not a good time to have the greatest thing since sliced bread), and since then I’ve been crawling all over, and teasing apart just about every major product out there concerned with Business Process – my main interest is in using business processes to drive the way that work happens.
Now if you are like me, you are probably more than just a little frustrated with the rigid and inflexible nature of most workflow systems. What I am getting at is the lack of adaptability inherent in most workflow and BPM systems – you are stuck with whatever process was described at the time it was built. Now while that might be a good thing for a big insurance company or bank wanting to make sure that a clerk doesn’t get creative with a bank draft, it is a cumbersome problem for the rest of us. It smacks of control for controls own sake. Even for the smallest change, you have to refer your application back to at least a business analyst (or worse, the IT department) and then wait for them to get around to understanding what you want, before they reflect that in the next rev that is rolled out some time in the future. Not much use to you as you try to deal with some unique customer situation that has just emerged in the middle of your major bid process; or the customer who says to the architect – I know we are halfway through building this hotel, but can I have a swimming pool on the 10th floor (the point being that the architect cannot throw away all the work to date and start with a new version of the process).
I am referring to a class of processes and applications that most Workflow/BPM Suites just can’t get anywhere near – collaborative knowledge worker processes, where individuals continually interpret the case in hand and make decisions accordingly. I have already mentioned architecture and bid management, but the examples here are endless – from emergency response management, to how an advertising agency operates, through to consultancy, medical investigations (indeed all sorts of investigations and research) … right through to what you do.
Adaptability is also an issue if you are building out applications – it’s just that now you have to blend adaptability and collaboration with more rigorous procedures – all of which somehow need to live together. I think this is the sweet spot for BPM and SaaS delivery. It is not the highly rigorous, slowly changing transactional procedures that you use to record and support your sales transactions, or issue credit cards. Those sorts of processes are what traditional BPM Suites are designed for (and are good at). But what they cannot handle are scenarios where change and adaptability are at the core – where change is part of domain.
Itensil Dynamic Process Platform (DPP)
The Itensil Dynamic Process Platform is really quite a different architecture from every other BPM Suite I have looked at. The developers have combined the ease of use and adaptability of a wiki, with the mechanics of Process. Every object in the system, whether it be a Process, a Document, an Entity or even the home page has a sort of Wiki style history feature. You can roll back to it at any time (make the previous version active).
Processes development has some real wow factors associated with it (see Instant Wows below). Each Process design can then be instantiated into individual Process Activities (each of which can be adapted by the end user on the fly if needed). There is also an instant, ad hoc team collaboration environment, which can be endlessly adapted and added to (really a special use of the process functionality that is embedded into a tool called “Meeting”). Any number of instances of a Process (and Meetings) can be rolled up into a “Project,” which has its own Wiki home page. A Process instance might belong to several different Projects. There’s a lot more than this, but I will get to that later.
This is the core environment that delivers an end-user accessible process support environment. Itensil describe the processes that they designed the product to support as “roughly repeatable,” where each instance of a process is subtly different from all that went before. It really is a nuanced blend of what I call “Practice” and “Procedure.”
At the heart of the system is a sophisticated document management and content repository that is all served up out of a LAMP stack – actually most end-users won’t care what operating system or application server platform it sits on, it is delivered On Demand over the Internet (although an On Premise version is also available for those who must have it).
But its not just an end-user tool set – you could think of the Itensil DPP as Process Platform as a Service (PPaaS), where an application developer or third party can embed their own IP and application know-how into a robust application and blend that with an accessible and tightly integrated user interface that is entirely delivered through AJAX in a Browser.
While all BPM Suite vendors are trying to work out how to graft collaboration onto their existing workflow tooling, Itensil have taken another approach. From the ground up, they have added business process support to a rich collaboration environment. Rather than design-time ease of use (i.e. for the Business Analyst and Professional Developer), they have sought to deliver run-time ease of use and adaptability for the knowledge worker (i.e. designed for people like you and me). In Itensil, all processes are developed in the environment itself using the outline editor and/or the process modeling canvas. Each one is, in its own way pretty special (see below).
Itensil’s Organizing Principle is Adaptability @ The User Level
Outline to Process – When initially envisaging a process, the user merely outlines the steps in a wiki editor (perhaps cutting and pasting from somewhere on the web or other office document such as Word, PDF, Excel or a Mindmap outline). They can also insert markers (associated file attributes) to create dropzones for any outputs that are produced, and specify team roles, along with review loops and due dates if desired). The Process itself is generated automatically. Each step has an attached Wiki page that serves as the user interface for that step.
Instant Mode Switching – The user can immediately switch between “Run” mode (instantiating the process); “Status” view providing an overview of the steps and also provides mechanisms to re-assign tasks to team members, set due dates, jump to steps, etc.); and the “Design” view which will take you to a drag and drop modeling canvas and the outline editor.
On the Fly Process Change – When Processes are run an instance is referred to as an Activity, each of which is adaptable at run-time (as required by the end-user). Alternatively, the user might decide to save the changes to the default process model (affecting all future Activities).
Run Time Binding – At the Task level, the user could decide to bind a separate (stand alone) Process to a Task to further elaborate on how the work should be done (perhaps involving other roles). The user interface presents an interface that allows the standalone sub-process to be viewed discretely, dragging the artifacts from one process level to another (and thereby avoiding the need for complex mapping).
WebDav – Itensil supports a network file system that is delivered via the Internet (while HTTP gives you read access, WebDAV gives you write access). Essentially, it acts like virtual file system, allowing users to edit files in situ (saving the new version automatically). It provides a network drive that is available at the Project, Process, or Meeting levels (indeed any level). In this way, Itensil can more easily support the virtual enterprise as users up and down the value chain collaborate in a safe and secure environment.
Object History – all objects in the domain receive the wiki treatment; each file, each page, each process, everything … has a history associated with it. Suitably authorized users can roll back to a previous version (making the older version active but still keeping the new edits). Even a process can be undone step-by-step to recover from errors or facilitate a change to the process. Of course, all objects in the system have a robust security model associated with them (setting up the system it is possible to control the default permissions on different classes of objects).
Look Ma, No Forms – given that all steps in a process are presented to the user via a WYSIWYG wiki page, the system provides a natural canvas for presenting information. Users can create Process Attributes at any point, and simply drag them onto the wiki canvas in edit mode. Placement is just a question of where the cursor was at the time. In fact what is happening is a tiny Xform is created automatically to support that attribute. So if you decide that this process needs a “Budget” field, all you need to do is drop into Design Mode, select the step where it is set, open the Attributes panel, click the new attribute link, give it a name, say what sort (say Currency) and then drag it onto the canvas where you want it. The user will then be prompted to provide the Budget at the right point (which might then be reused at a later step).
These points have massive implications for adoption, design and usability of BPM – rather than having to predict all processes in advance, the user can decide how to interpret the task in hand and apply an appropriate personal template. The net result, better adoption by the end-users themselves (they are in control) and a more agile adaptable organization. The outline to process functionality provides a real step up in accessibility, putting it in reach of the average knowledge worker or manager – if you can work with a PowerPoint outline, you can work with Itensil.
Itensil Power Features
So while all of this might sound really interesting but not quite appropriate for your complex business problems, the latest set of features delivered by Itensil change all of that. These facilities are primarily designed for the professional developer or business analyst; they provide the tooling to help build out Itensil into vertical industry domains and deliver discrete, knowledge-intensive applications. Further, I understand that the whole environment is configurable including the look and feel and the brand image delivered (meaning that OEM partners can embed the entire environment into their own offering).
Entities – Itensil now incorporates a mechanism to flesh out your Line of Business (LOB) data structure, and establish the relationships between those Entities. Once the established, the system can then automatically walk the meta-data structure, automatically finding related Entities and presenting the correct information to the user at run-time.
This is in contrast to the usual approach taken by most BPM vendors who rely on Process level variables (i.e. named value pairs) to represent LOB data. This traditional approach introduces significant complexity to the end user trying to work on developing a process (they must always worry about the mapping of attributes from one process to another and over time the sets of variables can easily become fragmented, further driving the complexity and cost of ownership). In Itensil, this is all done automatically.
Each Entity can have a number of XForms associated with it. Since the Entity relationships are already known, the XForms environment can also display the related Form at the same time as the primary Entity. So a Person form might also include the Address as a sub-form. When designing a Process, an Entity Relationship is easily established that can then automatically make use of this form – say you know that the user should enter a new person called a “Target,” then it is as simple as saying a New Entity Relationship of type Person is required, which is referred to as a Target. When you drag the resulting widget onto the work zone wiki page, the system will ask which Form is to be used (as there might be several different views), and hey presto, you have a sophisticated XForm delivered to the user (based on a robust data model). Of course, the professional developer can also resort to specialist tools for creating sophisticated Xforms instead of using the out-of-the-box functionality.
Integrated Rule Builder – Of course, developers might want even greater sophistication to create rule driven XForms that embed some special behavior. Say for example, if you want to display a different section of the Form based on whether the Customer is based in the US (the tax calculation might then be different on a state by state basis), or if the Customer was in the UK, then the form should include provisions for VAT (a wholly different regime). The point is that these form-related rules are executing on the fly in the browser of the user, yet still pointing back to the Entities and Process Attributes (speeding up the user experience and removing latency in the connection). On the other hand, say for example you want the rule to run on the server to govern process logic, then that same rule or a new one could be applied to the process. All of this functionality is supported with a drag and drop rules builder that knows all about the associated entities and attributes (i.e. it is tightly integrated with the LOB modeled earlier).
Partner/Customer Mode – this interface enables partners and customers to take part in the process, yet doesn’t provide them with access to the rest of the environment. For example, if your application is designed to support the RFP process in putting on a conference, each hotel representative can be provided with this sort of guest access to upload their response and later respond to queries.
Organizational Hierarchy – the new version introduces a more sophisticated modeler, allowing the system to reflect any number of complex organizational forms. For example, this now supports a user changing department in the organization and the supervisor role is automatically updated.
Courseware – Now this might sound a bit strange for a BPM Suite, but when you consider that this is a knowledge-centric environment (heads-up process support, as against heads-down process control), it is important that you have a way of training people and unlocking areas of the system once they are qualified. It is also a better way of ensuring compliance (in the sense that only qualified people are given relevant work to do). So Itensil have released a Courseware builder – where the course itself is a process – the wiki page is the user interface for delivery. It will handle embedded graphics, all your advice notes and any attachments (whether they be PDFs or bits of embedded Flash).
Training can then be delivered in-situ, as required at the coalface. The new Quiz Builder supports the user as she develops the process-driven courseware, generating multi-choice quizzes to test a users understanding before moving on to the next section or opening up access to some specific process or feature capability (you have to supply the questions and answers). People taking a course don’t get access to the process that controls it, but from the perspective of a professional training developer this sort of functionality is really game-changing. Quite apart from changing the rules of the game in Distance Learning delivery (better than endlessly regenerating Flash courseware), it is also a way of ensuring that applications and features are sufficiently understood.
Now I am sure it could do with improvement, and as I write this I am already thinking of areas where I would like to see changes, but once you grok the implications of this it is quite literally mind-blowing.
Excel Interface – Itensil now supports the capability to Import and Export form content to an Excel spreadsheet leveraging the XML format of Excel. While you could use the cut and paste method (as in Paste to Outline feature of Process building interface), in certain applications it is necessary to export LOB data into Excel for offline and disconnected working (or even just to take a snapshot of a case in order to lock down the data as an evidential artifact).
So in these ways, Itensil allows the developer to deliver structured LOB information and applications alongside the knowledge worker collaborative environment that distinguishes it from the competition.
The Big Idea
It really is all about leveraging the power of process to knowledge workers in a rich collaborative space in the cloud. Personally, I think Itensil have really brought something fundamentally new to the market. The reality is that this sort of end-user accessibility really does change the game. Knowledge workers can now do it for themselves, seamlessly transitioning from the freeform collaboration environment of a wiki to the structured work that some of their processes demand. At the same time, Itensil have delivered an evolving work environment that is under the control of the users who most need it – the knowledge workers themselves. As a result, the cost of ownership for an application is dramatically lower – instead of always having to refer back to a Business Analyst or IT developer.
For the industry, I think we are going to see Itensil define a new segment in the BPMS market that is currently massively underserved. Knowledge workers are poorly served – they quickly revert to email as most BPM Suites fail to deliver the necessary adaptability. And we shouldn’t forget that all of this is delivered On Demand, in a multi-tenant platform (i.e. all you need is a web browser and an Internet connection). The Itensil combination of Web 2.0 + Collaboration + BPM is quite literally showing the way forward and I think, starting to beat up the competition.