1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Công nghệ phần mềm: Ứng dụng hỗ trợ đánh giá và tư vấn lựa chọn bất động sản bằng chatbox

137 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng dụng hỗ trợ đánh giá và tư vấn lựa chọn bất động sản bằng chatbot
Tác giả Nguyen Dzoan Hoang Khanh Duy
Người hướng dẫn TS. Do Thi Thanh Tuyen, TS. Nguyen Trinh Dong
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Công nghệ phần mềm
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2021
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 137
Dung lượng 60,26 MB

Nội dung

Nhưng với thực trạng thông tin hiện nay, rất nhiều website chia sẻ về thông tin bat động sản một cách tràn lan khiến người dùng hoang mang về thông tin loại hình dịch vụ mà họ cần song s

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HỌC CÔNG NGHỆ THONG TIN

KHOA CONG NGHE PHAN MEM

NGUYEN DZOAN HOANG KHANH DUY

KHOA LUAN TOT NGHIEP

XÂY DUNG UNG DỤNG ĐÁNH GIA VA TU VAN

HO TRỢ LỰA CHON BAT DONG SAN BANG

CHATBOT

Build application for support evaluation and consulting real

estate selection by chatbot

KỸ SU NGÀNH CÔNG NGHỆ PHAN MEM

TP HÒ CHÍ MINH, 2021

Trang 2

ĐẠ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

NGUYEN DZOAN HOANG KHÁNH DUY- 16520292

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

UNG DỤNG HO TRỢ DANH GIA VA TU VAN LUA

CHON BAT DONG SAN BANG CHATBOT

BUILD APPLICATION FOR SUPPORT EVALUATION AND CONSULTING REAL ESTATE SELECTION BY CHATBOT

KY SU NGANH CONG NGHE PHAN MEM

GIANG VIEN HUONG DAN

TS DO THỊ THANH TUYEN

TS NGUYEN TRINH DONG

TP HO CHi MINH, 2021

Trang 3

DANH SÁCH HỘI ĐÒNG BẢO VỆ KHÓA LUẬN

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.

— e cece ee eeeeeeeeeeeteeeeeeseaaeeeeeees — Chủ tịch.

PA — eee ee nee eec ee eceeneeeeaeeaeeeeaeeeeeegs — Thu ky.

Bo lee ee — Ủy viên

4 ›

Trang 4

ĐẠI HỌC QUOC GIA TP HO CHÍMINH CONG HOA XÃ HỘI CHỦ NGHĨA VIET NAM

TRƯỜNG ĐẠI HỌC Độc Lập — Tự Do — Hanh Phúc CÔNG NGHỆ THÔNG TIN

TP HCM ngày tháng năm 2021

NHAN XÉT KHOA LUẬN TOT NGHIỆP

(CUA CÁN BO HƯỚNG DAN)

Tên khoá luận:

UNG DUNG HO TRỢ ĐÁNH GIÁ VA TƯ VAN LỰA CHỌN BAT DONG

SAN BANG CHATBOT

Nhóm sinh viên thực hiện: Cán bộ hướng dẫn:

Nguyễn Dzoãn Hoàng 16520292 TS Nguyễn Trịnh Đông Khánh Duy TS Đỗ Thị Thanh Tuyền

Đánh giá Khóa luận

1 Về cuôn báo cáo:

Số trang _ Số chương _

Số bang số liệu " Số hình vẽ "

Số tài liệu thamkhảo | Sản phẩm "

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:

Trang 5

Điểm từng sinh viên:

Nguyễn Dzoãn Hoàng Khánh Duy: /10

Người nhận xét

(Ký tên và ghi rõ họ tên)

Trang 6

ĐẠI HỌC QUOC GIA TP HO CHÍMINH CONG HOA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Tên khoá luận:

ỨNG DỤNG HỖ TRỢ ĐÁNH GIÁ VÀ TƯ VẤN LỰA CHỌN BÁT ĐỘNG

SAN BANG CHATBOT

Nhóm sinh viên thực hiện: Cán bộ phản biện:

Nguyễn Dzoãn Hoàng 16520292

Khánh Duy

Đánh giá Khóa luận

1 Về cuốn báo cáo:

Số trang Số chương

Số bảng số liệu Số hình vẽ

Số tài liệu tham khảo Sản phẩm

Một số nhận xét về hình thức cuốn báo cáo:

Trang 7

2 Về nội dung nghiên cứu:

4 Về thái độ làm việc của sinh viên:

Điểm từng sinh viên:

Nguyễn Dzoan Hoàng Khánh Duy: ⁄7Ø

Người nhận xét (Ký tên và ghi rõ họ tên)

Trang 8

LỜI CẢM ƠN

Trong suốt những năm theo học tại khoa Công nghệ phần mềm trường Đại học Công nghệ Thông tin Em đã tìm tòi và được trang bị rất nhiều các kiến thức

cơ bản việc sử dụng công nghệ và cốt lõi trong lập trình cũng như những kỹ

năng thực tế để có thể hoàn thành Khóa luận tốt nghiệp của mình.

Chúng em xin gửi lời cảm ơn chân thành đến TS Đỗ Thị Thanh Tuyển, TS.

Nguyễn Trịnh Đông và đặc biệt là ThS Trần Anh Dũng đã giúp đỡ em một

cách nhiệt tình Qua những lời gợi ý đó em có thẻ tiếp tục nghiên cứu công nghệ cũng như lên ý tưởng để hoàn thành luận văn tốt nghiệp của mình.

Em xin gửi lòng biết ơn sâu sắc đến gia đình đã tạo mọi điều kiện về vật chat, tỉnh thần, động viên đề hỗ trợ em trong khóa luận trong suốt thời gian qua.

Cuối cùng em xin gửi lời chào đến những người bạn đã giúp đỡ em thực hiện khóa luận cũng như trong suốt những thời gian đã cùng đồng hành trong những

cuộc vui cũng như thời gian nghiên cứu, học tập cùng nhau và đã có những giây

phút vui vẻ, hạnh phúc của một thời sinh viên đàng nhớ.

Trong quá trình làm khóa luận này chúng em không tránh khỏi được những

sai sót, rat mong quý thay cô sẽ chỉ ra những lỗi sai dé em có thé rút được kinh nghiệm cho chính bản thân mình đề tránh những lỗi lầm nghiêm trọng hơn sau

này.

Em xin chân thành cảm ơn Xin gửi tới mọi người lời chúc sức khỏe tốt đẹp

nhất và có được nhiều niềm vui cũng như hạnh phúc trong cuộc sống về mặt

sự nghiệp, gia đình và trong các mối quan hệ.

TP Hồ Chí Minh, tháng 1 năm 2021

Sinh viên 1

(Ký tên và ghi rõ họ tên)

Trang 9

ĐẠI HỌC QUOC GIA TP HO CHÍMINH CONG HOA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TRƯỜNG ĐẠI HỌC Độc Lập — Tự Do — Hạnh Phúc

CÔNG NGHỆ THÔNG TIN

TP HCM, ngày tháng năm 2021

