Please use this identifier to cite or link to this item: https://hdl.handle.net/2440/117732
Type: Theses
Title: A Reference Architecture and a Software Platform for Engineering Internet of Things Search Engines
Author: Tran, Nguyen Khoi
Issue Date: 2018
School/Discipline: School of Computer Science
Abstract: The Internet of Things (IoT) is here. Enabled by advances in the wireless networking and the miniaturization of embedded computers, billions of physical things have been connecting to the Internet and offering their ability to sense and react to the real-world phenomena. These abilities form the content of IoT, which enable applications such as smart-city, smartbuilding, assisted living, and supply chain automation. The Internet of Things Search Engines (IoTSE) support human users and software systems to detect and retrieve IoT content for realizing the stated applications. Due to the diversity and sensitivity of IoT content, the literature has suggested that IoTSE will emerge as a large number of small instances, each of which monitors a specific IoT infrastructure and specializes in querying a particular type of IoT content. Various internal activities (i.e., components), as well as the logical and physical arrangement of those activities (i.e., architectural patterns), will overlap between IoTSE instances. The emergence of a large number of IoTSE instances, which possess overlapping operations and architecture, highlights the need for leveraging prior components and architectural patterns in engineering IoTSE instances. However, as an IoTSE reference architecture and a software infrastructure to guide and support such reuse-centric IoTSE engineering have not existed, a majority of IoTSE instances have been engineered from scratch. This thesis aims at proposing the reference architecture and the software infrastructure to support leveraging prior components and architectural patterns in engineering IoTSE instances. The key contributions of this thesis include a reference architecture that describes the constituting components and architectural patterns of an IoTSE instance, and software infrastructure that supports utilizing the reference architecture in developing reusable, composable IoTSE components and engineering IoTSE instances from those components. In order to propose the IoTSE reference architecture, we conducted a systematic and extensive survey of over one decade of IoTSE research and development effort from both an academic and an industrial perspective. We identified commonalities among diverse classes of IoTSE instances and compiled this knowledge into a reference architecture, which defines 18 components, 13 composition patterns, and 6 deployment patterns. We assessed the reference architecture by mapping it onto two IoTSE prototypes that represent the most common types of IoTSE in the literature and possess the more complicated architecture compared to other types. In order to develop the software infrastructure, we first proposed a kernel-based approach to IoTSE engineering, which was inspired by the design of modern operating systems. In this approach, IoTSE instances operate as a collection of independently developed IoTSE components that are plugged into a shared kernel. This kernel provides essential utilities to run IoTSE components and control their interactions to fulfill the functionality of an IoTSE instance. The kernel also provides templates that simplify the development of IoTSE components that are interoperable and compliant with the proposed reference architecture. In a case study, which involves engineering an IoTSE prototype, the kernel managed to reduce the amount of new source line of code to just 30%. The kernel-based approach supports engineering a majority of prominent IoTSE types detected in the literature. To enhance its support for emerging classes of IoTSE and prepare for future features in the reuse-centric IoTSE engineering, we proposed a platform-based approach to IoTSE engineering that extends the kernel-based approach. The platform-based approach revolves around an Internet of Things Search Engine Platform – ISEP – that supports developing interoperable IoTSE components, accumulating those components, and allowing search engine operators to engineer IoTSE instance from them using any valid architectural pattern defined in the reference architecture, without modifying the implementation of the components. In a case study, the platform-based approach enabled engineering complex IoTSE instances entirely from the components of simpler ones. Both the ability to engineer various IoTSE instances from a set of components and the engineering of new IoTSE instances entirely from accumulated components are unprecedented in the IoTSE literature. Future research can focus on devising mechanisms that leverage the architecture and the infrastructure proposed in this thesis to accumulate the knowledge generated in the process of engineering IoTSE instances and use it to introduce automation gradually to IoTSE engineering. Eventually, when the automation is proven to be trustworthy and reliable, machines might compose and deploy IoTSE instances in real-time to adapt to the incoming queries and the state of the computing infrastructure. By achieving this degree of automation, we will have realized a search engine for the Internet of Things.
Advisor: Babar, Muhammad Ali
Sheng, Michael
Yao, Lina
Dissertation Note: Thesis (Ph.D.) -- University of Adelaide, School of Computer Science, 2018
Keywords: Internet of Things
search engine
reference architecture
software platform
engineering
Provenance: This electronic version is made publicly available by the University of Adelaide in accordance with its open access policy for student theses. Copyright in this thesis remains with the author. This thesis may incorporate third party material which has been used by the author pursuant to Fair Dealing exceptions. If you are the owner of any included third party copyright material you wish to be removed from this electronic version, please complete the take down form located at: http://www.adelaide.edu.au/legals
Appears in Collections:Research Theses

Files in This Item:
File Description SizeFormat 
Tran2018_PhD.pdf7.64 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.