Generative approaches for application tailoring of mobile devices

  • Authors:
  • Victoria Davis;Jeff Gray;Joel Jones

  • Affiliations:
  • University of Alabama at Birmingham, Birmingham, AL;University of Alabama at Birmingham, Birmingham, AL;University of Alabama, Tuscaloosa, AL

  • Venue:
  • Proceedings of the 43rd annual Southeast regional conference - Volume 2
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

The popularity of mobile devices has propelled the development of many useful location-aware applications. However, the heterogeneity of mobile devices necessitates that the software be customized and tailored for each device. The research described in this paper demonstrates the possibilities of generative programming applied to application tailoring. This is done in order to assist in porting software to specific devices without manually rewriting code. The Java 2 Micro Edition (J2ME) is an integral part of the application tailoring solution. Many mobile devices are capable of using J2ME, but require the code to be packaged specifically to run in each different mobile environment. J2ME applications alone are not sufficient for porting the code to different mobile devices.The first solution that will be presented uses a specifically structured VoiceXML file as input to an XSL transformation. The transformation produces J2ME source code. Java servlets are used to compile the resulting code and package it with respect to a specific device. This first solution works well for users who have programming experience and are comfortable with editing XML files. However, a different solution is needed to enable users with limited programming experience to specify the essential properties of the mobile application.A second solution to application tailorability uses a metamodeling tool (we use the Generic Modeling Environment -- GME) to create a domain-specific modeling language. This environment allows an end-user to capture the essence of a design in a notation that is familiar to the users. From the specified models, an application can be generated directly from a model interpreter. The modeling approach provides a higher-level of abstraction, which removes the user from the accidental complexities regarding the details of the mobile application implementation. A case study is presented that enables a restaurateur to create an online menu for use on several different mobile devices.