Mobile Application Benchmarking Based on the Resource Usage Monitoring

Mobile Application Benchmarking Based on the Resource Usage Monitoring

Reza Rawassizadeh (University of Vienna, Austria)
DOI: 10.4018/jmcmc.2009072805

Abstract

There are many mobile applications currently available on the market, which have been developed specifically for smart phones. The operating systems of these smart phones are flexible in order to facilitate the application development for programmers regardless of the lower layers of the operating system. Mobile phones like other pervasive devices suffer from resource shortages. These resources vary from the power (battery) consumption to the network bandwidth consumption. In this research we identify and classify mobile resources and propose a monitoring approach to measure resource utilization. The authors provide a monitoring tool, which generates traces about the resource usage. Then they propose a benchmarking model which studies traces and enables users to extract qualitative information about the application from quantitative resource usage traces. Results of the study could assist quality operators to compare similar applications from their resource usage point of view, or profile a single application resource consumption.
Article Preview

Introduction

According to studies, done by Compass Intelligence, companies in United States will have spent $11.6 billion on mobile applications by 2012 (Burney, 2009). This indicates a significant increase in the number of mobile applications from both quantity and quality point of view. Many duplicate applications with similar functionalities and features end up on the market.

Mobile phones are subsets of pervasive devices and like other pervasive devices; they have finite energy sources (Satyanarayanan, 1996). Pervasive devices also suffer from client thickness (Satyanarayanan, 2001). This means that there will always be the challenge of willingness to increase the quality of an application while dealing with the shortage of available resources.

Studies revealed that users prefer buying mobile phones with more features (Thompson, Hamilton, & Rust, 2005). Adding more features increases the resource utilization and fosters more powerful devices. Using less resources and providing the desired functionalities increase the application efficiency.

Developers and researchers try to handle resource shortages of the pervasive devices in different ways, such as studying the context and adapting the device to the current context (Alia et al., 2007), optimizing energy usages with a CPU scheduler (Yuan & Nahrstedt, 2003) and so forth.

This information allows us to realize that the resource usage of an application is an important factor for mobile devices, which could affect the application’s quality. Resource utilization is one of the performance metrics. Among other performance metrics include application response time, throughput, reliability and availability (Jain, 1991).

For example let us consider a scenario where a user intends to purchase an audio player for his smart phone. There are many different choices on the market, “Music player X” is an audio player which plays user desired audio format like MP3 and gets some information about the current music track from the Internet. “Music player Y” is another audio player, which does not only play the desired audio format and gets the information from the Internet but also sends the audio track name to the micro-blog account (like twitter or friendfeed) of the user. These features might be attractive for some users, but wireless network bandwidth is currently limited and expensive. A quality operator can study which application requires less network connection as a capability fact and decides upon choosing the appropriate application. Large scale industrial mobile device producers, who are interested in purchasing applications from third parties and embed them into their devices, can benefit from studying resource usage of the applications. In this scale, small amounts of disk space or memory allocation play an important role.

This article focuses on measuring resource usage of applications via a monitoring tool, and the benchmarking capability of the target application from the resource consumption point of view. Qualitative features like user interface design or application features are not within the scope of this article. We provide a monitoring tool that tracks resource usages of the device when the target application is running. It generates a trace from the resource usage. This trace can be used to study capabilities of the application or can be used for studying QoS issues. Our monitoring approach does not require any information about the target application. It resides on the same mobile device and monitors resources during the execution of the target application. In order to be flexible and scalable, we designed an approach that has no dependencies to the target application.

The remainder of this article is organized as follows. Next section describes the resource classification; afterward we introduce the related works. Then we discuss controversies and restrictions. Afterward we introduce our benchmarking model and our utility function and resource monitoring methods will be described. Then prototype and evaluates experiments will be described and last section concludes the article.

Complete Article List

Search this Journal:
Reset
Open Access Articles: Forthcoming
Volume 10: 4 Issues (2019): Forthcoming, Available for Pre-Order
Volume 9: 4 Issues (2018): 1 Released, 3 Forthcoming
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2014)
Volume 5: 4 Issues (2013)
Volume 4: 4 Issues (2012)
Volume 3: 4 Issues (2011)
Volume 2: 4 Issues (2010)
Volume 1: 4 Issues (2009)
View Complete Journal Contents Listing