DE CUONG CHI TIẾT

TEN DE TAI: UNG DUNG HO TRO DANH GIA VA TU VAN LUA CHON BAT DONG SAN BANG CHATBOT

TEN DE TAI ( TEN TIENG ANH ): BUILD APPLICATION TO

SUPPORT EVALUATION AND CONSULTING REAL ESTATE SELECTION BY CHATBOT

Cán bộ hướng dẫn: TS Đỗ Thi Thanh Tuyền TS Nguyễn Trinh Đông

Thời gian thực hiện: Từ ngày 01/03/2021 đến ngày 27/06/2021

Sinh viên thực hiện:

1 Nguyễn Dzoãn Hoàng Khánh Duy- 16520292

Nội dung đề tài:

¢ _ Giới thiệu:

- Hiện nay công nghệ thông tin đang phát triển mạnh mẽ và ngày càng

phổ biến, tác động đến mọi mặt của xã hội Đồng thời nhu cầu nhà

ở chỗ sinh hoạt là nhu cầu cấp thiết hàng ngày của con người, đặc biệt là thời nay, khi ai cũng muốn có một căn phòng riêng dé tiện

sinh sống Nắm bắt được xu thế này, các công ty Nhưng việc tiếp cận một trang thông tin có nhanh chóng có thé là một van dé lớn

Trang 10

- Doanh nghiệp, tô chức, cá nhân nói chung hiện nay đã bắt đầu triển

khai công nghệ thông tin vào việc thu thập, chia sẻ thông tin nhà đất

giúp cho mọi người dé dàng tìm kiếm nơi ở phù hợp và nhanh chóng.

Nhưng với thực trạng thông tin hiện nay, rất nhiều website chia sẻ

về thông tin bat động sản một cách tràn lan khiến người dùng hoang

mang về thông tin loại hình dịch vụ mà họ cần song song đó là những mối lo về tài chính và những thông tin không đúng sự thật.

e Lý do chọn đề tài:

- Mong muốn tạo ra một ứng dụng giúp cho doanh nghiệp hoặc cá

nhân có thé đăng bài và chia sẻ thông tin bat động sản cho minh.

Khách hàng cũng có thể tìm được thông tin bất động sản phù hợp

với nhu câu của bản thân

- Việc quá nhiều thông tin cũng làm cho người ding trở nên rối loạn

và không biết chọn lựa loại thông tin cho phù hợp => giải pháp cần

có một trợ lý ảo hỗ trợ để tư vấn cho khách hàng.

- _ Nhận thấy được những hạn chế của việc quan lý thông tin buôn bán

bất động sản qua những từ giấy phát ngoài đường, em đã thực hiện

đề tài thiết kế Website thu thập và chia sẻ thông tin bất động sản

đồng thời tích hợp chatbot đề giúp cho mọi người thuận tiện trong

việc tìm kiếm thông tin bất động sản hơn.

- Nhóm đã tham khảo các trang tin tức (batdongsan.com.vn,

propzy.vn) và nhận thấy rằng các trang trên đều chưa có tích hợp chatbot cho phần mềm của mình, vẫn còn sử dụng biện pháp tư vấn

Trang 11

thông qua Messenger hoặc thông qua ứng dụng tin nhắn online trên

trang Vậy vẫn đề đặt ra khi khách hàng tìm kiếm vào những khung ngoài giờ hành chính nhưng vẫn cần sự tư van thi sẽ không có nhân

viên liên hệ trực tiếp những thông tin đó cho người dùng.

Ngoài ra, việc tạo ra chatbot có tích hợp những câu trả lời có sẵn giúp cho nhân viên liên hệ trực tiếp có thé tạo ra những câu hỏi hoặc những câu trả lời cơ bản để người dùng có thể nhận nhanh những

câu trả lời đó mà không cần tư vấn.

Vậy có sự tham gia của chatbot thì người dùng lẫn doanh nghiệp có

thể tiết kiệm được thời gian trao đổi thông tin Khách hàng cũng

nhận được lượng thông tin chính xác mà không phải tốn thời gian

dé chờ đợi người từ van.

Xây dựng một ứng dụng hỗ trợ, tư vấn cho người dung tìm được các

bất động sản dựa vào địa điểm một cách nhanh chóng.

Tìm hiểu và học hỏi công nghệ mới và áp dụng lại vào đề tài.

Tạo ra ứng dụng có giao diện thân thiện với người ding, dé dang thao tác chỉnh sửa các thông tin cần thiết.

Phát triển ứng dụng có tính thực tiễn cao dé có thể triển khai vào

thực tế.

Trang 12

- _ Dựa trên nền tảng lý thuyết đã được giảng viên tư van và đề cử, kết

hợp với những công nghệ, hy vọng có thể xây dựng được một sản

phẩm có kết quả tốt đạt những tiêu chí ban đầu đã đề ra và mong

-_ Khách hàng vừa vào trang đang cần tư vấn nhanh về thông tin cơ

bản về bất động sản, và cần gợi ý tìm kiếm thông tin phù hợp cho

mình

¢ Tinh mới/ khác biệt về chức năng:

- Xây dựng chatbot để cung cấp thông tin bat động sản cho khách

hàng đề đưa ra lựa chọn thích hợp.

- Người dùng có thé quan lý thông tin cá nhân và thanh toán tại

website.

- Tìm kiếm và lọc thông tin cho website sử dụng bat động sản.

- Chia sẻ các tin tức cần thiết cho website.

Trang 13

Chương 1.

Kéo dữ liệu từ trang batdongsan.com, prozy dé in các thông tin

bài viết trên website.

Xây dựng và tích hợp chatbot cho website bắt động sản đã xây

dựng dựa vào hệ thống đề cử cho người dùng thông tin cần

thiết.

Chức năng người dùng có thể tự quản lý thông tin cá nhân

Tích hợp thanh toán Paypal đề thực hiện chức năng nạp tiền đề thanh toán cho mỗi lần đăng bài

Xây dựng API bằng Laravel để xây dựng backend cho website

Sử dụng MySQL database để lưu trữ dữ liệu vận hành của

website

Nextjs sử dụng dé xây dựng giao diện của trang

Xây dựng chatbot bằng Dialogflow để tư van người dùng lựa

chọn loại bat động sản cho phù hợp Dùng Scrapy dé cào dữ liệu cho website.

Ngoài ra còn tích hợp với dịch vụ của Paypal đề tiễn hành thanh toán để đăng bài viết lên website

e Nén táng công nghệ:

- Front-end: Nextjs

- Back-end: Laravel

- Database: MySQL

Trang 14

Cao đữ liệu: Thư viện Goutte của Laravel

Dialogflow

IDE: Visual Studio Code

Kết quả mong đợi:

Xây dựng website có đầy đủ chức năng cơ bản tìm kiếm thông tin,

xem thông tin chỉ tiết và quản lý thông tin cá nhân của người dùng Kéo được dữ liệu từ các nguồn trang tin tức bất động sản có uy tín

dé hiền thị liên website, cho người dùng tìm hiểu và biết thêm thông

tin về bat động sản.

Xây dựng được chatbot có chức năng gợi ý và cung cấp thông tin

bất động sản cần thiết cho người dùng.

Các tiêu chí khác:

Xây dựng ứng dụng có giao diện đẹp dé khách hàng dé tương tác

khi ghé vào website sử dụng.

Đối với khách hàng có thé cập nhật, thêm xóa sửa đổi thông tin cá nhân và nạp tiền để đăng bài viết của mình Và đăng tin tức bài

viết của mình lên trang chủ.

Chức năng bình luận trên website.

Thiết kế UI/UX phù hợp dé khách hang có thể chuyền màn hình

và thao tác một cách nhanh nhất và thuận tiện nhất,

Sử dung Crawl kéo các bài viết từ các trang thông tin bat động sản

có uy tín đưa về web đề khách hàng tiện lợi trong việc đọc tin tức

về bất động sản

Kế hoạch thực hiện: (thời gian thực hiện trong 18 tuần)

STT Công việc Thời gian thực hiện

Trang 15

Phase 1: Tìm hiểu và xây dựng ứng dụng

web gồm những chức năng cơ bán

backend và frontend và kết nối cơ sở dữ

10 tuần

liệu

1 Sprint 1: Tim hiéu vé Nextjs + Tuan 1 > 3 ( 01/03/2021 —

Laravel + MySQL 21/03/2021 )

2 Sprint 2: Xây dựng giao diện Tuần 4— 7 (22/03/2021 —

website sử dung NextJS 11/04/2021)

; Sprint 3: Xây dựng Backend băng Tuần 8— 10 (12/04/2021 —

Laravel và kêt nôi co sở dữ liệu sử 02/05/2021 )

dụng MySQL

Phase 2: Tìm hiểu Scrapy và kéo dữ liệu

từ các website tham khảo bên ngoài và đổ

dữ liệu lên website

2 tuần

Sprint 4: Kéo dữ liệu từ website đồ Tuần 11 (03/05/2021 —

4

dữ liệu lên 09/05/2021)

Sprint 5: Xây dựng giao diện cho

5 chatbot với Reactjs, kéo đữ liệu tir | Tuần 12

các website và thực hiện phân tích,

thực hiện template cho chatbot

(10/05/2021 — 16/05/2021)

Phase 3: Tìm hiểu và tích hợp chatbot hỗ

trợ đánh giá thông tin của một bat động 4 tuần

sản

6 Sprint 6: Tìm hiểu Dialogflow và Tuân l3

tìm cách tích hợp vào website (17/05/2021 — 23/05/2021)

7 Sprint 7: Xây dựng giao diện cho Tuân 14-— 16 (24/05/2021 —

chatbot với Reactjs, kéo dé liệu từ | 13/06/2021)

Trang 16

các website và thực hiện phân tích,

thực hiện template cho chatbot

Phase 4: Kiểm thử, đánh giá sản phẩm và

viết báo cáo

Trang 17

Mục lục

TÓM TAT KHÓA LUẬN -2222222222222cttttEE11 irirriie 1

Chương 1 GIỚI THIỆU CHUNG -222222c++2222222vcczr+rrrrrx 2 1.1 Lý do chọn để tài -cc:-+-2222222222+22222221112 222221 rrtrrrrkrrrrrrrrrrri 2

1.2 Tính năng mới/ khác biỆ( + St SE ‡E‡EvEeEekerEkskrkrkrkrrrrrerree 3

1.3 Đối tượng nghiên cứu :222+++222++++tE2ES++tttEESErrtrrkrrrrrrrkrrrrrrr 3

1.4 Phạm vi nghiên CỨU ¿- - + St kề TH 001220 1 run 3

1.5 Khảo sat các trang liÊn QUan: +65 St grrưy 4

1.51 — Giới thiệu: S2 HH are 4

1.5.2 Khảo sát trang prOpZy.VN: -ccccStetrtetieterrerirrrrerrree 4

1.5.3 Khảo sat trang batdongsan.COm.Vn -cs+c++cscsrereerre 5

Chuong2 KIEN THỨC NEN TẢNG 2 ©2222¿+2222+2zt22EEEerrrrrrserrrrr 7 2.1 Tổng quan về mô hình MVC z£22V2222++++2222222+z+rrtrtrrrrrvsee 7

2.1.1 Khái niệm + che 7

2.1.2 Cấu trúc mô hình MVC

2.1.3 Tại sao dùng mô hình MVC 5S re, 8

2.2 Tổng quan về ReactJS

2.2.1 Giới thiệu Ă Serieiehirrrerererre 9

2.2.2 Ưu nhược điểm của Reactjs

2.4 Laravel.

2.5 MySQL à.oo 2g 2nHnnH00 011.11 14

Trang 18

Chương 3 TIM HIẾU VÀ LỰA CHON CÔNG NGHỆ UNG DỤNG

CHATBOT 15

3.1 Tìm hiểu về chatbot 22c+£222222222+++t2EEEEESEErrrtrttErkkvrrrrrrrrrrrres 15

3.1.1 Giới thiệu về Chatbot: -2cccc2222+cseccvvrreerrrerrrrrrrvee 15

3.1.2 _ Tính ứng dụng l6

3.1.3 _ Xu hướng phat triỂn cc¿+2222ccseEcEvrrrerrrrererrrrvee 16

3.2 Tìm hiểu về Facebook Messenger

3.3.3 Một số khái niệm cơ bản ccccccrrrrrrrrrrrirrrrrrrrrriee 19

3.4 Áp dụng công nghệ vào chatbot -:-:©22+++2222+++2222S+zrtvrzxecrrrres 20

3.4.1 Facebook Api HH re 20

3.4.2 Facebook Graph Api -c-ccccctrtethrererrrrerererree 20

3.4.3 Nhận dạng thực thể (Name Entity Recognition) 21

3.5 Dịch vụ DialoBfÏOW sáng HH HH ve 23

3.5.1 — Giới thiệu Ăck HH ưey 23

3.5.2 Quá trình Understanding - 5c <5 Scteterrrkekererek 23

3.5.3 Ý định (Intenf) -¿-522222+2222212222211122222112 22211 24 3.5.4 Thực thé (Entitie§) -+<222++t2EEEt2EE1271112211 2211 crreC 26

3.5.5 Chức năng FullfillmenIs ¿+5 +s+xsrtrtetsrrrererekerererre 28

3.5.6 Chức năng InfergTafIOIS + chư 29

Trang 19

Chương 4 XÂY DỰNG HỆ THỒNG -22-25¿22+c2E22x2zxrzrxrrrree 304.1 Xây dựng kiến trúc hệ thống ¿- 22 +¿+2++2E+2EE2EE222127112212221 212221 ee 30

4.1.1 _ Kiến trúc hệ thống Website - 25c se E2 2E ckrkee 304.1.2 _ Kiến trúc hệ thống ChatBoI - 2-52 2ESEESEEE2EE2EzErrerxee 31

4.2 Phân tích thiết kế hệ thống - + 2 2 2+E£+E£EEEEEEEEEEEEEEEEEEEEEErrerreeg 33

4.2.1 — Sơ đồ use case - 2c 2t t2 22222222121 erke 334.2.2 — Sơ đồ lớp 2L 2L 2222122221211 Eerke 444.2.3 Phân tích và thiết kế CSDL .-¿¿-ccccccctccrverrrrrrerrerree 464.2.4 Sơ đồ tuần tự (sequence điagraim), 5c secxeE£E2E2EzErkered 544.2.5 Sơ đồ hoạt động (activity diagram) - 2: s++cz+zx+zxczxczreerxees 58

4.3 Thiết kế giao diện websif€ -¿- 5c s1 2E1211211212111 1111112111 xe 62

4.3.1 Sơ đồ thiết kế giao diện website - se ccrererkerrrrrrerxee 62

4.3.2 _ Danh sách giao diện webSI€ - 3S S+ seiseirsrrsrrsee 62

4.3.3 Mô tả chỉ tiết giao điện website - ¿5c csctExeEEEEE2EeErkrrkee 644.3.4 Mô tả chỉ tiết giao điện chat bot 2: 52©52+2£+EE+2E2ESEEeEErEzrxrrxee 864.4 Sơ đồ kịch bản chatbot cccceecsssssssessssseesssseessseeessneeessneessneecsaneessneesee 994.5 Triển khai phân tích và huấn luyện hệ thống chafbot: - 99

4.5.1 Sơ đồ xây dựng hoạt động chatbot: 5-©5z+cz+cxczxerxzxserxee 99

4.5.2 Phân tích va tạo các Intents cho chatbot: +55 5<s+<++<<s+<s+ 101

4.5.3 Phân tích và tạo các Entities cho chatbot: -<<+ +55 103

Chương 5 KIÊM THU PHAN MÊỀM 2¿©2+22+vcx2zxczzxrrsre 1065.1 Câu hình của máy kiểm thử: - SeEE£EE2EE2E2E2EE2EEEEEEEEEEEEerrrer 1065.2 Kiểm thử giao diỆn: ¿52t SE EE12112112111111111 11111111 106

5.3 Kiểm thử chức năng: ¿5222k 2E2 E2 EEEE7112112711121.E tk crki 107

Trang 20

Chương 6 © KET LUẬN, HƯỚNG PHÁT TRIẺN -5 - 109

6.1 Kết quả dat được :-©2s-22c22x22k22212211271271211221211 211.11 se 109z6 ::ẼẼ 109f8 0n ¡0 1106.5 Hướng phat triỂn -:- ++S2+St+E+EEEEEEEEEEE21211211211217171 111111 y0 110

Trang 21

DANH MỤC HÌNH VẼ

Hinh 2.1 - M6 hinh MVC ố 7 Hirh 2.2 - React]s ccccccccccccsccssceseessecsseeseeesecesecseceseceseceseeseeesesesesseceseeeseseeeeneeeseseseesees 9 Hitth 2.3 oi 7 10 Hình 3.1 - Chatbot Facebook Messenger cceccecssssesesceeceecescesceeeeeeeseeeeaeeaeens 18 Hình 3.2 - Cách hoạt động của Chatbot Facebook Messenger - - 19 Hinh 3.3 - 6v) in 20 Hinh 3.4 S200 in 21 Hinh 3.5 - Giao dién 009)) 0ì Tố e.- 3 22 Hình 3.6 — Cách hoạt động của dialÒÍÏOW - - cà 2 211212 12 11111 tre 23 Hình 3.7 — Training phrases DIalogf[OW - ¿5c 2112 11131 1111111111111 24 Hinh 3.8 Si 01 ố.ố 25

Hình 4.14 - Giao diện đăng ký - - - c 1n 1211 1111111111111 11111111111 E11 1 rên 64

Trang 22

Hình 4.15 - Giao diện đăng nhập - - c2 3 3212111113511 11211 1e rrke 65

Hinh 4.16 - Giao i20 s0 8n e 67

Hình 4.17 - Giao diện lọc và tìm kiếm -c¿¿55+v2cExtttrErtrrrttrrrrrrrrrrrrrrree 69Hình 4.18 - Giao diện đăng bài viẾT 2 22t E2 2112217121121 2111121 crk 71

Hình 4.19 - Giao diện chỉnh sửa bài viẾt - 2s x‡EEEEEEEEEEEEEEEkrrerkerees 73

Hình 4.20 - Giao diện thông tin chi tiết bất động sản 2- 2 2+cz+czxrse2 76Hình 4.21 - Giao diện nạp tiền vào tải khoản - - + s2t+EvEEE2ESEEEESEEEErrxrrrree 78

Hình 4.22 - Giao diện chỉnh sửa thông tin cá nhân - 5 55 + s+sirserserske 79

Hình 4.23 - Giao diện danh sách bat động sản đã đăng 2 ©52+cz+cccce¿ 80Hình 4.24 - Giao diện đổi mật khẩu -. -52:222++222xttEExvrrrtrrrrrrrrrrrrrrrree 82Hình 4.25 - Giao diện thanh tiêu đề ( chưa đăng nhập ), - 2-5222 s2 83Hình 4.26 - Giao diện thanh tiêu đề ( đã đăng nhập ) 2-2 2 s52 z+se2 84Hình 4.27 - Giao diện chatbot bắt đầu eccseescsssescsssesessnesessneeessneeesnnesessneeenneees 86

Hình 4.28 - Giao diện hướng dẫn ¿2 S2 E2E9E£EE£E£EEEEEEEEEEEEEEEEEEEEEEEErrkrkes 87

Hình 4.29 - Giao diện menu chứỨc nang seeeseeeeeeeeeeceseeeeeseeseeseeseseeaeeaeens 88

Hình 4.30 - Giao diện điện danh sách bat động san được quan tâm nhiều nhat 90

Hình 4.31 - Giao diện đăng thông tin lên Website .- - 5+ +2 s++s+sxssxsse2 92 Hình 4.32 - Giao diện tham quan webSIf€ - 2c St *+E + EEverrserrsrrrrrrske 93

Hình 4.33 - Giao diện tham quan WebSIf€ - ¿c2 +3 +12 EEEErrrerrske 94

Hình 4.34 - Giao diện tư van xác định loại hình bat động sản cần tìm 95Hình 4.35 - Giao diện thông tin lọc trong hỗ trợ tư vấn - 2: z+cz+cs+cs¿ 97

Hình 4.36 - Giao diện thông tin lọc thông tin người dùng - : s5 <+<ss+<+2 98

Hình 4.37 - Sơ đồ kịch bản chatbot cs¿- 22c 99Hinh 4.38 - So dé hoat động của server Chatbot ceeccesceesseceseeeeteceseeesseeeeeenses 100

Trang 23

DANH MỤC BANG

;t)0sg 010.80 34 Bang 4.2 - Danh sách Use Cases - 0 2 12 1111111111111 1111111111111 11 11 ke 35 Bang 4.3 - Bảng đặc tả use-case “Đăng kÍ”” c v SH HH net 36

