Đồ án môn học: Phát triển phần mềm thi đố vui - Học viện Kỹ thuật Mật mã

Đồ án môn học phần mềm thi đố vui: Tìm hiểu quy trình xây dựng phần mềm, thiết kế giao diện, và phát triển các tính năng hấp dẫn cho ứng dụng đố vui.

Trường đại học

Học viện Kỹ thuật Mật mã

Chuyên ngành

Công nghệ phần mềm

Người đăng

Ẩn danh

Thể loại

Đồ án môn học

2023

49
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

Bảng phân công nhiệm vụ

MỤC LỤC

1. PHẦN 1: TỔNG QUAN

1.1. MỤC TIÊU VÀ PHẠM VI ĐỀ TÀI

1.2. Phạm vi đề tài

1.3. PHÁT BIỂU BÀI TOÁN

1.4. KẾT CHƯƠNG

2. KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU

2.1. KHẢO SÁT HIỆN TRẠNG

2.1.1. Giới thiệu sơ lược

2.1.2. Các biểu mẫu thu thập được trong quá trình khảo sát

2.1.3. Chi tiết quy trình nghiệp vụ

2.2. YÊU CẦU CỦA PHẦN MỀM

2.2.1. Yêu cầu phi chức năng

2.2.2. Yêu cầu chức năng

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

2.3. CÁC MÔ HÌNH ĐẶC TẢ YÊU CẦU

2.3.1. Use Case Diagram của phần mềm Quiz

2.3.2. Sơ đồ BPM (Business Process Model) cho từng nghiệp vụ

2.4. KẾT CHƯƠNG

3. PHÂN TÍCH PHẦN MỀM

3.1. PHÂN TÍCH DỮ LIỆU

3.1.1. Giới thiệu mô hình CDM - ERD

3.1.2. Lập mô hình thực thể liên kết. Sưu liệu cho mô hình thực thể liên kết

3.2. PHÂN TÍCH XỬ LÝ

3.2.1. Sơ đồ phân cấp chức năng (BFD - Bussiness Functional Diagram)

3.2.2. Lập sơ đồ phân cấp chức năng (BFD - Bussiness Functional Diagram)

3.2.3. Sơ đồ dòng dữ liệu (Data Flow Diagram – DFD)

3.3. KẾT CHƯƠNG

4. THIẾT KẾ PHẦN MỀM

4.1. THIẾT KẾ DỮ LIỆU

4.1.1. Giới thiệu mô hình PDM (Physical Data Model). Chuyển đổi mô hình CMD/ERD sang mô hình PDM

4.1.2. Sưu liệu cho mô hình PDM

4.2. THIẾT KẾ KIẾN TRÚC

4.3. THIẾT KẾ GIAO DIỆN

4.3.1. Giao diện phía user

4.3.2. Giao diện phía Admin

4.4. THIẾT KẾ XỬ LÝ

4.5. KẾT CHƯƠNG

5. PHẦN 5: CÀI ĐẶT VÀ KIỂM THỬ

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

5.1. Tóm tắt kết quả. Hướng phát triển tương lai

TÀI LIỆU THAM KHẢO

DANH MỤC CÁC HÌNH

DANH MỤC CÁC BẢNG

Tóm tắt

I. Tổng Quan Đồ Án Phần Mềm Thi Đố Vui Mục Tiêu Giá Trị

Trò chơi câu đố là một trò chơi giáo dục và giải trí. Người chơi phải trả lời các câu hỏi từ nhiều lĩnh vực. Mục tiêu là trả lời đúng để kiểm tra và mở rộng kiến thức. Trò chơi có nhiều dạng khác nhau, ví dụ như trả lời câu hỏi trong thời gian nhất định. Trò chơi giúp người chơi giải trí, cải thiện tư duy, tăng cường kiến thức và khám phá thông tin mới. Nó cũng là công cụ giảng dạy, thúc đẩy sự tham gia và học tập tương tác. Dù đơn giản, nó mang lại niềm vui và thử thách. Nó kích thích trí tuệ và tạo trải nghiệm giáo dục thú vị. Ứng dụng "Quiz Game" có mục tiêu đa chiều. Nó đem lại giá trị giáo dục, giải trí và kiểm tra kỹ năng cho người chơi. Trong khía cạnh giáo dục, ứng dụng cung cấp thông tin chi tiết và hữu ích qua các câu hỏi và câu trả lời, từ đó nâng cao hiểu biết và kiến thức của người chơi trong nhiều lĩnh vực khác nhau. Đồng thời, qua trải nghiệm giải trí, ứng dụng tạo ra một môi trường vui nhộn và thú vị, giúp người chơi giải trí và giảm căng thẳng. Cuối cùng, qua việc kiểm tra kỹ năng, ứng dụng thách thức người chơi, đánh giá khả năng tư duy, tìm kiếm thông tin và sự nhạy bén trong việc giải quyết vấn đề. Tổng cộng, mục tiêu của ứng dụng là kết hợp giáo dục và giải trí, tạo nên một trải nghiệm đa chiều và thú vị cho người chơi. Ứng dụng nhắm đến việc cung cấp các câu hỏi về đa lĩnh vực. Điều này giúp người chơi nâng cao kiến thức chuyên sâu và liên tục cập nhật với sự phát triển trong đời sống. Các câu hỏi có thể được thiết kế để thách thức người chơi ở mức độ khó khăn tăng dần, từ cơ bản đến nâng cao, tạo ra một trải nghiệm học tập có cấp độ và độ khó linh hoạt. Tóm lại, mục tiêu của ứng dụng là làm cho quá trình học lập trình trở nên hấp dẫn, hiệu quả và thách thức đồng thời.

1.1. Phát Biểu Bài Toán Ứng Dụng Thi Đố Vui Chức Năng

Ứng dụng Quiz Game là một loại ứng dụng hoặc trò chơi trực tuyến thường được thiết kế để kiểm tra và nâng cao kiến thức, khả năng trả lời câu hỏi hoặc giải quyết vấn đề của người chơi thông qua các câu hỏi trắc nghiệm hoặc câu đố. Quiz Game gồm một hệ thống câu hỏi và câu trả lời, và một người chơi hoặc đội người chơi tham gia để kiểm tra kiến thức hoặc giải quyết các câu hỏi. Mỗi câu hỏi có một giá trị điểm tương ứng, và người chơi sẽ đạt được điểm tương ứng với câu trả lời đúng. Ứng dụng có các chức năng cơ bản như: Đăng nhập, đăng ký, tổ chức cuộc thi, lưu cuộc thi, xem kết quả, tạo đề thi mới, quản lý người dùng và câu hỏi. Phần mềm này được cài đặt trên môi trường smartphone hệ điều hành Android, Web browser hỗ trợ HTML5. Sử dụng cơ sở dữ liệu Firebase. Công nghệ: Ngôn ngữ C#, Java, JavaScript, Html, Engine Unity, Spring framework, React framework ,Firebase(Database, Authentication).

1.2. Phạm Vi Đề Tài Lập Trình Game Đố Vui Với Unity C

Phạm vi đề tài tập trung vào lập trình game bằng Unity kết hợp ngôn ngữ C# và cơ sở dữ liệu Firebase. Quản lí ứng dụng bằng Web browser. Firebase được sử dụng để lưu trữ dữ liệu người chơi, câu hỏi và kết quả thi. Unity cung cấp môi trường phát triển game mạnh mẽ, cho phép tạo ra giao diện người dùng hấp dẫn và trải nghiệm chơi game mượt mà. Ngôn ngữ C# được sử dụng để viết logic game và tương tác với Firebase. Web browser được sử dụng để quản lý ứng dụng, cho phép admin thêm, sửa, xóa câu hỏi và theo dõi kết quả thi.

II. Khảo Sát Hiện Trạng Yêu Cầu Phần Mềm Thi Đố Vui

Hệ thống game đố vui trắc nghiệm này là một ứng dụng đa nền tảng hoàn chỉnh sử dụng một loạt công nghệ để cung cấp trải nghiệm đa dạng cho người chơi và quản trị viên. Dưới đây là một tóm tắt về các thành phần chính của hệ thống:

  • Unity Game: Trò chơi đố vui trắc nghiệm được phát triển bằng Unity, một môi trường phát triển trò chơi mạnh mẽ. Trong trò chơi này, người chơi có thể tham gia vào các cuộc thi trắc nghiệm, trả lời câu hỏi và xem kết quả của họ.
  • Firebase Authentication: Để xác thực người chơi, hệ thống sử dụng Firebase Authentication. Người chơi có thể đăng ký và đăng nhập bằng tài khoản Firebase hoặc tài khoản mạng xã hội. Điều này đảm bảo tính bảo mật của dữ liệu người dùng.
  • Firebase Database: Firebase Database được sử dụng để lưu trữ thông tin về người chơi, bao gồm thông tin cá nhân và điểm số của họ. Ngoài ra, nó cũng được sử dụng để lưu trữ dữ liệu về câu hỏi và kết quả cuộc thi. Điều này cho phép dữ liệu được chia sẻ giữa ứng dụng di động và trang web quản trị.
  • ReactJS và Spring Web: Hệ thống bao gồm một ứng dụng web phía quản trị được xây dựng bằng ReactJS và Spring Framework. Ứng dụng web này được sử dụng bởi admin để quản lý người chơi và nội dung của trò chơi. Admin có thể thêm, xóa, sửa thông tin người chơi và câu hỏi thông qua giao diện web này.
  • Chia sẻ cơ sở dữ liệu Firebase: Cả ứng dụng di động Unity và ứng dụng web phía quản trị đều truy cập vào cùng một cơ sở dữ liệu Firebase. Điều này đảm bảo rằng dữ liệu được duyệt và cập nhật một cách đồng nhất trên cả hai nền tảng.Tổng cộng, hệ thống này kết hợp sức mạnh của Unity cho phần chơi game và Firebase cho quản lý người chơi và dữ liệu, cùng với một ứng dụng web phía quản trị để quản lý nội dung và người chơi. Sự tích hợp giữa các thành phần này cho phép người dùng tham gia trò chơi từ nhiều nền tảng và giúp admin quản lý dễ dàng.

2.1. Quy Trình Nghiệp Vụ Đăng Nhập Thi Đố Lưu Kết Quả

Quy trình nghiệp vụ bao gồm đăng nhập và đăng ký người chơi, tham gia cuộc thi trắc nghiệm, lưu trữ và quản lý dữ liệu người chơi, quản lý câu hỏi. Người chơi đăng nhập bằng tài khoản Firebase. Sau đó, người chơi chọn một cuộc thi từ danh sách có sẵn. Trò chơi truy vấn Firebase Database để lấy danh sách câu hỏi. Người chơi trả lời các câu hỏi và trò chơi ghi nhận điểm số và thời gian trả lời. Khi cuộc thi kết thúc, kết quả được gửi và lưu trữ trong Firebase Database. Admin có thể sử dụng ứng dụng web phía quản trị để quản lý người chơi và câu hỏi.

2.2. Yêu Cầu Phần Mềm Chức Năng và Phi Chức Năng Cần Thiết

Yêu cầu phi chức năng bao gồm cài đặt trên Android và Web browser, sử dụng Firebase Database, ngôn ngữ C#, Java, JavaScript, Html, Engine Unity, Spring framework, React framework. Yêu cầu chức năng bao gồm tiếp nhận thông tin đăng ký, tổ chức cuộc thi, lưu cuộc thi, xem kết quả, tạo đề thi mới, quản lý người dùng và câu hỏi. Người quản trị game có thể xem kết quả thi của các thí sinh.

2.3. Kiến Trúc Hệ Thống Mô Hình Các Thành Phần Của Game

Kiến trúc hệ thống bao gồm User, User Interface, Game Client, Game Server, Admin, Application UI, Business Logic Layer, Interface, Database. User tương tác trực tiếp với giao diện để tham gia trò chơi. Game client giúp người chơi tương tác với trò chơi thông qua giao diện. Game server quản lý trạng thái của trò chơi, xử lý các yêu cầu từ các game client. Admin thực hiện các tác vụ quản lý, có quyền thêm, sửa, xóa câu hỏi và nội dung. Business Logic Layer xử lý các yêu cầu từ giao diện admin. Database lưu trữ dữ liệu của trò chơi, bao gồm câu hỏi, điểm số người chơi, trạng thái trò chơi.

III. Phân Tích Thiết Kế Phần Mềm Thi Đố Vui Chi Tiết Rõ Ràng

Giai đoạn phân tích trong quy trình phát triển phần mềm là một bước vô cùng quan trọng và cần thiết. Dưới đây là một số lý do về sự cần thiết và tầm quan trọng của giai đoạn phân tích. Phân tích giúp xác định và hiểu rõ về yêu cầu của dự án phần mềm. Điều này đảm bảo rằng nhóm phát triển và người đặt hàng đang nói cùng một ngôn ngữ và có một kỳ vọng chung về sản phẩm cuối cùng. Giai đoạn phân tích giúp loại bỏ hoặc giảm thiểu sự hiểu nhầm và sai sót về yêu cầu, tránh tình huống các tính năng không được thực hiện hoặc không đúng đối tượng. Bên cạnh đó, giai đoạn này cung cấp thông tin cần thiết để đánh giá khả năng thực hiện dự án. Nó giúp xác định các tài nguyên, thời gian và ngân sách cần thiết. Đồng thời giúp định rõ cấu trúc và thiết kế của hệ thống. Điều này cho phép tối ưu hóa thiết kế để đáp ứng yêu cầu và mục tiêu của dự án. Nếu yêu cầu được phân tích rõ ràng và có kế hoạch thiết kế chính xác, việc thay đổi và mở rộng hệ thống sau này sẽ dễ dàng hơn. Một giai đoạn phân tích cẩn thận giúp xác định và phát triển các tính năng quan trọng và phù hợp nhất với nhu cầu thực tế của người sử dụng cuối cùng, từ đó cung cấp giá trị cao hơn và tăng tính cạnh tranh của sản phẩm. Mặc dù giai đoạn phân tích có thể tốn thời gian ban đầu, nhưng nó tiết kiệm thời gian và nguồn lực trong tương lai bằng cách giảm thiểu sự cần phải điều chỉnh và sửa đổi sau này. Tóm lại, giai đoạn phân tích không chỉ giúp định rõ yêu cầu và mục tiêu của dự án mà còn đóng vai trò quan trọng trong việc đảm bảo chất lượng, tiết kiệm thời gian và nguồn lực, cũng như giảm thiểu rủi ro trong quá trình phát triển phần mềm.

3.1. Mô Hình CDM ERD Thực Thể Thuộc Tính Quan Hệ Game

Các thực thể bao gồm Người dùng, Bài thi, Đề thi, Câu hỏi, Lịch sử. Thuộc tính của Người dùng: id_user, Mail, password, name. Thuộc tính của Bài thi: ExaminationID, IsDone, ExaminationTime. Thuộc tính của Câu hỏi: QuestionID, Question, AnswerA, AnswerB, AnswerC, AnswerD, CorrectAnswer. Thuộc tính của Đề thi: TestID, PeriodOfTime, NumberOfQuestion. Thuộc tính của Lịch sử: id_History. Một người chơi có thể tham gia nhiều bài thi (One-to-Many relationship). Một Examination sử dụng 1 đề thi (One-to-One). Một Đề thi sử dụng nhiều câu hỏi (Many-to-Many). Một người chơi chỉ có 1 history (One-to-One).

3.2. Phân Tích Xử Lý Sơ Đồ BFD DFD Của Phần Mềm Quiz

Sơ đồ phân cấp chức năng của Quiz Game: Xác thực người dùng (Đăng ký). Quản lý trò chơi (CRUD Câu hỏi). Xem kết quả bài thi. Gameplay (Chọn độ khó, chọn đáp án). Quản lý bài thi (Lưu kết quả, xem lịch sử thi). Sơ đồ dòng dữ liệu (DFD) biểu diễn luồng dữ liệu thông qua quy trình hoặc hệ thống. Nó cho thấy đầu vào và đầu ra của từng quy trình, cũng như các kho dữ liệu được sử dụng.

IV. Thiết Kế Phần Mềm Thi Đố Vui Dữ Liệu Kiến Trúc UI UX

Giai đoạn thiết kế trong quy trình phát triển phần mềm là một phần quan trọng và không thể thiếu. Đây là giai đoạn nằm sau giai đoạn thu thập yêu cầu, phân tích phần mềm và trước khi bắt đầu thực hiện việc lập trình và kiểm thử.Giai đoạn này giúp xác định cấu trúc tổng quan của phần mềm, bao gồm các thành phần, mô-đun, và giao tiếp giữa chúng. Điều này giúp đảm bảo rằng toàn bộ hệ thống được tổ chức một cách hợp lý và đáp ứng được yêu cầu của dự án. Giúp tối ưu hóa hiệu suất của phần mềm bằng cách xác định cách sử dụng tài nguyên máy tính một cách hiệu quả, tối ưu hóa thời gian thực thi, và giảm thiểu tốn phí.Ở giai đoạn này, chúng ta sẽ tập trung vào việc thiết kế các tác vụ chi tiết của phần mềm như: thiết kế dữ liệu, thiết kế kiến trúc, thiết kế giao diện, và thiết kế xử lý.

4.1. Mô Hình PDM Thiết Kế Cơ Sở Dữ Liệu Firebase Chi Tiết

Mô hình dữ liệu vật lý (Physical Data Model) tập trung vào cách dữ liệu được tổ chức và lưu trữ cụ thể trên cơ sở dữ liệu. Thông qua mô hình vật lý, các chi tiết kỹ thuật như loại dữ liệu, chỉ mục (index), và ràng buộc (constraints) được xác định chi tiết để hỗ trợ hiệu suất và tối ưu hóa truy cập dữ liệu.Cơ sở dữ liệu được sử dụng cho mô hình là Firebase sử dụng NoSQL. History: thêm khóa ngoại id_user tham chiếu đến User. Examination: thêm khóa ngoại TestID tham chiếu đến Test. TestDetails: lưu thông tin giữa Test và Question, có 2 khóa chính TestID và QuestionID, khóa ngoại TestID tham chiến đến Test, khóa ngoại QuestionID tham chiếu đến Questions. Exam: có 3 khóa chính ExaminationID, id_user, id_History, khóa ngoại ExaminationID tham chiếu đến Examination, khóa ngoại id_user tham chiếu đến User, khóa ngoại id_History tham chiếu đến History.

4.2. Kiến Trúc 3 Lớp Thiết Kế Linh Hoạt Dễ Mở Rộng Game

Kiến trúc phần mềm sử dụng là kiến trúc 3 lớp cho phép thiết kế, nâng cấp, sửa đổi phần mềm 1 cách dễ dàng. Kiến trúc 3 lớp (3-Tier Architecture) - Giao diện người dùng (Presentation Layer): Đây là phần giao tiếp với người dùng. - Business Logic Layer (BLL): Chứa logic và xử lý dữ liệu. Nó thực hiện các nhiệm vụ xử lý logic, kiểm tra dữ liệu và tương tác với cơ sở dữ liệu. - Data Access Layer (DAL) : Lớp này có chức năng giao tiếp với hệ quản trị CSDL như thực hiện các công việc liên quan đến lưu trữ và truy vấn dữ liệu. Chịu trách nhiệm chính lưu trữ và truy xuất dữ liệu từ các nguồn dữ liệu (Firebase).

4.3. Thiết Kế Giao Diện UI UX Thân Thiện Hấp Dẫn Game

Thiết kế giao diện phía user bao gồm giao diện đăng nhập, đăng ký, giao diện hoàn tất đăng nhập, chọn độ khó, trả lời câu hỏi, kết thúc phần chơi, lịch sử, cài đặt. Thiết kế giao diện phía Admin bao gồm giao diện đăng nhập, Logout, xem kết quả, thêm xem câu hỏi, thêm câu hỏi, cập nhật câu hỏi, xem đề thi. Các giao diện được thiết kế để dễ sử dụng và thân thiện với người dùng. Sử dụng màu sắc hài hòa và bố cục rõ ràng.

V. Cài Đặt Kiểm Thử Phần Mềm Thi Đố Vui Kết Quả Tương Lai

Đồ án phần mềm đố vui đã thành công trong việc phát triển một ứng dụng giải trí mang lại trải nghiệm thú vị cho người dùng. Ứng dụng này được thiết kế với mục tiêu chính là cung cấp trò chơi đố vui, giúp người chơi thư giãn và cải thiện khả năng tư duy. Ưu và nhược điểm của phần mềm

  • Ưu điểm Tính Năng Đa Dạng: Ứng dụng có nhiều chế độ chơi, đa dạng câu đố Giao Diện Thân Thiện: Giao diện người dùng được thiết kế để dễ sử dụng và thân thiện với người dùng. Quản Lý Dữ Liệu: Hệ thống quản lý dữ liệu được xây dựng để lưu trữ và quản lý các câu hỏi, đáp án, và thông tin liên quan đến trò chơi một cách hiệu quả. Chức Năng Thêm/Sửa/Xóa Câu Hỏi: Người quản trị có thể dễ dàng thêm, chỉnh sửa, hoặc xóa câu hỏi, tạo ra sự linh hoạt trong việc cập nhật nội dung trò chơi. Theo dõi Kết quả: Hệ thống có chức năng lưu kết quả, theo dõi tiến độ chơi và cung cấp thông tin về kết quả cho người chơi. Đa Nền Tảng: Ứng dụng có thể chạy trên nhiều nền tảng khác nhau như Android, IOS
  • Nhược điểm Tải màn chơi chậm, có thời gian chờ lâu, điều này có thể làm mất đi sự hấp dẫn của trò chơi. Chưa có trải nghiệm animation mượt mà.

5.1. Tóm Tắt Kết Quả Ưu Điểm Nhược Điểm Của Ứng Dụng

Ứng dụng có nhiều chế độ chơi, đa dạng câu đố, giao diện thân thiện, quản lý dữ liệu hiệu quả, chức năng thêm/sửa/xóa câu hỏi, theo dõi kết quả, đa nền tảng. Nhược điểm là tải màn chơi chậm và chưa có trải nghiệm animation mượt mà. UI co dãn để phù hợp với tỷ lệ màn hình khác nhau

5.2. Hướng Phát Triển Tương Lai Chế Độ Chơi Tối Ưu Chi Phí

Hướng phát triển tương lai bao gồm chế độ chơi đa dạng, theo chủ đề, lưu lại bài test, tối ưu chi phí cho Firebase (ví dụ: lưu dữ liệu trực tiếp trong game thông qua PlayerPrefs), trải nghiệm người dùng thân thiện hơn (animation mượt mà hơn). Cần quan tâm đến tính phí vận hành nếu thương mại hóa.

11/09/2025

Trích đoạn nội dung tài liệu

BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT Mà ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ĐỒ ÁN MÔN HỌC PHẦN MỀM THI ĐỐ VUI Môn: Công nghệ phần mềm Sinh viên thực hiện: CT06N0150 - Nguyễn Văn Quyền CT06N0149 - Trịnh Xuân Quý CT06N0147 - Nguyễn Trọng Phúc CT06N0152 - Nguyễn Tấn Thành CT06N0141 - Nguyễn Hoàng Nguyên Giảng viên hướng dẫn: ThS. Nguyễn Văn Thịnh TP.HCM, 11/2023 Bảng phân công nhiệm vụ CÔNG VIỆC ĐƯỢC ĐÁNH STT MSSV HỌ TÊN GIAO GIÁ Xây dựng, thiết kế ứng dụng, khảo sát hiện trạng, 1 CT06N0149 Trịnh Xuân Quý A sửa BFD, Sequence diagram. Xây dựng, thiết kế web 2 CT06N0147 Nguyễn Trọng Phúc admin, database, các mô A hình đặc tả. Xác định yêu cầu, chức 3 CT06N0150 Nguyễn Văn Quyền B năng cho phần mềm Xác định chức năng, sưu 4 CT06N0152 Nguyễn Tấn Thành C liệu cho các mô hình Phát biểu bài toán, dữ liệu 5 CT06N0141 Nguyễn Hoàng Nguyên cho database, báo cáo đồ C án MỤC LỤC Contents Phần 1: TỔNG QUAN.

MỤC TIÊU VÀ PHẠM VI ĐỀ TÀI. Phạm vi đề tài. PHÁT BIỂU BÀI TOÁN. KẾT CHƯƠNG.

KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU. KHẢO SÁT HIỆN TRẠNG. Giới thiệu sơ lược. Các biểu mẫu thu thập được trong quá trình khảo sát.

Chi tiết quy trình nghiệp vụ. YÊU CẦU CỦA PHẦN MỀM. Yêu cầu phi chức năng. Yêu cầu chức năng.

Kiến trúc hệ thống. CÁC MÔ HÌNH ĐẶC TẢ YÊU CẦU. Use Case Diagram của phần mềm Quiz:. Sơ đồ BPM (Business Process Model) cho từng nghiệp vụ.

KẾT CHƯƠNG. PHÂN TÍCH PHẦN MỀM. PHÂN TÍCH DỮ LIỆU. Giới thiệu mô hình CDM - ERD.

Lập mô hình thực thể liên kết. Sưu liệu cho mô hình thực thể liên kết. PHÂN TÍCH XỬ LÝ. Sơ đồ phân cấp chức năng (BFD - Bussiness Functional Diagram) 15 3.

Lập sơ đồ phân cấp chức năng (BFD - Bussiness Functional Diagram). Sơ đồ dòng dữ liệu (Data Flow Diagram – DFD). KẾT CHƯƠNG. THIẾT KẾ PHẦN MỀM.

THIẾT KẾ DỮ LIẾU. Giới thiệu mô hình PDM (Physical Data Model). Chuyển đổi mô hình CMD/ERD sang mô hình PDM. Sưu liệu cho mô hình PDM.

THIẾT KẾ KIẾN TRÚC. THIẾT KẾ GIAO DIỆN. Giao diện phía user. Giao diện phía Admin.

THIẾT KẾ XỬ LÝ. KẾT CHƯƠNG. 42 PHẦN 5: CÀI ĐẶT VÀ KIỂM THỬ. 43 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.

Tóm tắt kết quả. Hướng phát triển tương lai. 43 TÀI LIỆU THAM KHẢO. 45 DANH MỤC CÁC HÌNH Hình 2.

1: Kiến trúc hệ thống. 1: Use case Diagram của QuizGame. 2: Sơ đồ BPM nghiệp vụ Đăng nhập. 3: Sơ đồ BPM nghiệp vụ Đăng ký.

4: Sơ đồ BPM nghiệp vụ thi, tiếp tục thi. 5: Sơ đồ BPM nghiệp vụ tạo đề thi. 6: Sơ đồ BPM nghiệp vụ xem kết quả bài thi. 7: Sơ đồ BPM nghiệp vụ lưu cuộc thi.

8: Mô hình thực thể liên kết QuizGame. 9: Sơ đồ BPM của phần mềm QuizGame. 10: Sơ đồ DFD mức 0 của phần mềm Quiz. 11: Sơ đồ DFD mức 1 của phần mềm QuizGame.

12: Sơ đồ DFD mức 2 của phần mềm QuizGame. 13: Sơ đồ DFD mức 2 của phần mềm QuizGame. 14: Sơ đồ dòng dữ liệu mức 2 của phần mềm QuizGame. 15: Sơ đồ dòng dữ liệu mức 2 của phần mềm QuizGame.

1: Giao diện khi vào ứng dụng (Đăng nhập). 2: Giao diện khi đăng ký tài khoản. 3: Giao diện khi đăng nhập thành công. 4: Giao diện chọn độ khó bài thì.

5: Giao diện trả lời câu hỏi. 6:Giao diện khi kết thúc phần chơi. 7: Giao diện lịch sử (History) chơi. 8: Giao diện cài đặt(cài đặt âm thanh và nhạc nền).

9: Giao diện đăng nhập Web Admin. 10: Giao diện Logout. 11: Giao diện xem kết quả của các user. 12: Giao diện xem câu hỏi.

13: Giao diện thêm câu hỏi. 14: Giao diện cập nhật đề thi. 15: Giao diện xem đề thi. 16: Thiết kế xử lý câu hỏi.

17: Thiết kế xử lý cập nhật câu hỏi. 18: Thiết kế xử lý tạo câu hỏi. 19: Thiết kế xử lý xem đề thi. 20: Thiết kế xử lý xem kết quả của người chơi.

21: Sequence đăng nhập. 23: Sequence xem lịch sử. 24: Sequence chọn độ khó. 25: Sequence lưu kết quả.

26: Sequence game mechanics .42 DANH MỤC CÁC BẢNG Bảng 2. 1: Biểu mẫu thông tin đăng nhập của user. 2: Biểu mẫu thông tin câu hỏi. 3: Biểu mẫu thông tin cuộc thi.

4: Bảng yêu cầu chức năng của QuizGame .6 PHẦN 1: TỔNG QUAN 1. GIỚI THIỆU Trò chơi câu đố là một trò chơi giáo dục và giải trí, trong đó người chơi phải trả lời những câu hỏi từ nhiều lĩnh vực khác nhau. Mục tiêu của trò chơi là trả lời đúng những câu hỏi này để kiểm tra và mở rộng kiến thức của mình. Trò chơi câu đố có thể có nhiều dạng khác nhau.

Trò chơi này yêu cầu người chơi trả lời câu hỏi trong một khoảng thời gian nhất định. Trò chơi không chỉ giúp người chơi giải trí mà còn giúp cải thiện khả năng tư duy, tăng cường kiến thức và đôi khi thậm chí là khám phá những thông tin mới. Nó cũng có thể được sử dụng như một công cụ giảng dạy trong các môi trường học tập để thúc đẩy sự tham gia và học tập tương tác. Dù là một trò chơi đơn giản nhưng nó luôn mang lại niềm vui và thử thách cho người chơi.

Nó là một cách tuyệt vời để kích thích trí tuệ và tạo ra những trải nghiệm giáo dục thú vị. MỤC TIÊU VÀ PHẠM VI ĐỀ TÀI 1. Mục tiêu Một ứng dụng "Quiz Game" có mục tiêu đa chiều, nhằm đem lại giá trị giáo dục, giải trí và kiểm tra kỹ năng cho người chơi. Trong khía cạnh giáo dục, ứng dụng cung cấp thông tin chi tiết và hữu ích qua các câu hỏi và câu trả lời, từ đó nâng cao hiểu biết và kiến thức của người chơi trong nhiều lĩnh vực khác nhau.

Đồng thời, qua trải nghiệm giải trí, ứng dụng tạo ra một môi trường vui nhộn và thú vị, giúp người chơi giải trí và giảm căng thẳng. Cuối cùng, qua việc kiểm tra kỹ năng, ứng dụng thách thức người chơi, đánh giá khả năng tư duy, tìm kiếm thông tin và sự nhạy bén trong việc giải quyết vấn đề. Tổng cộng, mục tiêu của ứng dụng là kết hợp giáo dục và giải trí, tạo nên một trải nghiệm đa chiều và thú vị cho người chơi. Ứng dụng nhắm đến việc cung cấp các câu hỏi về đa lĩnh vực.

Điều này giúp người chơi nâng cao kiến thức chuyên sâu và liên tục cập nhật với sự phát triển trong đời sống. Các câu hỏi có thể được thiết kế để thách thức người chơi ở mức độ khó khăn tăng dần, từ cơ bản đến nâng cao, tạo ra một trải nghiệm học tập có cấp độ và độ khó linh hoạt. Tóm lại, mục tiêu của ứng dụng là làm cho quá trình học lập trình trở nên hấp dẫn, hiệu quả và thách thức đồng thời. Phạm vi đề tài Lập trình game bằng Unity kết hợp ngôn ngữ C# và cơ sở dữ liệu Firebase.

Quản lí ứng dụng bằng Web browser. PHÁT BIỂU BÀI TOÁN Ứng dụng Quiz Game là một loại ứng dụng hoặc trò chơi trực tuyến thường được thiết kế để kiểm tra và nâng cao kiến thức, khả năng trả lời câu hỏi hoặc giải quyết vấn đề của người chơi thông qua các câu hỏi trắc nghiệm hoặc câu đố. Quiz Game gồm một hệ thống câu hỏi và câu trả lời, và một người chơi hoặc đội người chơi tham gia để kiểm tra kiến thức hoặc giải quyết các câu hỏi. Mỗi câu hỏi có một giá trị điểm tương ứng, và người chơi sẽ đạt được điểm tương ứng với câu trả lời đúng.

Ứng dụng có các chức năng cơ bản như: Đăng nhập, đăng ký, tổ chức cuộc thi, lưu cuộc thi, xem kết quả, tạo đề thi mới, quản lý người dùng và câu hỏi. Phần mềm này được cài đặt trên môi trường smartphone hệ điều hành Android, Web browser hỗ trợ HTML5. Sử dụng cơ sở dữ liệu Firebase. Công nghệ: Ngôn ngữ C#, Java, JavaScript, Html, Engine Unity, Spring framework, React framework ,Firebase(Database, Authentication).

KẾT CHƯƠNG Chương đầu tiên đã trình bày sơ lược về trò chơi câu đố và mục tiêu của đề tài. Chúng tôi đã tập trung vào vai trò quan trọng của trò chơi câu đố trong việc kết hợp giải trí và giáo dục. Trò chơi này không chỉ mang lại niềm vui cho người chơi mà còn thúc đẩy khả năng tư duy, mở rộng kiến thức và thậm chí khám phá thông tin mới. Ngoài ra, trò chơi câu đố cũng có thể được ứng dụng trong môi trường học tập để thúc đẩy sự tham gia và tương tác.

Tiếp theo, chúng tôi đã định rõ mục tiêu và phạm vi của đề tài. Chúng tôi quyết định phát triển một ứng dụng trò chơi câu đố bằng việc sử dụng nền tảng Unity và ngôn ngữ lập trình C#, kết hợp với cơ sở dữ liệu Firebase. Ứng dụng này sẽ mang đến một trải nghiệm trò chơi câu đố độc đáo, hỗ trợ các chức năng cơ bản như đăng nhập, đăng ký, tổ chức cuộc thi, lưu trữ cuộc thi, tiếp tục cuộc thi, xem kết quả và quản lý người dùng và câu hỏi. Đồng thời, ứng dụng sẽ hoạt động trên các môi trường hệ điều hành Android và trình duyệt web hỗ trợ HTML5.

Chương 2 sẽ tiếp tục tập trung vào việc phân tích thiết kế tổng thể của ứng dụng, bao gồm giao diện người dùng, quản lý người dùng, và quy trình tổ chức cuộc thi. Chúng tôi cũng sẽ đi sâu vào cách ứng dụng tương tác với cơ sở dữ liệu Firebase để đảm bảo tính nhất quán và đáng tin cậy. KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU 2. KHẢO SÁT HIỆN TRẠNG 2.

Giới thiệu sơ lược Hệ thống game đố vui trắc nghiệm này là một ứng dụng đa nền tảng hoàn chỉnh sử dụng một loạt công nghệ để cung cấp trải nghiệm đa dạng cho người chơi và quản trị viên. Dưới đây là một tóm tắt về các thành phần chính của hệ thống: - Unity Game: Trò chơi đố vui trắc nghiệm được phát triển bằng Unity, một môi trường phát triển trò chơi mạnh mẽ. Trong trò chơi này, người chơi có thể tham gia vào các cuộc thi trắc nghiệm, trả lời câu hỏi và xem kết quả của họ. - Firebase Authentication: Để xác thực người chơi, hệ thống sử dụng Firebase Authentication.

Người chơi có thể đăng ký và đăng nhập bằng tài khoản Firebase hoặc tài khoản mạng xã hội.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