3.2 Smart Map BrowsingTop3 Analysis3.1 Current State Analysis

Contents

German

3.1 Current State Analysis

3.1.1 Objective

The objective of this analysis is to provide a general overview of the main Free web mapping applications and to discern specific user-friendly navigation features. Based on the results of the overview it should be possible to derive the characteristics and potential of Smart Map Browsing.

3.1.2 Method

Criteria

Before conducting the analysis, standardized criteria are defined and divided into the following eight categories:

  1. General
    name, URLs (home, documentation, download, live demo), current version, last update, license, businesses/organizations (which have/had a major role in the development), short description
  2. System
    architecture (client-side or client-serverside), programming language, prerequisites, supported browser; where applicable, integration with other Free software
  3. Community
    URL of mailing lists (ML), developer and user ML's (categorized by month and totals of active developers/users within a fixed time period), revision administration, commercial support
  4. Documentation
    for installation/development/operation (notes/instructions, tutorials, URLs)
  5. Usability
    general impression, main map, overview map, layer overview, legend, scale bar, toolbar, zoom bar, pan navigation panel, zoom, zoom with double-click/mouse wheel/ zoom box, panning, zooming and panning with keyboard, tiling
  6. Additional Features
    analysis, search, help and print functions
  7. Notes
  8. Screenshot
    of analyzed demo

Category 1 and 2 provide general information about the web mapping application while category 3 takes a closer look at the corresponding community and its activities. Category 4 contains instructions, brief evaluations and further information on the available documentation. The usability analysis of the application forms the main part of the investigation (category 5). It tests and evaluates different GUI components for their usability and interactivity based on a pre-selected demo. Category 6 investigates additional interactive (GIS) functions that do not play a major role in an application's usability. Category 7 lists relevant notes and special remarks. The screenshot shown in Category 8 serves as an illustration of the demo testing.

Please note that the analysis will not provide a complete list of features for each application. Specific technical details (for example, the support of WMS or WFS) are not relevant to this analysis and will not be investigated further. The key focus of this analysis is the usability of the application.

Mailing List Analysis

The activity of a particular FS community is reflected in its mailing lists (MLs), which are generally divided into developer and user mailing lists (Free web mapping applications). In order to compare the activity on the lists, two numbers are used as indicators:

Because ML archives are also divided by month, a six-month time period (October 2006 - March 2007) was selected for the purposes of this investigation.

For an automatic determination of the requested numbers, a script written in Python10 performs the count function (see Listing 3.1), provided that that the monthly ML archives are located (unzipped) in a separate directory and the mails from a particular month are in one file (unformatted text format). Otherwise an automatic analysis cannot be correctly carried out.
In this analysis two popular types of ML archives (including their different syntax for sender information) are used: the very popular GNU Mailman11 archive (zipped txt files; Syntax »From [name] at [domain]«) and the ML archive of SourceForge12 (HTML format; Syntax »From: [real name] <name@do...>«).

The script is applied to the directories containing the different archive data. Below are the main steps of this operation:

  1. Open file (Line 11)
  2. Find line containing string »From « or »From: « (13; 23)
  3. Read sender's mail address (14-17; 24-27)
  4. Increase mail count variable (18; 28)
  5. Increase user count variable if address not available (19-20; 29-30)
  6. Repeat steps 2 - 5 for remaining file lines
  7. Analogous read-out of remaining files as per steps 1-6
  8. Final output of calculated values (34-38)

 
Listing: Python script for analysis of ML archives; MLanalyse.py

import os
def walker(arg,dir,path):
    months=0
    mails=0
    users=[]
    
    for file in path:
        i=file.find(".",0,1)
        if i==-1:        
            months=months+1
            text=open(file).readlines()
            for line in text:
                if line.find("From " )>-1:
                    fields=line.split(" ")
                    try:
                        if fields[2]=="at":
                            user=fields[1]+"@"+fields[3]
                            mails=mails+1
                            if users.count(user)==0:
                                users.append(user)       
                    except IndexError:
                        pass 
                if line.find("From: " )>-1:
                    fields=line.split(" ")
                    try:
                         if line.find("...>" )>-1:
                            user=fields[1]
                            mails=mails+1
                            if users.count(user)==0:
                                users.append(user)       
                    except IndexError:
                        pass
            print file+":     print "---"
    print "months     : "+str(months)
    print "mails total: "+str(mails)
    print "mails/month: "+str(mails/months)
    print "users total: "+str(len(users))
