A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005...

67
The candidate confirms that the work submitted is their own and the appropriate credit has been given where reference has been made to the work of others. I understand that failure to attribute material which is obtained from another source may be considered as plagiarism. (Signature of student) _______________________________ A Geographic Information System for the Kirkstall Valley Steven Reed BSc Computing 2004/2005

Transcript of A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005...

Page 1: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

The candidate confirms that the work submitted is their own and the appropriate credit has been given where reference has been made to the work of others. I understand that failure to attribute material which is obtained from another source may be considered as plagiarism. (Signature of student) _______________________________

A Geographic Information System for the Kirkstall Valley

Steven Reed BSc Computing

2004/2005

Page 2: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

i

Summary

The aim of this project was to design and implement a web based geographic information system

(GIS) for the Kirkstall Valley in Leeds. The Kirkstall Valley is an area of green open land near

Leeds city centre that has been the subject of much commercial interest to develop the land with

supermarkets and the like, but has so far remained largely untainted.

The GIS was designed to allow users to view and interact with maps of the Kirkstall Valley using

a standard web browser and add themes such as roads, contours and flood plains. It is hoped that

the system will be extended in the near future to become a powerful tool for residents to use and

become aware of the issues surrounding the future of the valley.

Page 3: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

ii

Acknowledgements

I would first like to thank my project supervisor Roger Boyle for his unwavering support

throughout the project, even when I tried to convince him that the project was doomed to fail! Also

thanks for printing out that 400 page document for me, by the time I had saved up enough printer

credits the project deadline would have passed!

Secondly, a big thank you to Dr. John Illingworth for meeting with me on numerous occasions to

discuss the direction of the system, I hope someone will pick up where I left off.

Thanks to my project assessor Sarah Kattau for her valuable feedback on my Mid-Project Report

and helpful suggestions at the progress meeting.

Thanks to my mates who agreed to complete the evaluation questionnaires at such short notice and

a huge thanks to my family for their support and allowing me to have a moan at them when things

didn’t seem to be going my way.

Cheers all.

Page 4: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

iii

Contents

1. Introduction and Project Management 1

1.1 The Kirkstall Valley …………………………………………………………...... 1

1.2 Problem Definition …………………………………………………………….... 2

1.3 Background to the Problem …………………………………………………….. 3

1.4 Project Aim ………………………………………………………………...…… 3

1.5 Objectives ……………………………………………………………………….. 4

1.6 Minimum Requirements ………………………………………………………... 4

1.7 Possible Extensions …………………………………………………………….. 5

1.8 Software Development Methodologies ……………………………………….... 5

1.9 Schedule ………………………………………………………………………... 6

2. Background Research 7

2.1 Geographic Information Systems ……………………………………………….. 7

2.2 Spatial Data ……………………………………………………………………... 9

2.3 Map Projections and Datums …………………………………………………… 9

2.4 Ordnance Survey ……………………………………………………………....... 11

2.5 The National Grid Reference System …………………………………………... 12

2.6 Digimap and Ordnance Survey Datasets ……………………………………….. 14

2.7 GIS and Web Technologies …………………………………………………….. 18

2.7.1 GIS Map Servers ………………………………………………………... 18

2.7.1.1 MapServer …………………………………………………….. 18

2.7.1.2 MapIt! …………………………………………………………. 18

2.7.1.3 GeoTools ……………………………………………………… 19

2.7.1.4 MapXtreme …………………………………………………… 19

2.7.1.5 ArcGIS Server ………………………………………………… 19

2.7.2 Image Web Server ………………………………………………………. 19

2.7.3 Web Servers …………………………………………………………….. 20

2.7.4 Web Browsers …………………………………………………………... 21

2.7.5 HTML and Scripting …………………………………………………..... 21

Page 5: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

iv

2.8 Conclusion ………………………………………………………………………. 22

3. Design 24

3.1 Modelling the System ………….……………………….……………………….. 24

3.2 MapServer Output …………………….……………….………………………... 25

3.3 Layering the View ………………………………….…………………………… 26

3.4 Design Choices ………………………………………………………………….. 28

3.4.1 Navigation ……………………………………………………………….. 28

3.4.2 Screen Resolutions ………………………………………………………. 28

3.4.3 Plug-in Installation ………………………………………………………. 29

3.4.4 The Mozilla Bug ………………………………………………………… 29

3.4.5 Base Layer ………………………………………………………………. 29

3.4.6 Reducing Server Load …………………………………………………... 30

3.5 Webpage Design ………………………………………………………………... 30

3.5.1 Home Page ………………………………………………………………. 31

3.5.2 GIS Window …………………………………………………………….. 31

3.5.3 Help Pages ………………………………………………………………. 33

4. Implementation 34

4.1 Converting the Data ………………………………………………………...…… 34

4.2 Creating the Webpages ………………………………………………………….. 35

4.3 Implementing the View …………………………………………………………. 36

4.4 Adding Layers to the View ……………………………………………………… 37

4.5 Updating the Layers ……………………………………………………………... 38

4.6 Implementing the Design Choices ………………………………………………. 38

4.6.1 Plug-in Installation ……………………………………………………….. 38

4.6.2 The Mozilla Bug …………………………………………………………. 39

4.6.3 Base Layer ……………………………………………………………….. 39

4.6.4 Reducing Server Load …………………………………………………… 40

4.7 Prototype ………………………………………………………………………… 40

4.8 Final Version ……………………………………………………………………. 41

5. Evaluation 42

5.1 Evaluation against Minimum Requirements ……………………………………. 42

5.2 User Evaluation …………………………………………………………………. 43

5.2.1 Results …………………………………………………………………… 43

Page 6: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

v

5.2.2 Analysis …………………………………………………………………… 44

5.3 Suggested Improvements ………………………………………………………... 45

6. Conclusion 46

Bibliography 47

Appendix A: Personal Reflection 50

Appendix B: Schedules 52

Appendix C: System Code 54

Appendix D: System Screenshots 56

Appendix E: User Evaluation Questionnaire 58

Page 7: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

1

Chapter 1

Introduction and Project Management

In this chapter the problem to be tackled is introduced along with background information to the

problem. The project aim, objectives and minimum requirements to be fulfilled are specified

and possible enhancements to the system are outlined. A schedule is provided with milestones

to be completed in order to fulfil the project objectives and create a successful outcome to the

project.

1.1 The Kirkstall Valley

The Kirkstall Valley is an area of green open land near Leeds city centre in West Yorkshire,

England. The area has an industrial heritage and is now primarily grassy open areas ideal for

recreation and commercial horticulture. In the area there exists an elaborate system of mill

“goits” which provided water power for the early woollen industry, some of these mills have

survived over the centuries and now have grade II listed status [1]. The area is also home to

Kirkstall Abbey, a monastic ruin dating from the 12th century and a popular tourist attraction as

well as a grade I listed site [2].

The Kirkstall Valley has been the target of many commercial development plans that would see

large areas of tarmac and buildings replacing these green areas. Some large scale projects

including a plan to create a major retail and office development were binned after pressure from

conservation groups and local residents.

Remaining green areas of the Kirkstall Valley provide a great place for children who live near

the city centre to enjoy recreational activities. Some areas surrounding the valley suffer from

traffic congestion problems, economic disadvantage and a serious shortage of recreational space

[1]. There is also a significantly higher risk of children being involved in road accidents in the

inner city when compared with those who live in the outer suburbs, therefore the Kirkstall

Valley provides one of the last remaining safe recreational areas in the inner city.

Page 8: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

2

Before industry came to the area, the River Aire was a famous salmon fishery, but industrial

pollution, particularly from the near by sewage works eliminated much of the aquatic wildlife

[1]. Due to the valley being a couple of degrees warmer than green areas outside the city, the

valley has become a large migration spot for birds and provides habitats for numerous other

animals along the length of the Leeds-Liverpool canal which runs through the valley.

One of the reasons the Kirkstall Valley has largely remained free of development is due to the

large number of flood areas. Heavy rains and snow melts can cause the River Aire to overflow

its banks leaving some areas south of the Kirkstall Abbey unsuitable for any development. On

the upside, the flooding has left rich deposits of alluvial soil in the area. The Burley Mills

allotments is classified as Grade One agricultural land after a survey by the Ministry of

Agriculture Fisheries and Food (MAFF) in the late eighties [1].

Leeds City Council had recognised the potential of the area in the 1950s and consequently

embarked on a program of land acquisitions before allocating purchased areas as playing fields

and public open space in the 1972 Development Plan Review. Proposals for a Kirkstall Valley

Park were included in a 1980 plan which would see green areas preserved and public paths and

Nature Reserves created. However with opposition in the form of organizations with plans to

develop the area, many of the plans envisaged have not come to fruition. A not-for-profit

company called Kirkstall Valley Park was formed to promote the schemes outlined in the 1980

plan and eventually manage the Kirkstall Valley Park.

The Kirkstall Valley Park’s company secretary Councillor John Illingworth has identified the

need for a web based information system which can be used as a tool to promote the efforts of

the organization.

1.2 Problem Definition

To enable the public and especially local residents to keep track of events regarding the

Kirkstall Valley, a web based information system is to be developed that allows users to view

maps and aerial photographs of the area.

Dr. John Illingworth, a councillor for the Kirkstall ward, is a project stakeholder and will

oversee the progress of the system development throughout the course of the project.

Page 9: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

3

1.3 Background to the Problem

Dr. Illingworth identifies the central issues as ease of expansion of the system and ease of use of

the web interface. He also states that people with slow connections should not be excluded from

being able to use the system nor people who own older computer systems that are not able to

run the very latest software.

The system should allow users to view maps and aerial photographs of the Kirkstall Valley as

well as interact using zoom and pan functions. The system will require functionality to add

thematic map layers (themes) showing such features as land use, flood risk areas and roads. The

system will be linked to a relational database which will be used to look up information of items

such as history, housing density, planning constraints and so forth.

Due to the time constraints imposed by a final year undergraduate project and the scale and

complexity of such a system, it may be necessary to implement only a subset of these features.

Dr. Illingworth states he would much rather have a well designed and flexible architecture than

a complex system that has many features that do not work properly and low usability for people

with limited computer experience.

As the system will include functionality to view and manipulate maps, as well as retrieve data

on geographic features on maps, the system will be a geographic information system (GIS). In

the simplest terms a GIS is analogous to a two dimensional paper map in that it shows features

such as roads, buildings and rivers, but information is limited in paper maps to what is displayed

on the one layer. This limitation is overcome in GIS by using multiple layers of maps which can

be toggled on and off to show huge amounts of information by linking to a database. The main

advantage of a GIS over paper maps is the ability to select only the information you require in

order to achieve a specific goal, be it evaluating new planning applications or accessing flood

risk areas [3].

