Logo GISdevelopment.net

GISdevelopment > Proceedings > GITA > 1997


GITA 2002 | GITA 2001 | GITA 2000 | GITA 1999 | GITA 1998 | GITA 1997
Sessions

Advanced Technical Topics

Building & Supporting Applications

Business Evolution & Platform Migration

Expanding the User Base -- Non-Traditional Applications

From the office to the Field

Fundamental & Economic Issues of AM/FM/GIS

Lessons Learned

Major Technology Trends and their Impacts

Project Planning, Implementation and Management

Re-Engineering and Integration Issues

Scada and Real-Time Systems

User Project Presentations

Best of the Rest

Invited Presentation


GITA 1997


Building & Supporting Applications


Want to build A GIS? The proof is in the prototype


At this critical stage in the project, short and long term goals must be balanced. If the eventual goal is to build a GIS to support the entire organization, two things must be considered. First, the system must be able to support your immediate departmental needs, and quickly. Second, the system (or at least the data model) must be designed to support multiple finctions in the organization, longer term. Essential to success with this approach is to use the correct technology. It is best to avoid tools that are too specialized or software platforms that were designed originally to support narrow fimctions. The best way to achieve long term success is to adopt a platform that has an object-oriented language built-in and some kind of case tool to better enable data modeling. It should be based on a strongly integrated, open architecture approach. Most importantly, the system must support rapid application development. Obvious bias aside, it is also best to utilize a consulting organization that has had experience implementing applications on the platform and can quickly develop andlor customize software modules.

To achieve the short term success necessary, it may even make sense to build a throw away data model and application to start, while developing the longer term solution in parallel. Also, it is critical that the application chosen can fmction with the available data sources. Applications cannot function without the necessary database to support them. Fortunately, in most organizations today, it is usually easy to identi~ existing digital data formats (from a legacy CAD or GIS) that can be fairly quickly translated into the system. If no such sources exist, it will be necessary to construct a pilot database from maps or even field inventory efforts. These efforts, however, have also become much faster and inexpensive.

Step 2. Gather Basic Requirements of the Initial Atmlication The first essential phase in a development project is to gather the requirements of the application. This could be done in as little as a week. The key elements here are: the availability of a knowledgeable and insightful subject matter expert (SME); that the design team remains disciplined enough to keep the focus of the application sufficiently narrow while still achieving significant benefit; and that the requirements are documented clearly and concisely. The result of this phase should be a basic, first cut, functional design. The design will naturally evolve as the prototyping begins and both the SME’S and the developers become more educated. The fictional design document should be a working document.

Step 3. Build a Basic Data Model but with Awareness The first cut of the data model should be as simple as possible while still supporting the necessary fmctionality. If existing data resides in a CAD or legacy GIS that must be converted, considerations must be made in the data model to enable straight forward translation and use of this data. The critical factor is that all of the essential elements of the network are captured and that a connective, topological model is defined. It should be maintainable by an operator with minimal software customization and application complexity required.

Mapping requirements may dictate additional complexity to support graphics at a variety of map scales. This type of complexity is best avoided at the beginning. If mapping is required, as it usually is, focus should be put on one product, usually the underground location map (electric), gas distribution map, or strand map (telephone). This is mainly because of the relevance to designers who are accustomed to these map views. The data modeling step is one of the most critical steps, but decisions made at this stage are not irreversible. It is very important to stay disciplined during this phase. Problems can be fixed later, even after data has been translated or converted into the system (provided that the platform chosen easily supports model changes on live data). Once again, keeping both discipline and balance is important. Perfection of the data model is absolutely impossible, especially at this stage. Once the first cut of the data model is complete, it is possible to move onto the next stage. Making repeated changes during the data modeling stage before full prototyping will not save any time nor avoid inevitable changes in the model. Further tweaks can occur throughout the process, but do not necessarily provide immediate benefit and will hamper data conversionkmslation efforts. It will be necessary to defer major data model changes until after a working prototype has been completed and implemented.

