In-place UI and Dataflow Modeling for GUI Fragment Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software developers face challenges when working with complex applications due to information overload and inefficient interaction between UI and dataflow design modes in GUI builders, leading to cluttered interfaces and difficulties in managing relationships between UI and dataflow elements.

Innovation Solution

The implementation of in-place UI and dataflow modeling within a single design area, allowing developers to switch between UI and dataflow design modes for specific GUI fragments using drag-and-drop techniques and 'switch' controls, facilitating intuitive and efficient dataflow design by managing fewer dataflow elements at a time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If developers work with multiple design modes (UI design mode, dataflow design mode, source code editor mode) simultaneously in the same application builder tool, then productivity increases and integration errors are minimized, but developers become overloaded with information and the interface becomes cluttered

Engineering Contradiction:
Improvesoftware development productivityVSAvoidinterface complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The design area is divided into multiple GUI fragments, each representing a separate UI component or section. Developers can switch between UI and dataflow design modes for individual fragments independently, rather than managing all elements in a single unified view. This segmentation reduces the information overload by allowing developers to focus on one fragment at a time while maintaining the ability to work with multiple design modes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different GUI fragments can be in different design modes simultaneously. For example, one fragment can be in UI design mode while another is in dataflow design mode. This local quality approach allows developers to apply the most appropriate design mode to each specific fragment based on its complexity and requirements, improving productivity without overwhelming the developer with all possible modes at once.

Inventive Principle:
Principle #3Local quality

2Loss of information

If all layout and data aspects are displayed at once to provide comprehensive design information, then design completeness is improved, but layout realism deteriorates and the interface becomes cluttered

Engineering Contradiction:
Improvedesign information completenessVSAvoidinterface usability
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The design area dynamically switches between UI design mode and dataflow design mode for each GUI fragment based on user selection. When in UI design mode, the fragment displays visual layout elements and controls. When switched to dataflow design mode, the same fragment displays dataflow elements and relationships. This dynamic switching allows comprehensive design information to be accessed while maintaining a clean, uncluttered interface at any given moment.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces a temporal dimension to the display of design information by allowing mode switching. Instead of displaying all information spatially at once (which causes clutter), the system provides different views at different times through mode switching. Developers can toggle between UI and dataflow perspectives for each fragment, ensuring both layout realism and dataflow information are accessible without overlapping visual noise.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Difficulty of detecting and measuring

If developers manage complex relationships between all UI controls and dataflow elements in a single view, then relationship visibility is improved, but the complexity of managing these relationships increases

Engineering Contradiction:
Improverelationship visibilityVSAvoidrelationship management complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

Relationships between UI controls and dataflow elements are managed at the fragment level rather than globally. Each GUI fragment can be switched to dataflow design mode to reveal and manage its specific dataflow elements and relationships in isolation. This segmentation makes relationships visible and manageable by limiting the scope to relevant elements within each fragment, reducing the overall complexity of relationship management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The GUI fragment acts as an intermediary between the UI design view and the dataflow design view. When developers need to manage relationships, they switch the specific fragment to dataflow design mode, which serves as an intermediate state revealing the dataflow structure for that fragment only. This intermediary approach maintains relationship visibility while reducing management complexity by focusing on fragment-level relationships rather than application-wide relationships.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP2388692B1In-place user interface and dataflow modeling
Publication Date: 2015.07.29 SAP SE
  • EP2388692B1 patent drawingFigure 1A~1B
  • EP2388692B1 patent drawingFigure 2A~2B
  • EP2388692B1 patent drawingFigure 3

AI summary

Systems and methods for in-place user interface (UI) and dataflow modeling, including a number of UI elements of a graphical user interface (GUI) grouped in several GUI fragments. A first fragment of the several GUI fragments is switched from UI design mode to dataflow design mode, where the UI elements are replaced by data elements. The data elements in the first fragment may be related to define one part of a dataflow. A second fragment of the several GUI fragments is separately switched from UI design mode to dataflow design mode, where the UI elements are replaced by data elements. The data elements of the second fragment may be related to define another part of the dataflow. A relationship is created between the data elements of the first fragment and the data element of the second fragment based on the dataflow.