<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Models for Developer Collaboration Analysis in Microservice-Based Systems. A Systematic Mapping Study</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Xiaozhou Li</string-name>
          <email>xiaozhou.li@oulu.fi</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Amr S. Abdelfattah</string-name>
          <email>amr_elsayed1@baylor.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ruoyu Su</string-name>
          <email>ruoyu.su@student.oulu.fi</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Joseph Lee</string-name>
          <email>joseph.lee@richmond.edu</email>
          <xref ref-type="aff" rid="aff5">5</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ernesto Aponte</string-name>
          <email>eaponte81@sagrado.edu</email>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Rachel Koerner</string-name>
          <email>rachel_koerner1@baylor.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Tomas Cerny</string-name>
          <email>tcerny@arizona.edu</email>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Davide Taibi</string-name>
          <email>davide.taibi@oulu.fi</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CloudSEA.AI, Tampere University</institution>
          ,
          <addr-line>Tampere</addr-line>
          ,
          <country country="FI">Finland</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Department of Computer Science, Baylor University</institution>
          ,
          <addr-line>Waco, Texas</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>M3S, University of Oulu</institution>
          ,
          <addr-line>Oulu</addr-line>
          ,
          <country country="FI">Finland</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>Systems and Industrial Engineering, University of Arizona</institution>
          ,
          <addr-line>Tucson, Arizona</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff4">
          <label>4</label>
          <institution>Universidad del Sagrado Corazón</institution>
          ,
          <addr-line>San Juan</addr-line>
          ,
          <country country="PR">Puerto Rico</country>
        </aff>
        <aff id="aff5">
          <label>5</label>
          <institution>University of Richmond</institution>
          ,
          <addr-line>Richmond, Virginia</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Microservices enable diferent teams to develop and deploy services independently. Practitioners are frequently mentioning the need for independence between teams and developers, and the need for metrics to measure developer collaboration. To shed light on the existing metrics and models, we conducted a Systematic Mapping Study to identify models for measuring the development activities, the metrics adopted by these methods, and the output produced by the methods themselves. We identified 10 diferent models proposed in 14 research papers. Results show that a large amount of the existing models adopt qualitative metrics, questionnaires, and surveys to collect the information required while others use information from issue tracking and version systems. The results will enable practitioners and researchers to further validate and extend the research on metrics for evaluating the collaboration and independence among developers.</p>
      </abstract>
      <kwd-group>
        <kwd>microservice</kwd>
        <kwd>microservice collaboration metrics</kwd>
        <kwd>microservice organization models</kwd>
        <kwd>software metrics</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>A</p>
    </sec>
    <sec id="sec-2">
      <title>1. Introduction</title>
      <p>
        Service-based architectures are widely adopted in the industry. In particular, microservice
architectures are growing in popularity, having been adopted by 85% of companies that are
modernizing their applications [
        <xref ref-type="bibr" rid="ref1 ref11">1</xref>
        ].
      </p>
      <p>
        Microservices are an extension of service-based architectures but are designed for smaller,
specialized services, which are independently deployed to decrease inter-dependencies of
services [
        <xref ref-type="bibr" rid="ref12 ref2">2</xref>
        ][
        <xref ref-type="bibr" rid="ref13 ref3">3</xref>
        ]. These microservices can be scaled independently and rapidly. The usage of
microservice architecture has grown over recent years as companies aim to improve their
nEvelop-O
IWSM Mensura’23
competitive abilities. Microservices enable teams to develop and deploy each service
independently. Therefore, it is not necessary for teams to synchronize with each other before deploying,
which theoretically may improve the velocity of teams. However, teams often still need to
synchronize for high-level decisions and for architectural aspects. Examples include: decisions
on the adoption of a particular communication mechanism between services and the adoption
of a new messaging or tracing platform.
      </p>
      <p>Therefore, collaboration among developers and, in particular, between diferent teams is
of paramount importance when considering microservices. We expect a team to have high
collaboration internally, but collaboration between diferent teams should be reduced as much
as possible—maximizing cohesion and minimizing coupling.</p>
      <p>
        Diferent research groups have investigated collaboration in microservice-based projects [
        <xref ref-type="bibr" rid="ref14 ref4">4</xref>
        ][
        <xref ref-type="bibr" rid="ref15 ref5">5</xref>
        ].
There have also been secondary studies published in the context of microservice architectural
quality [
        <xref ref-type="bibr" rid="ref16 ref6">6</xref>
        ][
        <xref ref-type="bibr" rid="ref17 ref7">7</xref>
        ], adoption benefits and issues [
        <xref ref-type="bibr" rid="ref18 ref8">8</xref>
        ], metrics for measuring their maintainability [
        <xref ref-type="bibr" rid="ref19 ref9">9</xref>
        ],
