tài liệu về chương trình quản lý phòng máy
Trang 1Chương 1 Tổng quan
1.1 Chương trình quản lý phòng máy bao gồm những gì?
Trong quá trình khảo sát các chương trình quản lý phòng máy đang sử dụng tại Việt Nam, chúng em tạm phân loại các yêu cầu đề ra là : các yêu cầu cần, các yêu cầu đủ, và các yêu cầu mở rộng
1.1.2 Các yêu cầu đủ:
Ngoài hai yêu cầu trên, việc bảo mật bảo mật và kiểm duyệt nội dung web cũng rất quan trọng do nó cũng ảnh hưởng một phần đến việc kinh doanh (chẳng hạn, thể gây ảnh hưởng uy tín phòng máy khi lướt web đen…) Vì vậy, các yêu cầu kiểm soát hệ thống máy khách được đặt ra như quan sát màn hình máy khách, đọc nội dung người dùng gõ…
1.1.3 Các yêu cầu mở rộng:
Ngoài các dạng yêu cầu trên, các yêu cầu còn lại là các yêu cầu mở rộng Thật ra, các yêu cầu mở rộng chỉ có tính tương đối Tùy thuộc yêu cầu đặt ra cho phần mềm mà ta có thể xem xét thêm các yêu cầu mở rộng như là yêu cầu đủ Các yêu cầu mở rộng thường thấy là : lọc liên kết web, nội dung web, nhắn tin di động, chat nội bộ giữa các máy khách với nhau, đa ngôn ngữ…
Trang 21.2 Các chương trình quản lý phòng máy hiện nay ở Việt Nam
1.2.1 Cyber Station Manager
Cyber Station Manager là phần mềm quản lý khách hàng, thời gian sử dụng máy trạm, điều khiển máy trạm do công ty trách nhiệm hữu hạn Đan Thanh viết Chương trình có các chức năng chính:
o Quản lý thông tin các máy trạm
o Quản lý thông tin các hội viên
o Quản lý hóa đơn
1.2.2 Internet Café Software:
Do công ty PA Việt Nam 65 đường Sư Vạn Hạnh nối dài Q.10 Tp Hồ Chí Minh viết Các tính năng chính:
o Quản lý thông tin các máy trạm
1.2.3 iSystem 3.0 :
Hệ phần mềm chuyên nghiệp cho máy dịch vụ game – Internet, gồm hai phần :
o iSystem hỗ trợ quản trị mạng từ bất cứ máy nào trong mạng nội bộ, hỗ trợ lọc
web đen, biên tập danh bạ web, phân vùng khởi động, hỗ trợ kết nối Internet
Trang 3o Quản lý thông tin các hội viên
o Quản lý hóa đơn
o Lọc thông tin
o Nhắn tin di dộng
o Điều khiển từ xa các máy trạm
1.3 Các ưu khuyết điểm của các chương trình trên
1.3.1 Cyber Station Manager
Ưu điểm : Phần mềm quản lý chi tiết việc phân loại khách hàng gồm : hội viên, khách vãng lai và người quản trị cả Server và Client
Các cách tính cước cho người dùng phong phú: trả tiền trước, trả tiền sau, cộng dồn tiền cước các máy(cho phép đổi máy sử dụng khi đang sử dụng máy nào đó) Cộng thêm thời gian sử dụng miễn phí cho khách Thêm phí tự động cho khách khi khách có yêu cầu
Khuyết điểm:
Cài đặt phức tạp( do dùng MySQL)
Sử dụng Tiếng Việt không dấu
Các chức năng quản lý máy trạm đơn giản
Các chức năng điều khiển từ xa còn ít
1.3.2 Internet Café Software
Trang 4- Vì phải quản lý chi tiết mọi thứ nên giao diện phức tạp, khó dùng
- Không hỗ trợ tiếng Việt mặc dù là phần mềm đa ngôn ngữ
Trang 5Chương 2 Xây dựng chương trình quản lý phòng máy
2.1 Xác định yêu cầu:
2.1.1 Các yêu cầu chức năng:
Xây dựng phần mềm quản lý phòng thuê Internet, chương trình có yêu cầu quản lý những tính năng cần là:
Các tính năng cần là:
Tính cước sử dụng máy Tính cước phục vụ món Quản lý báo cáo
2.2.1 Xây dựng Use Case:
2.2.1.1 Xác định Actor và Use Case phía Server:
Actor: Người sử dụng chương trình Server ở máy chủ - Người quản
lý
Start Server: Chạy chương trình Server
Login: Cho phép Client sử dụng máy tính với trạng thái
username=”anonymous” , password=””
Logout: Không cho phép Client sử dụng máy tính
Paid: Tính tiền người dùng
Trang 6Banner: Thông tin (các nội quy của phòng máy ) người quản
lý muốn cho khách hàng biết
Report :
Report Debit: Thống kê các khách hàng nợ
Report Daily: Thống kê các thông tin kết nối của các máy khách hằng ngày
Report Month: Thống kê tình trạng sử dụng các máy theo tháng
Option :
Manage Cafeteria: Người quản lý có thể xem, sửa hay
bổ sung các loại món ăn, thức uống
Manage Kind of Food: Người quản lý có thể xem, sửa hay bổ sung các món ăn, thức uống
Manage Price Day: Người quản lý có thể xem, sửa hay
bổ sung giá truy cập internet theo ngày cụ thể
Manage Debit: Người quản lý thêm vào cơ sở dữ liệu khách hàng còn nợ
Manage Member: Người quản lý có thể xem, sửa hay bổ sung thành viên
Manage Service: Cho phép người quản lý có thể biết được các service chạy trên máy khách, và người quản lý cũng có thể thay đổi loại
Trang 7khởi động (Automatic, Manual hay Disable) hay cũng có thể trạng thái service(Start hay Stop)
Manage Remote Computer: Cho phép người quản lý có thể Logout, Restart hay Shutdown một máy khách bất kỳ hay cho tất cả các máy theo các tinh chỉnh về thời gian thực hiện
Send Message: Cho phép người quản lý có thể gởi tin nhắn đến một máy khách bất kỳ hay cho tất cả các máy
Snapshot: Cho phép người quản lý có thể chụp hình tĩnh hay hình động máy khách Khi chụp tĩnh, tối đa chụp được 4 máy khách Khi chụp động thì chụp được 1 máy khách
2.2.1.2 Xác định các Actor và Use Case phía Client:
Actor: Người sử dụng chương trình Screen
Order: thực hiện đặt món ăn từ danh sách với Server
2.2.1.3 Mô hình Use Case:
2.2.1.3.1 Phía Server
Trang 8Paid (from User Case)
Start Server (from Use Case)
Login (from Use Case)
Logout (from Use Case)
Set Banner (from Use Case)
Report (from Use Case)
Change Option (from User)
Administration (from User)
Service order (from User) User
Hình 2-1 Mô hình Use Case tổng quát
Month Report (from User) Daily Report
(from User)
User
Hình 2-2 Mô hình Use Case Report
Trang 9Manage Cafeteria (from User)
Manage Debit (from User)
Manage Price Day (from User) Manage Kind of Food(from User)
User Manage Member
(from User)
Hình 2-3 Mô hình Use Case Manage
Manage Remote Computer (from User)
Lock Key (from User)
Log Key (from User) Manage Application(from User)
Manage Service (from User)
Send Message (from User)
Snap Shot
Apply Policy (from User)
Hình 2-4 Mô hình Use Case Administrator
Trang 102.2.1.3.2 Phía Client:
2.2.1.3.2.1 Screen:
Connect (from User) Login Member(from User)
Trang 112.2.2 Đặt tả Use Case:
2.2.2.1 Phía Server:
2.2.2.1.1 Start Server Use Case:
Tên Use Case: Start Server
Mô tả : Server khởi động và lắng nghe kết nối
Dòng sự kiện :
- Dòng sự kiện chính :
+ Người dùng khởi động chương trình
+ Chương trình sẽ thực hiện việc mở cơ sở dữ liệu
+ Kiểm tra thông tin kết nối + Thực hiện việc lắng nghe các kết nối từ máy khách
- Điều kiện tiên quyết:
+ Phải có cơ sở dữ liệu
- Điều kiện bổ sung : + Chương trình phải đăng ký các Active X về List View
- Điểm mở rộng:
+ Không có
2.2.2.1.2 Login Use Case :
Tên Use Case : Login
Mô tả :
Trang 12Người quản lý có thể cho máy khách login với tư cách là anonymous Dòng sự kiện :
-Dòng sự kiện chính :
+ Use case này bắt đầu khi người quản lý chọn Login
+ Server kiểm tra xem máy khách có đang ở trạng thái chờ ? + Nếu hợp lệ Server gởi thông điệp đến máy khách
+ Client nhận thông điệp sẽ tắt màn hình Screen và gởi thông điệp chấp nhận về Server
+ Server nhận thông điệp sẽ cho phép khách hàng ở máy khách
có thể sử dụng với tư cách anonymous Chương trình bắt đầu tính tiền cho khách hàng từ lúc này cho đến lúc khách hàng kết thúc sử dụng
- Hậu điều kiện:
+ Máy chuyển từ trạng thái chờ sang trạng thái sử dụng
- Điểm mở rộng:
+ Không có
2.2.2.1.3 Logout Use Case:
Tên Use Case : Logout
Mô tả : Kết thúc việc khách hàng sử dụng máy khách
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi khách hàng chọn Logout
+ Server gởi thông điệp cho Client, cập nhật lại database
Trang 13+ Client nhận thông điệp và tắt hết các chương trình đang sử dụng + Client bật màn hình che( màn hình Screen)
+ Màn hình che connect lại với Server
- Dòng sự kiện khác:
+ Không có
- Điều kiện tiên quyết:
+ Client phải Login vào Server trước
- Hậu điều kiện:
+ Máy chuyển từ trạng thái sử dụng sang trạng thái chờ
- Điểm mở rộng:
+ Không có
2.2.2.1.4 Paid Use Case:
Tên Use Case : Paid
Mô tả : Kết thúc việc khách hàng sử dụng máy khách và tính tiền
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý chọn Paid
+ Server gởi thông điệp cho Client
+ Client nhận thông điệp và tắt hết các chương trình đang sử dụng + Client bật màn hình che( màn hình Screen)
+ Server tính tiền sử dụng và tiền các dịch vụ liên quan và xuất ra màn hình
- Dòng sự kiện khác:
+ Không có
- Điều kiện tiên quyết:
+ Client phải Login vào Server trước
- Hậu điều kiện:
+ Máy chuyển từ trạng thái sử dụng sang trạng thái chờ
Trang 14- Điểm mở rộng:
+ Không có
2.2.2.1.5 Service Order Use Case:
Tên Use Case : Service Order
Mô tả : Phục vụ món ăn cho khách hàng
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi khách hàng yêu cầu phục vụ món ăn thức uống
+ Người quản lý chọn máy khách mà khách hàng yêu cầu phục vụ Khi đó danh sách các món ăn, thức uống mà khách hàng yêu cầu hiện ra
+ Người quản lý phục vụ lần lượt các món ăn Lúc đó, tiền dịch vụ được cập nhật vào trong tiền sử dụng máy
- Dòng sự kiện khác:
+ Không có
- Điều kiện tiên quyết:
+ Máy khách đang ở trạng thái sử dụng
- Hậu điều kiện:
+ Không có
- Điểm mở rộng:
+ Không có
2.2.2.1.6 Set Banner Use Case:
Tên Use Case: Banner
Mô tả : Thông báo các quy định về sử dụng phòng máy cho khách hàng Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý chọn Set Banner
+ Nhập các quy định mà người quản lý muốn khách hàng cần biết
Trang 15+ Server gởi thông điệp đến tất cả các máy khách có kết nối với Server
+ Client nhận thông điệp sẽ cập nhật thông báo
- Dòng sự kiện khác:
+ Không có
- Điều kiện tiên quyết:
+ Máy khách đang ở trạng thái sử dụng
- Hậu điều kiện:
+ Không có
- Điểm mở rộng:
+ Không có
2.2.2.1.7 Daily Report Use Case:
Tên Use Case: Daily Report
Mô tả: Hiển thị thông tin kết nối của các máy khách hằng ngày
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý chọn thống kê hàng ngày + Chương trình đọc cơ sở dữ liệu từ bảng Daily Report và xuất ra màn hình
- Dòng sự kiện khác:
+ Nếu có lỗi cơ sở dữ liệu thì chương trình sẽ hiển thị thông báo
- Điều kiện tiên quyết:
Trang 16Tên Use Case: Daily Report
Mô tả: Hiển thị thông tin tiền của máy khách kiếm được trong cả tháng Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý chọn Month Report
+ Chương trình đọc cơ sở dữ liệu từ bảng Month Report và xuất ra màn hình
- Dòng sự kiện khác:
+ Nếu có lỗi cơ sở dữ liệu thì chương trình sẽ hiển thị thông báo
- Điều kiện tiên quyết:
2.2.2.1.9 Debit Report Use Case:
Tên Use Case: Debit Report
Mô tả: Hiển thị danh sách các khách hàng còn nợ
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý chọn biểu tượng Debit Report
+ Chương trình đọc cơ sở dữ liệu từ bảng Debit Report và xuất ra màn hình
+ Khi người dùng chọn một khách hàng nợ thì thông tin chi tiết về người khách nợ đó sẽ xuất ra màn hình
- Dòng sự kiện khác:
+ Nếu có lỗi cơ sở dữ liệu thì chương trình sẽ hiển thị thông báo
Trang 17- Điều kiện tiên quyết:
2.2.2.1.10 Manage Kind of Food Use Case:
Tên Use Case: Kind of Food
Mô tả : Người quản lý có thể xem, sửa hay bổ sung các loại món ăn, thức uống
Dòng sự kiện :
- Dòng sự kiện chính : + Use case này bắt đầu khi người quản lý chọn chức năng quản lý loại món ăn, thức uống
+ Màn hình xuất danh sách các loại món ăn, thức uống + Người quản lý có thể chọn chức năng edit để sửa đổi thông tin: luồng sự kiện phụ là sửa đổi một loại thức ăn được kích hoạt
+ Người quản lý có thể chọn chức năng Add new để thêm thông tin luồng sự kiện phụ là thêm một loại thức ăn được kích hoạt
+ Người quản lý có thể chọn chức năng Delete để xóa thông tin: luồng sự kiện phụ là xóa một loại thức ăn được kích hoạt
Sửa đổi một loại thức ăn:
+ Chọn loại thức ăn
+ Nhập mới tên loại thức ăn
+ Chọn chức năng Edit
Trang 182.2.2.1.11 Manage Cafeteria Use Case:
Tên Use Case: Manage Cafeteria
Mô tả: Người quản lý có thể xem, sửa hay bổ sung các món ăn
Dòng sự kiện :
- Dòng sự kiện chính : + Use case này bắt đầu khi người quản lý chọn chức năng quản lý thức ăn, thức uống
+ Màn hình xuất danh sách các món ăn, thức uống
+ Người quản lý có thể chọn chức năng edit để sửa đổi thông tin: luồng sự kiện phụ là sửa đổi thức ăn, thức uống được kích hoạt
Trang 19+ Người quản lý có thể chọn chức năng Add new để thêm thông tin luồng sự kiện phụ là thêm thức ăn, thức uống được kích hoạt
+ Người quản lý có thể chọn chức năng Delete để xóa thông tin:luồng sự kiện phụ là xóa thức ăn, thức uống được kích hoạt
Sửa đổi thức ăn, thức uống:
Trang 202.2.2.1.12 Manage Price Day Use Case:
Tên Use Case: Manage Price Day
Mô tả: Người quản lý có thể xem, sửa hay bổ sung giá truy cập internet theo ngày cụ thể
Dòng sự kiện :
- Dòng sự kiện chính : + Use case này bắt đầu khi người quản lý chọn chức năng quản lý giá dịch vụ
+ Người quản lý chọn ngày cần quản lý
+ Màn hình xuất giá truy cập 7 ngày trong tuần mà ngày đã chọn thuộc vào
+ Người quản lý chọn các giờ rồi chọn chức năng edit để sửa đổi giá cả
- Dòng sự kiện khác:
+ Nếu không chọn thì giá cả là mặc định
- Điều kiện tiên quyết:
2.2.2.1.13 Manage Debit Use Case:
Tên Use Case: Manage Debit
Mô tả : Người quản lý thêm vào cơ sở dữ liệu khách hàng còn nợ Dòng sự kiện :
- Dòng sự kiện chính : + Use case này bắt đầu khi người quản lý chọn chức năng quản lý khách hàng nợ
Trang 21+ Màn hình sẽ hiển thị các thông tin cho người quản lý nhập mới
+ Người quản lý chọn máy mà khách hàng đã sử dụng, khi
đó danh sách các giờ Login vào máy đó sẽ xuất hiện Người quản lý chọn một trong số các giờ bắt đầu đó
+ Sau đó nhập vào một số thông tin (bao gồm Tên, Địa chỉ,
Số điện thoại, tiền trả trước ….)
+ Sau khi nhập xong, chương trình sẽ lưu xuống cơ sở dữ liệu
2.2.2.1.14 Manage Member Use Case:
Tên Use Case :Manage Member
Mô tả : Người quản lý
Dòng sự kiện :
- Dòng sự kiện chính : + Use case này bắt đầu khi người quản lý chọn chức năng quản lý thành viên của phòng máy
+ Chương trình xuất hiện cửa sổ mới có danh sách các thành viên
Trang 22+ Người quản lý có thể chọn chức năng edit để sửa đổi thông tin: luồng sự kiện phụ là sửa đổi thành viên được kích hoạt
+ Người quản lý có thể chọn chức năng Add new để thêm thông tin luồng sự kiện phụ là thêm thành viên được kích hoạt
+ Người quản lý có thể chọn chức năng Delete để xóa 1 record luồng sự kiện phụ là xóa thành viên được kích hoạt Sửa đổi thành viên:
Thêm thức ăn, thức uống:
+ Nhập mới các thông tin cần thiết như tên , địa chỉ, số điện thoại…của thành viên
Trang 23+ Không có
- Điểm mở rộng:
+ Không có
2.2.2.1.15 Lock Keys Use Case :
Tên Use Case: Lock Keys
Mô tả : Cho phép người quản lý khóa các phím của máy khách
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý yêu cầu khóa phím + Người quản lý chọn máy khách mà người quản lý muốn khóa
+ Chọn chế độ khóa là khóa tất cả phím, khóa phím
F1->F2, khóa phím A->Z, khóa phím số , khóa phím dấu, khóa phím hỗ trợ, khóa phím bất kỳ
+ Khi đó Server sẽ gởi thông điệp đến máy khách, máy khách nhận thông điệp sẽ thực hiện khóa phím tương ứng với chế độ khóa
+ Nếu thực hiện thành công thì máy khách sẽ gởi thông điệp báo cho Server là khóa thành công
+ Để kết thúc việc khóa, người quản lý chọn Mở khóa tất cả + Khi đó Server sẽ gởi thông điệp đến máy khách, máy khách nhận thông điệp sẽ thực hiện mở khóa tất cả các phím
+ Nếu thực hiện thành công thì máy khách sẽ gởi thông điệp báo cho Server là mở khóa thành công
- Dòng sự kiện khác:
+ Nếu không thành công thì máy khách gởi thông điệp cho Server báo là không thành công
Trang 242.2.2.1.16 Log Keys Use Case :
Tên Use Case: Log Keys
Mô tả : Cho phép người quản lý có thể ghi nhận lại các phím khách hàng sử dụng trên máy khách
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý yêu cầu ghi nhận phím
+ Người quản lý chọn máy khách mà người quản lý muốn ghi nhận phím
+ Chọn bắt đầu ghi nhận
+ Khi đó Server sẽ gởi thông điệp đến máy khách, máy khách nhận thông điệp sẽ ghi nhận các phím người dùng đã nhấn
+ Người quản lý muốn xem những thông tin đã ghi nhận, sẽ dừng tiến trình ghi nhận thông tin Khi đó Server sẽ gởi thông điệp đến máy khách, máy khách nhận thông điệp sẽ thực hiện gởi thông tin ghi nhận cho Server
+ Nếu nhận thông tin thành công Server sẽ thông báo thành công
+ Người quản lý có thể xem thông tin ghi nhận
- Dòng sự kiện khác:
Trang 25+ Không có
- Điều kiện tiên quyết:
+ Máy khách phải đang ở trạng thái sử dụng
- Hậu điều kiện:
+ Không có
- Điểm mở rộng:
+ Không có
2.2.2.1.17 Manage Application Use Case:
Tên Use Case: Manage Application
Mô tả : Cho phép người quản lý có thể biết được các ứng dụng chạy trên máy khách, và người quản lý cũng có thể bật hay tắt một ứng dụng nào đó Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý yêu cầu quản lý ứng dụng trên máy khách
+ Người quản lý chọn máy khách mà người quản lý muốn xem danh sách các ứng dụng
+ Nếu người quản lý chọn xem danh sách các ứng dụng: Server gởi thông điệp yêu cẩu danh sách đến máy khách, máy khách thực hiện việc ghi lại danh sách các ứng dụng đang chạy ở máy khách và gởi về Server
+ Nếu người quản lý chọn bật một ứng dụng: màn hình yêu cầu nhập các thông tin cần thiết (như tên ứng dụng, đường dẫn…) để bật ứng dụng, và Server gởi yêu cầu đến máy khách Máy khách nhận thông điệp sẽ bật ứng dụng tương ứng
Trang 26+ Nếu người quản lý chọn tắt một ứng dụng: người quản lý chọn một ứng dụng từ danh sách, Server gởi yêu cầu đến máy khách Máy khách nhận thông điệp sẽ tắt ứng dụng
2.2.2.1.18 Manage Service Use Case:
Tên Use Case: Manage Service
Mô tả : Cho phép người quản lý có thể biết được các service chạy trên máy khách, và người quản lý cũng có thể thay đổi loại khởi động( Automatic, Manual hay Disable) hay cũng có thể thay đổi trạng thái service( Start hay Stop)
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý yêu cầu quản lý dịch
Trang 27+ Nếu người quản lý chọn thay đổi loại khởi động dịch vụ: màn hình yêu cầu nhập loại tương ứng để thay đổi Server gởi yêu cầu đến máy khách Máy khách nhận thông điệp sẽ thay đổi tương ứng
+ Nếu người quản lý chọn thay đổi trạng thái dịch vụ: màn hình yêu cầu chọn trạng thái tương ứng để thay đổi Server gởi yêu cầu đến máy khách Máy khách nhận thông điệp sẽ thay đổi tương ứng
2.2.2.1.19 Send Message Use Case:
Tên Use Case: Send Message
Mô tả : Cho phép người quản lý có thể gởi tin nhắn đến một máy khách bất
kỳ hay cho tất cả các máy
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý yêu cầu gởi tin nhắn + Gởi đến một máy: người quản lý chọn máy khách mà người quản lý muốn gởi thông điệp
+ Nhập thông điệp và yêu cầu Server gởi thông điệp đến máy đã chọn
Trang 282.2.2.1.20 Manage Remote Computer:
Tên Use Case: Manage Remote Computer
Mô tả : Cho phép người quản lý có thể Logout, Restart hay Shutdown một máy khách bất kỳ hay cho tất cả các máy
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi người quản lý yêu cầu Logout, Restart hay Shutdown
+ Nếu người quản lý yêu cầu Logout: luồng sự kiện phụ yêu cầu Logout được kích hoạt
+ Nếu người quản lý yêu cầu Resstart: luồng sự kiện phụ yêu cầu Resstart được kích hoạt
+ Nếu người quản lý yêu cầu Shutdown: luồng sự kiện phụ yêu cầu Shutdown được kích hoạt
+ Người quản lý có thể chọn một máy hay tất cả máy
Trang 29+ Người quản lý có thể nhập thời gian Sau thời gian đó chương trình sẽ thực hiện logout
+ Người quản lý yêu cầu Logout Server
sẽ gởi thông điệp đến máy khách yêu cầu máy khách thực hiện logout
tương tự cho Restart và Shutdown
2.2.2.2.1.1 Screen Connect Use Case:
Tên Use Case : Screen Connect
Mô tả : Máy khách thực hiện kết nối với Server để vào trạng thái chờ
Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi máy khách bắt đầu chạy chương trình
Trang 30- Dòng sự kiện khác:
+ Nếu các thông tin kết nối không có ( như thông tin về tên máy, địa chỉ IP SERVER, port ) thì sẽ nhập thông báo yêu cầu nhập thông tin lại
+ Nếu tên máy trùng với một tên máy đã kết nối trước vào Server( do hồi đáp không chấp nhận của Server) thì cũng sẽ nhập thông báo yêu cầu nhập thông tin lại
+ Nếu kết nối không thành công thì sẽ báo lỗi
- Điều kiện tiên quyết:
+ Server phải khởi động trước khi máy khách muốn kết nối vào màn hình chờ
- Hậu điều kiện:
+ Máy khách đang ở trạng thái down chuyển sang trạng thái chờ
- Điểm mở rộng:
+ Không có
2.2.2.2.1.2 Login Member Use Case:
Tên Use Case : Login Member
Mô tả: Máy khách thực hiện login vào Server dưới hình thức Member
Trang 31+ Chương trình gởi thông điệp đến Server
+ Nếu nhận được hồi đáp chấp nhận thì màn hình chờ tắt, chương trình chính Client sẽ bật lên để tính giờ và khi đó khách hàng có thể sử dụng được máy này
- Dòng sự kiện khác:
+ Nếu nhận được hồi đáp từ chối thì màn hình screen vẫn không bị tắt
- Điều kiện tiên quyết:
+ Server phải khởi động trước
+ Máy khách đang ở trạng thái chờ
- Hậu điều kiện:
+ Máy khách đang ở trạng thái chờ chuyển sang trạng thái sử dụng
- Điểm mở rộng:
+ Không có
2.2.2.2.2 Client
2.2.2.2.2.1 Client Connect Use Case:
Tên Use Case : Client Connect
Mô tả: Máy khách thực hiện kết nối với Server để vào trạng thái sử dụng Dòng sự kiện :
- Dòng sự kiện chính :
+ Use case bắt đầu khi người dùng login thành công vào Server
+ Chương trình kết nối với Server
+ Server nhận được thông điệp kết nối sẽ bắt đầu gởi danh sách các món ăn, banner cho Client
+ Máy khách sẽ nhận thông điệp từ Server sẽ lưu trữ các thông tin đó
Trang 32- Điều kiện tiên quyết:
+ Server phải khởi động trước khi máy khách muốn kết nối vào màn hình chờ
+ Máy khách đang ở trạng thái chờ
- Hậu điều kiện:
+ Không có
- Điểm mở rộng:
+ Không có
2.2.2.2.2.2 Order Use Case:
Tên Use Case : Order
Mô tả : Khách hàng có thể thực hiện đặt món ăn từ danh sách với Server Dòng sự kiện :
- Dòng sự kiện chính : + Use case bắt đầu khi khách hàng yêu cầu phục vụ
+ Danh sách các thức ăn, thức uống sẽ xuất hiện
+ Khách hàng chọn các thông tin cần thiết như món ăn, số lượng…
+ Khi khách hàng yêu cầu phục vụ các món mình đã chọn thì máy khách sẽ gởi thông điệp cho Server
+ Server nhận thông điệp sẽ lần lượt phục vụ các món ăn khách hàng đã yêu cầu
- Dòng sự kiện khác:
+ Không có
- Điều kiện tiên quyết:
Trang 33+ Server phải khởi động trước khi máy khách muốn kết nối vào màn hình chờ
+ Phía máy khách đang ở trong trạng thái sử dụng
- Hậu điều kiện:
+ Không có
- Điểm mở rộng:
+ Không có
2.2.3 Thiết kế lớp trên Server:
2.2.3.1 Giao diện Server:
Trang 35STT Tên lớp Kế thừa từ lớp Chức năng
1 CBaseTabCtrl CTabCtrl
dùng tự vẽ giao diện tab ctrl
2 CEnTabCtrl CBaseTabCtrl
dùng tô màu đỉnh Tab theo màu nền
3 CTabCtrlSSL CEnTabCtrl
dùng Add Dialog (xem
1 dialog như một trang của tab)
4 CTabPageSSL CDialog
dùng để thể hiện dialog như một trang của Tab
10 CMessageTab CParentTabPage
giao diện dùng để người quản lý gởi tin nhắn đến một máy
Trang 36hay nhiều máy
11 CScrCapTab CParentTabPage
giao diện dùng để chụp màn hình
12 CApplistTab CParentTabPage
giao diện dùng để quản lý các ứng dụng phía máy khách
13 CServiceTab CParentTabPage
giao diện dùng để quản lý phục vụ các dịch vụ như món ăn, thức uống cho khách hàng
14 CChgSrvStartupDlg CDialog
nhập dữ liệu về trạng thái hoạt động của dịch vụ
15 CChgSrvStatusDlg CDialog
nhập dữ liệu về trạng thái khởi động của dịch vụ
16 CSrvListTab CParentTabPage
giao diện dùng để quản lý các service phía máy khách
17 CAdminTab CParentTabPage
dùng để chứa các giao diện quản trị
18 CWorkStationTab CParentTabPage
dùng để quản lý việc tính cước, giá cả các dịch vụ kèm theo
19 CAfterCrashDlg CDialog
dùng quản lý chương trình sau khi có một client bị đứt kế nối
20 CBannerDlg CDialog giao diện dùng nhập
Trang 37banner, rồi xuất các quy định ở máy khách
21 CInfoServerDlg CDialog
giao diện dùng nhập các thông tin về Server lúc bắt đầu
22 CInputCategoryDlg CDialog
giao diện dùng quản lý loại thức ăn, nước uống
23 CInputDishDlg CDialog
giao diện dùng quản lý các món ăn, thức uống
28 CDailyReportDlg CDialog
giao diện dùng thống
kê các đăng nhập sử dụng của khách hàng
29 CMonthReport CDialog
giao diện dùng thống
kê số tiền máy khách kiếm được trong một tháng
Trang 38Hình 2-8 Thiết kế lớp xử lý Server
Trang 39STT Tên lớp Kế thừa từ lớp Chức năng
Lớp xử lý việc quản
lý các món ăn, thức uống
12 CSolveMonthReport CCafeDB
Lớp xử lý việc báo cáo theo tháng
13 CSolveDebitList CCafeDB Lớp xử lý việc nợ
Trang 40của các thành viên
14 CSolveDebitDetail CCafeDB
Lớp xử lý việc nợ của các thành viên một cách chi tiết
CSockAddr CBlockingSocket CBlockingSocketException
CScreenDlg
Hình 2-9 Thiết kế lớp Screen
STT Tên lớp
Kế thừa từ lớp Chức năng
1 CSockAddr sockaddr_in
Chỉ địa chỉ IP, thông tin Port dịch vụ