1.4 Project Aim

The aim of this project is to develop a web based geographical information system (GIS) that

allows users to view and interact with maps of the Kirkstall Valley vicinity as well as mix and

match themes which show features such as contours, roads and flood plains. A GIS is normally

Page 10: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

4

linked to a relational database to provide data on locations shown on the maps, however due to

time constraints it will not be possible to implement the database during this project.

As there will be a web interface for using the system there are issues of usability that must be

addressed. When designing the web interface recommended tests for the usability of web pages

such as Nielson’s points of usability will be considered. The aim is to create a usable and

intuitive interface and test the suitability of the design in the evaluation with a subset of target

end users from the public.

1.5 Objectives

To achieve the aim a set of objectives has been devised which, when completed in full, will

yield a completed project. The set of objectives are:

• Research GIS technologies and map datasets which will be used to develop the system

• Research existing GIS

• Create a web based GIS for the Kirkstall Valley

• Evaluate the system with a subset of target end users

• Produce the project report

1.6 Minimum Requirements

From the list of project objectives a set of minimum requirements were developed. The

minimum requirements are a set of more specific project objectives that must be fulfilled for the

project to be completed. Having completed the majority of my research since the submission of

the minimum requirements for the Aims and Minimum Requirements form and Mid-Project

Report, my minimum requirements have changed, and are now as follows:

• Research map formats suitable for use in the system and GIS technologies such as web

based GIS map servers

• Design and implement a web based GIS that allows users to view and interact with

maps of the Kirkstall Valley

Page 11: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

5

• Extend the GIS to allow themes to be overlaid on the maps

• Evaluation of the system by author and a subset of end users

1.7 Possible Extensions

Due to time constraints some of the features mentioned by Dr. Illingworth may not be

implemented during this project. This section outlines the possible extensions to the system if

the minimum requirements are completed easily or with time to spare. The extensions may also

provide a basis for development in future undergraduate projects. The possible extensions are

• Link the system to a relational database to allow users to click on a location and retrieve

information such as land use, history and census data

• Implement a forum (or bulletin board) that allows users to post topics on issues relating

to the system or concerning the Kirkstall Valley in general

• Extend the system to include multiple languages that can be selected before launching

the GIS

1.8 Software Development Methodologies

A structured software development methodology is essential when developing any system of

reasonable size to ensure that the stages involved are completed in a methodical manner that

considers both time and resource constraints. A good methodology is particularly important for

an undergraduate project that is restricted by time and is run concurrently with other studies.

When deciding on a methodology to adopt for the development life cycle, particular care should

be taken to ensure the type of problem to be tackled can be broken down into appropriate stages.

Some methodologies can be adapted for systems of virtually any size whist others are designed

for systems that are broken down into smaller parts for a shorter development life cycle.

The most widely used development methodology is the waterfall method proposed by W. W.

Royce in 1970. The original article by Royce [4], divides the development process into these

stages: requirements analysis, design, implementation, testing, integration, and maintenance.

Each stage is designed to be done iteratively where by validation is done at the end of every

stage before the next can be begin.

Page 12: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

6

One of the other popular development methodologies is Rapid Application Development

(RAD). The key feature of RAD is the ability to produce software in comparatively little time.

RAD is ideal to test functionality by providing a prototype which can then be evaluated and

changes made before the final product is completed. If the prototype fulfils the minimum

requirements outlined then time can be spent adding enhancements in what will become the

final version of the software.

The methodology used in this project will be based on the waterfall method with several stages

to help ensure a successful outcome. The full list of stages used in this project is: Introduction

and Project Management, Background Research, Design, Implementation, Evaluation and

Conclusion.

1.9 Schedule

The project is split up into several stages designed to ensure a successful outcome to the project.

An initial schedule was created for the mid-project report which attempted to divide up all the

stages into time intervals that would be followed to ensure the project progressed correctly. The

final schedule shows the path the stages of the project actually followed through to completion.

Both schedules can be seen in Appendix B.

The following table shows the milestones of the project and their completion date.

Task Date of completion

Submit Aims and Minimum Requirements form 22.10.2004

Complete background research 28.11.2004

Submit Mid-Project Report 10.12.2004

Complete implementation of the system 20.02.2005

Complete system testing and debugging 13.03.2005

Complete project report 24.04.2005

Page 13: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

7

Chapter 2

Background Research

This chapter contains all the research done before the design and implementation stages could

begin. Geographic Information Systems (GIS) are described along with map projections and

datums which are used to accurately projection data within GIS applications. Ordnance Survey,

Britain’s official mapping agency, is introduced along with the various datasets they provide for

using within mapping applications.

2.1 Geographic Information Systems

A GIS is a computer-based tool designed for the mapping and analysis of geographical data [5].

A GIS is typically geared towards a particular geographical area such as a city, country or the

location of a large event and allows users to view and interact with maps of the area. Maps in a

GIS contain geographical features such as lakes and rivers which are linked to a database to

provide relevant information about that feature. In a GIS multiple layers can be viewed or

disabled which enables thematic maps to be overlaid a base map and enhance functionality. GIS

has multiple uses, some examples are [3]:

• Emergency Services – Fire and Police

• Environmental – Monitoring and Modelling

• Industry – Transportation, Communication, Mining, Pipelines, Healthcare

• Government – Local, State, Military

• Education – Research, Teaching Tool, Administration

Page 14: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

8

There are many web browser based GIS implementations available online. Existing GIS range

from council run systems that are designed to keep local residents informed of planning issues

through to city run systems which provide tourist information.

SwissInfoGEO [6] is a GIS aimed at providing information for visitors or residents of

Switzerland. On loading, a simple map of Switzerland is displayed with a toolbar along the left

side containing tools which allow zoom and pan operations to be performed on the map. A

panel to the right of the map allows users to interact with the GIS in several further ways. Users

can search for an address by name, street or ZIP code, add themes to the view such as lakes and

roads and plan a route from one location to another. The GIS interface is well laid out making

good use of frames to access different tools and the map display is large and clear at all scales.

The GIS is very attractive and the performance is excellent over a fast connection, partly due to

all maps being vector based. Vector maps are different to pixel based raster maps in that they

are coordinate based which requires less storage and therefore takes less time to transfer over a

network. For users who have their displays set to a low resolution the window can be resized to

fit completely within the viewable area. The GIS is available in ten languages one of which is

selected before the GIS window is launched.

The technologies used to create the SwissInfoGEO are well hidden from the user for copyright

reasons. Scripting prevents the user from accessing the HTML source although it is likely that

some client side scripting is used with the majority of processing done on the server side. This is

a fair assumption as no software is required to be installed on the client machine which has the

advantage of negating peoples concerns regarding malicious code, such as viruses, being

executed on their computer. The system works with all recent versions of the major browsers

and it is very likely that only a small number of people will have browsers that are unable to use

the GIS.

A different type of GIS is the Mapping Wandsworth online GIS [7]. Wandsworth council

provide the GIS for local residents as part of the local planning service. The GIS requires a Java

Virtual Machine (JVM) to run an applet which displays the map in a large viewing area. The

GIS provides tools to zoom, pan and add themes to the viewing area as well as the ability to

jump to features such as hospitals, stations and the like. By default the system displays a vector

based street map and themes however high resolution aerial photography can be added to the

view which, being raster based, does lead to a drop in performance.

Page 15: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

9

The Wandsworth GIS is developed using ASP.NET technology, a Microsoft programming

framework for implementing web applications. The GIS delegates some of the processing to the

client by way of a Java Applet which is downloaded and then executed on the client machine.

ASP.NET and Java technology allows a powerful system to be developed with benefits

including security, scalability and flexibility.

One of the only common traits among every GIS is the use of spatial data in maps to provide

information to the user.

2.2 Spatial Data

Spatial data is data that defines the location of objects in a multi-dimensional space. A map is an

example of data that defines the location of objects. These objects can be features on the map,

such as points representing the location of airports, lines that show the coastline of an area of

land and polygons showing the outline of a lake. A person viewing the map is able to derive

information from the map by visualising the location of objects relative to other objects, for

example a church is near a river or the factory is in grid 65-25.

An application requires information about the spatial data it is using to ensure the geographical

features are in the correct positions inside the applications coordinate system. This is done using

map projections and datums.

2.3 Map Projections and Datums

There exists a fundamental problem when a map is produced of an area in the real world. Maps

that people are most familiar with such as atlases, roadmaps and digital maps on a computer

screen exist in two dimensions where as the real world exists in three dimensions. An area to be

mapped is always on a curved plane due to the curvature of the Earth’s surface, so mapping a

large area at a small scale will lead to considerable distortion if this curvature is not accounted

for [8]. Map projections are used to deal with this distortion.

In the process of map making (cartography), map projections are essential to ensure an

acceptable level of accuracy by reducing distortion. There are three models that are used to

create map projections. The spherical model assumes that the shape of the Earth is roughly a

sphere. This is an inaccurate assumption as the Earth bulges at the equator and flattens at the

Page 16: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

10

poles where as a sphere has uniform curvature. For some purposes this inaccuracy can be

overlooked, for example, when representing the world on a two dimensional map. The

equatorial bulge and flattening at the poles can be ignored at very small scales with the spherical

model providing the least complexity for a cartographer when producing a map.

The second model is the ellipsoid, which is a sphere with a bulging at the equator. This model

more closely models the Earth and is suited to large scale topographic maps which show land

relief using contour lines [8]. There are several ellipsoid projections that are specifically for use

in different geographical regions.

The third model, the geoid, models the Earth using satellite gravity measurements. It yields an

output similar to modelling the Earth’s physical surface by taking into account features that are

higher than sea level, such as mountains and those that are lower such as basins in the oceans

[9]. One of the largest differences on the Earth’s physical surface is between the summit of

Mount Everest and the bottom of the Mariana Trench in the Pacific Ocean at approximately

19,000 metres. The largest difference present in the geoid model is approximately 100 metres

and therefore appears much smoother than a representation of the physical surface of the Earth.

The geoid is a very complex model and unsuitable for use during mapping and is instead used in

the construction of geodetic datums. A geoid is used to create a datum by taking an ellipsoid,

which represents the Earth, and applying approximations of the Earth’s surface for specific

geographical regions. As an example, the North American Datum of 1983 (NAD83) takes into

account major geographical features in North America such as the Rocky Mountains and the

Great Lakes. The Ordnance Survey Great Britain 1936 datum (OSGB36) uses an airy ellipsoid

and approximations of Britain’s surface.

All datums are based on a map projection of which there are many with the Mercator and

Transverse Mercator the most popular. The Mercator is a cylindrical map projection that

attempts to compensate for the way the longitudinal lines converge towards the poles which

gives features on a map a stretched look. To compensate for this elongation the Mercator

projection stretches the features in an easterly and westerly direction. Although the Mercator

projection works well for most countries, it fails when mapping areas near the poles such as

Greenland. On a map of the world based on the Mercator projection Greenland appears much

larger than Africa, which lies on the equator, even though Greenland is over ten times smaller

(figure 2.1).

Page 17: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

11

Figure 2.1: A Map of the world using the Transverse Mercator Projection

One of the alternatives to the Mercator projection is the Transverse Mercator. This is perhaps

the most widely used projection and is suited to countries that have a small longitude range such

as the UK or Chile. Ordnance Survey uses the Transverse Mercator map projection and the

OSGB36 datum for all the maps it produces.

2.4 Ordnance Survey

Ordnance Survey, established in 1791, is the official UK mapping agency. One of the first aims

of the organization was to map southern Britain using a Ramsden Theodolite, which is an

instrument for measuring horizontal and vertical angles during the process of triangulation.

Triangulation is used to accurately map large areas of land. The first one-inch scale map

produced was of the county of Kent and was published in 1801. A second map of Essex

followed shortly after [10].

Over the next 20 years approximately a third of England and Wales was mapped at a one-inch

scale. From the early 1800’s through to the 20th century, the mapping of Britain continued.

Also produced during this time were smaller scale 6-inch and then 25-inch maps which enabled

engineers, among others, to design railway track routes. Some of the maps that were so

painstakingly produced were destroyed by fire in the Tower of London in 1841, and again

during World War One [10].

In 1935, before World War Two, new legislation was introduced designed to bring Ordnance

Survey into the 21st century. The Davidson Committee was established to review the future of

Ordnance Survey and decided that a re-triangulation of Great Britain was needed. The

Page 18: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

12

triangulation concrete pillars, still seen today, sprang up around the British Isles and along with

the new National Grid reference system the mapping began again. All previous scales were

replaced by new 1:25,000 and 1:50,000 scale maps. However like before in World War One,

millions of maps were destroyed, when during World War Two Ordnance Survey’s

Southampton offices were bombed in November 1940.

After the war the re-triangulation continued and, in 1969, Ordnance Survey’s new headquarters

were built in Southampton. In 1973, when the digital age was in its infancy, Ordnance Survey

began to digitise there maps. This arduous process was complete in 1995 when 230,000 maps

were fully digitised making Britain the first country in the world to complete a large scale

electronic mapping project.

2.5 The National Grid Reference System

All the digital maps available from Ordnance Survey today use the National Grid reference

system. The system, which is separate to traditional latitude/longitude, divides the British Isles

up into a grid. At the highest level there are 25 squares in a 5 by 5 grid which are assigned the

letters of the alphabet (excluding the letter ‘I’) starting with ‘A’ in the square in the north-west

corner through to ‘Z’ in the south-east corner. Due to each square being of side 500km and the

location of the tie point, only 4 squares actually contain land that is part of the British Isles.

These squares are H, S, N and T as shown in figure 2.2.

Figure 2.2: The National Grid at the highest level

Page 19: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

13

Each 500km square is then divided into 25 squares of 100km by 100km with each assigned a

letter of the alphabet (excluding ‘I’) as before. The square that initially contained the letter S, for

example, will now have 25 squares within it each labelled with S followed by the new letter. In

the north-west 100km square of S will be SA and the south-east square will be SZ. Figure 2.3

shows the British Isles and the 100km grid along with the false origin. The false origin is so

called because of the problems associated with measuring from the true origin (the central

meridian running through the centre of the UK); therefore the origin is placed in the bottom-left

corner of the grid to eradicate the need for negative values when taking measurements [11].

Points inside the grid are taken just like points in Cartesian (x and y) systems. Easting

measurements are taken along the horizontal axis, northing along the vertical, using the metre as

the unit of measurement. From the figure it is possible to see that square SE has an easting

measurement of 400km and a northing measurement of 400km.

Figure 2.3: The National Grid showing 100km squares and the false origin

Each 100km square can then be further broken down into squares of side 10km, 5km, 1km,

100m, 10m and 1m. The letters used to identify a 100km square (such as SE) are used along

with numbers in the range 0-9 to specify the size of the square. Figure 2.4 shows a 100km

square along with the numerical sequences used to identify squares within it. SE 23 is a square

of side 10km located at an offset of 2 units east of the bottom-left corner of square SE and 3

units north. SE 38 NE is a square of side 5km located in the north-east corner of the square SE

Page 20: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

14

38. A square of 10km containing squares of side 1km are identified using a sequence of

numbers as show in figure 2.4.

Figure 2.4: Examples of the numbering notation used in the National Grid

Squares of side 100m, 10m and 1m can be specified using the same numbering convention.

Some examples are:

SE 123456 is a 100m by 100m square located in square SE 14

SE 42589384 is a 10m by 10m square located in square SE 49

SE 9485738564 is a 1m by 1m square located in square SE 93

Ordnance Survey uses the National Grid reference system for all the map data they provide.

Each square of map data is called a tile and can be one of many different map formats.

2.6 Digimap and Ordnance Survey Datasets

Digimap is a service provided by EDINA, an online data library operated by Edinburgh

University, which allows users in higher education in the UK to download Ordnance Survey

data. Digimap provide maps as datasets which are sets of tiles of map data in a specific format

and scale.

The simplest dataset provided by Ordnance Survey in terms of viewing and performing

operations such as zooming and panning is a raster tile which displays an image of the map. A

raster image is a rectangular grid of pixels, or points of colour rendered on a computer screen or

piece of paper [12]. Each pixel has colour information associated which allows an image, such

as a map, to be formed across the grid. The raster data is available in three scales: 1:10,000m,

Page 21: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

15

1:25,000m and 1:50,000m. A raster tile that represents a 10km square, such as SE 23 in the

National Grid reference system, is 4000 x 4000 pixels and in the TIF (Tagged Image Format)

format. Figure 2.5 shows an example of a raster tile at a scale of 1:50,000m.

Figure 2.5: A sample of a raster tile

With every TIF raster tile there is an accompanying TIF World File (TFW). The TFW is a 6-

line ASCII text file providing georeferencing information to an application using the TIF image

[13]. Without the TFW file the image is effectively “stateless”, which means that an application

processing the image file has no knowledge of where the tile should exist inside the coordinate

system.

Digimap also provides several maps as vector datasets. Vector map data structures are different

to raster structures in that they do not use a grid of pixels to render the map. A Vector map is a

Cartesian (i.e. x and y) coordinate-based data structure commonly used to represent geographic

features such as lines and polygons [14]. All vector maps of the UK use the National Grid as the

coordinate system with coordinates using easting and northing values.

One of the simplest vector data structures are ESRI shapefiles. [14] describes shapefiles as “a

simple, non-topological format for storing the geometric location and attribute information of

geographic features”. Geographic features can be streets, hospital locations or natural features.

A basic shapefile comprises a set of three files, with other files extending the format to include

extra features. [15] outlines the files that make up the shapefile format as follows:

1. .shp – the file that stores the feature geometry

2. .shx – the file that stores the index of the feature geometry

3. .dbf – the database file that stores the attribute information of the features

Page 22: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

16

Shapefiles do not have any style information associated with them; this is provided by the

application that is displaying them. By default a polygon might have a black outline and a

transparent centre both of which can be altered to suit the type of shapefile. Style information

can be specified to make the shapefiles appear more like the data they are displaying. For

example, an ‘A’ roads shapefile can be rendered in pink to resemble the style used by Ordnance

Survey in their road maps. A shapefile that displays all the lakes in an area might be styled with

a pale blue outline and a solid or shaded blue fill. Figure 2.7 shows a shapefile that represents

all the county borders of the United States of America. All areas not covered by the black lines

can be transparent which makes shapefiles ideal to use as themes that overlay a raster base

layer.

Figure 2.7: A shapefile of the USA (1)

Figure 2.8 shows the same shapefile at the same extents but the outline is disabled and all lines

that make up a polygon are filled with a mesh of tiny green dots.

Figure 2.8: A shapefile of the USA (2)

Shapefiles are very versatile and can be represented using an array of fill colours and symbols.

Ordnance Survey supplies all vector data in the national transfer format (NTF). NTF is very

similar to the shapefile format in some respects but is a much larger and more complex format.

Ordnance Survey provides four datasets in NTF format: profile, meridian, strategi and land-line.

Page 23: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

17

The land-form dataset shows land relief as contours made up of vector lines. The meridian

dataset is useful for decision making in planning, site location analysis, and environmental

analysis. The dataset also provides a detailed road network making it ideal for developing road

maps or applications [16]. Strategi is a hugely detailed regional based dataset that contains a

large vector database for displaying seven distinct layers of geographic features. The layers are

communications (airports and roads), water features (coastline and rivers), settlements (cities

and towns), administrative boundaries, woods and land use, tourist features and positioned

names of towns and other settlements in text format [16].

The land-line vector dataset shows natural and man-made features at varying levels of detail

with the ability to add or remove layers of features. Land-line shows urban areas at a scale of

1:1,250, rural areas at 1:2,500 and moorland at 1:10,000 [16]. The land-line specification

includes the following features (most are not listed for brevity):

Buildings (with selected building names and house numbers)