as well as tools [
        <xref ref-type="bibr" rid="ref10 ref20">10</xref>
        ], methods [11][12] and metrics [13] to reconstruct the architectural structure
of microservice-based systems. However, there is not yet a clear and widely accepted set of
metrics that can be adopted, and there is not yet a review for classifying the models and metrics
to evaluate the collaboration and communication among developers.
      </p>
      <p>• A set of 14 studies analyzing (micro)services developer collaboration. Researchers can use
these studies as a basis for future investigations into microservice developer collaboration
analysis.
• A subset of 10 studies, reporting Metrics and Models for Developer Collaboration Analysis.</p>
      <p>For each model identified, we considered the availability of tools to support its application
as well as existing empirical validations, and we extracted a set of factors, measures, and
information that characterize the analyzed models.
• A synthesis and comparison of the Metrics and Models for Developer Collaboration</p>
      <p>Analysis.</p>
      <p>Paper structure: The remainder of this paper is organized as follows: In Section 2, we
present the review process and the methodology adopted in this work. Moreover, we define the
research questions and describe the criteria we defined to assess whether a study contributes
efectively to answering the research questions. In Section 3, we illustrate the information
extracted from the reviewed papers. Section 4 discusses the results obtained. In Section 5, we
explain the threats to the validity of this work. Finally, in Section 6 we draw conclusions and
provide an outlook on future work.</p>
    </sec>
    <sec id="sec-3">
      <title>2. Methodology</title>
      <p>We aim at identifying and comparing the existing methods used to evaluate collaboration among
developers in microservices and the metrics adopted by those methods.</p>
      <p>Accordingly, to meet our expectations, we formulated the goal as follows, using the
Goal/Question/Metric (GQM) template [14]:</p>
      <p>Purpose</p>
      <p>Object</p>
      <p>Quality
Viewpoint</p>
      <p>Context</p>
      <p>Characterize
methods used to evaluate collaboration among developers in microservices
with respect to the models and metrics adopted
as reported in scientific literature
concerning the evaluation of developers’ collaboration, from 2014 to</p>
      <p>June 2023.</p>
      <p>We formulated the following Research Questions (RQ) based on the GQM defined above
and the criteria defined in the Population, Intervention, Comparison and Outcome (PICO)
structure [15, 16]. This structure makes it easier to identify the keywords in the next steps.
• Population: published scientific literature reporting evaluations of the collaboration
among developers in microservices.
• Intervention: studies reporting models, methodologies, or tools.
• Comparison: comparison of the input and output.
• Outcome: methods, models, and metrics adopted for the evaluation of the collaboration
among developers.</p>
      <p>Based on these terms, we defined the following general Research Question. In the field
of Microservices (Population), what methods can be used for evaluating the collaboration
among developers (Intervention), how do they compare (Comparison), and what are the metrics
considered in the methods (Outcome)?</p>
      <p>We refined this general Research Question into diferent RQs, whose formulation and
motivations are reported in Table 1.</p>
      <sec id="sec-3-1">
        <title>2.1. Search Strategy</title>
        <p>The search strategy is given in Fig. 1. First, the search terms of the review were defined. This
was the first and most crucial step of our finding studies. After this step, the papers retrieved
from the databases were screened by inclusion and exclusion criteria. Then we completed the
full reading to obtain the final selected papers. At the same time, we also followed the guidelines
by Wohlin, adopting a ’snowball’ approach, i.e., by analyzing the references of the primary
studies in order to extract more relevant sources for use [17].</p>
        <sec id="sec-3-1-1">
          <title>2.1.1. Bibliographic Sources Identification</title>
          <p>The search process was conducted by query filtration on bibliographic sources. The bibliographic
sources we selected were: Scopus, IEEE Xplore, and the Association for Computing Machinery
(ACM) digital library. From our experience, these resources produce reputable results that
encompass smaller bibliographic source options. The numerical results are displayed in Table 2.</p>
        </sec>
        <sec id="sec-3-1-2">
          <title>2.1.2. Inclusion and Exclusion Criteria.</title>
          <p>The defined selection criteria distinguish relevant articles related to our proposed research
questions. The criteria were applied to title and abstract in our initial review and then later to the
entire text in our full text review. Our inclusion criteria in Table 3 indicate our specific interest in
developer interaction from microservice-related organization structures. The exclusion criteria
remove trivial results of extraneous format.</p>
        </sec>
        <sec id="sec-3-1-3">
          <title>2.1.3. Keyword Identification</title>
          <p>The search keywords were refined from the structure of our research questions. We started with
