People looking at a screen with data information

New method could reshape the future of software development

Sebastian Hönel from Linnaeus University has, in his computer science dissertation, introduced a new method to measure and enhance the quality of software processes. The method focuses on understanding how software is developed and the changes that occur over time. By utilising digital data from the development process combined with expert- and data-driven analysis, one can predict issues and decide on potential improvements.

One of the new tools that Sebastian Hönel has developed is a metric called "source code density". This metric indicates the true amount of code present in a software application relative to its overall size. It aids in determining whether the code is compact and efficient or if it's dispersed and contains superfluous code.

"Source code density is a valuable tool to identify dispensable code. Moreover, we've developed a reliable classifier based on it to understand the nature of changes in the software. It is exploited by a new method to use this and other development data to more easily identify complex issues in the development process," says Sebastian Hönel.

New perspectives on software development

The research could change the way we think about software development. By focusing on the development process and using tools like source code density, one can create better, more reliable, and more efficient software.

Traditionally, software developers have concentrated on assessing the quality of the software itself. However, Sebastian Hönel's research indicates that it's equally important to look at how the software is developed.

"To optimise software, we first need to refine and tweak the development process and learn from past experiences. Previously, development work was measured by looking at the magnitude of changes, but there hasn't been a reliable method. Now, we suggest using data from the development process itself combined with quantitative analysis to understand the scale of changes," states Sebastian Hönel.

Identify issues by analyzing the code

When managing multiple computer projects simultaneously, it's inevitable to encounter both successes and challenges. There are moments when everything runs flawlessly, but there are also times when complications arise. This could be because the software doesn't perform quickly enough, it lacks necessary features, the budget is exceeded, or the project doesn't finish on schedule.

After a project is completed, it's natural to want to reflect on and understand the moments when things didn't go as planned. The challenge may lie in determining whether the issues arose due to individual decisions or broader team dynamics.

"We have developed tools that can quickly scan through your projects and pinpoint where the major problems might lie. It might not give you every detail, but it helps you swiftly identify which projects need extra attention. We can find these issues just by looking at the program's code. We believe this tool can help detect many different types of problems," says Sebastian Hönel.

The research marks a step forward in the quest to understand and enhance software quality. With these new tools and methods, one can streamline and optimise developers' work, thus producing better and more reliable software.

Link to doctoral thesis

Quantifying Process Quality: The Role of Effective Organizational Learning in Software Evolution


Sebastian Hönel, PhD in Computer Science, +4676-099 27 53,