{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,24]],"date-time":"2026-03-24T05:19:58Z","timestamp":1774329598170,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":54,"publisher":"ACM","license":[{"start":{"date-parts":[[2021,9,27]],"date-time":"2021-09-27T00:00:00Z","timestamp":1632700800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"CNPq","award":["424160\/2018-8 and 311344\/2020-8"],"award-info":[{"award-number":["424160\/2018-8 and 311344\/2020-8"]}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021,9,27]]},"DOI":"10.1145\/3474624.3477072","type":"proceedings-article","created":{"date-parts":[[2021,10,5]],"date-time":"2021-10-05T19:47:46Z","timestamp":1633463266000},"page":"404-409","source":"Crossref","is-referenced-by-count":8,"title":["Towards First-Class Architectural Connectors: The Case for Self-Adaptive Service Meshes"],"prefix":"10.1145","author":[{"given":"Nabor","family":"Mendonca","sequence":"first","affiliation":[{"name":"University of Fortaleza, Brazil"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Carlos","family":"Aderaldo","sequence":"additional","affiliation":[{"name":"University of Fortaleza, Brazil"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2021,10,5]]},"reference":[{"key":"e_1_3_2_1_1_1","volume-title":"UNIX Network Programming Volume 1: The Sockets Networking API. Vol.\u00a03"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/3344948.3344963"},{"key":"e_1_3_2_1_3_1","volume-title":"Model-based Recovery Connectors for Self-adaptation and Self-healing. In 11th International Joint Conference on Software Technologies \u2013","volume":"90","author":"Albassam E.","year":"2016"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2018.2885058"},{"key":"e_1_3_2_1_5_1","unstructured":"Amazon Web Services. [n.d.]. AWS App Mesh: Application-level networking for all your services. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/aws.amazon.com\/app-mesh\/  Amazon Web Services. [n.d.]. AWS App Mesh: Application-level networking for all your services. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/aws.amazon.com\/app-mesh\/"},{"key":"e_1_3_2_1_6_1","unstructured":"Apache Foundation. [n.d.]. Apache ActiveMQ: Flexible & Powerful Open Source Multi-Protocol Messaging. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/activemq.apache.org\/  Apache Foundation. [n.d.]. Apache ActiveMQ: Flexible & Powerful Open Source Multi-Protocol Messaging. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/activemq.apache.org\/"},{"key":"e_1_3_2_1_7_1","unstructured":"Apache Foundation. [n.d.]. Apache Kafka: A Distributed Streaming Platform. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kafka.apache.org\/  Apache Foundation. [n.d.]. Apache Kafka: A Distributed Streaming Platform. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kafka.apache.org\/"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-48169-9_1"},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2080.357392"},{"key":"e_1_3_2_1_10_1","unstructured":"D. Box 2000. Simple Oject Access Protocol (SOAP) 1.1. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.w3.org\/TR\/2000\/NOTE-SOAP-20000508\/  D. Box 2000. Simple Oject Access Protocol (SOAP) 1.1. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.w3.org\/TR\/2000\/NOTE-SOAP-20000508\/"},{"key":"e_1_3_2_1_11_1","unstructured":"B. Burns and D. Oppenheimer. 2016. Design patterns for container-based distributed systems. In 8th {USENIX} Workshop on Hot Topics in Cloud Computing (HotCloud 16).  B. Burns and D. Oppenheimer. 2016. Design patterns for container-based distributed systems. In 8th {USENIX} Workshop on Hot Topics in Cloud Computing (HotCloud 16)."},{"key":"e_1_3_2_1_12_1","unstructured":"L. Calcote. 2018. The Enterprise Path to Service Mesh Architectures. O\u2019Reilly.  L. Calcote. 2018. The Enterprise Path to Service Mesh Architectures. O\u2019Reilly."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2015.09.021"},{"key":"e_1_3_2_1_14_1","volume-title":"Enterprise Service Bus. O\u2019Reilly Media","author":"Chappell A."},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2012.02.060"},{"key":"e_1_3_2_1_16_1","volume-title":"Software Engineering for Self-Adaptive Systems: A Second Research Roadmap","author":"R."},{"key":"e_1_3_2_1_17_1","unstructured":"M. DeLaney. 2020. What Is Progressive Delivery All About?Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/launchdarkly.com\/blog\/what-is-progressive-delivery-all-about\/  M. DeLaney. 2020. What Is Progressive Delivery All About?Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/launchdarkly.com\/blog\/what-is-progressive-delivery-all-about\/"},{"key":"e_1_3_2_1_18_1","unstructured":"EnvoyProxy. [n.d.]. Envoy. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.envoyproxy.io\/  EnvoyProxy. [n.d.]. Envoy. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.envoyproxy.io\/"},{"key":"e_1_3_2_1_19_1","unstructured":"R.\u00a0T. Fielding. 2000. REST: Architectural Styles and the Design of Network-based Software Architectures. Ph.D. Dissertation. University of California Irvine. Retrieved 2021\/07\/26 21:09:38\u00a0 from http:\/\/www.ics.uci.edu\/~fielding\/pubs\/dissertation\/top.htm  R.\u00a0T. Fielding. 2000. REST: Architectural Styles and the Design of Network-based Software Architectures. Ph.D. Dissertation. University of California Irvine. Retrieved 2021\/07\/26 21:09:38\u00a0 from http:\/\/www.ics.uci.edu\/~fielding\/pubs\/dissertation\/top.htm"},{"key":"e_1_3_2_1_20_1","unstructured":"Flagger.app. [n.d.]. Flagger: Progressive Delivery Operator for Kubernetes. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/flagger.app\/  Flagger.app. [n.d.]. Flagger: Progressive Delivery Operator for Kubernetes. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/flagger.app\/"},{"key":"e_1_3_2_1_21_1","unstructured":"Omitted for\u00a0blind review. [n.d.]. An Empirical Evaluation of Two Microservice Resiliency Patterns: Retry and Circuit Breaker. Submitted for publication.  Omitted for\u00a0blind review. [n.d.]. An Empirical Evaluation of Two Microservice Resiliency Patterns: Retry and Circuit Breaker. Submitted for publication."},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1109\/52.469757"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2004.175"},{"key":"e_1_3_2_1_24_1","first-page":"47","article-title":"Acme: Architectural Description of Component-Based Systems","volume":"68","author":"Garlan D.","year":"2000","journal-title":"Foundations of Component-Based Systems"},{"key":"e_1_3_2_1_25_1","unstructured":"gRPC. [n.d.]. gRPC: A high-performance open source universal RPC framework. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/grpc.io\/  gRPC. [n.d.]. gRPC: A high-performance open source universal RPC framework. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/grpc.io\/"},{"key":"e_1_3_2_1_26_1","unstructured":"HashiCorp. [n.d.]. Consul Connect. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.consul.io\/docs\/connect  HashiCorp. [n.d.]. Consul Connect. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.consul.io\/docs\/connect"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1101908.1101981"},{"key":"e_1_3_2_1_28_1","unstructured":"Istio. [n.d.]. Istio: Connect secure control and observe services. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/istio.io\/  Istio. [n.d.]. Istio: Connect secure control and observe services. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/istio.io\/"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2018.2141039"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2003.1160055"},{"key":"e_1_3_2_1_31_1","unstructured":"Kubernetes. [n.d.]. Horizontal Pod Autoscaler. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kubernetes.io\/docs\/tasks\/run-application\/horizontal-pod-autoscale\/  Kubernetes. [n.d.]. Horizontal Pod Autoscaler. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kubernetes.io\/docs\/tasks\/run-application\/horizontal-pod-autoscale\/"},{"key":"e_1_3_2_1_32_1","unstructured":"Kubernetes. [n.d.]. Kubernetes: Production-Grade Container Orchestration. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kubernetes.io\/  Kubernetes. [n.d.]. Kubernetes: Production-Grade Container Orchestration. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kubernetes.io\/"},{"key":"e_1_3_2_1_33_1","unstructured":"Kuma.io. [n.d.]. Kuma: The universal Envoy service mesh for distributed service connectivity. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kuma.io\/  Kuma.io. [n.d.]. Kuma: The universal Envoy service mesh for distributed service connectivity. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/kuma.io\/"},{"key":"e_1_3_2_1_34_1","unstructured":"J. Lewis and M. Fowler. 2014. Microservices: a definition of this new architectural term. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/martinfowler.com\/articles\/microservices.html  J. Lewis and M. Fowler. 2014. Microservices: a definition of this new architectural term. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/martinfowler.com\/articles\/microservices.html"},{"key":"e_1_3_2_1_35_1","unstructured":"Linkerd. [n.d.]. Linkerd: Ultralight security-first service mesh for Kubernetes. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/linkerd.io\/  Linkerd. [n.d.]. Linkerd: Ultralight security-first service mesh for Kubernetes. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/linkerd.io\/"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2017.03.013"},{"key":"e_1_3_2_1_37_1","volume-title":"22nd International Conference on Software Engineering (ICSE). 178\u2013187","author":"Mehta R."},{"key":"e_1_3_2_1_38_1","volume-title":"Reusability in Architecture-Based Self-Adaptation: The Case for Self-Adaptive Microservices. In 12th European Conference on Software Architecture: Companion Proceedings.","author":"Mendon\u00e7a C.","year":"2018"},{"key":"e_1_3_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2019.2955937"},{"key":"e_1_3_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSA47634.2020.00019"},{"key":"e_1_3_2_1_41_1","volume-title":"Docker: Lightweight Linux Containers for Consistent Development and Deployment. Linux J.","author":"Merkel D.","year":"2014"},{"key":"e_1_3_2_1_42_1","unstructured":"W. Morgan. 2019. The Service Mesh: What Every Software Engineer Needs to Know about the World\u2019s Most Over-Hyped Technology. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/buoyant.io\/service-mesh-manifesto\/  W. Morgan. 2019. The Service Mesh: What Every Software Engineer Needs to Know about the World\u2019s Most Over-Hyped Technology. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/buoyant.io\/service-mesh-manifesto\/"},{"key":"e_1_3_2_1_43_1","unstructured":"Object Management Group. 2012. Common Object Request Broker Architecture (CORBA) 3.3. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.omg.org\/spec\/CORBA\/  Object Management Group. 2012. Common Object Request Broker Architecture (CORBA) 3.3. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/www.omg.org\/spec\/CORBA\/"},{"key":"e_1_3_2_1_44_1","volume-title":"An Explicit Definition of Connectors for Component-Based Software Architecture. In 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems (ECBS). IEEE, 44\u201351","author":"Oussalah M."},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.cl.2010.07.001"},{"key":"e_1_3_2_1_46_1","unstructured":"Prometheus. [n.d.]. Prometheus: Monitoring system & time series database. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/prometheus.io  Prometheus. [n.d.]. Prometheus: Monitoring system & time series database. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/prometheus.io"},{"key":"e_1_3_2_1_47_1","unstructured":"M. Ranney. 2016. What I Wish I Had Known before Scaling Uber to 1 000 Services. Retrieved 2021\/07\/26 21:09:38\u00a0 from gotocon.com\/dl\/goto-chicago-2016\/slides\/MattRanney_WhatIWishIHadKnownBeforeScaling UberTo1000Services.pdf presentation at GOTO Chicago 2016.  M. Ranney. 2016. What I Wish I Had Known before Scaling Uber to 1 000 Services. Retrieved 2021\/07\/26 21:09:38\u00a0 from gotocon.com\/dl\/goto-chicago-2016\/slides\/MattRanney_WhatIWishIHadKnownBeforeScaling UberTo1000Services.pdf presentation at GOTO Chicago 2016."},{"key":"e_1_3_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2007.48"},{"key":"e_1_3_2_1_49_1","volume-title":"Procedure Calls Are the Assembly Language of Software Interconnection: Connectors Deserve First-Class Status. In Workshop on Studies of Software Design. Springer, 17\u201332","author":"Shaw M.","year":"1993"},{"key":"e_1_3_2_1_50_1","volume-title":"Software Architecture: Perspectives on an Emerging Discipline. Vol.\u00a01","author":"Shaw M.","year":"1996"},{"key":"e_1_3_2_1_51_1","unstructured":"SMI-Spec. [n.d.]. SMI: A standard interface for service meshes on Kubernetes. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/smi-spec.io\/  SMI-Spec. [n.d.]. SMI: A standard interface for service meshes on Kubernetes. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/smi-spec.io\/"},{"key":"e_1_3_2_1_52_1","unstructured":"Traefik Labs. [n.d.]. Traefik Mesh: Simpler Service Mesh. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/traefik.io\/traefik-mesh\/  Traefik Labs. [n.d.]. Traefik Mesh: Simpler Service Mesh. Retrieved 2021\/07\/26 21:09:38\u00a0 from https:\/\/traefik.io\/traefik-mesh\/"},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"crossref","volume-title":"Software Engineering of Self-Adaptive Systems: An Organised Tour and Future Challenges","author":"Weyns D.","DOI":"10.1007\/978-3-030-00262-6_11"},{"key":"e_1_3_2_1_54_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00450-016-0337-0"}],"event":{"name":"SBES '21: Brazilian Symposium on Software Engineering","location":"Joinville Brazil","acronym":"SBES '21"},"container-title":["Brazilian Symposium on Software Engineering"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3474624.3477072","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3474624.3477072","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T20:18:50Z","timestamp":1750191530000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3474624.3477072"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,9,27]]},"references-count":54,"alternative-id":["10.1145\/3474624.3477072","10.1145\/3474624"],"URL":"https:\/\/doi.org\/10.1145\/3474624.3477072","relation":{},"subject":[],"published":{"date-parts":[[2021,9,27]]}}}