the concept of ”microservice”. Finding that our expectation for the definition of a microservice
spans multiple terms used in literature today, we expanded the query with alternative spellings
and synonyms. Our next goal was to specify developer interaction in software organizations.
We recognized that terms such as ”organization”, ”team”, or ”interaction” on their own would
produce excessive amounts of unrelated results. This is because the terms are frequently used
beyond the software industry. Therefore, we decided to combine phrases in order to target
software systems rather than any other business field. We arrived at two categories: role and
structure, with four synonyms for each shown in Table 4. These we paired together so that each
role term was combined with each structure term in our string query. In addition, we included
the phrases ”organizational network” and ”collaborator network”.</p>
          <p>“( microservice* OR micro-service* OR service-oriented OR distributed OR modular* OR
peer-to-peer )”</p>
          <p>AND
“ ( ”developer organization” OR ”contributor organization” OR ”committer organization”
OR ”team organization” OR ”developer collaboration” OR ”contributor collaboration” OR
”committer collaboration” OR ”team collaboration” OR ”developer interaction” OR
”contributor interaction” OR ”committer interaction” OR ”team interaction” OR ”developer
network*” OR ”contributor network*” OR ”committer network*” OR ”team network*” OR
”organizational network*” OR ”collaborator network*” )”</p>
        </sec>
        <sec id="sec-3-1-4">
          <title>2.1.4. Search and Selection Process</title>
          <p>After defining our key elements and crafting our string query, we proceeded with our search
process on the selected databases of bibliography sources. Our first run resulted in 888
nonduplicate papers.</p>
          <p>Before applying the inclusion and exclusion criteria to every source, we tested a group of 80
papers. The criteria were applied to the title and abstract of these papers. This allowed us to
confirm that our query produced results relevant to our research questions.</p>
          <p>With the query verified, we applied the criteria to the remaining papers. Each paper was
read and evaluated by two authors, and a third author was utilized in cases of disagreement.
The authors determined whether to include or exclude the papers. Out of the initial 888 papers,
160 were included by title and abstract.</p>
          <p>The second step in our selection process was a full document reading. The inclusion criteria
were applied to the full text of the remaining 160 papers. For each paper, two authors determined
inclusion, and in 12 instances, a third author was necessary to solve the disagreement. As
part of this stage, a record of specific features presented in each paper was maintained. This
included terms for the specific system architecture indicated, the team structures presented, as
well as the metrics and tools used to identify collaboration. The existence of such specification
within the paper is part of the inclusion criteria authors considered. At the end of this stage, 42
documents were included.</p>
          <p>The third step of our process was both forward and backward snowballing. In forward
snowballing, the references of currently included documents are analyzed by the inclusion
criteria. In backward snowballing, references that cite the currently included documents are
analyzed by the inclusion criteria. We ran iterations of snowballing until no new studies were
founded. This resulted in 10 additional papers added to our set.</p>
          <p>For our next step, we went through the existing papers in a round we entitled ”Double Check”.
In this step, authors reviewed the inclusion criteria in the titles and abstract of each paper,
adding additional data to our features record. This search and selection process resulted in 11
papers.</p>
          <p>The remaining documents were then reviewed for data extraction. We recorded the examples
of Method, Category, Input Data Source, Input Metric, and Model Outcome presented in each
paper. One paper had no comments on metrics, and so was removed. The remaining documents
are the final 10 papers included in this Systematic Mapping Study.</p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>2.2. Data Extraction</title>
        <p>To summarize the selected works, we built a table to focus the data on features specific to the
research questions. The record developed in the Search and Selection Process was maintained
in order to simplify this process. In this stage, we analyzed the Search and Selection record to
narrow down the most relevant factors. Five types of information were extracted, as shown in
Table 5.</p>
        <p>• Name: of method implemented to evaluate collaboration within a system. These names
were explicitly extracted from the full text of their paper.
• Input Metrics: calculations performed to achieve collaboration results. Patterns
including measures of centrality, contribution, and modularity were identified.
• Model Outcomes: resulting from method completion. Each of the outcomes help interpret
collaboration among developers.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>3. Results</title>
      <p>In this Section, we report the results to answer the RQs. Therein, the 10 selected papers contain
ifve journal articles, four proceeding papers from conferences, and one from workshops (shown
in Figure 2). The earliest two selected papers were published in 2005 and 2011 when their main
focuses are distributed systems instead of microservice. More papers were published from 2019
regarding this theme (shown in Figure 3).</p>
      <sec id="sec-4-1">
        <title>3.1. RQ1. Method Categories</title>
        <p>Summarized from the selected papers, we can observe that half of them adopted social studies
methodologies towards empirical analysis on the organizational structures [SP6], [SP7], [SP8],
[SP9], [SP10]. Though all these empirical studies utilize qualitative data as the input, the analysis
methods and the target output are diferent.</p>
        <p>For example, [SP6] adopted Straussian Grounded Theory on the interview data from three
