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

đồ án 1 careon ứng dụng tư vấn sức khỏe

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 (3.12 MB, 72 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN </b>

GIẢNG VIÊN HƯỚNG DẪN: ThS. TRẦN ANH DŨNG SINH VIÊN THỰC HIỆN:

LÝ THANH TÚ ANH - 21521823

<i><b>TP. Hồ Chí Minh, tháng 10 năm 2023</b></i>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM </b>

<b>CÔNG NGHỆ THÔNG TIN </b>

<b>ĐỀ CƯƠNG CHI TIẾT </b>

<b>TÊN ĐỀ TÀI: CareOn – Ứng dụng tư vấn sức khỏe cộng đồng </b>

<b>TÊN ĐỀ TÀI (TIẾNG ANH): CareOn - Community health advice app Cán bộ hướng dẫn: </b>

ThS. Trần Anh Dũng

<b>Thời gian thực hiện: Từ ngày 2/10/2023 đến ngày 30/12/2023 Sinh viên thực hiện: </b>

Lý Thanh Tú Anh – 21521823

<b>Nội dung đề tài: </b>

<b>1. Mục tiêu của đề tài </b>

<b>1.1. Bối cảnh chọn đề tài </b>

Sức khỏe là tài sản quý giá nhất của con người. Tuy nhiên, trong thời đại hiện nay, khi nhịp sống ngày càng bận rộn, áp lực công việc và học tập tăng cao, thì việc chăm sóc sức khỏe đang trở thành một vấn đề nan giải. Nhiều người thường xuyên gặp phải các vấn đề về sức khỏe như mệt mỏi, căng thẳng, đau đầu,... nhưng lại khơng có thời gian hoặc khơng biết cách để tự chăm sóc sức khỏe bản thân. Bên cạnh đó, việc tiếp cận với thơng tin y tế chính thống cũng gặp nhiều khó khăn. Điều này dẫn đến tình trạng nhiều người bệnh tự ý mua thuốc, điều trị sai cách, gây ra những hậu quả nghiêm trọng.

Chính vì vậy, với mục tiêu góp phần nâng cao nhận thức và ý thức chăm sóc sức khỏe, em đã lựa chọn đề tài xây dựng một ứng dụng tư vấn sức khỏe cho cộng đồng, một ý tưởng thiết thực và cần thiết. Ứng dụng này sẽ giúp người dùng tiếp cận được với các thông tin về sức khỏe một cách nhanh chóng và chính xác, đồng thời có thể giải đáp các thắc mắc của người dùng về nhiều vấn đề sức khỏe khác nhau cũng như cung cấp hướng giải quyết các vấn đề đó, từ đó người dùng có thể tự theo dõi và chăm sóc sức khỏe bản thân một cách hiệu quả và nhanh chóng.

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>1.2. Mục đích của đề tài </b>

• Nghiên cứu công cụ DialogFlow, nền tảng chatbot của Google cung cấp khả năng hiểu ngôn ngữ tự nhiên (NLU) và tạo phản hồi tự động để tạo ra chatbot tư vấn sức khỏe người dùng. Chatbot sẽ được đào tạo trên một bộ dữ liệu lớn về các câu hỏi và câu trả lời liên quan đến sức khỏe và các thông tin y tế để phục vụ người

<b>dùng. </b>

• Nghiên cứu các vấn đề xoay quanh sức khỏe để xây dựng một ứng dụng tư vấn sức khỏe hiệu quả, chính xác, chẳng hạn như các bệnh lý thường gặp, các biện pháp phòng bệnh,... Kết quả nghiên cứu sẽ được ứng dụng trong việc xây dựng các tính năng của ứng dụng. • Xây dựng và phát triển ứng dụng trên nền tảng di động, với giao diện thân thiện và dễ sử dụng, đáp ứng nhu cầu tư vấn sức khỏe hay tra cứu thông tin y tế của người dùng ở bất cứ đâu, bất kể thời

<b>gian nào. </b>

<b>1.3. Ý nghĩa của đề tài Về ý nghĩa đối với người dùng: </b>

• Nâng cao nhận thức về sức khỏe, hỗ trợ người dùng trong việc theo

<b>dõi, chăm sóc và bảo vệ sức khỏe của bản thân và gia đình. </b>

• Giúp người dùng tiếp cận được các thơng tin y tế, sức khỏe chính

<b>xác, cụ thể, một cách dễ dàng, nhanh chóng. </b>

• Ứng dụng cung cấp chức năng tư vấn sức khỏe 24/7, giúp người

<b>dùng tiết kiệm thời gian và chi phí đi lại đến các cơ sở y tế. </b>

<b>Về ý nghĩa đối với cá nhân em: </b>

• Đề tài này tạo động lực cho em tìm hiểu và trau dồi những kiến thức mới liên quan đến việc xây dựng chatbot, bởi đây là một công nghệ mới được ứng dụng rộng rãi trong nhiều lĩnh vực, trong đó

<b>có lĩnh vực chăm sóc sức khỏe. </b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

• Việc xây dựng ứng dụng tư vấn sức khỏe cộng đồng cho em cơ hội nghiên cứu các kiến thức về sức khỏe cộng đồng, về các loại bệnh và hướng chữa trị,… giúp em có thêm kiến thức về đời sống,

<b>giúp ích cho cuộc sống của em sau này. </b>

• Đồ án này giúp em có thêm kiến thức và kinh nghiệm thực tế trong việc tham gia dự án phát triển phần mềm, nâng cao kỹ năng lập trình. Kinh nghiệm này sẽ giúp em phát triển và nâng cao giá trị

<b>bản thân cho tương lai. </b>

<b>1.4. Nhiệm vụ của đề tài </b>

<i><b>Ứng dụng tư vấn sức khỏe cộng đồng CareOn: </b></i>

• Chatbot tư vấn sức khỏe • Thư viện tra cứu các loại bệnh • Thư viện video sức khỏe

• Quản lý nhắc nhở cho các hoạt động • Quản lý ghi chú sức khỏe

• Chỉnh sửa thơng tin sức khỏe cá nhân • Đăng ký / Đăng nhập / Đăng xuất • Quên mật khẩu / Đổi mật khẩu

<b>2. Phạm vi nghiên cứu </b>

<i><b>Ứng dụng CareOn được xây dựng với: </b></i>

• Front-end: Flutter • Back-end: Flutter • Database: Firebase

Tìm hiểu về cách xây dựng chatbot có khả năng hiểu ngơn ngữ tự nhiên, tạo phản hồi tự động.

<b>3. Đối tượng nghiên cứu </b>

• Các cơng nghệ xây dựng ứng dụng di động: • Flutter

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

• Đối tượng người dùng:

• Người có nhu cầu chăm sóc sức khỏe.

• Người có nhu cầu tìm kiếm các thơng tin y tế.

<b>4. Phương pháp nghiên cứu </b>

Em đã sử dụng các phương pháp nghiên cứu: • Phương pháp đọc tài liệu.

• Phương pháp phân tích các ứng dụng sức khỏe hiện có. • Phương pháp thực nghiệm.

<b>5. Kết quả dự kiến </b>

Sau khi xác định đề tài và nghiên cứu, tìm hiểu thực tế, em đã xây dựng ý tưởng thiết kế ứng dụng chăm sóc sức khỏe cần đạt được những mục tiêu sau:

<b>5.1. Đối với người dùng </b>

• Sau khi đăng nhập, người dùng có thể sử dụng các tính năng sau: o Sử dụng chatbot để được giải đáp về vấn đề sức khỏe mà bản

thân đang gặp phải, hoặc hỏi về một bệnh lý hoặc thông tin y tế bất kì.

o Truy cập thư viện sức khỏe để tìm đọc thơng tin y tế về các loại bệnh hoặc xem các video hướng dẫn các bài tập thể dục, yoga và các video công thức hướng dẫn nấu các món ăn có lợi cho sức khỏe.

o Theo dõi tình trạng cơ thể của bản thân qua các chỉ số như cân nặng, chiều cao, chỉ số BMI sau khi đã cung cấp các thông tin trong phần hồ sơ.

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

o Ghi chú về cảm giác sức khỏe của họ, triệu chứng, và thuốc đã sử dụng hoặc các thông tin cần nhớ như thông tin bệnh viện, bác sĩ,…

o Cài đặt thông báo về việc nhắc nhở bản thân về các hoạt động liên quan đến sức khỏe như uống nước, tập luyện, điều trị, uống thuốc.

<b>5.2. Hệ thống chatbot tư vấn sức khỏe </b>

• Cung cấp thơng tin chính xác và đáng tin cậy về sức khỏe dựa trên cơ sở dữ liệu kiến thức y tế đáng tin cậy.

• Thơng tin sức khỏe cần được cập nhật thường xun để đảm bảo tính mới nhất.

• Cung cấp thơng tin tồn diện về nhiều vấn đề sức khỏe khác nhau, bao gồm các bệnh lý thường gặp, cách phịng bệnh, cách chăm sóc

<b>Hướng phát triển của đề tài </b>

Nếu tiến độ công việc đạt được đúng như mong đợi, sẽ mở rộng thêm các tính năng như:

• Nâng cấp hệ thống chatbot, ứng dụng Machine Learning và AI để có thể đưa ra các câu trả lời chính xác và trị chuyện tự nhiên hơn với người dùng.

• Chatbot hỗ trợ tư vấn tâm lý: Ngoài tư vấn về sức khỏe, cung cấp hỗ trợ tư vấn tâm lý cho người dùng có nhu cầu.

• Cung cấp số liệu: đưa ra các số liệu liên quan đến sức khỏe và các số liệu chuẩn của ngành y tế.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

Thực hiện chức năng Đăng nhập, Đăng ký, Quên mật khẩu. Tìm hiểu, nghiên cứu DialogFlow và cách xây dựng chatbot. Thiết kế và xây dựng chức năng chatbot tư vấn sức khỏe. 5

(18/11 - 30/11)

Tìm kiếm các nguồn thơng tin y tế tin cậy.

Thiết kế và xây dựng chức năng thư viện thơng tin sức khỏe.

6 (1/12 - 12/12)

Tìm kiếm nguồn video sức khỏe.

Thiết kế và xây dựng chức năng thư viện video.

7

(13/12 - 20/12)

Thiết kế và xây dựng chức năng công cụ theo dõi sức khỏe. Thiết kế và xây dựng chức năng thông báo, nhắc nhở, ghi chú.

8

(21/12 - 30/12)

Thực hiện kiểm thử toàn bộ ứng dụng. Hoàn thiện tài liệu.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>LỜI CẢM ƠN </b>

Trong quá trình học tập và rèn luyện tại khoa Cơng nghệ phần mềm trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM, em đã được trang bị các kiến thức cơ bản, các kỹ năng thực tế để có thể hồn thành Đồ án của mình.

Để hồn thành đồ án này, em xin gửi lời cảm ơn chân thành đến:

Ban Giám hiệu trường Đại học Công nghệ Thơng tin – ĐHQG TP.HCM vì đã tạo điều kiện về cơ sở vật chất với hệ thống thư viện hiện đại, đa dạng các loại sách, tài liệu thuận lợi cho việc tìm kiếm, nghiên cứu thơng tin.

Em xin gửi lời cảm ơn chân thành đến quý Thầy Cô Trường Đại học Công nghệ thông tin – Đại học Quốc gia TP.HCM và quý Thầy Cô khoa Cơng nghệ phần mềm đã giúp cho em có những kiến thức cơ bản làm nền tảng để thực hiện đề tài này.

Em xin gửi lời cảm ơn chân thành và lòng biết ơn sâu sắc nhất đến ThS. Trần Anh Dũng đã tận tình giúp đỡ, định hướng cách tư duy và cách làm việc khoa học. Đó là những góp ý hết sức q báu khơng chỉ trong quá trình thực hiện đồ án này mà còn là hành trang tiếp bước cho em trong quá trình học tập và lập nghiệp sau này.

Trong quá trình làm đồ án này em không tránh khỏi được những sai sót, em kính mong nhận được sự chỉ dẫn và góp ý của q Thầy Cơ để hồn thiện kiến thức, kỹ năng mà em đã được học tập, đó sẽ là hành trang quý giá để em tiếp tục thực hiện các đề tài khác trong tương lai tốt hơn.

Em xin chân thành cảm ơn! Xin chúc những điều tốt đẹp nhất sẽ luôn đồng hành cùng mọi người.

Thành phố Hồ Chí Minh, ngày 30 tháng 12 năm 2023 Sinh viên thực hiện

<b>Lý Thanh Tú Anh </b>

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<b>NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN </b>

<b>GVHD </b>

<b>ThS. Trần Anh Dũng </b>

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

Chương 3.PHÂN TÍCH THIẾT KẾ HỆ THỐNG ... 10

3.1.Danh sách các yêu cầu ... 10

3.1.1.Yêu cầu nghiệp vụ ... 10

3.1.2.Yêu cầu hệ thống ... 11

3.1.3.Yêu cầu chất lượng ... 11

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

3.2.Sơ đồ Usecase ... 13

3.2.1.Sơ đồ tổng quan ... 13

3.2.2.Đặc tả Usecase ... 16

3.3.Sơ đồ cơ sở dữ liệu ... 38

3.3.1.Sơ đồ dữ liệu tổng quan ... 38

3.3.2.Mô tả sơ đồ dữ liệu ... 39

3.4.Thiết kế hệ thống ... 41

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

3.4.2.Mô tả các thành phần hệ thống ... 41

3.4.3.Lý do nên dùng mơ hình MVP ... 42

Chương 4.HIỆN THỰC ĐỀ TÀI ... 43

4.1.Danh sách giao diện ... 43

4.2.Mô tả chi tiết giao diện ... 44

4.2.1.Màn hình Đăng nhập ... 44

4.2.2.Màn hình Đăng ký ... 45

4.2.3.Màn hình Trang chủ ... 46

4.2.4.Màn hình Chat tư vấn sức khỏe ... 47

4.2.5.Màn hình Tra cứu thơng tin các loại bệnh ... 48

4.2.6.Màn hình Xem video sức khỏe ... 49

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

6.4.Hướng phát triển ... 57

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

<b>DANH MỤC HÌNH ẢNH </b>Hình 2.1: Cách Agent quản lý một cuộc hội thoại giữa người dùng và hệ thống ... 7

Hình 3.1: Sơ đồ Usecase tổng quan ... 14

Hình 3.2: Biểu đồ hoạt động của Usecase Đăng ký ... 16

Hình 3.3: Biểu đồ trình tự của Usecase Đăng ký ... 17

Hình 3.4: Biểu đồ hoạt động của Usecase Đăng nhập ... 18

Hình 3.5: Biểu đồ trình tự của Usecase Đăng nhập ... 18

Hình 3.6: Biểu đồ hoạt động của Usecase Đăng xuất ... 19

Hình 3.7: Biểu đồ trình tự của Usecase Đăng xuất ... 20

Hình 3.8: Biểu đồ hoạt động của Usecase Tra cứu thông tin các loại bệnh ... 21

Hình 3.9: Biểu đồ trình tự của Usecase Tra cứu thông tin các loại bệnh ... 21

Hình 3.10: Biểu đồ hoạt động của Usecase Xem video sức khỏe ... 22

Hình 3.11: Biểu đồ trình tự của Usecase Xem video sức khỏe ... 23

Hình 3.12: Biểu đồ hoạt động của Usecase Chat tư vấn sức khỏe ... 24

Hình 3.13: Biểu đồ trình tự của Usecase Chat tư vấn sức khỏe ... 24

Hình 3.14: Biểu đồ hoạt động của Usecase Tạo nhắc nhở ... 26

Hình 3.15: Biểu đồ trình tự của Usecase Tạo nhắc nhở ... 26

Hình 3.16: Biểu đồ hoạt động của Usecase Điều chỉnh nhắc nhở ... 27

Hình 3.17: Biểu đồ trình tự của Usecase Điều chỉnh nhắc nhở ... 28

Hình 3.18: Biểu đồ hoạt động của Usecase Xóa nhắc nhở ... 29

Hình 3.19: Biểu đồ trình tự của Usecase Xóa nhắc nhở... 29

Hình 3.20: Biểu đồ hoạt động của Usecase Tạo ghi chú ... 30

Hình 3.21: Biểu đồ trình tự của Usecase Tạo ghi chú ... 31

Hình 3.22: Biểu đồ hoạt động của Usecase Sửa ghi chú ... 32

Hình 3.23: Biểu đồ trình tự của Usecase Sửa ghi chú ... 32

Hình 3.24: Biểu đồ hoạt động của Usecase Xóa ghi chú ... 34

Hình 3.25: Biểu đồ trình tự của Usecase Xóa ghi chú ... 34

Hình 3.26: Biểu đồ hoạt động cho Usecase Điều chỉnh thông tin cá nhân ... 35

Hình 3.27: Biểu đồ trình tự cho Usecase Điều chỉnh thơng tin cá nhân ... 36

Hình 3.28: Biểu đồ hoạt động cho Usecase Quên mật khẩu ... 37

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

Hình 3.29: Biểu đồ trình tự cho Usecase Quên mật khẩu ... 38

Hình 3.30: Sơ đồ dữ liệu tổng quan ... 38

Hình 3.31: Mơ hình kiến trúc MVP... 41

Hình 4.1: Giao diện Đăng nhập ... 44

Hình 4.2: Giao diện Đăng ký ... 45

Hình 4.3: Giao diện Trang chủ ... 46

Hình 4.4: Giao diện Chat tư vấn sức khỏe ... 47

Hình 4.5: Giao diện Tra cứu thơng tin các loại bệnh ... 48

Hình 4.6: Giao diện Xem video sức khỏe ... 49

Hình 4.7: Giao diện Quản lý ghi chú ... 50

Hình 4.8: Giao diện Quản lý nhắc nhở ... 51

Hình 4.9: Giao diện Hồ sơ ... 53

Hình 4.10: Giao diện Đổi mật khẩu... 54

<b>DANH MỤC BẢNG BIỂU </b>Bảng 3.1: Bảng tính tiến hóa ... 12

Bảng 3.8: Usecase Đăng xuất ... 19

Bảng 3.9: Usecase Tra cứu thông tin các loại bệnh ... 21

Bảng 3.10: Usecase Xem video sức khỏe ... 22

Bảng 3.11: Usecase Chat tư vấn sức khỏe... 23

Bảng 3.12: Usecase Tạo nhắc nhở ... 25

Bảng 3.13: Usecase Sửa nhắc nhở ... 27

Bảng 3.14: Usecase Xóa nhắc nhở ... 29

Bảng 3.15: Usecase Tạo ghi chú ... 30

Bảng 3.16: Usecase Sửa ghi chú ... 32

Bảng 3.17: Usecase Xóa ghi chú ... 33

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Bảng 3.18: Usecase Điều chỉnh thông tin cá nhân ... 35

Bảng 3.19: Usecase Quên mật khẩu ... 37

Bảng 3.20: Mô tả dữ liệu User ... 39

Bảng 3.21: Mô tả dữ liệu Disease ... 39

Bảng 3.22: Mô tả dữ liệu Video ... 40

Bảng 3.23: Mô tả dữ liệu Reminder ... 40

Bảng 3.24: Mô tả dữ liệu Note ... 40

Bảng 4.1: Danh sách giao diện ... 43

Bảng 4.2: Bảng mô tả giao diện Đăng nhập ... 44

Bảng 4.3: Bảng mô tả giao diện Đăng ký ... 45

Bảng 4.4: Bảng mô tả giao diện Trang chủ ... 46

Bảng 4.5: Bảng mô tả giao diện Chatbot tư vấn sức khỏe ... 47

Bảng 4.6: Bảng mô tả giao diện Tra cứu thông tin các loại bệnh ... 48

Bảng 4.7: Bảng mô tả giao diện Xem video sức khỏe ... 50

Bảng 4.8: Bảng mô tả giao diện Quản lý ghi chú ... 51

Bảng 4.9: Bảng mô tả giao diện Quản lý nhắc nhở ... 52

Bảng 4.10: Bảng mô tả giao diện Hồ sơ ... 53

Bảng 4.11: Bảng mô tả giao diện Đổi mật khẩu ... 54

Bảng 5.1: Bảng đánh giá mức độ hoàn thành và thử nghiệm ứng dụng ... 56

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<b>Chương 1. GIỚI THIỆU CHUNG </b>

<b>1.1. Đặt vấn đề </b>

Sức khỏe là tài sản quý giá nhất của con người. Tuy nhiên, trong thời đại hiện nay, khi nhịp sống ngày càng bận rộn, áp lực cơng việc và học tập tăng cao, thì việc chăm sóc sức khỏe đang trở thành một vấn đề nan giải. Nhiều người thường xuyên gặp phải các vấn đề về sức khỏe như mệt mỏi, căng thẳng, đau đầu,... nhưng lại khơng có thời gian hoặc khơng biết cách để tự chăm sóc sức khỏe bản thân. Bên cạnh đó, việc tiếp cận với thơng tin y tế chính thống cũng gặp nhiều khó khăn. Điều này dẫn đến tình trạng nhiều người bệnh tự ý mua thuốc, điều trị sai cách, gây ra những hậu quả nghiêm trọng.

<b>1.2. Lý do chọn đề tài </b>

Dựa trên những vấn đề trên, với mong muốn góp phần nâng cao nhận thức và ý thức chăm sóc sức khỏe, em đã lựa chọn đề tài xây dựng một ứng dụng tư vấn sức khỏe cho cộng đồng. Ứng dụng này sẽ giúp người dùng tiếp cận được với các thông tin về sức khỏe một cách nhanh chóng và chính xác, đồng thời có thể giải đáp các thắc mắc của người dùng về nhiều vấn đề sức khỏe khác nhau cũng như cung cấp hướng giải quyết các vấn đề đó, từ đó người dùng có thể tự theo dõi và chăm sóc sức khỏe bản thân một cách hiệu quả và nhanh chóng.

<b>1.3. Mục tiêu đề tài </b>

• Nghiên cứu cơng cụ DialogFlow, nền tảng chatbot của Google cung cấp khả năng hiểu ngôn ngữ tự nhiên (NLU) và tạo phản hồi tự động để tạo ra chatbot tư vấn sức khỏe người dùng. Chatbot sẽ được đào tạo trên một bộ dữ liệu lớn về các câu hỏi và câu trả lời liên quan đến sức khỏe và các thông tin y tế để phục

<b>vụ người dùng. </b>

• Nghiên cứu các vấn đề xoay quanh sức khỏe để xây dựng một ứng dụng tư vấn sức khỏe hiệu quả, chính xác, chẳng hạn như các bệnh lý thường gặp, các biện pháp phòng bệnh,... Kết quả nghiên cứu sẽ được ứng dụng trong việc xây dựng các tính năng của ứng dụng.

• Xây dựng và phát triển ứng dụng trên nền tảng di động, với giao diện thân thiện và dễ sử dụng, đáp ứng nhu cầu tư vấn sức khỏe hay tra cứu thông tin y tế của người dùng ở bất cứ đâu, bất kể thời gian nào.

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

<b>1.4. Đối tượng nghiên cứu </b>

Đồ án này hướng đến nghiên cứu các đối tượng sau:

• Front-end: Flutter • Back-end: Flutter • Database: Firebase • IDE: Visual Studio Code

• Người có nhu cầu chăm sóc sức khỏe.

• Người có nhu cầu tìm kiếm các thơng tin y tế.

<b>1.5. Phạm vi nghiên cứu </b>

❖ Phạm vi môi trường: Application

❖ Phạm vi chức năng: Người dùng có thể sử dụng chatbot để tư vấn sức khỏe; tra cứu thư viện sức khỏe về các loại bệnh, thư viện video; biết được tình trạng sức khỏe của bản thân, đặt nhắc nhở và thông báo cho các hoạt động sức khỏe, tạo ghi chú về các vấn đề sức khỏe.

<b>1.6. Phương pháp thực hiện </b>

❖ 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 các tài liệu sức khỏe có liên quan.

• Phương pháp thực nghiệm. ❖ Phương pháp cơng nghệ

• Tìm hiểu Firebase để lưu trữ và thao tác với dữ liệu qua ứng dụng. • Tìm hiểu DialogFlow để xây dựng chatbot tư vấn sức khỏe.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<b>Chương 2. CƠ SỞ LÝ THUYẾT </b>

<b>2.1. Flutter </b>

Flutter là một Mobile UI Framework dựa trên ngơn ngữ lập trình Dart, được Google phát triển vào tháng 5 năm 2017. Mục đích của Google khi phát triển nền tảng này là để tối ưu thời gian tạo ra các giao diện chất lượng cao trên cả iOS và Android, đáp ứng được việc phát triển các ứng dụng mobile/web một cách nhanh chóng nhưng vẫn đảm bảo sự mượt mà, ổn định trên các nền tảng khác nhau.

Flutter được phát triển trên ngôn ngữ Dart (cũng được phát triển bởi Google). Đây là một ngôn ngữ hướng đối tượng, bởi vậy trong quá trình chuyển đổi từ ngơn ngữ lập trình hướng đối tượng này sang ngôn ngữ tương tự khác sẽ diễn ra rất thuận lợi. Ngồi ra, Flutter cịn cung cấp một bộ UI hồn tồn miễn phí và có thể tùy chỉnh để nhà phát triển thỏa sức sáng tạo giao diện ứng dụng.

• Hot reload: Tính năng này sẽ hiển thị gần như là realtime (thời gian thực) cho những thay đổi trong thiết kế, hay những tùy chỉnh của bạn trên cùng một nền tảng. Điều này giúp cho việc thêm tính năng, sửa lỗi hoặc thử nghiệm ý tưởng mới ngay lập tức.

• Tiết kiệm thời gian, công sức và tiền bạc: Giống như bất kỳ công nghệ đa nền tảng nào khác, Flutter cho phép bạn sử dụng cùng một cơ sở mã để xây dựng các ứng dụng iOS và Android riêng biệt. Điều này đồng nghĩa thời gian test, fix bugs sẽ nhanh hơn, tiết kiệm chi phí xây dựng ứng dụng hơn.

• Giao diện đẹp: Flutter cung cấp các bộ UI với các hiệu ứng, hoạt ảnh cực kỳ tiện lợi. Do được trang bị rất nhiều UI, đi cùng với các bộ widget phong phú nên các nhà phát triển có thể dễ dàng “hình ảnh hóa” những gì mà mình muốn mà khơng gặp q nhiều khó khăn.

• Flutter vẫn chưa thật hồn thiện: Tuy mạnh mẽ nhưng thật khó để Flutter có thể đạt được những điều mà ngôn ngữ Java, C , JavaScript đã làm được. Đơn giản là vì Flutter cịn khá mới mẻ. Thực tế, nhiều tính năng nâng cao của Flutter vẫn chưa được hỗ trợ; nhiều thư viện chưa được thử nghiệm chính thức cịn tồn tại hạn chế

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

khi so sánh với các bản sao gốc (như là Google Maps).

• Dart cịn khá mới: Ngơn ngữ Dart vẫn cịn lạ lẫm với nhiều lập trình viên. Tài liệu về chúng cũng không được nhiều như các ngôn ngữ khác. Vậy nên dù có thể là dễ học, dễ thực hiện nhưng so với các ngôn ngữ thịnh hành thì đó là một trở ngại. Về cơ bản ngơn ngữ lập trình Dart khá giống với Swift và Kotlin, nhưng có ít tính năng hơn, hoặc những tính năng hiện có chưa được tồn diện.

• Kích thước file lớn và đơi lúc sự tương thích là chưa ổn định: Việc làm ra một ứng dụng chạy được trên cả Android và iOS tuy rất tuyệt vời, nhưng rõ ràng sự chuyên biệt luôn tốt hơn những thứ tổng hợp. Nên đôi khi ứng dụng sẽ gặp một vài lỗi vặt trên cả hai nền tảng và kích thước file của chúng còn khá lớn.

<b>2.2. Firebase </b>

Firebase là nền tảng được xây dựng, cung cấp bởi Google, hoạt động trên nền tảng Cloud nhằm hỗ trợ phát triển các ứng dụng trên web và di động dựa trên nguyên tắc đơn giản hóa thao tác lập trình. Là một cơ sở dữ liệu có sẵn mang đến khả năng code nhanh chóng, thuận tiện hơn.

Dưới sự hỗ trợ của nền tảng này, lập trình viên hồn tồn không cần để tâm đến backend hay server mà có cơ hội tập trung chủ yếu vào việc phát triển ứng dụng. Nền tảng này hướng đến đối tượng chủ yếu là di động, được biết đến như một “backend as an server”.

• Một nền tảng, đa dịch vụ: Firebase cung cấp đầy đủ các dịch vụ hỗ trợ lập trình viên trong việc phát triển ứng dụng.

• Tập trung phát triển chủ yếu về giao diện người dùng: Firebase cho phép lập trình viên tập trung chủ yếu vào phát triển phần giao diện người dùng nhờ kho Backend

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

mẫu phong phú đa dạng.

Dialogflow sử dụng trí tuệ nhân tạo (AI) giúp phân tích ngơn ngữ tự nhiên để hiểu được những gì người dùng đưa vào.

Intent đại diện cho một ý định cụ thể mà người dùng muốn diễn đạt hoặc hành động mà họ muốn thực hiện thơng qua cuộc trị chuyện với hệ thống AI. DialogFlow sử dụng Intent để ánh xạ các cú pháp ngôn ngữ tự nhiên (natural language) từ người dùng với các hành động cụ thể hoặc phản hồi mà bot cần thực hiện.

Mỗi Intent có thể có các mẫu câu khác nhau mà người dùng có thể sử dụng để diễn đạt cùng một ý định, và mỗi Intent cũng có thể có các thực hiện khác nhau hoặc phản hồi để đáp ứng cho ý định đó. Ví dụ, nếu một người dùng nói "Xin chào" hoặc "Hello" đến chatbot, hệ có thể có một Intent được gán cho hành động chào hỏi, trong đó thống sẽ phản hồi lại bằng cách gửi lời chào lại như "Xin chào! Bạn cần giúp gì hơm nay?" như một cách mở đầu một cuộc trò chuyện.

Tóm lại, Intent trong DialogFlow giúp xác định ý định cụ thể của người dùng từ các

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

câu hoặc từ ngữ họ sử dụng và từ đó chuyển hướng hoặc thực hiện các hành động tương ứng của hệ thống AI hay chatbot.

Entity đại diện cho các thành phần của thông điệp người dùng, các thành phần đó có thể thay đổi hoặc có ý nghĩa đặc biệt. Entity giúp hệ thống hiểu rõ hơn về các thông tin cụ thể mà người dùng cung cấp trong các câu hoặc thông điệp của họ.

Entity được sử dụng để trích xuất các thơng tin quan trọng từ các dịng văn bản hoặc câu nói mà người dùng gửi đến chatbot hoặc hệ thống AI. Điều này giúp DialogFlow nhận biết và xử lý dữ liệu người dùng một cách chính xác, cho phép bot hiểu được ngữ cảnh và cung cấp phản hồi chính xác hơn. Ví dụ, trong một câu như "Tơi muốn đặt một chiếc bàn vào thứ Ba tới", "đặt một chiếc bàn" có thể là một Entity loại "Đặt hàng", trong khi "thứ Ba" có thể là một Entity loại "Ngày". DialogFlow cung cấp các loại Entity mặc định như số, ngày tháng, vị trí địa lý,… Người sử dụng cũng có thể tạo các Entity tùy chỉnh để phù hợp với các thông tin cụ thể và yêu cầu của ứng dụng của mình.

Tóm lại, Entity trong DialogFlow giúp xác định và trích xuất các thơng tin quan trọng từ câu hoặc văn bản người dùng, giúp hệ thống AI hiểu rõ hơn về ý nghĩa và ngữ cảnh của thông điệp và cung cấp phản hồi hoặc xử lý dữ liệu phù hợp.

Agent đề cập đến dự án cụ thể mà bạn tạo để xây dựng và triển khai các hệ thống trí tuệ nhân tạo (AI) như chatbot, ứng dụng hội thoại, hoặc ứng dụng hỗ trợ tự động khác. Mỗi Agent trong DialogFlow đại diện cho một module NLU (Natural Language Understanding – Phân tích để hiểu ngơn ngữ tự nhiên), giúp người sử dụng phân tích những những gì người dùng đưa vào (text hoặc voice) để chuyển thành những dữ liệu mà người sử dụng có thể xử lý được bằng lập trình.

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<i>Hình 2.1: Cách Agent quản lý một cuộc hội thoại giữa người dùng và hệ thống </i>

Mục tiêu của một Agent trong DialogFlow là để tạo ra một hệ thống AI hoặc chatbot thơng minh có khả năng hiểu và phản hồi lại người dùng một cách tự nhiên, giúp cải thiện trải nghiệm người dùng và cung cấp giải pháp cho các tác vụ cụ thể mà Agent được thiết kế để thực hiện.

• Hỗ trợ các tính năng mở rộng: Cho phép tích hợp với các webhook và các hệ thống ngoại vi khác để xử lý logic phức tạp và tích hợp dữ liệu từ các nguồn bên ngồi.

• Machine Learning và Natural Language Understanding (NLU): DialogFlow có khả năng hiểu và xử lý ngơn ngữ tự nhiên, sử dụng các mơ hình machine learning để cải thiện việc hiểu ý định và xử lý ngơn ngữ.

• Khả năng hiểu và phản hồi có thể hạn chế: Trong một số trường hợp, khả năng

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

hiểu và phản hồi của bot có thể hạn chế, đặc biệt khi người dùng sử dụng ngơn ngữ phức tạp hoặc có nhiều yếu tố ngữ cảnh.

• Phụ thuộc vào kết nối internet: Hoạt động dựa trên kết nối internet, vì vậy sẽ có hạn chế khi khơng có kết nối mạng.

• Giới hạn trong mơ hình miễn phí: Phiên bản miễn phí của DialogFlow có giới hạn về số lượng yêu cầu API, giới hạn dung lượng dữ liệu và một số hạn chế về tính năng so với các phiên bản trả phí.

• Có thể địi hỏi kỹ năng lập trình: Đối với những tính năng phức tạp hoặc yêu cầu tích hợp sâu, có thể yêu cầu kiến thức kỹ thuật và lập trình để triển khai.

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<b>Chương 3. PHÂN TÍCH THIẾT KẾ HỆ THỐNG </b>

<b>3.1. Danh sách các yêu cầu </b>

• Sau khi truy cập vào ứng dụng, người dùng có thể sử dụng các tính năng sau: o Đăng ký tài khoản.

o Cập nhật thông tin cá nhân sau khi đăng ký tài khoản (các thông tin sức khỏe như chiều cao, cân nặng).

o Sử dụng chatbot để được giải đáp về vấn đề sức khỏe mà bản thân đang gặp phải, hoặc hỏi về một bệnh lý hoặc thông tin y tế bất kì.

o Truy cập thư viện sức khỏe để tìm đọc thơng tin y tế về các loại bệnh hoặc xem các video hướng dẫn các bài tập thể dục, yoga và các video công thức hướng dẫn nấu các món ăn có lợi cho sức khỏe.

o Theo dõi tình trạng cơ thể của bản thân qua các chỉ số như cân nặng, chiều cao, chỉ số BMI sau khi đã cung cấp các thông tin cá nhân trong phần hồ sơ sau khi đăng ký tài khoản.

o Ghi chú về cảm giác sức khỏe của họ, triệu chứng, và thuốc đã sử dụng hoặc các thông tin cần nhớ như thông tin bệnh viện, bác sĩ,…

o Cài đặt các nhắc nhở thông báo về các hoạt động liên quan đến sức khỏe như uống nước, tập luyện, điều trị, uống thuốc.

o Đổi mật khẩu hoặc có thể cài đặt mật khẩu mới khi qn thơng qua email. • Lưu trữ:

o Thông tin về người dùng: Hệ thống sẽ lưu các thông tin của người dùng như email, họ và tên, tuổi, giới tính, chiều cao, cân nặng.

o Thông tin về các loại bệnh: bao gồm các thông tin như tên, tổng quan, nguyên nhân gây bệnh, triệu chứng, đối tượng có nguy cơ mắc bệnh, cách phịng ngừa, các biện pháp chuẩn đốn, các biện pháp điều trị.

o Thông tin về các video: bao gồm các thông tin như tiêu đề, thời lượng, hình thu nhỏ, đường liên kết tới video.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

o Thông tin về nhắc nhở các hoạt động: bao gồm các thông tin như tên hoạt động, thời gian bắt đầu, ngày hoạt động, nhãn, nhắc nhở có lặp lại hay khơng, có đặt thông báo cho nhắc nhở hay không.

o Thông tin về ghi chú: bao gồm các thông tin như tiêu đề, nội dung ghi chú, thời gian ghi chú, ngày ghi chú.

• Tính tốn: Tính tốn chỉ số BMI để xác định tình trạng của người dùng và đưa ra lời khun thích hợp. Tính tốn thời gian đặt thông báo cho các hoạt động được tạo nhắc nhở.

• Tính an tồn:

o Xác thực người dùng: Yêu cầu người dùng phải đăng nhập, xác thực trước khi truy cập vào ứng dụng, sử dụng phương thức email và mật khẩu để xác minh danh tính người dùng.

o Kết nối an tồn: Sử dụng HTTPS để đảm bảo việc truyền dữ liệu giữa ứng dụng và cơ sở dữ liệu Firebase được mã hóa và an tồn.

• Tính bảo mật:

o Bảo vệ thông tin cá nhân: Đảm bảo rằng thông tin cá nhân của người dùng được bảo vệ bằng cách mã hóa dữ liệu, như thơng tin y tế, tuân thủ các quy định về bảo vệ dữ liệu cá nhân.

o Bảo mật cơ sở dữ liệu: Sử dụng Firebase Security Rules để thiết lập quy tắc truy cập cơ sở dữ liệu, xác định quyền truy cập dữ liệu cho người dùng hoặc nhóm người dùng cụ thể.

o Bảo mật phần mềm: Đảm bảo rằng phần mềm được cập nhật định kỳ để bảo vệ khỏi các lỗ hổng bảo mật đã biết.

• Tính tiến hóa:

1 Thay đổi thông tin cá Họ và tên, tuổi, giới tính, chiều cao, cân

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

Khơng cần hướng dẫn

2 Tra cứu các loại bệnh

Không cần hướng dẫn

3 Xem video sức khỏe

Không cần hướng dẫn

4 Thêm, xóa, chỉnh sửa ghi chú

Khơng cần hướng dẫn

5 Thêm, xóa, chỉnh sửa nhắc nhở

Không cần hướng dẫn

6 Xem tình trạng sức khỏe

Khơng cần hướng dẫn

7 Chỉnh sửa thông tin cá nhân

Không cần hướng dẫn

4 Thay đổi mật khẩu Mật khẩu hiện tại, mật khẩu mới

<i>Bảng 3.1: Bảng tính tiến hóa </i>

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

3 Xóa ghi chú Sau 1 giây 4 Thêm nhắc nhở Ngay lập tức <= 1MB

7 Thay đổi thông tin cá nhân

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<b>❖ Danh sách các tác nhân </b>

Người dùng Người dùng các tính năng cơ bản của ứng dụng.

<i>Bảng 3.4: Danh sách các tác nhân </i>

<b>❖ Danh sách Usecase </b>

mới.

<i>Hình 3.1: Sơ đồ Usecase tổng quan </i>

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

UC002 Đăng nhập Cho phép người dùng đăng nhập vào ứng dụng.

UC003 Đăng xuất Cho phép người dùng thoát khỏi tài khoản hiện tại.

UC004 Tra cứu thông tin các loại bệnh

Cho phép người dùng tra cứu thông tin các loại bệnh.

UC005 Xem video sức khỏe Cho phép người dùng xem các video liên quan đến sức khỏe.

UC006 Chat tư vấn sức khỏe Cho phép người dùng trực tiếp giải đáp thắc mắc về vấn đề sức khỏe bất kì dưới dạng tin nhắn.

UC007 Tạo nhắc nhở Cho phép người dùng tạo nhắc nhở cho các hoạt động sức khỏe của bản thân.

UC008 Sửa nhắc nhở Cho phép người dùng chỉnh sửa các nhắc nhở đã tạo trước đó.

UC009 Xóa nhắc nhở Cho phép người dùng xóa các nhắc nhở đã tạo trước đó.

UC010 Tạo ghi chú Cho phép người dùng ghi chú về các thông tin sức khỏe của bản thân. UC011 Sửa ghi chú Cho phép người dùng chỉnh sửa nội

dung các ghi chú đã tạo trước đó. UC012 Xóa ghi chú Cho phép người dùng xóa các ghi chú

đã tạo trước đó. UC013 Điều chỉnh thông tin cá

nhân

Cho phép người dùng điều chỉnh thông tin cá nhân, bao gồm cả các thông tin sức khỏe như chiều cao, cân nặng. UC014 Quên mật khẩu Cho phép người dùng tạo lại mật khẩu

mới khi quên thông qua email.

<i>Bảng 3.5: Danh sách các Usecase </i>

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<b>3.2.2. Đặc tả Usecase a) Usecase Đăng ký </b>

