{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,10,6]],"date-time":"2026-10-06T07:35:44Z","timestamp":1791272144462,"version":"4.1.0"},"reference-count":101,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2014,12,11]],"date-time":"2014-12-11T00:00:00Z","timestamp":1418256000000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2015,12]]},"DOI":"10.1007\/s10664-014-9343-7","type":"journal-article","created":{"date-parts":[[2014,12,9]],"date-time":"2014-12-09T23:18:07Z","timestamp":1418167087000},"page":"1785-1830","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":17,"title":["Charting the API minefield using software telemetry data"],"prefix":"10.1007","volume":"20","author":[{"given":"Maria","family":"Kechagia","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Dimitris","family":"Mitropoulos","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Diomidis","family":"Spinellis","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2014,12,11]]},"reference":[{"key":"9343_CR1","doi-asserted-by":"crossref","unstructured":"Aftandilian EE, Kelley S, Gramazio C, Ricci N, Su SL, Guyer SZ (2010) Heapviz: interactive heap visualization for program understanding and debugging. In: Proceedings of the 5th international symposium on software visualization, ACM, New York, NY, USA, SOFTVIS \u201910, pp 53\u201362","DOI":"10.1145\/1879211.1879222"},{"key":"9343_CR2","first-page":"191","volume-title":"Hardware and Software, Verification and Testing, Lecture Notes in Computer Science, vol 3875","author":"R Agarwal","year":"2006","unstructured":"Agarwal R, Wang L, Stoller S (2006) Detecting potential deadlocks with static analysis and run-time monitoring. In: Ur S, Bin E, Wolfsthal Y (eds) Hardware and Software, Verification and Testing, Lecture Notes in Computer Science, vol 3875. Springer, Berlin Heidelberg, pp 191\u2013207"},{"key":"9343_CR3","doi-asserted-by":"crossref","unstructured":"Alsallakh B, Bodesinsky P, Miksch S, Nasseri D (2012) Visualizing arrays in the Eclipse Java IDE. In: Proceedings of the 2012 16th European Conference on Software Maintenance and Reengineering, IEEE Computer Society, Washington, DC, USA, CSMR \u201912, pp 541\u2013544","DOI":"10.1109\/CSMR.2012.71"},{"key":"9343_CR4","doi-asserted-by":"crossref","unstructured":"Amalfitano D, Fasolino AR, Tramontana P (2011) A GUI crawling-based technique for Android mobile application testing. In: Proceedings of the 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops, IEEE Computer Society, Washington, DC, USA, ICSTW \u201911, pp 252\u2013261","DOI":"10.1109\/ICSTW.2011.77"},{"key":"9343_CR5","doi-asserted-by":"crossref","unstructured":"Amalfitano D, Fasolino AR, Tramontana P, De Carmine S, Memon AM (2012) Using GUI ripping for automated testing of Android applications. In: Proceedings of the 27th IEEE\/ACM International Conference on Automated Software Engineering, ACM, New York, NY, USA, ASE, 2012","DOI":"10.1145\/2351676.2351717"},{"key":"9343_CR6","doi-asserted-by":"crossref","unstructured":"Artho C, Biere A (2001) Applying static analysis to large-scale multi-threaded Java programs. In: Proceedings of the 13th Australian Conference on Software Engineering, IEEE Computer Society, Washington, DC, USA, ASWEC \u201901, pp 68\u201375","DOI":"10.1109\/ASWEC.2001.948499"},{"issue":"1","key":"9343_CR7","first-page":"11","volume":"1","author":"A Avizienis","year":"2004","unstructured":"Avizienis A, Laprie JC, Randell B, Landwehr C (2004) Basic concepts and taxonomy of dependable and secure computing. Dependable and Secure Computing, IEEE Trans on 1(1):11\u201333. doi: 10.1109\/TDSC.2004.2","journal-title":"IEEE Trans on"},{"issue":"5","key":"9343_CR8","doi-asserted-by":"crossref","first-page":"22","DOI":"10.1109\/MS.2008.130","volume":"25","author":"N Ayewah","year":"2008","unstructured":"Ayewah N, Hovemeyer D, Morgenthaler J, Penix J, Pugh W (2008) Using static analysis to find bugs. IEEE Softw 25 (5):22\u201329. 10.1109\/MS.2008.130","journal-title":"IEEE Softw"},{"key":"9343_CR9","unstructured":"Bacchelli A (2013). Mining challenge 2013: Stack overflow. In: The 10th Working Conference on Mining Software Repositories"},{"key":"9343_CR10","doi-asserted-by":"crossref","unstructured":"Bacon DF, Cheng P, Grove D (2004) Garbage collection for embedded systems. In: Proceedings of the 4th ACM international conference on Embedded software, ACM, New York, NY, USA, EMSOFT \u201904, pp 125\u2013136","DOI":"10.1145\/1017753.1017776"},{"key":"9343_CR11","unstructured":"Beizer B (2003) Software Testing Techniques. Dreamtech Press"},{"key":"9343_CR12","doi-asserted-by":"crossref","unstructured":"Bloch J (2006) How to design a good API and why it matters. In: Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications, ACM, New York, NY, USA, OOPSLA \u201906, pp 506\u2013507","DOI":"10.1145\/1176617.1176622"},{"key":"9343_CR13","doi-asserted-by":"crossref","unstructured":"Bond MD, McKinley KS (2008) Tolerating memory leaks. In: Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications, ACM, New York, NY, USA, OOPSLA \u201908, pp 109\u2013126","DOI":"10.1145\/1449764.1449774"},{"key":"9343_CR14","unstructured":"Bovet D, Cesati M (2005) Understanding The Linux Kernel. Oreilly & Associates Inc"},{"key":"9343_CR15","first-page":"782","volume-title":"Synthesizing API usage examples. In: Proceedings of the 2012 International Conference on Software Engineering, ICSE 2012","author":"RPL Buse","year":"2012","unstructured":"Buse RPL, Weimer W (2012) Synthesizing API usage examples. In: Proceedings of the 2012 International Conference on Software Engineering, ICSE 2012. IEEE Press, Piscataway, pp 782\u2013792. doi: 10.1109\/ICSE.2012.6227140"},{"issue":"2","key":"9343_CR16","doi-asserted-by":"crossref","first-page":"21","DOI":"10.1109\/MSP.2007.914731","volume":"25","author":"E Candes","year":"2008","unstructured":"Candes E, Wakin M (2008) An introduction to compressive sampling. IEEE Signal Proc Mag 25(2):21\u201330. doi: 10.1109\/MSP.2007.914731","journal-title":"IEEE Signal Proc Mag"},{"key":"9343_CR17","doi-asserted-by":"crossref","unstructured":"Chang TH, Yeh T, Miller RC (2010) GUI testing using computer vision. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, New York, NY, USA, CHI \u201910, pp 1535\u20131544","DOI":"10.1145\/1753326.1753555"},{"key":"9343_CR18","doi-asserted-by":"crossref","unstructured":"Chen G, Kandemir M, Vijaykrishnan N, Irwin MJ, Mathiske B, Wolczko M (2003) Heap compression for memory-constrained Java environments. In: Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications, ACM, New York, NY, USA, OOPSLA \u201903, pp 282\u2013301. doi: 10.1145\/949305.949330","DOI":"10.1145\/949305.949330"},{"issue":"2","key":"9343_CR19","doi-asserted-by":"crossref","first-page":"169","DOI":"10.1016\/j.comcom.2010.03.032","volume":"34","author":"MC Chen","year":"2011","unstructured":"Chen MC, Chen JL, Chang TW (2011) Android\/OSGi-based vehicular network management system. Comput Commun 34(2):169\u2013183. doi: 10.1016\/j.comcom.2010.03.032","journal-title":"Comput Commun"},{"issue":"11","key":"9343_CR20","doi-asserted-by":"crossref","first-page":"943","DOI":"10.1109\/32.177364","volume":"18","author":"R Chillarege","year":"1992","unstructured":"Chillarege R, Bhandari IS, Chaar JK, Halliday MJ, Moebus DS, Ray BK, Wong MY (1992) Orthogonal defect classification\u2014a concept for in-process measurements. IEEE Trans Softw Eng 18(11): 943\u2013956","journal-title":"IEEE Trans Softw Eng"},{"key":"9343_CR21","doi-asserted-by":"crossref","unstructured":"Choe H, Baek J, Jeong H, Park S (2011) MetaService: an object transfer platform between Android applications. In: Proceedings of the 2011 ACM Symposium on Research in Applied Computation, ACM, New York, NY, USA, RACS \u201911, pp 56\u201360","DOI":"10.1145\/2103380.2103391"},{"key":"9343_CR22","first-page":"S6","volume":"29","author":"S Clarke","year":"2004","unstructured":"Clarke S (2004) Measuring API usability. Dr Dobb\u2019s Journal 29:S6\u2013S9. http:\/\/www.drdobbs.com\/windows\/184405654","journal-title":"Dr Dobb\u2019s Journal"},{"key":"9343_CR23","first-page":"1084","volume-title":"ReBucket: a method for clustering duplicate crash reports based on call stack similarity. In: Proceedings of the 2012 International Conference on Software Engineering, ICSE 2012","author":"Y Dang","year":"2012","unstructured":"Dang Y, Wu R, Zhang H, Zhang D, Nobel P (2012) ReBucket: a method for clustering duplicate crash reports based on call stack similarity. In: Proceedings of the 2012 International Conference on Software Engineering, ICSE 2012. IEEE Press, Piscataway, pp 1084\u20131093"},{"key":"9343_CR24","unstructured":"DeMillo RA, Mathur AP (1995) A grammar based fault classification scheme and its application to the classification of the errors of TEX. Tech. rep., Citeseer"},{"issue":"4","key":"9343_CR25","doi-asserted-by":"crossref","first-page":"30","DOI":"10.1145\/248448.248456","volume":"40","author":"M Eisenstadt","year":"1997","unstructured":"Eisenstadt M (1997) My hairiest bug war stories. Commun ACM 40(4):30\u201337. 10.1145\/248448.248456","journal-title":"Commun ACM"},{"key":"9343_CR26","doi-asserted-by":"crossref","unstructured":"Ellis B, Stylos J, Myers B (2007) The factory pattern in API design: a usability evaluation. In: Proceedings of the 29th international conference on Software Engineering, IEEE Computer Society, Washington, DC, USA, ICSE \u201907, pp 302\u2013312","DOI":"10.1109\/ICSE.2007.85"},{"issue":"1","key":"9343_CR27","doi-asserted-by":"crossref","first-page":"50","DOI":"10.1109\/MSP.2009.26","volume":"7","author":"W Enck","year":"2009","unstructured":"Enck W, Ongtang M, McDaniel P (2009) Understanding Android security. IEEE Security Privacy 7 (1):50\u201357. doi: 10.1109\/MSP.2009.26","journal-title":"IEEE Security Privacy"},{"issue":"6","key":"9343_CR28","doi-asserted-by":"crossref","first-page":"327","DOI":"10.1145\/390016.808455","volume":"10","author":"A Endres","year":"1975","unstructured":"Endres A (1975) An analysis of errors and their causes in system programs. SIGPLAN Not 10(6):327\u2013336. 10.1145\/390016.808455","journal-title":"SIGPLAN Not"},{"issue":"5","key":"9343_CR29","doi-asserted-by":"crossref","first-page":"237","DOI":"10.1145\/1165389.945468","volume":"37","author":"D Engler","year":"2003","unstructured":"Engler D, Ashcraft K (2003) RacerX: effective, static detection of race conditions and deadlocks. SIGOPS Oper Syst Rev 37(5):237\u2013252. doi: 10.1145\/1165389.945468","journal-title":"SIGOPS Oper Syst Rev"},{"key":"9343_CR30","doi-asserted-by":"crossref","unstructured":"Faghri F, Bazarbayev S, Overholt M, Farivar R, Campbell RH, Sanders WH (2012) Failure scenario as a service (FSaaS) for Hadoop clusters. In: Proceedings of the Workshop on Secure and Dependable Middleware for Cloud Monitoring and Management, ACM, New York, NY, USA, SDMCMM \u201912, pp 5:1\u20135:6","DOI":"10.1145\/2405186.2405191"},{"key":"9343_CR31","doi-asserted-by":"crossref","unstructured":"Farooq U, Welicki L, Zirkler D (2010) API usability peer reviews: a method for evaluating the usability of application programming interfaces. In: Proceedings of the 28th international conference on Human factors in computing systems, ACM, New York, NY, USA, CHI \u201910, pp 2327\u20132336","DOI":"10.1145\/1753326.1753677"},{"key":"9343_CR32","doi-asserted-by":"crossref","unstructured":"Felt AP, Chin E, Hanna S, Song D, Wagner D (2011) Android permissions demystified. In: Proceedings of the 18th ACM conference on Computer and communications security, ACM, New York, NY, USA, CCS \u201911, pp 627\u2013638","DOI":"10.1145\/2046707.2046779"},{"key":"9343_CR33","doi-asserted-by":"crossref","unstructured":"Fraboulet A, Kodary K, Mignotte A (2001) Loop fusion for memory space optimization. In: Proceedings of the 14th international symposium on Systems synthesis, ACM, New York, NY, USA, ISSS \u201901, pp 95\u2013100","DOI":"10.1145\/500001.500025"},{"key":"9343_CR34","doi-asserted-by":"crossref","unstructured":"Ganapathi A, Patterson D (2005) Crash data collection: a Windows case study. In: Proceedings of the 2005 International Conference on Dependable Systems and Networks, IEEE Computer Society, Washington, DC, USA, DSN \u201905, pp 280\u2013285","DOI":"10.1109\/DSN.2005.32"},{"key":"9343_CR35","unstructured":"Ganapathi A, Ganapathi V, Patterson DA (2006) Windows XP kernel crash analysis. In: LISA, vol 6, pp 49\u2013159"},{"issue":"1","key":"9343_CR36","doi-asserted-by":"crossref","first-page":"77","DOI":"10.1109\/MS.2010.155","volume":"28","author":"D Gavalas","year":"2011","unstructured":"Gavalas D, Economou D (2011) Development platforms for mobile applications: status and trends. IEEE Softw 28 (1):77\u201386. doi: 10.1109\/MS.2010.155","journal-title":"IEEE Softw"},{"key":"9343_CR37","first-page":"3373","volume-title":"The concept maps method as a tool to evaluate the usability of APIs. In: Proceedings of the 2011 annual conference on Human factors in computing systems CHI \u201911","author":"J Gerken","year":"2011","unstructured":"Gerken J, Jetter HC, Z\u00f6llner M, Mader M, Reiterer H (2011) The concept maps method as a tool to evaluate the usability of APIs. In: Proceedings of the 2011 annual conference on Human factors in computing systems CHI \u201911. ACM, New York, pp 3373\u20133382"},{"key":"9343_CR38","unstructured":"Gray J (1986) Why do computers stop and what can be done about it? In: Symposium on reliability in distributed software and database systems, Los Angeles, CA, USA, pp 3\u201312"},{"key":"9343_CR39","first-page":"17","volume-title":"Proactive detection of software aging mechanisms in performance critical computers. In: Proceedings of the 27th Annual NASA Goddard Software Engineering Workshop (SEW-27\u201902)","author":"KC Gross","year":"2002","unstructured":"Gross KC, Bhardwaj V, Bickford R (2002) Proactive detection of software aging mechanisms in performance critical computers. In: Proceedings of the 27th Annual NASA Goddard Software Engineering Workshop (SEW-27\u201902). IEEE Computer Society, Washington, pp 17\u201323"},{"key":"9343_CR40","doi-asserted-by":"crossref","first-page":"9","DOI":"10.1109\/EASE.2006.21","volume-title":"Towards dependability in everyday software using software telemetry. In: Proceedings of the Third IEEE International Workshop on Engineering of Autonomic & Autonomous Systems, EASE \u201906","author":"KC Gross","year":"2006","unstructured":"Gross KC, Urmanov A, Votta LG, McMaster S, Porter A (2006) Towards dependability in everyday software using software telemetry. In: Proceedings of the Third IEEE International Workshop on Engineering of Autonomic & Autonomous Systems, EASE \u201906. IEEE Computer Society, Washington, pp 9\u201318"},{"key":"9343_CR41","doi-asserted-by":"crossref","unstructured":"Guo P, Zimmermann T, Nagappan N, Murphy B (2010) Characterizing and predicting which bugs get fixed: an empirical study of Microsoft Windows. In: ACM\/IEEE 32nd International Conference on Software Engineering, vol 1, pp 495\u2013504. doi: 10.1145\/1806799.1806871","DOI":"10.1145\/1806799.1806871"},{"key":"9343_CR42","doi-asserted-by":"crossref","first-page":"366","DOI":"10.1007\/s100090050043","volume":"2","author":"K Havelund","year":"2000","unstructured":"Havelund K, Pressburger T (2000) Model checking Java programs using Java PathFinder. Int J Softw Tools Technol Transfer 2:366\u2013381. doi: 10.1007\/s100090050043","journal-title":"Int J Softw Tools Technol Transfer"},{"issue":"2","key":"9343_CR43","doi-asserted-by":"crossref","first-page":"189","DOI":"10.1023\/B:FORM.0000017721.39909.4b","volume":"24","author":"K Havelund","year":"2004","unstructured":"Havelund K, Ro\u015fu G (2004) An overview of the runtime verification tool Java PathExplorer. Form Methods Syst Des 24(2):189\u2013215. doi: 10.1023\/B:FORM.0000017721.39909.4b","journal-title":"Form Methods Syst Des"},{"issue":"5","key":"9343_CR44","doi-asserted-by":"crossref","first-page":"46","DOI":"10.1145\/1506409.1506424","volume":"52","author":"M Henning","year":"2009","unstructured":"Henning M (2009) API design matters. Commun ACM 52(5):46\u201356. doi: 10.1145\/1506409.1506424","journal-title":"Commun ACM"},{"issue":"12","key":"9343_CR45","doi-asserted-by":"crossref","first-page":"92","DOI":"10.1145\/1052883.1052895","volume":"39","author":"D Hovemeyer","year":"2004","unstructured":"Hovemeyer D, Pugh W (2004) Finding bugs is easy. SIGPLAN Not 39(12):92\u2013106. doi: 10.1145\/1052883.1052895","journal-title":"SIGPLAN Not"},{"issue":"4","key":"9343_CR46","doi-asserted-by":"crossref","first-page":"76","DOI":"10.1109\/MS.2005.95","volume":"22","author":"PM Johnson","year":"2005","unstructured":"Johnson P M, Kou H, Paulding M, Zhang Q, Kagawa A, Yamashita T (2005) Improving software development management through software project telemetry. IEEE Softw 22(4):76\u201385","journal-title":"IEEE Softw"},{"key":"9343_CR47","unstructured":"Jula H, Tralamazza D, Zamfir C, Candea G (2008) Deadlock immunity: enabling systems to defend against deadlocks. In: Proceedings of the 8th USENIX conference on Operating systems design and implementation, USENIX Association, Berkeley, CA, USA, OSDI\u201908, pp 295\u2013308. http:\/\/dl.acm.org\/citation.cfm?id=1855741.1855762"},{"key":"9343_CR48","doi-asserted-by":"crossref","unstructured":"Jula H, Rensch T, Candea G (2011) Platform-wide deadlock immunity for mobile phones. In: IEEE\/IFIP 41st International Conference on Dependable Systems and Networks Workshops (DSN-W), pp 205\u2013210. doi: 10.1109\/DSNW.2011.5958814","DOI":"10.1109\/DSNW.2011.5958814"},{"key":"9343_CR49","unstructured":"K\u00e4hk\u00f6nen K, Launiainen T, Saarikivi O, Kauttio J, Heljanko K, Niemel\u00e4 I (2011) LCT: an open source concolic testing tool for Java programs. In: Proceedings of the 6th Workshop on Bytecode Semantics, Verification, Analysis and Transformation (BYTECODE\u20192011), Saarbr\u00fccken, Germany, pp 75\u201380"},{"key":"9343_CR50","doi-asserted-by":"crossref","unstructured":"Kawrykow D, Robillard M (2009) Detecting inefficient API usage. In: 31st International Conference on Software Engineering - Companion (ICSE-Companion 2009), pp 183\u2013186 doi: 10.1109\/ICSE-COMPANION.2009.5070977","DOI":"10.1109\/ICSE-COMPANION.2009.5070977"},{"issue":"3","key":"9343_CR51","doi-asserted-by":"crossref","first-page":"430","DOI":"10.1109\/TSE.2011.20","volume":"37","author":"D Kim","year":"2011","unstructured":"Kim D, Wang X, Kim S, Zeller A, Cheung S, Park S (2011a) Which crashes should I fix first?: Predicting top crashes at an early stage to prioritize debugging efforts. IEEE Trans Softw Eng 37(3):430\u2013447. doi: 10.1109\/TSE.2011.20","journal-title":"IEEE Trans Softw Eng"},{"key":"9343_CR52","doi-asserted-by":"crossref","first-page":"49","DOI":"10.1145\/2038642.2038652","volume-title":"Aciom: application characteristics-aware disk and network I\/O management on Android platform. In: Proceedings of the ninth ACM international conference on Embedded software EMSOFT \u201911","author":"H Kim","year":"2011","unstructured":"Kim H, Lee M, Han W, Lee K, Shin I (2011b) Aciom: application characteristics-aware disk and network I\/O management on Android platform. In: Proceedings of the ninth ACM international conference on Embedded software EMSOFT \u201911. ACM, New York, pp 49\u201358"},{"issue":"4","key":"9343_CR53","first-page":"14:1","volume":"8","author":"H Kim","year":"2012","unstructured":"Kim H, Agrawal N, Ungureanu C (2012) Revisiting storage for smartphones. ACM Trans on Storage 8(4):14:1\u201314:25. doi: 10.1145\/2385603.2385607","journal-title":"ACM Trans on Storage"},{"key":"9343_CR54","doi-asserted-by":"crossref","first-page":"197","DOI":"10.1007\/s11241-005-4680-7","volume":"32","author":"K Kim","year":"2006","unstructured":"Kim K (2006) A non-blocking buffer mechanism for real-time event message communication. Real-Time Systems 32:197\u2013211. doi: 10.1007\/s11241-005-4680-7","journal-title":"Real-Time Systems"},{"key":"9343_CR55","doi-asserted-by":"crossref","unstructured":"Kim S, Zimmermann T, Nagappan N (2011c) Crash graphs: an aggregated view of multiple crashes to improve crash triage. In: Proceedings of the 2011 IEEE\/IFIP 41st International Conference on Dependable Systems & Networks DSN \u201911. IEEE Computer Society, Washington, pp 486\u2013493","DOI":"10.1109\/DSN.2011.5958261"},{"issue":"7","key":"9343_CR56","first-page":"607","volume":"19","author":"DE Knuth","year":"1989","unstructured":"Knuth DE (1989) The Errors of TeX. Software: Practice and Experience 19(7):607\u2013685. doi: 10.1002\/spe.4380190702","journal-title":"Software: Practice and Experience"},{"issue":"5","key":"9343_CR57","doi-asserted-by":"crossref","first-page":"455","DOI":"10.1109\/32.387474","volume":"21","author":"I Lee","year":"1995","unstructured":"Lee I, Iyer R (1995) Software dependability in the tandem guardian system. IEEE Trans Softw Eng 21(5):455\u2013467. doi: 10.1109\/32.387474","journal-title":"IEEE Trans Softw Eng"},{"key":"9343_CR58","doi-asserted-by":"crossref","unstructured":"Li Z, Tan L, Wang X, Lu S, Zhou Y, Zhai C (2006) Have things changed now? An empirical study of bug characteristics in modern open source software. In: Proceedings of the 1st workshop on Architectural and system support for improving software dependability, ACM, New York, NY, USA, ASID \u201906, pp 25\u201333","DOI":"10.1145\/1181309.1181314"},{"key":"9343_CR59","unstructured":"Liblit B, Aiken A (2002) Building a better backtrace: techniques for postmortem program analysis. Tech. rep., Berkeley"},{"key":"9343_CR60","doi-asserted-by":"crossref","unstructured":"Linares-V\u00e1squez M, Bavota G, Bernal-C\u00e1rdenas C, Di Penta M, Oliveto R, Poshyvanyk D (2013) API change and fault proneness: a threat to the success of Android apps. In: Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering ESEC\/FSE 2013. ACM, New York, pp 477\u2013487. doi: 10.1145\/2491411.2491428","DOI":"10.1145\/2491411.2491428"},{"issue":"6","key":"9343_CR61","doi-asserted-by":"crossref","first-page":"555","DOI":"10.1109\/TSE.2003.1205182","volume":"29","author":"B Long","year":"2003","unstructured":"Long B, Hoffman D, Strooper P (2003) Tool support for testing concurrent Java components. IEEE Trans Softw Eng 29(6):555\u2013566. doi: 10.1109\/TSE.2003.1205182","journal-title":"IEEE Trans Softw Eng"},{"issue":"PrePrints","key":"9343_CR62","first-page":"1","volume":"99","author":"W Maalej","year":"2013","unstructured":"Maalej W, Robillard MP (2013) Patterns of knowledge in API reference documentation. IEEE Trans Softw Eng 99 (PrePrints):1. doi: 10.1109\/TSE.2013.12","journal-title":"IEEE Trans Softw Eng"},{"key":"9343_CR63","unstructured":"Maia C, Nogueira LM, Pinho LM (2010) Evaluating Android OS for embedded real-time systems. In: Petters SM, Zijlstra P (eds) 6th International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT 2010), Polit\u00e9cnico do Porto, pp 63\u201370"},{"key":"9343_CR64","doi-asserted-by":"crossref","unstructured":"Maji AK, Hao K, Sultana S, Bagchi S (2010) Characterizing failures in mobile OSes: a case study with Android and Symbian. In: Proceedings of the 2010 IEEE 21st International Symposium on Software Reliability Engineering ISSRE \u201910. IEEE Computer Society, Washington, pp 249\u2013258","DOI":"10.1109\/ISSRE.2010.45"},{"issue":"6","key":"9343_CR65","doi-asserted-by":"crossref","first-page":"48","DOI":"10.1145\/1064978.1065018","volume":"40","author":"D Mandelin","year":"2005","unstructured":"Mandelin D, Xu L, Bod\u00edk R, Kimelman D (2005) Jungloid mining: helping to navigate the API jungle. SIGPLAN Not 40(6):48\u201361. doi: 10.1145\/1064978.1065018","journal-title":"SIGPLAN Not"},{"issue":"4","key":"9343_CR66","doi-asserted-by":"crossref","first-page":"424","DOI":"10.1145\/233561.233564","volume":"18","author":"KS McKinley","year":"1996","unstructured":"McKinley KS, Carr S, Tseng CW (1996) Improving data locality with loop transformations. ACM Trans Program Lang Syst 18(4):424\u2013453. doi: 10.1145\/233561.233564","journal-title":"ACM Trans Program Lang Syst"},{"key":"9343_CR67","doi-asserted-by":"crossref","unstructured":"Meijer E, Beckman B, Bierman G (2006) LINQ: reconciling object, relations and XML in the NET framework. In: Proceedings of the 2006 ACM SIGMOD international conference on Management of data SIGMOD \u201906. ACM, New York, pp 706\u2013706. doi: 10.1145\/1142473.1142552","DOI":"10.1145\/1142473.1142552"},{"issue":"4","key":"9343_CR68","doi-asserted-by":"crossref","first-page":"316","DOI":"10.1145\/1118890.1118892","volume":"37","author":"M Mernik","year":"2005","unstructured":"Mernik M, Heering J, Sloane AM (2005) When and how to develop domain-specific languages. ACM Comput Surv 37(4):316\u2013344. doi: 10.1145\/1118890.1118892","journal-title":"ACM Comput Surv"},{"issue":"6","key":"9343_CR69","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1145\/2382756.2382797","volume":"37","author":"H van der Merwe","year":"2012","unstructured":"van der Merwe H, van der Merwe B, Visse W (2012) Verifying Android applications using Java PathFinder. SIGSOFT Softw Eng Notes 37(6):1\u20135. doi: 10.1145\/2382756.2382797","journal-title":"SIGSOFT Softw Eng Notes"},{"key":"9343_CR70","doi-asserted-by":"crossref","first-page":"267","DOI":"10.1145\/248052.248106","volume-title":"Simple, fast, and practical non-blocking and blocking concurrent queue algorithms. In: Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing PODC \u201996","author":"MM Michael","year":"1996","unstructured":"Michael MM, Scott ML (1996) Simple, fast, and practical non-blocking and blocking concurrent queue algorithms. In: Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing PODC \u201996. ACM, New York, pp 267\u2013275. doi: 10.1145\/248052.248106"},{"key":"9343_CR71","doi-asserted-by":"crossref","first-page":"221","DOI":"10.1145\/1920261.1920295","volume-title":"Porscha: policy oriented secure content handling in Android. In: Proceedings of the 26th Annual Computer Security Applications Conference ACSAC \u201910","author":"M Ongtang","year":"2010","unstructured":"Ongtang M, Butler K, McDaniel P (2010) Porscha: policy oriented secure content handling in Android. In: Proceedings of the 26th Annual Computer Security Applications Conference ACSAC \u201910. ACM, New York, pp 221\u2013230. doi: 10.1145\/1920261.1920295"},{"issue":"2","key":"9343_CR72","doi-asserted-by":"crossref","first-page":"149","DOI":"10.1145\/375977.375978","volume":"6","author":"PR Panda","year":"2001","unstructured":"Panda PR, Catthoor F, Dutt ND, Danckaert K, Brockmeyer E, Kulkarni C, Vandercappelle A, Kjeldsberg PG (2001) Data and memory optimization techniques for embedded systems. ACM Trans Des Autom Electron Syst 6(2):149\u2013206. doi: 10.1145\/375977.375978","journal-title":"ACM Trans Des Autom Electron Syst"},{"issue":"11","key":"9343_CR73","doi-asserted-by":"crossref","first-page":"1192","DOI":"10.1016\/j.infsof.2012.05.003","volume":"54","author":"T Payet","year":"2012","unstructured":"Payet T, Spoto F (2012) Static analysis of Android programs. Inf Softw Technol 54(11):1192\u20131201. doi: 10.1016\/j.infsof.2012.05.003","journal-title":"Inf Softw Technol"},{"issue":"4","key":"9343_CR74","first-page":"298","volume":"23","author":"C Pheatt","year":"2008","unstructured":"Pheatt C (2008) Intel threading building blocks. J Comput Sci Coll 23(4):298\u2013298. http:\/\/dl.acm.org\/citation.cfm?id=1352079.1352134","journal-title":"J Comput Sci Coll"},{"key":"9343_CR75","doi-asserted-by":"crossref","unstructured":"Ploski J, Rohr M, Schwenkenberg P, Hasselbring W (2007) Research issues in software fault categorization. ACM SIGSOFT Softw Eng Notes 32(6). doi: 10.1145\/1317471.1317478","DOI":"10.1145\/1317471.1317478"},{"key":"9343_CR76","doi-asserted-by":"crossref","first-page":"465","DOI":"10.1109\/ICSE.2003.1201224","volume-title":"Automated support for classifying software failure reports. In: Proceedings of the 25th International Conference on Software Engineering 2003","author":"A Podgurski","year":"2003","unstructured":"Podgurski A, Leon D, Francis P, Masri W, Minch M, Sun J, Wang B (2003) Automated support for classifying software failure reports. In: Proceedings of the 25th International Conference on Software Engineering 2003. IEEE Computer Society, Washington, pp 465\u2013475. doi: 10.1109\/ICSE.2003.1201224"},{"issue":"6","key":"9343_CR77","doi-asserted-by":"crossref","first-page":"703","DOI":"10.1007\/s10664-010-9150-8","volume":"16","author":"M Robillard","year":"2011","unstructured":"Robillard M, DeLine R (2011) A field study of API learning obstacles. Empir Softw Eng 16(6):703\u2013732. doi: 10.1007\/s10664-010-9150-8","journal-title":"Empir Softw Eng"},{"issue":"5","key":"9343_CR78","doi-asserted-by":"crossref","first-page":"613","DOI":"10.1109\/TSE.2012.63","volume":"39","author":"M Robillard","year":"2013","unstructured":"Robillard M, Bodden E, Kawrykow D, Mezini M, Ratchford T (2013) Automated API property inference techniques. IEEE Trans Softw Eng 39(5):613\u2013637. doi: 10.1109\/TSE.2012.63","journal-title":"IEEE Trans Softw Eng"},{"issue":"6","key":"9343_CR79","doi-asserted-by":"crossref","first-page":"27","DOI":"10.1109\/MS.2009.193","volume":"26","author":"MP Robillard","year":"2009","unstructured":"Robillard MP (2009) What makes APIs hard to learn? Answers from developers. IEEE Softw 26(6):27\u201334. doi: 10.1109\/MS.2009.193","journal-title":"IEEE Softw"},{"key":"9343_CR80","doi-asserted-by":"crossref","unstructured":"Schoeberl M (2004) Restrictions of Java for embedded real-time systems. In: Proceedings of the Seventh IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, 2004, pp 93\u2013100. doi: 10.1109\/ISORC.2004.1300334","DOI":"10.1109\/ISORC.2004.1300334"},{"key":"9343_CR81","doi-asserted-by":"crossref","unstructured":"Sen K, Agha G (2006) CUTE and jCUTE: concolic unit testing and explicit path model-checking tools In: CAV. Springer, pp 419\u2013423","DOI":"10.1007\/11817963_38"},{"issue":"1","key":"9343_CR82","doi-asserted-by":"crossref","first-page":"106","DOI":"10.1016\/j.infsof.2010.09.003","volume":"53","author":"J Seo","year":"2011","unstructured":"Seo J, Choi B, Yang S (2011) A profiling method by PCB hooking and its application for memory fault detection in embedded system operational test. Inf Softw Technol 53(1):106\u2013119. doi: 10.1016\/j.infsof.2010.09.003","journal-title":"Inf Softw Technol"},{"issue":"2","key":"9343_CR83","doi-asserted-by":"crossref","first-page":"35","DOI":"10.1109\/MSP.2010.2","volume":"8","author":"A Shabtai","year":"2010","unstructured":"Shabtai A, Fledel Y, Kanonov U, Elovici Y, Dolev S, Glezer C (2010) Google Android: a comprehensive security assessment. IEEE Security Privacy 8(2):35\u201344. doi: 10.1109\/MSP.2010.2","journal-title":"IEEE Security Privacy"},{"issue":"1","key":"9343_CR84","doi-asserted-by":"crossref","first-page":"161","DOI":"10.1007\/s10844-010-0148-x","volume":"38","author":"A Shabtai","year":"2012","unstructured":"Shabtai A, Kanonov U, Elovici Y, Glezer C, Weiss Y (2012) \u201cAndromaly\u201d: a behavioral malware detection framework for Android devices. J Intell Inf Syst 38(1):161\u2013190. doi: 10.1007\/s10844-010-0148-x","journal-title":"J Intell Inf Syst"},{"key":"9343_CR85","doi-asserted-by":"crossref","unstructured":"Shelton C, Koopman P, Devale K (2000) Robustness testing of the Microsoft Win32 API. In: Proceedings of the International Conference on Dependable Systems and Networks. DSN 2000, pp 261\u2013270 10.1109\/ICDSN.2000.857548","DOI":"10.1109\/ICDSN.2000.857548"},{"key":"9343_CR86","first-page":"416","volume-title":"Fundamental Approaches to Software Engineering, Lecture Notes in Computer Science, vol 6603","author":"L Shi","year":"2011","unstructured":"Shi L, Zhong H, Xie T, Li M (2011) An empirical study on evolution of API documentation. In: Giannakopoulou D, Orejas F (eds) Fundamental Approaches to Software Engineering, Lecture Notes in Computer Science, vol 6603. Springer, Berlin, pp 416\u2013431. doi: 10.1007\/978-3-642-19811-3%5F29"},{"key":"9343_CR87","doi-asserted-by":"crossref","unstructured":"Shihab E, Kamei Y, Bhattacharya P (2012) Mining challenge 2012: The Android platform. In: The 9th Working Conference on Mining Software Repositories","DOI":"10.1109\/MSR.2012.6224307"},{"key":"9343_CR88","doi-asserted-by":"crossref","unstructured":"de Souza C, Bentolila D (2009) Automatic evaluation of API usability using complexity metrics and visualizations. In: 31st International Conference on Software Engineering - Companion, (ICSE-Companion 2009), pp 299\u2013302. doi: 10.1109\/ICSE-COMPANION.2009.5071006","DOI":"10.1109\/ICSE-COMPANION.2009.5071006"},{"issue":"1","key":"9343_CR89","doi-asserted-by":"crossref","first-page":"10:10","DOI":"10.1145\/2576966.2576968","volume":"12","author":"R Sproull","year":"2014","unstructured":"Sproull R, Waldo J (2014) The API performance contract. Queue 12(1):10:10\u201310:20. doi: 10.1145\/2576966.2576968 10.1145\/2576966.2576968","journal-title":"Queue"},{"key":"9343_CR90","unstructured":"Stylos J (2009) Making APIs More Usable with Improved API Designs, Documentation and Tools. Carnegie Mellon University. http:\/\/books.google.co.uk\/books?id=MQYoWv0nsy8C"},{"key":"9343_CR91","first-page":"529","volume-title":"Usability implications of requiring parameters in objects\u2019 constructors. In: Proceedings of the 29th international conference on Software Engineering ICSE \u201907","author":"J Stylos","year":"2007","unstructured":"Stylos J, Clarke S (2007) Usability implications of requiring parameters in objects\u2019 constructors. In: Proceedings of the 29th international conference on Software Engineering ICSE \u201907. IEEE Computer Society, Washington, pp 529\u2013539>. doi: 10.1109\/ICSE.2007.92"},{"key":"9343_CR92","doi-asserted-by":"crossref","first-page":"105","DOI":"10.1145\/1453101.1453117","volume-title":"The implications of method placement on API learnability. In: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering SIGSOFT \u201908\/FSE-16","author":"J Stylos","year":"2008","unstructured":"Stylos J, Myers BA (2008) The implications of method placement on API learnability. In: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering SIGSOFT \u201908\/FSE-16. ACM, New York, pp 105\u2013112. doi: 10.1145\/1453101.1453117"},{"key":"9343_CR93","doi-asserted-by":"crossref","unstructured":"Sullivan M, Chillarege R (1991) Software defects and their impact on system availability\u2014a study of field failures in operating systems. In: 21st International Symposium Fault-Tolerant Computing, FTCS-21. Digest of Papers, p 29. doi: 10.1109\/FTCS.1991.146625","DOI":"10.1109\/FTCS.1991.146625"},{"key":"9343_CR94","unstructured":"Tan L, Liu C, Li Z, Wang X, Zhou Y, Zhai C (2013) Bug characteristics in open source software. Empirical Software Engineering pp 1\u201341"},{"key":"9343_CR95","unstructured":"Tulach J (2012) Practical API Design: Confessions of a Java Framework Architect. Apressus Series, Apress. http:\/\/books.google.co.uk\/books?id=5DmYpwAACAAJ"},{"issue":"1","key":"9343_CR96","doi-asserted-by":"crossref","first-page":"179","DOI":"10.1109\/SURV.2012.021312.00045","volume":"15","author":"N Vallina-Rodriguez","year":"2013","unstructured":"Vallina-Rodriguez N, Crowcroft J (2013) Energy management techniques in modern mobile handsets. IEEE Communications Surveys Tutorials 15(1):179\u2013198. doi: 10.1109\/SURV.2012.021312.00045","journal-title":"IEEE Communications Surveys Tutorials"},{"key":"9343_CR97","doi-asserted-by":"crossref","unstructured":"Valois J D (1995) Lock-free linked lists using compare-and-swap. In: Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing PODC \u201995. ACM, New York, pp 214\u2013222. doi: 10.1145\/224964.224988","DOI":"10.1145\/224964.224988"},{"issue":"12","key":"9343_CR98","doi-asserted-by":"crossref","first-page":"22","DOI":"10.1109\/2.970549","volume":"34","author":"SJ Vaughan-Nichols","year":"2001","unstructured":"Vaughan-Nichols SJ (2001) Technology news. Computer 34(12):22\u201324. doi: 10.1109\/2.970549","journal-title":"Computer"},{"key":"9343_CR99","doi-asserted-by":"crossref","first-page":"54","DOI":"10.1145\/1137983.1137997","volume-title":"MAPO: mining API usages from open source repositories. In: Proceedings of the 2006 international workshop on Mining software repositories MSR \u201906","author":"T Xie","year":"2006","unstructured":"Xie T, Pei J (2006) MAPO: mining API usages from open source repositories. In: Proceedings of the 2006 international workshop on Mining software repositories MSR \u201906. ACM, New York, pp 54\u201357"},{"issue":"3","key":"9343_CR100","doi-asserted-by":"crossref","first-page":"27:1","DOI":"10.1145\/1698772.1698785","volume":"9","author":"L Yang","year":"2010","unstructured":"Yang L, Dick R P, Lekatsas H, Chakradhar S (2010) Online memory compression for embedded systems. ACM Trans Embed Comput Syst 9(3):27:1\u201327:30. doi: 10.1145\/1698772.1698785","journal-title":"ACM Trans Embed Comput Syst"},{"key":"9343_CR101","first-page":"61","volume-title":"Automatic heap sizing: taking real memory into account. In: Proceedings of the 4th international symposium on Memory management ISMM \u201904","author":"T Yang","year":"2004","unstructured":"Yang T, Hertz M, Berger ED, Kaplan SF, Moss JEB (2004) Automatic heap sizing: taking real memory into account. In: Proceedings of the 4th international symposium on Memory management ISMM \u201904. ACM, New York, pp 61\u201372. doi: 10.1145\/1029873.1029881"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-014-9343-7.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10664-014-9343-7\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-014-9343-7","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,8,18]],"date-time":"2019-08-18T04:59:16Z","timestamp":1566104356000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10664-014-9343-7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2014,12,11]]},"references-count":101,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2015,12]]}},"alternative-id":["9343"],"URL":"https:\/\/doi.org\/10.1007\/s10664-014-9343-7","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2014,12,11]]}}}