Microservice API Evolution in Practice: A Study on Strategies and
Challenges
- URL: http://arxiv.org/abs/2311.08175v1
- Date: Tue, 14 Nov 2023 14:04:17 GMT
- Title: Microservice API Evolution in Practice: A Study on Strategies and
Challenges
- Authors: Alexander Lercher, Johann Glock, Christian Macho, Martin Pinzger
- Abstract summary: loose coupling poses new challenges to the API evolution process.
We conducted 17 semi-structured interviews with developers, architects, and managers in 11 companies.
We identified six strategies and six challenges for REpresentational State Transfer (REST) and event-driven communication via message brokers.
- Score: 45.085830389820956
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Nowadays, many companies design and develop their software systems as a set
of loosely coupled microservices that communicate via their Application
Programming Interfaces (APIs). While the loose coupling improves
maintainability, scalability, and fault tolerance, it poses new challenges to
the API evolution process. Related works identified communication and
integration as major API evolution challenges but did not provide the
underlying reasons and research directions to mitigate them. In this paper, we
aim to identify microservice API evolution strategies and challenges in
practice and gain a broader perspective of their relationships. We conducted 17
semi-structured interviews with developers, architects, and managers in 11
companies and analyzed the interviews with open coding used in grounded theory.
In total, we identified six strategies and six challenges for REpresentational
State Transfer (REST) and event-driven communication via message brokers. The
strategies mainly focus on API backward compatibility, versioning, and close
collaboration between teams. The challenges include change impact analysis
efforts, ineffective communication of changes, and consumer reliance on
outdated versions, leading to API design degradation. We defined two important
problems in microservice API evolution resulting from the challenges and their
coping strategies: tight organizational coupling and consumer lock-in. To
mitigate these two problems, we propose automating the change impact analysis
and investigating effective communication of changes as open research
directions.
Related papers
- A Conceptual Framework for API Refactoring in Enterprise Application Architectures [0.0]
We introduce a conceptual framework for the implementation of APIs.
Our framework elicits that there are important trade-offs and choices, which significantly affect the efficiency, maintainability, and isolation properties of the resulting architecture.
Our work also elicits, for the first time, how certain programming language features can reduce friction in applying API and open up more architectural choices.
arXiv Detail & Related papers (2024-07-10T07:32:16Z) - Learning Multi-Agent Communication from Graph Modeling Perspective [62.13508281188895]
We introduce a novel approach wherein we conceptualize the communication architecture among agents as a learnable graph.
Our proposed approach, CommFormer, efficiently optimize the communication graph and concurrently refines architectural parameters through gradient descent in an end-to-end manner.
arXiv Detail & Related papers (2024-05-14T12:40:25Z) - A Survey of Neural Code Intelligence: Paradigms, Advances and Beyond [84.95530356322621]
This survey presents a systematic review of the advancements in code intelligence.
It covers over 50 representative models and their variants, more than 20 categories of tasks, and an extensive coverage of over 680 related works.
Building on our examination of the developmental trajectories, we further investigate the emerging synergies between code intelligence and broader machine intelligence.
arXiv Detail & Related papers (2024-03-21T08:54:56Z) - Mining Issue Trackers: Concepts and Techniques [6.99674326582747]
Internal and external stakeholders report, manage, and discuss "issues"
An issue tracker is a software tool used by organisations to interact with users and manage various aspects of the software development lifecycle.
This chapter discusses four major use cases for algorithmically analysing issue data.
arXiv Detail & Related papers (2024-03-08T23:02:41Z) - Software issues report for bug fixing process: An empirical study of
machine-learning libraries [0.0]
We investigated the effectiveness of issue resolution for bug-fixing processes in six machine-learning libraries.
The most common categories of issues that arise in machine-learning libraries are bugs, documentation, optimization, crashes, enhancement, new feature requests, build/CI, support, and performance.
This study concludes that efficient issue-tracking processes, effective communication, and collaboration are vital for effective resolution of issues and bug fixing processes in machine-learning libraries.
arXiv Detail & Related papers (2023-12-10T21:33:19Z) - Exchange-of-Thought: Enhancing Large Language Model Capabilities through
Cross-Model Communication [76.04373033082948]
Large Language Models (LLMs) have recently made significant strides in complex reasoning tasks through the Chain-of-Thought technique.
We propose Exchange-of-Thought (EoT), a novel framework that enables cross-model communication during problem-solving.
arXiv Detail & Related papers (2023-12-04T11:53:56Z) - Adaptive REST API Testing with Reinforcement Learning [54.68542517176757]
Current testing tools lack efficient exploration mechanisms, treating all operations and parameters equally.
Current tools struggle when response schemas are absent in the specification or exhibit variants.
We present an adaptive REST API testing technique incorporates reinforcement learning to prioritize operations during exploration.
arXiv Detail & Related papers (2023-09-08T20:27:05Z) - Understanding the Issues, Their Causes and Solutions in Microservices
Systems: An Empirical Study [11.536360998310576]
Technical Debt, Continuous Integration, Exception Handling, Service Execution and Communication are the most dominant issues in systems.
We found 177 types of solutions that can be applied to fix the identified issues.
arXiv Detail & Related papers (2023-02-03T18:08:03Z) - Conditional Imitation Learning for Multi-Agent Games [89.897635970366]
We study the problem of conditional multi-agent imitation learning, where we have access to joint trajectory demonstrations at training time.
We propose a novel approach to address the difficulties of scalability and data scarcity.
Our model learns a low-rank subspace over ego and partner agent strategies, then infers and adapts to a new partner strategy by interpolating in the subspace.
arXiv Detail & Related papers (2022-01-05T04:40:13Z) - ConE: A Concurrent Edit Detection Tool for Large ScaleSoftware
Development [16.11297015618479]
ConE proactively detects concurrent edits to help mitigate the problems caused by them.
We present the results of ConE's deployment through early intervention techniques such as pull request notifications.
arXiv Detail & Related papers (2021-01-16T22:55:44Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.