Architectural Frameworks for Automated Content Adaptation to Mobile Devices Based on Open-Source Technologies
Total Page:16
File Type:pdf, Size:1020Kb
Architectural Frameworks for Automated Content Adaptation to Mobile Devices Based on Open-Source Technologies Thesis submitted to the Faculty of Economics of the European University Viadrina (Frankfurt/Oder) in fulfillment of the requirements for the degree of Dr. rer. pol. Author: Bożena Jankowska First Advisor: Prof. Dr. Eberhard Stickel Second Advisor: Prof. Dr. Karl Kurbel Submitted: 03.11.2006 Thesis defense: 06.09.2007 Abstract The Web and enterprise information systems are gradually increasing their reach to a wide range of mobile devices. Although analysts hope for a breakthrough in the popularity of mobile solutions, field studies show that, except for Japan and South Korea, there is still a large gap between the technical capabilities of wireless devices/networks and the adoption of mobile services for business and private use. This paradox can be attributed to a high extent to low quality of existing mobile solutions and to their insufficient usability, represented particularly by two attributes: simplicity of use and content relevance. Additionally, network providers are afraid that mobile Internet could cannibalize their revenues from SMS and entertainment services and do not want to cooperate with service providers to improve the quality of services offered. Wireless applications depend on device-specific features such as input/output mechanisms, screen sizes, computing resources, and support for various multimedia formats and languages. This leads to the need for multi-source authoring - the creation of separate presentations for each device type or, at least, for each class of devices. Multi-source authoring is not a cost-efficient and feasible solution, especially for mobile services consisting of numerous pages. Therefore, various single-source or device-independent techniques that try to tackle the dream of software developers for automatic content generation emerged. These techniques perform the adaptation to the characteristics of mobile devices on the client- or server-side or with the help of some intermediary, the so-called proxy. The high complexity of most adaptation frameworks, missing support for the design and development of mobile content, or the lack of non-proprietary solutions often lead to the rejection of offered adaptation methods. This thesis describes the current state of the art in the area of adaptation techniques and proposes two new approaches for device-independent content delivery that are based on open-source technologies: the Mobile Interfaces Tag Library (MITL) framework and the Mobile Web Services Adaptation (MoWeSA) framework. The first framework is based on Mobile Interfaces Tag Library (MITL), in the second one Web Services Tag Library (WSTL) was introduced. MITL enables dynamic generation of content from existing Web pages, databases, or any other information sources. WSTL aims at the communication with Web Services. In both frameworks the development process is supported by an advanced Integrated Development Environment. Mobile services can be accessed from PCs, mobile phones or PDAs, and can be developed as browser-based or stand-alone applications. The MITL and MoWeSA frameworks currently support content delivery in the most popular formats (HTML, XHTML, WML, and Java ME) but are easily extensible to additional markup languages or standards. Tests conducted among end-user programmers confirmed that the proposed solutions are easy to learn and apply. The frameworks support the separation of tasks between page designers responsible for content presentation and programmers who modify business logic encapsulated in reusable components. Table of contents I Table of contents List of figures ____________________________________________________________________ IV List of tables_____________________________________________________________________VII List of listings ____________________________________________________________________ IX List of abbreviations _______________________________________________________________ XI 1 Introduction _________________________________________________________________ 1 1.1 Problem description _________________________________________________________ 1 1.2 Objectives of the work and intended contributions __________________________________ 5 1.3 Outline of the dissertation_____________________________________________________ 6 2 Mobile infrastructure__________________________________________________________ 9 2.1 Network technologies ________________________________________________________ 9 2.2 Technologies for content presentation on mobile devices ___________________________ 17 2.2.1 Markup languages for simple user interfaces ________________________________ 18 2.2.2 Vocal interfaces ______________________________________________________ 25 2.2.3 Mobile multimedia_____________________________________________________ 29 2.2.4 Java ME technology ___________________________________________________ 31 2.3 Types of mobile devices and their characteristics _________________________________ 39 3 Mobile content and its adoption _______________________________________________ 44 3.1 Mobile services and their application domains ____________________________________ 44 3.2 Market for mobile devices and mobile applications ________________________________ 51 3.3 Adoption and acceptance of mobile Internet _____________________________________ 55 4 Requirements and guidelines for device-independent content presentation ___________ 63 4.1 Essential functionality of adaptation and adaptation methods ________________________ 63 4.2 Device Independence Principles ______________________________________________ 70 4.3 Quality model and authoring challenges for device-independent content presentation approaches_______________________________________________________________ 72 4.4 Design of mobile applications_________________________________________________ 81 5 Technologies for device independence _________________________________________ 86 5.1 Methods for content adaptation _______________________________________________ 86 5.1.1 Porting the Web to mobile devices - browser-based rendering __________________ 86 5.1.2 Manual authoring and the “versionitis” problem ______________________________ 89 5.1.3 Scaling _____________________________________________________________ 94 5.1.4 Transcoding _________________________________________________________ 97 5.1.5 Transforming ________________________________________________________ 99 5.1.6 Comparison of methods for content adaptation _____________________________ 103 II Table of contents 5.2 Categories of adaptation approaches _________________________________________ 106 5.2.1 Intermediate adaptation _______________________________________________ 106 5.2.2 Client-side adaptation ________________________________________________ 106 5.2.3 Server-side adaptation________________________________________________ 107 6 Related work in the area of content adaptation to mobile devices __________________ 108 6.1 Client-side adaptation approaches ___________________________________________ 108 6.1.1 CSS and related technologies __________________________________________ 108 6.2 Intermediate adaptation approaches __________________________________________ 112 6.2.1 Top Gun Wingman___________________________________________________ 112 6.2.2 WebAlchemist ______________________________________________________ 113 6.2.3 Web Intermediaries (WBI) _____________________________________________ 114 6.2.4 Power Browser _____________________________________________________ 115 6.2.5 Web Digestor and m-Links ____________________________________________ 117 6.2.6 Web clipping _______________________________________________________ 119 6.2.7 WebViews _________________________________________________________ 120 6.2.8 Opera Mini _________________________________________________________ 121 6.3 Approaches for server-side adaptation ________________________________________ 122 6.3.1 General technologies for server-side adaptation ____________________________ 122 6.3.2 XML/XSLT-based architectures_________________________________________ 124 6.3.2.1 Underlying standards______________________________________________ 125 6.3.2.2 Exemplary architectures based on XML/XSLT __________________________ 131 6.3.3 Approaches based on User Interface Description Languages__________________ 133 6.3.3.1 Model-based User Interface Development and UIDLs ____________________ 134 6.3.3.2 Related work in the area of User Interface Description Languages __________ 135 6.3.3.3 Comparison of User Interface Description Languages ____________________ 145 6.3.4 Frameworks supporting Model-View-Controller design pattern _________________ 147 6.3.4.1 Model-View-Controller design pattern _________________________________ 147 6.3.4.2 Exemplary MVC approaches________________________________________ 148 6.4 Comparison of approaches _________________________________________________ 152 7 Common elements of frameworks ____________________________________________ 156 7.1 Delivery context __________________________________________________________ 156 7.2 Image converters _________________________________________________________ 167 8 Mobile Interfaces Tag Library (MITL) framework_________________________________ 171 8.1 Design objectives_________________________________________________________ 172 8.2 Evolution of architectures – from early programs to muli-tier systems_________________ 174 8.3 Framework’s architecture and open-source technologies used______________________