IP Library Granted Patent US 8,122,377
Granted Patent B2
US 8,122,377 · App. 10/880,967 · Granted Feb 21, 2012

Preserving user interface customizations while upgrading an enterprise application

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,122,377
App. No.
10/880,967
Granted
Feb 21, 2012
Kind
B2
Abstract

In an embodiment, a system for preserving user interface customizations while upgrading an enterprise application is provided. The system preserves customizations by identifying customizations made to user interface (“UI”) objects of an enterprise application, and enabling these UI customizations to function with a newer version of the enterprise application. The system transforms UI customizations so that the transformed UI customizations function with a new UI model. By enabling a portion of an enterprise application to be upgraded while preserving UI customizations, the system dramatically reduces the time and cost incurred by companies when they upgrade enterprise software.

Claims (164)

1. A method performed by a computing system, comprising:

preserving a customized object while upgrading an enterprise application to an upgraded enterprise application, comprising

merging a plurality of repositories into a merged repository, wherein

the plurality of repositories comprises

a customized repository,

an original repository, and

an upgraded repository,

the customized repository comprises the customized object,

the original repository comprises an original object,

the customized object is produced by applying one or more customizations to the original object, and

the upgraded repository comprises an upgraded object;

identifying the customized object for preservation, wherein

the customized object is preserved, while the enterprise application is upgraded, by retaining the customized object in the merged repository; and

transforming the customized object, wherein

the transforming enables the customized object to operate with the upgraded enterprise application without reapplying the one or more customizations,

the transforming comprises

determining a type of the customized object,

performing a transformational function based on the type,

identifying an updated method in the upgraded object, and

replacing an original method call in the customized object with an updated method call,

the replacing results in the customized object being configured to make a method call to the updated method instead of an original method,

the original method call is a method call to the original method, and

the updated method call is a method call to the updated method.

2. The method of claim 1 , wherein the identifying the customized object comprises:

analyzing objects in the plurality of repositories.

3. The method of claim 1 , wherein the identifying the customized object comprises:

analyzing objects in the merged repository.

4. The method of claim 1 , wherein the transforming comprises:

identifying and resolving issues relating to the transformation.

5. The method of claim 4 , wherein the type is an applet.

6. The method of claim 5 , wherein the transformational function enables the applet to function in a grid.

7. The method of claim 4 , wherein the type is a view.

8. The method of claim 7 , wherein the transformational function creates a categorization for views.

9. The method of claim 4 , wherein the type is a screen.

10. The method of claim 1 , wherein the identifying comprises:

comparing a present state of an object with a state of the object as delivered by a vendor of the object.

11. A system comprising a computer-readable storage medium, and computer-executable instructions encoded on said computer-readable storage medium and configured to:

preserve a customized object while upgrading an enterprise application to an upgraded enterprise application, wherein the computer-executable instructions encoded to preserve are further configured to

merge a plurality of repositories into a merged repository, wherein

the plurality of repositories comprises

a customized repository,

an original repository, and

an upgraded repository,

the customized repository comprises the customized object,

the original repository comprises an original object,

the customized object is produced by applying one or more customizations to the original object, and

the upgraded repository comprises an upgraded object;

identify the customized object for preservation, wherein

the customized object is preserved, while the enterprise application is upgraded, by retaining the customized object in the merged repository; and

transform the customized object, wherein

the transform enables the customized object to operate with the upgraded enterprise application without reapplying the one or more customizations,

the transform comprises

determining a type of the customized object,

performing a transformational function based on the type,

identifying an updated method in the upgraded object, and

replacing an original method call in the customized object with an updated method call,

the replacing results in the customized object being configured to make a method call to the updated method instead of an original method,

the original method call is a method call to the original method, and

the updated method call is a method call to the updated method.

12. The system of claim 11 wherein the transform is dependent on the customized object being an applet.

13. The system of claim 11 wherein the transform is dependent on the customized object being a view.

14. The system of claim 11 wherein the transform is dependent on the customized object being a screen.

15. The system of claim 11 , wherein the computer-executable instructions are further configured to rename an object.

16. The system of claim 11 , wherein the computer-executable instructions are further configured to deactivate objects indicated by a user.

17. The system of claim 11 , wherein the enterprise application is configured to use objects from multiple repositories.

18. The system of claim 11 , wherein the computer-executable instructions are further configured to create a hierarchical data structure relating to categories of objects.

19. A non-transitory computer-readable storage medium comprising computer-executable instructions and a data structure, wherein the computer-executable instructions are configured to:

preserve a customized object while upgrading an enterprise application to an upgraded enterprise application, comprising

a plurality of repositories, wherein

the plurality of repositories comprises

a customized repository,

an original repository, and

an upgraded repository,

the customized repository comprises the customized object,

the original repository comprises an original object,

