Skip to content

{ Category Archives } BPM2009

Wrap up notes on #BPM2009

Another great BPM conference: as with last year, I was impressed with the quality of the papers and the amount of interesting research going on.

The logistics here have also been excellent: everything well organized and executed, including someone in a “BPM2009 team” shirt meeting a group of us at the bus stop the first day to take us to the registration. The student volunteers ran the logistics on campus, including everything from staffing the coffee breaks to excellent signage everywhere we went. I haven’t discussed my usual conference complaint, wifi, since I’m on a university campus and the wifi rocks. It would be nice to have a few more power points around, but with my netbook’s 6-hour battery life, that’s much less of an issue than it used to be; since today is a short day, I didn’t even bring along a power cable.

This is primarily an academic conference, taking place on a university campus, which is much different than the usual commercial conference. Most attendees are staying in or near the historic city center, and the campus is a bit outside the center, but they provide us with a bus pass so that we can take advantage of the excellent transit system: easy to navigate even if you don’t speak German.

We had a very corporate-style reception dinner Monday night at BellaVista, a fancy rooftop restaurant with a great view of the cathedral; upscale food, and alcohol still flowing at 1am when I left, and last night we had the conference dinner at Stadthaus; also great food and wine. These dinner events were funded by the contributions of the conference sponsors: BizAgi, IBM, Metastorm, IDS Scheer and inubit. During the day at the university, however, we had lunch in the student cafeteria, which is really quite terrible. Short of catering in something else, this is the only real alternative considering our distance from town; maybe what they saved on lunch went into the bar tab at the two dinners.

Next year the conference moves to North America for the first time, where it will be hosted by Stevens Institute in Hoboken, New Jersey on September 13-16. It’s already on my calendar.

Discovering Reference Models by Mining Process Variants Using a Heuristic Approach #BPM2009

Chen Li of University of Twente gave the last presentation of the conference on process variant mining. We heard yesterday in the tutorial on flexibility about process variants; one issue with process variants is that there needs to be some way to identify which of the variants are important enough to update the original process model. The paper describes a heuristic search algorithm for determining which of the variants are important, by considering both the similarity to the original process model and the most common changes amongst the variants, e.g., the same new step is added to almost all process variants.

Since the process can be varied at runtime, the new process model doesn’t have to be perfect, it just has to be better than the original one. In general, the more activities contained in a candidate model and the more that its structure matches that of the variants, the better it is: they have created a fitness function that combines these two parameters and calculates how good a specific candidate model is. The search tree used to find the optimal candidate process model generates all potential candidates by changing one activity at a time, calculating the best fit, then replacing the original with the candidate if it is better than the original. This continues until no better candidate model can be calculated, or until you reach your maximum search distance (which would be set in order to bound computations).

The algorithm was evaluated with simulations, indicating that the most important changes tend to be performed at the beginning of the search.

Divide-and-Conquer Strategies for Process Mining #BPM2009

In the first of two papers in the final session of the conference, Josep Carmona of Universitat Politecnica de Catalunya presented on process mining calculation strategies. The theory of regions shows how to derive a Petri net representation of a process model from the process log, which shows the transition between states, but it’s very computationally expensive. This paper deals with ways of making that computation less expensive in order to deal effectively with large logs.

First is a decompositional strategy, which partitions the regions in a way that allows the identification of a set of state machines that cover all the events, then uses parallel composition to assemble the state machines into a Petri net.

The second approach is a higher-level divide-and-conquer strategy, where the event log is recursively partitioned by event class until the log sections are small enough to use other techniques. The clustering of the events is the key thing here: first, compute the causal dependency graph, then use spectral graph theory to find clusters of highly related events that will be partitioned off into their own section of the event log.

What they’ve seen in experiments using this technique is that there is a significant computational improvement (from minutes to seconds) from the decompositional approach, and that the divide-and-conquer approach allows for the processing of event logs that are just too large for other techniques.

You can get Genet, the tool that they developed to do this, here.

Discovering process models from unlabelled event logs #BPM2009

Diogo Ferriera of Universidade Tecnica de Lisboa presented a paper on process discovery based on unlabelled event logs: where the events in the log are only identified by the specific task, not by the process instance. Consider that a process instance may be executed via multiple paths through the process model, resulting in a different sequence of events logged: although you might know all possible paths through the model, you don’t know which one that any given instance followed. Also consider that processes will be executing simultaneously, so their events are intermingled.

