Software Code Asset Valuation via Commit-Blame Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional software capitalization approaches fail to accurately account for the longevity and value of software code in a code base, leading to premature recognition of expenses and inaccurate asset valuation.

Innovation Solution

A method and system that processes commit source data from a software version control system to track changes, using a commit-blame procedure to generate high-level report data on the survival and value of software code, including the time it takes to write and delete code, enabling more accurate financial reporting and depreciation scheduling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional software capitalization approaches are used, then software development expenses are recorded as capital expenditures, but the expense recognition is premature and asset valuation is inaccurate because they don't factor in granular information about code survival time

Engineering Contradiction:
Improveaccuracy of expense recognition and asset valuationVSAvoidtiming of expense recognition
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments software code into individual hunks and tracks each hunk's survival time independently. By breaking down the software asset into granular components (hunks) and monitoring their individual lifecycles in the version control system, the system can accurately determine when each segment becomes obsolete and should be expensed, rather than recognizing the entire software asset as expired at once.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a feedback mechanism that continuously monitors the version control system to track when code hunks are deleted or modified. This real-time feedback on code survival status enables dynamic adjustment of asset valuation and expense recognition timing, ensuring that financial records reflect the actual longevity and value of software assets.

Inventive Principle:
Principle #23Feedback

2Reliability

If code is deleted right away, then the asset account should be decreased immediately, but traditional approaches continue to hold asset value until depreciation schedule expires

Engineering Contradiction:
Improveaccuracy of asset account reflectionVSAvoidduration of asset account holding
Core Design Contradiction:
ReliabilityVSDuration of action of stationary object

Solution Approach 1:

The patent performs preliminary tracking of code hunk lifecycles by monitoring version control system events as they occur. By establishing and maintaining a continuous record of when each code hunk is created, modified, and deleted, the system is prepared to immediately adjust asset accounts when code is deleted, rather than waiting for the end of a predetermined depreciation period.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from version control system events to trigger immediate asset account adjustments. When a deletion event is detected, the feedback mechanism automatically calculates the impact on asset value and updates the asset account in real-time, ensuring the asset account always reflects the current state of the code base.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If traditional depreciation schedules are used, then expense recognition follows a fixed timeline, but it doesn't reflect the actual value and longevity of software code in the code base

Engineering Contradiction:
Improveflexibility of expense recognition timingVSAvoidaccuracy of code value assessment
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent replaces static depreciation schedules with dynamic tracking that adapts to actual code lifecycle events. Instead of following a predetermined timeline, the system continuously monitors version control events and adjusts expense recognition timing based on when code is actually deleted or modified, making the financial reporting flexible and responsive to real-world software asset changes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter for expense recognition from fixed time intervals to variable intervals based on code survival duration. By calculating the actual time each code hunk remains in the code base and using this duration as the basis for expense recognition, the system achieves both flexibility in timing and precision in valuation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20240329982A1Method, System and Computer Program Product for Producing High-Level Report Data from Low-Level Data Extracted from a Version Control System
Publication Date: 2024.10.03 MINWARE INC
  • US20240329982A1 patent drawing
  • US20240329982A1 patent drawing
  • US20240329982A1 patent drawing

AI summary

Method, system and computer program product for producing high-level report data from low-level data extracted from a version control system are provided. The method includes receiving sets of commit source data extracted from a repository of one or more software objects in the version control system. Each set of commit source data includes commit patches. The commit patches are processed to obtain hunk records. The hunk records are processed utilizing a commit-blame procedure to produce output records indicating history and original source of changes from the commit patches. The commit-blame procedure is performed on input commits and commit patches to produce intermediate data records. The intermediate data records are analyzed to obtain information relating to whether software code is still surviving in a software code base or when the software code was removed from the software code base. At least one report is produced by aggregating the information.