Monarch: Model-Based Development of Software Architectures

  • Hamid Bagheri
  • Kevin Sullivan
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6395)


In recent work we showed that it is possible to separate, and combine formal representations of, application properties and architectural styles, respectively. We do this by defining style-specific mappings from style-independent application models to architectural models in given styles. This paper shows that this separation of concerns supports a model-based development and tools approach to architectural-style-independent application modeling, and architecture synthesis with style as a separate design variable. In support of these claims, we present a proof-of-concept tool, Monarch, and illustrate its use.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
  2. 2.
  3. 3.
    Ambriola, V., Kmiecik, A.: Architectural transformations. In: Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering, pp. 275–278 (2002)Google Scholar
  4. 4.
    Bagheri, H., Song, Y., Sullivan, K.: Architectural style as an independent variable. In: Proceedings of the 25th IEEE/ACM International Conference on Automated Software Engineering (ASE 2010) (2010)Google Scholar
  5. 5.
    Bagheri, H., Sullivan, K.: Architecture as an independent variable for Aspect-Oriented application descriptions. In: Abstract State Machines, Alloy, B and Z (ABZ 2010) (2010)Google Scholar
  6. 6.
    Baresi, L., Heckel, R., Thöne, S., Varŕo, D.: Style-based modeling and refinement of service-oriented architectures. Software and Systems Modeling 5(2), 187–207 (2006)Google Scholar
  7. 7.
    Chen, K., Sztipanovits, J., Abdelwalhed, S., Jackson, E.: Semantic anchoring with model transformations. In: Hartman, A., Kreische, D. (eds.) ECMDA-FA 2005. LNCS, vol. 3748, pp. 115–129. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Clark, T., Evans, A., Kent, S., Sammut, P.: The MMF approach to engineering Object-Oriented design languages. In: Workshop on Language Descriptions, Tools and Applications (2001)Google Scholar
  9. 9.
    DeLine, R.: Avoiding packaging mismatch with flexible packaging. In: Proceedings of the 21st International Conference on Software Engineering, pp. 97–106 (1999)Google Scholar
  10. 10.
    Demirezen, Z., Mernik, M., Gray, J., Bryant, B.: Verification of DSMLs using graph transformation. In: Proceedings of the 6th International Workshop on Model-Driven Engineering, Verification and Validation. ACM International Conference Proceeding Series, vol. 413, pp. 1–10 (2009)Google Scholar
  11. 11.
    Garcia, A., Chavez, C., Batista, T., Santanna, C., Kulesza, U., Rashid, A., Lucena, C.: On the modular representation of architectural aspects. In: Gruhn, V., Oquendo, F. (eds.) EWSA 2006. LNCS, vol. 4344, pp. 82–97. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  12. 12.
    Garlan, D., Barnes, J.M., Schmerl, B., Celiku, O.: Evolution styles: Foundations and tool support for software architecture evolution. In: Joint 8th Working International Conference on Software Architecture and 3rd European Conference on Software Architecture, Cambridge, UK (September 2009)Google Scholar
  13. 13.
    Garlan, D., Monroe, R.T., Wile, D.: Acme: architectural description of component-based systems. In: Foundations of Component-based Systems, pp. 47–67. Cambridge University Press, Cambridge (2000)Google Scholar
  14. 14.
    Georgiadis, I., Magee, J., Kramer, J.: Self-organising software architectures for distributed systems. In: Proceedings of the First Workshop on Self-healing Systems, pp. 33–38 (2002)Google Scholar
  15. 15.
    Jackson, D.: Alloy: a lightweight object modelling notation. ACM Transactions on Software Engineering and Methodology (TOSEM) 11(2), 256–290 (2002)MathSciNetCrossRefGoogle Scholar
  16. 16.
    Jackson, E.K., Schulte, W., Sztipanovits, J.: The power of rich syntax for model-based development - microsoft research (2008),
  17. 17.
    Kelsen, P., Ma, Q.: A lightweight approach for defining the formal semantics of a modeling language. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 690–704. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  18. 18.
    Kim, J.S., Garlan, D.: Analyzing architectural styles with alloy. In: Proceedings of the ISSTA 2006 Workshop on Role of Software Architecture for Testing and Analysis (ROSATEA 2006), Portland, ME, USA, pp. 70–80 (July 2006)Google Scholar
  19. 19.
    Lédeczi, A., Bakay, A., Maróti, M., Völgyesi, P., Nordstrom, G., Sprinkle, J., Karsai, G.: Composing Domain-Specific design environments. Computer 34(11), 44–51 (2001)CrossRefGoogle Scholar
  20. 20.
    Malek, S.: Effective realization of software architectural styles with aspects. In: Proceedings of the Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008), pp. 313–316 (2008)Google Scholar
  21. 21.
    Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26(1), 70–93 (2000)CrossRefGoogle Scholar
  22. 22.
    Nitto, E.D., Rosenblum, D.: Exploiting ADLs to specify architectural styles induced by middleware infrastructures. In: Proceedings of the 21st International Conference on Software Engineering, Los Angeles, California, United States, pp. 13–22. ACM, New York (1999)Google Scholar
  23. 23.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar
  24. 24.
    Taylor, R.N., Medvidovic, N., Dashofy, E.: Software Architecture: Foundations, Theory, and Practice. Wiley, Chichester (2009)CrossRefGoogle Scholar
  25. 25.
    Torlak, E.: A Constraint Solver for Software Engineering: Finding Models and Cores of Large Relational Specifications. PhD thesis, MIT (February 2009)Google Scholar
  26. 26.
    Warren, I., Sun, J., Krishnamohan, S., Weerasinghe, T.: An automated formal approach to managing dynamic reconfiguration. In: Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering, pp. 37–46 (2006)Google Scholar
  27. 27.
    White, J., Schmidt, D.C., Nechypurenko, A., Wuchner, E.: Introduction to the generic eclipse modelling system. Eclipse Magazine 2007(6), 11–18 (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Hamid Bagheri
    • 1
  • Kevin Sullivan
    • 1
  1. 1.University of VirginiaCharlottesvilleUSA

Personalised recommendations