MODULARITY

Information

  • Patent Application
  • 20070226731
  • Publication Number
    20070226731
  • Date Filed
    June 23, 2006
    18 years ago
  • Date Published
    September 27, 2007
    17 years ago
Abstract
A method is provided. The method determines a plurality of platforms on which a first enterprise module is intended to run. Further, the method determines a first set of code included in the first enterprise module that is compatible with at least one of the platform and is incompatible with at least one of the other platforms. The first set of code prepared to accomplish a task. In addition, the method establishes a dependency relationship with a second enterprise module to obtain a second set of code that is compatible with the platform that first set of code is incompatible with, the second set of code prepared to accomplish the task.
Description

BRIEF DESCRIPTION OF DRAWINGS

The above-mentioned features and objects of the present disclosure will become more apparent with reference to the following description taken in conjunction with the accompanying drawings wherein like reference numerals denote like elements and in which:



FIG. 1 illustrates infrastructure utilized in a large and complex application, such as an enterprise application.



FIG. 2 illustrates an on-line or hosted infrastructure that can be utilized to provide an enterprise application over the Internet.



FIG. 3 illustrates an enterprise module assembly system that allows a customer to both host the enterprise application software locally and only purchase the particular modules corresponding to the services that the customer actually needs.



FIG. 4 illustrates a process of enhancing a computer system.



FIG. 5 illustrates an expanded view of the customer site, as seen in FIG. 3, for which the customer can implement the selected enterprise modules.



FIG. 6 illustrates an enterprise module construction system.



FIG. 7 illustrates a process in which the enterprise module can be generated.



FIG. 8 illustrates enterprise module dependencies.



FIG. 9 illustrates a portability tree that can be utilized to assess the portability of the code in the library collection of the enterprise module A.



FIG. 10 illustrates a process for creating a portable enterprise module.



FIG. 11 illustrates a process of generating a portable enterprise module.


Claims
  • 1. A system comprising: a unit that generates a first set of code for a first enterprise module, the first set of code designed to run on a first platform;a unit that composes a portability tree for the first enterprise module, the portability tree including a plurality of levels, the plurality of levels including a root level, a first sub-level, and a second sub-level, the root level including a portable platform, the first sub-level including a plurality of first sub-level non-portable platforms, the second sub-level including a plurality of second sub-level non-portable platforms;a unit that determines whether the first platform is present in the portability tree and what level of the portability tree the first set of code resides in; anda unit that establishes a dependency relationship with a second enterprise module, distinct from the first enterprise module, if the platform resides in the first sub-level or the second sub-level.
  • 2. The system of claim 1, wherein the portable platform is compatible with each of the first sub-level non-portable platforms.
  • 3. The system of claim 1, wherein at least one of the first sub-level non-portable platforms is compatible with at least one of the second sub-level non-portable platforms.
  • 4. The system of claim 1, further comprising a unit that obtains code from the second enterprise module for at least one platform on the same level at which the first platform resides.
  • 5. The system of claim 1, further comprising a unit that obtains code from a library in the second enterprise module for at least one platform on the same level at which the first platform resides.
  • 6. The system of claim 1, further comprising a unit that obtains code from the second enterprise module for at least one platform in the first sub-level of the portability tree if the first platform resides on the second sub-level of the portability tree.
  • 7. The system of claim 1, further comprising obtaining code from a library in the second enterprise module for at least one platform in the first sub-level of the portability tree if the first platform resides on the second sub-level of the portability tree.
  • 8. The system of claim 1, wherein the first set of code is included within a library within the first enterprise module.
  • 9. The system of claim 1, wherein a platform tag is utilized in the first set of code to indicate that the first set of code is designed to run on the first platform.
  • 10. The system of claim 1, wherein a platform tag is utilized in a second set of code in the second enterprise module to indicate a platform that the second set of code can be run on.
  • 11. A machine readable medium having stored thereon a set of instructions which when executed perform a method comprising: generating a first set of code and a second set of code for a first enterprise module, the first set of code supported by a first platform, the second set of code supported by a second platform, the first set of code distinct from the second set of code, the first platform distinct from the second platform;composing a portability tree for the first enterprise module, the portability tree including a plurality of levels, the plurality of levels including a root level, a first sub-level, and a second sub-level, the root level including a portable platform, the first sub-level including a plurality of first sub-level non-portable platforms, the second sub-level including a plurality of second sub-level non-portable platforms;determining whether the platform that the first set of code is designed to run on is present in the portability tree and what level of the portability tree the first set of code resides in;determining whether the platform that the second set of code is designed to run on is present in the portability tree and what level of the portability tree the second set of code resides in;establishing a dependency relationship with a second enterprise module, distinct from the first enterprise module, if the platform that the first set of code is designed to run on resides in the first sub-level or the second sub-level; andestablishing a dependency relationship with a third enterprise module, distinct from the first enterprise module and the second enterprise module, if the platform that the second set of code is designed to run on resides in the first sub-level or the second sub-level.
  • 12. The machine readable medium of claim 11, wherein the portable platform is compatible with each of the first sub-level non-portable platforms.
  • 13. The machine readable medium of claim 11, wherein at least one of the first sub-level non-portable platforms is compatible with at least one of the second sub-level non-portable platforms.
  • 14. A method comprising: determining a plurality of platforms on which a first enterprise module is intended to run;determining a first set of code included in the first enterprise module that is compatible with at least one of the platforms and is incompatible with at least one of the other platforms, the first set of code prepared to accomplish a task; andestablishing a dependency relationship with a second enterprise module to obtain a second set of code that is compatible with the platform that first set of code is incompatible with, the second set of code prepared to accomplish the task.
  • 15. The method of claim 14, further comprising composing a portability tree for the first enterprise module.
  • 16. The method of claim 14, wherein a declaration file in the first enterprise module indicates the at least one of the platforms that the first set of code is compatible with.
  • 17. The method of claim 14, wherein a declaration file in the first enterprise module indicates the at least one of the platforms that the first set of code is incompatible with.
  • 18. The method of claim 14, wherein a declaration file in the second enterprise module indicates the second set of code is compatible with the platform that the first set of code is incompatible with.
  • 19. The method of claim 14, wherein the plurality of platforms includes .Net.
  • 20. The method of claim 14, wherein the plurality of platforms includes Java.
Provisional Applications (1)
Number Date Country
60693589 Nov 2005 US