Semantic Business Process Management – Part one

1. Introduction: 

The interest to write this series of articles was triggered last year when Google failed to introduce one of it’s social products: The Google Wave . When it was released in mid- 2009, was considered a threat to Facebook, because it had enhanced features like attach files, and other content.

I thought that more than a threat it could be a tool able to be used in the business world for collaboration in business process orchestration.

Curiously few months after Google announcement (in October 2009) SAP introduced a prototype where showed the integration of Google Wave in a product called Gravity  . Later, in February of 2010 that prototype evolved for a product called Streamwork. Other companies followed the same steps with other approach: IBM released IBM Blue Works  ; ARIS already had released the ARIS ALIGN  and others followed.

Gartner introduced the requirement that BPMS support collaboration among users – “User and group collaboration”. The “Social BPM” had just been born.

Keith Swenson summarized in his site an assembly of very interesting definitions about the social BPM:

  • Clay Richardson defined Social BPM as: ” Processes developed and improved through the use of social technologies and techniques”.
  • Gartner says: “Social BPM is a concept that describes collaboratively designed and iterated processes.”

Forrester introduced this definition:

  • Processes developed and improved through the use of social technologies and techniques”.

Despite is not very well perceived what social technologies are.

This is a lead for the subject of this discussion.

The other one I must introduce is

  • Unstructured work;
  • AD-HOC processes;
  • Case management.

In Portugal, the country where I live, the concept of AD-HOC Processes is structuring something for divert the approved one. It’s like a black op. It is like a non approved process variant that went to be executed as being official.

I am going to use the term AD-HOC processes because is more comprehensive, for me the meaning of case management applies for example to law cases, like a set of documents inside a folder manipulated by different persons, thus terminology looks very restrictive to myself. AD-HOC is more related with the creative need of designing not yet structured business processes. Thus I will stick with AD-HOC despite industry adopted case management.

The execution of AD-HOC processes can be applied:

  • Using process portals or wikis if you prefer. This is nothing new because the technology is available some years ago and it seems nowadays business people need to the need to develop a cognitive process discovery
  • Process Mashups: models for building processes in collaboration mode using things like Google Wave.

2. BPMS reached the limit.

I believe the title of this section be an infamy. But I believe that 80% of the persons that do not comply with the title are the responsible of marketing managers or product managers of BPM suites. That’s fine. They are in denial. The other 20% are users that do not need to use intensely the system.

Reality changes much faster these days. Today most of us are knowledge workers. Specially in service companies (in the industry this concept has existed for decades). It is curious that this cliché was introduced by Peter Drucker in the book Management: Tasks, Responsibilities, Practices and was reinforced latter by Toffler in the book Revolutionary Wealth: How It Will Be Created and How It Will Change Our Lives. The first time I heard knowledge worker / knowledge management concept has in early nineties, when I read an article by Peter Druker in Harvard Business Review called Management and the World’s Work made me read the book by the same author quoted above, which was first published in 1973. Who advocates today that we live in the knowledge era, are 40 years late.

Dear product Manager. Prepare yourself. Take a deep breath and answer the questions below if you can (if you have trouble seek for help from a SQL or Oracle database administrator).

  • How many transports we did for Low Emissions Zone  in that we were fined by entering it with trucks that do not fulfill the norm EURO 4?

This question is best answered by Ray who happens to be operations manager; he has the answer in his head. Leave for now the database Administrator in peace.

  • When we are it performing transactions with the partner X operating licences are valid?

Dear product manager. Are you angry? All this could be resolved with Reporting Services that are part of your BPMS, just build the example using SQL. SQL is a widely used non-procedural language, but is incapable of answer the doubts and dynamic questions that devastate our poor knowledge worker. Moreover because the infinite reports that can be built in his BPMS system answer, as you already concluded, always to the same questions, because predictive features are not available regarding the nature of the information that the user intend to obtain answer from.

