Graphical Statechart Editor with Embedded Data Flow Code
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional text-based programming languages limit user efficiency in creating computer programs, especially for those without advanced programming skills, as they require complex coding and can hinder graphical representation of software functionality.
Innovation Solution
A system and method that enables users to create and define statecharts using graphical data flow code, allowing for the creation of guard conditions and actions within a statechart development environment, where users can interactively design statecharts with graphical icons and connectors, and convert them into graphical data flow programs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If text-based programming languages are used, then programming functionality can be achieved, but user efficiency and accessibility are reduced due to complex coding requirements
Solution Approach 1:
The patent replaces text-based mechanical coding with a graphical programming system where users visually assemble program logic through drag-and-drop operations. The graphical interface substitutes keyboard typing and syntax memorization with intuitive visual manipulation of programming elements, directly resolving the contradiction between ease of operation and programming complexity.
Solution Approach 2:
The system uses visual icons and graphical representations to copy and represent programming concepts, making abstract logic tangible. Users work with visual copies of program structures rather than text, reducing the cognitive load and complexity barrier while maintaining full programming functionality.
2Ease of operation
If graphical programming is used, then ease of use improves, but the ability to represent detailed program logic may be limited
Solution Approach 1:
The patent segments complex program logic into discrete graphical elements (nodes, edges, guards, actions) that can be independently manipulated. Each element represents a specific logical function, allowing detailed program logic to be constructed through composition of simple visual components without losing informational fidelity.
Solution Approach 2:
The system adds spatial and visual dimensions to program representation. Instead of linear text, logic is distributed across two-dimensional space with visual relationships (positioning, connectivity, grouping) encoding logical relationships, thereby preserving and enhancing program logic representation while improving ease of use.
3Adaptability or versatility
If statecharts are created with guard conditions and actions, then program functionality increases, but the complexity of defining these conditions increases
Solution Approach 1:
The patent replaces text-based guard condition definition with graphical data flow constructs. Users define complex guard logic by visually assembling data flow elements rather than writing conditional statements, maintaining high functionality while reducing the perceived and actual complexity of definition.
Solution Approach 2:
The system introduces graphical data flow diagrams as an intermediary layer between user intent and statechart logic. This intermediary allows users to work with visual metaphors for conditions and actions, translating complex logical requirements into intuitive graphical configurations without direct engagement with programming syntax.
Data Source
AI summary
One embodiment of the invention comprises a system and method enabling a guard condition for a statechart to be defined using graphical data flow code. Another embodiment of the invention comprises a system and method enabling an action for a statechart to be defined using graphical data flow code. The statechart may be created in response to user input, e.g., user input to a statechart development environment that includes a graphical statechart editor. The graphical data flow code that defines the guard condition or the action may be created in response to user input to a graphical data flow code editor. In some embodiments the graphical data flow code editor may be integrated with or embedded in the graphical statechart editor.


