GISdevelopment.net ---> GITA 1997 ---> Building & Supporting Application

User Interface (UI) Design for AM/FM Systems

Daniel Probert
Mercury Energy Limited Private Bag 92008 Auckland 1 New Zealand


Abstract
Enabling users to easily access information stored in AM/FM systems involves designing an interface that is powerfid, easy to use, and capable of providing the functionality needed by its users. By examining the history of today’s common UI designs, it is possible to see their limitations in the AM/FM arena, and to therefore design custom user interfaces that provide the required fimctionality. Through exploration of current and future trends in commercial UIS, suggestions can be made on how best to accommodate these trends in existing AM/FM applications.

Introduction
User Interface design is the process of creating an interface that allows a user to access and manipulate information stored on a computer. Geographical user interfaces pose a more challenging design problem, as most modern UI designs are limited in their ability to handle geographical data, due to the spatial (geographical) relationships contained in the data. For example, a standard UI would not be designed to handle the spatial relationship “Switch located 2ft from a Pole, and 5ft from a curb.” In these cases, extra functionality must be added to the UI, or the processes involved in manipulating the geographical data must be altered such that manipulating the geographical data fits within the abilities of today’s user interfaces.

User Interface Definition
As stated above, a user interface is a mechanism that allows a user to access and manipulate information stored on a computer. Because many different types of information can exist, the majority of commercial user interfaces are designed to cope with a wide variety of common information types. Traditionally, user interfaces have been split into two types: Textual user interfaces; and Graphical user interfaces (GUIS).

A textual UI traditionally comprises of a command-line-interface (CLI). Here, the user types in textual commands, which are usually abbreviated to reduce the number of keystrokes required. CLIS are considered difficult to use, mainly because users have to memorize the most used commands, and look up less used commands. CLIS also provide no visual feedback. The user is given no clue what to do next, save for maybe a blinking cursor. There is also a lack of consistency, as the commands expected by one application are not necessarily the same as the commands expected by another application. This results in an increased amount of user training, as users must be trained for each application individually. Examples of textual UIS are traditional UNIX systems and Microsoft’s MS-DOS.

A Graphical UI (GUI), in contrast, provides users with the ability to manipulate data using graphical objects, using a graphical metaphor as a backdrop. For example, most modern GUIS use the desktop metaphor, which means that all graphical objects that can be manipulated are 106.represented as items that would appear on a normal physical desktop (such as paper, drawings, etc.). Typically, these graphical objects are icons, small pictures which represent the object that the user is manipulating. For example, to manipulate a printing device, the user would manipulate a small picture of a printer. Users can select and manipulate these graphical objects by using a control device, typically a mouse or trackball. GUIS also typically use Windows to display information. A Window is a defined area on the screen, normally with a border. The window can be manipulated in the same way as any other object. A hallmark of a GUI is that they provide consistent behavior and imagery.

Most modem AM/FM software owes its origins to early mapping products, the forerunner of today’s GIS software packages. The earliest mapping software used a Textual UI to control the software, allowing the user to type in commands, the results of which were usually displayed on a separate physical screen. However, the advent of GUIS, and more specifically, the ability to directly manipulate the information that can be seen, has led to the adoption of the GUI as the standard interface used by all modem AM/FM/GIS software applications.

The History of the GUI
In order to design UIS that add and extend the fimctionality of the GUI’s supplied by today’s modem operating systems, it is necessary to understand a little of the history that led to today’s GUIS.

In the 1970s, computer hardware advanced enough to make the concept of a GUI feasible, and a number of research labs around the world developed the forerunners of today’s GUIS. Major advances in GUI design were made at Xerox’s Palo Alto Research Center (Xerox PARC), where the Smallworld OS and Xerox Alto computer displayed GUIS which introduced the Desktop metaphor to the computing community at large. The desktop metaphor introduced the idea of working on virtual paper - that is, when typing a document, for example, the screen made it look as though you were typing on paper; as well as the concept of using a mouse as well as keyboard to interact with the graphical environment.

In 1979, a group of developers from Apple Computers, led by Steve Jobs, went to Xerox PARC to view their GUI. They left with the seeds of an idea which grew into the MacOS, first seen in the ill-fated Apple Lisa, but which had phenomenal success when released as the Apple Macintosh in 1984. Even today, the MacOS is regarded by many as the first (commercial), and most successfid GUI available. At about the same time that the Macintosh was released, Microsoft announced Windows, a GUI for the Intel/DOS platform. In 1986, Windows 1.0 was released. Although very primitive by today’s standards (and even by the then current Macintosh standards) the product matured into a reasonably stable GUI for desktop systems, with the release of Windows 3. lx. Windows has since grown to become the most commonly used GUI on desktop systems.

