Laserfiche WebLink
CRDSS <br />TASK MEMORANDUM 1.05-15 <br />System Integration Issues <br />GUI - Building GUI Components <br />1.0 ISSUE <br />The development of Graphical User Interfaces (GUIs) for various components of CRDSS is a task <br />that must be carried out in a cost-effective and efficient manner. To do so, several issues must be <br />addressed: <br />How can GUI code be made modular so that it can be reused? <br />? <br />How can a consistent ?look and feel? be enforced for applications? <br />? <br />How can GUI code be developed in a reasonable amount of time? <br />? <br />How can GUI code be prototyped and evaluated? Should a GUI builder program be <br />? <br />used to enhance development? <br />Can portable GUIs be developed? <br />? <br />How can public domain software be utilized? <br />? <br />How will GUI code be maintained in the long term? <br />? <br />Can GUI components be developed in such a way that enhancements can be made in <br />? <br />later years? <br />2.0 DISCUSSION/ANALYSIS <br />This Discussion/Analysis section presents background material on general GUI concepts, a review of <br />GUI builders, and a discussion addressing the development of GUI components within the CRDSS <br />using available tools. <br />Background on GUIs <br />GUIs are fairly recent additions to computing environments. Although many computer <br />hardware/software companies had developed in-house GUIs for certain applications, it was not until <br />the advent of the X Window System on UNIX workstations, Microsoft Windows on PCs, and the <br />Macintosh desktop environment that GUIs have been commonly used. <br />GUIs are typically developed as a wrapper around an analytical engine, and are generally event- <br />driven (meaning that the GUI sits idle until an event like a button press occurs; it then performs an <br />action associated with that button press). Consider the following example. A modeling exercise <br />consists of repeatedly editing the input file(s) to a model and making runs using each revision of the <br />data until satisfactory results are obtained. In order to use such a model, the user would have to <br />understand how to run the model, how the input is formatted, and also how the input parameters <br />1 <br />A275 07.28.94 1.05-15 Malers <br />