Tên Usecase Đăng ký

Mô tả <sup>Usecase cho phép người dùng đăng ký tài khoản để sử dụng </sup>ứng dụng với các chức năng cơ bản dành cho người dùng.

Tiền điều kiện <sup>Khơng có. </sup>

Hậu điền kiện <sup>Người dùng đăng ký thành công, chuyển hướng sang màn hình </sup>chính của ứng dụng.

Dịng sự kiện chính

1. Chọn phần “Đăng ký ngay”. 2. Điền các thông tin cần đăng ký. 3. Nhấn nút “Đăng ký”.

4. Hệ thống ghi nhận đăng ký thành cơng và chuyển hướng sang màn hình chính.

Dịng sự kiện phụ Khơng có.

Dịng sự kiện lỗi 4a. Hệ thống thông báo cập nhật thất bại do lỗi thông tin không hợp lệ.

<i>Bảng 3.6: Usecase Đăng ký ❖ Biểu đồ hoạt động </i>

<i>Hình 3.2: Biểu đồ hoạt động của Usecase Đăng ký </i>

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

❖ Biểu đồ trình tự <i> </i>

<b>b) Usecase Đăng nhập </b>

Tên Usecase Đăng nhập

Mô tả <sup>Usecase cho phép người dùng đăng nhập vào hệ thống để </sup>sử dụng các chức năng của ứng dụng.

Tiền điều kiện <sup>Người dùng đã có tài khoản (đã đăng ký). </sup>

Hậu điền kiện <sup>Người dùng đăng nhập thành cơng, chuyển hướng sang màn </sup>hình chính của ứng dụng.

Dịng sự kiện chính

1. Điền các thông tin đăng nhập. 2. Nhấn nút “Đăng nhập”.

3. Hệ thống ghi nhận và chuyển hướng sang màn hình chính. Dịng sự kiện phụ Khơng có.

Dịng sự kiện lỗi 4a. Hệ thống thông báo cập nhật thất bại do lỗi thông tin không xác thực.

<i>Bảng 3.7: Usecase Đăng nhập </i>

<i>Hình 3.3: Biểu đồ trình tự của Usecase Đăng ký </i>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

❖ Biểu đồ hoạt động

❖ Biểu đồ trình tự

<i>Hình 3.4: Biểu đồ hoạt động của Usecase Đăng nhập </i>

<i>Hình 3.5: Biểu đồ trình tự của Usecase Đăng nhập </i>

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<b>c) Usecase Đăng xuất </b>

Tên Usecase Đăng xuất

Mô tả <sup>Usecase cho phép người dùng thoát ra khỏi hệ thống. </sup>

Tiền điều kiện <sup>Người dùng đã đăng nhập. </sup>

