skip to main content
10.1145/2401603.2401681acmotherconferencesArticle/Chapter ViewAbstractPublication PagesracsConference Proceedingsconference-collections
research-article

Reducing time and effort in legacy systems reengineering to MDD using metaprogramming

Published: 23 October 2012 Publication History

Abstract

Model-Driven Development (MDD) has been a subject of several studies focused on software development. MDD aims to keep the model consistent with the implementation and most studies in this area are restricted to show how to transform domain models to implement different applications. However, a problem that still challenges the researchers is to develop a practical approach to support the reengineering of a legacy system, migrating the system for using MDD and reducing time and effort spent in this process. In this sense, the physical model of the database and metaprogramming techniques can assist in this reengineering, automating partially the generation of modeling and implementation artifacts. Focusing on these ideas, this article presents an approach for Software Reengineering of a legacy application from its database, using MDD and metaprogramming. The proposed approach was evaluated through the reengineering of a legacy system in the academic domain from a database with 155 tables.

References

[1]
C. Bauer and G. King. Java Persistance with Hibernate. A1bazaar, 2006.
[2]
T. J. Bittar, R. P. Fortes, L. L. Lobato, and W. M. Watanabe. Web communication and interaction modeling using model-driven development. In Proceedings of the 27th ACM international conference on Design of communication, SIGDOC '09, pages 193--198, New York, NY, USA, 2009. ACM.
[3]
J. Bosch and P. Bosch-Sijtsema. From integration to composition: On the impact of software product lines, global development and ecosystems. Journal of Systems and Software, 83(1):67--76, 2010.
[4]
L. Chen, J. Wang, M. Xu, and Z. Zeng. Reengineering of java legacy system based on aspect-oriented programming. In Education Technology and Computer Science (ETCS), 2010 Second International Workshop on, volume 3, pages 220--223. IEEE, 2010.
[5]
R. H. Chiang, T. M. Barron, and V. C. Storey. Reverse engineering of relational databases: Extraction of an eer model from a relational database. Data & Knowledge Engineering, 12(2):107--142, 1994.
[6]
E. Chikofsky, J. Cross, et al. Reverse engineering and design recovery: A taxonomy. Software, IEEE, 7(1):13--17, jan. 1990.
[7]
J. Cordy and M. Shukla. Practical metaprogramming. In Proceedings of the 1992 conference of the Centre for Advanced Studies on Collaborative research-Volume 1, pages 215--224. IBM Press, 1992.
[8]
K. Czarnecki and U. W. Eisenecker. Generative programming: methods, tools, and applications. ACM Press/Addison-Wesley Publishing Co., New York, NY, USA, 2000.
[9]
K. Czarnecki and S. Helsen. Classification of model transformation approaches. In OOPSLA'03 Workshop on Generative Techniques in the Context of Model-Driven Architecture, 2003.
[10]
I. R. Forman and N. Forman. Java Reflection in Action (In Action series). Manning Publications Co., Greenwich, CT, USA, 2004.
[11]
A. Kleppe, J. Warmer, and W. Bast. MDA explained: the model driven architecture: practice and promise. Addison-Wesley Longman Publishing Co., Inc., 2003.
[12]
D. Lucrédio. Uma abordagem orientada a modelos para reutilização de software. PhD thesis, Instituto de Ciências Matemáticas e de Computação, São Carlos, SP, 2009.
[13]
D. Lucrédio, A. Alvaro, E. S. De Almeida, and A. F. Do Prado. Mvcase tool - working with design patterns. In Proceedings of the Third Latin American Conference on Pattern Languages of Programming (SugarLoafPLoP 2003), 2003.
[14]
A. Malpani, P. Bernstein, S. Melnik, and J. Terwilliger. Reverse engineering models from databases to bootstrap application development. In Data Engineering (ICDE), 2010 IEEE 26th International Conference on, pages 1177--1180. IEEE, 2010.
[15]
M. Mulansky and K. Ahnert. Metaprogramming applied to numerical problems. In AIP Conference Proceedings, volume 1389, page 1582, 2011.
[16]
R. Pressman. Software Engineering: A Practitioner's Approach. McGraw-Hill, Inc., New York, NY, USA, 6 edition, 2005.
[17]
L. H. Putnam and W. Myers. Measures for Excellence. Yourdon Press, 1992.
[18]
R. Rodríguez-Echeverría, J. Conejero, P. Clemente, J. Preciado, and F. Sánchez-Figueroa. Modernization of legacy web applications into rich internet applications. Current Trends in Web Engineering, pages 236--250, 2012.
[19]
R. Straeten, T. Mens, and S. Baelen. Models in software engineering. chapter Challenges in Model-Driven Software Engineering, pages 35--47. Springer-Verlag, Berlin, Heidelberg, 2009.
[20]
G. T. Sullivan. Aspect-oriented programming using reflection and metaobject protocols. Commun. ACM, 44(10):95--97, Oct. 2001.
[21]
H. Wang, B. Shen, and C. Chen. Model-driven reengineering of database. In Software Engineering, 2009. WCSE'09. WRI World Congress on, volume 3, pages 113--117. IEEE, 2009.

Cited By

View all
  • (2024)From static code analysis to visual models of microservice architectureCluster Computing10.1007/s10586-024-04394-727:4(4145-4170)Online publication date: 24-Apr-2024
  • (2023)Extracting the Architecture of Microservices: An Approach for Explainability and TraceabilitySoftware Architecture10.1007/978-3-031-42592-9_24(346-353)Online publication date: 8-Sep-2023
  • (2022)Microservice Architecture Reconstruction and Visualization Techniques: A Review2022 IEEE International Conference on Service-Oriented System Engineering (SOSE)10.1109/SOSE55356.2022.00011(39-48)Online publication date: Aug-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
RACS '12: Proceedings of the 2012 ACM Research in Applied Computation Symposium
October 2012
488 pages
ISBN:9781450314923
DOI:10.1145/2401603
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

  • ACCT: Association of Convergent Computing Technology

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 October 2012

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. metaprogramming
  2. model-driven development
  3. software reengineering

Qualifiers

  • Research-article

Conference

RACS '12
Sponsor:
  • ACCT
RACS '12: Research in Applied Computation Symposium
October 23 - 26, 2012
Texas, San Antonio

Acceptance Rates

Overall Acceptance Rate 393 of 1,581 submissions, 25%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)From static code analysis to visual models of microservice architectureCluster Computing10.1007/s10586-024-04394-727:4(4145-4170)Online publication date: 24-Apr-2024
  • (2023)Extracting the Architecture of Microservices: An Approach for Explainability and TraceabilitySoftware Architecture10.1007/978-3-031-42592-9_24(346-353)Online publication date: 8-Sep-2023
  • (2022)Microservice Architecture Reconstruction and Visualization Techniques: A Review2022 IEEE International Conference on Service-Oriented System Engineering (SOSE)10.1109/SOSE55356.2022.00011(39-48)Online publication date: Aug-2022
  • (2020)On Code Analysis Opportunities and Challenges for Enterprise Systems and MicroservicesIEEE Access10.1109/ACCESS.2020.30199858(159449-159470)Online publication date: 2020
  • (2015)A Model-driven Development for Creating Accessible Web MenusProcedia Computer Science10.1016/j.procs.2015.09.25367(95-104)Online publication date: 2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media