In the model-driven approach to software development, system implementations are generated automatically from abstract models of structure and behaviour. This could greatly facilitate systems evolution: a new version of a system may be produced simply by updating the system model and repeating the generation process. However, an information system may hold data of considerable value and complexity, and this must be safely migrated at each evolutionary step. This paper shows how this problem can be solved through a formal, model-driven approach: platform-specific data migration functions are generated automatically from a formal model of system changes, and the applicability of these functions is calculated in advance, ensuring that they may be safely applied to existing data.


model-driven information systems data migration 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bezivin, J.: On the unification power of models. Software and Systems Modeling 4(2), 171–188 (2005)CrossRefGoogle Scholar
  2. 2.
    Abrial, J.R.: The B-book: Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)CrossRefGoogle Scholar
  3. 3.
    Davies, J., Welch, J., Cavarra, A., Crichton, E.: On the Generation of Object Databases using Booster. In: The 11th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS 2006), pp. 249–258. IEEE Computer Society, Washington, DC, USA (2006)Google Scholar
  4. 4.
    Kurz, S., Guppenberger, M., Freitag, B.: A UML profile for modeling schema mappings. In: Roddick, J., Benjamins, V.R., Si-said Cherfi, S., Chiang, R., Claramunt, C., Elmasri, R.A., Grandi, F., Han, H., Hepp, M., Lytras, M.D., Mišić, V.B., Poels, G., Song, I.-Y., Trujillo, J., Vangenot, C. (eds.) ER Workshops 2006. LNCS, vol. 4231, pp. 53–62. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Philippi, S.: Model driven generation and testing of object-relational mappings. Journal of Systems and Software 77(2), 193–207 (2005)CrossRefGoogle Scholar
  6. 6.
    Gogolla, M., Lindow, A.: Transforming data models with UML. In: Knowledge Transformation for the Semantic Web, pp. 18–33 (2003)Google Scholar
  7. 7.
    Thalheim, B.: Fundamentals of Entity-relationship Modeling. Springer, Heidelberg (1999)Google Scholar
  8. 8.
    Halpin, T., Morgan, T.: Information Modeling and Relational Databases. Morgan Kaufmann Publishers Inc., San Francisco (2008)Google Scholar
  9. 9.
    Object Management Group(OMG). UML 2.0 infrastructure specification, v2.1.2 (2007), (retrieved February 09, 2011)
  10. 10.
    Object Management Group (OMG). OCL specifications, version 2.2. (2010), (retrieved February 09, 2011)
  11. 11.
    Demuth, B., Hussmann, H.: Using UML/OCL constraints for relational database design. In: France, R.B. (ed.) UML 1999. LNCS, vol. 1723, pp. 598–613. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  12. 12.
    Gries, D.: The Science of Programming. Springer, New York (1981)CrossRefGoogle Scholar
  13. 13.
    Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)Google Scholar
  14. 14.
    B-Core UK. B-Toolkit (2011), (retrieved February 09, 2011)
  15. 15.
    Banerjee, J., Kim, W., Kim, H.-J., Korth, H.: Semantics and implementation of schema evolution in object-oriented databases. In: ACM SIGMOD International Conference on Management of Data (SIGMOD 1987), pp. 311–322. ACM, New York (1987)CrossRefGoogle Scholar
  16. 16.
    Ferrandina, F., Meyer, T., Zicari, R., Ferran, G., Madec, J.: Schema and database evolution in the O2 object database system. In: Very Large Database, Morgan Kaufmann, San Francisco (1995)Google Scholar
  17. 17.
    Jing, J., Claypool, K., Rundensteiner, E.: SERF: Schema Evolution through an Extensible, Re-usable and Flexible Framework. In: Int. Conf. on Information and Knowledge Management (1998)Google Scholar
  18. 18.
    Rashid, A., Sawyer, P., Pulvermueller, E.: A flexible approach for instance adaptation during class versioning. In: Proceedings of the International Symposium on Objects and Databases, pp. 101–113. Springer, London (2000)Google Scholar
  19. 19.
    Fabro, M., Bezivin, J., Jouault, F., Breton, E., Gueltas, G.A.: a generic model weaver. In: Proceedings of the 1re Journe sur l’Ingnierie Dirige par les Modles (2005)Google Scholar
  20. 20.
    Sunye, G., Pollet, D., Traon, Y., Jezequel, J.-M.: Refactoring UML models. In: The 4th International Conference on The Modeling Languages, pp. 134–148. Springer, Heidelberg (2001)Google Scholar
  21. 21.
    Peng, S.-L., Clark, D., Androutsopoulos, K.: UML to B: Formal verification of object-oriented models. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 187–206. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  22. 22.
    Laleau, R., Mammar, A.: An Overview of a Method and Its Support Tool for Generating B Specifications from UML Notations. In: IEEE Proceedings of the Automated Software Engineering, pp. 269–272 (2000)Google Scholar
  23. 23.
    Aboulsamh, M., Crichton, E., Davies, J., Welch, J.: Model-driven data migration. In: 2010 International Conference on Advances in Conceptual Modeling: Applications and Challenges (ER 2010), pp. 285–294. Springer, Heidelberg (2010)Google Scholar
  24. 24.
    Aboulsamh, M., Davies, J.: A Metamodel-Based Approach to Information Systems Evolution and Data Migration. In: The 2010 Fifth International Conference on Software Engineering Advances (ICSEA 2010), IEEE Computer Society, Washington, DC, USA (2010b)Google Scholar
  25. 25.
    Davies, J., Crichton, C., Crichton, E., Neilson, D., Sorensen, I.H.: Formality, Evolution, and Model-driven Software Engineering. Electron. Notes Theor. Comput. Sci. (130), 39–55 (2005)CrossRefGoogle Scholar
  26. 26.
    Sendall, S., Kozaczynski, W.: Model transformation: The heart and soul of model-driven software development. IEEE Software 20(5), 42–45 (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Mohammed A. Aboulsamh
    • 1
  • Jim Davies
    • 1
  1. 1.Department of Computer ScienceUniversity of OxfordOxfordUK

Personalised recommendations