Thiết kế hệ thống 54

Một phần của tài liệu LUẬN VĂN: TÌM HIỂU VÀ XÂY DỰNG HỆ THỐNG THÔNG TIN ĐỊA LÝ - WEBGIS pot (Trang 60 - 71)

4.3.1. Kiến trúc hệ thống

55

¾ Tầng trình bày : được xây dựng bằng Javascirpt, HTML và DHTML, thực hiện nhiệm vụ xử l ý các thao tác, lưu trữ thông tin ứng với từng người sử dụng, đảm nhận vai trò trung gian, truyền nhận dữ liệu, giữa người sử dụng với web server.

¾ Tầng ứng dụng : chia làm 2 thành phần : Mapbuilder và GeoServer. Cả 2 đều được phát triển dựa trên công nghệ Java

o Mapbuilder : đảm nhận trách nhiệm phát sinh giao diện và các đoạn script để tương tác với client, đóng vai trò trung gian giữa client và GeoServer, nó sẽ gửi yêu cầu của client tới GeoServer và nhận dữ liệu trả về để gửi ngược cho client.

o GeoServer : xử lý các thao tác về phát sinh bản đồ, phóng to, thu nhỏ,dịch chuyển, tra cứu thông tin trên bản đồ. Nó là thành phần trung gian giữa Mapbuilder và tầng cơ sở dữ liệu, tiếp nhận yêu cầu từ Mapbuilder rồi gọi xuống tầng cơ sở dữ liệu để rút trích thông tin sau đó tiến hành xử l ý rồi trả kết quả về cho Mapbuilder.

¾ Tầng cơ sở dữ liệu : đóng vai trò trung gian giữa tầng ứng dụng với cơ sở dữ liệu.

56

Hình 4.1 Kiến trúc hệ thống triển khai

4.3.2. Xây dựng mô hình Use-case 4.3.2.1. Xác định Actor và use case 4.3.2.1. Xác định Actor và use case

Actor

User: Tra cứu thông tin, duyệt bản đồ •Use case

•Duyệt bản đồ

o Phóng to, thu nhỏ bản đồ

o Di chuyển bản đồ

o Chọn lớp thông tin hiển thị •Tra cứu thông tin

Client layer Application layer Data layer Máy tính cá nhân Webbrowser (Javascript & HTML) Web server

Mapbuilder & GEOServer

Database PostgresSQL

57

o Tìm kiếm thông tin các địa danh, địa vật trên bản đồ •Đo khoảng cách

o Tính khoảng cách giữa hai điểm trên bản đồ

4.3.2.2. Đặc tả use case

a. Mô hình use case

Hình 4.2: Mô hình use case

b. Đặc t use case

i.Di chuyển bản đồ

•Tóm tắt

Use-case này mô tả cách thức người dùng di chuyển bản đồ để xem vùng không gian khác trên bản đồ

•Luồng các sự kiện

o Luồng sự kiện chính

Use-case này bắt đầu khi người dùng muốn dịch chuyển bản đồ để xem vùng không gian khác trên bản đồ

Phóng to, thu nhỏ bản đồ Tính khocáchảng Truy vấn thông tin bản đồ Tùy chọn lớp thông hiển thị Di chuyển bản đồ

58 1. Người dùng kích chuột lên nút

2. Hệ thống ghi nhận tình trạng kích chuột,thay đổi trạng thái nút sang trạng thái đậm . Chuyển trạng thái các nút nào đang ở trạng thái đậm vì được kích chuột trước đó về trạng thái bình thường 3. Người dùng kích chuột lên bản đồ

4. Hệ thống xác định vị trí kích chuột trên bản đồ, dịch chuyển bản đồ theo chiều ngược lại (kích chuột càng ở mép ngoài bản đồ chừng nào thì dịch chuyển càng xa và ngược lại )

o Các luồng sự kiện khác Không có •Các yêu cầu đặt biệt Không có •Điều kiện tiên quyết •Không có •Post-conditions

Nếu use case thực hiện thành công, hệ thống sẽ hiện thị vùng không gian bản đồ mới ra cho người dùng ngược lại trạng thái bản đồ không thay đổi

•Điểm mở rộng Không có

ii.Phóng to, thu nhỏ bản đồ

•Tóm tắt

