Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Công nghệ thông tin Xây dựng ứng dụng chatbot hỗ trợ tư vấn lựa chọn bất động sản...

Tài liệu Xây dựng ứng dụng chatbot hỗ trợ tư vấn lựa chọn bất động sản

.PDF
96
1
138

Mô tả:

ĐẠ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 ĐỒ ÁN 1 XÂY DỰNG ỨNG DỤNG CHATBOT HỖ TRỢ TƯ VẤN LỰA CHỌN BẤT ĐỘNG SẢN BUIDING CHATBOT APPLICATION TO SUPPORT CONSULTING REAL ESTATE SELECTION GIẢNG VIÊN HƯỚNG DẪN Thạc sĩ: Trần Anh Dũng SINH VIÊN THỰC HIỆN Trần Hoàng Gia Bảo – 19521258 Nguyễn Trọng Tính – 19521024 TP. HỒ CHÍ MINH, 2022 ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự Do – Hạnh Phúc CÔNG NGHỆ THÔNG TIN Tp.HCM, ngày 17 tháng 6 năm 2022 ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: Xây dựng ứng dựng chatbot hỗ trợ tư vấn lựa chọn bất động sản Cán bộ hướng dẫn: ThS. Trần Anh Dũng Thời gian thực hiện: Từ ngày 21/02/22 đến ngày 11/06/22 Sinh viên thực hiện: Nguyễn Trọng Tính – 19521024 Trần Hoàng Gia Bảo - 19521258 Nội dung đề tài 1. Lý do chọn đề tài: Bất động sản là một kênh đầu tư hiện đang được rất nhiều người quan tâm. Tuy nhiên không phải nhà đầu tư nào cũng có được quyết định chính xác. Có được lợi nhuận như mình mong muốn. Kể cả việc đưa ra những quyết định đầu tư thì cũng có rất nhiều điều. Cần phải tìm hiểu về các sản phẩm bất động sản, thị trường, thị hiếu… Chính vì thế việc tìm đến những người tư vấn bất động sản là điều mà nhiều người làm. Tư vấn bất động sản là gì Tư vấn chính là bước rất quan trọng khi muốn bán một sản phẩm bất động sản. Tư vấn bất động sản là cung cấp những tài liệu nghiên cứu. Những số liệu thống kê và cung cấp những thông tin cần thiết cho khách hàng. Những thông tin này chính là tài liệu tham khảo để khách hàng đưa ra những quyết định đầu tư. Thông qua việc tư vấn bất động sản thì khách hàng sẽ nhận được rất nhiều lợi ích như: o Hiểu rõ giá trị, tiềm năng của bất động sản mà mình sắp mua hay đầu tư. o Không còn mơ hồ và những thủ tục giấy tờ, hợp đồng giao dịch nhà đất. Văn bản pháp lý để có thể mua được những bất động sản này. o Khi tham khảo ý kiến của người tư vấn bất động sản thì khách hàng còn có thể biết thêm được thị hiếu. Nhu cầu của nhiều khách hàng khác. Điều này cũng ảnh hưởng rất lớn đến các quyết định đầu tư. o Lợi ích tốt nhất mà khách hàng nhận được đó chính là đề xuất mức giá, bất động sản phù hợp với điều kiện ngân sách. Điều tối kỵ các sàn giao dịch bất động sản cần tránh khi nghiên cứu nhu cầu khách hàng chính là sự lạc hậu và thiếu tính cập nhật, tức là những phương thức nghiên cứu khách hàng truyền thống và cũ xưa như Excel hay những dữ liệu đã lạc hậu sẽ không còn hiệu quả. Hiện nay sự phát triển đa dạng của nền tảng công nghệ cũng tạo thành giải pháp hỗ trợ ưu việt cho các sàn giao dịch bất động sản khi nghiên cứu nhu cầu khách hàng, và phần mềm chatbot hỗ trợ tư vấn lựa chọn bất động sản khả năng cập nhật công nghệ liên tục và đổi mới giúp khách hàng giao dịch nghiên cứu hiệu quả hơn, giúp sàn giao dịch phát triển ổn định và bền vững. 2. Mục tiêu: bao gồm 2 mục tiêu chính: 1. Xây dựng chatbot: o FAQ giải đáp nhanh các thắc mắc chung, giảm tối đa thời gian tiêu tốn cần thiết cho việc tư vấn. o Cung cấp thông tin hữu ích, đa dạng nhanh chóng và chính xác o Tư vấn lựa chọn dựa trên thông tin đầu vào của khách hàng o Áp dụng ngôn ngữ tự nhiên để giao tiếp o Tìm kiếm thông tin khu đất dựa trên một khu vực nhất định 2. Xây dựng ứng dụng hỗ trợ chatbot: o Cho phép phía trung tâm quản lý bài viết, hỏi đáp một cách nhanh chóng, dễ dàng o Giới thiệu thông tin về trung tâm, về khóa học… dưới dạng văn bản o Đặt lịch hẹn trực tiếp thông qua ứng dụng o Cung cấp danh sách tin tức từ mới đến cũ o Cung cấp danh sách các câu hỏi thường gặp và giải đáp từ phía trung tâm. 3. Phạm vi: Phạm vi môi trường: Ứng dụng tích hợp trong web bất động sản Phạm vi chức năng: − Đối với chatbot: + Có khả năng trả lời các câu hỏi về các thủ tục một cách chi tiết + Phân tích được nhu cầu và đưa ra tư vấn hợp lý đối với người dùng + Cung cấp liên hệ trực tiếp đến với nhân viên tư vấn khi vấn đề đặt ra ngoài phạm vi của bản thân nó và cập nhập được cách xử lý đối với các trường hợp này + Đăng kí lịch hẹn với nhân viên của web bất động sản + Cung cấp các thông tin về mặt bằng BĐS hiện tại + Chatbot hiểu được tương đối ngôn ngữ tự nhiên − Đối với ứng dụng: + Cung cấp dữ liệu từ nguồn có thật (batdongsan.com.vn) 4. Đối tượng sử dụng: − Tất cả khách hàng muốn tham khảo kỹ hơn về BĐS trên web, có khúc mắc về thủ tục, cách thức…. − Quản trị viên phía trung tâm BĐS muốn quản lý thông tin bài đăng (về trung tâm, về các câu hỏi thường gặp…) đến mọi người truy cập vào web và dùng tính năng chatbot. 5. Phương pháp thực hiện: Phương pháp làm việc: Làm việc nhóm 2 thành viên thông qua cả 2 phương thức online dưới sự hướng dẫn của giảng viên hướng dẫn. Phương pháp nghiên cứu: − Phân tích nhu cầu sử dụng của đối tượng người dùng. − Nghiên cứu tài liệu các công nghệ liên quan. Phương pháp công nghệ: − Quản lý source code thông qua Github − Sử dụng Trello, Google doc,… để quản lý tiến trình và tài liệu 6. Nền tảng công nghệ: − Front-end: ReactJS − Backend: Express/ NodeJS − Database: MongoDB − Process Flow Diagram Chatbot − IDE: Visual Studio Code 7. Kết quả mong đợi: − Chatbot có khả năng phản hồi nhanh và chính xác ở mức tương đối. − Ứng dụng hoạt động ổn định, có thể xử lý thông tin nhanh chóng… 8. Hướng phát triển của đề tài: − Tính năng cập nhật thoại chatbot dành cho người dùng − Tính năng chuyển đổi gói ngôn ngữ − Nâng cấp khả năng xử lý ngôn ngữ tự nhiên của chatbot 9. Kế hoạch làm việc: Thời gian thực hiện từ ngày 13/3/2022 đến ngày kết thúc môn Đồ án 1. Nhóm chia thành 2 giai đoạn cụ thể: Giai đoạn 1: Hoàn thiện giao diện người dùng và các tính năng cơ bản. Gồm 3 sprint với thời gian mỗi sprint kéo dài 2 tuần: Sprint 1: Tìm hiểu công nghệ cho chatbot Sprint 2: Phân tích yêu cầu và chức năng, chuẩn bị tài liệu, chuẩn bị kịch bản cho chatbot Sprint 3: Xây dựng và phát triển ứng dụng với các chức năng cơ bản Sprint Thời gian Công việc dự kiến Sprint 1 13/3/2022 - 27/3/2022 − Tìm hiểu công nghệ − Tìm hiểu các yêu cầu nghiệp vụ của đề tài Sprint 2 28/3/2022 - 11/4/2022 − Phân tích yêu cầu và chức năng của ứng dụng − Viết tài liệu mô tả − Xây dựng bản vẽ − Tìm hiểu craw dữ liệu Sprint 3 12/4/2022 - 26/4/2022 − Xây dựng giao diện web − Xây dựng Chatbot với các thoại cơ bản − Xây dựng các tính năng cơ bản của ứng dụng − Liên kết Chatbot vào ứng dụng Giai đoạn 2: Hoàn thiện các tính năng năng cơ bản và nâng cao của ứng dụng, triển khai và kiểm thử ứng dụng, viết báo cáo. ... Gồm 3 sprint với thời gian mỗi sprint kéo dài 2 tuần: Sprint 4: Hoàn thiện tính năng của ứng dụng Sprint 5: Xây dựng các chức năng mở rộng Sprint 6: Triển khai và viết báo cáo Sprint Thời gian Sprint 4 27/4/2022 - 11/5/2022 Công việc dự kiến − Hoàn thiện giao diện ứng dụng − Tiếp tục hoàn thiện các tính năng của ứng dụng ở giai đoạn 1 − Kiểm thử ứng dụng Sprint 5 − Hoàn thiện các tính năng của 12/5/2022 - 26/5/2022 ứng dụng − Kiểm thử ứng dụng Sprint 6 27/5/2021 - báo cáo cuối − Kiểm thử ứng dụng kỳ − Viết báo cáo 10. Phân công công việc: Công việc Mô tả công việc Công việc chung − Tìm hiểu công nghệ − Phân tích yêu cầu − Lập trình Backend − Lập trình Frontend − Kiểm thử − Chuẩn bị tài liệu, viết báo cáo Công việc cá nhân Nguyễn Trọng Tính Trần Hoàng Gia Bảo − Xây dựng Chatbot − Xây dựng DiaFlow Chatbot − Liên kết Chatbot − Backend − Xử lý ngôn ngữ tự nhiên − Front-end Tp.Hồ Chí Minh, ngày 13 tháng 3 năm 2022 MỤC LỤC Chương 1. Giới thiệu chung ....................................................................... 1 1.1. Lý do chọn đề tài...................................................................... 1 1.2. Tính năng mới khác biệt .......................................................... 1 1.3. Đối tượng nghiên cứu .............................................................. 2 1.4. Phạm vi nghiên cứu ................................................................. 2 Chương 2. Xây dựng hệ thống ................................................................... 3 2.1. Xây dựng kiến trúc hệ thống .................................................... 3 2.1.1. Kiến trúc hệ thống website ...................................................... 3 2.1.2. Kiến trúc hệ thống chatbot ....................................................... 3 2.2. Phân tích thiết kế hệ thống ....................................................... 3 2.2.1. Sơ đồ use-case .......................................................................... 4 2.2.1.1. Danh sách use case ................................................................ 4 2.2.1.2. Đặc tả use case ...................................................................... 5 2.2.2. Sơ đồ dữ liệu .......................................................................... 24 2.2.2.1. Chi tiết sơ đồ ....................................................................... 26 Chương 3. Thiết kế giao diện................................................................... 31 3.1. Danh sách giao diện trang web ................................................. 31 3.1.1. Giao diện trang chủ ............................................................... 31 3.1.2. Giao diện bài đăng Bđs .......................................................... 44 3.1.3. Giao diện chi tiết bài đăng Bđs .............................................. 48 3.1.4. Giao diện danh sách tin tức .................................................... 50 3.1.5. Giao diện chi tiết tin tức ......................................................... 52 3.1.6. Giao diện quản lý tin tức ........................................................ 54 3.1.7. Giao diện bài đăng bđs ........................................................... 57 3.1.8. Giao diện quản lý bài đăng..................................................... 64 3.1.9. Giao diện quản lý thông tin cá nhân ...................................... 65 3.1.10. Giao diện thông tin giới thiệu .............................................. 68 3.1.11. Giao diện quản lý yêu thích ................................................. 71 Chương 4. Công nghệ chatbot ................................................................. 76 4.1. Dialogflow ................................................................................. 77 4.2. Kommunicate ............................................................................ 77 4.3. Sơ đồ kịch bản chatbot .............................................................. 78 4.4. Giao diện chatbot ...................................................................... 79 4.5. Kết quả đạt được ....................................................................... 80 Chương 5. Kết luận, hướng phát triển ..................................................... 80 5.1. Ưu điểm ..................................................................................... 80 5.2. Nhược điểm ............................................................................... 80 5.3. Kết quả đạt được ....................................................................... 81 5.4. Hướng phát triển ....................................................................... 81 Tài liệu tham khảo.................................................................................... 82 CHƯƠNG 1. GIỚI THIỆU CHUNG 1.1. Lý do chọn đề tài Bất Động Sản chưa bao giờ ngành hết “hot” trên thị trường Thế Giới nói chung và Việt Nam nói riêng. Bất Động Sản luôn là điểm đến thu hút rất nhiều nhà đầu tư với mong muốn làm giàu. Ngành đầu tư Bất Động Sản là nơi sản sinh ra nhiều tỷ phú nhất, đây là ngành giúp bạn nhanh chóng kiếm được số tiền khổng lồ nếu bạn có chiến lược tốt. Vì thế ngành Bất động Sản luôn là ngành thu hút được nhiều nhân tài tham gia. Với người bán, Bất động sản hiện đang được nhiều người săn đón, đây là một công cụ kiếm tiền một hiệu quả, bị động mà bạn không cần phải bỏ nhiều công sức. 1.2. Tính năng mới/khác biệt Sau khi tham khảo một số chatbot hỗ trợ bất động sản hiện nay nhóm nhận thấy các vấn đề sau: − Một số chatbot trả lời bằng cách spam tin nhắn gây lost focus người dùng. − Một số chatbot khác lại lựa chọn trả lời toàn bộ nội dung về một chủ đề, trong khi thực tế người dùng không cần nhiều thông tin đến thế. − Chưa có hoặc rất ít công cụ hỗ trợ mô tả trực quan sinh động − Khó khăn hoặc mất thời gian trong việc tìm kiếm thông cần thiết − Mất tập trung vì các lý do khác Chính vì vậy việc tìm kiếm mua bán, thuê bất động sản, là một việc hết sức cần thiết để người bán/cho thuê / mua được thuận lợi. Để đáp ứng những nhu cầu đó, nhóm em quyết định chọn đề tài này, phát triển một ứng dụng cung cấp nhanh chóng thông tin về phía trung tâm và tích hợp chatbot hỗ trợ tự động tư vấn bất động sản. Về phần giao diện: Nhóm quyết định sử dụng tương tác chat từ người dùng là chủ yếu, lấy hiểu ý nghĩa câu nói làm gốc thay vi làm hệ thống button menu chọn phức tạp. Về phần chức năng: − Xây dựng tính năng chatnot − Thêm chức năng gợi ý phong thuỷ 1 1.3. Đố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: − Các công nghệ: + Front-end: Nest/ReactJS + Back-end: H3 / NodeJS. + Database: Postgres - SQL + Dialogflow CX + Facebook Messenger + IDE: Visual Studio Code − Đối tượng trong phạm vị đề tài hướng đến: + Mua bán bất động sản không chuyên. + Dành cho học sinh, sinh viên, người lào động có dự định thuê nhà. 1.4. Phạm vi nghiên cứu Phạm vi môi trường: Web. Phạm vi chức năng: − Đối với chatbot: + Có khả năng cung cấp dữ liệu về bất động sản dựa trên một số yêu cầu của người dùng + Cung có cho người dùng một số tiện ích liên quan đến các vấn đề phong thủy, tâm linh. + Chatbot hiểu được tương đối ngôn ngữ tự nhiên. − Đối với ứng dụng Web: + Hiển thị các khu đất theo dạng danh sách cho người dùng tiện theo dõi. + Tư vấn phong thuỷ dựa trên thông tin người dùng cung cấp Cho phép người dùng đăng tin bđs 2 CHƯƠNG 2. XÂY DỰNG HỆ THỐNG 2.1. Xây dựng kiến trúc hệ thống 2.1.1. Kiến trúc hệ thống Website Hệ thống bao gồm các thành phần sau Web (client): thể hiện giao diện nơi người dùng tương tác với hệ thống. Client giao tiếp với Server thông qua Request/Response để yêu cầu xử lý thông tin và nhận kết quả hiển thị lên cho người dùng. Web (client) được hiện thực hóa sử dụng ReactJS. Server (Nodejs): Nhận và xử lý request từ Client. Có thể tương tác với Database để tương tác dữ liệu và trả kết quả về cho Client thông qua Response Database (MongoDB): lưu trữ toàn bộ dữ liệu của hệ thống. 2.1.2. Kiến trúc hệ thống Chatbot Hệ thống bao gồm các thành phần và tương tác như sau: - Hệ thống xử lý kịch bản: Xử lý hành vi chat/tương tác của người dùng để chọn và xử lý kịch bản phù hợp. - Hệ thống xử lý: Xử lý hành vi chat/tương tác của người dùng để đưa ra các mẫu câu/hành động phù hợp. - Dialogflow ES: Xử lý ngôn ngữ tự nhiên của người dùng để đưa ra các thông tin phù hợp đến hệ thống xử lý kịch bản. - Database (MongoDB): Chatbot sẽ kết nối trực tiếp với dữ liệu của Website (để tìm kiếm BĐS, tra cứu thông tin…). - Đối với các hành động đã được phân tích cần lấy dữ liệu từ database thì hệ thống xử lý sẽ phân tích dữ liệu từ database và sẽ thông báo có những dữ liệu phù hợp cho người dùng. - Đối với các hành động đã được phân tích cần xử lý phân tích ngôn ngữ tự nhiên thì hệ thống xử lý thông qua Dialogflow ES. Sau đó, dựa vào kết quả Dialogflow ES trả về sẽ chọn kịch bản phù hợp để đưa đến hệ thống xử lý kịch bản và trả về những thông tin cần thiết cho người dùng. 3 2.2. Phân tích thiết kế hệ thống 2.2.1. Sơ đồ use case 2.2.1.1. Danh sách use-case Hình 2.2.1.1-1. Sơ đồ use-case cho user 4 Hình 2.2.1.1-2. Sơ đồ use-case cho Admin 2.2.1.2. Đặc tả use-case a. Đặc tả use case Đăng nhập Tên use case Đăng nhập Mục đích Đăng nhập vào tài khoản Người dùng User / Admin Điều kiện kích hoạt Người dùng nhấn vào nút đăng nhập trên header Điều kiện trước Có tài khoản, mật khẩu trước đó hoặc có tài khoản google hoặc có tài khoản facebook Điều kiện Di chuyển vào trang home đồng thời thay đổi thanh header 5 sau Luồng sự kiện chính B1: Chọn nút Đăng nhập trên header B2: Hệ thống hiển thị popup đăng nhập B3: Người dùng nhập email và password của tài khoản B4: Người dùng nhấn nút “Đăng nhập”. B5: Hệ thống kiểm tra định dạng các thông tin đã nhập. Nếu sai, thông báo lỗi và quay lại bước 3. B6: Hệ thống di chuyển vào trang home và cập nhật lại header Luồng sự kiện phụ * Lưu mật khẩu: B1: Chọn nút Đăng nhập trên header B2: Hệ thống hiển thị popup đăng nhập B3: Người dùng nhập email và password của tài khoản B4: Người dùng nhấn vào checkbox “Nhớ tài khoản” . B5: Người dùng nhấn nút “Đăng nhập”. B6: Hệ thống kiểm tra định dạng các thông tin đã nhập. Nếu sai, thông báo lỗi và quay lại bước 3. B7: Hệ thống sẽ lưu tài khoản và mật khẩu vào cookie trong phiên hoạt động và hiển thị khi người dùng sử dụng chức năng đăng nhập. B8: Hệ thống di chuyển vào trang home và cập nhật lại header * Đăng nhập bằng Google: B1: Chọn nút Đăng nhập trên header B2: Hệ thống hiển thị popup đăng nhập B3: Chọn nút Google để tiến hành đăng nhập B4: Hệ thống hiển thị danh sách tài khoản Google đang đăng nhập trong trình duyệt, chọn một tài khoản B5: Hệ thống di chuyển vào trang home và cập nhật lại header * Đăng nhập bằng Facebook: B1: Chọn nút Đăng nhập trên header B2: Hệ thống hiển thị popup đăng nhập B3: Chọn nút Facebook để tiến hành đăng nhập B4: Hệ thống hiển thị tài khoản Facebook đang đăng nhập trong trình duyệt, chọn “Tiếp tục” 6 B5: Hệ thống di chuyển vào trang home và cập nhật lại header Các ngoại lệ - Kích hoạt sự kiện khác Không Nhập thiếu dữ liệu: Hiển thị thông báo yêu cầu nhập đầy đủ Email sai định dạng: Hiển thị thông báo nhập sai định dạng email Sai thông tin: Thông báo sai email hoặc mật khẩu b. Đặc tả use case Đổi mật khẩu Tên use case Đổi mật khẩu Mục đích Đổi mật khẩu tài khoản Người dùng User / Admin Điều kiện kích hoạt Người dùng chọn tab Thay đổi mật khẩu ở trong dropdown bên cạnh ảnh đại diện người dùng ở giao diện trang chủ Điều kiện trước Đã đăng nhập vào trang chủ thành công Điều kiện sau Người dùng đổi mật khẩu tài khoản thành công Luồng sự kiện chính B1: Chọn tab Thay đổi mật khẩu ở trong dropdown bên cạnh ảnh đại diện người dùng B2: Hệ thống mở tính năng đổi mật khẩu trong trang Quản lý người dùng. B3: Người dùng nhập mật khẩu hiện tại, mật khẩu mới. B4: Người dùng chọn nút “Lưu”. B5: Hệ thống kiểm tra định dạng các thông tin mật khẩu đã nhập và các trường bắt buộc. B6: Hệ thống kiểm tra mật khẩu hiện tại xem có trùng với mật khẩu tài khoản đó trong cơ sở dữ liệu hay không. 7 B7: Thông báo đổi mật khẩu tài khoản thành công và cập nhật mật khẩu mới của tài khoản đó trong cơ sở dữ liệu. Luồng sự kiện phụ * Không đăng ký: Ở giao diện đổi mật khẩu trong trang Quản lý người dùng, chọn nút “Hủy” để quay lại trạng thái trước đó. * Đổi mật khẩu trước khi đăng nhập (User): B1: Người dùng ở giao diện trang chủ và chưa đăng nhập. B2: Người dùng chọn nút “Đăng nhập”. B3: Người dùng chọn nút “Quên mật khẩu”. B4: Người dùng nhập email tài khoản muốn đổi mật khẩu. B5: Người dùng chọn nút “Quên mật khẩu”. B6: Hệ thống kiểm tra định dạng email đã nhập. Nếu sai, thông báo lỗi và quay lại bước 4. B7: Hệ thống gửi mail đến email đã nhập. B8: Người dùng chọn nút “Đổi mật khẩu” trong mail. B9: Hệ thống kiểm tra, nếu còn trong thời hạn thì chuyển đến bước 10. Nếu không thì chuyển đến trang link đã hết hạn và kết thúc. B10: Tương tự như luồng sự kiện chính đổi mật khẩu ở trang quản lý người dùng từ bước 3 đến bước 7. Các ngoại lệ - Thiếu thông tin hoặc sai định dạng thông tin: Hệ thống thông báo lỗi và yêu cầu nhập lại thông tin. - Không trùng với mật khẩu hiện tại: Hệ thống thông báo lỗi và yêu cầu nhập lại mật khẩu hiện tại. Kích hoạt sự kiện khác Không c. Đặc tả use case Quên mật khẩu Tên use case Quên mật khẩu Mục đích Nhằm giải quyết vấn đề cho người dùng quên mật khẩu Người dùng User / Admin Điều kiện kích hoạt Người dùng chọn nút “Quên mật khẩu” trong popup đăng nhập 8 Điều kiện trước Có tài khoản, mật khẩu trước đó Điều kiện sau Người dùng sẽ thay đổi mật khẩu thành công và tiến hành đăng nhập bình thường Luồng sự kiện chính B1: Chọn nút Đăng nhập trên header B2: Hệ thống hiển thị popup đăng nhập B3: Nhấn vào nút “Quên mật khẩu” B4: Hệ thống hiển thị popup cho phép người dùng nhập email đã đăng ký trước đó B5: Hệ thống xác thực tài khoản email của người dùng, nếu sai quay lại bước 4 B6: Hệ thống tiến hành gửi mail có chứa đường link dẫn đến trang thay đổi mật khẩu và thông báo gửi mail thành công B7: Người dùng kiểm tra mail, nhấp vào đường link chuyển đến trang thay đổi mật khẩu. B8: Người dùng nhập mật khẩu mới và xác nhận mật khẩu mới B9: Hệ thống kiểm tra mật khẩu, nếu sai hiển thị thông báo và quay lại bước 8 B10: Người dùng tiến hành đăng nhập với mật khẩu mới Luồng sự kiện phụ Các ngoại lệ Nhập sai, thiếu thông tin: Hệ thống hiển thị thông báo Kích hoạt sự kiện khác Không d. Đặc tả use case Đăng ký 9 Tên use case Đăng ký Mục đích Tạo một tài khoản mới Người dùng Guest Điều kiện kích hoạt Người dùng chọn nút đăng ký trên giao diện trang chủ web Điều kiện trước Không Điều kiện sau Người dùng tạo một tài khoản mới thành công nhưng email đăng ký sẽ chưa được xác thực Luồng sự kiện chính B1: Người dùng truy cập vào trang web và đang ở giao diện trang chủ B2: Người dùng chọn nút “Đăng ký” B3: Hệ thống hiển thị pop up Đăng ký B4: Người dùng nhập thông tin để tạo tài khoản: email, mật khẩu, họ tên, cmnd, vv… B5: Người dùng chọn nút “Đăng ký” B6: Hệ thống kiểm tra định dạng các thông tin đã nhập và các trường bắt buộc. B7: Hệ thống kiểm tra các giá trị email, cmnd, số tài khoản có trùng với tài khoản nào trước đó hay chưa. B8: Thông báo đăng ký tài khoản thành công và lưu thông tin vào cơ sở dữ liệu. Luồng sự kiện phụ * Không đăng ký: Chọn “Đăng nhập” để đến màn hình Đăng nhập. Các ngoại lệ - Sai định dạng hoặc thiếu thông tin: Hệ thống thông báo lỗi và yêu cầu nhập lại. - Trùng email hoặc trùng cmnd hoặc trùng số tài khoản: Hệ thống thông báo lỗi và yêu cầu nhập lại phần thông tin bị trùng. 10
- Xem thêm -

Tài liệu liên quan