MÔ HÌNH THIẾT KẾ WEBSITE

Một phần của tài liệu Nghiên cứu ứng dụng GIS vào việc phân tuyến các trường thpt tại huyện đại lộc quảng nam (Trang 43)

6. Bố cục luận văn

2.6.MÔ HÌNH THIẾT KẾ WEBSITE

2.6.1. Mô hình Use Case

Hình 2.6. Mô hình Use Case

* Đặc tả Use Case của đối tượng Người dùng

Bảng 2.1 Đặc tả Use Case của đối tượng người dùng

Tên Use Case Đặc tả Sự kiện

Tìm kiếm thông tin địa danh

Tìm kiếm thông tin địa danh

Use Case bắt đầu khi ngƣời dùng nhập từ khóa để bắt đầu chức năng tìm kiếm Đăng kí thành viên Đăng kí là thành viên của hệ thống

Use Case bắt đầu khi ngƣời dùng chọn chức năng đăng kí

Đăng nhập Mô tả các một ngƣời dùng đăng nhập vào hệ thống để sử dụng chƣơng trình

Use Case này bắt đầu khi một ngƣời dùng (admin, member) muốn đăng nhập vào hệ thống

Thoát Mô tả cách một ngƣời dùng thoát khỏi hệ thống

Use Case bắt đầu khi một ngƣời dùng (admin, member) muốn thoát khỏi hệ thống chƣơng trình

* Đặc tả Use Case của đối tượng Admin

Bảng 2.2. Đặc tả Use Case của đối tượng Admin

Tên Use Case Đặc tả Sự kiện Quản lí địa danh Quản lí các danh mục địa danh

Use Case này bắt đầu khi một ngƣời dùng (admin) muốn cập nhật, chỉnh sửa hay xóa các danh mục địa danh của chƣơng trình Quản lí ngƣời dùng Quản lí ngƣời dùng trong hệ thống chƣơng trình

Use Case này bắt đầu khi một ngƣời dùng (admin) muốn cập nhật, chỉnh sửa hay xóa các thông tin ngƣời dùng

Quản lí đăng nhập

Quản lí việc đăng nhập của ngƣời dùng trong hệ thống chƣơng trình

Use Case này bắt đầu khi một ngƣời dùng (admin) muốn đăng nhập hoặc thoát khỏi hệ thống

2.6.2. Mô hình ngữ cảnh

2.6.3. Mô hình luồng dữ liệu

Hình 2.8. Mô hình luồng dữ liệu mức 1

Hình 2.9. Mô hình luồng dữ liệu mức 2

2.7. ĐỀ XUẤT GIẢI PHÁP

2.7.1. Định hƣớng công nghệ

Từ nhiều năm nay, dữ liệu GIS đã đƣợc các cơ quan thu nhập, lƣu trữ và xây dựng thành các hệ thống GIS. Trong tƣơng lai, dữ liệu sẽ đƣợc chia sẻ để dùng chung dƣới dạng các dịch vụ cung cấp bản đồ và dữ liệu. Ngƣời dùng có thể kết nối đến các máy chủ cung cấp các dịch vụ bản đồ và dữ liệu này để tích hợp thành bản đồ mong muốn. Vì thế, việc xây dựng WebGIS sẽ nhắm vào việc tích hợp các nguồn dữ liệu này.

Hệ thống trong phạm vi đề tài sẽ sử dụng công nghệ GeoServer để phát triển và tạo ra các ứng dụng bản đồ.

Hình 2.10. Cấu trúc hệ thống WebGIS bằng công nghệ GeoServer

- Phần trình bày: Thực hiện nhiệm vụ xử lý các thao tác, lƣu trữ thông tin, đả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. (adsbygoogle = window.adsbygoogle || []).push({});

- Phần ứng dụng: chia làm hai phần là Apache Tomcat và GeoServer (cả hai đều đƣợc phát triện trên công nghệ Java).

Apache Tomcat: đảm nhận trách nhiệm phát sinh giao diện và các thƣ viện Script để tƣơng tác với Client, đóng vai trò trung gian là cầu nối giữa Client và GeoServer, nó sẽ gửi yêu cầu của Client đến GeoServer và nhận dữ liệu trả về để gửi lại cho Client.

