Automated Software License Attribution and Compliance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software developers face a significant burden in manually tracking and assessing third-party licensing requirements due to the recursive nature of dependencies in complex software applications, which can lead to potential licensing issues and compliance challenges.

Innovation Solution

A system and method for determining attribution associated with licensed software code, which receives a source application codebase, identifies dependencies, outputs license attributions, combines and de-duplicates attribution sets, and generates notifications for potential licensing issues, thereby automating the process of determining third-party license attribution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual tracking and assessment of third-party licensing requirements is performed, then compliance accuracy can be maintained, but the time and effort required increases significantly

Engineering Contradiction:
Improvelicensing compliance accuracyVSAvoidtime for license assessment
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system enables self-service automated license compliance assessment by having the software automatically traverse dependency graphs, collect license information, and generate compliance reports without human intervention, resolving the contradiction between manual accuracy and time consumption

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical manual process of license tracking with an automated computational system that uses algorithms to traverse dependency graphs and assess compliance, maintaining accuracy while dramatically reducing time requirements

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

2Reliability

If comprehensive dependency analysis is performed to ensure license compliance, then licensing issues can be detected, but the complexity of the process increases

Engineering Contradiction:
Improvedetection of licensing issuesVSAvoidcomplexity of license tracking process
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system introduces an intermediary automated license assessment tool that mediates between the complex dependency graph and the developer, simplifying the process by automatically navigating the complexity while ensuring comprehensive license issue detection

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If automated license assessment is implemented, then productivity is improved, but the system complexity increases

Engineering Contradiction:
Improvespeed of license assessmentVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system achieves high productivity through a universal automated assessment engine that can handle multiple license types and dependency scenarios through a single integrated process, improving speed while managing system complexity through consolidation rather than proliferation of separate tools

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

Data Source

PatentUS11971965B2System and method for determining attribution associated with licensed software code
Publication Date: 2024.04.30 ORACLE INT CORP
  • US11971965B2 patent drawing
  • US11971965B2 patent drawing
  • US11971965B2 patent drawing

AI summary

In accordance with an embodiment, described herein is system and method for use with software application development environments, for determining attribution associated with licensed software code. The system can receive as input an indication of a source application codebase for a software application, determine dependencies on third-party modules, libraries, or other software code, and output associated license attributions for that codebase. Optionally, the system can combine and/or de-duplicate multiple sets of attributions associated with a source application codebase, or generate a set of differences between two versions of attributions, to illustrate changes between the versions. In accordance with an embodiment, if the system detects potential licensing issues associated with the use of third-party modules, libraries, or other software code, then an appropriate notification can be generated.