A Holistic Approach for the Development and Implementation of Robust and Cost-Effective Enterprise WebGIS Business Solutions

Recent advancements in internet mapping technology, efficient geospatial data management systems, and availability of different GIS API’s have revolutionized the way in which the geospatial data is being used, shared and represented through distributed systems for business applications. However, development of powerful, highly functional, yet costand time-effective enterprise WebGIS business systems requires a very robust and highly scalable architecture. The architecture should have the inherent characteristics of rapid development, a well-defined object library and at the same time it should comply with the existing geospatial interoperability standards defined by Open Geospatial Consortium (OGC). On the other hand, development of extendible distributed business GIS systems requires the presence of tailor-made inbuilt models available as modules which can be extended further by readily implementable user-interface templates supported by object modeling environment which allows for custom design and delivery of the processes and map output. There are various commercial and open source web mapping solutions which offer a great deal of flexibility and functionality. Nevertheless, they restrict the user community with certain limitations, in terms of functionality, cost or complexity. This necessitates, defining a new approach which efficiently caters the user requirements and not limiting them with aforementioned shortcomings. This paper aims to evaluate various architectural alternatives for delivering robust distributed GIS business solutions and also attempts to give an account of an implementable instance of a WebGIS architecture which can cater the multi-user and multi-industry requirements. G. Murali Krishna et al.


Introduction
Rapid advancements in internet technology and database management systems vis-à-vis storing, managing and disseminating the geospatial data over World Wide Web (www) opened up the vistas for completely a new generation of information applications, i.e., WebGIS [1].For overcoming the limitations and shortcomings inherent with traditional desktop GIS which limited the GIS technology to a selective group of users, WebGIS as a multi-user platform transcended the boundaries and proved that it is highly powerful and effective in sharing, distributing and representing the geospatial as well as associated information over Internet through HTTP protocols.Due to their cost effectiveness and ability in reaching majority sections of the community, WebGIS applications are now becoming pervasive and have far reaching impact on information sharing and decision making [2] [3].These imminent characteristics qualify WebGIS to be considered as all-in-one business solutions package and are the reason why it is being widely implemented at enterprise level.
However, implementation of a WebGIS at enterprise level involves integration of various specialized domains and extension of their functional environments makes the system highly complex.Apart from that, development of a WebGIS model which is highly scalable and can connect to a wide range of geospatial and other data sources requires adaptation of commonly acceptable standards, such as the one specified by OGC.
This paper attempts to design the highly scalable WebGIS architecture based on modular approach which integrates various processes and sub-processes.The modular architecture approach also specifies the unified model of geo-information systems that forms the basis for implementing a comprehensive enterprise level business WebGIS solution.

Need for a WebGIS Framework Rather Technology
In the past one decade, especially in last 6 -7 years GIS Industry has made giant strides as it witnessed path breaking technology advancements with respect to capturing, storing, integrating and distributing the geospatial data over web.Most importantly upgrading the existing RDBMS systems as SRDBMS by integrating it with the most powerful dimension "S" (Spatial) transformed the whole scenario and truly gave the GIS technology the power to bring the next big IT revolution.However, an overview of GIS technology realm indicates the disarrayed paths of developments which are still short of overcoming the weaknesses in integrating the technology components, which are essential for developing seamless and robust distributed GIS systems.The very reason necessitates the conceptualization and development of a GIS framework which has all those strengths that are lacking in the existing systems and delivers a truly robust and seamless distributed WebGIS system which can be even adopted for desktop as well as mobile platforms with a plug-and-play architecture.The reason why it should be called a GIS framework rather technology is simply because developing such system is nothing but the amalgamation of different technology architectures and sub-systems.

Methodology
Depending on the development and integration stages involves the Enterprise GIS system development process can be organized into five phases: 1) Design and develop a Data Model 2) Build an Enterprise Spatial RDBMS or SRDBMS into a multi-tier and user system 3) Integrate the SRDBMS with spatial and non-spatial/attribute data components 4) Develop the application as per the specifications 5) Test and Deploy In order to suit the defined specifications and typical environment, the application architecture and authentication has been implemented.The following sections describe in detail about the various features which are considered for building the comprehensive Enterprise GIS system.

