Interactive Programming Method with Immediate Execution Feedback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of computer programming has increased significantly due to the vast number of instructions and the need for more efficient methods to facilitate programmer productivity and accuracy, as conventional programming methods require extensive testing and debugging, leading to increased costs and potential errors.

Innovation Solution

A method involving graphical displays of program instructions and results, allowing temporary instructions to be inserted, accepted, or rejected, with immediate feedback on execution effects, reducing the need for extensive testing and remediation, and utilizing Service Oriented Architecture (SOA) for accessing standardized subroutines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional programming methods with extensive instructions are used, then programmer choices and flexibility are improved, but programming complexity and time are worsened

Engineering Contradiction:
Improveprogrammer choicesVSAvoidprogramming complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the programming process into distinct phases: high-level algorithm design using flowcharts, followed by automatic code generation. This separation allows programmers to work with abstract logical representations without being burdened by syntax details, reducing programming complexity while maintaining flexibility through the flowchart design stage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces flowcharts as an intermediary representation between the programmer's logical intent and the actual code. Flowcharts serve as a mediator that translates high-level algorithmic thoughts into structured code automatically, reducing the complexity of direct programming while preserving programmer choices in the design phase.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If conventional programming methods with extensive testing cycles are used, then program reliability is improved, but programming time and costs are worsened

Engineering Contradiction:
Improveprogram reliabilityVSAvoidprogramming time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary validation of the program logic during the flowchart creation phase. By verifying the correctness of the algorithmic structure before code generation, the system ensures reliability early in the process, eliminating the need for extensive post-generation testing and debugging cycles.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent incorporates immediate feedback mechanisms during flowchart validation, allowing programmers to detect and correct logical errors before code generation. This early feedback loop ensures program reliability while significantly reducing the time spent on later testing and remediation phases.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If manual code writing and testing is used, then program accuracy can be verified, but programmer productivity is worsened

Engineering Contradiction:
Improveprogram accuracyVSAvoidprogrammer productivity
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent implements automatic code generation from flowcharts, allowing the system to serve itself by translating validated logical representations into production-ready code. This self-service capability maintains program accuracy through systematic translation while dramatically improving programmer productivity by eliminating manual coding tasks.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical process of manual code writing and testing with an automated computer-based system. The computer automatically generates code from flowcharts and performs validation, substituting manual verification with systematic automated checking that maintains accuracy while enhancing productivity.

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

Data Source

PatentUS7979839B2Method for employing the computer in the creative act of programming
Publication Date: 2011.07.12 GULA CONSULTING LLC
  • US7979839B2 patent drawing
  • US7979839B2 patent drawing
  • US7979839B2 patent drawing

AI summary

A method is described which permits a computer programmer to write a program with the assistance of the computer itself. The computer will provide instant feedback, following the procedures herein described, to the result of performing each instruction. Therefore, the programmer may instantaneously observe the working of the program as the computer will perform it. Thus any difference in the result produced by the computer from what the programmer expects to happen may be recognized and, if appropriate, corrected. In a higher order implementation of this method the computer will display icons to link the in-process programming to a working routine resident on a remote computer. Thus, the tools and benefits of so-called Service Oriented Architecture (SOA) can be made available to the programmer. Employing the method of this invention, the computer becomes an integral part of the creative process of writing a program.