Advertisement

Software & Systems Modeling

, Volume 14, Issue 1, pp 365–381 | Cite as

Model transformations for migrating legacy deployment models in the automotive industry

  • Gehan M. K. SelimEmail author
  • Shige Wang
  • James R. Cordy
  • Juergen Dingel
Special Section Paper

Abstract

Many companies in the automotive industry have adopted model-driven development in their vehicle software development. As a major automotive company, General Motors (GM) has been using a custom-built, domain-specific modeling language, implemented as an internal proprietary metamodel, to meet the modeling needs in its control software development. Since AUTomotive Open System ARchitecture (AUTOSAR) has been developed as a standard to ease the process of integrating components provided by different suppliers and manufacturers, there has been a growing demand to migrate these GM-specific, legacy models to AUTOSAR models. Given that AUTOSAR defines its own metamodel for various system artifacts in automotive software development, we explore applying model transformations to address the challenges in migrating GM-specific, legacy models to their AUTOSAR equivalents. As a case study, we have built and validated a model transformation using the MDWorkbench tool, the Atlas Transformation Language, and the Metamodel Coverage Checker tool. This paper reports on the case study, makes observations based on our experience to assist in the development of similar types of transformations, and provides recommendations for further research.

Keywords

Model-driven development (MDD) Model transformations AUTOSAR Transformation languages and tools Automotive control software Black-box testing 

Notes

Acknowledgments

This work is supported in part by NSERC, as part of the NECSIS Automotive Partnership with General Motors, IBM Canada and Malina Software Corp.

