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

đồ án xây dựng website học tiếng anh cho người đi làm

96 2 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 đề Phát triển Website hỗ trợ học tiếng Anh cho người đi làm
Tác giả Nguyễn Khánh Huyền
Người hướng dẫn ThS. Trần Thị Hồng Yến
Trường học Trường Đại học Công nghệ Thông tin, Đại học Quốc gia TP. Hồ Chí Minh
Chuyên ngành Công nghệ phần mềm
Thể loại Đồ án
Năm xuất bản 2024
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 96
Dung lượng 3,25 MB

Cấu trúc

  • CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI (12)
    • 1.1. Lí do chọn đề tài (12)
    • 1.2. Mục đích nghiên cứu (12)
    • 1.3. Phạm vi ứng dụng (13)
    • 1.4. Đối tượng sử dụng (14)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (15)
    • 2.1. Các công nghệ, thư viện, ngôn ngữ, công cụ được sử dụng (15)
      • 2.1.1. Các ngôn ngữ: Typescript, TSX, CSS/SCSS (15)
      • 2.1.2. Công nghệ/thư viện: React, Redux, Firebase (16)
      • 2.1.3. Các công cụ: Github, Figma, Visual Studio Code (17)
      • 2.1.4. Các thư viện khác (17)
    • 2.2. Phương pháp phát triển (18)
    • 2.3. Kết quả mong đợi (18)
  • CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG (19)
    • 3.1. Use-case (20)
      • 3.1.1. Use-case “Kiểm tra đầu vào” (23)
      • 3.1.2. Use-case “Thêm vào mục lưu trữ” (24)
      • 3.1.3. Use-case “Chơi trò chơi vui” (25)
      • 3.1.4. Use-case “Làm bài kiểm tra vượt cấp” (26)
      • 3.1.5. Use-case “Xem xếp hạng thành tích” (28)
      • 3.1.6. Use-case “Cập nhật thông tin người dùng” (29)
      • 3.1.7. Use-case “Khoá tài khoản” (30)
      • 3.1.8. Use-case “Duyệt bài viết” (32)
      • 3.1.9. Use-case “Ghim bình luận” (33)
      • 3.1.10. Use-case “Xem báo cáo và thống kê” (34)
    • 3.2. Thiết kế (35)
      • 3.2.1. Thiết kế giao diện (35)
      • 3.2.2. Thiết kế dữ liệu (37)
      • 3.2.3. Thiết kế kiến trúc (38)
  • CHƯƠNG 4: XÂY DỰNG ỨNG DỤNG (39)
    • 4.1. Màn hình “Login” (39)
    • 4.2. Màn hình “Register” (40)
    • 4.3. Màn hình “Onboarding” (41)
    • 4.4. Màn hình “Onboarding Result” (42)
    • 4.5. Màn hình “Study Description” (44)
    • 4.6. Màn hình “Study Detail” (45)
    • 4.7. Màn hình “Study Finish” (46)
    • 4.8. Màn hình “Document” (47)
    • 4.9. Màn hình “Document Detail” (48)
    • 4.10. Màn hình “Exercise” (49)
    • 4.11. Màn hình “Exercise Description” (50)
    • 4.12. Màn hình “Exercise Detail” (51)
    • 4.13. Màn hình “Exercise Finish” (52)
    • 4.14. Màn hình “Forum” (54)
    • 4.15. Màn hình “Add new post” (55)
    • 4.16. Màn hình “Your posts” (56)
    • 4.17. Màn hình “Post Detail” (57)
    • 4.18. Màn hình “Saved” (58)
    • 4.19. Màn hình “Personal Information” (59)
    • 4.20. Hộp thoại “Update Avatar” (60)
    • 4.21. Hộp thoại “Update Personal Information” (61)
    • 4.22. Màn hình “Dashboard” (62)
    • 4.23. Màn hình “Test Level Up Description” (63)
    • 4.24. Màn hình “Test Level Up Detail” (64)
    • 4.25. Màn hình “Test Level Up Finish” (65)
    • 4.26. Màn hình “Game” (66)
    • 4.27. Màn hình “Game Description” (67)
    • 4.28. Màn hình “Game Detail” (68)
    • 4.29. Màn hình “Game Result” (71)
    • 4.30. Màn hình “Dashboard” – Admin (72)
    • 4.31. Màn hình “Manage Study” – Admin (73)
    • 4.32. Hộp thoại “Add new Path” – Admin (74)
    • 4.33. Màn hình “Manage Study Detail” – Admin (75)
    • 4.34. Hộp thoại “Add new Route” – Admin (76)
    • 4.35. Màn hình “Manage Document” – Admin (77)
    • 4.36. Hộp thoại “Add new Topic” – Admin (78)
    • 4.37. Màn hình “Manage Document Detail” – Admin (79)
    • 4.38. Hộp thoại “Add new Document” – Admin (80)
    • 4.39. Màn hình “Manage Exercise” – Admin (81)
    • 4.40. Hộp thoại “Add new Exercise” – Admin (82)
    • 4.41. Màn hình “Manage Exercise Detail” – Admin (83)
    • 4.42. Hộp thoại “Add new Answer” – Admin (84)
    • 4.43. Màn hình “Manage Forum” – Admin (85)
    • 4.44. Màn hình “Manage Test” – Admin (86)
    • 4.45. Màn hình “Manage Onboarding” – Admin (87)
    • 4.46. Hộp thoại “Add new Onboarding Test” – Admin (88)
    • 4.47. Màn hình “Manage Users” – Admin (89)
    • 4.48. Một số màn hình ở chế độ nền tối (90)
  • CHƯƠNG 5: KẾT LUẬN (93)
    • 5.1. Kết quả (93)
    • 5.2. Ưu điểm/Nhược điểm (93)
      • 5.2.1. Ưu điểm (93)
      • 5.2.2. Nhược điểm (94)
    • 5.3. Hướng phát triển (94)
  • TÀI LIỆU THAM KHẢO (96)

Nội dung

o Quản lý diễn đàn: Ý phát triển là cho phép quản trị viên đăng những thông báo quan trọng, duyệt các bài viết của người học muốn đăng, và có quyền ghim lên đầu hoặc xóa những bình luận

GIỚI THIỆU ĐỀ TÀI

Lí do chọn đề tài

Ngày nay, thế giới ngày càng hội nhập Vì thế, tiếng Anh là vô cùng cần thiết đối với hầu hết mọi người, nhằm có thể bắt kịp nhịp phát triển của thế giới Và Việt Nam cũng có xu hướng này Nhà nhà học tiếng Anh, người người học tiếng Anh, không phân biệt tuổi tác Tuy nhiên, những người đi làm thường không có thời gian để đến các lớp học cũng như việc tiếp thu không hiệu quả do cách học không hiệu quả Từ đó, dễ xảy ra tâm trạng chán nản, từ bỏ

Hiểu được tâm lý đó, Website Hỗ trợ học tiếng Anh cho người đi làm được tạo ra để mang lại điều kiện tốt cho những người bận rộn có khả năng phát triển bản thân Website đã được xây dựng các tính năng cơ bản ở Đồ án 1 Ở đồ án này, em sẽ tiếp tục hoàn thiện nó bằng cách tích hợp các tính năng hấp dẫn, thu hút, tăng hiệu quả học tập cho người học; làm mượt mà phần quản trị cho quản trị viên Bên cạnh đó, cũng chú trọng vào độ tương thích giao diện trên nhiều thiết bị nhằm đáp ứng nhu cầu đa dạng của người dùng.

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