Use-case này mô tả cách thức người dùng phóng to hay thu nhỏ bản đồ hiển thị.

•Luồng các sự kiện

o Luồng sự kiện chính

Use case này bắt đầu khi có người dùng muốn phóng to hay thu nhỏ bản đồ hiển thị

1. Người dùng kích chuột lên nút ZoomIn hay nút ZoomOut 2. Hệ thống xác định loại nút đang chọn, tô đậm nút này để người

dùng biết nút đã được chọn (ZoomIn , ZoomOut ). 3. Người dùng kích chuột lên trên bản đồ

4. Hệ thống xác định vị trí kích chuột, sau đó tuỳ theo nút được chọn là ZoomIn hay ZoomOut mà hệ thống sẽ phóng to hay thu nhỏ bản đồ tại vị trí được kích chuột

59

5. Người dùng tiếp tục kích chuột lên bản đồ để tiếp tục phóng to hay thu nhỏ bản đồ. o Các luồng sự kiện khác Không có •Các yêu cầu đặt biệt Không có •Điều kiện tiên quyết Không có •Post-conditions

Nếu use case thực hiện thành công hệ thống sẽ hiển thị vùng khung gian bản đồđược phóng to hay thu nhỏ ra cho người dùng, ngược lại trạng thái bản đồ không thay đổi.

•Điểm mở rộng Không có

iii.Tính khoảng cách

•Tóm tắt

Use case này mô tả cách người dùng muốn tính khoảng cách trên bản đồ •Luồng các sự kiện

o Luồng sự kiện chính

Use case này bắt đầu khi người dùng muốn tính khoảng cách trên bản đồ

1. Người dùng kích chuột lên nút bấm

2. Hệ thống xác định loại nút đang chọn, tô đậm nút này để người dùng biết nút đã được chọn

3. Người dụng kích chuột lên bản đồ

4. Hệ thống xác định vị trí kích chuột để đánh dấu các điểm đầu cuối để tính khoảng cách trên bản đồ. Kết quảđược hiện ra trên góc trên bên phải bản đồ

5. Người dùng tiếp tục kích chuột, chiều dài các đoạn thẳng mới sẽ được cộng thêm vào kết quả

o Các luồng sự kiện khác Không có

60 Không có

•Điều kiện tiên quyết Không có

•Post-conditions

Nếu như use case thực hiện thành công kết quả sẽđược hiển thị •Điểm mở rộng

Không có

iv.Tùy chọn lớp thông tin hiển thị

•Tóm tắt

Use case này mô tả cách người dùng chọn lớp thông tin hiển thị trong bản đồ •Luồng các sự kiện

o Luồng sự kiện chính

Use case bắt đầu khi người sử dụng thay đổi các lớp thông tin hiển thị trên bản đồ

1. Người dùng chọn chọn lớp thông tin cần hiện thị trong danh sách lớp thông tin hệ thống cung cấp

2. Hệ thống hiện xuống danh sách lớp thông tin người sử dụng theo thứ tự từ sau tới trước

3. Người dùng kích chuột vào nút “Hiển thị bản đồ”

4. Hệ thống sẽ sinh lại bản đồ theo danh sách người dùng đã chọn. Tại đây người dùng có thể tiếp tục thực hiện các thao tác khác như phóng to, thu nhỏ … o Các luồng sự kiện khác Không có •Các yêu cầu đặt biệt Không có •Điều kiện tiên quyết Không có •Post-conditions

Nếu use case thực hiện thành công hệ thống sẽ hiển thị bản đồ mới, ngược lại trạng thái bản đồ không thay đổi.

•Điểm mở rộng Không có

61

•Tóm tắt

Use case này mô tả cách người dùng tìm kiếm thông tin trên bản đồ •Luồng các sự kiện

o Luồng sự kiện chính

1. Người dùng nhập tên thuộc tính cần tìm kiếm vào ô tìm kiếm 2. Chọn lớp thông tin chứa nội dung tìm kiếm

3. Chọn thuộc tính tìm kiếm. Tùy vào lớp thông tin chọn ở trên mà thuộc tính cũng khác nhau

4. Người dùng kích vào nút “Tìm kiếm”