GeoServer: Xử lý các thao tác phát sinh trong bản đồ nhƣ: phóng to, thu nhỏ, tra cứu thông tin. Nó là phần trung gian giữa Apache Tomcat và phần cơ sở dữ liệu, tiếp nhận yêu cầu từ Tomcat rồi truy vấn đến phần cơ sở dữ liệu để lấy thông tin, sau đó tiến hành xử lý và trả về kết quả cho Apache Tomcat.

- Phần cơ sở dữ liệu: đóng vai trò là trung tâm lƣu trữ dữ liệu dữ liệu địa lý đƣợc đặt trên Data Server, các ứng dụng Server gửi kết quả tính toán đến Web Server, gửi các gói HTML đến phía Client và hiển thị thông tin lên trình duyệt.

2.7.2. Mô hình ứng dụng

Nhƣ đã trình bày ở phần trƣớc, mô hình đƣợc lựa chọn cho ứng dụng và mô hình client - server. Tất cả các vấn đề xử lý đều đƣợc thực hiện trên server, client chỉ có chức năng gởi yêu cầu và xử lý kết quả trả về.

Ứng dụng trên client nhận yêu cầu từ ngƣời dùng và gởi lên server thông qua giao thức HTTP, phía server đóng nhận các yêu cầu và triệu gọi các module thích hợp để xử lý, các module xử lý có thể làm việc với dữ liệu thông qua cầu nối ODBC, kết quả xử lý của các module này sẽ đƣợc gửi về cho client. Phía client đón nhận và xử lý kết quả trả về, cuối cùng trình bày kết quả cho ngƣời sử dụng.

2.8. KẾT CHƢƠNG

Trong chƣơng này tôi giới thiệu mục đích cũng nhƣ chức năng của ứng dụng và phần quan trọng là phân tích và thiết kế hệ thống. Tìm hiểu về quản lý giáo dục và thế nào là phân vùng trong tuyển sinh. Cuối cùng là chọn lựa giải pháp để định hƣớng công nghệ.

CHƢƠNG 3

PHÁT TRIỂN ỨNG DỤNG

Trong chƣơng này, tôi chọn lựa phƣơng pháp để số hóa bản đồ và xác định quy trình để số hóa bản đồ giấy thành bản đồ số bằng cách sử dụng MapInfo. Sau đó, thiết kế giao diện cho trang Web, sử dụng công nghệ Geoserver để phát triển và cài đặt ứng dụng.

3.1. XÂY DỰNG BẢN ĐỒ 3.1.1. Số hóa bản đồ

Khái niệm: Quá trình đƣa thông tin từ bản đồ giấu vào máy tính đƣợc gọi là quá trình số hóa bản đồ, tức là đƣa số liệu từ bản đồ vào quản lý bằng máy tính.

Yêu cầu về số hóa: Các tiêu chuẩn trình bày bản đồ rất chặt chẽ, do đó yêu cầu về chất lƣợng bản đồ số rất cao. Đó là: yêu cầu không bị mất thông tin; yêu cầu các thuộc tính nhƣ màu sắc, giá trị,...; trình bày đúng các tiêu chuẩn bản đồ (font chữ, các thƣ viện, các kí hiệu,...).

Công cụ số hóa bản đồ: Tôi sử dụng phần mềm MapInfo 10.5 để số hóa bản đồ.

a. Phương pháp trực tiếp

Tổng quát phƣơng pháp số hóa trực tiếp nhƣ sau: Mở ảnh quét đã đăng ký ra bằng lệnh File → Open.

Chọn Map → Layer Control. Đánh dấu chỉnh sửa vào lớp Cosmestric. Tiến hành số hóa bản đồ bằng cách dùng các công cụ vẽ trên thanh công cụ Drawing. Các thông tin trên bản đồ nên đƣợc số hóa theo nhóm và có cùng 1 kiểu trong cùng 1 lớp để dễ quản lý sau này.

Khi số hóa xong dùng lệnh Map → Save Cosmetric Object để lƣu các đối tƣợng đƣợc vẽ thành một bảng MapInfo hoàn chỉnh.

Có thể chỉ cần vẽ vài đối tƣợng đầu tiên là có thể dùng lệnh trên để lƣu những gì đã vẽ thành một lớp và đặt tên cho nó. Xong lại vào Map → Layer Control và đánh dấu chỉnh sửa vào lớp mới lƣu rồi quay lại vẽ tiếp.