Phát triển Website có thể:

• Đánh giá cấp độ hiện tại của học viên mới và cho phép vượt cấp độ hiện tại

• Cung cấp cho người dùng danh sách bài học được hệ thống hóa theo chủ đề, dễ dàng tiếp thu một cách mau chóng, đầy đủ, chính xác với kho dữ liệu phong phú liên quan đến các chủ đề trong đời sống và công việc

• Giúp người dùng có hứng thú với việc học tiếng Anh hơn qua những bài luyện tập và diễn đàn kết nối với cộng đồng sẽ mang lại nhiều động lực hơn

• Hỗ trợ quản trị viên quản lý các tài liệu, thông tin người dùng

• Hỗ trợ tốt việc học ban đêm nhờ vào tính năng chuyển đổi chủ đề nền tối, sáng

• Tăng hứng thú cho học viên bằng trò chơi vui và bảng xếp hạng

Phạm vi ứng dụng

• Nền tảng hỗ trợ: Triển khai trên Website

• Chức năng tiếp tục phát triển: o Gợi ý lộ trình học: Ý phát triển là hệ thống đưa ra bài kiểm tra đầu vào, dựa vào sự lựa chọn của người dùng để đưa ra cấp độ hiện tại và lộ trình học tương ứng với cấp độ Tạo ma trận điểm và cấp độ để truy xuất lộ trình học dựa vào kết quả trả lời câu hỏi của người dùng o Xem tiến trình học tập theo lộ trình: Người dùng xem được tiến trình học tập của bản thân Ý phát triển là người dùng có thể xem các thông số về lộ trình học, làm bài luyện tập, sự tương tác trên diễn đàn Chi tiết lộ trình học được lấy từ trang tài liệu, học viên có thể xem chi tiết nội dung học ở đó o Luyện tập qua các trò chơi: Người dùng ôn lại kiến thức đã học qua các trò chơi có lưu lại kết quả Ý phát triển là bắt buộc học viên làm lại các câu sai trước khi sang bài luyện tập khác o Quản lý diễn đàn: Ý phát triển là cho phép quản trị viên đăng những thông báo quan trọng, duyệt các bài viết của người học muốn đăng, và có quyền ghim lên đầu hoặc xóa những bình luận có nội dung không liên quan, không lành mạnh

• Chức năng xây dựng mới: o Kiểm tra đầu vào học viên: Người dùng trả lời các câu hỏi đầu vào nhằm đánh giá trình độ hiện tại với 3 cấp độ: sơ cấp, trung bình và nâng cao o Lưu trữ vào mục cần nhớ: Người dùng có thể lưu trữ những bài học, từ vựng,… vào mục riêng của mỗi tài khoản o Chế độ nền tối: Người dùng có thể tùy chỉnh chế độ nền tối hoặc chế độ nền sáng để thích hợp với nhu cầu học ban đêm hay ban ngày o Trò chơi vui: Xây dựng thêm trò chơi thú vị hấp dẫn người học đồng thời tích điểm thưởng, nêu tên trên bảng xếp hạng

14 o Kiểm tra vượt cấp bậc: Người dùng có thể làm bài kiểm tra để xem xét có thể vượt cấp bậc hiện tại hay không o Quản lý các bài kiểm tra: Quản trị viên có quyền thêm, sửa, xoá các bài kiểm tra đầu vào, kiểm tra vượt cấp o Quản lý người dùng: Quản trị viên có quyền cập nhật thông tin cá nhân, khoá tài khoản người dùng o Báo cáo và phân tích: Cung cấp thông tin cho quản trị viên nhằm cải thiện chất lượng website.

Đối tượng sử dụng

• Người dùng: kiểm tra đầu vào, xác nhận cấp độ hiện tại, xem được tiến trình học, lưu trữ những kiến thức cần nhớ, luyện tập qua các trò chơi, có thể chia sẻ và giải đáp thắc mắc qua diễn đàn

• Quản trị viên: Quản lý các bài học, kho kiến thức, tạo lộ trình học, các bài luyện tập, bài kiểm tra, diễn đàn và người dùng, xem báo cáo phân tích

CƠ SỞ LÝ THUYẾT

Các công nghệ, thư viện, ngôn ngữ, công cụ được sử dụng

Trong quá trình phát triển ứng dụng, một số các công nghệ, ngôn ngữ, thư viện, công cụ được sử dụng:

• Ngôn ngữ: o Typescript o TSX o CSS/SCSS

• Công nghệ/thư viện: o React o Redux o Firebase

• Công cụ: o Github o Figma o Visual Studio Code

• Các thư viện khác: o Flexbox Grid

Sau đây, em sẽ điểm qua một vài điểm đặc biệt, điều khiến em sử dụng chúng:

2.1.1 Các ngôn ngữ: Typescript, TSX, CSS/SCSS Đây là các ngôn được sử dụng để tạo nên Website

• Typescript: là một ngôn ngữ lập trình mở rộng của Javascript, được thiết kế để giải quyết các vấn đề về kiểm tra lỗi và quản lý mã nguồn trong quá trình phát triển phần mềm Việc sử dụng Typescript giúp tăng tính ổn định và tin cậy của ứng dụng, đồng thời giúp cho quá trình phát triển và bảo trì ứng dụng trở nên dễ dàng và linh hoạt hơn

• TSX(Typescript Extension): là một phần mở rộng của Typescript, được sử dụng để phát triển giao diện người dùng trong React TSX cho phép bạn viết mã HTML giống như trong React, nhưng với các tính năng của Typescript như kiểm tra lỗi tĩnh và kiểu dữ liệu tĩnh

• CSS(Cascading Style Sheets): là một ngôn ngữ định dạng kiểu được sử dụng để tạo kiểu cho các tài liệu HTML hoặc XML CSS cho phép bạn kiểm soát cách mà các phần tử HTML hiển thị trên trang web, bao gồm kích thước, màu sắc, khoảng cách, vị trí và hình dạng

2.1.2 Công nghệ/thư viện: React, Redux, Firebase

React và Redux là hai công nghệ/thư viện được sử dụng xuyên suốt quá trình phát triển ứng dụng Chúng có mối quan hệ chặt chẽ với nhau

• React: o React là một thư viện JavaScript mã nguồn mở được phát triển bởi Facebook, được sử dụng để xây dựng các giao diện người dùng (UI) động cho các ứng dụng web React cho phép phát triển các UI phức tạp bằng cách sử dụng các thành phần (components) độc lập và có thể tái sử dụng o React cũng cho phép tích hợp với các thư viện và framework khác như Redux, React Router, hoặc Axios để tạo ra các ứng dụng web đầy đủ tính năng

• Redux: o Redux là một thư viện JavaScript mã nguồn mở được sử dụng để quản lý trạng thái (state) của ứng dụng web Redux cho phép quản lý trạng thái của ứng dụng một cách dễ dàng và hiệu quả, giúp giảm thiểu các lỗi và tăng tính ổn định của ứng dụng o Redux cũng cho phép tích hợp với các thư viện và framework khác như React, Angular hoặc Vue để tạo ra các ứng dụng web đầy đủ tính năng

17 o Firebase là một công nghệ của Google được sử dụng để phát triển các ứng dụng web và di động Nó cung cấp các công cụ để lưu trữ dữ liệu, xác thực người dùng, phân tích dữ liệu, cung cấp thông báo đẩy và nhiều tính năng khác o Firebase cũng cung cấp các thư viện (libraries) cho các ngôn ngữ lập trình khác nhau như JavaScript, Android, iOS, Unity, và C++ Những thư viện này giúp cho việc tích hợp các tính năng của Firebase vào ứng dụng trở nên dễ dàng hơn

2.1.3 Các công cụ: Github, Figma, Visual Studio Code

• Github: là một nền tảng mã nguồn miễn phí, cho phép nhà phát triển lưu trữ, quản lý, chia sẻ mã nguồn của mình với cộng đồng mạnh mẽ Các tính năng khác nổi bật như tự động tích hợp, tự động triển khai Đây là công cụ được sử dụng rộng rãi nhất hiện nay

• Figma: là một ứng dụng thiết kế đồ họa dựa trên đám mây (cloud-based graphic design tool), cho phép người dùng tạo ra các thiết kế đồ họa, giao diện người dùng (UI), giao diện trải nghiệm người dùng (UX) và các bản vẽ khác trên nền tảng web Cộng đồng của công cụ này vô cùng lớn mạnh

• Visual Studio Code: là công cụ giúp biên tập, soạn thảo code, đi kèm nhiều tính năng như debug, IntelliSense, linter, và thay đổi mã nguồn phục hồi, giúp người dùng tăng tốc độ phát triển và giảm thiểu các lỗi Nó hỗ trợ nhiều ngôn ngữ và tích hợp sẵn trình quản lý code Git, Docker,… Bên cạnh đó, nó hỗ trợ nhiều extension để người dùng có thể mở rộng các tính năng mong muốn Cộng đồng của công cụ này vô cùng lớn mạnh

• Flexbox Grid: thư viện hỗ trợ giao diện người dùng sẽ tương thích nhiều kích thước thiết bị khác nhau

Phương pháp phát triển

Quản lý mã nguồn: sử dụng Github để quản lý

Các bước phát triển cùng phương pháp thực hiện bắt đầu từ đồ án 1, được liệt kê như bên dưới:

• Tìm hiểu các công nghệ React, Redux, Firebase

• Thu thập yêu cầu thông qua: o Khảo sát bằng form: giao diện người dùng o Khảo sát các ứng dụng liên quan: chức năng

• Phân tích và xác định yêu cầu: o Khảo sát bằng form để thu thập ý kiến về giao diện người dùng o Các ứng dụng liên quan “Doulingo”, “Viblo” để khảo sát những chức năng đã có và cần có cho ứng dụng Đưa ra các yêu cầu chức năng và phi chức năng

• Thiết kế: o Thiết kế giao diện o Thiết kế dữ liệu

• Cài đặt: dựa trên nền tảng công nghệ và sử dụng các thư viện, ngôn ngữ được nêu ở phần trước Đồ án 2 sẽ tập trung và bước thiết kế giao diện người dùng, thiết kế dữ liệu và cài đặt mã nguồn.

Kết quả mong đợi

• Hoàn thiện các chứng năng cần phát triển và các chức năng mới của Website

• Triển khai lên môi trường thực tế

PHÂN TÍCH THIẾT KẾ HỆ THỐNG

Use-case

Dưới đây là sơ đồ use-case được thiết kế sau khi xác định được các chức năng cụ thể của Website:

Hình 3.1 Hình ảnh use-case Hệ thống Hỗ trợ học tiếng Anh cho người đi làm

Bảng 3.1 Danh sách use-case người dùng

1 Đăng nhập Đăng nhập bằng tài khoản đã được đăng ký

2 Đăng kí Đăng kí tài khoản mới bằng Email

3 Quên mật khẩu Lấy lại mật khẩu qua Email

4 Cập nhật thông tin cá nhân

Cập nhật những thông tin cá nhân như tên, ngày sinh, số điện thoại, email,…

5 Đổi mật khẩu Cập nhật mật khẩu mới

6 Kiểm tra đầu vào Học viên làm bài kiểm tra đầu vào để xác định cấp độ hiện tại

7 Học theo lộ trình Học viên chọn chặng hiện tại trong lộ trình đã gợi ý

8 Luyện tập Học viên luyện tập kiến thức đã học thông qua trò chơi tương ứng với cấp độ hiện tại

9 Đăng bài viết Học viên đăng bài viết lên diễn đàn

10 Yêu thích bài viết Học viên yêu thích các bài viết của Học viên khác trên diễn đàn

11 Bình luận Học viên đăng bình luận dưới bình luận của một bài viết của chính mình hoặc học viên khác

12 Thêm vào mục lưu trữ

Học viên lưu từ vựng hoặc câu cần lưu vào mục lưu trữ

13 Chơi trò chơi vui Học viên chơi trò chơi vui “Vượt chướng ngại vật”

14 Làm bài test vượt cấp Học viên làm bài test vượt cấp dựa trên kết quả

15 Xem xếp hạng thành tích

Người dùng xem xếp hạng thành tích cá nhân khi chơi game vui của tất cả mọi người sử dụng ứng dụng

Bảng 3.2 Danh sách use-case quản trị viên

1 Thêm lộ trình học Quản trị viên thêm lộ trình học

2 Cập nhật lộ trình học Quản trị viên cập nhật lộ trình học

3 Xóa lộ trình học Quản trị viên xóa lộ trình học

4 Thêm tài liệu Quản trị viên thêm tài liệu

5 Cập nhật tài liệu Quản trị viên cập nhật tài liệu

6 Xóa tài liệu Quản trị viên xóa tài liệu

7 Thêm bài luyện tập Quản trị viên thêm các bài luyện tập dưới dạng trò chơi, với các hình thức trò chơi khác nhau

8 Cập nhật bài luyện tập Quản trị viên cập nhật các bài luyện tập

9 Xóa bài luyện tập Quản trị viên xóa các bài luyện tập

10 Cập nhật thông tin người dùng Quản trị viên cập nhật những thông tin cá nhân như tên, tuổi, giới tính, tiểu sử, ngày sinh,…

11 Khóa tài khoản Quản trị viên khóa tài khoản Học viên

12 Duyệt bài viết Quản trị viên duyệt hoặc huỷ bài viết đang chờ của

13 Ghim bình luận Quản trị viên ghim bình luận cần ghim lên đầu dưới bài viết

14 Xem báo cáo và thống kê Quản trị viên xem báo cáo, thống kê theo tuần, tháng, năm

15 Quản lý bài kiểm tra đầu vào

Quản trị viên thêm, sửa, xóa bài kiểm tra đầu vào

16 Quản lý bài test vượt cấp

Quản trị viên thêm, sửa, xóa bài kiểm tra vượt cấp

Dưới đây là chi tiết các use-case được thêm mới ở đồ án 2:

3.1.1 Use-case “Kiểm tra đầu vào”

Bảng 3.3 Use-case “Kiểm tra đầu vào”

Use case Name Kiểm tra đầu vào

