Export Citations
IWPSE-Evol'09 merges the International Workshop on Principles of Software Evolution (IWPSE) and the annual ERCIM Workshop on Software Evolution (Evol), and is the premier event dedicated to software evolution in 2009. To celebrate the 10th anniversary of IWPSE, the 5th anniversary of the ERCIM evolution workshop, and the 20th anniversary of ERCIM itself, we have chosen to join forces by organising a common event at ESEC/FSE 2009, under the special theme "The Future of Software Evolution". We explicitly solicited submissions that take a historical perspective on a particular facet of software evolution research, practice or education, argue for the current challenges, and speculate on what the future might bring.
We received 36 submissions, 20 of which were full papers. The short papers comprised 14 position papers and 2 tool papers. We asked authors to classify their submissions according to 15 topics, in order to facilitate matching with the expertise of the program committee members. Every paper could be classified in more than one topic. To give an idea of current research in software evolution, we list the six most popular topics:
Processes, paradigms and methodologies for software evolution (14 papers)
Measuring, analysing and visualising evolution (11 papers)
Empirical studies and experience reports (10 papers)
Consistency management and impact analysis (7 papers)
History and future of software evolution (the workshop's theme); applying software evolution (each topic with 6 papers)
After peer review and discussion of the submitted papers by an international program committee of experts in the field, only 10 full papers and 8 short papers were accepted. As can be seen from the table of contents of these proceedings, the accepted papers cover a very wide range of issues, from specific techniques to cope with software evolution to infrastructure that facilitates research in this field, and approaches, from formal to empirical. We hope that these proceedings will serve as a valuable reference for future software evolution researchers and for developers facing the problems of ever-changing software systems.
Given the historical perspective of this year's edition of the joint workshop, the program chairs invited Takuya Katayama (Professor at the Japan Advanced Institute of Science and Technology), the founding father of the IWPSE workshop series, and Tom Mens (Professor at the University of Mons, Belgium), the chair and founding father of the ERCIM Working Group on Software Evolution, to give anniversary talks on IWPSE and EVOL, respectively. They accepted the challenge to look back on the history of IWPSE and the ERCIM Working Group, and to highlight future opportunities for software evolution research.
We are also delighted that Hausi Müller (Professor at the University of Victoria, Canada) accepted our invitation to give a keynote talk on a particular field of software evolution that has seen quite some activity in recent years: run-time evolution to enable autonomic systems that self-adapt to changing environments.
Proceeding Downloads
The ERCIM working group on software evolution: the past and the future
The ERCIM Working Group on Software Evolution is celebrating its 5th anniversary. On this occasion, we review the goals that we have set ourselves and have a look at what we have achieved so far. We also look forward by revisiting and updating the ...
Learning lessons from the past: how IWPSE has started, and where we should go
IWPSE was born in a project which has started 10 years ago, supported by Japanese government, and involved most of representative researchers on software in Japan for studying how to build evolvable software. IWPSE served as a window of the project to ...
Towards self-adaptive software-intensive systems
With the rapid growth of web services and socio-technical ecosystems, the management complexity of these modern, decentralized, distributed computing systems presents significant challenges for businesses and often exceeds the capabilities of human ...
The role of patch review in software evolution: an analysis of the mozilla firefox
Patch review is the basic mechanism for validating the design and implementation of patches and maintaining consistency in some commercial and Free/Libre/Open Source Software (FLOSS) projects. We examine the inner-workings of the development process of ...
Research friendly software repositories
What is the future of software evolution? In 1974, Meir M. Lehman had a vision of software evolution being driven by empirical studies of software repositories, and of a theory based on those empirical results. However, that scenario is yet to come. ...
Combined visualization of structural and metric information for software evolution analysis
This paper discusses a proposal for the visualization of software evolution, with a focus on combining insight on changes that affect software metrics at project and class level, the project structure, the class hierarchy and the viewing of source code ...
Collateral evolution of applications and databases
Separating the evolution of an application from the evolution of its persistent data, or from the evolution of the database system used to store the data can have collateral effects, such as data loss, program failure, or decreased performance. In this ...
Evolution of software development standards in the military domain and effects on software applications
System life cycle tends to be longer in military applications, reaching over 30 years in specific examples. Development and maintenance of software contained by these systems are regulated by software development standards. Such standards are being ...
Increasing efficiency and effectiveness of software product line evolution: an infrastructure on top of configuration management
Software Product Line Engineering entails the strategic development of software assets that are to be reused many times across the members of a product line. Assuring that the investment in reuse holds over time is an important requirement in this case. ...
Mining trends of library usage
A library is available in multiple versions. Which one should I use? Has it been widely adopted already? Was it a good decision to switch to the newest version? We have mined hundreds of open-source projects for their library dependencies, and ...
A role-based crosscutting concerns mining approach to evolve Java systems towards AOP
A key step in the evolution of a Java system towards the aspect oriented paradigm is the identification of crosscutting concerns that need to be refactored.
This paper proposes an approach to identify concerns and the crosscutting among them in existing ...
A "quick and dirty" meet-in-the-middle approach for migrating to SOA
Traditional approaches to migrate a legacy system toward SOA are based on code isolation strategies to extract Web services code, i.e. portions of code devoted to implement the functionalities of interest. Usually these approaches produce good SOA ...
Time warp, an approach for reasoning over system histories
The version history of a software system contains a wealth of information that can assist developers in their daily implementation and maintenance tasks. By reasoning over the role of certain code entities in previous versions of the system, developers ...
Controlled evolution of adaptive programs
Adaptive programming (AP) is a programming paradigm for expressing structure-shy computations over semi-structured data graphs. Structure-shyness means that adaptive programs hard code a minimal set of assumptions about the structure of their input. ...
Perspectives on automated correction of bad smells
Keeping a software system conformant with a desired architecture and consistent with good design principles is a recurring task during the software evolution process. Deviations from good design principles can manifest in the form of bad smells: ...
An effective framework for assume-guarantee verification of evolving component-based software
This paper proposes an effective framework for the assume-guarantee verification of component-based software in the context of component evolution at system design level. In this framework, when a component is evolved after adapting some refinements, we ...
Software process data quality and characteristics: a historical view on open and closed source projects
Software process data gathered from bug tracking databases and version control system log files are a very valuable source to analyze the evolution and history of a project or predict its future. These data are used for instance to predict defects, ...
Measure software - and its evolution - using information content
To be able to examine software evolution - variation in software over a sequence of releases - or to compare differing versions of software with each other, we need to be able to measure artefacts representative of the software or its creation process. ...
An analysis method for improving a bug modification process in open source software development
As open source software products have evolved over time to satisfy a variety of demands from increasing users, they have become large and complex in general. Open source developers often face with challenges in fixing a considerable amount of bugs which ...
Researcher profile: a web 2.0 application for visualising research communities
We introduce a Web 2.0 application for sharing research information within a community of collaborating researchers. The application extends the social networking application Facebook with support for visualising how researchers belonging to the same ...
How developer communication frequency relates to bug introducing changes
Communication between developers plays a very central role in team-based software development for a variety of tasks such as coordinating development and maintenance activities, discussing requirements for better comprehension, assessing alternative ...
- Proceedings of the joint international and annual ERCIM workshops on Principles of software evolution (IWPSE) and software evolution (Evol) workshops