Empirical Software Engineering Syful Islamnnstu Raula Gaikovina Kulannaist
Christoph TreudenUM Bodin Chinthanetnnaist Takashi Ishiomnaist1301152 Kenichi
MATSUMOTOfnaist8925358 [nstu]The author is with the Noakhali Science and
Technology University, Bangladesh. [naist]The authors are with the Graduate
School of Science and Technology, Nara Institute of Science and Technology,
Ikoma-shi, 630-0192, Japan. [UM]The author is with the University of
Melbourne, Australia. 11 11

# An Empirical Study of Package Management Issues
via Stack Overflow

(2015; 2015)

###### keywords:

Package Manager, End-user Issues, Stack Overflow

The package manager (PM) is crucial to most technology stacks, acting as a
broker to ensure that a verified dependency package is correctly installed,
configured, or removed from an application. Diversity in technology stacks has
led to dozens of PMs with various features. While our recent study indicates
that package management features of PM are related to end-user experiences, it
is unclear what those issues are and what information is required to resolve
them. In this paper, we have investigated PM issues faced by end-users through
an empirical study of content on Stack Overflow (SO). We carried out a
qualitative analysis of 1,131 questions and their accepted answer posts for
three popular PMs (i.e., Maven, npm, and NuGet ) to identify issue types,
underlying causes, and their resolutions. Our results confirm that end-users
struggle with PM tool usage (approximately 64-72%). We observe that most
issues are raised by end-users due to lack of instructions and errors messages
from PM tools. In terms of issue resolution, we find that external link
sharing is the most common practice to resolve PM issues. Additionally, we
observe that links pointing to useful resources (i.e., official documentation
websites, tutorials, etc.) are most frequently shared, indicating the
potential for tool support and the ability to provide relevant information for
PM end-users.

##  1 Introduction

Package manager (PM) is crucial to most the technology stacks in software
development, especially when building a web or mobile application. Using a
package as the third-party dependency in software applications is prominent,
with more than 5 million open source packages available via PMs [1]. In 2020,
GitHub showed its support for third-party package usage when it acquired the
Node.js PM (i.e., npm), which serves over 1.3 million packages to roughly 12
million end-users, and is constantly growing each day [2].

Figure 1: A PM-related issue that provides an exemplary overview of the
elements analyzed in our study. RQ1 and RQ2 analyze the issue type and
underlying cause from the PM-related post text. Finally, RQ3 analyze the
relationship between the PM question and the accepted answer posts to identify
the information need for issue resolution.

A PM acts as an intermediary broker between an application and a third-party
package dependency, to ensure that a verified package is correctly installed,
configured, or removed from an application. PMs were developed as an automated
solution to deal with version compatibility and build issues that arise when
an application adopts numerous dependencies [3]. Diversity in technology
stacks has led to a variety of PMs with different features. For instance, npm
brokers packages that run in the node.js based environment and are written in
JavaScript. Recent studies have mainly investigated dependency management and
migration [4, 5, 6, 7, 8]. In our study [9], we explored thirteen PMs to
understand whether their package management features correlate with the
experience of their end-users. While our recent study indicates that package
management features of PM are related to end-user experiences, it is unclear
what those issues are and what information is required to resolve them.

Building on our previous study, we empirically investigate the issues that
end-users face when using PMs and the information needed to resolve them.
Since it is common practice for end-users to use Stack Overflow to post
questions about issues faced during software development, we leverage this
data source for our work. First we conduct an in-depth qualitative analysis on
1,131 sample question posts on three PMs, i.e., Maven, npm, and NuGet to
explore PM issues in term of issue types and their underlying causes. Next, we
investigate the information need to resolve PM issues through a mixed method
analysis (i.e., both qualitative and quantitative). Specifically, we
investigated the following three research questions:

  * •

RQ1: PM Issues Faced by End-users\- What types of PM issues do end-users face?
Our motivation is to gain a better understanding of the challenges that end-
users face through an investigation of PM issues. Using the question coding
schema of Treude et al. [10], we are able to classify each PM-related issue.
As shown in Figure 1, the PM question can be classified as a how-to type issue
in which an end-user asks for instructions.

  * •

RQ2: Underlying Causes of PM Issues-What are the underlying causes of PM
issues? Our motivation is to discover the underlying cause of end-users
challenges when they use PM. By reading each PM-related issue, we are able to
identify and categorize common underlying causes which explain why end-users
struggle with using a PM. As shown in Figure 1, an example underlying cause of
PM issue can be related to lack of technical depth on general ideas of
dependency practice.

  * •

RQ3: Information Need to Resolve PM Issues-What information is needed to
resolve PM issues? Our motivation is to identify useful information patterns
that can assist in resolving PM issues. Using a mixed-method analysis between
question and accepted answer posts, we are able to identify common patterns of
information and determine whether they are related to a resolved PM issue. As
shown in Figure 1, the build configuration file is identified as a PM-related
post attribute which contributes to the issue resolution.

Our findings from RQ1 show that, most PM issues are related to how-to
questions followed by error messages, confirming end-users lack instructions
and intuitive error messages when using PMs. These findings indicate that,
end-users are interested in more specific guidance relating to intuitive
instructions, concepts, and errors associated with PM. In addition, it is
necessary to better understand what technical background knowledge end-users
should have concerning PMs. From RQ2, we find that the underlying causes of PM
issues can be categorized into package management tool usage, general
dependency practices, specific migration, and others. We observe that package
management tool usage is the most dominant underlying cause, confirming end-
users report technical issues on package management tool usage and not on
specific migrations of dependencies. These findings indicate the necessity of
making it easier for end-users to find the information they need to resolve PM
tool usage issues, for example, by providing good error messages or intuitive
instructions. Finally, from RQ3, we find that end-users post external links to
resolve PM issues. We observed that links pointing to useful resources such as
official documentations and tutorials are most frequently shared. This finding
reveals the opportunities for tool support and strategies to find useful
information for addressing PM issues. Researchers could develop approaches
that suggest useful information links by automatically analyzing stack traces
and logs to help speed up the issue-resolution process.

The rest of the paper is organized as follows. Section 2 describes the
methodology of dataset building for the target PMs. Experimental results and
discussions are presented and discussed in Section 3. Section 4 presents the
implications of this work. Section 5 presents the threats to validity of this
work. Section 6 presents the related works. Finally, section 7 presents the
conclusion of this work.

##  2 Methodology of Dataset Building

In this section, we explain the methodology of selecting PMs and their
relevant question-and-answer post dataset building.

