Keywords

1 Introduction

Ontology development is an essential part of the knowledge management domain in terms of creating domain knowledge. Business process models, on the other hand, are important for organizations to create formal knowledge about processes [1] from knowledge management perspective. So, both activities are utilized as a part of knowledge creation.

In practice, organizations performing both process modeling and ontology building activities, allocate duplicated efforts for each development activity conducted using same or similar knowledge sources. Moreover, neither activity benefits from the knowledge created in the other, thus the resulting products are prone to be inconsistent with each other. Furthermore, the use of ontologies in process modeling would ease preventing and detecting redundancies and inconsistencies between labels of process model elements [2]. Also the process models, when used in ontology development as a source of process knowledge, would enhance the completeness of domain ontologies.

Challenges of semantic process modeling, as identified in [3], include challenges that could potentially be resolved with the use of ontologies. Our study mostly focuses on the label challenges of semantic business process modeling that relate to interpretation, analysis, and improvement of the grammar and terms within the process model element labels and the process model labels. Some of the label challenges are related to the issues about identification of semantic components of labels (C1 in [3]), recognizing the meaning of terms from labels (C3), identifying homonymous or synonymous terms (C4), and assessing the similarity of labels (C6). PROMPTUM toolset described in this study presents opportunities for resolving these issues by providing means to define and manage labels and terms within labels of the process models and the process model elements as resources within a formal domain ontology. Another challenge our study relates is about “discovering a formal ontology from a collection of process models” (C24). This is a challenge PROMPTUM toolset addresses by not only enabling domain ontologies to be developed by using a set of business process models, but also by supporting business process models and domain ontologies be developed as integrated, and existing domain ontologies be used in business process modeling.

Research regarding the relations between business process modeling and ontology development has gained pace in recent years. Some [4, 5] investigate the process modeling notations based on foundational ontologies, whereas others [6, 7] focus on the importance and practical uses of process related ontologies. Mapping or transformation approaches between business process models and ontologies has also been widely studied [8,9,10,11,12,13,14,15]. However, software tools to support integrated ontology development and business process modeling is not reported in any of the surveyed academic and industrial sources. In this study, we present the PROMPTUM toolset to support integrated business process modeling and ontology building. The PROMPTUM toolset would support not only building business process models and domain ontologies together but also building business process models by using existing ontologies and vice versa. Following sections describe the PROMPTUM toolset, validation via case studies, related work and conclusions respectively.

2 PROMPTUM Toolset

Components and system interfaces of the PROMPTUM toolset are shown in Fig. 1.

Fig. 1.
figure 1

Components and system interfaces of PROMPTUM toolset

Analyst is the person who models the processes via UPROM tool and/or builds the ontologies via PROMPTUM Ontology Server. Analyst also uses PROMPTUM Process Modeling Plugin via Ontology View on UPROM for associating labels in process model collections with ontology resources. The three components of the PROMPTUM toolset are described with details in the following sections.

2.1 UPROM Tool

UPROM tool, user interface of which is shown in Fig. 2, is the medium where business process models are developed and stored within the PROMPTUM toolset.

Fig. 2.
figure 2

User interface of UPROM tool

UPROM tool [16] is a Desktop graphical business process modeling software that provides modeling editors for several diagram types such as extended Event Driven Process Chain (eEPC), Value Chain (VC), and Function Tree (FT). UPROM possesses the common characteristics of process modeling tools such as ease of model building, formal semantics and verification of correctness, workflow patterns, resource and data perspective, and level of detail, transparency and suitability for communication [17]. UPROM provides core process modeling tool features such as a process model repository for storing and structuring the modeling projects, sub-diagram decomposition, continuous syntactic verification based on diagram meta-models, unique object assignment, and defining attributes for process models and elements. UPROM was developed based on bflow* Toolbox [18] by following Eclipse Modeling Framework (EMF) and Eclipse Graphical Modeling Framework (GMF).

2.2 PROMPTUM Ontology Server

Most ontology editors enable [19]; (1) adding/removing/modifying ontology classes, class hierarchy, object and data properties and their hierarchy, property domain and range, individuals, property individuals and literal annotations, (2) propagating a change in one part of the ontology to other parts and associated individuals, and (3) undoing a change in ontology such that previously propagated changes are also undone.

