{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,30]],"date-time":"2026-01-30T05:46:39Z","timestamp":1769751999429,"version":"3.49.0"},"reference-count":62,"publisher":"Springer Science and Business Media LLC","issue":"5","license":[{"start":{"date-parts":[[2022,5,30]],"date-time":"2022-05-30T00:00:00Z","timestamp":1653868800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2022,5,30]],"date-time":"2022-05-30T00:00:00Z","timestamp":1653868800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2022,9]]},"DOI":"10.1007\/s10664-022-10161-2","type":"journal-article","created":{"date-parts":[[2022,5,30]],"date-time":"2022-05-30T09:03:03Z","timestamp":1653901383000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Multi-language design smells: a backstage perspective"],"prefix":"10.1007","volume":"27","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-9058-8519","authenticated-orcid":false,"given":"Mouna","family":"Abidi","sequence":"first","affiliation":[]},{"given":"Md Saidur","family":"Rahman","sequence":"additional","affiliation":[]},{"given":"Moses","family":"Openja","sequence":"additional","affiliation":[]},{"given":"Foutse","family":"Khomh","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2022,5,30]]},"reference":[{"key":"10161_CR1","doi-asserted-by":"crossref","unstructured":"Abbes M, Khomh F, Gueheneuc YG, Antoniol G (2011) An empirical study of the impact of two antipatterns, blob and spaghetti code, on program comprehension. In: Software maintenance and reengineering (CSMR), 2011 15th european conference on. IEEE, pp 181\u2013190","DOI":"10.1109\/CSMR.2011.24"},{"key":"10161_CR2","unstructured":"Abidi M, Grichi M, Khomh F (2019a) Behind the scenes: developers\u2019 perception of multi-language practices. In: Proceedings of the 29th annual international conference on computer science and software engineering. IBM Corp, pp 72\u201381"},{"key":"10161_CR3","doi-asserted-by":"crossref","unstructured":"Abidi M, Grichi M, Khomh F, Gu\u00e9h\u00e9neuc YG (2019b) Code smells for multi-language systems. In: Proceedings of the 24th european conference on pattern languages of programs. ACM, p 12","DOI":"10.1145\/3361149.3361161"},{"key":"10161_CR4","doi-asserted-by":"crossref","unstructured":"Abidi M, Khomh F, Gu\u00e9h\u00e9neuc YG (2019c) Anti-patterns for multi-language systems. In: Proceedings of the 24th european conference on pattern languages of programs. ACM, p 42","DOI":"10.1145\/3361149.3364227"},{"key":"10161_CR5","doi-asserted-by":"crossref","unstructured":"Abidi M, Openja M, Khomh F (2020) Multi-language design smells: a backstage perspective. In: Proceedings of the 17th international conference on mining software repositories, pp 615\u2013618","DOI":"10.1145\/3379597.3387508"},{"issue":"3","key":"10161_CR6","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3432690","volume":"30","author":"M Abidi","year":"2021","unstructured":"Abidi M, Rahman MS, Openja M, Khomh F (2021) Are multi-language design smells fault-prone? an empirical study. ACM Trans Softw Eng Methodol (TOSEM) 30(3):1\u201356","journal-title":"ACM Trans Softw Eng Methodol (TOSEM)"},{"key":"10161_CR7","doi-asserted-by":"crossref","unstructured":"Arcoverde R, Garcia A, Figueiredo E (2011) Understanding the longevity of code smells: preliminary results of an explanatory survey. In: Proceedings of the 4th workshop on refactoring tools, pp 33\u201336","DOI":"10.1145\/1984732.1984740"},{"key":"10161_CR8","doi-asserted-by":"crossref","unstructured":"Baltes S, Diehl S (2016) Worse than spam: Issues in sampling software developers. In: Proceedings of the 10th ACM\/IEEE international symposium on empirical software engineering and measurement, pp 1\u20136","DOI":"10.1145\/2961111.2962628"},{"key":"10161_CR9","doi-asserted-by":"crossref","unstructured":"Binkley D (2007) Source code analysis: a road map. In: Future of software engineering, 2007. FOSE \u201907","DOI":"10.1109\/FOSE.2007.27"},{"key":"10161_CR10","doi-asserted-by":"crossref","unstructured":"Borrelli A, Nardone V, Di Lucca GA, Canfora G, Di Penta M (2020) Detecting video game-specific bad smells in unity projects. In: Proceedings of the 17th international conference on mining software repositories, pp 198\u2013208","DOI":"10.1145\/3379597.3387454"},{"key":"10161_CR11","doi-asserted-by":"crossref","unstructured":"Burow BD (1996) Mixed language programming. In: Computing in high energy physics\u2019 95: CHEP\u201995. World Scientific, pp 610\u2013614","DOI":"10.1142\/9789814447188_0111"},{"issue":"2","key":"10161_CR12","doi-asserted-by":"publisher","first-page":"353","DOI":"10.1007\/s00355-011-0603-9","volume":"40","author":"P Emerson","year":"2013","unstructured":"Emerson P (2013) The original borda count and partial voting. Soc Choice Welf 40(2):353\u2013358","journal-title":"Soc Choice Welf"},{"key":"10161_CR13","doi-asserted-by":"crossref","unstructured":"Fink A (2003) The survey handbook, vol 1 Sage","DOI":"10.4135\/9781412986328"},{"key":"10161_CR14","doi-asserted-by":"crossref","unstructured":"Flores E, Barr\u00f3n-Cede\u00f1o A, Rosso P, Moreno L (2011) Towards the detection of cross-language source code reuse. In: Proceedings of the 16th international conference on natural language processing and information systems. Springer","DOI":"10.1007\/978-3-642-22327-3_31"},{"issue":"2","key":"10161_CR15","first-page":"5","volume":"11","author":"FA Fontana","year":"2012","unstructured":"Fontana FA, Braione P, Zanoni M (2012) Automatic detection of bad smells in code: an experimental assessment. Journal of Object Technology 11(2):5\u20131","journal-title":"Journal of Object Technology"},{"key":"10161_CR16","unstructured":"Goedicke M, Neumann G, Zdun U (2000) Object system layer. 5th European Conference on Pattern Languages of Programms (euroPLop \u20192000)"},{"issue":"1","key":"10161_CR17","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1002\/smr.243","volume":"14","author":"M Goedicke","year":"2002","unstructured":"Goedicke M, Zdun U (2002) Piecemeal legacy migrating with an architectural pattern language: a case study. Journal of Software Maintenance and Evolution: Research and Practice 14(1):1\u201330","journal-title":"Journal of Software Maintenance and Evolution: Research and Practice"},{"key":"10161_CR18","unstructured":"Gravetter F (2012) Forzano lab research methods for the behavioral sciences"},{"key":"10161_CR19","doi-asserted-by":"crossref","unstructured":"Harman M (2010) Why source code analysis and manipulation will always be important. In: 2010 10Th IEEE working conference on source code analysis and manipulation, pp 7\u201319","DOI":"10.1109\/SCAM.2010.28"},{"key":"10161_CR20","doi-asserted-by":"crossref","unstructured":"Hunt J (1999) Java for Practitioners: An Introduction and Reference to Java and Object Orientation, 1st edn. Springer New York, Inc., Secaucus, NJ USA","DOI":"10.1007\/978-1-4471-0843-6_1"},{"key":"10161_CR21","doi-asserted-by":"crossref","unstructured":"Khomh F, Di Penta M, Gueheneuc YG (2009) An exploratory study of the impact of code smells on software change-proneness. In: Reverse engineering, 2009. WCRE\u201909. 16th working conference on. IEEE, pp 75\u201384","DOI":"10.1109\/WCRE.2009.28"},{"issue":"3","key":"10161_CR22","doi-asserted-by":"publisher","first-page":"243","DOI":"10.1007\/s10664-011-9171-y","volume":"17","author":"F Khomh","year":"2012","unstructured":"Khomh F, Di Penta M, Gu\u00e9h\u00e9neuc YG, Antoniol G (2012) An exploratory study of the impact of antipatterns on class change-and fault-proneness. Empir Softw Eng 17(3):243\u2013275","journal-title":"Empir Softw Eng"},{"key":"10161_CR23","doi-asserted-by":"crossref","unstructured":"Khomh F, Gu\u00e9h\u00e9neuc YG (2008) Do design patterns impact software quality positively?. In: Software maintenance and reengineering, 2008. CSMR 2008. 12th european conference on. IEEE, pp 274\u2013278","DOI":"10.1109\/CSMR.2008.4493325"},{"key":"10161_CR24","doi-asserted-by":"crossref","unstructured":"Khomh F, Vaucher S, Gu\u00e9h\u00e9neuc YG, Sahraoui H (2009) A bayesian approach for the detection of code and design smells. In: Quality software, 2009. QSIC\u201909. 9th international conference on. IEEE, pp 305\u2013314","DOI":"10.1109\/QSIC.2009.47"},{"key":"10161_CR25","unstructured":"Kienle HM, Kraft J, M\u00fcller HA (2012) Software reverse engineering in the domain of complex embedded systems. In: Reverse engineering-recent advances and applications. intech"},{"key":"10161_CR26","doi-asserted-by":"crossref","unstructured":"Kochhar PS, Wijedasa D, Lo D (2016) A large scale study of multiple programming languages and code quality. In: 2016 IEEE 23Rd international conference on software analysis, evolution, and reengineering (SANER), vol 1. IEEE, pp. 563\u2013573","DOI":"10.1109\/SANER.2016.112"},{"key":"10161_CR27","doi-asserted-by":"crossref","unstructured":"Kondoh G, Onodera T (2008) Finding bugs in java native interface programs. In: Proceedings of the 2008 international symposium on software testing and analysis, ISSTA \u201908. ACM, USA, pp 109\u2013118","DOI":"10.1145\/1390630.1390645"},{"key":"10161_CR28","doi-asserted-by":"crossref","unstructured":"Kontogiannis K, Linos P, Wong K (2006) Comprehension and maintenance of large-scale multi-language software applications. In: Software maintenance, 2006. ICSM\u201906. 22nd IEEE international conference on. IEEE, pp 497\u2013500","DOI":"10.1109\/ICSM.2006.20"},{"key":"10161_CR29","doi-asserted-by":"crossref","unstructured":"Kullbach B, Winter A, Dahm P, Ebert J (1998) Program comprehension in multi-language systems. In: Reverse engineering, 1998. Proceedings. Fifth working conference on. IEEE, pp 135\u2013143","DOI":"10.1109\/WCRE.1998.723183"},{"issue":"10","key":"10161_CR30","doi-asserted-by":"publisher","first-page":"207","DOI":"10.1145\/1639949.1640105","volume":"44","author":"B Lee","year":"2009","unstructured":"Lee B, Hirzel M, Grimm R, McKinley KS (2009) Debug all your code: Portable mixed-environment debugging. SIGPLAN Not 44(10):207\u2013226","journal-title":"SIGPLAN Not"},{"key":"10161_CR31","doi-asserted-by":"crossref","unstructured":"Li S, Tan G (2009) Finding bugs in exceptional situations of jni programs. In: Proceedings of the 16th ACM conference on computer and communications security, CCS \u201909. ACM, USA, pp 442\u2013452","DOI":"10.1145\/1653662.1653716"},{"key":"10161_CR32","doi-asserted-by":"crossref","unstructured":"Li S, Tan G (2011) Jet: Exception checking in the java native interface. In: Proceedings of the 2011 ACM international conference on object oriented programming systems languages and applications, OOPSLA \u201911. ACM, pp 345\u2013358","DOI":"10.1145\/2048066.2048095"},{"key":"10161_CR33","volume-title":"Java native interface: programmer\u2019s guide and reference","author":"S Liang","year":"1999","unstructured":"Liang S (1999) Java native interface: programmer\u2019s guide and reference, 1st edn. Addison-wesley Longman Publishing Co., Inc, Boston","edition":"1st edn."},{"key":"10161_CR34","doi-asserted-by":"crossref","unstructured":"Linos PK (1995) Polycare: a tool for re-engineering multi-language program integrations. In: Proceedings of First IEEE international conference on engineering of complex computer systems. ICECCS\u201995. IEEE, pp 338\u2013341","DOI":"10.1109\/ICECCS.1995.479355"},{"key":"10161_CR35","doi-asserted-by":"crossref","unstructured":"Linos PK, Chen ZH, Berrier S, O\u2019Rourke B (2003) A tool for understanding multi-language program dependencies. In: Program comprehension, 2003. 11th IEEE international workshop on. IEEE, pp 64\u201372","DOI":"10.1109\/WPC.2003.1199190"},{"key":"10161_CR36","volume-title":"Refactoring in large software projects: performing complex restructurings successfully","author":"M Lippert","year":"2006","unstructured":"Lippert M, Roock S (2006) Refactoring in large software projects: performing complex restructurings successfully. Wiley, Hoboken"},{"key":"10161_CR37","volume-title":"Java coding guidelines: 75 recommendations for reliable and secure programs","author":"F Long","year":"2013","unstructured":"Long F, Mohindra D, Seacord RC, Sutherland DF, Svoboda D (2013) Java coding guidelines: 75 recommendations for reliable and secure programs. Addison-Wesley, Boston"},{"key":"10161_CR38","doi-asserted-by":"crossref","unstructured":"Mayer P, Kirsch M, Le MA (2017) On multi-language software development, cross-language links and accompanying tools: a survey of professional software developers. Journal of Software Engineering Research and Development, 5","DOI":"10.1186\/s40411-017-0035-z"},{"key":"10161_CR39","doi-asserted-by":"crossref","unstructured":"Mayer P, Schroeder A (2012) Cross-language code analysis and refactoring. In: Source code analysis and manipulation (SCAM), 2012 IEEE 12th international working conference on. IEEE, pp 94\u2013103","DOI":"10.1109\/SCAM.2012.11"},{"key":"10161_CR40","unstructured":"Mouna A, Foutse K, Gu\u00e9h\u00e9neuc YG (2019) Anti-patterns for multi-language systems. In: 24Th european conference on pattern languages of programs (euroPLop \u201919), july 3\u20137. Irsee, ACM, p 2019"},{"key":"10161_CR41","unstructured":"Mouna A, Manel G, Foutse K (2019) Behind the scenes: Developers\u2019 perception of multi-language practices. In: 29Th annual international conference on computer science and software engineering (CASCON\u20192019). ACM"},{"key":"10161_CR42","unstructured":"Mouna A, Manel G, Foutse K, Yann-Ga\u00ebl G (2019) Code smells for multi-language systems. In: 24Th european conference on pattern languages of programs (euroPLop \u201919), july 3\u20137. Irsee, ACM, p 2019"},{"key":"10161_CR43","doi-asserted-by":"crossref","unstructured":"Muse BA, Rahman MM, Nagy C, Cleve A, Khomh F, Antoniol G (2020) On the prevalence, impact, and evolution of sql code smells in data-intensive systems. In: Proceedings of the 17th international conference on mining software repositories, pp 327\u2013338","DOI":"10.1145\/3379597.3387467"},{"key":"10161_CR44","doi-asserted-by":"crossref","unstructured":"Mushtaq Z, Rasool G (2015) Multilingual source code analysis: State of the art and challenges. In: Open source systems & technologies (ICOSST), 2015 international conference on. IEEE, pp 170\u2013175","DOI":"10.1109\/ICOSST.2015.7396422"},{"key":"10161_CR45","doi-asserted-by":"crossref","unstructured":"Mushtaq Z, Rasool G (2015) Multilingual source code analysis: State of the art and challenges. In: 2015 International conference on open source systems technologies (ICOSST), pp 170\u2013175","DOI":"10.1109\/ICOSST.2015.7396422"},{"key":"10161_CR46","doi-asserted-by":"crossref","unstructured":"Neitsch A, Wong K, Godfrey MW (2012) Build system issues in multilanguage software. In: Software maintenance (ICSM), 2012 28th IEEE international conference on. IEEE, pp 140\u2013149","DOI":"10.1109\/ICSM.2012.6405265"},{"key":"10161_CR47","doi-asserted-by":"crossref","unstructured":"Palomba F, Bavota G, Di Penta M, Oliveto R, De Lucia A (2014) Do they really smell bad? a study on developers\u2019 perception of bad code smells. In: 2014 IEEE International conference on software maintenance and evolution. IEEE, pp 101\u2013110","DOI":"10.1109\/ICSME.2014.32"},{"key":"10161_CR48","doi-asserted-by":"crossref","unstructured":"Pfeiffer RH, Wa\u0327sowski A (2012) Texmo: a multi-language development environment. In: Proceedings of the 8th european conference on modelling foundations and applications, ECMFA\u201912. Springer, Berlin, pp 178\u2013193","DOI":"10.1007\/978-3-642-31491-9_15"},{"key":"10161_CR49","doi-asserted-by":"crossref","unstructured":"Romano D, Raila P, Pinzger M, Khomh F (2012) Analyzing the impact of antipatterns on change-proneness using fine-grained source code changes. In: Reverse engineering (WCRE), 2012 19th working conference on. IEEE, pp 437\u2013446","DOI":"10.1109\/WCRE.2012.53"},{"key":"10161_CR50","doi-asserted-by":"crossref","unstructured":"Saboury A, Musavi P, Khomh F, Antoniol G (2017) An empirical study of code smells in javascript projects. In: 2017 IEEE 24Th international conference on software analysis, evolution and reengineering (SANER). IEEE, pp 294\u2013305","DOI":"10.1109\/SANER.2017.7884630"},{"key":"10161_CR51","doi-asserted-by":"publisher","DOI":"10.1201\/9780429186196","volume-title":"Handbook of parametric and nonparametric statistical procedures","author":"DJ Sheskin","year":"2020","unstructured":"Sheskin DJ (2020) Handbook of parametric and nonparametric statistical procedures. CRC Press, Boca Raton"},{"key":"10161_CR52","doi-asserted-by":"crossref","unstructured":"Soh Z, Yamashita A, Khomh F, Gu\u00e9h\u00e9neuc YG (2016) Do code smells impact the effort of different maintenance programming activities?. In: 2016 IEEE 23Rd international conference on software analysis, evolution, and reengineering (SANER), vol 1. IEEE, pp 393\u2013402","DOI":"10.1109\/SANER.2016.103"},{"key":"10161_CR53","unstructured":"Synytskyy N, Cordy JR, Dean TR (2003) Robust multilingual parsing using island grammars. In: Proceedings of the 2003 conference of the centre for advanced studies on collaborative research, CASCON \u201903. IBM Press, pp 266\u2013278"},{"key":"10161_CR54","unstructured":"Tan G, Chakradhar S, Srivaths R, Wang RD (2006) Safe java native interface. In: Proceedings of the 2006 IEEE international symposium on secure software engineering, pp 97\u2013106"},{"key":"10161_CR55","unstructured":"Tan G, Croft J (2008) An empirical security study of the native code in the jdk. In: Proceedings of the 17th conference on security symposium, SS\u201908. USENIX Association, Berkeley, pp 365\u2013377"},{"key":"10161_CR56","doi-asserted-by":"crossref","unstructured":"Tomassetti F, Torchiano M (2014) An empirical assessment of polyglot-ism in github. In: Proceedings of the 18th international conference on evaluation and assessment in software engineering, EASE \u201914. ACM, New York, pp 17:1\u201317:4","DOI":"10.1145\/2601248.2601269"},{"key":"10161_CR57","doi-asserted-by":"crossref","unstructured":"Tufano M, Palomba F, Bavota G, Oliveto R, Di Penta M, De Lucia A, Poshyvanyk D (2015) When and why your code starts to smell bad. In: 2015 IEEE\/ACM 37Th IEEE international conference on software engineering, vol 1. IEEE, pp 403\u2013414","DOI":"10.1109\/ICSE.2015.59"},{"issue":"1","key":"10161_CR58","doi-asserted-by":"publisher","first-page":"755","DOI":"10.1007\/s10664-019-09771-0","volume":"25","author":"B Xu","year":"2020","unstructured":"Xu B, An L, Thung F, Khomh F, Lo D (2020) Why reinventing the wheels? an empirical study on library reuse and re-implementation. Empir Softw Eng 25(1):755\u2013789","journal-title":"Empir Softw Eng"},{"key":"10161_CR59","doi-asserted-by":"crossref","unstructured":"Yamashita A, Moonen L (2012) Do code smells reflect important maintainability aspects?. In: Software maintenance (ICSM), 2012 28th IEEE international conference on. IEEE, pp 306\u2013315","DOI":"10.1109\/ICSM.2012.6405287"},{"key":"10161_CR60","doi-asserted-by":"crossref","unstructured":"Yamashita A, Moonen L (2013) Do developers care about code smells? an exploratory survey. In: 2013 20Th working conference on reverse engineering (WCRE). IEEE, pp 242\u2013251","DOI":"10.1109\/WCRE.2013.6671299"},{"key":"10161_CR61","volume-title":"Applications of case study research 2nd edn (applied social research methods series volume 34)","author":"RK Yin","year":"2002","unstructured":"Yin RK (2002) Applications of case study research 2nd edn (applied social research methods series volume 34). Sage Publications Inc, Thousand Oaks"},{"issue":"5","key":"10161_CR62","doi-asserted-by":"publisher","first-page":"1213","DOI":"10.1109\/TSE.2011.79","volume":"38","author":"C Zhang","year":"2012","unstructured":"Zhang C, Budgen D (2012) What do we know about the effectiveness of software design patterns? IEEE Trans Softw Eng 38(5):1213\u20131231","journal-title":"IEEE Trans Softw Eng"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-022-10161-2.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-022-10161-2\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-022-10161-2.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,7,26]],"date-time":"2022-07-26T05:11:10Z","timestamp":1658812270000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-022-10161-2"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,5,30]]},"references-count":62,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2022,9]]}},"alternative-id":["10161"],"URL":"https:\/\/doi.org\/10.1007\/s10664-022-10161-2","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,5,30]]},"assertion":[{"value":"2 March 2022","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"30 May 2022","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}],"article-number":"116"}}