Selecting PMs. For in-depth examination of package management issues faced by
end-users, we focused primarily on PMs associated with web frameworks, owing
to their increasing popularity for creating web applications, and digital
systems. We selected the most popular PMs associated with the top eight web
frameworks based on the Stack Overflow survey 2020***Stack Overflow Survey:
https://insights.stackoverflow.com/survey/2020. This resulted in three PMs:
npm (i.e., jQuery, React.js, angular, express, Vue.js are web frameworks of
JavaScript), NuGet (i.e., ASP.NET is web framework of C# .NET) and Maven
(i.e., Spring is web framework of Java).

Collecting PM Posts. Initially, we downloaded the Stack Overflow data dump
version 2019-12-25 published on SOTorrent [11]. To collect relevant PM posts,
we utilized tag-based question post filtering which was also used by prior
studies [12, 13]. To filter out tags pertaining to the three PMs, first we
collected question posts tagged with the keyword package-managers. This step
resulted in 806 question posts. Then, we extracted all tags from the 806
question posts, resulting in 626 unique tags. We observed that, although some
tags were rare (i.e., occurring only once) in the initial posts dataset, they
had a strong relationship with the three PMs. The tag maven-2, for instance,
appears only once in the initial PM post dataset as a coexisting tag, but the
tag itself is associated with 5,568 posts related to maven. Hence, two authors
manually filtered tags from 626 unique tags and identified 11 tags that are
associated with three PMs (see Table 1). Finally, we applied these tags to
collect PM posts. Thus, we obtained PM question-and-answer dataset (i.e., D1)
with 114,834 questions and 50,696 accepted answer posts. Afterward, we
prepared representative sample dataset (i.e, D2), maintaining 95% confidence
level and a confidence interval of 5 for each PM. This resulted in a total of
1,131 sample question from three PMs (i.e., Maven:382, npm:379, and NuGet:370
posts) and their associated accepted answers. Table 2 provides an overview of
the prepared datasets for characterization of PM issues, their underlying
causes and the information need to resolve them. All data and scripts are made
available through our replication package†††Replication Package:
https://zenodo.org/record/7005818\\#.Yv3H0OzP30o.

Table 1:  List of tags used to collect PM posts Initial tag |  Identified relevant tags
---|---
package-managers |  npm, nuget, nuget-package, maven, npm-install, npm-scripts, npmignore, pnpm, npm-shrinkwrap, nuget-package-restore, maven-2
Table 2:  Summary of the PM posts dataset prepared for characterization of PM issues and information need to resolve them. | Dataset (D1) |  | Sample Dataset (D2)
---|---|---|---
PM | #Question |  | #Accepted
---
answer
| #Question |  | #Accepted
---
answer
Maven | 74,657 | 33,710 |  | 382 | 173
npm | 30,136 | 11,857 |  | 379 | 151
NuGet | 10,041 | 5,129 |  | 370 | 182
Total | 114,834 | 50,696 |  | 1,131 | 506

##  3 Results and Discussions

In this section, we present the approaches used to analyze PM posts and the
results obtained to answer our research questions.

###  3.1 PM Issues Faced by End-users ($RQ_{1}$)

Figure 2: Percentage of PM issues by question coding from Treude et al. [10].
Result shows that ‘How-to’ and ‘Error’ messages are the most dominant issue
faced by end-users.

Approach.  To answer RQ1, we conducted a qualitative analysis of statistically
representative sample questions included in dataset D2 (see Table 2) for three
PM tools, namely maven, npm, and NuGet. The question coding scheme proposed by
Treude et al. [10] was adopted to annotate sample questions into PM issues
faced by end-users. Details of the question coding scheme are described below:

  * •

How-to: Posts that ask for instructions. For example: “Title: How to get
latest version number of an artifact and replace it in target file? (Id:
26223226)”. In this post, a developer asked for instruction about getting
latest version an artifact.

  * •

Discrepancy: Some unexpected behavior that the person asking about the PM post
wants explained. For example: “Title: Spring Boot JPA & H2 Records Not
Persisted (Id: 27843682)”. In this post, a developer faced some unexpted
issues while running command mvn spring-boot:run.

  * •

Environment: Posts about the environment either during development or after
deployment. For example, “NPM Windows Path Problems (Id: 25120982)”. In this
post, a developer ask for solution of environment setting issue.

  * •

Error: Posts that include a specific error message. For example: “Title: Error
running Google App Engine quick start : POM for com.google.app engine:app
engine-maven-plugin:jar:1.9.24 is missing (Id: 31576681)”. . In this post, a
developer asked for solution of build failure caused after running command mvn
appengine:devserver.

  * •

Decision help: Asking for an opinion. For example: “Can I invoke a local bean
into a ear file from a Javax-WS into a war file- apache-tomee-plus-1.7.4 (Id:
51072906)”. In this post, a developer asked for an opinion about invoking a
local bean into a ear file from a Javax-WS into a war file-apache-tomee-plus.

  * •

Conceptual: Posts that are abstract and do not have a concrete use case. For
example: “Difference between mvn appengine:update and mvn appengine:deploy in
Google App Engine (Id: 40094090)”. In this post, a developer asked for
understanding the difference between mvn appengine:update and mvn
appengine:deploy.

  * •

Review: Posts that are either implicitly or explicitly asking for a review.
For example: “Is there any possibility of deleting libraries stored maven
central? (Id: 25133985)”. In this post, a developer asked for a review about
possibility of deleting libraries stored maven central.

  * •

Non-functional: Posts about non-functional requirements such as performance or
memory usage. For example: “Java project runs slow from JAR but fast from IDE
(Id: 41861330)”. In this post, a developer asked for performance issue of Java
project.

  * •

Novice: Often explicitly states that the person belong PM posts is a novice.
For example: “The missing package org.spring framework.web (Id: 12603723)”. In
this post, a novice developer asked for a package missing issues while using
Spring MVC.

  * •

How-to/Novice: Posts that belong to a novice asking for step by step
tutorials. For example: “Maven2 - POM configure issue in Windows (Id:
5087296)”. In this post, a novice developer asked for step by step instruction
to configure maven POM file.

  * •

Others: Posts that don’t fall in the above categories.

In our annotation guidelines, we did not allow multiple categories for one
question post. To ensure the quality of our classification, we performed a
Kappa agreement check using 30 random samples among three authors. Using the
Kappa score calculator [14], we checked the agreement level and find overall
score 86.67%, which was almost perfect. Confident with the agreement, two
authors then continued to manually annotate the remaining sample posts.

Results.  Figure 2 shows the result of our qualitative analysis. We observe
that most PM issues are related to How-to questions followed by Error
messages, confirming end-users lack instructions and intuitive error messages
when using PMs. In Maven, we find that How-to (39.01%) question is most
dominant, followed by Error (26.96%) and Review (14.40%). Similar trend is
also shared by NuGet, where How-to (42.16%) question is most dominant,
followed by Error (30.54%) and Decision help (7.30%). On the other hand, in
npm we find that Error (36.94%) message question is most dominant, followed by
How-to (30.87%) and Review (9.76%). These findings indicate that, end-users
are interested in specific guidance relating to intuitive instructions,
concepts, and errors associated with PMs.

Answering RQ1: The PM issues faced by end-users belong to question type how-to
(i.e., around 31 to 42% of question samples) and error messages (i.e., around
27 to 37% of questions). End-users of Maven and NuGet asked the most how-to
type questions while npm end-users ask mostly error type questions.

###  3.2 Underlying Causes of PM Issues ($RQ_{2}$)

Approach.  To answer RQ2, we conducted a qualitative analysis of statistically
representative sample questions included in dataset D2 (see Table 2) for three
PM tools, namely maven, npm, and NuGet. An open coding strategy was adopted
similar to the previous work by Hata et al. [15] in order to reveal the root
causes of PM issues. The open coding process consists of three steps. In
step-1, the second author of this paper derived a draft list of underlying
causes based on 30 randomly sampled posts. Then the first two authors used the
draft list to label the sample questions collaboratively. During this step,
the underlying causes were revised. The output of this step was 4 underlying
causes including others. In step-2, the same two authors performed manual
annotation of another 30 samples to make sure that no new causes appeared. The
output of this step was the same 4 underlying causes. In step-3, three authors
discussed the coding results that were obtained in step-2 and measured author
agreement using Kappa score [14]. We did not allow multiple categories for one
question post under our annotation guidelines. After two rounds of manual
annotation of 30 samples among three authors, we ended up with a Kappa score
of 95.56% (almost perfect). Given reliability of the annotation guidelines,
two authors manually annotated the remaining samples. The 4 underlying causes
of PM issues are summarized below:

  * •

Specific migration: Posts related to dependency updates like an upgrade or
downgrade to a specific version of the package, moving to new environment
(language/OS/etc), incompatibility of packages and other associated issues.
For example, from the PM Post (Id: 50262939), we observe that an end-user
struggle with issues to migrate his project written in Java8 to Java9.

  * •

Package management tool usage: Posts related to technical details on package
management systems such as installation, configuration of tools, and their
associated costs. For example, from the PM Post (Id: 4811870), we observe that
an end-user discusses about configuring the maven build tool to run multi-
module project in a custom way.

  * •

General dependency practices: Posts related to lack of technical knowledge on
general dependency management practice, bugs, efficiency, etc. For example,
from the PM Post (Id: 30571), we observe that, end-users ask a question on the
general ideas of maven packages dependency management.

  * •

Others: Posts that are tagged with a PM but do not fall in the above three
categories. For example, the PM post (Id: 38906885) does not fall in the above
three categories.

Results.  Figure 3 shows the result of our qualitative analysis. We find that
Package management tool usage is the most dominant underlying cause for all
three PMs, confirming that end-users report technical issues on Package
management tool usage and not on specific migrations of dependencies. The
result is consistent with previous studies [16, 17, 18, 19, 20]. They reported
that the complexity of software tools [16], installability of tools and
packages [17, 19, 20, 18] are the root causes of the end-users struggle during
application development and maintenance. In detail, we find that Package
management tool usage (72.25%) is most dominant underlying cause for Maven,
followed by General dependency practices (10.73%). The same trend is also
evident in the other two PMs, namely, npm and NuGet. In npm, Package
management tool usage (70.71%) is most dominant underlying cause, followed by
General dependency practices (5.80%). In NuGet, Package management tool usage
(63.51%) is most dominant underlying cause, followed by General dependency
practices (18.65%) and Specific migration (13.51%). These findings indicate
the necessity of making it easier for end-users to find the information they
need to resolve PM tool usage issues, for example, by providing good error
messages or intuitive instructions.

Figure 3: Percentage of PM issues by their underlying cause. We find that
‘Package management tool usage’ is the most dominant underlying cause.

Answering RQ2: The underlying causes of PM issues can be categorized into
package management tool usage, general dependency practices, specific
migration, and others. End-users ask questions that relate to package
management tool usage (approximately 64-72%), and not specific migration and
general dependency practice.

###  3.3 Information Need to Resolve PM Issues ($RQ_{3}$)

Approach.  To answer RQ3, we conducted a mixed method analysis (i.e., both
qualitative and quantitative) to explore useful information patterns between
PM questions and their accepted answers. This process was completed through
two consecutive steps i.e., (i) Identify the most dominant attribute from PM
posts, and (ii) Discover the useful information patterns from most dominant
attribute. We have explained each step below.

  * •

Step 1: Identify the most dominant attribute from PM posts.  We conducted a
qualitative analysis of statistically representative sample questions included
in dataset D2 (see Table 2) for three PM tools. An open coding strategy was
adopted to identify the most dominant PM post attributes. The open coding
process consists of three steps. Initially, the first author of this paper
derived a draft list of attributes based on 30 randomly sampled posts. Then
the two authors used the draft list to label the sample questions
collaboratively. During this step, the attributes were revised. The output of
this step was 6 attributes. In the next step, the same two authors performed
manual analysis on another 30 samples to make sure that no new causes
appeared. The output of this step was the same 6 attributes as the previous
step. Finally, two authors discussed the coding results and measured authors
agreement using Kappa score [14]. In our annotation guidelines, we allowed
multiple attribute annotations for one question post. The overall kappa score
among two authors for PM question posts attribute coding were source code
100%, build configuration file 84.62%, textual content 100%, external link
93.33%, cmd/log/output files 84.62%, version information 76.92%, respectively.
Given reliability of the annotation guidelines, the first author annotated
remaining sample posts. The 6 attributes of PM posts are summarized below:

    * –

Source code: The post includes code snippets as part of the information.

    * –

Build configuration file: The post includes build configuration files as a
part of information.

    * –

cmd/log/output file: The post includes log files or output from the program.

    * –

External link: The post includes external links as a part of information.

    * –

Version information: The post includes version information of a package or any
software.

    * –

Textual content only: The post includes only text as information.

After completing the annotation process, we analyzed the annotated samples to
identify the most dominant attribute. The output of this step was the most
dominant attribute from the PM posts.

(a) Questions with accepted answer (b) Accepted answers

Figure 4: Attribute analysis between PM question and their associated accepted
answer posts. External link is the most dominant attribute in the accepted
answer of PM issues.

  * •

Step2: Discover the useful information patterns from most dominant attribute.
We conducted a quantitative analysis on dataset D1 (see Table 2) to discover
useful information patterns for the most dominant attribute (i.e., output of
step 1) between PM questions and their accepted answers. Here, we applied
association rule mining on dataset D1 in order to increase the chance of
discovering more useful information patterns. First, we extracted most
dominant attribute information’s from PM questions and their associated
accepted answers by using regular expression. Next, we performed necessary
pre-processing on the extracted information such as removing special
characters, backslash etc. Afterward, we applied the apriori algorithm as
implemented in the python package mlxtend‡‡‡Mlxtend Package:
http://rasbt.github.io/mlxtend/api_subpackages/mlxtend.frequent_patterns/.
Finally, we filtered all rules with at least 5 data points and 45% confidence.
The output of this step was useful information patterns from most dominant
attribute.

Table 3: Aggregated association rules for the external link attribute extracted from PM questions (Q_domain) and their accepted answers (A_domain). We find that links refer to useful information’s such as official documentations, tutorials, GitHub resources, and screenshots are most frequently shared by end-users to resolve PM issues. | Association rule | Confidence | Support
---|---|---|---
| Q_maven.apache.org$\,\to\,$A_maven.apache.org | 49.67% | 300
| Q_maven.apache.org, Q_i.stack.imgur.com$\,\to\,$A_maven.apache.org | 56.00% | 14
| Q_code.google.com, Q_stackoverflow.com$\,\to\,$A_github.com | 50.00% | 9
Maven | Q_docs.gradle.org$\,\to\,$A_docs.gradle.org | 50.00% | 7
| Q_www.oracle.com$\,\to\,$A_stackoverflow.com | 53.85% | 7
| Q_www.jfrog.com$\,\to\,$A_www.jfrog.com | 58.33% | 7
| Q_code.google.com, Q_github.com$\,\to\,$A_github.com | 50.00% | 6
| Q_github.com$\,\to\,$A_github.com | 51.73% | 359
| Q_www.npmjs.com, Q_github.com$\,\to\,$A_github.com | 58.62% | 34
| Q_i.stack.imgur.com, Q_github.com$\,\to\,$A_github.com | 52.83% | 28
| Q_gist.github.com$\,\to\,$A_github.com | 51.72% | 15
| Q_npmjs.org$\,\to\,$A_github.com | 53.85% | 14
| Q_pastebin.com$\,\to\,$A_github.com | 58.33% | 14
npm | Q_www.npmjs.org$\,\to\,$A_github.com | 60.00% | 12
| Q_medium.com$\,\to\,$A_github.com | 66.67% | 10
| Q_yarnpkg.com$\,\to\,$A_github.com | 50.00% | 7
| Q_nodejs.org, Q_github.com$\,\to\,$A_github.com | 75.00% | 6
| Q_www.typescriptlang.org$\,\to\,$A_github.com | 62.50% | 5
| Q_yeoman.io$\,\to\,$A_github.com | 62.50% | 5
| Q_registry.npmjs.org, Q_github.com$\,\to\,$A_github.com | 62.50% | 5
| Q_ionicframework.com$\,\to\,$A_github.com | 71.43% | 5
| Q_travis-ci.org$\,\to\,$A_github.com | 83.33% | 5
| Q_i.stack.imgur.com, Q_docs.microsoft.com$\,\to\,$A_i.stack.imgur.com | 76.47% | 13
| Q_github.com, Q_www.nuget.org$\,\to\,$A_github.com | 50.00% | 11
NuGet | Q_docs.microsoft.com, Q_stackoverflow.com$\,\to\,$A_i.stack.imgur.com | 50.00% | 8
| Q_i.stack.imgur.com, Q_docs.nuget.org$\,\to\,$A_i.stack.imgur.com | 60.00% | 6
| Q_i.stack.imgur.com, Q_docs.microsoft.com, Q_stackoverflow.com$\,\to\,$A_i.stack.imgur.com | 85.71% | 6

Results. Figure 4 shows that external link sharing is the most common practice
to resolve PM issues by end-users. This finding is consistent with several
previous studies [21, 22], that also reported how external links connect to
the existing information’s and extend the crowd-sourced knowledge. In detail,
Figure 4(b) shows that the external links (i.e., Maven: 45.09% , npm: 44.37%,
and NuGet: 42.86%) are the most frequent attributes in the accepted answers.
Taking a closer look on the external links as shown in Table 3, we observe
that end-users share official website links of PMs followed by github and
image screenshots as part of information to describe PM issues and accepted
answers. Moreover, we observed that links referring to the useful resources
(i.e., official documentation websites, tutorial etc.) are most frequently
shared. This analysis on both PM questions and their accepted answers reveal
the opportunities for tool support and strategies to find the information
needed for end-users to resolve their issues while dealing with PM.

Answering RQ3: To resolve PM issues, external link sharing is the most common
practice by end-users. We noticed that links referring to the useful resources
(i.e., official documentation websites, tutorial etc.) are most frequently
shared.

##  4 Implications

The results of this study can help PM communities better focus their efforts
on important issues relating to PM tool usage. In the following paragraphs, we
describe how the results can be used to better guide PM end-users, PM
designers, and researchers.

In terms of PM issues and their underlying causes, we find that most issues
are raised by end-users due to a lack of instructions and error messages from
PM tools usage. In light of these findings, it is necessary to better
understand what technical background knowledge end-users should have
concerning PMs.  The end-users should look for PM that supports more than just
managing packages such as listing available/installed packages, searching,
filtering, installing remotely/locally, supporting wildcards, publishing
packages easily and learning to deal with packages. Moreover, the target PM
should be checked to determine whether it supports customization, including
interactive mode that allows the end-user to decide what steps to take during
the installation process. The designers of PM are advised to develop a
graphical user interface that is intuitive and simple for end-users. For
example, when designing a command line interface, end-user commands should be
as intuitive as possible. In order to facilitate end-user troubleshooting, the
PM designers should provide more working examples along with relevant
troubleshooting information. In addition, they need to make it easy for end-
users to locate the information need to resolve problems, for example by
providing good error messages. Further research in these areas may also
contribute to the improvement of PM tool development process. Our study seeks
to identify the challenges faced by end-users of PM tools in order to guide
future research.

Regarding PM issue resolution, we have discovered that sharing external links
appears to be the most common practice among Stack Overflow users responding
to PM issues. We observed that links pointing to useful resources such as
official documentations and tutorials are most frequently shared. This finding
reveals the opportunities for tool support and strategies to find useful
information for addressing PM issues. Researchers could develop approaches
that suggest useful information links by automatically analyzing stack traces
and logs to help speed up the issue-resolution process. Furthermore, it would
be interesting to gain more insights into how PM end-users discover and
disseminate knowledge through better understanding of external link sharing
practice. We also encourage future research to focus on domain-specific
automated question answering by utilizing such crowd-sourced knowledge.

##  5 Threats to Validity

This section describes the internal, external, and construct validity threats
of our study.

Internal Validity. Threats to internal validity relate to experimental bias
and error in conducting the analysis. We perform manual analysis on random
sample since the PM dataset size is large. Our data sampling strategy may pose
threat to the study findings. We adopted a random sampling approach since it
has been used in many previous publications that also used the same Stack
Overflow dataset, including studies on mobile [13] and chatbot [12].
Additionally, an alternative data sampling strategy such as selecting the most
popular question posts (those with the highest number of votes), or only
focusing on those with answers, may produce more reliable results. To mitigate
this challenge, we prepare representative samples for three PMs, with a
confidence level of 95% and a interval of 5. Thus, we believe that
experimental bias and error in conducting the analysis were reduced.

External Validity. Threats to external validity relate to the generalizability
of findings. In our study, we focused only on Stack Overflow which is the
largest and most popular question-and-answer platform among end-users. The
findings of our study may not generalize to other question-and-answer
platforms. However, our study is consistent with previous works that also
utilized Stack Overflow dataset [13, 12].

Construct Validity. Threats to construct validity are related to potential
errors that can occur when extracting data about PMs. The first threat is the
construct validity of the collected data. We used Stack Overflow tags to
identify posts related to the PMs, but some posts may be incorrectly labeled
with PM related tags or missing tags. To reduce this threat, we filtered the
list of tags by following state-of-the-art approaches [13, 12].

In the qualitative analysis of classifying PM issues and their underlying
causes, the questions may be miscoded due to the subjective nature of our
coding approach. To mitigate this threat, we took a systematic approach to
validate the taxonomy and the comprehension understanding by the three authors
in several rounds. Only until the Kappa score reaches 0.87 and 0.96,
indicating that the agreement is almost perfect (0.81-1.00), we were able to
complete the rest of the sample dataset. A further risk is the difficulty in
obtaining information from PM question and their associated accepted answer
posts using regular expressions. With our defined regular expression, we may
not be able to filter out all possible information patterns from PM questions
and their accepted answers, which could lead to biased results.

##  6 Related Works

Complementary related works are presented throughout this paper. This section
describes some additional related research works.

PM Studies. The prior studies on PM showed that end-users struggled to manage
their software dependencies [23, 24, 8, 25, 26, 6, 3]. In detail, Bogart et
al. [23], performed multiple case studies on a set of PMs with different
tooling policies. They found that end-user practices differ significantly
between PMs. Kikas et al. [24], analyzed the dependency network of three PMs
(i.e., JavaScript, Ruby, and Rust). They reported that there exist significant
difference in dependency network structure across language ecosystems. Decan
et al. [8] studied several PMs and report that dependency network tend to grow
over time in term of size and the number of packages. Lungu et al. [25]
investigated issues related to dependency graphs and dependency management
specifications. They reported that dependencies also exist between projects in
a ecosystem. Raemaekers et al. [26] showed that dependency management involves
making cost-benefit decisions related to keeping package dependencies up to
date. Kula et al. [6], mined end-user responsiveness to existing security
awareness mechanisms on 850K library dependency migrations from 4,659 GitHub
projects. They found that end-users were particularly reluctant to update
third-party libraries to fix vulnerabilities. Dietrich et al. [3] studied
seventeen different PMs. Their findings reveal that end-users struggle to find
a sweet spot between fixed version dependency predictability and flexible
dependency agility.

While these studies have shown that end-users struggle to migrate their
dependent packages, the common assumption is that PMs broker dependencies
without any issues. In this paper, we examine the issues confronted by end-
users when using PM tool to manage third-party package dependencies.

Stack Overflow Studies. Question-and-Answer platform like Stack Overflow has
gained huge research interest, with topics relating to community dynamics,
technical issues of programmers and human factors [27]. Several empirical case
studies were performed using Stack Overflow data such as improving API
documentation and usage scenarios [28], new programming language (Go, Rust,
and Swift) related discussion [29], privacy [30] etc. Some studies were done
on human factors like IT skill [31], programmers expertise [32], etc. Several
tool supports and recommendation models were developed using Stack Overflow
data resources such as PostFinder [33], bug severity prediction model [34]
etc. These studies reported that Stack Overflow data resources are useful to
solve developers challenges.

In this paper, the same data source (i.e, Stack Overflow) is used but
different from the above mentioned empirical studies. To the best of our
knowledge, there is no prior work that conducted study on PM issues from Stack
Overflow. We extracted PM question-and-answer posts from Stack Overflow and
perform a series of empirical studies. In this study, we hope to highlight the
challenges and information needs associated with using PM for end users,
package manager designers, and researchers.

##  7 Conclusion and Future Work

In this study, we have explored issues faced by end-users when using PMs
through an empirical study of content on Stack Overflow question and accepted
answer posts. We carried out a qualitative analysis of 1,131 question and
their accepted answer posts from the Maven, npm, and NuGet dependency
ecosystems to identify issue types, underlying causes, and their resolutions.
We observe that most issues arise from the lack of understanding PM tool usage
information rather than specific version updates and compatibility issues. To
resolve PM issues, we observed that sharing external links was the most common
practice. Furthermore, we noticed that the most common links shared were those
which pointed to useful materials (such as the official documentation
websites, tutorials, etc.). In conclusion, this study opens up opportunities
for future research in the PM area, such as investigating tool support for
novice PM end-users, intuitive PM configuration options, and intuitive error
messages through stack traces and log files.

## Acknowledgment

This work is supported by the Japanese Society for the Promotion of Science
(JSPS) KAKENHI Grant Numbers JP20K19774 and JP20H05706.

## References

  * [1] libraries.io, “Helping you make more informed decisions about the software you use.” https://libraries
.io/about, 2020. (Accessed on 05/20/2020).

  * [2] the npm blog, “npm blog: Next Phase Montage.” https://blog.npmjs.org/post/612764866888007680/
next-phase-montage, 2020. (Accessed on 05/20/2020).

  * [3] J. Dietrich, D. Pearce, J. Stringer, A. Tahir, and K. Blincoe, “Dependency versioning in the wild,” 2019 IEEE/ACM 16th International Conference on Mining Software Repositories (MSR), pp.349– 359, IEEE, 2019.
  * [4] J. Cox, E. Bouwers, M. Eekelen, and J. Visser, “Measuring dependency freshness in software sys- tems,” 2015 IEEE/ACM 37th IEEE Interna- tional Conference on Software Engineering (ICSE), pp.109–118, 2015.
  * [5] C. Bogart, C. Kästner, J. Herbsleb, and F. Thung, “How to break an api: cost negotiation and com- munity values in three software ecosystems,” Pro- ceedings of the 2016 24th ACM SIGSOFT Inter- national Symposium on Foundations of Software Engineering, pp.109–120, 2016.
  * [6] R.G. Kula, D.M. German, A. Ouni, T. Ishio, and K. Inoue, “Do developers update their library dependencies?,” Empirical Software Engineering, vol.23, no.1, pp.384–417, 2018.
  * [7] A. Decan, T. Mens, and E. Constantinou, “On the impact of security vulnerabilities in the npm package dependency network,” Proceedings of the 15th International Conference on Mining Software Repositories, pp.181–191, 2018.
  * [8] A. Decan, T. Mens, and P. Grosjean, “An empirical comparison of dependency network evolutioin seven software packaging ecosystems,” Empirical Software Engineering, vol.24, no.1, pp.381–416, 2019\.
  * [9] S. Islam, R.G. Kula, C. Treude, B. Chinthanet, T. Ishio, and K. Matsumoto, “Contrasting third- party package management user experience,” 2021 IEEE International Conference on Software Main- tenance and Evolution (ICSME), pp.664–668, IEEE, 2021.
  * [10] C. Treude, O. Barzilay, and M.A. Storey, “How do programmers ask and answer questions on the web?(nier track),” Proceedings of the 33rd interna- tional conference on software engineering, pp.804– 807, 2011.
  * [11] S. Baltes, L. Dumani, C. Treude, and S. Diehl, “Sotorrent: reconstructing and analyzing the evo- lution of stack overflow posts,” Proceedings of the 15th International Conference on Mining Soft- ware Repositories, MSR 2018, Gothenburg, Swe- den, May 28-29, 2018, ed. A. Zaidman, Y. Kamei, and E. Hill, pp.319–330, ACM, 2018.
  * [12] A. Abdellatif, D. Costa, K. Badran, R. Abdalka- reem, and E. Shihab, “Challenges in chatbot de- velopment: A study of stack overflow posts,” Pro- ceedings of the 17th International Conference on Mining Software Repositories, pp.174–185, 2020.
  * [13] C. Rosen and E. Shihab, “What are mobile devel- opers asking about? a large scale study using stack overflow,” Empirical Software Engineering, vol.21, no.3, pp.1192–1223, 2016.
  * [14] A.J. Viera, J.M. Garrett, et al., “Understand- ing interobserver agreement: the kappa statistic,” Fam med, vol.37, no.5, pp.360–363, 2005.
  * [15] H. Hata, C. Treude, R.G. Kula, and T. Ishio, “9.6 million links in source code comments: Purpose, evolution, and decay,” Proceedings of the 41st In- ternational Conference on Software Engineering, p.1211–1221, 2019.
  * [16] B. Nagaria and T. Hall, “How software developers mitigate their errors when developing code,” IEEE Transactions on Software Engineering, 2020.
  * [17] S. Mangul, T. Mosqueiro, R.J. Abdill, D. Duong, K. Mitchell, V. Sarwal, B. Hill, J. Brito, R.J. Littman, B. Statz, et al., “Challenges and rec- ommendations to improve the installability and archival stability of omics computational tools,” PLoS biology, vol.17, no.6, p.e3000333, 2019.
  * [18] J. Argelich and I. Lynce, “Cnf instances from the software package installation problem.,” RCRA, 2008\.
  * [19] A. Decan, T. Mens, and M. Claes, “An empiri- cal comparison of dependency issues in oss pack- aging ecosystems,” 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER), pp.2–12, IEEE, 2017.
  * [20] P. Abate, R. Di Cosmo, L. Gesbert, F. Le Fes- sant, R. Treinen, and S. Zacchiroli, “Mining com- ponent repositories for installability issues,” 2015 IEEE/ACM 12th Working Conference on Mining Software Repositories, pp.24–33, IEEE, 2015.
  * [21] C. Gómez, B. Cleary, and L. Singer, “A study of innovation diffusion through link sharing on stack overflow,” 2013 10th Working Conference on Min- ing Software Repositories (MSR), pp.81–84, IEEE, 2013\.
  * [22] J. Liu, H. Zhang, X. Xia, D. Lo, Y. Zou, A.E. Hassan, and S. Li, “An exploratory study on the repeatedly shared external links on stack overflow,” Empirical Software Engineering, vol.27, no.1, pp.1–32, 2022.
  * [23] C. Bogart, C. Kästner, J. Herbsleb, and F. Thung, “When and how to make breaking changes: Poli- cies and practices in 18 open source software ecosystems,” ACM Transactions on Software Engi- neering and Methodology (TOSEM), vol.30, no.4, pp.1–56, 2021.
  * [24] R. Kikas, G. Gousios, M. Dumas, and D. Pfahl, “Structure and evolution of package depen- dency networks,” 2017 IEEE/ACM 14th Interna- tional Conference on Mining Software Repositories (MSR), pp.102–112, IEEE, 2017.
  * [25] M. Lungu, R. Robbes, and M. Lanza, “Recover- ing inter-project dependencies in software ecosys- tems,” Proceedings of the IEEE/ACM interna- tional conference on Automated software engineer- ing, pp.309–312, 2010.
  * [26] S. Raemaekers, A. Van Deursen, and J. Visser, “Measuring software library stability through historical version analysis,” 2012 28th IEEE In ternational Conference on Software Maintenance (ICSM), pp.378–387, IEEE, 2012.
  * [27] S. Meldrum, S.A. Licorish, and B.T.R. Savarimuthu, “Crowdsourced knowledge on stack overflow: A systematic mapping study,” Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering, pp.180–185, 2017.
  * [28] P.K. Venkatesh, S. Wang, F. Zhang, Y. Zou, and A.E. Hassan, “What do client developers concern when using web apis? an empirical study on de- veloper forums and stack overflow,” 2016 IEEE In- ternational Conference on Web Services (ICWS), pp.131–138, IEEE, 2016.
  * [29] P. Chakraborty, R. Shahriyar, A. Iqbal, and G. Uddin, “How do developers discuss and support new programming languages in technical q&a site? an empirical study of go, swift, and rust in stack overflow,” Information and Software Technology, vol.137, p.106603, 2021.
  * [30] M. Tahaei, K. Vaniea, and N. Saphra, “Under- standing privacy-related questions on stack over- flow,” Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems, pp.1–14, 2020\.
  * [31] J.E. Montandon, C. Politowski, L.L. Silva, M.T. Valente, F. Petrillo, and Y.G. Guéhéneuc, “What skills do it companies look for in new developers? a study with stack overflow jobs,” Information and Software Technology, vol.129, p.106429, 2021.
  * [32] A. Diyanati, B.S. Sheykhahmadloo, S.M. Fakhrah- mad, M.H. Sadredini, and M.H. Diyanati, “A pro- posed approach to determining expertise level of stackoverflow programmers based on mining of user comments,” Journal of Computer Languages, vol.61, p.101000, 2020.
  * [33] R. Rubei, C. Di Sipio, P.T. Nguyen, J. Di Rocco, and D. Di Ruscio, “Postfinder: Mining stack overflow posts to support software developers,” Information and Software Technology, vol.127, p.106367, 2020.
  * [34] Y. Tan, S. Xu, Z. Wang, T. Zhang, Z. Xu, and X. Luo, “Bug severity prediction using question- and-answer pairs from stack overflow,” Journal of Systems and Software, vol.165, p.110567, 2020.

