Spreadsheet Fragmentation for Worksheet Dependency Decoupling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing spreadsheets with multiple interdependent worksheets are difficult to interpret and computationally intensive, often requiring excessive resources and failing to function properly without all input and/or transient worksheets being available.
Innovation Solution
The technique involves fragmenting a spreadsheet into smaller units called fragments, each comprising an output worksheet and the necessary input and transient worksheets, allowing for temporal and physical decoupling, and enabling efficient processing and visualization of dependencies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If spreadsheets have multiple interdependent worksheets, then data processing capability is improved, but computational complexity and execution time increase
Solution Approach 1:
The patent segments the spreadsheet into independent computational graphs where each node represents a worksheet and edges represent data dependencies. This allows the system to process only relevant portions of the spreadsheet independently, reducing overall computational complexity while maintaining data processing capability across multiple worksheets.
2Reliability
If all worksheets are processed together, then data dependencies are maintained, but computational resources are wasted on unavailable data
Solution Approach 1:
The patent implements partial processing by identifying and executing only the computational graphs necessary for available data. The system processes worksheets in parallel based on data availability, avoiding unnecessary computational operations on worksheets that depend on unavailable data, thus reducing energy consumption while maintaining reliability through selective processing.
3Productivity
If worksheets are processed in parallel, then computational performance is improved, but dependency tracking becomes more complex
Solution Approach 1:
The patent introduces a computational graph as an intermediary structure that visually and logically represents data dependencies between worksheets. This graph serves as a mediator that simplifies dependency tracking by providing a clear hierarchical view of data flow, enabling parallel processing while maintaining manageable complexity through structured representation.
4Productivity
If transient worksheets are included in processing, then data transformation is improved, but processing failures occur when transient data is unavailable
Solution Approach 1:
The patent implements dynamic processing by adjusting the computational graph based on data availability. Transient worksheets are included in processing only when their input data is available. The system dynamically modifies which worksheets are processed based on real-time data availability, maintaining data transformation capability while improving reliability through conditional execution.
Data Source
AI summary
The present teachings include techniques and systems for processing spreadsheets at the level of a worksheet or another collection of cells, including the fragmenting of spreadsheets. For example, a spreadsheet may include one or more input worksheets, output worksheets, and/or transient worksheets, where transient worksheets utilize input data in input worksheets to facilitate creation of output data in output worksheets. In particular, fragmenting a spreadsheet may include determining, for each output worksheet, what input and transient worksheets are needed to create output data in the output worksheet, and then creating a plurality of fragments therefrom. Thus, fragmenting a spreadsheet may include a temporal and/or physical decoupling of the spreadsheet’s worksheets. This can be useful for, inter alia, understanding the relationships between a plurality of worksheets, isolating certain processing tasks, editing or interchanging worksheets, and/or for improving computational performance, e.g., by routing particular fragments to appropriate computational resources for processing thereof.


