Semantic Monitoring of Service-Oriented Business Processes

Semantic Monitoring of Service-Oriented Business Processes

Roman Vaculín
DOI: 10.4018/978-1-4666-0146-8.ch022
(Individual Chapters)
No Current Special Offers


Monitoring of business processes and service-oriented systems is a critical enabling technology for improving visibility into business operations, allowing their optimization, adjustments, and restructuring. One of the major problems of current monitoring methods is the prevalent heterogeneity of various types existing among the applications and services used in complex distributed business process. In this chapter the author proposes semantic monitoring as a possible solution addressing some of the heterogeneity problems. The idea of semantic monitoring is to apply semantic annotations, using ontologies, to descriptions of event types and event instances emitted during interactions with integrated applications. The chapter introduces a generic semantic monitoring framework consisting of a modular monitoring ontology and appropriate event detection mechanisms. The monitoring ontology defines generic, language independent monitoring concepts, and the language specific modules defining taxonomy of event types specific to a particular process modeling language/methodology. The author presents two such modules, one developed for the OWL-S Semantic Web services process models, and the other that for a business artifact-centric approach to business process specification. Next, the chapter describes mechanisms for specification and detection of semantic composite events. The author presents a language based on an event algebra combined with semantic event-filtering expressions using description logics atoms enriched with OWL datatypes and SWRL built-ins. Semantic filtering allows detection of such events that would otherwise be impossible without the use of semantic descriptions. The chapter also discusses detection mechanisms suitable for runtime execution and after-execution analysis.
Chapter Preview


The growing complexity and high adoption of business processes lead to increased needs for methods improving their understanding and visibility, allowing optimization and adjustments of business operations. In the broad sense, monitoring is recognized as a natural part of Business Process Management (BPM) systems and the Service-Oriented Architectures (SOA). In the context of BPM and Business Process Analysis (BPA) (van der Aalst et al., 2003), monitoring enables insights and understanding of the BPM and SOA systems, supporting business intelligence, optimization or business re-engineering methods. Importantly, BPM is approaching the management and execution of IT-supported business operations from a business expert’s view rather than from a technical perspective (Smith and Fingar, 2003) and therefore the monitoring methods need to provide an appropriate abstraction over the technical notions of underlying IT systems, often realized as (Web) services.

Despite a significant body of work in the business processes monitoring (e.g., Costello and Molloy, 2009; Jeng et al., 2004; Thomas et al., 2005; Lakshmanan et al., 2010) developing effective and efficient monitoring models and methods remains a hard and laborious problem with many challenges (Corea and Watters, 2007). One of the major reasons why the existing methods are not perfectly suitable for monitoring of distributed, rapidly changing business processes are the prevalent heterogeneities of various types that exist among the applications and services used in business processes — such as process, data, documents, vocabulary, or schemas heterogeneity. Typically such applications and services are developed and maintained by several independent vendors, oftentimes the processes cross organizational boundaries, and similarly often the processes need to integrate applications that have been developed in isolation and which reside in multiple isolated application silos within an organization. Such heterogeneities present a substantial problem for the monitoring infrastructures which typically need to provide a unified view across the business domain, so as to appropriately support applications such as business intelligence, business analytics, or business optimization and transformation. Similarly, powerful unified monitoring infrastructure is needed for realizing the vision of reliable, adaptive business processes operating in dynamic environments.

In this chapter we will discuss various aspects of semantic monitoring, which we propose as a possible solution addressing some of the above mentioned heterogeneity problems, and which brings some substantial benefits for business processes monitoring, compared to traditional monitoring methods. The idea of semantic monitoring is to apply semantic annotations — using ontologies (Baader et al., 2003) — to descriptions of event types and event instances emitted during interactions with integrated applications (e.g., in the form of Semantic Web services). Similarly to traditional monitoring approaches, we propose to organize event types in a taxonomy. However, in the semantic monitoring approach we define event types taxonomy and event attributes as formal ontology concepts (we use the terms concept and class interchangeably in the chapter assuming the same meaning for both). Additionally, data associated with an event instance are annotated by ontology concepts.

Using ontologies for annotations of events and for their definition has several advantages. Most importantly, the shared ontologies can serve as an integrating semantic layer (or overlay) over heterogeneous applications. Further, due to a clearly defined semantics and standardized serializations of ontologies (e.g., the OWL standard defines a serialization into XML syntax), events and their content can be easily processed and shared by software agents and various applications. Next, instead of pure syntactic matching during event detection, semantic reasoning can be used to support more flexible event detection. Finally, after the service execution is finished, complex filtering and querying techniques exploiting the rich semantic interaction trace can be used for post-execution analysis.

Key Terms in this Chapter

Web Services: Web services are distributed information systems, which can be seen as an evolution of conventional distributed systems, such as middleware and workflow systems. According to W3C a Web service is a software system designed to support interoperable machine-to-machine interaction over a network. In the traditional sense a Web service is a software system identified by a URI, whose public interfaces and bindings are defined and described using XML. Its definition can be discovered by other software systems. These systems may then interact with the Web service in a manner prescribed by its definition, using XML based messages conveyed by Internet protocols.

Complex Event Processing (CEP): Complex event processing addresses the problem of defining, detecting, processing, correlating and interpreting many events happening in various systems and allowing to identify and respond to possibly complex event patterns. Various complex event processing formalisms have been developed, for example based on rules and event detection algebras, and many software systems are available on the market that employ complex event processing techniques. CEP techniques are important in many application areas because they allow to identify complex patterns of events and establish a notion of context, as opposed to monitoring and detecting only individual events which typically do not allow to identify situations of interest when considered in isolation.

Semantic Monitoring: The idea of semantic monitoring is to apply semantic annotations — using ontologies — to descriptions of event types and event instances emitted during interactions with business processes, Web services and other application components. Similarly to traditional monitoring approaches, in semantic monitoring event types are organized in a taxonomy. However, in the semantic monitoring approach event types taxonomy and event attributes are defined as formal ontology concepts. Additionally, data associated with an event instance are annotated by ontology concepts as well. Such a choice has several advantages, such as having a well defined semantics and standardized serializations of ontologies which allow easy sharing and processing of events and their content, and enabling advanced, flexible event detection based on semantic matching and reasoning.

Semantic Web Services: Research in the Semantic Web services area is addressing the problems of automated service discovery, composition, execution and similar problems by augmenting the existing Web services standards by additional semantic layer(s). The additional semantic focuses on enabling “... semantically transparent services which will make it possible for clients to successfully use services that are dynamically discovered without prior negotiations between client and service developers”. Most of the proposed mechanisms rely on extending the current WS descriptions with descriptions in some logical formalism more suitable for capturing the explicit meaning of provided Web services. Such formalisms typically rely on formal ontologies and research conducted in the Semantic Web area.

Business Artifacts: An approach to modeling business processes based on business artifacts considers data as an essential part of business processes, and it defines the business processes in terms of interacting key business artifacts. The business artifacts are usually identified by business users as the key elements of the process and can be seen as a kind of vocabulary of the process (similar to the notion of the domain ontology). Each business artifact (BA) is characterized by an information model and a lifecycle model. The information model records all business-relevant information about a BA instance as it moves through the business operations. The lifecycle specifies all possible evolutions of a BA instance over time (e.g., in terms of activities/tasks and their flows acting on the data). The BA methodology is often used as a technique for horizontal integration of heterogeneous applications and processes since it provides a unifying view over the heterogeneous, often siloed domains.

Complete Chapter List

Search this Book: