{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,18]],"date-time":"2026-05-18T10:09:20Z","timestamp":1779098960464,"version":"3.51.4"},"reference-count":96,"publisher":"Institute of Electrical and Electronics Engineers (IEEE)","issue":"12","license":[{"start":{"date-parts":[[2018,12,1]],"date-time":"2018-12-01T00:00:00Z","timestamp":1543622400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/ieeexplore.ieee.org\/Xplorehelp\/downloads\/license-information\/IEEE.html"}],"funder":[{"DOI":"10.13039\/501100000038","name":"Natural Sciences and Engineering Research Council of Canada","doi-asserted-by":"publisher","id":[{"id":"10.13039\/501100000038","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100003141","name":"Consejo Nacional de Ciencia y Tecnolog\u00eda, M\u00e9xico","doi-asserted-by":"publisher","award":["CONACyT"],"award-info":[{"award-number":["CONACyT"]}],"id":[{"id":"10.13039\/501100003141","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IIEEE Trans. Software Eng."],"published-print":{"date-parts":[[2018,12,1]]},"DOI":"10.1109\/tse.2017.2757486","type":"journal-article","created":{"date-parts":[[2017,9,28]],"date-time":"2017-09-28T18:13:01Z","timestamp":1506622381000},"page":"1176-1206","source":"Crossref","is-referenced-by-count":62,"title":["EARMO: An Energy-Aware Refactoring Approach for Mobile Apps"],"prefix":"10.1109","volume":"44","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-1350-0560","authenticated-orcid":false,"given":"Rodrigo","family":"Morales","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0944-5941","authenticated-orcid":false,"given":"Ruben","family":"Saborido","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5704-4173","authenticated-orcid":false,"given":"Foutse","family":"Khomh","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1259-2990","authenticated-orcid":false,"given":"Francisco","family":"Chicano","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Giuliano","family":"Antoniol","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"263","reference":[{"key":"ref73","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2014.32"},{"key":"ref72","doi-asserted-by":"publisher","DOI":"10.1109\/MSR.2015.19"},{"key":"ref71","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2017.49"},{"key":"ref70","author":"yin","year":"2002","journal-title":"Case Study Research Design and Methods - Third Edition"},{"key":"ref76","author":"verloop","year":"2013","journal-title":"Code Smells in the Mobile Applications Domain"},{"key":"ref77","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2007.4362679"},{"key":"ref39","article-title":"A tutorial\n on the performance assessment of stochastic multiobjective optimizers","author":"knowles","year":"2006"},{"key":"ref74","doi-asserted-by":"crossref","first-page":"331","DOI":"10.1145\/2642937.2642965","article-title":"Recommendation system for software refactoring using\n innovization and interactive dynamic optimization","author":"mkaouer","year":"2014","journal-title":"Proc 29th ACM\/IEEE Int Conf Automated Softw Eng"},{"key":"ref38","doi-asserted-by":"publisher","DOI":"10.1016\/j.ejor.2014.11.041"},{"key":"ref75","doi-asserted-by":"crossref","first-page":"232","DOI":"10.1145\/2597008.2597144","article-title":"Domain matters: Bringing further evidence of the relationships\n among anti-patterns, application domains, and quality-related metrics in Java mobile apps","author":"linares-v","year":"2014","journal-title":"Proc of the Int Conf on Program Comprehension"},{"key":"ref78","article-title":"A\n tool-supported quality smell catalogue for android developers","volume":"34","author":"reimann","year":"2014","journal-title":"Softwaretechnik-Trends"},{"key":"ref79","doi-asserted-by":"crossref","first-page":"579","DOI":"10.1007\/s10270-012-0243-2","article-title":"On\n the reuse and recommendation of model refactoring specifications","volume":"12","author":"reimann","year":"2013","journal-title":"Softw Syst Model"},{"key":"ref33","author":"brown","year":"1998","journal-title":"Anti Patterns Refactoring Software Architectures and Projects in Crisis"},{"key":"ref32","article-title":"Energy refactorings","author":"gottschalk","year":"2013"},{"key":"ref31","first-page":"24","article-title":"Finding the best compromise between design quality and testing effort during refactoring","author":"morales","year":"2016","journal-title":"Proc IEEE 23rd Int Conf Softw Anal Evol Reengineering"},{"key":"ref30","first-page":"168","author":"mkaouer","year":"2014","journal-title":"A Robust Multi-objective Approach for Software Refactoring under Uncertainty"},{"key":"ref37","article-title":"On the impact of sampling frequency on software energy\n measurements","volume":"3","author":"saborido","year":"2015","journal-title":"PeerJ PrePrints"},{"key":"ref36","doi-asserted-by":"publisher","DOI":"10.1109\/ICSME.2014.34"},{"key":"ref35","article-title":"The atom LEAP platform for energy-efficient embedded computing","author":"singh","year":"2010","journal-title":"Center for Embedded Netw Sens UCLA Center for Embedded Netw Sens"},{"key":"ref34","author":"fowler","year":"1999","journal-title":"Refactoring &#x2014; Improving the Design of Existing Code"},{"key":"ref60","first-page":"1","article-title":"PTIDEJ: Promoting patterns with patterns","author":"gu\u00e9h\u00e9neuc","year":"2005","journal-title":"1st ECOOP workshop on Building a System using Patterns"},{"key":"ref62","doi-asserted-by":"publisher","DOI":"10.1016\/j.advengsoft.2011.05.014"},{"key":"ref61","doi-asserted-by":"publisher","DOI":"10.1145\/2379776.2379787"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1007\/s10515-011-0098-8"},{"key":"ref63","doi-asserted-by":"publisher","DOI":"10.1109\/4235.797969"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2010.34"},{"key":"ref64","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2015.03.040"},{"key":"ref65","author":"miettinen","year":"2012","journal-title":"Nonlinear Multiobjective Optimization"},{"key":"ref29","first-page":"126","author":"mahouachi","year":"2013","journal-title":"Search-Based Refactoring Detection Using Software Metrics Variation"},{"key":"ref66","first-page":"565","article-title":"How does code obfuscation impact energy\n usage?","volume":"28","author":"sahin","year":"2016","journal-title":"Journal of Software: Evolution and Process"},{"key":"ref67","doi-asserted-by":"publisher","DOI":"10.1109\/ICST.2015.7102585"},{"key":"ref68","first-page":"139","article-title":"Automated re-factoring of android apps to enhance energy-efficiency","author":"banerjee","year":"0","journal-title":"Proceedings of the International Workshop on Mobile Software Engineering and Systems"},{"key":"ref2","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2012.104"},{"key":"ref69","year":"2017"},{"key":"ref1","doi-asserted-by":"publisher","DOI":"10.1145\/1995376.1995383"},{"key":"ref20","doi-asserted-by":"publisher","DOI":"10.1109\/ICPC.2011.22"},{"key":"ref22","doi-asserted-by":"publisher","DOI":"10.1109\/32.979986"},{"key":"ref21","doi-asserted-by":"publisher","DOI":"10.1145\/1276958.1277176"},{"key":"ref24","article-title":"Exact search-space size for the\n refactoring scheduling problem","author":"morales","year":"2017","journal-title":"Automated Software Engineering"},{"key":"ref23","author":"bourque","year":"2014","journal-title":"Guide to the Software Engineering Body of Knowledge Version 3 0 - SWEBOK"},{"key":"ref26","doi-asserted-by":"publisher","DOI":"10.1145\/1143997.1144315"},{"key":"ref25","doi-asserted-by":"publisher","DOI":"10.1109\/CSMR.2006.49"},{"key":"ref50","year":"2017"},{"key":"ref51","year":"2017"},{"key":"ref95","doi-asserted-by":"publisher","DOI":"10.1145\/2739480.2754752"},{"key":"ref94","first-page":"143","article-title":"Optimizing energy consumption of GUIs in android apps: A\n multi-objective approach","author":"linares-v","year":"2015","journal-title":"Proceedings of the Joint Meeting on Foundations of Software Engineering"},{"key":"ref93","doi-asserted-by":"publisher","DOI":"10.1145\/2568225.2568321"},{"key":"ref92","author":"pinto","year":"2015","journal-title":"A Refactoring Approach to Improve Energy Consumption of Parallel Software Systems"},{"key":"ref91","doi-asserted-by":"crossref","first-page":"588","DOI":"10.1145\/2635868.2635871","article-title":"Detecting energy\n bugs and hotspots in mobile apps","author":"banerjee","year":"2014","journal-title":"Proc Sixth ACM SIGSOFT Int'l Symp Foundations of Software Eng"},{"key":"ref90","doi-asserted-by":"publisher","DOI":"10.1109\/GREENS.2012.6224257"},{"key":"ref96","first-page":"503","article-title":"SEEDS: A\n software engineer's energy-optimization decision support framework","author":"manotas","year":"0","journal-title":"Proc 36th Int Conf Softw Eng"},{"key":"ref59","first-page":"193","article-title":"Genetic algorithms, tournament selection, and the effects of noise","volume":"9","author":"miller","year":"1995","journal-title":"Complex Syst"},{"key":"ref58","article-title":"Refactoring object-oriented frameworks","author":"opdyke","year":"1992"},{"key":"ref57","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2008.48"},{"key":"ref56","doi-asserted-by":"crossref","first-page":"301","DOI":"10.1145\/1035292.1029002","article-title":"Recovering binary class relationships: Putting icing on the UML cake","volume":"39","author":"gueheneuc","year":"2004","journal-title":"ACM SIGPLAN Notices"},{"key":"ref55","doi-asserted-by":"publisher","DOI":"10.1145\/2597073.2597097"},{"key":"ref54","year":"2017"},{"key":"ref53","article-title":"Exploring methods for evaluating group differences on the NSSE and\n other surveys: Are the t-test and Cohen's d indices the most appropriate choices","author":"romano","year":"2006","journal-title":"Annual Meeting Southern Assocation for Institutional Research"},{"key":"ref52","doi-asserted-by":"publisher","DOI":"10.4324\/9781315806730"},{"key":"ref10","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2015.46"},{"key":"ref40","author":"deb","year":"2001","journal-title":"Multi-Objective Optimization Using Evolutionary Algorithms"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1109\/QUATIC.2010.16"},{"key":"ref12","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2009.50"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2004.1357820"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1109\/CSMR.2008.4493342"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1145\/2652524.2652538"},{"key":"ref16","first-page":"717","article-title":"Investigation\n for software power consumption of code refactoring techniques","author":"park","year":"2014","journal-title":"Proc Int Conf on Software Eng Knowledge Eng"},{"key":"ref82","article-title":"Hybrid HDFS: Decreasing energy consumption\n and speeding up hadoop using SSDs","volume":"3","author":"polato","year":"2015","journal-title":"PeerJ PrePrints"},{"key":"ref17","first-page":"145","article-title":"Evaluation of the impact of code\n refactoring on embedded software efficiency","author":"da silva","year":"2010","journal-title":"Proceedings of the 1st Workshop de Sistemas Embarcados"},{"key":"ref81","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2015.7332477"},{"key":"ref18","first-page":"59","article-title":"An\n empirical study of the performance impacts of android code smells","author":"hecht","year":"0","journal-title":"Proceedings of the International Workshop on Mobile Software Engineering and Systems"},{"key":"ref84","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2014.27"},{"key":"ref19","doi-asserted-by":"publisher","DOI":"10.1145\/2463372.2463554"},{"key":"ref83","article-title":"What do programmers know about the\n energy consumption of software?","volume":"3","author":"pang","year":"2015","journal-title":"PeerJ PrePrints"},{"key":"ref80","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2017.7884614"},{"key":"ref89","doi-asserted-by":"publisher","DOI":"10.1109\/SANER.2016.64"},{"key":"ref4","doi-asserted-by":"publisher","DOI":"10.1109\/32.895984"},{"key":"ref3","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.1994.296790"},{"key":"ref6","year":"2016"},{"key":"ref5","doi-asserted-by":"publisher","DOI":"10.1007\/s40568-013-0030-4"},{"key":"ref85","doi-asserted-by":"publisher","DOI":"10.1145\/2593743.2593749"},{"key":"ref8","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2013.38"},{"key":"ref49","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2016.05.042"},{"key":"ref86","doi-asserted-by":"publisher","DOI":"10.1145\/2168836.2168841"},{"key":"ref7","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-011-9171-y"},{"key":"ref87","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2013.6606555"},{"key":"ref88","first-page":"2","article-title":"Mining energy-greedy API usage patterns in android apps: An empirical study","author":"linares-v","year":"0","journal-title":"Proc Working Conf Mining Software Repositories"},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1109\/ESEM.2009.5314231"},{"key":"ref46","doi-asserted-by":"publisher","DOI":"10.1145\/2593743.2593750"},{"key":"ref45","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2016.03.031"},{"key":"ref48","year":"2017"},{"key":"ref47","doi-asserted-by":"publisher","DOI":"10.1109\/SBESC.2013.39"},{"key":"ref42","first-page":"95","article-title":"SPEA2:\n Improving the strength pareto evolutionary algorithm for multiobjective optimization","author":"zitzler","year":"2002","journal-title":"Proc Evol Methods Design Optimization Control Applicat Ind Problems (EUROGEN &#x2019;01) Barcelona Spain Inte Center Numerical Methods Eng (CIMNE)"},{"key":"ref41","doi-asserted-by":"publisher","DOI":"10.1109\/4235.996017"},{"key":"ref44","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-70928-2_13"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1002\/int.20358"}],"container-title":["IEEE Transactions on Software Engineering"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/32\/8571058\/08052533.pdf?arnumber=8052533","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,1,27]],"date-time":"2022-01-27T03:09:07Z","timestamp":1643252947000},"score":1,"resource":{"primary":{"URL":"https:\/\/ieeexplore.ieee.org\/document\/8052533\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,12,1]]},"references-count":96,"journal-issue":{"issue":"12"},"URL":"https:\/\/doi.org\/10.1109\/tse.2017.2757486","relation":{},"ISSN":["0098-5589","1939-3520","2326-3881"],"issn-type":[{"value":"0098-5589","type":"print"},{"value":"1939-3520","type":"electronic"},{"value":"2326-3881","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,12,1]]}}}