Đề tài quản lý phòng vé xem phim qua web Đề tài quản lý phòng vé xem phim qua web Đề tài quản lý phòng vé xem phim qua web Đề tài quản lý phòng vé xem phim qua web Đề tài quản lý phòng vé xem phim qua web Đề tài quản lý phòng vé xem phim qua web Đề tài quản lý phòng vé xem phim qua web Đề tài quản lý phòng vé xem phim qua web
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
TÊN ĐỀ TÀI: CHƯƠNG TRÌNH ỨNG DỤNG HỆ THỐNG QUẢN LÝ ĐẶT VÉ XEM PHIM TRỰC
TUYẾN
Giáo viên hướng dẫn:
Sinh viên:
Hồ Chí Minh ngày 15 tháng 01 năm 2022
KHOA CÔNG NGHỆ THÔNG TIN TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH
Trang 2TÊN ĐỀ TÀI: CHƯƠNG TRÌNH ỨNG DỤNG HỆ THỐNG QUẢN LÝ ĐẶT VÉ XEM PHIM TRỰC
Trang 3Tôi xin gửi lời cảm ơn tới các bạn trong lớp đã ủng hộ khuyến khích tôi trong suốt quá trình học tập
Và cuối cùng, tôi xin bày tỏ niềm biết ơn vô hạn tới bố mẹ tôi, anh tôi, và những người bạn thân luôn bên cạnh, động viên tôi trong suốt quá trình thực hiện đồ án môn học.
Trang 4NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 5MỤC LỤC
Trang 6DANH MỤC CÁC HÌNH VẼ
DANH MỤC CÁC BẢNG BIỂU
Trang 73. Mô tả chi tiết đề tài
4. Thiết kế use case
5. Thống nhất chọn mô hình, phần mềm để viết ứng dụng, ngôn ngữ để làm đề tài này
6. Phân tích các công đoạn để làm đề tài: Requirement, design, code, test,deploy
7. Phân tích đưa ra các chức năng của ứng dụng:
- Đăng nhập, đăng xuất, đăng ký tài khoản
- Đặt vé xem phim
- Xem thông tin phim
- Thanh toán
- Tìm kiếm phimTuần 02
20/01/2022-26/01/2022
1. Ôn tập về Spring Boot
2. Tìm hiểu về JWT trong Authentication
Tuần 03
27/01/2022-02/02/2022
1. Thiết kế cơ sở dữ liệu
2. Vẽ sơ đồ activity diagram, sequence, class diagram, deploymentdiagram
3. Cấu hình project (FE + BE)
Tuần 04
03/02/2022-09/02/2022
1 Phân tích xem cách thức vận hành project có phù hợp không
2 Đưa ra nội dung phần backend đăng nhập, đăng xuất
3 Phân tích xem cách thức vận hành của chức năng đăng nhập, đăng xuất mà nhóm trưởng đưa ra có phù hợp không
Tuần 05
10/02/2022-16/02/2022
1. Thực hiện chạy code thử đăng nhập, đăng xuất trên Postman
2. Phân tích về phân quyền cho ứng dụng
3. Thiết kế giao diện người dùng web bằng Html Tuần 06
17/02/2022-23/02/2022
1. Thực hiện code chức năng đăng kí tài khoản
2. Thực hiện code chức năng đăng nhập tài khoản
3. Thực hiện code chức năng đăng xuất tài khoảnTuần 07
24/02/2022-02/03/2022
1. Thực hiện code chức năng quên mật khẩu
2. Thực hiện code chức năng đổi mật khẩu
3. Thực hiện code chức năng quản lý rạp
1. Thực hiện code chức năng quản lý phim:
2. Thêm thông tin phim
3. Sửa thông tin phim
4. Xóa thông tin phim
Trang 8Thời gian Nội dung
5. Xem thông tin phimTuần 09
10/03/2022-16/03/2022
1. Thực hiện code chức năng tìm kiếm phim (ngày, rạp)
2. Thực hiện code chức năng quản lý thông tin khách hàng
3. Thêm thông tin
4. Sửa thông tin
5. Xóa thông tinTuần 10
17/03/2022-23/03/2022
1. Thực hiện code chức năng lịch sắp chiếu
2. Thực hiện code chức năng đặt vé
-Xem thông tin-Sửa thông tinTuần 13
07/04/2022-13/04/2022
- Test các chức năng
- Fix lỗi
- Demo lại chương trình
- Viết báo cáoTuần 14
Trang 93. Mô tả chi tiết đề tài
4. Thiết kế use case
5. Thống nhất chọn mô hình, phần mềm để viết ứng dụng, ngôn ngữ để làm đề tài này
6. Phân tích các công đoạn để làm đề tài:
Requirement, design, code, test, deploy
7. Phân tích đưa ra các chức năng của ứng dụng:
8. Đăng nhập, đăng xuất, đăng ký tài khoản
1. Ôn tập về Spring Boot
2. Tìm hiểu về JWT trong Authentication
-Nguyễn Huy Hảo
-Phạm Thái SơnTuần 03
27/01/2022
-02/02/2022
1. Thiết kế cơ sở dữ liệu
2. Vẽ sơ đồ activity diagram, sequence, class diagram, deployment diagram
3. Cấu hình project (FE + BE)
-Nguyễn Huy Hảo
-Phạm Thái SơnTuần 04
2. Phân tích về phân quyền cho ứng dụng
3. Thiết kế giao diện người dùng web bằng Html
-Nguyễn Huy Hảo
-Phạm Thái Sơn
Trang 10Thời gian Nội dung Sinh viên thực
1. Thực hiện code chức năng đăng kí tài khoản
2. Thực hiện code chức năng đăng nhập tài khoản
3. Thực hiện code chức năng đăng xuất tài khoản
-Nguyễn Huy Hảo
Tuần 07
24/02/2022
-02/03/2022
1. Thực hiện code chức năng quên mật khẩu
2. Thực hiện code chức năng đổi mật khẩu
3. Thực hiện code chức năng quản lý rạp
1. Thực hiện code chức năng quản lý phim:
2. Thêm thông tin phim
3. Sửa thông tin phim
4. Xóa thông tin phim
5. Xem thông tin phim
3. Thêm thông tin
4. Sửa thông tin
5. Xóa thông tin
-Nguyễn Huy Hảo
1. Thực hiện code chức năng lịch sắp chiếu
2. Thực hiện code chức năng đặt vé -Phạm Thái Sơn
-Phạm Thái SơnTuần 12
- Xem thông tin
- Sửa thông tin
-Nguyễn Huy Hảo
-Phạm Thái Sơn
Trang 11Thời gian Nội dung Sinh viên thực
3. Demo lại chương trình
4. Viết báo cáo
-Nguyễn Huy Hảo
Trang 12CHƯƠNG 1: GIỚI THIỆU 1.1 1.1 Tổng quan đề tài
Trong những thập niên gần đây, chúng ta đã được chứng kiến sự phát triển mạnh mẽ như
vũ bão của khoa học công nghệ mà đi đầu là lĩnh vực công nghệ thông tin và truyền thông.Chính điều đó đã làm thay đổi sâu sắc trong đời sống xã hội và nhận thức của con người Việcứng dụng những thành quả của khoa học công nghệ vào trong đời sống sinh hoạt, trong côngtác là việc hết sức cấp thiết Ứng dụng của việc tin học hóa kết hợp với truyền thông hóa đượcxem là một trong những yếu tố mang tính quyết định trong hoạt động của chính phủ, các tổchức, các công ty, cũng như các trường thiêu, nó đóng vai trò hết sức quan trọng, cần thiết vàkhông thể thiếu
Công nghệ thông tin và truyền thông góp phần làm thay đổi suy nghĩ, lối tư duy của mỗicon người, nó giúp con người năng động hơn, kết nối nhanh hơn ở mọi lúc, mọi nơi và luônluôn sẵn sàng tiếp cận công nghệ mới làm tăng hiệu quả, năng suất làm việc và mức độ tin cậycủa công việc
Trước đây để có thể đi xem phim khách hàng cần phải ra tận rạp chiếu phim mới có thểmua được vé Bên cạnh đó việc quản lý vé theo phương thức thủ công làm cho khách hàng mấtnhiều thời gian, phải xếp hàng chờ đợi vào những ngày lễ cũng có khi lại không mua được vétheo yêu cầu
Để phục vụ cho nhu cầu giải trí ngày càng cao của khách hàng, giúp khách hàng có thểmua được vé theo đúng yêu cầu, mục đích một cách dễ dàng mà tiết kiệm thời gian Đồng thờiđưa đến cho khách hàng những thông tin về phim hay thông tin khuyến mãi Nhóm em quyếtđịnh thực hiện đề tài: “Chương trình ứng dụng hệ thống quản lý đặt vé xem phim trực tuyến”.Dưới sự hướng dẫn của cô Nguyễn Thị Hoàng Khánh
1.2 1.2 Mục tiêu đề tài
Website được phát triển nhằm giúp cho:
- Khách hàng: sử dụng thực hiện được các thao tác như: đặt vé, tìm kiếm phim, xem thôngtin phim (giá vé, ghế trống…) Khách hàng chỉ cần sử dụng một chiếc điện thoại hoặcmáy tính có kết nối internet là có thể truy cập ứng dụng và thực hiện các tác vụ trên đó
- Nhân viên: có thể thực hiện các thao tác như: xem, thêm, sửa, xóa, tìm kiếm thông tin củangười dùng, quản lý thông tin tài khoản của người dùng Có thể thực hiện việc thêm, sửa,xóa, xem thông tin phim cũng như giá vé và quản lý rạp
Website được thiết kế với giao diện thân thiện với người dùng Bố cục giao diện cânđối Các chức năng của ứng dụng dụng được sắp xếp ưa nhìn và dể sử dụng Người dùng có
Trang 13Điểm mạnh của website được thể hiện ở tính thẩm mỹ nhằm giúp cho người dùng cómột trải nghiệm tốt nhất khi thực hiện các thao tác trên ứng dụng Giao diện đẹp, đủ các chứcnăng, dễ sử dụng giúp tạo cảm giác thân thiện và thu hút một lượng lớn người dùng sử dụngsản phẩm.
1.3 1.3 Phạm vi đề tài
Thiết kế được website đơn giản, tiện lợi, dễ dùng, đầy đủ chức năng để người dùng cóthể dễ dàng thao tác Là một công cụ tuyệt vời nhất để người dùng sử dụng để đặt vé xemphim trực tuyến, khắc phục được tình hình dịch bệnh Covid 19 diễn biến phức tạp hiện nay,giảm thiểu tình trạng phải xếp hàng đông đúc chờ đợi khi mua vé trực tiếp
1.4 1.4 Nghiệp vụ đề tài
Tất cả mọi người đều có thể truy cập vào website và xem các thông tin được hiển thịmặc định với khách xem trên website Khách xem có thể lựa chọn xem và tìm kiếm danhsách phim và các thông tin liên quan đến phim đang chiếu hoặc sắp chiếu Ngoài ra, cũng cóthể xem thông tin về lịch chiếu phim hoặc có thể lựa chọn xem thông tin lịch chiếu theo ngàychiếu hoặc theo tựa để phim tùy theo nhu cầu mỗi người Khách vãng lai có thể đăng kí mộttài khoản trên website để có thể trở thành thành viên Điền một số để đăng kí một tài khoảntrên website, khách xem cần điền thông tin cá nhân vào form đăng kí như: họ tên, email, mậtkhẩu, điện thoại, số thẻ có ảnh nhận diện (có thể là CMND, bằng lái xe, hộ chiếu, thẻ sinhviên, ), ngày sinh, giới tính Sau khi đã điền đầy đủ và chính xác các thông tin và đồng ývới các điều kiện và điều khoản do website đưa ra, khách hàng nhấn Enter để gửi form đăng
kí Nếu đăng kí thành công thì hệ thống sẽ tự động đưa người dùng trở lại trang đăng nhập.Nếu đăng kí không thành công, hệ thống sẽ hiển thị thông báo lỗi, khách hàng dựa vào thôngbáo đó để sửa lại thông tin cho đúng với định dạng yêu cầu, sau đó gửi lại form
Khi đã có tài khoản thành viên thì người dùng có thể đăng nhập vào website, và có thêmcác thao tác mở rộng hơn so với khách vãng lai như: xem và cập nhật các thông tin cá nhân,đặt vé online và hủy các vé đã đặt, bình luận về phim Để đặt vé theo tựa đề phim, bước 1,người dùng cần chọn tên bộ phim minh muốn xem, sau khi chọn hệ thống sẽ hiển thị nhữngngày có chiều bộ phim đó Bước 2, người dùng cần chọn ngày chiếu mình muốn
Đối với dặt vé theo ngày chiếu thì ngược lại Bước 1, người dùng chọn rạp muốn đếnxem Bước 2, người dùng cần chọn ngày chiếu muốn xem phim tại rạp, sau khi chọn hệ thống
sẽ hiện thị tựa để các bộ phim có chiếu vào ngày đó Bước 3, người dùng cần chọn phim mìnhmuốn xem Sau khi người dùng đã chọn được tên phim và ngày chiếu thì hệ thống sẽ hiển thịcác khung giờ chiếu phim đó trong ngày Bước 4, người dùng cần chọn giờ chiếu, sau khi chọn
Trang 14hệ thống sẽ hiển thị các phòng chiếu bộ phim đó trong ngày và giờ đã chọn Bước 5, ngườidùng cần chọn phòng chiếu, hệ thống sẽ hiển thị sơ dỗ ghế tương ứng với vị trí chỗ ngồi củakhách hàng trong phòng chiếu phim Bước 6, người dùng chọn ghế và nhấn “Đặt vé " dể hoànthành việc đặt vé Mỗi nhân viên đăng tải nội dung, nhân viên phòng vé và người quản trị hệthống điều được cấp một tài khoản đăng nhập vào hệ thống với quyền tương ứng Đối với nhânviên, sau khi dăng nhập vào hệ thống, nhân viên có thể xem và tìm kiếm danh sách và thôngtin các vé đã được đặt online đễ in vé cho người đã dặt vé online, nhân viên có thể thêm cácphim mới và thông tin có liên quan đến phim đó như: tên phim, ảnh đại diện cho phim, thể loạiquốc gia, thời lượng, thời gian khởi chiếu, dạo diễn, các diễn viên chính, tóm tắt nội dung,đoạn phim quảng cáo (trailer), định dạng (2D / 3D / 4D ) Hoặc cũng có thể sửa đổi cácthông tin đó cho chính xác, hay xóa các phim đã hết thời gian công chiếu Nếu trước giờ chiếuphim 20 phút mà không có ai đến nhận về đã đặt thì nhân viên có thể hủy dặt vẻ Khi kháchhàng đến lấy vẽ đã dặt online, nhân viên cần yêu cầu khách hàng xác thực một số thông tinnhư: số CMND hay số diện thoại Nếu thông tin chính xác thì tiến hành in vẻ và thanh toán vớikhách hàng Khi khách hàng đến mua về, nhân viên cần lần lượt hỏi khách hàng các thông tinnhư: ngày xem, tên phim, khung giờ chiếu, phòng chiếu, ghế ngồi và đồng thời chọn các thôngtin này cho khách hàng Trước khi in vé cần xác nhận lại với khách hàng một lần nữa các thôngtin vừa chọn
1.5 1.5 Mô tả các yêu cầu chức năng
Hệ thống gồm có thành phần chính:
- Phần dành cho nhân viên:
+ Quản lý thông tin tài khoản của người dùng (xem, thêm, sửa, xóa, tìm kiếmthông tin của người dùng)
+ Quản lý thông tin rạp (xem, thêm, sửa, xóa, tìm kiếm ghế trong rạp)
+ Quản lý phim (thêm, sửa, xóa, xem thông tin phim cũng như giá vé)
+ Chỉnh sửa thông tin cá nhân
1.6 1.6 Các yêu cầu về phi chức năng
- Hệ thống đảm bảo tính dễ sử dụng cho khách hàng
- Hệ thống có màu sắc đẹp, dễ nhìn, thu hút khách hàng
Trang 15- Độ bảo mật cao
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 1.7 2.1 Mô hình MVC
Hình 2 1: Mô hình MVC
Khái niệm: MVC là viết tắt của Model-View-Controller và là một mẫu thiết kế phần mềm.
Người quản lý dữ liệu của ứng dụng (giới hạn ở những gì được hiển thị cho người dùng vàtùy thuộc vào thay đổi bởi người dùng); Chế độ xem đại diện cho giao diện người dùng đồhọa (GUI) Bộ điều khiển chuẩn bị mô hình, xử lý đầu vào của người dùng và xác định những
gì sẽ hiển thị trong chế độ xem (trang xem nào được hiển thị).[1]
Trang 16Mô hình MVC được chia làm 3 lớp xử lý gồm Model – View –Controller:
- Model: là nơi chứa những nghiệp vụ tương tác với dữ liệu hoặc hệ quản trị
cơ sở dữ liệu (mysql, mssql…); nó sẽ bao gồm các class/function xử lýnhiều nghiệp vụ như kết nối database, truy vấn dữ liệu, thêm – xóa – sửa
dữ liệu…
- View: là nới chứa những giao diện như một nút bấm, khung nhập, menu,hình ảnh… nó đảm nhiệm nhiệm vụ hiển thị dữ liệu và giúp người dùngtương tác với hệ thống
- Controller: là nới tiếp nhận những yêu cầu xử lý được gửi từ người dùng,
nó sẽ gồm những class/ function xử lý nhiều nghiệp vụ logic giúp lấyđúng dữ liệu thông tin cần thiết nhờ các nghiệp vụ lớp Model cung cấp vàhiển thị dữ liệu đó ra cho người dùng nhờ lớp View
- Luồng xử lý trong MVC:
Hình 2 2: Luồng xử lý trong MVC
- Khi một yêu cầu của từ máy khách (Client) gửi đến Server Thì bị Controller trongMVC sẽ xem xét xử lý các request được gửi về
- Model chuẩn bị data và gửi lại cho Controller
- Cuối cùng, khi xử lý xong yêu cầu thì Controller gửi dữ liệu trở lại View và hiển thị chongười dùng trên trình duyệt
Trang 17- Mô hình đơn giản, dễ hiểu, xử lý những nghiệp vụ đơn giản, và dễ dàngtriển khai với các dự án nhỏ.
Nhược điểm:
- Đối với các dự án có tính phức tạp cao thì mô hình MVC trở nên không khả dụng
- Không thể preview các trang như ASP.NET
- Khó triển khai
2.2 MySQL
Hình 2 3:MySQL
Khái niệm: MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (Relational
Database Management System, viết tắt là RDBMS) hoạt động theo mô hình client-server.RDBMS là một phần mềm hay dịch vụ dùng để tạo và quản lý các cơ sở dữ liệu (Database)theo hình thức quản lý các mối liên hệ giữa chúng.[2]
MySqR chúng em sử dụng để lưu giữ mô hình quan hệ
Trang 18- Đa tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được mong chờ từ một hệ quảntrị cơ sở dữ liệu quan hệ cả trực tiếp lẫn gián tiếp.
- Khả năng mở rộng và mạnh mẽ: MySQL có thể xử lý rất nhiều dữ liệu và hơn thế nữa
nó có thể được mở rộng nếu cần thiết
- Nhanh chóng: Việc đưa ra một số tiêu chuẩn cho phép MySQL để làm việc rất hiệu quả
và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi
- Dung lượng hạn chế: Nếu số bản ghi của bạn lớn dần lên thì việc truy xuất dữ liệucủa bạn là khá khó khăn, khi đó chúng ta sẽ phải áp dụng nhiều biện pháp để tăngtốc độ truy xuất dữ liệu như là chia tải database này ra nhiều server, hoặc tạo cacheMySQL
2.3 Elastic Beanstalk
Hình 2 4:Elastic Beanstalk
Khái niệm: AWS Elastic Beanstalk là một dịch vụ dễ sử dụng để triển khai và mở rộng các
ứng dụng web và dịch vụ được phát triển bằng Java, NET, PHP, Node.js, Python, Ruby, Go
và Docker trên những máy chủ quen thuộc như Apache, Nginx, Passenger và IIS [3]
Trang 19Ưu điểm
- Là nhà cung cấp đám mây lớn đầu tiên hỗ trợ các bộ xử lý Intel, AMD và Arm,đám mây duy nhất có phiên bản EC2 Mac theo nhu cầu và đám mây duy nhất cókết nối mạng Ethernet 400 Gbps
- Mang đến hiệu năng giá tốt nhất để đào tạo máy học cũng như mức chi phí thấp nhất cho mỗi phiên bản suy luận trên đám mây Các khối lượng công việc liên quan đến SAP, điện toán hiệu năng cao (HPC), ML và Windows chạy trên AWS nhiều hơn bất kỳ đám mây nào khác
2.4 RDS
Hình 2 5:Sơ đồ RSD
Khái niệm: Amazon Relational Database Service (Amazon RDS) giúp bạn dễ dàng thiết
lập, vận hành và thay đổi quy mô cơ sở dữ liệu quan hệ trên đám mây Dịch vụ này cung cấpdung lượng có thể thay đổi kích cỡ với mức chi phí hiệu quả trong khi tự động hóa các tác vụquản trị mất nhiều thời gian, chẳng hạn như cung cấp phần cứng, thiết lập cơ sở dữ liệu, válỗi và sao lưu Dịch vụ này cho phép bạn tập trung vào các ứng dụng của mình nhằm giúpứng dụng có hiệu suất, tính sẵn sàng, mức độ bảo mật cũng như khả năng tương thích caonhư mong đợi Amazon RDS có sẵn trên một số loại phiên bản cơ sở dữ liệu - được tối ưuhóa về bộ nhớ, hiệu suất hoặc I/O - đồng thời cung cấp cho bạn sáu công cụ cơ sở dữ liệuquen thuộc để lựa chọn, gồm có Amazon Aurora, PostgreSQL, MySQL, MariaDB, OracleDatabase và SQL Server [4]
Trang 20Ưu điểm:
- Amazon RDS giúp bạn dễ dàng chuyển từ project conception sang deployment Sử dụngbảng điều khiển Quản lý AWS, giao diện dòng lệnh AWS RDS hoặc các API calls đơngiản để truy cập vào các tính năng năng của một cơ sở dữ liệu chỉ trong vài phút Bạn sẽKhông cần cung cấp cơ sở hạ tầng, và không cần cài đặt và bảo trì phần mềm cơ sở dữliệu
- Khả năng mở rộng cao: Bạn có thể mở rộng tính toán về thông số và dung lượng lưu trữnguồn tài nguyên các cơ sở dữ liệu của bạn chỉ với một vài cú click chuột hoặc APIcalls, hầu như không có vấn đề downtime Nhiều loại engine của Amazon RDS cho phépbạn khởi chạy một hoặc nhiều Read Replicas để xóa tải lưu lượng truy cập từ cơ sở dữliệu chính của bạn
- Bảo mật: Amazon RDS giúp bạn kiểm soát truy cập mạng vào cơ sở dữ liệu của bạn mộtcách dễ dàng Amazon RDS cũng cho phép bạn chạy các cơ sở dữ liệu instance của bạntrong Amazon Virtual Private Cloud (Amazon VPC), cho phép bạn cô lập các cơ sở dữliệu instance của bạn và để kết nối với cơ sở hạ tầng CNTT hiện tại của bạn thông quamột IPsec VPN mã hóa theo tiêu chuẩn ngành Nhiều loại công cụ RDS của Amazoncung cấp khả năng mã hóa
- Không tốn kém: Bạn phải trả mức giá rất thấp và chỉ trả các khối lượng dữ liệu mà bạntiêu dùng trong mỗi tháng Ngoài ra, bạn được hưởng lợi từ tùy chọn theo giá theo yêucầu (On-Demand pricing) mà không có cam kết từ trước hoặc dài hạn, hoặc thậm chígiảm giá theo giờ thông qua Reserved Instance pricing
- Amazon RDS hỗ trợ các ứng dụng cơ sở dữ liệu đòi hỏi khắt khe nhất Bạn có thể chọngiữa hai tùy chọn lưu trữ SSD: Tối ưu hóa cho các ứng dụng OLTP hiệu năng cao chocác mục đích sử dụng chung có hiệu quả về chi phí Ngoài ra, AWS còn có một dịch vụkhác đó là Amazon Aurora cung cấp hiệu suất ngang bằng các cơ sở dữ liệu thương mại(commercial databases) với chi phí 1/10
2.5 S3
Trang 21Hình 2 6:Hình ảnh S3
Khái niệm: Amazon Simple Storage Service (Amazon S3) là một dịch vụ lưu trữ đối tượngcung cấp khả năng thay đổi quy mô, mức độ sẵn sàng của dữ liệu, độ bảo mật và hiệu suấthàng đầu trong ngành Khách hàng thuộc mọi quy mô và ngành nghề có thể lưu trữ và bảo vệ
dữ liệu thuộc mọi kích thước cho hầu hết tất cả các trường hợp sử dụng, chẳng hạn như hồ dữliệu, ứng dụng hoạt động trên đám mây và ứng dụng di động Với các lớp lưu trữ tiết kiệmchi phí và tính năng quản lý dễ sử dụng, bạn có thể tối ưu hóa chi phí, tổ chức dữ liệu và cấuhình các biện pháp kiểm soát quyền truy cập được tinh chỉnh để đáp ứng yêu cầu cụ thể vềkinh doanh, tổ chức và tuân thủ [5]
Ưu điểm:
- Lưu trữ dữ liệu trong Bucket: bạn có thể lưu trữ vô hạn các loại dữ liệu khác nhau trongmột bucket Mỗi dữ liệu của bạn sẽ như là một Object và muốn up nhiêu cũng được Mỗiobject có thể chứa tới 5TB dữ liệu
- Tải dữ liệu: bạn có thể tải dữ liệu của bạn về bất cứ lúc nào, thậm chí là cho phépngười khác tải dữ liệu của bạn đang nằm trong Amazon S3 Bucket nữa cơ
- Phân quyền: phân quyền cho phép hoặc từ chối quyền hạn upload/download đối với dữliệu nằm trong Amazon S3 Bucket của bạn
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ
3.1 Usecase tổng quát
Trang 223.2 Danh sách các tác nhân và mô tả
Danh sách các tác nhân và mô tả xem ở bảng 3-1
Người dùng Là những người sử dụng website xem phim Họ truy cập vào hệ
thống bằng cách đăng nhập và thực hiện các tác vụ: xem thông tin
cá nhân, xem suất chiếu, xem giá vé…
Nhân viên Là người quản lý thông tin khách hàng và quản lý phim Nhân viên
truy cập vào hệ thống bằng cách đăng nhập và thực hiện các tácvụ: quản lý thông tin khách hàng, quản lý phim, quản lý đặt vé,
Trang 23Bảng 3 1:Danh sách tác nhân và mô tả
3.3 Danh sách các tình huống hoạt động
UC001 Đăng nhập
UC002 Đăng xuất
UC003 Đăng ký tài khoản
UC004 Quên mật khẩu
UC005 Đổi mật khẩu
UC006 Xem thông tin phim
UC007 Xem suất chiếu
UC008 Thanh Toán
UC009 Xem thông tin cá nhân
UC010 Sửa thông tin cá nhân
UC011 Đặt vé
UC012 Xem lịch sử đặt vé
UC013 Xóa người dùng
UC014 Sửa người dùng
UC015 Thêm khu vực
UC016 Xóa khu vực
UC017 Sửa khu vực
UC018 Thống kê theo ngày
UC019 Thống kê theo tháng
UC020 Thống kê theo năm
UC021 Thêm suất chiếu
Trang 24UC022 Sửa suất chiếu
UC023 Xóa suất chiếu
UC029 Thêm phim
UC030 Sửa phim
UC031 Xóa phim
UC032 Đánh giá phim
UC033 Tìm phim
UC034 Hủy suất chiếu
Bảng 3 2:Danh sách các tình huống hoạt động
3.4 Tình huống hoạt động
3.4.1 ĐĂNG NHẬP
Đặc tả use case
Use case: UC001_Đăng nhập
Mục đích: Cho người dùng, quản lý có thể đăng nhập tài khoản
Mô tả: Đăng nhập tài khoản người dùng để thực hiện các chức năng hoặc
quản lý website nếu là quản lý
Tác nhân: Người dùng, quản lý
Điều kiện trước: Đã có tài khoản
Điều kiện sau: Đăng nhập thành công
Trang 254 Nhấn đăng nhập 5 Kiểm tra tài khoản đăng nhập
6 Thông báo đăng nhập thànhcông và hiển thị trang chủ
Luồng sự kiện phụ
(Alternative Flows):
5.1 Thông báo mã số không hợp
lệ hoặc mật khẩu không đúng.quay lại bước 3
Bảng 3 3:Mô tả UC001_Đăng nhập
Sơ đồ Activity diagram
Sequence diagram
Trang 263.4.2 ĐĂNG XUẤT
Đặc tả use case
Use case: UC002_Đăng xuất
Mục đích: Cho người dùng, nhân viên có thể đăng xuất tài khoản
Mô tả: Người dùng, nhân viên có thể đăng xuất tài khoản ra khỏi hệ thống Tác nhân: Người dùng, nhân viên
Điều kiện trước: Đã đăng nhập vào hệ thống
Điều kiện sau: Đăng xuất thành công
Luồng sự kiện chính
(Basic flows):
Người dùng, nhân viên Hệ thống
1 Người dùng hoặc nhân viênchọn đăng xuất trên thanhmenu
2 Hệ thống thực hiện đăng xuất
Luồng sự kiện phụ
(Alternative Flows):
Bảng 3 4:Mô tả UC002_Đăng xuất
Sơ đồ Activity diagram
Trang 27Sequence diagram
3.4.3 ĐĂNG KÝ TÀI KHOẢN
Đặc tả use case
Use case: UC003_Đăng ký tài khoản
Mục đích: Cho người dùng có thể đăng ký tài khoản
Mô tả: Người dùng có thể đăng ký tài khoản để truy cập vào hệ thống
Tác nhân: Người dùng
Trang 28Điều kiện trước: Chưa có tài khoản
Điều kiện sau: Đăng đăng ký tài khoản thành công
Bảng 3 5:Mô tả UC003_Đăng ký tài khoản
Sơ đồ Activity diagram
Sequence diagram
Trang 293.4.4 QUÊN MẬT KHẨU
Đặc tả use case
Use case: UC004_Quên mật khẩu
Mục đích: Cho người dùng có thể lấy lại mật khẩu khi quên
Mô tả: Người dùng có thể lấy lại mật khẩu khi quên
Tác nhân: Người dùng
Điều kiện trước: Đã có tài khoản
Điều kiện sau: Lấy lại mật khẩu thành công
2 Hệ thống hiển thị giao diệnquên mật khẩu
3 Người dùng điền email vàoform
4 Hệ thống kiểm tra
5 Gửi đường link quên mật khẩu
về cho email người dùng
6 Người dùng bấm vào link
Trang 307 Người dùng nhập lại mậtkhẩu mới
8 Hệ thống quay trở lại giao diệnđăng nhập
Luồng sự kiện phụ
(Alternative Flows):
4.1 Hệ thống hiển thị thông báoemail không tồn tại
Bảng 3 6:Mô tả UC004_Quên mật khẩu
Sơ đồ Activity diagram
Sequence diagram
Trang 313.4.5 ĐỔI MẬT KHẨU
Đặc tả use case
Use case: UC005_Đổi mật khẩu
Mục đích: Cho người dùng có thể đổi mật khẩu khi muốn
Mô tả: Người dùng có thể đổi mật khẩu khi cần
Tác nhân: Người dùng
Điều kiện trước: Đã có tài khoản
Điều kiện sau: Đổi mật khẩu thành công
Trang 32khẩu trên giao diện thông tinngười dùng
Luồng sự kiện phụ
(Alternative Flows):
5.1 Hệ thống hiển thị thông báo 2mật khẩu không khớp
Bảng 3 7:Mô tả UC005_Đổi mật khẩu
Sơ đồ Activity diagram
Sequence diagram
Trang 333.4.6 XEM THÔNG TIN PHIM
Đặc tả use case
Use case: UC006_Xem thông tin phim
Mục đích: Cho người dùng có thể xem thông tin phim
Mô tả: Cho người dùng có thể xem thông tin phim
Tác nhân: Người dùng
Điều kiện trước: Truy cập vào website
Điều kiện sau: Xem thông tin các phim
Luồng sự kiện chính
(Basic flows):
Người dùng Hệ thống
1 Người dùng chọn phimmuốn xem
2 Hệ thống hiển thị thông tinphim
Luồng sự kiện phụ
(Alternative Flows):
Bảng 3 8:Mô tả UC006_Xem thông tin phim
Sơ đồ Activity diagram
Trang 34Sequence diagram
3.4.7 XEM SUẤT CHIẾU
Đặc tả use case
Use case: UC007_Xem suất chiếu
Mục đích: Cho người dùng có thể xem phim theo rạp
Mô tả: Cho người dùng có thể xem phim theo rạp
Tác nhân: Người dùng
Điều kiện trước: Truy cập vào website
Điều kiện sau: Xem phim theo rạp
Trang 354 Hệ thống hiển thị các phim theorạp
5 Người dùng chọn phim cầnxem thông tin
6 Hệ thống hiển thị thông tinphim
Luồng sự kiện phụ
(Alternative Flows):
Bảng 3 9:Mô tả UC007_Xem suất chiếu
Sơ đồ Activity diagram
Trang 36Sequence diagram
3.4.8 THANH TOÁN
Đặc tả use case
Use case: UC008_Thanh toán
Mục đích: Cho người dùng có thể thanh toán
Mô tả: Cho người dùng có thể thanh toán
Tác nhân: Người dùng
Điều kiện trước: Đặt ghế thành công
Điều kiện sau: Thanh toán thành công
2 Người dùng nhấn thanh toán 3 Hiển thị giao diện thanh toán
4 Người dùng xem thông tincần thanh toán
5 Người dùng nhấn nút thanhtoán
6 Hệ thống hiển thị giao diệnthanh toán Paypal
7 Người dùng nhập tài khoảnmật khẩu
8 Người dùng nhấn thanh toán
9 Người dùng thực hiện thanh
Trang 3710 Hệ thống hiển thị thông báothanh toán thành công
Luồng sự kiện phụ
(Alternative Flows):
Bảng 3 10:Mô tả UC008_Thanh toán
Sơ đồ Activity diagram
Sequence diagram
Trang 383.4.9 XEM THÔNG TIN CÁ NHÂN
Đặc tả use case Use case: UC009_Xem thông tin cá nhân
Mục đích: Cho người dùng có thể xem thông tin cá nhân
Mô tả: Cho người dùng có thể xem thông tin cá nhân
Tác nhân: Người dùng
Điều kiện trước: Đăng nhập thành công
Điều kiện sau: Xem thông tin cá nhân
Bảng 3 11:Mô tả UC009_Xem thông tin cá nhân
Sơ đồ Activity diagram
Trang 39Sequence diagram
3.4.10 SỬA THÔNG TIN CÁ NHÂN
Use case: UC010_Sửa thông tin cá nhân
Mục đích: Cho người dùng có thể chỉnh sửa thông tin cá nhân
Mô tả: Cho người dùng có thể chỉnh sửa thông tin cá nhân
Tác nhân: Người dùng
Điều kiện trước: Đăng nhập thành công
Điều kiện sau: Chỉnh sửa thông tin thành công
Trang 40đổi người dùngLuồng sự kiện phụ
(Alternative Flows):
Bảng 3 12: Mô tả UC010_Sửa thông tin cá nhân
Sơ đồ Activity diagram
Sequence diagram