lnu.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Efficient Automatic Change Detection in Software Maintenance and Evolutionary Processes
Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM). (DISA;DISTA;DSIQ)
2020 (English)Licentiate thesis, comprehensive summary (Other academic)
Abstract [en]

Software maintenance is such an integral part of its evolutionary process that it consumes much of the total resources available. Some estimate the costs of maintenance to be up to 100 times the amount of developing a software. A software not maintained builds up technical debt, and not paying off that debt timely will eventually outweigh the value of the software, if no countermeasures are undertaken. A software must adapt to changes in its environment, or to new and changed requirements. It must further receive corrections for emerging faults and vulnerabilities. Constant maintenance can prepare a software for the accommodation of future changes.

While there may be plenty of rationale for future changes, the reasons behind historical changes may not be accessible longer. Understanding change in software evolution provides valuable insights into, e.g., the quality of a project, or aspects of the underlying development process. These are worth exploiting, for, e.g., fault prediction, managing the composition of the development team, or for effort estimation models. The size of software is a metric often used in such models, yet it is not well-defined. In this thesis, we seek to establish a robust, versatile and computationally cheap metric, that quantifies the size of changes made during maintenance. We operationalize this new metric and exploit it for automated and efficient commit classification.

Our results show that the density of a commit, that is, the ratio between its net- and gross-size, is a metric that can replace other, more expensive metrics in existing classification models. Models using this metric represent the current state of the art in automatic commit classification. The density provides a more fine-grained and detailed insight into the types of maintenance activities in a software project.

Additional properties of commits, such as their relation or intermediate sojourn-times, have not been previously exploited for improved classification of changes. We reason about the potential of these, and suggest and implement dependent mixture- and Bayesian models that exploit joint conditional densities, models that each have their own trade-offs with regard to computational cost and complexity, and prediction accuracy. Such models can outperform well-established classifiers, such as Gradient Boosting Machines.

All of our empirical evaluation comprise large datasets, software and experiments, all of which we have published alongside the results as open-access. We have reused, extended and created datasets, and released software packages for change detection and Bayesian models used for all of the studies conducted.

Place, publisher, year, edition, pages
Växjö: Faculty of Technology, Linnaeus University , 2020. , p. 37
Keywords [en]
Software Maintenance, Software Evolution, Effort Estimation, Commit Classification
National Category
Software Engineering
Research subject
Computer and Information Sciences Computer Science, Computer Science; Computer Science, Software Technology
Identifiers
URN: urn:nbn:se:lnu:diva-94733OAI: oai:DiVA.org:lnu-94733DiVA, id: diva2:1430040
Presentation
2020-06-05, D1173, PG Vejdes Väg 29, Växjö, 10:00 (English)
Opponent
Supervisors
Available from: 2020-08-11 Created: 2020-05-13 Last updated: 2024-05-06Bibliographically approved

Open Access in DiVA

Licentiate Thesis (Comprehensive Summary)(1204 kB)259 downloads
File information
File name FULLTEXT01.pdfFile size 1204 kBChecksum SHA-512
d90e134fd8a81a65f3d552059af6d31e866142e44753116de7c795150bd7084fb58ac96334ccae184104c6994bfdfff994a161e897cc2086ccc2cb17027e33e3
Type fulltextMimetype application/pdf

Authority records

Hönel, Sebastian

Search in DiVA

By author/editor
Hönel, Sebastian
By organisation
Department of computer science and media technology (CM)
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 259 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 1476 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf