3.1 Current State Analysis | Contents |
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.
Before conducting the analysis, standardized criteria are defined and divided into the following eight categories:
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.
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:
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
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.
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):
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 | x | x | x | x | - | - | - |
Mails per Month1 | 85 | 16 | 49 | 11 | 55 | 120 | 168 | - | ||||
Active Developers2 | 72 | 12 | 101 | 7 | 46 | 47 | 42 | - | ||||
User Mailing List (ML) | x | - | x | x | x3 | x | x | x | x | - | x | x |
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 | - | x | x | x | x | x | - | - | - | x | x |
Layer Overview | x | - | x | x | - | x | x | x | x | - | x | x |
Legend | - | - | x5 | x | x | x5 | x | - | x5 | x | x | - |
Scale Bar | x/ - | - / - | x/ x | - / x | - / - | x/ x | x/ x | x/ - | x/ - | - | x/ x | - / x |
Zoom Bar | x | - | - | - | - | - | - | - | x | - | x | x |
Pan Navigation | ||||||||||||
on map edge | - | - | x | x | x | - | x | - | - | - | - | - |
in PanZoom Bar | x | - | - | - | - | - | - | - | x | - | - | x |
Zooming per | ||||||||||||
Double-click | x | - | - | - | - | - | - | - | - | - | - | x |
Mousewheel | x | - | - | - | - | x | - | - | - | - | x | x |
Zoom Box (Shift-key) | x(x) | - | x(x) | x(-) | x(-) | x(-) | x(-) | x(x) | x(x) | x(-) | x(x) | - |
Panning with | ||||||||||||
Overview Map | x | - | x | x | x | x | x | - | - | - | x | x |
Zooming & Panning | ||||||||||||
with Keyboard | x | - | - | - | - | - | - | - | - | - | x | x |
Tiling | x | x | - | - | - | x | - | - | x | - | - | x |
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.
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.
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.
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.
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.
Conclusion: Zoom bars offer a good selection of zooming levels. All four applications offer a remarkably high degree of usability.
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.
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.
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.
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.
Conclusion: Only a few applications provide navigation options using the keyboard. Expanded key configuration offers a good level of convenience.
Conclusion: Good zoom level indicators have a positive effect on usability, unlimited zoom levels to a lesser degree.
Conclusion: An expected standard feature which should be included in every application.
Conclusion: Noticeably good pan/zoom characteristics in tiling-based applications. Superior panning characteristics in OpenLayers and Google Maps.
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.
Conclusion: A revision administration is a standard feature in every FS project. The trend towards the more modern SVN is not surprising.
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.
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.1 Current State Analysis | Contents |