Browse > Article
http://dx.doi.org/10.22937/IJCSNS.2021.21.12.52

Prioritization-Based Model for Effective Adoption of Mobile Refactoring Techniques  

Alhubaishy, Abdulaziz (College of Computing and Informatics, Saudi Electronic University)
Publication Information
International Journal of Computer Science & Network Security / v.21, no.12spc, 2021 , pp. 375-382 More about this Journal
Abstract
The paper introduces a model for evaluating and prioritizing mobile quality attributes and refactoring techniques through the examination of their effectiveness during the mobile application development process. The astonishing evolution of software and hardware has increased the demand for techniques and best practices to overcome the many challenges related to mobile devices, such as those concerning device storage, network bandwidth, and energy consumption. A number of studies have investigated the influence of refactoring, leading to the enhancement of mobile applications and the overcoming of code issues as well as hardware issues. Furthermore, rapid and continuous mobile developments make it necessary for teams to apply effective techniques to produce reliable mobile applications and reduce time to market. Thus, we investigated the influence of various refactoring techniques on mobile applications to understand their effectiveness in terms of quality attributes. First, we extracted the most important mobile refactoring techniques and a set of quality attributes from the literature. Then, mobile application developers from nine mobile application teams were recruited to evaluate and prioritize these quality attributes and refactoring techniques for their projects. A prioritization-based model is examined that integrates the lightweight multi-criteria decision making method, called the best-worst method, with the process of refactoring within mobile applications. The results prove the applicability and suitability of adopting the model for the mobile development process in order to expedite application production while using well-defined procedures to select the best refactoring techniques. Finally, a variety of quality attributes are shown to be influenced by the adoption of various refactoring techniques.
Keywords
Refactoring Techniques; Quality Attributes; Multi-Criteria Decision Making Methods; Best-Worst Method;
Citations & Related Records
연도 인용수 순위
  • Reference
1 M. Fowler, "Refactoring: improving the design of existing code". Addison-Wesley Professional, 2018.
2 K. Stroggylos and D. Spinellis, "Refactoring-does it improve software quality?" in Fifth International Workshop on Software Quality (WoSQ'07: ICSE Workshops 2007). IEEE, 2007, pp. 10-10.
3 R. Wongpiang and P. Muenchaisri, "Selecting sequence of refactoring techniques usage for code changing using greedy algorithm," in 2013 IEEE 4th International Conference on Electronics Information and Emergency Communication. IEEE, 2013, pp. 160-164.
4 M. Mohammadi and J. Rezaei, "Bayesian best-worst method: A probabilistic group decision making model," Omega, vol. 96, p. 102075, 2020.   DOI
5 R. Morales, R. Saborido, F. Khomh, F. Chicano, and G. Antoniol, "Earmo: An energy-aware refactoring approach for mobile apps," IEEE Transactions on Software Engineering, vol. 44, no. 12, pp. 1176-1206, 2017.   DOI
6 J. Oliveira, M. Viggiato, M. F. Santos, E. Figueiredo, and H. Marques- Neto, "An empirical study on the impact of android code smells on resource usage." in SEKE, 2018, pp. 314-313.
7 S. Nikou, J. Mezei, and H. Bouwman, "Analytic hierarchy process (ahp) approach for selecting mobile service category (consumers' preferences)," in 2011 10th International Conference on Mobile Business. IEEE, 2011, pp. 119-128.
8 J. Rezaei, "Best-worst multi-criteria decision-making method," Omega, vol. 53, pp. 49-57, 2015.   DOI
9 J. Rezaei, "Best-worst multi-criteria decision-making method: Some properties and a linear model," Omega, vol. 64, pp. 126-130, 2016.   DOI
10 J. Rezaei, "Bwm solvers. solver linear bwm." [Online]. Available: https://bestworstmethod.com/software/
11 A. Aljuhani and A. Alhubaishy, "Incorporating a decision support approach within the agile mobile application development process," in 2020 3rd International Conference on Computer Applications & Information Security (ICCAIS). IEEE, 2020, pp. 1-6.
12 L. Zhao and J. H. Hayes, "Rank-based refactoring decision support: two studies," Innovations in Systems and Software Engineering, vol. 7, no. 3, p. 171, 2011.   DOI
13 T. Mens and T. Tourwe , "A survey of software refactoring," IEEE Transactions on software engineering, vol. 30, no. 2, pp. 126-139, 2004.   DOI
14 C. Abid, V. Alizadeh, M. Kessentini, T. d. N. Ferreira, and D. Dig, "30 years of software refactoring research: a systematic literature review," arXiv preprint arXiv:2007.02194, 2020.
15 K. O. Elish and M. Alshayeb, "A classification of refactoring methods based on software quality attributes," Arabian Journal for Science and Engineering, vol. 36, no. 7, pp. 1253-1267, 2011.   DOI
16 H. Omotunde, R. Ibrahim, M. Ahmed, R. Olanrewaju, N. Ibrahim, and H. Shah, "A framework to reduce redundancy in android test suite using refactoring," Indian Journal of Science and Technology, vol. 9, no. 46, pp. 1-7, 2016.
17 G. Hecht, "An approach to detect android antipatterns," in 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, vol. 2. IEEE, 2015, pp. 766-768.
18 G. Buyukozkan, "Determining the mobile commerce user requirements using an analytic approach," Computer Standards & Interfaces, vol. 31, no. 1, pp. 144-152, 2009.   DOI
19 W. F. Opdyke, "Refactoring: A program restructuring aid in designing object-oriented application frameworks," Ph.D. dissertation, PhD thesis, University of Illinois at Urbana-Champaign, 1992.
20 S. Nikou and J. Mezei, "Evaluation of mobile services and substantial adoption factors with analytic hierarchy process (ahp)," Telecommunications Policy, vol. 37, no. 10, pp. 915-929, 2013.   DOI
21 O. Yildirim and S. Peker, "Prioritizing use cases for development of mobile apps using ahp: A case study in to-do list apps," in International Conference on Mobile Web and Intelligent Information Systems. Springer, 2019, pp. 308-315.
22 T. L. Saaty, "How to make a decision: the analytic hierarchy process," European journal of operational research, vol. 48, no. 1, pp. 9-26, 1990.   DOI
23 L. Cruz and R. Abreu, "Using automatic refactoring to improve energy efficiency of android apps," arXiv preprint arXiv:1803.05889, 2018.
24 F. Palomba, D. Di Nucci, A. Panichella, A. Zaidman, and A. De Lucia, "On the impact of code smells on the energy consumption of mobile applications," Information and Software Technology, vol. 105, pp. 43- 55, 2019.   DOI
25 X. Mi, M. Tang, H. Liao, W. Shen, and B. Lev, "The state-of-the-art survey on integrations and applications of the best worst method in decision making: Why, what, what for and what's next?" Omega, vol. 87, pp. 205-225, 2019.   DOI
26 M.LinaresVasquez, S.Klock, C.McMillan, A.Sabane, D.Poshyvanyk, and Y.G. Gueheneuc, "Domain matters: bringing further evidence of the relationships among antipatterns, application domains, and quality-related metrics in java mobile apps," in Proceedings of the 22nd International Conference on Program Comprehension, 2014, pp. 232- 243.