companies to analyze the relation between the factor of adopting DevOps and microservice and
that of software teams. [SP7] used Decision Making Theory on the collected decision episode
data to identify the diferent decision-making processes which can be adopted to optimize the
organizational structure of software project teams. [SP8] used logistic regression analysis on the
qualitative data from two large-scale software projects to investigate the relation between the
congruence measures and the failure proneness of source code files. [SP9] used Collaboration
Pattern Analysis on questionnaire and interview data regarding a set of finished projects to
investigate the relation between work division and team dynamics. [SP10] used Distribution
and Correlation Analysis on the relation between the organizational measures and architectural
smells. These studies provide approaches to investigate the diferent key factors that influence
the quality of software project organizational structure.</p>
        <p>Furthermore, several other studies used data-driven methods on large volumes of data
collected from online version control systems, e.g., GitHub to investigate many aspects of
software organizational structure [SP1], [SP2], [SP3], [SP4]. For example, [SP1] proposed the
method to use interaction frequencies and complete-linkage hierarchical clustering methods
on the data of committers number, commits number, number of changed files and number
of changed lines to analyze the diferent developer categories. This method aims to help the
practitioners identify the core developers working on diferent microservices. [SP2] and [SP3]
used social network analysis approaches to investigate the organizational structure in the format
of networks. Specifically, [SP2] used community detection method on commits, issues and
system structure data to identify the latent developer communities in software projects as well
as influence of activeness and stability of the organizational structures. [SP3] also used the
commits data to construct the developer networks using the centrality analysis and similarity
analysis. [SP4] proposed the Ownership and Contribution Alignment Model (OCAM) to analyze
the developer ranking in terms of multiple project metrics using commits, pull requests and
code-related data. Specially, [SP5] proposed the method of Human Services Bus (HSB) to
facilitate the optimization of organizational structure in terms of the workforce and streamline
cross-unit processes.</p>
        <p>To summarize, the majority of the studies related to organizational structure focus on using
empirical studies methods to analyze the potential factors and their influences, extract
organizational structure patterns and optimize the organizational structure in general. Several studies
use social network analysis methods, e.g., centrality analysis and community detection, to detect
the developers’ relation structures, as well as their internal relations, e.g., categories and
rankings. Customized methods are also proposed, e.g., OCAM and HSB, to support organizational
structure analysis and optimization.</p>
      </sec>
      <sec id="sec-4-2">
        <title>3.2. RQ2. Method Input Metrics</title>
        <p>Herein, to answer RQ2, we also summarize what input metrics, as well as the data sources, are
adopted by the academia to study the organizational structure in microservice-related projects
(shown in Table 7).</p>
        <p>By summarizing the selected papers, we can observe that the papers that used data-driven
approaches (shown in Table 6) mainly adopted developer contribution metrics, e.g., Number
of Commits, Code Churns, Code Complexity, Ticket Complexity, Pull Request Complexity,
Number of Pull Requests, Number of Issues, etc., as the main input metrics [SP1], [SP2],
[SP3]. Especially, the papers that contribute to the identification of organizational structures
(Org.Str.) use developer contribution (Dev.Con.) together with developer interaction (Dev.Int.)
as input metrics [SP2], [SP3]. All these three studies use the data collected from GitHub. [SP4]
also adopted Github as data-source when their customized method (i.e., OCAM) utilizes also
contribution as input. For [SP5], the HSB method they proposed uses documented or extracted
organization structure information which is collected from qualitative data (surveys).</p>
        <p>On the other hand, all the studies that adopt social studies methodologies (shown in Table 6)
uses survey data as the source but with diferent input metrics [SP6], [SP7], [SP8], [SP9], [SP10].
For example, both [SP6] and [SP10] consider the organizational characteristics (Org.Cha.), e.g.,
company culture, working environments, meetings, communications, etc. as the input metrics.
These metrics can be obtained through surveys and analyzed by social studies methods. [SP7]
uses decision episodes as input metric, which refer to ”a sequence of messages that begins with a
decision trigger that presents an opportunity or a problem that individuals need to decide on, that
includes at least more than one message, and that possibly ends with a decision announcement” [18].
[SP8] adopts the Socio-technical congruence (STC), software quality (SQa), and development
productivity (DP) as input metrics when [SP9] uses developer collaboration characteristics
(Dev.Col.Cha.), e.g., Collaboration Intensity, collaboration density (overall, cross-location,
crossrole), work division, etc.</p>
      </sec>
      <sec id="sec-4-3">
        <title>3.3. RQ3. Method Outputs</title>
        <p>To answer RQ3, the diferent outputs, and targets of the methods adopted by the selected papers
