{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,2]],"date-time":"2026-04-02T04:12:50Z","timestamp":1775103170882,"version":"3.50.1"},"reference-count":60,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2016,11,7]],"date-time":"2016-11-07T00:00:00Z","timestamp":1478476800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2016,11,7]],"date-time":"2016-11-07T00:00:00Z","timestamp":1478476800000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"funder":[{"name":"National Science Foundation","award":["1117593"],"award-info":[{"award-number":["1117593"]}]},{"name":"National Science Foundation","award":["1218115"],"award-info":[{"award-number":["1218115"]}]},{"name":"National Science Foundation","award":["1321141"],"award-info":[{"award-number":["1321141"]}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2017,6]]},"DOI":"10.1007\/s10664-016-9466-0","type":"journal-article","created":{"date-parts":[[2016,11,7]],"date-time":"2016-11-07T03:02:48Z","timestamp":1478487768000},"page":"1146-1193","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":46,"title":["A large-scale study of architectural evolution in open-source software systems"],"prefix":"10.1007","volume":"22","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-7328-9915","authenticated-orcid":false,"given":"Pooyan","family":"Behnamghader","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Duc Minh","family":"Le","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Joshua","family":"Garcia","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Daniel","family":"Link","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Arman","family":"Shahbazian","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Nenad","family":"Medvidovic","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2016,11,7]]},"reference":[{"issue":"5","key":"9466_CR1","doi-asserted-by":"publisher","first-page":"313","DOI":"10.1088\/0967-1846\/1\/5\/006","volume":"1","author":"B Agnew","year":"1994","unstructured":"Agnew B, Hofmeister C, Purtilo J (1994) Planning for change: a reconfiguration language for distributed systems. Distrib Syst Eng 1(5):313","journal-title":"Distrib Syst Eng"},{"key":"9466_CR2","unstructured":"Amazon (2015) Amazon command line interface. \n                    https:\/\/aws.amazon.com\/cli\/"},{"key":"9466_CR3","unstructured":"Apache (2014a) Apache portable runtime versioning. \n                    http:\/\/apr.apache.org\/versioning.html"},{"key":"9466_CR4","unstructured":"Apache (2014b) Hadoop releases. \n                    http:\/\/hadoop.apache.org\/releases.html#News"},{"key":"9466_CR5","unstructured":"Apache (2014c) Lucene wiki. \n                    http:\/\/en.wikipedia.org\/wiki\/Lucene"},{"key":"9466_CR6","unstructured":"Apache (2015a) Apache ant. \n                    http:\/\/ant.apache.org\/"},{"key":"9466_CR7","unstructured":"Apache (2015b) Apache maven. \n                    http:\/\/maven.apache.org\/"},{"key":"9466_CR8","unstructured":"ARCADE (2015) arcade:start [USC SoftArch Wiki]. \n                    http:\/\/softarch.usc.edu\/wiki\/doku.php?id=arcade:start"},{"key":"9466_CR9","unstructured":"Bitbucket (2015) Bitbucket. \n                    https:\/\/bitbucket.org"},{"issue":"4","key":"9466_CR10","doi-asserted-by":"publisher","first-page":"77","DOI":"10.1145\/2133806.2133826","volume":"55","author":"DM Blei","year":"2012","unstructured":"Blei DM (2012) Probabilistic topic models. Commun ACM 55(4):77\u201384","journal-title":"Commun ACM"},{"key":"9466_CR11","doi-asserted-by":"crossref","unstructured":"Bouwers E, Correia JP, van Deursen A, Visser J (2011a) Quantifying the analyzability of software architectures. In: 9th working IEEE\/IFIP conference on software architecture (WICSA), 2011. IEEE, pp 83\u201392","DOI":"10.1109\/WICSA.2011.20"},{"key":"9466_CR12","doi-asserted-by":"crossref","unstructured":"Bouwers E, van Deursen A, Visser J (2011b) Dependency profiles for software architecture evaluations. In: 27th IEEE international conference on software maintenance (ICSM), 2011. IEEE, pp 540\u2013 543","DOI":"10.1109\/ICSM.2011.6080827"},{"key":"9466_CR13","doi-asserted-by":"crossref","unstructured":"Bouwers E, Deursen Av, Visser J (2013) Evaluating usefulness of software metrics: an industrial experience report. In: ICSE. IEEE Press, pp 921\u2013930","DOI":"10.1109\/ICSE.2013.6606641"},{"key":"9466_CR14","doi-asserted-by":"crossref","unstructured":"Chatzigeorgiou A, Manakos A (2010) Investigating the evolution of bad smells in object-oriented code. In: 17th international conference on the quality of information and communications technology (QUATIC), 2010. IEEE, pp 106\u2013115","DOI":"10.1109\/QUATIC.2010.16"},{"key":"9466_CR15","doi-asserted-by":"crossref","unstructured":"D\u2019Ambros M, Gall H, Lanza M, Pinzger M (2008) Analysing software repositories to understand software evolution. In: Software evolution. Springer, pp 37\u201367","DOI":"10.1007\/978-3-540-76440-3_3"},{"issue":"4","key":"9466_CR16","doi-asserted-by":"publisher","first-page":"573","DOI":"10.1109\/TSE.2009.19","volume":"35","author":"S Ducasse","year":"2009","unstructured":"Ducasse S, Pollet D (2009) Software architecture reconstruction: a process-oriented taxonomy. IEEE Trans Softw Eng 35(4):573\u2013591","journal-title":"IEEE Trans Softw Eng"},{"issue":"1","key":"9466_CR17","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1109\/32.895984","volume":"27","author":"SG Eick","year":"2001","unstructured":"Eick SG, Graves TL, Karr AF, Marron JS, Mockus A (2001) Does code decay? Assessing the evidence from change management data. IEEE Trans Softw Eng 27(1):1\u201312","journal-title":"IEEE Trans Softw Eng"},{"key":"9466_CR18","doi-asserted-by":"crossref","unstructured":"Garcia J, Popescu D, Mattmann C, Medvidovic N, Cai Y (2011) Enhancing architectural recovery using concerns. In: Proceedings of the 2011 26th IEEE\/ACM international conference on automated software engineering. IEEE Computer Society, pp 552\u2013555","DOI":"10.1109\/ASE.2011.6100123"},{"key":"9466_CR19","doi-asserted-by":"crossref","unstructured":"Garcia J, Krka I, Medvidovic N, Douglas C (2012) A framework for obtaining the ground-truth in architectural recovery. In: Joint working IEEE\/IFIP conference on software architecture (WICSA) and European conference on software architecture (ECSA), 2012. IEEE, pp 292\u2013296","DOI":"10.1109\/WICSA-ECSA.212.48"},{"key":"9466_CR20","doi-asserted-by":"crossref","unstructured":"Garcia J, Ivkovic I, Medvidovic N (2013a) A comparative analysis of software architecture recovery techniques. In: IEEE\/ACM 28th international conference on automated software engineering (ASE), 2013. IEEE, pp 486\u2013496","DOI":"10.1109\/ASE.2013.6693106"},{"key":"9466_CR21","doi-asserted-by":"crossref","unstructured":"Garcia J, Krka I, Mattmann C, Medvidovic N (2013b) Obtaining ground-truth software architectures. In: Proceedings of the 2013 international conference on software engineering. IEEE Press, pp 901\u2013910","DOI":"10.1109\/ICSE.2013.6606639"},{"key":"9466_CR22","doi-asserted-by":"crossref","unstructured":"Ghezzi G, Gall HC (2013) Replicating mining studies with sofas. In: Proceedings of the 10th working conference on mining software repositories. IEEE Press, pp 363\u2013372","DOI":"10.1109\/MSR.2013.6624050"},{"key":"9466_CR23","unstructured":"Git (2014) Git log. \n                    http:\/\/git-scm.com\/docs\/git-log"},{"key":"9466_CR24","unstructured":"Git (2015) Github. \n                    https:\/\/github.com"},{"key":"9466_CR25","unstructured":"Godfrey MW, Tu Q (2000) Evolution in open source software: a case study. In: Proceedings of the international conference on software maintenance, 2000. IEEE, pp 131\u2013142"},{"key":"9466_CR26","unstructured":"Google (2015a) Google cloud platform. \n                    https:\/\/cloud.google.com"},{"key":"9466_CR27","unstructured":"Google (2015b) Guava. \n                    https:\/\/code.google.com\/p\/guava-libraries\/"},{"key":"9466_CR28","doi-asserted-by":"crossref","unstructured":"Holt R, Pak JY (1996) Gase: visualizing software evolution-in-the-large. In: Proceedings of the 3rd working conference on reverse engineering, 1996. IEEE, pp 163\u2013167","DOI":"10.1109\/WCRE.1996.558900"},{"key":"9466_CR29","doi-asserted-by":"crossref","unstructured":"Kim M, Sazawal V, Notkin D, Murphy G (2005) An empirical study of code clone genealogies. In: ACM SIGSOFT software engineering notes, vol 30. ACM, pp 187\u2013196","DOI":"10.1145\/1095430.1081737"},{"key":"9466_CR30","doi-asserted-by":"crossref","unstructured":"Koschke R (2005) What architects should know about reverse engineering and rengineering. In: Null. IEEE, pp 4\u201310","DOI":"10.1109\/WICSA.2005.75"},{"key":"9466_CR31","doi-asserted-by":"crossref","unstructured":"Koschke R (2009) Architecture reconstruction. In: Software engineering. Springer, pp 140\u2013173","DOI":"10.1007\/978-3-540-95888-8_6"},{"issue":"6","key":"9466_CR32","doi-asserted-by":"publisher","first-page":"42","DOI":"10.1109\/52.469759","volume":"12","author":"PB Kruchten","year":"1995","unstructured":"Kruchten PB (1995) The 4+ 1 view model of architecture. IEEE Softw 12(6):42\u201350","journal-title":"IEEE Softw"},{"key":"9466_CR33","doi-asserted-by":"crossref","unstructured":"Langhammer M, Shahbazian A, Medvidovic N, Reussner R (2016) Automated extraction of rich software models from limited system information. In: Proceedings of the 13th working IEEE\/IFIP conference on software architecture (WICSA). IEEE","DOI":"10.1109\/WICSA.2016.35"},{"key":"9466_CR34","doi-asserted-by":"crossref","unstructured":"Le DM, Behnamghader P, Garcia J, Link D, Shahbazian A, Medvidovic N (2015) An empirical study of architectural change in open-source software systems. In: Proceedings of the 12th working conference on mining software repository (MSR)","DOI":"10.1109\/MSR.2015.29"},{"key":"9466_CR35","doi-asserted-by":"crossref","unstructured":"Le DM, Carrillo C, Capilla R, Medvidovic N (2016) Relating architectural decay and sustainability of software systems. In: Proceedings of the 13th working IEEE\/IFIP conference on software architecture (WICSA). IEEE","DOI":"10.1109\/WICSA.2016.15"},{"key":"9466_CR36","doi-asserted-by":"crossref","unstructured":"Lehman MM (1980) Programs, life cycles, and laws of software evolution. Proc IEEE","DOI":"10.1109\/PROC.1980.11805"},{"key":"9466_CR37","doi-asserted-by":"crossref","unstructured":"Lutellier T, Chollack D, Garcia J, Tan L, Rayside D, Medvidovic N, Kroeger R (2015) Comparing software architecture recovery techniques using accurate dependencies. In: Proceedings of the 37th international conference on software engineering (ICSE 2015). Software Engineering in Practice Track","DOI":"10.1109\/ICSE.2015.136"},{"key":"9466_CR38","doi-asserted-by":"crossref","unstructured":"Mahajan S, Li B, Behnamghader P, Halfond WG (2016) Using visual symptoms for debugging presentation failures in web applications. In: Proceeding of the 9th IEEE international conference on software testing, verification, and validation (ICST)","DOI":"10.1109\/ICST.2016.35"},{"issue":"11","key":"9466_CR39","doi-asserted-by":"publisher","first-page":"759","DOI":"10.1109\/TSE.2007.70732","volume":"33","author":"O Maqbool","year":"2007","unstructured":"Maqbool O, Babri H et al (2007) Hierarchical clustering for software architecture recovery. IEEE Trans Softw Eng 33(11):759\u2013780","journal-title":"IEEE Trans Softw Eng"},{"key":"9466_CR40","unstructured":"McCallum A (2002) Mallet: A machine learning for language toolkit"},{"key":"9466_CR41","doi-asserted-by":"crossref","unstructured":"Medvidovic N (1996) Adls and dynamic architecture changes. In: Joint proceedings of the second international software architecture workshop (ISAW-2) and international workshop on multiple perspectives in software development (Viewpoints\u2019 96) on SIGSOFT\u201996 workshops. ACM, pp 24\u201327","DOI":"10.1145\/243327.243340"},{"key":"9466_CR42","unstructured":"Mengu\u00e9 O (2014) Svn graph branches. \n                    https:\/\/code.google.com\/p\/svn-graph-branches\/"},{"issue":"1","key":"9466_CR43","doi-asserted-by":"publisher","first-page":"32","DOI":"10.1137\/0105003","volume":"5","author":"J Munkres","year":"1957","unstructured":"Munkres J (1957) Algorithms for the assignment and transportation problems. J Soc Ind Appl Math 5(1):32\u201338","journal-title":"J Soc Ind Appl Math"},{"key":"9466_CR44","unstructured":"Murgia A, Concas G, Pinna S, Tonelli R, Turnu I (2009) Empirical study of software quality evolution in open source projects using agile practices. In: Proceedings of the 1st international symposium on emerging trends in software metrics, 2009. Lulu.com"},{"key":"9466_CR45","doi-asserted-by":"crossref","unstructured":"Nakamura T, Basili VR (2005) Metrics of software architecture changes based on structural distance. In: 11th IEEE international symposium on software metrics, 2005. IEEE, pp 24\u201324","DOI":"10.1109\/METRICS.2005.35"},{"key":"9466_CR46","doi-asserted-by":"crossref","unstructured":"Oreizy P, Medvidovic N, Taylor RN (1998) Architecture-based runtime software evolution. In: Proceedings of the 20th international conference on Software engineering. IEEE Computer Society, pp 177\u2013186","DOI":"10.1109\/ICSE.1998.671114"},{"issue":"4","key":"9466_CR47","doi-asserted-by":"publisher","first-page":"40","DOI":"10.1145\/141874.141884","volume":"17","author":"DE Perry","year":"1992","unstructured":"Perry DE, Wolf AL (1992) Foundations for the study of software architecture. ACM SIGSOFT Softw Eng Notes 17(4):40\u201352","journal-title":"ACM SIGSOFT Softw Eng Notes"},{"key":"9466_CR48","unstructured":"PMD (2015) Pmd documentation. \n                    http:\/\/pmd.sourceforge.net"},{"key":"9466_CR49","doi-asserted-by":"crossref","unstructured":"Robles G (2010) Replicating msr: a study of the potential replicability of papers published in the mining software repositories proceedings. In: 7th IEEE working conference on mining software repositories (MSR), 2010. IEEE, pp 171\u2013180","DOI":"10.1109\/MSR.2010.5463348"},{"key":"9466_CR50","doi-asserted-by":"crossref","unstructured":"Shahbazian A, Edwards G, Medvidovic N (2016) An end-to-end domain specific modeling and analysis platform. In: IEEE\/ACM 38th IEEE international conference on software engineering (ICSE), 2016. IEEE","DOI":"10.1145\/2896982.2896994"},{"key":"9466_CR51","unstructured":"Shirali S, Vasudeva HL (2005) Metric spaces. Springer Science & Business Media"},{"key":"9466_CR52","unstructured":"Struts (2014) Struts wiki. \n                    http:\/\/en.wikipedia.org\/wiki\/Apache_Struts"},{"key":"9466_CR53","doi-asserted-by":"publisher","DOI":"10.1145\/1595696.1595754","volume-title":"Software architecture: foundations, theory, and practice","author":"R Taylor","year":"2009","unstructured":"Taylor R, Medvidovic N, Dashofy E (2009) Software architecture: foundations, theory, and practice"},{"key":"9466_CR54","unstructured":"Tu Q, Godfrey MW (2002) An integrated approach for studying architectural evolution. In: Proceedings of 10th international workshop on program comprehension, 2002. IEEE, pp 127\u2013136"},{"key":"9466_CR55","doi-asserted-by":"crossref","unstructured":"Tzerpos V, Holt RC (1999) Mojo: a distance metric for software clusterings. In: Proceedings of 6th working conference on reverse engineering, 1999. IEEE, pp 187\u2013193","DOI":"10.1109\/WCRE.1999.806959"},{"key":"9466_CR56","unstructured":"Tzerpos V, Holt RC (2000) Acdc: An algorithm for comprehension-driven clustering. In: wcre. IEEE, p 258"},{"key":"9466_CR57","doi-asserted-by":"crossref","unstructured":"Van Deursen A, Hofmeister C, Koschke R, Moonen L, Riva C (2004) Symphony: view-driven software architecture reconstruction. In: Proceedings of the 4th working IEEE\/IFIP conference on software architecture, 2004 (WICSA 2004). IEEE, pp 122\u2013132","DOI":"10.1109\/WICSA.2004.1310696"},{"key":"9466_CR58","unstructured":"Wen Z, Tzerpos V (2004) An effectiveness measure for software clustering algorithms. In: Proceedings of the 12th IEEE international workshop on program comprehension, 2004. IEEE, pp 194\u2013203"},{"key":"9466_CR59","doi-asserted-by":"crossref","unstructured":"Wettel R, Lanza M (2008) Visual exploration of large-scale system evolution. In: 15th working conference on reverse engineering, 2008 (WCRE\u201908). IEEE, pp 219\u2013228","DOI":"10.1109\/WCRE.2008.55"},{"key":"9466_CR60","unstructured":"Xing EP, Jordan MI, Russell S, Ng AY (2002) Distance metric learning with application to clustering with side-information. In: Advances in neural information processing systems, pp 505\u2013512"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10664-016-9466-0\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-016-9466-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-016-9466-0.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,5,17]],"date-time":"2020-05-17T15:07:03Z","timestamp":1589728023000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10664-016-9466-0"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016,11,7]]},"references-count":60,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2017,6]]}},"alternative-id":["9466"],"URL":"https:\/\/doi.org\/10.1007\/s10664-016-9466-0","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2016,11,7]]},"assertion":[{"value":"7 November 2016","order":1,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}