Programming Task Support Material Generation via Knowledge Graph
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
Data Source
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.