Hậu điền kiện <sup>Người dùng thoát ra khỏi hệ thống và hiển thị màn hình </sup>đăng nhập.

Dịng sự kiện chính

1. Chọn mục “Hồ sơ”. 2. Chọn nút “Đăng xuất”

3. Hệ thống hiển thị dialog xác nhận đăng xuất. 4. Nhấn nút xác nhận.

5. Hệ thống điều hướng sang màn hình đăng nhập.

Dịng sự kiện phụ 4a. Người dùng không xác nhận, trở về màn hình trước đó. Dịng sự kiện lỗi Khơng có.

<i>Bảng 3.8: Usecase Đăng xuất </i>

❖ Biểu đồ hoạt động

<i>Hình 3.6: Biểu đồ hoạt động của Usecase Đăng xuất </i>

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

❖ Biểu đồ trình tự

<b>d) Usecase Tra cứu thông tin các loại bệnh </b>

Tên Usecase Tra cứu thông tin các loại bệnh

Mô tả <sup>Usecase cho phép người dùng tra cứu thông tin các loại bệnh </sup>thường gặp.

Tiền điều kiện <sup>Khơng có. </sup>

Hậu điền kiện <sup>Hiển thị thơng tin loại bệnh người dùng chọn. </sup>Dịng sự kiện