Bảng 4.4 - Bảng đặc tả use-case “Đăng nhập” ác cành 36

Bang 4.5 - Bảng đặc tả use-case “Đăng bài viẾt” -cc- sec nen ggye 37

Bang 4.6 - Bảng đặc tả use-case “Xem thông tin cá nhân” -. -<+-+2 38

Bang 4.7 - Bảng đặc tả use-case “Chỉnh sửa thông tin cá nhân” -‹- 39

Bang 4.8 - Bang đặc tả use-case “Chỉnh sửa thông tin bài viết bất động sản” 39

Bang 4.9 - Bang đặc tả use-case “Tìm kiếm thông tin bất động sản” - 40Bang 4.10 - Bảng đặc tả use-case “Tim kiếm thông tin bat động sản với bộ lọc” 41Bảng 4.11 - Bảng đặc tả use-case “Xem thông tin chỉ tiết bat động sản” 41Bang 4.12 - Bảng đặc tả use-case “Bình luận bài viết bat động sản” - 42Bảng 4.13 - Bảng đặc tả use-case “Nap tiền” -¿- 2: 7x 2xx 2EkEEerkrerkree 43Bang 4.14 - Các lớp của sơ đồ lớp ¿+ ++SE+2E2E19E12E12E2121712111211 21.21 45Bảng 4.15 - Các đối tượng và thuộc tinh của đối tượng - 2-2 s+sz+se2 47

Bang li li na 48 Bảng 4.17 - Bảng “ewalÏ€fS” - - c1 22 112011211111 1111111101111 1118111 11kg kh 48 Bang 4.18 - Bảng “frafnSaCfIOTNS” - Gà HH TH HT HH nh HT nh HH nh nrệt 49 Bang 4.19 - Bảng ‘address WardS” - Án HH ng ng nh nưệt 49 Bang 4.20 - Bảng ‘real_estate cOtmimeIifS” c- cà xxx ng rhg 50 Bang 4.21 - Bang ii 50 Bảng 4.22 - Bang ‘address distrICfS” - 2S 22112112 1115111111111 ke 51 Bang 4.23 - Bang ‘address provinces’ ccccecccesscesssessseeeseeeeseeseeeesseeeeeeeeeessaeensaes 52 Bang 4.24 - Bảng ‘real_estates? oo ee eececeesceeeceseceseceeeeseeeaeceeeaeeeaeeeeeeeeeeeeaeenneas 53

Bang 4.25 - Bang danh sách giao điỆn - - 22c 32213331 *3ESEEEErrirsrrrrrrerrrke 63

Bảng 4.26 - Bảng mô tả thành phan của giao điện đăng ký -: - 64Bang 4.27 - Bảng mô tả thành phần của giao diện đăng nhập -5- 65

Bang 4.28 - Bảng mô tả thành phan của giao diện trang chủ - -s- 68

Trang 24

Bảng 4.29 - Bảng mô tả thành phan của giao điện tìm kiếm nhanh 70Bảng 4.30 - Bảng mô tả thành phan của giao điện đăng bài viết - 73Bảng 4.31 - Bảng mô tả thành phan của giao điện chỉnh sửa bài viết 75Bảng 4.32 - Bảng mô tả thành phần của giao điện chỉ tiết thông tin bất động sản 77

Bang 4.33 - Bang mô tả thành phan của giao diện giới thiệu - 5: 78

Bang 4.34 - Bảng mô tả thành phan của giao diện chỉnh sửa thông tin cá nhân 80Bang 4.35 - Bảng mô tả thành phan xem danh sách bat động san đã đăng 81Bảng 4.36 - Bảng mô tả thành phan của giao điện đổi mật khẩu 82

Bang 4.37 - Bảng mô tả thành phần của giao diện thanh tiêu dé ( chưa đăng nhập )

¬ Ư 83

Bảng 4.38 - Bảng mô tả thành phần của giao diện thanh tiêu đề ( đã đăng nhập ) 85Bang 4.39 - Bảng mô tả thành phan của giao diện chatbot bắt đầu - 86Bang 4.40 - Bảng mô tả thành phan của giao diện hướng dẫn - 87Bang 4.41 - Bảng mô tả thành phan của giao điện menu chức năng 89Bảng 4.42 - Bảng mô tả thành phần của giao diện điện danh sách bất động sản được

quan tâm nhiều nhất 2 ¿25s E92E2EE2EEEEE2E12E12E1571121127151171211211 11111 xe 9]

Bảng 4.43 - Bảng mô tả thành phan của giao diện đăng thông tin lên website 92

Bảng 4.44 - Bảng mô tả thành phan của giao diện danh sách quận trung tâm 93Bang 4.45 - Bảng mô tả thành phan của giao điện tham quan website 94Bảng 4.46 - Bảng mô tả thành phần của giao diện tư vấn xác định loại hình bất động

Bang 4.50 — Bảng giải thích ý nghĩa của các entities trong chat bot 105

Bang 5.1 - Bảng kiểm thử giao diện 2-52 5c S2 EEEEEEEE2E12E12E1 E21 Excrkee 107

Bang 5.2 - Bảng kiểm thử chức năng ¿5-2 SE 2E EEEEEEEEEEEEErrrrreeg 108

Trang 25

DANH MỤC TỪ VIET TAT

Từ viết tắt Từ đầy đủ Giải thích

API Application Programming Interface Giao diện lập trình ứng dung

CSDL, Cơ sở đữ liệu Co so dir liệu cho ứng dụng database

Framework Là một bộ khung đã được viết

san, lập trình viên khi sử dụng

không cần tốn thời gian để cấuhình các chức năng hay tổ chứccác modul cho phù hợp, giúp tối

ưu hóa thời gian thực hiện phần

mềmHTTP HyperText Transfer Protocol Giao thức truyền siêu văn bản

MVC Model-View-Controller Mô hình lập trình

Actors Actor được sử dung dé chỉ người

dùng hoặc một đối tượng nao đó

bên ngoai tương tác với hệ

thống

Usecase Use Case là đối tượng mà người

muốn nhận từ hệ thống hoặccách mà các hệ thống tương tác

với nhau như thê nào

Trang 26

TÓM TẮT KHÓA LUẬN

Khóa luận “XÂY DỰNG UNG DỤNG ĐÁNH GIÁ VÀ TU VAN HỖ TRỢ

LỰA CHỌN BAT DONG SAN BẰNG CHATBOT” gồm 06 chương:

Chương 1: Giới thiệu về đê tai, đưa ra các điêm nôi bật so với các ứng dung khác.

Chương 2: Trình bày các kiến thức nền tảng liên quan đến ứng dụng

Chương 3: Tìm hiểu và trình bày kiến thức liên quan đến Chatbot

Chương 4: Trình bày chỉ tiết quy trình xây dựng hệ thống, từ xác định và phântích yêu cầu bài toán cho đến xây dựng CSDL và xây dựng giao diện ứng

dụng.

