Automatic reverse engineering of interactive dynamic web applications to support adaptation across platforms

The effort and time required to develop user interface models has been one of the main limitations to the adoption of model-based approaches, which enable intelligent processing of user interface descriptions. In this paper, we present a tool to perform reverse engineering of interactive dynamic Web applications into a model-based framework able to describe them at various abstraction levels. We indicate how information in HTML, HTML 5, CSS, Ajax and JavaScript is transformed into such logical framework, which facilitates adaptation to other types of interactive devices. We also discuss how this reverse engineering tool has been exploited in an environment for run-time adaptation or migration of interactive Web applications to various devices in ubiquitous use cases.

[1]  Fabio Paternò,et al.  MARIA: A universal, declarative, multiple abstraction-level language for service-oriented applications in ubiquitous environments , 2009, TCHI.

[2]  Jean Vanderdonckt,et al.  Model-Based UI XG Final Report , 2010 .

[3]  Atif M. Memon,et al.  GUI ripping: reverse engineering of graphical user interfaces for testing , 2003, 10th Working Conference on Reverse Engineering, 2003. WCRE 2003. Proceedings..

[4]  Fabio Paternò,et al.  Model-based customizable adaptation of web applications for vocal browsing , 2011, SIGDOC '11.

[5]  Moira C. Norrie,et al.  Tools and Architectural Support for Crowdsourced Adaptation of Web Interfaces , 2011, ICWE.

[6]  Gerardo Canfora,et al.  Toward seamless migration of Java AWT-based applications to personal wireless devices , 2004, 11th Working Conference on Reverse Engineering.

[7]  Eleni Stroulia,et al.  Swing2Script: Migration of Java-Swing Applications to Ajax Web Applications , 2007, 14th Working Conference on Reverse Engineering (WCRE 2007).

[8]  Angel Puerta,et al.  The UI pilot: a model-based tool to guide early interface design , 2005, IUI '05.

[9]  Yuanchun Shi,et al.  Recovering semantic relations from web pages based on visual cues , 2006, IUI '06.

[10]  João Saraiva,et al.  The GUISurfer tool: towards a language independent approach to reverse engineering GUI code , 2010, EICS '10.

[11]  Michael D. Byrne,et al.  A tool for creating predictive performance models from user interface demonstrations , 1999, UIST '99.

[12]  Jesús Sánchez Cuadrado,et al.  Reverse Engineering of Event Handlers of RAD-Based Applications , 2011, 2011 18th Working Conference on Reverse Engineering.

[13]  J. Vanderdonckt,et al.  Reverse engineering of Web pages based on derivations and transformations , 2005, Third Latin American Web Congress (LA-WEB'2005).

[14]  Xing Zhang,et al.  Feedlack detects missing feedback in web applications , 2011, CHI.

[15]  Fabio Paternò,et al.  Reverse Engineering Cross-Modal User Interfaces for Ubiquitous Environments , 2007, EHCI/DS-VIS.

[16]  Jihong Kim,et al.  Structure-Aware Web Transcoding for Mobile Devices , 2003, IEEE Internet Comput..