Approaching the Internet of Things through Integrating SOA and Complex Event Processing

Approaching the Internet of Things through Integrating SOA and Complex Event Processing

DOI: 10.4018/978-1-4666-5884-4.ch014
(Individual Chapters)
No Current Special Offers


The Internet of Things (IoT) provides a large amount of data, which can be shared or consumed by thousands of individuals and organizations around the world. These organizations can be connected using Service-Oriented Architectures (SOAs), which have emerged as an efficient solution for modular system implementation allowing easy communications among third-party applications; however, SOAs do not provide an efficient solution to consume IoT data for those systems requiring on-demand detection of significant or exceptional situations. In this regard, Complex Event Processing (CEP) technology continuously processes and correlates huge amounts of events to detect and respond to changing business processes. In this chapter, the authors propose the use of CEP to facilitate the demand-driven detection of relevant situations. This is achieved by aggregating simple events generated by an IoT platform in an event-driven SOA, which makes use of an enterprise service bus for the integration of IoT, CEP, and SOA. The authors illustrate this approach through the implementation of a case study. Results confirm that CEP provides a suitable solution for the case study problem statement.
Chapter Preview


The Internet of Things (IoT) is defined by Haller et al. (2009) as a world where physical objects are integrated into the network, and where these objects can become active participants in business processes.

This huge amount of objects provided by IoT can be considered to produce simple events that need to be processed and correlated in real time. However, manually handling all of these events generated daily in heterogeneous systems is not feasible. On the other hand, Service-Oriented Architectures (SOAs) provide an efficient solution for the implementation of systems in which modularity and communication among third parties are key factors. This fact has led to the increasing development of distributed applications made up of reusable and sharable components (services). These components have well-defined platform-independent interfaces, which allow SOA-based systems to quickly and easily adapt to changing business conditions. However, these architectures are not suitable for environments where it is necessary to continuously analyze all the information flowing through the system, which might be a key factor for an automatic and early detection of critical situations for the business in question. Although some approaches allow this detection, they cannot be applied to different domains (Ye & Huang, 2011; Miori & Russo, 2012).

This limitation may be solved by the joint use of Complex Event Processing (CEP) (Etzion & Niblett, 2010) and SOA. CEP provides a set of techniques for helping to make an efficient use of an Event-Driven Architecture (EDA), enabling it to react to multiple events under multiple logical conditions (Taylor, Yochem, Les Phillips, & Martinez, 2009). In this regard, CEP can process and analyze large amounts of events and correlate them to detect and respond to critical business situations in real time; in this scope event patterns are used to infer new more complex and meaningful events. These events will help to make decisions when necessary. Currently, the integration of EDA and SOA is known as Event-Driven SOA (ED-SOA) or SOA 2.0 (Sosinsky, 2011), an extension of SOA to respond to events that occur as a result of business processes. SOA 2.0 will ensure that services do not only exchange messages between them, but also publish events and receive events notifications from others. For this purpose, an Enterprise Service Bus (ESB) will be necessary to process, enrich and route messages between services of different applications. Thus, combining the use of CEP and SOA, we may detect relevant events in complex and heterogeneous systems, i.e., CEP will let us to analyze and correlate events in real time 
SOA 2.0.

The main contribution of this chapter is the definition and implementation of an architecture for integrating IoT, CEP and SOA 2.0 to facilitate an efficient detection of relevant situations in SOA scenarios. In order to illustrate our proposal, our architecture is applied to a case study of home automation. This case study is defined and implemented according to such technologies and is also evaluated. Technically, it consists of having various sources that collect sensor data across the globe, and then filtering, aggregating, transforming and detecting events patterns of interest (relevant situations) in real time. In particular, we use Xively (LogMeIn, 2013), a site to store, share and discover real time sensor, energy and environment data from objects, devices and buildings around the world.

The rest of the chapter is organized as follows. We define IoT, SOA, EDA, ED-SOA and the main features of CEP comparing them with SOA’s features. Afterwards, we describe and implement our proposed architecture for the integration of IoT, CEP and SOA. Then, a home automation case study is explained, implemented and evaluated making use of our architecture. In addition, related approaches for the integration of CEP and SOA are summarized and compared to the one proposed in this chapter. Finally, future work and conclusions are highlighted.

Complete Chapter List

Search this Book: