LỜI CẢM ƠNĐể tạo ra Ứng dụng trợ lí ảo đánh giá khuyết tật sắc giác hỗ trợ tư vấn ngành nghề chohọc sinh trung học phổ thông, nhóm của chúng tôi đã nhận được rất nhiều sự hỗ trợ và giúp
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ
TRUYỀN THÔNG VIỆT - HÀN
Khoa Học Máy Tính
Báo Cáo AI For Life
Đề tài : Ứng dụng trợ lí ảo đánh giá khuyết tật sắc giác
hỗ trợ tư vấn ngành nghề cho học sinh trung học phổ thông
Sinh viên thực hiện: HOÀNG XUÂN LUÂN - 23IT150
LÊ HỮU THÁI - 23IT.EB091 ĐOÀN CHÍ DŨNG - 23IT.EB025 NGUYỄN THỊ ÁNH VY - 23IT323
NGUYỄN THÁI LÂM - 23IT.EB053
Giảng viên hướng dẫn: TS NGUYỄN HỮU NHẬT MINH
Đà nẵng, 30 tháng 11 năm 2024
Trang 2MỞ ĐẦU
Trong cuộc sống hiện đại, việc lựa chọn nghề nghiệp phù hợp đóng vai trò quan trọng trong việc định hình tương lai của mỗi người Đặc biệt, đối với học sinh phổ thông, những người đang đứng trước ngưỡng cửa quan trọng của sự nghiệp, việc hiểu rõ khả năng bản thân và tìm kiếm hướng đi đúng đắn là vô cùng cần thiết
Ứng dụng trợ lí ảo đánh giá khuyết tật sắc giác hỗ trợ tư vấn ngành nghề cho học sinh trung học phổ thông, từ đó đưa ra những gợi ý nghề nghiệp phù hợp Đây không chỉ là một công cụ hữu ích mà còn là một giải pháp góp phần nâng cao nhận thức cộng đồng
về vai trò của sức khỏe thị giác trong việc định hình sự nghiệp
Sản phẩm này được thực hiện dựa trên sự nghiên cứu nghiêm túc và sự hỗ trợ quý báu
từ người hướng dẫn - TS.Nguyễn Hữu Nhật Minh , cùng sự nỗ lực không ngừng nghỉ của toàn bộ thành viên trong nhóm Hy vọng rằng ứng dụng sẽ mang lại giá trị thực tiễn cho các em học sinh và xã hội
Trang 3LỜI CẢM ƠN
Để tạo ra Ứng dụng trợ lí ảo đánh giá khuyết tật sắc giác hỗ trợ tư vấn ngành nghề chohọc sinh trung học phổ thông, nhóm của chúng tôi đã nhận được rất nhiều sự hỗ trợ và giúp đỡ từ người hướng dẫn - TS.Nguyễn Hữu Nhật Minh
Với tình cảm sâu sắc và chân thành, chúng em xin phép được bày tỏ lòng biết ơn đến thầy đã hỗ trợ và nghiên cứu cùng chúng em trong suốt quá trình thực hiện đề tài Do hạn chế về thời gian và kinh nghiệm, sản phẩm này không thể tránh khỏi những thiếu sót Chúng em rất mong nhận được sự hướng dẫn từ thầy cô và những ý kiến đóng gópquý báu để có thể bổ sung, hoàn thiện và nâng cao chất lượng cho các dự án sau này.Nhóm chúng em xin chân thành cảm ơn!
Trang 4
NHẬN XÉT (Của giảng viên hướng dẫn)
Trang 5
MỤC LỤC
Chương 1: GIỚI THIỆU 4
1.1 Tổng Quan : 4
1.1.1 Tên đề tài: 4
1.1.2 Giới thiệu: 4
1.1.3 Mục tiêu: 5
1.1.4 Logo đề tài: 5
1.1.5 Kế hoạch thực hiện : 6
1.2 Phương pháp, kết quả: 6
1.3 Cấu trúc dự án: 7
Chương 2: Phân tích thiết kế hệ thống 8
2.1 Yêu cầu hệ thống 8
2.2 Sử dụng hệ thống: 8
2.2.1 Danh sách Use Cases: 8
2.2.2 Sử dụng Use Case Diagrams: 10
P 1 Sơ đồ chung 10
Chương 3THIẾT KẾ GIAO DIỆN APP 11
3.1 Phân tích các yêu cầu thiết kế app : 11
3.1.1 Yêu cầu cơ bản đối với một app khảo sát sắc màu: 11
3.1.2 Hỗ trợ Chatbot: 11
3.1.3 Sử dụng Jetpack Compose : 12
3.2 Kết quả sản phẩm mong đợi: 12
3.3 Công nghệ và công cụ ứng dụng : 12
3.4 Kết Quả: 13
Home page: 13
Chương 4Triển khai ứng dụng 17
4.1 Phân tích yêu cầu: 17
4.2 Thiết kế hệ thống: 17
4.3Phát triển ứng dụng: 18
4.3.1 Back-end: 18
4.3.2 Front-end: 18
4.3.3 Chatbot: 18
4.4 Kiểm thử: 18
Chương 5 Kết Luận và Hướng phát triển 19
5.1 Kết Luận: 19
1.3.1 Lợi Thế : 19
1.3.2 Hạn Chế: 19
1.4 Phương hướng phát triển : 20
REFERENCE DOCUMENTS 21
Trang 65Build an E-commerce website Instructors: Mrs Nguyen Thu Huong
Chapter 1: GIỚI THIỆU
1.1 Tổng Quan :1.1.1 Tên đề tài:
“Ứng dụng trợ lí ảo đánh giá khuyết tật sắc giác hỗ trợ tư vấn ngành nghề cho họcsinh trung học phổ thông”
Ứng dụng này không chỉ giúp học sinh có cái nhìn rõ ràng hơn về khả năng nghề
nghiệp của mình mà còn cung cấp các công cụ để cải thiện và phát triển kỹ năng cần thiết cho tương lai Đây cũng là một dự án nghiên cứu của sinh viên ngành Công nghệ thông tin tại Trường Đại học Công nghệ thông tin – Việt Nam – Hàn Quốc, với mục tiêu góp phần vào sự phát triển công nghệ hỗ trợ người khuyết tật và tư vấn nghề
nghiệp cho học sinh
1.1.3 Mục tiêu:
Cung cấp công cụ giúp học sinh đánh giá mức độ khuyết tật sắc giác của mình, từ đónhận diện được những khó khăn trong việc phân biệt màu sắc và hình ảnh,đưa ra nhữnglời khuyên về ngành nghề phù hợp, giúp học sinh lựa chọn con đường học tập và nghềnghiệp sáng suốt,thiết kế giao diện thân thiện, dễ sử dụng, giúp học sinh có thể dễ dàngtiếp cận và sử dụng các tính năng của ứng dụng mà không gặp phải khó khăn
1.1.4 Logo đề tài:
Trang 71.1.5 Kế hoạch thực hiện :
17/10 - 25/10 Thiết kế giao diện người dùng
26/10 - 31/10 Tạo thư viện composable (android studio) - Tạo cấu trúc phần mềm.
Thiết kế Cơ sở dữ liệu
1/11-5/11 Tiến hành lập trình ứng dụng
6/11-15/11 Nghiên cứu AI (dify.ai, promt engine)
16/11-24/11 Thử nghiệm và sửa lỗi
24/11 - 26/11 Hoàn thành tài liệu Word Kết thúc dự án.
Phương pháp : Sử dụng kotlin, android studio, python, prompt, jetpack compose
và một số ngôn ngữ lập trình khác để phát triển ứng dụng Sử dụng MySQL làm
cơ sở dữ liệu và sử dụng figma để thiết kế
Kết quả : Ứng dụng hoàn thành thành công với đầy đủ chức năng, giao diện rõ
ràng và thiết kế thân thiện với người dùng
Trang 8Nội dung chính của luận án gồm 4 Chương:
Chương 1: Giới thiệu: Tổng quan về vấn đề, giới thiệu, mục tiêu, các vấn đề cần
giải quyết và phương pháp nghiên cứu
Chương 2: Phân tích và thiết kế hệ thống: Dựa trên các yêu cầu cụ thể, tạo sơ đồ
để thể hiện cho hệ thống website
Chương 3: Nội dung và kết quả nghiên cứu: Sử dụng các sơ đồ đã tạo trước đó để
thiết kế giao diện, hoàn thiện các chức năng và sử dụng AI
Chương 4: Kết luận và phát triển trong tương lai: Rút ra kết luận từ những kết quả
đạt được, xác định những lĩnh vực chưa đạt được và đề xuất phương hướng pháttriển đề tài trong tương lai
Trang 9Chương 2 : Phân tích thiết kế hệ thống
2.1 Yêu cầu hệ thống
- Quản lý người dùng:
o Ứng dụng hỗ trợ người dùng đăng ký và đăng nhập qua các tài khoản xã hộihoặc email, đảm bảo an toàn thông tin cá nhân Hệ thống tài khoản ngườidùng giúp người dùng dễ dàng quản lý thông tin cá nhân, theo dõi quá trình
sử dụng ứng dụng, và cập nhật các lựa chọn cá nhân liên quan đến khuyếttật sắc giác của họ
- Thông báo và chăm sóc khách hàng:
o Gửi thông báo qua email hoặc trình duyệt về các đơn đặt hàng, khuyến mãi,
hỗ trợ mù màu Các kênh hỗ trợ khách hàng nhanh chóng giải quyết cácthắc mắc và vấn đề của người dùng
- Bài kiểm tra về mắt:
o Ở phần này người dùng sau khi đăng nhập vào sẽ được làm một bài text
để kiểm tra độ mù màu về mắt , nếu có thắc mắc có thể hỏi Lan Thy( Chatbot) và sau khi biết độ mù mắt của học sinh thì Lan Thy sẽ lọc dữ liệu
và cho ra những ngành nghề hợp lí để học sinh có thể tham khảo
- Hỗ trợ trực tuyến qua Chatbot:
o Ứng dụng sẽ tích hợp một chatbot thông minh để hỗ trợ người dùng trongsuốt quá trình sử dụng, từ việc tìm kiếm thông tin về nghề nghiệp hỗ trợcho người mù màu đến các câu hỏi về cách sử dụng ứng dụng, và sau khilàm test sẽ hỗ trợ loại bỏ những nghề nghiệp gây cản trợ đến mắt và đưa ranhững nghề nghiệp tương thích từ sở thích đến vấn đề về mắt
2.2 Sử dụng hệ thống:
2.2.1 Danh sách Use Cases:
- Đăng kí tài khoản người dùng: Người dùng mới tạo tài khoản trong ứng dụng
để bắt đầu sử dụng các dịch vụ hỗ trợ
- Đăng nhập tài khoản người dùng: Người dùng đã có tài khoản và muốn đăng
nhập để sử dụng ứng dụng
- Sử dụng Chatbot hỗ trợ tìm kiếm nghề nghiệp: Người dùng trò chuyện với
chatbot để nhận thông tin về nghề nghiệp phù hợp với người mù màu
- Hỗ trợ qua Chatbot về nghề nghiệp và khuyết tật sắc giác: Người dùng trò
chuyện với chatbot để nhận lời khuyên về nghề nghiệp khi có khuyết tật sắc giác
Trang 10- Kiểm tra về mắt: Người dùng vào và kiểm tra các câu hỏi để đánh giá về mắt.
- Chatbot lọc các nghề nghiệp: Người dùng sau khi làm bài text sẽ biết mắt
mình bị vấn đề gì và sẽ được chatbot đưa ra những nghề phù hợp
Trang 112.2.2 Sử dụng Use Case Diagrams:
2.2.2.1 Sơ đồ chung:
P 1 Sơ đồ chung
Trang 123.1 Phân tích các yêu cầu thiết kế app :3.1.1 Yêu cầu cơ bản đối với một app khảo sát sắc màu:
- Đơn giản và dễ sử dụng: Giao diện phải rõ ràng và dễ thao tác, người dùng cần
cảm thấy thoải mái khi tương tác với app
- Trực quan và hấp dẫn: Màu sắc trong giao diện phải cân nhắc kỹ lưỡng để
không làm người dùng cảm thấy mệt mỏi hoặc khó chịu Có thể sử dụng các gam màunhẹ nhàng, dễ nhìn
- Tạo cảm giác trực quan: Ví dụ, người dùng có thể thấy một ví dụ minh họa về
cách màu sắc sẽ xuất hiện trong giao diện app
3.1.2 Hỗ trợ Chatbot:
- Hiểu ngữ nghĩa câu hỏi: Chatbot AI phải có khả năng hiểu các câu hỏi và lệnh
của người dùng theo ngữ cảnh và ngôn ngữ tự nhiên, thay vì chỉ dựa vào các câu lệnh cụthể
- Khả năng nhận diện và phân tích ý nghĩa: Chatbot cần có khả năng phân tích
văn bản để xác định các thông tin quan trọng như tên, thời gian, địa điểm, yêu cầu cụ thểcủa người dùng
- Xử lý các câu hỏi phức tạp: Chatbot cần có khả năng xử lý các câu hỏi không
có cấu trúc rõ ràng hoặc những câu hỏi đa nghĩa, giải quyết vấn đề khi người dùng có thểnói mơ hồ hoặc sử dụng ngôn ngữ không chuẩn
- Hiểu ngữ cảnh: Chatbot AI cần có khả năng duy trì và hiểu ngữ cảnh của
cuộc hội thoại Điều này có nghĩa là chatbot phải hiểu và nhớ thông tin được chia sẻ trong các câu trả lời trước đó (ví dụ: “Tôi muốn tìm hiểu thêm về AI” - chatbot cần hiểu rằng người dùng đang nói về trí tuệ nhân tạo)
Trang 133.1.3 Sử dụng Jetpack Compose :
- Một giao diện người dùng hiện đại, linh hoạt, và dễ dàng bảo trì Giao diện ứngdụng sẽ bao gồm các thành phần UI tùy biến (composables), được quản lý trạng tháimượt mà và có hiệu suất tối ưu Điều này không chỉ giúp giảm thiểu sự phức tạp trongviệc phát triển ứng dụng mà còn mang lại trải nghiệm người dùng tốt hơn, đồng thời giúpứng dụng dễ dàng mở rộng và thay đổi trong tương lai,Jetpack Compose sẽ cung cấp mộtgiao diện người dùng mượt mà và dễ dàng tương tác Các hành động như nhấn nút, nhậpvăn bản, cuộn danh sách, v.v., đều được xử lý trực tiếp trong mã Kotlin mà không cầnphải lo lắng về việc tương tác giữa XML và Activity/Fragment như trước đây
3.2 Kết quả sản phẩm mong đợi:
Giao diện ứng dụng được thiết kế phục vụ hai nhóm người dùng chính: học sinh
phổ thông thực hiện khảo sát mù màu và tìm kiếm định hướng nghề nghiệp phù hợp,cùng với quản trị viên (admin) chịu trách nhiệm quản lý thông tin bài kiểm tra, kết quả,cũng như tài khoản người dùng
Các trang dự kiến bao gồm :
Lan Thy (Chatbot) :
Trả lời các câu hỏi về cách sử dụng ứng dụng, cách thực hiện bài kiểmtra, hoặc ý nghĩa của kết quả mù màu
Đưa ra gợi ý nghề nghiệp dựa trên kết quả khảo sát mù màu và sở thích cánhân
Cung cấp thông tin chi tiết về từng ngành nghề, bao gồm mô tả côngviệc, yêu cầu thị lực, và triển vọng nghề nghiệp
Tương tác để giúp học sinh khám phá thêm về sở thích và năng lực củabản thân
3.3 Công nghệ và công cụ ứng dụng :
Sử dụng kotlin trong Android Studio để tạo app
Sử dụng jetpack compose để xử lý trực tiếp trong mã Kotlin mà không cầnphải lo lắng về việc tương tác giữa XML và Activity/Fragment như trước đây
Sử dụng ngôn ngữ python để tạo Lan Thy (chatbot)
Sử dụng MySQL để quản lí database thuận tiện
Trang 15P 4 Register an account
Trang 16 View the list of products on the website
P 5: Product portfolio
Product detail information page
P 6 Product detail information page
Trang 17 Admin page
P 7 Admin page
P 31 Admin page
Trang 1817Build an E-commerce website Instructors: Mrs Nguyen Thu Huong
4.1 Phân tích yêu cầu:
Xác định chức năng chính:
Khảo sát mù màu (tạo câu hỏi, hiển thị kết quả)
Định hướng nghề nghiệp dựa trên kết quả khảo sát
Quản lý tài khoản người dùng
Front-end:Kotlin, jetpack compose, android studio
Back-end: Python (Django/Flask), laravel.
Cơ sở dữ liệu: MySQL.
Chatbot: dify.ai.
4.2 Thiết kế hệ thống:
Thiết kế giao diện (UI/UX):
Giao diện đơn giản, trực quan, dễ sử dụng cho học sinh
Chatbot tích hợp vào trang chính với giao diện trò chuyện hiện đại
Trang 194.3Phát triển ứng dụng:
4.3.1 Back-end:
Xây dựng API để:
o Quản lý người dùng (đăng ký, đăng nhập)
o Lưu trữ và truy xuất câu hỏi khảo sát
o Tính toán và lưu trữ kết quả khảo sát
o Tích hợp chatbot qua API
4.3.2 Front-end:
Tạo giao diện người dùng với các chức năng chính:
o Trang đăng ký/đăng nhập
o Trang thực hiện bài kiểm tra mù màu (hiển thị câu hỏi)
o Trang kết quả (kết hợp hình ảnh và gợi ý nghề nghiệp)
o Giao diện chatbot hỗ trợ (hộp chat tương tác)
4.3.3 Chatbot:
Xây dựng kịch bản hội thoại:
o Hỗ trợ các câu hỏi phổ biến
o Trả lời những thắc mắc về ứng dụng, cách sử dụng
o Hỗ trợ học sinh hướng nghiệp
o Gợi ý nghề nghiệp dựa trên dữ liệu kết quả khảo sát
Tích hợp chatbot vào giao diện chính
4.4 Kiểm thử:
Kiểm thử chức năng (Functional Testing):
Đăng ký/đăng nhập, thực hiện bài kiểm tra, hiển thị kết quả, và hoạt động củachatbot
Kiểm thử giao diện (UI Testing):
Đảm bảo giao diện hoạt động tốt trên các thiết bị (PC, điện thoại, máy tính bảng)
Kiểm thử hiệu suất (Performance Testing):
Đo lường thời gian tải trang, tốc độ phản hồi API, và hiệu quả xử lý của chatbot
Trang 20Chương 5 Kết Luận và Hướng phát triển
5.1 Kết Luận:
1.3.1 Lợi Thế :
Hỗ trợ định hướng nghề nghiệp cá nhân hóa:
Ứng dụng không chỉ giúp học sinh nhận thức tình trạng mù màu mà còn cung cấpcác gợi ý nghề nghiệp phù hợp, giúp người dùng hiểu rõ hơn về bản thân và lựa chọncon đường nghề nghiệp hiệu quả
kê kết quả cũng mang lại giá trị lớn hơn cho ứng dụng
Hỗ trợ quản lý hiệu quả:
Quản trị viên có công cụ mạnh mẽ để quản lý câu hỏi khảo sát, kết quả, và chatbot,đảm bảo ứng dụng hoạt động ổn định và đáp ứng tốt nhu cầu người dùng
Trang 21 Chatbot có thể gặp khó khăn trong việc xử lý các câu hỏi phức tạp hoặc ngoài phạm
vi kịch bản đã lập trình, dẫn đến trải nghiệm chưa tối ưu cho người dùng
Đối tượng người dùng hạn chế:
Hiện tại, ứng dụng chỉ phục vụ học sinh phổ thông Các nhóm người dùng khác nhưsinh viên đại học hoặc người tìm việc vẫn chưa được tối ưu hóa
Yêu cầu kết nối internet:
Ứng dụng đòi hỏi kết nối internet ổn định để sử dụng các tính năng như khảo sát,chatbot, và hiển thị kết quả, điều này có thể gây khó khăn cho người dùng ở nhữngkhu vực có hạn chế về hạ tầng mạng
Cần nâng cao bảo mật:
Vì ứng dụng lưu trữ thông tin cá nhân và kết quả khảo sát, cần đảm bảo các tiêuchuẩn bảo mật cao để tránh rủi ro mất dữ liệu hoặc vi phạm quyền riêng tư
Để khắc phục các hạn chế hiện tại, nhóm phát triển có thể:
Tăng cường dữ liệu ngành nghề và cải thiện thuật toán phân tích để nâng cao tínhchính xác của gợi ý
Sử dụng công nghệ trí tuệ nhân tạo tiên tiến hơn để cải thiện hiệu quả của chatbot
Mở rộng tính năng để phục vụ nhiều đối tượng người dùng khác nhau
Tối ưu hóa ứng dụng để hoạt động tốt trong môi trường offline (tối thiểu một sốchức năng cơ bản)
Đầu tư vào bảo mật thông tin, áp dụng các tiêu chuẩn quốc tế về an toàn dữ liệu