The present invention together with the above and other objects and advantages may best be understood from the following detailed description of the preferred embodiments of the invention illustrated in the drawings, wherein:
In accordance with features of the preferred embodiments, methods are provided using dynamic graphical modeling to model computer systems. The current way to model computer systems involves the use of static images to model a dynamic system. Currently many graphics are large in file size. To model a computer/server system with these is cumbersome.
In accordance with features of the preferred embodiments, using graphic image files, such as scalable vector graphics (SVGs), to implement dynamic image changes reduces file size and adds several other benefits including scalability, reusability, and element grouping.
In accordance with features of the preferred embodiments, graphics that contain knowledge of computer system componentry are created and advantageously are dynamically altered to model a unique computer system described within an XML description file. This XML description file contains information regarding system hardware and system hardware location relative to the larger system. The larger system is defined in a default system enclosure SVG. The default system enclosure SVG contains location information used to link a corresponding SVG to a component described in the XML description file. The combination of these images is done programmatically and grouped as defined sub-elements within an image of a default system enclosure graphic. As a result of this grouping, the system graphic image file is dynamically updated to reflect hardware changes from the system XML description file.
Having reference now to the drawings, in
Computer system 100 is shown in simplified form sufficient for understanding the present invention. The illustrated computer system 100 is not intended to imply architectural or functional limitations. The present invention can be used with various hardware implementations and systems and various other internal hardware devices, for example, multiple main processors.
As shown in
Various commercially available computers can be used for computer system 100, for example, an IBM computer. CPU 102 is suitably programmed by the dynamic modeling dynamic systems program 132 to execute the flowchart of
In accordance with features of the preferred embodiments, in order to make dynamic changes to an actual graphic image file or SVG, the XML description file 140 does not need to contain any information as to the shape or functionality of the component. XML description file 140 needs to only contain identification, such as, a part number or name of the graphic image file representing a particular sub-component and its location code. This location code provides information such as system, rack, backplane, and slot. Having this information enables rendering graphical images at defined locations within a default system enclosure SVG. Each slot within the default system enclosure SVG that can house a replaceable part is put in a group within the default system enclosure SVG or default system enclosure graphical image. This group is identified by the location code that it is representing. As a default enclosure image, this group will reference a dummy component. The XML description file 140 specifies what component is to replace this dummy part. The location code in the XML description file 140 matches an ID for the group that represents that location. Then, rather than adding the image by placing it on top, it will actually replace the dummy image that is being referenced. The replacement not only changes the graphics of the modeled system, but also will continue to maintain textual information about the part and the location code to which the part belongs. So in result, the default system enclosure SVG or system graphical image will contain system structure knowledge. When a change occurs in the XML description file 140 changes in the model can be made quickly and easily, involving no manual changes to the images.
Being able to reference system component images makes this image creation more extensible. In addition, not referencing these components and making changes dynamically would cause the files, even in SVG, to be large. Another advantage of using graphic image files is their ability to rotate and scale the image. For example if system A and system B use the same Ethernet card this one image can be used for both systems even if the location of the card differs. For example the slot direction may also change from vertical to horizontal, or from horizontal to vertical and the like.
Referring now to
Referring now to
As a consumer of this product, no knowledge of the system or its components is necessary. As long as one has the XML description file 140, any changes made to the XML description file 140 will also be reflected graphically. Being that humans are visual learners, this graphical view becomes particularly useful in reports regarding the purchase and maintenance of a system. For example, when a part fails in system we would have the capability to highlight, or even flash, the failed part thus showing the consumer visually where their failed part is and how to take care of the problem. If perhaps a card has mistakenly been placed in the incorrect slot, the image can highlight both the component and the correct slot.
Referring now to
A sequence of program instructions or a logical assembly of one or more interrelated modules defined by the recorded program means 604, 606, 608, 610, direct the computer system 100 for implementing dynamic modeling methods for dynamic computer systems of the preferred embodiment.
Embodiments of the present invention may also be delivered as part of a service engagement with a client corporation, nonprofit organization, government entity, internal organizational structure, or the like. Aspects of these embodiments may include configuring a computer system to perform, and deploying software, hardware, and web services that implement, some or all of the methods described herein. Aspects of these embodiments may also include analyzing the client's operations, creating recommendations responsive to the analysis, building systems that implement portions of the recommendations, integrating the systems into existing processes and infrastructure, metering use of the systems, allocating expenses to users of the systems, and billing for use of the systems.
While the present invention has been described with reference to the details of the embodiments of the invention shown in the drawing, these details are not intended to limit the scope of the invention as claimed in the appended claims.