Taking a probabilistic approach, you can take the event sequence and the source sequence (i.e., you know both the events and the instances that created them) and generate a matrix of probabilities that any given event will follow another within the same source instance: that’s some fairly standard math. He then took the event sequence and the matrix (which now represents a priori knowledge about how events interrelated), and did a fairly magic-looking calculation that calculated the source sequence based on that information.

The problem, of course, is that you don’t have the magic matrix, you only have the event sequence: initialize the matrix to something, then use the event sequence and the matrix to estimate the source sequence, then use the event sequence and the estimated source sequence to estimate the matrix. Wash, rinse, repeat until the matrix converges. You could initialize the matrix randomly, but that would take a while to converge (or would converge to a local maximum); instead, Ferreira pulled a rabbit out of his hat by stating that the matrix can be initialized with the transition probabilities present in the event sequence, that is, as if the event sequence were generated from a single source. As the paper states:

Even if x [event sequence] is the result of interleaving a number of sources, their underlying behaviour will be present in M+ [probability matrix] since consistent behaviour will stand out with stronger transition probabilities than the spurious effects of random interleaving. Therefore, M+ is a good initial guess for the estimation of M.

Amazingly, this works. Or maybe not so amazing, because I suppose there would be no research paper if this didn’t work. As the number of sources (instances) increases, the accuracy approaches that of when both the event and source sequence are known; as the number of overlapping sources increases, the accuracy drops to about 60% (by the time that you reach 10 overlapping instances), then flattens out.

There are a number of use cases for this: preprocessing for other process mining algorithms, or as a labeling mechanism to find the source instance when it is unknown. Or just if you want to show off some cool math at parties.

Tutorial: enabling flexibility in process-aware information systems #BPM2009

Manfred Reichert of Ulm University and Barbara Weber of University of Innsbruck presented a tutorial on the challenges, paradigms and technologies involved in enabling flexibility in process-aware information systems (PAIS). Process flexibility is important, but you have to consider both build time flexibility (how to quickly implement and configure new processes) and run time flexibility (how to deal with uncertainty and exceptional cases during execution), as well as their impact on process optimization.

We started by looking at the flexibility issues inherent in the imperative approach to BPM, where pre-defined process models are deployed and executed, and the execution logs monitored (in other words, the way that almost all BPMS work today). As John Hoogland discussed this morning, there are a number of flexibility issues at build time due to regional process variations or the lack of a sufficient information about decisions to build them into the process model. There’s also flexibility issues in the run time, mostly around exception handling and the need for ad hoc changes to the process. As all this rolls back in to the process analyst through the execution monitoring, it can be used to optimize the process model, which requires flexibility in evolving the process model and impacting work in progress. The key problem is that there are way too many variants in most real-life processes to realistically model all of them: there needs to be a way to model a standard process, then allow user-driven configuration (either explicitly or based on the instance parameters) at run time. The Provop approach presented in the tutorial allows for selective enabling and disabling of process steps in a master model based on the instance conditions, with a lot of the research based on the interaction between the parameters and the soundness of the resultant models.

Late binding and late modeling approaches use a pre-specified business process with one or more placeholder activities, then the placeholder activities are replaced with a process fragment at run time either from a pre-determined set of process fragments or a process fragment assembled by the user from existing activity templates (the latter is called the “pockets of flexibility” approach, a name that I find particularly descriptive).

Up to this point, the focus has been on changes to the process model to handle variability that are part of normal business, but possibly not considered exceptions. Next, we looked at runtime exception handling, such as the failure or unavailability of a web service that causes the normal process to halt. Exceptions that are expected (anticipated) can be handled with compensation, with the compensation events and handler built into the process model; unexpected exceptions may be managed with ad hoc process changes to that executing instance. Ad hoc process changes can be a bit tricky: they need to be done at a high level of abstraction in order to make it understandable to the user making the change, yet the correctness of the changes must be validated before continuing. This ability needs to be constrained to a subset of the users, and the users who can make the changes may require some assistance to do this correctly.

This was a good tutorial, but I wanted to catch the process mining session so skipped out at the break and missed the last half.

BPMN 2.0 tutorial #BPM2009

Hagen Völzer from IBM Research in Zurich – and a member of the BPMN standards group – gave a tutorial on BPMN 2.0, with a specific focus on the new execution semantics.

