Source Code Module Inspection for License Compliance Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing and verifying the compliance of open source code modules within software projects is complex due to varying license provisions and dependencies, making it difficult to ensure compliance and prepare deployable build artifacts.

Innovation Solution

A system and method for inspecting, verifying, and building source code modules by generating a build list, obtaining metadata, identifying licenses, and applying rules to determine compliance, which allows for the creation of a deployable build artifact with a compliance report.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If developers manually inspect and verify open source code modules, then compliance accuracy is improved, but time consumption and operational complexity increase significantly

Engineering Contradiction:
Improvecompliance verification accuracyVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system enables automated self-verification of compliance by retrieving license information from remote servers, applying predefined rules automatically, and generating compliance reports without manual intervention. The build artifact inspection process autonomously identifies source code modules, fetches their metadata, and determines compliance status.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Manual inspection processes are replaced with automated computational systems. The patent substitutes human reviewers with an automated pipeline that retrieves metadata, applies compliance rules, and generates reports programmatically, eliminating the need for manual verification while maintaining accuracy.

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

2Reliability

If comprehensive metadata is collected for all source code modules, then compliance verification completeness is improved, but data processing complexity and storage requirements increase

Engineering Contradiction:
Improvecompliance verification completenessVSAvoiddata processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system extracts only the essential compliance-related metadata from source code modules, such as license information, copyright notices, and dependency declarations. Rather than processing all available data, the patent selectively retrieves and processes only the metadata fields necessary for compliance verification.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The compliance verification process is segmented into distinct stages: retrieving build lists, obtaining metadata for specific modules, analyzing license information, applying compliance rules, and generating reports. This segmentation allows the system to process data in manageable chunks rather than handling all metadata simultaneously.

Inventive Principle:
Principle #1Segmentation

3Productivity

If automated rule application is implemented for compliance checking, then verification efficiency is improved, but rule configuration complexity increases

Engineering Contradiction:
Improveverification efficiencyVSAvoidrule configuration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal rule engine that can handle multiple types of compliance requirements through a single configurable framework. The same infrastructure supports various license types (GPL, MIT, Apache), different compliance policies, and multiple verification scenarios, reducing the need for separate configurations for each case.

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

Data Source

PatentUS9904614B2Source code inspection and verification
Publication Date: 2018.02.27 NODESOURCE INC
  • US9904614B2 patent drawing
  • US9904614B2 patent drawing
  • US9904614B2 patent drawing

AI summary

A source code module inspection method comprising generating a build list, wherein the build list comprises a list of one or more source code modules, obtaining, from a remote server, the one or more source code modules and metadata associated with the one or more source code modules, accessing at least a portion of the metadata for each of the one or more source code modules, identifying licenses associated with the one or more source code modules based on the build list, and generating a source code module summary for the one or more source code modules, wherein the source code module summary identifies the one or more source code modules, licenses associated with the one or more source code modules, and comprises the portion of the metadata for each of the one or more source code modules.