Models, Social Tagging and Knowledge Management #BPM2009 #BPMS2’09

Michael Prilla of Ruhr University of Bochum presented his research on integrating process models into knowledge management system content, using social tagging as a semantic layer for heterogeneous content, with the goal to disseminate process models to foster feedback from users that results in process improvement. Typically within an organization, process models are used by a small group, and there is fairly low acceptance of these models amongst the process participants.

Allowing for social tagging of process models allows users to easily provide feedback in a relatively unstructured fashion. I found his characterization of the groups involved to be interesting: “core users”, “extended core” and “periphery”; more like “inner sanctum”, “enforcers” and “clueless”. The periphery, although containing most of the process participants, is fairly unaware of process modeling and the explicit process models that guide their own work. Giving everyone access to an easy-to-use process modeler does not, by any stretch of the imagination, mean that more than a tiny fraction of those people are going to use that tool; more likely, they have a binder of paper documents with something approximating their processes.

If process models are not maintained in a repository of some sort, process designers search around on shared network drives to find them by name: no different from how they find any other document. It’s not surprising that if an organization doesn’t have any well-organized content management, they’re going to have the same problem with process models, which could be seen as just a specialized type of document. By putting process models into a knowledge management system (which you could consider a content management system to be) and tagging them with keywords that are relevant to the process participants, it makes it at least feasible that the periphery will locate and use these models rather than the outdated binders at their desks. The advantage of using social tagging is that the process designer doesn’t have to do this: tags can come from any of the different types of participants, and are not part of the process model itself.

At a high level, this isn’t fundamentally different from what you would experience with any type of document sharing in a content management system: you would see the same benefits from social tagging of any artifacts that may be of value to a wide audience. They have done some development of an interface for browsing the model repository based on the tags with some specific functionality for process models such as tagging at an intra-process level, but you would expect to see similar results from other types of artifacts/documents from social tagging. In fact, the challenges around social tagging are really the same for any type of content: appropriate tags, and sufficient levels of participation.

The impacts are to increase access to process models, and provide mechanisms for feedback on the process models from the participants, with an eventual goal to have process models be everyday work artifacts rather than some exotic diagram that is only within the domain of the inner sanctum.

Requirements elicitation as a case of social process #BPM2009 #BPMS2’09

Giorgio Bruno of Politecnico di Torino presented a paper on requirements elicitation as a social process. First, he covered the distinction between business processes – an emphasis on control flow, with the process distributing work to the participants – and social processes – where participants perform actions in a shared space, and including the participants, their actions and the artifacts produced.

He introduced a proof of concept textual language used to formally describe social processes, SPL. As he walked through it, it wasn’t clear to me the advantages of this over a graphical language for describing processes such as BPMN, although it is more descriptive around social actions such as adding participants to the process team. However, when he moved past the initial actions of electing a team/board member to details of writing requirements, the language expanded significantly to allow direct representation of documents and their components within a wiki, and member voting on the content created.

Next in their research is bridging the gap between business processes and social processes, with two possible directions:

  • Introduce control flow features to SPL for better support of direct, predefined interaction between participants.
  • Move cooperative features into business processes, for example, directly supporting wiki collaboration as part of a structured process.

As he pointed out at the end, BPMN and BPEL are not well-suited to social processes, and SPL is not well-suited to business processes; the hot topic is about which notation to use for these integrated processes, and the extensions required to any of the existing notations in order to support both types.

Workflow management social systems #BPM2009 #BPMS2’09

Next up was a presentation by Marcello Sarini, a computer scientist from the psychology department of University of Milano-Bicocca, discussing the socio-psychological perspective on process management. Processes that involve human tasks inherently are about interactions between people, which falls under the area of social psychology and the resulting theories of human social behavior.

They performed a case study examining the patterns of behavior in Wikipedia Italy, based on interviews with 28 participants ranging from contributors to administrators and higher-level mediators. What they found is that status (role within Wikipedia) affected perceptions; and that although the administrators considered Wikipedia to be self-organized, contributors and users view it as hierarchically pre-organized. This is interesting when looking at how social relations work in social software, and how this can be applied to human-centric BPM in both the process modeling and execution stages. In reality, organizations are not flat, and most collaboration occurs between peers (or near-peers); it can be difficult to motivate people to participate in social enterprise software if they feel that their management may be looking at it, although there is some research being performed to see if blind suggestions have a different impact that those that are attributed to individuals.

Prescriptive BPM, where a small group of people (usually management) determine the process designs that are executed by many other people, can lead to intergroup conflict: the participants disagree with the process designs, and a “us and them” mindset is reinforced. Easing this conflict can be done in a variety of ways, primarily through effective channels for user feedback. Aligning personal goals with organizational goals can also reduce barriers, which can be facilitated by the use of wikis to share information.

Descriptive BPM, where processes are seen as knowledge maps rather than a rigid set of steps to follow. The risks in this case are lack of standardization and reduced accountability, although most people will conform to norms due to social influence.

The goal of this research is to use social psychology to help design a new generation of human-centric BPM, as well as develop new social visualization techniques.

Community participation in a hosted BPM system #BPM2009 #BPMS2’09

Rania Khalaf of IBM’s T.J. Watson Research Center presented a paper on enabling community participation for workflows through extensibility and sharing, specifically within a hosted BPM system.

She is focused on three areas of collaboration: extension activities (services), collaborative workflow modeling, and collaboration on executing workflow instances. There are two key aspects to this: method and technical enablement, and the business and security aspects.

This is really about the community and how they participate: developers who create extension activities, process designers who create process models and include the extension activities, and participants in the executing workflows. For extension activities, they’re leveraging the Bite language and runtime, which uses REST-based interaction, and allows developers to create extensions in their language of choice and publish them directly in a catalog that is available to process designers. Workflow designers can provide feedback on the extensions via comments. Essentially, this is a sort of collaborative SOA using REST instead of WS-*: developers create extensions and publish them, and designers can pull from a marketplace of extensions available in the hosted environment. Much lighter weight than most corporate SOA efforts, although undeniably more nimble.

Process models can be shared, either for read-only or edit access, with others both within and outside your organization in order to gather feedback and improve the process. Once created, the URL for instantiating a process can be sent directly to end users to kick off their own processes as designed.

This is part of several inter-related IBM efforts, including the newly-released BPM BlueWorks and the still-internal Virtuoso Business Mashups, and seems to fall primarily under the LotusLive family. This is likely an indication of what we’ll see in BlueWorks in the future; they’ll be adding more social capabilities such as process improvement and an extensions marketplace, and addressing the business and security issues.

Workshop on BPM and social software #BPM2009 #BPMS2’09

I’m back at this year’s edition of what was probably my favorite conference last year: BPM2009 in Ulm, Germany. This is primarily attended by academics and institutional researchers, and the format is as an academic conference, where each presentation is based on a research paper.

This first day is devoted to workshops, and I’m attending the workshop on BPM and social software (as I did last year). The format is that each author presenting at the workshop has 20 minutes to present and 10 minutes for Q&A; as with last year, the workshop sessions are small and I think that most of the attendees are actually delivering a paper at some point.

Rainer Schmidt of Aalen University, who is co-chairing the workshop along with Selmin Nurcan of University Paris Pantheon Sorbonne, introduced the session and provided the general topics of discussion in this workshop:

  • New opportunities provided by social software for BPM
  • Engineering next generation of business processes: BPM 2.0?
  • Business process implementation support by social software

He defined social software as software that supports weak ties and social production following the ideas of egalitarianism and mutual service provisioning, then went on to discuss the research and references that led to this definition:

  • Weak and strong ties from Granovetter (The Strength of Weak Ties, 1973): social software creates weak ties easily, and these are crucial to improving enterprise agility and innovation
  • Social production from Benkler (The Wealth of Networks, 2006), and Tapscott and Williams (Wikinomics, 2006): collaborative creation combines the best thoughts and creates more competitive products, and moves the value from products to services
  • Wisdom of the crowds from Surowiecki (The Wisdom of the Crowds, 2005): combining inputs from many people, even if not all are expert, yields better results than relying purely on experts, in part because you don’t know know in advance which experts are better/more appropriate
  • Cooperative service creation: equal partners interact to create a service

This results in some basic principles of social software:

  • Egalitarian: all users (can/should) contribute and consume content and context information, and there is no distinction between producer and consumer. There are some significant cultural barriers to this, however, in many enterprises both in terms of allowing people to contribute and having people recognize that they have a duty to contribute.
  • Self-organization and bottom-up organization: users develop the structures and taxonomy interactively without external imposition of structure.
  • Both content and context are considered valuable: links, tags, bookmarks and even tweets add necessary context to content.
  • Continuous and immediate fusioning and aggregation of information: content is immediately available without formal approval or change management procedures that inhibit its availability; there are necessary tradeoffs between corporate governance and knowledge gathering/sharing depending on the nature and reach of the content.
  • Continuous and recursive assessment: constant review of content contributions allows flaws to be detected and corrected almost immediately, which provides a governing function on content creation.