[Authors_Photo/Syful.JPG]Syful Islamreceived the M.E., and PhD degree in
Engineering from Nara Institute of Science and Technology, Japan. At present,
he is working as an assistant professor at Noakhali Science and Technology
University, Bangladesh. His research interests include software ecosystem,
mining Stack Overflow, etc.

[Authors_Photo/Raula.png]Raula Gaikovina Kulais currently an assistant
professor at Nara Institute of Science and technology. In 2013, he graduated
with a PhD. from Nara Institute of Science and Technology, Japan. He is
currently an active member of the IEEE Computer Society and ACM. His research
interests include repository mining, code review, software libraries and
visualizations.

[Authors_Photo/christoph.JPG]Christoph Treude is a Senior Lecturer in Software
Engineering in the School of Computing and Information Systems at the
University of Melbourne. His research combines empirical studies with the
innovation of tools and approaches that take the wide variety of natural
language artefacts in software repositories into account.

[Authors_Photo/Bodin.JPG]Bodin Chinthanet is currently a Specially Appointed
Assistant Professor in Software Engineering Laboratory under the supervision
of Professor Kenichi Matsumoto, Nara Institute of Science and Technology
(NAIST). His research interests include empirical software engineering and
mining software repositories.

[Authors_Photo/ishio.jpg]Takashi Ishioreceived the Ph.D degree in information
science and technology from Osaka University in 2006. He was a JSPS Research
Fellow from 2006-2007. He was an assistant professor at Osaka University from
2007-2017. He is now an associate professor of Nara Institute of Science and
Technology. His research interests include program analysis, program
comprehension, and software reuse. He is a member of the IEEE, ACM, IPSJ and
JSSST.