the customized object is produced by applying one or more customizations to the original object, and

the upgraded repository comprises an upgraded object;

a merge repository, wherein

the merge repository is configured to preserve the customized object, while the enterprise application is upgraded, by retaining the customized object in the merge repository,

the merge repository preserves the customized object by performing a transformation,

the transformation enables the customized object to operate with the upgraded enterprise application without reapplying the one or more customizations,

the transformation results in a transformed customized object,

the transformation comprises

determining a type of the customized object,

performing a transformational function based on the type,

identifying an updated method in the upgraded object, and

replacing an original method call in the customized object with an updated method call,

the replacing results in the customized object being configured to make a method call to the updated method instead of an original method,

the original method call is a method call to the original method, and

the updated method call is a method call to the updated method; and

a hierarchical data structure configured to allow a categorization of an object.

20. The non-transitory computer-readable storage medium of claim 19 , wherein the customized object is an applet.

21. The non-transitory computer-readable storage medium of claim 19 , wherein the customized object is a view.

22. The non-transitory computer-readable storage medium of claim 19 , wherein the customized object is a screen.

23. The non-transitory computer-readable storage medium of claim 19 , wherein the hierarchical data structure comprises categories of objects.

24. A method comprising:

preserving a customized object when upgrading an enterprise application to an upgraded enterprise application, comprising

receiving an indication of the customized object to preserve during the upgrading, wherein

the customized object is preserved, while the enterprise application is upgraded, by retaining the customized object in a merged repository;

merging a plurality of repositories into the merged repository, wherein

the plurality of repositories comprises

a customized repository,

an original repository, and

an upgraded repository,

the customized repository comprises the customized object,

the original repository comprises an original object,

the customized object is produced by applying one or more customizations to the original object, and

the upgraded repository comprises an upgraded object;

copying the customized object into the merged repository; and

transforming the customized object, wherein

the transforming enables the customized object to operate with the upgraded enterprise application without reapplying the one or more customizations,

the transforming comprises

determining a type of the customized object,

performing a transformational function based on the type,

identifying an updated method in the upgraded object, and

replacing an original method call in the customized object with an updated method call,

the replacing results in the customized object being configured to make a method call to the updated method instead of an original method,

the original method call is a method call to the original method, and

the updated method call is a method call to the updated method.

25. The method of claim 24 , wherein the transforming comprises:

identifying and resolving issues relating to the transformation.

26. The method of claim 25 , wherein the type is an applet.

27. The method of claim 26 , wherein the transformational function enables the applet to function in a grid.

28. The method of claim 25 , wherein the type is a view.

29. The method of claim 28 , wherein the transformational function creates a categorization for views.

30. The method of claim 25 , wherein the type is a screen.

31. A method comprising:

preserving a customized object while upgrading an enterprise application to an upgraded enterprise application, comprising

merging a plurality of repositories into a merged repository, wherein

the plurality of repositories comprises

a customized repository,

an original repository, and

an upgraded repository,

the customized repository comprises the customized object,

the original repository comprises an original object,

the customized object is produced by applying one or more customizations to the original object, and

the upgraded repository comprises an upgraded object;

identifying the customized object for preservation, wherein

the customized object is preserved, while the enterprise application is upgraded, by retaining the customized object in the merged repository;

deactivating the customized object;

creating a copy of the customized object in the merged repository; and

transforming the customized object, wherein

the transforming enables the customized object to operate with the upgraded enterprise application without reapplying the one or more customizations,

the transforming comprises

determining a type of the customized object,

performing a transformational function based on the type,

identifying an updated method in the upgraded object, and

replacing an original method call in the copy of the customized object with an updated method call,

the replacing results in the customized object being configured to make a method call to the updated method instead of

an original method,

the original method call is a method call to the original method, and

the updated method call is a method call to the updated method.

32. The method of claim 31 , wherein the identifying the customized object comprises analyzing objects in the plurality of repositories.

33. The method of claim 31 , wherein the identifying the customized object comprises analyzing objects in the merged repository.

34. The method of claim 31 , wherein the transforming comprises:

identifying and resolving issues relating to the transformation.

35. The method of claim 34 , wherein the type is an applet.

36. The method of claim 35 , wherein the transformational function enables the applet to function in a grid.

37. The method of claim 34 , wherein the type is a view.

38. The method of claim 37 , wherein the transformational function creates a categorization for views.

39. The method of claim 34 , wherein the type is a screen.

40. The method of claim 31 , wherein the identifying comprises comparing a present state of an object with a state of the object as delivered by a vendor of the object.

41. The method of claim 1 , wherein

the customized object, the original object, and the upgraded object correspond to one another.

Assignments (1)
MERGER Recorded Feb 5, 2016
From: SIEBEL SYSTEMS, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037702/0505 →