Quan trọng: Một bản đồ đƣợc số hóa từ ảnh quét đăng ký sai thì rất khó hoặc không chỉnh sửa đƣợc mà phải số hóa lại từ đầu, vì thế trong phƣơng pháp số hóa bản đồ trực tiếp theo ảnh quét trên MapInfo thì bƣớc đăng ký tọa độ cho ảnh quét là rất quan trọng.

b. Phương pháp tạo bảng mới trước

Cách số hóa bản đồ nhƣ trên là cách làm có tính chất trực tiếp. Ta có một cách khác để số hóa bản đồ. Phần dƣới đây sẽ trình bày cách đó.

Sau khi đăng ký ảnh quét. ta tiến hành tạo các bảng MapInfo mới (chƣa có thông tin gì). Giả sử ta đã đăng ký bản đồ hành chính Việt Nam và dự kiến số hóa các thông tin nhƣ sau: ranh giới nƣớc Việt Nam, các tỉnh, thành phố - thị xã, sông. vùng lãnh thổ Việt Nam. Ta sẽ tạo các tập tin MapInfo mới (nhƣng không có phần đồ họa) nhƣ sau:

Chọn File → New table, hộp thoại New table mở ra. Trong phần Create new table có 3 tùy chọn:

- Open New Browser: tạo bảng mới ra xong mở cửa sổ Browser của bảng mới ra.

- Open New Mapper: Tạo bảng mới xong mở cửa sổ bản đồ ra.

- Add to Current Mapper: Tạo bảng mới xong đƣa bảng mới vào cửa sổ bản đồ của một lớp bản đồ đang mở hiện tại. Nếu không có lớp bản đồ nào đang mở thì tùy chọn này mờ đi.

Trong phần Table Structure có 2 tùy chọn: tùy chọn Use Table cho phép ta tạo ra một bảng mới dựa trên cấu trúc dữ liệu của một bảng có sẵn, tùy chọn Create New dùng để tạo một bảng mới hoàn toàn. (adsbygoogle = window.adsbygoogle || []).push({});

đang tùy chọn Use Table và chọn một bảng nào đó thì toàn bộ các trƣờng cùng định dạng của bảng sẽ đƣợc sao chép sang bảng mới mà không phải tạo lại.

Tạo trƣờng mới bằng cách nhấp chuột vào nút Add field. Sau đó chọn kiểu dữ liệu và độ dài của dữ liệu đó.

Tiếp theo, chọn hệ quy chiếu cho lớp bản đồ mới bằng nút Projection. Kho chọn nút này hộp thoại Choose Projection sẽ mở ra. Chọn hệ quy chiếu cho phù hợp. Thông thƣờng khi số hóa bản đồ từ ảnh quét vào máy tính thì hệ quy chiếu chọn phải trùng với hệ quy chiếu của bản đồ giấy đó.

Chỉnh xong các thiết lập trên ta chọn nút Create, hộp thoại Create New Table xuất hiện. Đặt tên cho bảng MapInfo mới trong ô File name, nhƣ vậy ta đã tạo xong 1 bảng MapInfo mới và rỗng.

3.1.2. Các cách số hóa

a. Số hóa thông qua lớp Cosmetic

Chọn Map → Layer Control, đánh dấu đoạn chỉnh sửa vào lớp cosmetric.

Bắt đầu số hóa đƣờng ranh giới bằng cách sử dụng công cụ vẽ đƣờng để vẽ các chi tiết theo ảnh quét đã mở.

Số hóa đƣợc 1 lúc chọn Map → Save Cosmetric Layer. Hộp thoại Save Cosmetric Object mở ra.

Trong hộp thoại này, thay vì chọn New, ta gopij ranh giới rồi chọn save.

b. Số hóa trực tiếp

Nhập dữ liệu vào cửa sổ Browser

Mở bản đồ cần nhập dữ liệu ra, chọn Window → New Browser Window → Chọn tên bản đồ cần nhập dữ liệu.

3.1.3. Quy trình số hóa bản đồ

Hình 3.1. Quy trình số hóa bản đồ