os.path.walk(".",walker,None)

Example using analysis of developer ML of OpenLayers:

2006-December.txt: 36 mails
2006-November.txt: 131 mails
2006-October.txt: 196 mails
2007-January.txt: 262 mails
2007-February.txt: 342 mails
2007-March.txt: 510 mails
---
months     : 6
mails total: 510
mails/month: 85
users total: 72 

Live Demo

Using the sample demo, the listed usability criteria (Category 5) and other defined features (Category 6) are analyzed. It should be possible to use the demo in Firefox browser without installation of the application and pre-installed plug-ins (JavaScript activation is assumed). Generally such demos are available on the home page of the respective web mapping applications.

It is important to bear in mind that a demo will not necessarily include all the functions available in the actual application. Even the user interface of a demo may only represent a likely GUI configuration of the application. For this reason it is important to note that this analysis will focus solely on demos used for this purpose.

Another item worthy of mention is the objective nature of a usability analysis. When evaluating the usability and design of an application the line between objective judgement and subjective impression is not always clearly defined (see Section 2.2.2).
Many of the interactive features of web applications have become standard, and for the most part meet user expectations, such as the Drag&Drop functions used for moving map areas or the icons used for zooming and panning functions. Usability criteria such as these can fairly easily be evaluated on an objective basis.
However, factors related to the design of applications, such as the use of colors or the configuration of different components, invariably involve some range or leeway in making usability judgements. In the following analysis the subjective evaluation part will be kept to a minimum.

3.1.3 Selection

The Internet portal FreeGIS13 will be used for the selection of the Free web mapping applications to be analyzed. A search using the key word »Web Mapping« lists more than 50 software tools in the »Software« category (as of April 10, 2007). Because the number is quite large, some restrictions were applied to achieve a suitable number for the purpose of this thesis.

Based on the definitions of terms related to web mapping (see Chapter 2.3.1) several entries were removed - for example, MapServer, Geoserver and deegree do not fit the criteria for required web mapping clients.

Following an evaluation of the remaining entries eleven of the most promising and significant (as shown by being mentioned on other GIS portals such as OSGeo14 or MapTools15) Free web mapping client applications were selected.

In this vein the current state analysis does not purport to present an exchaustive analysis of available applications. It is rather intended as an overview of the variety found in Free web mapping applications and their usability-related functions.

Owing to the great significance and popularity of Google Maps [Ramsey 2006], this proprietary software will also be compared to the eleven Free software applications.

Below is a list of all twelve selected web mapping applications (in alphabetical order):

3.1.4 Result

Complete analysis results of the twelve analyzed web mapping applications can be found in Appendix 6.3.

Applications can be classified into the following three types:

Two of the twelve applications are Free Software and pure JavaScript applications, which run exclusively on the client (Type 1), that is to say, they only contact an external map server for the purpose of requesting the map whereas all functions of the application are implemented on the client. A map server (e.g. WMS server) is still required but in this case does not form an actual part of the web mapping application. In the thesis the term client-side is used when these criteria are fulfilled.

Nine of the twelve analyzed applications are Free software client-serverside applications (Type 2), ie. the application implies or assumes the existence of a proper map server. Client-server mixed applications, on the other hand, require an installation. The term client-serverside will be used for this type of web mapping application.

Google Maps is a Type 1 application (pure JavaScript), and the only proprietary application used in the testing procedure. As mentioned in Section 3.1.3, the analysis' main focus is on Free web mapping solutions, but given the significance of Google Maps the latter was also included in the analysis for comparison purposes. Proprietary client-server solutions were not considered as part of this analysis.

