Round-Trip Support for Invasive Software Composition Systems

  • Jendrik Johannes
  • Roland Samlaus
  • Mirko Seifert
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5634)


The ever increasing complexity of software systems promotes the reuse of software components to a topic of utter importance. By reusing mature parts of software, large systems can be built with high quality. The Reuseware Composition Framework can compose components written in arbitrary software languages. Based on metamodeling these components are merged invasively. But, even though language independent composition is powerful to compose complex systems, one must consider that composition is not the only activity in developing a working systems by reuse. Many tests and validations can only be performed on the composed system. At that point, it is hard to (a) know from which component an error originates and (b) ascertain what the implications of changing something in the composed system are.

This paper presents an approach to propagate changes back to the correct source components and discusses the possible implications of changes made to composed systems. Furthermore, the implementation of the approach as an extension to the Reuseware Composition Framework is presented using two example applications.


Round-trip Engineering Invasive Software Composition Traceability 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aßmann, U.: Invasive Software Composition, 1st edn. Springer, Heidelberg (2003)CrossRefzbMATHGoogle Scholar
  2. 2.
    Henriksson, J., Heidenreich, F., Johannes, J., Zschaler, S., Aßmann, U.: Extending Grammars and Metamodels for Reuse: The Reuseware Approach. IET Software 2(3), 165–184 (2008)CrossRefGoogle Scholar
  3. 3.
    Heidenreich, F., Henriksson, J., Johannes, J., Zschaler, S.: On Language-Independent Model Modularisation. Transactions on Aspect-Oriented Development, Special Issue on Aspects and MDE (2009)Google Scholar
  4. 4.
    Madsen, O.L., Møller-Pedersen, B., Nygaard, K.: Object-Oriented Programming in the BETA Programming Language. Addison-Wesley, Reading (1993)Google Scholar
  5. 5.
    Henriksson, J.: A Lightweight Framework for Universal Fragment Composition—with an application in the Semantic Web. PhD thesis, Technische Universität Dresden (January 2009)Google Scholar
  6. 6.
    Object Management Group: MOF 2.0 core specification. OMG Document (January 2006),
  7. 7.
    Object Management Group: Unified Modeling Language: Superstructure Version 2.1.2. Final Adopted Specification formal/2007-11-02 (2007)Google Scholar
  8. 8.
    Chalabine, M., Kessler, C.: A Formal Framework for Automated Round-Trip Software Engineering in Static Aspect Weaving and Transformations. In: Proceedings of 29th International Conference on Software Engineering (ICSE 2007), Minneapolis, USA, pp. 137–146 (2007)Google Scholar
  9. 9.
    Fritzsche, M., Johannes, J.: Putting Performance Engineering into Model-Driven Engineering: Model-Driven Performance Engineering. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 164–175. Springer, Heidelberg (2008) (MoDELS 2005 Satellite Events: Revised Selected Papers)CrossRefGoogle Scholar
  10. 10.
    Sendall, S., Küster, J.M.: Taming Model Round-Trip Engineering. In: Proceedings of Workshop on Best Practices for Model-Driven Software Development, Vancouver, Canada (2004)Google Scholar
  11. 11.
    Aßmann, U.: Automatic Roundtrip Engineering. Electronic Notes in Theoretical Computer Science 82(5) (2003)Google Scholar
  12. 12.
    Eaddy, M., Aho, A., Hu, W., McDonald, P., Burger, J.: Debugging Aspect-Enabled Programs. In: Lumpe, M., Vanderperren, W. (eds.) SC 2007. LNCS, vol. 4829, pp. 200–216. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  13. 13.
    Stevens, P.: Towards an Algebraic Theory of Bidirectional Transformations. In: Proceedings of 4th International Conference on Graph Transformations (ICGT2008), Leicester, United Kingdom, pp. 1–17 (2008)Google Scholar
  14. 14.
    Schürr, A.: Specification of Graph Translators with Triple Graph Grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903. Springer, Heidelberg (1995)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Jendrik Johannes
    • 1
  • Roland Samlaus
    • 1
  • Mirko Seifert
    • 1
  1. 1.Computer Science DepartmentTechnische Universität DresdenDresdenGermany

Personalised recommendations