MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN MỤC LỤC DANH MỤC VIẾT TẮT DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU LỜI MỞ ĐẦU 1 CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI NGHIÊN CỨU 2 1.1. Lí do lựa chọn đề tài 2 1.1.1. Mục tiêu 2 1.1.2. Đối tượng nghiên cứu 3 1.1.3. Phạm vi nghiên cứu 3 1.1.4. Phương pháp nghiên cứu 3 1.1.5. Mô hình áp dụng cho dự án 4 1.2. Công nghệ sử dụng 5 1.2.1. Hệ thống thông tin địa lý GIS 5 1.2.2. Webgis 9 1.2.3. Google Maps API 12 1.2.4. Cơ sở dữ liệu thời gian thực Firebase 13 1.2.5. Visual studio 14 1.2.6. Nền tảng hệ thống 15 1.2.7. Ngôn ngữ sử dụng. C 16 CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 19 2.1. Tổng quan hệ thống 19 2.2. Đặc tả các use case 21 2.2.1. Đăng ký thành viên 21 2.2.2. Đăng nhập hệ thống 21 2.2.3. Gọi shipper 22 2.2.4. Quản lý đơn hàng 23 2.2.5. Đánh giá shipper 23 2.3. Biểu đồ tuần tự hệ thống 24 2.3.1. Biểu đồ tuần tự đăng ký 24 2.3.2. Biểu đồ tuần tự đăng nhập 25 2.3.3. Biểu đồ tuần tự tạo đơn hàng 26 2.3.4. Biểu đồ tuần tự sửa đơn hàng 27 2.3.5. Biểu đồ tuần tự xóa đơn hàng 28 2.3.6. Biểu đồ tuần tự tìm kiếm đơn hàng 28 2.4. Biểu đồ hoạt động hệ thống 29 2.4.1. Biểu đồ hoạt động đăng ký 29 2.4.2. Biểu đồ hoạt đông đăng nhập 30 2.4.3. Biểu đồ hoạt động quản lý đơn hàng 31 2.4.4. Biểu đồ hoạt động tìm kiếm đơn hàng 32 2.5. Biểu đồ triển khai 32 2.6. Biểu đồ lớp 35 2.7. Biểu đồ thành phần 36 2.8. Thiết kế cơ sở dữ liệu 36 2.8.1. Đơn hàng 36 2.8.2. Users 37 2.8.3. Ship hàng 38 CHƯƠNG 3: CÀI ĐẶT VÀ THỬ NGHIỆM 39 3.1. Giao diện chính của Web. 39 3.1.1. Giao diện đối với người sử dụng là chủ shop. 39 3.1.2. Giao diện đối với người sử dụng là Shipper: 40 3.2. Các chức năng của Web 41 3.2.1. Chức năng hiển thị đơn hàng 41 3.2.2. Chức năng đăng nhập hệ thống 42 3.2.3. Chức năng xem chi tiết đơn hàng 43 3.2.4. Chức năng đăng ký tài khoản. 44 3.2.5. Chức năng đăng ký làm shipper cho gói hàng 45 3.2.6. Chức năng tạo đơn hàng mới 46 3.2.7. Chức năng chấp nhận Shipper 47 3.2.8. Chức năng đánh giá Shipper 48 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 50 TÀI LIỆU THAM KHẢO
Trang 1XÂY DỰNG HỆ THỐNG SHIP-SHOP
TRÊN NỀN WEBGIS
Hà Nội – 2017
Trang 3Em xin cam đoan rằng đồ án tốt nghiệp này do chính em thực hiện,không sao chép từ công trình nghiên cứu nào khác, tài liệu sử dụng trong đồ
án tốt nghiệp này đều được ghi rõ nguồn gốc
Sinh viên
Trần Xuân Công
Trang 4Em xin chân thành cảm ơn các thầy, cô giáo trong Khoa Công nghệthông tin, trường Đại học Tài Nguyên và Môi Trường Hà Nội, đã tạo điềukiện cho em thực hiện đề tài này
Xin cảm ơn thầy Vũ Ngọc Phan đã tận tình hướng dẫn, chỉ bảo em trongsuốt thời gian thực hiện đề tài.Trong thời gian được làm việc với thầy, emkhông những học hỏi được nhiều kiến thức bổ ích mà còn học được tinh thầnlàm việc, thái độ nghiên cứu khoa học nghiêm túc của thầy
Xin gửi lời cảm ơn chân thành đến gia đình, và bè bạn vì đã luôn lànguồn động viên to lớn, giúp đỡ em vượt qua những khó khăn trong suốt quátrình học tập
Mặc dù đã cố gắng hoàn thiện đồ án với tất cả sự nỗ lực của bản thân,nhưng chắc chắn không thể tránh khỏi những thiếu sót Kính mong quý Thầy
Cô tận tình chỉ bảo
Một lần nữa, em xin chân thành cảm ơn và luôn mong nhận được sựđóng góp quý báu của tất cả mọi người
Trang 5LỜI CAM ĐOAN
LỜI CẢM ƠN
MỤC LỤC
DANH MỤC VIẾT TẮT
DANH MỤC HÌNH ẢNH
MỤC LỤC 5
DANH MỤC BẢNG BIỂU 10
1.1.Lí do lựa chọn đề tài 2
1.1.2 Đối tượng nghiên cứu 3
1.1.3 Phạm vi nghiên cứu 3
1.1.4 Phương pháp nghiên cứu 3
1.1.5 Mô hình áp dụng cho dự án 4
1.2 Công nghệ sử dụng 5
1.2.1 Hệ thống thông tin địa lý GIS 5
1.2.1.1 Khái niệm 5
2.1.2 Các thành phần của GIS 7
1.2.1.3 Chức năng của GIS 8
1.2.2 Webgis 9
1.2.2.1 Khái niệm 9
1.2.2.3 Chức năng của webgis 11
1.2.3 Google Maps API 12
1.2.6 Nền tảng hệ thống 15
1.2.7 Ngôn ngữ sử dụng C# 16
1.2.7.1 C# là ngôn ngữ đơn giản 17
1.2.7.2 C# là ngôn ngữ hiện đại 17
1.2.7.3 C# là ngôn ngữ mạnh mẽ và mềm dẻo 18
1.2.7.4 C# là ngôn ngữ hướng đối tượng 18
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 19
2.1 Tổng quan hệ thống 19
Các use case 19
2.2 Đặc tả các use case 21
2.2.1 Đăng ký thành viên 21
2.2.2 Đăng nhập hệ thống 21
2.2.3 Gọi shipper 22
2.2.4 Quản lý đơn hàng 23
2.2.5 Đánh giá shipper 23
2.3 Biểu đồ tuần tự hệ thống 24
2.3.1 Biểu đồ tuần tự đăng ký 24
Trang 62.3.5 Biểu đồ tuần tự xóa đơn hàng 28
2.3.6 Biểu đồ tuần tự tìm kiếm đơn hàng 28
2.4 Biểu đồ hoạt động hệ thống 29
2.4.1 Biểu đồ hoạt động đăng ký 29
2.4.2 Biểu đồ hoạt đông đăng nhập 30
2.4.3 Biểu đồ hoạt động quản lý đơn hàng 31
2.4.4 Biểu đồ hoạt động tìm kiếm đơn hàng 32
2.5 Biểu đồ triển khai 32
2.6 Biểu đồ lớp 35
2.7 Biểu đồ thành phần 36
2.8 Thiết kế cơ sở dữ liệu 36
2.8.1 Đơn hàng 36
2.8.2 Users 37
2.8.3 Ship hàng 37
CHƯƠNG 3: CÀI ĐẶT VÀ THỬ NGHIỆM 39
3.1 Giao diện chính của Web 39
3.1.1 Giao diện đối với người sử dụng là chủ shop 39
3.2 Các chức năng của Web 41
3.2.3 Chức năng xem chi tiết đơn hàng 43
3.2.5 Chức năng đăng ký làm shipper cho gói hàng 45
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 49
TÀI LIỆU THAM KHẢO 1
Trang 7CSDL : Cơ sở dữ liệu
Trang 8MỤC LỤC 5
DANH MỤC BẢNG BIỂU 10
1.1.Lí do lựa chọn đề tài 2
1.1.2 Đối tượng nghiên cứu 3
1.1.3 Phạm vi nghiên cứu 3
1.1.4 Phương pháp nghiên cứu 3
1.1.5 Mô hình áp dụng cho dự án 4
1.2 Công nghệ sử dụng 5
1.2.1 Hệ thống thông tin địa lý GIS 5
1.2.1.1 Khái niệm 5
2.1.2 Các thành phần của GIS 7
1.2.1.3 Chức năng của GIS 8
1.2.2 Webgis 9
1.2.2.1 Khái niệm 9
1.2.2.3 Chức năng của webgis 11
1.2.3 Google Maps API 12
1.2.6 Nền tảng hệ thống 15
1.2.7 Ngôn ngữ sử dụng C# 16
1.2.7.1 C# là ngôn ngữ đơn giản 17
1.2.7.2 C# là ngôn ngữ hiện đại 17
1.2.7.3 C# là ngôn ngữ mạnh mẽ và mềm dẻo 18
1.2.7.4 C# là ngôn ngữ hướng đối tượng 18
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 19
2.1 Tổng quan hệ thống 19
Các use case 19
2.2 Đặc tả các use case 21
2.2.1 Đăng ký thành viên 21
2.2.2 Đăng nhập hệ thống 21
2.2.3 Gọi shipper 22
2.2.4 Quản lý đơn hàng 23
2.2.5 Đánh giá shipper 23
2.3 Biểu đồ tuần tự hệ thống 24
2.3.1 Biểu đồ tuần tự đăng ký 24
2.3.2 Biểu đồ tuần tự đăng nhập 25
2.3.3 Biểu đồ tuần tự tạo đơn hàng 26
2.3.4 Biểu đồ tuần tự sửa đơn hàng 27
2.3.5 Biểu đồ tuần tự xóa đơn hàng 28
2.3.6 Biểu đồ tuần tự tìm kiếm đơn hàng 28
2.4 Biểu đồ hoạt động hệ thống 29
2.4.1 Biểu đồ hoạt động đăng ký 29
2.4.2 Biểu đồ hoạt đông đăng nhập 30
2.4.3 Biểu đồ hoạt động quản lý đơn hàng 31
Trang 92.6 Biểu đồ lớp 35
2.7 Biểu đồ thành phần 36
2.8 Thiết kế cơ sở dữ liệu 36
2.8.1 Đơn hàng 36
2.8.2 Users 37
2.8.3 Ship hàng 37
CHƯƠNG 3: CÀI ĐẶT VÀ THỬ NGHIỆM 39
3.1 Giao diện chính của Web 39
3.1.1 Giao diện đối với người sử dụng là chủ shop 39
3.2 Các chức năng của Web 41
3.2.3 Chức năng xem chi tiết đơn hàng 43
3.2.5 Chức năng đăng ký làm shipper cho gói hàng 45
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 49
TÀI LIỆU THAM KHẢO 1
Trang 10MỤC LỤC 5
DANH MỤC BẢNG BIỂU 10
1.1.Lí do lựa chọn đề tài 2
1.1.2 Đối tượng nghiên cứu 3
1.1.3 Phạm vi nghiên cứu 3
1.1.4 Phương pháp nghiên cứu 3
1.1.5 Mô hình áp dụng cho dự án 4
1.2 Công nghệ sử dụng 5
1.2.1 Hệ thống thông tin địa lý GIS 5
1.2.1.1 Khái niệm 5
2.1.2 Các thành phần của GIS 7
1.2.1.3 Chức năng của GIS 8
1.2.2 Webgis 9
1.2.2.1 Khái niệm 9
1.2.2.3 Chức năng của webgis 11
1.2.3 Google Maps API 12
1.2.6 Nền tảng hệ thống 15
1.2.7 Ngôn ngữ sử dụng C# 16
1.2.7.1 C# là ngôn ngữ đơn giản 17
1.2.7.2 C# là ngôn ngữ hiện đại 17
1.2.7.3 C# là ngôn ngữ mạnh mẽ và mềm dẻo 18
1.2.7.4 C# là ngôn ngữ hướng đối tượng 18
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 19
2.1 Tổng quan hệ thống 19
Các use case 19
2.2 Đặc tả các use case 21
2.2.1 Đăng ký thành viên 21
2.2.2 Đăng nhập hệ thống 21
2.2.3 Gọi shipper 22
2.2.4 Quản lý đơn hàng 23
2.2.5 Đánh giá shipper 23
2.3 Biểu đồ tuần tự hệ thống 24
2.3.1 Biểu đồ tuần tự đăng ký 24
2.3.2 Biểu đồ tuần tự đăng nhập 25
2.3.3 Biểu đồ tuần tự tạo đơn hàng 26
2.3.4 Biểu đồ tuần tự sửa đơn hàng 27
2.3.5 Biểu đồ tuần tự xóa đơn hàng 28
2.3.6 Biểu đồ tuần tự tìm kiếm đơn hàng 28
2.4 Biểu đồ hoạt động hệ thống 29
2.4.1 Biểu đồ hoạt động đăng ký 29
2.4.2 Biểu đồ hoạt đông đăng nhập 30
2.4.3 Biểu đồ hoạt động quản lý đơn hàng 31
Trang 112.6 Biểu đồ lớp 35
2.7 Biểu đồ thành phần 36
2.8 Thiết kế cơ sở dữ liệu 36
2.8.1 Đơn hàng 36
2.8.2 Users 37
2.8.3 Ship hàng 37
CHƯƠNG 3: CÀI ĐẶT VÀ THỬ NGHIỆM 39
3.1 Giao diện chính của Web 39
3.1.1 Giao diện đối với người sử dụng là chủ shop 39
3.2 Các chức năng của Web 41
3.2.3 Chức năng xem chi tiết đơn hàng 43
3.2.5 Chức năng đăng ký làm shipper cho gói hàng 45
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 49
TÀI LIỆU THAM KHẢO 1
Trang 12LỜI MỞ ĐẦU
Hiện tại cùng với sự bùng nổ của các trang mạng xã hội, đặc biệt làFacebook, việc bán hàng online trở nên rất phổ biến Những đối tượng thamgia bán hàng online thường là: sinh viên, nhân viên văn phòng, phụ nữ nghỉthai sản, chăm con, thậm chí các cửa hàng… Đặc thù của bán hàng online làviệc giao hàng và nhận hàng tại nhà, không mất thời gian đi lại Việc giaohàng cũng giữ vai trò rất quan trọng ảnh hưởng đến doanh thu của shop Đốivới những shop kinh doanh nhỏ lẻ, đơn hàng ít, chi phí để thuê một nhân viênvận chuyển riêng thường cao Thậm chí, với những shop to thì nhiều khi độingũ nhân viên giao hàng không đáp ứng đủ nhu cầu vận chuyển, và họ phảitìm đến nguồn nhân lực từ bên ngoài
Trong kinh doanh online thì việc ship hàng là một khâu không thể thiếu.Khi khách hàng ghé vào bất kỳ một trang web nào đó, điều đầu tiên là sẽ tìmnhững sản phẩm phù hợp với sở thích và túi tiền của họ Sau đó sẽ xem xétcách thức và chi phí ship hàng ra sao rồi mới đi tới quyết định mua hàng Tuynhiên, một mặt hàng mà khách hàng nghĩ có giá khá phù hợp lại trở nên đắt
đỏ hơn nếu như cộng thêm chi phí ship hàng quá cao Hay thời gian ship hàngquá lâu sẽ đánh lỡ cơ hội phục vụ khách hàng
Với những shop mà mặt hàng tương đối nhiều thì lựa chọn một một đối tác tincậy để ship hàng thực sự rất quan trọng Thuê xe ôm hay sinh viên làm thêm
để vận chuyển hàng cho khách Đối với phương pháp này, hàng hóa sẽ đượcgom lại và chuyển cho các khách hàng trong ngành Đối tượng tham gia shiphàng chủ yếu là các bạn trẻ kiếm thêm ngoài giờ không mất chi phí gì cả Tuynhiên, phương pháp này chỉ phù hợp với các đơn hàng nội thành, đồng thờicần cẩn trọng vì cũng có những trường hợp xấu có thể xảy ra như: hàngkhông tới được tay khách hàng, hoặc hư hỏng trong quá trình vận chuyển…
Trang 13CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI NGHIÊN CỨU
1.1 Lí do lựa chọn đề tài
Do nhu cầu mua hàng online trở nên phổ biến, do đó đã xuất hiện nhucầu giao hàng tận nơi cho các khách hàng Tuy nhiên việc vận chuyển chưađáp ứng nhu cầu của người dùng một cách tối ưu nhất, người giaohàng(shipper) chưa có nhiều kênh thông tin trực quan, chủ cửa hàng cũngchưa có diễn đàn chung để tìm shipper Nhu cầu cụ thể của các shop là có mộtWebsite đáp ứng được nhu cầu vận chuyển hàng hóa sao cho thuận tiện nhất
và có khả năng đưa ra được đường đi hợp lý nhất cho Shippervà người dùng
sẽ dễ dàng truy cập được các thông tin kết hợp với các bản đồ động để có đượccái nhìn trực quan thông qua trình duyệt, từ đó phân tích, chọn lựa đối tác dễdàng, tối ưu chi phí hơn Do đó, tôi xây dựng đề tài hệ thống ship-shop trên nềnWebGIS để đáp ứng các nhu cầu đó
+ Phần cho chủ hàng: Chức năng thêm mới đơn hàng
• Chức năng quản lý đơn hàng
• Chức năng lựa chọn shipper cho gói hàng
• Chức năng đánh giá shipper
+ Phần cho shipper: Chức năng hiển thị các đơn hàng đang có
• Chức năng tìm kiếm các đơn hàng ở gần mình(trên bản đồ)
• Chức năng xem thông tin đơn hàng(chỉ dẫn đường đi)
• Chức năng quản lý đơn hàng đã nhận
Trang 14- Hướng phát triển : Do đây là đề tài nghiên cứu mới nên trong tương laitôi sẽ cố gắng phát triển phiên bản Mobile để ứng dụng trong thực tế.
1.1.2 Đối tượng nghiên cứu
1.1.4 Phương pháp nghiên cứu
-Phương pháp lý thuyết: Tìm hiểu lý thuyết, chức năng của những ứng dụng đã có trước, nâng cấp cải tiến để đạt kết quả cao hơn
-Phương pháp phân tích: Đưa ra các nhận định riêng về các tính năng của phần mềm, độ khả thi và những nhu cầu thực tiễn của ứng dụng
-Phương pháp thực nghiệm: Thực hiện xây dựng ứng dụng bằng những kiến thức đã có, kết hợp quá trình debug để đạt được sản phẩm hoàn thiện
Trang 151.1.5 Mô hình áp dụng cho dự án
Dự án này sẽ áp dụng mô hình chữ V
Với mô hình chữ V, toàn bộ qui trình được chia thành hai nhóm giaiđoạn tương ứng nhau: phát triển và kiểm thử Mỗi giai đoạn phát triển sẽ kếthợp với một giai đoạn kiểm thử tương ứng như được minh họa trong hình:
Hình 1.1 Mô hình chữ V
Tinh thần chủ đạo của V-model là các hoạt động kiểm thử phải được tiếnhành song song (theo khả năng có thể) ngay từ đầu chu trình cùng với cáchoạt động phát triển Ví dụ, các hoạt động cho việc lập kế hoạch kiểm thửtoàn hệ thống có thể được thực hiện song song với các hoạt động phân tích vàthiết kế hệ thống
Trang 161.2 Công nghệ sử dụng
1.2.1 Hệ thống thông tin địa lý GIS
1.2.1.1 Khái niệm
Hình 1.2 Hệ thống thông tin địa lý GIS
Hệ thống thông tin địa lý (Geographic Information System - gọi tắt
là GIS) được hình thành vào những năm 1960 và phát triển rất rộng rãi trong
10 năm lại đây GIS ngày nay là công cụ trợ giúp quyết định trong nhiều hoạtđộng kinh tế - xã hội,quốc phòng của nhiều quốc gia trên thế giới GIS có khảnăng trợ giúp các cơ quan chính phủ, các nhà quản lý, các doanh nghiệp, các
cá nhân đánh giá được hiện trạng của các quá trình, các thực thể tự nhiên,kinh tế - xã hội thông qua các chức năng thu thập, quản lý, truy vấn, phân tích
và tích hợp các thông tin được gắn với một nền hình học (bản đồ) nhất quántrên cơ sở toạ độ của các dữ liệu đầu vào
Trang 17Có nhiều cách tiếp cận khác nhau khi định nghĩa GIS Nếu xét dưới góc
độ hệ thống, thì GIS có thể được hiểu như một hệ thống gồm các thànhphần: con người, phần cứng, phần mềm, cơ sở dữ liệu, nơi tập hợp các quyđịnh, quy phạm, tiêu chuẩn, định hướng, chủ trương ứng dụng của nhà quản
lý, các kiến thức chuyên ngành và các kiến thức về công nghệ thông tin
Khi xây dựng một hệ thống GIS ta phải quyết định xem GIS sẽ được xâydựng theo mô hình ứng dụng nào, lộ trình và phương thức tổ chức thực hiệnnào Chỉ trên cơ sở đó người ta mới quyết định xem GIS định xây dựng sẽphải đảm đương các chức năng trợ giúp quyết định gì và cũng mới có thể cócác quyết định về nội dung, cấu trúc các hợp phần còn lại của hệ thống cũngnhư cơ cấu tài chính cần đầu tư cho việc hình thành và phát triển hệ thốngGIS Với một xã hội có sự tham gia của người dân và quá trình quản lý thì sựđóng góp tri thức từ phía cộng đồng đang ngày càng trở nên quan trọng vàcàng ngày càng có vai trò không thể thiếu
GIS được định nghĩa là một hệ thống thông tin mà nó sử dụng dữ liệuđầu vào, các thao tác phân tích, cơ sở dữ liệu đầu ra liên quan về mặc địa lýkhông gian, nhằm trợ giúp việc thu nhận, lưu trữ, quản lý, xử lý, phân tích vàhiển thị các thông tin không gian từ thế giới thực để giải quyết các vấn đềtổng hợp thông tin cho các mục đích của con người đặt ra, chẳng hạn như hỗtrợ việc ra quyết định cho quy hoạch và quản lý sử dụng đất, tài nguyên thiênnhiên, môi trường, giao thông…
Hệ thống thông tin địa lý (GIS) là hệ thống quản lý, phân tích và hiển thịtri thức địa lý, tri thức này được thể hiện qua các tập thông tin:
• Các bản đồ: giao diện trực tuyến với dữ liệu địa lý để tra cứu, trìnhbày kết quả và sử dụng như là một nền thao tác với thế giới thực
•Các tập thông tin địa lý: thông tin địa lý dạng file và dạng cơ sở dữ liệugồm các yếu tố, mạng lưới, topology, địa hình, thuộc tính
Trang 18•Các mô hình xử lý: tập hợp các quy trình xử lý để phân tích tự động
•Các mô hình dữ liệu: GIS cung cấp công cụ mạnh hơn là một cơ sở dữliệu thông thường bao gồm quy tắc và sự toàn vẹn giống như các hệ thông tinkhác Lược đồ, quy tắc và sự toàn vẹn của dữ liệu địa lý đóng vai trò rất quantrọng
•Metadata: hay tài liệu miêu tả dữ liệu, cho phép người sử dụng tổ chức,tìm hiểu và truy nhập được tới tri thức địa lý
Trang 19hoạ…Dựa vào mục đích và quy mô cơ sở dữ liệu cần quản lý mà ta lựa chọnphần mềm thích hợp.
Cơ sở dữ liệu (Data): Có thể coi thành phần quan trọng nhất trong một
hệ GIS là dữ liệu Các dữ liệu địa lý và dữ liệu thuộc tính liên quan có thểđược người sử dụng tự tập hợp hoặc được mua từ nhà cung cấp dữ liệuthương mại Hệ GIS sẽ kết hợp dữ liệu không gian với các nguồn dữ liệukhác, thậm chí có thể sử dụng hệ quản trị cơ sở dữ liệu để tổ chức lưu giữ vàquản lý dữ liệu
Con người (People) : Đây là thành phần quan trọng nhất.Cần phải có độingũ cán bộ kỹ thuật, đó là các chuyên viên tin học, các nhà lập trình và cácchuyên gia về các lĩnh vực khác nhau, họ những người trực tiếp thiết kế, xâydựng và vận hành hệ thống thông tin địa lý
Phương thức tổ chức (Methods): Trên cơ sở các định hướng, chủ trươngứng dụng của các nhà quản lý, các chuyên gia chuyên ngành sẽ quyết địnhxem GIS sẽ được xây dựng theo mô hình ứng dụng nào, lộ trình và phươngthức thực hiện như thế nào, hệ thống được xây dựng sẽ đảm đương được cácchức năng trợ giúp quyết định gì, từ đó có những thiết kế về nội dung, cấutrúc các hợp phần của hệ thống cũng như đầu tư tài chính…
1.2.1.3 Chức năng của GIS
GIS có một số chức năng như quản lý, lưu trữ, tìm kiếm, thể hiện, traođổi và xử lý dữ liệu không gian cũng như các dữ liệu thuộc tính Dưới đây là
4 chức năng chính:
-Thu thập dữ liệu: dữ liệu được sử dụng trong GIS đến từ nhiều nguồn
khác nhau, có nhiều dạng và được lưu trữ theo nhiều cách khác nhau GIScung cấp công cụ để tích hợp dữ liệu thành một định dạng chung để so sánh
và phân tích Nguồn dữ liệu chính bao gồm số hóa thủ công/ quét ảnh hàng
Trang 20không, bản đồ giấy và dữ liệu số có sẵn Ảnh vệ tinh và Hệ thống Định vịToàn cầu (GPS) cũng là nguồn dữ liệu đầu vào.
-Quản lý dữ liệu: sau khi dữ liệu được thu thập và tích hợp, GIS cung
cấp chức năng lưu trữ và duy trì dữ liệu Hệ thống quản lý dữ liệu hiệu quảphải đảm bảo các điều kiện về an toàn dữ liệu, toàn vẹn dữ liệu, lưu trữ vàtrích xuất dữ liệu, thao tác dữ liệu
-Phân tích không gian: đây là chức năng quan trọng nhất của GIS làm
cho nó khác với các hệ thống khác Phân tích không gian cung cấp các chứcnăng như nội suy không gian, tạo vùng đệm, chồng lớp
-Hiển thị kết quả: một trong những khía cạnh nổi bật của GIS là có nhiều
cách hiển thị thông tin khác nhau Phương pháp truyền thống bằng bảng biểu
và đồ thị được bổ sung với bản đồ và ảnh ba chiều Hiển thị trực quan là mộttrong những khả năng đáng chú ý nhất của GIS
Trang 21môi trường mạng máy tính để tích hợp, phân phối và truyền tải thông tin địa
lý trực tiếp trên Internet
WebGIS là một giải pháp client – server cho phép quản lý, phân tích, cậpnhật, phân phối thông tin bản đồ , giảm thiểu chi phí đầu tư phần mềm, phầncứng cho người dùng cuối; giao diện thân thiện, đơn giản phù hợp với nhiềungười dùng
•Có khả năng phân phối thông tin địa lý rộng rãi trên toàn cầu
•Người dùng Intenet có thể truy cập đến các ứng dụng GIS mà khôngphải mua phần mềm
•Đối với phần lớn người dùng không có kinh nghiệm về GIS thì việc sửdụng Web - GIS sẽ đơn giản hơn việc sử dụng các ứng dụng GIS loại khác 1.2.2.2 Kiến trúc
WebGIS hoạt động theo mô hình client – server giống như hoạt động củamột Website thông thường, vì thế hệ thống WebGIS cũng có kiến trúc ba tầng(3 tier) điển hình của một ứng dụng Web thông dụng Kiến trúc 3 tier gồm có
ba thành phần cơ bản đại diện cho ba tầng: Client, Application Server và DataServer
Hình 1.5 Sơ đồ kiến trúc 3 tầng của webgis
-Client: thường là một trình duyệt Web browser như Internet Explorer,
Fire Fox, Chrome… để mở các trang web theo URL (Uniform Resource
Trang 22Location – địa chỉ định vị tài nguyên thống nhất) định sẵn Các client đôi khicũng là một ứng dụng desktop tương tự như phần mềm MapInfo, ArcGIS…
-Application Server: thường được tích hợp trong một Web Server nào đó
(Tomcat, Apache, Internet Information Server) Nhiệm vụ chính của tầng dịch
vụ thường là tiếp nhận các yêu cầu từ client, lấy dữ liệu từ cơ sở dữ liệu theoyêu cầu client, trình bày dữ liệu theo cấu hình có sẵn hoặc theo yêu cầu củaclient và trả kết quả về theo yêu cầu
-Data Server: là nơi lưu trữ các dữ liệu bao gồm cả dữ liệu không gian
và phi không gian Các dữ liệu này được tổ chức lưu trữ bởi các hệ quản trị cơ
sở dữ liệu như PostgreSQL/PostGIS, Microsoft SQL Server 2008, MySQL,Oracle,…hoặc có thể lưu trữ ở dạng các tập tin dữ liệu như shapfile, XML…
1.2.2.3 Chức năng của webgis
Một trang WebGIS thông thường gồm có 2 chức năng chính là:
-Chức năng hiển thị: Hiển thị toàn bộ tất cả các lớp bản đồ, hiển thị các
lớp bản đồ theo tùy chọn, thay đổi tỉ lệ hiển thị bản đồ (phóng to, thu nhỏ), dichuyển khu vực hiển thị, hiển thị thông tin về đối tượng cụ thể và in bản đồ
-Chức năng phân tích và thiết kế: Thực hiện việc tìm kiếm các dữ liệu
phù hợp với yêu cầu (qua các query), chỉnh sửa đối tượng sẵn có thông tin vềmàu sắc thông qua 1 chuẩn bản đồ và tạo bản đồ chuyên đề
Trang 231.2.3 Google Maps API
Hình 1.6 Google Maps
Khái niệm: Google Maps là một dịch vụ ứng dụng công nghệ bản đồ trựctuyến trên web miễn phí được cung cấp bởi Google, hỗ trợ nhiều dịch vụ kháccủa Google nổi bật là dẫn đường Nó cho phép thấy bản đồ đường sá, đường
đi cho xe máy, cho người đi bộ và xe hơi, và những địa điểm kinh doanh trongkhu vực cũng như khắp nơi trên thế giới
Map API là:
-Đó là một phương thức cho phép 1 website B sử dụng dịch vụ bản đồ
của website A (gọi là Map API) và nhúng vào website của mình (site B) Site
A ở đây là Google Map, site B là các web site cá nhân hoặc tổ chức muốn sửdụng dịch vụ của google, có thể rê chuột, zoom, đánh dấu trên bản đồ
-Các ứng dụng xây dựng trên maps được nhúng vào trang web cá nhân
thông qua các thẻ javascripts do vậy việc sử dụng API Google rất dễ dàng
Trang 24-Google Map API đã được nâng cấp lên phiên bản thứ 3 Phiên bản này
hỗ trợ không chỉ cho các máy để bàn truyền thống mà cho cả các thiết bị diđộng nhanh hơn và nhiều hơn các ứng dụng
-Điều quan trọng là các dịch vụ hoàn toàn miễn phí với việc xây dựng
một ứng dụng nhỏ Trả phí nếu đó là việc sử dụng cho mục đích kinh doanh,doanh nghiệp
Một số ứng dụng có thể xây dựng:
-Đánh dấu các địa điểm trên bản đồ cùng các thông tin cho địa điểm: các
khu vui chơi giải trí, nhà hàng khách sạn, các quán ăn ngon, các shop quần áo,
nữ trang
-Chỉ dẫn đường đến các địa điểm cần tìm, chỉ dẫn đường giao thông
công cộng, có thể là các địa điểm cung cấp như trên Ở đây sử dụng cácservice google cung cấp
-Khoanh vùng khu vực: các trung tâm kinh tế, khu đô thị, khu ô nhiễm -Tình trạng giao thông các khu vực Đưa ra các giải pháp có thể.
Còn rất nhiều ứng dụng cho phép xây dựng từ dịch vụ Quan trọng là đềumang lại lợi ích cho người cung cấp dịch vụ và người sử dụng dịch vụ Có thểđem lại lợi ích kinh tế nếu như ứng dụng áp dụng tốt trong thực tế
1.2.4 Cơ sở dữ liệu thời gian thực Firebase
Hình 1.7 Thời gian thực Firebase
Khái niệm: Firebase là một dịch vụ cơ sở dữ liệu thời gian thực hoạtđộng trên nền tảng đám mây được cung cấp bởi Google nhằm giúp các lập
Trang 25trình phát triển nhanh các ứng dụng bằng cách đơn giản hóa các thao tác với
cơ sở dữ liệu
Chức năng chính của Firebase:
Realtime Database – Cơ sở dữ liệu thời gian thực: Firebase lưu trữ dữliệu database dưới dạng JSON và thực hiện đồng bộ database tới tất cả cácclient theo thời gian thực Cụ thể hơn là bạn có thể xây dựng được client đanền tảng (cross-platform client) và tất cả các client này sẽ cùng sử dụng chung
1 database đến từ Firebase và có thể tự động cập nhật mỗi khi dữ liệu trongdatabase được thêm mới hoặc sửa đổi
Firebase Authentication – Hệ thống xác thực của Firebase: Firebase cóthể dễ dàng tích hợp các công nghệ xác thực của Google, Facebook, Twitter,
… hoặc một hệ thống xác thực tự tạo ra vào trong ứng dụng của bạn ở bất kìnền tảng nào như Android, iOS hoặc Web
Firebase Hosting: Các ứng dụng sẽ được cấp 1 tên miền dạng
*.firebaseapp.com hoặc trả phí đề sử dụng tê miền của chính mình
1.2.5 Visual studio
Hình 1.8 Phần mềm Visual Studio
Trang 26Là một tập các công cụ phát triển hoàn chỉnh để xây dựng các ứng dụngchạy trên nền window, web và các ứng dụng thiết bị thông minh.
Trang 27Trong nhiều năm qua, ASP đã được cho rằng đó thực sự là một lựa chọnhàng đầu cho web developers trong việc xây dựng những web sites trên nềnmáy chủ web Windows bởi nó vừa linh hoạt mà lại đầy sức mạnh Đầu năm
2002, Microsoft đã cho ra đời một công nghệ mới đó chính là ASP.NET Đâythực sự là một bước nhảy vượt bậc của ASP cả về phương diện tinh tế lẫnhiệu quả cho các developers Nó tiếp tục cung cấp khả năng linh động về mặt
hỗ trợ ngôn ngữ, nhưng hơn hẳn về mặt lĩnh vực ngôn ngữ script vốn đã trởnên hoàn thiện và trở thành ngôn ngữ cơ bản của các developers Việc pháttriển trong ASP.NET không chỉ yêu cầu hiểu biết về HTML và thiết kế web
mà còn khả năng nắm bắt những khái niệm của lập trình và phát triển hướngđối tượng
1.2.7 Ngôn ngữ sử dụng C#
Hình 1.10 Ngôn ngữ lập trình C#
C# là một ngôn ngữ lập trình ứng dụng, ngôn ngữ biên dịch, ngôn ngữ
đa năng được phát triển bởi hãng Microsoft, là một phần khởi đầu cho kế
Trang 28hoạch NET.Microsoft phát triển C# dựa trên C, C++ và Java C# được miêu
tả là ngôn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và Java…
điểm của các ngôn ngữ lập trình hướng đối tượng Java và C++ Do đó ngônngữ C# được sử dụng rộng rãi nhất.C# có thể được viết với bất kỳ trình soạnthảo văn bản nào như Notepad của Windows, và sau đó biên dịch với trìnhbiên dịch dòng lệnh của C#, csc.exe luôn đi kèm với Net framework
Ngày nay, C# được rất nhiều các coder trên thế giới ưa chuộng và tìmhiểu
Các đặc trưng của ngôn ngữ C#:
-C# là ngôn ngữ đơn giản
-C# là ngôn ngữ hiện đại
-C# là ngôn ngữ hướng đối tượng
-C# là ngôn ngữ mạnh mẽ và mềm dẻo
-C# là ngôn ngữ hướng module
C# sẽ trở nên phổ biến
1.2.7.1 C# là ngôn ngữ đơn giản.
C# loại bỏ được một vài sự phức tạp và rối rắm của các ngôn ngữ C++
và Java
C# khá giống C / C++ về diện mạo, cú pháp, biểu thức, toán tử
Các chức năng của C# được lấy trực tiếp từ ngôn ngữ C / C++ nhưngđược cải tiến để làm cho ngôn ngữ đơn giản hơn
1.2.7.2 C# là ngôn ngữ hiện đại.
C# có được những đặc tính của ngôn ngữ hiện đại như:
-Xử lý ngoại lệ
-Thu gom bộ nhớ tự động
-Có những kiểu dữ liệu mở rộng
-Bảo mật mã nguồn
Trang 291.2.7.3 C# là ngôn ngữ mạnh mẽ và mềm dẻo
Với ngôn ngữ C#, chúng ta chỉ bị giới hạn ở chính bản thân của chúng
ta Ngôn ngữ này không đặt ra những ràng buộc lên những việc có thể làm.C# được sử dụng cho nhiều dự án khác nhau như: tạo ra ứng dụng xử lývăn bản, ứng dụng đồ họa, xử lý bảng tính; thậm chí tạo ra những trình biêndịch cho các ngôn ngữ khác C# là ngôn ngữ sử dụng giới hạn những từ khóa.Phần lớn các từ khóa dùng để mô tả thông tin, nhưng không gì thế mà C# kémphần mạnh mẽ Chúng ta có thể tìm thấy rằng ngôn ngữ này có thể được sửdụng để làm bất cứ nhiệm vụ nào
1.2.7.4 C# là ngôn ngữ hướng đối tượng.
C# hỗ trợ tất cả những đặc tính của ngôn ngữ hướng đối tượng là:
-Sự đóng gói (encapsulation)
-Sự kế thừa (inheritance)
-Đa hình (polymorphism)
1.2.7.5 C# là ngôn ngữ hướng module
Mã nguồn của C# được viết trong Class (lớp) Những Class này chứa cácMethod (phương thức) thành viên của nó
Class (lớp) và các Method (phương thức) thành viên của nó có thể được
sử dụng lại trong những ứng dụng hay chương trình khác
Trang 30CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Tim kiem don hang
Hình 2.1 Use case tổng quát
Thông tin các usecase:
Trang 31Bảng 2.1 Use case tổng quát
Thông tin
các chức năng của hệ thống và các tương tác giữa các tác nhânvới các chức năng của hệ thống
người dùng đã đăng ký tài khoản với lựa chọn là chủ cửa hàng
đăng ký tài khoản với lựa chọn là shipper
•Người dùng thành viên là chủ shipper
Các tác nhân đăng ký tài khoản để làm thành viên
Đăng nhập •Người dùng thành viên là
chủ shop
•Người dùng thành viên là shipper
Các tác nhân đăng nhập vào
Quản lý đơn
hàng
•Người dùng thành viên là chủ shop
•Người dùng thành viên là shipper
•Chủ shop có thao tác sửa, xóa đơn hàng
•Shipper xem chi tiết thông tin đơn hàng, nhận đơn hàngTìm Kiếm
đơn hàng
•Người dùng thành viên là shipper
•Người dùng thành viên là chủ shop
Người dùng thành viên muốntìm kiếm được những đơn hàng theo nhu cầu của mình