These formal definitions, backed up by the appropriate research, provide a much deeper understanding than the usual noise that we hear in the commercial marketplace. To bring together a number of popular terms, social software is part of Web 2.0, and supports Enterprise 2.0; it manifests in both groupware and knowledge management.

There are threats to social software: cultural change is often required in order to have people understand the importance of contributing and the value that they can bring; and people can contribute inappropriate content, which can in turn have legal ramifications if un-reviewed information is freely available.

Good start to the workshop.

SAP NetWeaver BPM

This post is both long, and long overdue. It’s based on several online sessions with Donka Dimitrova and Jie Deng of the SAP NetWeaver BPM product management team, then an update with Wolfgang Hilpert and Thomas Volmering at SAPPHIRE in May when the product entered unrestricted release. In the past few weeks, there’s been a series of “Introduction to SAP NetWeaver BPM” posts by Arafat Farooqui of Wipro on the SAP SDN site (part 1, part 2, part 3 and part 4, which are really about how to hook up a Web Dynpro UI to a human task in BPM, then invoke a process instance using web services from a portal), and I’m inspired to finally gather up all my notes and impressions.

The driver for BPM with SAP is pretty obvious: Business Workflow within the SAP ERP suite just isn’t agile or functional enough to compete with what’s been happening in BPM now, and SAP customers have been bringing in other BPM suites for years to complement their SAP systems. I had to laugh at one of Dimitrova’s comments on the justification for BPM during our discussion – "process changes in an ERP are difficult and require many hours from developers" – oh, the irony of this coming from an SAP employee!

The Eclipse-based Process Composer is part of the NetWeaver Developers’ Studio, and is used to create processes in the context of other development tools, such as the Yasu rules engine (which they bought) and user interfaces. Like most modern BPMS’, what you draw in the Process Composer (in BPMN) is directly executed, although user interfaces must be created in other development tools such as Web Dynpro or Adobe Interactive forms, then linked to the process steps. There are future plans to generate a UI from the process context data or provide some sort of graphics forms designer in place, but that’s not there yet.

SAP NetWeaver BPM perspectivesAs with most Eclipse-based process modelers that I’ve seen, Process Composer has multiple perspectives for different types of process design participants, with a shared process model. Initially, there is only a process architect (technical) perspective in the modeler, and the business analyst view will be released this year. Future releases will include a line-of-business manager view to see task sequences and parallelism, but no details of gateways; and an executive view of major phases with analytics and KPI dashboards.

There is no link between ARIS-based modeling (SAP Enterprise Modeling Applications by IDS Scheer) and the NetWeaver BPM in this version; integration is planned for later version, although it will be interesting to see how that plays out now that IDS Scheer has been purchased by Software AG, which competes with SAP in (at least) the BPM arena.

Although all you can do now is create your BPM processes in this environment, in the future, there’s plans to have a common modeler and composition environment provide visibility into ERP processes, too, which will be a huge selling point for existing SAP customers who need more agility in their ERP processes. This common process layer will provide not just a unified design experience, but common runtime services, such as monitoring and performance management.

One huge issue from an orchestration standpoint is the lack of support for asynchronous web services calls, meaning that you have to use the existing NetWeaver Process Integrator (PI) environment to create system-centric processes, then invoke those (as synchronous web services) from NetWeaver BPM as required. I didn’t get a clear answer on future plans to merge the two process management platforms; keeping them separate will definitely cause some customer pushback, since most organizations don’t want to buy two different products to manage system-centric and human-centric processes, as they are encouraged to do by stack vendors such as IBM and Oracle.

SAP NetWeaver BPM Process ComposerTaking a look at the Process Composer environment, this is a fairly standard Eclipse-based BPMN process modeling environment: you create a process, add pools, add steps and link them together. For human-facing tasks, you use the properties of the step to connect it to a UI for that step, which must already be built by a developer using something like Web Dynpro. As I mentioned previously, the first version only has the “process architect” perspective, and is targeted at creating human-centric processes without full orchestration capabilities, since that’s what SAP’s customers who were involved in the product development cycle said that they most wanted. The environment is fairly technical, and I wouldn’t put it in front of any but the most technical of business analysts.