Unfortunately, for many years Geographical applications could only be used on high-end workstations, due to the graphically-intensive nature of these applications. Up until a few years ago, the only major operating system available to use on these high-end workstations was UNIX. UNIX has been available in many versions from many vendors since the early 1970’s. Some vendors created their own proprietary GUI for their version of UNIX - for example, Intergraph’s CLIX OS, based on System V UNIX, supported Intergraph’s own graphical environment. Attempts to standardize a UNIX GUI advanced significantly with the release of~ Windows, a set of graphical standards for UNIX; and OSF7340[Z~and OpenLook, two competing UNIX GUIS which are based on the X Windows standard. What has resulted from these standardization efforts has been a number of AM/FM/GIS applications that run on many versions of UNIX with only a little modification.

The above developments have led to a number of operating systems that provide GUIS based on the desktop metaphor, and which provide the ability to manipulate information using graphical objects. A large number of vendor-supplied AM/FM/GIS packages have been released for these OS’s, which all have a fairly similar UI design due to the similarities between the GUIS provided by the respective operating systems.

Designing A User Interface for Modern AM/FM Applications UI design is the process of analyzing both the functionality required by the application, and also the processes involved in utilizing this functionality, and then providing a method for users to access this functionality in a straightforward manner. For example, if wanting to design a UI to enable users to plot a map, the first step would be to examine what functionality the UI would have to provide. In this case, the UI would have to provide the ability to define an area to plot, and then provide a method to plot this area. The next step would be to examine the actual processes involved in creating the plot. These could involve accessing the area required; defining a boundary for this area; choosing an appropriate plotter to use; and then plotting the defined area. Using this information, a user interface can be designed which provides this functionality, whilst also supporting the logical flow of the processes involved in the task.

A good user interface can be described as one that provides the following:

A unified look-and-feel Consistent behavior to the users A “unified Look and FeeZ” describes the concept of designing applications such that skills developed in using one application are immediately transferable to another, different application. A good example of this is applications developed for the Apple MacOS GUI. All applications developed for this GUI share some common features (for example: window layout, menu layout) which make the applications consistent. That is, a user who becomes proficient in using a word processor will feel comfortable in using a spreadsheet, because the interfaces are very similar. The keyword here is consistency. Applications that are designed to be consistent with a standard that users are fhrniliar with, or that are designed to be consistent with another application that is used on a regular basis, will inspire more confidence with the users, require less training and support (as users will already be familiar with conducting simple operations), and will ultimately be more successful than applications which are not designed to be consistent.

Consistency is relatively easy to achieve in office productivity applications, such as word processors and spread sheets, where the user is effectively just editing or analyzing a document. Geographic applications present a more difficult challenge, as the operations involved in these applications don’t have a similar counterpart in many of the office productivity applications. Geographical applications require the designers to often reach a compromise with their interface design, designing interfaces that are consistent with other applications where possible, and which offer a logical, consistent approach for operations that are unique to the application. For example, to analyze an area, a boundary needs to be defined around the geographical data. Although modern GUIS have no provision for the creation of a spatial area, they do have the ability to define a boundary for graphical objects. This capability can be harnessed so that it appears that a spatial area is being defined, when in fact only the boundary of a group of objects is being defined. Because this action is not entirely different from actions that a user would be expected to perform in other, non-Geographical applications, a degree of consistency is achieved. Knowing the limitations of existing GUIS also helps in the design of UIS. By listing out all the operations that a user might carry out whilst using an application, each operation can be analyzed to see if the current GUI can support this operation. Otherwise the operation needs to be modified such that it can be supported; or the GUI needs to be extended to handle this operation.

For example, most mapping software provides the capability to zoom in and out of the data displayed. This sort of fimctionality is not supplied by most modern GUIS. To provide this functionality, without changing the GUI, then a button or menu item can be supplied that achieves the operation. This is what is most commonly seen in applications that support the fimctionality. Alternatively, the operation can be performed by extending the GUI - the same operation could be carried out by having the user use their mouse to fence (draw a boundary around) the object and then select the object. This is not standard functionality for most GUIS, but can be used as an extension to achieve the desired result.

Most AM/FM/GIS software supplied by vendors makes use of the built-in functionality supplied by the host operating system. The design of UIS for AMIFM systems typically involves the customization of the vendor’s software such that its functionality is more accessible by the users, or such that it fits more consistently into the users’ environment. Mercury Energy’s MERCCANO AM/FM system is an example of a system that customizes vendor-supplied software. For MERCCANO, the AM/FM vendor’s software is Intergraph’s FIL4M14E, and all the information is stored in a Microsoft SQL Server RDBMS. The MERCCANO system’s scope was such that it would also store non-AM/FM data, such as financial and asset data. This meant that we had to write our own application software to access and manipulate this data. Because we wanted to provide a single, seamless environment to our users, we decided to create our own UI for the system, and integrate the FRAMME sofiware into this UI. We could see two types of UI that could be deployed: Static and Dynamic.

A Static user interface is the same every time a user accesses it. A Dynamic user interface changes depending on the user, fimctionality required, or other factors. For example, a word processor is an example of a static user interface - the interface fimctionality is the same for all users; whereas Microsoft Windows NT is an example of a dynamic user interface because each user can see a different set of functionality when they access the GUI.

Static user interfaces are usefid when all users need to share the same set of fimctionality in an application. Dynamic user interfaces are useful when it is important to restrict certain operations from some users, or when the amount of fimctionality available in an application isn’t necessary for all users. In this case, dynamic user interfaces can actually simpli~ a GUI by providing a user with only the functionality that they need to get their job done.

The decision to use one type of user interface over the other has to depend on both the user group, and the functionality provided by the application. When security issues are involved (for example, an operation that can only be performed by an authorized user), a dynamic user interface can sometimes be the most feasible method of providing the appropriate level of security.

Static user interfaces are relatively easy to design. The interface can be created at the time that the application is developed, and deployed to all users. Dynamic user interfaces provide more of a challenge. There area number of ways that they can be designed, depending on the requirements. The most powerfi.d type of dynamic user interface is one that is created entirely from scratch when it is requested - that is, no predefine user interfaces exist for the application. Alternatively, dynamic user interfaces can be created that have static components. Some examples are:

A number of static user interfaces can be designed, and then displayed to different users, or in different situations. One advantage of this method is ease of design and development - effectively, a number of sub-applications are being created that have different interfaces. Conversely, one disadvantage is that in order to add new functionality, the applications have to be modified, and then redeployed to the users.

The user interface can be created entirely from a central repository of rules, for example a Database. Some of the advantages of this method are that it is possible to give a different interface to each user and the user interfaces can be changed simply by making a change in the central repository. The application doesn’t have to undergo modification. One disadvantage is that this method increases the complexity of the final applications, and hence the design process for the applications.

This latter approach for creating a dynamic user interface was used for the MERCCANO system, as one of the requirements was that the MERCCANO system provide stringent security. The system was designed to be deployed to a large number of users in the company, and would provide a large amount of functionality. This fimctionality could be grouped together - for example, field engineers would need to see maps indicating the location of plant, and also see what this plant was connected to. They wouldn’t need the ability to modi~ plant, or place new plant in the system.

As the MERCCANO system was designed to handle much more than just geographical information, the system would have a lot of functionality, but not every user would need access to this fimctionality. A static user interface approach was considered, but rejected because the amount of functionality that would have to exist in one global user interface would make it unusable, as it would provide too many options for a user.

A dynamic user interface consisting of a number of static interfaces was then considered. Although it would reduce the complexity of the user interface seen by any one user, the idea was rejected as it was too rigid. At the time the system was being designed, user roles in the company were changing, and it was difficult (if not impossible) to tie fi.mctionality down to a specific group of users.

It was decided, therefore, to create an entirely dynamic user interface. Since all security and user information was currently being held in a central database, it was logical to create the user interface from the information stored in the database. To this end, we stored a list of all the fimctionality that the MERCCANO system could provide in the database. We then created user groups, and assigned differing functionality to these groups. A User Interface Manager (UIM) application was written which would read the information from the database, and then create an interface for the appropriate user. The UIM provided a basic template for the final user interface, but the functionality that was displayed to the user was entirely dependent upon the information stored in the database. This dynamic interface has now been in use by our production users for over a year now, and has presented no major problems.

Down the Track: Future Trends in user Interfaces
Computer technology is always progressing, and UI technology is no different. In a lot of cases, new UI technology can be harnessed by existing GUIS to increase the functionality of an application, or to make the fimctionality more accessible to users. A number of new technologies are evolving which will have an impact on UIS designed for AM/FM/GIS applications.

Object Orientation (00) is a recently new technology, which has been making waves in the GUI design industry. 00 has been present for a few years in programming languages (for example, C++). In 00 all entities are reduced to Ojects, self-contained entities that consist of data, and any processes needed to manipulate that data.

An Object-Oriented User Interface is an interface where a user selects an object (which could be a document, an application, or some data in a map) and then manipulates that object graphically in some way (for example, dragging the object over to a printer icon, and dropping iton the icon). In this way, the user concentrates more on the data that they are manipulating, and less on how they should do the manipulation. This can benefit AM/FM UIS by providing a method for users to directly manipulate the geographical data, whilst maintaining any spatial relationships that exist within the data. For example, a Pole object can be placed inside a Property Boundary object; any other objects that are spatially linked to the pole would carry their relationships into the Property Boundary, and any changes made to the Property Boundary would affect the Pole, and also any objects that are related to it.

Add to 00 the concept of distributed objects (where the objects can be physically located anywhere over a network) and you create a very powerfil metaphor: the ability to access information regardless of location or type.

Another recent trend that affects UI design is the huge growth and popularity of the lnternet and its smaller cousin, Intranets. The most popular way of visiting the Internet is through the World Wide Web (WWW), which uses a browser as its interface. A browser displays graphical information on pages, which can be flicked through much like pages in a book, or jumped to using hyperlinks, graphical hot spots that can be clicked onto take the user to as new page. The popularity of the Internet, and the WWW in particular, has led many major GUI designers to attempt to incorporate the browser metaphor in their commercial GUIS. For example, Microsoft is planning to release an upgrade to their Windows 95 shell, which allows users to view the contents of their computers as Web pages.

Following this, many AM/FM/GIS vendors are developing new products that allow their data to be viewed on the WWW. For example, Intergraph has developed a technology in conjunction with Microsoft called ActiveCGA4 which allows vector information to be displayed on a Web page; while ESRI has developed an Internet server extension to their Arc View sofiware that allows GIS data to be accessed over the WWW.

If allowing a large number of people access to your AM/FM/GIS system is important, then the use of the WWW to access your geographical data might be a solution. Design of a user interface for Web applications is similar to the design of normal UIS in one respect: Web pages follow a published standard which, although it results in a fairly standard interface for the Web pages, will still need customizing in some cases, where the required functionality is not provided due to a limitation in the software used to display the Web page. In this case, the same process used to design extensions (or changes to functionality) for normal GUIS can be applied to the Web pages: Identify the limitations of the current interface; and examine the functionality and processes required by the users.

3-D interfaces are another interesting technology being developed. A number of research labs around the world are working on virtual interface landscapes, 3-D areas where a user manipulates 3-D objects, much like they would in a traditional 2-D object-oriented interface. If you replace the current mouse with, say, a mechanical glove that has the capability to provide physical feedback to the user, you have an interface where a user can “pick up” virtual objects which feel like they’re real, and manipulate them to achieve some function. This virtual interface is intended to serve one purpose: to bring the computer-interface into the real world (or a virtual world), such that accessing a computer involves actions that we would perform in everyday life (such as moving physical objects).

These interfaces are like to have more application for geographical data, as geographical data is inherently 3-Dimensional and the interfaces will also have an inherent knowledge of spatial relationships due to their ability to handle 3-D objects and their surroundings. CONCLUSION Whatever form it takes, a UI can be considered successful if it enables users to use a computer to access and manipulate relevant information. Metrics for the success of a user interface design can be obtained by examining what additional functionality the UI brings to the users and also by comparing the time taken to perform fimctions under the new UI, compared to performing them before the UI was designed. With the complexities of AM/FM/GIS data, a good user interface design can decrease the costs associated with an application (by reducing training and support time), whilst increasing the worth of the data stored in the system through more accurate use of the data.

Bibliography
  • Halfhill,. T, 1996, GUIS get a Facelift: Byte Magazine
  • Hess, D., 1994, Graphical User Interfaces: Datapro Information Services
  • Hubley, M., 1996, The Evolution of UNIX: Datapro Information Services
  • Hubley, M., 1996, UNIX GUIS: The Market Explodes: Datapro Information Services
  • Vadlamudi, P., 1996, ComputerWorld New Zealand pl 6 Levy, S., 1995, Insanely Great
© GISdevelopment.net. All rights reserved.