www.korem.com 1 geospatial and business intelligence jean-sébastien turcotte executive vp san...

13
www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

Upload: griselda-ward

Post on 16-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 1

Geospatial and Business Intelligence

Jean-Sébastien TurcotteExecutive VP

San Francisco - April 2007

Streamlining web mapping applications

Page 2: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 2

Streamlining web mapping applications

Business requirements and context Business requirements Today’s Web Apps Challenges

WebService Navigator At a glance Goals Approach Technologies Features and benefits

Demos… Summary What’s next

Page 3: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 3

Business requirements

Need to address requirement for our own set of tools to stay competitive

Possible to easily expand technology support

Efficient tools to develop cross platform application are limited

Simplify development process for new project

Not productize but set of tools evolving organically

Page 4: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 4

Today’s Web Apps

»WEB 2.0... • AJAX - Asynchronous JavaScript And XML

» an approach (methodology) where chunks of data are retrieved from a server without reloading the whole page.

» a set of technologies, libraries, toolkits and frameworks to implement the functionality. e.g.. DHTML, JavaScript, XML, JSON, FLASH, DOJO…

» an enhanced user experience (asynchronous actions done behind the scene).

» not without challenges/gotchas: back-button, history, bookmarking… » not necessarily tied to XML or JavaScript.

• SOA - Service Oriented Architecture» a programming model (design principle) that is independent of technology,

framework and implementation. (platform agnostic) » web services provide access to various loosely coupled systems.» core principles: integration, interoperability, scalability.» communication of messages between consumers and producers uses XML.» standard interface are described using the web service definition language.

(WSDL)

Page 5: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 5

Challenges

»Heterogeneous infrastructures: multiple OS, DBMS, legacy systems…»Leveraging current systems to address new business requirements.»Opening new channel of communication with users, customers, partners, suppliers.»Wide variety of principles and technologies.»Response time and unified user experience.

Page 6: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 6

WSNAV – At glance

Browser

Map

CommonJavascript

library (API)(Ajax)

Server side handler(Servlet/Struts action)

Services Adapter

MapServer

MapInfoMapXtreme/

Envinsa

OGC-WMS

Push'n'See

OracleMapViewer

...

Data Warehouse

Javascript client side API: Handlesuser interaction with cartographic toolsand send request (XMLHttpRequest) toweb server. Processes responses andupdates map.

J2EE component:-Handles calls from client.

-Dispatches request toappropriate service adapter.

-Propagates parameters fromclient request.

-Look and feel can be customizedusing CSS.

-Provides standard navigation tools:zoom in/out, panning, scale bar.

-Point of interests can be overlaidwith tool tip to display contextualinformation.

Oracle !0g

GIS Data

Each adapterimplements a

commoninterface

Page 7: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 7

WSNAV – Goals

»Unified programming model: published API.»Enabling developers to get up and running quickly. (reduces learning curves when switching from one map provider to another)»Provide basic navigation tools: zoom in/out, panning, scale bar…»Integration with various map providers.»Flexibility and ease of configuration.»Built a common interface to bridge different map rendering API.»Make writing new adapters a relatively simple task.

Page 8: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 8

WSNAV – Approach

»Development of presentation layer:• Core JavaScript API• Client side objects for map and tools: wsnav, zoomin, zoomout, pan, scalebar...• Objects are added as needed to page:

<script>wsnav = new WsNav(); zoomin = new ZoomIn(wsnav);</script>• Objects are configured on page load: <body onLoad="init()“>• Library takes care of event notification among map and tools. • Page include all necessary scripts: <script language="JavaScript"

src="js/pan.js"></script>• HTML rendering uses DIV tags to layout components: <div id="divToolbar">• Presentation layer done using JSP (Java Server Page).

»Development of server-side components.• Server side request handler (Servlet/Struts Action)• Client request submitted using XmlHttp is translated into server side call to specific

adapter.• All parameters are available to adapter class.• Methods are invoked at runtime using reflection. • Response returned to client has same structure regardless of mapping technology.• Configuration of target provider done in separate file.

»Development of adapter class for a specific provider. • Adapter makes calls to provider API for implementing zooming, panning and other

functionalities.

Page 9: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 9

WSNAV – Technologies

»JavaScript: Map and tools are actual scripting entities (object). Client request are sent using the XmlHttpRequest (allows for asynchronous event handling). No need of full page refresh.

»CSS: Images, colors are defined in stylesheet.

»Java: Server side handlers and wrappers can be deployed in any J2EE web server.

»JSON: JavaScript notation that provides alternative to XML (better performance when dealing with lengthy data)

Page 10: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 10

WSNAV – Features and Benefits

»Ease of deployment on any J2EE web server»Leverage existing commercial and open-source solutions»Best practices and standard: Web-Services, CSS, design-patterns»Customizable look and feel.»Implementation leverages common code from the WSNav server API.»Developer focuses on writing adapter (wrapper) that bridges specific map provider API to WSNav interface.»Independent of mapping technology used for rendering.»Concurrent development possible: team working on different implementation at the same time.»Core API becomes more robust as it matures over time and use.»Separation of map engine logic from map presentation and navigation logic.

Page 11: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 11

Some examples

Page 12: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 12

Summary

»Hides complexity of mapping technology.»Separates map rendering from map presentation and tools.»Flexible and easy to integrate into existing application»Uses a services oriented approach (SOA) to decouple components.»Leverages existing services oriented solutions.»Customizable look and feel.»Works with most popular Internet browser.»Minimal knowledge of JavaScript needed»Extensible: new tools can be added to the core JavaScript API. »Productivity: quick deployment of common ‘locator’ type of web mapping applications.»Currently used in many different projects.

Page 13: Www.korem.com 1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications

www.korem.com 13

Questions ?

Thank you !