Roles can be set by lanes and overridden by task role assignment, which allows using the lanes for a department (for example) and overriding manager-specific tasks without moving them to another lane. Also, expressions can be used to assign roles, such as manager of the user that started the process. User IDs, roles and groups are pulled from the NetWeaver user management engine (UME).

Each step can have other properties, including deadlines (and the events that occur when they are exceeded) and user texts that appear for this step in the user worklist, which can include parameters from the process instance. These are all maintained (I think) in a task object, which is then associated with a step on the process map; that allows the same task to be easily reused within the same process or across processes.

SAP NetWeaver BPM Process ComposerThere are a number of things that I like about Process Composer:

  • Some nice UI pop-ups on the process map to make specifying the next step easier.
  • An explicit process data model, called the process context, driven by master data management concepts; this is used for expressions and conditions in gateways, and to map to the inputs and outputs of the UI of human steps or the service interface of automated steps. It can be imported as an XSD file if you already have the schema elsewhere.
  • The visuals used to map and transform from the process context to a human or web service step make it obvious what’s getting mapped where, while allowing for sophisticated transformations as part of the mapping. Furthermore, a mapping – including transformation functions – can be saved and reused in other processes that have the same process context parameters.
  • Lots of fairly obvious drag-and-drop functionality: drag a task to create a step on a process map, drag a role to assign to a pool, or drag a WSDL service definition to create a system task.
  • Nice integration of the Yasu rules engine, which can be purely within the context of the process with rules appearing as functions available when selecting gateway conditions, or as a more loosely-coupled full rules engine.

Process Composer is just one tab within the whole NetWeaver Project Explorer environment: you can open other tabs for UI design, rules and other types of components. This allows the process to be visible while rules are being modeled, for example: handy for those of us with a short attention span. Rules are created using decision tables, or by writing in a Java-based rules language; Dimitrova referred to the latter as being “a bit complicated for business people”, which is a bit of an understatement, although decision tables are readily usable by business analysts. Future releases will have a business perspective in the rules modeler.

The Rules Composer is a full rules modeling environment, including debugging for incomplete or over-constrained rules in a decision table, and rules versioning. Parameters from a process context can be passed in to rules. Rules can be exposed as web services and called just like any other web service; in fact, although there is tight integration between the rules and process environment allowing for easy creation of a rule directly from within the Process Composer perspective, the rules management system is a separate entity and can be used independent of BPM: really the best of both worlds.

SAP Universal WorklistHaving spent about 3 sessions going through the design environments, we moved on to process execution. Processes can be initiated using a web services call, from an Adobe form, or manually by an administrator. Since process models are versioned, all of the versions available on the server can be seen and instantiated.

Human tasks can be seen in the SAP Universal Worklist (UWL) through a connector that I heard about at SAPPHIRE, appearing along with any other tasks that are surfaced there including SAP ERP tasks or other systems that have developed a connector into the UWL. I like the unified inbox approach that they’re presenting: other BPM systems could, in fact, add their own human tasks in here, and it provides a common inbox that is focused on human workflow. Although an email inbox could be used for the same purpose, it doesn’t provide adequate management of tasks from a BPMS. The UWL is fairly independent from NetWeaver BPM; this is just one way to provide a worklist of BPM tasks that is provided by SAP in a portal environment, but it doesn’t have to be done that way.

SAP NetWeaver BPM Task InterfaceOnce a task is selected and opened, there is a frame across the top with standard task information that will be common across all tasks: information such as start date, deadline and status; common task functions of Close, Delegate and Revoke; and notes and attachments to the task. Below that is the Web Dynpro UI form that was connected to that task in the Process Composer, which contains the instance data that is specific to the process context for this process. The user can interact with that form in whatever manner specified by the Web Dynpro developer, which might involve accessing data from databases or ERP systems; that part is completely independent of NetWeaver BPM.

The user can also click through to a process view showing where they are in the context of the entire process map, plus runtime task parameters such as priority and start date.

