In enterprise service architectures, communication via a graphical user interface may be limited by the pre-conditions, i.e., communication requirements, of the graphical user interface. Specifically, elements or software objects which contact the graphical user interface may not be compatible with the graphical user interface, and thus may need to be controlled or manipulated depending upon its pre-conditions. In some systems, the software object may be mapped into a graphical component in order to solve any compatibility issues between the graphical user interface and the software object.
Accordingly, software objects currently modeled and used in business applications are unsuitable to fulfil the needs of the graphical user interface (UI) and do not support the communication protocol required. Moreover, the present solutions provide for a slow response time given the mapping required in order to communicate with the UI. Thus, a need exists to provide a generic software object which can communicate with the UI in a more efficient and compatible manner.
Development of a complex software system may involve defining an object model that represents the desired structure and functionality of objects to be implemented in an application framework. In business software environments, such as in enterprise service architecture systems, those software objects may be referred to as business objects which can be defined according to a node structure that may specify corresponding data elements and behaviors to be associated with the business objects. Once the object model is defined, developers may produce code for the application framework that implements the defined objects. The application framework acts as a service provider and generally provides the service-side or business logic side or back-end level functionality for the system. The client-side or front-end aspects of the system are then coded, including the user interface portion, e.g., graphical user interface (UI), providing specific application contexts and usage scenarios which depend upon the backend level functionality. These specific application contexts and usage scenarios are the pre-conditions. The business objects along with their corresponding data elements and behaviors may encounter a graphical UI of a software system which straddles two separate and incompatible software systems.
In another embodiment of the present invention, a generic process for obtaining a generic business object is provided. The generic process may involve opening a user interface which has nongraphical user interface components and works on the business object and a controller object, and converting a transit node of the business object into a Gantt business object. The Gantt business object will then be responsible for all conversions.
In embodiments of the present invention, one business object can be in contact with more than one user interface.
In an embodiment of the present invention, the basic architecture involves the backend system implementing the business logic. Any rendering is executed in the user interface component, where the rendering information is passed from the business logic via a generic business object to the user interface component. The system controls information about the toolbars, actions, size and shape of a node, and the relationships between the nodes. For example, the size and shape of a node may be represented as a bar in a Gantt chart. In an embodiment of the present invention, this information is transported from the backend to the user interface. The backend and the user interface may be based on two different coding languages and methods. The user interface via, for example, a Java applet, may handle such transported information. This interface may be termed an intermediate graphics layer, as shown in
In an embodiment of the present invention, a communication protocol exists between the generic business object, e.g., the Gantt business object shown in
In an embodiment of the present invention, the generic business object may handle an event triggered by the graphical user interface. The generic business object may also handle the dispatching or delegation of the event, after a transformation, to the underlying application business object. The generic business object also may control the layout or properties of the graphical user interface including, for example, colors and date format.
The GANTT business object in an enterprise service repository for purposes of embodiments of the present invention may comprise a “generic business object” structure and is used for providing data for the resulting graphical views. Such graphical views include a GANTT chart, a work breakdown structure, a network diagram, and a table. An example GANTT business object, e.g., ProjectGanttController, as shown in various embodiments herein, may include the following structure:
Although the preceding text sets forth a detailed description of various embodiments, it should be understood that the legal scope of the invention is defined by the words of the claims set forth below. The detailed description is to be construed as exemplary only and does not describe every possible embodiment of the invention since describing every possible embodiment would be impractical, if not impossible. Numerous alternative embodiments could be implemented, using either current technology or technology developed after the filing date of this patent, which would still fall within the scope of the claims defining the invention.
It should be understood that there exist implementations of other variations and modifications of the invention and its various aspects, as may be readily apparent to those of ordinary skill in the art, and that the invention is not limited by specific embodiments described herein. Features and embodiments described above may be combined with each other in various ways providing further embodiments. The present application is therefore contemplated to cover any and all modifications, variations, combinations or equivalents that fall within the scope of the basic underlying principals disclosed and claimed herein.