IP Library Granted Patent US 7,853,867
Granted Patent B2
US 7,853,867 · App. 10/857,929 · Granted Dec 14, 2010

Modular application development in a spreadsheet using indication values

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,853,867
App. No.
10/857,929
Granted
Dec 14, 2010
Kind
B2
Abstract

A graphical application developing and managing environment is described capable of representing and editing program modules using multiple display formats, which include embedding source code written in a functional language into a spreadsheet-like format. Methods are described for enabling the sharing of program modules by defining standardized interfaces into program modules and existing documents and by centrally locating module definitions. A patchwork mechanism is described requiring only basic spreadsheet editing skills on behalf of the user, enabling a user of the environment to connect external documents and program modules into a new program application. The invention allows complicated programming and simple end-user programming to be achieved within a unified environment and allows the execution of program modules and tracing of variables simultaneously with the writing of a program application. The invention defines methods for representing the various parts of a source code, defining a program application, along with the application icon as determined by a user creating the application and thereby making parts of the source code accessible to end-users for run-time execution.

Claims (24)

1. A method of representing program variables, in a cell frame displayed on a display device, specified by an advanced functional language, the advanced functional language being defined as a programming language capable of handling and returning variables of advanced types in addition to text and numeric derived variable types and in which each of the program variables can be evaluated, based on its dependent input variables, to a uniquely defined value, the method comprising:

(a) communicating with the display device connected to a process device,

(b) accessing the cell frame containing multiple cells displayed on said display device,

(c) displaying text or numbers or icons or other symbols in said cell frame,

(d) locating and accessing at least one external software component on a network or from one or more central locations and executing each said software component and representing each resulting object as one of said program variables of a more advanced type than the numeric derived or text types,

(e) associating said program variables with the multiple cells in said cell frame,

(f) accessing said program variables, and

(g) displaying in the multiple cells, associated with said program variables, indication values, containing text and/or icons or other symbols as determined by an indication value function applied to each of said program variables,

thereby facilitating a platform for testing, using and extending said external software components in a spreadsheet like environment.

2. The method of claim 1 , further comprising displaying a full value of at least some of said program variables.

3. The method of claim 2 , further comprising editing values of at least some of said program variables by editing the full value of the variables.

4. The method of claim 1 , further comprising communicating with an input device connected to said process device for editing of said program variables within said cell frame.

5. A system for representing program variables in a cell frame displayed on a display device, specified by an advanced functional language, the advanced functional language being defined as a programming language capable of handling and returning variables of advanced types in addition to text and numeric derived variable types and in which each of the program variables can be evaluated, based on its dependent input variables, to a uniquely defined value, the system comprising:

(a) means for communicating with the display device connected to a process device,

(b) means for accessing the cell frame containing multiple cells displayed on said display device,

(c) means for displaying text or numbers or icons or other symbols in said cell frame,

(d) means for locating and accessing at least one external software component on a network or from one or more central locations and executing each said software component and representing each resulting object as one of said program variables of a more advanced type than the numeric derived or text types,

(e) means for associating said program variables with the multiple cells in said cell frame,

(f) means for accessing said program variables, and

(g) means for displaying in the multiple cells, associated with said program variables, indication values, containing text and/or icons or other symbols as determined by an indication value function applied to each of said program variables,

thereby facilitating a platform for testing, using and extending the external components in a spreadsheet like environment.

6. The system of claim 5 , further including means for displaying a full value of at least some of said program variables.

7. The system of claim 6 , further including means for editing values of at least some of said program variables by editing the full value of the variables.

8. The system of claim 5 , further including means for communicating with an input device connected to said process device for editing of said program variables within said cell frame.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2011
From: QZR IP HOLDINGS, LLC
To: SPYSCREEN LIMITED LIABILITY COMPANY
Reel/Frame 027354/0989 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2011
From: EGILSSON, AGUST SVERRIR
To: QZR IP HOLDINGS, LLC
Reel/Frame 027355/0004 →
Continuity (5)
Continuation 0978129400 · Feb 13, 2001
Division 0869091900 · Aug 1, 1996
Continuation In Part PCTDK960008000 · Feb 22, 1996
Continuation In Part 0839216400 · Feb 22, 1995
Related Publication 20040225957A1 · Nov 11, 2004