GenAI Code Analysis for Software Redundancy Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large organizations, software developers often work in siloed environments, leading to unawareness of similar APIs or redundant functionalities developed by other teams, resulting in inefficiencies and storage redundancies when projects are combined.

Innovation Solution

A generative artificial intelligence (GenAI) system is employed to analyze multiple software repositories, identify interdependent source codes, and detect redundant functionalities across different code bases, providing recommendations for optimization, such as code consolidation and storage deduplication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If developers work in siloed environments focusing on particular applications or modules, then individual team productivity is improved, but awareness of other designers' work decreases leading to redundancy

Engineering Contradiction:
Improveindividual team productivityVSAvoidawareness of other designers' work
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The system implements feedback by continuously monitoring code repositories and notifying developers about potential redundancies. The GenAI model analyzes submitted code and provides feedback on similar existing code, enabling developers to adjust their work and avoid duplication while maintaining individual team productivity.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces an intermediary system consisting of the GenAI model and code analysis infrastructure that mediates between isolated development teams. This intermediary automatically detects similarities between code from different teams and facilitates information sharing without requiring direct communication between developers, thus preserving siloed productivity while reducing redundancy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If similar APIs are developed independently by different teams, then team autonomy is maintained, but storage redundancy increases

Engineering Contradiction:
Improveteam autonomyVSAvoidstorage redundancy
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system uses copying by creating references or links to existing code rather than allowing duplicate storage. When similar code is detected, the system identifies the original implementation and creates a reference to it, maintaining team autonomy in selecting which code to use while eliminating storage redundancy through shared code instances.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent applies universality by creating a centralized code repository that serves multiple teams simultaneously. The same code implementation can be universally accessed and referenced by multiple teams working on different applications, maintaining team autonomy in their specific implementations while reducing overall storage redundancy through shared universal code assets.

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

3Adaptability or versatility

If code bases are combined from different projects, then organizational integration is improved, but detection of interdependencies becomes more difficult

Engineering Contradiction:
Improveorganizational integrationVSAvoiddetection of interdependencies
Core Design Contradiction:
Adaptability or versatilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent replaces manual mechanical code analysis with automated GenAI-based analysis. The GenAI model automatically scans, parses, and analyzes code from multiple repositories to detect interdependencies, replacing the impractical manual review process that would be required to detect relationships in large combined code bases from different projects.

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

Solution Approach 2:

The system applies parameter changes by transforming code into various analytical representations including semantic vectors, dependency graphs, and feature extractions. These parameter transformations enable the GenAI model to detect interdependencies that would be invisible in raw code form, facilitating organizational integration while making dependency detection tractable.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20250077189A1Service design coordination among developers
Publication Date: 2025.03.06 THE TORONTO DOMINION BANK
  • US20250077189A1 patent drawing
  • US20250077189A1 patent drawing
  • US20250077189A1 patent drawing

AI summary

An example operation may include one or more of receiving a first code base and a second code base from a software repository, wherein each of the first and second code bases comprise source code of a plurality of different software programs, identifying a source code within the first code base that is interdependent with a source code within the second code base based on execution of a generative artificial intelligence (GenAI) model on the first and second code bases, determining a software component to connect the source code within the first code base to the source code within the second code base, and displaying an identifier of the software component via a user interface.