SQL can really help us much to find simple things like:

Example: find the name of the customer with customer id 123-456-789

Select customer.customer_name from customer where customer.customer_id =’ 123-45-678′

And even more complex stuff, but you need to ask always the same questions (please do not ask anything different to SQL).

This ability is available to the lucky ones who can build reports on a BPMS system, or make direct queries using SQL on the database (if the database admin let you to do it). Conclusion: If a user intends something more, questions stay unanswered. How can our knowledge worker complete it’s task if it has to dig for information?

Other day at the bank the account manager was searching for a fund and the manager could not find it  because the search was being done with “-” when the fund was called “Energy_Europe”. I actually thought to myself: The fund disappeared! The bank got my money. Maybe the search engine is malfunctioning. The Bank should ask for help from Google.

Dear marketing and product manager are you both convinced now?

Let us focus in the fundamental question: Which is the kind of information that your company manipulate? Is there a model for this information may be used and exchanged by users? Your information is understood by your clients when they interact with your company? They talk your language when they are accessing your enterprise portal? OOPS!

Reflect deeply about this one too: Do you believe data stored in the data center allows you to manage your business processes adequately? Really? Don’t you agree that most of your data is useless for reports and dashboards with bells and whistle your BPMS provide?

The use of tools for the deployment of ad hoc process will also aggravate this issue. Remember when BPMS arose? Remember the promise BPMS would go to work in a layer above the existing systems in the company promoting it’s connection? What do you think AD-HOC process systems are? They are the first breach in BPM systems. We are coming back to the starting poingt. Several systems for business processes execution. Want structured? Infinitely repeatable? Buy BPMS. Want AD-HOC process capability? Buy other tool. We are back to the beginning because the agility promised by the BPMS in the reality never was achieved, because communication between machines was not developed sufficiently. Systems and machines do nothing more than show and register information, when should be capable of show and register information about the operations performed.

Already convinced that current BPMS can’t drive you further?

Some very good reference about this:

Green, Delvin, Cannata, and Gómez. No Ifs, ANDs or Ors: A study of database querying. International Journal of Man-Machine Studies.

3. Ontology Management

One of the articles that it influenced my ontology management study and to its application to the BPM:

Berners-Lee, Handler, Lassila, 2001. The Semantic Web, Scientific American. You can find a lot of resources in this address .

What are ontologies?

In my opinion the best definition is this one: “An ontology is a formal specification of a shared conceptualization”. This definition is attributed to Tone Gruber developed in his article: Toward Principles for the Design of Ontologies Used for Knowledge Sharing.

Ontologies can be used to interpret human natural language, to language that is interpreted by machines and vice versa, ie to interpret the data that is stored and processed by machines for us humans who need to make operations, analysis and take decisions. This is the most valuable thing you can get from ontology management.

Confused? Let’s continue.

An ontology is like a net of structured information that formally represents his meaning. This principle also applies to a necessary theorem for structure the social BPM.

Often people talk about social BPM as if it were the tools that enable various stakeholders to structure and communicate about a particular process, however the foundation of social bpm is the ability to structure a network of processes, such as a social network like facebook. For such it like to refer Conway’ s Law that states “Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations”. Conway, “How of the Committees Invent?Datamation .

A process net is organized as a social net. Each node represents a process. Between each process relationships are represented line segments that connect each node. The circle is your company. This type of representation has its roots in mathematical principles I will not explore here. I will come back to this concept later when exploring social BPM. However it looks clear that currently BPMS do not apply this concept complicating the comprehension of the relationships between business processes. I have the idea that most of the processes performed in BPM tools and the systems used for manage process information are nothing more than a repository, like a knowledge database. They merely keep in database information, as such, we are managing in a static way the relationships between existing processes.

Let’s go back to ontology management. Re-examine the previous figure, instead of processes think in a network of concepts structured and interlinked. Like a language.

