Software Feature Metadata Objects for Code Usage Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for tracking and discovering the usage of software code across independently developed or customized applications are inefficient, often relying on manual or inaccurate techniques, and require excessive resources.

Innovation Solution

A method utilizing software feature metadata objects to search for and identify programming code, where a search query is received, and feature metadata objects map programming features to software artifacts, enabling accurate and comprehensive tracking of code usage across applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual or improvised techniques are used to track code usage, then resource consumption is reduced, but accuracy and completeness of search results deteriorate

Engineering Contradiction:
Improveaccuracy of code usage trackingVSAvoidresource consumption
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The system performs preliminary action by automatically generating and storing feature metadata objects during the software development process. These metadata objects contain pre-computed information about programming features, software artifacts, and their relationships. When a search is executed, the system queries these pre-prepared metadata objects rather than performing complex analysis on the actual code, thereby achieving high accuracy with minimal resource consumption during runtime.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If comprehensive code searches are performed to ensure complete results, then measurement precision improves, but execution time increases

Engineering Contradiction:
Improvecompleteness of search resultsVSAvoidsearch execution time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system extracts essential information about programming features and their relationships into separate feature metadata objects. Instead of searching through entire codebases to find feature usage, the system queries these extracted metadata objects which contain pre-organized information about which software artifacts implement which programming features. This extraction approach ensures complete and accurate results while maintaining fast search execution.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If detailed knowledge of implementation is required to track code usage, then measurement precision improves, but ease of operation deteriorates

Engineering Contradiction:
Improveaccuracy of artifact usage identificationVSAvoiduser expertise requirement
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system introduces feature metadata objects as intermediaries between users and the actual code implementation details. These metadata objects abstract away the complexity of code analysis by pre-processing and organizing information about programming features, their implementations, and relationships. Users can perform accurate code usage tracking by simply querying these metadata objects without needing to understand or analyze the underlying code implementation, thus maintaining high accuracy while improving ease of operation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11907238B2Metadata-based software artifact search
Publication Date: 2024.02.20 SAP SE
  • US11907238B2 patent drawing
  • US11907238B2 patent drawing
  • US11907238B2 patent drawing

AI summary

Software feature metadata objects and software artifact search, identification, and tracking is provided herein. A software artifact can have an associated software feature metadata object. A software feature metadata object can include metadata describing or defining at least in part the software artifact. The software feature metadata object can include one or more defined queries for identifying the software artifact in applications or programming code. The software feature metadata object can include one or more identifiers for composite software artifacts which integrate the software artifact corresponding to the software feature metadata object. The software feature metadata object can be accessed to obtain metadata about the corresponding software artifact for tracking usage, integration, or other activities, which can be provided for reporting or analysis. The software feature metadata object can include a multiplicity of metadata, such as identification queries, for multiple application sources where the software artifact may be integrated.