Description Học viên làm bài kiểm tra đầu vào để xác định cấp độ hiện tại

Trigger Sau khi Học viên đăng nhập lần đầu tiên

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống lần đầu tiên

Post-conditions Hệ thống ghi nhận cấp độ hiện tại của học viên vào cơ sở dữ liệu, cung cấp lộ trình học dựa trên cấp độ được ghi nhận

Basic Flow 1 Hệ thống đưa ra một loạt các câu hỏi để đánh giá trình độ hiện tại của Học viên

2 Học viên trả lời tất cả câu hỏi và nhấn nút “Submit”

3 Hệ thống hiển thị kết quả và dựa vào kết quả để đưa ra “cấp độ” hiện tại của Học viên và lộ trình dựa vào cấp độ đó

5 Hệ thống chuyển sang màn hình “Study” với lộ trình đã được chọn

Alternative Flow 4 a Học viên chọn “Choose another level” i Hệ thống hiển thị danh sách các cấp độ ii Học viên lựa chọn cấp độ mong muốn

=> Tiếp tục bước 5 trong sơ đồ

Exception Flow 3 a Hệ thống lỗi tải dữ liệu, hiển thị thông báo, quay lại trang

3.1.2 Use-case “Thêm vào mục lưu trữ”

Bảng 3.4 Use-case “Thêm vào mục lưu trữ”

Use case Name Thêm vào mục lưu trữ.

Description Học viên lưu từ vựng hoặc câu cần lưu vào mục lưu trữ

Trigger Người dùng muốn lưu trữ nội dung bài học, tài liệu

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống

2 Nội dung từ vựng, câu, bài học, tài liệu chưa được lưu trữ

Post-conditions Nội dung từ vựng, câu đã được lưu vào mục lưu trữ cá nhân thành công, cập nhật vào cơ sở dữ liệu

Basic Flow 1 Người dùng truy cập vào bài học hoặc tài liệu

2 Người dùng chọn nút biểu tượng “Trái tim” ở nội dung từ vựng, câu, tài liệu muốn lưu trữ

3 Hệ thống lưu trữ nội dung vào mục lưu trữ thành công, trái tim thay đổi màu biểu hiện đã được thêm vào mục lưu trữ Alternative Flow Không có

Exception Flow 3 a Hệ thống bị lỗi:

=> Hiển thị thông báo, kết thúc luồng

3.1.3 Use-case “Chơi trò chơi vui”

Bảng 3.5 Use-case “Chơi trò chơi vui”

Use case Name Chơi trò chơi vui

Description Học viên chơi trò chơi vui “Vượt chướng ngại vật”

Trigger Người dùng muốn chơi trò chơi vui

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống

Post-conditions Hệ thống ghi nhận kết quả và lưu vào bảng xếp hạng trong trang

Basic Flow 1 Người dùng vào trang “Game”

2 Hệ thống hiển thị danh sách các vòng của trò chơi

3 Người dùng chọn vòng chơi hiện tại

4 Hệ thống hiển thị chỉ dẫn

5 Người dùng nhấn vào nút “Start”

6 Hệ thống tải dữ liệu và hiển thị màn hình chơi trò chơi

7 Người dùng hoàn thành trò chơi

8 Hệ thống ghi nhận kết quả và lưu vào bảng xếp hạng trong trang “Leaderboard”

Alternative Flow 7 a Người dùng nhấn nút “Escape”

=> Hiển thị hộp thoại xác nhận thoát, nếu người dùng chọn

“Yes”, quay lại trang “Game”

Exception Flow 6 a Hệ thống tải dữ liệu không thành công:

=> Hiển thị thông báo, quay lại trang “Game”

3.1.4 Use-case “Làm bài kiểm tra vượt cấp”

Bảng 3.6 Use-case “Làm bài kiểm tra vượt cấp”

Use case Name Làm bài kiểm tra vượt cấp

Description Học viên làm bài kiểm tra vượt cấp để vượt lên cấp độ cao hơn Priority Có thể có

Trigger Người dùng vượt qua cấp độ hiện tại

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống

2 Người dùng chưa đạt được cấp độ cao nhất

Post-conditions Người dùng được tăng cấp độ

Basic Flow 1 Người dùng vào trang “Study”

2 Người dùng chọn nút “Level up”

3 Hệ thống hiển thị bài chỉ dẫn cho bài kiểm tra

4 Người dùng nhấn nút “Start”

5 Hệ thống hiển thị lần lượt từng câu hỏi

6 Người dùng hoàn thành tất cả các câu và nhấn nút “Submit”

7 Hệ thống tính toán và chuyển sang trang kết quả, hiển thị cấp độ đạt được tương ứng với kết quả, cấp độ cao hơn cấp độ hiện tại

8 Người dùng xác nhận cấp độ tương ứng với kết quả

9 Hệ thống lưu cấp độ vào cơ sở dữ liệu của người dùng, cập nhật lộ trình học, bài luyện tập tương ứng với cấp độ

Alternative Flow 6 b Người dùng nhấn nút “Escape”

=> Hệ thống yêu cầu xác nhận chắc chắn thoát hay không, nếu có kết thúc luồng, ngược lại tiếp tục bước 5 trong luồng

7 a Nếu kết quả cấp độ bằng với cấp độ hiện tại => Hệ thống không cho thay đổi cấp độ khác b Nếu kết quả cấp độ thấp hơn cấp độ hiện tại => Hệ thống cho phép cập nhật xuống cấp thấp hơn

8 a Người dùng nhấn nút “Keep current Level”

=> Hệ thống giữ nguyên cấp độ hiện tại, quay về trang

Exception Flow 5 a Hệ thống tải dữ liệu không thành công:

=> Hiển thị thông báo, quay lại trang chỉ dẫn

3.1.5 Use-case “Xem xếp hạng thành tích”

Bảng 3.7 Use-case “Xem xếp hạng thành tích”

Use case Name Xem xếp hạng thành tích

Description Cho phép người dùng xem bảng thành tích học tập và luyện tập của tất cả mọi người tham gia trò chơi vui

Trigger Người dùng muốn xem bảng xếp hạng thành tích

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống

Post-conditions Hiển thị danh sách bảng xếp hạng thành tích

Basic Flow 1 Người dùng vào trang “Leaderboard”

2 Hệ thống tải dữ liệu danh sách bảng xếp hạng lên và hiển thị lên màn hình

Exception Flow 2 a Hệ thống tải dữ liệu không thành công:

3.1.6 Use-case “Cập nhật thông tin người dùng”

Bảng 3.8 Use-case “Cập nhật thông tin người dùng”

Use case Name Cập nhật thông tin người dùng

Description Quản trị viên cập nhật các thông tin của người dùng: tên, giới tính, ngày sinh, tiểu sử,…

Trigger Quản trị viên muốn cập nhật thông tin cá nhan của người dùng

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống với vai trò Quản trị viên

Post-conditions Thông tin người dùng được cập nhật thành công, cập nhật vào cơ sở dữ liệu

Basic Flow 1 Quản trị viên chọn học viên trong danh sách trang “Manage

Users”, sau đó nhấn nút “Edit”

2 Hệ thống hiển thị hộp thoại “Edit student”

3 Quản trị viên cập nhật các thông tin của người dùng