Step 4. Prototwirw and DesiminR on the Fly With the advances in graphical user interface (GUI) tools and object orientation in recent years, designing a system while developing iterative prototypes has become more feasible than ever. Furthermore, with object orientation, it is realistic and, indeed preferable, to utilize existing software modules in the development. This will greatly speed up development, provided that the software modules developed or used follow all of the rules of object orientation and are not too closely linked to a specific data model. It is important that the development team have experience with object-orientation. Another key to building a successful prototype, which will also be essential in the later stages of the project is to involve the SME’s early in the process and frequently throughout the development. The SME’S will be able to provide significant input, especially once they have had an opportunity to become familiar with the software platform and its capabilities. They will most likely take ownership of the software and will become champions for the project across the organization within a short time. The only caution here, again, is that the team remain disciplined. The system does not have to be perfect at this stage. As new requirements surface during the prototyping (as they inevitably do), they should only be incorporated if they bring significant pay back for the system and do not derail the schedule or budget. The system should be made to be easy to use, but “bells and whistles” should be avoided. All through the prototyping phase, the functional requirements can be fiuther refined and a complete system design created. This system design will become the basis for the full system, and should encompass many aspects of the prototype and its functionality. Also, while the prototyping phase continues, the system’s network infrastructure can be set up and the base software platform installed. Preliminary “work in progress” versions of the prototype can be installed at designated user sites and fimther SME involvement and feedback solicited.

It is also important at this stage that a system administrator (or systems support group in larger organizations) be identified to develop and support the computer network. It is preferable that this fi.mction be integrated to the project team as opposed to being a part time fi.mction from someone elsewhere in the organization. Additional training on the software platform and its tools can also be undertaken. This will enable the support group to be well positioned to support the working prototype while the fill system is under development.

Step 5. Imulementin~ the Imperfect Solution Once the prototype has been reasonably system tested and is completed sufficiently to a “version 1.0”, it should be straightforward to implement the system, initially with a set of “seed” users. The system implementation will proceed more smoothly if the infrastructure has already set up, during the prototyping phase. Adequate training and understanding of the system by its intended users are essential. The SME’s should be trained first, even prior to application development. When the application is ready to roll out, the SME’S should be able to play an active role in, if not teach, the training. They should also be heavily involved in, if not develop, much of the user documentation. Once the prototype has been installed, and is in actual use, there is likely to be significant feedback (if not, then something is wrong and the system is not being used). This feedback is crucial to the long term development and needs to be incorporated into the design and communicated to the development team immediately. Ideally, even after first implementation, the prototyping should be allowed to continue and incremental deliveries of more advanced functionality scheduled regularly. In many cases, the development and implementation can happen concurrently with each providing input to the other.

Step 6. Taking the Show on the Road while Imtmoving or Redevelopiruz it Once a working prototype GIS application has been installed, there might be a temptation to call the system complete. After all, if the original charter has been met, even at the most basic level for the specific department that it was intended for, it may not be critical that the system be enhanced further and extended to fbnction throughout the organization. Realistically, from the project manager’s perspective, it might be the right time to move on and turn the system over to support.

If the vision, however, is to extend the technology throughout the organization, and not only automate but introduce the real efficiencies of integration, there has to be corporate buy-in. Furthermore, this was only a working prototype, which was developed in a relatively “quick and dirty” fashion. To get the additional fhnding needed, however, it will be necessary to demonstrate the immediate benefits that were achieved through implementation of the prototype. The best way to achieve this is through marketing of the system and the vision throughout the organization. There is often a significant sales effort necessary to get a GIS project started in the first place. The selling will become much easier once a working example can be demonstrated to high level management across the organization. This is the best way to secure the additional funding that will be necessary to extend the prototype into a fully developed system.

Page 2 of 3
| Previous | Next |

Applications | Technology | Policy | History | News | Tenders | Events | Interviews | Career | Companies | Country Pages | Books | Publications | Education | Glossary | Tutorials | Downloads | Site Map | Subscribe | GIS@development Magazine | Updates | Guest Book