[Authors_Photo/matsumoto.png]Kenichi Matsumotoreceived the B.E., M.E., and PhD
degrees in Engineering from Osaka University, Japan, in 1985, 1987, 1990,
respectively. Dr. Matsumoto is currently a professor in the Graduate School of
Information Science at Nara Institute Science and Technology, Japan. His
research interests include software measurement and software process. He is a
senior member of the IEEE and a member of the IPSJ and SPM.


Proceedings of the Fifth Annual LHCP LHCB-PROC-2017-032 September 1, 2017

Mixing and $C\\!P$ violation results in $b$-hadron decays at LHCb

XUESONG LIU

On behalf of the LHCb Collaboration,
Center for High Energy Physics,
Tsinghua University, Beijing, 100084, China

> ABSTRACT
>
>
>
>
> Measurements of mixing and $C\\!P$ violation in $b$-hadron decays are great
> probes to search for physics beyond the Standard Model. A selection of
> recent results based upon $3.0\ \mathrm{fb}^{-1}$ of LHCb data are
> presented. These are the first measurement of the $C\\!P$ violating phase
> $\phi_{s}$ using $B_{s}^{0}\to{{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip
> 2.0mu}}K^{+}K^{-}$ in the mass region above the $\phi(1020)$ resonance and
> $B_{s}^{0}\to\psi(2S)\phi$ decays, the determination of $B_{s}^{0}$ lifetime
> using $B_{s}^{0}\to D^{(*)-}\mu^{+}\nu_{\mu}$ decays, the updated
> measurements of the CKM angle $\gamma$ with $B^{\pm}\to DK^{*\pm}$ and
> $B_{s}^{0}\to D_{s}^{\mp}K^{\pm}$ decay modes and the $C\\!P$ violation
> searches in ${\varLambda^{0}_{b}}\to p\pi^{-}\pi^{+}\pi^{-}$ and
> ${\varLambda^{0}_{b}}\to pK^{-}\mu^{+}\mu^{-}$ decays.