BPMN 1.1 has taken us a long way towards a standardized process modeling notation, but has several shortcomings: no standardized execution semantics, no standardized serialization, and lack of choreography support. BPMN 2.0 addresses these and some other issues, but does not include organizational models, data models, strategy and business rules. BPMN 2.0 is still being finalized and will be adopted as a standard sometime in 2010, but many vendors are starting to include the new features in their products. The challenge, as he points out, is representing the interrelationship between the new diagram types.

He walked through BPMN, highlighting the changes to the visual notation in 2.0:

  • Lanes can be used to structure visualization of activities by any suitable attribute, not just roles
  • Call activity type that can call another process or a global task.
  • Business rule activity type (although this could be handled with a service task type).
  • Non-interrupting boundary events, including all event types except error events.
  • Escalation events.
  • Event subprocesses, which is an event handler within a subprocess (hence has access to the subprocess context); this can be triggered multiple times for the containing subprocess, and all event subprocesses must terminate before the containing subprocess terminates.
  • Inline error handler, which appears similar to the event subprocesses but for handling errors; it can handle the error locally rather than propagating it up the scope tree.
  • Compensation event subprocess, similar to the previous two handlers but for handling compensation events.
  • Data are now first class elements, and can be used as an input or output to an activity using the new data association that describes data flow between data objects and activities or events.
  • Choreography diagrams containing (not surprisingly) choreography activities that represent the activities between the participants; the pools and message flows are hidden, and only the choreography activities and the linkages between them are modeled. The two diagram types can be combined to show the choreography in the context of the pools and message flows.
  • Conversations, which collapse multiple related message flows to visually simplify a diagram; conversations can include more than two participants.

He also walked through the execution semantics, which are based on token flows, with token being produced and consumed by activities, events and gateways. BPMN 2.0 also specifies the representation of an activity lifecycle to map all of the actions that can occur around an activity. We looked in detail at the token-based execution semantics for an inclusive join (where the number of tokens generated by the split is not known locally) in a variety of nested contexts. The complexity of this explains a lot about why the 7PMG guidelines recommend not using inclusive ORs: if it’s this hard to figure out all the possible execution semantics, it’s going to be complex for a human to understand the model visually.

He ended up with research opportunities that have been created by the new specification, such as formalizing semantics of choreography diagrams (now we know his motivation for sitting on the committee :) ); it seems that there are many unresolved issues remaining.

It was useful to have a complete walkthrough of the specification as a refresher and to see the changes in context. I’m left with the impression that the event handlers and some of the other new features are exceptionally useful, but unlikely to be well-understood (and therefore used) by non-technical business analysts. As another one of the attendees pointed out, they’ve just invented a new visual programming language.

John Hoogland keynote: Change in Control #BPM2009

John Hoogland, CEO of Pallas Athena, gave the opening keynote this morning, discussing how BPM has changed since the early days of workflow and painfully customized EAI to today’s landscape of BPM and SOA. He also contrasted what he sees as the old style of assembly line-style control flow unique to US and UK companies, and the more “one and done” style prevalent in Europe.

He went through a montage of BPM vendor websites – pointing out that the smaller the company, the clearer the message – and noted that the key message on all of those sites in 2009 is agility. The promise of all of these vendors is that change is key, and that this change can be done by the business, without IT. BPM doesn’t bring flexibility: it brings control. It gives more flexibility than the processes within legacy applications, but is inherently less flexible than a process that is not under the control of a system. Agility is more than flexibility, it’s about change but in a controlled environment: change in control.

He did a closer look at many of the vendors’ messages, pointing out the nonsense of much of the marketing speak about how easy and beneficial that BPM is. Agility in that context means that the process can be re-modeled; in fact, that’s often the only point of agility that the BPM vendors allow (although I would argue that integration of rules management creates significantly more agility without process model changes).

From a modeling standpoint, having users involved in process modeling does bring agility through faster and better design decisions. Separating process flow from legacy applications also provides agility. However, these processes need to be released within an IT infrastructure, serve the needs of the entire enterprise, and tend to be fairly complex: all recipes for killing agility. Even looking at the vendors’ architecture diagrams of BPM, it is always shown as a very small component within a much larger IT ecosystem; this is typical of what I see in large implementations, where the BPM part of an enterprise project is just a tiny piece of the whole project, even though it is labeled as a BPM project. Other factors also impede agility: the issue of migrating work in progress when the process model changes, including changes to related services. The conclusion: although the vendors make process model changes look easy in the demo, it’s not that easy in reality.

