EAGER: Collaborative Research: Toward An Adaptive Programming System for Cloud-Enabled Smartphone Applications
University Of Southern California, Los Angeles CA
Investigators
Abstract
Smartphones are fast becoming a full-fledged computing platform that our society depends upon. Smartphone applications that access data and computing resources in the "cloud" are inevitable given the processing and storage limitations on the phones. Today the burden of partitioning smartphone applications between the phone and the cloud lies squarely with the programmer. This manual approach to partitioning applications is fundamentally limited and will not scale up to allow smartphones to become a truly rich and robust computing platform. Manual partitioning is tedious and error prone. Moreover, manual partitioning requires the programmer to make important decisions that cannot be properly made until run time. This project explores the requirements, design, and implementation of a programming system for cloud-enabled smartphone applications that is inherently adaptive, partitioning applications transparently in order to cope with a diverse set of dynamic constraints. The project is studying cloud-enabled smartphone applications from a variety of domains in order to understand application requirements, constraints, and tradeoffs in practice. The project is also pursuing programming models that allow developers to flexibly and declaratively express an application's components along with their dependencies and constraints. Finally, the project is developing a prototype system architecture that collaboratively executes an application on the phone and the cloud subject to the application's requirements. Within a decade, smartphones will transform the way health and lifestyle choices are delivered to much of the population. This project is helping to enable this transformation by making a rich class of smartphone applications much easier to create, adapt, and understand.
View original record on NSF Award Search →