ERCIM News No.88 on Evolving Software has been published. Guest editors: Tom Mens (University of Mons, Belgium) and Jacques Klein (University of Luxembourg). Keynote by Joost Visser, Software Improvement Group
Anthony Cleve won the IBM Belgium / F.R.S.-FNRS 2010 Award for the best PhD thesis in Computer Science and Applications on "Program Analysis and Transformation for Data-Intensive System Evolution"
It is with great sadness that we have to report that Manny Lehman, the founding father of the famous laws of software evolution, passed away on Wednesday 29th December 2010 in Jerusalem.
IWPSE-EVOL 2011 was co-located with ESEC/FSE 2011 in Szeged, Hungary, in September 2011.
A free electronic copy of the IEEE Software special issue on Software Evolution (July/August 2010) is available online.
CSMR 2013 will be held in Genova, Italy.
Numerous scientific studies of large-scale software systems have shown that most of the effort and cost spent in large software projects goes to the maintenance and evolution of existing software systems as opposed to the development of new systems from scratch. This is mainly due to the fact that software systems need to evolve continually to cope with ever-changing software requirements. Today, this is more than ever the case. Nevertheless, existing tools that try to provide support for evolution have many limitations. They are (programming) language dependent, not scalable, difficult to integrate with other tools, and they lack formal foundations.
The main goal of the proposed WG is to understand the phenomenon of software evolution, and to develop well-founded and disciplined tools and techniques to support software developers with the common problems they encounter when evolving large and complex software systems. With this initiative, we plan to become a Virtual European Research and Training Centre on Software Evolution.
The kind of evolution problems that will be addressed by this WG are very diverse. Below we mention a tentative, but inevitably incomplete, list of topics that will be addressed:
- re-engineering and reverse engineering
- software restructuring, refactoring and renovation
- model-driven software engineering and model transformation
- migration and revitalisation of legacy software
- specification or analysis of the evolution of all types of software artifacts at all levels (e.g., requirement specifications, models, metamodels, architectures, programs, test cases, documentation, bug reports, version control information, log files, release histories, language descriptions, APIs, protocols)
- consistency maintenance and inconsistency management
- co-evolution and conformance checking of architecture, design and implementation
- impact analysis, effort estimation, cost prediction, evolution metrics
- traceability analysis and change propagation
- version control, release history analysis and configuration management
- run-time adaptation and dynamic reconfiguration
- product family and product-line engineering
- methods, processes and tools for managing software evolution
- development of a formal theory of software and systems evolution