Complexity of process models is also an issue. In practice, exception handling tends to cause process models to balloon far beyond the “happy path” that you model on day 1, as do regional differences, handling of unexpected external events, and interfaces between departments and with systems. For example, you really don’t want separate process models for each region, you want a single model that can handle the regional differences, but that creates both a more complex model plus a nightmare of change control. However, if business users have the ability to change their local processes through parameters without having to change the enterprise-wide process model, things become much simpler. What parameters should be available for change on a local level, then? Hoogland suggests rules/decisioning, prioritization, resource allocation including role assignment, deadlines/SLAs and other factors. This requires an explicit step during the process design to design what parameters have to be able to be changed by the business users on the fly without changing the process model (I am going through exactly this exercise now with a client, and completely agree with his assessment), and ensure that the BPMS is capable of providing those as parameters under direct control of the business.

He ended up with some final thoughts about how the market is confused by vendors and analysts leaping onto new concepts and techniques too quickly, and how we waste time and energy on non-issues such as BPM standards.

He mentioned my post yesterday about the process model comprehension tutorial, and agrees with my assessment that the vendors have a huge amount to learn from academic research. I’m beginning to think that my true calling is as an evangelist bringing the word of new and useful academic BPM research to the BPM vendor community, although I have no idea how to monetize that. :)

There was a good Q&A following, with discussions on the potential value of bringing academics and vendors closer together; he admitted that a year ago, if asked to attend this conference, he would have been concerned only with whether there would be customers here. Now – hopefully due to some of my prodding of the vendors encouraging them to attend – he understands that vendors have a lot to gain from seeing what the academic BPM community is doing. There’s definitely monetary issues: academics need funding in order to continue research, and much of the research is still sufficiently early that a significant amount of research and development would still be required by the vendors to bring it to market. Many small vendors just can’t afford their own pet researchers such as IBM and SAP have, and are very focused on getting a product out this year as opposed to investing in the long-term potential from BPM research.

There must be a way to have funding flow from BPM vendors to BPM researchers without having a vendor try to control the speed and direction of the research, and without even having a specific researcher tied to a specific vendor. Is there a place for a virtual institute of BPM research spanning the many great BPM research institutions, funded by a consortium of vendors, with all having access to the end results? I’m thinking that for less than the cost of having a booth at a Gartner conference, a BPM vendor could contribute significantly to BPM research and reap the rewards.

7PMG paper link update #BPM2009

I know that a few people had a problem with the link to the 7PMG paper that I referenced in a post earlier today; here’s an updated link to a pre-press version sent to me by Hajo Reijers, one of the authors, which also includes guidance on how to prioritize the guidelines. Enjoy!

Managing Processes #BPM2009

I attended the session on managing processes in the afternoon: this is a standard session made up of the presentation of three papers.

Extending BPM Environments of your choice with performance related Decision Support, by Mathias Fritzsche, Michael Picht, Wasif Gilani, Ivor Spence, John Brown and Peter Kilpatrick. The focus was on annotation of processes across multiple modeling environments to allow for combination of process monitoring data regardless of the execution environments; this is of specific use for end-to-end processes that span multiple environments such as a BPMS, an ERP system and outsourced processes.

Business Process-based Resource Importance Determination, by Stefan Fenz, Andreas Ekelhart and Thomas Neubauer. This is motivated by risk analysis, since risk calculations will be incorrect if there is insufficient information about the resources attached to specific business processes, and how those resources are used by other processes across the organization. This seems pretty straightforward: each resource and its importance to a business process and in the larger organizational context are required as input, as well as the process model in Petri Net form and the resource’s usage within the process; the research determined a calculation method for global importance for resources. The applicability, however, is key: the importance of the resources (these are automated resources, such as mail servers) ties into risk management and business continuity planning.

Case Study and Maturity Model for Business Process Management Implementation, by Michael Rohloff. I admit to losing a bit of focus during this presentation, so no notes, but I’ve given you the link to the paper so you can read it yourself. :)

The session was very sparsely attended, which means that most people are either at the tutorial on “A Business Process is more than a Workflow” or are skipping school to take advantage of the lovely weather.

Process model comprehension: a human view #BPM2009

For the second half of the morning, I elected to attend a tutorial on a human view of process model comprehension by Jan Mendling of Humboldt-Universität zu Berlin and Hajo Reijers of Eindhoven University of Technology. Obviously a lot of other people are interested too, since we had to move to a much larger room before beginning.

