Programming Task Support Material Generation via Knowledge Graph

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developers face challenges in efficiently executing programming tasks across different industries due to industry-specific knowledge gaps, leading to inefficient and ineffective code generation, as they need to sift through extensive and diverse resources to become familiar with new industry practices and ontologies.

Innovation Solution

A system that identifies similar completed tasks from a database, extracts supporting documentation, and generates customized supporting material based on a developer's expertise, using cross-industry ontology handling and semantic analysis to provide relevant information in a navigable graph format, tailored to the developer's level of abstraction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If developers sift through extensive and diverse resources to become familiar with new industry practices and ontologies, then they can ensure compliance with industry-specific practices, but the time required to complete programming tasks increases significantly

Engineering Contradiction:
Improvecompliance with industry-specific practicesVSAvoidtime to become familiar with new industry practices
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by pre-processing and organizing industry-specific knowledge into a structured knowledge graph before developers need it. The knowledge graph is built in advance from completed tasks and supporting documentation, so when a developer encounters a new industry, the relevant information is already organized and ready for immediate retrieval, eliminating the need for time-consuming onboarding reading.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system extracts only the essential industry-specific knowledge and ontologies from extensive resources and diverse completed tasks. By filtering and extracting relevant information into a condensed knowledge graph structure, the system removes unnecessary details while preserving critical compliance information, allowing developers to access only what is needed without sifting through entire resource collections.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If developers access extensive and diverse resources to learn new industry practices, then they can ensure code quality and compliance, but the complexity of finding and processing relevant information increases

Engineering Contradiction:
Improvecode quality and complianceVSAvoidcomplexity of finding and processing relevant information
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the complex task of finding relevant information by dividing it into discrete knowledge units within the knowledge graph. Each node represents a specific concept, entity, or practice from the industry ontology, and edges represent relationships between these units. This segmentation allows the system to retrieve and present information in organized, manageable chunks rather than requiring developers to navigate unstructured extensive resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The knowledge graph serves as an intermediary between the raw, extensive resources and the developer's information needs. It mediates by transforming diverse, unstructured industry knowledge into a structured, queryable format that bridges the gap between available resources and what developers actually need, simplifying the information processing workflow.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the system provides detailed industry-specific supporting material, then developers can ensure compliance with industry practices, but the amount of information to process increases

Engineering Contradiction:
Improvecompliance with industry practicesVSAvoidamount of supporting material to process
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system applies local quality by tailoring the level of detail and specificity of supporting material to the individual developer's needs and the specific task at hand. Rather than providing uniform extensive documentation, the knowledge graph allows the system to retrieve and present only the locally relevant industry-specific information needed for that particular programming task, adjusting the quantity and depth of information to match actual requirements.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20230140791A1Programming task supporting material generation
Publication Date: 2023.05.04 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20230140791A1 patent drawing
  • US20230140791A1 patent drawing
  • US20230140791A1 patent drawing

AI summary

The present specification describes a computer-implemented method. According to the method, a programming task to be executed is received. A completed task that is similar to the programming task to be executed is identified from a database of completed tasks. Supporting documentation associated with the completed task is extracted and supporting material associated with the completed task is generated and transmitted to a computing device which is to execute the programming task.