Prototype Development of Component Based ...

51 downloads 247 Views 136KB Size Report
business logic, component can be used to serve that request. (geographic information). ... pieces are not the traditional software packages or modules, but vivid ...
Prototype Development of Component Based Distributed Geographic Information System Iping Supriana Suwardi1, Lukfi Halim2 Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia 1 [email protected], [email protected]

Abstract—Distributed Geographic Information System (GIS) is a type of GIS tool that uses Internet and wireless network as a major means to access and transmit distributed data and analysis tools, to conduct spatial analysis, and to create multimedia and multidevice GIS presentation. Now, a lot of information system use this geographic information like location, distance and area to merge /analyst with their business logic, component can be used to serve that request (geographic information). Obviously, the purpose to use this component because it is easy to maintenance, reusable, can communicate with other information system component, so we can build bigger spatial analysis if we arrange them (lego) and can reduce project cost.

network-centric GIS, and now from traditional client/ server GIS to Distributed GIS (DGIS), as shown in Fig 2. Each of these changes marked a big progress in the history of GIS development.

Index Terms—distributed GIS, component Fig 1 – GIS Movement Towards Component GIS

I. INTRODUCTION A GIS is an organized collection of computer hardware, software, geographic data, and personnel designed to efficiently capture, store, update, manipulate, analyze, and display all forms of geographically referenced information [1]. From a software engineering point of view, GIS is a computer system designed to allow users to collect, manage, and analyze large volumes of geographically referenced spatial data and associated attribute data. The major components of a GIS are the geographically referenced data and the geoprocessing functionality. The major software components of a GIS include user interfaces (UI), spatial data manipulation, spatial analysis, database creation, data-entry and database management capability, and data visualization functions. Initiated in 1960's [2] , GIS software experienced several development phases and gradually evolved into the mainstream of Information Technology. With the rapid development of computer network technology and the fact that more and more individuals and organizations adopted GIS as their solutions, the demands for an open, network-centric distributed GIS became the common concern of GIS software vendors, geographic information providers and GIS users. As more and more people tend to use geographically referenced information and GIS software, GIS services that provide geographical information to broader users became a hot issue in the recent years, especially GIS services over the Internet. Driven by both technology development and GIS market, GIS software has changed its paradigm several times: From the initial GIS functional packages to the integrated huge system and from modular GIS to component GIS, as shown in Fig 1. From desktop GIS to

Fig 2 – History of Distributed GIS

II. DISTRIBUTED GIS A. Component Why use components? The answers are obvious: reuse software, rely on the quality of existing and proven software, stop reinventing the wheel, save on software costs, share components with others. Instead of having to buy complete systems, components can be made available on a pay-per-use basis, which means that the user only pays for the minimal set of components that he needs now. What is a ‘component’? A component is a part of a system that is responsible for a specific task. Component technology is an important innovation in software development, which changed the trace of GIS development. Component GIS is: building GIS applications from GIS components that can understand each others behavior (interoperability) and that may be distributed around the net. Component GIS has become a strong trend in GIS software development. In component GIS, GIS is again partitioned into many lightweight

Fig 3 – Distributed GIS basic component Diagram standalone software pieces. However, these software pieces are not the traditional software packages or modules, but vivid, inter-operable software components that can be freely "plug and play" in GIS applications.

B. Distributed gis basic component diagram From a software engineering perspective, GIS basic components may be grouped into two classes [4] : the common objects and service specific objects. The common objects provide a fundamental support for GIS services. The common objects should include basic GIS geometry objects (Point, Polyline, Polygon, etc.), basic GIS data structure objects (such as Map, Abstract Layer, Recordset, etc.) and GIS service interface objects. The abstract layer should be the super class of all concrete layers such as ShapeLayer, ImageLayer, TINLayer, etc.

Fig 4 – Geometry Hierarchy in OpenGIS Specification (Source: OpenGIS 1999b)

Fig 4 gives the geometry structure defined in OpenGIS specifications. In this structure, all geospatial elements are derived from an abstract root type: Geometry. The type Curve, Surface, GeometryCollection, MultiSurface, and MlitCurve are also abstract type only for the purpose of structure extension. The concrete types are Point, LineString (multi-point line), LinearRing (closed multipoint line), Line (two-point line), Polygon, MultiPoint, MultiLineString, and MultiPolygon. The type SpatialReferenceSystem is attached to the geometry so that each geometry objects may have different spatial reference systems. Some services such as Geospatial Display Services are the most basic service that should be always available to the clients. They are "most basic" because without them, the clients could not do anything. Objects support these services should also be a part of the Common Objects. Service specific objects should be based upon the common objects, but separated from them. It could be the extension of the system when a client requests the specific service. Different services should be independent but interoperable. The communication between different services should be based on the common objects. For instance, if a client chooses the Geospatial Coordinate Transformation Services, the Geospatial Reference Objects should be accessible to the client by either extending the client objects locally or using objects remotely. We can use spatial relationship of common object to create geospatial analysis objects like equals, disjoint, intersect, touches, crosses, within, contains and overlap. Methods that support this spatial analysis are distance, buffer, convexHull, intersection, union, difference, numGeometries, and area.

