Abstract
Evolving dependency magnets, i.e., software modules upon which a large number of other modules depend, is always a hard task. As Robert C. Martin has nicely summarized it (see http://www.oodesign.com/design-principles.html), fundamental problems of bad design that hinder evolution include immobility, i.e., difficulty in reuse, rigidity, i.e., the tendency for software to be difficult to change and fragility, i.e., the tendency of the software to break in many places every time it is changed. In such cases, developers are reluctant to evolve the software to avoid facing the impact of change. How are these fundamentals related to schema evolution? We know that changes in the schema of a database affect a large (and not necessarily traced) number of surrounding applications, without explicit identification of the impact. These affected applications can then suffer from syntactic and semantic inconsistencies – with syntactic inconsistency leading to application crashes and semantic inconsistency leading to the retrieval of data other than the ones originally intended. Thus, the puzzle of gracefully facilitating the evolution of data-intensive information systems is evident, and the desideratum of coming up with engineering methods that allow us to design information systems with a view to minimizing the impact of evolution, a noble goal for the research community.
Change is the essential process of all existence – Star Trek’s Spock
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Cleve, A., Brogneaux, A.-F., Hainaut, J.-L.: A conceptual approach to database applications evolution. In: Parsons, J., Saeki, M., Shoval, P., Woo, C., Wand, Y. (eds.) ER 2010. LNCS, vol. 6412, pp. 132–145. Springer, Heidelberg (2010). doi:10.1007/978-3-642-16373-9_10
Cleve, A., Gobert, M., Meurice, L., Maes, J., Weber, J.H.: Understanding database schema evolution: a case study. Sci. Comput. Program. 97, 113–121 (2015)
Curino, C., Moon, H.J., Tanca, L., Zaniolo, C.: Schema evolution in Wikipedia: toward a web information system benchmark. In: Proceedings of ICEIS 2008. Citeseer (2008)
Curino, C., Moon, H.J., Deutsch, A., Zaniolo, C.: Automating the database schema evolution process. VLDB J. 22(1), 73–98 (2013)
Decan, A., Goeminne, M., Mens, T.: On the interaction of relational database access technologies in open source Java projects. CoRR abs/1701.00416
Decan, A., Goeminne, M., Mens, T.: On the interaction of relational database access technologies in open source java projects. In: Post-proceedings of the 8th Seminar on Advanced Techniques and Tools for Software Evolution, Mons, Belgium, 6–8 July 2015, pp. 26–35 (2015)
Herrmann, K., Voigt, H., Behrend, A., Lehner, W.: CoDEL – a relationally complete language for database evolution. In: Morzy, T., Valduriez, P., Bellatreche, L. (eds.) ADBIS 2015. LNCS, vol. 9282, pp. 63–76. Springer, Cham (2015). doi:10.1007/978-3-319-23135-8_5
Lin, D.Y., Neamtiu, I.: Collateral evolution of applications and databases. In: Proceedings of the Joint International and Annual ERCIM Workshops on Principles of Software Evolution (IWPSE) and Software Evolution (Evol) Workshops, IWPSE-Evol 2009, pp. 31–40 (2009)
Manousis, P., Vassiliadis, P., Papastefanatos, G.: Automating the adaptation of evolving data-intensive ecosystems. In: Ng, W., Storey, V.C., Trujillo, J.C. (eds.) ER 2013. LNCS, vol. 8217, pp. 182–196. Springer, Heidelberg (2013). doi:10.1007/978-3-642-41924-9_17
Meurice, L., Nagy, C., Cleve, A.: Static analysis of dynamic database usage in Java systems. In: Nurcan, S., Soffer, P., Bajec, M., Eder, J. (eds.) CAiSE 2016. LNCS, vol. 9694, pp. 491–506. Springer, Cham (2016). doi:10.1007/978-3-319-39696-5_30
Qiu, D., Li, B., Su, Z.: An empirical analysis of the co-evolution of schema and code in database applications. In: Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2013, pp. 125–135 (2013)
Sjøberg, D.: Quantifying schema evolution. Inf. Softw. Technol. 35(1), 35–44 (1993)
Skoulis, I., Vassiliadis, P., Zarras, A.: Open-source databases: within, outside, or beyond Lehman’s laws of software evolution? In: Jarke, M., Mylopoulos, J., Quix, C., Rolland, C., Manolopoulos, Y., Mouratidis, H., Horkoff, J. (eds.) CAiSE 2014. LNCS, vol. 8484, pp. 379–393. Springer, Cham (2014). doi:10.1007/978-3-319-07881-6_26
Skoulis, I., Vassiliadis, P., Zarras, A.V.: Growing up with stability: how open-source relational databases evolve. Inf. Syst. 53, 363–385 (2015)
Vassiliadis, P., Kolozoff, M.R., Zerva, M., Zarras, A.V.: Schema evolution and foreign keys: birth, eviction, change and absence. In: 36th International Conference on Conceptual Modeling (ER 2017), Valencia, Spain, 6–9 November 2017 (2017)
Vassiliadis, P., Zarras, A.V.: Survival in schema evolution: putting the lives of survivor and dead tables in counterpoint. In: Dubois, E., Pohl, K. (eds.) CAiSE 2017. LNCS, vol. 10253, pp. 333–347. Springer, Cham (2017). doi:10.1007/978-3-319-59536-8_21
Vassiliadis, P., Zarras, A.V., Skoulis, I.: How is life for a table in an evolving relational schema? Birth, death and everything in between. In: Johannesson, P., Lee, M.L., Liddle, S.W., Opdahl, A.L., López, Ó.P. (eds.) ER 2015. LNCS, vol. 9381, pp. 453–466. Springer, Cham (2015). doi:10.1007/978-3-319-25264-3_34
Vassiliadis, P., Zarras, A.V., Skoulis, I.: Gravitating to rigidity: patterns of schema evolution - and its absence - in the lives of tables. Inf. Syst. 63, 24–46 (2017)
Wu, S., Neamtiu, I.: Schema evolution analysis for embedded databases. In: Proceedings of the 2011 IEEE 27th International Conference on Data Engineering Workshops, ICDEW 2011, pp. 151–156 (2011)
Zarras, A.V., Vassiliadis, P., Dinos, I.: Keep calm and wait for the spike! insights on the evolution of Amazon services. In: Nurcan, S., Soffer, P., Bajec, M., Eder, J. (eds.) CAiSE 2016. LNCS, vol. 9694, pp. 444–458. Springer, Cham (2016). doi:10.1007/978-3-319-39696-5_27
Acknowledgements
The results of our team in the University of Ioannina on the topic of studying and understanding the mechanics of schema evolution would have never been possible without the collaboration and dedication of many colleagues and students. The list of people who have contributed to this effort includes my colleague and long-time collaborator Apostolos Zarras, as well as several of my students who have worked on the topic, specifically Ioannis Skoulis, Fanis Giahos, Michael Kolozoff, Athanasios Pappas, and Maria Zerva. Special mention also goes to my long-term collaborator George Papastefanatos and my PhD student Petros Manousis, with whom we have collaborated for long on the topic of managing schema evolution, from its engineering perspective.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Vassiliadis, P. (2017). Schema Evolution and Gravitation to Rigidity: A Tale of Calmness in the Lives of Structured Data. In: Ouhammou, Y., Ivanovic, M., Abelló, A., Bellatreche, L. (eds) Model and Data Engineering. MEDI 2017. Lecture Notes in Computer Science(), vol 10563. Springer, Cham. https://doi.org/10.1007/978-3-319-66854-3_2
Download citation
DOI: https://doi.org/10.1007/978-3-319-66854-3_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-66853-6
Online ISBN: 978-3-319-66854-3
eBook Packages: Computer ScienceComputer Science (R0)