Professional Documents
Culture Documents
Lập Trình Mạng 1
Lập Trình Mạng 1
BÁO CÁO BÀI TẬP LỚN
MÔN HỌC : LẬP TRÌNH MẠNG
1
DANH MỤ C
PHÂN CÔNG CÔNG VIỆC..............................................................................................................................2
TỪ VIẾT TẮT.................................................................................................................................................3
DANH SÁCH HÌNH VẼ...................................................................................................................................3
1. GIỚI THIỆU GAME: Game cờ vua thi đấu đối kháng online.................................................................5
I. PHÂN TÍCH YÊU CẦU ĐỀ BÀI.......................................................................................................6
1. Mô tả bài toán:.................................................................................................................................6
2. Phía Client:......................................................................................................................................6
3. Phía Server:.....................................................................................................................................6
4. Phạm vi phần mềm:.........................................................................................................................6
II. PHÂN TÍCH THIẾT KẾ TỔNG QUAN HỆ THỐNG........................................................................6
1. Các tác nhân (actor) tác động vào hệ thống.....................................................................................7
2. Các chức năng (use case).................................................................................................................7
III. PHÂN TÍCH THIẾT KẾ CHI TIẾT HỆ THỐNG...........................................................................7
A. Sơ đồ khối các chức năng của Client và Server...............................................................................7
B. Biểu đồ Use case..............................................................................................................................8
C. Use case chi tiết...............................................................................................................................8
1. Đăng nhập....................................................................................................................................8
2. Đăng ký.......................................................................................................................................9
3. Xem đanh sách online................................................................................................................10
4. Thách đấu..................................................................................................................................11
5. Chơi game..................................................................................................................................12
6. Xem bảng xếp hạng.......................................................................................................................13
D. Biểu đồ class..................................................................................................................................14
1. Phía Client.................................................................................................................................14
2. Phía Server.................................................................................................................................14
E. Biểu đồ tuần tự..............................................................................................................................15
Kết nối socket....................................................................................................................................15
Đăng ký.............................................................................................................................................15
Đăng nhập..........................................................................................................................................16
Xem danh sách online........................................................................................................................16
Gửi yêu cầu thách đấu.......................................................................................................................17
Chơi game.........................................................................................................................................17
2
Xem rank...........................................................................................................................................18
F. Sơ đồ quan hệ thực thể (ER)..........................................................................................................18
IV. KẾT QUẢ ỨNG DỤNG................................................................................................................19
V. CẤU TRÚC THƯ MỤC.........................................................................................................................20
3
PHÂN CÔNG CÔNG VIỆC
Nhiệm vụ
Họ và tên
- làm usecase
-Phân tích hệ thống
Nguyễn Tuấn Thành
- Làm báo cáo
- vẽ biểu đồ lớp
Đinh Quang Linh
-vẽ biểu đồ thực thể ER
TỪ VIẾT TẮT
4
TCP Transmission Control Protocol
MVC Model,View,Control
5
Include: là quan hệ giữa các Use Case với nhau,
nó mô tả việc một Use Case lớn được chia ra
4 thành các Use Case nhỏ để dễ cài đặt (module
hóa) hoặc thể hiện sự dùng lại.
6
2. Để chơi, người chơi phải login vào tài khoản của mình từ một máy client.
Sau khi login thành công, giao diện hiện lên một danh sách các người chơi
đang online, mỗi người chơi có các thông tin: tên, tổng số điểm hiện có của
người chơi, trạng thái (hoặc đang bận nếu đang chơi với người khác, hoặc
đang rỗi nếu không chơi với ai).
3. Muốn mời (thách đấu) ai thì người chơi click vào tên của đối thủ đó trong
danh sách online.
4. Khi bị thách đấu, người chơi có thể chấp nhận (OK), hoặc từ chối (Reject).
5. Khi chấp nhận, 2 người chơi sẽ vào chơi với nhau, và server sẽ làm trọng tài.
Giao diện chơi gồm bàn cờ và nút thoát.
6. Người thách đấu sẽ nhận quân đen và đi sau, người bị thách đấu sẽ nhận
quân trắng và đi trước. Sau mỗi ván, thứ tự đi sẽ đổi ngược lại. Mỗi nước đi
mỗi người có 30s để đi.
7. Sau mỗi nước đi, server sẽ kiểm tra xem ai thắng và gửi kết quả về cho cả 2
đối thủ: thắng 1 điểm, hòa 0.5 điểm, thua 0 điểm. Nếu chưa có ai thắng thì
để cho 2 đối thủ chơi tiếp.
8. Sau mỗi ván, đều có dialog hỏi mỗi người chơi có muốn tiếp tục không. Nếu
cả hai tiếp tục thì chơi tiếp, nếu một trong hai đối thủ dừng chơi thì thoát ra
và server báo cho người chơi còn lại.
9. Kết quả các trận đấu được lưu vào server. Mỗi người chơi đều có thể vào
xem bảng xếp hạng các người chơi trong toàn bộ hệ thống, theo lần lượt các
tiêu chí: tổng số điểm (giảm dần), trung bình điểm của các đối thủ đã gặp
(giảm dần), trung bình số nước đi trong các trận thắng (tăng dần), trung bình
số nước đi trong các trận thua (giảm dần).
7
Hệ thống có 1 Server và nhiều Client. Server sẽ lưu toàn bộ thông tin
và tài liệu.
2. Phía Client:
Để chơi được thì người chơi phải login vào tài khoản của mình
từ một máy Client. Sau khi login thành công thì giao diện hiện
lên những người chơi đang online.
Để thách đấu người chơi khác thì double click vào tên người đó
trong danh sách người chơi online.
Khi đươc thách đấu thì người chơi có thể chấp nhận hoặc từ
chối.
Khi chấp nhận hai đối thủ sẽ chơi với nhau và server làm trọng
tài. Giao diện bàn cờ vua được show ra cho 2 máy Client đánh
cờ với nhau.
Người chơi có thể xem bảng xếp hạng theo tổng số điểm.
3. Phía Server:
Server sẽ gửi đến cho 2 đối thủ một bàn cờ để 2 người đánh cờ
với nhau. Mỗi người chơi đánh theo lượt chơi của mình.
Sau mỗi lượt đánh server sẽ kiểm tra xem họ đánh có đúng luật
không.
Sau mỗi trận server sẽ kiểm tra ai thắng và gửi kết quả cho
người chơi và cập nhật lại điểm trên bảng rank .
Nếu một trong 2 đối thủ mà dừng chơi thoát ra thì server sẽ
thông báo chiến thắng cho người còn lại.
Kết quả mỗi trận đấu được lưu vào server.
8
U2-Đăng nhập: Người chơi đăng nhập vào hệ thống.
U3-Thoát: Người chơi không muốn sử dụng hệ thống có thể thoát
khỏi hệ thống.
U4-Chọn đối thủ: Người chơi chọn đối thủ để thách đấu.
U5-Thách đấu: Người chơi sau khi chọn được đối thủ thì sẽ tiến hành
thách đấu.
U6- Từ chối: Khi nhận được lời mời thách đầu, người chơi có thể
dừng chơi.
U7-Chấp nhận: Khi nhận được lời mời thách đấu thì người chơi chấp
nhận để chơi.
U8- Dừng chơi: Trong quá trình chơi game, người chơi có thể dừng
chơi.
U9-Xem bảng xếp hạng: Người chơi sau khi đăng nhập có thể xem
bảng xếp hạng người chơi.
2. Phía Server
9
B. Biểu đồ Use case
10
Use case Nội dung
Đăng nhập
Tên use case
Người chơi
Actor
Tiền điều kiện Người dùng đã đăng ký thành công tài khoản
Hậu điều kiện Người dùng đăng nhập thành công
11
2. Đăng ký
Người chơi
Actor
Luồng sự kiện phụ Luồng 1: Tài khoản hoặc mật khẩu đã tồn tại:
Khi người dùng nhập thông tin tài khoản đã
tồn tại trong hệ thống :
1.Hiển thị thông báo về lỗi đăng ký ( tên tài
khoản hoặc mật khẩu đã tồn tại)
12
2.Quay lại bước 2 trong luồng sự kiện chính.
4. Thách đấu
Use case Nội dung
Tên use case Thách đấu
13
Mô tả Cho phép người chơi thách đấu hoặc nhận lời
mời
Actor Người chơi.
Điều kiện kích hoạt Người chơi xem được danh sách những
người chơi đang online
Người chơi đã đăng nhập thành công vào hệ
thống và trong danh sách người chơi đang
Tiền điều kiện
online có 1 người đang trống chưa bắt cặp với
ai
Người chơi thách đấu hoặc nhận lời thách đấu
Hậu điều kiện
thành công đến từ một người chơi đang online
1.Người chơi ấn chon vào một đối thủ trên
bảng danh sách những người chơi đang online
hiển thị trên bảng dánh sách.
5. Chơi game.
Use case Nội dung
Tên use case Chơi game
Mô tả Cho phép người chơi đánh cờ với đối thủ
Actor Người chơi.
Điều kiện kích hoạt Người chơi thách đấu thành công được với
đối thủ.
Tiền điều kiện Người chơi đã đăng nhập thành công vào hệ
14
thống và trong danh sách người chơi đang
online có 1 người đang trống chưa bắt cặp với
ai
Người chơi thách đấu hoặc nhận lời thách đấu
Hậu điều kiện
thành công đến từ một người chơi đang online
1.Người chơi ấn chọn vào một đối thủ trên
bảng danh sách những người chơi đang online
hiển thị trên bảng dánh sách.
15
1. Người chơi click vào button hiển thị bảng
xếp hạng.
D. Biểu đồ class
1. Phía Client
2. Phía Server
16
E. Biểu đồ tuần tự
Đăng ký
17
Đăng nhập
18
Gửi yêu cầu thách đấu
Chơi game
19
Xem rank
20
IV. KẾT QUẢ ỨNG DỤNG
21
V. CẤU TRÚC THƯ MỤC
22
23