Programming Pervasive Spaces

In principle, the entire world can exploit ubiquitous and pervasive systems to great societal benefits. In practice, however, there is as yet no fundamental basis or widely accepted programming models for such systems. There is also no established curriculum for teaching pervasive and sensor-based computing. In this talk, I will present our ongoing research efforts in defining and supporting programmable pervasive spaces. I will start by presenting our experience and lessons learnt in building "assistive environments" for the elderly, to demonstrate the need for space programmability and to define critical new requirements particular to pervasive spaces. I will then present ATLAS, a middleware architecture and a sensor platform that supports self-integration and enables SODA - a service-oriented programming model. I will show how ATLAS was used as the foundation on which we built and programmed the Gator Tech Smart House, and how it enabled pervasive application development, and scalable data collection and analysis. I will then delineate the limitations of SODA and present programming model extensions that address space and user safety as well as reliability and scalability. Finally, I will present our views of a possible ecosystem within which our programming models and system support can be used to promote the proliferation of programmable and manageable pervasive systems.