chính

1. Chọn phần “Tra cứu”.

2. Hệ thống hiển thị màn hình tra cứu theo bảng chữ cái. 3. Người dùng chọn chữ cái đầu tiên của loại bệnh cần tra cứu. 4. Hệ thống hiển thị danh sách các loại bệnh bắt đầu bằng chữ cái người dùng chọn.

5. Người dùng chọn loại bệnh mình cần tra cứu (nếu có trong danh sách).

6. Hiển thị màn hình thơng tin người dùng chọn. Dịng sự kiện phụ 5a. Loại bệnh người dùng khơng có trong danh sách.

<i>Hình 3.7: Biểu đồ trình tự của Usecase Đăng xuất </i>

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

Dòng sự kiện lỗi Khơng có.

<i>Bảng 3.9: Usecase Tra cứu thơng tin các loại bệnh </i>

❖ Biểu đồ hoạt động

❖ Biểu đồ trình tự

<b>e) Usecase Xem video sức khỏe </b>

<i>Hình 3.9: Biểu đồ trình tự của Usecase Tra cứu thơng tin các loại bệnh Hình 3.8: Biểu đồ hoạt động của Usecase Tra cứu thông tin các loại bệnh </i>

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<b>Mã Usecase UC005 </b>

Tên Usecase Xem video sức khỏe

Mô tả <sup>Usecase cho phép người dùng xem các video liên quan đến sức </sup>khỏe.

Tiền điều kiện <sup>Người dùng đã đăng nhập. </sup>

Hậu điền kiện <sup>Hiển thị video player chiếu video mà người dùng chọn xem. </sup>Dòng sự kiện

chính

1. Chọn phần “Tra cứu”. 2. Chọn tab “Video”

3. Hiển thị danh sách các video. 4. Người dùng chọn video muốn xem.

5. Hệ thống chuyển hướng sang trang chiếu video, tải video và chiếu video khi đã tải xong.

Dịng sự kiện phụ Khơng có. Dịng sự kiện lỗi Khơng có.

<i>Bảng 3.10: Usecase Xem video sức khỏe </i>

❖ Biểu đồ hoạt động

<i>Hình 3.10: Biểu đồ hoạt động của Usecase Xem video sức khỏe </i>

</div>

×