are also summarized in Table 7. Therein, the methods proposed by [SP1] and [SP4] target
providing developer (abbreviated as Dev.) types as outputs. In addition, [SP4] also provides the
developer ranking as the output, where their visualization also shows the comparison between
diferent teams with various focuses. On the other hand, [SP2] and [SP3] adopt social network
analysis as a method and provide the network-shape organization (abbreviated as Org.) structure
as output. Especially, [SP2] also provides the latent communities of the organizational structure
networks as the output together with the analysis of the impact of organizational factors impact,
e.g., organization stability. Both [SP5] and [SP7] provide organizational structure optimization
as output, where [SP5] focuses on the workforce and streamlines cross-unit processes to leverage
the new IT systems when [SP7] focuses on decision-making improvement. [SP6], [SP8] and
[SP10] provide empirical analysis output targeting the impact of certain organizational factors
on other factors. For example, [SP6] focuses on the analysis of the adoption of DevOps in the
organization as a factor and its impact on the benefits and issues of the team. [SP8] focuses on
the influential relations amongst the three factors, i.e., the Socio-technical congruence (STC),
software quality (SQa), and development productivity (DP). On the other hand, [SP9] focuses on
the location-related factors as the factors with their impacts on the team collaboration as output.
Diferent from the other studies mentioned above, [SP10] provide organizational structure
patterns as the output.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>4. Discussion</title>
      <p>The analysis of the literature shows that, despite the community of practitioners frequently
mentioning the need for developer collaboration metrics and models, there is only a limited
amount of works investigating such metrics and models.</p>
      <p>As shown in Figure 4, all the data-driven methods consider metrics on developer contribution
and developers’ interactions while Social Studies methods, adopt a large number of metrics.
While social studies are commonly based on survey data, it is interesting to note that in one
case they also consider developers’ interaction.</p>
      <p>Based on the aforementioned results, we suggest researchers consider organizational metrics
also in data-driven collaboration measurement models. In particular, several organizational
metrics could be derived from issue trackers and from source control management tools.
Examples of these metrics could be the organizational structure of the teams, or the development
teams collaborating among them via pull-requests, and issues.</p>
      <p>It is important to note that only a limited amount of models are directly applicable to the
industry (e.g. in the CI/CD pipeline). To be more exact, models must be using quantitative
metrics with easily accessible data sources (e.g. issue trackers, and version control systems).</p>
      <sec id="sec-5-1">
        <title>4.1. Future Research Directions</title>
        <p>As a result of the above discussion of the RQs, we propose the following directions for future
research in this area:
• Focus on the validation of existing models and metrics. This could increase the validity
of the models and thus their dissemination in the industry. While a limited amount of
models already exist, according to the results of our work, they have not been strongly
validated and, as a consequence, application has been limited.
• Center the models around quality factors that are of real interest to stakeholders, and
in particular try to identify models using inputs from APIs. Several models identified in
this work adopt interviews or surveys to assess the metrics. However, these collection
methods require a lot of efort to be conducted and are not completely automated.
• Develop tools that support the research directions listed above (i.e., tools able to apply
the methods and calculate the collaboration metrics automatically). Most of the tools
developed in the primary studies are prototypes and a majority are not available or
maintained anymore.</p>
      </sec>
      <sec id="sec-5-2">
        <title>4.2. Threats to Validity</title>
        <p>Considering that the results may be subject to validity threats, we follow the three categories of
threats to validity proposed by Ampatzoglou et al. [19], which contain Study Selection Validity,
Data Validity, and Research Validity. Diferent from the guideline proposed by Wohlin et al. [ 20],
this categorization is more suitable for secondary studies in the field of software engineering.</p>
        <p>Study Selection Validity. In the initial search process, we diversified the keywords identified
in the research questions using synonyms. The terms adopted in our study are suficiently
stable to be used as search strings. To ensure we retrieved all papers on the selected topic, we
used various bibliographic sources. Although this would have covered the vast majority of
publications, there could have been potential problems or limitations which may have caused us
to miss some relevant research, so we used a snowballing approach as a supplement. This criteria
is consistent with the aims and RQs of this paper, and follow the guidelines recommended by
Petersen et al. [21].</p>
        <p>Data Validity. The data extraction process was done by two or more researchers
independently, and if discrepancies arose, a third author was involved in the discussion to eliminate any
disagreements. In addition, we checked the quality of each selected paper carefully. Regarding
the data analysis process, we summarised the extracted results, based on the defined categories,
and presented them in the form of graphs and tables.</p>
        <p>Research Validity. Before the start of this study, several discussions were organized to
