A systematic literature review on Android-specific smells
Tài liệu tham khảo
Allix, 2016, Androzoo: Collecting millions of android apps for the research community, 468
Android, 2012
Android, 2017
Anon, 2022
Anon, 2022
Anwar, 2020, Towards greener android application development, 170
Anwar, 2019, Evaluating the impact of code smell refactoring on the energy consumption of android applications, 82
Ardito, 2020, Effectiveness of Kotlin vs. Java in android app development tasks, Inf. Softw. Technol., 127, 10.1016/j.infsof.2020.106374
Banerjee, 2017, Energypatch: Repairing resource leaks to improve energy-efficiency of android apps, IEEE Trans. Softw. Eng., 44, 470, 10.1109/TSE.2017.2689012
Banerjee, A., Chong, L.K., Chattopadhyay, S., Roychoudhury, A., 2014. Detecting energy bugs and hotspots in mobile apps. In: Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering. pp. 588–598.
Banerjee, 2016, Automated re-factoring of android apps to enhance energy-efficiency, 139
Bartel, 2012, Dexpler: converting android dalvik bytecode to jimple for static analysis with soot, 27
Bavota, 2015, An experimental investigation on the innate relationship between quality and refactoring, J. Syst. Softw., 107, 10.1016/j.jss.2015.05.024
Boutaib, 2021, Code smell detection and identification in imbalanced environments, Expert Syst. Appl., 166, 10.1016/j.eswa.2020.114076
Brown, 2010, Managing technical debt in software-reliant systems, 47
Campbell, 2013
Carette, 2017, Investigating the energy impact of android smells, 115
Carvalho, 2019, An empirical catalog of code smells for the presentation layer of android apps, Empir. Softw. Eng., 24, 3546, 10.1007/s10664-019-09768-9
Chan-Jong-Chu, 2020, Investigating the correlation between performance scores and energy consumption of mobile web apps, 190
Chen, 2020, Unblind your apps: Predicting natural-language labels for mobile gui components by deep learning, 322
Chester, 2017, M-perm: A lightweight detector for android permission gaps, 217
Couto, 2020, Energy refactorings for android in the large and in the wild, 217
Cruz, 2017, Performance-based guidelines for energy efficient mobile applications, 46
Cruz, 2019, Improving energy efficiency through automatic refactoring, J. Softw. Eng. Res. Dev., 7, 10.5753/jserd.2019.17
Cruz, 2017, Leafactor: Improving energy efficiency of android apps via automatic refactoring, 205
Das, 2016, A quantitative and qualitative investigation of performance-related commits in android apps, 443
Das, 2020, Characterizing the evolution of statically-detectable performance issues of android apps, Empir. Softw. Eng., 25, 2748, 10.1007/s10664-019-09798-3
De Stefano, 2020, cASpER: A plug-in for automated code smell detection and refactoring, 1
Dennis, 2017, P-lint: A permission smell detector for android applications, 219
Desnos, 2012, Android: Static analysis using similarity distance, 5394
Di Nucci, 2017, Petra: a software-based tool for estimating the energy profile of android applications, 3
Di Nucci, 2017, Software-based energy profiling of android apps: Simple, efficient and reliable?, 103
Fang, 2020, Functional code clone detection with syntax and semantics fusion learning, 516
Fatima, I., Anwar, H., Pfahl, D., Qamar, U., 2020. Detection and Correction of Android-specific Code Smells and Energy Bugs: An Android Lint Extension. In: QuASoQ@ APSEC. pp. 71–78.
Flauzino, 2018, Are you still smelling it? A comparative study between Java and Kotlin language, 23
Fowler, 1999
Gadient, 2019, Security code smells in android ICC, Empir. Softw. Eng., 24, 3046, 10.1007/s10664-018-9673-y
Gadient, 2020, Web apis in android through the lens of security, 13
Gao, 2019, Teccd: A tree embedding approach for code clone detection, 145
Gattal, 2021, Exploiting the progress of OO refactoring tools with Android code smells: RAndroid, a plugin for Android studio, 1580
Ghafari, 2017, Security smells in android, 121
Ghari, S., Hadian, M., Rasolroveicy, M., Fokaefs, M., 2019. A multi-dimensional quality analysis of Android applications. In: Proceedings of the 29th Annual International Conference on Computer Science and Software Engineering. pp. 34–43.
Goaër, 2020, Enforcing green code with android lint, 85
Góis Mateus, 2019, An empirical study on quality of Android applications written in Kotlin language, Empir. Softw. Eng., 24, 3356, 10.1007/s10664-019-09727-4
Grano, G., Di Sorbo, A., Mercaldo, F., Visaggio, C.A., Canfora, G., Panichella, S., 2017. Android apps and user feedback: a dataset for software evolution and quality improvement. In: Proceedings of the 2nd ACM SIGSOFT International Workshop on App Market Analytics. pp. 8–11.
Gupta, 2019, Android smells detection using ML algorithms with static code metrics, 64
Habchi, 2019
Habchi, 2019, The rise of android code smells: Who is to blame?, 445
Habchi, 2021, Android code smells: From introduction to refactoring, J. Syst. Softw., 177, 10.1016/j.jss.2021.110964
Habchi, 2019, On the survival of android code smells in the wild, 87
Hamdi, 2021, A longitudinal study of the impact of refactoring in android applications, Inf. Softw. Technol., 140, 10.1016/j.infsof.2021.106699
Hecht, 2015, An approach to detect android antipatterns, 766
Hecht, 2015, Tracking the software quality of android applications along their evolution (t), 236
Hecht, 2016, An empirical study of the performance impacts of android code smells, 59
Hecht, 2015, Detecting antipatterns in android apps, 148
Iannone, 2020, Refactoring android-specific energy smells: A plugin for android studio, 451
Ignatov, A., Timofte, R., Chou, W., Wang, M.W.K., Hartley, T., Gool, L.V., 2018. AI Benchmark: Running Deep Neural Networks on Android Smartphones. In: Proceedings of the European Conference on Computer Vision, Vol. 11133. ECCV.
Jiang, 2014, Distance metric based divergent change bad smell detection and refactoring scheme analysis, Int. J. Innovative Comput. Inf. Control, 10
Kaur, 2019, How does object-oriented code refactoring influence software quality? Research landscape and challenges, J. Syst. Softw., 157, 10.1016/j.jss.2019.110394
Kessentini, 2017, Detecting android smells using multi-objective genetic programming, 122
Khan, 2021, Measuring power consumption in mobile devices for energy sustainable app development: A comparative study and challenges, Sustain. Comput.: Inform. Syst., 31
Khan, 2021, Wake lock leak detection in android apps using multi-layer perceptron, Electronics, 10, 2211, 10.3390/electronics10182211
Khomh, 2009, An exploratory study of the impact of code smells on software change-proneness, 75
Kitchenham, 2007
Kuutila, 2021, What do we know about time pressure in software development?, IEEE Softw., 38, 10.1109/MS.2020.3020784
Lacerda, 2020, Code smells and refactoring: A tertiary systematic review of challenges and observations, J. Syst. Softw., 167, 10.1016/j.jss.2020.110610
Lam, P., Bodden, E., Lhoták, O., Hendren, L., 2011. The Soot framework for Java program analysis: a retrospective. In: Cetus Users and Compiler Infastructure Workshop. CETUS 2011, pp. 1–43.
Lei, 2022, Deep learning application on code clone detection: A review of current knowledge, J. Syst. Softw., 184, 10.1016/j.jss.2021.111141
Li, 2017, Static analysis of android apps: A systematic literature review, Inf. Softw. Technol., 88, 67, 10.1016/j.infsof.2017.04.001
Li, D., Halfond, W.G., 2014. An investigation into energy-saving programming practices for android smartphone app development. In: Proceedings of the 3rd International Workshop on Green and Sustainable Software. pp. 46–53.
Lin, 2015, Study and refactoring of android asynchronous programming (t), 224
Lin, 2014, Retrofitting concurrency for android applications through refactoring, 341
Liu, 2017, NavyDroid: detecting energy inefficiency problems for smartphone applications, 1
Liu, 2014, Characterizing and detecting performance bugs for smartphone applications, 1013
Liu, 2014, Greendroid: Automated diagnosis of energy inefficiency for smartphone applications, IEEE Trans. Softw. Eng., 40, 911, 10.1109/TSE.2014.2323982
Lyu, 2019, Quantifying the performance impact of SQL antipatterns on mobile applications, 53
Lyu, 2018, Remove rats from your code: automated optimization of resource inefficient database writes for mobile applications, 310
Maia, 2020, E-debitum: managing software energy debt, 170
Maiga, 2012, Smurf: A svm-based incremental anti-pattern detection approach, 466
Mao, 2020, Droidlens: Robust and fine-grained detection for android code smells, 161
Marimuthu, 2021, Energy diagnosis of android applications: A thematic taxonomy and survey, ACM Comput. Surv., 53, 1
Marinescu, 2004, Detection strategies: Metrics-based rules for detecting design flaws, 350
Martin, 2018
Martins, J., Bezerra, C., Uchôa, A., Garcia, A., 2021. How do Code Smell Co-occurrences Removal Impact Internal Quality Attributes? A Developers’ Perspective. In: Brazilian Symposium on Software Engineering. pp. 54–63.
Mazuera-Rozo, 2020, Investigating types and survivability of performance bugs in mobile apps, Empir. Softw. Eng., 25, 10.1007/s10664-019-09795-6
Morales, 2018, Efficient refactoring scheduling based on partial order reduction, J. Syst. Softw., 145, 10.1016/j.jss.2018.07.076
Morales, 2017, Earmo: An energy-aware refactoring approach for mobile apps, IEEE Trans. Softw. Eng., 44, 1176, 10.1109/TSE.2017.2757486
Oliveira, 2020, On the adoption of Kotlin on android development: A triangulation study, 206
Oliveira, 2018, An empirical study on the impact of android code smells on resource usage., 313
Opdyke, 1992
Ouni, 2015, Improving multi-objective code-smells correction using development history, J. Syst. Softw., 105, 10.1016/j.jss.2015.03.040
Palomba, 2013, Detecting bad smells in source code using change history information, 268
Palomba, 2014, Mining version histories for detecting code smells, IEEE Trans. Softw. Eng., 41, 462, 10.1109/TSE.2014.2372760
Palomba, 2017, Lightweight detection of android-specific code smells: The adoctor project, 487
Palomba, 2019, On the impact of code smells on the energy consumption of mobile applications, Inf. Softw. Technol., 105, 10.1016/j.infsof.2018.08.004
Pawlak, 2016, Spoon: A library for implementing analyses and transformations of java source code, Softw. - Pract. Exp., 46, 1155, 10.1002/spe.2346
Peruma, 2019, A preliminary study of android refactorings, 148
Prestat, 2022, An empirical study of android behavioural code smells detection, Empir. Softw. Eng., 27, 1, 10.1007/s10664-022-10212-8
Rahman, 2019, The seven sins: Security smells in infrastructure as code scripts, 164
Rahman, 2021, Security smells in ansible and chef scripts: A replication study, ACM Trans. Softw. Eng. Methodol., 30, 1, 10.1145/3408897
Rahman, 2021, Different kind of smells: Security smells in infrastructure as code scripts, IEEE Secur. Priv., 19, 33, 10.1109/MSEC.2021.3065190
Rasool, 2020, Recovering android bad smells from android applications, Arab. J. Sci. Eng., 45, 3289, 10.1007/s13369-020-04365-1
Reimann, J., 2014. A Tool-Supported Quality Smell Catalogue For Android Developers. In: Proc. of the Conference ….
Reimann, 2013, Quality-aware refactoring for early detection and resolution of energy deficiencies, 321
Rubin, 2019, Sniffing android code smells: an association rules mining-based approach, 123
Salehie, 2006, A metric-based heuristic framework to detect object-oriented design flaws, 159
Scoccia, 2019, An empirical history of permission requests and mistakes in open source android apps, 597
Sharma, 2021, Code smell detection by deep direct-learning and transfer-learning, J. Syst. Softw., 176, 10.1016/j.jss.2021.110936
Sharma, 2016, Designite: A software design quality assessment tool, 1
Sharma, 2018, A survey on software smells, J. Syst. Softw., 138, 10.1016/j.jss.2017.12.034
Shoenberger, 2017, On the use of smelly examples to detect code smells in JavaScript, 20
Silva, 2020, KNN applied to PDG for source code similarity classification, 471
Sobrinho, 2021, A systematic literature review on bad smells-5 W’s: Which, when, what, who, where, IEEE Trans. Softw. Eng., 47, 10.1109/TSE.2018.2880977
Soh, 2016, Do code smells impact the effort of different maintenance programming activities?, 393
Suryanarayana, 2014
Visser, 2004, Test input generation with Java PathFinder, 97
Wang, 2016, E-greenDroid: effective energy inefficiency analysis for android applications, 71
Wang, 2017, CCSharp: An efficient three-phase code clone detector using modified PDGs, 100
Wohlin, C., 2014. Guidelines for snowballing in systematic literature studies and a replication in software engineering. In: Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering. pp. 1–10.
Wu, 2021, Enhancing fidelity of description in android apps with category-based common permissions, IEEE Access, 9, 105493, 10.1109/ACCESS.2021.3100118
Wu, 2020, FCDP: Fidelity calculation for description-to-permissions in android apps, IEEE Access, 9, 1062, 10.1109/ACCESS.2020.3047019
Xu, 2018, State-taint analysis for detecting resource bugs, Sci. Comput. Program., 162, 93, 10.1016/j.scico.2017.06.010
Yamashita, 2013, To what extent can maintenance problems be predicted by code smell detection? -An empirical study, Inf. Softw. Technol., 55, 10.1016/j.infsof.2013.08.002
Yang, 2021, Don’t do that! hunting down visual design smells in complex uis against design guidelines, 761
Yu, 2021, A novel tree-based neural network for android code smells detection, 738
Zhang, 2019, A novel neural source code representation based on abstract syntax tree, 783