Roads (with road names and/or Department of Transport road numbers

Fences, walls, hedges and banks

Rivers, streams, drains, canals, lakes, reservoirs and ponds

Pylons, overhead structures and cables

Figure 2.9 shows a sample image of the land-line vector map rendered by an NTF viewer. The

red lines show building outlines, the grey lines general detail such as plots and walls and the

purple lines represent railway tracks. Selected text is also displayed for features such as building

and street names. Many of the features available in a land-line NTF are not shown to reduce

clutter.

Figure 2.9: A sample of land-line data

Page 24: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

18

The main advantage of the vector dataset over the raster is the ability to choose which features

are displayed and which are disabled. Also, at small scales the raster dataset can become ragged

as the pixels become too large to be rendered smoothly. An advantage of the raster is the

reduction of processing power required to render the map due to the raster having just one layer

compared to the multiple layers that need to be processed in the vector dataset.

2.7 GIS and Web Technologies

Several technologies may be required to perform all the tasks required of the GIS. At a

minimum a web server will be required to handle communications with clients and a GIS map

server to process the vector maps. It may be beneficial to include software that specialises in

transmitting large images over slow connections, a requirement that was identified in the early

stages of the project by the project stakeholder Dr. Illingworth. The web front end will use

HTML and scripting to create a dynamic interface and there may be the requirement of a plug-in

to allow client side processing and improved performance. It is preferable that all software used

is free and has no licensing restrictions. This section outlines the technologies that may be used

to implement the system.

2.7.1 GIS Map Servers

A GIS map server is required to generate the output from the shapefile vector maps. There are

many map servers available, some require a licence to use and some are open source. Due to the

licensing issues it may not be possible to test the suitability of some of the map servers however

this may not be necessary if an open source and free alternative fulfils all the requirements.

2.7.1.1 MapServer

MapServer is an open source GIS map server developed by the University of Minnesota. The

program can be downloaded freely and compiled on many platforms including Win32, UNIX,

Linux and Mac. MapServer is a CGI program run as a process by a web server which outputs

images of maps in formats such as JPEG, GIF and PNG. Inputs to MapServer can be vector

based (shapefiles) as well as raster formats (such as TIFF) both of which are supported natively.

Ordnance Survey NTF land-line files are supported using a separate library [17]. MapServer

output can contain spatial data which allows clickable geographic features to be displayed on a

map which can be linked to a database to provide lots of information.

Page 25: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

19

2.7.1.2 MapIt!

Another open source map server is MapIt! which is available for most platforms including

Win32, UNIX, Linux and Mac [18]. There are at least two versions of MapIt! developed by

different organizations, one is a map sever the other is a tool for converting raster data into

vector maps. The map server MapIt! only supports raster data which makes it unsuitable for use

in the system as it cannot process shapefiles.

2.7.1.3 GeoTools

GeoTools is an open source Java implementation and therefore available for most platforms.

The developers describe GeoTools as a GIS toolkit which provides all the necessary map server

functions to implement GIS solutions [19]. The program supports a selection of vector formats

including shapefiles and a large selection of raster formats. The disadvantage of using GeoTools

and other Java based implementations is that performance is less of a priority than portability

and so the map server will generally be slower than a non-Java based program such as

MapServer.

2.7.1.4 MapXtreme

MapXtreme is a commercial map server developed by MapInfo and available as a native Win32

or Java implementation [20]. Although the author was not able to test MapXtreme it will

undoubtedly be able to handle shapefiles, Ordnance Survey NTF and raster files. However as a

licence needs to be purchased after a 30 day trial period has expired it is very unlikely it will be

chosen as the free map servers have most of the same features.

2.7.1.5 ArcGIS Server

The product pages on the website of ESRI UK describe ArcGIS Server as “a comprehensive

platform for delivering enterprise GIS applications that are centrally managed and support

multiple users.” [21]. As ESRI UK software ArcGIS Server will provide native support for

shapefiles and Ordnance Survey NTF land-line. As a more comprehensive map server, the

software is commercial and requires a licence to use, which again means that it is unlikely

ArcGIS Server will be used in the system.

2.7.2 Image Web Server

Image Web Server (IWS), developed by Earth Resource Mapping, was recommended by the

project stakeholder Dr. Illingworth as an excellent choice to include in the system due to its

Page 26: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

20

ability to transmit large raster images over slow connections such as dial-up. IWS integrates

with Internet Information Services (IIS), Microsoft’s web server for Win32 platforms to enable

web pages to request images which are streamed to a client machine.

Images are compressed using Enhanced Compression Wavelet (ECW) technology which

reduces the size of the image file and allows small parts of the image to be streamed, using the

Enhanced Compression Wavelet Protocol (ECWP), to a client on demand. IWS also provides

tools to pan and zoom around the images, changes to the part of the image that is visible are

monitored via a client side plug-in or Java applet with requests sent to IWS for more parts of the

image as they are needed.

ECW compression converts uncompressed raster image into a smaller ECW file which can be

viewed at multiple scales with minimal loss of detail. As an example, a high resolution

photograph of Europe converted into ECW format would show, at the largest scale, the coastal

outlines and very large natural features such as the Alps. To view the image at this large scale,

only enough data would be streamed to the client to display what is shown, not data which

shows smaller features such as large buildings in cities and lakes. If the user zooms into the

image, say where he thinks London is, data from that part of the image is streamed at a higher

level of detail. This type of on demand streaming is what differentiates the ECWP from HTTP,

which would require that the whole image file is transferred before an image can be displayed.

A free edition of IWS is available with two notable restrictions: all ECW files must be less than

50MB before compression and connections to IWS are restricted to 10 at any one time. Dr.

Illingworth has the appropriate licences for a version with no restrictions if the system was

released in the public domain.

2.7.3 Web Servers

Apache and Microsoft’s IIS make up the vast majority of the web server market at nearly 90%

[22]. Apache was originally developed for the UNIX operating system and is credited by some

as starting the WWW revolution [23], now after a major overhaul for version 2 it is the most

popular server software on the web with a share of over 70% [22]. Apache is available for all of

the most popular platforms and provides virtually all of the features demanded of a web server.

IIS, which is available only on the Windows operating systems has a 22% share of the web

server market [22]. Currently at version 6 in Windows Server 2003, IIS can do most of what

Page 27: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

21

Apache can with the advantage of being tightly integrated with the Windows OS which has

security and authentication benefits [23].

If Image Web Server was used then IIS would be required and all development and deployment

would need to be based on a Windows OS. If the system uses technologies that are not platform

dependent such as CGI and Java, then the system can be developed and deployed on either

Apache or IIS.

2.7.4 Web Browsers

One of the aims when designing the system will be that it can be viewed by as many web

browsers as possible. The World Wide Web Consortium (W3C) offer standards which when

adhered to will guarantee the interoperability of webpages. The webpages developed will adhere

to one of two current standards: HTML 4.01 or XHTML 1.0 (eXtensible HTML). All webpages

will be tested with the most popular browsers to ensure the design is upheld, these are: Internet

Explorer which currently has a 62% share and Mozilla Firefox with a 24% share (April 2005

[24]).

2.7.5 HTML and Scripting

The use of HTML and scripting will be required in any solution to develop the web interface.

All the HTML code written will be tested against the latest HTML or XHTML W3C

recommendation. XHTML is the reformulation of HTML 4.01 in XML 1.0 with the main aim

being the compatibility of XHTML code with XML-based agents (e.g. PDAs) that do not have

the necessary processing power to deal with code that is [25]. Currently there is no pressing

need to create XHTML 1.0 compliant code as HTML 4.01 will suffice, however, like XML, the

need for well-formed code in the XHTML standard gives the author the opportunity to write

"well-formed" documents that work in all browsers and that are backward browser compatible

[26].

The HTML 4.01 and XHTML 1.0 recommendations require that all style information is

removed from the body of HTML documents and specified using an internal or external

cascading style sheet (CSS). The benefit of external style sheets is that there is no requirement

to add style code to every HTML document, rather one line needs to be added to link to the

CSS. Tweaking a style element requires only one change in the style sheet compared with

numerous changes across multiple HTML files without CSS.

Page 28: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

22

As the most popular and widely supported format, JavaScript will be used for all client side

scripting.

2.8 Conclusion

Before the design stage of the project can begin several decisions must be made regarding the

technologies that will be used.

After testing the Image Web Server it seems an ideal choice to use in the system. IWS is

suitable for streaming large images, such as very high resolution aerial photographs, to client

machines over slow connections which was one of the requirements outlined by the project

stakeholder Dr. Illingworth. Ordnance Survey maps such as the raster dataset and NTF land-line

dataset can be converted into ECW image files which reduce the amount of data that needs to be

transferred. IWS provides client side controls which allow users to interact with ECW images

by panning and zooming which was another requirement outlined by Dr. Illingworth.

The interaction with ECW image files using the controls requires some processing to be done on

the client side. The processing is controlled using either a free browser plug-in (of size 1MB) or

a Java applet. It can be assumed that many of the users who may wish to use the system will not

have a Java Virtual Machine installed on their system which would require a large and time

consuming download, especially over dial-up connections. Also, after testing both methods the

plug-in is by far the fastest and most reliable method however the drawback is browser

compatibility. Internet Explorer version 4.0 and newer is supported of which 62% of visitors to

W3Schools.com use, however this figure can be expected to be higher as visitors to W3 Schools

are more likely to be computer enthusiasts who are more likely to adopt different browsers

where as the average web user is much more likely to use Internet Explorer. There are also plug-

ins for Mozilla based Browsers such as Netscape Navigator and Mozilla with a plug-in for the

second most popular browser Mozilla Firefox (24% share [24]) part of the next release of IWS.

Dr. Illingworth stated he would expect that ESRI shapefiles would be “part of any solution”.

Processing shapefiles requires a GIS map server of which several different versions can be

integrated with IWS according to the IWS documentation [27]. Of the map servers discussed

earlier MapServer was listed as being compatible with IWS. As an open source program and

having been tested for suitability by the author it will be used in the GIS.

Page 29: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

23

IWS also allows the linking of a Microsoft Access database which will allow the system to be

easily extended to provide easy access to information on spatial data.

To summarise, the GIS will be implemented using MapServer to process the shapefile-based

theme overlays and IWS to project them over a base layer ECW image compressed from

Ordnance Survey map data. A browser plug-in will be used to provide interactivity with the

base layer and provide pan and zoom controls. All data used in the GIS will use the Transverse

Mercator map projection and the OSGB36 datum to accurately project the layers in the virtual

coordinate system.

For the webpages all HTML code will be validated against the XHTML 1.0 recommendation

using the W3C Markup Validation Service. CSS will be used for all style information. All

webpages created will be tested in Internet Explorer and Mozilla Firefox which will soon be

supported by IWS and therefore the GIS.

Page 30: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

24

Chapter 3

Design

This chapter contains the design of the system architecture and web interface that will be

implemented. Several design choices are decided upon and the methods used to create the

layered view of the GIS are outlined.

3.1 Modelling the System

At the highest level the system architecture can be thought of in two parts: the client side and

the server side. As with all client-server architecture systems the technologies residing on the

server deal with requests from the client using a network connection such as the Internet. Figure

3.1 shows a diagram of the system architecture.

Figure 3.1: The system architecture

Requests sent by the client browser are always received by the web server (IIS) with some

requests passed onto Image Web Server (IWS), which is integrated with IIS, for further

processing. IIS will process requests for HTML and CSS documents but pass requests for theme

overlays and parts of the ECW base layer to IWS. Theme overlays are generated by MapServer

Page 31: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

25

when a request is received from IWS which will then wait for the result to be returned. IWS will

then return the overlay to the client browser for the plug-in to display. The generation of

overlays by MapServer is discussed in the next section.

On loading the GIS, the browser will load the plug-in and display the map controls (pan, zoom,

zoom box and pointer tools) and send a request to the web server for the base layer image at a

set of given extents. The extents specify the area of the map that is to be displayed, and is

derived using the systems co-ordinate system which is based on the National Grid reference

system. IIS passes the request onto IWS which will begin streaming the image to the client

using the ECWP protocol.

When the map is loaded in the view the user can begin to use the controls to interact with the

image. For every change of extent a request will be sent for new parts of the image. Parts that

were downloaded but are no longer displayed are cached in case that part of the base layer is

revisited.

Themes are added to the view by placing MapServer generated overlays on top of the ECW

base layer. The user is still able to pan and zoom around the view as an updated overlay will be

requested when the extents change. The pointer tool can be used at any time to click on a point

anywhere in the view. Depending on the functions implemented the pointer tool may output

information such as the latitude and longitude at the point selected.

3.2 MapServer Output

The GIS map server used in the GIS is the open source MapServer which is a CGI program run

as a process by the web server. MapServer natively supports shapefiles which are required by

the system to serve the themes which overlay the ECW base layer. A shapefile theme can be

styled to appear like the feature would appear on a normal map.

A set of shapefiles are processed using a control file which MapServer accesses when an

overlay is requested. A request for a GIS overlay is a URL which links to the MapServer

executable (mapserv.exe) in the web server’s CGI-bin or scripts directory. At a minimum the

path to the control file on the server and the mode of the output is required which are passed in

the URL using the standard CGI method of using a question mark followed by parameters

separated using ampersands. Just specifying these two parameters assumes that other required

Page 32: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

26

parameters are specified in the control file, if not MapServer will fail to produce an output. If

this URL was entered into a browser:

http://<server>/cgi-bin/mapserv.exe?map=C:\themes.map&mode=map

This would assume the size of the output image is specified (e.g. 800 pixels by 600 pixels) in

“themes.map” along with the extents to be shown. For every shapefile used in the GIS there

needs to be a layer specified in the control file. Each layer entry in the file defines the name or

ID of the layer, the relative path to the shapefile, the type of shapefile be it polygon or line, and

the outline and fill colour. Also required is the current status of the layer which is one of ‘on’,

‘off’ or ‘default’. For example if the above URL was entered into a browser and all required

extents were provided then all layers with status ‘default’ would be displayed. To turn on layers

set to ‘off’ a parameter would be added to the URL in the form “&layer=flood_plains”. Figure

3.2 shows an example output that would be displayed in a browser using a URL similar to the

one above. The two themes displayed represent flood plains and land contours. A set of extents

was specified to generate a specific area of the shapefiles.

Figure 3.2: MapServer output in a browser

For the GIS all layers should be set to off and the layer name added to the request URL as a

parameter. Each time a theme is added, a URL is dynamically “built” which is sent to the Image

Web Server as part of an “AddLayer” command.

3.3 Layering the View

The view is the area of the GIS window which displays the base layer image and theme

overlays. Upon loading the GIS, the base layer is the only map present in the view. When

Page 33: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

27

themes are added the base layer is overlaid with the output from MapServer. Figure 3.3 shows

part of the base layer at a set of extents displaying part of the Kirkstall Valley.

Figure 3.3: Snapshot of the base layer

If an overlay is requested using a URL which specifies the flood plains theme is to be layered

over the base layer at the current extents, the output from MapServer will look the overlay

shown in figure 3.4.

Figure 3.4: The overlay returned by MapServer

The parts of the overlay not covered by the flood plains are currently a solid white. The GIS

converts all white areas to transparent and then adds the layer to the view giving the output in

figure 3.5.

Figure 3.5: The base layer with overlaid flood plains theme

Page 34: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

28

Further themes can be added to the view with each overlay rendered on top of the previous one.

If a theme is removed from the view all other layers move up the stack.

3.4 Design Choices

There are several design choices that must be made regarding system compatibility with

different browsers, how the system deals with new users who do not have the plug-in installed,

how the different types of data are presented when multiple layers are displayed and measures

to enhance the performance of the system in general.

3.4.1 Navigation

The GIS is launched using a JavaScript function that opens a new window without the bulky

toolbars and menus of a normal browser window. This was done to give the GIS a self-

contained look where everything that needs to be done is done using the web interface. There is

also a theme overview which is opened by clicking on the name of the theme. A help link is

provided in the GIS window which opens a new window where all the help topics can be

browsed.

As the GIS is launched in a new window, the home page will still be open for the user to revert

back to at any time.

3.4.2 Screen Resolutions

According to W3Schools [24], in January 2005 53% of visitors to the site had their screen

resolutions set to 1024 by 768 pixels. The remaining resolutions recorded consisted of 800 by

600 (29%), higher than 1024 by 768 (13%) with the remaining 5% unknown.

The GIS window should show all features of the GIS without the need to scroll to view parts on

the far right or bottom of the page. It would therefore be simpler to create a version of the GIS

for displays of 1024 by 768 and higher as they are the most common resolutions. However,

excluding over a quarter of users with a lower resolution would lead to the need to provide

scrollbars which will detract from the look of the GIS. Therefore two versions of the GIS will

be provided; one for displays of 800 by 600 and one for 1024 by 768 and higher. Which version

is used will be determined using a JavaScript function which derives the clients’ screen

dimensions and launches the appropriate GIS page.

Page 35: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

29

3.4.3 Plug-in Installation

New users will need to install a plug-in on their computer before the GIS can be loaded. For

Internet Explorer users this requires installing an ActiveX plug-in for which the browser will

attempt to install automatically after a confirmation by the user that they trust the organization

that has signed the accompanying security certificate. If the automatic installation fails for some

reason then the user can proceed to install the plug-in manually. When the plug-in is installed a

link will be presented from which the GIS will be launched.

The plug-in for Netscape Navigator and Mozilla is designed for versions 7.0 and 1.4

respectively. The plug-in was tested for these versions with Mozilla 1.4 working, but much

slower than the Internet Explorer software where as the Netscape Navigator plug-in would not

install. Browser support is slated to be improved in the next version of Image Web Server with a

plug-in for the popular Mozilla Firefox browser scheduled. The system home page will state

that Internet Explorer is recommended for using the GIS at the current time.

3.4.4 The Mozilla Bug

Although Internet Explorer is highly recommended as the only browser to use, the system

design should still ensure compatibility with other browsers supported by the plug-in. A bug has

been identified in some versions of the Mozilla suite where methods that use a plug-in are called

before the plug-in is fully loaded and the methods subsequently fail. The bug only occurs when

the “onload” event of the body tag of the HTML page links to a function which calls methods

from the plug-in at the same time as the browser loads the plug-in. To deal with this the system

delays the call of the methods used to create the toolbar and view the map until the plug-in is

fully loaded. A time interval of half a second is used before calls to the relevant functions are

made.

3.4.5 Base Layer

The base layer is the ECW image that is always displayed by the system. When the GIS is

loaded the base layer will be displayed as a colour image (RGB) of the Kirkstall Valley and the

surrounding area. The colours used for the various features in the map are determined by the

type of Ordnance Survey dataset used before the map is compressed into an ECW image.

Any shapefile themes that are added to the view will also be in colour, which can make it

difficult to distinguish between the base layer and theme layers. To enable the themes to be seen

Page 36: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

30

more clearly there is the option to choose the same base layer image but in greyscale. When new

themes are added to the view they can now be more easily seen.

3.4.6 Reducing Server Load

The Image Web Server and plug-in regulate the transfer of parts of the base layer image from

server to client so no design choices needed to be made for this, however the integration of the

map server required some design choices to ensure server performance is not seriously affected

by too many requests.

When a theme is added to the view by the user, there will always be only one request for the

overlay which will be returned and displayed by the GIS. When one or more overlays are active

and the user zooms or pans the base layer, the overlays need to be refreshed to reflect the

change of extents. The default behaviour of the system would be to request a new overlay for

every change of extent however a small zoom operation lasting two seconds could generate

hundreds of requests for new overlays most of which will not be needed as the extents continue

to change. This number of requests coupled with multiple users dealt with simultaneously by

one server would put the server under unnecessary strain.

The system delays requesting new overlays until the zoom or pan operation has completed. The

delay is done using a timer which waits for a certain period of time after the extents have

changed before request new layers to replace the old ones. A time interval of half a second is

long enough for the system to be sure the operation has completed and short enough so that the

user doesn’t think the system has become unresponsive.

3.5 Webpage Design

The web pages created for the system were designed with usability and accessibility as key

considerations. Due to the relative complexity of the interface compared with static web pages,

the design assumes that users have some knowledge of point and click web interfaces through

using popular web applications such as Hotmail and Google.

Nielson [28] outlines several usability principles, or “heuristics”, that should be considered

when designing web pages. The principles were consulted for all the HTML pages created with

the following sections describing where and how any usability principles were implemented

along with the layout of the page.

Page 37: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

31

3.5.1 Home Page

The home page design is very simple with little text and graphics to overwhelm the user.

Nielson [28] states that pages should have a minimalist design with no unnecessary dialogs

which may detract from the important information. The page contains the title and GIS logo

along with a “Start” link which calls a JavaScript function to determine the users screen

resolution before launching the GIS window. Also present is a few recommendations regarding

the use of the GIS, such as the best browser to use, display settings and warning the user that

they will see a prompt asking them to download and install a plug-in. There is a link to the help

pages for users who do not know how to change their screen resolution or wish to change the

size of the text used.

Figure 3.6: The system home page

3.5.2 GIS Window

The GIS contains the map view and an array of different inputs which the user can use to

manipulate the map and retrieve information from the GIS.

The first usability principle to be considered is the requirement for feedback to the user

regarding the system status. When loading HTML documents, web browsers provide feedback

on download progress using indicators in the status bar and an icon located near the address bar.

Regarding the GIS, the browser may spend long periods loading the base layer, especially if a

slow connection is being used. To keep the user informed, a progress bar will be displayed in

the toolbar on the GIS page which shows the current percentage of the map downloaded at the

current extents.

Page 38: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

32

Nielson also outlines the requirement for pages to make a match between the system and the

real world [28]. The tools used to interact with the view are designed to be familiar to anyone

who has experience with point and click web interfaces. For example, the pan tool intuitively

tells the user to move around the view and click the mouse to “get a grip” on the image and

move it around.

Figure 3.7 shows the layout of the parts of the GIS Window.

Figure 3.7: GIS page layout

Panel 1 shows the Kirkstall Valley GIS logo and title, panel 2 contains the pan, zoom, zoom

box, and pointer tools (figure 3.8) along with inputs to add themes and toggle the base layer

map. Also contained in panel 2 is the progress bar which shows the percentage of the image

downloaded for the current extent. A link to the help pages is present at the bottom of the

toolbar.

Figure 3.8: The tools menu from the GIS

Panel 3 contains the map view which will show the base layer and any active themes. Panel 4

contains call-backs which display the longitude and latitude of a feature on the map when

clicked with the pointer tool and a third call-back displaying the current scale of the map. Also

part of panel 4 is two drop down menus allowing the user to change the scale of the current

view and jump to a feature such as the Kirkstall Abbey.

Page 39: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

33

Each theme is associated with a checkbox that is used to toggle the theme on and off. Multiple

themes can be added and removed from the map at any time. Changing the base layer is done

using radio buttons, which allow only one of a set of two or more buttons to be selected at any

one time as there will be only one base layer active at any one time.

Full screenshots of the GIS page can be seen in Appendix D.

3.5.3 Help pages

The help pages fulfil the requirement for help and documentation of the system recommended

by Nielson [28]. The help pages contain information on the general use of the GIS such as what

tools are available and how they work, adding themes and how the call-backs and other features

are used. The help pages contain screenshots to further help the user. The documentation is

concise to enable the user to find the information they require quickly and efficiently.

Screenshots of the help pages can be seen in Appendix D.

Page 40: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

34

Chapter 4

Implementation

This chapter describes the implementation stages of the system. The creation of the static

webpages is explained along with the process of adding dynamic functionality to create

interactive maps and themes. The implementation of the design choices outlined in the previous

chapter is described and the measures taken to ensure the system

4.1 Converting the Data

The first stage completed was the conversion of the Ordnance Survey map of the Kirkstall

Valley into an ECW image that can be used by the system.

The ECW base layer was created using a tile from the Ordnance Survey raster datasets. The

raster was chosen over the landline dataset as they displayed a map that most users are familiar

with and show plenty of detail. The tile that shows the Kirkstall Valley is different according to

the scale the raster dataset is based on. The 1:50,000m scale raster dataset displays the Kirkstall

Valley area on tile SE22 where as the 1:25,000m scale raster dataset displays it on tile SE23.

The conversion was performed using the free ECW Compressor by ER Mapper. After the input

file has been selected the choice of RGB or Greyscale output and the desired compression ratio

are required. A compression ratio that yields an ECW file of about 5MB was specified as this

enabled plenty of detail at various scales to be retained and not too much data needs to be

transferred when considering users with slow connections. In the same directory as the input

TFW raster file there must be the TFW world file which enables map projection data to be

preserved in the ECW file. A header editor for ECW images is available which allows the

metadata to be viewed and edited as necessary. By default the metadata for an ECW base layer

is a generic Transverse Mercator map projection and the WGS84 datum. Using the editor, the

map projection can be changed to Ordnance Survey’s Transverse Mercator (TMOSGB) and the

OSGB36 datum as show in figure 4.1.

Page 41: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

35

Figure 4.1: A snapshot of the ECW Header Editor

showing Ordnance Survey map projection and datum

Once the metadata had been updated the base layer was ready to use in the system.

4.2 Creating the Webpages

All HTML code was created using a text editor and tested using the W3C Validation Service to

ensure the markup adhered to the XHTML 1.0 Transitional recommendation. The HTML pages

were viewed in Mozilla Firefox and Internet Explorer frequently to view changes and check the

pages were rendered properly. At this stage the HTML documents contained layout and style

code but no functionality to display and interact with the maps.

Seventeen HTML documents were created, eleven of which were simple pages to give the user

an overview of a theme (figure 4.2).

Figure 4.2: A screenshot of the theme overviews

The other six HTML documents are as follows:

Page 42: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

36

‘index.html’

This is the home page from which all other pages can be visited. The requirements for using the

GIS are described and links to help pages are provided if the user is not sure how to change

settings on their system. The ‘Start’ link launches one of two GIS windows.

‘gis.html’

This is the GIS page which allows users to perform all the functions of the system. The page is

launched in a window of size 970 by 670 pixels which fits nicely in the display of screens with

resolution 1024 by 768 pixels and larger. After launching, the page loads the plug-in and begins

to initialize the GIS. If the plug-in is not installed, a routine begins to automatically install the

plug-in. If the installation fails, the user has the opportunity to manually install the plug-in

before refreshing the page and loading the GIS.

‘gis800.html’

This document is the same as ‘gis.html’ but with several layout changes which were required to

fit the GIS into displays using a resolution of 800 by 600 pixels.

‘help.html’

This is the main help page which was created to provide help on using the functions of the GIS.

All the features of the GIS are explained with screenshots to further aid the user.

‘screen.html’

This page is linked to from the main help page and the home page. The page explains how the

user can change their screen resolution if they wish to have larger and clearer GIS interface.

‘text.html’

This page is also linked to from the main help page and provides help on changing the size of

the text used on all pages.

4.3 Implementing the View

Implementing the view involved adding three elements to the page: the view, the toolbar and the

progress bar. JavaScript was required to accesses the methods provided by the plug-in, and

Page 43: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

37

create new instances of the view, toolbar and progress bar in the table cells allocated to display

them. For the methods of the plug-in to be accessed a number of JavaScript files had to be

included in the page:

������������� ��������������������������������������������������������

The JavaScript code used to implement the methods can be found in Appendix C. Once the

view was implemented, code to add layers to the GIS page was added.

4.4 Adding Layers to the View

Every layer that is displayed in the view, including the ECW base layer, is added using the

AddLayer method provided by the plug-in. Three types of layer can be added to the view using

the AddLayer method: simple vector, ECW image and GIS overlay. The simple vector layer

allows users to add simple primitive 2-D shapes such as squares and circles to the view by

clicking on the map and dragging the mouse to create the shape. The simple vector layer is not

very useful as any shapes added to the view disappear when the extents change.

The AddLayer method for an ECW image requires four parameters: the type of layer (ECW),

the name of the new layer, the URL to the ECW file on the server and a list of other parameters.

The URL to the ECW image must use the ECW protocol (“ecwp://”) which allows the image to

be streamed to the client on demand. When the layer has been added to the view, the user can

use the tools to interact with the image.

To add the themes to the view the “GIS overlay” layer type was used. The AddLayer method for

overlays requires three parameters: the type of layer (“GISOverlay”), the name of the new layer

and the URL which will return the overlay when requested. To get the correct overlay returned,

the URL must specify several parameters. The current extents of the view are required so the

overlay can be accurately projected over the base layer, the size of the view, the layer to display,

the location of the map control file on the server and the mode of the overlay. Every time an

overlay is requested the URL is dynamically built using methods provided by the plug-in before

the request is sent to the server. When the layer is returned, the areas that contain no lines or

polygons are made transparent and the layer is added to the view.

The JavaScript code used to add layers to the view can be found in Appendix C.

Page 44: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

38

4.5 Updating the Layers

An update of all the active themes was required when the extents of the view changed. For this

to be possible, the GIS needed to know which layers were currently active so requests for new

layers could be made. This was done using an array the same size as there were themes

available in the GIS. On loading, there are no themes active and the array contains false Boolean

values for all themes. When a theme is added to the view, the part of the array for that theme is

switched to true. Conversely, when a theme is removed from the view, the correct part of the

array reverts back to false. When a change of extent is detected the GIS accesses the array and

every active theme is deleted and a request for a new layer is requested and then displayed at the

correct new extents.

4.6 Implementing the Design Choices

The design choices outlined in the previous chapter were implemented in the system to enhance

system performance and increase browser compatibility. At this stage of the implementation,

the JavaScript code for the design choices can be included in the HTML documents.

4.6.1 Plug-in Installation

There are several criteria that the client browser must fulfil before the plug-in can be installed.

The first check done is that the browser version can not be less than version 4.0, for Internet

Explorer and Netscape Navigator. If the version is less than 4.0 the browser is redirected to an

IWS page stating that a browser upgrade is required before the plug-in can be installed. The

JavaScript code to test this is:

��������������������������� �����!���"�#!�$�

��%��&'�����������������(��&����������)�'�*�

+�

If this requirement is fulfilled, an IWS function from the JavaScript files added earlier is called

which detects the exact browser and attempts an automatic install of the correct plug-in. If the

automatic installation fails, the user has the opportunity to attempt to install the plug-in

themselves and then refresh the GIS page.

Page 45: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

39

4.6.2 The Mozilla Bug

A bug in some versions of the Mozilla suite allows the methods to initialize the view, toolbar

and progress bar before the browser has loaded the plug-in. This was overcome in the design

section by using a timer to delay the call of the methods until the browser has finished loading

the plug-in. The implementation is as follows. The “onload” event of the body tag is the first to

be called on the page and calls “onLoadCB” an on load call-back which will delay the calling of

the plug-in methods:

���%������%����,��%�-�!*����&����%����.����%�-�!*���

The “onLoadCB” function contains a timer which waits half a second before the load handler

function is called and the view, tools and progress bar are initialized:

�&���������,��%�-�!�$�

���/�,��%0�'������0�'�&���,��%1��%���!�2�3##!*�

+�

The “onunload” event deletes a cookie when the page is closed. The cookie is created when the

page is loaded to tell the system whether the plug-in or Java applet is being used.

4.6.3 Base Layer

The base layer is always shown in the view. The default image is the colour map however a

greyscale version can be selected. To change between the two base layers, a radio button is used

which can be toggled to switch between the two layers. The code to implement this is:

�&�������0����-��,������&!�$�

���������&����4���4!�$�

����%��&'���5���6��,����-��,���!*�

��������%��&'���5���7%%,����8�9�2���(�:����;�%��&'������������)����;�

��������������%����<��<�������(�2��-��,���2���!���#!�$�

�����������%��&'���5���=�,���8����0 ��!!*�

����+�

��+�

�����$�

����%��&'���5���6��,����-��,���!*�

��������%��&'���5���7%%,����8�9�2���(�:����;�%��&'������������)����;�

��������������%������><��<�������(�2��-��,���2���!���#!�$�

�����������%��&'���5���=�,���8����0 ��!!*�

����+�

��+�

Page 46: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

40

��%��&'���5�����8 ������0,?2��0,@2��-A?2��-A@!*�

+�

4.6.4 Reducing Server Load

A measure to reduce the load on the server was designed so that an operation on the view,

which would change the extents, would not generate hundreds of requests for updates when all

but one would be discarded. To do this a timer was implemented where the system would wait

until the extents stopped moving before sending one request for each active theme. The timer

was put in the extents change call-back as follows:

'��0�'������0�'�&���A%��(/������!�2�3##!*�

The method to redraw the overlays is then called and the array accessed to discover which

themes need to be updated.

4.7 Prototype

A prototype system was developed which fulfilled the minimum requirement of allowing users

to view and interact with maps of the Kirkstall Valley and partly fulfilled the requirement to add

themes over the maps. The latter was only partly fulfilled as the prototype allowed only one

theme to be added to the map and was not updated when the extents changed. The image on the

left in figure 4.3 shows the view extents when the flood plains theme was added to the view. A

zoom out operation was then performed but the overlay did not update and the theme appears

blocky at the new extents. The image on the right side shows how the view would look if the

theme was updated by the system.

Figure 4.3: The view when the layer is not updated (left) and is successfully updated (right)

The final version of the system would allow multiple themes to be added to the view, and any

active themes updated when the extents change.

Page 47: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

41

4.8 Final Version

For the final version of the GIS the issue of updating the layers was resolved and functionality

to have multiple themes active was implemented.

Several new features were added to the system designed to enhance system functionality and

usability. A call-back was implemented which displays the scale of the map at the current

extent. This is useful when performing a zoom operation as it allows the changing of the map

scale to be viewed at the same time as the extent is changing. Secondly, a “go to scale” feature

was added which changed the scale of the map when the option was selected from a drop down

menu. Similar to the “go to scale”, a “go to location” drop down menu was added which

allowed the user to click on the name of a location and the map would jump to the correct place

on the map. These three features are shown in figure 4.4.

Figure 4.4: Screenshot of the new features in the GIS

The final version of the GIS fulfilled the two minimum requirements relating to the

implementation of the GIS. All design choices were fully implemented in the final version.

However there was not enough time remaining to include any further enhancements.

Page 48: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

42

Chapter 5

Evaluation

This chapter aims to evaluate the system using a set of objective criteria. To ensure the system

produced was a success, the first measure of evaluation is against the requirements outlined in

chapter 1. The second measure is evaluation of the system by a subset of end users. Based on

the results of the two main evaluation measures, some suggested improvements to the system

are outlined.

5.1 Evaluation against Minimum Requirements

The minimum requirements outlined in the first chapter are:

• Research map formats suitable for use in the system and GIS technologies such as web

based GIS map servers

• Design and implement a web based GIS that allows users to view and interact with

maps of the Kirkstall Valley

• Extend the GIS to allow themes to be overlaid on the maps

• Evaluation of the system by author and a subset of end users

The first minimum requirement was certainly fulfilled as it was a prerequisite for the second and

third requirements. How well the research was done would have a large bearing on the success

of the system evaluation.

The second requirement was fulfilled as a web based system was developed that allowed users

to view and interact with maps of the Kirkstall Valley.

The third requirement was fulfilled as a GIS map server was successfully integrated into the

GIS which allowed users to add multiple themes over the maps.

Page 49: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

43

The fourth requirement will be fulfilled by evaluating the system with a subset of end users.

5.2 User Evaluation

The basis of user evaluation is to test the suitability of the user interface and overall

performance of the system. Usability was a central concern outlined by the project stakeholder

Dr. Illingworth in the early stages of the project and as a system that may be available to the

general public, a well designed and intuitive interface is very important. The user evaluation

will also allow the system to be tested using different computer systems than the one it was

developed on. Other issues that the questionnaire attempted to address included the aesthetics of

the interface; if a system is well laid out and attractive then a user is more likely to return and

become a regular user.

User evaluation was done using a questionnaire that was given to the user as they sat down to

use the system. The author was present during the evaluation to observe any difficulties that

occurred whilst the system was being used. Seven people took part in the evaluation of the

system, with some having a sound knowledge of web applications and some having next to no

computer experience.

The first part of the questionnaire gave the user a list of tasks to perform using the GIS, the aim

of this was to give the user the chance to use every feature of the system so that their answers to

the following questions gave an overall assessment of the system.

The second part asked for a score, on a scale of 1 to 5, regarding the performance of the system,

the usability of the interface and the overall appearance of the system. Any additional comments

that the user had were also recorded.

5.2.1 Results

For all three questions a score, on a scale of 1 to 5 was required. The first question regarded the

performance of the system where, 1 would indicate that the system didn’t work and 5 would

indicate the performance was excellent. The second question regarded the usability of the

system where, 1 would indicate the system is unusable and 5 would indicate the system is

excellent. The third question regarded the appearance of the system where, 1 would indicate the

appearance is ghastly and 5 would indicate the user believes the system is generally very nice.

Page 50: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

44

All users provided extra comments regarding the evaluation of the system with most comments

relating to usability.

The full set of results for the questionnaires can be seen in Appendix E.

5.2.2 Analysis

Every user scored the system 4 or 5 for performance, although 4 of the users performed the

tasks using the system on the LAN which meant that the performance would always be

excellent. When the system was used over a fast broadband connection the users thought the

performance was fast and the interface responsive. Unfortunately a user to test the system using

a dial-up connection could not be found. All but one of the users gave the system a 5 for

appearance, with the other score a 4.

Usability seemed to be the major downfall of the system with an average score of 3 out of 5.

The comments made by users mostly concerned finding the latitude and longitude, which is

displayed by using the pointer to click on the map. The general consensus was that the system

was usable after spending a while playing around with it.

From observing the users perform the tasks it became apparent that there was a requirement for

some kind of error handling so the user could choose to undo their actions. On several

occasions, the zoom box tool was used, but rather than holding the button down and creating a

reasonably zoom box, the users clicked on the map causing a tiny box to be created and the

scale consequently jumped to a very small scale where no detail is visible. The users then found

it difficult to understand what had gone wrong, with most eventually using the “go to scale” or

“go to feature” menus to return to the normal range of scales, which is not ideal. Most users

were also not sure how to retrieve the latitude and longitude. Two users did not find out how to

do find the values without the author revealing it, two used the help pages to find the answer

and one stuck at it until he worked it out. This implies that the toolbar icons should have been

more clearly explained in the GIS window by using more than the tooltip, which appears when

the cursor hovers over a tool, and the message in the status bar.

The installation of the plug-in was fine in all cases and everyone used Internet Explorer to use

the system. The screen resolution used by all was 1024 by 768 pixels and the text size left at

default size by all users, indicating that the default settings were appropriate.

Page 51: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

45

5.3 Suggested Improvements

The overall performance of the system appeared to be very good, although it was not possible to

test it over a very slow connection such as dial-up. The area that requires the most improvement

is undoubtedly the user interface.

Problems highlighted by the user evaluation included the need for an undo facility that would

enable users to go back to a previous extent should they perform the wrong action using the

tools. Also many users tended to zoom into the map so much that the base layer became blocky

and the view was eventually filled with only a few pixels and two or three zoom-out operations

were required before the image returned to a normal scale. Perhaps the system could restrict the

user from going above or below a certain scale to prevent this happening. Alternatively, it is

possible to replace the raster base layer with an ECW version of one of Ordnance Survey’s

vector datasets, which can be more clearly viewed at large and small scales.

The choices of tools might be improved using ones that have become popular in new mapping

applications such as Google Maps [29]. The zoom operation is performed using a slider which

allows only a restricted level of zoom to be performed and is very intuitive to users. The pan

function is done using a compass style shape where users can click on the west point to pan in

that direction.

Page 52: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

46

Chapter 6

Conclusion

Generally the system stood up well to user evaluation and did fulfil all the minimum

requirements regarding the implementation. However the user evaluation did highlight some

shortcomings with the design of the interface, especially regarding usability. The ability to

reverse your actions was an important omission and probably the one single aspect that could

have vastly improved usability. Also instead of the zoom box tool, which can be unpredictable

if the user is not familiar with it, a slider could be used which allows a restricted set of scales to

be viewed.

During the evaluation it became clear that even users with little computer experience could

work out what the functions of the system allowed them to do, sometimes using the on screen

help and some using the help pages. Browser compatibility could perhaps have been improved

by using the Java applet instead of the plug-in however the compromise would have been

reduced performance and stability, as the author discovered when testing both methods.

The project process went well with the background research completed a little overdue but

within acceptable limits. Because of the background research being completed late, the design

and implementation stages were late in starting but were completed before the evaluation stage

was due to begin, which allowed for some system testing and debugging. The evaluation stage

was done concurrently with the write up of the report with both finishing as per the realised

schedule.

Page 53: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

47

Bibliography

[1] Illingworth, John, (1997) Kirkstall Valley: Quick Summary,

URL:http://www.illo.demon.co.uk/summary.htm [25th March 2005]

[2] BBC, (2003) BBC Leeds: Kirkstall Valley Natural History,

URL:http://www.bbc.co.uk/leeds/nature/kirkstall_valley/index.shtml [25th March

2005]

[3] ESRI UK, (2005) Geographic Information Systems – Geography Matters,

URL:http://www.gis.com/whatisgis/whatisgis.pdf [25th March 2005]

[4] Royce, W. W., (1970), Managing the Development of Large Software Systems,

Proceedings of IEEE WESCON.

[5] Carver, Steve, (1996), Geographical Information Systems (GIS),

URL:http://www.ccg.leeds.ac.uk/mce/mce-gis.htm [26th March 2005]

[6] SwissInfo, (2005), SwissInfo GEO Switzerland GIS, URL:http://www.swissinfo-

geo.org/ [26th March 2005]

[7] Wandsworth Borough Council, (2004), Wandsworth Planning Service,

URL:http://www.wandsworth.gov.uk/gis/map/MapStart.aspx [26th March 2005]

[8] Wikipedia, (2005), Map Projections,

URL:http://en.wikipedia.org/wiki/Map_projections [28th March 2005]

[9] Wikipedia, (2005), Geoid, URL:http://en.wikipedia.org/wiki/Geoid [28th March 2005]

[10] Wikipedia, (2005), Ordnance Survey,

URL:http://en.wikipedia.org/wiki/Ordnance_survey [28th March 2005]

[11] Ordnance Survey, (2004), National GPS Network Information,

URL:http://www.gps.gov.uk/natgrid/page2.asp [29th March 2005]

[12] Wikipedia, (2005), Raster Graphics, URL:http://en.wikipedia.org/wiki/Raster_image

[29th March 2005]

Page 54: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

48

[13] Greenberg, Harvey, (2003), TFW Files,

URL:http://duff.ess.washington.edu/data/raster/drg/tfw.html [29th March 2005]

[14] ESRI UK, (1998), ESRI Shapefile Technical Description,

URL:http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf [29th March 2005]

[15] GeoReference Online Limited, (2005), Shapefiles,

URL:http://www.georeferenceonline.com/legendburster/testwebhelp/shapefiles.htm

[29th March 2005]

[16] EDINA, (2005), EDINA Digimap Help,

URL:http://digimap.edina.ac.uk/main/help/index.jsp [30th March 2005]

[17] Warmerdam, Frank, (2004), HOWTO For OGR Use In MapServer – Version 4.4,

URL:http://mapserver.gis.umn.edu/doc44/ogr-howto.html [30th March 2005]

[18] Wagner, Jan-Oliver, (2003), MapIt!, URL:http://www.mapit.de/index.en.html [31st

March 2005]

