Spreadsheet Cell Dynamic Update via JMS Broker Subscription

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current spreadsheet applications lack the ability to automatically update cells with data received from a message broker, requiring manual user intervention and proprietary protocols for updating, which is inefficient and labor-intensive, especially for real-time updates of dynamic data.

Innovation Solution

A method and system that utilize the publish/subscribe protocol to dynamically update spreadsheet cells by linking them to external messaging sources through a graphical user interface, using Java Messaging Service (JMS) and a spreadsheet writing API, allowing users to subscribe to specific topics without needing to know the linking parameters, and using SQL filtering to receive only relevant updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual updating of spreadsheet cells is used, then data can be updated, but the process is labor-intensive and time-consuming

Engineering Contradiction:
Improvedata update efficiencyVSAvoidtime for manual data entry
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The spreadsheet cell automatically updates itself by subscribing to message broker topics. The cell monitors for incoming messages matching its subscription criteria and updates its value without user intervention, making the system self-servicing rather than requiring manual data entry.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system establishes a feedback loop where the cell subscribes to receive messages from the message broker, automatically receives update notifications when matching messages are published, and refreshes its display value based on the incoming data, creating a continuous automated update cycle.

Inventive Principle:
Principle #23Feedback

2Extent of automation

If proprietary spreadsheet-writing protocols are used, then programmatic updates are enabled, but user complexity increases and requires knowledge of linking parameters

Engineering Contradiction:
Improveprogrammatic update capabilityVSAvoidlinking parameter configuration
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer between the message broker and the spreadsheet cell. This intermediary handles the complex subscription management, message filtering, and protocol translation, while the cell itself only needs simple subscription criteria, effectively hiding the complexity from the end user.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The spreadsheet cell is enhanced with multi-functionality, combining traditional spreadsheet operations with automated message subscription and filtering capabilities. The cell can both display data and autonomously subscribe to message topics, filtering, and update itself based on incoming messages.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If real-time updates are implemented, then data freshness is improved, but system complexity and resource usage increase

Engineering Contradiction:
Improvedata freshnessVSAvoidupdate mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of subscribing to all possible messages, the cell implements partial action by subscribing only to specific message topics and filtering for relevant messages using SQL-like criteria. This selective approach ensures real-time updates for needed data while avoiding unnecessary processing of irrelevant messages.

Inventive Principle:
Principle #16Partial or excessive action

4Ease of operation

If automatic subscription to message topics is enabled, then manual effort is reduced, but the system requires knowledge of messaging protocols

Engineering Contradiction:
Improvedata update operationVSAvoidmessaging protocol knowledge
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer between the message broker and the spreadsheet cell. This intermediary handles the complex subscription management, message filtering, and protocol translation, while the cell itself only needs simple subscription criteria, effectively hiding the complexity from the end user.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7530077B2Dynamic update of changing data in user application via mapping to broker topic
Publication Date: 2009.05.05 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US7530077B2 patent drawing
  • US7530077B2 patent drawing
  • US7530077B2 patent drawing

AI summary

A method and service for enabling a smallest unit of variable data within a data space of a user application to be dynamically updated using an external source. The application GUI is enhanced with a dynamic update utility (DUU) that enables the data unit to be selected and linked to the broker topic. A list of available topics is presented for selection by the user, and the data unit automatically linked to the selected broker topic without requiring user knowledge of the specific linking parameters of the external source. A JMS client application is provided containing a message listener and an application writing protocol. A subscriber is defined for the data unit and subscribes to the particular event broker topic hosted at a JMS provider. When the event broker receives a publication from the data publication source, a copy of the published data is forwarded to the message listener associated with the subscriber, and the message listener provides the data to the application writing protocol. The application writing protocol then automatically overwrites the data unit with the published data.