The PROMPTUM Ontology Server, which features these functionalities, is developed as a component of the PROMPTUM toolset. It serves not only as a Web-based ontology editor but also as a triple store. It is based on AngularJS application framework, uses Jetty as web server and stores ontologies in Apache Jena TDB. Web front-end of the PROMPTUM Ontology Server, shown in Fig. 3, is a simple Web-based ontology editor that enables analysts to build ontologies.

Fig. 3.
figure 3

Web front-end of PROMPTUM Ontology Server

The PROMPTUM Ontology Server provides web services based on RESTful APIs for adding, listing, and removing resources, data type properties and object type properties, updating resource labels, listing changes in ontologies, and getting the whole model. These services are consumed by the PROMPTUM Process Modeling Plugin.

2.3 PROMPTUM Process Modeling Plugin

The PROMPTUM Process Modeling Plugin is a plugin to the UPROM and follows the same principles in terms of the development technology used. It provides the “ontology view” shown in Fig. 4 on the UPROM’s user interface and enables analysts to perform operational scenarios for integrated development of the process models and ontologies, except the regular process modeling and ontology editing operations described in Sects. 2.1 and 2.2. These operational scenarios are depicted with motivating examples from “public investment planning” and “short term assignment of academic staff members” processes and domains in following sub-sections.

Fig. 4.
figure 4

Ontology view user interface in UPROM tool

Ontology selection

In PROMPTUM toolset, a label or a term in the label of a process model or a process model element within a process model collection can be added as a resource to an ontology only if a restriction is already established between the process model collection and the ontology in question. Therefore, this restriction permits that the resources can be added from only selected process model collections to the selected ontologies. A many-to-many relation between the process model collections and ontologies is possible in defining these restrictions. In other words, once the required restrictions are established, an ontology can take input from several process model collections and a process model collection can have resources defined in several ontologies.

Analysts define these restrictions using the Ontology View by entering a valid ontology address, selecting a process model collection from the “Select Project” list and clicking the “Add Ontology” button shown in Fig. 4.

Managing process model labels as ontology resources

An ontology resource and a process model label would represent the same real-world object. Figure 5 exemplifies a process model with the label “Assignment without allowance and expense and with duration of between 7–15 days” within business process models for “short term assignment of academic staff members”. The object that represents this process model is also a resource that is a sub-class of the “short term assignment” class in “academic assignments” ontology.

Fig. 5.
figure 5

Motivating example of a process model label as an ontology resource

Such ontology resources that represent the same real-world object as a process model label can be added to an ontology via Ontology View (Fig. 4). In order to add the resource, analyst clicks “Add Resource (related to a…)” button while the ontology from the ontology list, “Process” radio button, and the process model on the package explorer remain selected. Then the resource is added to the PROMPTUM Ontology Server and the label of resource is listed in the linked resources list. If the resource already exists in the ontology, which might be the case in utilizing existing ontologies, the PROMPTUM Process Modeling Plugin still keeps record of the relation between the ontology resource and the process model label.

Once a resource listed in the linked resources list, several other functions are available. Ontology resource URI and label, and the label of process model is updated by using the “Update Resource” button. The “Delete Resource” button deletes the selected ontology resource from the ontology and the “Unlink Resource” button removes the link between the process model and the ontology resource without deleting the resource from the ontology. And if the analyst deletes a linked resource by using the web interface of the PROMPTUM Ontology Server, upon clicking on “Sync with Ontology Server” on the Ontology View, the resource is removed from linked resources list.

Managing process model element labels as ontology resources

In Fig. 6, “Faculty member” is a role in a process model and also a class in “academic assignments” ontology. Such process model element labels can be added to an ontology via Ontology View by using the “Add Resource (related to a…)” button while the ontology from the ontology list, “Element” radio button, and the process model element are selected.

Fig. 6.
figure 6

Motivating example of a process element label as an ontology resource

After the resource related to a process model element label is created in ontology and listed in the linked resources list, analyst can update the process model element label by (1) clicking the “Update Resource” button and changing the label, (2) changing the process model element label in modeling area, or (3) updating the label of resource in the PROPMTUM Ontology Server and clicking the “Sync with Ontology Server” button on Ontology view. All three alternatives ensure that all instances of the process model element in the same process model collection, the linked resources list, and the resource in ontology are updated respectively. The “Sync with Ontology Server” button also ensures a deleted resource in the PROMPTUM Ontology Server is removed from the linked resources list.

