Software Cycle Time Analysis via Version Control Linking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Mature software organizations face challenges in tracing bottlenecks in software design due to non-actionable throughput metrics from existing project management tools like Jira or Trello, which do not allow for specific identification of bottlenecks in the development process.

Innovation Solution

An electronic data-processing apparatus and method that determines cycle time in a software project by accessing project management data and version control data, linking task data items with version control data items to calculate time durations between task timestamps and commit timestamps, enabling the identification of time-consuming components and resources allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If throughput metrics are used to track development efficiency, then overall productivity can be measured, but specific bottlenecks in software design cannot be identified

Engineering Contradiction:
Improvedevelopment efficiencyVSAvoidbottleneck identification
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent segments the software codebase into individual files and tracks cycle time for each file separately. By dividing the overall development process into file-level units, the system can identify which specific files are causing bottlenecks while maintaining overall productivity metrics.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces version control data as an intermediary between project management data and code files. This intermediary layer enables the system to link tasks to specific files and determine cycle times, thereby identifying bottlenecks without disrupting the existing project management workflow.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If manual tracking of cycle time is performed, then accuracy can be maintained, but automation and scalability are reduced

Engineering Contradiction:
Improvecycle time accuracyVSAvoidcycle time determination
Core Design Contradiction:
Measurement precisionVSExtent of automation

Solution Approach 1:

The system automatically determines cycle times by leveraging existing version control data and project management data. The version control system itself provides the timestamps and file information needed for cycle time calculation, eliminating the need for manual tracking while maintaining accuracy.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces manual cycle time tracking with an automated computational process. By using version control timestamps and project management data, the system automatically calculates cycle times through computer processing rather than manual measurement, enabling scalability.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Loss of information

If file-level cycle time tracking is implemented, then bottleneck identification improves, but system complexity increases

Engineering Contradiction:
Improvebottleneck traceabilityVSAvoiddata processing complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent reuses existing version control data structures and project management data fields for cycle time tracking. By making these existing systems multi-functional, the patent avoids adding complex new infrastructure while still achieving file-level tracking capabilities.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The version control data serves as an intermediary that already contains file information and timestamps. This intermediary structure simplifies the data processing by providing pre-organized information that can be directly used for cycle time calculations without requiring complex data aggregation systems.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240428201A1Approaches for determining a cycle time in a software project
Publication Date: 2024.12.26 CODESCENE AB
  • US20240428201A1 patent drawing
  • US20240428201A1 patent drawing
  • US20240428201A1 patent drawing

AI summary

A computer-implemented method is disclosed for determining a cycle time in a software project. The method includes obtaining a task data item by accessing project management data, wherein the project management data is indicative of migration of software project tasks through different project phases including an in-progress phase. The task data item includes a task identifier indicating a task corresponding to the task data item, and a task time stamp indicating when the task migrated to the in-progress phase. The method also includes obtaining a version control data item by accessing version control data, wherein the version control data is indicative of software commits of the software project. Corresponding apparatus and computer program product are also disclosed.