h1

h2

h3

h4

h5
h6
http://join2-wiki.gsi.de/foswiki/pub/Main/Artwork/join2_logo100x88.png

Testing life cycle-related properties of mobile applications = Testen von Lebenszykluseigenschaften mobiler Anwendungen



Verantwortlichkeitsangabevon Dominik Franke

ImpressumAachen : Shaker 2015

UmfangX, 114 S. : Ill., graph. Darst.

ISBN978-3-8440-3477-6

ReiheAachener Informatik-Berichte ; 2015,02


Zugl.: Aachen, Techn. Hochsch., Diss., 2014

Prüfungsjahr: 2014. - Publikationsjahr: 2015


Genehmigende Fakultät
Fak01

Hauptberichter/Gutachter
;

Tag der mündlichen Prüfung/Habilitation
2014-11-05

Online
URN: urn:nbn:de:hbz:82-rwth-2015-019252
URL: https://publications.rwth-aachen.de/record/466122/files/466122.pdf
URL: https://publications.rwth-aachen.de/record/466122/files/466122.pdf?subformat=pdfa

Einrichtungen

  1. Lehrstuhl für Informatik 11 (Software für eingebettete Systeme) (122810)
  2. Fachgruppe Informatik (120000)

Inhaltliche Beschreibung (Schlagwörter)
Informatik (frei) ; Testen (frei) ; Softwaretest (frei) ; Android (frei) ; test (frei) ; software (frei) ; quality (frei) ; mobile (frei)

Thematische Einordnung (Klassifikation)
DDC: 004

Kurzfassung
Mit der steigenden Anzahl mobiler Endgeräte wie Smartphones oder Tablets, ihrer Relevanz heutzutage sowie einer stetig wachsenden Anzahl verfügbarer mobiler Apps, wächst auch ihr Anwendungsbereich. Für die Softwarequalität von Apps spielt ihr Lebenszyklus - bestehend aus prozessbezogenen Zuständen und Zustandsübergängen - eine wichtige Rolle. Aktuelle mobile Plattformen wie Android, iOS und Windows Phone haben Strategien für das Scheduling von Apps, welche sich von dem Scheduling auf Desktop- und Server-Betriebssystemen unterscheiden. Das Scheduling auf mobilen Plattformen soll insbesondere eine hohe Reaktivität von Apps sicherstellen, mit dem Ziel Reaktionszeiten möglichst kurz zu halten und eine hohe Benutzerfreundlichkeit zu gewährleisten. Abhängig von dem Zustand einer App kann ihr der Zugriff auf Ressourcen wie RAM und CPU gewährt oder verwehrt werden. Dieses Verhalten kann zu Datenverlust und unerwartetem App-Verhalten führen. Diese Arbeit stellt einen konzeptuellen Ansatz zum Testen von App-Eigenschaften, die in Bezug zum Lebenszyklus der App stehen, vor. Im ersten Schritt wird ein Vorgehen vorgestellt, welches das Reverse Engineering von Lebenszyklus-bezogenen Eigenschaften erlaubt. Die resultierenden Lebenszyklen werden als Basis für das Testen Lebenszyklus-bezogener Eigenschaften verwendet. Der Ansatz nutzt Callback-Mechanismen der darunterliegenden Plattformen um Annahmen über Lebenszyklus-bezogene Eigenschaften zu überprüfen. Anwendungskomponenten mit eigenen Lebenszyklen werden von dem Ansatz als Module angesehen und im Rahmen von Modultests getestet. In einer Fallstudie wird der konzeptuelle Ansatz für die mobile Plattform Android implementiert. Aus dieser Fallstudie geht AndroLIFT hervor, eine Bibliothek zum Testen von Lebenszyklus-bezogenen Eigenschaften von Android Apps. Die Evaluierung dieser Arbeit stellt die Potentiale und Grenzen des konzeptuellen Ansatzes vor. Der Ansatz ist leicht für die heutigen mobilen Plattformen zu implementieren, er skaliert mit einer zunehmenden Anzahl von Annahmen und ist leicht anpassbar und erweiterbar im Hinblick auf unterschiedliche Annahmen. Aber es zeigt sich auch eine Abhängigkeit von den für diesen Ansatz benötigten Callback-Mechanismen der darunterliegenden Plattformen. Die Evaluation von AndroLIFT im Rahmen eines studentischen Praktikums bestätigt den Nutzen der Android Implementierung des vorgestellten Ansatzes um Lebenszyklus-bezogene Eigenschaften zu überprüfen.

With an increasing number of mobile devices like smartphones and tablets, their relevance to users and growing number of available applications, also their field of application widens. For the software quality of mobile applications, the application life cycle - the process-related states and state transitions - plays an important role. Today's mobile platforms, like Android, iOS and Windows Phone, have specific scheduling policies on application level to ensure the reactiveness of an application, targeting an improved responsiveness and a good user experience. Depending on the life cycle state of an application, it is allowed or restricted to access resources like RAM and CPU. Such policies can lead to data loss and unexpected behavior of the mobile application. This work presents a conceptual approach for testing application properties which are related to life cycle state changes, so called life cycle-related properties. The first step consists of reverse engineering the life cycles of mobile applications. These life cycles are used as a basis for testing life cycle-related properties at state changes. The testing approach uses callback-mechanisms of the underlying mobile platforms to check assertions about life cycle-related properties. It handles application components with an own life cycle as units and tests each unit in a unit-based testing approach. In a case study, the conceptual approach is implemented for the mobile platform Android. One of the results of the case study is the AndroLIFT tool for testing life cycle-related properties of Android applications. The evaluation of this work presents the capabilities and limitations of the conceptual approach. While the approach is well-suited for today's mobile platforms, extensible and scalable with respect to the type and number of life cycle-properties, it mainly depends on the callback-mechanism of the underlying mobile platform. The evaluation of the AndroLIFT tool in the context of a practical course with student participants confirms the value of the Android implementation of the presented approach to test life cycle-related properties of Android applications.

OpenAccess:
Download fulltext PDF Download fulltext PDF (PDFA)
(additional files)

Dokumenttyp
Dissertation / PhD Thesis/Report

Format
online, print

Sprache
English

Externe Identnummern
HBZ: HT018628162

Interne Identnummern
RWTH-2015-01925
Datensatz-ID: 466122

Beteiligte Länder
Germany

 GO


OpenAccess

QR Code for this record

The record appears in these collections:
Document types > Theses > Ph.D. Theses
Document types > Reports > Reports
Faculty of Mathematics, Computer Science and Natural Sciences (Fac.1) > Department of Computer Science
Publication server / Open Access
Public records
Publications database
120000
122810

 Record created 2015-04-29, last modified 2023-12-05