Ứng với mỗi quyền truy cập của từng tàikhoản, khi đăng nhập thành công, người dùng sẽ được truy cập vào các chức năng tương ứngtrong hệ thống.- Hoạt động quản lý trên máy chủ bao gồm hoạ
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG
TIN KHOA HỆ THỐNG THÔNG TIN
BÁO CÁO ĐỒ ÁNLẬP TRÌNH JAVA XÂY DỰNG HỆ THỐNG QUẢN LÝ CAFÉ
Trang 2Lời cảm ơn
Trước hết, chúng em xin gửi tới các thầy, cô khoa Hệ thống Thông tin, thuộcTrường Đại học Công nghệ Thông tin – Đại học Quốc gia HCM lời cảm ơn vì đã tậntâm truyền đạt kiến thức, hướng dẫn, đặt nền tảng cơ bản cho chúng em có thể thựchiện đồ án này
Đặc biệt, chúng em xin gửi lời cảm ơn chân thành đến Thầy Mai Xuân Hùng
(Giảng viên lý thuyết và hướng dẫn thực hành bộ môn Lập trình Java)
Để đồ án này được đạt kết quả tốt như hiện nay, chúng em đã nhận được rấtnhiều sự hỗ trợ và hướng dẫn từ thầy và cô
Mặc dù đã nỗ lực cố gắng hết sức nhưng do kiến thức còn nhiều mặt hạn chế,nên trong quá trình thực hiện không tránh khỏi những thiếu sót Kính mong nhận được
sự góp ý và giúp đỡ từ quý thầy cô để chúng em có thể hoàn thiện đồ án một cách trọnvẹn nhất
Chúng em xin chân thành cảm ơn!
Trang 3NHẬN XÉT CỦA GIẢNG VIÊN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 5CHƯƠNG 1: TỔNG QUAN
1.1 Đặt vấn đề
Quản lý quán Café ngày nay không thể tách rời công nghệ thông tin Công nghệ đãthúc đẩy sự phát triển và cải thiện quy trình quản lý trong ngành Café Ngày nay, sự phát triểnvượt trội của công nghệ thông tin giúp quán Café dễ dàng quản lý và tối ưu hóa hoạt độngkinh doanh
Phần mềm quản lý quán Café cho phép ghi nhận đơn đặt hàng, quản lý kho hàng, vàtheo dõi doanh thu Điều này giúp giảm thiểu sai sót và tăng hiệu suất công việc của nhânviên Công nghệ cũng đóng vai trò quan trọng trong việc tiếp cận và tương tác với kháchhàng Quán Café sử dụng mạng xã hội và ứng dụng di động để quảng bá, chia sẻ thông tin vànhận phản hồi từ khách hàng Điều này giúp tạo dựng mối quan hệ khách hàng mạnh mẽ, cungcấp thông tin về menu, khuyến mãi và sự kiện đến khách hàng
Ngoài ra, công nghệ cũng cung cấp giải pháp thanh toán tiện lợi cho khách hàng Hệthống thanh toán điện tử và ví điện tử giúp khách hàng trả tiền một cách nhanh chóng và antoàn, đồng thời giảm thiểu sự cồng kềnh của việc xử lý tiền mặt
Tóm lại, công nghệ thông tin đã có mối liên hệ chặt chẽ với quản lý quán Café Nógiúp quán Café nâng cao hiệu suất hoạt động, tương tác với khách hàng và cung cấp giải phápthanh toán tiện lợi Sự kết hợp giữa quản lý quán Café và công nghệ thông tin mang lại lợi íchđáng kể cho cả quán Café và khách hàng
1.2 Mục tiêu
Từ thực tế đó, giải pháp để việc quản lý quán Café đạt hiệu quả cao nhất là quản
lý thông qua phần mềm Xây dựng hệ thống phần mềm giúp tự động hóa tối đa các giaiđoạn và nghiệp vụ quản lý quán Café:
Đối với chức năng:
Giúp cho nhân viên và quản lý có thể dễ dàng quản lý được thức uống, thực đơn,quy trình đặt món, gọi món, hóa đơn của quán Café
Quản lý có thể thống kê được tình trạng bàn đã đặt, còn trống
Giúp cho nhân viên có thể kiểm soát được hóa đơn, số lượng thức uống trong quánCafé một cách nhanh chóng và dễ dàng
Đối với giao diện:
Sử dụng đa ngôn ngữ
Giao diện quản lý gần gũi, đơn giản, dễ sử dụng và thao tác, phù hợp với yêu cầu
Tùy chỉnh sửa đổi một cách dễ dàng, tính bảo mật cao Đối với chất lượng
Dễ dàng trong lúc nâng cấp hoặc tăng các module tiện ích
Hoạt động tốt với tất cả trình duyệt web phổ biến hiện nay (Linux, Window,MacOs,…)
Trang 61.3 Công cụ sử dụng
- MySQL: Hệ quản trị Cơ sở dữ liệu quan hệ
- Apache NetBeans : IDE dùng để lập trình phần mềm
Trang 7CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1 Đặc tả bài toán
- Về phía hoạt động thì nhân viên cần phải đăng ký/đăng nhập thành công vào hệ thốngbằng tài khoản và mật khẩu đã được tạo từ trước Ứng với mỗi quyền truy cập của từng tàikhoản, khi đăng nhập thành công, người dùng sẽ được truy cập vào các chức năng tương ứngtrong hệ thống
- Hoạt động quản lý trên máy chủ (bao gồm hoạt động của nhân viên) gồm có:
+ Thông tin thực đơn bao gồm: danh sách đồ uống, thông tin đồ uống, đơn giá
+ Phần mềm cho phép nhân viên thêm, xóa, cập nhật, tra cứu thực đơn
- Gọi món
+ Khi khách hàng yêu cầu tính tiền, nhân viên sẽ lập một hóa đơn gồm: Mã bàn, đơn giá,
số lượng, tổng tiền và khách hàng sẽ tiến hàng thanh toán
+ Phần mềm cho phép nhân viên thêm, xóa, cập nhật, tra cứu hóa đơn và tình trạng
Trang 82.2 Thiết kế cơ sở dữ liệu
2.2.1 Bảng cơ sở dữ liệu
2.2.2 Thiết kế chi tiết cơ sở dữ liệu
Ban (BanID, TenBan, GhiChu)
Thuc_don (DoUongID, TenDoUong, DonGia)
Goi_mon (GoiID, BanID, DoUongID, SoLuong)
Administrator (Username , Password )
Trang 92.2.3 Mô tả bảng cơ sở dữ liệu
2.2.3.1 Bảng Ban
Thuộc tính Kiểu dữ liệu NULL Mô tả
2.2.3.2 Bảng Thuc_don
Thuộc tính Kiểu dữ liệu NULL Mô tả
2.2.3.3 Bảng Goi_Mon
Thuộc tính Kiểu dữ liệu NULL Mô tả
2.2.3.4 Bảng Administrator
Trang 10Thuộc tính Kiểu dữ liệu NULL Mô tả
dùng
Trang 112.3 Thiết kế một số sơ đồ hệ thống
2.3.1 Sơ đồ Usecase
Sơ đồ Use-case tổng quát
Trang 12Use-case quản lí bàn
Use-case quản lí thực đơn
Use-case gọi món cho khách hàng
Trang 13Use-case tính tiền
Trang 142.3.2 Đặc tả một số Use Case và sơ đồ hoạt động (Activity Diagram)
● Use case Đăng nhập
- Tên Usecase: Đăng nhập
- Mô tả: Mô tả các bước đăng nhập của người dùng vào hệ thống
- Luồng sự kiện:
- Tiền điều kiện: Không có
- Hậu điều kiện: Khi mà đăng nhập thành công, actor được đăng nhập vào hệthống
- Mối quan hệ: Nhân viên
Trang 15● Use case Đăng ký
- Tên Usecase: Đăng ký
- Mô tả: Mô tả các bước đăng ký của người dùng vào hệ thống
- Luồng sự kiện:
- Tiền điều kiện: Không có
- Hậu điều kiện: Khi mà đăng ký thành công, người dùng có thể dùng tài khoản vừa đăng ký để đăng nhập vào hệ thống
- Mối quan hệ: Không có
Trang 16● Use case Quản lý bàn
- Tên Use-case: Quản lý bàn
- Mô tả: Use case cho phép người dùng thêm mới, cập nhật, xem thông tin bàn
- Luồng sự kiện:
1 Hiển thị danh sách bàn:
Trang 172 Thêm bàn mới:
Trang 183 Cập nhật thông tin bàn:
Trang 194 Ghép bàn:
Trang 205 Xem trạng thái bàn:
- Tiền điều kiện: Người dùng đã đăng nhập thành công vào hệ thống
- Hậu điều kiện:
● Nếu thêm mới thành công thì thêm bàn vào hệ thống
● Nếu ghép bàn thành công thì xóa dữ liệu cũ và cập nhật dữ liệu mới trong hệ thống
● Nếu cập nhật thành công thì cập nhật thông tin bàn trong hệ thống
- Mối quan hệ: Nhân viên
Trang 21● Use case Quản lý thực đơn
- Tên Use-case: Quản lý thực đơn
- Mô tả: Use case này cho phép người dùng thêm mới, cập nhật, xem thông tin các món trong thực đơn
- Luồng sự kiện:
1 Hiển thị thực đơn:
Trang 222 Thêm thực đơn:
Trang 233 Cập nhật thực đơn:
- Tiền điều kiện: Người dùng đã đăng nhập thành công vào hệ thống
- Hậu điều kiện:
Nếu thêm mới thành công thì thêm món vào hệ thống
Nếu cập nhật thành công thì cập nhật thông tín món vào hệ thống
- Mối quan hệ: Nhân viên
Trang 24● Use case Gọi món cho khách hàng
- Tên Use-case: Gọi món cho khách hàng
- Mô tả: Use case này cho phép nhân viên gọi món cho khách hàng dựa trên thực đơn và bàn có sẵn và thêm số lượng nếu khách có yêu cầu
- Luồng sự kiện:
1 Gọi món cho khách hàng:
Trang 252.
Trang 26Thêm số lượng món đã gọi:.
- Tiền điều kiện: Người dùng đã đăng nhập thành công vào hệ thống
- Hậu điều kiện:
• Nếu thêm mới thành công thì thêm món vào hệ thống
• Nếu cập nhật thành công thì cập nhật thông tín món vào hệ thống
- Mối quan hệ: Nhân viên
Trang 27● Use case Tính tiền
- Tên Use-case: Tính tiền
- Mô tả: Use case này cho phép nhân viên tính tiền theo bàn và trảbàn
- Luồng sự kiện:
1 Tính tiền:
Trang 282 Trả bàn:
- Tiền điều kiện: Người dùng đăng nhập thành công vào hệ thống
- Hậu điều kiện:
● Nếu chọn tính tiền thì hiện tổng tiền ra màn hình
● Nếu trả bàn thành công thì cập nhật thông tin trong hệ thống
- Mối quan hệ: Nhân viên
Trang 292.4 Thiết kế giao diện người dùng
-Nhập và xem thông tin bàn
-Chứa các tùy chọn liên quan
2 Thực đơn
-Hiển thị danh sách đồ uống
-Nhập và xem thông tin đồ uống
-Chứa các tùy chọn liên quan
3 Trạng thái bàn -Hiển thị trạng thái bàn
4 Ghép bàn -Ghép bàn theo yêu cầu khách hàng
5 Gọi món -Nhập và xem thông tin gọi món
-Chứa các tùy chọn liên quan
6 Thay đổi món -Thêm hoặc xóa món ăn theo bàn
7
Tính tiền
-Hiển thị danh sách phiếu trả sách
-Nhập và xem thông tin phiếu trả sách
-Chứa các tùy chọn liên quan
8 Trợ giúp -Hỗ trợ khách hàng
Trang 304 Đăng nhập Button Bấm vào để xác nhận đăng nhập.
5 Đăng ký Button Bấm vào để đăng ký người dùng mới
Trang 312.4.2.2 Đăng ký
1 Tên đăng
kýMật khẩu
Label Hiển thị thông tin cần nhập
4 Xác nhận Button Bấm vào để xác nhận đăng ký
5 Quay lại Button Bấm vào để quay lại màn hình đăng
nhập
Trang 32Label Hiển thị thông tin của bàn đã có
Nhập thông tin bàn cần thay đổi
2 Khung trống Textfield Nhập vào thông tin tương thích với label
trước đó
3 Bảng bàn Jtable Bảng hiển thị thông tin của tất cả bàn
4 Thêm Button Bấm vào để thêm bàn mới
5 Sửa Button Bấm vào để sửa thông tin bàn
6 Mới Button Bấm vào để làm mới Textfield
7 Đầu Button Bấm vào để chọn dữ liệu đầu JTable
8 Trước Button Bấm vào để chọn dữ liệu trước dữ liệu đang
chọn của JTable
9 Tiếp Button Bấm vào để chọn dữ liệu sau dữ liệu đang
chọn của JTable
10 Cuối Button Bấm vào để chọn dữ liệu cuối JTable
11 Thoát Button Bấm vào để quay lại Menu chính
Trang 33Label Hiển thị thông tin của đồ uống đã có
Nhập thông tin đồ uống cần thay đổi
2 Khung trống Textfield Nhập vào thông tin tương thích với
label trước đó
3 Bảng đồ uống Jtable Bảng hiển thị thông tin của tất cả đồ
uống
4 Thêm Button Bấm vào để thêm đồ uống mới
5 Sửa Button Bấm vào để sửa thông tin đồ uống
6 Mới Button Bấm vào để làm mới Textfield
7 Đầu Button Bấm vào để chọn dữ liệu đầu JTable
8 Trước Button Bấm vào để chọn dữ liệu trước dữ liệu
đang chọn của JTable
9 Tiếp Button Bấm vào để chọn dữ liệu sau dữ liệu
đang chọn của JTable
10 Cuối Button Bấm vào để chọn dữ liệu cuối JTable
11 Thoát Button Bấm vào để quay lại Menu chính
Trang 342.4.2.1 Trạng thái bàn
1 Trạng thái bàn Label Bấm vào để thêm thông tin phiếu
Trang 353 Lưu Button Bấm vào để ghép bàn
4 Thoát Button Bấm vào để thoát khỏi trang
Ghép bàn và quay lại Menu Chính
Trang 364 Thoát Button Bấm vào để thoát khỏi trang Gọi món
và quay lại Menu Chính
Trang 373 Lưu Button Bấm vào để thay đổi món
4 Thoát Button Bấm vào để thoát khỏi trang Thay
đổi món và quay lại Menu Chính
Trang 38Label Hiển thị thông tin cần chọn
Hiển thị tổng tiền cần trả theo mã bàn
5 Thoát Button Bấm vào để thoát khỏi trang Tính
tiền và quay lại Menu Chính
Trang 392.4.2.6 Trợ giúp
1 Trợ giúp Label Hiển thị tiêu đề
2 Text TextArea Hiển thị thông tin hỗ trợ khách hàng
3 Thoát Button Bấm vào để thoát khỏi trang Trợ giúp
và quay lại Menu Chính
Trang 40CHƯƠNG 3: TỔNG KẾT
3.1 Kết quả đạt được
- Trong quá trình thực hiện đồ án, nhóm đã áp dụng những kiến thức về Java đã học
và cũng qua quá trình nghiên cứu và thực hiện cài đặt chương trình theo khảo sát vàyêu cầu người dùng, nhóm đã xây dựng được phần mềm “Quản lý quán Café” với cácchức năng:
- Nắm được cách xây dựng giao diện bằng Java
- Nắm được kỹ năng phân chia công việc, sắp xếp thời gian, làm việc nhóm, kĩ nănggiao tiếp
3.2 Hạn chế
- Do thời gian ngắn cộng với yêu cầu công việc ban đầu khá lớn nên trong quá trìnhthực hiện đồ án nhóm còn gặp phải một số hạn chế:
Vì xây dựng giao diện trên nền tảng Java nền giao diện chưa được chăm chú
Các thiết kế đang còn nhiều sai sót
Phân chia công việc chưa đều
Không thực hiện đầy đủ được các chức năng ban đầu
Chưa bổ sung khả năng phân quyền cho ứng dụng
Chương trình chạy chậm do mã nguồn không tối ưu
Giữa phần lý thuyết thiết kế và lập trình có sự khác nhau
3.3 Hướng phát triển
- Để khắc phục các hạn chế còn tồn tại cũng như phát triển phần mềm nhóm có một số
đề xuất như sau:
Dùng những công nghệ hiện đại hơn để xây dựng phần mềm quản lý
Thêm các chức năng mới như: Đặt món mang về, hủy món, giảm giá ưu đãi
Bổ sung thêm một số ràng buộc toàn vẹn để hệ thống hoạt động chính xác hơn
Trang 41 Nâng cấp hệ thống giao diện thân thiện hơn với người dùng, hạn chế việc nhập quá nhiều tránh xảy ra sai sót.
Trang 423.4 Bảng phân công công việc
- Thiết kế cơ sở dữ liệu và vẽ Activity
- Thiết kế giao diện
- Tổng hợp báo cáo Chương trình demo:
- Xây dựng giao diện và viết code các chức năng: Đăng nhập, đăng ký
25%
2 Lê Thị Minh Nguyệt21521212
Báo cáo:
- Viết đặc tả bài toán
- Tìm hiểu và viết phân tích yêu cầu chức năng
- Tìm hiểu và viết các quy trình mượn sác
- Thiết kế cơ sở dữ liệu và vẽ Activity
- Thiết kế sơ đồ liên kết giao diện
- Thiết kế giao diệnChương trình demo:
- Xây dựng các giao diện và viết codecác chức năng: quản lý thực đơn, gọimón
25%
Trang 43- Thiết kế cơ sở dữ liệu
- Thiết kế giao diệnChương trình demo:
- Xây dựng giao diện và viết code các chức năng: quản lý bàn, ghép bàn
- Thiết kế cơ sở dữ liệu và vẽ Activity
- Thiết kế cơ sở dữ liệu
- Thiết kế giao diện Chương trình demo:
- Xây dựng giao diện và viết code các chức năng: Tính tiền, thay đổi món
25%
Tài Liệu tham khảo:
1 Các slide môn “Lập trình Java” của khoa Hệ Thống Thông Tin – Trường ĐH Công nghệ Thông tin ĐHQG TP HCM
2 Đồ án tham khảo: Quản lý quán Café bằng C#, Quản lý dự án Nhà hàng Khách sạn