[19] Macgill, James, (2005), GeoTools,

URL:http://docs.codehaus.org/display/geotools/home [31st March 2005]

[20] MapInfo Corporation, (2005), MapInfo: MapXtreme For Windows,

URL:http://extranet.mapinfo.com/products/overview.cfm?productid=1101 [1st April

2005]

[21] ESRI UK, (2005), ArcGIS Server,

URL:http://www.esriuk.com/products/ArcGIS/products.asp?pid=86 [1st April 2005]

[22] Netcraft, (2005), April 2005 Web Server Survey,

URL:http://news.netcraft.com/archives/2005/04/01/april_2005_web_server_survey.htm

l [1st April 2005]

[23] Brown, Martin, (2003), IIS vs. Apache, Looking Beyond The Rhetoric,

URL:http://www.serverwatch.com/tutorials/article.php/3074841 [2nd April 2005]

[24] W3 Schools, (2005), Browser Statistics,

URL:http://www.w3schools.com/browsers/browsers_stats.asp [2nd April 2005]

Page 55: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

49

[25] W3C HTML Working Group, (2002), XHTML 1.0 The Extensible HyperText Markup

Language (Second Edition), URL:http://www.w3.org/TR/xhtml1 [2nd April 2005]

[26] W3 Schools, (2005), Introduction to XHTML,