Considering the all-important areas of monitoring and management of work in progress, that’s a bit weak in the first version. In the next version, there will be a dashboard showing process status and cycle time, with drill-down to process instances, combining exported BI data and realtime work in progress statistics. There is no way to update the process design of work in progress; there are actually only a few BPMS that do this very well, and most either don’t do it at all or require manual modification of each instance. Wherever possible, things that might change should be put into business rules, so that the correct rule is invoked at the point in time that it is required, not when the process instance was created.

At the end of all the demos, I was impressed with what SAP has released for a version 1.0, especially some of the nice handling of data and rules, yet aware of the many things that are still missing:

  • task UI generation
  • simulation
  • KPI measurement
  • asynchronous web services calls
  • links to/from ARIS
  • common process composition environment across BPM and ERP processes
  • BPEL translation
  • business analyst perspective in process and rules modelers
  • BPMN 2.0 support
  • strategy for merging or coexisting with NetWeaver process orchestration platform

In the briefing at SAPPHIRE, I did see a bit of the roadmap for what’s coming in the next year or two. In 2009, the focus will be on releasing the common process layer to allow for discovery, design and management of processes that include core (ERP) processes, human tasks in BPM, and service orchestration. This, in my opinion, is the make-or-break feature for NetWeaver BPM: if they can’t show much deeper integration with their ERP suite than any other BPMS vendor can offer, then they’re just another behind-the-curve BPMS struggling for market share. If they do this right, they will be positioned to win deals against other BPMS vendors that target SAP customers, as well as having a pre-existing relationship with SAP customers who may not yet have considered BPM.

Also in 2009, expect to see convergence of their BPM and BI, which is badly needed in order to provide dashboard/monitoring capabilities for BPM.

Further out, they’re planning to introduce a UI generator that will create a simple forms-based UI for tasks based on the process context (data model), as well as reports generated from the process definition and point-and-click integration of analytics at process steps. There will be more robust event provisioning tied to the existing event structure in the ERP layer, allowing events to be propagated to external applications such as BPM, and intermediate message events integrated with Business Suite. As mentioned previously, there will be new perspectives in the Process Composer, initially a business analyst perspective with a different focus than the existing technical perspective, not just a dumbed-down version as I’ve seen in other tools, and eventually they’ll use the Eclipse rich client platform (RCP) for an even lighter weight (and less geeky) Eclipse interface. There are plans for allowing ad hoc collaboration at a process step – necessary for case management functionality – as well as allowing operation managers to have control over interactive rule thresholds, providing greater business control over processes once they are in operation.

There’s a lot still missing in this first version; : simulation, KPIs, asynchronous web services calls just to name a few. That doesn’t mean, however, that it’s not usable – I know many customers using BPMS’ that do support those functions, but the customers never use them: great demo and sales tools, but not always used in reality.

NetWeaver BPM is not the best BPMS on the market. However, they don’t need to be the best BPMS on the market: they need to be the best BPMS for SAP customers. They’re not quite there yet, but it’s an achievable goal.

Leveraging process improvements depends on events

I was on a(nother) Gartner webinar today and this slide particularly resonated:

The key point is that although there’s a lot to be gained from automating and supporting business processes with BPMS, if you want to leverage productivity improvements, you need to be doing something with the events that are generated from the business processes. Without this, you’ll be blind to many of the delayed effects and unintended consequences of process decisions.

AlignSpace social BPM community

Process discovery participantsA couple of months ago, Software AG launched AlignSpace, a social BPM community, and gave a webinar to explain what it’s about (replay here). AlignSpace is intended to be a vendor-neutral place where people doing process discovery can share ideas and collaborate on process discovery. Gartner estimates that over 40% of BPM project time is spent on process discovery, which is inherently a collaborative activity including everyone from process participants through developers and a BPM center of excellence, but there aren’t a lot of great tools out there to do this.

Software AG looked at a lot of social media sites to understand the key features that people want when working together online, and created a cloud-based platform where people can capture process requirements and model processes. This is intended to be beyond what Lombardi is already doing with Blueprint, where people can collaborate on create a specific organization’s process models, and create the potential for a marketplace as well as a collaboration platform. AlignSpace process discovery viewThat being said, their initial process outline view has a lot in common with Blueprint, with stages/milestones comprising activities, and the way that can be also visualized as a process map. You can import a model from Visio or XPDL for sharing in AlignSpace, then export it back out again. They also have a home page that shows what’s happening in processes in which you’re involved, and links to your contacts on other social sites.

The AlignSpace Marketplace is intended to be able to find or document BPM resources, whether people or products/models, then allow participants to rank those resources for others to see.