> PRESENTED AT
>
>
>
>
> The Fifth Annual Conference
>
> on Large Hadron Collider Physics
>
> Shanghai Jiao Tong University, Shanghai, China
>
> May 15-20, 2017

##  1 Measurements of the CP violating phase $\phi_{s}$

The interference of the decay amplitudes and the
$B_{s}^{0}$-$\overline{B}{}^{0}_{s}$ mixing amplitudes can give rise to a
$C\\!P$ violating phase

${\phi_{s}}=\phi_{M}-2\phi_{D},$ (1)

where $\phi_{M}$ is the $B_{s}^{0}$-$\overline{B}{}^{0}_{s}$ mixing phase and
$\phi_{D}$ is the weak phase between the $B_{s}^{0}$ and
$\overline{B}{}^{0}_{s}$ decay amplitudes. Measurement of the $\phi_{s}$ is
obtained through the time-dependent $C\\!P$ asymmetry

$A_{{C\\!P}}(t)=\frac{\Gamma(\overline{B}{}^{0}_{s}(t)-f)-\Gamma(B_{s}^{0}(t)-f)}{\Gamma(\overline{B}{}^{0}_{s}(t)-f)+\Gamma(B_{s}^{0}(t)-f)}=\frac{C_{f}\mathrm{cos}(\Delta
mt)-S_{f}\mathrm{sin}(\Delta mt)}{\mathrm{cosh}(\Delta\Gamma
t/2)+A^{\Delta\Gamma}\mathrm{sinh}(\Gamma t/2)},$ (2)

