Roam, a seamless application framework

  • Authors:
  • Hao-hua Chu;Henry Song;Candy Wong;Shoji Kurakake;Masaji Katagiri

  • Affiliations:
  • DoCoMo Communications Laboratories USA, Inc., 181 Metro Drive, Suite 300, San Jose, CA;DoCoMo Communications Laboratories USA, Inc., 181 Metro Drive, Suite 300, San Jose, CA;DoCoMo Communications Laboratories USA, Inc., 181 Metro Drive, Suite 300, San Jose, CA;DoCoMo Communications Laboratories USA, Inc., 181 Metro Drive, Suite 300, San Jose, CA;DoCoMo Communications Laboratories USA, Inc., 181 Metro Drive, Suite 300, San Jose, CA

  • Venue:
  • Journal of Systems and Software - Special issue: Ubiquitous computing
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

One of the biggest challenges in future application development is device heterogeneity. In the future, we expect to see a rich variety of computing devices that can run applications. These devices have different capabilities in processors, memory, networking, screen sizes, input methods, and software libraries. We also expect that future users are likely to own many types of devices. Depending on users' changing situations and environments, they may choose to switch from one type of device to another that brings the best combination of application functionality and device mobility (size, weight, etc.). Based on this scenario, we have designed and implemented a seamless application framework called the Roam system that can both assist developers to build multiplatform applications that can run on heterogeneous devices and allow a user to move/migrate a running application among heterogeneous devices in an effortless manner. The Roam system is based on partitioning of an application into components and it automatically selects the most appropriate adaptation strategy at the component level for a target platform. To evaluate our system, we have created several multi-platform Roam applications including a Chess game, a Connect4 game, and a shopping aid application. We also provide measurements on application performance and describe our experience with application development in the Roam system. Our experience shows that it is relatively easy to port existing applications to the Roam system and runtime application migration latency is within a few seconds and acceptable to most non-real-time applications.