TOWARDS A LANGUAGE INDEPENDENT REFACTORING FRAMEWORK

Carlos López, Raúl Marticorena, Yania Crespo, Francisco Javier Pérez

Abstract

Using metamodels to keep source code information is one of the current trends in refactoring tools. This representation makes possible to detect refactoring opportunities, and to execute refactorings on metamodel instances. This paper describes an approach to language independent reuse in metamodel based refactoring detection and execution. We use an experimental metamodel, MOON, and analyze the problems of migrating from MOON to UML 2.0 metamodel or adapting from UML 2.0 to MOON. Some code refactorings can be detected and applied on basic UML abstractions. Nevertheless, other refactorings need information related to program instructions. “Action” concept, included in UML 2.0, is a fundamental unit of behaviour specification that allows to store program instructions and to obtain certain information related to this granularity level. Therefore, we compare the complexity of UML 2.0 metamodel with MOON metamodel as a solution for developing refactoring frameworks.

References

  1. Booch, G., Rumbaugh, J. y Jacobson, I. (1999). The Unified Modeling Language User Guide. Addison Wesley.
  2. Crespo, Y. (2000). Incremento del potencial de reutilización del software mediante refactorizaciones. PhD thesis, Universidad de Valladolid. Available at http://giro.infor.uva.es/Publications/2000/Cre00/.
  3. Demeyer, S., Tichelaar, S., and Steyaert, P. (1999). FAMIX 2.0 - the FAMOOS in-formation exchange model. Technical report, Institute of Computer Science and Applied Mathematic. University of Bern.
  4. Ducasse, S., Lanza, M., and Tichelaar, S. (2000). MOOSE: an extensible language-independent environment for reengineering object-oriented systems. In Proceedings on constructing Software Engineering Tools (CoSET 2000).
  5. Fowler, M. (2000). Refactoring. Improving the Design of Existing Code. Addison Wesley.
  6. Gamma, E., Helm, R., Johnson, R., and Vlissides, J.(1995). Design Patterns. Elements of Reusable Object Oriented Software. Addison Wesley.
  7. Mens, T. and Tourwé, T. (2004). A survey of software refactoring. IEEE Trans. Softw. Eng., 30(2):126-139.
  8. OMG 2004. Unified Modeling Language: Superstructure version 2.0. http://www.uml.org.
  9. Tichelaar, S., Ducasse, S., Demeyer, S., and Nierstrasz, O. (2000). A meta-model for language-independent refactoring. In Proceedings ISPSE 2000, pages 157- 167. IEEE.
  10. Van Gorp, P., Stenten H., Mens, T., and Demeyer, S. (2003) Towards automating source-consistent UML Refactorings. In Proceedings of UML 2003 - The Unified Modeling Language. Springer-Verlag, 2003
Download


Paper Citation


in Harvard Style

López C., Marticorena R., Crespo Y. and Javier Pérez F. (2006). TOWARDS A LANGUAGE INDEPENDENT REFACTORING FRAMEWORK . In Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT, ISBN 978-972-8865-69-6, pages 165-170. DOI: 10.5220/0001319201650170


in Bibtex Style

@conference{icsoft06,
author={Carlos López and Raúl Marticorena and Yania Crespo and Francisco Javier Pérez},
title={TOWARDS A LANGUAGE INDEPENDENT REFACTORING FRAMEWORK},
booktitle={Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT,},
year={2006},
pages={165-170},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001319201650170},
isbn={978-972-8865-69-6},
}


in EndNote Style

TY - CONF
JO - Proceedings of the First International Conference on Software and Data Technologies - Volume 1: ICSOFT,
TI - TOWARDS A LANGUAGE INDEPENDENT REFACTORING FRAMEWORK
SN - 978-972-8865-69-6
AU - López C.
AU - Marticorena R.
AU - Crespo Y.
AU - Javier Pérez F.
PY - 2006
SP - 165
EP - 170
DO - 10.5220/0001319201650170