III. ANALYSIS Like any other applications, distributed GIS has three basic elements: presentation, business logic and data. Presentation referes to the display of information, including maps, text and images. Business logic includes, for example, generation of maps, maps rendering, spatial analysis, and extraction of data based on certain criteria. The data component refers to data, including the spatial feature data, the properties or attributes about the spatial features, and symbologies to display spatial and non spatial features. Each element has it own components and function requirements. For analysis to build GIS distributed there are some requirements : a. Huge volumes of data. Nowdays, it seems that the size of datasets are measured in gigabytes rather than megabytes and the end is nowhere near yet; datasets keep growing. So components desain must be capable of handling huge amounts of data. b. Many formats. Many formats coexist for exchange and storage of data, some of which are open and some of which are proprietary. Data transformations constitute a substantial part of any project in GIS or remote sensing. c. Complex data models. GIS data is highly structured, and ussualy the object types within the datasets are closely inter-related. Geographic data sources are distributed by nature and highly heterogeneous. d. Information hunger. Data must be available now! So components desain must be robust and capable of handling huge amounts of data. e. Data integration. There are some special care must be taken to facilitate integration of data that originates from various sources. f. Data sharing. There is an increasing trend to the reuse of geographical data because the collection and entry of geodata is very expensive. g. Real time. Although most GIS applications don’t need this, some applications may require real – time operations. For components this means that they must deliver their output within a certain period of time and that they must be available whenever they are needed. h. User interaction. GIS applications are usually highly interactive, simply due to the visual and spatial aspects of geospatial data and synchronous communication channel between the user and certain components may have to be maintained. There are some distributed-component frameworks such as CORBA, developed by OMG; DCOM and .NET, developed by Microsoft, Java technology (java bean and enterprise java bean) by Sun Microsystems . In this paper we use Enterprise java Bean (EJB) with web service platform. We choose web service platform because they are interoperable, self-contained, self-describing, module components that can communicate with each other over the web services platform. A web service supports RPC (Remote procedure Calls) by providing services of its

own, equivalent to those of traditional component, or by translating incoming invocations into an invocation of an EJB or .NET component. The basic platform for web services is XML plus HTTP. HTTP and XML by themselves are not sufficient for fully functional GIS Web Services. We also need other standards to address common means to access XML data and to describe, discover and advertise services. The IT industry is d enveloping such a standard to address these issues. Some important standards are emerging, particularly SOAP (Simple Access protocol), UDDI (Universal Description, Discovery, and Integration) and WSDL (Web Service Description Language). SOAP defines a protocol for information exchange among programs in the heterogeneous Internet environment by using HTTP and XML. UDDI an XML-based registry that allows service providers or business to advertise and list their Web Services on the internet. We choose java technology (Java Enterprise Edition / J2EE) for implement this.

IV. DESIGN AND IMPLEMENTATION Based on the previeous analysis, we design the architecture for the Proposed Component Based Distributed GIS with tree tiers model, like shown at Fig 5. Client Browser

Presentation Tier

User Interaction and Presentation

Service Response

Service Request

Application Tier

Listener

Business Façade

Business Logic

Data Tier

Data Acces

Data base

Fig 5 – Proposed Component Based Distributed GIS

These tiers are Presentation Tier, Application Tier and Data Tier.

A. Presentation Tier For the implementation of the presentation tier we use jsp (java server pages) , java script / AJAX (Asynchronous Java Script and XML). On this presentation tier there are user interface components that allow the user to view, edit, and conduct spatial operations. On this research we use svg (scalable vector graphic) for graphic format data and XSLT for design. B. Application Tier For the implementation of the application tier we use servlet + EJB (Enterprise Java Bean). On diagram there is listener, the listener (represented by servlet) has there major functions : a. to receive incoming messages containing request for service, parse the messages, and dispatch the request to appropriate method on the business façade. b. to package the response from the business façade into a message and send that back to the client c. to handle for contracts and other documents about the web service. The business logic (e.g geoprocessing, operations) of this architecture is implemented into two parts: business façade and business logic. The business façade provide a simple interface that maps directly to operations provided by the business logic layer. In a simple web service, all the business logic might be implemented by the business façade, which would interact directly with the data access layer. On the business logic we implemented GIS basic component (common objects and service specific objects) C. Data Tier The data access layer presents a logic view of the physical data to the business logic layer. The purpose of the data access layer is to isolate business logic from changes to the underlying data stores and ensure the integrity of the data. The data stores information required

by the web service. For this research we use GML (Geographic markup Language) for standardized exchange format data.

V. CONCLUDING REMARK AND FUTURE RESEARCH In this paper we have presented the characteristic of component model needed for Distributed GIS in order to meet the service requirement model, that in general has the following properties: huge volume, multi format, complex data model, high sharebility, real time service and highly interactive. The implementation prototype has been realized by take into account several public components that already common in used (SVG , EJB, GML). The system prototype is running well in personal web server where the multi format aspect is used as focus of the sample system examination. There are some difficult to exchange big size of spatial data. GML for interchange format data has limited if the data sources have big size, for future research, the research about how to transfer big size of spatial data will be interesting.

REFERENCES [1] ESRI, 1990, Understanding GIS: The ARC/INFO Method, Redlands, CA: Environmental System Research Institute, pp1.2. [2] Coppock, J. and Rhind, D., 1995, The History of GIS in Geographical Information Systems - Principles and Applications, edited by David Maguire, Micheal Goodchild and David Rind, New York, pp21-43 [3] OpenGIS Consortium, Inc., 1999b, OpenGIS Simple Features Specification for OLE/ COM, Version 1.1, OpenGIS Project Document Number 99-050. [4] Yuan, shuxin.,2000, Thesis.Development of a Distributed Geoprocessing Service Model, University of Calgary,Calgary,Alberta

Suggest Documents