DISTRIBUTED LEDGER PLATFORM FOR COMPUTING APPLICATIONS
First Claim
Patent Images
1. A system for dynamic development of computing applications comprising:
- one or more linked repositories storing blueprints, graphs, and components, each component defining a computing processing mechanism for processing data containers of computing data, each component being associated with one or more versions;
at least one development processor to develop and output at least one computing application to process at least one input data stream to generate at least one output data stream, the at least one computing application realized by a blueprint of the blueprints in the one or more linked repositories, the blueprint used to instantiate at least one graph of the graphs in the one or more linked repositories at application runtime, the at least one graph representing a workflow of components from the components stored in the one or more linked repositories, the workflow defining an arrangement of the plurality of components and connections between the components using pins; and
an interface for defining, updating, and testing a solution set of the components of the workflow, the solution set identifying a set of components of the components of the workflow and, for each component of the set of components, a version;
the at least one development processor for adding a label to the blueprint realizing the at least one computing application, the label referencing the solution set for loading appropriate versions of the set of components from the one or more linked repositories at application runtime such that when the solution set updates to identify a different version of a component in the set of components, the label references the updated solution set with the different version of the component without requiring modification to the blueprint realizing the at least one computing application; and
a distributed ledger comprising data storage structures for one or more blocks, wherein each of the one or more blocks is associated with a respective component and a respective function or purpose for the respective component, and wherein the blockchain system is configured to;
receive a request to update the distributed ledger with at least one new component for a specific function or purpose;
determine that the at least one new component is linked to a digital certificate and a solution set;
authenticate the digital certificate;
generate a digital signature for the at least one new component based on the digital certificate;
generate a new block comprising the digital signature, the solution set, and a pointer to the at least one new component as stored in the one or more linked repositories; and
update the distributed ledger with the new block.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for dynamic development and/or management of computing applications including a development framework, a visual design subsystem, a deployment subsystem, and a distributed ledger, where at runtime the deployment subsystem is operable to dynamically deploy a computing application realized by a blueprint by sending a request at runtime for graphs and components instantiated by the blueprint, and the distributed ledger is operable to store a set of components and associating each component with a digital certificate.
-
Citations
21 Claims
-
1. A system for dynamic development of computing applications comprising:
-
one or more linked repositories storing blueprints, graphs, and components, each component defining a computing processing mechanism for processing data containers of computing data, each component being associated with one or more versions; at least one development processor to develop and output at least one computing application to process at least one input data stream to generate at least one output data stream, the at least one computing application realized by a blueprint of the blueprints in the one or more linked repositories, the blueprint used to instantiate at least one graph of the graphs in the one or more linked repositories at application runtime, the at least one graph representing a workflow of components from the components stored in the one or more linked repositories, the workflow defining an arrangement of the plurality of components and connections between the components using pins; and an interface for defining, updating, and testing a solution set of the components of the workflow, the solution set identifying a set of components of the components of the workflow and, for each component of the set of components, a version; the at least one development processor for adding a label to the blueprint realizing the at least one computing application, the label referencing the solution set for loading appropriate versions of the set of components from the one or more linked repositories at application runtime such that when the solution set updates to identify a different version of a component in the set of components, the label references the updated solution set with the different version of the component without requiring modification to the blueprint realizing the at least one computing application; and a distributed ledger comprising data storage structures for one or more blocks, wherein each of the one or more blocks is associated with a respective component and a respective function or purpose for the respective component, and wherein the blockchain system is configured to; receive a request to update the distributed ledger with at least one new component for a specific function or purpose; determine that the at least one new component is linked to a digital certificate and a solution set; authenticate the digital certificate; generate a digital signature for the at least one new component based on the digital certificate; generate a new block comprising the digital signature, the solution set, and a pointer to the at least one new component as stored in the one or more linked repositories; and update the distributed ledger with the new block. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for managing computing components using a distributed ledger platform:
-
storing blueprints, graphs, and components at one or more linked repositories, each component being associated with one or more versions; defining, using each component, a computing processing mechanism for processing data containers of computing data; generating, using a development processor, at least one computing application to process at least one input data stream to generate at least one output data stream, the at least one computing application realized by a blueprint of the blueprints in the one or more linked repositories, instantiating at least one graph of the graphs in the one or more linked repositories using the blueprint at application runtime, the at least one graph representing a workflow of components from the components stored in the one or more linked repositories, the workflow defining an arrangement of the plurality of components and connections between the components using pins; defining, updating, and testing, at an interface, a solution set of the components of the workflow, the solution set identifying a set of components of the components of the workflow and, for each component of the set of components, a version; and adding a label to the blueprint realizing the at least one computing application, the label referencing the solution set for loading appropriate versions of the set of components from the one or more linked repositories at application runtime such that when the solution set updates to identify a different version of a component in the set of components the label references the updated solution set with the different version of the component without requiring modification to the blueprint realizing the at least one computing applications; loading of appropriate versions of the components from the one or more linked repositories using the label referencing the solution set of components; receiving a request to update a distributed ledger with at least one new component for a specific function or purpose, the distributed ledger comprising one or more blocks, each of the one or more blocks associated with a respective component and a respective function or purpose for the respective component; determine that the at least one new component is linked to a digital certificate; authenticate the digital certificate; generate a digital signature for the at least one new component based on the digital certificate; generate a new block comprising the digital signature and a pointer to the at least one new component as stored in the one or more linked repositories; and update the distributed ledger with the new block. - View Dependent Claims (7)
-
-
8. A system for dynamic deployment of computing applications comprising:
-
one or more linked repositories storing blueprints, graphs, and components, each component defining a computing processing mechanism for processing data containers of computing data, each component being associated with one or more versions; at least one deployment processor for receiving a command to deploy at least one computing application to process at least one input data stream to generate at least one output data stream, the deployment processor realizing the at least one computing application by a blueprint of the blueprints in the one or more linked repositories, the blueprint used to instantiate at least one graph of the graphs in the one or more linked repositories at application runtime, the at least one graph representing a workflow of components from the components stored in the one or more linked repositories, the workflow defining an arrangement of the plurality of components and connections between the components using pins, the blueprint having a label referencing a solution set of the components of the workflow, the solution set identifying a set of components of the components of the workflow and, for each component of the set of components, a version such that when the solution set updates to identify a different version of a component in the set of components, the label references the updated solution set with the different version of the component without requiring modification to the blueprint realizing the at least one computing application; the deployment processor configuring one or more cloud agents, and one or more cloud engines, the cloud agent receiving the command to deploy the at least one computing application to process the at least one input data stream and, in response, instantiate the one or more cloud engines on a host system and provide a running environment for the one or more cloud engines; the one or more cloud engines dynamically construct the at least one computing application on the respective host system by realizing requirements of the blueprint of the at least one computing application, the requirements identifying the at least one graph and the components of the workflow and by sending a request to the one or more linked repositories to load the blueprint, the at least one graph, and the set of components on the respective host system using the label to reference the solution set of components to load appropriate versions of the set of components; and a distributed ledger platform comprising data storage devices for one or more blocks, wherein each of the one or more blocks is associated with a respective component and a respective function or purpose for the respective component. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for dynamic deployment of computing applications:
-
storing blueprints, graphs, and components, each component defining a computing processing mechanism for processing data containers of computing data, each component being associated with one or more versions; providing at least one deployment processor for receiving a command to deploy at least one computing application to process at least one input data stream to generate at least one output data stream; realizing the at least one computing application by a blueprint of the blueprints in the one or more linked repositories; instantiating, using the blueprint, at least one graph of the graphs in the one or more linked repositories at application runtime; using the at least one graph to represent a workflow of components from the components stored in the one or more linked repositories, the workflow defining an arrangement of the plurality of components and connections between the components using pins; defining in the blueprint a label referencing a solution set of the components of the workflow, the solution set identifying a set of components of the components of the workflow and, for each component of the set of components, a version such that when the solution set updates to identify a different version of a component in the set of components, the label references the updated solution set with the different version of the component without requiring modification to the blueprint realizing the at least one computing application; configuring, using the deployment processor, one or more cloud agents, and one or more cloud engines; receiving, at the cloud agent, the command to deploy the at least one computing application to process the at least one input data stream and, in response, instantiating the one or more cloud engines on a host system and provide a running environment for the one or more cloud engines; dynamically constructing, using the one or more cloud engines, the at least one computing application on the respective host system by realizing requirements of the blueprint of the at least one computing application, the requirements identifying the at least one graph and the components of the workflow and by sending a request to the one or more linked repositories to load the blueprint, the at least one graph, and the set of components on the respective host system using the label to reference the solution set of components to load appropriate versions of the set of components; processing the input data stream as a plurality of data containers using the plurality of components to generate the output data stream, the plurality of data containers flowing between the components of the workflow using the pins; and storing each of the set of components in a respective block in a distributed ledger, and associating each of the set of components with a specific function or purpose in the respective block. - View Dependent Claims (21)
-
Specification