Presentation is loading. Please wait.

Presentation is loading. Please wait.

Generative Approaches for Application Tailoring of Mobile Devices Victoria M. Davis, Dr. Jeff Gray (UAB) and Dr. Joel Jones (UA) Portions of this research.

Similar presentations


Presentation on theme: "Generative Approaches for Application Tailoring of Mobile Devices Victoria M. Davis, Dr. Jeff Gray (UAB) and Dr. Joel Jones (UA) Portions of this research."— Presentation transcript:

1 Generative Approaches for Application Tailoring of Mobile Devices Victoria M. Davis, Dr. Jeff Gray (UAB) and Dr. Joel Jones (UA) Portions of this research were funded by a grant from the National Science Foundation, through the Research Experience for Undergraduates (REU) program. Department of Computer and Information Sciences University of Alabama at Birmingham ACM Southeast Conference 2005 Kennesaw, GA

2 Outline of Presentation Model-Driven Application Tailoring Conclusion Xform XML Model Meta-model Live Demo Questions? ? Motivation Ice Cream Menu

3 Ice Cream Parlor Example HTML Palm Program Ice Cream Parlor Menu Ice Cream Shakes By applying generative programming and model-driven software engineering, it is possible to generate multiple software artifacts from a single high-level description.

4 Problem PDA’s.prc Files Web Browsers.html Files Blackberry.cod/.jar Files Cellular Phones.jad/.jar Files Java 2 Micro Edition J2ME

5 Application Tailoring Model PDA J2ME.jad.mf.prc J2ME.jad.mf.html Cellular Phone Computer Translator

6 What is Model Driven Programming? Model ArtifactsTransform InputOutput XML/XSLT GME

7 XML Model Overview XML SpecificationPalm Applications Phone Applications HTML Apache Tomcat Server Xalan Translator Servlets InputOutput Voice XML Provides a consistent structure for the translation http://www.w3.org/Voice/

8 Translation Process - HTML Select a flavor of Ice cream. HTML Code <p> XSL Code for HTML Start with VoiceXML code … Select a flavor of Ice cream. … Choose a translation Translating engine is invoked XALAN

9 Translation Process - Palm XSL Code for J2ME menu.append(" menu.append (“Select a flavor of Ice cream. J2ME Code Start with VoiceXML code … Select a flavor of Ice cream. … Choose a translation Translating engine is invoked XALAN

10 GME Model Overview Palm Applications Phone Applications HTML Interpreter C++ InputOutput Meta-modelModel The Generic Modeling Environment (GME) is a meta-configurable modeling tool http://www.isis.vanderbilt.edu/Projects/gme/

11 Translation Process Start by creating a metamodel  Domain-specific representation that consists of entities and relations  Outputs a paradigm of that model Create an instance of the model  Build the online menu as objects in the model Run the interpreter  Access to the objects in the model provided by C++  C++ code written to translate the objects to the J2ME code Result  The application tailored to the device is created by the interpreter Domain-Specific Metamodel Model

12 XML and XSLT Approach High level of abstraction Code can be generated for many types of devices One XML file is input to MANY translations XSL translations are needed for each output  Have to be handled separately by servlets Not as easy for end users  Requires knowledge of XML Runtime Tailoring Model-Driven Approach Higher level of abstraction than XML model Code can be generated for many types of devices One metamodel can be interpreted into MANY translations Compiling and packaging are contained within the interpretation Easier for end users  Must be instructed how to build the model Compile time tailoring Results

13 Demonstration

14 Conclusion Application tailoring of mobile devices is possible using generative and model driven programming techniques. User with limited programming experience can create domain specific applications. Manually rewriting code for each device is eliminated. One model provides the input for many applications.


Download ppt "Generative Approaches for Application Tailoring of Mobile Devices Victoria M. Davis, Dr. Jeff Gray (UAB) and Dr. Joel Jones (UA) Portions of this research."

Similar presentations


Ads by Google