How it works

DETANGLE takes a deeper view by analyzing code changes continuously over the evolution of any software project and combining them with data from issue trackers.

Intelligently improving the software modularity of features and interpreting its development process leads to completely new and fact-based insights by revealing code change relationships between features. This makes it possible to align business goals with quality goals in an optimal way.

From Code Modularity to Feature Modularity

There is no doubt that the presence of tight coupling is a strong indicator for maintainability problems. However, considering couplings and technical debt between single language artifacts is too inaccurate. Features are the main building blocks of software systems - not modules, files or classes. Analyzing and improving relationships between features, rather than just between programming language artifacts, allows for more purposeful insights about the maintainability of a system.

DETANGLE analyzes relationships between features & code and among features over the whole lifetime of the project and counts technical debt based on the modularity of features rather than just modularity of code.

Feature modularity and the concepts behind are absolutely innovative and groundbreaking in the realm of software quality analysis. The underlying intelligent mathematical models are the results of our long-term practical research in this domain.

Time-Based Analysis

All kinds of software quality analysis gear towards identifying and predicting maintainability flaws. Ultimately, it’s all about measuring how well a system can be adapted to changed requirements. However, common approaches claim to make reliable assertions about the changeability of a system just by analyzing the current status of the code, without effectively measuring what really matters: the actual changes of a system themselves.

Our investigations show that taking into account the time dimension of the software development process is a necessary condition for gaining actionable knowledge and predicting business relevant system flaws.

DETANGLE analyzes the entire commit history of a project. It tracks and interrelates code changes rather than just comparing static code analysis results of different snapshots. We have implemented smart solutions for properly considering parallel development lines in branched repositories or even between multiple repositories.

DETANGLE gets the most out of the past, in order to improve the future.

Prioritize Decisions

Addressing the whole critical set of code findings behind the relevant and highly coupled features normally exceeds the assigned budget.

DETANGLE offers precise decision support on prioritization by intelligently combining different indicators signaling decreasing efficiency in reading and writing code or an increasing error-proneness of code modules.

This information, visualized in form of an intuitive traffic light system, enables engineers to select the most effective individual technical debt findings to address.

DETANGLE supports

git
svn
tfs
jira
redmine
trac
bugzilla
Languages

All! Every text file including configuration files are supported by DETANGLE.