Affective Quality Assessment for Android Applications Using Q Sensor
Ghada Al-Hudhud*
Information Technology Department, King Saud University, Saudi Arabia
Submission: March 17, 2017; Published: May 25, 2017
*Corresponding author: Ghada Al-Hudhud, Information Technology Department, King Saud University, Saudi Arabia, Email: galhudhud@ksu.edu.sa
How to cite this article: Ghada A-H. Affective Quality Assessment for Android Applications Using Q Sensor. Biostat Biometrics Open Acc J. 2017;2(1): 555576. DOI: 10.19080/BBOAJ.2017.02.555576
Abstract
Elderly assistive mobile technologies are highly demanded in order to reduce care givers effort. In this context, and due to the aging memory loss and busy schedules for adults, mobile health assistive applications (MHAA) are highly demanded. MHAA would assist remembering daily activities. Emotion detection based mobile technologies are recently considered a revolution in building affective and health mobile applications. Despite, there are several global standard ISO 9126 and standards in the field to evaluate the quality of mobile software products, yet, there is a lack of health directed quality assessment framework. This raised the needs for affective quality assessment for such technologies that is conducted with the emotional states analysis of physiological data. This article introduces affective quality assessment approach that uses biosensors in order to assessa reminder android application. The assessment is based on relating the source code quality of android application using the commonly known main characteristics efficiency, portability and reliability to the emotion detection sensor data.
Keywords: Assistive mobile application; Biosensor data; Affective quality assurance; Memory problems
Introduction
Recall the effect of aging and the busy schedules for adults on the memory loss; one might experience problems remembering time and location for the tasks [1]. Shagam [1] reported the importance of using the assistive technologies and tools that help in overcoming the memory loss problems. Examples of such technologies are the most commonly used reminder applications. Mobile assistive technologies are not only used for remembering the tasks, but also for task planning.
As mobile devices now are widely used because of the availability anytime anywhere, the quality of the mobile applications should be highly considered as well as the quality of development process in order to achieve the application high quality. Meanwhile, the quality assessment tools used to evaluate and test the processes should be reliable and trustable.
ISO/IEC 9126 defines a quality model that comprises six characteristics and 27 sub-characteristics of software product quality. The ISO 9126 model was based on the McCall and Boehm models. The model has two main parts consisting of:
- the internal and external quality attributes and
- the quality in use attributes. Internal quality attributes are referred to the system sub-characteristics that can be evaluated without executing, while external refers to the system main characteristics that can be assessed by observing during its execution. These properties are experienced by users when the system is in operation and also during maintenance [2,3].
Because the quality model is generic, one can apply it to any software product by tailoring to a specific purpose [4]. Yet, and in assistive applications, some biometrics are required to identify the user’s stress threshold based on the application response time and availability. Among the biometrics, there is the emotion reader Q Sensor; that is considered as emotion detection assistive technology.
Emotion detection assistive technologies such as brain signals readers, skin temperature devices are now available to assess the usability efficiency of the assistive applications. The Q Sensor; shown in Figure 1, provides records for stress and frustration levels throughout the day. Currently those records allow doctors detect changes of reactions in an objective way to see and communicate what might be causing stress for a person.
In this article, the study aims at testing a reminder mobile application by using eclipse plugins (Code Pro, USUS). In addition, the Q sensor is also used in this study to detect the stress level that is caused by the delay or long response time of the application. Hence the affective quality assessment using the emotion detected data; in the form of stress, is conducted to ensure the application response time application to satisfy some mental/memory needs and applied the ISO 9126 standards.
Background
Mobile applications are undergoing rapid changes with the deployment of new technologies. This brought up introduction of many varieties of devices and applications. On the other hand, quality assurance is an important stage during the mobile application development lifecycle, to evaluate and rate the end to end performance and accuracy of application. This includes its functionality, maintenance, reliability and portability. Hence, it is important that adequate quality analysis and testing of the device is done during and after the development of mobile applications.
Corral & Fronzain [5] presented a Study on source code quality and market success of Android applications. In [5], the aim was to find a relation between the source code quality and the market success of mobile software applications. The result values lead to rejection of their hypothesis, after many iterations of statistical analysis of complexity, coupling, cohesion and size measures. It shows that source code metrics have a minimal impact into the market success. However, the effect of source code quality maybe still has a relevant characteristic for the overall quality and success of the mobile software product.
Sayer et al. [6] presented a study of the relationship between source code quality and mobile platform dependence. Hence, the software metrics are platform dependents and can be used to define the prioritization of software quality assurance efforts. Sayer et al. [6] examined the relationship between platform dependence and defect proneness of the source code of an Android application by studying five open- source mobile android application to defined the answer of their proposed questions and found these result: (1) source code files that are defect prone have a higher dependence on the platform than defect-free files and (2) increasing the platform dependence increases the possibility of a defect being present in a source code file. Therefore, platform dependencies can help software quality assurance team to prioritize the source code for code reviews and unit testing.
Franke & Weise [7] provided software quality framework for testing of mobile application. Franke and Weise built their quality assessment framework based on software platform; desktop and mobile software. They provided an approach of software quality development of mobile applications that includes patterns for mobile application development, quality metrics, methods and tools for analysing and testing the specific lifecycles of mobile applications.
Brison [8] studied the how to improve quality and syntax of Android code. Brison provides how to use automated code test by presenting different ways of improve Android code, with automatic tools such as Check style, Find bugs, PMD, and of course Android Lint. This study shows very useful tools and reports of the quality results. In addition, Brison’s study shows Jenkins and Cobertura plugins to give a "QA dashboard" view of a native Android application build. In particular, the author displays metrics for: unit test results, code coverage and code quality. The quality report shows the detailed measure and result of the proposed metrics.
On other hand, a simple scoring system for ECG quality assessment on Android platform is presented in [9]. This study investigates the relationship between software quality and the: code review coverage (i.e., the proportion of changes that have been code reviewed), and the code review participation (i.e., the degree of reviewer involvement in the code review process). The case study considered the Qt, VTK, and ITK projects. The empirical results confirm poorly reviewed code has a negative impact on software quality in large systems using modern reviewing tools.
Literature Review
Testing mobile applications exists and is around since a while. However, yet, testing the mobile applications in alignment with human acquired behaviour and emotions, based on measured emotions. Whilst few tested playing the game, yet, is not widely found in recent published research. It can detect whether people are bored, stressed or excited and can be used in market research, therapy or science.
Current quality analysis and testing tools consists of manual tests or automatic tests that look at the quality statistics from the highest level (application) on the device, and in the lowest level (development and source code). Often these tests are done using a specially modified version of the application type, which provide consistency and conformity in sake of logic, accuracy, performance, or fairness of the application. Yet, these tests are not considering cases like elder memory problems or busy schedules for users. Memory loss and busy schedules cause stress level (emotion) as the person tries to remember something but he cannot. This is translated into sweating and accordingly temperature change of the hands. Hence, the Q sensor can detect and transmit the records for this emotion. Using these records to estimate the change in temperature threshold in order to directly activate the reminder application would help in reducing the stress.
In a recent published research [1], many uses of Q sensor have been reported. A school has been using the Q sensors to identify the activities that affect the well-being of individual students. Another use for this Q sensor is to detect autistim and locked in syndromes. The captired data can be downloaded by a caregiver or user who can plug the sensor into a PC. Hence the data could be analysed to classify the stress or excitement states and time durations for the desired state.
Quality Assessment Framework
Application description
The reminder application; shown in Figure 2, is an application developed by group of IT students in King Saud University to be used for android devices. It aims to be the solution for people who want to organize their to-do-list tasks. The application also helps managing memory problems within the busy schedules as it alerts users based on their location. It offers many features to the users and it requires Google Maps' APIs to implement some of the listed features below by providing the path, distance and the area maps.
The user can manage his/her list by writing the to-do task and then allocate the location for the specified task using Google Maps by defining the address. The application will give the opportunity to the user to choose a distance that he/she wishes to be reminded before reaching the indicated location. The user will be notified when he/she is approaching the specified distance of the desired location. Then, when the alert is on, the user will have to select from three options (Ok- Remind me later- Locate: to show the path of the place). To enhance the facility, the application will give the user the chance to select number of repetition of the tasks (always or once) to comply with his/her needs. However, and on the other days, the application will still remind the user about his/her to-do list whenever he/she approaching the indicated locations. The user can manage his/her list by writing the to-do task and then choose the time and date that he/she wishes to be reminded at. The application has a compatible simple user interface that helps the user to accomplish his/ her demands on an efficient and usable way. The application home page interface is depicted in Figure 2.
Quality assessment tools
The testing tools being used for quality assessment of our reminder application is eclipse plugins QM tools from eclipse market place [10]. Eclipse Plugins that are used in this study is Code Pro Analyti X: easy Java code quality and security analysis, static code analysis, code coverage analysis, powerful management reporting. In addition, the Q Sensor that records the user's emotion regarding the application response time to the user based on the stress level. Hence, the policies and procedures used for assessing the application considered the user satisfaction and form the quality assessment model in this paper, please, refer to Table 1. The quality model have a set of measurement of each procedures, the estimate weight distributed based on policy importance, the quality measure standard, the application test cases.
Experimentation design
Quality attribute using code pro analyti X: Efficiency and reliability were used to assess the quality, using the measures time behaviour (in terms of response time) and maturity (in terms of availability) metrics respectively. These metrics were measured using and coupling between objects (CBO) and weighted method per class (WMPC) as measures. The standard values for these measures are listed along each measure in Table 1. In order to have good results for efficiency and availability attributes, it is highly recommend that reduce the CBO to increase time behaviour and response for user interactions. In addition, the more reduced the complexity between classes the better maturity can be obtained.
Biometric based quality assessment
The experiment is designed to monitor 15 participants and collect their biometric data. The participants were monitored during SIX states: morning, morning stressed, midday, midday stressed, evening and evening stressed. Hence, the biometric data was acquired using the Q sensor and stored. The recorded data are analyzed according to Six Sigma ( kσ where is equal to 6) approach. Accordingly, the mean, standard deviation, six sigma and capability index are calculated for each participant for each state. The Cpk shows how well the performance measure fits the specification based on a given tolerance level, please refer to Table 2. Hence, an Upper Tolerance level (UTL) and Lower Tolerance Level (LTL) are defined for this study and based on the range of acquired biometrics for each participant from the baseline state to the stress state. The collected data over different activities for the scheduled activities, is calculated as follow
Where is the average of N biometric observations that is
The standard deviation of the biometric observations:
A process is capable if
Where k=3 if 3 sigma capability is calculated and k=6 if six sigma capability is calculated
Discussion
From the experimentation results shown in Table 2 one can see the importance of the biometric consideration in the quality assessment process and attributes. Figure 3 presents the histogram for the mean values for all observations during six states. All the mean values show that the application response time is raising the stress for users during the all states, however, at the evening time the person is more stressed than the early morning and midday. In addition, the values shown in Figure 4 for the Six States proofs that the application is not helping the user at the end of the day; all Cpk values are less than 1 except at the morning and midday activities at base state.
The biometric based quality assessment identified the states of stress while remembering the activities and shows that the application response time causes the stress more during the evening session as the person is tiered after long day. These results are not shown using the conventional quality assessment results presented in Table 1. As the results in Table 1 shows good quality software according to the TIOBE quality indicator [11,12].
Conclusion
This article presented the quality assessment results of a reminder mobile application that is based on using combined assessment tools:
- Biosensor; Q sensor, measures that represent physiological signs of people's emotional states,
- Quality software attributes efficiency and reliability.
However, for elderly and busy adults, it is quite important for the application to gain user’s satisfaction in terms of the application response time (efficiency) and those results in bad impact on individual's emotional state; stress or frustration. The results presented in this paper reveal the high quality in application efficiency measures. However, the affective quality assessment results for the application reported negative effect resulted from increased time response during user interactions. Hence, and in context of the above reported results, the quality assessment for assistive mobile application attributes testing should be aligned with the emotional state testing results in order to gain the full usability assessment.
Acknowledgment
This research was supported by a grant from the "Research Center of the Female Scientific and Medical Colleges", Deanship of Scientific Research, King Saud University.
References
- Shagam JY (2009) The Many Faces of Dementia. Radiol Technol 81(2): 153-168.
- Jose PM, Mauricio D, Rodriguez G (2014) A Review of Software Quality Models for the Evaluation of Software Products. Int J Softw Eng Appl IJSEA 5(6): 23.
- Behshid Behkamal, Mohsen Kahani, Mohammad Kazem Akbari (2009) Customizing ISO 9126 quality model for evaluation of B2B applications. Information and Software Technology 51(3): 599-609.
- Jung HW, Kim SG, Chung CS (2004) Measuring Software Product Quality: A Survey of ISO/IEC 9126. EEE Comput Soc 21(5): 88-892.
- Corral L, Fronza I (2015) Better Code for Better Apps: A Study on Source Code Quality and Market Success of Android Applications. Mobile soft, pp. 22-32.
- Syer MD, Nagappan M, Adams B, Hassan AE (2014) Studying the relationship between source code quality and mobile platform dependence. Softw Qual J 23(3): 485-508.
- Franke D, Weise C (2011) Providing a Software Quality Framework for Testing of Mobile Applications. in 2011 IEEE Fourth International Conference on Software Testing Verification and Validation (ICST) pp. 431-434.
- http://vincentbrison.com/2014/07/19/how-to-improve-quality- and-syntax-of-your-android-code/.
- Chudacek V, Zach L, Kuzilek J, Spilka J, Lhotska L (2011) Simple scoring system for ECG quality assessment on Android platform. Computing in Cardiology 2011: 449-451.
- https://marketplace.eclipse.org/.
- Jansen P (2015) The TIOBE Quality Indicator a pragmatic way of measuring code quality. TIOBE Qual Indic 3.6.
- http://www.qimacros.com/qi-macros/.