GIS and The Network

Daniel McAlister

Abstract

This paper will deal with the creation and maintenance of ArcView projects utilizing a wide area heterogeneous OS network within a large electric utility. It will detail how an X Server solution is used to bring Unix processing power to the desktop across a WAN covering most of Southern California. The development process for one project in particular will be outlined. This will cover issues relating to ArcView's muti-platform support, and customization problems associated with this feature of the software. The focus of the paper will be upon distributing GIS functionality to a wide number of users across a relatively large area. A comparison will be drawn between an X Server application network solution and the new intranet ArcView and MapObjects options.

 

Introduction

Since its birth within the arena of computer cartography, Geographical Information Systems has flowered in the mainframe environment. The compost originating from Unix and VMS processing power. Not surprisingly the history of the computing environment has been one of dynamic change. At present we are witnessing the rapid development of more powerful personal computers and parallel to this, the increasing connectivity of all computers via networks such as LANs, WANs, and Internets.

This new environment has had positive implications for GIS. The GIS professional can retain access to the Unix box, utilizing high-end memory and processing resources and increasingly GIS is ending up in the hands of the layman or corporate user, and migrating to the PC platform. This provides new challenges to the GIS administrator, vendor, and almost everyone involved in this industry. GIS has had to embrace "open computing" concepts more than ever. The proprietary database is out; seamless integration with existing de facto market standards is the rule. An illustration of this new network-orientated, open system-based GIS solution can be exemplified by Southern California Edison's (SCE) approach to implementing a GIS for decision support work-crew dispatching.

SCE maintains a Wide Area Network covering most of Southern California. Hardware varies from mainframes andminicomputers, down to standard desktop IBM clones and Power PCs with network interface cards. Operating Systems range form multiple flavors of Unix, IBM's AIX, and Sun's Solaris, with Windows 3.x, Windows 95, NT and Macintosh resident on the desktop. The network operates via the Transmission Control Protocol/Internet Protocol (TCP/IP), with ethernet being the primary transport. SCE as a corporate body utilizes a number of GIS packages, a large range of Esri products plus MapInfo from Mapinfo Corp. and Geographic Facilities Information System (GFIS) from IBM.

Application Requirements

Southern California Edison's Electric Distribution Publication Department (EDPD), required a method of readily identifying the distance from an SCE Service Center and an ad hoc work location in the field. This location data is updated on a daily basis and resident in a Sybase AIX Server. The system would necessarily have to be accessible from a number of Service Centers throughout the SCE Service Territory. SCE maintenance employees have union-negotiated Euclidean distances thresholds from dispatch sites. These distance ranges must be verified, and it was this impetus which brought the EDPD to sponsor a GIS pilot project within Geographic Information Analysis Systems (GIAS). GIAS is an entity of the Natural History Museum of Los Angeles County Foundation and provides SCE with GIS services utilizing and customizing mainly Esri software.

System Design

These requirements had a number of implications for system design. First, to obtain access to ad hoc locations within the Service Territory, the system necessarily had to have access to a street dataset for most of Southern California. A rather large dataset. The accessibility requirement at a variety of locations forced consideration of a number of scenarios for potential system design. Should each site have its stand-alone desktop GIS? The street dataset required is over 745 megabytes and, once processed for geocoding, this increases to over a gigabyte of data. Merely accommodating this dataset is beyond the capacity of the standard company PC hard disk and its processing and memory resources. Could the data be resident on a central server? Novell or even a Unix box, mountable via the Network File System (NFS)? This option was researched and after assessing the performance issues it was rejected. Due to the large amounts of data, the network packets could not be transmitted as efficiently and as rapidly as required. NFS can be a very successful option in solving Unix-to-PC connectivity problems [1]. I would advise anyone interested in this option to investigate a freeware software package called Samba written by Andrew Tridgell [2]. Samba runs on Unix, enables a Unix host to establish shares that Windows clients can map, and enables Unix clients to map shares on Windows hosts (Windows for Workgroups, Windows 95, and NT).

The Graphical User Interface
Many computer networks incorporate heterogeneous operating systems. In the initial design process of GIAS's prototype rapid application development (RAD) phase, a number of operating systems were being evaluated. GIAS became aware of problems in moving ArcView (AV) projects from one OS to another. While Avenue supports multi-platforms, creating on-line help and significantly extending AV's GUI requires non-Avenue code, code that can be OS-dependent. Avenue under AV 2.1 did not provide the developer with the ability to create multicheck boxes. This was remedied in version 3.0; and an extension to give the programmer full control over AV's GUI will be released with AV 3.1. GIAS turned to the Tool Command Language(Tcl), a high level scripting language and it's associated add-on Toolkit (Tk) [3], to provide a more flexible widget creation toolbox. Tcl/Tk is available on most versions of Unix, Windows 3.1, Windows 95, Windows NT and Apple's Macintosh platform. This scripting language is freely available on the World Wide Web. However, as an interpreted language its libraries must remain with any code written. Communication between Avenue and Tcl/Tk is possible via file sharing. However it would not be impossible in theory, for AV and Tcl/Tk scripts to communicate via C code routines and remote procedure calls. Tcl/Tk is in essence a library of functions and objects created using C code.

