skip to main content
10.1145/1147249.1147259acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
Article

Analyzing architectural styles with alloy

Published:17 July 2006Publication History

ABSTRACT

The backbone of many architectures is an architectural style that provides a domain-specific design vocabulary and set of constraints on how that vocabulary can be used. Hence, designing a sound and appropriate architectural style becomes an important and intellectually challenging activity. Unfortunately, although there are numerous tools to help in the analysis of individual architectures, relatively less work has been done on tools to help the style designer. In this paper we show how to map an architectural style, expressed formally in an architectural description language, into a relational model that can be automatically checked for properties such as whether a style is consistent, whether a style satisfies some predicate over the architectural structure, whether two styles are compatible for composition, and whether one style refines another.

References

  1. G. Abowd, R. Allen, and D. Garlan. Formalizing style to understand descriptions of software architecture. ACM Transactions on Software Engineering and Methodology, October 1995.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. R. Allen and D. Garlan. A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology, July 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. D. J. Barrett, L. A. Clarke, P. L. Tarr, and A. E. Wise. A framework for event-based software integration. ACM Trans. on Software Engineering and Methodology, 5(4):378--421, October 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, and M. Stal. Pattern Oriented Software Architecture: A System of Patterns. John Wiley & Sons, 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. S. Chaki, A. Groce, and O. Strichman. Explaining abstract counterexamples. In Foundations of Software Engineering (SIGSOFT FSE), pages 73--82. ACM SIGSOFT, October 2004.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. P. Clements, F. Bachmann, L. Bass, D. GArlan, J. Ivers, R. Little, R. Nord, and J. Stafford. Documenting Software Architectures: Views and Beyond. Addison Wesley, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. P. Clements, R. Kazman, and M. Klein. Evaluating Software Architectures: Methods and Case Studies. Addison Wesley Longman, 2001.]]Google ScholarGoogle Scholar
  8. The Common Object Request Broker: Architecture and specification. OMG Document Number 91.12.1, December 1991. Revision 1.1 (Draft 10).]]Google ScholarGoogle Scholar
  9. A. DiMarco and P. Inverardi. Compositional generation of software architecture performance qn models. In 4th Working IEEE/IFIP Conf. on Software Architecture (WICSA04), Oslo, Norway, June 2004.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. Dingel, D. Garlan, S. Jha, and D. Notkin. Towards a formal treatment of implicit invocation. Formal Aspects of Computing, 10:193--213, 1998.]]Google ScholarGoogle ScholarCross RefCross Ref
  11. D. Dvorak and K. Reinholtz. Separating essential from incidentals, an execution architecture for real-time control systems. In Proc. 7th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, Austria, 2004.]]Google ScholarGoogle ScholarCross RefCross Ref
  12. D. Garlan, R. Allen, and J. Ockerbloom. Exploiting style in architectural design environments. In Proc. of SIGSOFT'94: The 2nd ACM SIGSOFT Symposium on the Foundations of Software Engineering, pages 179--185. ACM Press, December 1994.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. Garlan, R. T. Monroe, and D. Wile. Acme: An architecture description interchange language. In Proceedings of CASCON'97, pages 169--183, Ontario, Canada, November 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. P. Inverardi and M. Tivoli. Deadlock-free software architectures for com/dcom applications. Elsevier Journal of Systems and Software, 65(3):173--183, 2003.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. P. Inverardi and A. Wolf. Formal specification and analysis of software architectures using the chemical, abstract machine model. IEEE Transactions on Software Engineering, Special Issue on Software Architecture, 21(4):373--386, April 1995.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. D. Jackson. Alloy: A lightweight object modelling notation. ACM Transactions on Software Engineering and Methodology, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. G. Karsai and J. Sztipanovits. A model-based approach to self-adaptive software. IEEE Intelligent Systems, 14(3):46--53, May 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. S. Kim and D. Garlan. Automating the analysis of architectural styles. Technical Report CMU-ISRI-06-106, Carnegie Mellon University, 2006.]]Google ScholarGoogle Scholar
  19. J. Magee and J. Kramer. Concurrency: State Models and Java Programs. John Wiley and Sons, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. N. Medvidovic and R. N. Taylor. A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering, 26(1):70--93, January 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. S. Microsystems. J2ee information site. URL: http://java.sun.com/javaee/.]]Google ScholarGoogle Scholar
  22. OMG. Unified modeling language. URL: http://www.uml.info/.]]Google ScholarGoogle Scholar
  23. D. E. Perry and A. L. Wolf. Foundations for the study of software architecture. ACM SIGSOFT Software Engineering Notes, 17(4):40--52, October 1992.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. R. Roshandel, B. Schmerl, N. Medvidovic, D. Garlan, and D. Zhang. Understanding tradeoffs among different architectural modelling approaches. In Proc. of the 4th Working IEEE/IFIP Conf. on Software Architectures, Oslo, Norway, June 2004.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. SAE. Sae aadl information site. URL: http://www.aadl.info/.]]Google ScholarGoogle Scholar
  26. B. Schmerl and D. Garlan. Acmestudio: Supporting style-centered architecture development. In Proc. of the 26th International Conference on Software Engineering (ICSE), 2004.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. M. Shaw and D. Garlan. Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. J. P. Sousa and D. Garlan. Formal modeling of the Enterprise JavaBeans component integration framework. In Proc. of FM'99 -- Formal Methods: World Congress on Formal Methods in the Development of Computing Systems, number 1709, pages 1281--1300, Toulouse, France, November 1999. Springer Verlag, LNCS.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. B. Spitznagel and D. Garlan. Architecture-based performance analysis. In 10th International Conf. on Software Engineering and Knowledge Engineering (SEKE'98), San Francisco, CA, June 1998.]]Google ScholarGoogle Scholar
  30. B. Tekinerdogan and H. Szer. Software architecture reliability analysis using failure scenarios. In 5th Working IEEE/IFIP Conference on Software Architecture (WICSA'05), pages 203--204, 2005.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Analyzing architectural styles with alloy

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Other conferences
        ROSATEA '06: Proceedings of the ISSTA 2006 workshop on Role of software architecture for testing and analysis
        July 2006
        86 pages
        ISBN:1595934596
        DOI:10.1145/1147249

        Copyright © 2006 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 17 July 2006

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        ROSATEA '06 Paper Acceptance Rate11of11submissions,100%Overall Acceptance Rate11of11submissions,100%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader