Migration, Evolution and Transformation of Software (MET)
- Mike Godfrey
- Ric Holt
- Andrew Malton
Goals and Activities of MET
The MET project, which is a cooperative effort between IBM and the University of Waterloo, is centered around software change, in particular, around migration,
evolution, and transformation. These closely related concepts can be briefly characterized as follows:
- Migration is changing existing software to a new language, dialect, or
platform; the focus is on semantics-preserving translation at the level of the
- Evolutionis incremental change over a period of years; we are particularly
interested in the patterns of these changes, which may be explicitly planned or
which may result from drift due to successive, uncoordinated updates.
- Transformation is explicit, planned change of software. At the high levels,
we are interested in transformation of the software architecture; at the low level,
we are interested in code-based changes such as widths of data fields. Transformation
may or may not change the semantics of the software system.
The aim of the MET project is to improve the state-of-the-art in understanding, managing,
and effecting change to large industrial software systems. The end product will be a body
of knowledge and set of accompanying tools that will allow industrial software developers
to lower the risks and costs involved in maintaining long-lived software systems. This
project involves the formulation of theories and the design of abstractions concerning
how software is migrated, evolved, and transformed. These are validated by the design
of supporting tools and the detailed study of large industrial software systems such as DB/2.
- "Migrating Web Frameworks Using Water Transformations",
Ahmed E. Hassan and Richard C. Holt, Proceedings of COMPSAC 2003: International Computer Software and Application Conference,
Dallas, Texas, USA, November 3-6, 2003.
- "The Chaos of Software Development",
Ahmed E. Hassan & Richard C. Holt, IWPSE 2003, International Workshop on Principles of Software Evolution,
Helsinki, Finland, Sept 1-2, 2003.
- "Studying the Chaos of Code Development",
Ahmed E. Hassan & Richard C. Holt, Working Conference on Reverse Engineering, November 13-16, 2003,
Victoria, BC, Canada.
- "Predicting Change Propagation in Software Systems",
Ahmed E. Hassan and Richard C. Holt,
Submitted for Publication
- "Mining Software Repositories to Guide Software Development",
Ahmed E. Hassan,
Submitted for Publication
- "Detecting Merging and Splitting Using Origin Analysis",
Lijie Zou and Michael W. Godfrey. Proc. of 2003 Working Conference on Reverse Engineering (WCRE-03),
Victoria, BC, November 2003.
- "Toward a Taxonomy for Source Code Cloning: A Case Study",
Cory J. Kapser and Michael W. Godfrey. Presented at First Intl. Workshop on Evolution of Large-scale Industrial Software Applications (ELISA),
Amsterdam, 23 September 2003, submitted for journal review.