Traditionally, extensibility and adaptability in middleware is achieved through thorough design of the problem domain. The key variability points are modeled at design time to allow plugin of new functionality at different points in the system. Unfortunately, it is historically shown that the actual adaptability needs at some point differs from the ones predicted. We argue that the seams, which are hidden in middleware with seamless design, should be accessible for pervasive computing application developers. It cannot be foreseen which aspects of a seam the domain or application need. We suggest that in addition to modeling the domain variability points the middleware should expose a model of the internal processing mechanisms of the middleware itself. The middleware should support modification of this model. Furthermore, at all places where the middleware achieves the normal seamless use of the domain, the model should be adaptable and adaptations should be absorbed into the middleware. We present model-based translucency as a middleware construction goal. The supporting arguments are given and examples of use of models in middleware are compared to the requirements for which we argue.
{"title":"Model-based translucency in middleware: supporting seamful development","authors":"Kari R. Schougaard, J. L. Jensen","doi":"10.1145/1890791.1890797","DOIUrl":"https://doi.org/10.1145/1890791.1890797","url":null,"abstract":"Traditionally, extensibility and adaptability in middleware is achieved through thorough design of the problem domain. The key variability points are modeled at design time to allow plugin of new functionality at different points in the system. Unfortunately, it is historically shown that the actual adaptability needs at some point differs from the ones predicted.\u0000 We argue that the seams, which are hidden in middleware with seamless design, should be accessible for pervasive computing application developers. It cannot be foreseen which aspects of a seam the domain or application need. We suggest that in addition to modeling the domain variability points the middleware should expose a model of the internal processing mechanisms of the middleware itself. The middleware should support modification of this model. Furthermore, at all places where the middleware achieves the normal seamless use of the domain, the model should be adaptable and adaptations should be absorbed into the middleware.\u0000 We present model-based translucency as a middleware construction goal. The supporting arguments are given and examples of use of models in middleware are compared to the requirements for which we argue.","PeriodicalId":324878,"journal":{"name":"M-MPAC '10","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-11-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117145662","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}
J. Määttä, R. Järvinen, Riku Luostarinen, J. Manner
A popular technology area quickly gains competing solutions to solve the same goal. Examples include file systems and storage, and communication technologies. All competing solutions typically introduce their own specific functionality, programming models and APIs; this generally forces application programmers to choose a specific solution and build the application for it. There exists exceptions to this unfortunate state of affairs, e.g., Linux includes the Virtual File System (VFS) to decouple applications from specific local storage devices. A similar functionality is provided by the Network File System (NFS), i.e., it decouples the client from the storage server. The communication technologies do not have a similar solution: each technology is different and has its own programming model and API. In this paper we introduce the Virtual Network System (VNS) that combines the concepts of VFS and NFS for communication technologies. Our solution is a middleware that enables a unified API for applications to use any communication technology, local or remote. We describe our architecture and discuss our current implementation that enables communication over IP and VHF radio.
{"title":"The virtual network system","authors":"J. Määttä, R. Järvinen, Riku Luostarinen, J. Manner","doi":"10.1145/1890791.1890794","DOIUrl":"https://doi.org/10.1145/1890791.1890794","url":null,"abstract":"A popular technology area quickly gains competing solutions to solve the same goal. Examples include file systems and storage, and communication technologies. All competing solutions typically introduce their own specific functionality, programming models and APIs; this generally forces application programmers to choose a specific solution and build the application for it. There exists exceptions to this unfortunate state of affairs, e.g., Linux includes the Virtual File System (VFS) to decouple applications from specific local storage devices. A similar functionality is provided by the Network File System (NFS), i.e., it decouples the client from the storage server. The communication technologies do not have a similar solution: each technology is different and has its own programming model and API. In this paper we introduce the Virtual Network System (VNS) that combines the concepts of VFS and NFS for communication technologies. Our solution is a middleware that enables a unified API for applications to use any communication technology, local or remote. We describe our architecture and discuss our current implementation that enables communication over IP and VHF radio.","PeriodicalId":324878,"journal":{"name":"M-MPAC '10","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-11-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129999794","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}
Although the utilisation of location information in mobile network access systems has given rise to a variety of applications and services, it is thought that the underlying service authentication model and the related security can be further enhanced. We propose a hierarchical location and proximity based access framework to services using mobile devices. We then show that it is practically feasible to implement this framework using 'intelligent' mobile agents. We discuss the necessary security mechanisms and security protocols for such a framework and show that our framework is resilient to relay attacks. The developed location aware mobile agent is equipped with accurate source-of-location sensing that operates online and offline.
{"title":"A location based security framework for authenticating mobile phones","authors":"L. Francis, K. Mayes, G. Hancke, K. Markantonakis","doi":"10.1145/1890791.1890796","DOIUrl":"https://doi.org/10.1145/1890791.1890796","url":null,"abstract":"Although the utilisation of location information in mobile network access systems has given rise to a variety of applications and services, it is thought that the underlying service authentication model and the related security can be further enhanced. We propose a hierarchical location and proximity based access framework to services using mobile devices. We then show that it is practically feasible to implement this framework using 'intelligent' mobile agents. We discuss the necessary security mechanisms and security protocols for such a framework and show that our framework is resilient to relay attacks. The developed location aware mobile agent is equipped with accurate source-of-location sensing that operates online and offline.","PeriodicalId":324878,"journal":{"name":"M-MPAC '10","volume":"283 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-11-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122473209","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}
J. L. Jensen, M. Kjærgaard, Thomas Toftkjær, Kari R. Schougaard
Traditionally, the goal for positioning middleware is to provide developers with seamless position transparency, i.e., providing a connection between the application domain and the positioning sensors while hiding the complexity of the positioning technologies in use. A key part of the hidden complexity is the uncertainty associated to positions caused by inherent limitations when using sensors to convert physical phenomena to digital representations. We propose to use the notion of seamful design for developers to design a positioning middleware that provides transparent positioning and still allows developers some control of the uncertainty aspects of the positioning process. The design presented in this paper shows how uncertainty of positioning can be conceptualized and internalized into a positioning middleware. Furthermore, we argue that a developer who is interacting with uncertainty concepts is best supported when provided with a programming method with declarative constructs.
{"title":"Exposing position uncertainty in middleware","authors":"J. L. Jensen, M. Kjærgaard, Thomas Toftkjær, Kari R. Schougaard","doi":"10.1145/1890791.1890792","DOIUrl":"https://doi.org/10.1145/1890791.1890792","url":null,"abstract":"Traditionally, the goal for positioning middleware is to provide developers with seamless position transparency, i.e., providing a connection between the application domain and the positioning sensors while hiding the complexity of the positioning technologies in use. A key part of the hidden complexity is the uncertainty associated to positions caused by inherent limitations when using sensors to convert physical phenomena to digital representations. We propose to use the notion of seamful design for developers to design a positioning middleware that provides transparent positioning and still allows developers some control of the uncertainty aspects of the positioning process. The design presented in this paper shows how uncertainty of positioning can be conceptualized and internalized into a positioning middleware. Furthermore, we argue that a developer who is interacting with uncertainty concepts is best supported when provided with a programming method with declarative constructs.","PeriodicalId":324878,"journal":{"name":"M-MPAC '10","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-11-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130626398","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}
A personal computing environment is comprised of a set of components that include processors, storage devices, networking support, and peripheral devices. This paper identifies the key functionalities needed to build a loosely-coupled, anywhere, anytime personal computing environment and then describes the design of a middleware service called CID3 (Coordinated Integration of Dynamically Discovered Devices) that provides system-level support for implementing those functionalities. CID3 has been designed to run on a variety of computing devices ranging from small mobile devices such as cell phones and PDAs to larger, resource-rich devices such as laptops and desktops.
{"title":"System support for anywhere anytime personal computing environment","authors":"M. Al-Mutawa, Shivakant Mishra","doi":"10.1145/1890791.1890798","DOIUrl":"https://doi.org/10.1145/1890791.1890798","url":null,"abstract":"A personal computing environment is comprised of a set of components that include processors, storage devices, networking support, and peripheral devices. This paper identifies the key functionalities needed to build a loosely-coupled, anywhere, anytime personal computing environment and then describes the design of a middleware service called CID3 (Coordinated Integration of Dynamically Discovered Devices) that provides system-level support for implementing those functionalities. CID3 has been designed to run on a variety of computing devices ranging from small mobile devices such as cell phones and PDAs to larger, resource-rich devices such as laptops and desktops.","PeriodicalId":324878,"journal":{"name":"M-MPAC '10","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-11-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129949178","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}
Vehicular Ad hoc Network (VANET) is a wireless network formed on the fly among vehicles connected by wireless links. A VANET application can learn about the context by acquiring and parsing beacons periodically broadcasted by other vehicles. In this paper we investigate the requirements of the applications that use vehicle beaconing to increase safety of road transportations and to provide drivers with sensitive information about traffic condition. On this topic, an open issue is related to the analysis and management of the beacon stream by means of a suitable middleware. To this aim, we discuss the design of a Publish-Subscribe based middleware for VANET applications, namely ACME, tailored to accomplish suitable queries over the beacons in a flexible and adaptive way, satisfying the applications requirements. Finally, a prototype implementation of ACME is presented.
{"title":"Beaconing support in publish-subscribe middleware for vehicular applications","authors":"V. Gianuzzi, A. Merlo","doi":"10.1145/1890791.1890795","DOIUrl":"https://doi.org/10.1145/1890791.1890795","url":null,"abstract":"Vehicular Ad hoc Network (VANET) is a wireless network formed on the fly among vehicles connected by wireless links. A VANET application can learn about the context by acquiring and parsing beacons periodically broadcasted by other vehicles.\u0000 In this paper we investigate the requirements of the applications that use vehicle beaconing to increase safety of road transportations and to provide drivers with sensitive information about traffic condition. On this topic, an open issue is related to the analysis and management of the beacon stream by means of a suitable middleware. To this aim, we discuss the design of a Publish-Subscribe based middleware for VANET applications, namely ACME, tailored to accomplish suitable queries over the beacons in a flexible and adaptive way, satisfying the applications requirements. Finally, a prototype implementation of ACME is presented.","PeriodicalId":324878,"journal":{"name":"M-MPAC '10","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-11-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130013707","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}
Today there are many location technologies providing people or object location. However, location privacy must be ensured before providing widely disseminated location services. Privacy rules may depend not only on the identity of the requester, but also on past events such as the places visited by the person being located, or previous location queries. So, location systems must support the specification and enforcement of security policies allowing users to specify when, how and who can know their location. We propose a middleware platform named Jano1 supporting both pull and push location requests while enforcing configurable security policies. Policies are specified using the Security Policy Language - SPL, facilitating the use of well known security models. In particular, Jano supports history-based policies applied to persons or objects location. The system was implemented with the integration of several location technologies (e.g. GPS, Bluetooth, etc.), and dealing with the heterogeneity aspects. It provides an interface that facilitates policy specification and has good performance.
{"title":"Jano: specification and enforcement of location privacy in mobile and pervasive environments","authors":"José Simão, Carlos Ribeiro, P. Ferreira, L. Veiga","doi":"10.1145/1890791.1890793","DOIUrl":"https://doi.org/10.1145/1890791.1890793","url":null,"abstract":"Today there are many location technologies providing people or object location. However, location privacy must be ensured before providing widely disseminated location services. Privacy rules may depend not only on the identity of the requester, but also on past events such as the places visited by the person being located, or previous location queries.\u0000 So, location systems must support the specification and enforcement of security policies allowing users to specify when, how and who can know their location. We propose a middleware platform named Jano1 supporting both pull and push location requests while enforcing configurable security policies. Policies are specified using the Security Policy Language - SPL, facilitating the use of well known security models. In particular, Jano supports history-based policies applied to persons or objects location.\u0000 The system was implemented with the integration of several location technologies (e.g. GPS, Bluetooth, etc.), and dealing with the heterogeneity aspects. It provides an interface that facilitates policy specification and has good performance.","PeriodicalId":324878,"journal":{"name":"M-MPAC '10","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-11-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127975377","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}