Keywords

1 End Users and Business Process Management

Business Process Management (BPM) tools and techniques address the life cycle of developing, executing, and managing business processes [1]. By capturing process execution traces inside a BPM runtime, it was possible to get better visibility into process state and address problems faster. Moreover, gathered data could be used to improve processes and create better outcomes for process participants. However, the greater visibility into process execution was not available for participants that do not have direct access to the BPM runtime. Instead, they get what is made visible through UI interactions but rarely have any access to process state or historical data. When there are multiple participants in a business process from different organizations, each participant may have their own BPM system and have limited or no visibility into other systems.

One well-tested way to get better visibility into business operations is to record them in a shared ledger. Blockchain is a modern version of a traditional business ledger. Although it has roots in Bitcoin [9], the value of blockchain is not limited to electronic currency. For example, the Ethereum project allows building apps that run on “a custom built blockchain, an enormously powerful shared global infrastructure that can move value around and represent the ownership of property” [11], and the Hyperledger Fabric project is used to develop blockchain applications that use cross-industry blockchain technologies [10]. The value of blockchain in these systems is its role as a decentralized, immutable, and trusted database that can be shared among non-trusted parties across enterprises, and that contains a single source of truth about the historical record of business process transactions (Figs. 1 and 2).

Fig. 1.
figure 1

Enterprise process events shared through a blockchain allow for end-to-end analytics that can be used by different parties such as business partners and government.

Fig. 2.
figure 2

Cognitive BPM lies in the intersection of artificial intelligence technologies, enterprise analytics tools, and user analytics capabilities.

A traditional challenge with constructing a business process is the specification of standard schemas that multiple parties can agree on, sometimes referred as the Process Reuse challenge [1]. We argue that the use of blockchain forces parties collaborating in a business process to develop, and more importantly, agree on the schema. This, in turn, offers end-to-end visibility into the process and the ability for new participants to devise ad-hoc auxiliary business processes without permission from a central coordinator. Our vision is that this could be as significant as the introduction of spreadsheets for PCs in creating a programming model that allows casual users to create processes and analyze data without becoming computer science or data science experts.

The emerging area of cognitive computing offers powerful technologies that may be useful in solving some BPM challenges. We define cognitive computing as algorithms and systems that augment human decision making. An important property is that “rather than being explicitly programmed, they learn and reason from their interactions with us and from their experiences with their environment.” [8] Furthermore, cognitive computing is gaining adoption in enterprises where it can be described as applications that “introduce cognitive computing into the software enabling an organization’s business processes. The goal … is to make business processes more efficient, accurate, relevant and reliable.” [8] In this paper we define Cognitive BPM as systems that use cognitive techniques to help participants run business processes more efficiently.

To allow casual users to take full advantage of process analytics it is necessary to augment it with cognitive computing technologies. One possibility is for process participants to access process related data and use it exactly as in BPM systems, but with the help of cognitive systems it becomes feasible for casual process participants to create and run long-tail processes without IT expertise.

2 Use Case: Health Care

Consider a health care scenario where there are multiple parties involved in the care of a patient, including the hospital, physicians, nurses, lab technicians, insurance agency, government auditors, the patient, and their family members. A business process that manages a patient’s hospital visit needs to coordinate activities among all these participants without violating privacy policies.

It is extremely unlikely that one business process will capture all the rules and requirements among these parties. What is more practical is for subsets of parties to devise processes that help them get their work done. For example, a hospital, insurance agency, and auditor may develop a process to manage insurance policy requests and payment invoices.

The power of using a shared blockchain to maintain process state using a public schema is that it allows new processes to be added without having to navigate a centralized governance process.

As data is added to the overall end-to-end process blockchain, multiple participants with access to the data can delegate it to pieces of code that run automatically. The code can be a smart contract that does something when conditions are met in the blockchain. For example, the trigger can be the event that a patient enters the hospital, as in Fig. 3. Alternatively, end users can directly consume updates to the blockchain by receiving events and having apps on their mobile device perform a custom action. Another option is for events to be passed to other services that a user has authorized to access some of their data in the blockchain.