URL:http://www.w3schools.com/xhtml/xhtml_intro.asp [3rd April 2005]

[27] ER Mapper, (2004), Image Web Server User Guide. Earth Resource Mapping Ltd.,

Egham, Surrey, UK.

[28] Nielsen, Jakob, (2005), Heuristics For User Interface Design,

URL:http://www.useit.com/papers/heuristic/heuristic_list.html [4th April 2005]

[29] Google, (2005), Google Maps, URL:http://maps.google.co.uk/ [22rd April 2005]

Page 56: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

50

Appendix A: Personal Reflection

I had previously made the decision to do five modules in the first semester and three in the

second thinking it would give me more time in the latter stages of the project and I could spend

fewer hours in the months before Christmas. I consequently fell behind, with my research not

completed until after the January exams, by which time I should have started to design and

implement the system. I also underestimated the importance of the evaluation, which requires

much more time than I had left myself.

I did enjoy developing the software and gained much satisfaction when I got the various parts of

the system working after many hours of trying. I feel the project has given me a great basis on

which to tackle similar projects, now knowing what I can do to improve.

Hopefully this report will help someone to forgo many of the hours I spent getting my head

around map projections, datums and all the other things I didn’t realise I needed to know, and

go on to extend the system to something that can truly be used by anyone and incorporates all