Table 3.1.4 shows the most significant results of the analysis along with an opportunity to compare the selected applications.

Free & Free & proprietary&
100% client-side client-serverside 100%client.

OpenLayers

WMS Mapper

CartoWeb

Chameleon

iGeoPortal

ka-Map

Mapbender

Mapbuilder

MapGuide Open Source

Mapping Widgets

p.mapper

Google Maps

Version

2.3 0.03 3.3.0 2.4.1 1.2.1 1.0 2.4.1 1.0.1 1.1.0 0.3.1 3.0.1 2.79
last Update 21.02.07 k.A. 31.08.06 06.09.06 15.09.05 05.02.07 23.03.07 19.07.06 09.12.06 17.03.06 30.12.06 18.04.07
FS-License BSD AFL GNU GPL X11 GNU GPL (amended, 2007-11-15) MIT GNU GPL GNU LGPL GNU LGPL GNU GPL GNU GPL -

Revision Administration

SVN - CVS CVS SVN CVS SVN SVN SVN SVN SVN -
Developer Mailing List (ML) x- x- x3 xxxx- - -
   Mails per Month1 85 16 49 11 55 120 168 -
   Active Developers2 72 12 101 7 46 47 42 -

User Mailing List (ML)

x- xxx3 xxxx- xx
   Mails per Month1 197 80 51 92 96 107 65 527 82 -4
   Active Users2 150 86 63 106 121 98 78 297 61 -4

Overview Map

x- xxxxx- - - xx
Layer Overview x- xx- xxxx- xx
Legend - - x5 xxx5 x- x5 xx-
Scale Bar x/ - - / - x/ x- / x- / - x/ xx/ xx/ - x/ - - x/ x- / x

Zoom Bar

x- - - - - - - x- xx
Pan Navigation
   on map edge - - xxx- x- - - - -
   in PanZoom Bar x- - - - - - - x- - x
Zooming per
   Double-click x- - - - - - - - - - x
   Mousewheel x- - - - x- - - - xx
   Zoom Box (Shift-key) x(x) - x(x) x(-) x(-) x(-) x(-) x(x) x(x) x(-) x(x) -
Panning with
   Overview Map x- xxxxx- - - xx
Zooming & Panning
   with Keyboard x- - - - - - - - - xx
Listing of Analysis Results of Web Mapping Applications

Tiling

xx- - - x- - x- - x

3.1.5 Evaluation

The results obtained in Section 3.1.4 are now compared and evaluated according to usability. This evaluation offers a first thorough overview of exemplary Smart Map Browsing capabilities in web mapping applications and forms the basis for a subsequent definition of Smart Map Browsing in Section 3.2.

The evaluation is classified into three categories: GUI Components, Pan/Zoom Characteristics, and Community.

A) GUI Components

Overview Map
Eight out of twelve applications feature an overview map which can be manipulated (per mouse click or double-click) to move the main map. Mapbender has an optional pull-out area which allows a combination of zoom and pan functions. Google Maps offers animated panning of the main and overview maps with double-click or Drag&Drop of the viewed section. Ka-Map shows signs of similar animation features.
Once a user zooms the map, the selected section moves in sync with the overview map. Google Maps and OpenLayers, for example, feature a dynamic overview map which is automatically zoomed along with the main map (whereas it remains fixed during other functions). However, the centering of a map section after manual repositioning is only possible with Google Maps.
Google Maps displays the reference map in the same style as the main map. On the other hand, in OpenLayers the style is defined only by the active base layer, and overlays are not displayed. Similarly, only Google Maps and OpenLayers offer a minimizable overview map display.

Conclusion: A close-to perfect rendition in Google Maps; a good approach and similar potential in OpenLayers. Static overview maps of other tools are not very helpful at high zoom levels.

Layer Overview
Nine of twelve applications feature a layer overview. Three of those use a layer overview in conjunction with a legend. OpenLayers und Mapbender are able to completely minimize the control. Other applications offer collapsable (sub-)layers although this carries with it the risk of interleaving (see CartoWeb, ka-Map).