determine the research method. The decision to use the Systematic Mapping Study was agreed
upon by all authors, and this would reduce the threat of research method bias. After the
research method was chosen, all the authors also worked together to define the research
questions through multiple iterations of discussions. The papers selected for the review are
listed in the appendix of this study and can be easily replicated by scholars.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>5. Conclusion</title>
      <p>In this work, we summarized and compared the existing metrics and models for analyzing the
Developer Collaboration Analysis Microservice-Based Systems.</p>
      <p>We surveyed 888 scientific papers, identifying 10 community measurement models adopted
in 14 diferent studies in relevance to microservices.</p>
      <p>Results show that, despite the practitioner community asking for independence amongst
developers and ways to evaluate such independence, only a limited amount of measurement
models have been proposed at this time. Even the available models are not yet validated or
widely adopted in industry, calling for the need for thorough industrial validations.</p>
      <p>Future works could aim for developing more extensive measurement models, as well as
validate the existing ones (e.g. validating the relationship between the logical coupling [22]
and the structural coupling [23], the organizational structure, and the collaborations between
developers [24])</p>
    </sec>
    <sec id="sec-7">
      <title>ACKNOWLEDGEMENTS</title>
      <p>This material is based upon work supported by the National Science Foundation under Grant
No. 1854049 and Grant No. 2245287, and a grant from the Academy of Finland (grant n. 349488
- MuFAno).
[11] M. E. Gortney, P. E. Harris, T. Cerny, A. A. Maruf, M. Bures, D. Taibi, P. Tisnovsky,
Visualizing microservice architecture in the dynamic perspective: A systematic mapping
study, IEEE Access 10 (2022) 119999–120012. doi:10.1109/ACCESS.2022.3221130.
[12] T. Cerny, A. S. Abdelfattah, V. Bushong, A. Al Maruf, D. Taibi, Microservice
architecture reconstruction and visualization techniques: A review, in: 2022 IEEE
International Conference on Service-Oriented System Engineering (SOSE), 2022, pp. 39–48.
doi:10.1109/SOSE55356.2022.00011.
[13] L. Lelovic, M. Mathews, A. Elsayed, T. Cerny, K. Frajtak, P. Tisnovsky, D. Taibi,
Architectural languages in the microservice era: A systematic mapping study, in: Proceedings
of the Conference on Research in Adaptive and Convergent Systems, RACS ’22, 2022, p.
39–46. doi:10.1145/3538641.3561486.
[14] V. R. Basili, G. Caldiera, H. D. Rombach, The Goal Question Metric Approach, Wiley, 1994.
[15] B. Kitchenham, S. Charters, Guidelines for performing Systematic Literature Reviews in</p>
      <p>Software Engineering, 2007.
[16] B. Kitchenham, P. Brereton, A systematic review of systematic review process research in
software engineering, Information &amp; Software Technology 55 (2013) 2049–2075.
[17] C. Wohlin, Guidelines for snowballing in systematic literature studies and a replication in
software engineering, in: Proceedings of the 18th international conference on evaluation
and assessment in software engineering, 2014, pp. 1–10.
[18] H. Annabi, K. Crowston, R. Heckman, Depicting what really matters: Using episodes to
study latent phenomenon (2008).
[19] A. Ampatzoglou, S. Bibi, P. Avgeriou, M. Verbeek, A. Chatzigeorgiou, Identifying,
categorizing and mitigating threats to validity in software engineering secondary studies,
Information and Software Technology 106 (2019) 201–230.
[20] C. Wohlin, P. Runeson, M. Höst, M. C. Ohlsson, B. Regnell, Experimentation in Software</p>
      <p>Engineering, Springer, 2012.
