The Impact of API Change- and Fault-Proneness on the User Ratings of Android Apps
ABSTRACT:
The mobile apps market is one of the fastest growing areas in the information technology. In digging their market share, developers must pay attention to building robust and reliable apps. In fact, users easily get frustrated by repeated failures, crashes, and other bugs; hence, they abandon some apps in favor of their competition. In this paper we investigate how the fault- and change-proneness of APIs used by Android apps relates to their success estimated as the average rating provided by the users to those apps. First, in a study conducted on 5,848 (free) apps, we analyzed how the ratings that an app had received correlated with the fault- and change-proneness of the APIs such app relied upon. After that, we surveyed 45 professional Android developers to assess (i) to what extent developers experienced problems when using APIs, and (ii) how much they felt these problems could be the cause for unfavorable user ratings. The results of our studies indicate that apps having high user ratings use APIs that are less fault- and change-prone than the APIs used by low rated apps. Also, most of the interviewed Android developers observed, in their development experience, a direct relationship between problems experienced with the adopted APIs and the users’ ratings that their apps received.
EXISTING SYSTEM:
- The analysis of mobile applications and operating systems has become a hot research topic in the recent years. However, for reasons related to availability of source code and other artifacts (e.g., bugs, change requests, etc.), such studies have been mainly focused on the Android ecosystem.
- Stability and fault-proneness in the Android API is a sensitive and timely topic, given the frequent releases and the number of applications that use these APIs.
- The analysis is that extent the APIs fault- and change-proneness affect the user ratings of the Android apps using them, and the investigation to what extent Android developers experience problems when using APIs and how much they feel these problems can be causes of unfavorable user ratings/comments.
DISADVANTAGES OF EXISTING SYSTEM:
- The impact of breaking changes could be a major factor for the development of Android apps in Java, because Android produced significant releases as rapidly as every one to six months.
- No evidence is there on the impact of unstable APIs on the client code using those APIs.
PROPOSED SYSTEM:
- In this paper we investigate how the fault- and change-proneness of APIs used by Android apps relates to their success estimated as the average rating provided by the users to those apps.
- The goal of this paper is to provide solid empirical evidence and shed some light on the relationship between the success of apps (in terms of user ratings), and the change- and fault-proneness of the underlying APIs (i.e., Android API and third-party libraries). We designed two case studies. First, in a study conducted on 5,848 (free) apps, we analyzed how the ratings that an app had received correlated with the fault- and change-proneness of the APIs such app relied upon. After that, we surveyed 45 professional Android developers to assess (i) to what extent developers experienced problems when using APIs, and (ii) how much they felt these problems could be the cause for unfavorable user ratings.
- The results of our studies indicate that apps having high user ratings use APIs that are less fault- proneness and change-prone than the APIs used by low rated apps. Also, most of the interviewed Android developers observed, in their development experience, a direct relationship between problems experienced with the adopted APIs and the users’ ratings that their apps received.
ADVANTAGES OF PROPOSED SYSTEM:
- Implements recommenders to support developers in dealing with APIs updates that can potentially (and inadvertently) impact their apps with breaking changes and bugs.
- The fault proneness was measured as the total number of bugs fixed in the used API, while to assess the change-proneness we used the number of changes at method level along three categories:
- Generic changes (including all kinds of changes),
- Changes applied to method signatures, and
- Changes applied to the exceptions thrown by methods.
SYSTEM REQUIREMENTS:
HARDWARE REQUIREMENTS:
- System : Pentium IV 2.4 GHz.
- Hard Disk : 40 GB.
- Floppy Drive : 44 Mb.
- Monitor : 15 VGA Colour.
- Mouse :
- Ram : 512 Mb.
- MOBILE : ANDROID
SOFTWARE REQUIREMENTS:
- Operating system : Windows 7.
- Coding Language : Java 1.7
- Tool Kit : Android 2.3 ABOVE
- IDE : Eclipse
REFERENCE:
Gabriele Bavota, Mario Linares-Vasquez, Member, IEEE, Carlos Eduardo Bernal-Cardenas, Massimiliano Di Penta, Rocco Oliveto, and Denys Poshyvanyk, Member, IEEE, “The Impact of API Change- and Fault-Proneness on the User Ratings of Android Apps”, IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 41, NO. 4, APRIL 2015.
No comments:
Post a Comment