[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1007/978-3-030-44769-4_10guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Monitoring Behavioral Compliance with Architectural Patterns Based on Complex Event Processing

Published: 28 September 2020 Publication History

Abstract

Architectural patterns assist in the process of architectural decision making as they capture architectural aspects of proven solutions. In many cases, the chosen patterns have system-wide implications on non-functional requirements such as availability, performance, and resilience. Ensuring compliance with the selected patterns is of vital importance to avoid architectural drift between the implementation and its desired architecture. Most of the patterns not only capture structural but also significant behavioral architectural aspects that need to be checked. In case all properties of the system are known before runtime, static compliance checks of application code and configuration files might be sufficient. However, in case aspects of the system dynamically evolve, e.g., due to manual reconfiguration, compliance with the architectural patterns also needs to be monitored during runtime. In this paper, we propose to link compliance rules to architectural patterns that specify behavioral aspects of the patterns based on runtime events using stream queries. These queries serve as input for a complex event processing component to automatically monitor architecture compliance of a running system. To validate the practical feasibility, we applied the approach to a set of architectural patterns in the domain of distributed systems and prototypically implemented a compliance monitor.

References

[1]
Ackermann, C., et al.: Towards behavioral reflexion models. In: Software Reliability Engineering, ISSRE 2009, pp. 175–184. IEEE, November 2009
[2]
Alexander C et al. A Pattern Language: Towns, Buildings, Construction 1977 Oxford Oxford University Press
[3]
Breitenbücher, U.: Eine musterbasierte Methode zur Automatisierung des Anwendungsmanagements. Dissertation, Universität Stuttgart, Fakultät Informatik, Elektrotechnik und Informationstechnik (2016)
[5]
Fahland D and Gierds C Salinesi C, Norrie MC, and Pastor Ó Analyzing and completing middleware designs for enterprise integration using coloured petri nets Advanced Information Systems Engineering 2013 Heidelberg Springer 400-416
[6]
Falkenthal, M., et al.: From pattern languages to solution implementations. In: Proceedings of the 6th International Conferences on Pervasive Patterns and Applications (PATTERNS 2014), pp. 12–21. Xpert Publishing Services, May 2014
[7]
Fehling C et al. Cloud Computing Patterns: Fundamentals to Design, Build, and Manage Cloud Applications 2014 Heidelberg Springer
[8]
Hackernoon: Designing a microservices architecture for failure (2017). hackernoon.com/designing-a-microservices-architecture-for-failure-a57f34ded646
[9]
Harrison N et al. Using patterns to capture architectural decisions Software 2007 24 4 38-45
[10]
Kiczales G et al. Akşit M, Matsuoka S, et al. Aspect-oriented programming ECOOP 1997 — Object-Oriented Programming 1997 Heidelberg Springer 220-242
[11]
Luckham D Bassiliades N, Governatori G, and Paschke A The power of events: an introduction to complex event processing in distributed enterprise systems Rule Representation, Interchange and Reasoning on the Web 2008 Heidelberg Springer 3
[12]
Mulo E et al. Domain-specific language for event-based compliance monitoring in process-driven SOAs SOCA 2013 7 1 59-73
[13]
Nygard MT Release It!: Design and Deploy Production-ready Software 2007 Raleigh Pragmatic Bookshelf
[14]
Oppenheimer, D.: The importance of understanding distributed system configuration. In: Proceedings of the 2003 Conference on Human Factors in Computer Systems Workshop. Citeseer (2003)
[15]
Ritter, D., et al.: Formalizing application integration patterns. In: 2018 IEEE 22nd International Enterprise Distributed Object Computing Conference (EDOC), pp. 11–20. IEEE (2018)
[16]
Rosik J et al. Assessing architectural drift in commercial software development: a case study Softw. Pract. Exp. 2011 41 1 63-86
[17]
Saatkamp K, Breitenbücher U, Kopp O, and Leymann F An approach to automatically detect problems in restructured deployment models based on formalizing architecture and design patterns SICS Softw.-Intensiv. Cyber-Phys. Syst. 2019 34 85-97
[18]
Stocker, M., et al.: Interface quality patterns - communicating and improving the quality of microservices APIs. In: 23rd European Conference on Pattern Languages of Programs 2018, July 2018
[19]
Wendehals, L., Orso, A.: Recognizing behavioral patterns at runtime using finite automata. In: Proceedings of the 2006 International Workshop on Dynamic Systems Analysis, pp. 33–40. ACM, May 2006
[20]
Zdun U, Navarro E, and Leymann F Maximilien M, Vallecillo A, Wang J, and Oriol M Ensuring and assessing architecture conformance to microservice decomposition patterns Service-Oriented Computing 2017 Cham Springer 411-429
[21]
Zimmermann, O., et al.: The role of architectural decisions in model-driven service-oriented architecture construction. In: Proceedings of the OOPSLA 2006 Workshop on Best Practices and Methodologies in Service-Oriented Architectures. Unipub (2006)
[22]
Zimmermann O, Gschwind T, Küster J, Leymann F, and Schuster N Overhage S, Szyperski CA, Reussner R, and Stafford JA Reusable architectural decision models for enterprise application development Software Architectures, Components, and Applications 2007 Heidelberg Springer 15-32
[23]
Zimmermann, O., et al.: Combining pattern languages and reusable architectural decision models into a comprehensive and comprehensible design method. In: Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008), pp. 157–166. IEEE, February 2008

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
Service-Oriented and Cloud Computing: 8th IFIP WG 2.14 European Conference, ESOCC 2020, Heraklion, Crete, Greece, September 28–30, 2020, Proceedings
Sep 2020
179 pages
ISBN:978-3-030-44768-7
DOI:10.1007/978-3-030-44769-4

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 28 September 2020

Author Tags

  1. Architecture compliance
  2. Architectural patterns
  3. Behavioral compliance monitoring
  4. Complex event processing

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 0
    Total Downloads
  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 03 Jan 2025

Other Metrics

Citations

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media