1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề tài nhóm hệ thống quản lý rạp chiếu phim

91 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Hệ thống quản lý rạp chiếu phim
Tác giả Nguyễn Thiệu Hiếu, Ngô Trần Đức Thái, Hoàng Đức Thắng, Nguyễn Văn Tú, Vũ Anh Tuấn
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành Công nghệ thông tin
Thể loại Bài tập lớn
Định dạng
Số trang 91
Dung lượng 7,13 MB

Nội dung

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Khoa: Công nghệ thông tin

1Nguyễn Thiệu HiếuB20DCCN256Bán vé tại quầy2Ngô Trần Đức TháiB20DCCN636Lên lịch chiếu phim

Trang 2

A PHẦN VIỆC CHUNG CỦA NHÓM I.Mô tả hệ thống

1 Mục đích

Hệ thống trang web phục vụ công tác quản lí đặt mua vé trực tuyến, đổi điểm thưởng lấy quà tặng/vé, khách hàng hoàn trả vé, lên lịch chiếu phim, mua vé tại quầy

2 Phạm vi

● Thành viên hệ thống:

- Đăng nhập:

+ Cho phép người dùng truy cập vào hệ thống với tài khoản của mình.

- Đăng xuất:

+ Cho phép người dùng đăng xuất khỏi hệ thống - Đổi mật khẩu cá nhân:

+ Cho phép người dùng thay đổi mật khẩu của mình để bảo vệ thông tin cá nhân.

● Khách hàng (Người xem):

- Đặt vé: Cho phép người dùng chọn phim, suất chiếu, và đặt vé.

- Hủy vé:

+ Cho phép người dùng hủy đặt vé trước một khoảng thời gian cố định trước suất chiếu - Xem thông tin phim:

+ Hiển thị thông tin về các bộ phim, lịch chiếu, và giá vé.

● Nhân viên rạp chiếu phim:

- Quản lý thông tin phim:

+ Thêm, xóa, sửa thông tin về các bộ phim - Quản lý lịch chiếu:

+ Tạo và cập nhật lịch chiếu phim cho mỗi rạp - Quản lý vé:

+ Theo dõi và kiểm soát số lượng vé còn lại cho mỗi suất chiếu.

- Báo cáo doanh thu:

+ Tạo báo cáo doanh thu cho từng bộ phim hoặc

Trang 3

suất chiếu.

● Quản lý rạp chiếu phim:

- Quản lý nhân viên:

+ Thêm, xóa, sửa thông tin của nhân viên.

- Thống kê doanh thu:

+ Xem các báo cáo thống kê về doanh thu, số lượng vé bán được, và các chỉ số khác.

- Quản lý khuyến mãi:

+ Thêm, xóa, sửa thông tin về các chương trình khuyến mãi.

- Quản lý rạp chiếu:

+ Thêm, xóa, sửa thông tin về các rạp chiếu, số lượng ghế, và các trang thiết bị khác.

- Xem bảng điểm của rạp:

+ Xem bảng điểm về hiệu suất hoạt động của rạp chiếu.

3 Thông tin về các đối tượng

● Nhóm các thông tin liên quan đến con người: - Khách hàng:

+ Tài khoản: tên đăng nhập, mật khẩu

+ Thông tin cá nhân: họ tên, địa chỉ, ngày sinh, email, số điện thoại

- Nhân viên:

+ Tài khoản: tên đăng nhập, mật khẩu

+ Thông tin cá nhân: họ tên, địa chỉ, ngày sinh, email, số điện thoại

+ Vị trí công việc: quyền hạn (bán vé, quầy bar, quản lý rạp)

- Quản lý rạp chiếu phim:

Trang 4

+ Tài khoản: tên đăng nhập, mật khẩu

+ Thông tin cá nhân: họ tên, địa chỉ, ngày sinh, email, số điện thoại

+ Vị trí công việc: quản lý rạp, có quyền kiểm soát doanh số, quản lý nhân viên

- Nhân viên bán vé:

+ Tài khoản: tên đăng nhập, mật khẩu

+ Thông tin cá nhân: họ tên, địa chỉ, ngày sinh, email, số điện thoại

+ Vị trí công việc: bán vé, quyền xem thông tin suất chiếu

- Nhân viên quầy:

+ Tài khoản: tên đăng nhập, mật khẩu

+ Thông tin cá nhân: họ tên, địa chỉ, ngày sinh, email, số điện thoại

+ Vị trí công việc: phục vụ quầy bar, quyền xem thông tin doanh số quầy.

Trang 5

+ Thông tin: tên, mô tả, thời gian áp dụng

● Nhóm thông tin liên quan đến thống kê: - Doanh số bán vé:

- Thống kê theo suất chiếu, theo phim - Thống kê đánh giá của khách hàng: - Đánh giá phim, dịch vụ

- Thống kê doanh thu từ quầy bar: - Thống kê theo suất chiếu

- Thống kê lượt đặt vé online:

- Thống kê theo suất chiếu, theo ngày

- Thống kê doanh thu từ chương trình khuyến mãi: - Thống kê theo suất chiếu, theo phim

- Thống kê số lượng khách hàng theo thời gian: - Thống kê theo ngày, tháng, năm

- Thống kê doanh thu từ các nguồn khác nhau (vé, quầy bar, khuyến mãi):

- Thống kê tổng hợp theo thời gian.

4 Quan hệ giữa các đối tượng

- Rạp Chiếu Phim có nhiều Phòng Chiếu:

+ Một Rạp Chiếu Phim có thể có nhiều phòng chiếu + Mỗi Phòng Chiếu thuộc một Rạp Chiếu Phim cụ thể - Mỗi Phòng Chiếu có nhiều Suất Chiếu:

+ Mỗi Phòng Chiếu có thể có nhiều suất chiếu trong một ngày.

+ Mỗi Suất Chiếu thuộc một Phòng Chiếu cụ thể - Mỗi Suất Chiếu có nhiều Ghế Ngồi:

+ Mỗi Suất Chiếu có thể có nhiều ghế ngồi + Mỗi Ghế Ngồi thuộc một Suất Chiếu cụ thể - Mỗi Suất Chiếu có nhiều Vé:

+ Mỗi Suất Chiếu có thể có nhiều vé + Mỗi Vé thuộc một Suất Chiếu cụ thể - Mỗi Vé có một hoặc nhiều Mặt Hàng:

+ Mỗi Vé có thể liên kết với một hoặc nhiều mặt hàng (ví dụ: thức ăn, nước uống).

Trang 6

+ Mỗi Mặt Hàng thuộc một hoặc nhiều Vé - Mỗi Suất Chiếu có nhiều Đánh Giá và Bình Luận:

+ Mỗi Suất Chiếu có thể có nhiều đánh giá và bình luận từ khách hàng.

+ Mỗi Đánh Giá và Bình Luận thuộc một Suất Chiếu cụ thể.

II.Biểu đồ UC tổng quát

Chúng ta có thể đề xuất các actor cho hệ thống quản lý rạp chiếu phim như sau: thành viên, khách hàng, nhân viên rạp chiếu phim, quản lý rạp chiếu phim, và kỹ thuật viên Tất cả đều có những chức năng cơ bản như đăng nhập và đổi mật khẩu, nhưng mỗi đối tượng sẽ có những chức năng riêng phù hợp với vai trò của họ.

Các chức năng cụ thể được phân chia như sau:

● Xem lại lịch sử mua vé Nhân viên rạp chiếu phim:

● Quản lý thông tin suất chiếu ● Kiểm tra và báo cáo vé đã bán ● Thực hiện báo cáo về doanh thu Quản lý rạp chiếu phim:

● Quản lý thông tin phim, đạo diễn, diễn viên ● Xem và cập nhật lịch chiếu.

● Quản lý giá vé và chính sách khuyến mãi.

● Thống kê doanh thu theo khoảng thời gian và theo từng phim.

Kỹ thuật viên:

● Quản lý và bảo dưỡng hệ thống âm thanh, hình ảnh ● Sửa chữa thiết bị kỹ thuật khi cần.

Trang 7

Trong số các chức năng này, việc xem lịch chiếu của khách hàng là tương tự chức năng xem lịch dạy của nhân viên rạp chiếu phim Nên hai use case này được cho kế thừa từ use case xem lịch chiếu Như vậy, biểu đồ use case tổng quan của hệ thống được trình bày với mô tả các use case như sau:

Đặt vé:

● Cho phép khách hàng truy cập hệ thống để đặt vé xem phim theo lịch chiếu mong muốn.

Xem lịch chiếu:

● Hiển thị thông tin chi tiết về lịch chiếu của các bộ phim trong rạp, giúp khách hàng chọn suất chiếu phù hợp.

Trang 8

Mua vé online:

● Cung cấp khả năng mua vé trực tuyến, giúp tiện lợi cho khách hàng.

Quản lý thông tin suất chiếu:

● Cho nhân viên rạp chiếu phim quản lý thông tin về các suất chiếu, bao gồm thêm, sửa, và xóa suất chiếu.

Kiểm tra vé đã bán:

● Nhân viên rạp chiếu phim có thể kiểm tra thông tin về số vé đã được bán cho mỗi suất chiếu.

Thống kê doanh thu:

● Quản lý rạp chiếu phim có khả năng xem thống kê doanh thu theo khoảng thời gian và theo phim.

Quản lý thông tin phim:

● Quản lý rạp chiếu phim có thể thêm, sửa, và xóa thông tin về các bộ phim.

Xem và cập nhật lịch chiếu:

● Quản lý rạp chiếu phim có khả năng xem và điều chỉnh lịch chiếu cho các suất chiếu.

Quản lý giá vé và chính sách khuyến mãi:

● Quản lý rạp chiếu phim có thể quản lý giá vé và áp dụng chính sách khuyến mãi.

Quản lý thông tin nhân viên:

● Quản lý rạp chiếu phim có khả năng quản lý thông tin về nhân viên, bao gồm thêm, sửa, và xóa thông tin.

Quản lý thiết bị kỹ thuật:

● Kỹ thuật viên có thể quản lý và bảo dưỡng hệ thống âm thanh, hình ảnh, và thực hiện sửa chữa khi cần.

Xuất bảng điểm:

● Cho khảo thí xuất bảng điểm cho khách hàng theo yêu cầu.

Xem thống kê:

Trang 9

● Nhân viên quản lý có khả năng xem các loại báo cáo thống kê về hoạt động của rạp chiếu phim.

III.Biểu đồ lớp thực thể ở pha phân tích

Bước 1: Mô tả hệ thống trong một đoạn văn

Hệ thống quản lý rạp chiếu phim là một ứng dụng trực tuyến được thiết kế để hỗ trợ quản lý các hoạt động liên quan đến chiếu phim trong một rạp.

