Visual Programming Component Segmentation for Non-Technical Users

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of modern programming systems, such as those using Delphi, C++, or Visual Basic, has made it difficult for non-specialists to write computer programs without extensive training or education, as they require advanced knowledge and skills.

Innovation Solution

A computer-supported method and system that allows users to create and execute program code using pre-defined program components categorized as 'run' and 'function', with automated rules for interconnecting these components, enabling users to create programs without needing to write code directly, using a visual representation and guided selection of program components and instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If modern programming systems (Delphi, C++, Visual Basic) are used, then programming power and functionality are improved, but the difficulty of operation and training requirements increase considerably

Engineering Contradiction:
Improveprogramming functionalityVSAvoidprogramming accessibility
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The programming system is segmented into two distinct categories of program components: 'run' components that execute sequentially and 'function' components that execute in parallel. This segmentation allows users to work with simplified, categorized building blocks rather than complex programming constructs, making the system accessible to non-specialists while maintaining powerful functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary layer between the user and the complex programming system. Instead of directly manipulating complex code structures, users work with simplified program components that are automatically interconnected by predetermined rules. This intermediary layer shields users from complexity while enabling access to powerful programming capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If conventional programming methods are used, then program complexity and functionality are achieved, but the time and cost for learning and training increase

Engineering Contradiction:
Improveprogram functionalityVSAvoidtraining time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by automatically interconnecting program components according to predetermined rules. The execution environment is pre-configured to understand the two categories of components and their interconnection rules, so when users assemble components, the system automatically handles the complex wiring and sequencing, eliminating the need for users to learn complex programming syntax and structure.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses a visual copying approach where users can select and copy program components from a library and place them in the program structure. Instead of writing code from scratch or learning complex syntax, users work with pre-defined, reusable component templates that can be copied and configured through simple visual operations.

Inventive Principle:
Principle #26Copying

3Ease of operation

If program components are provided with predetermined interconnection rules, then ease of use is improved, but the flexibility in programming structure is reduced

Engineering Contradiction:
Improveprogramming simplicityVSAvoidprogram structure flexibility
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The system employs dynamic execution modes where the same program components can execute differently based on runtime conditions. The 'run' components execute sequentially but can be dynamically activated or deactivated based on program state, while 'function' components execute in parallel when their prerequisites are met. This dynamic behavior provides flexibility without requiring complex structural arrangements from users.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7685564B2System and method of producing computer programming
Publication Date: 2010.03.23 RENNER PETER
  • US7685564B2 patent drawing
  • US7685564B2 patent drawing
  • US7685564B2 patent drawing

AI summary

In order to enable persons without particular programming knowledge to themselves write their own computer programs, there is proposed a computer-supported method of producing and/or executing program code, with at least one visualization surface for the representation of establishable objects, by way of which information, in particular data, are inputted and outputted when executing the program code, wherein objects of the visualization surface are writingly and readingly accessed by means of the produced program code. The method according to the invention is distinguished in that program components of the category run and function are provided for selection, and in addition instructions for interconnecting program components which regulate the call-up of the program components and their serial or simultaneous execution. The invention also concerns a corresponding system with an execution environment for carrying out such a method.