ArcView and On Line Help
While developing DCM Locate on AV 2.1, an on line help system was developed to answer user queries relating to customized utilities. Initial testing upon the Windows environment required the use of rich text format (RTF) and a Windows Help compiler to produce Windows-compatible Help documents. AV does not provide these tools. The developer requires Microsoft Word or any text editor capable of producing RTF files. If you already have Visual Basic or Visual C++ you possess the compilers hcp.exe or hc31.exe. If you do not have these, nor more recent Windows 95 compilers, then they can be purchased from Microsoft.

Having ultimately chosen the Unix platform for system development, GIAS proceeded to incorporate an on-line Help utility. It was necessary to include Unix OS commands help into this utility for reasons which will be explained later in this paper. In version 2.1 AV for Unix, this meant creating hypertext documents interpreted by AV's existing help resources. This method was highly successful; however, the files created are not OS-independent in that they cannot be directly read by Windows or Macintosh AV. Unfortunately for GIAS, version 3.0 of AV for Unix shifted the goal posts completely. The hypertext authoring tool for AV 3.0 Unix is Bristol Technology's HyperHelp. This comprises a compiler and viewer and is compatible with RTF files. AV 2.1 customized help files are not compatible with HyperHelp. GIAS decided, however, to pursue a more cost-effective solution, and has developed on-line support and a data dictionary in html. Avenue can execute a browser on the server and the default home page can be set to the html help files.

The X Server - Problems and Solutions

Bench Marking
The X Server, X-Windows, X Terminal Emulation or PC-X Servers are a number of names for the process of remotely accessing programs running on Unix hosts and having the display exported to the remote user's PC. This is similar to telneting with the added advantage of the PC receiving the entire graphical user interface of the executing program (please see Appendix A for Esri's statement on X-terminal emulation). GIAS turned its attention to an X Server option as a solution to its network requirement needs. Lan Workplace 5 from Novell, Exodus from White Pine Communications and Exceed from Hummingbird were bench marked in trials using AV as the remote application. It should make it clear that we made use of all the X Server software packages default configurations, problems encountered may be rectifiable with time spent reconfiguring various aspects of software setup. Lan Workplace simply had too many inconsistencies integrating and interpreting AV's display; it appeared distorted and AV was unworkable. Exodus performed better, yet was unable to handle AV's table of contents fonts. Using Avenue to reset the fonts solved this problem. Exceed, however, proved to be relatively seamless in its interaction with ArcView, and with Esri also supporting this package, Exceed was chosen.

The Result
The system, code-named DCM Locate (Design Construction Maintenance), therefore utilized AV operating on an IBM AIX RS6000 host. Windows 95 standard SCE PCs, with X Server software installed, availed of the system via the network. While Exceed did function in conjunction with AV, it is by no means a perfect partnership. There is no manual which details how to configure Exceed's X Server with AV; the process has been one of trial and error (please see Appendix B for Exceed/AV configuration details). Nevertheless, the system is stable and productive. The release of AV 3.0 has improved the essential geocoding functionality of the system and also its cartographic capabilities. AV's Database Integrator is used to connect to the corporate Sybase System 11 EDPD work-order tables. Avenue is used to interactively develop a Structured Query Language (SQL) query by means of GUI-based menus, and this query is then passed via the Database Integrator to the Sybase database. This utility naturally imposes security in the form of a password-protected Sybase user account.

Once downloaded to the users home account on the server the data is available for address matching against Thomas Brothers geocoded street dataset. Address quality is very poor. There are no zip codes at all and some addresses have no house numbers. Some records have no addresses attached, and throughout the database, a variety of characters are used to indicate cross streets. These addresses are not entered into Sybase for the purpose of GIS analysis and they have no standard address format. To increase the match rate against the street dataset, an address filter string analysis avenue script was developed to modify the addresses. AV will only accept one string as an indicator of two streets crossing. As street intersections are a popular address format throughout the database, and a variety of characters are used to indicate this, the filter script replaces these characters with the ampersand; AV's default street intersection indicator string. The filter script has increased "hit" rates in the address matching process by at least 30%.