Chương 5: Kiểm thử phần mềm đưa ra bảng kiểm thử các chức năng của ứng

dụng

Chương 6: Kết luận hướng phát triển nhằm rút ra được các ưu nhược điểm

của ứng dụng và hướng phát triển trong tương lai

Trang 27

Chương 1 GIỚI THIỆU CHUNG

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

Mong muốn tạo ra một ứng dụng giúp cho doanh nghiệp hoặc cá nhân có

thé đăng bài và chia sẻ thông tin bất động sản cho mình Khách hang cũng

có thê tìm được thông tin bất động sản phù hợp với nhu cầu của bản thân.Việc quá nhiều thông tin cũng làm cho người dùng trở nên rối loạn và khôngbiết chọn lựa loại thông tin cho phù hợp => giải pháp cần có một trợ lý ảo

hỗ trợ dé tư van cho khách hang

Nhận thấy được những hạn chế của việc quản lý thông tin buôn bán bắt độngsản qua những từ giấy phát ngoài đường, em đã thực hiện đề tài thiết kế

Website thu thập và chia sẻ thông tin bất động sản đồng thời tích hợp chatbot

để giúp cho mọi người thuận tiện trong việc tìm kiếm thông tin bất động sản

hơn.

Nhóm đã tham khảo các trang tin tức (batdongsan.com.vn, propzy.vn) và

nhận thấy rằng các trang trên đều chưa có tích hợp chatbot cho phần mềmcủa mình, vẫn còn sử dụng biện pháp tư vấn thông qua Messenger hoặcthông qua ứng dụng tin nhắn online trên trang Vậy vấn đề đặt ra khi kháchhàng tìm kiếm vào những khung ngoài giờ hành chính nhưng vẫn cần sự tưvan thì sẽ không có nhân viên liên hệ trực tiếp những thông tin đó cho người

dùng.

Ngoài ra, việc tạo ra chatbot có tích hợp những câu trả lời có sẵn giúp cho

nhân viên liên hệ trực tiếp có thé tạo ra những câu hỏi hoặc những câu trảlời cơ bản dé người dùng có thé nhận nhanh những câu trả lời đó mà không

cần tư vấn

Vậy có sự tham gia của chatbot thì người dùng lẫn doanh nghiệp có thé tiết

kiệm được thời gian trao đổi thông tin Khách hang cũng nhận được lượng

thông tin chính xác mà không phải tốn thời gian dé chờ đợi người từ vấn

Trang 28

1.3.

1.4.

Tinh năng mới/ khác biệt

Xây dựng chatbot để cung cấp thông tin bất động sản cho khách hàng déđưa ra lựa chọn thích hợp và nhanh chóng nhất

Người dùng có thé quan lý thông tin cá nhân và thanh toán tại website

Tìm kiếm và lọc thông tin cho website sử dụng bất động sản giúp cho ngườidùng có thé lọc thông tin một cách nhanh chóng

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

Khoá luận này hướng đên nghiên cứu các đôi tượng sau:

- Cac công nghệ:

+ Front-end: Nextjs

+ Back-end: Laravel

+ Database: MySQL + Cao dir liệu: Goutte + Chatbot Facebook Messenger + Dialogflow

+ IDE: Visual Studio Code

Đối tượng trong phạm vị đề tài hướng đến: Khách hàng có nhu cầu tìm kiếm

và đăng bán bất động sản cá nhân Khách hàng đang cần nhu cầu tư vấn 24/7

- Trang thông tin về các loại bat động sản tại Tp Hồ Chí Minh

- Tich hợp đăng nhập đăng, đăng kí, bình luận về một bat động san

Trang 29

- _ Hỗ trợ và tư vấn cho người dùng về tìm kiếm bất động sản thông qua

những thông tin cần thiết do bên người dùng cung cấp và tìm hiểu

1.5 Khảo sát các trang liên quan:

1.5.1 Giới thiệu:

- _ Nhóm đã tham khảo hệ thống website bat động sản như

batdongsan.com.vn, propzy.vn/

- Hau hết các website đề chia sẻ thông tin bat động sản, cho phép tìm

kiếm loại hình bất động sản mà người dùng quan tâm, cho phép đăng bàirao bán về bất động sản của người dùng Tuy nhiên cách bồ trí thông

tin,tin tức bat động sản cũng như chi tiết chưa thật sự nồi bật các yếu tố

như giá cả, địa chỉ, diện tích, đặc biệt là lượng hình ảnh thông tin còn

một chiều, không có sự tương tác khiến người dùng Điều đó khiến cho

người dùng sẽ cảm thấy khó khăn trong việc tìm hiểu về vấn đề cần quan

tâm Đề khắc phục, hệ thống sẽ đưa chức năng cải thiện những vấn đề

trên và đặc biệt hơn nữa là thiết kế 1 website mang tính đột phá như mộttrang mang xã hội về bat động sản cho phép người dùng đăng bai, chia

sẻ, nêu quan diém, sở thích về các bat động san

1.5.2 Khảo sát trang propzy.vn:

Mô tả chung:

- _ Thể hiện chỉ tiết cụ thé một loại hình thông tin bất động sản tên loại

hình bất động sản, giá cả, địa chỉ, hình ảnh, phong thủy nội thất, hệ

thống đăng bài rao tin chỉ tiết cụ thể và nhanh chóng, có đội ngũ

kiểm duyệt chất lượng và công cụ lọc tìm kiếm rất mạnh, được đăng

tin miễn phí, tập trung chủ yêu là các thông tin bất động sản trong

TP Hồ Chí Minh

Chức năng nỗi bật:

Trang 30

- Yéu cầu lưu trữ: Hệ thống đáp ứng yêu cau lưu trữ các thông tin

như:

e Thong tin bat động san: địa điểm, diện tích, giá bán, hướng,

thông tin cụ thể.

e Thong tin vé hinh anh: hinh anh chan thật, rõ ràng

e Sắp xếp bất động sản ví dụ như: theo lượt thích, lượt bình luận,

mới nhất.

Ưu điểm:

- _ Giao diện hệ thống gần gũi Đơn giản với dai đa số người dùng,

- mang lại cảm giác thân thiện không rối mắt, hướng người dùng,

tính tương tác cao Dễ dàng nâng cấp khi muốn nâng cao tính năngsẵn có nhờ vào sự hệ thống trong

- viéc xử lý Dễ dàng mở rộng khi ứng dụng được đón nhận rộng rãi

và nhu cầu người dùng tăng lên

Khuyết điểm:

- Chua có chức năng chia sẻ bài viết cụ thể như một bải viết trên

trang mạng xã hội.

- _ Thông tin một chiều, không có tính tương tác của người dùng dé

biêt sản phâm ra sao.

1.5.3 Khảo sát trang batdongsan.com.vn

Mô tả chung:

- Là website giúp mọi người tìm kiếm, xem tin tức, đăng bài chia sẻ

thông tin bất động sản ở Việt Nam Hiện nay, đây cũng là mộtwebsite hàng đầu với lượng tin tức được tìm kiếm nhiều giúp ngườidùng tìm kiếm tất cả thông tin ở về bất động sản ở Việt Nam Hơn

