The Jini architecture for network-centric computing
Communications of the ACM
System architecture directions for networked sensors
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
Service Location Protocol: Automatic Discovery of IP Network Services
IEEE Internet Computing
Autoconfiguration for IP Networking: Enabling Local Communication
IEEE Internet Computing
Introduction to the Open Distributed Processing Basic Reference Model
Proceedings of the IFIP TC6/WG6.4 International Workshop on Open Distributed Processing
SODA: Service Oriented Device Architecture
IEEE Pervasive Computing
Concierge: a service platform for resource-constrained devices
Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 2007
R-OSGi: distributed applications through software modularization
Proceedings of the ACM/IFIP/USENIX 2007 International Conference on Middleware
The ETH Zurich systems group and enterprise computing center
ACM SIGMOD Record
Engineering the cloud from software modules
CLOUD '09 Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing
ICOODB'09 Proceedings of the Second international conference on Object databases
Combining heterogeneous service technologies for building an Internet of Things middleware
Computer Communications
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
One of the most important challenges that need to be solved before the "Internet of Things" becomes a reality is the lack of a scalable model to develop and deploy applications atop such a heterogeneous collection of ubiquitous devices. In practice, families of hardware devices or of software platforms have intrinsic characteristics that make it very cumbersome to write applications where arbitrary devices and platforms interact. In this paper we explore constructing the software fabric for the "Internet of Things" as an extension of the ideas already in use for modular software development. In particular, we suggest to generalize the OSGi model to turn the "Internet of Things" into a collection of loosely coupled software modules interacting through service interfaces. Since OSGi is Java-based, in the paper we describe how to use OSGi concepts in other contexts and how to turn non-Java capable devices and platforms into OSGi-like services. In doing this, the resulting software fabric looks and feels like well known development environments and hides the problems related to distribution and heterogeneity behind the better understood concept of modular software design.