4 Quản trị viên nhấn “Submit”

5 Hệ thống kiểm tra nội dung có hợp lệ hay không, nếu có tiếp tục bước 6

6 Hệ thống cập nhật thông tin cá nhân của học viên được chọn, cập nhật cơ sở dữ liệu

Alternative Flow 4 a Người dùng nhấn nút “Cancel”:

Exception Flow 5 a Nội dung không hợp lệ, hệ thống hiển thị thông báo

3.1.7 Use-case “Khoá tài khoản”

Bảng 3.9 Use-case “Khoá tài khoản”

Use case Name Quản trị viên khóa tài khoản học viên

Description Quản trị viên khóa tài khoản học viên

Trigger Quản trị viên muốn khoá tài khoản của một người dùng đã tồn tại

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống với vai trò Quản trị viên

Post-conditions Tài khoản học viên được khóa thành công, cập nhật vào cơ sở dữ liệu

Basic Flow 1 Người dùng chọn học viên trong danh sách trang “Manage

Users”, sau đó nhấn nút “Deactive account”

2 Hệ thống yêu cầu xác nhận chắc chắn khóa của người dùng

4 Hệ thống kiểm tra nội dung có hợp lệ hay không, nếu có tiếp tục bước 5

5 Hệ thống khóa tài khoản học viên được chọn, cập nhật cơ sở dữ liệu

Alternative Flow 3 a Người dùng nhấn nút “Cancel”:

Exception Flow 4 a Nội dung không hợp lệ, hệ thống hiển thị thông báo

3.1.8 Use-case “Duyệt bài viết”

Bảng 3.10 Use-case “Duyệt bài viết”

Use case Name Duyệt bài viết

Description Quản trị viên duyệt các bài viết được tạo bởi Học viên

Trigger Quản trị viên duyệt các bài viết đang chờ xử lý

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống với vai trò Quản trị viên

Post-conditions Bài viết được duyệt thành công, đăng công khai

Basic Flow 1 Người dùng vào trang “Manage Forum” và chọn một bài viết trong danh sách “Pending Post”

2 Người dùng nhập ghi chú

3 Người dùng nhấn nút “Accept”

4 Hệ thống xác nhận đăng bài, quay lại trang “Manage Forum”

Alternative Flow 3 a Người dùng nhấn nút “Cancel”:

=> Bài viết bị huỷ, hiển thị trong danh sách huỷ của người tạo kèm ghi chú, kết thúc luồng

3.1.9 Use-case “Ghim bình luận”

Bảng 3.11 Use-case “Ghim bình luận”

Use case Name Ghim bình luận

Description Quản trị viên ghim bình luận dưới bài viết trên diễn đàn

Trigger Quản trị viên muốn ghim bình luận lên đầu dưới bài viết trên diễn đàn

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống với vai trò Quản trị viên

2 Bình luận chưa được ghim.

Post-conditions Bình luận được ghim lên đầu danh sách bình luận dưới bài viết

Basic Flow 1 Người dùng chọn nút “Pin” dưới một bình luận

2 Hệ thống ghim bình luận lên đầu các danh sách bình luận dưới bài viết, lưu vào cơ sở dữ liệu

Alternative Flow 2 a Người dùng nhấn nút “Pin” khi bình luận đã được ghim

=> Hệ thống bỏ ghim bình luận, lưu vào cơ sở dữ liệu

3.1.10 Use-case “Xem báo cáo và thống kê”

Bảng 3.12 Use-case “Xem báo cáo thống kê”

Use case Name Xem báo cáo và thống kê

Description Cho phép quản trị viên xem báo cáo và thống kê

Trigger Người dùng muốn xem báo cáo và thống kê của website

Pre-conditions 1 Người dùng đã đăng nhập vào hệ thống với vai trò quản trị viên

Post-conditions Hiển thị trang “Dashboard” có số liệu thành công

Basic Flow 1 Người dùng truy cập vào trang “Dashboard”

2 Hệ thống tải dữ liệu lên và hiển thị lên màn hình

Exception Flow 5 b Hệ thống tải lỗi, hiển thị thông báo lên màn hình:

Thiết kế

3.2.1 Thiết kế giao diện Ở đồ án 2, em sẽ thay đổi màu sắc chủ đạo của ứng dụng từ “vàng” sang “cam”

Lí do em thay đổi màu sắc chủ đạo là màu sắc “cam” sẽ tạo nên sự tương phản mạnh hơn trên nên sáng Điều này sẽ làm ứng dụng trở nên hấp dẫn và thú vị hơn Bên cạnh đó, em có sử dụng kết hợp màu sắc cam cùng với màu nền tối trong chế độ nền tối, ứng dụng vẫn khá nổi bật, thu hút nhưng không bị chói mắt Em sẽ trình bày trong phần tiếp theo

Wireframe vẫn đang sử dụng giống ở đồ án 1 cho phiên bản kích thước màn hình điện thoại di động

Hình 3.2 Hình ảnh Wireframe giao diện

Website sử dụng Firebase để lưu trữ, truy xuất dữ liệu Firebase tổ chức dữ liệu theo loại dữ liệu phi quan hệ, mục đích nhằm mang lại hiệu suất tốt hơn nhờ truy xuất nhanh

Dưới đây là bản thiết kế dữ liệu:

Hình 3.3 Hình ảnh thiết kế dữ liệu

Student id: string name: string email: string gender: Gender birthday: Date bio: string point: number avatar: string likedBlog: string[] routes: string[] currentPathId: string checkinDays: Date[] level: LevelType

Account id: string userId: string role: string isLocked: boolean

StudyPath id: string name: string topic: string level: string study_routes: StudyRoute[]

StudyRoute id: string name: string image: string cards: string[] isLast: boolean

Document id: string title: string description: string listItemIds: string[] createDate: Date

Exercise id: string title: string description: string listItemIds: string[] createDate: Date level: LevelType state: ExState

UserExecise id: string userId: string exId: string resultList: ExDetail[] rightQn: number didDate: Date state: ExState

Blog id: string userId: string userName: string likes: BlogLike[] comments: BlogComment[] title: string summary: string content: string keyword: string createDate: Date cancelNote: string

StudyCard id: string display: string meaning: string image: string audio: string type: StudyCardType

TranslateToVN TranslateToEN TranslateSentenceToVN TranslateSentenceToEN FillInSentence SortWords Audio

ExAgain id: string userId: string exId: string title: string description: string listItems: ExDetail[] didDate: Date

BlogLike id: string userId: string userName: string blogId: string createDate: Date

BlogComment id: string userId: string userName: string blogId: string content: string likes: string[] isPinned: boolean createDate: Date

ExDetail id: string type: string question: string options: string[] answer: string userAnswer: string exRight: boolean vocab: string keyword: string

Game id: string name: string rounds: GameRound[]

GameRound id: string name: string questions: GameQuestion[]

GameQuestion id: string question: string options: string[] answer: string level: number point: number

UserGameCard id: string gameQuestion: GameQuesiton isRight: boolean

UserGameRound id: string userId: string gameRoundId: string listUserGameCard: UserGameCard[] totalPoint: number rightCount: number

OnboardingType id: string question: OnboardQuestion options: string[] audio: string answer: string type: TestEnum level: number

