GenAI Code Analysis for Software Redundancy Detection
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Adaptability or versatility
If similar APIs are developed independently by different teams, then team autonomy is maintained, but storage redundancy increases
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.
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.
3Adaptability or versatility
If code bases are combined from different projects, then organizational integration is improved, but detection of interdependencies becomes more difficult
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.
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.
Data Source
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.


