Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sentiment analysis of Travis CI builds

Sentiment analysis of Travis CI builds

Talk presented at the Mining Software Repositories (MSR Mining Challenge session) in Buenos Aires, Argentina.

Paper: https://rodrigorgs.github.io/files/msr2017-rodrigo.pdf

Abstract: Human factors such as sentiments, emotions, mood, and stress along with their potential effect on software development are of paramount importance in software engineering, as we still strongly rely on human-to-human interaction for performing software development activities and driving results. With the advance of sentiment analysis tools, software engineering researchers have investigated the interplay between developers’ sentiment and software engineering tasks such as issue fixing times. However, there is a lack of studies analyzing whether there is a relation between developers’ sentiment and builds performed by continuous integration servers. Build breakage is not desired as it represents a signal that something went wrong in the software development activity and that extra work or rework should be done. In this paper, we report an empirical assessment over Travis CI builds and the corresponding commits in order to understand a potential association between developers’ sentiment and build breakage. We found evidence that negative sentiment both affects and is affected by the result of the build process, although the influence seems to be small. Also, we found that developers tend to be more positive when writing about the CI server in commit messages.

rodrigorgs

May 20, 2017
Tweet

More Decks by rodrigorgs

Other Decks in Research

Transcript

  1. SENTIMENT ANALYSIS OF TRAVIS CI BUILDS SENTIMENT ANALYSIS OF TRAVIS

    CI BUILDS Rodrigo Souza <[email protected]> @xrodrigorgs Bruno Silva <[email protected]> @BrCarreiroSilva Federal University of Bahia University of Salvador
  2. Travis CI Push commits “This fixes a really nasty bug”

    1.2k projects 609k builds 1M commits SentiStrengh tool build successful build broken or GitHub
  3. “I love tests, but dislike the awful API” +3 -3

    -4 love dislike awful sentiment score:
 [3, -4]
  4. “I love tests, but dislike the awful API” (A sentence

    can be both positive and negative) +3 -3 -4 love dislike awful sentiment score:
 [3, -4]
  5. SENTIMENT → BUILD STATUS “This fixes a really nasty bug”

    build broken Commits with negative sentiment are slightly more likely to result in broken builds SENTIMENT → BUILD STATUS
  6. Push commits “Definitely hating [issue] #320” build broken Commits following

    a broken build tend to be slightly more negative BUILD STATUS → SENTIMENT BUILD STATUS → SENTIMENT
  7. SENTIMENT TOWARDS TRAVIS CI SENTIMENT TOWARDS TRAVIS CI Commits mentioning

    Travis CI tend to be
 more positive and less negative
  8. “test against mocked command output” SentiStrength
 misclassifies as negative
 technical

    terms in SE We reclassified >50 words
 from SentiStrength’s database LIMITATIONS LIMITATIONS
  9. SENTIMENT ANALYSIS OF TRAVIS CI BUILDS SENTIMENT ANALYSIS OF TRAVIS

    CI BUILDS Rodrigo Souza <[email protected]> @xrodrigorgs Bruno Silva <[email protected]> @BrCarreiroSilva Federal University of Bahia University of Salvador https://gitlab.com/rodrigorgs/msr17-challenge