Fig. 3.
figure 3

This screenshot is an illustration of how a process end user can specify event triggers and generate relevant notifications that may send alerts to their mobile device.

Storing even a small amount of relevant data in a blockchain allows any participant to build end-to-end dashboards and analytics capabilities. For example, in this health care use case, the dashboard in Fig. 4 compares key metrics in two departments using data that could be stored in a blockchain.

Fig. 4.
figure 4

This screenshot shows how blockchain data could be leveraged to build analytics solutions that cross traditional boundaries and silos. In this hypothetical example, data from two separate hospital divisions can be put into one analytics dashboard even though each division may run its own BPM system but they share state in blockchain.

We want to emphasize the importance of the data being in a shared blockchain that any authorized user can access. This supports innovative applications that make use of the data for discovering inefficiencies, enforcing smart contracts, auditing for compliance with regulations, or building reactive user experiences.

3 Privacy in Cognitive BPM

Privacy controls are a major challenge in many enterprise applications. Fortunately, it is possible to not only to store process state in a blockchain, but also related permissions and have the sensitive data encrypted and made accessible only to authorized parties. Encrypting data, however, makes it difficult to perform analytics, and hence decreases one of main advantages of sharing state. Consider a health case scenario that exemplifies some of the challenges: patients, health providers, insurance agencies, and government auditors all need different views of a patient’s sensitive information.

There are well-known security technologies, including differential privacy [2], homomorphic encryption, role-based access control, and pseudo-anonymity, that can be used to address some of the important privacy issues. The same issues exist in cloud computing in general [3]. The use of these and other techniques to blockchain applications is still an open problem.

4 Machine Learning to Guide Process Development

Developing and refining a business process can be difficult and time consuming. It requires domain expertise to understand how to optimize the process logic, as well as technical proficiency to formally encode the process logic. We cannot assume that end users will be skilled in either of these dimensions, but there are machine learning techniques that can lower the barrier.

One technique takes advantage of the fact that we can observe in the blockchain the end-to-end behavior of processes. We can, therefore, extract individual process traces, find recurring patterns, and generate business rules or process models that capture this behavior. Existing process mining techniques can be applied here [4, 5]. There is still, however, an open problem on how to present these process templates at a level of abstraction that is both easy to understand for the user, and gives them the ability to customize it.

The above technique assumes that the process models themselves are not shared, but only their effects. In cases where users are willing to share their custom processes and rules, we can apply different techniques to find the ones that are performing well (according to some business metric) and suggest these to other users. Clustering and recommendation algorithms, among others, in the process analytics domain can be used here [6].

Consider an example of a coach helping a patient reach a fitness goal, such as recovering from a heart surgery. The coach develops a customized plan that defines concrete tasks and reminders related to their diet, physical therapy, medication and lab visits. This plan is essentially a set of business rules and processes that requires collaboration among the coach, patient, and other health providers. The participants may further refine the process as needed. While each patient will need a customized process, there are probably patterns that emerge on the kinds of plans that work well with certain classes of patients. Machine learning algorithms can help find these best practices and suggest them to the right users.

We believe that the visibility into the behavior of blockchain-based applications offers a rich, and unprecedented, amount of data that can be mined to help simplify and guide end users who want to develop a business process.

5 Conclusions

Using blockchain to orchestrate cognitive BPM processes not only make them easier for cognitive analytics but make them more accessible to process participants. By developing an ecosystem of apps and services that can get access to cognitive BPM state in blockchain, users will have a marketplace of solutions and new types of apps that are much better at understanding users and what they are doing by understanding how they participate in cognitive processes.

As these cognitive technologies and solutions are built they will make business process participants more engaged, they will understand better what is going on in business, and will be able to react with the information they need. These BPM systems would not be static, but instead end users could modify them and use analytics and cognitive techniques to help identify best practices learned from other users’ processes.

We believe that these two technologies—blockchain for process visibility, and cognitive algorithms to guide the development and understanding of processes—together can make BPM more accessible to casual users.