TestType id: string question: TestQuestion options: string[] audio: string answer: string type: TestEnum level: number

OnboardQuestion label: string vnLabel: string ques: string keyword: string paraph: string

TestQuestion label: string ques: string keyword: string paraph: string

BasicTranslateToVNTranslateToENFillInSentenceSortWordsAudio

Website đang áp dụng kiến trúc tương tự kiến trúc của các chương trình sử dụng công nghệ React Dưới đây là hình ảnh sơ đồ kiến trúc ứng dụng

Hình 3.4 Hình ảnh kiến trúc Website

XÂY DỰNG ỨNG DỤNG

Màn hình “Login”

Hình 4.1 Màn hình “Login”

• Màn hình “Login” tương ứng với use-case “Login”

• Các xử lý: o Input “Email”: nhập tài khoản email dùng để đăng nhập o Input “Password”: nhập mật khẩu tương ứng với tài khoản email dùng để đăng nhập o Nút “Forget password”: chuyển sang trang “Forget password” khi người dùng quên mật khẩu o Nút “GO TO APP”: xác thực tài khoản đăng nhập và chuyển sang trang chủ của Website

Màn hình “Register”

Hình 4.2 Màn hình “Register”

• Màn hình “Register” tương ứng với use-case “Register”

• Các xử lý: o Input “Email”: nhập tài khoản email dùng để đăng nhập o Input “Password”: nhập mật khẩu mới o Input “Confirm password”: nhập lại mật khẩu để xác nhận o Nút “CREATE AN ACCOUNT”: thực hiện đăng kí tài khoản mới và chuyển sang trang “Login”

Màn hình “Onboarding”

Hình 4.3 Màn hình “Onboarding”

• Màn hình “Onboarding” tương ứng với use-case “Kiểm tra đầu vào”

• Các xử lý: o Lựa chọn câu trả lời cho câu hỏi khảo sát o Làm bài kiểm tra đầu vào bằng cách chọn đáp án cho từng câu hỏi kiểm tra o Nút “->”: chuyển sang câu hỏi tiếp theo trong bộ đề gồm 10 câu hỏi o Nút “”: đi tới câu tiếp theo trong danh sách các câu trong bài học o Nút “”: đi tới câu tiếp theo trong danh sách các câu trong bài học o Có thể quay lại trang chủ bằng nút quay lại trên trình duyệt web

Màn hình “Exercise Finish”

Hình 4.14 Màn hình “Execise Finish”

• Màn hình “Exercise Finish” hiển thị tổng quát kết quả bài luyện tập

• Hiển thị: o Dấu tích xanh: đáp án chính xác o Dấu ‘x’ cam: đáp án sai

• Các xử lý: o Nút “DO AGAIN”: quay lại màn hình “Exercise Description” của bài luyện tập hiện tại o Nút “VIEW RESULT DETAIL”: chuyển sang màn hình “Exercise Result” o Nút “ngôi nhà”: chuyển về trang chủ

Hình 4.15 Màn hình “Exercise Result”

• Màn hình “Exercise Result” hiển thị kết quả chi tiết của bài luyện tập

• Hiển thị: o Câu hỏi o Đáp án của người dùng o Đáp án của hệ thống o Dấu tích xanh: đáp án chính xác o Dấu ‘x’ cam: đáp án sai

• Ở màn hình này không có thao tác xử lý nào, chỉ có thể xem

Màn hình “Forum”

Hình 4.16 Màn hình “Forum”

• Màn hình “Forum” hiển thị danh sách các bài viết của mọi người và của người học

• Các xử lý: o Nút “Blogs”: hiển thị danh sách tất cả các bài viết đã được đăng thành công o Nút “Yours”: hiển thị danh sách các bài viết của bạn với ba trạng thái: chờ duyệt, đã đăng, đã huỷ o Thẻ bài viết: nhấn vào chuyển sang màn hình “Post Detail”

Màn hình “Add new post”

Hình 4.17 Màn hình “Add new post”

• Màn hình “Add new post” tương ứng với use-case “Đăng bài viết”

• Các xử lý: o Input “Title”: nhập tiêu đề bài viết o Input “Keyword”: nhập từ khoá tương ứng với bài viết o Input “Brief”: nhập tóm tắt bài viết o Text area “Content”: nhập nội dung bài viết o Nút “SUBMIT”: xác nhận tạo bài viết, bài viết chuyển sang trạng thái chờ duyệt

Màn hình “Your posts”

Hình 4.18 Màn hình “Your posts”

• Màn hình “Your posts” hiển thị danh sách các bài viết của người học đang đăng nhập với các trạng thái: chờ duyệt, đã đăng, đã huỷ

• Các xử lý: o Nút “Pending”: tải danh sách các bài viết đang ở trạng thái chờ duyệt o Nút “Posted”: tải danh sách các bài viết đang ở trạng thái đã đăng o Nút “Canceled”: tải danh sách các bài viết đang ở trạng thái đã huỷ

Màn hình “Post Detail”

Hình 4.19 Màn hình “Post Detail”

• Màn hình “Post Detail” hiển thị chi tiết bài viết và cho phép bình luận

• Các xử lý: o Nút “like”: yêu thích bài viết o Text area “Bình luận”: nhập nội dung muốn bình luận o Nút “máy bay”: đăng bình luận trong ô text area “Bình luận”

Màn hình “Saved”

Hình 4.20 Màn hình “Saved”

• Màn hình “Saved” hiển thị danh sách các câu và từ vựng đã thêm vào mục yêu thích

• Các xử lý: o Nút “trái tim” màu cam: loại bỏ từ hoặc câu ra khỏi mục yêu thích o Input “Search”: nhập từ hoặc câu cần tìm kiếm o Nút “SEARCH”: hiển thị danh sách theo từ đã nhập vào inpur “Search”

Màn hình “Personal Information”

Hình 4.21 Màn hình “Personal Information”

• Màn hình “Personal Information” hiển thị các thông tin của người dùng

• Hiển thị: o Cấp độ hiện tại o Ảnh đại diện và các thông tin cá nhân như email, tên,…

Hộp thoại “Update Avatar”

Hình 4.22 Hộp thoại “Update Avatar”

• Hộp thoại “Update Avatar” cho phép người dùng thay đổi ảnh đại diện

• Các xử lý: o Input “File”: chọn hình ảnh từ máy tính o Nút “SUBMIT”: xác nhận cập nhật ảnh đại diện, đóng hộp thoại o Nút “CANCEL”: huỷ cập nhật ảnh đại diện, đóng hộp thoại

Hộp thoại “Update Personal Information”

Hình 4.23 Hộp thoại “Update Personal Information”

• Hộp thoại “Update Personal Information” cho phép người dùng thay đổi thông tin cá nhân

• Các xử lý: o Input “Email”: chỉ xem, không thể thay đổi o Input “Name”: nhập tên mới o Input “Gender”: chọn giới tính mới o Input “Birth”: chọn ngày sinh mới o Input “Bio”: nhập tiểu sử mới

Màn hình “Dashboard”

Hình 4.24 Màn hình “Dashboard”

• Màn hình “Dashboard” hiển thị thông tin về người dùng