nữa, ở đây còn có đội ngũ chăm sóc khác hàng, luôn sẵn sàng cung

Trang 31

cap thông tin, tình hình mới nhat của các bat động san ma người dùng cân.

Chức năng nỗi bật:

Cho phép người dùng đăng ký / đăng nhập và đăng bài và thu tiền

từ người đăng bải.

Thể hiện rõ thông tin chỉ tiết về một loại hình bất động sản có định:tên loại hình, giá cả, dia chỉ, giá ban, hình ảnh chi tiết, hướng,

thông tin thêm và nội thất.

Đội ngũ chăm sóc khách hang tư van thông tin bat động sản hỗ trợcần thiết chỉ tiết cho người dùng quan tâm qua đó cũng như thủ tục

Trang 32

Chương 2 KIÊN THỨC NEN TANG

2.1.1 Khái niệm

Mô hình MVC là mô hình quen thuộc trong giới lập trình web là viết tắt

của Model — View — Controller, hệ thống sẽ được tô chức tách biệt dé hoạtđộng độc lập dé dang test và tô chức hơn

sau khi xử ly xong sẽ đưa ra dữ liệu phù hợp với người dùng Controller

còn có chức năng kết nối với Model

2.1.2.2 Tang logic dữ liệu — Model

Tang logic dit liệu - Model là bộ phận có chức năng lưu trữ toàn bộ

dữ liệu của một lớp trong ứng dụng Model là cầu nối giữ Controller và

View Model thé hiện dưới hình thức là một cơ sở dữ liệu hoặc một file

XML bình thường Model thé hiện rõ các thao tác với cơ sở đữ liệu nhưcho phép xem, truy xuất, xử ly dữ liệu

Trang 33

2.1.2.3 Tang giao diện — View

Tầng giao diện - View là phần giao diện dành cho người sử dụng cuối.Noi mà lập trình viên có thé lay được thông tin dữ liệu thông qua các các

biểu mẫu (form) hoặc hiền thị giao diện cho người dùng trên website

2.1.3 Tại sao dùng mô hình MVC

MVC đang là mô hình được ứng dụng rất nhiều trong lập trình

Hệ thống MVC phát triển tốt sẽ cho phép phát triển Front-End, Back-End

cùng trên hệ thống một cách độc lập với nhau tức những tài nguyên và cách tô

chức mã nguồn có thé khác nhau và không sử dung chung những thành phan

đó.

Chi cần hiểu rõ quy trình vận hành, nam được các chức năng của từng bộphận thì việc trién khai mô hình MVC tương đối dé dàng

Mô hình MVC có ưu điểm với sự phát triển của ứng dụng như:

- Taco thé dé dang duy trì ứng dụng vì chúng được tách biệt với nhau

- Dau tiên, nhắc tới ưu điểm mô hình MVC thì đó là băng thông

(Bandwidth) nhẹ vì không sử dụng viewstate nên khá tiết kiệm băng thông.

Việc giảm băng thông giúp website hoạt động ồn địng hơn

- _ Kiểm tra đơn giản và dé dàng, kiểm tra lỗi phần mềm trước khi ban

giao lại cho người dùng.

- Một lợi thế chính của MVC là nó tách biệt các phần Model, Controller

và View với nhau.

- Su dụng mô hình MVC chức năng controller có vai trò quan trọng va

tối ưu trên các nền tảng ngôn ngữ khác nhau

- Taco thể dé dàng duy trì ứng dụng vì chúng được tách biệt với nhau

Trang 34

2.2 Tong quan về ReactJS

2.2.1 Giới thiệu

React (Reactjs hay React.js) là một thư viện JavaScript phố biến nhất déxây dựng giao diện người dùng hoặc các thành phần UI Được tạo ra bởi sự

cộng tác giữa Facebook và Instagram Nó được duy trì bởi Facebook và một

cộng đồng các nhà phát triển và công ty cá nhân React có thể được sử dụngnhư một cơ sở đề phát triển các ứng dụng trang đơn hoặc di động Một trongnhững đặc trưng duy nhất của React là việc render dit liệu không những có théthực hiện ở tầng Server mà còn ở tầng Client

2.2.2 Uu nhược điểm của Reactjs

2.1.3.1 Ưu điểm

Dễ dàng sử dụng, tạo được các component nhẹ: React Component

dễ viết hơn vì nó sử dụng JSX, mở rộng cú pháp tùy chọn cho JavaScript

cho phép một lập trình viên có thé kết hop HTML với JavaScript Nhờvào những tính năng có sẵn của Reactjs, lập trình viên có thé phân tích và

tạo ra những component nhỏ

Cộng đồng phát triển lớn mạnh: React rat phổ biến, minh chứng rõ

ràng bởi cộng đông hồ trợ lớn của nó.

Trang 35

Nhiều tiện ích nguồn mở: Tính khả dụng của một loạt các tiện ích

mở rộng do cộng đồng nguồn mở phát triển cho React cung cấp cho lậptrình viên rất nhiều tùy chọn dé xây dựng các giải pháp hoàn chỉnh

Thân thiện với SEO: Hau như các JS Frameworks không thân thiệnvới các tìm kiếm mặc dù đã được cải thiện nhiều nhưng dưới sự hỗ trợ của

các render đữ liệu trả về dưới dạng web page giúp cho SEO chuẩn hơn

Next.js là một framework nhỏ gọn được xây dung từ React, Babel va

Webpack được tạo ra dé giúp lập trình viên tạo ứng dụng web React có tinhnăng SSR (Server Side Render) Như đã biết với React.js chỉ là client-side-

render, nên việc SEO sẽ gặp khó khăn Vi vậy, Next.js giúp xử lý việc có tính

năng SSR rat dé dàng, ngoài ra còn có các tính năng đặc trưng (thừa kế Babel

và Webpack) như:

10

Trang 36

Hot Module Replacement (HMR) — Webpack

Đóng gói bundle và chuyên mã nguồn

Tao chỉ mục (indexing) cho các tập tin trong thư mục pages

Phục vu static files, với Next.js thi không can webserver khac

Ưu điểm:

không cần lo về việc routing và app được render mặc định phía server

Mặc định đã được render phía server

Tự động split code dé load page nhanh hơn

Đơn giản hóa routing phía client (page based)

Môi trường dev với webpack-based hỗ trợ Hot Module Replacement

(HMR)

2.3.3.

Có thé kết hợp với Express hoặc những Node.js HTTP server khác

Dé dàng tùy chỉnh với Babel và cau hình Webpack

Nhược điểm:

Next.js không phải là Back-end; nếu lập trình viêncần xử lí Back-endnhư cơ sở dữ liệu, hệ thống tài khoản, ban cần làm nó ở 1 ứng dụng

tách biệt phía Back-end.

Next vô cùng mạnh mẽ, nhưng nếu dùng nó chỉ dé làm một ứng dụngđơn giản thì là điều không cần thiết