Bƣớc 1: Chuẩn bị bản đồ trên giấy dƣới dạng hệ tọa độ địa lý Degrees minute seconds.

Bƣớc 2: Bản đồ giấy đã đƣợc scan vào máy tính nhƣ một ảnh số có cấu trúc raster.

Bƣớc 3: Dùng các phần mềm nhƣ Photoshop, Paint... để chỉnh sửa hình ảnh.

Bƣớc 4: Xác định các tọa độ thực của một số điểm trên bản đồ. Các điểm này đƣợc lấy làm chuẩn trong việc đƣa tọa độ thực vào bản đồ số hóa (Dùng phần mềm Google2Earth).

Bƣớc 5: Sử dụng phần mềm MapInfo 10.5 để tiến hành số hóa bản đồ. - Thực hiện chuyển hệ tọa độ địa lý Degrees minutes seconds sang hệ tọa độ địa lý Degrees Decimal.

Sau đó đã có ảnh bản đồ có cấu trúc Raster và một số điểm tọa độ địa lý thực của bản đồ. Ta tiến hành import file ảnh bản đồ, kích chọn Register.

Hình 3.2. Chọn Register cho bản đồ

Xuất hiện hộp thoại Image Register. tiếp theo kích chọn vào nút Projection. Trong hộp thoại Choose Projection, tại listbox Category: Gauss- Kruger (Pulkovo 1942) và trong textarea Category Members: GK Zone 19 (Pulkovo 1942). Đây là các tiêu chuẩn để xây dựng hệ tọa độ thực cho bản đồ cần số hóa.

Hình 3.3. Chọn hệ tọa độ chuẩn cho bản đồ

- Gắn các tọa độ thực vào bản đồ:

Xác định vị trí điểm chuẩn trên ảnh bản đồ

Kích vào nút

Register để xác lập các tùy chọn trong việc xây dựng bản đồ số

Hộp thoại Edit Control Point hiện ra, nhập tọa độ Decimal vào textbox MapX và MapY

Áp dụng tƣơng tự cách làm trên cho các điểm chuẩn còn lại. Ta sẽ có đƣợc bản đồ với hệ tọa độ giống nhƣ hệ tọa độ địa lý thực (adsbygoogle = window.adsbygoogle || []).push({});

Sau khi xác định hệ tọa độ thực cho bản đồ, thì file ảnh bản đồ chuyển sang file .tab trong MapInfo.

Bƣớc 6: Tiến hành số hóa từng lớp bản đồ bằng cách tạo từng lớp của bản đồ (lớp sông, lớp giao thông, lớp xã, lớp trƣờng...). Sau khi số hóa xong các lớp bản đồ, tôi tập hợp các lớp bản đồ lại thành một bản đồ số hoàn chỉnh

Hình 3.4. Bản đồ sau khi số hóa

3.1.4. Xây dựng bản đồ

a. Các lớp bản đồ

Bản đồ đƣợc xây dựng từ các lớp (layer), nghĩa là các thông tin địa lí đƣợc tổ chức theo từng lớp, ví dụ trên bản đồ huyện Đại Lộc, ta có lớp giao thông, lớp sông, lớp xã, lớp trƣờng học.... Cá lớp (layer) của bản đồ nhƣ sau:

Hình 3.5. Lớp giao thông

Hình 3.6. Lớp sông, suối

b. Các bảng dữ liệu

Dữ liệu của bản đồ đƣợc lƣu trong các bảng dữ liệu của MapInfo (file.tab) ứng với từng danh mục dịch vụ. Ví dụ bảng dữ liệu của bản đồ:

Bảng truonghoc: lƣu trữ thông tin về trƣờng học của layer truonghoc

Bảng 3.1. Bảng dữ liệu trường học

Tên trường Kiểu dữ liệu

matruong Integer tentruong Character(255)

Diachi Character(255) SoluongHS Double precision SoluongGV Integer

Solop Integer

Website Character(255) Ghichu Character(255)

3.2. XÂY DỰNG ỨNG DỤNG TRỰC TUYẾN 3.2.1. Đƣa bản đồ vào Server của PostgreSQL

Để bắt đầu, chúng ta cần tạo một Server. Server có thể dùng một hosting miễn phí trên mạng, cũng có thể dùng hosting tại nơi làm việc, hoặc có thể tạo một Server với localhost.

