Massimiliano Di Penta

Applying Search-Based Optimization Techniques to Software Engineering Problems: Challenges and Practical Solutions

Software engineering is permeated of problems for which it is not possible to find a solution in polynomial time. For this reason, the application of search-based optimization techniques to a number of software engineering problems, for instance related to testing, refactoring, and project management has proven to be extremely successfully. The goal of this tutorial is to provide an overview of the applicability of search-based optimization techniques to software engineering problems, also highlighting how some peculiar aspects of software engineering make the application of purely automated techniques challenging. The tutorial will be complemented by a "hands-on" session in which participants will tackle simple software engineering problems using genetic algorithms. Last, but not least, the tutorial will outline how search-based optimization techniques could be applied to current and emerging software engineering research topics.

Speaker's Bio
Massimiliano Di Penta is associate professor at the University of Sannio, Italy. His research interests include software maintenance and evolution, mining software repositories, empirical software engineering, search-based software engineering, and testing. He is author of over 200 papers appeared in international journals, conferences and workshops. He has received a number of awards including three ACM SIGSOFT Distinguished paper awards and other best paper and best reviewer awards. He serves and has served in the organizing and program committees of over 100 conferences such as ICSE, FSE, ASE, ICSM, ICPC, GECCO, MSR WCRE, and others.He is currently member of the steering committee of ICSME, MSR, and PROMISE. Previously, he has been steering committee member of other conferences, including SSBSE, ICPC, SCAM, and WCRE. He is in the editorial board of IEEE Transactions on Software Engineering, the Empirical Software Engineering Journal edited by Springer, and of the Journal of Software: Evolution and Processes edited by Wiley. Further info on