Life Cycle Model
An incremental and iterative methodology was proposed for the development of the WebGIS system, as it allows for the development and integration of smaller and manageable blocks in iterative mode.The bottom-up approach is very useful in reducing the burden of managing the increasing complexity of aggregated code components which grow by every new iteration (Figure 1).

Development Environment
The database system that was identified to be suitable in meeting the objectives was Postgre/Post GIS which is open source and available free of cost.Postgre/Post GIS comply with the open specifications while it has all potential to work as a full featured database on par with other commercial SRDBMS systems available in the market.

Architecture
The system architecture was aimed at implementing a truly distributed enterprise GIS by way of implementing a new enterprise geographic information application which runs on a centralized server and capable of handling mapping, geoprocessing and data management services (Figure 2).
Distributed GIS services enable the end user to manipulate GIS data and maps interactively.Distributed GIS services can directly interact with heterogeneous systems and platforms without the constraints of traditional client/server relationships.There is no difference between the client and a server.Every GIS node embeds GIS program and geodata.Each GIS node can become a client or a server based on the task at hand.A client is defined as the requester of a service in a network while a server provides a service.There are two categories of distributed GIS: Internet GIS and mobile GIS.The major difference between them is that Internet GIS works on the wired Internet networks and the client is usually a desktop computer, while mobile GIS works through the wireless telecommunication networks and the client may be a laptop computer, a Personal Digital Assistant (PDA), or a mobile phone.The use case model design of the system is mentioned in the Figure 3.

Service Oriented Model Based Framework
Use of service oriented model based framework inherits the characteristics of rapid development of workflows [4].In context of the WebGIS application, the models will help integrating two varied functional aspects, such as, application specific queries and information streaming which results in a defined user output.This ensures for the elimination of functionality baggage which is not in the scope of the application desired by the user, which also reduces the complexity of application and operational dependency on the specialists.
The proposed structure of the application allows for easy scalability of the spatial functionality at both fronts, i.e., on server side as well as client side.This also would ensure for the easy automation or customization of workflows and services which gives the user with a flexibility of configuring the system according to the requirements.
The WebGIS framework discussed in the following sections is composed of several key functional domains, which are generalized based on communication platform, internet computing environment, GIS and data management functions.Every domain includes several components which implement certain function at a specific to a business requirement.Generally speaking the architecture of Web-GIS mainly includes five parts: communication platform, system service, application service, data service and client interface, as defined below.Suggested model framework is characterized by the hierarchical organization of the WebGIS system functionality across the business categories, modules and spatial functions as defined by the scope of the application, which can also be easily remodeled by "drag and drop" facility.Physically, the whole functionality of the application resembles a tree structures which enables aggregation of business modules and relying functional queries common to a bundle of rich user interfaces.While the user interface and transactional components are organized across the business domains according to a top-down approach, certain common functions are organized according to a bottom-up approach which facilitates for creating "on-fly" user defined models.The whole system organized in the form of a tree structure, where the custom user interfaces are nothing but the aggregations of business modules, which are the aggregations of basic functions and queries.The custom interfaces are built upon a predefined set of business layers which are the outcomes of the transactions performed on various data parameters using the combinations of queries.The architecture facilitates for the easy navigation and drill-down of the system and the user who wants to interact with a customized interface with a predefined business objective can easily transmits to child layers are display and query, i.e. if the top layer is selected for displaying or querying, all of its sub layers will be displayed or queried, too.a) Application Interfaces User interfaces acts as a presentation layer in the WebGIS system and provides the user with the ability to select the thematic information custom to a business application.The provisions of multiple user interfaces in the system are basically intended for user interaction which implements all kinds of standard GIS client functionalities depending on the user choice.These interfaces rely on the business GIS modules of specific combinations which provide the isolated functionality to the client, such as, customized thematic layer display, query, reports etc.Characteristics of the thematic output getting rendered vary depending on the type of application interface that a user has chosen.
b) Application Specific Business Modules In WebGIS system's perspective, business modules are the aggregated components of functional objects which are independent of the application interfaces but can be part of any application interface.These isolated functionality modules can be integrated or regrouped to link to the underlying spatial data to power the application interface presiding over it.Each isolated business module is capable of communicating with their counterparts of the system using asynchronous requests.Simultaneously, each module would reveal unique features related to the requirements of the underlying infrastructure and enable exploration of the interfaces between the integrated WebGIS components.