Trong đó, khách hàng có khả năng đặt vé xem phim theo lịch chiếu và chọn suất chiếu mong muốn; xem thông tin chi tiết về lịch chiếu, bao gồm thời gian chiếu, phòng chiếu, và phim đang chiếu; thực hiện mua vé trực tuyến để tiết kiệm thời gian và công sức; kiểm tra số vé đã được bán và cập nhật thông tin về doanh thu Nhân viên rạp chiếu phim có thể quản lý thông tin chi tiết về các suất chiếu, bao gồm thêm, sửa, và xóa suất chiếu; kiểm tra thông tin về số vé đã được bán và thực hiện báo cáo về doanh thu; quản lý thông tin về các bộ phim, bao gồm thêm, sửa, và xóa thông tin Quản lý rạp chiếu phim có khả năng thêm, sửa, và xóa thông tin về các bộ phim, đạo diễn, diễn viên; xem và cập nhật lịch chiếu cho các suất chiếu; quản lý giá vé và áp dụng chính sách khuyến mãi để thu hút khách hàng; xem thống kê doanh thu theo khoảng thời gian và theo từng phim.

Kỹ thuật viên có thể quản lý và bảo dưỡng hệ thống âm thanh, hình ảnh; sửa chữa thiết bị kỹ thuật khi cần.

Bước 2: Trích các danh từ xuất hiện trong đoạn văn.

Các danh từ liên quan đến người: khách hàng, nhân viên rạp chiếu phim, quản lý rạp chiếu phim, kỹ thuật viên.

Các danh từ liên quan đến vật: rạp chiếu phim, suất chiếu, vé, doanh thu.

Các danh từ liên quan đến thông tin: lịch chiếu, bộ phim, đạo diễn, diễn viên, giá vé, chính sách khuyến mãi.

Bước 3: Đánh giá và lựa chọn các danh từ làm lớp thực thể hoặc thuộc tính.

Trang 10

Các danh từ trừu tượng: hệ thống, ứng dụng trực tuyến, thông tin Các danh từ liên quan đến người:

● Thành viên hệ thống -> ThanhVien: tên, tên đăng nhập, mật khẩu, ngày sinh, địa chỉ, email, điện thoại.

● Khách hàng -> KhachHang: kế thừa ThanhVien, mã khách

● Kỹ thuật viên -> KyThuatVien: kế thừa NhanVienRap Các danh từ liên quan đến vật:

● Rạp chiếu phim -> RapChieuPhim: tên, địa chỉ, mô tả ● Suất chiếu -> SuatChieu: mã suất chiếu, thời gian chiếu ● Vé -> Ve: mã vé, giá vé.

● Doanh thu -> DoanhThu: mã doanh thu, ngày thu, số vé bán được.

Các danh từ liên quan đến thông tin:

● Lịch chiếu -> LichChieu: liên quan đến thời gian chiếu, suất chiếu, phim.

● Phim -> Phim: tên, đạo diễn, diễn viên, mô tả ● Giá vé -> GiaVe: giá vé, chính sách khuyến mãi Bước 4: Xác định quan hệ số lượng giữa các thực thể

● Rạp chiếu phim có nhiều suất chiếu -> RapChieuPhim - SuatChieu là 1-n, với mỗi suất chiếu được liên kết với một rạp chiếu phim cụ thể.

● Suất chiếu có nhiều vé được đặt -> SuatChieu - VeDat là 1-n, với mỗi vé được đặt liên kết với một suất chiếu cụ thể ● Khách hàng có thể đặt nhiều vé cho nhiều suất chiếu ->

