Challenges in Making Pervasive Systems Dependable

Due to “Moore’s Law” [19] we have been witnessing an exponential increase in processing power, disk capacity and network bandwidth for more than four decades. Fueled by the underlying exponential increase in circuit density, which is expected to continue for at least another decade, it becomes economically feasible to build pervasive systems. A pervasive system consists of a large set of networked devices, seemingly invisibly embedded in the environment. Pervasive systems research started in the late 1980s at Xerox PARC [25]. A variety of application domains have been proposed for pervasive systems, e.g., education [1, 5], public spaces [11], health care [23], and home control systems [15, 7, 20]. Most of the past and current work in pervasive systems have been focusing on the human/computer interface. Our work focuses instead on the dependability issues, i.e., reliability, availability, security, and manageability issues of pervasive systems. While it is recognized that the dependability of pervasive systems is an important issue (e.g., [6]), not much research has been done in this area. A notable exception is [24] that describes a dependable infrastructure for home automation. However, that work focuses mainly on a soft-state approach for home automation and many questions remain open. Pervasive systems have to become more dependable before they become deployable on a larger scale. In particular, pervasive systems will not be widely deployed if they require users to invest substantial amounts of time or money to keep them operating. Our goal is to find dependability mechanisms and policies that (1) maximize the dependability of pervasive systems, while (2) minimizing the cost of operation (including deployment and maintenance costs). Informally, we use the term pervasive dependability to refer to these two requirements. If we succeed to make pervasive system sufficiently dependable such that they become deployed widely, they will become an integral part of the infrastructure upon which our society depends. While only a few pervasive systems might be safety or mission critical (e.g., health care related systems), most of them will likely to become society critical: while the unavailability of a few such systems might be a mere inconvenience, the concurrent outage of a large number of systems might have broad economical consequences. For example, it might be acceptable if a few pervasive home networks go down, but if a large number fail concurrently, our society might be adversely impacted (added traffic by telecommuters, lost productivity, etc.). Hence, pervasive dependability needs to address the problems raised by society critical systems.

[1]  Hans-Werner Gellersen,et al.  Beyond Prototypes: Challenges in Deploying Ubiquitous Systems , 2002, IEEE Pervasive Comput..

[2]  Gregory D. Abowd,et al.  Classroom 2000: An Experiment with the Instrumentation of a Living Educational Environment , 1999, IBM Syst. J..

[3]  G.E. Moore,et al.  Cramming More Components Onto Integrated Circuits , 1998, Proceedings of the IEEE.

[4]  Stephen S. Intille,et al.  Designing a Home of the Future , 2002, IEEE Pervasive Comput..

[5]  Mani B. Srivastava,et al.  A Support Infrastructure for the Smart Kindergarten , 2002, IEEE Pervasive Comput..

[6]  Jeff Magee,et al.  The Evolving Philosophers Problem: Dynamic Change Management , 1990, IEEE Trans. Software Eng..

[7]  Michael C. Mozer,et al.  The Neural Network House: An Environment that Adapts to its Inhabitants , 1998 .

[8]  Weisong Shi,et al.  CANS: Composable, Adaptive Network Services Infrastructure , 2001, USITS.

[9]  Michael M. Gorlick,et al.  Using weaves for software construction and analysis , 1991, [1991 Proceedings] 13th International Conference on Software Engineering.

[10]  Peyman Oreizy,et al.  An architecture-based approach to self-adaptive software , 1999, IEEE Intell. Syst..

[11]  Mirjana Spasojevic,et al.  From Informing to Remembering: Ubiquitous Systems in Interactive Museums , 2002, IEEE Pervasive Comput..

[12]  David E. Culler,et al.  SEDA: an architecture for well-conditioned, scalable internet services , 2001, SOSP.

[13]  Yi-Min Wang,et al.  A toolkit for building dependable and extensible home networking applications , 2000 .

[14]  Mario Barbacci,et al.  Durra: a structure description language for developing distributed applications , 1993, Softw. Eng. J..

[15]  Karsten Schwan,et al.  ILI: an adaptive infrastructure for dynamic interactive distributed applications , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[16]  Gregory D. Abowd,et al.  The Aware Home: A Living Laboratory for Ubiquitous Computing Research , 1999, CoBuild.

[17]  Vincent M. Stanford,et al.  Using Pervasive Computing to Deliver Elder Care , 2002, IEEE Pervasive Comput..

[18]  Toby Bloom,et al.  Reconfiguration and module replacement in Argus: theory and practice , 1993, Softw. Eng. J..

[19]  John Seely Brown,et al.  The Origins of Ubiquitous Computing Research at PARC in the Late 1980s , 1999, IBM Syst. J..

[20]  James M. Purtilo,et al.  The POLYLITH software bus , 1994, TOPL.

[21]  Zhen Xiao,et al.  An automated approach to increasing the robustness of C libraries , 2002, Proceedings International Conference on Dependable Systems and Networks.

[22]  Calton Pu,et al.  Infopipes for composing distributed information flows , 2001, M3W.

[23]  James M. Purtilo,et al.  Surgeon: a packager for dynamically reconfigurable distributed applications , 1992, Softw. Eng. J..