“Delete resource” and “Unlink Resource” buttons perform the same functions described in previous sub-section for the resources associated with process model element labels. Moreover, if the last existing instance of a process model element is deleted from the process model collection, the associated resource is also removed from the linked resources list but it remains in the ontology.

Managing terms within process model labels as ontology resources

Not only whole labels but also the terms and phrases within the labels would represent the same real-world object that a resource in an ontology represents. Figure 7 provides a motivating example for such cases. The phrase “investment proposal” within the process model label “Gather and evaluate investment proposals” is also a resource in “public investment planning” ontology.

Fig. 7.
figure 7

Motivating example of a term within a process model label as an ontology resource

In adding a term or phrase within a process model label, analyst clicks “Add Resource (related to a concept within…)” button while the process model is selected in the UPROM package explorer, and the ontology where the resource will be added and the “Process” radio button remain selected. Then the PROMPTUM Process Modeling Plugin displays a pop-up dialog box where the analyst needs to enter the term or phrase included in process model label. The PROMPTUM Process Modeling Plugin verifies whether the input phrase is included in the process model label or not. The rest of the functionality related to managing terms within process model labels as ontology resources (i.e. updating, deleting, unlinking, and synchronizing actions) are similar to the ones described above for managing process model labels as ontology resources.

Managing terms within process model element labels as ontology resources

Similar to the terms and phrases within the process model labels, the terms and phrases within the process model element labels would also be ontology resources in the relevant domains. The motivating example depicted in Fig. 8 shows the term “sector” as a part of a process model element label (i.e. “Identify investment needs on the basis of sectors”) and a resource in “public investment planning” ontology.

Fig. 8.
figure 8

Motivating example of a term within a process model element label as an ontology resource

For adding such resources to the ontology, analyst clicks “Add Resource (related to a concept within…)” button while the process model element, the ontology, and the “Process” radio button are selected and enters the valid phrase (i.e. that exists within the label of selected process model element) on the dialog box that pops up. Remaining actions related to an ontology resource that is linked to term within a process model element label are similar to those described for managing process model element labels as ontology resources.

Managing process model and process model element descriptions

Descriptions exist both for process models and process model elements in business process model collections and for resources in ontologies. For instance, the ontology resource and its related process model element, “faculty member”, in Fig. 6 is described as “the professors, lecturers, assistants, and PostDocs working in higher education institutions”. The PROMPTUM Process Modeling Plugin enables the descriptions of the process models and the process model elements to be added as data type properties to the related ontology resources in adding a new ontology resource via Ontology View on the UPROM tool.

As the description of a process model or process model element is revised, the value of the data type property representing the description is also changed on the PROMPTUM Ontology Server. Moreover, if the value of the data type property representing a description is revised on the PROMPTUM Ontology Server, upon clicking the “Sync with Ontology Server” button, the PROMPTUM Process Modeling Plugin updates the description of the related process model or the process model element on the UPROM tool.

3 Validation

In terms of its contribution to the state of the art, PROMPTUM toolset depends on the assumption that there are shared resources between ontologies and labels within process model collections whose relations need to be managed. In order to investigate this assumption, case studies are utilized for assessing the cohesion between process model collections and ontologies developed for the same domain. With this purpose, the PROMPTUM toolset is used retrospectively in two case studies that were performed for exploratory purposes in developing the toolset. Excerpts from these case studies are also provided as motivating examples in previous section for describing the features of PROMPTUM Process Modeling Plugin. As shown in Table 1, the cases were selected based on real-life context, resource availability, and problem complexity.

Table 1. Case selection

First case (i.e. Case 1) includes a “public investment planning” ontology developed by using an already existing process model collection for “public investment planning” processes. Information resource availability was deficient in this case, as domain experts, who participated in modeling the processes, did not contributed to ontology building. So, the ontology was mainly built based on the documented resources.

Second case (i.e. Case 2) consists of a process model collection for “short term assignment of academic staff members” and an “academic assignments” ontology developed simultaneously. The problem space to be addressed in this case was rather unsophisticated as it covered simple work-flows, few roles, and a single organization.

