Generating logic with scripting language in software as a service enterprise resource planning
Abstract
Systems and methods are described for converting business logic architecture from a native language (e.g., processor compiled code) into a scripting language (e.g., scripted code) for software as a service (SaaS) delivery methods for enterprise resource planning. The systems and methods may include generating a plurality of business process patterns representing business logic associated with one or more of a plurality of business objects, obtaining a plurality of code portions that correspond to one or more of the plurality of business process patterns, the plurality of code portions being coded in a scripting language and stored in a script repository, defining at least one extension point for each business process pattern. Each extension point may represent an interface, within the business logic, in which to insert one or more of the plurality of code portions into processor-compiled architecture in a software application.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A computer-implemented method, the method comprising:
generating, by a processor, a plurality of business process patterns representing business logic associated with one or more of a plurality of business objects;
obtaining a plurality of code portions that correspond to one or more of the plurality of business process patterns, the plurality of code portions being coded in a scripting language and stored in a script repository;
defining at least one extension point for each business process pattern, each extension point representing an interface, within the business logic, in which to insert one or more of the plurality of code portions into processor-compiled architecture in a software application;
in response to receiving, at the processor, a request to execute a service associated with the software application,
determining portions of the service that include business logic to be carried out by the processor-compiled architecture and determining other portions of the service that include business logic to be carried out by scripted architecture;
organizing the portions of the service and the other portions of the service according to a corresponding business process pattern in the plurality of business process patterns; and
executing the service, the execution including generating a function call to each portion of the service that includes business logic to be carried out by the processor-compiled architecture and generating a service call to the service by retrieving and executing at least one code portion from the script repository to replace processor-compiled functions, in one or more of the portions of the service, with scripted business logic.
2. The method of claim 1 , wherein generating the plurality of business process patterns representing business logic associated with one or more of the plurality of business objects includes:
obtaining and parsing, by the processor, processor-compiled architecture in an enterprise resource planning application to define a generic process;
determining whether an update to the business logic is available; and
generating additional code portions in a scripting language to implement the update to the business logic, the additional code portions being architected based on the business process pattern, the additional code portions being in a scripting language and being further adapted to replace a part of the processor-compiled architecture.
3. The method of claim 1 , wherein the at least one extension point is configured to be a placeholder for inserting one or more code portions into processor-compiled architecture in an enterprise resource planning software application.
4. The method of claim 1 , wherein retrieving the at least one code portion from the script repository includes retrieving code configured for user preference data corresponding to the business process.
5. The method of claim 1 , further comprising:
embedding a scripting language runtime into the software application, the scripting language runtime being configured to execute the at least one code portion, wherein the embedding limits memory resources that the scripting language runtime consumes during execution.
6. The method of claim 1 , further comprising:
during execution of the business process and at each extension point:
performing a search in the script repository to find a plurality of relevant code portions that correspond to a selected business process pattern; and
selecting two or more code portions to be executed based on the selected business process pattern.
7. The method of claim 1 , wherein the scripting language is an open source embedded scripting language and exchange of data between scripting language architecture and the processor-compiled architecture is performed using a virtual stack having a plurality of slots, wherein each slot is configured to hold a value associated with the scripted architecture, the value being used to indicate a mismatch between automatic and manual resource management.
8. The method of claim 1 , wherein the plurality of business process patterns define an ordered sequence of tasks to be carried out to execute the process and a plurality of business objects associated with each task.
9. A non-transitory computer-readable storage medium having recorded and stored thereon instructions that, when executed, perform actions of:
generating, by a processor, a plurality of business process patterns representing business logic associated with one or more of a plurality of business objects;
obtaining a plurality of code portions that correspond to one or more of the plurality of business process patterns, the plurality of code portions being coded in a scripting language and stored in a script repository;
defining at least one extension point for each business process pattern, each extension point representing an interface, within the business logic, in which to insert one or more of the plurality of code portions into processor-compiled architecture in a software application;
in response to receiving, at the processor, a request to execute a service associated with the software application,
determining portions of the service that include business logic to be carried out by the processor-compiled architecture and determining other portions of the service that include business logic to be carried out by scripted architecture;
organizing the portions of the service and the other portions of the service according to a corresponding business process pattern in the plurality of business process patterns; and
executing the service, the execution including generating a function call to each portion of the service that includes business logic to be carried out by the processor-compiled architecture and generating a service call to the service by retrieving and executing at least one code portion from the script repository to replace processor-compiled functions, in one or more of the portions of the service, with scripted business logic.
10. The non-transitory computer-readable storage medium of claim 9 , wherein generating the plurality of business process patterns representing business logic associated with one or more of the plurality of business objects includes:
obtaining and parsing, by the processor, processor-compiled architecture in an enterprise resource planning application to define a generic process;
determining that an update to the business logic is available; and
generating additional code portions in a scripting language to implement the update to the business logic, the additional code portions being architected based on the business process pattern the additional code portions being in a scripting language and being further adapted to replace a part of the processor-compiled architecture.
11. The non-transitory computer-readable storage medium of claim 9 , wherein the at least one extension point is configured to be a placeholder for inserting one or more code portions into processor-compiled architecture in an enterprise resource planning software application.
12. The non-transitory computer-readable storage medium of claim 9 , wherein the instructions further comprise:
embedding a scripting language runtime into the software application, the scripting language runtime being configured to execute the at least one code portion, wherein the embedding limits memory resources that the scripting language runtime consumes during execution.
13. The non-transitory computer-readable storage medium of claim 9 , wherein the instructions further comprise:
during execution of the business process and at each extension point:
performing a search in the script repository to find a plurality of relevant code portions that correspond to a selected business process pattern; and
selecting two or more code portions to be executed based on the selected business process pattern.
14. The non-transitory computer-readable storage medium of claim 9 , wherein the scripting language is an open source embedded scripting language and exchange of data between scripting language architecture and the processor-compiled architecture is performed using a virtual stack having a plurality of slots, wherein each slot is configured to hold a value associated with the scripted architecture, the value being used to indicate a mismatch between automatic and manual resource management.
15. A system comprising:
memory configured to store executable instructions; and
one or more processors configured to execute the stored instructions, wherein execution of the instructions causes the one or more processors to:
generate, by a processor, a plurality of business process patterns representing business logic associated with one or more of a plurality of business objects;
obtain a plurality of code portions that correspond to one or more of the plurality of business process patterns, the plurality of code portions being coded in a scripting language and stored in a script repository;
define at least one extension point for each business process pattern, each extension point representing an interface, within the business logic, in which to insert one or more of the plurality of code portions into processor-compiled architecture in a software application;
in response to receiving, at the processor, a request to execute a service associated with the software application,
determine portions of the service that include business logic to be carried out by the processor-compiled architecture and determining other portions of the service that include business logic to be carried out by scripted architecture;
organize the portions of the service and the other portions of the service according to a corresponding business process pattern in the plurality of business process patterns; and
execute the service, the execution including generating a function call to each portion of the service that includes business logic to be carried out by the processor-compiled architecture and generate a service call to the service by retrieving and executing at least one code portion from the script repository to replace processor-compiled functions, in one or more of the portions of the service, with scripted business logic.
16. The system of claim 15 , wherein generating the plurality of business process patterns representing business logic associated with one or more of the plurality of business objects includes:
obtaining and parsing, by the processor, processor-compiled architecture in an enterprise resource planning application to define a generic process;
determining whether an update to the business logic is available; and
generating additional code portions in a scripting language to implement the update to the business logic, the additional code portions being architected based on the business process pattern, the additional code portions being in a scripting language and being further adapted to replace a part of the processor-compiled architecture.
17. The system of claim 15 , wherein the at least one extension point is configured to be a placeholder for inserting one or more code portions into processor-compiled architecture in an enterprise resource planning software application.
18. The system of claim 15 , wherein retrieving the at least one code portion from the script repository includes retrieving code configured for user preference data corresponding to the business process.
19. The system of claim 15 , wherein the instructions further cause the one or more processors to:
embed a scripting language runtime into the software application, the scripting language runtime being configured to execute the at least one code portion, wherein the embedding limits memory resources that the scripting language runtime consumes during execution.
20. The system of claim 15 , wherein the scripting language is an open source embedded scripting language and exchange of data between scripting language architecture and the processor-compiled architecture is performed using a virtual stack having a plurality of slots, wherein each slot is configured to hold a value associated with the scripted architecture, the value being used to indicate a mismatch between automatic and manual resource management.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.