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

Analyzing architectural styles with alloy

Published: 17 July 2006 Publication 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.]]
[2]
R. Allen and D. Garlan. A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology, July 1997.]]
[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.]]
[4]
F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, and M. Stal. Pattern Oriented Software Architecture: A System of Patterns. John Wiley & Sons, 1996.]]
[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.]]
[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.]]
[7]
P. Clements, R. Kazman, and M. Klein. Evaluating Software Architectures: Methods and Case Studies. Addison Wesley Longman, 2001.]]
[8]
The Common Object Request Broker: Architecture and specification. OMG Document Number 91.12.1, December 1991. Revision 1.1 (Draft 10).]]
[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.]]
[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.]]
[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.]]
[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.]]
[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.]]
[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.]]
[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.]]
[16]
D. Jackson. Alloy: A lightweight object modelling notation. ACM Transactions on Software Engineering and Methodology, 2002.]]
[17]
G. Karsai and J. Sztipanovits. A model-based approach to self-adaptive software. IEEE Intelligent Systems, 14(3):46--53, May 1999.]]
[18]
J. S. Kim and D. Garlan. Automating the analysis of architectural styles. Technical Report CMU-ISRI-06-106, Carnegie Mellon University, 2006.]]
[19]
J. Magee and J. Kramer. Concurrency: State Models and Java Programs. John Wiley and Sons, 1999.]]
[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.]]
[21]
S. Microsystems. J2ee information site. URL: http://java.sun.com/javaee/.]]
[22]
OMG. Unified modeling language. URL: http://www.uml.info/.]]
[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.]]
[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.]]
[25]
SAE. Sae aadl information site. URL: http://www.aadl.info/.]]
[26]
B. Schmerl and D. Garlan. Acmestudio: Supporting style-centered architecture development. In Proc. of the 26th International Conference on Software Engineering (ICSE), 2004.]]
[27]
M. Shaw and D. Garlan. Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.]]
[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.]]
[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.]]
[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.]]

Cited By

View all
  • (2024)Scalable Relational Analysis via Relational Bound PropagationProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639171(1-12)Online publication date: 20-May-2024
  • (2020)Multi-View Model-Driven Projection to Facilitate the Control of the Evolution and Quality of the ArchitectureInternational Journal of Software Innovation10.4018/IJSI.20201001028:4(21-39)Online publication date: Oct-2020
  • (2020)Towards architectural view-driven modernization2020 International Conference on Advanced Aspects of Software Engineering (ICAASE)10.1109/ICAASE51408.2020.9380106(1-6)Online publication date: 28-Nov-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

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
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 for this article.

Check for updates

Author Tags

  1. architectural style
  2. software architecture
  3. style analysis

Qualifiers

  • Article

Conference

ISSTA06

Acceptance Rates

ROSATEA '06 Paper Acceptance Rate 11 of 11 submissions, 100%;
Overall Acceptance Rate 11 of 11 submissions, 100%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)7
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Scalable Relational Analysis via Relational Bound PropagationProceedings of the IEEE/ACM 46th International Conference on Software Engineering10.1145/3597503.3639171(1-12)Online publication date: 20-May-2024
  • (2020)Multi-View Model-Driven Projection to Facilitate the Control of the Evolution and Quality of the ArchitectureInternational Journal of Software Innovation10.4018/IJSI.20201001028:4(21-39)Online publication date: Oct-2020
  • (2020)Towards architectural view-driven modernization2020 International Conference on Advanced Aspects of Software Engineering (ICAASE)10.1109/ICAASE51408.2020.9380106(1-6)Online publication date: 28-Nov-2020
  • (2020)SAM-SoS: A Stochastic Software Architecture Modeling and Verification Approach for Complex System-of-SystemsIEEE Access10.1109/ACCESS.2020.30259348(177580-177603)Online publication date: 2020
  • (2018)Hierarchical Specification and Verification of Architectural Design PatternsFundamental Approaches to Software Engineering10.1007/978-3-319-89363-1_9(149-168)Online publication date: 4-Apr-2018
  • (2018)Evaluating the suitability of state‐based formal methods for industrial deploymentSoftware: Practice and Experience10.1002/spe.263448:12(2350-2379)Online publication date: 13-Sep-2018
  • (2017)Verifying Patterns of Dynamic Architectures using Model CheckingElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.245.2245(16-30)Online publication date: 20-Mar-2017
  • (2017)DCL 2.0: modular and reusable specification of architectural constraintsJournal of the Brazilian Computer Society10.1186/s13173-017-0061-z23:1Online publication date: 16-Aug-2017
  • (2017)Towards a well-formed software architecture analysisProceedings of the 11th European Conference on Software Architecture: Companion Proceedings10.1145/3129790.3129813(173-179)Online publication date: 11-Sep-2017
  • (2017)Formal modeling and verification of security controls for multimedia systems in the cloudMultimedia Tools and Applications10.1007/s11042-017-4853-076:21(22845-22870)Online publication date: 1-Nov-2017
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media