This started with a definition of process model quality based on the SeQual Framework: syntactic, semantic, pragmatic and other measures of quality. Then, some basics on how human memory works:

  • External stimuli pass through immediate sensory memory to short-term working memory to long-term memory that represents the knowledge that we maintain.
  • Dual coding theory states that we process visual information differently depending on whether it is textual or graphical: with text, we tend to hear the words in our head and process them through auditory channels rather than visual channels.
  • Cognitive load theory states that we can only hold a maximum of seven things in working memory at one time.
  • Cognitive fit theory, which looks at how different types of stakeholders interact with the same information differently.

Having covered some of the theory around how we process information, we looked at some of the practical examples of how novices and experts view process models; in this case, “expert” may refer to either a subject matter expert or a process modeling expert. The selection of the visual representation – the “language” – does not have much of a difference on comprehension, assuming that all of these languages are flow-oriented, such as EPC, Petri Nets or BPMN. There are, however, a number of factors that do impact comprehension:

  • Model complexity (this seems a pretty obvious conclusion to me, but I guess it needed to be proven :) ), including complex operators and some clever but obscure model optimization.
  • Layout/topology and coloring; these are considered secondary notation characteristics in that they don’t change the model, just its visual appearance.
  • Text labels, that is, the understandability of text labels within process step.
  • Purpose, that is, whether the process model is for execution, training or to meet specific certification requirements.

There are different methods of measuring process model comprehension while viewing a model: how accurately can people respond to questions about the model; how long does it take them to answer those questions; how much mental effort is expended to reach those answers, which is done by asking the subjects how hard it was for them. There are also different measures of how well that process model is remembered when it is removed from the subject: recall of process characteristics such as how many start events exist in the model; retention of the business meaning of tasks in the model; transfer of the entire model, measured by questions such as how the model could be simplified.

There are several implications of this process model comprehension research:

  • Modeling tools should enforce structured models, analyze correctness (which is well understood in the research community and available in open source tools, but poorly represented in commercial products), and provide different views on the model for different stakeholders.
  • With respect to training, abstract modeling knowledge is useful, but familiarity with a specific technique/language is less important
  • Adopt 7PMG modeling guidelines: use as few elements as possible in the model, minimize the routing paths for each element (which can be counter to the first recommendation, since it may result in a complex gateway being split into two simpler gateways), use one start and one end event, keep the model as structured as possible, avoid OR routing elements in favor of AND and XOR elements, use verb-object text labeling style, and decompose a model with more than 50 elements to subprocesses (my sense, as well as Reijers’, is that this should be a lower number, such as 20-30, although their research shows a definite advantage at 50).

The relative importance of these factors are unknown, and further research is required to determine where to best invest time and money, e.g., is it better to invest in training or model decomposition? It should be possible for modeling tools to suggest some of the 7MPG guidelines (or similar guidelines for model improvement) when a model violates the rules, although none of them do; commercial products focus on optimizing the model from a business process standpoint, not model comprehension.

There are a number of reference papers supporting their research; I found this to be a fascinating tutorial with a great deal of practical applicability. I would highly recommend that anyone doing process modeling (and maybe some of the modeling vendors) should review the 7PMG paper, which I link to above, since it contains a lot of great ideas for creating better process models.

Update: I have a new link to the 7PMG paper from the authors which is a pre-print version with guidance on prioritizing the guidelines. It’s in place, above.

Prof. Dr. August-Wilhelm Scheer keynote: BPM 3.0 #BPM2009

Yesterday was a great day of workshops here at BPM2009 in Ulm, Germany, and today is the start of the conference proper. After some introduction, we heard from Dr. August-Wilhelm Scheer of IDS Scheer (recently acquired by Software AG); I’ve heard Dr. Scheer speak at ARIS ProcessWorld in 2007 and 2008, and I was curious to see how his presentation to an academic audience would differ from the more commercial/enterprise audience of the user conferences. First big difference: no saxophone. :(

His topic was “BPM 3.0”, that is, a look at the future of BPM. He started with a historical view: how BPM has evolved over the past 25 years, and how the organizational scope of BPM has expanded from project-based implementations to blanketing the enterprise. BPM today has enormous strategic importance: you can’t do any sort of complex risk analysis without considering processes, and governance is based in a large part on appropriate process management.

Looking forward, we need to consider empowering the user by, for example, giving them ways to mash up their own view of processes by combining multiple data sources into a dashboard that is specific to their needs, or customizing how they search for information within processes. We also need to leverage the power of the community: he used the examples of IDS Scheer’s social media, including their community site and YouTube channel, although there are obviously more direct social applications within process design and execution.

There was a bit too much emphasis on the ARIS products: he illustrated each point with ARIS, which is fair, but went into a great deal of detail about how it works and the customers using it, which felt like a bit of a sales pitch.

Micro workflow gestural analysis #BPM2009 #BPMS2’09

Ben Jennings of University College London had the last presentation slot of the day, wherein he classified a duck using both hierarchical classification and protoype theory. He was successful using both methods, although identified the inherent flaws in hierarchical classification.

The point, however, is about the nature of classification systems: hierarchical classification systems can lead to issues due to errors when creating the taxonomy, whereas prototype methods have more dynamic boundaries.

His research is around gestural analysis of micro workflows: essentially a sort of process discovery, wherein the actions of people in unstructured expertise-driven processes (that is, processes that involve domain experts) are analyzed within a social context in order to establish a reputational representation of the agents that can be used to find the best person to assign to a task. In other words, rather than having a process designer manually pre-determine who does which task, knowledge about the task and the people who might best perform that task can be determined as required based on the human social behavior around past process instances.

Gestural analysis in this context considers both active gestures – such as the explicit creation of content – and passive gestures – such as who a person emails in order to help solve a problem, or blog commenting behavior. It considers both the things that people create, and the people who create them.

This has the greatest value in tasks that have high complexity and high uncertainty, wherein an adhocracy tends to apply, although these tasks may be embedded within a more traditional structured process.

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.

Value co-creation in IT service processes using Semantic MediaWiki #BPM2009 #BPMS2’09

Axel Kieninger of the Universitat Karlsruhe had the first presentation after lunch, discussing processes for service creators and consumers (or prosumers) to collaboratively co-create services in order to raise the value of the services to the consumer. There are a number of barriers to collaboration, primarily those of cultural differences and specialized or standards tools/notation. By using Semantic MediaWiki as a collaboration platform, both collaboration and formal annotation are supported, providing functionality that supports specialized notation while encouraging participation.

In many cases, design of IT services and the accompanying SLAs was done without proper participation of the business units, which in turn led to the business complaining of lack of alignment between business and IT. In the author’s Semantic MediaWiki scenario, they can catalog the services and their SLAs, report on service performance, and document service proposals. This allowed the business to more easily add their feedback and suggestions on the services provided by IT.

This is more about the collaboration on and documentation of manual processes that may have some automated tasks, as opposed to structured processes: the processes in this case are descriptive, with those descriptions being developed in a collaborative manner using Semantic MediaWiki. The use of Semantic MediaWiki rather than a standard wiki platform allows additional attributes to be associated with content, including class hierarchies and semantic properties; the inline query language allows interactive queries on the semantic properties and classes, such as locating related services, process owners and process participants, to be represented dynamically in another wiki page.

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.

AGILIPO: Embedding social software features into business process tools #BPM2009 #BPMS2’09

Three years ago, I gave a presentation entitled “Web 2.0 and BPM” at the BPMG conference in London, in which I said that the future of BPM and Web 2.0 (or what we would now call social software) will include tagging of process instances. Today, I saw some research that includes exactly that functionality, as part of a presentation on AGILIPO, an environment based on Agile principles to provide collaborative process modeling and execution. I missed the presenter’s name, and with six authors on the associated paper, I’m not going to take a guess. Update: the presenter was David Martinho of the Center for Organizational Design and Engineering in Lisbon.

This was a very fast-paced presentation with an Ignite-like pacing, so it was difficult to take notes, but there was some great material here. It really is looking at an Agile approach, with “short feedback cycles to steer instead of align” to avoid long modeling phases and allow unexpected behavior to occur.

One interesting bit is on allowing a user to create generic (non-specific) activities: what we’re starting to see in the commercial market as dynamic BPM, but simplified by allowing the inclusion of generic activities that can then be tagged with their specific details. The user adding the activity will assign tags specific to this process instance to associate semantics to the dynamically-added generic activity; the new process steps can be added back to the main process design through versioning.

Both comments and tags are allowed at the process instance level, as well as on the step in the process model.

Interesting ideas; I look forward to seeing how the concepts of process instance tagging are used in other applications.

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.