Software Application Grouping via Technical Facet Clustering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large organizations face significant time, labor, and cost burdens when modernizing their IT software portfolios due to the need for manual review of hundreds or thousands of software applications, which is inefficient and costly.

Innovation Solution

Implementing machine learning algorithms to automatically group software applications based on technical patterns or characteristics, reducing the complexity by categorizing them, and using dimensionality reduction and clustering algorithms to visualize and analyze the applications in a more efficient manner.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual review of each software application is conducted, then technical composition understanding is achieved, but time consumption and labor costs increase significantly

Engineering Contradiction:
Improvetechnical composition understandingVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent replaces the manual mechanical review process with an automated machine learning system that uses natural language processing to analyze software documentation and code repositories, extracting technical composition information without human intervention

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

Solution Approach 2:

The patent introduces an intermediate machine learning model that processes software application data and generates structured technical composition profiles, serving as a mediator between raw software data and human analysis needs

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If manual review of each software application is conducted, then technical composition understanding is achieved, but labor costs and burden increase

Engineering Contradiction:
Improvetechnical composition understandingVSAvoidlabor burden
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent replaces the manual mechanical review process with an automated machine learning system that uses natural language processing to analyze software documentation and code repositories, extracting technical composition information without human intervention

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

Solution Approach 2:

The patent enables the software portfolio itself to provide the necessary technical composition information through automated analysis of its own documentation and code, eliminating the need for external manual review labor

Inventive Principle:
Principle #25Self-service

3Productivity

If automated machine learning grouping is implemented, then time and cost are reduced, but automation extent increases

Engineering Contradiction:
Improveanalysis efficiencyVSAvoidautomation level
Core Design Contradiction:
ProductivityVSExtent of automation

Solution Approach 1:

The patent replaces the manual mechanical review process with an automated machine learning system that uses natural language processing to analyze software documentation and code repositories, extracting technical composition information without human intervention

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

Solution Approach 2:

The patent incorporates feedback mechanisms where the machine learning model is trained on extracted technical composition data and continuously improved through validation against ground truth information, ensuring accuracy while maintaining automation

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11947957B2Grouping software applications based on technical facets
Publication Date: 2024.04.02 VMWARE INC
  • US11947957B2 patent drawing
  • US11947957B2 patent drawing
  • US11947957B2 patent drawing

AI summary

Embodiments of the present disclosure provide to techniques for automatically grouping software applications based on their technical patterns/characteristics (i.e., technical facets) via machine learning (ML) algorithms. For instance, a first set of software applications that exhibit a high prevalence of one or more first technical facets may be grouped into a first category, a second set of software applications that exhibit a high prevalence of one or more second technical facets may be grouped into a second category, and so on. Once grouped into categories, the software applications in a given category may be assessed, analyzed, and/or processed together for various purposes.