where $C_{f}$ is related to $C\\!P$ violation in the decay and $S_{f}$
represents $C\\!P$ violation in the interference. Neglecting penguin pollution
and assuming no Beyond Standard Model (BSM) contribution, the phase
${\phi_{s}}$ is predicted to be
${\phi_{s}}=-2\beta_{s}=0.0365^{+0.0013}_{-0.0012}\ \mathrm{rad}$ [1]. The
world average result by HFLAV, ${\phi_{s}}=-0.021\pm 0.031\ \mathrm{rad}$ [2],
is dominated by LHCb measurements and is compatible with Standard Model (SM)
prediction.

### Measurement of $\phi_{s}$ with
$B_{s}^{0}\to{{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip 2.0mu}}K^{+}K^{-}$ in the
mass region above the $\phi(1020)$

A study performed by LHCb, using a data sample corresponding to $1\
\mathrm{fb^{-1}}$ showes a rich resonance spectrum in the $K^{+}K^{-}$ mass
distribution [3], indicating that the signficant contribution from the
$f^{{}^{\prime}}_{2}(1525)$ resonance and nonresonant S-wave amplitudes can be
used for further studies of $C\\!P$ violation [4]. In this analysis, the
$C\\!P$ observables are determined as functions of the $B_{s}^{0}$ decay time
in a four-dimensional phase space including the three helicity angles
characterizing the decay and the invariant mass of the two kaons, $m_{KK}$.
With respect to the previous publication focusing on the
${{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip 2.0mu}}\phi(1020)$ decays [5], the
${B_{s}^{0}\to{{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip 2.0mu}}K^{+}K^{-}}$
sample is separated into two regions, having $m_{KK}$ above or below the
$\phi(1020)$ resonance. A simultaneous fit is performed for the two samples.

All the resonanses found in the previous analysis are considered as
contribution to the entire fit, except for the unconfirmed $f_{2}(1640)$
state. The fit projection of $m_{KK}$ is shown in Figure 1 [6].

Figure 1: Fit projection of $m_{KK}$. The resonance $\phi(1020)$,
$f^{{}^{\prime}}_{2}(1525)$, $\phi(1680)$ and S-wave components are shown by
magenta, brown, cyan and green curves; the other $f_{2}$ resonances are
described by black solid curves.

The results are determined as

$\begin{array}[]{rl}{\phi_{s}}=&0.119\pm 0.107\pm 0.034\ \mathrm{rad},\\\
\Delta\Gamma_{s}=&0.066\pm 0.018\pm 0.010\ \mathrm{ps}^{-1},\\\
m_{f^{{}^{\prime}}(1525)}=&1522.2\pm 1.3\pm 1.1,\ \mathrm{MeV},\\\
\Gamma_{f^{{}^{\prime}}(1525)}=&78.0\pm 3.0\pm 3.7,\ \mathrm{MeV},\end{array}$

where $\Delta\Gamma_{s}$ is the decay width difference between the light and
the heavy mass eigenstates, $m_{f^{{}^{\prime}}(1525)}$ and
$\Gamma_{f^{{}^{\prime}}(1525)}$ are the mass and width of
$f^{{}^{\prime}}(1525)$, the first uncertainty is statistical and the second
is systematic.

The combination with previous results from $B_{s}^{0}$ decays in the
$\phi(1020)$ region [5] and ${{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip
2.0mu}}\pi^{+}\pi^{-}$ final states [7] gives ${\phi_{s}}=0.001\pm 0.037\
\mathrm{rad}$ [6].

### Measurement of $\phi_{s}$ with $B_{s}^{0}\to\psi(2S)\phi$

The $\psi(2S)$ resonance state is for the first time used in the $\phi_{s}$
measurement with $B_{s}^{0}\to\phi(2S)(\mu^{+}\mu^{-})\phi(K^{+}K^{-})$ decay
mode. This decay has a similar topology compared with the ‘golden mode’
$B_{s}^{0}\to{{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip
2.0mu}}(\mu^{+}\mu^{-})\phi(K^{+}K^{-})$ [5]. Compared to the latter analysis,
a multivariate selection is added to optimise the statistical sensitivity and
the control mode $B_{s}^{0}\to\phi(2S)K^{*}$ is used to calibrate the decay
time acceptance. In total, $4697\pm 71$ signal candidates are found in this
channel. An unbinned maximum likelihood fit to the four-dimensional
distributions of the $B_{s}^{0}\to\psi(2S)\phi$ decay time and helicity angles
is done to estimated the $C\\!P$ violation phase $\phi_{s}$. The results,
listed in Table 1 [8], are compatible with previous LHCb measurements [5, 7].

Parameter | Value
---|---
$\Gamma_{s}$ [ $\mathrm{ps}^{-1}$ ] | $0.668\pm 0.011\pm 0.006$
$\Delta\Gamma_{s}$ [ $\mathrm{ps}^{-1}$ ] | $0.066^{+0.041}_{-0.044}\pm 0.007$
$|A_{\perp}|^{2}$ | $0.264^{+0.024}_{-0.023}\pm 0.002$
$|A_{0}|^{2}$ | $0.422\pm 0.014\pm 0.003$
$\delta_{\parallel}$ [$\mathrm{rad}$] | $3.67^{+0.13}_{-0.18}\pm 0.03$
$\delta_{\perp}$ [$\mathrm{rad}$] | $3.29^{0.43}_{0.39}\pm 0.04$
$\phi_{s}$ [$\mathrm{rad}$] | $0.23^{+0.29}_{-0.28}\pm 0.02$
$|\lambda|$ | $1.045^{+0.069}_{-0.050}\pm 0.007$
$F_{S}$ | $0.061^{+0.026}_{-0.025}\pm 0.007$
$\delta_{S}$ [$\mathrm{rad}$] | $0.03\pm 0.14\pm 0.02$
Table 1:  Results of the maximum likelihood fit to the selected
$B_{s}^{0}\to\psi(2S)\phi$ candidates. The parameters are defined in Ref. [8].
The first uncertainty is statistical and the second is systematic.

##  2 Flavour-specific $B_{s}^{0}$ lifetime measurement with $B_{s}^{0}\to
D^{(*)-}_{s}\mu^{+}\nu_{\mu}$

The flavour-specific lifetime is defined as

$\tau^{\mathrm{fs}}_{s}=\frac{1}{\Gamma_{s}}\left[\frac{1+(\Delta\Gamma_{s}/2\Gamma_{s})^{2}}{1-(\Delta\Gamma_{s}/2\Gamma_{s})^{2}}\right],$
(3)

where $\Delta\Gamma_{s}=\Gamma_{s,\mathrm{H}}-\Gamma_{s,\mathrm{L}}$ is the
decay width difference between the light and the heavy mass eigenstates and
$\Gamma_{s}=(\Gamma_{s,\mathrm{H}}+\Gamma_{s,\mathrm{L}})/2$ is the average
width.

LHCb has reported a measurement of $\tau^{\mathrm{fs}_{s}}=1.535\pm 0.015\pm
0.014\ \mathrm{ps}$ [10] using $B_{s}^{0}\to D_{s}^{-}\pi^{+}$ decays.
Semileptonic $B_{s}^{0}$ decays have a larger signal yield than in hadronic
decays, such that can offer richer potential for precise measurement. In this
analysis, the $B_{s}^{0}$ candidates are reconstructed with $D_{s}^{(*)-}\to
K^{+}K^{-}\pi^{-}$ and muon candidates. The $B_{s}^{0}$ yields are determined
with the ‘corrected-mass’, defined as $m_{\rm
corr}=p_{\perp,D\mu}+\sqrt{m^{2}_{D\mu}+p^{2}_{\perp,D\mu}}$. The lifetime is
determined from the variation in the $B_{s}^{0}$ signal yield as a function of
decay time, relative to that of $B^{0}$ decays that are reconstructed in the
same final state. The result is $\tau^{\mathrm{fs}}_{s}=1.547\pm
0.013(\mathrm{stat})\pm 0.010(\mathrm{syst})\pm 0.004(\tau_{B})\ \mathrm{ps}$
[9] and is consistent with and more precise than the current measured values
[10, 11].