They’re still in a closed beta, but you can go there and sign up to participate. AlignSpace will be free to use, and although vendor-independent, it will be launched with a library and community of resources (some of which will, necessarily, have particular vendor expertise). There’s some lightweight Software AG branding on it, but it’s not their intention to block anyone from it: it’s really intended to be an open BPM community. I give them a lot of credit for this, since most of the other BPM communities launched by vendors are very much specific to their own products, which is going to stifle a lot of good discussion. Software AG seems to recognize, even in these economic times, is that a rising tide floats all boats: if more people are interested in BPM, and AlignSpace helps to get them over the initial barriers of adoption, then all BPM vendors will benefit. Outside the BPM vendor-specific offerings, there are definitely other collaborative workspaces and social networks around, but few with a BPM focus.

AlignSpace home pageSecurity is obviously going to be a serious consideration: even though most companies don’t put customer data in their process models (as opposed to the executing processes), the processes may represent intellectual property that provide them with a competitive advantage. They are looking at corporate-restricted versions, such that only users from within your domain can access it; the same sorts of security measures have already been put in place in Blueprint, and you can be sure that other cloud solutions are going to have to solve the same problem.

They have ambitions to move this beyond BPM and provide a collaborative space for discovery/requirements for other sorts of IT projects: a bit like ConceptShare, but with more of a focus on technology implementations rather than media and design.

I had a chance to talk to Miko Matsumura of Software AG around the time of the initial AlignSpace announcement; he admitted (which is what I love about Miko) that initially AlignSpace is a lot of big ideas but not much delivered. Like Google with its betas, the idea is to get something out there for people to use, then use their early feedback in order to decide what gets added in next. Although they’re trying to focus on “data format promiscuity” in order to allow customers from many BPMS vendors to participate, the process models are publish and subscribe rather than an interactive whiteboard model in their BPM sketchpad. The big focus is on creating fertile ground for the concept of collaborative process improvement, pulling together innovators from across multiple organizations and infecting companies with process innovation. Data formats are only one issue, as he points out: there is as much tribalism and heterogeneity in the people issues as in the systems that they use, and we need to get the tribes to disband, or at least come to a neutral territory.

From a social media standpoint, the AlignSpace presence doesn’t get full marks: their blog hasn’t been updated since June, their Twitter stream is mostly links to other BPM resources rather than any original material or updates on AlignSpace, and on Facebook they have both a group and a page, without a clear distinction between how each is used.

This all sounds great, but as yet, I haven’t seen the beta. Yes, that’s a hint.

BPM and Twitter (and other social destinations)

Professor Michael Rosemann of the BPM Research Group of Queensland University of Technology has published a short paper on BPM and Twitter on the ARIS Community site, where he lists three possible uses of Twitter with BPM:

  • Use Twitter to update you whenever there are changes to a process that you’re following. In this case, he’s talking about following processes, not process instances, so that you receive notifications for things such as changes to the process maps/roles, or new aggregate monitoring statistics.
  • Have a process follow you on Twitter (or an automated stream that knows when you’re scheduled to be unavailable), so that it knows when you’re away and assigns substitutes for your role.
  • Have a process instance tweet, either for milestone notification or with a link to the process instance, acting as a BPM inbox.

I’m not so sure about the second one, but the first and last are really just a matter of capturing the events as they occur, and sending them off to Twitter. Most BPMS can generate events for some or all of these activities, potentially available through an RSS feed or by posting them onto an ESB; as Rosemann points out in his article, there are a number of different ways to then get them onto Twitter.

My other half did a series of experiments several months ago on process events, including output to Twitter; he used a GPS as input (I wanted him to use a BPMS, but he was keen on the location events) and simple Python scripts to send the messages to Twitter. He tested out a number of other interfaces, including Coral8 for event stream processing, two blogging platforms, Gtalk, email, Google’s App Engine and Amazon’s Simple Queue Service; the idea is that with some simple event processing in the middle, you can take the relevant events from your BPMS (or any system that generates events) and send them pretty much wherever you want without a lot of customization.

I think that using Twitter to monitor process instances is the most interesting concept of the three that Rosemann presents, since you can potentially send tweets to people inside or outside your organization about process milestones that interest them. If you’re nervous about using Twitter, either for security reasons or fear of the fail whale, you can run your own microblogging service using an open source platform such as laconi.ca or a commercial solution such as Socialtext’s Signals.