Moi đữ liệu cần phải được tai ở cả 2 phía client và server

Việc chuyển giao từ một ứng dụng phía server sang một ứng dụngNext.js chac chan không nhanh một chút nao, nó còn phụ thuộc vào dự

án của bạn.

2.4 Laravel

2.4.1 Giới thiệu:

11

Trang 37

Laravel là một PHP Framework mã nguồn mở và miễn phí được xây

dựng dựa trên mô hình MVC ( Model — View — Controller ).

Laravel có một hệ thống đóng gói Modular và quản lý phụ thuộc dé

người sử dung có thé dé dàng tổ chức code của mình một cách mạchlạc, Laravel cung cấp nhiều cách khác nhau dé thao tác với cơ sở dit

liệu quan hệ.

Source code của Laravel hiện nay đang được được lưu trữ tại Github.

Ưu điểm:

Ưu điểm đáng kể của Laravel là sử dụng tất cả các tính năng mới của

PHP Các framework khác không tận dụng được điều này Đặc biệtLaravel 5 cũng sở hữu một số tính năng mới nhất do PHP cung cấp,

đặc biệt là trong Namespaces, Interfaces, Overloading, Anonymous

functions va Shorter array syntax.

Laravel framework hỗ trợ các cache backend như Memcached và

Redis out-of-the-box Chúng ta có thé tùy chỉnh nhiều cấu hình cache

Công cụ dòng lệnh Artisan tạo nên một bộ khung source code và quản

ly database một cách hiệu quả Artisan giup tạo các tệp MVC cơ bản va

quản lý tài nguyên của website, và cả việc cấu hình cho chúng

Lợi npm package và bower package bằng cách kết hợp framework

cùng với Gulp va elixir, có ích trong việc chỉnh sửa tài nguyên của

website.

Laravel giúp lập trình viên giảm đáng ké chu kỳ phát triển sản phẩm

vì framework giúp tích hợp nhanh hơn, bên cạnh đó là cộng đồng hỗtrợ rất lớn - Laracasts

Inversion of Control là một phương thức để tạo các đối tượng mới màkhông phải khởi động bat kỳ thư viện bên ngoài nào Nhờ vào tinh

năng này mà chúng ta có thê truy cập các đối tượng này từ bất cứ nơi

12

Trang 38

2.4.4.

nào mà chúng ta mã hóa từ đó không còn gặp khó khăn với các cầu

trúc nguyên khối không linh hoạt

Lập trình viên có thể tạo liên kết đến các route được đặt tên cho nên

khi tạo các liên kết, lập trình viên chỉ cần sử dụng tên của bộ định

tuyến, Laravel sẽ tự động chèn URL chính xác.

Laravel cung cấp một chế độ ActiveRecord rất đơn giản và hiệu quả

dé làm việc với cơ sở dữ liệu Các model mà chúng ta tạo trong MVC

sẽ có bảng tương ứng bên trong cơ sở dữ liệu ngoài ra Laravel còn áp

dụng kỹ thuật ORM trong frame work của mình để tạo nên các mối

quan hệ dé thao tác trên database Các mối quan hệ này là: one-to-one,

many-to-many, has-many-through, many-to-many polymorphic, polymorphic, one-to-many,,.

Nhược điểm:

Một số thành phan trong framework không được thiết kế tốt Ví dụ,

dependency injection đôi khi trở nên phức tạp không cần thiết Các tài

liệu khá nặng, chính điều này bắt người sử dụng phải đọc và hỏi tàiliệu rất nhiều

Laravel không phải là lựa chon cho lập trình viênnghiệp dư Tuy

nhiên, framework vẫn đang được cải thiện rất nhiều, Laravel 5 đãgiảm đáng kề lỗi này

Đây không chi là van dé của Laravel mà là van đề chung của các PHPframework nên lập trình viên khi sử dụng phải có biện pháp đề phòngrủi ro trước khi nâng cấp mobile application/website

Ứng dụng

Laravel được sử dụng dé giải quyết những dự án lớn bởi vì việc đọc

tai liệu rat dé hiéu và sử dụng một cách dê dàng nên rat nhiêu công ty

13

Trang 39

hiện nay đã bat đâu triên khai framework Laravel lên phân mêm đê

phát triển các sản phẩm cho công ty

Laravel hỗ trợ lập trình viên có thể dễ dàng tạo ra được một trang web

đa ngôn ngữ chúng ta có thể truy cập chuỗi các ngôn ngữ khác nhaubăng cách sử dụng trình trợ giúp trans()

cơ sở dit liệu quan hệ Các phát biéu SQL dùng dé truy tìm và cập

nhật dữ liệu trong một cơ sở dữ liệu.

MySQL là một trong những hệ thống quan ly cơ sở dit liệu(CSDL)

mã nguồn mở quan hệ SQL sử dụng trên web phô biến nhất hiện nay

Ưu điểm:

Dễ sử dụng: MySQL là cơ sở dữ liệu tốc độ cao, ôn định, dễ sử dụng

và hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn cáchàm tiện ích rất mạnh

Độ bảo mật cao: MySQL rat thích hợp cho các ứng dụng có truy cậpCSDL trên Internet khi sở hữu nhiều nhiều tính năng bảo mật thậm

chí là ở cấp cao

Đa tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được mongchờ từ một hệ quản trị cơ sở dir liệu quan hệ cả trực tiếp lẫn gián tiếp.Khả năng mở rộng và mạnh mẽ: MySQL có thể xử lý rất nhiều dữ liệu

và hơn thê nữa nó có thé được mở rộng nêu cân thiệt.

14

Trang 40

Chương 3.

CHATBOT

Nhanh chóng: Việc đưa ra một số tiêu chuẩn cho phép MySQL dé làm

việc rất hiệu quả và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi

hơn so với một số hệ quản trị cơ sở đữ liệu quan hệ khác

Dung lượng hạn chế: Nếu database của mình lớn dan lên thì việc truyxuất dữ liệu khá khó khăn, khi đó chúng ta sẽ phải áp dụng nhiều biệnpháp dé tăng tốc độ truy xuất dữ liệu như là chia tải database này ranhiều server, hoặc tạo cache MySQL

TÌM HIẾU VÀ LUA CHỌN CÔNG NGHỆ UNG DUNG

3.1 Tìm hiểu về chatbot

3.1.1. Giới thiệu về Chatbot:

Chatbot là một chương trình kết hợp với trí tuệ nhân tạo (AI) dé tương

tác với con người Công cụ này thay thé cho nhân viên dé tư van trả lời

những gì khách hàng thắc mắc Chatbot giúp cho doanh nghiệp có thé

tư van nhu cầu của khách hàng dựa trên những yêu cầu của họ, kết hợpvới trí tuệ nhân tạo có thể

Chatbot sau khi nhận được đữ liệu hay yêu cầu của người dùng sẽ phântích và đưa ra một ngữ cảnh cụ thé dé người lập trình và máy tinh cóthể hiểu được

15

Ngày đăng: 02/10/2024, 08:36

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN