I. [. Arango, P. Baxter, C. Freeman, and . Pidgeon, TMM: Software Maintenance by Transformation, IEEE Software, vol.3, issue.3, pp.27-39, 1986.
DOI : 10.1109/MS.1986.233411

F. Fontana, J. Dietrich, B. Walter, A. Yamashita, M. Arcoverde et al., Preliminary catalogue of anti-pattern and code smell false positives Understanding the longevity of code smells: Preliminary results of an explanatory survey, 4th Workshop on Refactoring Tools, pp.25-33, 2011.

J. Andersen and J. L. Lawall, Generic patch inference Legacy software restructuring: Analyzing a concrete case, Automated Software Engineering International Conference Proceedings of the 15th European Conference on Software Maintenance and Reengineering (CSMR'11), pp.337-346, 2008.

A. Arevalo, High-Level Views in Object-Oriented Systems using Formal Concept Analysis, Architecture sustainability . IEEE Software, vol.30, issue.6 1, pp.2640-2684, 2004.

M. U. Bhatti, N. Anquetil, and S. Ducasse, An environment for dedicated software analysis tools, ERCIM News, vol.88, pp.12-13, 2009.

[. Bryton, F. Brito-e-abreu, and M. Monteiro, Reducing Subjectivity in Code Smells Detection: Experimenting with the Long Method, 2010 Seventh International Conference on the Quality of Information and Communications Technology, pp.337-342, 2010.
DOI : 10.1109/QUATIC.2010.60

G. Bavota, A. D. Lucia, A. Marcus, and R. Oliveto, Recommendation Systems in Software Engineering, chapter Recommending Refactoring Operations in Large Software Systems, pp.387-419, 2014.
DOI : 10.1007/978-3-642-45135-5_15

[. Baroni, H. Muccini, I. Malavolta, and E. Woods, Architecture Description Leveraging Model Driven Engineering and Semantic Wikis, 2014 IEEE/IFIP Conference on Software Architecture, pp.251-254, 2014.
DOI : 10.1109/WICSA.2014.21

G. Booch, Object-Oriented Analysis and Design with Applications, p.25, 2004.

I. D. Baxter, C. Pidgeon, and M. Mehlich, DMS, Proceedings of the international workshop on Principles of software evolution , IWPSE '02, pp.625-634, 2004.
DOI : 10.1145/512035.512047

J. Brant and D. Roberts, The refactoring browser Baeza-Yates and Berthier A. Ribeiro-Neto. Modern Information Retrieval -the concepts and technology behind search, 12th European Conference on Object-Oriented Technology (Workshops, Demos, and Posters), pp.549-549, 1998.
DOI : 10.1007/3-540-49255-0_180

J. R. Cordy, T. R. Dean, A. J. Malton, and K. A. Schneider, Source transformation in software engineering using the TXL transformation system, Information and Software Technology, vol.44, issue.13, pp.827-837, 2002.
DOI : 10.1016/S0950-5849(02)00104-0

C. Paul and . Clements, A survey of architecture description languages, 8th International Workshop on Software Specification and Design, p.16, 1996.

A. Chatzigeorgiou and A. Manakos, Investigating the evolution of code smells in object-oriented systems, Innovations in Systems and Software Engineering, vol.35, issue.1, pp.3-18, 2011.
DOI : 10.1016/j.jss.2009.09.017

M. Dias, A. Bacchelli, G. Gousios, D. Cassou, and S. Ducasse, Untangling fine-grained code changes, 2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER), pp.341-350
DOI : 10.1109/SANER.2015.7081844

URL : https://hal.archives-ouvertes.fr/hal-01116225

S. Demeyer, S. Ducasse, and O. Nierstrasz, Object- Oriented Reengineering Patterns, 2002.

S. Ducasse and D. Pollet, Software Architecture Reconstruction: A Process-Oriented Taxonomy, IEEE Transactions on Software Engineering, vol.35, issue.4, pp.573-591, 2007.
DOI : 10.1109/TSE.2009.19

URL : https://hal.archives-ouvertes.fr/hal-00849009

[. Dagenais and M. P. Robillard, Recommending adaptive changes for framework evolution, ICSE '08: Proceedings of the 30th international conference on Software engineering, pp.481-490, 2008.
DOI : 10.1145/2000799.2000805

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.159.1874

M. Shepperd, W. Kozaczynski, and J. Ning, A controlled experiment investigation of an object-oriented design heuristic for maintainability Concept recognitionbased program transformation, 7th Conference on Software Maintenance, pp.129-143, 1991.

L. Erlikh, Leveraging legacy system dollars for e-business. IT Professional, pp.17-23, 2000.
DOI : 10.1109/6294.846201

M. Fowler, K. Beck, J. Brant, W. Opdyke, and D. Roberts, Refactoring, Proceedings of the 24th international conference on Software engineering , ICSE '02, pp.120-463, 1999.
DOI : 10.1145/581441.581453

[. France, S. Ghosh, E. Song, and D. Kim, A metamodeling approach to pattern-based model refactoring, IEEE Software, vol.20, issue.5, pp.52-58, 2003.
DOI : 10.1109/MS.2003.1231152

B. Fluri, M. Wuersch, M. Pinzger, and H. Gall, Change Distilling:Tree Differencing for Fine-Grained Source Code Change Extraction, GAO95] David Garlan, pp.725-743, 1995.
DOI : 10.1109/TSE.2007.70731

J. Garcia, D. Popescu, G. Edwards, and N. Medvidovic, Identifying Architectural Bad Smells, 2009 13th European Conference on Software Maintenance and Reengineering, pp.255-258, 2009.
DOI : 10.1109/CSMR.2009.59

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.184.661

[. Van-heesch and P. Avgeriou, Mature architecting -a survey about the reasoning process of professional architects, 9th Working Conference on Software Architecture, pp.260-269, 2011.

[. Henkel and A. Diwan, CatchUp!, Proceedings of the 27th international conference on Software engineering , ICSE '05, pp.274-283, 2005.
DOI : 10.1145/1062455.1062512

L. Hattori, M. Marco-d-'ambros, M. Lanza, and . Lungu, Software Evolution Comprehension: Replay to the Rescue, 2011 IEEE 19th International Conference on Program Comprehension, pp.161-170, 2011.
DOI : 10.1109/ICPC.2011.39

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.297.1356

A. Hora, A. Etien, N. Anquetil, S. Ducasse, and M. Valente, APIEvolutionMiner: Keeping API evolution under control, 2014 Software Evolution Week, IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE), p.23, 2014.
DOI : 10.1109/CSMR-WCRE.2014.6747209

URL : https://hal.archives-ouvertes.fr/hal-00991722

[. Higo, S. Kusumoto, K. Inouehl10, ]. L. Hattori, M. L. Hilliard et al., A metric-based approach to identifying refactoring opportunities for merging code clones in a java software system Journal of Software Maintenance and Evolution: Research and Practice Syde: a tool for collaborative software development Expressiveness in architecture description languages, ICSE Tool demo 3rd International Workshop on Software Architecture, pp.435-461, 1998.

[. Hayashi, M. Saeki, and M. Kurihara, Supporting refactoring activities using histories of program modification [inf12] InFusion Hydrogen, design flaw detection tool, IEICE ? Transactions on Information and Systems, vol.29, issue.4, pp.1403-1412, 2006.

J. Javed, Y. Abgaz, and C. Pahl, Composite ontology change operators and their customizable evolution strategies, Workshop on Knowledge Evolution and Ontology Dynamics, collocated at 11th International Semantic Web Conference, pp.1-12, 2012.
DOI : 10.1007/978-3-642-05290-3_68

URL : http://doras.dcu.ie/15963/1/A_Pattern-based_Framework_of_Change_Operators_for_Ontology_Evolution.pdf

[. Joshi and R. K. Joshi, Concept Analysis for Class Cohesion, 2009 13th European Conference on Software Maintenance and Reengineering, pp.237-240, 2009.
DOI : 10.1109/CSMR.2009.54

[. Järvelin and J. Kekäläinen, IR evaluation methods for retrieving highly relevant documents DECKARD: Scalable and accurate tree-based detection of code clones, 23rd Annual International ACM SIGIR Conference on Research and Development in Information Retrieval 29th International Conference on Software Engineering, pp.41-48, 2000.

X. Jiang, H. Peng, Z. Wang, W. Xing, and . Zhao, Summarizing evolutionary trajectory by grouping and aggregating relevant code changes Scripting parametric refactorings in java to retrofit design patterns, 22nd International Conference on Software Analysis, Evolution, and Reengineering 31st International Conference on Software Maintenance and EvolutionKBN07] Miryung Kim, Jonathan Beall, and David Notkin. Discovering and representing logical structure in code change, pp.1-10, 2007.

C. J. Kapser and M. W. Godfrey, "Cloning Considered Harmful" Considered Harmful, 2006 13th Working Conference on Reverse Engineering, pp.645-692, 2008.
DOI : 10.1109/WCRE.2006.1

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.771

M. Kersten and G. C. Murphy, Using task context to improve programmer productivity Discovering and representing systematic code changes, SIGSOFT '06/FSE-14: Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering 31st International Conference on Software Engineering, pp.1-11, 2006.

[. Kozaczynski, J. Ning, and A. Engberts, Program concept recognition and transformation, IEEE Transactions on Software Engineering, vol.18, issue.12, pp.1065-1075, 1992.
DOI : 10.1109/32.184761

[. Kim, D. Notkin, D. Grossman, G. Khomh, S. Vaucher et al., Identifying and Summarizing Systematic Code Changes via Rule Inference, 9th International Conference on Quality Software ICSE '07: Proceedings of the 29th international conference on Software Engineering, pp.45-62, 2007.
DOI : 10.1109/TSE.2012.16

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.298.2107

M. Lehman, Correction to "Programs, life cycles, and laws of software evolution", Proceedings of the IEEE, pp.1060-1076, 1980.
DOI : 10.1109/PROC.1981.12005

M. Lehman, Laws of software evolution revisited, European Workshop on Software Process Technology, pp.108-124, 1996.
DOI : 10.1007/BFb0017737

H. Liu, X. Guo, and W. Shao, Monitor-Based Instant Software Refactoring, IEEE Transactions on Software Engineering, vol.39, issue.8, pp.1112-1126, 2013.
DOI : 10.1109/TSE.2013.4

H. Lieberman, Your Wish is My Command: Programming by Example, 1921.

]. J. Llh-+-10, B. Lawall, R. R. Laurie, N. Hansen, G. Palix et al., Finding error handling bugs in openssl using coccinelle, 8th European Dependable Computing Conference, pp.191-196, 2010.

K. Lano and S. Kolahdouz-rahimi, Optimising modeltransformations using design patterns, 1st International Conference on Model-Driven Engineering and Software Development, pp.77-82, 2013.

W. Li and R. Shatnawi, An empirical study of the bad smells and class error probability in the post-release object-oriented system evolution, 15th International Conference on Fundamental Approaches to Software Engineering 10th European Software Engineering Conference Held Jointly with 13th International Symposium on Foundations of Software Engineering, pp.1120-1128, 2005.
DOI : 10.1016/j.jss.2006.10.018

[. Livshits and T. Zimmermann, DynaMine: finding common error patterns by mining software revision histories. SIG- SOFT Software Engineering Notes Measurement and Quality in Object-Oriented Design Detection strategies: Metrics-based rules for detecting design flaws, Mar02] Radu Marinescu 20th IEEE International Conference on Software Maintenance (ICSM'04)MB08] Slavisa Markovic and Thomas Baar. Refactoring OCL annotated UML class diagrams. Software and System Modeling, pp.296-305, 2002.

N. Moha, Y. G. Gueheneuc, L. Duchien, and A. F. Le-meur, DECOR: A Method for the Specification and Detection of Code and Design Smells, IEEE Transactions on Software Engineering, vol.36, issue.1, pp.20-36, 2010.
DOI : 10.1109/TSE.2009.50

URL : https://hal.archives-ouvertes.fr/inria-00538476

M. Murphy-hill, C. Parnin, A. P. Black, N. Meng, M. Kim et al., How we refactor, and how we know it Systematic editing: Generating program transformations from an example LASE: Locating and applying systematic edits by learning from examples, 31st International Conference on Software Engineering 32nd Conference on Programming Language Design and Implementation 35th International Conference on Software Engineering, pp.287-297, 2009.

[. Maruyama, E. Kitsu, T. Omori, S. Martin, B. Livshits et al., Slicing and replaying code change history Finding application errors and security flaws using pql: A program query language, 27th Interna- Bibliography tional Conference on Automated Software Engineering 20th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, pp.246-249, 2005.

. Mlm-+-13-]-i, P. Malavolta, H. Lago, P. Muccini, A. Pelliccione et al., What industry needs from architectural languages: A survey, IEEE Transactions on Software Engineering, vol.39, issue.9, pp.869-891, 2013.

A. Monden, D. Nakae, T. Kamiya, . Shin, K. I. Sato et al., Software quality analysis by code clones in industrial legacy software, Proceedings Eighth IEEE Symposium on Software Metrics, pp.87-94, 1928.
DOI : 10.1109/METRIC.2002.1011328

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.20.3180

T. Molderez and C. De-roover, Automated generalization and refinement of code templates with ekeko/x Tool Demonstration Track, 23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering Percepções de 395 Desenvolvedores sobre Documentação e Verificação de Arquiteturas de Software. In X Simpósio Brasileiro de Componentes, Arquiteturas e Reutilização de Software, pp.53-58, 2014.

E. W. Myers, AnO(ND) difference algorithm and its variations, Algorithmica, vol.21, issue.1, pp.251-266, 1986.
DOI : 10.1109/TSE.1975.6312866

[. Negara, M. Codoban, D. Dig, and R. E. Johnson, Mining fine-grained code changes to detect unknown change patterns, Proceedings of the 36th International Conference on Software Engineering, ICSE 2014, pp.803-813, 2014.
DOI : 10.1145/2568225.2568317

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.676.2275

N. Negara, M. Chen, R. E. Vakilian, D. Johnson, and . Dig, A Comparative Study of Manual and Automated Refactorings, 27th European Conference on Object-Oriented Programming, pp.552-576, 2013.
DOI : 10.1007/978-3-642-39038-8_23

J. M. Neighbors, The Draco Approach to Constructing Software from Reusable Components, IEEE Transactions on Software Engineering, vol.10, issue.5, pp.564-574, 1984.
DOI : 10.1109/TSE.1984.5010280

A. T. Nnn-+-13-]-hoan-anh-nguyen, T. Nguyen, T. N. Thanh-nguyen, H. Nguyen, and . Rajan, A study of repetitiveness of code changes in software evolution, 28th International Conference on Automated Software Engineering, pp.180-190, 2013.

H. A. Nnp-+-10-]-tung-thanh-nguyen, N. H. Nguyen, J. Pham, T. N. Al-kofahi, and . Nguyen, Recurring bug fixes in object-oriented programs, 32nd International Conference on Software Engineering, pp.315-324, 1920.

T. T. Nnw-+-10-]-hoan-anh-nguyen, G. Nguyen, J. Wilson, M. Anh-tuan-nguyen, T. N. Kim et al., A graphbased approach to api usage adaptation, 2010 ACM International Conference on Object Oriented Programming Systems Languages and Applications, pp.302-321, 2010.

[. Olbrich, D. S. Cruzes, V. Basili, and N. Zazworka, The evolution and impact of code smells: A case study of two open source systems, 2009 3rd International Symposium on Empirical Software Engineering and Measurement, pp.390-400, 2009.
DOI : 10.1109/ESEM.2009.5314231

W. Oizumi, A. Garcia, L. Da, S. Sousa, B. Cafeo et al., Code anomalies flock together, Proceedings of the 38th International Conference on Software Engineering, ICSE '16, pp.440-451, 2008.
DOI : 10.1145/2884781.2884868

J. Pérezpal15 and ]. F. Palomba, Refactoring Planning for Design Smell Correction in Object-Oriented Software Textual analysis for code smell detection, 37th IEEE International Conference on Software Engineering, pp.24-769, 2011.

J. Pérez, Refactoring Planning for Design Smell Correction: Summary, Opportunities and Lessons Learned, 2013 IEEE International Conference on Software Maintenance, pp.572-577, 2013.
DOI : 10.1109/ICSM.2013.98

[. Bibliography, S. Pan, E. Kim, and . James-whitehead-jr, Toward an understanding of bug fix patterns, Empirical Software Engineering, vol.14, issue.3, pp.286-315, 2009.

. Ptv-+-10-]-l, R. Passos, M. T. Terra, R. Valente, N. Diniz et al., Static architecture-conformance checking: An illustrative overview, IEEE Software, vol.27, issue.5 7, pp.82-89, 2010.

D. E. Perry, A. L. Roberts, J. Brant, and R. E. Johnson, Foundations for the study of software architecture, 16th European Conference on Software Maintenance and Reengineering E. Johnson, and Bill Opdyke. An automated refactoring tool Proceedings of ICAST '96, pp.40-52, 1992.
DOI : 10.1145/141874.141884

L. Renggli, S. Ducasse, T. Gîrba, and O. Nierstrasz, Practical dynamic grammars for dynamic languages, 4th Workshop on Dynamic Languages and Applications, p.38, 2010.
URL : https://hal.archives-ouvertes.fr/hal-00746253

C. De, R. , and K. Inoue, The ekeko/x program transformation tool A case study of cross-system porting in forked projects, 14th IEEE International Working Conference on Source Code Analysis and Manipulation 20th International Symposium on the Foundations of Software Engineering, pp.53-58, 2012.

R. Robbes and M. Roberts, Example-based program transformation Practical Analysis for Refactoring, 11th International Conference on Model Driven Engineering Languages and Systems, pp.174-188, 1999.
DOI : 10.1007/978-3-540-87875-9_13

C. De, R. , and R. Stevens, Building development tools interactively using the EKEKO meta-programming library, 2014 Software Evolution Week -IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering, CSMR-WCRE, pp.429-433, 2014.

M. T. Ramos, R. Valente, G. Terra, and . Santos, AngularJS in the wild: a survey with 460 developers, Proceedings of the 7th International Workshop on Evaluation and Usability of Programming Languages and Tools , PLATEAU 2016, pp.9-16, 2016.
DOI : 10.1145/3001878.3001881

G. Santos, N. Anquetil, A. Etien, S. Ducasse, and M. Valente, OrionPlanning: Improving modularization and checking consistency on software architecture, 2015 IEEE 3rd Working Conference on Software Visualization (VISSOFT), p.127, 2015.
DOI : 10.1109/VISSOFT.2015.7332435

URL : https://hal.archives-ouvertes.fr/hal-01185635

G. Santos, N. Anquetil, A. Etien, S. Ducasse, and M. Valente, Recording and replaying system specific, source code transformations, 2015 IEEE 15th International Working Conference on Source Code Analysis and Manipulation (SCAM), p.127, 2015.
DOI : 10.1109/SCAM.2015.7335418

URL : https://hal.archives-ouvertes.fr/hal-01185639

G. Santos, N. Anquetil, A. Etien, S. Ducasse, and M. Valente, System specific, source code transformations, 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME), p.127, 2015.
DOI : 10.1109/ICSM.2015.7332468

URL : https://hal.archives-ouvertes.fr/hal-01185637

D. Sd12-]-quinten, S. Soetens, and . Demeyer, ChEOPSJ: Change- Based Test Optimization [sis] Structural investigation of software systems (SISSy) tool, 16th European Conference on Software Maintenance and Reengineering Online; accessed 26, pp.535-538, 2012.

I. Sommerville, Software Engineering, 2000.

S. Santos, K. Paixão, N. Anquetil, A. Etien, M. Maia et al., Recommending source code locations for system specific transformations, 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER), pp.1-10, 2017.
DOI : 10.1109/SANER.2017.7884618

URL : https://hal.archives-ouvertes.fr/hal-01441790

S. Sarkar, G. S. Ramachandran, M. K. Kumar, K. Iyengar, S. Rangarajan et al., Modularization of a Large-Scale Business Application: A Case Study, IEEE Software, vol.26, issue.2, pp.28-35, 2009.
DOI : 10.1109/MS.2009.42

[. Simon, F. Steinbrückner, and C. Lewerentz, Metrics based refactoring The address, 1 edition, 5th European Conference on Software Maintenance and Reengineering Girish Suryanarayana, Ganesh Samarthyam, and Tushar Sharma. Refactoring for Software Design Smells: Managing Technical Debt, pp.30-38, 2001.
DOI : 10.1109/.2001.914965

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.28.9919

D. Silva, N. Tsantalis, and M. Valente, Why we refactor? confessions of GitHub contributors, Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering , FSE 2016, pp.1-12, 2016.
DOI : 10.1145/2950290.2950305

URL : http://arxiv.org/abs/1607.02459

[. Santos, M. T. Valente, and N. Anquetil, Remodularization analysis using semantic clustering, 2014 Software Evolution Week, IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE), pp.224-257, 2014.
DOI : 10.1109/CSMR-WCRE.2014.6747174

URL : https://hal.archives-ouvertes.fr/hal-00904409

I. K. Dag, A. Sjoberg, B. Yamashita, and . Anda, Audris Mockus, and Tore Dyba Quantifying the effect of code smells on maintenance effort, IEEE Transactions on Software Engineering, issue.8, pp.391144-1156, 2013.

M. Tufano, F. Palomba, G. Bavota, R. Oliveto, M. Di-penta et al., When and why your code starts to smell bad Using architectural patterns to define architectural decisions, 37th International Conference on Software Engineering Conference on Software Architecture and European Conference on Software Architecture, pp.403-414, 2012.

[. Terra, M. T. Valente, K. Czarnecki, and R. S. Bigonha, Recommending Refactorings to Reverse Software Architecture Erosion, 2012 16th European Conference on Software Maintenance and Reengineering, pp.335-340, 2012.
DOI : 10.1109/CSMR.2012.40

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.387.8552

S. Verónica-uquillas-gómez, T. D. Ducasse, and . Hondt, Visually supporting source code changes integration: the Torch dashboard, Proceedings of the 17th Working Conference on Reverse Engineering (WCRE'10), pp.55-64, 2010.

. Vcm-+-13-]-m, N. Vakilian, R. Z. Chen, S. Moghaddam, R. E. Negara et al., A compositional paradigm of automating refactorings, 27th European Conference on Object-Oriented Programming, pp.527-551, 2013.

M. Verbaere, R. Ettinger, and O. De-moor, JunGL, Proceeding of the 28th international conference on Software engineering , ICSE '06, pp.172-181, 1920.
DOI : 10.1145/1134285.1134311

S. Vaucher, F. Khomh, N. Moha, and Y. Gueheneuc, Tracking Design Smells: Lessons from a Study of God Classes, 2009 16th Working Conference on Reverse Engineering, pp.145-154, 2009.
DOI : 10.1109/WCRE.2009.23

URL : https://hal.archives-ouvertes.fr/inria-00512134

A. Yamashita, Assessing the capability of code smells to explain maintenance problems: an empirical study combining quantitative and qualitative data, Empirical Software Engineering, vol.23, issue.3, pp.1111-1143, 2014.
DOI : 10.1002/smr.521

A. Ying, G. Murphy, R. Ng, and M. Chu-carroll, Predicting source code changes by mining change history, IEEE Transactions on Software Engineering, vol.30, issue.9, pp.573-586, 2004.
DOI : 10.1109/TSE.2004.52

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.186.4808

M. Zhang, T. Hall, and N. Baddoo, Code Bad Smells: a review of current knowledge, Journal of Software Maintenance and Evolution: Research and Practice, vol.33, issue.9, pp.179-202, 2011.
DOI : 10.2307/2529310

T. Zhang, M. Song, J. Pinedo, and M. Kim, Interactive Code Review for Systematic Changes, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, pp.1-12, 2015.
DOI : 10.1109/ICSE.2015.33