sorts of clever and desirable features I hadn’t thought of.

Finally, if I was to make suggestions to other students embarking on their project I would

recommend the following:

Don’t put things off until after the January exams.

Even if you have more modules in the first semester than the second, try and get your research

complete and written up in rough draft before the inevitable Christmas break from anything

project related. After New Year, the exams will take up all your time and then its quickly

February and more coursework deadlines start to appear!

Give Latex a go

Even if you have only ever used Word or other WYSIWYG word processing applications, take

the time to try Latex. Trying to correctly format 60 or 70 pages in Word and then find a PDF

Page 57: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

51

printer that doesn’t leave a watermark on every page are problems that can easily be avoided.

Also its best not to try and write the document in Word and then copy and paste text into the

Latex files, it seems to create more problems than it solves (as I found out in mid-April).

Write Chapters as you progress

After doing a section, write it up! You will be glad when it comes to the Easter holidays and

you don’t have 50 pages to write from scratch in less than five weeks. If you don’t, you might

find the later chapters are not as good as the first few as you rush to finish.

Page 58: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

52

Appendix B: Project Schedule

Initial project schedule (included in Mid-Project Report):

ID Task ID Task

1 Research into Existing Software 7 Implementation of system

2 Write-up Aims & Minimum Requirements Form 8 System testing and debugging

