IP Library Granted Patent US 8,978,021
Granted Patent B2
US 8,978,021 · App. 13/151,782 · Granted Mar 10, 2015

System and method for pervasive software platform-based model driven architecture transaction aware application generator

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 8,978,021
App. No.
13/151,782
Granted
Mar 10, 2015
Kind
B2
Abstract

In developing applications for a plurality of node types, a meta-data definition of the application can be captured into an application definition module. The meta-data definition can describe the application for the plurality of node types. A code generation module can then automatically generate the application code for the plurality of node types, including transaction aware code. The code can be compiled per node type and the packaging necessary to deploy the application to the plurality of node types can also be automatically generated.

Claims (24)

1. A method for creating pervasive applications executable by a plurality of node types, the method comprising:

capturing a meta-data definition of an application into an application definition module, the meta-data definition describing at least the plurality of node types, the meta-data definition further comprising whether a class of the application is transaction aware;

automatically generating the code per node type for the plurality of node types in a code generation module, comprising transaction aware code that enables the application to participate in two phase commit transactions;

compiling the code per node type; and

generating the packaging necessary to deploy the application to the plurality of node types;

wherein capturing the meta-data comprises capturing whether the application is persistable wherein capturing meta-data definition comprises capturing a definition of peer-to-peer messaging including network type and protocol preference, and wherein generating the code comprises generating the code that enables the application to communicate peer-to-peer in accordance with the captured network type and protocol preference.

2. The method of claim 1 wherein capturing the meta-data comprises capturing whether a class of the application is shareable.

3. The method of claim 2 wherein generating the code comprises generating shareable code that enables the class to be shared to peers and peer-groups.

4. The method of claim 1 wherein capturing the meta-data comprises capturing a messaging type between node types.

5. The method of claim 1 comprising capturing a definition of peer-to-group messaging including network type and protocol preference.

6. The method of claim 1 wherein capturing meta-data comprises describing the Application Object Model and describing it through an Object Model Repository.

7. The method of claim 1 wherein capturing the meta-data comprises capturing an object model of the application and capturing meta-data for the object model.

8. The method of claim 1 wherein capturing the meta-data comprises capturing whether the application is location-aware.

9. The method of claim 1 wherein capturing the meta-data comprises capturing whether the application is mobile.

10. A system for generating applications comprising a processor operatively coupled to at least one memory, the processor programmed to execute:

an application object model definition module that provides an interface to receive inputs from a user that define an object model for an application comprising whether a class of the application is transaction aware and whether the application is persistable; and

a code generator module that generates the application code for an object model of an application defined through the application object model definition module comprising transaction aware code that enables the application to participate in two phase commit transactions and code that creates the application as persistable an application node connectivity module that captures a meta-data definition of an application, wherein capturing meta-data definition comprises capturing a definition of peer-to-peer messaging including network type and protocol preference, and wherein generating the application code comprises generating the application code that enables the application to communicate peer-to-peer in accordance with the captured network type and protocol preference.

11. The system of claim 10 comprising the application node connectivity module that allows a user to define node types to participate in an application, wherein the code generator module generates application code for the object model for each of the node types.

12. The system of claim 10 comprising one or more class or executable libraries per node type, wherein the code generator module generates the application code for a node type with reference to the respective one of the class or executable libraries.

13. The system of claim 10 wherein the application object model definition module is configured to capture meta-data of an application comprising whether a class of the application is shareable.

14. The system of claim 13 wherein the code generator module generates shareable code that enables a shareable class to be shared to peers and peer-groups.

15. The system of claim 13 wherein the meta-data comprises at least one indicator that indicates whether the application is mobile.

16. A pervasive computing platform comprising: a processor and memory; a device API Abstraction layer configured to operate as an interface between one or more applications operating on a device and an operating platform of the device, the device API abstraction layer comprising a universal set of APIs, the universal set of APIs comprising a transaction API that provides an abstraction of a universal set of transaction engines and defines the application as persistable wherein the transaction API (Application Programming Interface) captures a meta-data definition of an application, wherein capturing meta-data definition comprises capturing a definition of peer-to-peer messaging including network type and protocol preference, and wherein generating the application code comprises generating the application code that enables the application to communicate peer-to-peer in accordance with the captured network type and protocol preference.

17. The pervasive computing platform of claim 16 wherein the universal set of APIs comprises a whiteboard API that provides an abstraction of a universal set of whiteboard engines.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Aug 11, 2021
From: LIPARI, PAUL A.
To: RECURSION SOFTWARE, INC.
Reel/Frame 057534/0555 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2015
From: RECURSION SOFTWARE, INC.
To: OPEN INVENTION NETWORK, LLC
Reel/Frame 037318/0707 →
SECURITY AGREEMENT Recorded Jan 29, 2013
From: RECURSION SOFTWARE, INC.
To: LIPARI, PAUL A.
Reel/Frame 029717/0595 →