There is another fundamental principle that must be internalized: Ontology management will never be like file archiving such as file management with index-linking as it happens in document management system. For example you can file a document about KPI management in a balanced scorecard directory and using a search engine can find it whenever you want (hope the search engine is not the same as the bank example). You can even connect manually to another document on performance management subject, but the main feature of ontology is that it is independent of the context in which a particular concept is instantiated. Ontologies are a way of relating concepts that are through a common topic, as entities relationships using UML’s class diagrams.

This implies to develop a vocabulary for common use in your process sphere, as well a process for vocabulary management.

Ontologies have the objective of represent the terminology of the processes and its dependences. These dependences are represented like relationships (see previous figure). Another important objective is to be a unifying element of the terms from different sources especially when there are companies whose processes are shared between suppliers customers or between partners, some executed in multiple platforms.

It’s time to take a peek to your first ontology. This one is easy to understand. It is about wine. Source: WebOnt OWL Guide.

Even though you don’t have knowledge about wine, easily you can understand Wine Descriptor class decomposition.

An example of an ontology applied to the financial system. Source: Eddy Vanderlinden .


If we decompose Organization and Operations we have:


These symbols tell you something? There seem to be the entities with which relates the financial world every day. You do not have the idea that information is stored and associated somewhere but there is something missing that can make the relationship right?

For now let’s stop here. The objective of this article was attracting attention for ontologies management and to its application to BPM. In the next series of articles I will explore the construction and management of ontologies and their relationship with the BPM. If you have lot’s of doubts about ontology application in real business context world read the following article before my nest post.

This document describes the financial ontology that has been created for Bankinter for eBanking Services. Bankinter is a Spanish Bank.


3 responses to “Semantic Business Process Management – Part one

  1. Very nice presentation of web semantics processes. I start to understand the picture, which was a bit clumsy. I can’t wait the sequel !

  2. Alberto, I agree with you that an architectural approach is necessary for managing business processes or any other business aspect.I see semantics as one form of building an ontology model of business terms. A business ontology has to provide a ability to describe business entities (which are most likely best described as objects and their properties), relationships, business rules, actors and actions that they can take on the entities in the network.The goal of such actions must be to change the current patterns of business entities into a desirable one, which translates to what is called ‘actionable knowledge’ in difference to ‘analytic knowledge’ that the usual statistics provide.You describe basically the ability to perform a query on a complex set of information entities and while that is also an interesting problem to solve it is not the key element of improving business processes. Processes are about action! Your semantic knowlegde is analytical knowledge that may improve the human ability to come to actionable knowledge but that is only a small step.The real problem is: WHERE and HOW do I formulate an ACTION in my process environment that will either adapt my current process in a desirable manner? or: How do I transform my process template for future execution? Analytic queries do nothing of the kind.Therefore my approach and development was focused on a platform (Papyrus) that works based on an ontology of terms, builds object models and allows the business to categorize them into taxonomies of items that they need to perform processes on. These are real-world items mapped into backend business data and organizational information. One of the key interesting parts is that we can now either take a rule infering approach (which does mostly fail) or take a pattern matching approach to identify which data patterns are linked to certain necessary actions by actors. A so called User-Trained Agent learns those actions from users. That is not possible without having real-time and run-time access to the repository with all the ontology, class, and taxonomy information.Ideally the users can perform actions (run-time) and write rules (adapt the template) in free-form while being guided by the ontology as to the possible syntax and business terms within the process context. We call that ability NLR or Natural Language Rules. Once the again, the best value you can get from a BPM system is when it provides you with a real-time business context and all actionable knowledge and not just a sematic query.I do no longer refer to this ability as BPM, while one aspect of it is referred to as ACM – Adaptive Case Management for knowlegde workers, but rather as Adaptive Process. Thanks for giving this important aspect some priority. We have been working on it for over ten years and the Papyrus Platform is available since 2001.Regards, Max Pucher

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s