Unix the User-Friendly Operating System
The fact that DCM Locate functions on a Unix server, brings most users into contact with a new computing environment. The user faces a learning curve incorporating account management, Unix command line functions and can mean the need to learn Open Windows GUI or the Common Desktop Environment (CDE). It is not impossible for a user to edit and create data that will reach the limits of his or her disk space quota. It is, therefore necessary for users to receive sufficient basic training in Unix.

Alternatives

The Internet Map Server
GIS like many other disciplines, has found its way onto the Internet. Most GIS vendors including Esri, supply web-based GIS software-development tools, (MapObjects Internet Map Server and the soon-to-be-released AV Internet Map Server). Most however are in their first release or still in beta release. During initial system planning of DCM Locate in late 1995, GIS web development tools did not exist. Today, however, a web solution would be a realistic alternative to the X Server configuration. Internet browsers already pervade the corporate desktop, and a GIS solution could become another bookmark in the browser. More and more databases are becoming web-enabled or accessible, and there is hot competition among vendors to produce the highest-level web language and web-development tools. It has been our ezperience however that GIS systems have a habit of evolving beyond the bounds of their initial brief. This can be attributed to clients expanding requirements as they realize the potential functionality of GIS. From measuring Euclidean distances, it's initial brief, the DCM Locate system has expanded into producing detailed maps of SCE facilities. It would be prohibitively expensive at present to create an in-house web-based GIS equivalent in functionality to that of AV. However with the imminent release of Esri's AV Internet Map Server Extension, the previous statement may not remain valid [4].

The X Server Plug-In
Another network alternative has evolved from an incorporation of both the web and X Server technology. Many X Server vendors have turned their attention to the internet and many have developed packages to integrate both [5]. White Pine, the creator of Exodus, has released an internet browser plug-in; "WebTerm X Power Plugin". This enables the user to access AV, or any other software package requiring Unix processing power, from within the browser environment. The need for X Server software on the PC client, baring the plugin itself, is no longer required. However Unix account access is required by the user, and again, Unix file security is in operation. In an internet situation guest account access with read permission only could be an option. This could also apply in an intranet situation. AV can function in this environment and is able to operate with a beta copy of WebTerm X.

Licensing Issues and Security

X Server packages, such as Exceed, provide an array of utilities for PC-Unix interaction: FTP, telnet, remote execute, et cetera. Some of these utilities have helped GIAS to override AV for Windows and AV for Unix's incompatible Inter-Application Communication [6]. A PC-to-Unix interaction suite such as Exceed or other such packages gives the user true interaction capabilities between operating systems. If, for whatever reason, the user wishes to print to a file and down-load that file to the local PC client in order to print it to the local printer, then ftp is available. Remotely executing ArcInfo on a Unix server is easily achieved via a Windows based remote execute utility. The developer or desktop user does not need to concern themselves with incorporating avenue code into the project to achieve this. In the case of AV running on a PC, writing out avenue code to a text file on a Unix disk mounted via NFS. Remotely executing AV on the Unix server which also has access to this shared disk, enabling the executied apr to access, load, and run the text file using a startup script can permit an AV application on a PC to access Unix processing power.

An X Server session will utilize a full AV license on the host and all Unix security protocols are implemented regarding account access and file permissions. The WWW has experienced some bad press recently after the security at several prominent sites was breached. The Web is a much younger creature than X Server software and is less secure. Security is a prominent issue at present in Web software development and, with time, should improve. Esri's Internet Map Servers would seem to have transaction based licensing. One server can respond to requests from multiple clients. This will inevitably mean on a multiuser system-to-system comparison, that internet GIS implementation will cost less than the one license/one user X Server option.

Summary

In this paper I have not essentially aimed at a chronology of the DCM Locate GIS, but rather at detailing a series of network options for the GIS developer by illuminating the road blocks and workarounds experienced by GIAS in developing this networked GIS. I have tried to demonstrate that the interactive flexibility of fully developed systems such as AV cannot be matched at present by web based solutions. The Live Map [4] is indeed interesting and informative, and a step beyond the limited publishing aspect of previous web implementations. I am convinced in time web based GIS tools will incorporate the entire functionality of our present desktop solutions, any GIS professional ignoring this new field of web based application development is missing out on an exciting new way of extending the medium of GIS. The thin client fat server paradigm is certainly the presently accepted template for system design, X Server and the Web fit nicely into this new world. At present system requirements will determine which is the most appropriate for particular networked solutions and time will tell if the X Server will be totally eclipsed by the Web. I beleive that for some time to come GIS and the wider computing community will require X Sever technology with those packages integrating with the internet proving the more popular.

References