If the layers list is too long, there is a risk of the user losing track of the layers (see Chameleon). Similarly, usability is less than optimal when the user has to confirm a layer selection with an additional click to update the selection (see CartoWeb, extitChameleon, and iGeoPortal). In Ka-Map and iGeoPortal it is possible to select and change the sequence of different layers. Google Maps displays only three types of layers options, namely Map, Satellite, and Hybrid.

Conclusion: Good combination possibilities involving the legend, some risk with interleaving, disadvantage with manual update requirements, convincing simplicity in Google Maps and OpenLayers.

Scale
Scale display in web mapping application is quite variable, including the use of scale bars (such as ka-Map), simple numerical scale indicators (OpenLayers), a pre-defined menu box(CartoWeb, Mapbender) or an editable scale text field (Mapbuilder, p.mapper).

Conclusion: Selection boxes and text fields look more complex than bars or simple scale indicators. A semi-transparent bar fits in nicely with the map.

Toolbar
All applications investigated for this thesis contain a tool bar, ranging from the very minimalistic (OpenLayers, WMS Mapper) to the very elaborate (as seen in ka-Map, Mapbender). However, the differences in their functional ranges are quite small. Noticeable features are the Zoom History buttons (as found in Mapbender and MapGuide Open Source). Most applications however do not automatically adapt the mouse cursor to the selected tool function.

Conclusion: Generally speaking, featured tool bars show only small differences, with the »usual« range of tool functions. Applications which are 100% client-side are limited to the more basic functions.

Zoom Bar
Four out of twelve applications feature a zoom bar (OpenLayers, MapGuide Open Source, p.mapper and Google Maps). In MapGuide Open Source the zoom bar can be placed anywhere on the map. P.mapper offers a remarkable continuous zooming feature: when the zoom slider is moved, the map is simultaneously scaled, then redrawn. However, the non-functioning + and - »buttons« are rather annoying.

Conclusion: Zoom bars offer a good selection of zooming levels. All four applications offer a remarkably high degree of usability.

Pan Navigation Panel
Four applications feature panning buttons at the edge of the map. On the other hand, three applications offer a navigation panel as part of a combined pan-zoom bar navigation feature (see OpenLayers, MapGuide Open Source and Google Maps). In the remaining five applications the map can be panned only by way of Drag&Drop.

Conclusion: Panning controls are very useful. However, having to navigate through a map using features located at the edge of the map impairs the visual integration of the map into a website. A PanZoom bar shortens and thus considerably facilitates the navigation process.

B) Pan/Zoom Characteristics

Zooming with double-click
Only OpenLayers and Google Maps have an automatic zoom-in option by virtue of double-clicking on the mouse. Applications which require the user to switch to the ZoomIn tool before being able to click for zoom-in are not considered here.

Conclusion: The usability feature shows that a smooth transition between panning and zooming is possible without having to first select a specific tool for this purpose. This results in very smooth map browsing.

Zooming with mouse wheel
Three applications permit a zoom level change by using the mouse wheel (OpenLayers, Google Maps, p.mapper). Only Google Maps continues to show the exact location pointed to by the mouse cursor after the zooming feature has been activated. In comparison, OpenLayers centres the map according to the location of the cursor; p.mapper zooms in and out regardless of the location of the mouse cursor.

Conclusion: Similar to the double-click feature, mouse wheel zooming allows for a smooth transition between panning and zooming. Only Google Maps offers the expected characteristics by adjusting the map in sync with the cursor location.

Zooming per zoom box
Ten of twelve applications offer a pull-out box (per mouse) which allows the user to perform zoom functions for selected areas. Only WMS Mapper und Google Maps do not offer this feature. The color highlighting of the zoom area is considered a positive feature (inc. OpenLayers, ka-Map). In five applications it is also possible to access the zoom box via the Shift-key (inc. OpenLayers, mapbuilder).

Conclusion: This is a »basic« feature found in most applications (so it is somewhat surprising not to find it in Google Maps); it is very useful for direct zooming of a particular area, whereby the use of Shift-key command is also widespread.

