WO2015047076A2 - A system and method for auto-generate cloud resource provision application - Google Patents
A system and method for auto-generate cloud resource provision application Download PDFInfo
- Publication number
- WO2015047076A2 WO2015047076A2 PCT/MY2014/000144 MY2014000144W WO2015047076A2 WO 2015047076 A2 WO2015047076 A2 WO 2015047076A2 MY 2014000144 W MY2014000144 W MY 2014000144W WO 2015047076 A2 WO2015047076 A2 WO 2015047076A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- application
- flow definition
- flow
- resource provision
- generating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Definitions
- the present invention relates to cloud computing. More specifically, the present invention relates to a system and method for automatically generating cloud resource provision application.
- Cloud Computing refers to the provision of computational resources on demand through a computer network.
- Cloud Computing resources 103 can be provisioned via an interface 102, such as Command Line Interface (CLI), or web portal, which consume the cloud application programming interface (API).
- CLI Command Line Interface
- API cloud application programming interface
- resource provision application 118 requires human interventions which involve tasks of coding developments 114, packaging 115 and deployment 116 of the applications, which are done manually.
- FIG. 1C when a CLI is used for provisioning the resources, it involves many command lines usage.
- Each of the processes from approving request, checking resources availability, checking user rights limitations and usage to provisioning cloud resources requires users to input one or more command lines to initiate and control it. In most occasions, the commands can only be inputted after the previous one is executed. For example, to check resource availability, the user enters a command line to call Open Nebula API, i.e. oneimage list, only then the system will return the list of resource available as shown below in FIG. ID.
- Open Nebula API i.e. oneimage list
- a method for generating cloud resource provision application comprises acquiring an input from a user through an User Interface (UI), the input includes requirements for creating the cloud resources provision application; defining a flow design having at least one component based on the input; generating a project file that includes the components, the component descriptions, the application workflow, for automating the cloud resource provision application generation; generating resource provision application; packaging the resource provision application; and deploying the resource provision application.
- UI User Interface
- the creating flow definition may comprise identifying application components through the input; identifying relationships of the application components; generating a flow definition based on the identified components and relationships; and storing the flow definition into a repository.
- generating the resource provision application may comprise validating the flow definition; calling a workflow API to generate application components; and verifying the generated application components. It is possible that validating the flow definition further comprises reading application rules from a rule repository; comparing an order and sequence of the flow definition; inspecting syntax of the flow definition; checking whether the flow definition complies with predefined rules, if the flow definition complies with the predefined rules, the workflow API is called, otherwise the flow definition status is recorded.
- a system for generating cloud resource provision application comprises an User Interface (UI) for receiving user's input for requirements for creating the cloud resources provision application; an auto-generator for processing the user's input to define application flow, generate, package and deploy application based on the application flow.
- UI User Interface
- auto-generator for processing the user's input to define application flow, generate, package and deploy application based on the application flow.
- the system is adapted for carrying out the aforesaid method for generating cloud resource provision application.
- FIGs. 1 A to ID is a known process of provisioning resources
- FIG. 2 illustrates a process flow for auto-generating resource provision application in accordance with one embodiment of the present invention
- FIG. 3 illustrates a process flow of defining application and generating application for auto-generating cloud resource provision application in accordance with one embodiment of the present invention
- FIG. 4 illustrates a process flow of creating flow definition of FIG. 3 in accordance with one embodiment of the present invention
- FIG. 5 illustrates a process flow for generating resource provision application of FIG. 3 in accordance with one embodiment of the present invention.
- FIG. 6 illustrates a process of validating flow definition of FIG. 5 in accordance with one embodiment of the present invention.
- FIG. 2 illustrates a process flow for auto-generating resource provision application in accordance with one embodiment of the present invention. It is an objective of the embodiment to auto-generate cloud computing resource provisioning application based on user requirements.
- the process includes a user defines requirements via an User Interface (UI) at step 202, a system creates an application flow that defines the required series of actions, events and etc, for executing by the generator, based on the requirements at step 204, the system generates cloud resources based on application flow, packages and deploys the resource application at step 206, and publishing the resource provision application for accessible via web portal at step 208.
- UI User Interface
- FIG. 3 illustrates a process flow of defining application 310 and generating application 320 for auto-generating cloud resource provision application in accordance with one embodiment of the present invention.
- the process of defining application 320 includes reading inputs from user at step 312 and creating a flow definition based on the user input at step 314.
- the flow definition includes flow components, relationships, data input and output for the cloud resource provision application.
- VNET Virtual Network
- the flow definition may be made available on a repository that stores all the flow definition information and rules, which are conveniently selectable by the user as the input through an interface. Besides the xml syntax, the flow definition can also be available in any other coding such as GUI component based language.
- the step of generating application 320 further comprises generating resource provision application in step 322, packaging application at step 324 and deploying application at step 326.
- the resource provision application is generated based on the flow definition file generated in the preceding step.
- the flow definition provides the relevant flow design of descriptions for one or more of the required components.
- the components may include, but not limited to, any of web portal, workflow software, web services, xml nodes (parent or child or sub nodes) and cloud computing resources.
- An application workflow is generated based on the descriptions to render a project file that contains one or more flow definition files. With the project file, resource provision application is generated at step 322, and the resource provision application is then packed up at step 324 and deployed at step 326.
- the resource provision application can be accessible through a remote repository.
- FIG. 4 illustrates a process flow of creating flow definition 314 of FIG. 3 in accordance with one embodiment of the present invention.
- the process of creating flow definition 314 further comprises reading inputs from user at step 402; identifying application components based on user input at step 404; identifying components relationships at step 406; generating a new flow definition based on identified components and relationships at step 408; and storing the new generated application definition into a definition repository at step 410.
- the flow definition is generated, it is used for generating resource provision application through the resource provision application engine at the step 322.
- FIG. 5 illustrates a process flow for generating resource provision application 322 of FIG. 3 in accordance with one embodiment of the present invention.
- the process further comprises validating flow definition at step 502; calling a workflow API to generate application components at step 504; verifying the generated application components at step 506; packaging the generated application components for deployment at step 508; and deploying the generated application 510.
- FIG. 6 illustrates a process of validating flow definition 502 of FIG. 5 in accordance with one embodiment of the present invention.
- the process comprises reading application rules from a rule repository at step 602, comparing the order and sequence of the flow definition at step 604, inspecting the syntax of the flow definition at step 606, and inspecting the syntax of the flow definition.
- the syntax of the flow definition is being inspected, it checks if the flow definition complies with the definition rules at step 608. If it complies with the definition rules, the workflow API is called to generate application components as provided in the step 504 of FIG. 5. If it does not comply, the flow definition status is being update at step 614 and the auto-generation process is terminated. User will be notified on the validation status.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
A SYSTEM AND METHOD FOR AUTO-GENERATE CLOUD RESOURCE PROVISION APPLICATION
Field of the Invention
[0001] The present invention relates to cloud computing. More specifically, the present invention relates to a system and method for automatically generating cloud resource provision application.
Background
[0002] Cloud Computing refers to the provision of computational resources on demand through a computer network. As shown in FIG. 1 A, Cloud Computing resources 103 can be provisioned via an interface 102, such as Command Line Interface (CLI), or web portal, which consume the cloud application programming interface (API).
[0003] To implement new requirements 112 as shown in FIG. IB, resource provision application 118 requires human interventions which involve tasks of coding developments 114, packaging 115 and deployment 116 of the applications, which are done manually. As shown in FIG. 1C, when a CLI is used for provisioning the resources, it involves many command lines usage. Each of the processes from approving request, checking resources availability, checking user rights limitations and usage to provisioning cloud resources requires users to input one or more command lines to initiate and control it. In most occasions, the commands can only be inputted after the previous one is executed. For example, to check resource availability, the user enters a command line to call Open Nebula API, i.e. oneimage list, only then the system will return the list of resource available as shown below in FIG. ID. But until the list is rendered, nothing
can be done by the user. The user is being notified and updated with the status at each stage. These processes are however inflexible and difficult, if not impossible, to change process flow for enabling system administrator to "program" when/who/how to provide resources. [0004] These tasks and processes are resource and time consuming, notwithstanding that multiple dependencies shall also be resolved in order to complete the resource provision application development.
Summary
[0005] In accordance with one aspect of the present invention, there is provided a method for generating cloud resource provision application. The method comprises acquiring an input from a user through an User Interface (UI), the input includes requirements for creating the cloud resources provision application; defining a flow design having at least one component based on the input; generating a project file that includes the components, the component descriptions, the application workflow, for automating the cloud resource provision application generation; generating resource provision application; packaging the resource provision application; and deploying the resource provision application.
[0006] In one embodiment, the creating flow definition may comprise identifying application components through the input; identifying relationships of the application components; generating a flow definition based on the identified components and relationships; and storing the flow definition into a repository.
[0007] In another embodiment, generating the resource provision application may comprise validating the flow definition; calling a workflow API to generate application components; and verifying the generated application components. It is possible that validating the flow definition further comprises reading application rules from a rule repository; comparing an order and sequence of the flow definition; inspecting syntax of the flow definition; checking whether the flow definition complies with predefined rules, if the flow definition complies with the predefined rules, the workflow API is called, otherwise the flow definition status is recorded.
[0008] In another aspect of the present invention, there is also provided a system for generating cloud resource provision application. The system comprises an User Interface (UI) for receiving user's input for requirements for creating the cloud resources provision application; an auto-generator for processing the user's input to define application flow, generate, package and deploy application based on the application flow.
[0009] In one embodiment, the system is adapted for carrying out the aforesaid method for generating cloud resource provision application.
Brief Description of the Drawings
[0010] Preferred embodiments according to the present invention will now be described with reference to the figures accompanied herein, in which like reference numerals denote like elements; [0011] FIGs. 1 A to ID is a known process of provisioning resources;
[0012] FIG. 2 illustrates a process flow for auto-generating resource provision application in accordance with one embodiment of the present invention;
[0013] FIG. 3 illustrates a process flow of defining application and generating application for auto-generating cloud resource provision application in accordance with one embodiment of the present invention;
[0014] FIG. 4 illustrates a process flow of creating flow definition of FIG. 3 in accordance with one embodiment of the present invention;
[0015] FIG. 5 illustrates a process flow for generating resource provision application of FIG. 3 in accordance with one embodiment of the present invention; and
[0016] FIG. 6 illustrates a process of validating flow definition of FIG. 5 in accordance with one embodiment of the present invention. Detailed Description
[0017] Embodiments of the present invention shall now be described in detail, with reference to the attached drawings. It is to be understood that no limitation of the scope of the invention is thereby intended, such alterations and further modifications in the illustrated device, and such further applications of the principles of the invention as illustrated therein being contemplated as would normally occur to one skilled in the art to which the invention relates.
[0018] FIG. 2 illustrates a process flow for auto-generating resource provision application in accordance with one embodiment of the present invention. It is an objective of the embodiment to auto-generate cloud computing resource provisioning application based on user requirements. The process includes a user defines requirements via an User Interface (UI) at step 202, a system creates an application flow that defines the required series of actions, events and etc, for executing by the generator, based on the
requirements at step 204, the system generates cloud resources based on application flow, packages and deploys the resource application at step 206, and publishing the resource provision application for accessible via web portal at step 208.
[0019] FIG. 3 illustrates a process flow of defining application 310 and generating application 320 for auto-generating cloud resource provision application in accordance with one embodiment of the present invention. The process of defining application 320 includes reading inputs from user at step 312 and creating a flow definition based on the user input at step 314. Specifically, the flow definition includes flow components, relationships, data input and output for the cloud resource provision application. For example, an xml syntax for a flow definition 'To Add Virtual Network (VNET) into Cloud Computing Resources' is exemplified below:
<ADD_VNET>
<ACCEPT_PARA _AD I >
<VNET_NAME> ONE_Vnet</VNET_NAME>
<CLUSTER_NAME> Cluster_ONE</CLUSTER_NAME>
<TYPE> FIXED</TYPE>
<IP>
<IP_1> 10.1.24.240</IP_1>
<IP_2> 10.1.24.241</IP_2>
</IP>
</ACCEPT_PARAM_ADMIN>
<APPROVE_ACTION> YES/NO </APPROVE_ACTION>
(multiple action form)
</ADD VNET>
[0020] The flow definition may be made available on a repository that stores all the flow definition information and rules, which are conveniently selectable by the user as the input through an interface. Besides the xml syntax, the flow definition can also be
available in any other coding such as GUI component based language. Once the user enters the inputs, a flow engine generates an application automatically based on inputs. A flow definition file is generated in this step.
[0021] Still referring to FIG. 3, the step of generating application 320 further comprises generating resource provision application in step 322, packaging application at step 324 and deploying application at step 326. The resource provision application is generated based on the flow definition file generated in the preceding step. The flow definition provides the relevant flow design of descriptions for one or more of the required components. The components may include, but not limited to, any of web portal, workflow software, web services, xml nodes (parent or child or sub nodes) and cloud computing resources. An application workflow is generated based on the descriptions to render a project file that contains one or more flow definition files. With the project file, resource provision application is generated at step 322, and the resource provision application is then packed up at step 324 and deployed at step 326. The resource provision application can be accessible through a remote repository.
[0022] FIG. 4 illustrates a process flow of creating flow definition 314 of FIG. 3 in accordance with one embodiment of the present invention. The process of creating flow definition 314 further comprises reading inputs from user at step 402; identifying application components based on user input at step 404; identifying components relationships at step 406; generating a new flow definition based on identified components and relationships at step 408; and storing the new generated application definition into a definition repository at step 410. Once the flow definition is generated, it is used for generating resource provision application through the resource provision application engine at the step 322.
[0023] FIG. 5 illustrates a process flow for generating resource provision application 322 of FIG. 3 in accordance with one embodiment of the present invention. The process further comprises validating flow definition at step 502; calling a workflow API to generate application components at step 504; verifying the generated application components at step 506; packaging the generated application components for deployment at step 508; and deploying the generated application 510.
[0024] FIG. 6 illustrates a process of validating flow definition 502 of FIG. 5 in accordance with one embodiment of the present invention. The process comprises reading application rules from a rule repository at step 602, comparing the order and sequence of the flow definition at step 604, inspecting the syntax of the flow definition at step 606, and inspecting the syntax of the flow definition. When the syntax of the flow definition is being inspected, it checks if the flow definition complies with the definition rules at step 608. If it complies with the definition rules, the workflow API is called to generate application components as provided in the step 504 of FIG. 5. If it does not comply, the flow definition status is being update at step 614 and the auto-generation process is terminated. User will be notified on the validation status.
[0001] While specific embodiments have been described and illustrated, it is understood that many changes, modifications, variations, and combinations thereof could be made to the present invention without departing from the scope of the invention.
Claims
1. A method for generating cloud resource provision application, the method comprising: acquiring (312) an input from a user through an User Interface (UI), the input includes requirements for creating the cloud resources provision application; defining a flow design having at least one component based on the input; generating a project file that includes the components, the component descriptions, the application workflow, for automating the cloud resource provision application generation; generating (322) resource provision application; packaging (324) the resource provision application; and deploying (326) the resource provision application.
2. The method according to claim 1, wherein creating (314) flow definition comprising: identifying (404) application components through the input; identifying (406) relationships of the application components; generating (408) a flow definition based on the identified components and relationships; and
storing (410) the flow definition into a repository.
3. The method according to claim 1 , wherein generating (322) the resource provision application comprising: validating (502) the flow definition; calling (504) a workflow API to generate application components; and verifying (506) the generated application components.
4. The method according to claim 3, wherein validating (502) the flow definition comprising: reading (602) application rules from a rule repository; comparing (604) an order and sequence of the flow definition; inspecting (606) syntax of the flow definition; and checking (608) whether the flow definition complies with predefined rules, if the flow definition complies with the predefined rules, the workflow API is called (504), otherwise the flow definition status is recorded.
5. A system for generating cloud resource provision application, the system comprising: an User Interface (UI) for receiving user's input for requirements for creating the cloud resources provision application; and
an auto-generator for processing the user's input to define application flow, generate, package and deploy application based on the application flow.
6. The system according to claim 5, the system carries out the method according to claim 1.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| MYPI2013003497A MY175081A (en) | 2013-09-25 | 2013-09-25 | A system and method for auto-generate cloud resource provision application |
| MYPI2013003497 | 2013-09-25 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2015047076A2 true WO2015047076A2 (en) | 2015-04-02 |
Family
ID=51585156
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/MY2014/000144 Ceased WO2015047076A2 (en) | 2013-09-25 | 2014-05-26 | A system and method for auto-generate cloud resource provision application |
Country Status (2)
| Country | Link |
|---|---|
| MY (1) | MY175081A (en) |
| WO (1) | WO2015047076A2 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10423393B2 (en) | 2016-04-28 | 2019-09-24 | Microsoft Technology Licensing, Llc | Intelligent flow designer |
| CN111400638A (en) * | 2020-03-10 | 2020-07-10 | 大汉软件股份有限公司 | Dynamic management method and system for realizing native APP client content |
-
2013
- 2013-09-25 MY MYPI2013003497A patent/MY175081A/en unknown
-
2014
- 2014-05-26 WO PCT/MY2014/000144 patent/WO2015047076A2/en not_active Ceased
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10423393B2 (en) | 2016-04-28 | 2019-09-24 | Microsoft Technology Licensing, Llc | Intelligent flow designer |
| CN111400638A (en) * | 2020-03-10 | 2020-07-10 | 大汉软件股份有限公司 | Dynamic management method and system for realizing native APP client content |
Also Published As
| Publication number | Publication date |
|---|---|
| MY175081A (en) | 2020-06-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20240118915A1 (en) | Automated Management of Machine Images | |
| EP3095031B1 (en) | Cloud-based decision management platform | |
| CN103380423B (en) | Systems and methods for private cloud computing | |
| Quinton et al. | Towards multi-cloud configurations using feature models and ontologies | |
| US10324709B2 (en) | Apparatus and method for validating application deployment topology in cloud computing environment | |
| CN102291464B (en) | System and Method for Dynamically Generating Web Service from Business Process in BPM | |
| US20160241446A1 (en) | Managing a number of secondary clouds by a master cloud service manager | |
| Breitenbücher et al. | Pattern-based runtime management of composite cloud applications | |
| US20150295781A1 (en) | Cloud object | |
| US20110004564A1 (en) | Model Based Deployment Of Computer Based Business Process On Dedicated Hardware | |
| US20160127418A1 (en) | Policy-guided fulfillment of a cloud service | |
| CN104335170A (en) | Cloud application deployment | |
| Camilli et al. | A formal framework for specifying and verifying microservices based process flows | |
| Mietzner | A method and implementation to define and provision variable composite applications, and its usage in cloud computing | |
| US20130275960A1 (en) | Validation of current states of provisioned software products in a cloud environment | |
| Asim et al. | Security policy monitoring of BPMN‐based service compositions | |
| Soukaras et al. | IoTSuite: a ToolSuite for prototyping internet of things applications | |
| Guillén et al. | Developing migratable multicloud applications based on MDE and adaptation techniques | |
| US9940103B2 (en) | Discovery and modeling of deployment actions for multiple deployment engine providers | |
| CN103577260A (en) | Work scheduling method and system for cloud platform | |
| WO2015047076A2 (en) | A system and method for auto-generate cloud resource provision application | |
| Zimmermann et al. | Deployment enforcement rules for TOSCA-based applications | |
| Truong et al. | Modeling and provisioning iot cloud systems for testing uncertainties | |
| US8924948B2 (en) | Method and system for context modeling | |
| Mohamed et al. | rSLA: an approach for managing service level agreements in cloud environments |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14771638 Country of ref document: EP Kind code of ref document: A2 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 14771638 Country of ref document: EP Kind code of ref document: A2 |