KhachHang - VeDat là n-n -> đề xuất lớp DatVe kết nối giữa KhachHang và SuatChieu (DatVe # VeDat), mỗi DatVe biểu diễn một giao dịch đặt vé cụ thể.

● Rạp chiếu phim có nhiều phim -> RapChieuPhim - Phim là 1-n, với mỗi bộ phim được liên kết với một rạp chiếu phim cụ thể.

● Một phim có thể chiếu ở nhiều suất chiếu -> Phim -

Trang 11

SuatChieu là 1-n, với mỗi suất chiếu liên kết với một phim cụ thể.

● Giá vé có thể áp dụng cho nhiều suất chiếu -> GiaVe - SuatChieu là n-n -> đề xuất lớp GiaVeSuatChieu xác định duy nhất một giá vé áp dụng cho một suất chiếu cụ thể ● Nhân viên rạp chiếu phim có thể quản lý nhiều suất chiếu ->

NhanVienRap - SuatChieu là 1-n, với mỗi suất chiếu được quản lý bởi một nhân viên rạp chiếu phim.

● Quản lý rạp chiếu phim có thể quản lý nhiều nhân viên -> QuanLyRap - NhanVienRap là 1-n, với mỗi nhân viên rạp chiếu phim được quản lý bởi một quản lý rạp chiếu phim ● Kỹ thuật viên có thể quản lý và bảo dưỡng nhiều thiết bị kỹ

thuật -> KyThuatVien - ThietBiKyThuat là 1-n, với mỗi thiết bị kỹ thuật được quản lý bởi một kỹ thuật viên.

● Mỗi lịch chiếu có thể liên kết với một suất chiếu cụ thể và có nhiều buổi chiếu -> LichChieu - SuatChieu là 1-n, với mỗi suất chiếu được liên kết với một lịch chiếu cụ thể.

● Ngoài ra, thông tin Họ và tên có thể tách thành một lớp thực thể riêng - HoTen, với các thuộc tính là Họ và Tên Thông tin địa chỉ cũng có thể tách thành một lớp thực thể riêng - DiaChi, với các thuộc tính là Số nhà, Đường, Quận, Thành phố Các thông tin này có thể được sử dụng lại trong nhiều đối tượng khác nhau mà không làm ảnh hưởng đến tính nhất quán và dễ bảo trì của hệ thống.

Bước 5: Xác định quan hệ đối tượng giữa các thực thể

● Rạp chiếu phim là thành phần của Hệ thống Quản lý Rạp Chiếu Phim

● Suất chiếu là thành phần của Rạp chiếu phim ● Vé đặt là thành phần của Suất chiếu

● Khách hàng là thành phần của Hệ thống Quản lý Rạp Chiếu

Trang 12

● Bộ phim là thành phần của Hệ thống Quản lý Rạp Chiếu Phim

● Giá vé là thành phần của Hệ thống Quản lý Rạp Chiếu Phim ● Lịch chiếu là thành phần của Hệ thống Quản lý Rạp Chiếu

● Lịch chiếu liên kết với Suất chiếu và Bộ phim để tạo ra lịch chiếu cụ thể

● DatVe là thành phần của Hệ thống Quản lý Rạp Chiếu Phim ● DatVe liên kết với Khách hàng và Suất chiếu để tạo ra giao

dịch đặt vé cụ thể

● Thông tin địa chỉ là thành phần của Khách hàng ● Thông tin họ và tên là thành phần của Khách hàng

● Lớp thống kê liên kết với các thực thể tương ứng để tạo ra các báo cáo thống kê.

Kết quả thu được biểu đồ lớp thực thể pha phân tích toàn hệ thống như trong hình

Trang 13

IV.Biểu đồ lớp thực thể ở pha thiết kế

Bước 1:

Các lớp được bổ sung thuộc tính id: trừ các lớp thống kê (TK), nhân viên, Rapchieuphim, Phim, Suatchieu, Nhanvien, NVQuanli,

Quan hệ Nhanvien – Rapchieuphim -> NhanvienRapchieuphim chuyển thành NhanvienRapchieuphim chứa Nhanvien và

Trang 14

Quan hệ Phim – Suatchieu -> PhimSuatchieu chuyển thành PhimSuatchieu chứa Phim và Suatchieu.

Quan hệ Suatchieu – Rapchieuphim -> Chieuphim chuyển thành Chieuphim chứa Suatchieu và Rapchieuphim.

Quan hệ Rapchieuphim – NVQuanli -> Quanli chuyển thành Quanli chứa Rapchieuphim và NVQuanli.

Quan hệ Rapchieuphim – NVBanve -> Banve chuyển thành Banve chứa Rapchieuphim và NVBanve.

Bước 4:

Bổ sung các thuộc tính thành phần của quan hệ hợp thành/gắn chặt, ta thu được biểu đồ lớp thực thể pha thiết kế.

Trang 15

● tblRapChieu có các thuộc tính: id, tên, địa chỉ ● tblPhim: id, tên, thể loại, đạo diễn

● tblSuatChieu: id, giờ chiếu, ngày chiếu

● tblGheNgoi: id, số ghế, trạng thái (đã đặt/chưa đặt) ● tblKhachHang: id, tên, email, số điện thoại

● tblVe: id, giá vé, loại vé

● tblDatVe: id, ngày đặt, trạng thái đặt vé ● tblNhanVien: id, tên, chức vụ

● tblPhanHoi: id, nội dung, ngày phản hồi ● tblDoanhThu: id, ngày, doanh thu

● tblDienVien: id, tên, ngày sinh, quốc tịch ● tblHangPhim: id, tên, địa chỉ

● tblLoaiGhe: id, tên, mô tả ● tblPhongChieu: id, tên, số ghế

Trang 16

● tblQuocGia: id, tên

● tblDaoDien: id, tên, ngày sinh, quốc tịch ● tblTheLoai: id, tên, mô tả

● tblLoaiVe: id, tên, giá vé

● tblNguoiDung: id, tên đăng nhập, mật khẩu ● tblHeThongRap: id, tên, số phòng chiếu

Bước 3:

Chuyển quan hệ số lượng giữa các lớp thực thể thành quan hệ số lượng giữa các bảng:

● tblRapChieu – n tblPhim: Mỗi rạp chiếu có thể chiếu nhiều phim, nhưng mỗi phim chỉ thuộc một rạp chiếu.

● tblRapChieu – n tblSuatChieu: Mỗi rạp chiếu có thể có nhiều suất chiếu, nhưng mỗi suất chiếu thuộc một rạp chiếu.

● tblSuatChieu – n tblGheNgoi: Mỗi suất chiếu có nhiều ghế ngồi, nhưng mỗi ghế ngồi chỉ thuộc một suất chiếu.

● tblPhim – n tblSuatChieu: Mỗi phim có thể được chiếu ở nhiều suất, nhưng mỗi suất chiếu chỉ chiếu một phim.

● tblKhachHang – n tblVe: Mỗi khách hàng có thể mua nhiều vé, nhưng mỗi vé chỉ thuộc một khách hàng.

● tblKhachHang – n tblDatVe: Mỗi khách hàng có thể đặt nhiều vé, nhưng mỗi đặt vé chỉ thuộc một khách hàng.

● tblNhanVien – n tblDoanhThu: Mỗi nhân viên có thể ghi nhận nhiều doanh thu, nhưng mỗi doanh thu chỉ do một nhân viên ghi nhận.

● tblRapChieu – n tblPhanHoi: Mỗi rạp chiếu có thể nhận nhiều phản hồi, nhưng mỗi phản hồi chỉ thuộc một rạp chiếu.

● tblSuatChieu – n tblDoanhThu: Mỗi suất chiếu có thể sinh ra nhiều doanh thu, nhưng mỗi doanh thu chỉ thuộc một suất chiếu.

● tblPhim – n tblPhanHoi: Mỗi phim có thể nhận nhiều phản hồi, nhưng mỗi phản hồi chỉ liên quan đến một phim.

● tblDienVien – n tblPhim: Mỗi diễn viên có thể tham gia nhiều phim, nhưng mỗi phim chỉ có một đạo diễn.

● tblHangPhim – n tblPhim: Mỗi hãng phim có thể sản xuất nhiều phim, nhưng mỗi phim chỉ thuộc một hãng phim.

● tblLoaiGhe – n tblGheNgoi: Mỗi loại ghế có thể có nhiều ghế ngồi,

Trang 17

nhưng mỗi ghế ngồi chỉ thuộc một loại ghế.

● tblPhongChieu – n tblGheNgoi: Mỗi phòng chiếu có thể có nhiều ghế ngồi, nhưng mỗi ghế ngồi chỉ thuộc một phòng chiếu.

● tblQuocGia – n tblDaoDien: Mỗi quốc gia có thể có nhiều đạo diễn, nhưng mỗi đạo diễn chỉ thuộc một quốc gia.

● tblTheLoai – n tblPhim: Mỗi thể loại có thể thuộc nhiều phim, nhưng mỗi phim chỉ thuộc một thể loại.

● tblLoaiVe – n tblVe: Mỗi loại vé có thể được sử dụng cho nhiều vé, nhưng mỗi vé chỉ thuộc một loại vé.

● tblNguoiDung – n tblDatVe: Mỗi người dùng có thể đặt nhiều vé, nhưng mỗi đặt vé chỉ thuộc một người dùng.

● tblHeThongRap – n tblRapChieu: Mỗi hệ thống rạp có thể có nhiều rạp chiếu, nhưng mỗi rạp chiếu chỉ thuộc một hệ thống rạp.

● tblNguoiDung – n tblPhanHoi: Mỗi người dùng có thể gửi nhiều phản hồi, nhưng mỗi phản hồi chỉ thuộc một người dùng.

Bước 4:

Bổ sung các thuộc tính khóa Khóa chính được thiết lập với thuộc tính id của các bảng tương ứng, trừ các bảng tblVe và tblDatVe.

Khóa ngoại được thiết lập cho các bảng:

● tblRapChieu – n tblPhim -> Bảng tblPhim có khóa ngoại

Trang 18

● tblLoaiVe – n tblVe -> Bảng tblVe có khóa ngoại tblLoaiVeId ● tblNguoiDung – n tblDatVe -> Bảng tblDatVe có khóa ngoại

● Loại bỏ các bảng thống kê, như tblThongKeVe,

tblThongKeDatVe, tblThongKeDoanhThu, giữ lại các thông tin dẫn xuất trong bảng tblDoanhThu.

● Tổng hợp số lượng vé đã đặt và đã mua trong bảng tblVe và tblDatVe.

● Đưa ra thông tin về số lượng phản hồi và đánh giá từ khách

Trang 19

hàng trong bảng tblPhanHoi.

● Tính toán tổng số lượng ghế ngồi và số lượng ghế đã đặt trong bảng tblGheNgoi.

● Tổng hợp thông tin về số lượng suất chiếu và các thông tin liên quan từ bảng tblSuatChieu.

● Xác định số lượng phòng chiếu và các thông tin chi tiết từ bảng tblPhongChieu.

● Thống kê thông tin về số lượng phim, đạo diễn, diễn viên, thể loại từ các bảng liên quan như tblPhim, tblDienVien,

● Thống kê thông tin về các hệ thống rạp chiếu và các thông tin chi tiết từ bảng tblHeThongRap.

Trang 20

B.PHẦN VIỆC TỪNG CÁ NHÂN

I Sinh viên Vũ Anh Tuấn – UC : Khách hàng đặt

mua vé trực tuyến.

1.Đặc tả UC.

a.Hoạt động nghiệp vụ của UC:

- Khách hàng vào hệ thống => Giao diện trang chủ hiện ra: có 1 chức năng đăng nhập

- Khách hàng click đăng nhập => Giao diện đăng nhập hiện ra có ô nhập username, password và nút login

- Khách hàng nhập username, password và click login

- Có 2 trường hợp xảy ra:

+ Nếu đăng nhập sai => Hệ thống thông báo sai username hoặc password => Khách hàng click ok của thông báo => Hệ thống trở lại giao diện đăng nhập chứa thông tin cũ

+ Nếu đăng nhập đúng => Giao diện chính của khách hàng hiện ra và có chức năng đặt mua vé trực tuyến

- Khách hàng click vào chức năng đặt mua vé

Trang 21

trực tuyến => Giao diện tìm kiếm suất chiếu phim hiện ra:

+ Danh sách lựa chọn ngày chiếu(7 ngày tính từ ngày hiện tại)

+ Danh sách lựa chọn khung giờ chiếu trong ngày

+ Danh sách lựa chọn các phim có lịch chiếu đang chọn

+ Danh sách phòng chiếu có thông tin đang chọn

- Khách hàng chọn 1 ngày => Giao diện hiện ra danh sách các khung giờ chiếu trong ngày đang chọn

- Khách hàng chọn 1 khung giờ chiếu => Giao diện hiện ra danh sách các phim có lịch chiếu đang chọn

- Khách hàng chọn 1 phim => Giao diện hiện ra danh sách phòng chiếu phù hợp với thông tin đang chọn

- Khách hàng click một phòng => Giao diện chọn chỗ ngồi hiện ra bao gồm:

+ Bảng tất cả các chỗ ngồi của phòng vừa chọn: mỗi ô tương ứng với một chỗ (khách hàng chỉ được chọn những chỗ chưa được đặt).

+ Nút hủy + Nút mua vé

- Nếu khách hàng click hủy => Hệ thống trở lại giao diện chọn phòng với các thông tin cũ - Nếu khách hàng chọn những chỗ còn trống và

click mua vé => Giao diện xác nhận mua vé hiện ra với thông tin:

+ Danh sách các vé vừa chọn, mỗi vé một dòng với thông tin: tên phim, ngày chiếu, giờ chiếu, tên phòng chiếu, loại phòng chiếu, mã chỗ ngồi, giá vé, nút

Trang 22

- Nếu khách hàng click trở lại => Hệ thống trở lại giao diện chọn chỗ ngồi với các thông tin cũ

- Nếu khách hàng click áp dụng quà tặng của 1 vé => Giao diện lựa chọn quà tặng hiện ra có thông tin:

+ Danh sách các quà tặng đang có của khách hàng có điều kiện phù hợp với thông tin khách hàng đã chọn

+ Mỗi quà tặng ứng với một dòng với thông tin: tên, chi tiết, điều kiện áp dụng, hạn sử dụng

+ Khách hàng chọn 1 quà tặng => Hệ thống trở lại giao diện xác nhận mua vé với cập nhật quà tặng vừa lựa chọn và tổng tiền thanh toán

+ Nếu khách hàng click thanh toán => Giao diện thanh toán hiện ra với thông tin thanh toán (mã QR hoặc số tài khoản ngân hàng), tổng số tiền

- Khách hàng thực hiện thanh toán:

+ Nếu một trong các chỗ ngồi vừa chọn đã được thanh toán bởi khách hàng khác => Hệ thống thông báo chỗ ngồi đã được đặt bởi khách hàng khác => Khách hàng click ok của thông báo => Hệ thống trở lại giao diện chọn chỗ ngồi với các cập nhập về các chỗ ngồi

Trang 23

đã được đặt

+ Nếu các chỗ ngồi vừa chọn chưa được đặt bởi khách hàng khác => Hệ thống thông báo thanh toán thành công và lưu thông tin đặt vé vào cơ sở dữ liệu => Khách hàng click ok của thông báo => Hệ thống trở về giao diện chính của khách hàng

b Biểu đồ UC chi tiết:

Use chi tiết của chức năng đặt mua vé trực tuyến.

Chức năng đặt mua vé trực tuyến có các giao diện tương tác với khách hàng: + Đăng nhập => Đề xuất usecase đăng nhập.

+ Tìm kiếm phim => Đề xuất usecase tìm kiếm phim + Chọn phòng => Đề xuất usecase chọn phòng

+ Chọn chỗ ngồi => Đề xuất usecase chọn chỗ ngồi + Thanh toán => Đề xuất usecase thanh toán

+ Tích điểm thưởng => Đề xuất usecase tích điểm thưởng + Áp dụng quà tặng => Đề xuất usecase áp dụng quà tặng - Các usecase đăng nhập, tìm kiếm phim, chọn phòng, chọn chỗ ngồi,

thanh toán là bắt buộc mới hoàn thành được việc đặt mua vé trực tuyến do đó usecase đặt mua vé trực tuyến include các usecase này

- Các usecase áp dụng quà tặng, tích điểm thưởng là tùy chọn từ giao diện

Trang 24

thanh toán, nên usecase áp dụng quà tặng, tích điểm thưởng có quan hệ mở rộng từ usecase thanh toán

- Như vậy biểu đồ usecase chi tiết cho chức năng đặt mua vé trực tuyến được trình bày trong hình trên Các usecase được mô tả như sau:

+ Tìm kiếm phim: cho phép khách hàng tìm kiếm phim chiếu theo ngày chiếu, giờ chiếu, tên phim

+ Chọn phòng chiếu: cho phép khách hàng chọn phòng chiếu để tiến hành mua vé

+ Chọn chỗ ngồi: cho phép khách hàng chọn chỗ ngồi để tiến hành mua vé

+ Thanh toán: cho phép khách hàng áp dụng phần quà, tích điểm thưởng và thanh toán các vé đã chọn

1 Khách hàng Trần Minh C truy cập vào hệ thống

2 Giao diện chính của hệ thống hiện ra có ít nhất 1 chức năng

Trang 25

8 Giao diện lựa chọn suất chiếu hiện ra có:

- Danh sách lựa chọn lịch chiếu tính từ ngày hiện tại.(đang chọn lịch đầu tiên ngày 24/09/2023 20:00)

- Danh sách phim có lịch chiếu 24/09/2023, khung giờ = 20:00 (đang chọn phim đầu tiên)

phim phim TênĐạo diễn Thời lượng

MV01 Oppenheimer Chirstopher Nolan 180 phút MV02 Joker Todd Phillips 121 phút MV03 The Usual Suspect Bryan Singer 106 phút

- Danh sách phòng chiếu có lịch chiếu và phim đang chọn

Mã phòng Tên phòng Loại phòng Số ghế

- Nút/ link next

9 Khách hàng chọn dòng đầu tiên với thông tin mã phòng = R01, tên phòng = 101, loại phòng = 2D, click next

10.Giao diện chọn vị trí ngồi hiện ra với thông tin:

- Thông tin xuất chiếu vừa chọn bao gồm: mã phim = MV01, tên phim = Oppenheimer, đạo diễn = Christopher Nolan, thời lượng = 180 phút, ngày chiếu = 24/09/2023, giờ chiếu = 20:00 - Thông tin phòng vừa chọn: mã phòng = R01, tên phòng =

Trang 26

11.Khách hàng tích chọn 1 chỗ ngồi có vị trí D5 và click mua

- Nút/link thanh toán

13.Khách hàng click thanh toán

14.Giao diện hiển thị chi tiết về số tài khoản ngân hàng hiện

15.Khách hàng thực hiện thanh toán

16.Hệ thống thông báo thanh toán thành công 17.Khách hàng click ok của thông báo

18.Hệ thống trở lại giao diện chính của khách hàng

2 Phân tích UC

a Phân tích lớp module

Bước 1: Giao diện trang chủ => Đề xuất Class Homeview, cần có subLogin

inpUsername, inpPassword, subLogin

+ input: username, password (Member) + output: boolean

+ Gán cho Class Member

ClientHomeView cần có: subBookingTicket, outUsername, outFullname, outEmail

Trang 27

SearchShowTimeView, cần có outInpTimeSlot, outInpFilm, outSubRoom

=> đề xuất phương thức getShowTimeFromCurrentDate() + input: date

+ output: TimeSlot[] + Gán cho Class TimeSlot

có lịch chiếu vừa chọn => đề xuất phương thức getFilmHaveTimeSlot()

+ input: TimeSlot + output: Film[] + Gán cho Class Film

tin Room => đề xuất phương thức getShowTimeWithRoom() + input: timeSlot, Film (ShowTime)

+ output: ShowTime[] + Gán cho Class ShowTime

ngồi => đề xuất Class SelectSeatView, cần có outInpAvailableSeat, outBookedSeat, subBooking, subBack

đề xuất phương thức getAvailableSeat() + input: ShowTime

+ output: Seat[] + Gán cho Class Seat

xuất phương thức getBookedSeat() + input: ShowTime

+ output: Seat[] + Gán cho Class Seat

xuất Class PaymentView: outListTicket, subApplyGift, outGift, outTotalBonusPoint, subCancel, subPayment

outSubGiftOfClient

Trang 28

dụng phù hợp với vé, hóa đơn của khách hàng => Đề xuất phương thức getGiftOfClient()

+ input: clientID, Bill (Bill) + output: RedemptionGift[] + Gán cho Class RedemptionGift

DetailPayment: outBank, outBankNumber, outTotal

xuất phương thức saveBill()

4 Class HomeView gọi Class LoginView 5 Class LoginView hiển thị cho khách hàng

6 Khách hàng nhập username, password, click login 7 Class LoginView gọi Class Member

8 Class Member gọi phương thức login()

Trang 29

9 Class Member trả kết quả cho Class LoginView 10 Class LoginView gọi Class ClientHomeView 11 Class ClientHomeView hiển thị cho người dùng 12 Khách hàng click bookingTicket

13 Class ClientHomeView gọi Class SearchShowTimeView 14 Class SearchShowTimeView gọi Class TimeSlot

15 Class TimeSlot gọi phương thức getTimeSlotFromCurrentDate() 16 Class TimeSlot trả kết quả cho Class SearchShowTimeView 17 Class SearchShowTimeView gọi Class Film

18 Class Film gọi phương thức getFilmHaveTimeSlot() 19 Class Film trả kết quả cho Class SearchShowTimeView 20 Class SearchShowTimeView gọi Class ShowTime

21 Class ShowTime gọi phương thức getShowTimeWithRoom() 22 Class ShowTime trả kết quả cho Class SearchShowTimeView 23 Class SearchShowTimeView hiển thị cho khách hàng

24 Khách hàng chọn 1 ShowTime, click next

25 Class SearchShowTimeView gọi Class SelectSeatView 26 Class SelectSeatView gọi Class Seat

27 Class Seat gọi phương thức getAvailableSeat() 28 Class Seat trả kết quả cho Class SelectSeatView 29 Class SelectSeatView gọi Class Seat

30 Class Seat gọi phương thức getBookedSeat() 31 Class Seat trả kết quả cho Class SelectSeatView 32 Class SelectSeatView hiển thị cho khách hàng 33 Khách hàng chọn 1 seat và click booking 34 Class SelectSeatView gọi ClassPaymentView 35 Class PaymentView hiển thị cho khách hàng 36 Khách hàng click payment

37 Class PaymentView gọi Class DetailPaymentView 38 Class DetailPaymentView hiển thị cho khách hàng 39 Khách hàng thanh toán

40 Class DetailPaymentView gọi Class Bill 41 Class Bill gọi phương thức saveBill()

42 Class Bill trả kết quả cho Class DetailPaymentView 43 Class DetailPaymentView hiển thị thông báo thành công.

Trang 30

3 Thiết kế UC

a Thiết kế giao diện và đề xuất các lớp (giao diện, lớp truy xuất dữ liệu) Bước 1: Thiết kế giao diện

Trang 31

Bước 2: Đề xuất các lớp giao diện tương ứng

- Tầng giao diện có các trang jsp: HomeView.jsp, LoginView.jsp, doLogin.jsp, ClientHomeView.jsp, preSearch.jsp,

SearchShowTimeView.jsp, SelectSeatView.jsp, DetailPaymentView.jsp, ApplyGiftView.jsp, doSaveBill.jsp

Trang 32

Bước 3: Đề xuất các lớp truy xuất dữ liệu DAO

- Tầng thao tác dữ liệu bao gồm: DAO, MemberDAO, FilmDAO, TimeSlotDAO, ShowTimeDAO, SeatDAO, RedemptionGiftDAO,

+ Gán cho Class MemberDAO

- Tại trang preSearch.jsp cần lấy danh sách các TimeSlot tính từ ngày giờ hiện tại

=> đề xuất hàm getTimeSlotFromCurrentDate() + input: date, time(Date)

+ output: List<TimeSlot>

+ Gán cho Class TimeSlotDAO

- Tại trang preSearch.jsp cần lấy danh sách các Film của một TimeSlot => đề xuất hàm getFilmHaveTimeSlot()

+ input: TimeSlot + output: List<Film>

+ Gán cho Class FilmDAO

- Tại trang preSearch.jsp cần lấy danh sách các ShowTime bao gồm cả thông tin Room của một TimeSlot và một Film

=> đề xuất hàm getShowTimeWithRoom() + input: TimeSlot, Film

+ output: List<ShowTime>

+ Gán cho Class ShowTimeDAO

- Tại trang SelectSeatView.jsp cần lấy danh sách các Seat còn của một ShowTime

=> đề xuất hàm getAvailableSeat() + input: ShowTime

+ output: List<Seat>

+ Gán cho Class SeatDAO

- Tại trang SelectSeatView.jsp cần lấy danh sách các Seat đã được đặt của một ShowTime

=> đề xuất hàm getBookedSeat() + input: ShowTime

+ output: List<Seat>

Trang 33

+ Gán cho Class SeatDAO

- Tại trang ApplyGiftView.jsp cần lấy danh sách các RedemptionGift của khách hàng

=> đề xuất hàm getGiftOfClient() + input: Bill

+ output: List<RedemptionGift>

+ Gán cho Class RedemptionGiftDAO

- Tại trang doSaveBill.jsp cần kiểm tra và lưu thông tin Bill => đề xuất hàm saveBill()

+ input: Bill + output: boolean

+ Gán cho Class BillDAO

Bước 4: Bổ sung các lớp thực thể liên quan

Trang 34

b Thiết kế động: kịch bản UC cuối và biểu đồ tuần tự cho từng modul.

Trang 35

5 Trang LoginView.jsp hiển thị cho khách hàng

getTimeSlotFromCurrentDate()

setFilm(), setTimeSlot()

Trang 36

40 Class ShowTime trả lại kết quả cho Class ShowTimeDAO

Trang 37

77 Khách hàng click ok

II Sinh viên Nguyễn Văn Tú – UC : Khách hàng đổi điểm thưởng lấy quà tặng/vé.

1.Đặc tả UC.

a.Hoạt động nghiệp vụ của UC:

Khách hàng vào hệ thống => Giao diện trang chủ hiện ra: có 1 chức năng đăng nhập

- Khách hàng click đăng nhập => Giao diện đăng nhập hiện ra có ô nhập username, password và nút login

- Khách hàng nhập username, password và click login

Trang 38

+ Nếu đăng nhập sai => Hệ thống thông báo sai username hoặc password => Khách hàng click ok của thông báo => Hệ thống trở lại giao diện đăng nhập chứa thông tin cũ

+ Nếu đăng nhập đúng => Giao diện chính của khách hàng hiện ra: có chức năng đổi điểm thưởng

- Khách hàng click đổi điểm thưởng => Giao diện lựa chọn phần quà hiện ra với thông tin:

+ Điểm thưởng hiện có của khách hàng

+ Bảng danh sách các quà tặng Mỗi quà tặng tương ứng với một dòng có các thông tin mã, tên, điều kiện áp dụng, số điểm cần để đổi

- Khách hàng click vào đổi quà trên một dòng:

+ Nếu tổng điểm thưởng của khách hàng đang có nhỏ hơn tổng số điểm thưởng cần để đổi quà => Hệ thống thông báo không đủ điều kiện đổi quà => Khách hàng click ok của thông báo => Hệ thống trở lại giao diện đổi quà

+ Nếu tổng điểm thưởng của khách hàng đang có lớn hơn hoặc bằng tổng số điểm thưởng cần để đổi quà => Hệ thống thông báo thành công và lưu thông tin phần quà vào cơ sở dữ liệu => Khách hàng click ok của thông báo thành công => Hệ thống trở về giao diện đổi quà

b Biểu đồ UC chi tiết:

Use chi tiết của chức năng Khách hàng đổi điểm thưởng lấy quà tặng/vé.

Trang 39

Ch ức năng đổi điểm thưởng có các giao diện tương tác với khách hàng:

+ Đăng nhập => Đề xuất usecase đăng nhập

+ Chọn phần quà => Đề xuất usecase chọn phần quà

- Chọn phần quà là bắt buộc mới hoàn thành được việc đổi điểm thưởng nên usecase đổi điểm thưởng include usecase này

- Như vậy biểu đồ usecase chi tiết cho chức năng đổi điểm thưởng được trình bày trong hình trên.

Trang 40

Main event 1 Khách hàng Trần Minh C truy cập vào hệ thống 2 Giao diện đăng nhập hiện lên có

5 Khách hàng click đổi quà

6 Giao diện đổi quà hiện lên có thông tin:

- Thông tin khách hàng: username = nvt123, họ và tên = C, email =

nvt@xx.com, số điện thoại = 0393333333, địa chỉ = Hà Nội, tổng

GF04 1 bỏng ngô 80000 Hóa đơn5 [Text Box] - Danh sách quà đang chọn(hiện trống)

Mã quà Tên quàLoại quà Điều kiện

Ngày đăng: 14/04/2024, 06:26

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w