]. B. Venners, Designing with interfaces, 1998.

R. C. Martin, Design principles and design patterns

D. Romano and M. Pinzger, Using source code metrics to predict change-prone Java interfaces, 2011 27th IEEE International Conference on Software Maintenance (ICSM), pp.303-312, 2011.
DOI : 10.1109/ICSM.2011.6080797

N. Warren, P. Bishop5, ]. E. Gamma, R. Helm, R. Johnson et al., Java in Practice Design patterns: elements of reusable object-oriented software, 1995.

S. R. Chidamber and C. F. Kemerer, A metrics suite for object oriented design, IEEE Transactions on Software Engineering, vol.20, issue.6, pp.476-493, 1994.
DOI : 10.1109/32.295895

M. Fowler, K. Beck, J. Brant, W. Opdyke, and D. Roberts, Refactoring: Improving the Design of Existing Code, 1999.
DOI : 10.1007/3-540-45672-4_31

T. Mens and T. Tourwé, A survey of software refactoring, IEEE Transactions on Software Engineering, vol.30, issue.2, pp.126-138, 2004.
DOI : 10.1109/TSE.2004.1265817

P. Mihancea and R. Marinescu, Discovering Comprehension Pitfalls in Class Hierarchies, 2009 13th European Conference on Software Maintenance and Reengineering, pp.7-16, 2009.
DOI : 10.1109/CSMR.2009.31

B. Liskov, Data abstraction and hierarchy, Proceeding of the OOPSLA'87, ser. OOPSLA '87, pp.17-34, 1987.

J. M. Bieman and B. Kang, Cohesion and reuse in an object-oriented system, Proceedings of the 1995 Symposium on Softw. reusability, ser. SSR '95, pp.259-262, 1995.

L. H. Etzkorn, S. Gholston, J. Fortune, C. Stein, D. R. Utley et al., A comparison of cohesion metrics for object-oriented systems, Information and Software Technology, vol.46, issue.10, pp.677-687, 2004.
DOI : 10.1016/j.infsof.2003.12.002

J. and A. Dallal, Measuring the Discriminative Power of Object-Oriented Class Cohesion Metrics, IEEE Transactions on Software Engineering, vol.37, issue.6, pp.788-804, 2011.
DOI : 10.1109/TSE.2010.97

M. Perepletchikov, C. Ryan, and K. Frampton, Cohesion Metrics for Predicting Maintainability of Service-Oriented Software, Seventh International Conference on Quality Software (QSIC 2007), pp.328-335, 2007.
DOI : 10.1109/QSIC.2007.4385516

L. Fernández and R. P. Na, A sensitive metric of class cohesion, Inf. Theories and Applications, vol.13, pp.82-91, 2006.

B. Henderson-sellers, Object-Oriented Metrics: Measures of Complexity, 1996.

W. Li and S. Henry, Maintenance metrics for the object oriented paradigm, [1993] Proceedings First International Software Metrics Symposium, pp.52-60, 1993.
DOI : 10.1109/METRIC.1993.263801

M. Hitz and B. Montazeri, Measuring coupling and cohesion in objectoriented systems, Proc. Intl. Sym. on Applied Corporate Computing, 1995.

H. Liu, Z. Ma, W. Shao, and Z. Niu, Schedule of Bad Smell Detection and Resolution: A New Way to Save Effort, IEEE Transactions on Software Engineering, vol.38, issue.1, pp.220-235, 2012.
DOI : 10.1109/TSE.2011.9

E. Murphy-hill, C. Parnin, and A. P. Black, How We Refactor, and How We Know It, IEEE Transactions on Software Engineering, vol.38, issue.1, pp.5-18, 2012.
DOI : 10.1109/TSE.2011.41

A. Ouni, M. Kessentini, H. A. Sahraoui, and M. Boukadoum, Maintainability defects detection and correction: a multi-objective approach, Automated Software Engineering, vol.20, issue.5, pp.47-79, 2013.
DOI : 10.1007/s10515-011-0098-8

M. Kessentini, S. Vaucher, and H. A. Sahraoui, Deviance from perfection is a better criterion than closeness to evil when identifying risky code, Proceedings of the IEEE/ACM international conference on Automated software engineering, ASE '10, pp.113-122, 2010.
DOI : 10.1145/1858996.1859015

M. Abbes, F. Khomh, Y. Gueheneuc, and G. Antoniol, An Empirical Study of the Impact of Two Antipatterns, Blob and Spaghetti Code, on Program Comprehension, 2011 15th European Conference on Software Maintenance and Reengineering, pp.181-190, 2011.
DOI : 10.1109/CSMR.2011.24

H. Abdeen and O. Shata, Characterizing and Evaluating the Impact of Software Interface Clones, International Journal of Software Engineering & Applications, vol.4, issue.1, pp.67-77, 2013.
DOI : 10.5121/ijsea.2013.4106

M. A. Boxall and S. Araban, Interface metrics for reusability analysis of components, 2004 Australian Software Engineering Conference. Proceedings., pp.40-51, 2004.
DOI : 10.1109/ASWEC.2004.1290456

H. Abdeen and O. Shata, Metrics for assessing the design of software interfaces, International Journal of Advanced Research in Computer and Communication Engineering, vol.1, issue.10, pp.737-745, 2012.

D. Kawrykow and M. Robillard, Improving API Usage through Automatic Detection of Redundant Code, 2009 IEEE/ACM International Conference on Automated Software Engineering, pp.111-122, 2009.
DOI : 10.1109/ASE.2009.62

M. Cataldo, C. De-souza, D. Bentolila, T. Miranda, and S. Nambiar, The impact of interface complexity on failures: an empirical analysis and implications for tool design, School of Computer Science, 2010.

S. Ducasse, M. Lanza, and S. Tichelaar, Moose: an Extensible Language-Independent Environment for Reengineering Object-Oriented Systems, Proceedings of CoSET '00 (2nd International Symposium on Constructing Software Engineering Tools), 2000.

S. Allier, S. Vaucher, B. Dufour, and H. A. Sahraoui, Deriving Coupling Metrics from Call Graphs, 2010 10th IEEE Working Conference on Source Code Analysis and Manipulation, pp.43-52, 2010.
DOI : 10.1109/SCAM.2010.25

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