Table 3 provides the number of shared resources between ontologies and labels within process model collections in each case study. For some of these resources, there are more than one instance of the same label or term within a label in process model collections, so the numbers presented do not reflect unique shared resource instances. Data about the resource descriptions are not presented in this table to avoid redundancy, as each process model and process model element label that is associated to an ontology resource has a description represented as a literal annotation in respective ontologies.

A high level of cohesion between business process models and ontologies observed from the data presented in Tables 2 and 3 highlights the importance of managing shared resources in ontologies and process model collections with tool support. For instance, 79 process model element labels and 175 terms within process model element labels are represented as ontology resources in the first case study that contains 273 process model elements and 262 ontology resources. This high cohesion might exist due to the fact that the selected domains for ontology development are highly correlated to the selected processes. Still, it demonstrates that the necessity of the PROMPTUM toolset with its aforementioned features for managing the resources shared between ontologies and process model collections is valid in many, if not all, circumstances.

Table 2. Case study summary
Table 3. Relations between resources in ontology and labels in process model collections

4 Related Work

Research on tools for business process management and ontologies has received increased attention in recent years. Researchers have developed approaches aiming to resolve various problems in process management and ontologies with tool support. Automated transformations from process models to ontologies is a popular research topic bringing business process modeling and ontologies together. Such transformations are described for Petri Net [10], BPMN [12, 13] and lean EPC [11, 12] languages.

Among related tool support reported in literature, SUPER [8], which is a EU funded project, aims to integrate semantic web service frameworks, an ontology infrastructure and business process management tools and techniques together. It provides tool support for annotating process models with individuals of built-in ontology classes [20].

Thomas and Fellmann [11] describe how to map process models modeled with EPC or BPMN to an ontology. They utilize a modeling tool, an ontology editor, and an ontology server alongside a script that transforms process models to ontology definition and an application that queries and validates the ontology developed within the study.

Francescomarino et al. [13] provide a BPMN based ontology, BPMNO, that defines the structural parts of process models and is populated automatically from process models via tool support. Annotations to this process ontology can be established from a domain ontology through axioms, so that process knowledge is annotated with semantics and querying is possible on the process knowledge for correct labeling, verification of semantic labeling and query answering. Later in 2011, features enabling collaborative specification of semantically annotated process models are also introduced [21].

Leopold et al. [14] presents an approach for automatic annotation of process model elements with the concepts in a taxonomy. A prototype enables to generate automatic annotations to the models.

More relevant research in terms of their approach to the problem of managing the relations between the ontology resources and labels in process model collections has suggested some matching rules (i.e. equivalence, synonymy, more general, and more specific) between concepts in process models and ontologies [22] for aligning these two artifacts for improving semantic quality of process models. In another related research [15], which follows a similar goal (i.e. reducing semantic ambiguity in process models), POBA presents a three step approach for modeling process models by using the ontology resources for labeling process model elements. However, none of these two studies report a tool support and our study differentiates itself by enabling both integrated and sequential development of ontologies and process models. Moreover, PROMPTUM toolset enables not only process model and process model element labels but also the terms within these labels be related to and managed as ontology resources.

5 Conclusion

In this study, we present the PROMPTUM toolset that is composed of a process modeling tool, an ontology editor/server, and a plugin for managing the relations between process models and ontologies. The PROMPTUM toolset provides support for integrated and/or sequential development and maintenance of business process models and ontologies. It does this by enabling the relations between ontology resources, and labels and terms within the labels in process model collections be established and managed. It is the first tool reported in literature to semantically manage the ontology resources, and the labels and terms within labels in business process models as integrated.

The PROMPTUM toolset provides features to address the label challenges in business process modeling [3] such as identifying the semantic components of labels, meaning of terms within labels, homonymous and synonymous terms, and similarity of labels. Moreover, it not only enables process models and ontologies be developed together but also process models be developed by using existing domain ontologies and ontologies be built by using the business process models. Previous studies [15, 22] have suggested that establishing relationships between ontologies and labels in process model collections even without tool support would increase the semantic quality of the process models. We anticipate that using the business process knowledge that reside in process model collections would also improve the quality of ontologies. Yet, benefits to both ontologies and process models upon managing and developing these two artifacts together by tool support requires to be discovered via further research.