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":null,"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.0000,"publicationDate":"2016-12-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 1st International Workshop on Mashups of Things and APIs","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3007203.3007213","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
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.