"A Component Software Architecture for Pervasive Computing"

Abstract


In recent years, we have observed an increasing prevalence of small devices equipped with wireless network connection. Computing is no longer a discrete activity bound to a desktop. However, current software targeted to these devices is always limited by the devices' computing power and small memory, which in turn restricts the functionality and complexity of the applications that the device can provide. As a result, the current software system is not flexible and adaptive enough to satisfy the high demand of user mobility in pervasive environments. To attack the problems, we propose a component-based software architecture that supports dynamic mobile code binding and loading. An application is made up of several small and mobile code components - facets. Whenever a specific function is needed during the execution of an application, a facet that carries out that function is selected and brought in from the network, executed and discarded after use. As a result, small devices are able to run applications of any sophistication. Moreover, the selection of facets depends on the computing resources in the device, network conditions, and various environmental contexts. This makes our system more flexible and adaptive, and capable to enhance user mobility in a pervasive computing environment.