• Hiển thị: o Phần trăm chặng đường đã học o Phần trăm đúng bài luyện tập o Số bài viết đã đăng thành công o Số bài viết đang chờ duyệt o Số ngày điểm danh trên tổng số ngày tham gia o Cấp độ hiện tại o Số câu từ đã lưu trong mục lưu trữ

Màn hình “Test Level Up Description”

Hình 4.25 Màn hình “Test Level Up Description”

• Màn hình “Test Level Up Description” hiển thị mô tả bài kiểm tra vượt cấp

• Các xử lý: o Nút “Start”: chuyển sang màn hình “Test Level Up Detail” o Có thể quay lại trang chủ bằng nút quay lại trên trình duyệt web

Màn hình “Test Level Up Detail”

Hình 4.26 Màn hình “Test Level Up Detail”

• Màn hình “Test Level Up Detail” hiển thị danh sách các câu trong bài kiểm tra vượt cấp

• Các xử lý: o Nút “->”: đi tới câu tiếp theo o Nút “”: tiếp tục di chuyển nhân vật

▪ Nếu trả lời sai: mất đi 1 mạng (1 trái tim màu xanh)

▪ Nếu trả lời đúng: được cộng điểm vào “point”

Hình 4.32 Màn hình “Game Finish”

• Màn hình “Game Finish” hiển thị giao diện kết thúc trò chơi

• Hiển thị: o Ngôi sao: tối đa 5 ngôi sao, tính toán dựa trên số điểm đạt được

• Các xử lý: o Nút “ngôi nhà”: chuyển sang trang “Game Result” o Có thể quay lại mô tả bằng nút quay lại trên trình duyệt web

Màn hình “Game Result”

Hình 4.33 Màn hình “Game Result”

• Màn hình “Game Result” hiển thị kết quả tổng quát của lượt chơi

• Các xử lý: o Nút “LEADERBOARD”: chuyển sang trang “Leaderboard” o Nút “ngôi nhà”: chuyển về trang chủ

Màn hình “Dashboard” – Admin

Hình 4.34 Màn hình “Dashboard” – Admin

• Màn hình “Dashboard” hiển thị thông tin về Website

• Hiển thị: o Số chặng đã hoàn thành theo ngày, tháng, năm o Số lần điểm danh theo ngày, tháng, năm o Tỉ lệ cấp độ hiện tại của người học o Số bài viết đã đăng thành công o Số bài viết đang chờ duyệt o Số bài viết hôm nay o Số người học mới hôm nay

Màn hình “Manage Study” – Admin

Hình 4.35 Màn hình “Manage Study” – Admin

• Màn hình “Manage Study” hiển thị danh sách các lộ trình học và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá

• Các xử lý: o Nút “VIEW”: chuyển sang trang “Manage Study Detail” o Nút “ADD”: mở hộp thoại “Add new Path” o Nút “DELETE”: mở hộp thoại “Delete Path”

Hộp thoại “Add new Path” – Admin

Hình 4.36 Màn hình “Add new Path” – Admin

• Hộp thoại “Add new Path” cho phép thêm lộ trình học mới

• Các xử lý: o Input “Name”: nhập tên lộ trình học o Input “Topic”: nhập chủ đề tương ứng với chủ đề trong mục tài liệu o Input “Level”: nhập cấp độ tương ứng với cấp độ của người học o Nút “SUBMIT”: xác nhận tạo mới, đóng hộp thoại o Nút “CANCEL”: xác nhận huỷ tạo mới, đóng hộp thoại

Màn hình “Manage Study Detail” – Admin

Hình 4.37 Màn hình “Manage Study Detail” – Admin

• Màn hình “Manage Study Detail” hiển thị danh sách các chặng trong lộ trình học và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá từng chặng

• Các xử lý: o Input “Name”: nhập tên mới nếu muốn cập nhật o Input “Topic”: nhập chủ đề mới nếu muốn cập nhật o Input “Level”: nhập cấp độ mới nếu muốn cập nhật o Nút “UPDATE”: cập nhật thông tin mới cho lộ trình học o Nút “VIEW”: hiển thị danh sách các câu/ từ trong chặng tương ứng o Nút “ADD ROUTE”: mở hộp thoại “Add new Route” o Nút “DELETE”: mở hộp thoại “Delete Route”

Hộp thoại “Add new Route” – Admin

Hình 4.38 Màn hình “Add new Route” – Admin

• Hộp thoại “Add new Route” cho phép thêm chặng mới trong lộ trình học

• Các xử lý: o Input “Name”: nhập tên lộ trình học o Input “Image”: thêm hình ảnh minh hoạ o Nút “SUBMIT”: xác nhận tạo mới, đóng hộp thoại o Nút “CANCEL”: xác nhận huỷ tạo mới, đóng hộp thoại

Màn hình “Manage Document” – Admin

Hình 4.39 Màn hình “Manage Document” – Admin

• Màn hình “Manage Document” hiển thị danh sách các tài liệu và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá

• Các xử lý: o Nút “VIEW”: chuyển sang trang “Manage Document Detail” o Nút “CREATE NEW”: mở hộp thoại “Add new Topic”

Hộp thoại “Add new Topic” – Admin

Hình 4.40 Màn hình “Add new Topic” – Admin

• Hộp thoại “Add new Topic” cho phép thêm chủ đề mới trong mục tài liệu

• Các xử lý: o Input “Topic”: nhập chủ đề o Input “Description”: nhập mô tả ngắn gọn cho chủ đề o Nút “SUBMIT”: xác nhận tạo mới, đóng hộp thoại o Nút “CANCEL”: xác nhận huỷ tạo mới, đóng hộp thoại

Màn hình “Manage Document Detail” – Admin

Hình 4.41 Màn hình “Manage Document Detail” – Admin

• Màn hình “Manage Document Detail” hiển thị danh sách các câu/ từ vựng trong chủ đề và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá

• Các xử lý: o Input “Topic”: nhập chủ đề mới nếu muốn cập nhật o Input “Description”: nhập mô tả mới nếu muốn cập nhật o Nút “SAVE”: cập nhật thông tin mới cho chủ đề o Nút “VIEW”: mở hộp thoại “Edit Document” o Nút “CREATE NEW”: mở hộp thoại “Add new Document” o Nút “DELETE”: mở hộp thoại “Delete Document”

Hộp thoại “Add new Document” – Admin

Hình 4.42 Màn hình “Add new Document” – Admin

• Hộp thoại “Add new Document” cho phép thêm thẻ tài liệu mới

• Các xử lý: o Input “Display”: nhập từ/ câu bằng tiếng Anh o Input “Meaning”: nhập nghĩa của từ/ câu bằng tiếng Việt o Input “Image”: chọn hình ảnh minh hoạ o Input “Audio”: chọn âm thanh phát âm từ/ câu o Nút “SUBMIT”: xác nhận tạo mới, đóng hộp thoại o Nút “CANCEL”: xác nhận huỷ tạo mới, đóng hộp thoại

Màn hình “Manage Exercise” – Admin

Hình 4.43 Màn hình “Manage Exercise” – Admin

• Màn hình “Manage Exercise” hiển thị danh sách các bài luyện tập và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá

• Các xử lý: o Nút “VIEW”: chuyển sang trang “Manage Exercise Detail” o Nút “CREATE NEW”: mở hộp thoại “Add new Exercise”

Hộp thoại “Add new Exercise” – Admin