Zooming/Panning with keyboard
OpenLayers, p.mapper and Google Maps allow Zoom/Pan navigation using the keyboard. Google Maps' panning key configuration is very extensive and intuitive.

Conclusion: Only a few applications provide navigation options using the keyboard. Expanded key configuration offers a good level of convenience.

Zoom Level
The ability to see the current zoom level is an important factor in the usability of an application.
Four application feature an unlimited number of minimum and maximum zoom levels, ie. no limitation on zoom level intervals (see Chameleon, iGeoPortal, Mapbuilder and MappingWidgets). Two applications, (WMS Mapper and CartoWeb), define a minimum and maximum zoom depth, but still enable »on-the-spot« zooming. The remaining six applications feature well coordinated minimum/maximum zooming properties. Applications using a zoom bar offer a particularly good indication of zoom levels.

Conclusion: Good zoom level indicators have a positive effect on usability, unlimited zoom levels to a lesser degree.

Zoom Reset
With the exception of WMS Mapper all applications have the option of reverting a map to its maximum dimension (usually as a button on the tool bar). Google Maps does a good job of integrating this function into the pan/zoom bar. OpenLayers does not generally offer the possiblity of combining the zoom reset function with the expanded zoom bar.

Conclusion: An expected standard feature which should be included in every application.

Tiling
Map tiling is supported by five applications (OpenLayers, WMS Mapper, ka-Map, MapGuide Open Source and Google Maps). A noticeably quick (ie. without delay) panning process is offered only by OpenLayers and Google Maps. Other applications feature rather sluggish panning properties.

Conclusion: Noticeably good pan/zoom characteristics in tiling-based applications. Superior panning characteristics in OpenLayers and Google Maps.

Load Time
The load time required for panning and zooming are critical factors in evaluating the usability of a web application.
Tiling-based applications have a clear speed advantage compared to conventional web applications.
In zooming three different forms of map construction are observed:

Conclusion: Load times can be lengthy and somewhat disruptive during the panning process. Zoom changes sometimes result in an empty map background. A gradual tile assembly ensures a dynamic and visible loading process.

C) Community

Revision Administration
Seven applications offer source code administration with SVN16, three provide this by way of CVS17. WMS Mapper und Google Maps do not provide source code administration features.

Conclusion: A revision administration is a standard feature in every FS project. The trend towards the more modern SVN is not surprising.

Developer Mailing List (ML)
Seven of twelve applications provide a developer mailing list. Looking at the monthly number of mails, applications such as MapGuide Open Source (168), Mapbuilder (120) and OpenLayers (85) are noted for their activity. The remaining applications show between 10 and 50 mails per month.
Leading the number of active developers (using the six month defined time period) is iGeoPortal with 101 developerss (note that iGeoPortal uses the deegree ML). OpenLayers follows with 72 different developers, whereas the remaining applications range between 10 and 50 developers.

Conclusion: MapGuide Open Source has a surprisingly high mail activity with relatively few developers. OpenLayers shows above-average mail activity and the highest number of active developers in a single project.

User Mailing List (ML)
Ten of twelve application have a user mailing list. MapGuide Open Source is the most prominent with 527 mails per month. The high number is likely a result of the application's widespread use due to the earlier proprietary background of Autodesk. At 197 mails per month, OpenLayers is also counted among the leading applications. The majority of the applications have mailing lists ranging from 50-100 mails per month.
Among active users MapGuideOpen Source is the clear front runner with 297 mails per month, followed by OpenLayers at 150. The remaining mailing lists range from 60 to 120 active users in the six month time period.

Conclusion: Noticeably high monthly mail volume at MapGuide Open Source, which also has the highest number of active users. In the same vein, the number of users and mails atOpenLayers is also above average (as is its developer mailing list).


© June 1, 2007 | Emanuel Schütze | some rights reserved.
This work is licensed under the Creative Commons License Attribution-ShareAlike 2.0 Germany.


3.2 Smart Map BrowsingTop3 Analysis3.1 Current State AnalysisContentsGerman