System and method for dynamically refactoring business data objects
View Patent ↗A system and method for the dynamic refactoring of business data object classes is provided. The system may comprise a refactoring engine configured to interact with a business process management (BPM) environment. The refactoring engine may retrieve a business data object from the BPM environment. The business data object may include various object linkages, such as object attachments, object assignments, and a business data object audit history. Based on a second business data object class, the refactoring engine may refactor the business data object and the various object linkages.
1. A method, comprising:
retrieving, by a refactoring engine using a query to a work object database and in response to receiving a business data object refactoring request, a business data object,
wherein the business data object comprises a reusable instantiation of a data structure that proceeds through predefined states according to embedded attributes and process transformations, and
wherein the business data object includes a first business data object class and a first class key;
parsing, by the refactoring engine, the business data object refactoring request to determine the first business data object class, the first class key, and a second business data object class for refactoring;
refactoring in real time, by the refactoring engine, the business data object to create a refactored business data object that comprises the second business data object class by changing the first business data object class in the business data object to comprise the second business data object class;
generating, by the refactoring engine, a second class key based on the refactored business data object, in response to the business data object comprising the second business data object class;
querying, by the refactoring engine, an object linkage database to retrieve an object linkage related to the business data object including an object attachment, an object assignment and a business data object audit history, based on the first class key and the first business data object class;
updating, by the refactoring engine, the object linkage including the object attachment, the object assignment, the business data object audit history, the second class key and the second business data object class;
re-linking, by the refactoring engine, the object linkage to the refactored business data object that is stored in an object indexing database comprising data indicating all object linkages for each corresponding business data object;
monitoring, by the refactoring engine, the refactoring of the business data object for detecting at least one of an error or a data inconsistency; and
restoring, by the refactoring engine, the refactored business data object back to the business data object, in response to the detecting at least one of the error or the data inconsistency.
2. The method of claim 1 , further comprising receiving, by the refactoring engine, the business data object refactoring request.
3. The method of claim 2 , wherein the business data object is retrieved based on at least one of the first business data object class or the first class key specified by the business data object refactoring request.
4. The method of claim 3 , wherein the business data object refactoring request includes at least one of a date range, an alphabetical business data object class selection, or a numerical class key selection.
5. The method of claim 1 , further comprising:
storing, by the refactoring engine, the second class key in the business data object;
storing, by the refactoring engine, the refactored business data object in the work object database; and
storing, by the refactoring engine, the object linkage in the object linkage database.
6. The method of claim 1 , further comprising persisting, by the refactoring engine, the refactored business data object and performing a final commit.
7. A system comprising:
a processor; and
a tangible, non-transitory memory configured to communicate with the processor,
the tangible, non-transitory memory having instructions stored thereon that, in response to execution by the processor, cause the processor to perform operations comprising:
retrieving, by the processor using a query to a work object database and in response to receiving a business data object refactoring request, a business data object,
wherein the business data object comprises a reusable instantiation of a data structure that proceeds through predefined states according to embedded attributes and process transformations, and
wherein the business data object includes a first business data object class and a first class key;
parsing, by the processor, the business data object refactoring request to determine the first business data object class, the first class key, and a second business data object class for refactoring;
refactoring in real time, by the processor, the business data object to create a refactored business data object that comprises the second business data object class by changing the first business data object class in the business data object to comprise the second business data object class;
generating, by the processor, a second class key based on the refactored business data object, in response to the business data object comprising the second business data object class;
querying, by the processor, an object linkage database to retrieve an object linkage related to the business data object including an object attachment, an object assignment and a business data object audit history, based on the first class key and the first business data object class;
updating, by the processor, the object linkage including the object attachment, the object assignment, the business data object audit history, the second class key and the second business data object class;
re-linking, by the processor, the object linkage to the refactored business data object that is stored in an object indexing database comprising data indicating all object linkages for each corresponding business data object;
monitoring, by the processor, the refactoring of the business data object for detecting at least one of an error or a data inconsistency; and
restoring, by the processor, the refactored business data object back to the business data object, in response to the detecting at least one of the error or the data inconsistency.
8. An article of manufacture including a non-transitory, tangible computer readable storage medium having instructions stored thereon that, in response to execution by a computer based system, cause the computer based system to perform operations comprising:
retrieving, by the computer based system using a query to a work object database and in response to receiving a business data object refactoring request, a business data object,
wherein the business data object comprises a reusable instantiation of a data structure that proceeds through predefined states according to embedded attributes and process transformations, and
wherein the business data object includes a first business data object class and a first class key;
parsing, by the computer based system, the business data object refactoring request to determine the first business data object class, the first class key, and a second business data object class for refactoring;
refactoring in real time, by the computer based system, the business data object to create a refactored business data object that comprises the second business data object class by changing the first business data object class in the business data object to comprise the second business data object class;
generating, by the computer based system, a second class key based on the refactored business data object, in response to the business data object comprising the second business data object class;
querying, by the computer based system, an object linkage database to retrieve an object linkage related to the business data object including an object attachment, an object assignment and a business data object audit history, based on the first class key and the first business data object class;
updating, by the computer based system, the object linkage including the object attachment, the object assignment, the business data object audit history, the second class key and the second business data object class;
re-linking, by the computer based system, the object linkage to the refactored business data object that is stored in an object indexing database comprising data indicating all object linkages for each corresponding business data object;
monitoring, by the computer based system, the refactoring of the business data object for detecting at least one of an error or a data inconsistency; and
restoring, by the computer based system, the refactored business data object back to the business data object, in response to the detecting at least one of the error or the data inconsistency.
9. The article of manufacture of claim 8 , further comprising receiving, by the computer based system, the business data object refactoring request.
10. The article of manufacture of claim 9 , wherein the business data object is retrieved based on at least one of the first business data object class or the first class key specified by the business data object refactoring request.
11. The article of manufacture of claim 9 , wherein the business data object refactoring request includes at least one of a date range, an alphabetical business data object class selection, or a numerical class key selection.