IP Library Granted Patent US 7,921,408
Granted Patent B2
US 7,921,408 · App. 12/633,155 · Granted Apr 5, 2011

System and method for applying development patterns for component based applications

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,921,408
App. No.
12/633,155
Granted
Apr 5, 2011
Kind
B2
Abstract

A computing device and method for coordinating the development of a client application including application components comprising one or more of at least one of a data component, a message component or a screen component, having corresponding component definitions, or a workflow component comprising a series of instructions. A first development pattern module configured for interaction with a development environment is provided by a computer user interface, the first development pattern module configured for selecting a first pattern from a plurality of patterns based on an application component type central to the client application, the first development pattern module for guiding a user interface with a plurality of predefined steps to coordinate a development of the application components through user input events via the user interface in accordance with the first pattern.

Claims (35)

1. A method of developing a client application including application components comprising one or more of a data component, a message component, a screen component, and a workflow component, the data component, the message component and the screen component having corresponding component definitions, the workflow component comprising a series of instructions, the method comprising:

interacting with a development environment provided by a user interface;

selecting a first pattern from a plurality of patterns based on an application component type central to the client application;

providing guidance on the user interface through the first pattern with a plurality of predefined steps in accordance with the first pattern to coordinate the development of a application components through user input events via the user interface;

selecting a first module corresponding to application component types associated with the first pattern; and

developing by the first module definitions of at least one of the application components through interaction with a data model of a development environment providing a persistent state of the application components, the operation of the first module being coordinated using the plurality of the predefined steps;

wherein the developed definitions of the application components are subsequently coded and assembled as the client application;

wherein the first pattern is selected from the group consisting of: a pattern for generating a suitable application based on an available backend data source messaging description; a pattern for developing the suitable application based on an available backend data source messaging description such that the entire application is developed including data components and screen components; a pattern for developing the application based on an existing database schema; a pattern for developing a standard set of data components that model a particular business domain for the application, a screen pattern for coordinating the development of a screen component as the first component; a message pattern for coordinating a development of a message component as the first component; and a script pattern for coordinating a development of a workflow component as a second component.

2. The method according to claim 1 , further comprising:

selecting a second pattern for guiding a user of the user interface with a portion of the plurality of predefined steps to coordinate the development of the application components through user input events via the user interface, the second pattern chosen from the plurality of patterns based on a further application component type central to the client application.

3. The method according to claim 2 , further comprising:

selecting directly the first module by the first pattern as a primary pattern.

4. The method according to claim 2 , further comprising:

selecting indirectly the module through cooperation with the second pattern as a secondary pattern.

5. The method according to claim 2 , wherein the second pattern is selected from the group consisting of: a screen pattern for coordinating a development of a screen component as the first component; a message pattern for coordinating a development of a message component as the first component; and a script pattern for coordinating a development of a workflow component as the second component.

6. The method according to claim 2 , further comprising: guiding a developer by a third pattern in selection of the first pattern being best suited to the current application development activity, the first pattern selected from the group consisting of: a pattern for generating the suitable application based on an available backend datasource messaging description, a pattern for developing the suitable application based on an available backend datasource messaging description such that the entire application is developed including data components and screen components; a pattern for developing the application based on an existing database schema; and a pattern for developing a standard set of data components that model a particular business domain for the application.

7. The method according to claim 3 , further comprising:

returning by the second pattern as a secondary pattern, coordination of the development of the application components to the first pattern as a primary pattern.

8. The method according to claim 7 , wherein the primary pattern employs the plurality of predefined steps, further comprising:

selecting a second module corresponding to the selected component type different from that of the first module.

9. The method according to claim 7 , wherein the secondary pattern returns the coordination of the development of the application components to another primary pattern different to the primary pattern.

10. The method according to claim 5 , wherein a data component as the first component is developed, further comprising:

applying the second pattern selected from the group consisting of: a screen pattern and a message pattern.

11. The method according to claim 10 , further comprising:

generating a command by the first module for accessing and changing the state of the data model.

12. The method according to claim 11 , further comprising:

affecting the first module by an event notification from the data model in response to the command.

13. The method according to claim 1 , wherein a data component as the first component is developed, further comprising:

applying a first pattern selected from the group consisting of: a screen pattern and a message pattern.

14. The method according to claim 1 , wherein the first module is selected from the group consisting of: editors and viewers.

15. The method according to claim 14 , wherein the first module is selected from the group consisting of: a screen module; a data module; a message module; a workflow module; a message and data relationship module; a backend visualizer module; a localization module; a script editor module; a testing module, a data and screen relationship module; and a navigation module.

16. The method according to claim 1 , wherein the second pattern is a validator pattern for confirming the data model representation of application messages is consistent with the datasource presentation of messaging operations.

17. The method according to claim 16 , wherein the validator pattern coordinates the operation of the module as a validator module having functionality selected from the group consisting of: workflow integrity of a workflow component; consistency of parameters and field level mappings of the components; consistency of screen control mappings of a screen component; consistency of screen refresh messages of a screen component; confirming a presence of message duplications in a message component; confirming a presence of data duplications in components; and validating a data model representation of datasource messaging relationships.

18. The method according to claim 1 , wherein the components are selected from the group consisting of: data components for defining data entities used by the application; screen components for defining the appearance and behavior of the application as displayed on the computing device; message components for defining a format of messages used by the application to communicate with the datasource; and workflow components for defining application processing that occurs when an action is to be performed.

19. The method according to claim 1 , wherein the data model comprises model constituents selected from the group consisting of: data component definitions; global variable definitions; message component definitions; resource definitions; screen component definitions; scripts; style definitions; and mapping descriptors of the data source.

Assignments (3)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Nov 4, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 034161/0093 →