Formal modelling and verification on Android platform

Today’s mobile applications deliver complex functionalities on the Google’s Android platform. This underscores the growing need for automated testing techniques, so as to ensure quality of the mobile applications. By conducting an exhaustive exploration of the state system of an application, automat...

Full description

Saved in:
Bibliographic Details
Main Author: Lim, Jolene Yu Han
Other Authors: School of Computer Engineering
Format: Final Year Project
Language:English
Published: 2014
Subjects:
Online Access:http://hdl.handle.net/10356/59248
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-59248
record_format dspace
spelling sg-ntu-dr.10356-592482023-03-03T20:37:05Z Formal modelling and verification on Android platform Lim, Jolene Yu Han School of Computer Engineering Parallel and Distributed Computing Centre Asst Professor Liu Yang DRNTU::Engineering::Computer science and engineering Today’s mobile applications deliver complex functionalities on the Google’s Android platform. This underscores the growing need for automated testing techniques, so as to ensure quality of the mobile applications. By conducting an exhaustive exploration of the state system of an application, automated testing tools such as Java PathFinder, possess the ability to check and report traces of events leading to the violation of the specifications. However, for Android applications to leverage on the benefits of this model checking tool, the application must first be compiled into Java byte codes. To execute an application on the Java Virtual Machine, the Android libraries first have to be modelled through the creation of stubs and mock classes, before the application’s driver file could be generated. After the modification process, the Android application is ready to be executed on the Java Virtual Machine platform. The number of modelled Android libraries will increase after each round of application testing, thus developing the mock up Android framework progressively. The details of the project’s development and its implementation are will be discussed in the next section. Last but not least, a total of 20 Android applications were tested using the Java PathFinder in the later part of the project. Apart from detecting the application’s property violation, Java PathFinder is able to verify if the application divulge device data. As the concept of implementing Android application on Java PathFinder is relatively new, the amount of resources available is limited. This report is useful to researchers who are interested to learn more about the adopted approach and implementation details. This report will also demonstrate how Java PathFinder could be used to discover security flaws within an application. Bachelor of Engineering (Computer Engineering) 2014-04-28T02:56:12Z 2014-04-28T02:56:12Z 2014 2014 Final Year Project (FYP) http://hdl.handle.net/10356/59248 en Nanyang Technological University 46 p. application/pdf
institution Nanyang Technological University
building NTU Library
continent Asia
country Singapore
Singapore
content_provider NTU Library
collection DR-NTU
language English
topic DRNTU::Engineering::Computer science and engineering
spellingShingle DRNTU::Engineering::Computer science and engineering
Lim, Jolene Yu Han
Formal modelling and verification on Android platform
description Today’s mobile applications deliver complex functionalities on the Google’s Android platform. This underscores the growing need for automated testing techniques, so as to ensure quality of the mobile applications. By conducting an exhaustive exploration of the state system of an application, automated testing tools such as Java PathFinder, possess the ability to check and report traces of events leading to the violation of the specifications. However, for Android applications to leverage on the benefits of this model checking tool, the application must first be compiled into Java byte codes. To execute an application on the Java Virtual Machine, the Android libraries first have to be modelled through the creation of stubs and mock classes, before the application’s driver file could be generated. After the modification process, the Android application is ready to be executed on the Java Virtual Machine platform. The number of modelled Android libraries will increase after each round of application testing, thus developing the mock up Android framework progressively. The details of the project’s development and its implementation are will be discussed in the next section. Last but not least, a total of 20 Android applications were tested using the Java PathFinder in the later part of the project. Apart from detecting the application’s property violation, Java PathFinder is able to verify if the application divulge device data. As the concept of implementing Android application on Java PathFinder is relatively new, the amount of resources available is limited. This report is useful to researchers who are interested to learn more about the adopted approach and implementation details. This report will also demonstrate how Java PathFinder could be used to discover security flaws within an application.
author2 School of Computer Engineering
author_facet School of Computer Engineering
Lim, Jolene Yu Han
format Final Year Project
author Lim, Jolene Yu Han
author_sort Lim, Jolene Yu Han
title Formal modelling and verification on Android platform
title_short Formal modelling and verification on Android platform
title_full Formal modelling and verification on Android platform
title_fullStr Formal modelling and verification on Android platform
title_full_unstemmed Formal modelling and verification on Android platform
title_sort formal modelling and verification on android platform
publishDate 2014
url http://hdl.handle.net/10356/59248
_version_ 1759854280977678336