Title (eng): Offline-Capable Web-Based Rich Internet Applications

Author: Novy, F. (Francesco)

Description (deu): St. Pölten, FH-Stg. Digitale Medientechnologien, Master Thesis, 2015

Description (deu): Es wird immer wichtiger, das Internet über Mobilgeräte zu nutzen. Dennoch ist auch heute eine ständige Internetverbindung nicht immer möglich – es gibt viele Orte ohne Empfang, sei es in den Bergen, am Land, in der U-Bahn oder in einem Keller. BenutzerInnen sollten eine webbasierte Anwendung weiternutzen können, auch wenn sie plötzlich keine Verbindung mehr haben.Während das für statische Webseiten relativ einfach realisierbar ist, ist die Implementierung solcher Offlinefähigkeiten für Rich Internet Applications (RIAs), die ständig Daten mit einem Server austauschen, viel schwieriger. Das Ziel dieser Arbeit ist es, eine Methode zu entwickeln, welche bestehende Webanwendungen offlinefähig macht, ohne es nötig zu machen die Schnittstellen oder Logik der Anwendung zu ändern. Um das zu realisieren, werden zuerst bestehende Design Patterns rund um Datensynchronisation untersucht sowie die Prinzipien von REST und bestehende Technologien für die Umsetzung. Danach wird eine JavaScript Library entwickelt und in eine bestehende Webanwendung eingebaut, welche als Proof of Concept dient. Dieser Proof of Concept wird dann mit Usern getestet, um das User Interface, welches den Online/Offline Status zeigt, zu evaluieren. Schlussendlich wird die fertige JavaScript Library scuba.js vorgestellt, welche genutzt werden kann, um bestehende Webanwendung offlinefähig zu machen. Der Proof of Concept zeigt, dass es möglich ist, bestehende Applikationen offlinefähig zu machen ohne die Anwendungslogik zu ändern. Die durchgeführten Usertests zeigen, dass BenutzerInnen einen Online/Offline-Statusindikator nützlich finden.

Description (eng): Accessing the Internet with mobile devices is becoming increasingly important. But constant Internet availability is still not given – there are a lot of white spots in the coverage area, be it in the mountains, the countryside, the metro, or in a cellar. Users should be able to continue using a web-based application even if connectivity happens to drop. While this is more or less easily doable for static websites, implementing such offline features for Rich Internet Applications (RIAs), which exchange data constantly with a server, is a much more complex undertaking.
The goal of this work is to find and implement a method to make an existing web application offline capable without the need to change the application’s API or application logic. In order to achieve this, existing design patterns for data synchronisation are explored, as well as the basics of REST and the technologies currently available for such an undertaking. Then, a library is built and implemented into an existing application as a proof of concept. This proof of concept is then tested with users to evaluate the UI which shows the online/offline status. Finally, a JavaScript library, scuba.js, is presented which can be used to enhance a web application with offline capabilities. The proof of concept shows that it is possible to make an existing web app offline capable without changing the application itself. The conducted user tests show that users appreciate an online/offline status indicator UI element.

Object languages: English

Date: 2015

Rights: © All rights reserved

Classification: Rich Internet Application

Permanent Identifier