F. B. Abreu and M. Goulao, Coupling and cohesion as modularization drivers: are we being over-persuaded? In CSMR '01, pp.47-57, 2001.

M. Bauer and M. Trifu, Architecture-aware adaptive clustering of OO systems, Eighth European Conference on Software Maintenance and Reengineering, 2004. CSMR 2004. Proceedings., pp.3-14, 2004.
DOI : 10.1109/CSMR.2004.1281401

L. C. Briand, J. W. Daly, and J. Wüst, A unified framework for cohesion measurement in object-oriented systems, Proceedings Fourth International Software Metrics Symposium, pp.65-117, 1998.
DOI : 10.1109/METRIC.1997.637164

W. L. Chapman, J. Rozenblit, and A. T. Bahill, System design is an NP-complete problem, Systems Engineering, vol.3, issue.3, pp.222-229, 2001.
DOI : 10.1002/sys.1018

J. Clarke, J. J. Dolado, M. Harman, B. Jones, M. Lumkin et al., Reformulating software engineering as a search problem, IEEE Proceedings on Software, pp.161-175, 2003.
DOI : 10.1049/ip-sen:20030559

F. Deremer and H. H. Kron, Programming in the large versus programming in the small, IEEE TSE, vol.2, issue.2, pp.80-86, 1976.

D. Doval, S. Mancoridis, and B. S. Mitchell, Automatic clustering of software systems using a genetic algorithm, STEP '99. Proceedings Ninth International Workshop Software Technology and Engineering Practice, p.73, 1999.
DOI : 10.1109/STEP.1999.798481

S. Eick, T. Graves, A. Karr, J. Marron, and A. Mockus, Does code decay? Assessing the evidence from change management data, IEEE Transactions on Software Engineering, vol.27, issue.1, pp.1-12, 2001.
DOI : 10.1109/32.895984

A. Farrugia, Vertex-partitioning into fixed additive inducedhereditary properties is np-hard, The Electronic Journal of Combinatorics, vol.11, 2004.

J. A. Ferland and D. Costa, Heuristic search methods for combinatorial programming problems, 2001.

M. Fowler, Reducing coupling, IEEE Software, vol.18, issue.4, 2001.
DOI : 10.1109/MS.2001.936226

W. G. Griswold and D. Notkin, Automated assistance for program restructuring, ACM Transactions on Software Engineering and Methodology, vol.2, issue.3, pp.228-269, 1993.
DOI : 10.1145/152388.152389

M. Harman, The Current State and Future of Search Based Software Engineering, Future of Software Engineering (FOSE '07), pp.342-357, 2007.
DOI : 10.1109/FOSE.2007.29

M. Harman, R. Hierons, and M. Proctor, A new representation and crossover operator for search-based optimization of software modularization, GECCO '02, pp.1351-1358, 2002.

M. Harman and L. Tratt, Pareto optimal search based refactoring at the design level, Proceedings of the 9th annual conference on Genetic and evolutionary computation , GECCO '07, pp.1106-1113, 2007.
DOI : 10.1145/1276958.1277176

S. Kirkpatrick, C. D. Jr, and M. P. Vecchi, Optimization by Simulated Annealing, Science, vol.220, issue.4598, pp.671-680, 1983.
DOI : 10.1126/science.220.4598.671

X. Liu, S. Swift, and A. Tucker, Using evolutionary algorithms to tackle large scale grouping problems Program restructuring using clustering techniques, GECCO '01, pp.1261-1279, 2001.

R. Lutz, Evolving good hierarchical decompositions of complex systems, Journal of Systems Architecture, vol.47, issue.7, pp.613-634, 2001.
DOI : 10.1016/S1383-7621(01)00019-4

H. Maini, K. Mehrotra, C. Mohan, and S. Ranka, Genetic algorithms for graph partitioning and incremental graph partitioning, Supercomputing '94, pp.449-457, 1994.

S. Mancoridis and B. S. Mitchell, Using automatic clustering to produce high-level system organizations of source code, Proceedings. 6th International Workshop on Program Comprehension. IWPC'98 (Cat. No.98TB100242), 1998.
DOI : 10.1109/WPC.1998.693283

S. Mancoridis, B. S. Mitchell, Y. Chen, and E. R. Gansner, Bunch: a clustering tool for the recovery and maintenance of software system structures, Proceedings IEEE International Conference on Software Maintenance, 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360), 1999.
DOI : 10.1109/ICSM.1999.792498

R. C. Martin, Agile Software Development. Principles, Patterns, and Practices, 2002.

R. C. Martin, The tipping point: Stability and instability in OO design, 2005.

B. S. Mitchell and S. Mancoridis, Using heuristic search techniques to extract design abstractions from source code, GECCO '02, pp.1375-1382, 2002.

B. S. Mitchell and S. Mancoridis, On the automatic modularization of software systems using the Bunch tool, IEEE Transactions on Software Engineering, vol.32, issue.3, pp.193-208, 2006.
DOI : 10.1109/TSE.2006.31

B. S. Mitchell and S. Mancoridis, On the evaluation of the bunch search-based software modularization algorithm. Soft Computing -A Fusion of Foundations, Methodologies and Applications, pp.77-93, 2008.

B. S. Mitchell, S. Mancoridis, and M. Traverso, Using Interconnection Style Rules to Infer Software Architecture Relations, GECCO '04, 2004.
DOI : 10.1007/978-3-540-24855-2_158

M. O. Keeffe and M. O. Cinnéide, Search-based software maintenance, CSMR '04, pp.249-260, 2006.

M. O. Keeffe and M. O. Cinnéide, Search-based refactoring for software maintenance, Journal of Systems and Software, vol.81, issue.4, pp.502-516, 2008.

O. Seng, M. Bauer, M. Biehl, and G. Pache, Search-based improvement of subsystem decompositions, Proceedings of the 2005 conference on Genetic and evolutionary computation , GECCO '05, pp.1045-1051, 2005.
DOI : 10.1145/1068009.1068186

G. Serban and L. G. Czibula, Restructuring software systems using clustering, 2007 22nd international symposium on computer and information sciences, pp.1-6, 2007.
DOI : 10.1109/ISCIS.2007.4456872

V. Tzerpos and R. C. Holt, The Orphan Adoption problem in architecture maintenance, Proceedings of the Fourth Working Conference on Reverse Engineering, p.76, 1997.
DOI : 10.1109/WCRE.1997.624578