##  3 Measurements of the CKM angle $\gamma$

The angle $\gamma$ is the least well known angle in the CKM unitarity
triangle. It can be measured using tree-level processes based on the
interference between $b\to c\overline{u}s$ and $b\to u\overline{c}s$
transitions and has negligible theoretical uncertainty [12] in SM predictions.
Disagreement between such direct measurement of $\gamma$ and the value
inferred from global CKM fits would indicate new physics beyond the SM. The
world-average value of the $\gamma$ measurements with ($B\to DK$)-like decays
is $\gamma=(74.0^{+5.8}_{-6.4})^{\circ}$ [2]. The CKMFitter group quoted
$\gamma=(66.9^{+0.9}_{-3.4})^{\circ}$ [13] from a global fit of CKM
parameters. And the latest LHCb combination yields
$\gamma=(76.8^{+5.1}_{-5.7})^{\circ}$ [14, 15]. Exploiting the Run-II dataset
with already used or even new decay modes will allow to reduce the uncertainty
on the measured value of $\gamma$.

### Measurement of the $C\\!P$ observables using $B^{\pm}\to DK^{*\pm}$

The $C\\!P$ violation in $B^{\pm}\to DK^{*\pm}$ decays is sensitive to
$\gamma$ at tree level. Decays of the $D$ mesons to
$K^{-}\pi^{+},K^{+}K^{-},\pi^{+}\pi^{-},K^{+}\pi^{-},K^{-}\pi^{+}\pi^{-}\pi^{+},\pi^{+}\pi^{-}\pi^{+}\pi^{-},K^{+}\pi^{-}\pi^{+}\pi^{-}$
and the $K^{*}(892)^{\pm}$ with the $K^{0}_{s}\pi^{\pm}$ final states are used
in the reconstruction. LHCb has reported the measurement of $\gamma$ with
$B^{\pm}\to DK^{\pm}$ decays modes [16]. Compared with these channels, the
branching fractions of $B^{\pm}\to DK^{*\pm}$ is of a similar magnitude,
however the reconstruction efficiencies for the $K^{*\pm}$ decay are much
lower.

Several $C\\!P$ asymmetries and ratios, corresponding to different final state
of the $D^{0}$, were measured as the $\gamma$ sensitive observables. The mass
spectrum of the $B^{\pm}\to D(K^{+}K^{-})K^{*\mp}$ decay modes are shown in
Figure 2 [17]. A simultaneous fit is performed to all $D$ final state.

The measured $C\\!P$ ovservable in the favoured mode, $A_{K\pi}=-0.004\pm
0.023(\mathrm{stat})\pm 0.008(\mathrm{syst})$ [17] , is consistent with zero.
The combined results from the $C\\!P$-eigenstate $K^{+}K^{-}$ and
$\pi^{+}\pi^{-}$ decay modes, $R_{{C\\!P}+}=1.18\pm 0.08(\mathrm{stat})\pm
0.01(\mathrm{syst}),\ A_{{C\\!P}+}=0.08\pm 0.06(\mathrm{stat})\pm
0.01(\mathrm{syst})$ [17], are consistent with and more precise than the
previous measurements from BaBar [18].

Figure 2:  Mass distribution of the $B^{\pm}\to D(K^{+}K^{-})K^{*\mp}$ modes
using Run 1 and Run 2 data. The signal component is represented by the red
shaded area, the combinatorial background by the dotted blue line and the
partially reconstructed background by the solid green line.

### Measurement of the CKM angle $\gamma$ using $B_{s}^{0}\to
D^{\mp}_{s}K^{\pm}$

Another approach to extract $\gamma$ is through the neutral $B$ meson decays
and perform a time-depentment measurement of the $C\\!P$ observables. In
$B_{s}^{0}\to D^{\mp}_{s}K^{\pm}$ decays, the sensitivity to the weak phase
$\gamma-2\beta_{s}$ arises from the interference of $B_{s}^{0}$ and
$\overline{B}{}^{0}_{s}$ decaying into the same final state : $D_{s}^{+}K^{-}$
or $D_{s}^{-}K^{+}$. The $C\\!P$ observables can be interpreted in terms of
either $\gamma$ or $\beta_{s}$ by using an independent measurement of the
other parameters as input and are given by

$\begin{array}[]{rl}C_{f}=\frac{1-r_{D_{s}K}^{2}}{1+r_{D_{s}K}^{2}},\
A_{f}^{\Delta\Gamma}=\frac{-2r_{D_{s}K}\mathrm{cos}(\delta-(\gamma-2\beta_{s}))}{1+r^{2}_{D_{s}K}},&\
A_{\overline{f}}^{\Delta\Gamma}=\frac{-2r_{D_{s}K}\mathrm{cos}(\delta+(\gamma-2\beta_{s}))}{1+r^{2}_{D_{s}K}},\\\
S_{f}=\frac{2r_{D_{s}K}\mathrm{sin}(\delta-(\gamma-2\beta_{s}))}{1+r^{2}_{D_{s}K}},&\
S_{\overline{f}}=\frac{-2r_{D_{s}K}\mathrm{sin}(\delta+(\gamma-2\beta_{s}))}{1+r^{2}_{D_{s}K}},\\\
\end{array}$ (4)

where $r_{D_{s}K}\equiv|\lambda_{D_{s}K}|=|A(\overline{B}{}^{0}_{s}\to
D_{s}^{-}K^{+})/A(B_{s}^{0}\to D_{s}^{-}K^{+})|$ is the magnitude of the
amplitude ratio, $\delta$ is the strong phase difference between the favoured
and suppressed amlitudes. The intial flavour of the $B_{s}^{0}$ mesons is
determined with ‘flavour tagging’ process. The kinematically similar mode
$B_{s}^{0}\to D_{s}^{-}\pi^{+}$ is used as a control channel for the
determination of the decay time efficiency and flavour tagging performance.
The fitted $C\\!P$ observables are listed in Table 2. With the value of
$\beta_{s}$ from previous LHCb measurment in
${B_{s}^{0}\to{{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip 2.0mu}}K^{+}K^{-}}$ [5]
and $B_{s}^{0}\to{{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip 2.0mu}}\pi^{+}\pi^{-}$
[7], the angle $\gamma$ is determined as $\gamma=(127^{+17}_{-22})^{\circ}$.

Parameter | Value
---|---
$C_{f}$ | $0.735\pm 0.142\pm 0.048$
$A_{f}^{\Delta\Gamma}$ | $0.395\pm 0.277\pm 0.122$
$A_{\overline{f}}^{\Delta\Gamma}$ | $0.314\pm 0.274\pm 0.107$
$S_{f}$ | $-0.518\pm 0.202\pm 0.073$
$S_{\overline{f}}$ | $-0.496\pm 0.197\pm 0.071$
Table 2:  Results of the maximum likelihood fit to the selected $B_{s}^{0}\to
D^{\mp}_{s}K^{\pm}$ candidates. The first uncertainty is statistical and the
second is systematic.

##  4 $C\\!P$ violation searches in the $b$-baryons decays

In the SM, decays of the $\varLambda^{0}_{b}$ bayron are predicted to have
non-negligible $C\\!P$ asymmetries, as large as $20\%$ for certain three-body
decay modes [19]. Large numbers of beauty baryons are produced at the LHC, the
production ratio of $B^{0}:{\varLambda^{0}_{b}}:B_{s}^{0}$ particles is
approximately $4:2:1$ within the LHCb detector acceptance [20], which allows
to perform sensitive studies of $C\\!P$ violation in $b$-baryon sector.

###  $C\\!P$ violation searches in ${\varLambda^{0}_{b}}\to
p\pi^{-}\pi^{+}\pi^{-}$

The ${\varLambda^{0}_{b}}\to p\pi^{-}\pi^{+}\pi^{-}$ decay is mediated by the
weak interaction, $C\\!P$ violation in decay can arise from the interference
of a tree amplitude and a penguin amplitude.

The scalar triple products of final-state particle momenta in the
$\varLambda^{0}_{b}$ centre-of-mass frame are used for $P$ and $C\\!P$
violating searches, defined as
$C_{\hat{T}}=\vv{p_{p}}\cdot(\vv{p}_{\pi^{-}_{\mathrm{slow}}}\times\vv{p}_{\pi^{+}})\propto\mathrm{sin}\Phi$
for $\varLambda^{0}_{b}$, and
$\overline{C}_{\hat{T}}=\vv{p_{\overline{p}}}\cdot(\vv{p}_{\pi^{+}_{\mathrm{slow}}}\times\vv{p}_{\pi^{-}})\propto\mathrm{sin}\overline{\Phi}$
for $\overline{\varLambda}{}^{0}_{b}$, where $\Phi$ is the angle between the
decay plane of the proton and higher-momentum $\pi^{-}$ and that of the
$\pi^{+}$ and the lower-momentum $\pi^{-}$. Two $\hat{T}$-odd asymmetries are
built as

