TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO MƠN HỌC
ĐỒ ÁN LẬP TRÌNH .NET
ĐỀ TÀI: PHÁT TRIỂN PHẦN MỀM
TRỊ CHƠI HÀNH TRÌNH TRI THỨC
Sinh viên thực hiện
: ĐINH MINH HOÀNG
ĐẶNG TIẾN QUYỀN
GIANG VĂN HƯNG
Giảng viên hướng dẫn
: HOÀNG THANH TÙNG
Chuyên ngành
: CÔNG NGHỆ PHẦN MỀM
Lớp
: D16CNPM7
Hà Nội, ngày……tháng 11 năm 2023
1
PHIẾU CHẤM ĐIỂM
Họ và tên
Nội dung thực hiện
Đinh Minh Hoàng
Chức năng đăng nhập
và các thao tác thêm, sửa,
xóa câu hỏi. Tham gia
báo cáo
21810310148
Giang Văn Hưng
21810310068
Đặng Tiến Quyền
21810310641
Họ và tên Giảng viên
Giảng viên chấm 1:
Giảng viên chấm 2:
Chữ ký
Phát triển chế độ chơi
đơn, lưu điểm và giao
diện trò chơi. Tham gia
báo cáo
Triển khai chế độ chơi
nhiều người. Tham gia
báo cáo
Chữ ký
Ghi chú
Điểm
MỤC LỤC
MỤC LỤC.................................................................................................1
DANH MỤC HÌNH ẢNH........................................................................2
LỜI MỞ ĐẦU...........................................................................................4
CHƯƠNG I: XÁC LẬP DỰ ÁN.............................................................5
1.1. Lý do chọn đề tài...........................................................................5
1.2. Giới thiệu về trò chơi.....................................................................5
1.3. Ưu nhược điểm của Phần mềm....................................................6
1.4. Xác lập dự án và đánh giá khả thi...............................................6
1.5. Tổng quan phần mềm...................................................................6
CHƯƠNG II: PHÂN TÍCH THẾT KẾ HỆ THỐNG...........................8
2.1. Biểu đồ ca sử dụng.........................................................................8
2.2. Đặc tả use case.............................................................................10
2.3. Biểu đồ trình tự............................................................................16
2.4. Biểu đồ trạng thái........................................................................19
2.5. Biểu đồ hoạt động........................................................................21
2.6. Biểu đồ lớp...................................................................................25
2.7. Biểu đồ thành phần.....................................................................28
2.8. Biểu đồ triển khai........................................................................28
CHƯƠNG III: THIẾT KẾ CƠ SỞ DỮ LIỆU.....................................29
3.1. Mơ hình quan hệ CSDL..............................................................29
3.2. Danh sách các bảng trong CSDL...............................................29
CHƯƠNG IV: THIẾT KẾ GIAO DIỆN TRÒ CHƠI........................35
4.1. Chức năng Đăng nhập.................................................................35
4.2. Giao diện màn hình chính...........................................................36
4.3. Chức năng chơi đơn....................................................................37
4.4. Chức năng chơi LAN...................................................................38
4.5. Chức năng đổi tên........................................................................40
4.6. Chứng năng xem điểm................................................................41
4.7. Chứng năng quản lý câu hỏi.......................................................41
KẾT LUẬN.............................................................................................43
1
DANH MỤC HÌNH ẢNH
Hình 1. Biểu đồ use case tổng quát của quản lý.................................................9
Hình 2. Biểu đồ use case tổng quát của người chơi............................................9
Hình 3. Use case đăng nhập.............................................................................10
Hình 4. Use case quản lý loại câu hỏi...............................................................11
Hình 5. Use case quản lý câu hỏi.....................................................................12
Hình 6. Use case chế độ chơi đơn....................................................................13
Hình 7. Use case chế độ đa người chơi............................................................14
Hình 8. Use case xem kết quả..........................................................................15
Hình 9. Biểu đồ trình tự đăng nhập..................................................................16
Hình 10. Biểu đồ trình tự đổi tên......................................................................16
Hình 11. Biểu đồ trình tự chơi đơn...................................................................17
Hình 12. Biểu đồ trình tự chơi LAN.................................................................17
Hình 13. Biểu đồ trình tự quản lý loại câu hỏi.................................................18
Hình 14. Biểu đồ trình tự quản lý câu hỏi........................................................18
Hình 15. Biểu đồ trạng thái đăng nhập.............................................................19
Hình 16. Biểu đồ trạng thái chơi đơn...............................................................19
Hình 17. Biểu đồ trạng thái chơi LAN.............................................................20
Hình 18. Biểu đồ trạng thái quản lý loại câu hỏi..............................................20
Hình 19. Biểu đồ trạng thái quản lý câu hỏi.....................................................21
Hình 20. Biểu đồ hoạt động đăng nhập............................................................21
Hình 21. Biểu đồ hoạt động chơi đơn...............................................................22
Hình 22. Biểu đồ hoạt động chơi LAN.............................................................23
Hình 23. Biểu đồ hoạt động quản lý loại câu hỏi.............................................24
Hình 24. Biểu đồ hoạt động quản lý câu hỏi....................................................24
Hình 25. Biểu đồ lớp tổng quát........................................................................27
Hình 26. Biểu đồ thành phần............................................................................28
Hình 27. Biểu đồ triển khai..............................................................................28
Hình 28. Mơ hình quan hệ CSDL.....................................................................29
Hình 29. Giao diện đăng nhập..........................................................................35
Hình 30. Giao diện đăng nhập..........................................................................35
Hình 31. Giao diện màn hình chính..................................................................36
Hình 32. Giao diện chơi đơn............................................................................37
Hình 33. Giao diện chơi đơn............................................................................37
2
Hình 34. Giao diện chơi LAN..........................................................................38
Hình 35. Giao diện chơi LAN..........................................................................38
Hình 36. Giao diện chơi LAN..........................................................................39
Hình 37. Giao diện chơi LAN..........................................................................39
Hình 38. Giao diện chơi LAN..........................................................................40
Hình 39. Giao diện đổi tên...............................................................................40
Hình 40. Giao diện xem điểm..........................................................................41
Hình 41. Giao diện quản lý câu hỏi..................................................................41
Hình 42. Giao diện quản lý câu hỏi..................................................................42
Hình 43. Giao diện quản lý câu hỏi..................................................................42
Hình 44. Giao diện quản lý câu hỏi..................................................................42
3
LỜI MỞ ĐẦU
Ngày nay việc ứng dụng công nghệ thông tin đã trở nên phổ biến trong
hầu hết mọi nơi tất cả các ngành nghề, cơng việc đều có thể ứng dụng công
nghệ thông tin vào công tác quản lý.
Sự phát triển công nghệ thông tin trong những năm gần đây ngày càng nổi
bật tốc độ phát triển như vũ bão, cơng nghệ thơng tin dần dần có mặt thay thế
và trở thành công cụ đắc lực hộ trợ con người. Vì vậy, để bắt kịp nhịp độ phát
triển của xã hội, những nền tảng kiến thức học trên giảng đường là vô cùng
quan trọng với sinh viên chúng em.
Em xin chân thành xin gửi lời cảm ơn đặc biết gửi lời cảm ơn đến thầy
Hoàng Thanh Tùng người đã tận tình hướng dẫn mơn đồ án .NET cho em trong
từng buổi học. Thầy đã trang bị cho chúng em kiến thức môn học và hơn cả là
động lực tiếp tục trên con đường chính phục cơng nghệ.
Em xin chân thành cảm ơn các thầy các cô bộ môn đã tận tình giảng dạy
cho em trong suốt thời gian qua. Nhờ có sự chỉ dạy tận tình của thầy cơ để giúp
em hoàn thành báo cáo này.
Cuối cùng, em xin chân thành cảm ơn các bạn đã giúp em trong q trình
hồn thành chun đề, và cảm ơn gia đình đã cho chúng em thêm động lực học
tập và trở thành người cơng dân và là người sinh viên có ích cho cộng đồng và
ngành.
4
CHƯƠNG I: XÁC LẬP DỰ ÁN
1.1. Lý do chọn đề tài
Thế giới đang ở thời đại 5.0, thời đại của những công nghệ mới sẽ được
thiết kế để tương tác với con người một cách tự nhiên hơn, giúp chúng ta nắm
bắt và sử dụng thông tin một cách hiệu quả hơn. Game hay gọi 1 cách dễ hiểu
là trò chơi là một dạng ứng dụng hoạt động giải trí, giúp người dùng tương tác
và truyền tải dữ liệu đến hoặc đi thông qua một tập hợp các quy tắc, điều khiển,
và hoạt động tương tác. Tuy nhiên, thị trường thường tập trung vào những trị
chơi kỹ năng và khơng có q nhiều trị chơi trí tuệ giúp con người có thể vừa
học vừa chơi. Bởi vậy nhóm quyết định chọn đề tài phát triển một trò chơi cơ
bản thể loại trả lời câu hỏi – Hành trình tri thức để giúp mọi người có thể vừa
giải trí, vừa tiếp thu thêm nhiều kiến thức.
1.2. Giới thiệu về trò chơi
- Game Hành trình tri thức là một loại trị chơi tương tác thường xoay quanh
việc trả lời các câu hỏi. Đây là một dạng trị chơi thơng minh, nơi người chơi
cần phải đưa ra câu trả lời chính xác cho các câu hỏi được đặt ra.
- Mơ tả trị chơi: Khi trò chơi bắt đầu người chơi (player) cần nhanh tay chọn
các đáp án mà mình cho là đúng để hồn thành câu hỏi.
Một số đặc điểm chính của trị chơi Hành trình tri thức:
+ Câu hỏi đa dạng: Game Hành trình tri thức có thể bao gồm các câu hỏi về
nhiều lĩnh vực như kiến thức chung, văn hóa, lịch sử, khoa học, phim ảnh, âm
nhạc, thể thao, nghệ thuật, …
+ Đối tượng người chơi đa dạng: Game Hành trình tri thức có thể được thiết kế
cho mọi lứa tuổi và mọi đối tượng, từ trẻ em đến người lớn, từ người mới bắt
đầu đến những người có kiến thức sâu rộng.
+ Thách thức và giáo dục: Trò chơi này thường kết hợp giữa việc cung cấp
thông tin và kiến thức mới cùng với việc thử thách kỹ năng của người chơi
trong việc giải đố hoặc trả lời câu hỏi.
5
+ Cạnh tranh hoặc hợp tác: Game Hành trình tri thức có thể được thiết kế để
người chơi cạnh tranh với nhau để giành điểm số cao nhất hoặc cũng có thể là
hình thức chơi đội, nơi mà người chơi cùng nhau làm việc để đạt được mục tiêu
chung.
1.3. Ưu nhược điểm của Phần mềm
- Ưu điểm: đơn giản và dễ sử dụng
- Nhược điểm: Do dùng SQL server để lưu trữ nên việc truy suất dữ liệu lên hệ
thống tốn nhiều thời gian gây khó khăn trong việc quản lý đồng bộ
1.4. Xác lập dự án và đánh giá khả thi
1.4.1. Mục tiêu của dự án mới
Dự án cần được hồn thành với chi phí phù hợp và khơng tốn quá nhiều
bộ nhớ ảnh hưởng đên quá trình hoạt dộng của mày chủ.
1.4.2. Công nghệ sử dụng
- Hệ thống lưu trữ dữ liệu: SQL Server (Microsoft SQL Server Management
Studio 19)
- Ngơn ngữ lập trình: C#, JavaScript
- Ngơn ngữ thiết kế giao diện: HTML, Css
- Trình biên dịch: Visual Studio 2022
1.5. Tổng quan phần mềm
1.5.1. Mục tiêu phần mềm
Giúp cho người chơi giải trí và rèn luyện nâng cao tri thức một cách đơn
giản và tự nhiên mà không phải áp lực.
6
1.5.2. Đối tượng người dùng
Phần mềm trò chơi đơn giản và dễ hiểu nên phù hợp với hầu hết lứa tuổi
từ trẻ em đến người trưởng thành.
1.5.3. Các yêu cầu phần mềm
1.5.3.1. Yêu cầu tính dễ sử dụng:
Phần mềm sử dụng ngôn ngữ tiếng việt và viết bằng ngôn ngữ lập trình
C# nên cần có giao diện phù hợp, dễ nhìn, khơng ảnh hưởng nhiều đến người
chơi khi sử dụng phần mềm lâu.
1.5.3.2. Yêu cầu về tính ổn định:
Phần mềm được chạy trên nền website nên cần hoạt động ổn định 24/24
và tốc độ xử lý thông tin nhanh, đảm bảo chính xác kịp thời
Phần mềm yêu cầu thực hiện tốt các chứng năng chính hiện tại
1.5.3.3. Yêu cầu bảo mật:
Phần mềm trị chơi khơng lưu trữ dữ liệu hay thông tin cá nhân mà chỉ lưu
lại tên hoặc biệt danh người chơi dùng và điểm số để người chơi xem nên
không cần yêu cầu bảo mật cao.
Tuy vậy hệ thống phải có chế độ sao lưu phục hồi dữ liệu, nhằm đảm bảo
an toàn về mặt dữ liệu nếu chẳng may dữ liệu các câu hỏi bị hỏng.
7
CHƯƠNG II: PHÂN TÍCH THẾT KẾ HỆ THỐNG
2.1. Biểu đồ ca sử dụng
2.1.1. Xác định các tác nhân (Actor) tác động vào hệ thống
- Người chơi (Khách)
- Admin (Quản lý)
2.1.2. Xác định các ca sử dụng
Dựa trên việc phân tích hệ thống và mơ tả trị chơi ta có được các ca sử
dụng sau:
- Chế độ chơi đơn
- Chế độ chơi nhiều người
- Chức năng xem kết quả
- Chức năng quản lý loại câu hỏi: Thêm, xóa, sửa, tìm kiếm loại câu hỏi
- Chức năng quản lý câu hỏi: Thêm, xóa, sửa, tìm kiếm câu hỏi
- Chức năng quản lý tài khoản: Thêm, xóa, sửa tài khoản
- Chức năng thống kê dữ liệu và gửi báo cáo về nhà trường
8
ACTOR
USECASE
Admin
- Đăng nhập
- Chức năng quản loại lý câu hỏi
- Chức năng quản lý câu hỏi
- Chức năng quản lý tài khoản đăng nhập
Người chơi
- Chế độ chơi đơn
- Chế độ chơi nhiều người
- Chức năng xem kết quả
Hình 1. Biểu đồ use case tổng quát của quản lý
9
Hình 2. Biểu đồ use case tổng quát của người chơi
10
2.2. Đặc tả use case
2.2.1. Đặc tả use case “Đăng nhập”
Tên use case
Đăng nhập
Mục đích
- Cho phép admin truy cập để quản lý dữ liệu câu
hỏi của phần mềm
Tác nhân
- Admin
Tiền điều kiện
- Admin đã có username và password (Nếu Admin
mất tài khoản thì chọn đăng ký lại, chỉ Admin có
quyền đăng ký thơng tin username và password
hoặc qn mật khẩu)
- Hệ thống được kết nối đầy đủ internet
Hậu điều kiện
- Admin truy cập thành công vào hệ thống
Luồng cơ bản
- Admin sử dụng user và password đã có để truy
cập hệ thống
Luồng ngoại lệ
- Hệ thống kiếm tra nếu user và password đúng hệ
thống sẽ thông báo yêu cầu Admin điền đúng
thông tin đăng nhập
- Hệ thống hiển thị đăng nhập thành cơng, Admin
có thể thực hiện các chức năng quản lý sau khi đã
đăng nhập
- Nếu Username và password không đúng:
1. Yêu cầu nhập lại username và password
2. Nếu nhập sai lần thứ 5 thì khóa tài khoản 2ngày
11
Hình 3. Use case đăng nhập
12
2.2.2. Đặc tả use case “Quản lý loại câu hỏi”
Tên use case
Quản lý loại câu hỏi
Mục đích
- Lưu trữ và quản lý thông tin loại câu hỏi của phần
mềm
Tác nhân
- Admin
Tiền điều kiện
- Admin đăng nhập vào hệ thống
- Hệ thống được kết nối đầy đủ Internet
- Admin có thể thêm, xóa, sửa, tìm kiếm với kho
dữ liệu loại câu hỏi trên hệ thống
Hậu điều kiện
- Hệ thống cập nhật thông tin sau khi Admin tác
động vào kho dữ liệu
Luồng cơ bản
- Admin đăng nhập thành công vào hệ thống với
username và password đã có
- Admin chọn chức năng quản lý loại câu hỏi và sử
dụng
Luồng ngoại lệ
- Admin chưa thể đăng nhập vào hệ thống: yêu cầu
đăng nhập lại bằng username và password đã có
hoặc đăng ký mới
- Hệ thống thơng báo: Kho chưa có dữ liệu nên
phải thêm thông tin
- Nhân viên chưa kết nối Internet cho hệ thống.
Hình 4. Use case quản lý loại câu hỏi
13
2.2.3. Đặc tả use case “Quản lý câu hỏi”
Tên use case
Quản lý loại câu hỏi
Mục đích
- Lưu trữ và quản lý thông tin loại câu hỏi của phần
mềm
Tác nhân
- Admin
Tiền điều kiện
- Admin đăng nhập vào hệ thống
- Hệ thống được kết nối đầy đủ Internet
-Admin có thể thêm, xóa, sửa, tìm kiếm với kho dữ
liệu câu hỏi trên hệ thống
Hậu điều kiện
- Hệ thống cập nhật thông tin sau khi Admin tác
động vào kho dữ liệu
Luồng cơ bản
- Admin đăng nhập thành công vào hệ thống với
username và password đã có
- Admin chọn chức năng quản lý câu hỏi và sử
dụng
Luồng ngoại lệ
- Admin chưa thể đăng nhập vào hệ thống: yêu cầu
đăng nhập lại bằng username và password đã có
hoặc đăng ký mới
- Hệ thống thơng báo: Kho chưa có dữ liệu nên
phải thêm thơng tin
- Nhân viên chưa kết nối Internet cho hệ thống
Hình 5. Use case quản lý câu hỏi
14
15
2.2.4. Đặc tả use case “Chế độ chơi đơn”
Tên use case
Chế độ chơi đơn
Mục đích
- Người chơi có thể tham gia chơi một mình
Tác nhân
- Người chơi
Tiền điều kiện
- Hệ thống được kết nối đầy đủ internet
- Người chơi có thể tham gia trả lời câu hỏi để tính
điểm
Hậu điều kiện
- Sau khi người chơi hoàn thành lượt chơi, kết quả
sẽ được lưu và mục kết quả
Luồng cơ bản
- Người chơi chọn chế độ chơi đơn
Luồng ngoại lệ
- Hệ thống thông báo: không thể truy cập kho dữ
liệu câu hỏi
- Người chơi chưa kết nối Internet cho hệ thống.
Hình 6. Use case chế độ chơi đơn
16
2.2.5. Đặc tả use case “Chế độ đa người chơi”
Tên use case
Chế độ đa người chơi
Mục đích
- Người chơi có thể tham gia chơi cùng với bạn bè
Tác nhân
- Người chơi
Tiền điều kiện
- Hệ thống được kết nối đầy đủ internet
- Người chơi có thể tạo phịng để tham gia trả lời
câu hỏi để tính điểm hoặc nhập mã để gia nhập
phòng của bạn bè
Hậu điều kiện
- Sau khi người chơi hoàn thành lượt chơi, kết quả
sẽ được lưu và mục kết quả
Luồng cơ bản
- Người chơi chọn chế độ đa người chơi
- chọn tạo phòng hoặc gia nhập phòng
Luồng ngoại lệ
- Hệ thống thông báo: không thể truy cập kho dữ
liệu câu hỏi
- Người chơi chưa kết nối Internet cho hệ thống.-
Hình 7. Use case chế độ đa người chơi
17
2.2.6. Đặc tả use case “Xem kết quả chơi”
Tên use case
Xem kết quả chơi
Mục đích
- Giúp người chơi xem được kết quả mình đã đạt
được
Tác nhân
- Admin hoặc người chơi
Tiền điều kiện
- Người chơi chọn chức năng kết quả
- Hệ thống được kết nối đầy đủ internet
Hậu điều kiện
- Hệ thống hiển thị kết quả của người chơi
Luồng cơ bản
- Người chơi chọn chức năng cần dùng
Luồng ngoại lệ
- Hệ thống thông báo: không thể truy cập kho dữ
liệu kết quả
- Người chơi hoặc admin chưa kết nối internet cho
hệ thống
Hình 8. Use case xem kết quả
18