vFunction has launched Assessment Hub Express to help architects and developers quickly calculate the technical debt of their monolithic Java applications. Assessment Hub Express is a cloud-based version of the recently announced vFunction Assessment Hub and provides a rapid, self-service technical debt assessment solution that is free for up to 3 applications for one year.
Assessment Hub Express provides key diagnostic measurements so architects can measure technical debt based on critical architectural complexity, risk, and dependency scores. Based on the industry leading vFunction Assessment Hub, this lightweight SaaS tool quickly scans your Java app binaries and details the total cost of ownership (TCO) for your app in relation to technical debt, detecting the top classes that contribute to that debt and aging frameworks to address.
How It Works: the Mathematics Behind Assessment Hub Express
In a recent technical blog, Ori Saporta, vFunction co-founder and systems architect, outlined how vFunction is Using Machine Learning to Measure and Manage Technical Debt. This same science drives Assessment Hub Express and aligns with the approach outlined in leading academic and IEEE studies. The common conclusion from vFunction engineers and the industry is that the most accurate way to measure technical debt is to focus on the dependencies between architectural components in the given application.
Using this approach, vFunction Assessment Hub Express measures the technical debt of monolithic applications based on the dependency graph between its classes. The details are described in the technical blog above, but in essence the algorithms perform multifaceted analysis on the graph to eventually come up with a score that describes the technical debt of the application.
Based on the metrics of the dependency graphs, vFunction can identify architectural issues that represent real technical debt in the original architecture. Moreover, by analyzing dependencies on two levels — class and community — this produces the architectural measurements required to calculate a high-level score that can be used not only to identify technical debt in a single application, but also to compare technical debt between applications. In addition, it can be used to prioritize which apps should be modernized and how. To do that, Assessment Hub measures and displays three key indexes:
- Complexity Index — the effort required to add new features to the software based on the degrees of entanglement between classes
- Risk Index — the potential risk that adding new features has on the stability of existing ones based on the length of dependency chains
- Overall Technical Debt Index — a synthesis of the above complexity and risk scores that represent the overall amount of extra work required when attempting to add new features.
Finally, applying machine learning to the graph theory-derived metrics across hundreds of monolithic applications, vFunction used these benchmarks to train a machine learning model that correlates the values of the extracted metrics with the indexes and normalizes them to a score of 0 to 100.
The overall debt levels were then converted into currency units, depicting the level of investment required to add new functionality into the system. For example, for each $1 invested in application development and innovation, how much goes specifically to maintaining technical debt? This is intended to help organizations build a business case for handling and removing architectural technical debt from their applications.
Rapidly Assess the Technical Debt of Monolith Java Applications
Assessment Hub Express provides a cloud-based rapid, self-service technical debt assessment solution that allows architects and developers to:
- Measure technical debt based on critical architectural complexity, risk, and dependency scores
- Automatically evaluate the innovation to technical debt cost ratio and total cost of ownership (TCO) factor improvement by modernization
- Identify and recommend the top 10 classes contributing to technical debt
- Share an exportable PDF report to build the business case for modernization
- Report on aging software frameworks, compile versions, and Jars that classified into aging, modern, or unknown categories