Data Models and the Database
Implementation of a full-fledged enterprise GIS system must require the support of a high end spatially enabled object-relational database system.The RDBMS system should be conversant in dealing with spatial phenomena of real-world, which is nothing but the objects, relations and events or object interactions.This demands the database system to have typical functionality typical to spatial domain, i.e., topology and spatial referencing system (SRS).These features are supposed to be facilitated through a robust group of object library meant for creating, storing, and interacting with graphic/vector features and symbology.This is only possible through the successful fusion of diversified database concepts such as, RDBMS (Relational Database Management Systems) OODBMS (Object Oriented Database Management Systems) and ORDBMS (Object Relational Database Management Systems), which deals with tabular as well as hierarchically arranged object transactions.There are various commercial SRDBMS systems which are capable of handling the job nicely using the above mentioned database structures, but they are expensive.Nevertheless, these objectives can also be met with one of the best Open Source solutions Postgre/PostGIS, which is OGC complaint and available for free.
It is also very crucial to design an effective spatial and attribute data model clearly defining the data parameters and their relations for successful implementation of an enterprise level GIS system as it must meet the current and future requirements of the organization.In order to perform various spatial as well as attribute operations, the data model should be capable of efficiently storing and linking various vector, raster and attribute databases.Simultaneously, it has to while the data model shall also support symbol display and the data maintenance process.In addition to that, the data model should be extendible, compatible and should be integrated with external systems and databases as and when the need arises.
In fact, a holistic and comprehensive or unbroken enterprise geospatial information management system de-velopment life cycle involves data flow from varied sources.If modifications have to be made, from the data user back to the database, proper validation mechanism is to be developed with necessary steps to ensure that data are complete, secure, documented, and accessible.These steps include a suite of necessary operations like data formatting, quality control, documentation of metadata, cataloguing, tracking, backup, delivery and update (Figure 4).a) Factors should be taken into consideration when designing a Data Model To be able to design a robust data model, it is essential to identify and translate various organizational and system level requirements into a well-defined database structure.Data design needs may arise from different levels and diversified nature of the intended utility of the system.There are various combinations of factors, which demands for a high level data model, namely, operational and functional; interactional and transactional; integration and interoperable; and back-up and maintenance.This can be achieved only through the involvement and participation of cross-functional teams, which includes system architects, managers, administrators and end users whoever may directly or indirectly maintain and interact with the system.b) Operational and Functional Designing of a data model which ideally meets the operational and functional requirements of a business WebGIS system is only possible when the scope and objectivities of the system is fully understood.A very good WebGIS system model must be able to foresee the operational requirements and functional requirements of the user [5].The system must be operational throughout the lifecycles of various business requirements dependent on it.c) Interactional and Transactional Interactional and Transactional communication qualities are the two most important aspects of the business WebGIS system which can be directly referred to the performance and efficiency of the system.These requirements are mainly governed by the database it is dependent upon.Thus, it is mandatory that the data model should take these aspects into consideration.Define and formulation of a robust set of predefined procedures linked to the user interface is a pre-requisite for achieving "all time-all high" performance of the system.Also, keeping in view of the nature of the continuously evolving spatial database, the data model should have the compatible for versioning, which allows for implementation of parallel transactions on same feature classes, simultaneously.The whole interactional-transactional procedure of the system resembles a two-way traffic flow, wherein multiple-users sitting across the geographies will be able to interact with the data dynamically at the same instance simultaneously.d) Integration and Interoperability Presumption and defining of data integration and interoperability requirements are very difficult as they are highly dynamic and cannot be foreseen, if not dealt with properly, it may result in incompatible issues.This is very significant as the system should be able to conversant with diversified nature of spatial features, data structures and values.Data model should be competent enough to link and integrate with diversified data models, especially, CAD and other attribute data formats without compromising the accuracy levels.
e) Implementation of Generic Identifiers Generic identifiers are highly useful to implement in spatial database as they facilitates easy linking and rendering of external spatial data records by means of a common foreign key.Implementation of generic identifiers having a common spatial referencing system allows relating with a corresponding key or a list of keys in a foreign spatial database.
f) Administration and Maintenance The administrative user will have the authority to view, delete and find existing users which are associated with this system.The general user has the variety of option like login, logout, register, and get-information, map navigation, custom data output generation, customize the modules specific to a desired application within the scope of the system, upload files and download files.The system will allow the user to add data with file formats which are common in the industry.These data files are used for retrieval, maintenance and deployment on the web.
On the other hand, in order to avoid complexities arise due to multi-user access and rules in establishing relationships between different data models, it is required to adopt a decentralized approach across the common user groups and departments for taking the data backup and maintenance responsibility.This has to be done in coherence with a centralized approval process which is more efficient to follow.g) Schema Validation In addition to the aforementioned factors, there should be a validation mechanism in place for checking the compatibility of database schemas being integrating with the existing database.
h) Back-Up and Maintenance Data back-up, maintenance and portability are the three vital components, though implemented at database level should also be taken into consideration while designing the data model.It is most important to maintain the integrity of the spatial database irrespective of the changes that may come in to affect the system in the future.
i) Base Functions and Queries This gives the user the flexibility, ability and independence to apply certain queries on database so as to dynamically generate information outcomes for decision making specific to their business needs.

