An ADM-based Method for Migrating CMS-based Web Applications: Extracting ASTM Models from PHP Code

Feliu Trias, Valeria de Castro, Marcos López-Sanz, Esperanza Marcos

Abstract

In recent years, Architecture-Driven Modernization (ADM) is gaining increasing acceptance in software reengineering processes of existing systems. It can help reduce reengineering costs by automating the activities, such as extracting models from the source code. This is specially crucial in the reengineering of CMS-based Web applications. At time of writing there are no methods that could be used in that context. Hence, we define an ADM-based method for migrating CMS-based Web applications. In the context of this method, we present in this paper the implementation of the text-to-model (M2T) transformations to extract models from PHP code. These models conform to Abstract Syntax Tree Metamodel (ASTM) a standard metamodel proposed by ADM. To implement these transformations we performed three activities: 1) definition of a PHP grammar, 2) mapping PHP grammar elements to elements of ASTM and 3) implementation of a model extractor. To show the feasibility of our approach we use a real example of PHP code from a CMS-based Web application implemented in Drupal.

References

  1. Chikofsky, E. J., Cross, J. H.: Reverse Engineering and Design Recovery: A Taxonomy. IEEE Software. 7, 13-17.
  2. Mellor, S. J., Scott, K., Uhl, A., Weise, D.: Model-Driven Architecture. In: (Eds.), J.-M.B. and Z. B. (ed.) Advances in Object-Oriented Information Systems. pp. 233-239. SpringerVerlag Berlin Heidelberg 2002 (2002).
  3. Pérez-castillo, R., García, I., Guzmán, R. D., Caivano, D., Piattini, M.: Database Schema Elicitation to Modernize Relational Databases. 14th International Conference on Enterprise Information Systems. pp. 126-132. Springer Berlin, Wroclaw, Poland (2012).
  4. Abstract Syntax Tree Metamodel, http://www.omg.org/spec/ASTM/1.0.
  5. Pérez-Castillo, R., de Guzmán, I.G.-R., Piattini, M.: Knowledge Discovery MetamodelISO/IEC 19506: A standard to modernize legacy systems. Computer Standards & Interfaces. 33, 519-532 (2011).
  6. Structured Metrics Metamodel, http://www.omg.org/spec/SMM/.
  7. Cánovas Izquierdo, J. L., García Molina, J.: Extracting models from source code in software modernization. Software & Systems Modeling. 1-22 (2012).
  8. Boiko, B.: Understanding Content Management. Bulletin of the American Society for Information Science and Technology. 28, 8-13 (2001).
  9. Trias, F., De Castro, V., López-Sanz, M., Marcos, E.: A Systematic Literature Review on CMS-based Web Applications. ICSOFT (2013).
  10. Drupal CMS, http://drupal.org/.
  11. Joomla! CMS, http://www.joomla.org/.
  12. Wordpress CMS, http://wordpress.org/.
  13. Shreves, R.: Open Source CMS Market Share. , Bali, Indonesia (2011).
  14. Krause, H., Porembski, M., Stahl, T., Steinkamp, M., Wittm, N., Straße, A.: DynaMod Project: Dynamic Analysis for Model-Driven Software Modernization. Engineering. pp. 1- 2.
  15. Sadovykh, A., Vigier, L., Hoffmann, A., Grossmann, J., Ritter, T., Gomez, E., Estekhin, O.: Architecture Driven Modernization in Practice: Study Results. 2009 14th IEEE International Conference on Engineering of Complex Computer Systems. pp. 50-57. Ieee (2009).
  16. Perez-Castillo, R., de Guzman, I.G.-R., Caballero, I., Polo, M., Piattini, M.: PRECISO: A Reverse Engineering Tool to Discover Web Services from Relational Databases. 16th Working Conference on Reverse Engineering. pp. 309-310. Ieee (2009).
  17. Bruneliere, H., Cabot, J., Jouault, F., Madiot, F.: MoDisco: A Generic And Extensible Framework For Model Driven Reverse Engineering. International conference on Automated software engineering - ASE 7810. pp. 173-174 (2010).
  18. Reus, T., Geers, H., Deursen, A.V.: Harvesting Software Systems for MDA-Based Reengineering. Second European Conference, ECMDA-FA. pp. 213-225 (2006).
  19. Vasilecas, O., Normantas, K.: Deriving Business Rules from the Models of Existing Information Systems. 95-100 (2011).
  20. Trias, F.: Building CMS-based Web Applications Using a Model-driven Approach. Sixth International Conference on Research Challenges in Information Science (RCIS). pp. 1 - 6 (2012).
  21. ISO/IEC 14977:1996 - EBNF, http://www.iso.org/iso/catalogue_detail.htm? csnumber=26153.
  22. Budinsky, F.: Eclipse Modeling Framework, (2008).
Download


Paper Citation


in Harvard Style

Trias F., de Castro V., López-Sanz M. and Marcos E. (2013). An ADM-based Method for Migrating CMS-based Web Applications: Extracting ASTM Models from PHP Code . In Proceedings of the 1st International Workshop in Software Evolution and Modernization - Volume 1: SEM, (ENASE 2013) ISBN 978-989-8565-66-2, pages 85-92. DOI: 10.5220/0004602900850092


in Bibtex Style

@conference{sem13,
author={Feliu Trias and Valeria de Castro and Marcos López-Sanz and Esperanza Marcos},
title={An ADM-based Method for Migrating CMS-based Web Applications: Extracting ASTM Models from PHP Code},
booktitle={Proceedings of the 1st International Workshop in Software Evolution and Modernization - Volume 1: SEM, (ENASE 2013)},
year={2013},
pages={85-92},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0004602900850092},
isbn={978-989-8565-66-2},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 1st International Workshop in Software Evolution and Modernization - Volume 1: SEM, (ENASE 2013)
TI - An ADM-based Method for Migrating CMS-based Web Applications: Extracting ASTM Models from PHP Code
SN - 978-989-8565-66-2
AU - Trias F.
AU - de Castro V.
AU - López-Sanz M.
AU - Marcos E.
PY - 2013
SP - 85
EP - 92
DO - 10.5220/0004602900850092