{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,8]],"date-time":"2026-05-08T13:20:05Z","timestamp":1778246405594,"version":"3.51.4"},"reference-count":26,"publisher":"Springer Science and Business Media LLC","issue":"5","license":[{"start":{"date-parts":[[2026,5,8]],"date-time":"2026-05-08T00:00:00Z","timestamp":1778198400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2026,5,8]],"date-time":"2026-05-08T00:00:00Z","timestamp":1778198400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/100009473","name":"Universidad de M\u00e1laga","doi-asserted-by":"crossref","id":[{"id":"10.13039\/100009473","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2026,9]]},"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>Mobile device applications (apps) are complex because they rely on integrating multiple third-party libraries (TPLs). Yet, TPLs ease app development by offering implementations of specific functionality. For example, app developers often use advertising libraries to generate revenue, integrate social networking libraries to simplify login, or include crash reporting libraries to monitor\/report crashes in their apps. However, there are multiple TPLs with similar functionalities from which to choose, and developers often cannot foresee all the consequences of using these libraries in their apps. The sizes of apps grow with the addition and usage of TPLs, and so does the number of required permissions and resource consumption. Thus, TPLs may degrade the quality of apps and developers need help measuring and comparing them. We propose EQuAT, an approach for Evaluating Quality Attributes of TPLs\u00a0that eases the comparison of TPLs. EQuAT\u00a0takes as input minimal apps that integrate TPLs and playable scenarios to simulate user interaction while exercising a particular functionality of the included TPL. By collecting quality metrics and comparing them using plots, we provide app developers with a systematic approach to rank TPLs based on their preferences. We show how EQuAT\u00a0 helps developers make informed decisions about which libraries to integrate into their apps by validating them against nine TPLs across three categories.<\/jats:p>","DOI":"10.1007\/s10664-026-10872-w","type":"journal-article","created":{"date-parts":[[2026,5,8]],"date-time":"2026-05-08T12:55:09Z","timestamp":1778244909000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Simply the best \u2013 A systematic evaluation approach for third-party libraries based on mobile app quality attributes"],"prefix":"10.1007","volume":"31","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-0944-5941","authenticated-orcid":false,"given":"Rub\u00e9n","family":"Saborido","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"R\u00e9my","family":"Raes","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Rodrigo","family":"Morales","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Romain","family":"Rouvoy","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Foutse","family":"Khomh","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yann-Ga\u00ebl","family":"Gu\u00e9h\u00e9neuc","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2026,5,8]]},"reference":[{"key":"10872_CR1","unstructured":"Cliff N (1996) Ordinal Methods for Behavioral Data Analysis. Erlbaum. https:\/\/books.google.ca\/books?id=bIJFvgAACAAJ"},{"key":"10872_CR2","doi-asserted-by":"crossref","unstructured":"de Oliveira Neto FG, Torkar R, Feldt R, Gren L, Furia CA, Huang Z (2019) Evolution of statistical analysis in empirical software engineering research: Current state and steps forward. J Syst Softw 156:246\u2013267. https:\/\/doi.org\/10.1016\/j.jss.2019.07.002, https:\/\/www.sciencedirect.com\/science\/article\/pii\/S0164121219301451","DOI":"10.1016\/j.jss.2019.07.002"},{"key":"10872_CR3","doi-asserted-by":"crossref","unstructured":"Di\u00a0Nucci D, Palomba F, Prota A, Panichella A, Zaidman A, De\u00a0Lucia A (2017) Software-Based Energy Profiling of Android Apps: Simple, Efficient and Reliable? In: Proceedings of the 24th International Conference on Software Analysis, Evolution and Reengineering (SANER), Klagenfurt, Austria, pp 103\u2013114","DOI":"10.1109\/SANER.2017.7884613"},{"key":"10872_CR4","doi-asserted-by":"publisher","unstructured":"Du X, Yang Z, Lin J, Cao Y, Yang M (2024) Withdrawing is believing? detecting inconsistencies between withdrawal choices and third-party data collections in mobile apps. In: 2024 IEEE Symposium on Security and Privacy (SP), IEEE Computer Society, Los Alamitos, CA, USA, pp 14\u201314. https:\/\/doi.org\/10.1109\/SP54263.2024.00014, https:\/\/doi.ieeecomputersociety.org\/10.1109\/SP54263.2024.00014","DOI":"10.1109\/SP54263.2024.00014"},{"issue":"10","key":"10872_CR5","doi-asserted-by":"publisher","first-page":"57","DOI":"10.1145\/1297105.1297033","volume":"42","author":"A Georges","year":"2007","unstructured":"Georges A, Buytaert D, Eeckhout L (2007) Statistically rigorous java performance evaluation. SIGPLAN Not 42(10):57\u201376. https:\/\/doi.org\/10.1145\/1297105.1297033","journal-title":"SIGPLAN Not"},{"key":"10872_CR6","doi-asserted-by":"publisher","unstructured":"Gorla A, Tavecchia I, Gross F, Zeller A (2014) Checking App Behavior Against App Descriptions. In: Proceedings of the 36th International Conference on Software Engineering, ACM, New York, NY, USA, ICSE 2014, pp 1025\u20131035. https:\/\/doi.org\/10.1145\/2568225.2568276","DOI":"10.1145\/2568225.2568276"},{"key":"10872_CR7","doi-asserted-by":"crossref","unstructured":"Gui J, Mcilroy S, Nagappan M, Halfond WGJ (2015) Truth in Advertising: The Hidden Cost of Mobile Ads for Software Developers. In: Proceedings of the 37th International Conference on Software Engineering (ICSE)","DOI":"10.1109\/ICSE.2015.32"},{"key":"10872_CR8","doi-asserted-by":"publisher","unstructured":"Hindle A (2016) Green software engineering: The curse of methodology. In: Leaders of Tomorrow Symposium: Future of Software Engineering, FOSE@SANER 2016, Osaka, Japan, March 14, 2016, pp 46\u201355. https:\/\/doi.org\/10.1109\/SANER.2016.60","DOI":"10.1109\/SANER.2016.60"},{"key":"10872_CR9","volume-title":"Nonparametric Statistical Methods","author":"M Hollander","year":"1973","unstructured":"Hollander M, Wolfe DA (1973) Nonparametric Statistical Methods. John Wiley & Sons, New York"},{"issue":"4","key":"10872_CR10","doi-asserted-by":"publisher","first-page":"2272","DOI":"10.1109\/TSE.2022.3215628","volume":"49","author":"J Huang","year":"2023","unstructured":"Huang J, Xue B, Jiang J, You W, Liang B, Wu J, Wu Y (2023) Scalably detecting third-party android libraries with two-stage bloom filtering. IEEE Trans Software Eng 49(4):2272\u20132284. https:\/\/doi.org\/10.1109\/TSE.2022.3215628","journal-title":"IEEE Trans Software Eng"},{"key":"10872_CR11","doi-asserted-by":"publisher","unstructured":"Larios\u00a0Vargas E, Aniche M, Treude C, Bruntink M, Gousios G (2020) Selecting third-party libraries: the practitioners\u2019 perspective. In: Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Association for Computing Machinery, New York, NY, USA, ESEC\/FSE 2020, p 245\u2013256. https:\/\/doi.org\/10.1145\/3368089.3409711","DOI":"10.1145\/3368089.3409711"},{"key":"10872_CR12","doi-asserted-by":"publisher","unstructured":"Li M, Wang W, Wang P, Wang S, Wu D, Liu J, Xue R, Huo W (2017) LibD: scalable and precise third-party library detection in android markets. In: Proceedings of the 39th International Conference on Software Engineering, ICSE 2017, Buenos Aires, Argentina, May 20-28, 2017, pp 335\u2013346. https:\/\/doi.org\/10.1109\/ICSE.2017.38, http:\/\/doi.ieeecomputersociety.org\/10.1109\/ICSE.2017.38","DOI":"10.1109\/ICSE.2017.38"},{"key":"10872_CR13","doi-asserted-by":"publisher","unstructured":"Linares-V\u00e1squez M, Bavota G, Bernal-C\u00e1rdenas C, Oliveto R, Di\u00a0Penta M, Poshyvanyk D (2014) Mining Energy-greedy API Usage Patterns in Android Apps: An Empirical Study. In: Proceedings of the 11th Working Conference on Mining Software Repositories, ACM, New York, NY, USA, MSR 2014, pp 2\u201311. https:\/\/doi.org\/10.1145\/2597073.2597085, http:\/\/doi.acm.org\/10.1145\/2597073.2597085","DOI":"10.1145\/2597073.2597085"},{"key":"10872_CR14","doi-asserted-by":"crossref","unstructured":"Lyu Y, Gui J, Wan M, Halfond WGJ (2017) An Empirical Study of Local Database Usage in Android Applications. In: Proceedings of the International Conference on Software Maintenance and Evolution (ICSME)","DOI":"10.1109\/ICSME.2017.75"},{"key":"10872_CR15","doi-asserted-by":"publisher","unstructured":"Ma Z, Wang H, Guo Y, Chen X (2016) LibRadar: Fast and Accurate Detection of Third-party Libraries in Android Apps. In: Proceedings of the 38th International Conference on Software Engineering Companion, ACM, New York, NY, USA, ICSE \u201916, pp 653\u2013656. https:\/\/doi.org\/10.1145\/2889160.2889178, http:\/\/doi.acm.org\/10.1145\/2889160.2889178","DOI":"10.1145\/2889160.2889178"},{"key":"10872_CR16","doi-asserted-by":"publisher","unstructured":"Minelli R, Lanza M (2013) Software Analytics for Mobile Applications-Insights & Lessons Learned. In: 17th European Conference on Software Maintenance and Reengineering, CSMR 2013, Genova, Italy, March 5-8, 2013, pp 144\u2013153. https:\/\/doi.org\/10.1109\/CSMR.2013.24","DOI":"10.1109\/CSMR.2013.24"},{"key":"10872_CR17","unstructured":"Mohan J, Purohith D, Halpern M, Chidambaram V, Reddi VJ (2017) Storage on Your SmartPhone Uses More Energy Than You Think. In: 9th USENIX Workshop on Hot Topics in Storage and File Systems, HotStorage 2017, Santa Clara, CA, USA, July 10-11, 2017. https:\/\/www.usenix.org\/conference\/hotstorage17\/program\/presentation\/mohan"},{"issue":"12","key":"10872_CR18","doi-asserted-by":"publisher","first-page":"1176","DOI":"10.1109\/TSE.2017.2757486","volume":"44","author":"R Morales","year":"2018","unstructured":"Morales R, Saborido R, Khomh F, Chicano F, Antoniol G (2018) Earmo: An energy-aware refactoring approach for mobile apps. IEEE Trans Software Eng 44(12):1176\u2013120. https:\/\/doi.org\/10.1109\/TSE.2017.2757486","journal-title":"IEEE Trans Software Eng"},{"key":"10872_CR19","doi-asserted-by":"publisher","unstructured":"Paci F, Pizzoli J, Zannone N (2023) A comprehensive study on third-party user tracking in mobile applications. In: Proceedings of the 18th International Conference on Availability, Reliability and Security, Association for Computing Machinery, New York, NY, USA, ARES \u201923. https:\/\/doi.org\/10.1145\/3600160.3605079","DOI":"10.1145\/3600160.3605079"},{"key":"10872_CR20","unstructured":"Pandita R, Xiao X, Yang W, Enck W, Xie T (2013) Whyper: Towards automating risk assessment of mobile applications. In: Proceedings of the 22Nd USENIX Conference on Security, USENIX Association, Berkeley, CA, USA, SEC\u201913, pp 527\u2013542. http:\/\/dl.acm.org\/citation.cfm?id=2534766.2534812"},{"issue":"6","key":"10872_CR21","doi-asserted-by":"publisher","first-page":"86","DOI":"10.1109\/MS.2014.79","volume":"31","author":"IJM Ruiz","year":"2014","unstructured":"Ruiz IJM, Nagappan M, Adams B, Berger T, Dienst S, Hassan AE (2014) Impact of Ad Libraries on Ratings of Android Mobile Apps. IEEE Softw 31(6):86\u201392. https:\/\/doi.org\/10.1109\/MS.2014.79","journal-title":"IEEE Softw"},{"key":"10872_CR22","doi-asserted-by":"publisher","unstructured":"Saborido R, Khomh F, Antoniol G, Gu\u00e9h\u00e9neuc YG (2017) Comprehension of Ads-supported and Paid Android Applications: Are They Different? In: Proceedings of the 25th International Conference on Program Comprehension (ICPC), IEEE, Buenos Aires, Argentina, pp 143\u2013153. https:\/\/doi.org\/10.1109\/ICPC.2017.25","DOI":"10.1109\/ICPC.2017.25"},{"issue":"5","key":"10872_CR23","doi-asserted-by":"publisher","first-page":"2829","DOI":"10.1007\/s10664-018-9607-8","volume":"23","author":"R Saborido","year":"2018","unstructured":"Saborido R, Morales R, Khomh F, Gu\u00e9h\u00e9neuc YG, Antoniol G (2018) Getting the most from map data structures in android. Empir Softw Eng 23(5):2829\u20132864. https:\/\/doi.org\/10.1007\/s10664-018-9607-8","journal-title":"Empir Softw Eng"},{"key":"10872_CR24","doi-asserted-by":"crossref","unstructured":"Sahin C, Tornquist P, Mckenna R, Pearson Z, Clause J (2014) How Does Code Obfuscation Impact Energy Usage? In: ICSME\u201914, pp 131\u2013140","DOI":"10.1109\/ICSME.2014.35"},{"key":"10872_CR25","doi-asserted-by":"publisher","unstructured":"Wang H, Guo Y, Ma Z, Chen X (2015) WuKong: A Scalable and Accurate Two-phase Approach to Android App Clone Detection. In: Proceedings of the 2015 International Symposium on Software Testing and Analysis, ACM, New York, NY, USA, ISSTA 2015, pp 71\u201382. https:\/\/doi.org\/10.1145\/2771783.2771795, http:\/\/doi.acm.org\/10.1145\/2771783.2771795","DOI":"10.1145\/2771783.2771795"},{"issue":"10","key":"10872_CR26","doi-asserted-by":"publisher","first-page":"4181","DOI":"10.1109\/TSE.2021.3114381","volume":"48","author":"X Zhan","year":"2022","unstructured":"Zhan X, Liu T, Fan L, Li L, Chen S, Luo X, Liu Y (2022) Research on third-party libraries in android apps: A taxonomy and systematic literature review. IEEE Trans Software Eng 48(10):4181\u20134213. https:\/\/doi.org\/10.1109\/TSE.2021.3114381","journal-title":"IEEE Trans Software Eng"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-026-10872-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-026-10872-w","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-026-10872-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,5,8]],"date-time":"2026-05-08T12:55:13Z","timestamp":1778244913000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-026-10872-w"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2026,5,8]]},"references-count":26,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2026,9]]}},"alternative-id":["10872"],"URL":"https:\/\/doi.org\/10.1007\/s10664-026-10872-w","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2026,5,8]]},"assertion":[{"value":"21 July 2025","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"24 April 2026","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"8 May 2026","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare that they have no conflict of interest.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflict of Interest"}},{"value":"Not applicable.","order":3,"name":"Ethics","group":{"name":"EthicsHeading","label":"Ethical Approval"}},{"value":"Not applicable.","order":4,"name":"Ethics","group":{"name":"EthicsHeading","label":"Informed Consent"}},{"value":"Not applicable.","order":5,"name":"Ethics","group":{"name":"EthicsHeading","label":"Clinical Trial Number"}}],"article-number":"137"}}