Direkt zu


Informationen für Studierende

zur Startseite

Diplomarbeit

Das Android Fragmentierungsproblem
Betreuer Dr. rer. nat. Christoph Stach
Prüfer Prof. Dr.-Ing. habil. Bernhard Mitschang
Ende2015/01/28
Beschreibung

Ausgangssituation

Mobiltelefone sind seit Jahren ein fester Bestandteil unseres Alltags. Dabei haben sich aktuell mit iOS, Android OS, Windows Phone und Blackberry OS vier Plattformen auf dem Markt etabliert. Besonders Android OS leidet dabei unter dem sogenannten Fragmentierungsproblem. Hierrunter fasst man die große Divergenz bezüglich des Leistungsspektrums der verfügbaren Geräte, der Anpassungen des Betriebssystems seitens des jeweiligen Herstellers oder der vom Gerät unterstützten Version des Betriebssystems (siehe Abbildung 1). Besonders für die Entwickler von App ist dies ein Ärgernis, da diese hier nicht, wie beispielsweise bei iOS, darauf vertrauen können, dass ihre Produkte auf allen Geräten fehlerfrei laufen.
Zur Lösung dieses Problems existieren mehrere Ansätze. Agarwal et al. [2] führen eine systemübergreifende Middleware ein, die spezielle Funktionsaufrufe abfängt und diese dann so anpasst, dass sie auf der jeweiligen Plattform ausgeführt werden können. Das Hauptaugenmerk liegt aber darauf, dass die gleichzeitige Entwicklung von Apps für mehrere Plattformen (hier: iOS, Android und Symbian OS) gefördert wird. Auch Multiplattform-Frameworks wie PhoneGap [1] setzen auf diese Strategie.
Was passiert aber, wenn eine App, die GPS-Funktionen verwendet, auf einem Gerät ohne die benötigte Hardware ausgeführt werden soll? Oder wie soll sich eine App verhalten, die für eine bestimmte Android-Version geschrieben wurde, wenn sie auf einer anderen Android-Version ausgeführt werden soll, bei der sich die Schnittstellen zu den Systemfunktionen verändert haben? Bislang sieht die einzige Lösung hierfür so aus, dass der Entwickler entweder mehrere Versionen seiner App schreiben muss oder er einen Großteil seiner potentiellen Kunden verlieren würde.

Ziel und Aufgabenstellung

Ziel dieser Arbeit ist es zu untersuchen, inwiefern die Privacy Management Platform (PMP) [3, 4] bei der Lösung des Fragmentierungsproblems helfen kann. Da die Privacy Management Platform die Systemfunktionen innerhalb von Resource Groups kapselt, ist es möglich für unterschiedliche Android Plattformen unterschiedliche Implementierungen für diese Ressourcen anzubieten. Damit kann eine Anwendung immer gegen die gleiche API implementiert werden und der App-Entwickler muss sich keine Gedanken über mögliche Inkompatibilitäten zu machen.

Zu bearbeitende Teilaufgaben

• Analyse bestehender Lösungsansätze für das Fragmentierungsproblem
• Bewertung der gefundenen Lösungsansätze
• Ermittlung eines Leistungsportfolios der PMP bezüglich des Fragmentierungsproblems
• Herausarbeitung eines PMP-basierten Lösungsansatz für das Fragmentierungsproblem
• Entwurf und prototypische Implementierung von mindestens zwei Ressourcen für unterschiedliche Android Versionen (basierend auf den entwickelten Lösungsansatz)
• Evaluation des Ansatzes anhand einer Beispiel-PMP-App
• Präsentation der erarbeiteten Ergebnisse im Rahmen eines Abschlussvortrags

Literatur

[1] ADOBE SYSTEMS INC. PhoneGap, 2014.
[2] AGARWAL, V., GOYAL, S., MITTAL, S., AND MUKHERJEA, S. Mobivine: A middleware layer to handle fragmentation of platform interfaces for mobile applications. In Middleware’09 (2009).
[3] STACH, C., AND MITSCHANG, B. Privacy Management for Mobile Platforms - A Review of Concepts and Approaches. In MDM’13 (2013).
[4] STACH, C., AND MITSCHANG, B. Design and Implementation of the Privacy Management Platform. In MDM’14 (2014).