Generating Systems from Multiple Levels of Abstraction

  • Martin Girschick
  • Thomas Kühne
  • Felix Klar
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4473)


We describe our prototype implementation for Architecture Stratification supporting system descriptions at multiple levels of abstraction for developing complex software systems. Our tool transforms both model and code fragments in parallel using refinement transformations which are specified with a combination of “Story-Driven-Modeling” and Java code. Multi-level editing is enabled by allowing additive modifications at lower abstraction levels that are retained on re-generation.

We present a case study illustrating the application of a number of design patterns and show how our approach can be used to tie in a generic framework by automatically generating the corresponding glue code.


Model Transformation Transformation Rule Code Block Code Fragment Java Code 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Atkinson, C., Kühne, T.: Aspect-Oriented Development with Stratified Frameworks. IEEE Software 20(1), 81–89 (2003)CrossRefGoogle Scholar
  2. 2.
    Atkinson, C., Kühne, T.: Separation of Concerns through Stratified Architectures. In: Bertino, E. (ed.) ECOOP 2000. LNCS, vol. 1850, Springer, Heidelberg (2000)Google Scholar
  3. 3.
    Gamma, E., Helm, R., Johnson, R.E., Vlissides, J.: Design Patterns: Elements of Object-Oriented Software Architecture. Addison-Wesley, Reading (1994)Google Scholar
  4. 4.
    Nickel, U., Niere, J., Zündorf, A.: The FUJABA Environment. Technical report, Computer Science Department, University of Paderborn (2000)Google Scholar
  5. 5.
    Pree, W.: Meta patterns - a means for capturing the essentials of reusable object-oriented design. In: Tokoro, M., Pareschi, R. (eds.) ECOOP 1994. LNCS, vol. 821, pp. 150–162. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  6. 6.
    Mens, T., Czarnecki, K., Gorp, P.V.: A taxonomy of model transformations. In: Bezivin, J., Heckel, R., (eds.): Language Engineering for Model-Driven Software Development. Number 04101 in Dagstuhl Seminar Proceedings, Internationales Begegnungs- und Forschungszentrum (IBFI), Schloss Dagstuhl, Germany (2005)Google Scholar
  7. 7.
    Witthawaskul, W., Johnson, R.: An object oriented model transformer framework based on stereotypes. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, Springer, Heidelberg (2004)Google Scholar
  8. 8.
    Marschall, F., Braun, P.: Model transformations for the MDA with BOTL. In: Proceedings of the Workshop on Model Driven Architecture: Foundations and Applications, CTIT Technical Report TR-CTIT-03-27, University of Twente (2003)Google Scholar
  9. 9.
    Greenfield, J., Short, K.: Software factories: assembling applications with patterns, models, frameworks and tools. In: OOPSLA 2003. Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, New York, NY, USA, pp. 16–27. Addison-Wesley, Reading (2003)CrossRefGoogle Scholar
  10. 10.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Staged configuration using feature models. In: Nord, R.L. (ed.) SPLC 2004. LNCS, vol. 3154, Springer, Heidelberg (2004)Google Scholar
  11. 11.
    Almeida, J.P., Dijkman, R., Pires, L.F., Quartel, D., van Sinderen, M.: Abstract interactions and interaction refinement in model-driven design. In: EDOC 2005. Ninth IEEE International EDOC Enterprise Computing Conference, Twente, Netherlands, September, 19-23 2005, pp. 273–286. IEEE Computer Society Press, Los Alamitos (2005)Google Scholar
  12. 12.
    Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story Diagrams: A new Graph Rewrite Language based on the Unified Modeling Language and Java. Technical report, AG-Softwaretechnik, Fachbereich 17, Universität Paderborn (1999)Google Scholar
  13. 13.
    Königs, A.: Model transformation with triple graph grammars. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, Springer, Heidelberg (2005)Google Scholar
  14. 14.
    Schürr, A.: Specification of Graph Translators with Triple Graph Grammars. In: Proceedings of the 20th International Workshop on Graph-Theoretic Concepts in Computer Science, London, UK, pp. 141–163. Springer, Heidelberg (1994)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Martin Girschick
    • 1
  • Thomas Kühne
    • 1
  • Felix Klar
    • 1
  1. 1.Technische Universität DarmstadtGermany

Personalised recommendations