Abstract
Data-intensive systems are subject to continuous evolution that translates ever-changing business and technical requirements. System evolution usually constitutes a highly complex, expensive and risky process. This holds, in particular, when the evolution involves database schema changes, which in turn impact on data instances and application programs. This paper presents a comprehensive approach that supports the rapid development and the graceful evolution of data-intensive applications. The approach combines the automated derivation of a relational database from a conceptual schema, and the automated generation of a data manipulation API providing programs with a conceptual view of the relational database. The derivation of the database is achieved through a systematic transformation process, keeping track of the mapping between the successive versions of the schema. The generation of the conceptual API exploits the mapping between the conceptual and logical schemas. Database schema changes are propagated as conceptual API regeneration so that application programs are protected against changes that preserve the semantics of their view on the data. The paper describes the application of the approach to the development of an e-health system, built on a highly evolutive database.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Curino, C.A., Moon, H.J., Tanca, L., Zaniolo, C.: Schema evolution in wikipedia: toward a web information system benchmark. In: International Conference on Enterprise Information Systems (ICEIS), pp. 323–332 (2008)
Karahasanovic, A.: Supporting Application Consistency in Evolving Object-Oriented Systems by Impact Analysis and Visualisation. PhD thesis, University of Oslo (2002)
Maule, A., Emmerich, W., Rosenblum, D.S.: Impact analysis of database schema changes. In: Proceedings of the 30th international conference on Software engineering (ICSE 2008), pp. 451–460. ACM Press, New York (2008)
Cleve, A., Hainaut, J.L.: Dynamic analysis of sql statements for data-intensive applications reverse engineering. In: Proceedings of the 15th Working Conference on Reverse Engineering, pp. 192–196. IEEE, Los Alamitos (2008)
Curino, C., Moon, H.J., Zaniolo, C.: Graceful database schema evolution: the prism workbench. Proceedings of the VLDB Endowment 1(1), 761–772 (2008)
Cleve, A.: Program Analysis and Transformation for Data-Intensive System Evolution. PhD thesis, University of Namur (October 2009)
Hick, J.M., Hainaut, J.L.: Database application evolution: A transformational approach. Data & Knowledge Engineering 59, 534–558 (2006)
Thiran, P., Hainaut, J.L., Houben, G.J., Benslimane, D.: Wrapper-based evolution of legacy information systems. ACM Trans. Software Engineering and Methodology 15(4), 329–359 (2006)
Cleve, A., Hainaut, J.L.: Co-transformations in database applications evolution. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 409–421. Springer, Heidelberg (2006)
Hainaut, J.L., Cleve, A., Henrard, J., Hick, J.M.: Migration of legacy information systems. In: Software Evolution, pp. 105–138. Springer, Heidelberg (2008)
Rundensteiner, E.A., Lee, A.J., Nica, A.: On preserving views in evolving environments. In: KRDB. CEUR Workshop Proceedings, CEUR-WS.org, vol. 8, pp. 13.1–13.11 (1997)
Hainaut, J.L.: Legacy and future of data reverse engineering. In: Proceedings of the 16th Working Conference on Reverse Engineering (WCRE 2009), p. 4. IEEE Computer Society, Los Alamitos (2009)
Shneiderman, B., Thomas, G.: An architecture for automatic relational database sytem conversion. ACM Trans. Database Syst. 7(2), 235–257 (1982)
Roddick, J.F., Craske, N.G., Richards, T.J.: A taxonomy for schema versioning based on the relational and entity relationship models. In: Elmasri, R.A., Kouramajian, V., Thalheim, B. (eds.) ER 1993. LNCS, vol. 823, pp. 137–148. Springer, Heidelberg (1994)
Visser, J.: Coupled transformation of schemas, documents, queries, and constraints. Electronic Notes in Theoretical Computer Science 200(3), 3–23 (2008); Proceedings of the 3rd International Workshop on Automated Specification and Verification of Web Systems (WWV 2007)
Hainaut, J.L.: The transformational approach to database engineering. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 95–143. Springer, Heidelberg (2006)
Bernstein, P.A., Green, T.J., Melnik, S., Nash, A.: Implementing mapping composition. In: VLDB 2006: Proceedings of the 32nd international conference on Very large data bases, VLDB Endowment, pp. 55–66 (2006)
DB-MAIN: The DB-MAIN official website (2010), http://www.db-main.be
Damas, C., Lambeau, B., Roucoux, F., van Lamsweerde, A.: Analyzing critical process models through behavior model synthesis. In: Proceedings of the 31st International Conference on Software Engineering (ICSE 2009), pp. 441–451. IEEE, Los Alamitos (2009)
Clossman, G., Shaw, P., Hapner, M., Klein, J., Pledereder, R., Becker, B.: Java and relational databases: SQLJ (tutorial). In: Proceedings of the 1998 ACM SIGMOD International Conference on Management of Data (1998)
Meijer, E., Beckman, B., Bierman, G.M.: Linq: reconciling object, relations and xml in the .net framework. In: Proceedings of the ACM SIGMOD International Conference on Management of Data, p. 706. ACM, New York (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cleve, A., Brogneaux, AF., Hainaut, JL. (2010). A Conceptual Approach to Database Applications Evolution. In: Parsons, J., Saeki, M., Shoval, P., Woo, C., Wand, Y. (eds) Conceptual Modeling – ER 2010. ER 2010. Lecture Notes in Computer Science, vol 6412. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-16373-9_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-16373-9_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-16372-2
Online ISBN: 978-3-642-16373-9
eBook Packages: Computer ScienceComputer Science (R0)