Available online at www.sciencedirect.com
The Journal of Systems and Software 81 (2008) 461–462 www.elsevier.com/locate/jss
Editorial
Guest Editor’s Introduction: 10th Conference on Software Maintenance and Reengineering
Existing software systems have to be constantly maintained and reengineered to preserve their business value, allowing to continue to use them effectively to meet new and modified requirements. Moreover, the unceasing evolution of methods and technologies in software systems development is speeding up the need to evolve existing systems towards new and modern environments. The usage of new technologies introduce new problems in the maintenance and reengineering of the systems developed using them, requiring further new solutions to well face this evolution. The European Conference on Software Maintenance and Reengineering (CSMR), the leading European conference on the theory and practice of maintenance, reengineering and the evolution of software systems, aims to be a reference point where new advances in the research of methods and techniques to efficiently and effectively maintain and evolve software systems are presented and discussed, as well as to promote cooperation among researchers to face problems and to provide new solutions to overcome them. Thus, practitioners and researchers from academia, government, and industry meet annually at the CSMR to exchange knowledge, experience, and new ideas, as well as to share and stimulate new solutions to the many problems that arise in maintaining and reengineering software systems. Along its first ten years, CSMR has grown more and more, becoming an important European forum for discussion and exchange of research and experience among researchers and practitioners in the field of Software Engineering. It attracts contributions from many countries all over the world. This issue of the Journal of Systems and Software features extended versions of papers selected from the 10th edition of the Conference on Software Maintenance and Reengineering (CSMR 2006) held in Bari, Italy, on 22–24 March, 2006. Sixty-five technical papers, from countries across the world, were submitted to CSMR 2006. Each paper was reviewed at least by three members of the Program Committee and twenty-seven full papers and four short papers were
0164-1212/$ - see front matter Ó 2007 Elsevier Inc. All rights reserved. doi:10.1016/j.jss.2007.06.001
accepted for presentation at the conference and inclusion in the Proceedings, published by the IEEE Computer Society. After the conference, seven papers were selected by the General and Program Chairs for submission to this special issue. The selection was based on the original comments of members of the CSMR 2006 Program Committee that reviewed the submitted papers, and on the presentations at the conference. The authors of the selected papers were asked to submit a significant revised and extended version of their papers presented at the conference, and each of these papers was extensively reviewed by some of the members of the CSMR 2006 Program Committee and the General and Program Chairs. The final selection of the papers in this issue was not easy; but thanks to the work of all the reviewers we were able to select the scientifically interesting four papers to publish in this issue. The main theme of CSMR06 has been ‘‘Developing maintainable and maintaining Service Oriented Software Systems (SOSS)’’. Indeed, the development of service based systems, such as web services, is increasing thus we have to face new issues and problems to develop, maintain and evolve SOSS. Thus the first paper in this special issue is one tackling the problem of the migration of legacy systems to Service Oriented Architectures (SOA). The title of the paper is ‘‘A Wrapping Approach for Migrating Legacy System Interactive Functionalities to Service Oriented Architectures’’, by G. Canfora, A.R. Fasolino, G. Frattolillo, and P. Tramontana. The paper presents a black-box modernization approach to expose interactive functionalities of legacy systems as services. The original user interface of the legacy system is transformed into a request/ response interface of a SOA by using a wrapper that is able to interact with the system on behalf of the user. The wrapper behavior is defined in the form of Finite State Machines retrievable by black-box reverse engineering of the human– computer interface. The defined wrapper-based migration process is described in the paper, together with the results of case studies showing the process effectiveness and the quality of resulting services.
462
Editorial / The Journal of Systems and Software 81 (2008) 461–462
The second paper is about the dynamic analysis of Object Oriented systems. The paper ‘‘Dynamic Object Process Graphs’’, by J. Quante, and R. Koschke, describes a new technique to extract object process graphs through dynamic analysis and discusses several applications, in particular program understanding and protocol recovery. Object process graphs are a finite concise description of dynamic object traces representing control dependencies and loops explicitly. The proposed technique allows to overcome some of the problem with object traces, that can be very large and not represent the control dependencies and completely unfold loops. The paper also describes a case study that illustrates and demonstrates use and feasibility of the technique. Search-based approaches are more and more applied in Software Engineering; the third paper ‘‘Search-Based Refactoring for Software Maintenance‘‘, by M. O’Keeffe and M. O’Cinne´ide, is just on the definition of a searchbased approach in the refactoring of Object Oriented systems. The authors propose a novel approach to automate design improvement where the refactoring task is considered as a search problem: given a design quality function, automated refactoring is applied to a program in order to move through the space of alternative designs and search for those of highest quality. The approach has been validated by two case studies, where programs are automatically refactored to increase flexibility, reusability and understandability as defined by a contemporary quality model. The fourth paper is ‘‘Model-driven Migration of Supervisory Machine Control Architectures’’, by B. Graaf, S. Weber and A. van Deursen. The paper faces the problem of the migration of Supervisory Machine Control (SMC) architectures towards a product-line approach that supports model-driven development and code generation. The authors propose a generic migration approach, based on model transformations, that includes normalisation of legacy architectures before their actual transformation. The applicability of the model-driven approach is illustrated by migrating (part of) the supervisory control architecture of a wafer scanner developed by ASML.
We want to thank the authors of the papers considered for this special issue as well as all the authors of papers presented at CSMR06: their effort produced a significant contribution that span a broad range of topics in the field of the research on software maintenance and reengineering. We also thank the CSMR06 Program Committee members for their valuable work in reviewing and selecting the papers and in promoting the conference, the chairs of the special sessions, the chairs of the organizing committee together with all the people that helped in arranging the conference, and the members of the Steering Committee for their encouragement and advices. We want to thank all the attendees of CSMR 2006 who made it a successful event. We are especially grateful to the reviewers of this special issue for their careful evaluations. Finally, we thank David Card, Editor-In-Chief, Journal of Systems and Software, for his support in putting together this special issue. Giuseppe A. Di Lucca CSMR 2006 Program Chair RCOST – Research Centre on Software Technology, University of Sannio, Palazzo ex Poste, via Traiano, 82100 Benevento, Italy E-mail address:
[email protected] Nicolas Gold CSMR 2006 Program Co-Chair Department of Computer Science – King’s College London, Strand, London WC2R 2LS, United Kingdom E-mail address:
[email protected] Giuseppe Visaggio CSMR 2006 General Chair Department of Informatics – University of Bari, Via E. Orabona, 4, 70126 Bari, Italy E-mail address:
[email protected] Available online 10 June 2007