$A_{\hat{T}}=\frac{N_{{\varLambda^{0}_{b}}}(C_{\hat{T}}>0)-N_{{\varLambda^{0}_{b}}}(C_{\hat{T}}<0)}{N_{{\varLambda^{0}_{b}}}(C_{\hat{T}}>0)+N_{{\varLambda^{0}_{b}}}(C_{\hat{T}}<0)},\
\overline{A}_{\hat{T}}=\frac{N_{\overline{\varLambda}{}^{0}_{b}}(-\overline{C}_{\hat{T}}>0)-N_{\overline{\varLambda}{}^{0}_{b}}(-\overline{C}_{\hat{T}}<0)}{N_{\overline{\varLambda}{}^{0}_{b}}(-\overline{C}_{\hat{T}}>0)+N_{\overline{\varLambda}{}^{0}_{b}}(-\overline{C}_{\hat{T}}<0)}.$
(5)

The $P$ and $C\\!P$ violating observables can be constructed as

$a_{P}^{\hat{T}-\mathrm{odd}}=\frac{1}{2}(A_{\hat{T}}+\overline{A}_{\hat{T}}),\
a_{{C\\!P}}^{\hat{T}-\mathrm{odd}}=\frac{1}{2}(A_{\hat{T}}-\overline{A}_{\hat{T}}).$
(6)

The analysis was performed in ten bins of $|\Phi|$ and in twelve bins of the
phase space. The distribution of the asymmetries are shown in Figure 3.

Figure 3:  The asymmetries $a^{\hat{T}-odd}_{P}$ (upper panels) and
$a^{\hat{T}-odd}_{{C\\!P}}$ (lower panels) for ${\varLambda^{0}_{b}}\to
p\pi^{-}\pi^{+}\pi{-}$ decays in bins of phase space and $\Phi$.

Combining the results of both schemes gives evidence for $C\\!P$ violation in
${\varLambda^{0}_{b}}\to p\pi^{-}\pi^{+}\pi^{-}$ at the level of $3.3\sigma$
[21].

###  $C\\!P$ violation searches in ${\varLambda^{0}_{b}}\to
pK^{-}\mu^{+}\mu^{-}$

The ${\varLambda^{0}_{b}}\to pK^{-}\mu^{+}\mu^{-}$ is mediated by flavour-
changing neutral-current transitions in the SM. The theoretical prediction of
$C\\!P$ violation in this decay is very small [22, 23] which makes it
particularly sensitive to $C\\!P$ violation contributions from BSM physics.
The signal yield is determined to be $600\pm 44$. The asymmetry $A_{{C\\!P}}$
is related to the raw asymmetry $A_{\mathrm{raw}}$ via

$A_{\mathrm{raw}}\equiv\frac{N({\varLambda^{0}_{b}}\to
pK^{-}\mu^{+}\mu^{-})-N(\overline{\varLambda}{}^{0}_{b}\to\overline{p}K^{+}\mu^{-}\mu^{+})}{N({\varLambda^{0}_{b}}\to
pK^{-}\mu^{+}\mu^{-})+N(\overline{\varLambda}{}^{0}_{b}\to\overline{p}K^{+}\mu^{-}\mu^{+})}\approx
A_{{C\\!P}}({\varLambda^{0}_{b}}\to
pK^{-}\mu^{+}\mu^{-})+A_{\mathrm{prob}}({\varLambda^{0}_{b}})-A_{\mathrm{reco}}(K^{+})+A_{\mathrm{reco}}(p),$
(7)

where $A_{\mathrm{prob}}({\varLambda^{0}_{b}})$ is the $\varLambda^{0}_{b}$
production asymmetry, $A_{\mathrm{reco}}(K^{+})$ and $A_{\mathrm{reco}}(p)$
are the reconstruction asymmetries for kaons and protons. Measurement of the
difference of raw asymmetries between the signal and ${\varLambda^{0}_{b}}\to
pK^{-}{{J\mskip-3.0mu/\mskip-2.0mu\psi\mskip 2.0mu}}$ control mode, can cancel
the effects from the production and reconstruction asymmetries. Thus two
different $C\\!P$ violating observables that are sensitive to different
manifestations of $C\\!P$ violation, $\Delta A_{{C\\!P}}$ and
$a^{\hat{T}-odd}_{{C\\!P}}$, are measured. The $C\\!P$-odd observable is
defined following the same method in the above ${\varLambda^{0}_{b}}\to
p\pi^{-}\pi^{+}\pi^{-}$ analysis. The results, $\Delta A_{{C\\!P}}=(-3.5\pm
5.0(\mathrm{stat})\pm 0.2(\mathrm{syst}))\times 10^{-2},\
a^{\hat{T}-odd}_{{C\\!P}}=(1.2\pm 5.0(\mathrm{stat})\pm
0.7(\mathrm{syst}))\times 10^{-2}$ [24], are comaptible with $C\\!P$ and
parity conservation and agree with SM predictions.

##  5 Conclusions

Many new measurements of $C\\!P$ violation searches in $b$-hadron decays are
performed by the LHCb experiment. These results improve our knowledge on the
CKM parameters. All the measurements are still statistically limited and can
be improved with LHC Run-II data.

## References

  * [1] J. Charles et al., Phys. Rev. D91 (2015) 7 073007, [arXiv:1501.05013[hep-ex]].
  * [2] Y. Amhis et al. [Heavy Flavor Averaging Group], [arXiv:1612.07233[hep-ex]].
  * [3] R. Aaij et al. [LHCb Collaboration], Phys. Rev. D87 (2013) 7 072004, [arXiv:1302.1213[hep-ex]].
  * [4] R. Aaij et al. [LHCb Collaboration], Phys. Rev. Lett. 108 (2012) 151801, [arXiv:1112.4695[hep-ex]].
  * [5] R. Aaij et al. [LHCb Collaboration], Phys. Rev. Lett. 114 (2015) 4 041801, [arXiv:1411.3104[hep-ex]].
  * [6] R. Aaij et al. [LHCb Collaboration], JHEP 08 (2017) 037, [arXiv:1704.08217[hep-ex]].
  * [7] R. Aaij et al. [LHCb Collaboration], Phys. Lett. B736 (2014) 186-195, [arXiv:1405.4140[hep-ex]].
  * [8] R. Aaij et al. [LHCb Collaboration], Phys. Lett, B762 (2016) 253-262, [arXiv:1608.04855[hep-ex]].
  * [9] R. Aaij et al. [LHCb Collaboration], submitted to Phys. Rev. Lett. [arXiv:1705.03475[hep-ex]].
  * [10] R. Aaij et al. [LHCb Collaboration], Phys. Rev. Lett. 113 (2014) 17 172001, [arXiv:1407.5873[hep-ex]].
  * [11] V. Abazov et al. [D0 Collaboration], Phys. Rev. Lett. 114 (2015) 6 062001, [arXiv:1410.1568[hep-ex]].
  * [12] B. Joachim and Z. Jure, JHEP 01 (2014) 051, [arXiv:1308.5663 [hep-ph]].
  * [13] J. Charles et al. [CKMfitter Group], Eur. Phys. J. C 41 (2005) 1 1-131, [arXiv:hep-ph/0406184], updated results and plots available at: http://ckmfitter.in2p3.fr.
  * [14] R. Aaij et al. [LHCb Collaboration], JHEP 12 (2016) 087, [arXiv:1611.03076[hep-ex]].
  * [15] R. Aaij et al. [LHCb Collaboration], LHCb-CONF-2017-004.
  * [16] R. Aaij et al. [LHCb Collaboration], Phys. Lett. B760 (2016) 117-131, [arXiv:1603.08993[hep-ex]].
  * [17] R. Aaij et al. [LHCb Collaboration], LHCb-PAPER-2017-030.
  * [18] B. Aubert et al. [BaBar Collaboration], Phys. Rev. D80 (2009) 092001.
  * [19] Y.K. Hsiao and C.Q. Geng, Phys. Rev. D91 (2015) 11 116007, [arXiv:1412.1899[hep-ex]].
  * [20] R. Aaij et al. [LHCb Collaboration], Phys. Rev. D85 (2012) 032008, [arXiv:1111.2357[hep-ex]].
  * [21] R. Aaij et al. [LHCb Collaboration], Nature Phys. 13 (2017) 391-396, [arXiv:1609.05216[hep-ex]].
  * [22] M.A. Paracha et al., PTEP 2015 (2015) 3 033B04, [arXiv:1408.4318[hep-ph]].
  * [23] A.K. Alok et al., JHEP 11 (2011) 122, [arXiv:1103.5344[hep-ph]].
  * [24] R. Aaij et al. [LHCb Collaboration], JHEP 06 (2017) 108, [arXiv:1703.00256[hep-ex]].