Kaibin Bao, Ingo Mauser, Sebastian Kochanneck, Huiwen Xu, H. Schmeck
{"title":"A Microservice Architecture for the Intranet of Things and Energy in Smart Buildings: Research Paper","authors":"Kaibin Bao, Ingo Mauser, Sebastian Kochanneck, Huiwen Xu, H. Schmeck","doi":"10.1145/3007203.3007215","DOIUrl":"https://doi.org/10.1145/3007203.3007215","url":null,"abstract":"This paper presents challenges and issues in smart buildings and the Internet of Things (IoT), which we identified in years of research in real buildings. To tackle these challenges, a decentralized service-oriented architecture based on a message-oriented middleware has been implemented for the domain of smart buildings. It uses a network-transparent IoT message bus and provides the means for composing applications from auxiliary services, which facilitate device abstraction, protocol adaption, modularity, and maintainability. We demonstrate the flexibility of our architecture by describing how three distinct applications---privacy-enhancing energy data visualization, automated building energy management, and a generic user interface---can be integrated and operated simultaneously in our real smart building laboratory. We compare the advantages of our architecture to conventional ones and provide a best-practice solution for the Intranet of Things and Energy in smart buildings.","PeriodicalId":377193,"journal":{"name":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124386312","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Situational Data-Analytics for the Web-of-Things","authors":"Christian Zirpins","doi":"10.1145/3007203.3007218","DOIUrl":"https://doi.org/10.1145/3007203.3007218","url":null,"abstract":"The proliferation of web-accessible sensors and actuators provided by smart things and mobile devices has led to a distinct class of WoT-applications. These are data-driven and situational as they build on the analytical processing of data streams from specific devices in the user context. Promising approaches for supporting such applications have emerged that enable a) the compositional specification of device stream processing and b) the distributed execution of processing pipelines on edge devices. In this paper we report on experiences of applying one such approach in order to realize our vision for scenarios of situational WoT-applications. We discuss the requirements of these advanced scenarios and propose possible future directions for features and architectural approaches of a WoT-platform.","PeriodicalId":377193,"journal":{"name":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129858433","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"FRED: A Hosted Data Flow Platform for the IoT","authors":"Michael Blackstock, R. Lea","doi":"10.1145/3007203.3007214","DOIUrl":"https://doi.org/10.1145/3007203.3007214","url":null,"abstract":"IoT developers need to integrate a variety of protocols, backend components and services; they often need to pre and post-process data as well as react to changes in the real world. Data flow programming tools have been introduced in a number of related domains to provide a flexible, but easy to use visual programming environment for rapid development. The open source Node-RED system provides such a tool for IoT applications, but is limited to executing a single flow file in a single thread. In this paper we describe the design of our system called the Front-End for Node-RED (FRED) that manages multiple instances of Node-RED for logged in users, allowing Node-RED to be used as a cloud-hosted data flow mashup tool for the IoT. We present some examples of how some of our 1800+ users are using FRED for IoT mashups, and some of the challenged we faced in implementing the FRED system.","PeriodicalId":377193,"journal":{"name":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132482034","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Otto Hylli, A. Ruokonen, Niko Mäkitalo, Kari Systä
{"title":"Orchestrating the Internet of Things Dynamically: research paper","authors":"Otto Hylli, A. Ruokonen, Niko Mäkitalo, Kari Systä","doi":"10.1145/3007203.3007216","DOIUrl":"https://doi.org/10.1145/3007203.3007216","url":null,"abstract":"In traditional IoT system simple edge devices collect data to specialized server. However, hardware has already evolved enabling intelligence and programmability of IoT devices. Our focus is on programmability of heterogeneous IoT devices and dynamic orchestration of the IoT applications together with web applications. In this paper we present our orchestration solution. Participating IoT and web applications are described using the OpenAPI specification. The orchestration system dynamically finds suitable IoT applications and devices for the orchestration.","PeriodicalId":377193,"journal":{"name":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134540356","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Matthias Prellwitz, Helge Parzyjegla, Gero Mühl, D. Timmermann
{"title":"Dynamic Sets: A Programming Abstraction for Ubiquitous Computing and the Internet of Things","authors":"Matthias Prellwitz, Helge Parzyjegla, Gero Mühl, D. Timmermann","doi":"10.1145/3007203.3007213","DOIUrl":"https://doi.org/10.1145/3007203.3007213","url":null,"abstract":"Applications in the areas of Ubiquitous Computing and the Internet of Things are often facing the problem that at design time it is not known what devices will be available at runtime and what preferences the user will have. Due to this gap between design time and runtime, mechanisms are needed to postpone decisions until the application is deployed and to adapt these decisions while it is running. Unfortunately, such mechanisms are currently mostly missing. In this paper, we propose dynamic sets as a programming abstraction that allows an application originally written for using a single device to interact with a set of devices of the same type instead. Using a dynamic set, an application can transparently call a method on a set of devices using a local proxy of the set that implements the very same interface as a device the application was originally written to interact with. Applications that are aware of dynamic sets can change the criteria used to select the members of a set or derive a new set from existing sets. Besides invocation mechanisms, dynamic sets provide functionality for result aggregation, automatic member management, update notifications, and derived business methods. Finally, applications can be exported making it possible to combine existing applications to flexible and dynamic mashups.","PeriodicalId":377193,"journal":{"name":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128472056","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Mengting Yan, Paul C. Castro, P. Cheng, Vatche Isahagian
{"title":"Building a Chatbot with Serverless Computing","authors":"Mengting Yan, Paul C. Castro, P. Cheng, Vatche Isahagian","doi":"10.1145/3007203.3007217","DOIUrl":"https://doi.org/10.1145/3007203.3007217","url":null,"abstract":"Chatbots are emerging as the newest platform used by millions of consumers worldwide due in part to the commoditization of natural language services, which provide provide developers with many building blocks to create chatbots inexpensively. However, it is still difficult to build and deploy chatbots. Developers need to handle the coordination of the cognitive services to build the chatbot interface, integrate the chatbot with external services, and worry about extensibility, scalability, and maintenance. In this work, we present the architecture and prototype of a chatbot using a serverless platform, where developers compose stateless functions together to perform useful actions. We describe our serverless architecture based on function sequences, and how we used these functions to coordinate the cognitive microservices in the Watson Developer Cloud to allow the chatbot to interact with external services. The serverless model improves the extensibility of our chatbot, which currently supports 6 abilities: location based weather reports, jokes, date, reminders, and a simple music tutor.","PeriodicalId":377193,"journal":{"name":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129867132","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","authors":"","doi":"10.1145/3007203","DOIUrl":"https://doi.org/10.1145/3007203","url":null,"abstract":"","PeriodicalId":377193,"journal":{"name":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125647796","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}