Hình 4.44 Màn hình “Add new Exercise” – Admin

• Hộp thoại “Add new Exercise” cho phép thêm bài luyện tập mới

• Các xử lý: o Input “Topic”: nhập chủ đề tương ứng với chủ đề trong mục tài liệu o Input “Description”: nhập mô tả tương ứng với bài luyện tập o Input “Level”: chọn cấp độ trong ba cấp độ: beginner, intermediate, advanced o Nút “SUBMIT”: xác nhận tạo mới, đóng hộp thoại o Nút “CANCEL”: xác nhận huỷ tạo mới, đóng hộp thoại

Màn hình “Manage Exercise Detail” – Admin

Hình 4.45 Màn hình “Manage Exercise Detail” – Admin

• Màn hình “Manage Exercise Detail” hiển thị danh sách các câu hỏi và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá

• Các xử lý: o Input “Topic”: nhập chủ đề mới nếu muốn cập nhật o Input “Description”: nhập mô tả mới nếu muốn cập nhật o Nút “SAVE”: cập nhật thông tin mới cho bài luyện tập o Nút “VIEW”: mở hộp thoại “Edit Question” o Nút “ADD QUESTION”: mở hộp thoại “Add new Question” o Nút “DELETE”: mở hộp thoại “Delete Question”

Hộp thoại “Add new Answer” – Admin

Hình 4.46 Hộp thoại “Add new Answer” - Admin

• Hộp thoại “Add new Answer” cho phép thêm câu hỏi mới

• Các xử lý: o Checkbox trong bảng: chọn 1 câu/từ để tạo câu hỏi o Input “Option 1”, “Option 2”, “Option 3”, “Option 4”: nhập các lựa chọn cho câu hỏi o Input “Answer”: nhập đáp án đúng cho câu hỏi o Input “Type”: chọn loại câu hỏi o Nút “SUBMIT”: xác nhận tạo mới, đóng hộp thoại o Nút “CANCEL”: xác nhận huỷ tạo mới, đóng hộp thoại

Màn hình “Manage Forum” – Admin

Hình 4.47 Màn hình “Manage Forum” – Admin

• Màn hình “Manage Forum” hiển thị danh sách các bài viết đã đăng và chờ duyệt

• Các xử lý: o Thẻ bài viết: nhấn vào chuyển sang trang “Post Detail”

Màn hình “Manage Test” – Admin

Hình 4.48 Màn hình “Manage Test” – Admin

• Màn hình “Manage Test” hiển thị danh sách các câu kiểm tra vượt cấp và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá

• Các xử lý: o Nút “VIEW”: mở hộp thoại “View Question” o Nút “CREATE NEW”: mở hộp thoại “Add new Test” o Nút “DELETE”: mở hộp thoại “Delete Question”

Màn hình “Manage Onboarding” – Admin

Hình 4.49 Màn hình “Manage Onboarding” – Admin

• Màn hình “Manage Onboarding” hiển thị danh sách các câu kiểm tra đầu vào và cho phép quản trị viên thực hiện các thao tác thêm, sửa, xoá

• Các xử lý: o Nút “VIEW”: mở hộp thoại “View Question” o Nút “CREATE NEW”: mở hộp thoại “Add new Onboarding Test” o Nút “DELETE”: mở hộp thoại “Delete Question”

Hộp thoại “Add new Onboarding Test” – Admin

Hình 4.50 Màn hình “Add new Onboarding Test” – Admin

• Hộp thoại “Add new Question” cho phép thêm câu hỏi mới

• Các xử lý: o Input “Label”: nhập tiêu đề bằng tiếng Anh o Input “VN Label”: nhập tiêu đề bằng tiếng Việt o Input “Question”: nhập câu hỏi o Input “Paraph”: nhập đoạn văn nếu có o Input “Audio”: chọn file âm thanh nếu có

89 o Input “Option 1”, “Option 2”, “Option 3”, “Option 4”: nhập các lựa chọn cho câu hỏi o Input “Answer”: nhập đáp án đúng cho câu hỏi o Input “Type”: chọn loại câu hỏi o Input “Level”: chọn cấp độ trong 3 cấp độ: beginner, intermediate, advanced o Nút “SUBMIT”: xác nhận tạo mới, đóng hộp thoại o Nút “CANCEL”: xác nhận huỷ tạo mới, đóng hộp thoại.

Màn hình “Manage Users” – Admin

Hình 4.51 Màn hình “Manage Users” – Admin

• Màn hình “Manage User” hiển thị danh sách các người học và cho phép quản trị viên thực hiện các thao tác cập nhật thông tin cá nhân, khoá tài khoản

• Các xử lý: o Nút “EDIT”: mở hộp thoại “Edit User Information” o Nút “DEACTIVE ACCOUNT”: cho phép khoá tài khoản người dùng

Một số màn hình ở chế độ nền tối

Màu sắc được thay đổi để phù hợp với chế độ nền tối hơn, sử dụng các tông màu tối như đen, xám đậm cho nền và tông màu sáng như xám trắng, trắng, xanh sáng cho chữ

Hình 4.52 Màn hình “Personal Information” ở chế độ “dark”

Hình 4.53 Hộp thoại “Cập nhật thông tin cá nhân” ở chế độ “dark”

Hình 4.54 Màn hình “Docmunet” ở chế độ “dark”

Hình 4.55 Màn hình “Saved” ở chế độ “dark”

Ngày đăng: 15/05/2024, 09:26

HÌNH ẢNH LIÊN QUAN

Bảng 3.1 Danh sách use-case người dùng - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.1 Danh sách use-case người dùng (Trang 21)
Bảng 3.2 Danh sách use-case quản trị viên - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.2 Danh sách use-case quản trị viên (Trang 22)
Bảng 3.3 Use-case “Kiểm tra đầu vào” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.3 Use-case “Kiểm tra đầu vào” (Trang 23)
Bảng 3.4 Use-case “Thêm vào mục lưu trữ” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.4 Use-case “Thêm vào mục lưu trữ” (Trang 24)
Bảng 3.6 Use-case “Làm bài kiểm tra vượt cấp” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.6 Use-case “Làm bài kiểm tra vượt cấp” (Trang 26)
Bảng 3.7 Use-case “Xem xếp hạng thành tích” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.7 Use-case “Xem xếp hạng thành tích” (Trang 28)
Bảng 3.8 Use-case “Cập nhật thông tin người dùng” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.8 Use-case “Cập nhật thông tin người dùng” (Trang 29)
Bảng 3.9 Use-case “Khoá tài khoản” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.9 Use-case “Khoá tài khoản” (Trang 30)
Bảng 3.10 Use-case “Duyệt bài viết” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.10 Use-case “Duyệt bài viết” (Trang 32)
Bảng 3.11 Use-case “Ghim bình luận” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.11 Use-case “Ghim bình luận” (Trang 33)
Bảng 3.12 Use-case “Xem báo cáo thống kê” - đồ án xây dựng website học tiếng anh cho người đi làm
Bảng 3.12 Use-case “Xem báo cáo thống kê” (Trang 34)
Hình 3.4 Hình ảnh kiến trúc Website - đồ án xây dựng website học tiếng anh cho người đi làm
Hình 3.4 Hình ảnh kiến trúc Website (Trang 38)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w