Comparative Study for Detecting Mobile Application's Anti-Patterns

Kamal A. ElDahshan, Eman K. Elsayed, Naglaa E. Ghannam · 2019

Software design has a main impact in the quality of the software systems. Anti-patterns are shortcomings exist in the software designs and impact negatively software quality. Mobile applications (apps) with anti-patterns have bad quality and short lifetime. Many empirical studies have assessed that the anti-patterns have a negative impact on change-proneness, fault-proneness, memory consumption and energy efficiency. In addition to that, many studies showed that there was an improvement in the user interface and memory performance of mobile apps when correcting Android anti-patterns. The aim of our research is choosing the suitable UML modeling environment to detect Mobile applications' anti-patterns via reverse engineering. So, in this research, first we present a comparative study between nine UML tools for determining the tools that have the functionality for (reverse, forward) engineering and have the ability for validating the model against the anti-patterns. Second, we apply our proposed method to generate the class diagram model of the apps through decoding the Java source code and detects the design anti-patterns in the model. For validating the proposed method, we applied it in twenty-nine Mobile apps which were downloaded from APKmirror. The proposed method detects and treats ten anti-patterns which have appeared 749 times in the twenty-nine apps.

Read the paper · More papers on PaperTik