Software Artifact Recommendation System

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software developers face challenges in identifying the most appropriate software artifacts for their projects from a vast array of available options, as existing methods lack effective scoring, ranking, and recommendation tools, making it difficult to determine the best artifact for specific needs in terms of functionality, security, and industry usage.

Innovation Solution

A system and method that score candidate artifacts based on objective criteria such as quality and community standards, and then scale these scores based on user-specific characteristics, such as industry and intended use, to provide personalized recommendations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If developers manually search and evaluate multiple artifacts to find the most appropriate one for their project, then they can ensure artifact suitability for specific needs, but the time and effort required increases significantly

Engineering Contradiction:
Improveartifact suitabilityVSAvoidartifact selection time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent replaces the manual mechanical process of artifact evaluation with an automated computer-based system that uses algorithms to score and rank artifacts based on multiple criteria including quality metrics, community standards, and user-specific characteristics, thereby eliminating time-consuming manual searching while maintaining reliable artifact selection

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

Solution Approach 2:

The patent introduces an intermediary recommendation system that acts as a mediator between the vast artifact repository and the developer, automatically evaluating and ranking artifacts based on objective criteria (quality, security, community standards) and subjective user preferences, thus bridging the gap between available artifacts and developer needs without requiring direct manual evaluation

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If developers use published artifacts as building blocks to avoid re-writing software, then productivity increases, but the difficulty of locating appropriate existing artifacts increases

Engineering Contradiction:
Improvesoftware development speedVSAvoidartifact location difficulty
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements feedback mechanisms where the system learns from user interactions, ratings, and selections to continuously improve artifact recommendations. The system collects data on which artifacts users select, how they rate them, and what criteria they prioritize, then uses this feedback to refine scoring algorithms and provide increasingly accurate recommendations, making artifact location easier while maintaining high productivity

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent employs visual indicators and ranking displays that highlight the most suitable artifacts based on scoring criteria, making it easy for developers to quickly identify appropriate artifacts among many options. The system presents artifacts in ranked order with visual cues indicating their suitability, thereby reducing the difficulty of locating appropriate artifacts while preserving the productivity benefits of reuse

Inventive Principle:
Principle #32Color changes

3Measurement precision

If the system evaluates multiple criteria for artifact scoring, then the accuracy of recommendations improves, but the complexity of the evaluation system increases

Engineering Contradiction:
Improverecommendation accuracyVSAvoidevaluation system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the complex evaluation process into distinct modular components: quality metric evaluation, community standards assessment, user-specific characteristic matching, and weighted scoring. Each criterion is evaluated independently by separate modules, then results are aggregated to produce the final recommendation score. This segmentation maintains high recommendation accuracy while managing system complexity through modular design

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9043753B2System and method for recommending software artifacts
Publication Date: 2015.05.26 SONATYPE INC
  • US9043753B2 patent drawing
  • US9043753B2 patent drawing
  • US9043753B2 patent drawing

AI summary

A method for recommending at least one artifact to an artifact user is described. The method includes obtaining user characteristic information reflecting preferences, particular to the artifact user, as to a desired artifact. The method also includes obtaining first metadata about each of one or more candidate artifacts, and scoring, as one or more scored artifacts, each of the one or more candidate artifacts by evaluating one or more criteria, not particular to the artifact user, applied to the first metadata. The method further includes scaling, as one or more scaled artifacts, a score of each of the one or more scored artifacts, by evaluating the suitability of each of the one or more scored artifacts in view of the user characteristic information. The method lastly includes recommending to the artifact user at least one artifact from among the one or more scaled artifacts based on its scaled score.