I’ll be attending the workshop on BPM and social software at the upcoming BPM research conference in Ulm, Germany; I haven’t seen the papers to be delivered at the workshop (or the rest of the conference), but I’d be very surprised if there isn’t a lot of discussion about how to incorporate Twitter and other social tools into our more enterprise-y BPM existence.

BPMS Usage Patterns

I’ve been catching up on the replays of some webinars, and today went through BPM Institute’s one on BPMS usage patterns (free, but registration required), featuring Dr. Ketabchi of Savvion.

Dr. K started with a short definition of BPM, including the business value, then a bit about Savvion and their products; you can skip through to the 24-minute point on the replay if you’re already up to speed on this.

He describes seven key BPMS usage patterns:

  • Human-centric (which may be long-running)
  • Document-centric
  • System-centric
  • Decision-centric
  • Case management
  • Project-centric
  • Event-centric

Although all of the vendors and analysts have their own spin on this, looking at usage patterns when selecting a BPMS is important to ensure that you end up with a system that can support most or all of your usage patterns.

The first three of these (human, document and system) are very well understood, but the others require a bit more explanation

Case management, on the other hand, requires extensive analytics about the cases to be handled as well as a fairly comprehensive interface for agents to use when handling the case, and potentially handling the customer simultaneously. This is not just about a transaction being processed through a BPMS, but potentially a set of interacting transactions and ad hoc collaboration, as well as documents and other data or content. There’s been a lot written on case management BPM lately, including a new OMG RFP for case management; this has become strangely high-profile lately.

Decision-centric BPM is heavily based on rules, either based on data or events, where complex decisions need to be evaluated either for automated processing or to present to a user for further decision-making or work. In the past couple of years, we’ve increasingly seen the integration of business rules with BPMS, with some BPMS vendors including full business rules capabilities directly in their product, while others integrate with one or more of the mainstream BRMS platforms.

Project-centric BPM is a view that’s a bit unique to Savvion, a crossover between project/portfolio management and BPMS that includes resource optimization across processes, milestones definition and other project management-like techniques within the context of a process. Think of these as long-running processes that the process owners think of as projects, not processes, but where these projects always follow a pre-defined template. Mapping the GANTT chart to a process map isn’t that big of a step once you think of the projects as processes, and can provide an alternative view for monitoring the progress of the project/process.

Event-centric BPM is usually focused on improvement of existing business processes: taking various sources of events, including processes, then analyzing them to pinpoint bottlenecks and present the results to a user in a monitoring dashboard. This is the monitoring and optimization part of the model-execute-monitor-optimize cycle of BPM.

I’m not sure that I agree that decision-centric and event-centric are unique BPMS usage patterns: I see decisioning as part of the normal operation within most processes, particularly system-centric processes; event-centricity seems to be the monitoring and feedback end of any other type of process as well. In other words, these two aren’t really usage patterns, they’re functionality that is likely required in the context of one of the other usage patterns. Although Forrester split out human-centric and document-centric as two unique patterns a couple of years ago, I would argue that document-centric is just a subset of human-centric (since realistically, you’re not going to be doing a lot of document processing without people involved) rather than its own unique pattern. Similarly, project-centric processes are a type of long-running human-centric processes, and may not represent a unique usage pattern, although I like the visualization of the process in a project-like GANTT chart view.

Not every company has every usage pattern, or doesn’t consider every usage pattern to be mission-critical, but it’s important to keep in mind that although you start with one or two usage patterns, it would be hugely beneficial to be able to expand to other usage patterns on the same BPMS platform. A lot of companies that I’ve seen focus on just a human-centric (or even worse, a more limited document-centric) solution for a specific workflow-type application, or a system-centric service orchestration solution for their straight-through processing; inevitably, they end up regretting this decision down the road when they want to do other types of BPM, and have to either buy another BPMS solution to address those needs, or try to bash their current solution (with a ton of customization) into a usage pattern for which it was never intended.

Some interesting thoughts in this webinar about usage patterns. As the BPM suites (mostly formerly the “pure plays”) battle against the stack vendors, the issue of which usage patterns are covered by which product is coming to the fore.

Disclosure: Savvion is a customer for whom I have created podcasts and performed strategic analysis, although I was not compensated in any way for writing this webinar review (or, in fact, anything else in this blog).