Rapid application development method
First Claim
1. A processor implemented method for rapid software application development comprising the steps of:
- (a) using a declarative textual language as an internal representation of a software application, wherein the declarative textual language encodes pages, a hierarchy of components, properties and variations, the representation including a scene tree, in which the representation is fully defined with no unknown states, wherein the declarative textual language is strongly typed, the declarative textual language including base types and base classes, object types and visual object types, the declarative textual language allowing new types to be statically declared based on the base classes, wherein the declarative textual language is not a Turing complete language;
(b) displaying in a graphical user interface (GUI) of a software application development editor a list of variations based on or applying to conditions in the software application, each variation being associated with one or more changes in properties or events in the software application, and each variation being a statically declared non-ambiguous state;
(c) enabling a user to select a specific variation, and receiving a user selection of the specific variation, and including the selected specific variation into the declarative textual language internal representation of the software application;
(d) an engine reading the declarative textual language internal representation of the software application, including reading the scene tree representation, to simulate runtime behavior of the software application to display, in the graphical user interface, the user interface implications or consequences of the selection;
and in which the operations of the method are executed by a processor.
1 Assignment
0 Petitions
Accused Products
Abstract
An application development editor displays in a graphical user interface a list or other arrangement of variations based on or applying to conditions in the application, each variation being associated with one or more changes in properties or events in the application. The editor enables a user to select a specific variation and then displays the user interface implications or consequences of that selection. Selecting a specific variation is programmatically equivalent to a specific conditional logic branch or ‘if . . . then’ code sequence. The invention enable someone with no, or very limited, code writing skills, such as a designer, to be able to produce an application with fully functioning, correct and potentially complex conditional logic.
26 Citations
28 Claims
-
1. A processor implemented method for rapid software application development comprising the steps of:
-
(a) using a declarative textual language as an internal representation of a software application, wherein the declarative textual language encodes pages, a hierarchy of components, properties and variations, the representation including a scene tree, in which the representation is fully defined with no unknown states, wherein the declarative textual language is strongly typed, the declarative textual language including base types and base classes, object types and visual object types, the declarative textual language allowing new types to be statically declared based on the base classes, wherein the declarative textual language is not a Turing complete language; (b) displaying in a graphical user interface (GUI) of a software application development editor a list of variations based on or applying to conditions in the software application, each variation being associated with one or more changes in properties or events in the software application, and each variation being a statically declared non-ambiguous state; (c) enabling a user to select a specific variation, and receiving a user selection of the specific variation, and including the selected specific variation into the declarative textual language internal representation of the software application; (d) an engine reading the declarative textual language internal representation of the software application, including reading the scene tree representation, to simulate runtime behavior of the software application to display, in the graphical user interface, the user interface implications or consequences of the selection; and in which the operations of the method are executed by a processor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A software application developed using a processor implementing a method for rapid software application development, the software application embodied on a non-transitory storage medium, the processor configured to:
-
(a) use a declarative textual language as an internal representation of a software application, wherein the declarative textual language encodes pages, a hierarchy of components, properties and variations, the representation including a scene tree, in which the representation is fully defined with no unknown states, wherein the declarative textual language is strongly typed, the declarative textual language including base types and base classes, object types and visual object types, the declarative textual language allowing new types to be statically declared based on the base classes, wherein the declarative textual language is not a Turing complete language; (b) display in a graphical user interface (GUI) of a software application development editor a list of variations based on or applying to conditions in the software application, each variation being associated with one or more changes in properties or events in the software application, and each variation being a statically declared non-ambiguous state; (c) enable a user to select a specific variation, and to receive a user selection of the specific variation, and to include the selected specific variation into the declarative textual language internal representation of the software application; and (d) execute an engine reading the declarative textual language internal representation of the software application, including reading the scene tree representation, to simulate runtime behavior of the application to display, in the graphical user interface, the user interface implications or consequences of that selection.
-
-
28. A system for rapid software application development comprising a processor and a software application development editor embodied on a non-transitory storage medium and executable on the processor, wherein the processor is programmed to use a declarative textual language as an internal representation of a software application, wherein the declarative textual language encodes pages, a hierarchy of components, properties and variations, the representation including a scene tree, in which the representation is fully defined with no unknown states, wherein the declarative textual language is strongly typed, the declarative textual language including base types and base classes, object types and visual object types, the declarative textual language allowing new types to be statically declared based on the base classes, wherein the declarative textual language is not a Turing complete language;
- to display in a graphical user interface (GUI) a list of variations that are based on or applying to conditions in the software application, each variation being associated with one or more changes in properties or events in the software application, and each variation being a statically declared non-ambiguous state;
wherein the processor is further programmed to enable a user to select a specific variation, to receive a user selection of the specific variation, and to include the selected specific variation into the declarative textual language internal representation of the software application; and
to execute an engine reading the declarative textual language internal representation of the software application, including reading the scene tree representation, to simulate runtime behavior of the software application to display, in the graphical user interface, the user interface implications or consequences of that selection.
- to display in a graphical user interface (GUI) a list of variations that are based on or applying to conditions in the software application, each variation being associated with one or more changes in properties or events in the software application, and each variation being a statically declared non-ambiguous state;
Specification