Scalability, Standards and Protocals
Scalability of the WebGIS system is the ability of extending the application by linking it with other GIS systems and Web GIS services, such as, WMS, WFS and WCS [6].Scalability can be achieved through the implementation of reconfigurable and cost free common interfaces, functional libraries, semantic descriptions and data exchange protocols, already developed by third party developers following common standards.A set of open standards specified by OGC, ISO, SDI etc. are to be strictly adhered as they allows for further extending the WebGIS system functionality beyond mapping and querying [7]- [9].
Implementing of reconfigurable open interfaces, functional libraries, semantic descriptions and data exchange protocols like GDAL, OGR, GeoTools etc., allows for the fast realization of the system in a cost-effective manner.This also ensures for the inheritance, easy integration and communication of the components and interoperability of the system on a whole (Figure 5).
Internet and Intranet is built on TCP/IP protocol.TCP/IP protocol is the most popular internet communication protocol will be used for the implementation of the system which is built on standards which supports for building interactional and transactional information driven systems like WebGIS.The proposed WebGIS system intends to provide spatial information services by using Internet/Intranet communication platform.

Object Library
Object oriented concepts recommends for the building of a reusable, reconfigurable and extendable components which can be integrated easily.The proposed WebGIS architecture framework endeavors to create a highly robust and scalable object library with proper versioning management which can be updated and shared subsequently make the system functionally rich, reconfigurable, reusable and extendible according to the requirements which may arise in the future.As the system has to comply with the interoperability standards, the objects in the library should have the ability and degree of flexibility to converse with alien systems.

Conclusion
This paper discusses in detail about the components which are essential to be part of developing a unique Web-GIS system which can cater the informational requirements of a diversified business environment.The architecture proposed in detail describes the components required for developing a service oriented, low-cost, highly functional and time-effective holistic WebGIS application framework.The framework for realization of a scalable and highly efficient module based WebGIS application requires the use of reconfigurable components and explicit semantic descriptions of application domains.Since the enterprise WebGIS solution provides a multitier/user access built on complex relationship rules, it delegates the data maintenance responsibilities to multiple departments by way of decentralizing tasks making the centralized approval process highly elegant.Besides the application deployment and data maintenance, the system efficiently addresses the other issues like system integration, data backup, future upgrades strategies, user training etc. to ensure a thorough implementation of the enterprise WebGIS solution.The paper also defines layer interface, module hierarchy and corresponding services that are used for effectively interacting with spatial data repository.

Figure 1 .
Figure 1.Schematic diagram of incremental iterative methodology approach.

Figure 3 .
Figure 3. Use case model design of the WebGIS system.

Figure 4 .
Figure 4. Processes involved in building a comprehensive multi-tier/ user SRDBMS.

Figure 5 .
Figure 5. Hierarchical structure of a WebGIS system Open Standards as specified by OGC.