Lessons Learned from GIS Application Development in a State Government Context

advertisement

Lessons Learned from GIS Application Development in a State Government Context

Yueming Wu, Ph.D.

West Virginia Department of Environmental Protection

2006 West Virginia GIS Forum & Workshop

Morgantown, May 18, 2006

Contents

What is GIS application development?

Why is GIS application development needed?

How is a GIS application developed?

Case study

Lessons

Questions & comments

What is GIS application development?

GIS application development or GIS customization development is not to rewrite a proprietary GIS package, but to incorporate users’ ideas to convert it into a usable and stable product.

Why is GIS application development needed?

There are no truly "off-the-shelf" GIS applications satisfying all organizations due to the variety of organizational business models. Business intelligent GIS applications are needed to address the issue.

Casual users, representing the majority in a government agency, prefer user-friendly and practical GIS applications.

Commercial GIS packages focus on basic and common

GIS functions across industries. Power users need more complex GIS tools than a commercial GIS package could offer.

How is a GIS application developed?

Bell D, Morrey I and Pugh J (1992) Software engineering: a programmingp approach. 2nd edn. Prenctice-Hall, New York

Case study

Establish requirements (use case)

Specify (requirements)

Design

Implement

Operate and maintain

Case study: establish requirements (use case)

West Virginia Department of Environmental Protection

(WVDEP) has been developing an Enterprise Information

System (EIS), involving a variety of spatial and non-spatial databases.

Users in the Mining & Reclamation Program were looking for a convenient way to electronically link GIS data with data in non spatial databases.

Case study: specify (requirements)

Composite query:

Electronically link GIS data with data in non-spatial databases (e.g., ERIS & EQuIS)

Facts:

Available inhouse database applications didn’t offer such a function

Most employees lacked advanced GIS skills to take advantage of GIS packages (e.g., ArcGIS)

Case study: specify (requirements)

Streamline composite query processes

Provide easy access to GIS data

Provide easy access to non-spatial data

Improve spatial operation efficiency

Case study: design -- application model

Client-server architecture

Client side

SQL statements

API calls

Server side

Smart geodatabase

Procedures/triggers/views in databases

Programs to link spatial & non-spatial databases

Case study: design -- application structure

A toolbar integrated into ESRI ArcGIS/ArcMap platform

Four groups of functions

Access GIS data

Perform composite queries

Access non spatial data

Utilities

Case study: implement -- coding

Programming languages/techniques

Microsoft Visual Basic 6.0, Microsoft ActiveX Data Object

(ADO), Microsoft OLE DB provider, Microsoft Component

Object Module (COM), ESRI ArcObjects library, Oracle

SQL statements, etc.

Products

COM based dlls (dynamic link libraries), each of which performs a specific task

Case study: implement – application setting

Toolbar integrated into ESRI ArcGIS/ArcMap platform

ArcMap running via a Citrix metaframe terminal services architecture

Case study: DMR Information Navigator

Case study: implement – application setting

End Users

.

DMR Navigator

ArcMap/ArcGIS

Citrix Server

ERIS/EQuIS/RIMS

Databases

ORACLE

ArcSDE

Geodatabases

Case study: implement – application testing

Functionality

Performance

Flexibility

Case study: operate and maintain

Document

Train users

Provide customer services

Upgrade on user feedback

Lessons

Administrative lessons

Technical lessons

Lessons: administrative lessons

Interaction with end users

Understanding users

From beginning to end

Budget consideration

Tight budget

In-house resources

Intra agency collaboration & cooperation

Across the Mining and Reclamation program

Across the agency

Inter agency collaboration & operation

Between WVDEP & the Feds (e.g. DOI-OSM)

Between WVDEP & universities (e.g. WVU-NRAC)

Lessons: technical lessons

Application development

Code as simple & reusable as possible

User involvement as early as possible

Application testing

Client side testing

Server side testing

Application deployment

Performance

Deployment model

Application maintenance

Customer service

Prompt updates

Questions & comments

Questions

Comments

Download