Special issue: software maintenance and reengineering (CSMR 2011)

The annual European Conference on Software Maintenance and Reengineering (CSMR) [1], sponsored by the IEEE Computer Society, celebrated its 15th anniversary in 2011. Lutz Richter organized the first edition of this CSMR conference series in 1997 in Berlin, Germany, with support from the Euromicro association. Since then, the topics of software maintenance, software reengineering, and reverse engineering have continued to gain importance in academia and industry, and numerous practical applications, processes, and tools to support software evolution have seen the light. Today, CSMR is regarded as the premier European conference in its research domain. It hosts a wide series of different events, including keynote talks by distinguished researchers, satellite workshops, a technical track, tutorials, a doctoral symposium, a European projects track, and an industrial forum to promote and discuss technologies and services of software evolution industries. The CSMR 2001 paper by Simon et al. on metrics-based refactoring [2] was awarded by the ERCIM Working Group on Software Evolution as the most influential paper. The 2012 edition of the CSMR conference [3] was, at least, as successful as its 2011 predecessor on which this special issue reports. Organized by Rudolf Ferenc at the University of Szeged, Hungary on 27–30 March 2012, it received more attendees and more submissions for the technical track (chaired by Tom Mens and Anthony Cleve). The newly introduced tool demonstration track (chaired by Holger Kienle and Mircea Lungu) proved highly successful, with 17 submissions out of which eight were presented during the conference, on a variety of evolution-related topics such as visualization, debugging, repository mining, source code analysis, testing, program tracing, modeling, and documentation. Another success story was the new Early Research Achievements track (chaired by Florian Deissenboeck and Gerardo Canfora), with 18 accepted presentations out of 43 submisisons. This special issue of the Journal of Software: Evolution and Process, provides a sample of active research topics, results, and challenges in the field. Five papers from the CSMR 2011 technical track were invited to submit a significantly revised and extended version to the Journal of Software: Evolution and Process, and three of them finally made it into this special issue. Harder and Göde [4] study the effect of the presence of code clones on the maintainability of a software system. To this extent, they partially replicate and extend a previous study by Krinke [5] to compare the stability of cloned code and non-cloned code. While confirming the findings of Krinke that cloned code is more stable than non-cloned code and, thus, may require less maintenance effort, they also observe a variation in clone stability caused by external characteristics such as the project environment and the temporal dimension. Frey et al. [6] propose an approach, called CloudMIG, to help software-as-a-service providers to migrate their software systems to cloud environments providing infrastructure-as-a-service or platform-as-a-service. An important activity early in this migration process is checking the conformance of the software to the specific constraints that are imposed by a cloud environment. The CloudMIG architecture proposes reusable constraint validators for this purpose. The approach is validated through the implementation of a prototype for the platform-as-a-service environment Google App Engine for Java. In addition, a quantitative evaluation of the constraint validators is performed on five open source systems. Mordal et al. [7] focus on the problem of software quality assessment and tackle the industrial need to aggregate low-level software quality metrics into coarse-grained system level metrics. They propose a metric aggregation method through the Squale model, specifically designed to address the needs of