Specification and Verification of Model-Driven Data Migration

  • Mohammed A. Aboulsamh
  • Jim Davies
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6918)


Information systems often hold data of considerable complexity and value. Their continuing development or maintenance will often necessitate the ‘migration’ of this data from one version of the system to the next: a process that may be expensive, time-consuming, and prone to error. The cost, time, and reliability of data migration may be reduced in the context of modern, model-driven systems development: the requirements for data migration may be derived automatically from the list of proposed changes to the system model. This paper shows how this may be achieved through the definition of a ‘language of changes’. It shows also how a formal semantics for this language allows us to verify that a proposed change is consistent with representational and semantic constraints, in advance of its application.


Data modeling information systems evolution data migration the B method 


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)CrossRefzbMATHGoogle Scholar
  3. 3.
    Object Management Group (OMG), UML 2.0 infrastructure specification, v2.1.2 (2007), (retrieved February 09, 2011)
  4. 4.
    Dijkstra, E.W.: A Discipline of Programming. Prentice Hall, Englewood Cliffs (1976)zbMATHGoogle Scholar
  5. 5.
    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
  6. 6.
    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
  7. 7.
    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
  8. 8.
    Rashid, A., Sawyer, P., Pulvermueller, E.: A flexible approach for instance adaptation during class versioning. In: Dittrich, K.R., Oliva, M., Rodriguez, M.E. (eds.) ECOOP-WS 2000. LNCS, vol. 1944, pp. 101–113. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  9. 9.
    Fabro, M., Bezivin, J., Jouault, F., Breton, E., Gueltas, G.: AMW: a generic model weaver. In: Proceedings of the 1ére Journée sur l’Ingénierie Dirigée par les Modéles (2005)Google Scholar
  10. 10.
    Sunye, G., Pollet, D., Traon, Y., Jézéquel, J.-M.: models. In: The 4th International Conference on The Modeling Languages, pp. 134–148. Springer, Heidelberg (2001)Google Scholar
  11. 11.
    Laleau, R., Mammar, A.: An Overview of a Method and Its Support Tool for Generating B Specifications from UML Notations. In: IEEE Proceedings Automated Software Engineering, pp. 269–272 (2000)Google Scholar
  12. 12.
    Aboulsamh, M., Crichton, E., Davies, J., Welch, J.: Model-driven data migration. In: Parsons, J., Saeki, M., Shoval, P., Woo, C., Wand, Y. (eds.) ER 2010. LNCS, vol. 6412, pp. 285–294. Springer, Heidelberg (2010)Google Scholar
  13. 13.
    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 (2010b)Google Scholar
  14. 14.
    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
  15. 15.
    Sendall, S., Kozaczynski, W.: Model transformation: The heart and soul of model-driven software development. IEEE Software 20(5), 42–45 (2003)CrossRefGoogle Scholar
  16. 16.
    Fowler, M., Beck, K., Brant, J., Opdyke, W., Roberts, D.: Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, Reading (1999)Google Scholar
  17. 17.
    Mens, T., Tourwe, T.: A Survey of Software Refactoring. IEEE Trans. Softw. Eng. 30(2), 26–139 (2004)CrossRefGoogle Scholar
  18. 18.
    Aboulsamh, M., Davies, J.: A Formal Modelling Approach to Information Systems Evolution and Data Migration. In: Halpin, T., Nurcan, S., Krogstie, J., Soffer, P., Proper, E., Schmidt, R., Bider, I. (eds.) BPMDS 2011 and EMMSAD 2011. LNBIP, vol. 81, pp. 383–397. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  19. 19.
    Lano, K., 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

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