[21] K. Petersen, R. Feldt, S. Mujtaba, M. Mattsson, Systematic mapping studies in software
engineering, in: 12th International Conference on Evaluation and Assessment in Software
Engineering (EASE) 12, 2008, pp. 1–10.
[22] D. Amoroso D’Aragona, L. Pascarella, A. Janes, V. Lenarduzzi, D. Taibi, Microservice
logical coupling: A preliminary validation, in: 2023 IEEE 20th International Conference on
Software Architecture Companion (ICSA-C), 2023, pp. 81–85. doi: 10.1109/ICSA- C57050.
2023.00028.
[23] S. Panichella, M. Rahman, D. Taibi, Structural coupling for microservices, in: Proceedings
of the 11th International Conference on Cloud Computing and Services Science - Volume
1: CLOSER„ INSTICC, SciTePress, 2021, pp. 280–287. doi:10.5220/0010481902800287.
[24] D. Amoroso d’Aragona, X. Li, T. Cerny, A. Janes, V. Lenarduzzi, D. Taibi, One microservice
per developer: Is this the trend in oss?, in: European Conference On Service-Oriented
And Cloud Computing(ESOCC), 2023.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <article-title>[1] solo</article-title>
          .io, 2022 Service Mesh Adoption Survey, https://lp.solo.
          <article-title>io/ service-mesh-adoption-</article-title>
          <string-name>
            <surname>survey</surname>
          </string-name>
          ,
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>D.</given-names>
            <surname>Taibi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Systä</surname>
          </string-name>
          ,
          <article-title>A decomposition and metric-based evaluation framework for microservices</article-title>
          ,
          <source>in: Cloud Computing and Services Science</source>
          , Springer International Publishing, Cham,
          <year>2020</year>
          , pp.
          <fpage>133</fpage>
          -
          <lpage>149</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>D.</given-names>
            <surname>Taibi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Systä</surname>
          </string-name>
          ,
          <article-title>From monolithic systems to microservices: A decomposition framework based on process mining</article-title>
          ,
          <source>in: Proceedings of the 9th International Conference on Cloud Computing and Services Science - Volume 1: CLOSER„ INSTICC, SciTePress</source>
          ,
          <year>2019</year>
          , pp.
          <fpage>153</fpage>
          -
          <lpage>164</lpage>
          . doi:
          <volume>10</volume>
          .5220/0007755901530164.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J.</given-names>
            <surname>Sorgalla</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Rademacher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Sachweh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zündorf</surname>
          </string-name>
          ,
          <article-title>On collaborative model-driven development of microservices</article-title>
          , in: M.
          <string-name>
            <surname>Mazzara</surname>
          </string-name>
          , I. Ober, G. Salaün (Eds.),
          <source>Software Technologies: Applications and Foundations</source>
          , Springer International Publishing, Cham,
          <year>2018</year>
          , pp.
          <fpage>596</fpage>
          -
          <lpage>603</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>V.</given-names>
            <surname>Lenarduzzi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Sievi-Korte</surname>
          </string-name>
          ,
          <article-title>On the negative impact of team independence in microservices software development</article-title>
          ,
          <source>in: Proceedings of the 19th International Conference on Agile Software Development: Companion, XP '18</source>
          ,
          <year>2018</year>
          . doi:
          <volume>10</volume>
          .1145/3234152.3234191.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>D.</given-names>
            <surname>Taibi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Lenarduzzi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Pahl</surname>
          </string-name>
          ,
          <article-title>Architectural patterns for microservices: A systematic mapping study</article-title>
          ,
          <source>in: Proceedings of the 8th International Conference on Cloud Computing and Services Science - Volume 1: CLOSER„ INSTICC, SciTePress</source>
          ,
          <year>2018</year>
          , pp.
          <fpage>221</fpage>
          -
          <lpage>232</lpage>
          . doi:
          <volume>10</volume>
          .5220/0006798302210232.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>D.</given-names>
            <surname>Taibi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Lenarduzzi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Pahl</surname>
          </string-name>
          ,
          <source>Microservices Anti-patterns: A Taxonomy</source>
          , Springer International Publishing, Cham,
          <year>2020</year>
          , pp.
          <fpage>111</fpage>
          -
          <lpage>128</lpage>
          . doi:
          <volume>10</volume>
          .1007/978- 3-
          <fpage>030</fpage>
          - 31646-
          <issue>4</issue>
          _
          <fpage>5</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>J.</given-names>
            <surname>Soldani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Tamburri</surname>
          </string-name>
          ,
          <string-name>
            <surname>W.-J. Van Den</surname>
            <given-names>Heuvel</given-names>
          </string-name>
          ,
          <article-title>The pains and gains of microservices: A systematic grey literature review</article-title>
          ,
          <source>Journal of Systems and Software</source>
          <volume>146</volume>
          (
          <year>2018</year>
          )
          <fpage>215</fpage>
          -
          <lpage>232</lpage>
          . doi:https://doi.org/10.1016/j.jss.
          <year>2018</year>
          .
          <volume>09</volume>
          .082.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J.</given-names>
            <surname>Bogner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Wagner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zimmermann</surname>
          </string-name>
          ,
          <article-title>Automatically measuring the maintainability of service- and microservice-based systems: A literature review</article-title>
          ,
          <source>in: Proceedings of the 27th International Workshop on Software Measurement and 12th International Conference on Software Process and Product Measurement</source>
          , IWSM Mensura '
          <volume>17</volume>
          ,
          <year>2017</year>
          , p.
          <fpage>107</fpage>
          -
          <lpage>115</lpage>
          . doi:
          <volume>10</volume>
          .1145/3143434.3143443.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A.</given-names>
            <surname>Bakhtin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Soldani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Brogi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tomas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Taibi</surname>
          </string-name>
          ,
          <article-title>Tools reconstructing microservice architecture: A systematic mapping study, in: Agility with Microservices Programming, co-located with</article-title>
          <source>ECSA</source>
          <year>2023</year>
          ,
          <year>2023</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [SP1]
          <string-name>
            <surname>Gustafsson</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Saltan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2019</year>
          ).
          <article-title>Managing Open-source Microservices Projects</article-title>
          .
          <source>Joint Proceedings of the Inforte Summer School on Software Maintenance and Evolution Tampere, Finland, September 2-4</source>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [SP2]
          <string-name>
            <surname>Ashraf</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mayr-Dorn</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mashkoor</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Egyed</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Panichella</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2021</year>
          , May).
          <article-title>Do communities in developer interaction networks align with subsystem developer teams? An empirical study of open source systems</article-title>
          .
          <source>In 2021 IEEE/ACM Joint 15th International Conference on Software and System Processes (ICSSP) and 16th ACM/IEEE International Conference on Global Software Engineering (ICGSE)</source>
          (pp.
          <fpage>61</fpage>
          -
          <lpage>71</lpage>
          ). IEEE.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [SP3]
          <string-name>
            <surname>Jermakovics</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sillitti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Succi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2011</year>
          , May).
          <article-title>Mining and visualizing developer networks from version control systems</article-title>
          .
          <source>In Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering</source>
          (pp.
          <fpage>24</fpage>
          -
          <lpage>31</lpage>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [SP4]
          <string-name>
            <surname>Zabardast</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gonzalez-Huerta</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Tanveer</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          (
          <year>2022</year>
          , March).
          <article-title>Ownership vs Contribution: Investigating the Alignment Between Ownership and Contribution</article-title>
          .
          <source>In 2022 IEEE 19th International Conference on Software Architecture Companion</source>
          (
          <string-name>
            <surname>ICSA-C)</surname>
          </string-name>
          (pp.
          <fpage>30</fpage>
          -
          <lpage>34</lpage>
          ). IEEE.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [SP5]
          <string-name>
            <surname>Bieberstein</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bose</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Walker</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Lynch</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2005</year>
          ).
          <article-title>Impact of service-oriented architecture on enterprise systems, organizational structures, and individuals</article-title>
          .
          <source>IBM systems journal</source>
          ,
          <volume>44</volume>
          (
          <issue>4</issue>
          ),
          <fpage>691</fpage>
          -
          <lpage>708</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <surname>[SP6] Zhou</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Huang</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          , Zhang, H.,
          <string-name>
            <surname>Huang</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shao</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Zhong</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2022</year>
          , May).
          <article-title>A cross-company ethnographic study on software teams for DevOps and microservices: organization, benefits, and issues</article-title>
          .
          <source>In Proceedings of the 44th International Conference on Software Engineering: Software Engineering in Practice</source>
          (pp.
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [SP7]
          <string-name>
            <surname>Eseryel</surname>
          </string-name>
          , U. Y.,
          <string-name>
            <surname>Wei</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Crowston</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          (
          <year>2020</year>
          ).
          <article-title>Decision-making processes in community-based free/libre open source software-development teams with internal governance: An extension to decision-making theory</article-title>
          .
          <source>Communications of the Association for Information Systems</source>
          ,
          <volume>46</volume>
          (
          <issue>1</issue>
          ),
          <fpage>20</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [SP8]
          <string-name>
            <surname>Cataldo</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Herbsleb</surname>
            ,
            <given-names>J. D.</given-names>
          </string-name>
          (
          <year>2012</year>
          ).
          <article-title>Coordination breakdowns and their impact on development productivity and software failures</article-title>
          .
          <source>IEEE Transactions on Software Engineering</source>
          ,
          <volume>39</volume>
          (
          <issue>3</issue>
          ),
          <fpage>343</fpage>
          -
          <lpage>360</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [SP9]
          <string-name>
            <surname>Bosnić</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Čavrak</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          (
          <year>2019</year>
          , May).
          <article-title>Project work division in agile distributed student teams-who develops what?</article-title>
          .
          <source>In 2019 ACM/IEEE 14th International Conference on Global Software Engineering (ICGSE)</source>
          (pp.
          <fpage>162</fpage>
          -
          <lpage>171</lpage>
          ). IEEE.
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [SP10]
          <string-name>
            <surname>Tamburri</surname>
            ,
            <given-names>D. A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kazman</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Fahimi</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          (
          <year>2022</year>
          ).
          <article-title>On the Relationship Between Organizational Structure Patterns and Architecture in Agile Teams</article-title>
          .
          <source>IEEE Transactions on Software Engineering</source>
          ,
          <volume>49</volume>
          (
          <issue>1</issue>
          ),
          <fpage>325</fpage>
          -
          <lpage>347</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>