References

  1. 1.
    Ali, S., Hemmati, H., Holt, N., Arisholm, E., Briand, L.: Model transformations as a strategy to automate model-based testing-A tool and industrial case studies. In: Simula Research Laboratory, Technical Report (2010–01). Citeseer (2010)Google Scholar
  2. 2.
    Anastasakis, K., Bordbar, B., Küster, J.: Analysis of model transformations via alloy. In: Model-Driven Engineering, Verification and Validation (MoDeVVa), pp. 47–56 (2007)Google Scholar
  3. 3.
    Andrews, A., France, R., Ghosh, S., Craig, G.: Test adequacy criteria for UML design models. Softw. Test. Verif. Reliab. 13, 95–127 (2003)CrossRefGoogle Scholar
  4. 4.
    Anssi, S., Tucci-Piergiovanni, S., Kuntz, S., Gérard, S., Terrier, F.: Enabling scheduling analysis for AUTOSAR systems. In: International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC), pp. 152–159. IEEE (2011)Google Scholar
  5. 5.
    Aranda, J., Damian, D., Borici, A.: Transition to model-driven engineering: what is revolutionary, what remains the same. In: Model Driven Engineering Languages and Systems (MODELS), pp. 692–708. Springer, Berlin (2012)Google Scholar
  6. 6.
    AUTOSAR: AUTOSAR, http://AUTOSAR.org/ (2007)
  7. 7.
  8. 8.
    Aziz, K.: Evaluating Model Transformation Technologies: An Exploratory Case Study. Department of Computer Science and Engineering, University of Gothenburg, Gotheburg (2011)Google Scholar
  9. 9.
    Bauer, E., Küster, J.: Combining specification-based and code-based coverage for model transformation chains. In: Theory and Practice of Model Transformations, pp. 78–92 (2011)Google Scholar
  10. 10.
    Bauer, E., Küster, J., Engels, G.: Test suite quality for model transformation chains. In: Objects, Models, Components, Patterns, pp. 3–19. Springer, Berlin (2011)Google Scholar
  11. 11.
    Becker, B., Lambers, L., Dyck, J., Birth, S., Giese, H.: Iterative development of consistency-preserving rule-based refactorings. In: International Conference on Theory and Practice of Model Transformations (ICMT), pp. 123–137 (2011)Google Scholar
  12. 12.
    Beydeda, S., Book, M., Gruhn, V.: Model-Driven Software Development, vol. 15. Springer, Berlin (2005)CrossRefzbMATHGoogle Scholar
  13. 13.
    Bézivin, J., Bruneliere, H., Jouault, F., Kurtev, I.: Model engineering support for tool interoperability. In: Workshop in Software Model Engineering (WiSME), vol. 2. Montego Bay, Jamaica (2005)Google Scholar
  14. 14.
    Bézivin, J., Dupé, G., Jouault, F., Pitette, G., Rougui, J.E.: First experiments with the ATL model transformation language: transforming XSLT into XQuery. In: Workshop on Generative Techniques in the context of Model Driven Architecture (2003)Google Scholar
  15. 15.
    Biehl, M., Törngren, M.: An executable design decision representation using model transformations. In: Software Engineering and Advanced Applications (SEAA), pp. 131–134. IEEE (2010)Google Scholar
  16. 16.
    Blanc, X., Gervais, M., Sriplakich, P.: Model bus: towards the interoperability of modelling tools. In: Model Driven Architecture: Foundations and Applications (MDAFA), pp. 17–32 (2005)Google Scholar
  17. 17.
    Boronat, A., Heckel, R., Meseguer, J.: Rewriting logic semantics and verification of model transformations. In: 12th International Conference on Fundamental Approaches to Software Engineering (FASE), York, UK, pp. 18–33. Springer, Berlin (2009)Google Scholar
  18. 18.
    Bouhoula, A., Jouannaud, J., Meseguer, J.: Specification and proof in membership equational logic. In: Theoretical Computer Science: Trees in Algebra and Programming, vol. 236, pp. 35–132. Elsevier, Amsterdam (2000)Google Scholar
  19. 19.
    Broy, M., Feilkas, M., Herrmannsdoerfer, M., Merenda, S., Ratiu, D.: Seamless model-based development: from isolated tools to integrated model engineering environments. In: Proceedings of the IEEE, vol. 98, pp. 526–545. IEEE (2010)Google Scholar
  20. 20.
    Brunelière, H., Cabot, J., Clasen, C., Jouault, F., Bézivin, J.: Towards model driven tool interoperability: bridging eclipse and microsoft modeling tools. In: European Conference on Modelling Foundations and Applications (ECMFA), vol. 6138, pp. 32–47. Paris, France (2010)Google Scholar
  21. 21.
    Büttner, F., Egea, M., Cabot, J., Gogolla, M.: Verification of ATL transformations using transformation models and model finders. In: International Conference on Formal Engineering Methods (ICFEM) (2012)Google Scholar
  22. 22.
  23. 23.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martı-Oliet, N., Meseguer, J., Talcott, C.: All about Maude-A high-performance logical framework, how to specify, program and verify systems in rewriting logic. volume 4350 of LNCS, vol. 4, pp. 50-88. Springer, Berlin (2007)Google Scholar
  24. 24.
    Claypool, K.T., Rundensteiner, E.A., Zhang, X., Hong, S., Kuno, H., Lee, W.-c., Mitchell, G.: Sangam-A solution to support multiple data models, their mappings and maintenance. In: ACM SIGMOD International Conference on Management of Data, vol. 30, p. 606. ACM, New York (2001)Google Scholar
  25. 25.
    Cottenier, T., Van Den Berg, A., Elrad, T.: The motorola WEAVR: model weaving in a large industrial context. In: Aspect-Oriented Software Development (AOSD), vol. 32. Vancouver, Canada (2007)Google Scholar
  26. 26.
    Daghsen, A., Chaaban, K., Saudrais, S., Leserf, P.: Applying holistic distributed scheduling to AUTOSAR methodology. In: Embedded Real-Time Software and Systems (ERTSS). Toulouse, France (2010)Google Scholar
  27. 27.
    Doyle, D., Geers, H., Graaf, B., Van Deursen, A.: Migrating a domain-specific modeling infrastructure to MDA technology. In: International Workshop on Metamodels, Schemas, Grammars, and Ontologies for Reverse Engineering (ateM), Genoa, Italy (2006)Google Scholar
  28. 28.
    Drago, M., Ghezzi, C., Mirandola, R.: Towards quality driven exploration of model transformation spaces. In: Model Driven Engineering Languages and Systems (MODELS), pp. 2–16. Wellington, New Zealand (2011)Google Scholar
  29. 29.
  30. 30.
    Eclipse. Atlas Transformation Language—ATL, http://eclipse.org/atl/ (2012)
  31. 31.
    Eclipse. Eclipse Modelling Framework (EMF), http://wiki.eclipse.org/emf (2012)
  32. 32.
    Fleurey, F., Baudry, B., Muller, P., Traon, Y.: Qualifying input test data for model transformations. Softw. Syst. Model. (SoSym) 8, 185–203 (2009)CrossRefGoogle Scholar
  33. 33.
    Fleurey, F., Breton, E., Baudry, B., Nicolas, A., Jézéquel, J.-M.: Model-driven engineering for software migration in a large industrial context. In: Model Driven Engineering Languages and Systems (MoDELS), pp. 482–497. Springer, Berlin (2007)Google Scholar
  34. 34.
    Fleurey, F., Steel, J., Baudry, B.: Validation in model-driven engineering: testing model transformations. In: Model, Design and Validation (MoDeVa), pp. 29–40. IEEE (2004)Google Scholar
  35. 35.
    Gardner, T., Griffin, C., Koehler, J., Hauser, R.: A review of OMG MOF 2.0 query/views/transformations submissions and recommendations towards the final standard. In: MetaModelling for MDA, Workshop, pp. 178–197 (2003)Google Scholar
  36. 36.
    Giese, H., Hildebrandt, S., Neumann, S.: Model synchronization at work: keeping SysML and AUTOSAR models consistent. In: Graph Transformations and Model-Driven Engineering, Vol. 5765, pp. 555–579. Springer, Berlin (2010)Google Scholar
  37. 37.
    Gogolla, M., Vallecillo, A.: Tractable model transformation testing. In: European Conference on Modelling Foundations and Applications (ECMFA), pp. 221–235 (2011)Google Scholar
  38. 38.
    Haschemi, S.: Model transformations to satisfy all-configurations-transitions on statecharts. In: Model-Driven Engineering, Verification and Validation (MODEVVA) (2009)Google Scholar
  39. 39.
    Hausmann, J.H.: Metamodeling relations-relating metamodels. In: Metamodelling for MDA, pp. 147–161 (2003)Google Scholar
  40. 40.
    Hemel, Z., Kats, L.C., Groenewegen, D.M., Visser, E.: Code generation by model transformation: a case study in transformation modularity. In: Software and Systems Modeling (SoSyM), vol. 9, pp. 375–402. Springer, Berlin (2010)Google Scholar
  41. 41.
    IBM. IBM Rational Asset Manager (RAM) http://www-01.ibm.com/software/rational/products/ram/
  42. 42.
  43. 43.
  44. 44.
    IRISA. Kermeta, http://www.kermeta.org/ (2012)
  45. 45.
    IRISA. Metamodel Coverage Checker (MMCC). http://www.irisa.fr/triskell/Software/protos/MMCC (2012)
  46. 46.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: A model transformation tool. In: Science of Computer Programming, vol. 72, pp. 31–39. Elsevier, Amsterdam (2008)Google Scholar
  47. 47.
    Kent, S., Smith, R.: The bidirectional mapping problem. Electron. Notes Theor. Comput. Sci. 82(7), 151–165 (2003)CrossRefGoogle Scholar
  48. 48.
    Kolovos, D., Paige, R., Polack, F.: A framework for composing modular and interoperable model management tasks. In: Model-Driven Tool and Process Integration Workshop (MDTPI), pp. 79–90. Berlin, Germany (2008)Google Scholar
  49. 49.
    König, B., Kozioura, V.: Augur 2-A new version of a tool for the analysis of graph transformation systems. In: Electronic Notes in Theoretical Computer Science (ENTCS), vol. 211, pp 201–210. Elsevier, Amsterdam (2008)Google Scholar
  50. 50.
    Küster, J., Abd-El-Razik, M.: Validation of model transformations-first experiences using a white box approach. In: Models in Software Engineering, pp. 193–204 (2007)Google Scholar
  51. 51.
    Mandelin, D., Kimelman, D., Yellin, D.: A Bayesian approach to diagram matching with application to architectural models. In: International Conference on Software Engineering (ICSE), pp. 222–231. Shanghai, China (2006)Google Scholar
  52. 52.
    Maskeri, G., Willans, J., Clark, T., Evans, A., Kent, S., Sammut, P.: A pattern based approach to defining translations between languages (2002)Google Scholar
  53. 53.
    McQuillan, J., Power, J.: A Survey of UML-based coverage criteria for software testing. Technical Report, Department of Computer Science, NUI Maynooth, Co. Kildare, Ireland (2005)Google Scholar
  54. 54.
    Mens, T., Van Gorp, P.: A taxonomy of model transformation. In: Electronic Notes in Theoretical Computer Science, vol. 152, pp. 125–142. Elsevier, Amsterdam (2006)Google Scholar
  55. 55.
    Mohagheghi, P., Dehlen, V.: Where is the proof?: a review of experiences from applying MDE in industry. In: European Conference on Model Driven Architecture-Foundations and Applications (ECMDA-FA), pp. 432–443. Springer, Berlin (2008)Google Scholar
  56. 56.
    Mottu, J., Baudry, B., Le Traon, Y.: Mutation analysis testing for model transformations. In: European Conference on Model Driven Architecture-Foundations and Applications (ECMDA-FA), pp. 376–390 (2006)Google Scholar
  57. 57.
    Narayanan, A., Karsai, G.: Verifying model transformations by structural correspondence. In: Electronic Communications of the European Association of Software Science and Technology (EASST), Vol. 10 (2008)Google Scholar
  58. 58.
    Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., Zave, P.: Matching and merging of statecharts specifications. In: International Conference on Software Engineering (ICSE), pp. 54–64. Minneapolis, USA (2007)Google Scholar
  59. 59.
    Offutt, J., Abdurazik, A.: Generating tests from UML specifications. In: The Unified Modeling Language (UML), pp. 416–429. Springer, Berlin (1999)Google Scholar
  60. 60.
    OMG, O.: Meta Object Facility (MOF) Specification Version 1.4 (2002)Google Scholar
  61. 61.
    Ostrand, T., Balcer, M.: The category-partition method for specifying and generating functional tests. Commun. ACM 31, 676–686 (1988)CrossRefGoogle Scholar
  62. 62.
    Peterson, J.: Petri nets. In: ACM Computing Surveys (CSUR), vol. 9, pp. 223–252. ACM, New York (1977)Google Scholar
  63. 63.
    Pressman, R.S.: Software Engineering: A Practitioner’s Approach, 7th edn. McGraw-Hill, New York (2009)Google Scholar
  64. 64.
    Rivera, J., Guerra, E., de Lara, J., Vallecillo, A.: Analyzing rule-based behavioral semantics of visual modeling languages with Maude. In: Software Language Engineering (SLE), pp. 54–73 (2009)Google Scholar
  65. 65.
    Rozenberg, G., Ehrig, H.: Handbook of Graph Grammars and Computing by Graph Transformation, vol. 1. World Scientific, Singapore (1999)Google Scholar
  66. 66.
    Salay, R., Wang, S., Suen, V.: Managing related models in vehicle control software development. In: Model Driven Engineering Languages and Systems (MoDELS), pp. 383–398. Springer, Berlin (2012)Google Scholar
  67. 67.
    Schätz, B., Holzl, F., Lundkvist, T.: Design-space exploration through constraint-based model-transformation. In: Engineering of Computer Based Systems (ECBS), pp. 173–182. Oxford, UK (2010)Google Scholar
  68. 68.
    Selim, G., Cordy, J., Dingel, J.: Analysis of model transformations. In: Technical Report 2012-592, School of Computing, Queen’s University (2012)Google Scholar
  69. 69.
    Selim, G., Cordy, J., Dingel, J.: Model transformation testing: the state of the art. In: Analysis of Model Transformations (AMT), Innsbruck, Austria (2012)Google Scholar
  70. 70.
    Selim, G., Wang, S., Cordy, J., Dingel, J.: Model transformations for migrating legacy models: an industrial case study. In: European Conference on Modelling Foundations and Applications (ECMFA), pp. 90–101. Springer, Berlin (2012) Google Scholar
  71. 71.
    Sodius. MDWorkbench, http://www.mdworkbench.com/ (2012)
  72. 72.
    Soley, R., The OMG Staff: Model Driven Architecture. In OMG white paper, November (2000)Google Scholar
  73. 73.
    Steinberg, D., Budinsky, F., Merks, E., Paternostro, M.: EMF: Eclipse Modeling Framework, Chapter 5: Ecore Modeling Concepts. Addison-Wesley, Reading (2008)Google Scholar
  74. 74.
    Syriani, E.: Matters of model transformation. In: Technical Report, School of Computer Science, McGill University, SOCS-TR-2009.2, March (2009)Google Scholar
  75. 75.
    Teppola, S., Parviainen, P., Takalo, J.: Challenges in deployment of model driven development. In: International Conference on Software Engineering Advances (ICSEA), pp. 15–20. Porto, Portugal (2009)Google Scholar
  76. 76.
    Varró, D., Varró-Gyapay, S., Ehrig, H., Prange, U., Taentzer, G.: Termination analysis of model transformations by Petri Nets. In: International Conference on Graph Transformations (ICGT), pp. 260–274. Springer, Berlin (2006)Google Scholar
  77. 77.
    Wu, Y., Chen, M., Offutt, J.: UML-based integration testing for component-based software. In: The International Conference on COTS-Based Software Systems (ICCBSS), pp. 251–260 (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Gehan M. K. Selim
    • 1
    Email author
  • Shige Wang
    • 2
  • James R. Cordy
    • 1
  • Juergen Dingel
    • 1
  1. 1.School of ComputingQueen’s UniversityKingstonCanada
  2. 2.Electrical and Controls Integration LabGeneral Motors Research and DevelopmentWarrenUSA

Personalised recommendations