[1] Charles P. Butler, PC to Unix Connectivity, 1996 Esri Conference Paper.

[2] Mark Joseph Edwards, Unix and NT Interoperability Made Easy, Windows NT Magazine March 1997.

[3] John K. Ousterhout, Scripting: Higher Level Programming for the 21st Century, White Paper available at http://www.sunlabs.com/people/john.ousterhout/scripting.html.

[4] Various Arc News Vol. 19 No. 4 1997

[5] Michael Jay Tucker, The Wild, Wild Web, Sun Expert April 1996 Vol. 7 No. 4.

[6] John H. Ganter, Inter-Application Communication (IAC) Using Esri Software and Other Development Tools. 1996 Esri Conference Paper.



Acknowledgments

My thanks to David Schirmer Project Coordinator for EDPD's DCM Locate System, my co-programmer Dora Wang, Sarah Van Wagner, Jeanine Cavalli, Julie Crescione, Edward Meador, Ryan Damon, Kevan Newton, James Rodriguez, Joshua Schechter, and Joanne Wilborne all from GIAS. Special thanks also to John Miller of Electric Distribution Publication. I Cannot forget to thank all the helpful voices down the phone line at Esri Redlands Technical Support for their help during DCM Locates development.

Daniel McAlister
GIS Analyst, Geographic Analysis Information Systems
Southern California Edison
2131 Walnut Grove Ave
Rosemead, CA 90401
Telephone 818-302-7858
Fax 818-302-8240
mcalisdg@sce.com

APPENDEX A

Esri Statement on X-terminal emulation

ArcView supports several window managers (such as Motif and OpenWindows); it can also support X-Windows X-terminals available from several of the computer hardware manufacturers.

The use of X-Windows terminals increases the load on the host system, as they require X-Window processing and additional network activity, in addition to the actual process or application being run.

Esri does not guarantee compatibility of this type of hardware with any host, operating system, or ArcView. The mixing of hardware and X-server protocols from different vendors may cause problems, as the respective implementation of X-Windows may be different. Because of this, support for X-terminals is limited. Users are responsible for setting up an X-window environment from the host.

The emergence of X-Windows and network-based computing for GIS has created interest among many ArcView users in the feasibility of using personal computers in conjunction with their GIS network. X-Windows emulation software packages, often called 'PC-X servers', allow a personal computer to mimic an X-terminal: attach to a high-speed computing network, access a host or server system, perform applications there, and provide graphics display and windowing capabilities.

Esri does not guarantee compatibility of this type of software with any host. Users are responsible for setting up an X-Window environment from the host to a PC using X-terminal emulation software.

The recommended minimum PC configuration for supported X-emulators is as follows:

- Minimum 12 MB of RAM (16 MB strongly recommended)

- VGA video card with at least 1 MB of video memory

- Minimum 800 x 600 resolution capability

- IBM-compatible PC (386/33 minimum)

- Network adapter card (16-bit card recommended)

- Network communications software (TCP/IP stack - supplied with X-Windows emulation software)

Esri supports the following X-emulation software for use with ArcView Version 2.1 running in remote window manager mode:

Hummingbird Exceed for Windows

WRQ Reflection X

NCD PC-Xware

APPENDEX B

Exceed and ArcView

Exceed X Server in Single Window Mode using X window as the Program Type and rlogin as the start method, causes numerous problems with ArcView. This setup was found to be unworkable.

Exceed in Multiple Window Mode using X window as the Program Type and rlogin as the start method, does work much better than Single Window. However this configuration can encounter color mapping problems, Avenue scripts which use message boxes failed to function correctly. DCM Locate could not connect to a Sybase database in this setup.

Exceed in Single Window Mode with the entire Unix Open Windows or CDE GUI exported to the Client PC produces the most stable system configuration. Using Rlogin (TCP/IP) as the start method with Terminal Emulator as the Program Type and the Command line executing the Unix host GUI, provides the user with a Unix interface on the desktop, ready to operate ArcView.

The following is a step by step setup procedure to obtain a full Unix desktop environment on your PC using exceed that will operate ArcView successfully, you need to:

1. In the Exceed icons group select Xconfig: under Windows mode set this to Single.

2. Open XStart in the Exceed icons group and Set

  1. Start Method to Rlogin
  2. Program Type to Terminal Emulator
  3. Command to /usr/dt/bin/dtwm -display @d & (example)
  4. Enter User id Password and Host name

3. Save this file, and exit.

4. Next run exceed, this should create one large window.

5. Click on the X in the windows top left hand corner, and select client starter under Tools.

6. Double click the file you just created, and select run from the resultant dialog box. This will start the chosen Unix GUI.