3 Research commercial software & technologies 9 Write-up table of contents and draft chapter

4 Write-up Mid-Project Report 10 System evaluation

5 Setup and test software development environment 11 Write-up Report

6 Design web interface 12 Proof reading/tidy up source code

Page 59: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

53

Realised project schedule:

ID Task ID Task

1 Background Research 7 System testing, debugging and possible

extensions

2 Complete Aims & Minimum Requirements Form 8 Write-up table of contents and draft chapter

3 Write-up Mid-Project Report 9 Write-up Report

4 Setup and test software development environment 10 System evaluation

5 Design web interface 11 Proof reading

6 Implementation of system

Page 60: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

54

Appendix C: System Code

JavaScript Code to Implement the View

The following figure shows the GIS page. The red area is the view, the green area is the toolbar

and the blue is the progress bar.

The code to implement the view is:

������� �(����(B��'�2����(B(�%�)�2����(B)��)��2�

�7A75B C89B/��8A�8�0�/5�,8082���������-�������������!*�2�

�7A75B C89B/�5/.�86/9�2����5�&�6�(��-�!*�2��7A75B C89B/�5/.�85/ 82�

���5�&�6�(��-�!*�!*�

The three PARAM* parameters provide dynamic functionality to allow the mouse to move the

image around the view and link the view up to the progress bar to monitor the download

progress of the layer(s). Once the view was implemented the progress bar was created using the

following code in the table cell:

Page 61: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

55

�������-������(�������������������B.C6B�A/=A8���2��&��2�D#2���&!*�

%��&'���(�������������-����&��%�!!*�

The first line creates a new progress bar and the second line displays it on the GIS page. The

parameters used to create the new progress bar specify the type of progress bar to be used, the

number of squares, which represent the percentage downloaded, to be used and whether or not

the current percentage downloaded is added as text. The last required object was the toolbar,

which was created using the following lines of code:

5��0����������(����0�������E.C6B C89B0//,-7AF2��&��2�����2�>D!*�

%��&'���(������5��0���������&��%�!!*�

To the base layer to the view the AddLayer method was used as follows:

%��&'���5���7%%,����8�9�2���(�:����;�%��&'������������)����;�

����������������������������%����<��<�������(�2��-��,���2���!���#!�

To add GIS overlays to the view, the following method was used:

����(���%0,?���%��&'���5���=�0��,��9���%����%����?�!*�

����(���%0,@���%��&'���5���=�0��,��9���%����%����@�!*�

����(���%-A?���%��&'���5���=�-����'A��)�9���%����%����?�!*�

����(���%-A@���%��&'���5���=�-����'A��)�9���%����%����@�!*�

����'��������)�����GH7G3�C���&�G3�(((����G3����G3��)'��'���*�

���� �������(���%0,?�;��GI#��;�(���%0,@�;��GI#��;�(���%-A?�;��GI#��;�

(���%-A@*�

�����'���J���%��&'���5���=� �(9�%�)�!�;��GI#��;�

%��&'���5���=� �(1��)��!*�

����'�����'�%�#*�*�

����'��������'��;����%�*�*�

����'��������'��;���������=80*�*�

����'��������'��;��(���%0,?���;�(���%0,?�;��*�*�

����'��������'��;��(���%0,@���;�(���%0,@�;��*�*�

����'��������'��;��(���%-A?���;�(���%-A?�;��*�*�

����'��������'��;��(���%-A@���;�(���%-A@�;��*�*�

����'��������'��;��&���)���:����;�%��&'������������)����;��

��������������>����'������ K'�����;�'��������)�;��L'�� ����;� �����;�

����������L������;�����;��L�'���J���;��'���J�;��L'�%�'���*�

%��&'���5���7%%,����=C�/�����2���2����2�����'�!*�

Page 62: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

56

Appendix D: System Screenshots�

The following images are screenshots of the system that was produced.

GIS

Page 63: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

57

Help Pages

Page 64: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

58

Appendix E: User Evaluation Questionnaire

The following questionnaire was given to the people who agreed to take part in the evaluation

of the system.

General Information

Name:

On a scale of 1 to 5 how would you rate your computer skills?

(1 – novice, 5 – computer enthusiast/professional)

1 2 3 4 5

Connection used (Broadband, dial-up):

Connection speed, if known (Broadband only):

Browser used (Internet Explorer, Netscape Navigator):

Tasks

Please read the information on the home page and launch the GIS.

Using the greyscale map, add a few themes to the view. Pan or zoom around the map. Turn off

all active themes.

Find information on the motorways theme. Why was the Motorways theme not displayed over

the Kirkstall Valley map?

Go to the Kirkstall Abbey, change the scale to 1:12,000m and record the latitude, longitude.

Latitude: Longitude:

Page 65: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

59

Questions on the GIS

How would rate the performance of the system?

(1 – wouldn’t work, 5 – very quick and responsive)

1 2 3 4 5

How would you rate the usability of the system?

(1 – unusable, 5 – excellent)

1 2 3 4 5

How would you rate the appearence of the system?

(1 – ghastly, 5 – beautiful)

1 2 3 4 5

Additional Comments:

Thank you for your time.

Page 66: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

60

Results

User #1

Name: Philip Reed

On a scale of 1 to 5 how would you rate your computer skills? 5

Connection used: LAN

Connection speed, if known: N/A

Additional Comments: “I found the tools quite hard to use and once I had zoomed in using the

zoom box, it was quite difficult to get back to the normal range of scales. I would have thought

clicking on the map with the pointer would enable me to zoom in.”

User #2

Name: Lynn Reed

On a scale of 1 to 5 how would you rate your computer skills? 1

Connection used: LAN

Connection speed, if known: N/A

Additional Comments: “Looks good, I had difficulty but I had never used the Internet before!”

User #3

Name: Lorna Reed

On a scale of 1 to 5 how would you rate your computer skills? 3

Connection used: LAN

Connection speed, if known: N/A

Additional Comments: “Looks pretty, I have nothing to compare it to but it seems to do what

its meant to”

User #4

Name: Rob Gudgeon

On a scale of 1 to 5 how would you rate your computer skills? 3

Connection used: Broadband

Connection speed, if known: 512k

Additional Comments: None

Page 67: A Geographic Information System for the Kirkstall Valley ... · Steven Reed BSc Computing 2004/2005 . i Summary The aim of this project was to design and implement a web based geographic

61

User #5

Name: Sam Parker

On a scale of 1 to 5 how would you rate your computer skills? 4

Connection used: Broadband

Connection speed, if known: 512k

Additional Comments: “Looks great and quite easy to use after a while but I would have liked

an undo button. I didn’t know how to get the longitude and latitude values”

User #6

Name: William Halling

On a scale of 1 to 5 how would you rate your computer skills? 5

Connection used: Broadband

Connection speed, if known: 1MB

Additional Comments: “Its quite fast and looks good, but took me a while to realise I had to

use the pointer for the latitude and longitude.”

User #7

Name: James Fairwood

On a scale of 1 to 5 how would you rate your computer skills? 2

Connection used: LAN

Connection speed, if known: N/A

Additional Comments: None

User #

Question 1 2 3 4 5 6 7

How would you rate the

performance of the system? 5 5 5 4 5 4 5

How would you rate the

usability of the system? 3 3 3 2 4 3 3

How would you rate the

appearance of the system? 5 5 5 4 5 5 5