The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,860 other subscribers

GitHub – src-d/hercules: Gaining advanced insights from Git repository history.

Posted by jpluimers on 2024/11/12

[Wayback/Archive] GitHub – src-d/hercules: Gaining advanced insights from Git repository history.

This project, with the command-line tools hercules and labours is on my research list as it can get pretty good long-term insights on project health (the tool is programming language independent).

Especially the half-life of code is a good measurement, as well as the existence of code bursts (hello major version increments!).

This research part is important: [Wayback/Archive] Change Bursts as Defect Predictors – Publications – Software Engineering Chair (Prof. Zeller), by Nachiappan Nagappan, Andreas Zeller, Thomas Zimmermann, Kim Herzig, Brendan Murphy

[Wayback/Archive] Download as PDF file [Wayback PDF View/PDF View] (10 pages)

Abstract

In software development, every change induces a risk. What happens if code changes again and again in some period of time? In an empirical study on Windows Vista, we found that the features of such change bursts have the highest predictive power for defect-prone components. With precision and recall values well above 90%, change bursts significantly improve upon earlier predictors such as complexity metrics, code churn, or organizational structure. As they only rely on version history and a controlled change process, change bursts are straight-forward to detect and deploy.

BibTeX Entry

@inproceedings{change-bursts-2010,
    title = "Change Bursts as Defect Predictors",
    author = "Nachiappan Nagappan and Andreas Zeller and Thomas Zimmermann and Kim Herzig and Brendan Murphy",
    year = "2010",
    month = nov,
    booktitle = "Proceedings of the 21st IEEE International Symposium on Software Reliability Engineering",
    location = "San Jose, California, USA",
}
Figure 1. How gap size and burst size determine change burst detection from a sequence of changes.

Figure 1. How gap size and burst size determine change burst detection from a sequence of changes.

[Wayback/Archive] pbs.twimg.com/media/GYQ763FakAIgDIj.png

Via [Wayback/Archive] Thread by @lauriewired on Thread Reader App – The half-life of code is an interesting predictor of project quality. Linux, has one of the longest code half-life’s at 6.6 years. WordPress, less than 2.

Linux, has one of the longest code half-life’s at 6.6 years. WordPress, less than 2.

Linux, has one of the longest code half-life’s at 6.6 years. WordPress, less than 2.

[Wayback/Archive] pbs.twimg.com/media/GYQ7jpoakAECl5w.jpg

I’d love to see a trained model warn a team of future maintenance load based on current code commits.

Cassandra seems like an appropriate name.

  1. [Wayback/Archive] LaurieWired on X: “The half-life of code is an interesting predictor of project quality. Linux, has one of the longest code half-life’s at 6.6 years. WordPress, less than 2. Every software change induces some risk. Repos with numerous “change bursts” have the highest incidence of defects.”

    [Wayback/Archive] Tweet JSON (with the above Linux/WordPress comparison image)

    1. [Wayback/Archive] 🕳 on X: “@lauriewired What is the source of the image in the first post? Would like to see more data visualizations like that. For anyone looking for the 2010 study, it can be found here: st.cs.uni-saarland.de/publications/details/change-bursts-2010/…”

      [Wayback/Archive] Tweet JSON (with the above publication link)

    2. [Wayback/Archive] LaurieWired on X: “@sekurlsa_pw You can generate them yourself using this repo: …”

      [Wayback/Archive] Tweet JSON (with link to the repository at the start of this blog post)

  2. [Wayback/Archive] LaurieWired on X: “This isn’t just some theory I’ve made up. Nagappan et al wrote an excellent paper on this phenomenon. (Change Bursts as Defect Predictors, 2010) Change bursts increase maintenance, complexity, and are likely to introduce bugs that persist well after the release date.”

    [Wayback/Archive] Tweet JSON

  3. [Wayback/Archive] LaurieWired on X: “Regular, sustained changes in non-concentrated periods do not have the same correlation with defects. What do you think? It seems like a fascinating early-warning canary of future code issues. I’d love to see a trained model warn a team of future maintenance load based on”

    [Wayback/Archive] Tweet JSON

--jeroen

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.