IP Library Granted Patent US 11,275,754
Granted Patent B2
US 11,275,754 · App. 16/057,103 · Granted Mar 15, 2022

Application development platform using pre-defined logic based on assumptions

Inventors: Douglas A. Wilson (Deerfield, IL); Randall Eugene Knapp (Evanston, IL); Gus Koumarelas (Park Ridge, IL); Daniel Binyamin Weiner (Chicago, IL); Craig James Brentz (Chicago, IL)
Assignee: Breakthrough Technologies
G06F16/252G06F9/448G06F9/54G06F16/211G06F16/24549
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 11,275,754
App. No.
16/057,103
Granted
Mar 15, 2022
Kind
B2
Abstract

A method for generating an application includes the steps of defining a plurality of assumptions, providing an input mode configured to receive input, generating a schema configured to enable the application to access a data model, generating an interface for the data model in response to the assumptions and generating functions to perform database operations for the data model at runtime for each request. The input may enable customization of objects of the data model. The assumptions may provide constraints for the input. The constraints may ensure the schema is valid. The assumptions may define a location for displaying the objects on the interface. The input mode may enable the input to customize the objects via a guided indirect code implementation. The interface may enable a user to modify properties of the objects. The interface may comprise a dynamic application programming interface to perform the database operations.

Claims (44)

1. A method for generating an application, comprising the steps of:

(A) defining a plurality of assumptions;

(B) providing a data input mode configured to receive user input, wherein (i) said user input enables a customization of one or more objects of a data model for said application and (ii) said assumptions provide constraints for said user input;

(C) generating a database schema configured to enable said application to access said data model, wherein (i) said database schema is configured to be altered in response to said user input, (ii) altering said database schema comprises adding or removing data structures after said database schema has been generated and (iii) said constraints ensure said database schema is valid after said database schema has been altered;

(D) generating a database interface for said data model in response to said assumptions, wherein said assumptions define a location for displaying said objects on said database interface; and

(E) generating functions to perform database operations for said data model at runtime for each request, wherein

(a) said data input mode enables said user input to customize said objects via a guided indirect code implementation,

(b) said database interface enables a user to modify properties of said objects,

(c) said database interface comprises a dynamic application programming interface configured to perform said database operations for said data model,

(d) said guided indirect code implementation is a no code implementation configured to provide pre-defined logic constructs,

(e) said pre-defined logic constructs comply with said constraints,

(f) said constraints for said no code implementation does allow code syntax as said user input,

(g) said no code implementation is enabled by said data input mode,

(h) said data input mode comprises a drag and drop interface,

(i) said drag and drop interface represents said pre-defined logic constructs as shapes that fit together according to said constraints and

(j) said shapes of said pre-defined logic constructs are configured to restrict said pre-defined logic constructs from fitting together in said drag and drop interface to prevent an illegal operation according to said database schema.

2. The method according to claim 1 , wherein said location defined by said assumptions is adjusted without input from said user.

3. The method according to claim 1 , wherein said assumptions are defined before said user has access to said data input mode.

4. The method according to claim 1 , wherein (i) said assumptions comprise pre-defined locations for said objects and (ii) said pre-defined locations are based on a class of said objects.

5. The method according to claim 1 , wherein said assumptions are defined at a software level.

6. The method according to claim 1 , wherein said data input mode is configured to enable altering said data schema to react to said user input based on said assumptions.

7. The method according to claim 1 , wherein (i) said guided indirect code implementation further comprises a low code implementation configured to provide said pre-defined logic constructs, and (ii) said pre-defined logic constructs are expandable using said code syntax.

8. The method according to claim 7 , wherein (i) said low code implementation is enabled by said data input mode and (ii) said data input mode comprises a drop-down menu interface with pre-defined options that conform to said constraints.

9. The method according to claim 1 , wherein said constraints for said no code implementation are configured to restrict customization options to enable a user to provide said user input to customize said one or more objects without using said code syntax.

10. The method according to claim 1 , wherein said assumptions are updatable.

11. The method according to claim 1 , wherein said data input mode and said database interface are accessible from and adapt to a screen size of a desktop computer, a laptop computer, a smartphone and a tablet computing device.

12. The method according to claim 1 , wherein said database operations comprise one or more of a search, a filter, an edit and a print.

13. The method according to claim 1 , wherein said guided indirect code implementation enables a user to develop said application quickly and without formal training by providing limitations to said customization based on said assumptions.

14. A storage medium containing processor executable instructions configured to perform the steps of:

(A) defining a plurality of assumptions;

(B) providing a data input mode configured to receive user input, wherein (i) said user input enables a customization of one or more objects of a data model for an application and (ii) said assumptions provide constraints for said user input;

(C) generating a database schema configured to enable said application to access said data model, wherein (i) said database schema is configured to be altered in response to said user input, (ii) altering said database schema comprises adding or removing data structures after said database schema has been generated and (iii) said constraints ensure said database schema is valid after said database schema has been altered;

(D) generating a database interface for said data model in response to said assumptions, wherein said assumptions define a location for displaying said objects on said database interface; and

(E) generating functions to perform database operations for said data model at runtime for each request, wherein

(a) said data input mode enables said user input to customize said objects via a guided indirect code implementation,

(b) said database interface enables a user to modify properties of said objects,

(c) said database interface comprises a dynamic application programming interface configured to perform said database operations for said data model,

(d) said guided indirect code implementation is a no code implementation configured to provide pre-defined logic constructs,

(e) said pre-defined logic constructs comply with said constraints,

(f) said constraints for said no code implementation does allow code syntax as said user input,

(g) said no code implementation is enabled by said data input mode,

(h) said data input mode comprises a drag and drop interface,

(i) said drag and drop interface represents said pre-defined logic constructs as shapes that fit together according to said constraints and

(j) said shapes of said pre-defined logic constructs are configured to restrict said pre-defined logic constructs from fitting together in said drag and drop interface to prevent an illegal operation according to said database schema.

Assignments (2)
SECURITY INTEREST Recorded Jun 3, 2024
From: BREAKTHROUGH TECHNOLOGIES, LLC
To: FORTISTAR BREAKTHROUGH HOLDINGS LLC, AS COLLATERAL AGENT
Reel/Frame 067603/0557 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2018
From: WILSON, DOUGLAS A.; KNAPP, RANDALL EUGENE; KOUMARELAS, GUS; WEINER, DANIEL BINYAMIN; BRENTZ, CRAIG JAMES
To: BREAKTHROUGH TECHNOLOGIES
Reel/Frame 046993/0859 →
Continuity (2)
Provisional Application 62687450 · Jun 20, 2018
Related Publication 20190392043A1 · Dec 26, 2019
Cited By (3)
US 12,271,291 US 12,585,573 US 12,711,303