Sau khi kích chọn vào biểu tƣợng tạo Server, ta sẽ thấy bản "New Server Registration", với tab "Properties". Tab này chúng ta sẽ điền vào những ô bắt buộc để tạo một Server cần thiết phục vụ cho việc quản lý cơ sở dữ liệu cũng nhƣ truy vấn, thêm hoặc sửa xóa đối với các bảng - record trong cơ sở dữ liệu của chúng ta. Các bƣớc gồm:

B1."Name": điền tên để tạo cơ sở dữ liệu

sẵn cổng cho phép. Ở đây, ta sẽ điền localhost để tiện lợi cho việc thực hiện B3. "Password": ta có thể điền một mật khẩu để phục vụ cho việc bảo mật. Hoặc nếu không muốn điền mật khẩu, ta có thể bỏ tick trong 'Store password".

B4."Colour": ta có thể chọn màu để làm nổi bật tên cơ sở dữ liệu (đây là phần không bắt buộc, nếu không chọn màu thì PostgreSQL sẽ để mặc định là màu trắng).

B5.Sau khi hoàn thành những bƣớc trên, chúng ta click vào "OK" để kết thúc quá trình tạo Server

Sau khi đã có một Server, ta click đúp vào Server đó, để tạo Database. Ta click vào Database chọn New Database. Bảng "New Database..." sẽ xuất hiện với tab "Properties". Ở tab này, ta chỉ cần điền tên vào ô "Name" và click "OK" thì đã hoàn thành việc tạo cơ sở dữ liệu của chúng ta.

Hình 3.8. Tab "Properties" của New Database

Trong hộp thoại có:

- Name: tên cơ sở dữ liệu muốn tạo là dailoc - Owner: chọn postges

- Nhấp chuột phải chọn OK, khởi tạo thành công một Database mới có tên là dailoc

Hình 3.9. Cơ sở dữ liệu huyện Đại Lộc (Nguồn: Phần mềm PostgreSQL) (adsbygoogle = window.adsbygoogle || []).push({});

Đƣa bản đồ đƣợc định dạng là một file.shp lên Database dailoc: Để tạo một file.shp từ một file.tab của MapInfo, trƣớc tiên chúng ta khởi động MapInfo.

Hình 3.10. Cửa sổ MapInfo Professional

Trên thanh tùy chọn, ta kích chọn Tools → Universal Translator → Universal Translator...

Tại hộp thoại Universal Translator, trong kênh Source → tại mục Format lựa chọn MapInfo TAB → chọn ví trí lƣu file.tab tại mục File(s), trong kên Destination → tại mục Format lựa chọn ESRI Shape → chọn vị trí lƣu file.SHP tại mục Directory, sau đó OK, MapInfo sẽ thực hiện chuyển file từ file.tab sang file.shp.

Trên thanh công cụ của PostgreSQL chọn biểu tƣợng PostGIS Shapefile and DBF Loader 2.1 xuất hiện hộp thoại.

Hình 3.11. Hộp thoại đưa shapefile lên Databases (Nguồn: Phần mềm PostgreSQL)

Trong đó:

- Shapefie: chọn shapefile cần đƣa lên Databases dailoc - Destination Table: đặt tên cho shapefile

- SRID: mã số hệ tọa độ tƣơng ứng với shapefile Nhấp chuột trái vào Options xuất hiện hộp thoại:

Hình 3.12. Hộp thoại Import Options (Nguồn: Phần mềm PostgreSQL)

Trong đó:

-DBF file character encoding: mặc định là UTF-8

-Chọn dấu tick vào hai ô: Create spatial index automatically after load và Load data using COPY rather then INSERT

Nhấp chuột chọn OK → Import, tạo thành công cơ sở dữ liệu trong Database.

Hình 3.13. Cơ sở dữ liệu trong Databases dailoc (Nguồn: Phần mềm PostgreSQL)

3.2.2. Chuyển dữ liệu lên GeoServer bằng PostgreSQL

Đƣa CSDL trong PostgreSQL lên GeoServer và tạo kiểu hiển thị (style)

Một phần của tài liệu Nghiên cứu ứng dụng GIS vào việc phân tuyến các trường thpt tại huyện đại lộc quảng nam (Trang 43)