{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,6,7]],"date-time":"2024-06-07T00:08:04Z","timestamp":1717718884710},"reference-count":40,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2015,1,29]],"date-time":"2015-01-29T00:00:00Z","timestamp":1422489600000},"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":[[2016,6]]},"DOI":"10.1007\/s10664-014-9348-2","type":"journal-article","created":{"date-parts":[[2015,1,28]],"date-time":"2015-01-28T09:24:11Z","timestamp":1422437051000},"page":"854-895","update-policy":"http:\/\/dx.doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":9,"title":["Mining architectural violations from version history"],"prefix":"10.1007","volume":"21","author":[{"given":"Cristiano","family":"Maffort","sequence":"first","affiliation":[]},{"given":"Marco Tulio","family":"Valente","sequence":"additional","affiliation":[]},{"given":"Ricardo","family":"Terra","sequence":"additional","affiliation":[]},{"given":"Mariza","family":"Bigonha","sequence":"additional","affiliation":[]},{"given":"Nicolas","family":"Anquetil","sequence":"additional","affiliation":[]},{"given":"Andr\u00e9","family":"Hora","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2015,1,29]]},"reference":[{"issue":"4","key":"9348_CR1","doi-asserted-by":"crossref","first-page":"366","DOI":"10.1049\/iet-sen.2009.0083","volume":"5","author":"JE Araujo","year":"2011","unstructured":"Araujo JE, Souza S, Valente MT (2011) Study on the relevance of the warnings reported by Java bug-finding tools. IET Software 5 (4):366\u2013374","journal-title":"IET Software"},{"key":"9348_CR2","unstructured":"Baeza-Yates R, Ribeiro-Neto B (2011) Modern Information Retrieval: The Concepts and Technology Behind Search. Addison Wesley Professional"},{"key":"9348_CR3","volume-title":"Enabling Static Architecture Conformance Checking of Evolving Software","author":"RA Bittencourt","year":"2012","unstructured":"Bittencourt RA (2012) Enabling Static Architecture Conformance Checking of Evolving Software. Universidade Federal de Campina Grande, PhD thesis"},{"key":"9348_CR4","doi-asserted-by":"crossref","unstructured":"Brunet J, Guerreiro D, Figueiredo J (2011) Structural conformance checking with design tests: An evaluation of usability and scalability. In: 27th International Conference on Software Maintenance (ICSM), pp 143\u2013152","DOI":"10.1109\/ICSM.2011.6080781"},{"key":"9348_CR5","unstructured":"Brunet J, Murphy GC, Serey D, Figueiredo J (2014) Five years of software architecture checking: A case study of Eclipse. IEEE Software:1\u20136"},{"key":"9348_CR6","unstructured":"Copeland T (2005) PMD Applied. Centennial Books"},{"key":"9348_CR7","volume-title":"MSE and FAMIX 3.0 an Interexchange Format and Source Code Model Family. Technical report","author":"S Ducasse","year":"2011","unstructured":"Ducasse S, Anquetil N, Bhatti MU, Hora A, Laval J, Girba T (2011) MSE and FAMIX 3.0 an Interexchange Format and Source Code Model Family. Technical report. Software Composition Group - SCG, RMOD - INRIA Lille - Nord Europe"},{"issue":"4","key":"9348_CR8","doi-asserted-by":"crossref","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 Software Eng 35 (4):573\u2013591","journal-title":"IEEE Trans Software Eng"},{"key":"9348_CR9","doi-asserted-by":"crossref","unstructured":"Eichberg M, Kloppenburg S, Klose K, Mezini M (2008) Defining and continuous checking of structural program dependencies. In: 30th International Conference on Software Engineering (ICSE), pp 391\u2013400","DOI":"10.1145\/1368088.1368142"},{"key":"9348_CR10","unstructured":"Fowler M (2002) Patterns of Enterprise Application Architecture. Addison-Wesley"},{"key":"9348_CR11","doi-asserted-by":"crossref","unstructured":"Hammad M, Collard ML, Maletic JI (2009) Automatically identifying changes that impact code-to-design traceability. In: 17th IEEE\/ACM International Conference on Program Comprehension (ICPC), pp 20\u201329","DOI":"10.1109\/ICPC.2009.5090024"},{"key":"9348_CR12","doi-asserted-by":"crossref","unstructured":"Holt RC (1998) Structural manipulations of software architecture using tarski relational algebra. In: 5th Working Conference on Reverse Engineering (WCRE), pp 210\u2013219","DOI":"10.1109\/WCRE.1998.723191"},{"key":"9348_CR13","doi-asserted-by":"crossref","unstructured":"Hora A, Anquetil N, Ducasse S, Valente MT (2013) Mining system specific rules from change patterns. In: 20th Working Conference on Reverse Engineering (WCRE), pp 1\u201310","DOI":"10.1109\/WCRE.2013.6671308"},{"issue":"6","key":"9348_CR14","doi-asserted-by":"crossref","first-page":"404","DOI":"10.1109\/TSE.2006.60","volume":"32","author":"D Hou","year":"2006","unstructured":"Hou D, Hoover JH (2006) Using SCL to specify and check design intent in source code. IEEE Trans Software Eng 32(6):404\u2013423","journal-title":"IEEE Trans Software Eng"},{"issue":"12","key":"9348_CR15","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 Notices 39(12):92\u2013106","journal-title":"SIGPLAN Notices"},{"key":"9348_CR16","unstructured":"Johnson SC (1977) Lint: A C program checker. Technical Report 65, Bell Laboratories"},{"key":"9348_CR17","doi-asserted-by":"crossref","unstructured":"Kim S, Ernst MD (2007) Which warnings should I fix first?. In: 15th International Symposium on Foundations of Software Engineering (FSE), pp 45\u201354","DOI":"10.1145\/1287624.1287633"},{"key":"9348_CR18","doi-asserted-by":"crossref","unstructured":"Kim S, Pan K, Whitehead EEJ Jr. (2006) Memories of bug fixes. In: 14th International Symposium on Foundations of Software Engineering (FSE), pp 35\u201345","DOI":"10.1145\/1181775.1181781"},{"key":"9348_CR19","doi-asserted-by":"crossref","unstructured":"Knodel J, Popescu D (2007) A comparison of static architecture compliance checking approaches. In: 6th Working IEEE\/IFIP Conference on Software Architecture (WICSA), p 12","DOI":"10.1109\/WICSA.2007.1"},{"key":"9348_CR20","doi-asserted-by":"crossref","unstructured":"Koschke R (2010) Incremental reflexion analysis. In: 14th European Conference on Software Maintenance and Reengineering (CSMR), pp 1\u201310","DOI":"10.1109\/CSMR.2010.10"},{"key":"9348_CR21","doi-asserted-by":"crossref","unstructured":"Koschke R, Simon D (2003) Hierarchical reflexion models. In: 10th Working Conference on Reverse Engineering (WCRE), pp 36\u201345","DOI":"10.1109\/WCRE.2003.1287235"},{"issue":"3","key":"9348_CR22","doi-asserted-by":"crossref","first-page":"92","DOI":"10.1109\/MS.2004.1293079","volume":"21","author":"JR Larus","year":"2004","unstructured":"Larus JR, Ball T, Das M, DeLine R, Fahndrich M, Pincus J, Rajamani SK., Venkatapathy R (2004) Righting software. IEEE Software 21(3):92\u2013100","journal-title":"IEEE Software"},{"key":"9348_CR23","doi-asserted-by":"crossref","unstructured":"Livshits B, Zimmermann T (2005) DynaMine: finding common error patterns by mining software revision histories. In: 13th International Symposium on Foundations of Software Engineering (FSE), pp 296\u2013305","DOI":"10.1145\/1081706.1081754"},{"key":"9348_CR24","doi-asserted-by":"crossref","unstructured":"Maffort C, Valente MT, Anquetil N, Hora A, Bigonha M (2013) Heuristics for discovering architectural violations. In: 20th Working Conference on Reverse Engineering (WCRE), pp 222\u2013231","DOI":"10.1109\/WCRE.2013.6671297"},{"key":"9348_CR25","unstructured":"Maffort C, Valente MT, Bigonha M, Hora A, Anquetil N (2013) Mining architectural patterns using association rules. In: 25th International Conference on Software Engineering and Knowledge Engineering (SEKE), pp 375\u2013380"},{"issue":"2-3","key":"9348_CR26","doi-asserted-by":"crossref","first-page":"140","DOI":"10.1016\/j.cl.2005.09.002","volume":"32","author":"K Mens","year":"2006","unstructured":"Mens K, Kellens A, Pluquet F, Wuyts Roel (2006) Co-evolving code and design with intensional views A case study. Comput Languages Syst & Struct 32(2-3):140\u2013156","journal-title":"Comput Languages Syst & Struct"},{"key":"9348_CR27","doi-asserted-by":"crossref","unstructured":"Mileva YM, Wasylkowski A, Zeller A (2011) Mining evolution of object usage. In: 25th European conference on Object-oriented programming, pp 105\u2013129","DOI":"10.1007\/978-3-642-22655-7_6"},{"key":"9348_CR28","doi-asserted-by":"crossref","unstructured":"Murphy G, Notkin D, Sullivan K (1995) Software reflexion models Bridging the gap between source and high-level models. In: 3rd Symposium on Foundations of Software Engineering (FSE), pp 18\u201328","DOI":"10.1145\/222124.222136"},{"key":"9348_CR29","doi-asserted-by":"crossref","first-page":"364","DOI":"10.1109\/32.917525","volume":"27","author":"G Murphy","year":"2001","unstructured":"Murphy G, Notkin D, Sullivan KJ (2001) Software reflexion models bridging the gap between design and implementation. IEEE Trans Software Eng 27:364\u2013380","journal-title":"IEEE Trans Software Eng"},{"key":"9348_CR30","doi-asserted-by":"crossref","unstructured":"Nguyen TT, Nguyen HA, Pham NH, Al-Kofahi J, Nguyen TN (2010) Recurring bug fixes in object-oriented programs. In: 32nd International Conference on Software Engineering (ICSE), pp 315\u2013324","DOI":"10.1145\/1806799.1806847"},{"key":"9348_CR31","doi-asserted-by":"crossref","unstructured":"Nierstrasz O, Ducasse S, G\u0131\u030crba T (2005) The story of Moose: an agile reengineering environment. In: Foundations of Software Engineering (FSE), pp 1\u201310","DOI":"10.1145\/1095430.1081707"},{"key":"9348_CR32","doi-asserted-by":"crossref","unstructured":"Palomba F, Bavota G, Penta MD, Oliveto R, Lucia AD, Poshyvanyk D (2013) Detecting bad smells in source code using change history information. In: 28th International Conference on Automated Software Engineering (ASE), pp 268\u2013278","DOI":"10.1109\/ASE.2013.6693086"},{"issue":"5","key":"9348_CR33","doi-asserted-by":"crossref","first-page":"82","DOI":"10.1109\/MS.2009.117","volume":"27","author":"L Passos","year":"2010","unstructured":"Passos L, Terra R, Diniz R, Valente MT, Mendonca N (2010) Static architecture-conformance checking An illustrative overview. IEEE Software 27(5):82\u201389","journal-title":"IEEE Software"},{"issue":"4","key":"9348_CR34","doi-asserted-by":"crossref","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. Software Eng Notes 17(4):40\u201352","journal-title":"Software Eng Notes"},{"key":"9348_CR35","doi-asserted-by":"crossref","first-page":"1891","DOI":"10.1016\/j.jss.2009.06.039","volume":"82","author":"S Sarkar","year":"2009","unstructured":"Sarkar S, Maskeri G, Ramachandran S (2009) Discovery of architectural layers and measurement of layering violations in source code. J Syst Software 82:1891\u20131905","journal-title":"J Syst Software"},{"key":"9348_CR36","doi-asserted-by":"crossref","first-page":"28","DOI":"10.1109\/MS.2009.42","volume":"26","author":"S Ramachandran","year":"2009","unstructured":"Santonu S, Ramachandran S, Kumar GS, Madhu K, Iyengar K, Rangarajan, Sivagnanam S (2009) Modularization of a large-scale business application: A case study. IEEE Software 26:28\u201335","journal-title":"IEEE Software"},{"key":"9348_CR37","doi-asserted-by":"crossref","unstructured":"Silva L, Valente MT, Maia M (2014) Assessing modularity using co-change clusters. In: 13th International Conference on Modularity, pp 49\u201360","DOI":"10.1145\/2577080.2577086"},{"issue":"12","key":"9348_CR38","first-page":"1073","volume":"32","author":"R Terra","year":"2009","unstructured":"Terra R, Valente MT (2009) A dependency constraint language to manage object-oriented software architectures. Software: Practice and Experience 32(12):1073\u20131094","journal-title":"Software: Practice and Experience"},{"key":"9348_CR39","doi-asserted-by":"crossref","unstructured":"Terra R, Valente MT, Czarnecki K, Bigonha R (2012) Recommending refactorings to reverse software architecture erosion. In: 16th European Conference on Software Maintenance and Reengineering (CSMR), pp 335\u2013340","DOI":"10.1109\/CSMR.2012.40"},{"key":"9348_CR40","unstructured":"Terra R, Valente MT, Czarnecki K, Bigonha RS (2013) A recommendation system for repairing violations detected by static architecture conformance checking. Software: Practice and Experience:1\u201336"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-014-9348-2.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10664-014-9348-2\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-014-9348-2","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,6,6]],"date-time":"2024-06-06T21:32:48Z","timestamp":1717709568000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10664-014-9348-2"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,1,29]]},"references-count":40,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2016,6]]}},"alternative-id":["9348"],"URL":"https:\/\/doi.org\/10.1007\/s10664-014-9348-2","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2015,1,29]]}}}