5. Hệ thống sẽ tìm và trả lại kết quả ở khung bên dưới nút tìm kiếm nếu tìm thấy hoặc không trả lại gì nếu không tìm thấy kết quả nào 6. Nếu kết quả tìm thấy, người dùng kích chuật vào kết quả

7. Kết quả tìm kiếm hiện lên bản đồ o Các luồng sự kiện khác Không có •Các yêu cầu đặt biệt Không có •Điều kiện tiên quyết Không có •Điểm mở rộng Không có 4.3.3. Thiết kế một số màn hình

62 Hình 4.1 Màn hình chính chương trình PTùy chọn lớp thông tin hiển thị CCác phím chức năng CBản đồ

63

Hình 4.2: Màn hình tìm kiếm

Vùng tìm kiếm

64

KẾT LUẬN

Trên đây tôi đã trình bày các tìm hiểu của tôi về WebGIS và ứng dụng xây dựng mô phỏng một hệ thống thông tin địa lý trên Web

Nhng công vic đã làm được

+ Tìm hiểu được mô hình hệ thống thông tin địa lý, các thành phần của hệ thống thông tin địa lý và một số lĩnh vực ứng dụng rất thành công hệ thống thông tin địa lý mang lại nhiều giá trị cho con người

+ Tìm hiểu được đặc điểm của hệ thống thông tin địa lý trên Web, các kiến trúc triển khai một hệ thống thông tin địa lý trên web và ưu nhược điểm của nó với từng bài toán áp dụng.

+ Tìm hiểu được hai hình thức mô tả dữ liệu bản đồ là Vector và Raster. Ưu điểm và nhước điểm của hai cách thức, cách chuyển đổi giữa hai hình thức này.

+ Xây dựng thành công một hệ thống thông tin địa lý trên Web cho phép hiển thị các lớp thông tin bản đồ dựa trên hai công nghệ mã nguồn mở là Mapbuilder và GeoServer.

Hướng phát trin ca đề tài

Do thời gian có hạn nên khóa luận chưa đi sâu tìm hiểu các vấn đề đưa ra. Nếu được phát triển tiếp tôi sẽ nghiên cứu thêm về các hệ thống thông tin địa lý trên nền Web và các công nghệ mới nhằm nâng cao hiệu năng hệ thống cung cấp tiện ích hơn nữa cho người sử dụng. Và đặc biệt là xây dựng được hệ thống thông tin địa lý có ý nghĩa thiết thực hơn nữa.

65

TÀI LIỆU THAM KHẢO

[1] AA. Alesheikh, H. Helali, HA. Behroz. Web GIS: Technologies and Its Applications. ISPRS, 2004

[2] Aleksandar Milosavljević, Leonid Stoimenov, Slobodanka Djordjević-Kajan. An architecture for open and scalable WebGIS. CG&GIS Lab, Department of Computer Science. AGILE Conference 8th, 2005

[3] David J. Maguire, Michael F Goodchild, and David W Rhind (eds). Geographic information systems : Principles and application. Volume 1 : Principle. Longman sciencetific & technical.. John Wiley & Sons, 1991

[4] D.R. Green, D. Rix, and J. Cadoux Hudson (eds). Geographic Information. The source book for GIS. Association for geographic information AGI. Taylor & Francis, 1994

[5] Đặng văn Đức. Hệ thống thông tin địa lý. NXB Khoa học và Kỹ Thuật, 2001

[6] F. Rinaudo, E. Agosto, P. Ardissone. Gis and web-gis, commercial and open source platforms: general rules for cultural heritage documentation.CIPA, 2007

[7] Merri P. Skrdla. Introduction to GIS. MicroImages, 2005

[8] M. A Brovelli, D. Magni. An archaeological web gis application based on mapserver and postgis. ISPRS, 2005

[9] Scott Davis. GIS for Web Developers: Adding Where to Your Web Applications. Pragmatic Bookshelf, 2007

[10] William Lalonde. Styled Layer Descriptor Implementation Specification. Open Geospatial Consortium, 2009

Một phần của tài liệu LUẬN VĂN: TÌM HIỂU VÀ XÂY DỰNG HỆ THỐNG THÔNG TIN ĐỊA LÝ - WEBGIS pot (Trang 60 - 71)

Tải bản đầy đủ (PDF)

(71 trang)