Tải bản đầy đủ (.pdf) (152 trang)

Khóa luận phát triển sàn giao dịch bất động sản dựa trên blockchain và tự động nhập dữ liệu bằng chatbot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (10.82 MB, 152 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

TRƯƠNG HƯNG HUY
NGUYỄN XUÂN HƯNG

KHÓA LUẬN TỐT NGHIỆP

PHÁT TRIỂN SÀN GIAO DỊCH BẤT ĐỘNG SẢN DỰA
TRÊN BLOCKCHAIN VÀ TỰ ĐỘNG NHẬP DỮ LIỆU
BẰNG CHATBOT
Developing a Real estate Exchange Martketplace application based
on Blockchain and Data autocompletion using Chatbot
KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM

TP. HỒ CHÍ MINH, 2023


ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

TRƯƠNG HƯNG HUY – 19521638
NGUYỄN XUÂN HƯNG - 19521578

KHÓA LUẬN TỐT NGHIỆP

PHÁT TRIỂN SÀN GIAO DỊCH BẤT ĐỘNG SẢN DỰA


TRÊN BLOCKCHAIN VÀ TỰ ĐỘNG NHẬP DỮ LIỆU
BẰNG CHATBOT
Developing a Real estate Exchange Martketplace application based
on Blockchain and Data autocompletion using Chatbot

KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM

GIẢNG VIÊN HƯỚNG DẪN
TS NGUYỄN TRỊNH ĐÔNG

TP. HỒ CHÍ MINH, 2023


THƠNG TIN HỘI ĐỒNG CHẤM KHĨA LUẬN TỐT NGHIỆP

Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số…………………
ngày ………………….. của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
1. ........................................................…..– Chủ tịch.
2. ..............................................................– Thư ký.
3. ............................................................. – Ủy viên.
4. ............................................................. – Ủy viên


ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT

TRƯỜNG ĐẠI HỌC

NAM


CÔNG NGHỆ THÔNG TIN

Độc Lập - Tự Do - Hạnh Phúc
TP. HCM, ngày…..tháng…..năm……..

NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP
(CỦA CÁN BỘ HƯỚNG DẪN)
Tên khóa luận:
Phát Triển Sàn Giao Dịch Bất Động Sản Dựa Trên Blockchain Và Tự Động Nhập Dữ Liệu
Bằng Chatbot
Nhóm SV thực hiện:

Cán bộ hướng dẫn:

Trương Hưng Huy

TS. Nguyễn Trịnh Đông

- 19521638

Nguyễn Xuân Hưng - 19521578
Đánh giá Khóa luận
1. Về cuốn báo cáo:
Số trang

__151 __

Số chương


__10____

Số bảng số liệu

__43 ___

Số hình vẽ

__95____

Số tài liệu tham khảo

__36 ___

Sản phẩm

__2_____

Một số nhận xét về hình thức cuốn báo cáo:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
2. Về nội dung nghiên cứu:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..


………………………………………………………………………………………………………………………………………………..
3. Về chương trình ứng dụng:
………………………………………………………………………………………………………………………………………………..

………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
4. Về thái độ làm việc của sinh viên:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
Đánh giá chung:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
Điểm từng sinh viên:
Trương Hưng Huy:………../10
Nguyễn Xuân Hưng:………../10
Người nhận xét
(Ký tên và ghi rõ họ tên)

Nguyễn Trịnh Đông


ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT

TRƯỜNG ĐẠI HỌC

NAM

CÔNG NGHỆ THÔNG TIN

Độc Lập - Tự Do - Hạnh Phúc

TP. HCM, ngày…..tháng…..năm……..

NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP
(CỦA CÁN BỘ PHẢN BIỆN)
Tên khóa luận:
Phát Triển Sàn Giao Dịch Bất Động Sản Dựa Trên Blockchain Và Tự Động Nhập Dữ Liệu
Bằng Chatbot
Nhóm SV thực hiện:

Cán bộ phản biện:

Trương Hưng Huy

ThS. Lê Thanh Trọng

- 19521638

Nguyễn Xuân Hưng - 19521578
Đánh giá Khóa luận
5. Về cuốn báo cáo:
Số trang

__151 __

Số chương

__10____

Số bảng số liệu


__43 ___

Số hình vẽ

__95____

Số tài liệu tham khảo

__36 ___

Sản phẩm

__2_____

Một số nhận xét về hình thức cuốn báo cáo:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
6. Về nội dung nghiên cứu:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..


7. Về chương trình ứng dụng:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
8. Về thái độ làm việc của sinh viên:
………………………………………………………………………………………………………………………………………………..

………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
Đánh giá chung:
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
………………………………………………………………………………………………………………………………………………..
Điểm từng sinh viên:
Trương Hưng Huy:………../10
Nguyễn Xuân Hưng:………../10
Người nhận xét
(Ký tên và ghi rõ họ tên)


LỜI CẢM ƠN
Sau một khoảng thời gian dài học tập đầy nỗ lực tại trường Đại học Công nghệ Thông
tin Khoa CNPM, chúng em đã tích luỹ được một kho tàng kiến thức cơ bản và kỹ
năng thực tiễn, sẵn sàng để tiến gần hơn đến việc hồn thành Khóa luận của chúng
em.
Xin gửi lời tri ân thành kính được gửi tới Lãnh đạo trường học và các bộ phận phòng
ban trong nhà trường. Đã đáng giá với sự đồng lòng và giúp đỡ tạo điều kiện thuận
lợi cho chúng em trong việc truy cập đến các nguồn tài liệu phong phú và hiện đại
trong thư viện. Bên cạnh đó chúng em cũng muốn bày tỏ lòng biết ơn sâu sắc đối với
sự hỗ trợ quý báu từ thầy Nguyễn Trịnh Đông đã hướng dẫn cũng như định hướng
chúng em trong suốt q trình hồn thành khóa luận này. Nhờ có sự tận tình giúp
đỡ,cũng như. Những lời góp ý q báu này khơng chỉ có giá trị trong việc hồn thành
luận văn, mà cịn đồng hành và hỗ trợ chúng em trên hành trình học tập và sự nghiệp
trong tương lai. Chúng em chân thành gửi lời tri ân cũng như cảm ơn đến tất cả thầy
cô trong khoa, bạn bè và đồng học CNPM2019.2, những người luôn đồng hành và hỗ
trợ chúng em trong học tập và cuộc sống. Niềm hy vọng của chúng em là có thể duy
trì sự gắn bó mãi mãi và đi cùng nhau trên mọi nẻo đường.

Trong q trình hồn thiện khố luận, chúng em đã khơng tránh khỏi một số sai sót.
Do đó, chúng em mong nhận được sự đánh giá và góp ý từ q thầy cơ để cải thiện
và phát triển bản thân trong tương lai. Chân thành cảm ơn thầy cô và xin chúc mọi
người luôn được tràn đầy niềm vui và thành công.


MỤC LỤC

Chương 1:

MỞ ĐẦU .............................................................................................. 20

1.1.

Lý do chọn đề tài ..................................................................................................... 20

1.2.

Mục đích nghiên cứu .............................................................................................. 21

1.3.

Đối tượng nghiên cứu ............................................................................................. 21

1.4.

Phạm vi nghiên cứu ................................................................................................ 22

1.2.1.
1.2.2.

1.3.1.
1.3.2.
1.4.1.
1.4.2.

Khách quan .............................................................................................................................21
Chủ quan ................................................................................................................................21
Các công nghệ nghiên cứu .....................................................................................................21
Đối tượng sử dụng đề tài hướng đến.....................................................................................21
Phạm vi môi trường ...............................................................................................................22
Phạm vi chức năng .................................................................................................................22

Chương 2:

KIẾN THỨC NỀN TẢNG ......................................................................... 24

2.1.

Blockchain .............................................................................................................. 24

2.2.

Web3 ...................................................................................................................... 26

2.3.

Flutter ..................................................................................................................... 29

2.4.


Go ........................................................................................................................... 30

2.5.

Google Remote Procedure Call (gRPC)..................................................................... 31

2.6.

Kafka ...................................................................................................................... 33

2.7.

Kafdrop ................................................................................................................... 34

2.8.

Docker .................................................................................................................... 35

2.1.1.
2.1.2.
2.1.3.
2.1.4.
2.2.1.
2.2.2.
2.2.3.
2.3.1.
2.3.2.
2.4.1.
2.4.2.
2.5.1.

2.5.2.
2.5.3.
2.6.1.
2.6.2.

2.8.1.
2.8.2.

Blockchain là gì ? ....................................................................................................................24
Cách Blockchain hoạt động ....................................................................................................24
Hợp đồng thông minh ............................................................................................................25
Token ERC-20 (Token có thể thay thế) ...................................................................................25
Đột phá ...................................................................................................................................27
Tiềm năng ...............................................................................................................................28
Nhược điểm ...........................................................................................................................28
Các thành phần chính .............................................................................................................29
Chức năng ..............................................................................................................................30
Tính tiện dụng của Golang? ....................................................................................................30
Nhược điểm ...........................................................................................................................31
gRPC là gì? ..............................................................................................................................31
Ưu điểm .................................................................................................................................32
Nhược điểm ...........................................................................................................................32
Kafka là gì? .............................................................................................................................33
Lý do sử dụng Apache Kafka là gì? .........................................................................................33

Docker là gì ? ..........................................................................................................................35
Lợi ích của Docker ..................................................................................................................35


2.9.


Nginx ...................................................................................................................... 36

2.10.

Firebase .................................................................................................................. 37

2.11.

Amazon Web Service (AWS) .................................................................................... 37

2.12.

Kubernetes ............................................................................................................. 39

2.13.

Rancher .................................................................................................................. 40

2.14.

Springboot .............................................................................................................. 41

2.15.

MongoDB................................................................................................................ 43

2.16.

Microservices .......................................................................................................... 43


2.17.

Google protocol buffer ............................................................................................ 45

2.18.

Nodejs .................................................................................................................... 46

2.19.

Gitlab ...................................................................................................................... 47

2.20.

SonarQube .............................................................................................................. 48

2.21.

CI/CD ...................................................................................................................... 48

2.9.1.
2.9.2.

Nginx là gì? .............................................................................................................................36
Nginx hoạt động như thế nào? ..............................................................................................36

2.10.1.
2.10.2.
2.11.1.

2.11.2.
2.11.3.
2.11.4.
2.12.1.
2.13.1.
2.13.2.
2.14.1.
2.15.1.
2.15.2.
2.16.1.
2.16.2.
2.17.1.
2.17.2.
2.17.3.
2.18.1.
2.19.1.
2.19.2.
2.20.1.

Khái niệm ..........................................................................................................................37
Firebase Cloud Messaging .................................................................................................37
Khái niệm ..........................................................................................................................37
Amazon Relational Database Service (Amazon RDS) ........................................................38
Amazon S3 - Cloud Object Storage....................................................................................38
Amazon Elastic Kubernetes Service (Amazon EKS) ...........................................................38
Kiến trúc ............................................................................................................................39
Khái niệm ..........................................................................................................................40
Tại sao nên dùng Rancher? ...............................................................................................40
Đặc điểm và tính năng của Spring Boot ............................................................................42
Định nghĩa .........................................................................................................................43

Lợi thế của MongoDB ........................................................................................................43
Định nghĩa .........................................................................................................................44
Kiến trúc ............................................................................................................................44
Định nghĩa .........................................................................................................................45
Khi nào nên sử dụng ? .......................................................................................................45
Lợi ích ................................................................................................................................46
Khái niệm ..........................................................................................................................46
Định nghĩa .........................................................................................................................47
Đặc điểm ...........................................................................................................................47
Định nghĩa .........................................................................................................................48

2.21.1.
2.21.2.

CI/CD là gì? ........................................................................................................................49
Quy trình triển khai ...........................................................................................................49

Chương 3:

HỆ THỐNG BLOCKCHAIN ...................................................................... 50

3.1.

Khái niệm................................................................................................................ 50

3.2.

Áp dụng vào đề tài .................................................................................................. 51

3.1.1.

3.1.2.
3.2.1.

Solidity ....................................................................................................................................50
Polygon ...................................................................................................................................50
Quản lí BDS .............................................................................................................................51


3.2.2.

Quản lí phiên đấu giá BDS ......................................................................................................51

Chương 4:

CHATBOT DIALOGFLOW ....................................................................... 52

4.1.

Khái niệm................................................................................................................ 52

4.2.

Quy trình hoạt động................................................................................................ 53

4.3.

Sơ đồ kịch bản đối thoại ......................................................................................... 56

4.4.


Áp dụng vào đề tài .................................................................................................. 57

4.2.1.
4.2.2.

Intents ....................................................................................................................................54
Entities....................................................................................................................................54

Chương 5:

XÂY DỰNG HỆ THỐNG ......................................................................... 58

5.1.

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

5.2.

Chi tiết thành phần trong hệ thống ......................................................................... 58

5.3.

Thiết kế sơ đồ lớp ................................................................................................... 60

5.2.1.

Kiến trúc tổng thể...................................................................................................................58

Chương 6:


ĐẶC TẢ USECASE.................................................................................. 61

6.1.

Sơ đồ Usecase......................................................................................................... 61

6.2.

Danh mục tác nhân ................................................................................................. 64

6.3.

Danh mục Usecase .................................................................................................. 65

6.3.1.
6.3.2.
6.3.3.

Các tính năng trong phiên bản Mobile ...................................................................................65
Các tính năng trong phiên bản Web .......................................................................................68
Mơ tả chi tiết Usecase ............................................................................................................69

Chương 7:

THIẾT KẾ DB ....................................................................................... 119

7.1.

Sơ đồ logic ............................................................................................................ 119


7.2.

Danh mục quan hệ ................................................................................................ 120

7.3.

Chi tiết quan hệ .................................................................................................... 121

7.3.1.
7.3.2.
7.3.3.
7.3.4.
7.3.5.
7.3.6.
7.3.7.
7.3.8.
7.3.9.
7.3.10.
7.3.11.
7.3.12.
7.3.13.
7.3.14.
7.3.15.
7.3.16.
7.3.17.

Quan hệ RealEstateAmenities ..............................................................................................121
Quan hệ AuctionHistory .......................................................................................................121
Quan hệ ChatGroupMembers ..............................................................................................122
Quan hệ ChatGroups ............................................................................................................122

Quan hệ ChatMessages ........................................................................................................123
Quan hệ Districts ..................................................................................................................123
Quan hệ HomeTours ............................................................................................................124
Quan hệ Images....................................................................................................................125
Quan hệ Provinces ...............................................................................................................125
Quan hệ RealEstateAmenities .........................................................................................126
Quan hệ RealEstateAuctions ...........................................................................................126
Quan hệ RealEstateImages .............................................................................................127
Quan hệ RealEstatePostTypes.........................................................................................127
Quan hệ RealEstatePosts ................................................................................................128
Quan hệ RealEstatePriceHistories ...................................................................................129
Quan hệ RealEstateTypes................................................................................................129
Quan hệ RealEstates .......................................................................................................129


7.3.18.
7.3.19.
7.3.20.

Quan hệ Users .................................................................................................................131
Quan hệ UserFavourites..................................................................................................131
Quan hệ Wards ...............................................................................................................132

Chương 8:

THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG .................................................... 133

8.1.

Mobile .................................................................................................................. 133


8.2.

Website ................................................................................................................ 141

8.1.1.
8.1.2.
8.1.3.
8.1.4.
8.1.5.
8.1.6.
8.1.7.
8.1.8.
8.1.9.
8.1.10.
8.2.1.
8.2.2.
8.2.3.
8.2.4.
8.2.5.
8.2.6.
8.2.7.

Xác thực người dùng ............................................................................................................133
Các giao diện chính của ứng dụng ........................................................................................134
Chi tiết thơng tin bài đăng ....................................................................................................135
Chatbot ................................................................................................................................136
Tìm kiếm bài đăng ................................................................................................................136
Thông báo.............................................................................................................................137
Chỉnh sửa thông tin cá nhân ................................................................................................137

Các trang tiện ích giúp người dùng quản lý BDS ..................................................................138
Cài đặt ..................................................................................................................................139
Tin tức .............................................................................................................................140
Đăng nhập ............................................................................................................................141
Danh mục tài khoản người dùng ..........................................................................................141
Danh mục yêu cầu tham quan..............................................................................................142
Danh mục yêu cầu đấu giá ...................................................................................................142
Chi tiết BDS ...........................................................................................................................143
Tạo tài khoản cho nhân viên ................................................................................................144
Danh mục người dùng ..........................................................................................................144

Chương 9:

CÀI ĐẶT VÀ KIỂM THỬ ....................................................................... 145

9.1.

Giới thiệu.............................................................................................................. 145

9.2.

Phương pháp kiểm thử ......................................................................................... 145

9.3.

Lịch trình thử nghiệm............................................................................................ 146

9.4.

Nguồn lực ............................................................................................................. 147


9.5.

Mơi trường kiểm thử ............................................................................................ 147

9.6.

Test cases ............................................................................................................. 147

9.7.

Tiêu chí chấp nhận ................................................................................................ 147

9.8.

Rủi ro và Dự phòng ............................................................................................... 148

9.3.1.
9.3.2.
9.3.3.

Chuẩn bị kiểm thử ................................................................................................................146
Thực hiện kiểm thử ..............................................................................................................146
Kết thúc kiểm thử .................................................................................................................146

Chương 10:

TỔNG KẾT .......................................................................................... 149

10.1.


Kết quả đạt được .................................................................................................. 149

10.2.

Hạn chế................................................................................................................. 149

10.3.

Hướng phát triển .................................................................................................. 150

TÀI LIỆU THAM KHẢO ................................................................................................. 151


DANH MỤC HÌNH

Hình 2.1: So sánh giữa hợp đồng giấy và hợp đồng thơng minh. đồng thơng minh 25
Hình 2.2: Hình Token ERC-20 .................................................................................26
Hình 2.3: Sự phát triển của cơng nghệ Web .............................................................27
Hình 2.4: Minh họa cơng nghệ Flutter ......................................................................29
Hình 2.5: Hình ngơn ngữ Go ....................................................................................30
Hình 2.6 Hình ảnh quy trình HTTP/2 .......................................................................31
Hình 2.7 Hình ảnh mơ tả Kafka ................................................................................33
Hình 2.8 Kafka ..........................................................................................................33
Hình 2.9: Kafdrop .....................................................................................................34
Hình 2.10: Giao diện Kafdrop ..................................................................................34
Hình 2.11: Hình minh họa Docker............................................................................35
Hình 2.12 Nginx .......................................................................................................36
Hình 2.13 Firebase ....................................................................................................37
Hình 2.14 Amazon web service ................................................................................37

Hình 2.15 Kubernetes ...............................................................................................39
Hình 2.16 Kubernetes Architecture ..........................................................................39
Hình 2.17 Kubernetes Architecture ..........................................................................40
Hình 2.18: Rancher ...................................................................................................40
Hình 2.19 Spring boot ...............................................................................................41
Hình 2.20 Springboot Architecture ...........................................................................42
Hình 2.21 Hình ảnh MongoDB.................................................................................43
Hình 2.22 Microservices ...........................................................................................43
Hình 2.23 Hình ảnh kiến trúc Microservice .............................................................44
Hình 2.24 Hình ảnh Protocal Buffers .......................................................................45
Hình 2.25 Hình ảnh Protocol Buffers .......................................................................45
Hình 2.26 Nodejs ......................................................................................................46
Hình 2.27 Gitlab .......................................................................................................47
Hình 2.28 Sonarqube ................................................................................................48
Hình 2.29 Hình ảnh CI/CD .......................................................................................49
Hình 2.30 Quy trình triển khai CI/CD ......................................................................49
Hình 3.1: Logo ngơn ngữ Solidity ............................................................................50
Hình 3.2: Logo chuỗi Polygon ..................................................................................50
Hình 4.1 Hình ảnh mơ tả Chabot ..............................................................................52
Hình 4.2 Hình ảnh quy trình hoạt động chatbot .......................................................53
Hình 4.3 Hình ảnh mơ tả intent Chatbot ...................................................................54
Hình 4.4 Hình ảnh Entities Chatbot ..........................................................................55
Hình 4.5 Hình ảnh mơ tả sơ đồ kịch bản đối thoại chatbot ......................................56
Hình 4.6 Hình ảnh giao diện chatbot ........................................................................57
Hình 5.1: Hình vẽ mơ tả kiến trúc hệ thống..............................................................58
Hình 5.2: Sơ đồ lớp ...................................................................................................60


Hình 6.1: Usecase chức năng xác thực người dùng. .................................................61
Hình 6.2: Usecase chức năng quản lý người dùng. ..................................................61

Hình 6.3: Usecase các tính năng về BDS .................................................................62
Hình 6.4: Usecase chức năng đấu giá. ......................................................................63
Hình 6.5: Usecase chức năng đặt lịch tham quan. ....................................................64
Hình 6.6: Sơ đồ tuần tự usecase Tạo bất động sản ...................................................69
Hình 6.7: Sơ đồ tuần tự usecase Chỉnh sửa bất động sản. ........................................73
Hình 6.8: Sơ đồ tuần tự usecase Nhắn tin .................................................................77
Hình 6.9: Sơ đồ tuần tự usecase Đăng tin rao bất động sản để mua hoặc cho thuê..80
Hình 6.10: Sơ đồ tuần tự usecase Bản đồ hiện thị các bất động sản xung quanh .....85
Hình 6.11: Sơ đồ tuần tự usecase Duyệt bất động sản ..............................................88
Hình 6.12: Sơ đồ tuần tự usecase Từ chối duyệt bất động sản .................................92
Hình 6.13: Sơ đồ tuần tự usecase Chặn tài khoản người dùng. ................................96
Hình 6.14: Sơ đồ tuần tự usecase Tạo tài khoản cho nhân viên ...............................98
Hình 6.15: Sơ đồ tuần tự usecase Trả giá ...............................................................101
Hình 6.16: Sơ đồ tuần tự usecase Tạo đấu giá ........................................................103
Hình 6.17: Sơ đồ tuần tự usecase Đóng đấu giá .....................................................105
Hình 6.18: Sơ đồ tuần tự usecase Phê duyệt đấu giá ..............................................107
Hình 6.19: Sơ đồ tuần tự usecase Từ chối phê duyệt đấu giá .................................110
Hình 6.20: Sơ đồ tuần tự usecase Đặt lịch hẹn tham quan bất động sản ................112
Hình 6.21: Sơ đồ tuần tự usecase Từ chối lịch hẹn ................................................114
Hình 6.22: Sơ đồ tuần tự usecase Xét duyệt tham quan và chỉ định nhân viên ......116
Hình 7.1: Sơ đồ quan hệ thực thể............................................................................119
Hình 8.1 Giao diện khi người dùng đăng ký tài khoản ...........................................133
Hình 8.2 Giao diện cho người dùng khi quên mật khẩu .........................................133
Hình 8.3: Giao diện khi người dùng muốn đăng nhập............................................133
Hình 8.4 Giao diện bản đồ ......................................................................................134
Hình 8.5 Giao diện trang chủ ..................................................................................134
Hình 8.6 Giao diện danh mục tin nhắn ...................................................................134
Hình 8.7 Giao diện trang chung .............................................................................135
Hình 8.8 Giao diện danh mục đấu giá ....................................................................135
Hình 8.9 Giao diện chi tiết đấu giá .........................................................................135

Hình 8.10 Giao diện bài đăng chi tiết ....................................................................135
Hình 8.11 Giao diện Chatbot ..................................................................................136
Hình 8.12 Giao diện lọc bài đăng ...........................................................................136
Hình 8.13 Giao diện tìm kiếm bài đăng ..................................................................136
Hình 8.14 Giao diện thơng báo ...............................................................................137
Hình 8.15 Giao diện trang chỉnh sửa thơng tin cá nhân..........................................137
Hình 8.16 Giao diện danh mục lịch hẹn đã đặt .......................................................138
Hình 8.17 Giao diện bất động sản chi tiết...............................................................138
Hình 8.18 Giao diện danh mục nhà của tơi.............................................................138
Hình 8.19 Giao diện bài đăng của bạn ....................................................................138
Hình 8.20 Giao diện danh mục bất động sản yêu thích ..........................................139


Hình 8.21 Giao diện chi tiết lịch hẹn ......................................................................139
Hình 8.22 Giao diện cài đặt ....................................................................................139
Hình 8.23: Màn hình tin tức ....................................................................................140
Hình 8.24: Màn hình góc nhìn chun gia..............................................................140
Hình 8.25 Giao diện đăng nhập web.......................................................................141
Hình 8.26 Giao diện danh mục tài khoản người dùng ............................................141
Hình 8.27 Giao diện danh mục yêu cầu tham quan bất động sản ...........................142
Hình 8.28 Giao diện danh mục yêu cầu đấu giá .....................................................142
Hình 8.29: Giao diện chi tiết bất động sản .............................................................143
Hình 8.30 Giao diện tạo tài khoản nhân viên .........................................................144
Hình 8.31: Giao diện danh mục người dùng ...........................................................144
Hình 9.1: Biểu đồ Gantt Lịch trình kiểm thử. .........................................................146


DANH MỤC BẢNG
Bảng 4.1 Bảng intent chatbot ....................................................................................56
Bảng 4.2 Bảng mô tả giao diện chatbot ....................................................................57

Bảng 6.1: Danh mục tác nhân ...................................................................................64
Bảng 6.2: Các tính năng trong phiên bản mobile .....................................................65
Bảng 6.3: Các tính năng trên phiên bản Web ...........................................................68
Bảng 6.4: Bảng đặc tả usecase Tạo BDS ..................................................................70
Bảng 6.5: Bảng đặc tả usecase Chỉnh sửa BDS ........................................................73
Bảng 6.6: Bảng đặc tả usecase Nhắn tin ..................................................................78
Bảng 6.7: Bảng đặc tả usecase Đăng tin mua bán, cho thuê BDS. ...........................81
Bảng 6.8: Bảng đặc tả usecase Bản đồ hiển thị các BDS xung quanh .....................86
Bảng 6.9: Bảng đặc tả usecase Duyệt BDS. .............................................................89
Bảng 6.10: Bảng đặc tả usecase Từ chối phê duyệt BDS. ........................................93
Bảng 6.11: Bảng đặc tả usecase Chặn tài khoản người dùng ...................................96
Bảng 6.12: Bảng đặc tả usecase Tạo tài khoản nhân viên ........................................98
Bảng 6.13: Bảng đặc tả usecase Trả giá .................................................................101
Bảng 6.14: Bảng đặc tả usecase Tạo đấu giá ..........................................................103
Bảng 6.15: Bảng đặc tả usecase Đóng đấu giá .......................................................105
Bảng 6.16: Bảng đặc tả usecase Phê duyệt đấu giá ................................................108
Bảng 6.17: Bảng đặc tả usecase Từ chối phê duyệt đấu giá ...................................110
Bảng 6.18: Bảng đặc tả usecase Đặt lịch hẹn tham quan BDS ...............................112
Bảng 6.19: Bảng đặc tả usecase Từ chối lịch hẹn tham quan BDS ........................114
Bảng 6.20: Bảng đặc tả usecase Xét duyệt tham quan và chỉ định nhân viên ........116
Bảng 7.1: Bảng danh mục các quan hệ và chú tích quan hệ ...................................120
Bảng 7.2: Bảng mơ tả quan hệ RealEstateAmenities .............................................121
Bảng 7.3: Bảng mô tả quan hệ AuctionHistory ......................................................121
Bảng 7.4: Bảng mô tả quan hệ ChatGroupMembers ..............................................122
Bảng 7.5: Bảng mô tả quan hệ ChatGroups............................................................122
Bảng 7.6: Bảng mô tả quan hệ ChatMessages ........................................................123
Bảng 7.7: Bảng mô tả quan hệ Districts .................................................................123
Bảng 7.8: Bảng mô tả quan hệ HomeTours ............................................................124
Bảng 7.9: Bảng mô tả quan hệ Images ...................................................................125
Bảng 7.10: Bảng mô tả quan hệ Provinces .............................................................125

Bảng 7.11: Bảng mô tả quan hệ RealEstateAmenities ...........................................126
Bảng 7.12: Bảng mô tả quan hệ RealEstateAuctions .............................................126
Bảng 7.13: Bảng mô tả quan hệ RealEstateImages ................................................127
Bảng 7.14: Bảng mô tả quan hệ RealEstatePostTypes ...........................................127
Bảng 7.15: Bảng mô tả quan hệ RealEstatePosts ...................................................128
Bảng 7.16: Bảng mô tả quan hệ RealEstatePriceHistories .....................................129
Bảng 7.17: Bảng mô tả quan hệ RealEstateTypes ..................................................129
Bảng 7.18: Bảng mô tả quan hệ RealEstates ..........................................................129
Bảng 7.19: Bảng mô tả quan hệ Users ....................................................................131


Bảng 7.20: Bảng mô tả quan hệ UserFavourites ....................................................131
Bảng 7.21: Bảng mô tả quan hệ Wards ..................................................................132


DANH MỤC TỪ VIẾT TẮT
Từ

Từ gốc

Ý nghĩa

BDS

Bất động sản

Bất động sản

ID


Identification

Là một định danh duy
nhất được gán trong một
hệ thống để xác thực

API

Application Programming Là cách để hai hay nhiều
Interface

chương trình máy tính
giao tiếp với nhau

RPC

Remote Procedure Call

Là một kỹ thuật để xây
dựng các hệ thống phân
tán.

DB

Cơ sở dữ liệu

Cơ sở dữ liệu

UI


User Interface

Giao diện người dùng

AWS

Amazon Web Service

Dịch vụ cloud Amazon

DB

Database

Cơ sở dữ liệu

EVM

Ethereum Virtual

Máy ảo Ethereum

Machine
MQ

Message Queue

Hàng đợi thông điệp



TĨM TẮT KHĨA LUẬN
Trong khố luận, trọng tâm là việc nghiên cứu sự kết hợp lĩnh vực bất động sản đan
xen với công nghệ blockchain, đề cập đến việc đưa ra một phương án mới sử dụng
Mobile tích hợp cơng nghệ blockchain nhằm giải quyết những khó khăn hiện tại trong
lĩnh vực bất động sản.
Khoá luận đề cập đến lợi ích của công nghệ blockchain trong bất động sản, như tính
minh bạch, giảm thiểu sự phụ thuộc tăng mức độ an tồn so với bên trung gian trong
q trình giao dịch. Tuy nhiên, lĩnh vực bất động sản hiện tại đang đối mặt với nhiều
vấn đề, bao gồm quá trình giao dịch phức tạp, thiếu minh bạch và nguy cơ gian lận.
Nhằm giải quyết những khó khăn này, khố luận đề xuất tích hợp cơng nghệ
blockchain vào Mobile. Ứng dụng này sẽ tiếp cận các tính năng cung cấp bởi công
nghệ blockchain, như sổ cái phân tán, ghi chúng nhất quán và xác thực thông tin, để
cung cấp một nền tảng an toàn, minh bạch và tiện lợi cho giao dịch bất động sản.
Một cách tiếp cận mới được đề xuất, cho phép người dùng thao tác các giao dịch mua
bán, cho thuê và quản lý bất động sản một cách trực tiếp thông qua Mobile. Các giao
dịch sẽ được ghi lại và xác nhận một cách an tồn thơng qua công nghệ blockchain,
lược đi sự phụ thuộc vào bên trung gian và giảm thiểu nguy cơ gian lận.
Khoá luận đề xuất sử dụng ứng dụng trên di động tích hợp công nghệ blockchain để
xử lý các vấn đề trong lĩnh vực bất động sản. Dự kiến sẽ đem đến tính minh bạch,
giải pháp này hứa hẹn cải thiện tính an toàn và hiệu quả cho thị trường bất động sản,
đồng thời tạo điều kiện thuận lợi cho việc thực hiện các giao dịch và quản lý bất động
sản thông qua nền tảng di động.



19


CHƯƠNG 1: MỞ ĐẦU
1.1. Lý do chọn đề tài

Ngành bất động sản từ lâu đã được biết đến với sự phức tạp, với nhiều bên tham
gia vào các giao dịch và một lượng lớn dữ liệu cần quản lý. Sự xuất hiện của
công nghệ blockchain và chatbot đang cách mạng hóa cách thức hoạt động của
ngành, khiến nó trở nên minh bạch, hiệu quả và dễ tiếp cận hơn. Sàn giao dịch
bất động sản có thể được hưởng lợi từ sự trợ giúp của cơng nghệ blockchain và
chatbot vì:
o Tăng tính minh bạch và bảo mật: Cơng nghệ chuỗi khối trong giao dịch
Bất động sản cung cấp sự an toàn và minh bạch trong lưu trữ và quản lý
dữ liệu, ngăn chặn gian lận và đảm bảo tính chính xác của giao dịch.
o Nhập liệu nhanh chóng, hiệu quả: Chatbot giúp tự động hóa quy trình
nhập liệu BĐS, tiết kiệm thời gian và giảm nguy cơ sai sót.
o Cải thiện khả năng truy cập: Chatbot cung cấp hỗ trợ thời gian thực, đơn
giản hóa quy trình nhập liệu và làm cho sàn giao dịch BĐS dễ dàng tiếp
cận hơn, đặc biệt cho người khơng có kinh nghiệm.
o Cung cấp trải nghiệm người dùng tốt hơn: Kết hợp công nghệ blockchain
và chatbot giúp tối ưu hóa trải nghiệm người dùng, làm cho các chức năng
như nhập dữ liệu, tìm kiếm và đưa ra quyết định mua bán trở nên nhanh
chóng, thơng minh và dễ dàng.
o Quản lý dữ liệu tốt hơn: Cơng nghệ blockchain đảm bảo sự an tồn và
phi tập trung trong lưu trữ dữ liệu BĐS, giúp quản lý và phân tích dữ liệu
thuận tiện hơn, từ đó giúp người mua và người bán đưa ra quyết định thông
minh và hiệu quả hơn.



20


1.2. Mục đích nghiên cứu
1.2.1. Khách quan

-

Tìm hiểu sự ảnh hưởng đáng kể của công nghệ blockchain trong ngành bất
động sản.

-

Đánh giá tiềm năng ứng dụng đa dạng của blockchain trong lĩnh vực bất động
sản.

-

Xác định và phân tích những thách thức và rủi ro khi tích hợp blockchain vào
ngành bất động sản..

1.2.2. Chủ quan
-

Đề xuất mơ hình tích hợp blockchain vào lĩnh vực bất động sản.

-

Đánh giá lợi ích và tiềm năng của việc tích hợp blockchain vào bất động sản.

-

Kế hoạch tiến xa hơn đề xuất các hướng phát triển và các lĩnh vực nghiên cứu
tiếp theo liên quan đến việc ứng dụng công nghệ blockchain vào lĩnh vực BDS.

1.3. Đối tượng nghiên cứu

1.3.1. Các công nghệ nghiên cứu
-

Backend: NodeJS/TypeScript/ExpressJS, Java/Springboot, Golang/Gin.

-

Frontend: Flutter Mobile, Flutter CRM Website.

-

Message queue: Kafka, ActiveMQ, RabbitMQ.

-

Container manager: Docker, Docker Compose, Kubernetes.

-

API Gateway: NGINX.

-

AmazonS3, AmazonEKS, Firebase Cloud Messaging, Amazon RDS.

-

Database: MariaDB, MongoDB.

1.3.2. Đối tượng sử dụng đề tài hướng đến

-

Người mua và người thuê: Các cá nhân và hộ gia đình đang tìm kiếm căn hộ,
nhà ở cho thuê.

-

Người bán và chủ nhà: Chủ sở hữu bất động sản muốn bán hoặc cho thuê bất
động sản của họ



21


-

Môi giới bất động sản: Các chuyên gia môi giới có thể sử dụng ứng dụng để
giúp đỡ cơng việc của họ

1.4. Phạm vi nghiên cứu
1.4.1. Phạm vi môi trường
Tạo ra một hệ thống sàn giao dịch bất động sản tiên tiến, áp dụng công nghệ
blockchain và chatbot. Hệ thống này nhằm mang đến một nền tảng vững chắc và
minh bạch cho các giao dịch bất động sản, bao gồm việc token hóa tài sản, tự động
hóa hợp đồng thơng minh và xác minh danh tính. Dự án này hướng tới việc cải
thiện hiệu quả và tiếp cận của giao dịch bất động sản, đồng thời giảm thiểu chi
phí và tăng cường sự minh bạch trên thị trường.
1.4.2. Phạm vi chức năng
-


Xác thực và ủy quyền người dùng: Để tận dụng nền tảng, người dùng có thể
đăng ký và đăng nhập một cách an tồn. Họ có thể quản lý vai trị và quyền
truy cập của mình dựa trên cấp độ ủy quyền tương ứng.

-

CRUD bất động sản: Người dùng có thể tùy chỉnh, duyệt và thay đổi thơng tin
của danh mục bất động sản. Danh mục này bao gồm thơng tin về loại tài sản,
vị trí, giá cả và các chi tiết liên quan khác.

-

Tìm kiếm và lọc: Nền tảng cho phép người dùng thực hiện tìm kiếm và lọc các
danh mục bất động sản theo nhiều tiêu chí khác nhau, bao gồm vị trí, giá cả,
loại bất động sản và các yếu tố liên quan khác.

-

Tích hợp chuỗi khối: Nền tảng phải được tích hợp với mạng chuỗi khối để
đảm bảo các giao dịch bất động sản an toàn và minh bạch, lưu trữ và quản lý
các giao dịch trên một mạng lưới được chia sẻ giữa các bên khác nhau ,với các
tính năng như smart contract, chữ ký số và hồ sơ giao dịch. Các chức năng
được tích hợp cơng nghệ chuỗi khối như sau:



-

Lưu trữ thơng tin bất động sản.


-

Truy xuất, xác thực quyền sở hữu bất động sản.

-

Đấu giá bất động sản.

22


-

Tích hợp Chatbot: Tích hợp chatbot có thể giúp người dùng tự động hóa quy
trình nhập thơng tin bất động sản và truy xuất thông tin liên quan, những câu
hỏi thường gặp. Điều này có thể làm cho q trình niêm yết bất động sản trở
nên hiệu quả và thân thiện với người dùng hơn, vì người dùng chỉ cần tải lên
ảnh của bất động sản hoặc cung cấp thông tin thơng qua cuộc trị chuyện với
chatbot. Chức năng được tích hợp cơng nghệ chatbot như sau:
-

Nhập liệu thơng tin bất động sản thơng qua hình thức hỏi/ trả lời các thơng
tin.

-

Admin dashboard: Với các tính năng như quản lý người dùng, quản lý danh
mục người dùng, bất động sản, nhân viên, đấu giá, lịch tham quan.


-

Dashboard người dùng: Để quản lý hồ sơ người dùng, mục u thích, tìm
kiếm và các thơng tin liên quan khác.

-

Khả năng tương thích với thiết bị di động: Nền tảng phải được tối ưu hóa cho
các thiết bị di động để đảm bảo người dùng có thể truy cập mọi lúc, mọi nơi.

-

Bảo mật và quyền riêng tư dữ liệu: Nền tảng phải được thiết kế và triển khai
có tính đến bảo mật và quyền riêng tư dữ liệu, với các tính năng như mã hóa,
sao lưu dữ liệu và quản lý sự đồng ý của người dùng.



23


CHƯƠNG 2: KIẾN THỨC NỀN TẢNG
2.1. Blockchain
2.1.1. Blockchain là gì ?
Blockchain đã trở thành thuật ngữ phổ biến không chỉ trong lĩnh vực cơng nghệ thơng
tin mà cịn trong nhiều lĩnh vực khác trong đời sống. Các doanh nghiệp, tập đồn và
thậm chí các tổ chức chính phủ đang tích cực áp dụng cơng nghệ blockchain vào
nhiều khía cạnh khác nhau để tăng cường hiệu quả làm việc.
Mỗi khối trong hệ thống blockchain chứa thông tin về thời gian tạo của nó và liên kết
với khối trước đó thơng qua mã thời gian và dữ liệu giao dịch. Khi dữ liệu được thêm

vào mạng, nó trở thành khơng thể thay đổi. Cấu trúc chuỗi liên kết này giúp ngăn
chặn gian lận và thay đổi dữ liệu.
2.1.2. Cách Blockchain hoạt động
Blockchain là sự kết hợp của 3 công nghệ:
- Để bảo đảm tính minh bạch, tính tồn vẹn và sự riêng tư, công nghệ Blockchain sử
dụng phương pháp mật mã công khai và hàm băm.
- Hệ thống hoạt động dựa trên mạng phân cấp ngang hàng, trong đó mỗi nút được coi
như một máy khách và đồng thời là một máy chủ, lưu trữ một bản sao của ứng dụng.
- Các nguyên tắc trò chơi được áp dụng, yêu cầu tất cả các nút tham gia vào hệ thống
tuân thủ các quy tắc của trò chơi đồng thuận (PoW, PoS, ...) và được động viên bởi
động lực kinh tế.
Hệ thống chuỗi khối có 3 loại chính:
- Cơng khai: Mọi cá nhân đều có quyền truy cập và ghi dữ liệu vào Blockchain. Quá
trình xác thực giao dịch yêu cầu sự tham gia của một số lượng lớn nút trong hệ thống
Blockchain này. Do đó, tấn cơng hệ thống này địi hỏi một chi phí vơ cùng khổng lồ
và khơng khả thi. Ví dụ: Bitcoin, Ethereum và các tiền điện tử khác.
- Riêng tư: Người dùng chỉ có quyền đọc dữ liệu mà khơng được phép ghi vào đó, vì
dữ liệu này thuộc về bên thứ ba và được coi là đáng tin cậy tuyệt đối. Trên hệ thống
Private Blockchain, thời gian xác nhận giao dịch thường nhanh hơn do có ít thiết bị



24


tham gia xác thực giao dịch. Ví dụ, Ripple là một loại Private Blockchain, trong đó
chỉ có 20% số nút có thể gian lận và 80% cịn lại phải đồng thuận.
- Permissioned (hoặc được gọi là Consortium): Đây là một dạng của Private
Blockchain, kết hợp giữa tính cơng khai và riêng tư, với sự bổ sung các tính năng
khác. Ví dụ, các ngân hàng hoặc tổ chức tài chính liên doanh sẽ sử dụng Blockchain

riêng của họ.
2.1.3. Hợp đồng thông minh
Hợp đồng thơng minh là một loạt các chương trình chạy trên mạng blockchain. Chúng
tương đương với các hợp đồng kỹ thuật số được thực hiện bằng cách tuân theo một
tập hợp quy tắc cụ thể. Những quy tắc này đã được xác định trước bằng mã máy tính
và yêu cầu tất cả các nút trong mạng sao chép và thực thi chúng.
Họ có thể đảm bảo rằng hợp đồng chỉ được thực thi khi các điều kiện của nó được
đáp ứng. Đồng thời, việc sử dụng hợp đồng thông minh giúp loại bỏ sự cần thiết của
các bên trung gian, từ đó giảm đáng kể chi phí hoạt động.

Hình 2.1: So sánh giữa hợp đồng giấy và hợp đồng thông
Mỗi chuỗi khối đều sử dụng một
cáchđồng
thựcthông
thi hợp
đồng thông minh riêng biệt, ví dụ
minh.
minh
như trên Cosmos với WASM,... Tuy nhiên, nổi bật nhất trong số đó là Hợp đồng
thơng minh chạy trên máy ảo Ethereum (Ethereum Virtual Machine - EVM).
2.1.4. Token ERC-20 (Token có thể thay thế)
ERC20 là một chuẩn kỹ thuật được dùng để phát hành và triển khai các mã thơng báo
trên mạng Ethereum, mang tính chất thay thế. Tiêu chuẩn này cung cấp một danh
mục các quy tắc mà nhà phát triển phải tuân thủ để đảm bảo hoạt động trôi chảy của
ERC20 trên nền tảng Ethereum.



25



×