In this paper, an approach for information systems reverse engineering is proposed and applied. The aim is to support a unified perspective to the reverse engineering process of both data and software. At the state of the art, indeed, many methods, techniques, and tools for software reverse engineering have been proposed to support program comprehension, software maintenance, and software evolution. Other approaches and tools have been proposed for data reverse engineering, with the aim, for example, to provide complete and up-to-date documentation of legacy databases. However, the two engineering communities often worked independently, and very few approaches addressed the reverse engineering of both data and software as information system's constituencies. Hence, a higher integration is needed to support a better co-evolution of databases and programs, in an environment often characterized by high availability of data and volatility of information flows. Accordingly, the approach we propose leverages the detection of object-relational mapping design patterns to build a conceptual schema of the software under analysis. Then, the conceptual schema is mapped to the domain model of the system, to support the design of the evolution of the information system itself. The approach is evaluated on two large-scale open-source enterprise applications.

Zanoni, M., Perin, F., ARCELLI FONTANA, F., Viscusi, G. (2014). Pattern detection for conceptual schema recovery in data-intensive systems. JOURNAL OF SOFTWARE, 26(12), 1172-1192 [10.1002/smr.1656].

Pattern detection for conceptual schema recovery in data-intensive systems

ZANONI, MARCO
Primo
;
ARCELLI FONTANA, FRANCESCA
Penultimo
;
VISCUSI, GIANLUIGI
Ultimo
2014

Abstract

In this paper, an approach for information systems reverse engineering is proposed and applied. The aim is to support a unified perspective to the reverse engineering process of both data and software. At the state of the art, indeed, many methods, techniques, and tools for software reverse engineering have been proposed to support program comprehension, software maintenance, and software evolution. Other approaches and tools have been proposed for data reverse engineering, with the aim, for example, to provide complete and up-to-date documentation of legacy databases. However, the two engineering communities often worked independently, and very few approaches addressed the reverse engineering of both data and software as information system's constituencies. Hence, a higher integration is needed to support a better co-evolution of databases and programs, in an environment often characterized by high availability of data and volatility of information flows. Accordingly, the approach we propose leverages the detection of object-relational mapping design patterns to build a conceptual schema of the software under analysis. Then, the conceptual schema is mapped to the domain model of the system, to support the design of the evolution of the information system itself. The approach is evaluated on two large-scale open-source enterprise applications.
Articolo in rivista - Articolo scientifico
conceptual schema; design pattern detection; object-relational mapping; reverse engineering
English
dic-2014
2014
26
12
1172
1192
reserved
Zanoni, M., Perin, F., ARCELLI FONTANA, F., Viscusi, G. (2014). Pattern detection for conceptual schema recovery in data-intensive systems. JOURNAL OF SOFTWARE, 26(12), 1172-1192 [10.1002/smr.1656].
File in questo prodotto:
File Dimensione Formato  
unifiedApproach.pdf

Solo gestori archivio

Descrizione: Articolo
Dimensione 363.18 kB
Formato Adobe PDF
363.18 kB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10281/57492
Citazioni
  • Scopus 23
  • ???jsp.display-item.citation.isi??? 16
Social impact