TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GTVT
KHOA CÔNG NGHỆ THÔNG TIN
-----o0o-----
Báo cáo
ĐỒ ÁN TỐT NGHIỆP
Đề tài:
PHÂN TÍCH, THIẾT KẾ WEBSITE XEM PHIM SỬ DỤNG MƠ HÌNH MVC
GIÁO VIÊN HƯỚNG DẪN
:
SINH VIÊN THỰC HIỆN
:
Lớp
:
Mã sinh viên
:
LỜI CẢM ƠN
Trong khoảng thời gian 4 năm học tập, thực hành, rèn luyện tại trường Đại học
Công Nghệ Giao Thông Vận Tải, em đã tích luỹ được nhiều kiến thức cũng như kinh
nghiệm từ các giảng viên, thầy cô khoa Công nghệ thơng tin và bạn bè, đó là những hành
trang vô cùng quý giá giúp cho người thực hiện đề tài sau này.
Trong thời gian thực hiện đề tài tốt nghiệp, em đã nhận được nhiều sự giúp đỡ,
đóng góp ý kiến và chỉ bảo nhiệt tình của thầy cơ, gia đình và bạn bè.
Em xin gửi lời cảm ơn chân thành đến thầy Nguyễn Văn Cường, giảng viên của
khoa Công nghệ thông tin - Trường Đại học Công nghệ GTVT, người đã tận tình hướng
dẫn, chỉ bảo người thực hiện đề tài trong suốt quá trình thực hiện đề tài.
Em cũng xin chân thành cảm ơn các thầy cô giáo trong trường Đại học Cơng nghệ
GTVT nói chung, các thầy cơ trong khoa Cơng nghệ thơng tin nói riêng đã dạy dỗ cho
người thực hiện đề tài kiến thức về các môn đại cương cũng như các môn chuyên ngành,
giúp người thực hiện đề tài có được cơ sở lý thuyết vững vàng và tạo điều kiện giúp đỡ
người thực hiện đề tài trong suốt quá trình học tập.
Cuối cùng, em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo điều kiện,
quan tâm, giúp đỡ, động viên người thực hiện đề tài trong suốt quá trình học tập và hồn
thành đề tài tốt nghiệp.
Trong q trình thực hiện đề tài tốt nghiệp, em nhận thấy mình đã cố gắng hết sức
nhưng vì kiến thức vẫn cịn hẹn hẹp nên vẫn cịn nhiều thiếu sót, mong thầy cô bỏ qua và
bổ sung để đề tài được hoàn thiện hơn.
Xin chân thành cảm ơn!
2
LỜI NÓI ĐẦU
Trên tinh thần học hỏi, áp dụng kiến thức vào thực tiễn, đề tài là tổng hợp những
kiến thức đã học, đã tìm hiểu trong quá trình thực hiện.
Ngày nay phim ảnh là một trong những lĩnh vực mang đến doanh thu khổng lồ. Nhờ
đó mà những website nhượng quyền thương mại phim cũng phát triễn vượt bậc. Nhưng
bên cạnh những website có trả phí thì vẫn cịn tồn tại những website chiếu khơng có bản
quyền. Khơng phải ai cũng có nhu cầu và sở thích xem phim tại rạp.
Mục tiêu của đề tài là tạo ra một website xem phim trực tuyến có trả phí với đầy đủ
tính năng ưu việt dành cho những người khơng có thời gian, thiếu thốn về kinh tế, không
am hiểu về xem phim tại rạp hay đơn giản là muốn xem phim có bản quyền.
Hệ thống giúp hỗ trợ quản trị viên trong việc quản lý danh mục, quản lý phim, quản
lý người dùng quản lý tủ phim, quản lý bình luận, quản lý nạp ví, quản lý mua phim,
thống kê,...
Cung cấp những chức năng cơ bản và ưu việt cho người dùng như: xem phim, bình
luận, nạp ví, mua phim,... Thanh toán trực tuyến qua VNPay sẽ giúp người dùng dễ dàng
nạp tiền vào ví và mua phim.
3
MỤC LỤC
LỜI CẢM ƠN..................................................................................................................... 2
LỜI NÓI ĐẦU.................................................................................................................... 3
CHƯƠNG 1: TỔNG QUAN..............................................................................................9
1.1.
LÝ DO CHỌN ĐỀ TÀI.........................................................................................9
1.2.
MỤC TIÊU CỦA ĐỀ TÀI.....................................................................................9
1.3.
GIỚI HẠN VÀ PHẠM VI CỦA ĐỀ TÀI.............................................................9
1.4.
KẾT QUẢ ĐẠT ĐƯỢC........................................................................................9
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT.................................................................................11
2.1. MƠ HÌNH NVC.....................................................................................................11
2.1.1. Khái niệm.........................................................................................................11
2.1.2. Thành phần của mơ hình MVC........................................................................11
2.1.3. Sự tương tác giữa các thành phần.....................................................................11
2.1.4. Mơ hình hoạt động...........................................................................................12
2.2. PHP VÀ LARAVEL..............................................................................................12
2.2.1. PHP.................................................................................................................. 12
2.2.2. Laravel.............................................................................................................13
2.3. MICROSOFT SQL SERVER.................................................................................14
2.4. PHẦN MỀM XAMPP............................................................................................14
2.5. VSCODE................................................................................................................15
2.6. SƠ LƯỢC VỀ UML VÀ PHẦN MỀM STARUML..............................................17
2.7. CẤU TRÚC WEBSERVICE..................................................................................17
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG.................................................20
3.1. KHẢO SÁT HỆ THỐNG.......................................................................................20
3.1.1. Khảo sát hiện trạng thực tế của hệ thống xem phim online..............................20
3.1.2. Đánh giá hiện trạng..........................................................................................21
3.1.3. Chức năng của đề tài........................................................................................23
3.1.3.1. Yêu cầu tổng quát.....................................................................................24
3.1.3.1. Yêu cầu phi chức năng.............................................................................24
3.2. PHÂN TÍCH HỆ THỐNG......................................................................................24
3.2.1. Các chức năng của hệ thống.............................................................................24
4
3.2.2. Các tác nhân của hệ thống................................................................................26
3.3. THIẾT KẾ HỆ THỐNG.........................................................................................27
3.3.1. Biểu đồ UseCase..............................................................................................27
3.3.1.1. Biều đồ Use Case tổng quát.....................................................................27
3.3.1.2. Biểu đồ UseCase cho tác nhân Admin.....................................................28
3.3.1.3. Biều đồ UseCase cho tác nhân User.........................................................29
3.3.1.4. Biểu đồ UseCase admin quản lý thể loại..................................................30
3.3.1.5. Biểu đồ UseCase admin quản lý năm sản xuất.........................................32
3.3.1.6. Biểu đồ UseCase admin quản lý quốc gia................................................35
3.3.1.7. Biểu đồ UseCase admin quản lý phim......................................................37
3.3.1.8. Biểu đồ UseCase admin quản lý người dùng............................................40
3.3.1.9. Biểu đồ UseCase admin quản lý bình luận...............................................42
3.3.1.10. Biểu đồ UseCase admin quản lý giao dịch.............................................43
3.3.1.11. Biểu đồ UseCase Admin đăng nhập.......................................................44
3.3.1.12. Biểu đồ UseCase User quản lý hồ sơ cá nhân........................................45
3.3.1.13. Biểu đồ UseCase User xem phim...........................................................47
3.3.1.14. Biểu đồ UseCase User tủ phim...............................................................49
3.3.1.15. Biểu đồ UseCase User bình luận............................................................50
3.3.1.16. Biểu đồ UseCase User quản lý ví...........................................................52
3.3.1.17. Biểu đồ UseCase User tìm kiếm.............................................................53
3.3.1.18. Biểu đồ UseCase User đăng nhập..........................................................54
3.3.1.19. Biểu đồ UseCase User đăng ký..............................................................55
3.3.2. Biểu đồ trình tự................................................................................................56
3.3.2.1. Biểu đồ trình tự admin quản lý thể loại....................................................56
3.3.2.2. Biểu đồ trình tự admin quản lý quốc gia..................................................58
3.3.2.3. Biểu đồ trình tự admin quản lý năm sản xuất...........................................61
3.3.2.4. Biểu đồ trình tự admin quản lý phim........................................................63
3.3.2.5. Biểu đồ trình tự admin quản lý người dùng..............................................66
3.3.2.6. Biểu đồ trình tự admin quản lý bình luận.................................................67
3.3.2.7. Biểu đồ trình tự admin quản lý giao dịch.................................................68
3.3.2.8. Biểu đồ trình tự đăng nhập.......................................................................69
3.3.2.9. Biểu đồ trình tự đăng ký tài khoản...........................................................70
5
3.3.2.10. Biểu đồ trình tự user quản lý hồ sơ cá nhân...........................................70
3.3.2.11. Biểu đồ trình tự user xem phim..............................................................71
3.3.2.12. Biểu đồ trình tự user quản lý tủ phim.....................................................73
3.3.2.13. Biểu đồ trình tự user bình luận...............................................................74
3.3.2.14. Biểu đồ trình tự user quản lý ví..............................................................76
3.2.3.15. Biểu đồ trình tự tìm kiếm.......................................................................76
3.3.3. Biểu đồ hoạt động............................................................................................78
3.3.3.1. Biểu đồ hoạt động admin quản lý thể loại................................................78
3.3.3.2. Biểu đồ hoạt động admin quản lý quốc gia..............................................81
3.3.3.3. Biểu đồ hoạt động admin quản lý năm sản xuất.......................................84
3.3.3.4. Biểu đồ hoạt động admin quản lý phim....................................................87
3.3.3.5. Biểu đồ hoạt động admin quản lý người dùng..........................................90
3.3.3.6. Biểu đồ hoạt động admin quản lý bình luận.............................................93
3.3.3.7. Biểu đồ hoạt động admin quản lý giao dịch.............................................94
3.3.3.8. Biểu đồ hoạt động admin, user đăng nhập................................................96
3.3.3.9. Biểu đồ hoạt động user đăng lý................................................................97
3.3.3.10. Biểu đồ hoạt động user quản lý hồ sơ cá nhân.......................................98
3.3.3.11. Biểu đồ hoạt động user xem phim..........................................................99
3.3.3.12. Biểu đồ hoạt động user bình luận.........................................................101
3.3.3.13. Biểu đồ hoạt động user quản lý ví........................................................104
3.3.3.14. Biểu đồ hoạt động user tìm kiếm..........................................................105
3.3.4. Biểu đồ lớp.....................................................................................................108
CHƯƠNG 4: XÂY DỰNG CHƯƠNG TRÌNH..............................................................109
4.1. XÂY DỰNG CƠ SỞ DỮ LIỆU...........................................................................109
4.1.1. Biểu đồ cơ sở dữ liệu vật lý............................................................................109
4.1.2. Mô tả các bảng trong cơ sở dữ liệu.................................................................109
4.2. CÀI ĐẶT HỆ THỐNG.........................................................................................113
4.2.1. Giao diện quản trị viên (Admin).....................................................................113
4.2.1.1. Giao diện trang đăng nhập Admin..........................................................113
4.2.1.2. Giao diện trang chủ Admin....................................................................114
4.2.1.3. Giao diện trang quản lý thể loại.............................................................115
4.2.1.4. Giao diện trang thêm thể loại.................................................................115
6
4.2.1.5. Giao diện trang sửa thể loại....................................................................116
4.2.1.6. Giao diện trang Quản lý quốc gia...........................................................116
4.2.1.7. Giao diện trang thêm quốc gia................................................................117
4.2.1.8. Giao diện trang sửa quốc gia..................................................................117
4.2.1.9. Giao diện trang Quản lý năm sản xuất...................................................118
4.2.1.10. Giao diện trang thêm năm sản xuất......................................................118
4.2.1.11. Giao diện trang sửa năm sản xuất.........................................................119
4.2.1.12. Giao diện trang Quản lý phim..............................................................119
4.2.1.13. Giao diện trang thêm phim...................................................................120
4.2.1.14. Giao diện trang sửa phim.....................................................................121
4.2.1.15. Giao diện trang Quản lý tủ phim..........................................................122
4.2.1.16. Giao diện trang Quản lý bình luận........................................................122
4.2.1.17. Giao diện trang Quản lý người dùng....................................................123
4.2.1.18. Giao diện trang thêm người dùng.........................................................124
4.2.1.19. Giao diện trang sửa người dùng...........................................................125
4.2.1.20. Giao diện trang Quản lý nạp tiền..........................................................126
4.2.1.21. Giao diện trang Quản lý mua phim......................................................126
4.2.1.22. Giao diện trang thống kê nạp tiền.........................................................127
4.2.1.23. Giao diện trang thống kê doanh thu......................................................128
4.2.2. Giao diện người dùng (User)..........................................................................129
4.2.2.1. Giao diện trang chủ (chưa đăng nhập)....................................................129
4.2.2.2. Giao diện trang chủ (đã đăng nhập)........................................................130
4.2.2.3. Giao diện trang đăng nhập......................................................................131
4.2.2.4. Giao diện trang đăng ký.........................................................................132
4.2.2.5. Giao diện trang phim theo thể loại.........................................................132
4.2.2.6. Giao diện trang phim theo quốc gia........................................................133
4.2.2.7. Giao diện trang phim theo năm sản xuất................................................133
4.2.2.8. Giao diện trang trailer phim...................................................................134
4.2.2.9. Giao diện trang giới thiệu.......................................................................134
4.2.2.10. Giao diện trang chi tiết phim (miễn phí)..............................................135
4.2.2.11. Giao diện trang chi tiết phim (có phí)...................................................136
4.2.2.12. Giao diện trang mua phim....................................................................137
7
4.2.2.13. Giao diện trang xem phim....................................................................138
4.2.2.14. Giao diện trang tủ phim........................................................................139
4.2.2.15. Giao diện trang phim đã mua...............................................................139
4.2.2.16. Giao diện trang ví.................................................................................140
4.2.2.17. Giao diện trang nạp tiền vào ví.............................................................141
4.2.2.18. Giao diện trang hồ sơ...........................................................................141
4.2.2.19. Giao diện trang lịch sử giao dịch..........................................................142
KẾT LUẬN.................................................................................................................... 143
1. Đánh giá kết quả......................................................................................................143
2. Hướng phát triển......................................................................................................143
TÀI LIỆU THAM KHẢO..............................................................................................144
8
1.1.
CHƯƠNG 1: TỔNG QUAN
LÝ DO CHỌN ĐỀ TÀI
Ngày nay, công nghệ thông tin là một nền công nghiệp phát triển vô cùng mạnh
mẽ. Nhu cầu sử dụng những thiết bị thông minh đi kèm với thị trường công nghệ phần
mềm trên thế giới nói chung và Việt Nam nói riêng càng ngày càng tăng trưởng mạnh.
Với sự phát triển mạnh mẽ này, chúng ta đang hướng tới việc phát triển những
phần mềm đáp ứng nhu cầu ngày càng cao của con người, giúp mọi người có thể thưởng
thức những bộ phim hay. Nhằm đáp ứng nhu cầu thư giãn và giải trí của con người sau
giờ làm việc và bắt kịp xu thế phát triển của nghành công nghiệp sản xuất phim trên thế
giới. Em áp dụng kiến thức đã học vào thực tế, nên trong đồ án tốt nghiệp em xin được
thực hiện đề tài “PHÂN TÍCH, THIẾT KẾ WEBSITE XEM PHIM SỬ DỤNG MƠ
HÌNH MVC VÀ CẤU TRÚC WEBSERVICES” nhằm với mục đích mang lại sự thoải
mái, thư giãn của con người.
1.2.
MỤC TIÊU CỦA ĐỀ TÀI
Xây dựng được website bằng Framework để giúp cho người học có điều kiện học
tốt hơn.
Phân tích hệ thống chương trình.
Kiểm chứng những kiến thức đã được học trên giảng đường Đại học, đồng thời
trang bị những kiến thức mới, là hành trang chuẩn bị bước vào môi trường doanh nghiệp
thực tế và có thêm kinh nghiệm trong cuộc sống.
1.3.
GIỚI HẠN VÀ PHẠM VI CỦA ĐỀ TÀI
Khảo sát phần mềm cụ thể, phân tích thiết kế hệ thống.
Xây dựng chương trình sử dụng được trên web.
Xây dựng được các chức năng thiết yếu cho một website xem phim trực tuyến
1.4. KẾT QUẢ ĐẠT ĐƯỢC
Bản báo cáo đặc tả về phân tích, thiết kế hệ thống.
Đối với quản trị viên:
+ Quản lý danh sách phim.
+ Quản lý phim.
+ Quản lý người dùng.
+ Thống kê.
+ Quản lý thanh tốn.
+ Quản lý bình luận
+ Quản lý thể loại phim
Đối với người dùng:
+ Đăng nhập, đăng ký, lấy lại mật khẩu qua email
+ Xem trang thông tin cá nhân.
9
+ Xem chi tiết phim.
+ Xem phim.
+ Thanh tốn
+ Bình luận
+ Tìm kiếm
10
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1. MƠ HÌNH MVC
2.1.1. Khái niệm
MVC là từ viết tắt của 'Model View Controller'. Nó đại diện cho các nhà phát triển
kiến trúc áp dụng khi xây dựng các ứng dụng. Với kiến trúc MVC, chúng ta xem xét cấu
trúc ứng dụng liên quan đến cách luồng dữ liệu của ứng dụng của chúng ta hoạt động như
thế nào.
2.1.2. Thành phần của mơ hình MVC
Mơ 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, v.v); 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,
v.v. nó đảm nhiệm nhiệm vụ hiển thị dữ liệu và giúp người dùng tươ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.
2.1.3. Sự tương tác giữa các thành phần
● Controller tương tác với qua lại với View
● Controller tương tác qua lại với Model
● Model và View khơng có sự tương tác với nhau mà nó tương tác với nhau thơng
qua Controller.
11
2.1.4. Mơ hình hoạt động
Hình 2.1: Mơ hình MVC
Người dùng sử dụng một Browser của trình duyệt web bất kỳ, có thể là Firefox,
Chrome hay IE, v.v. để gửi yêu cầu. Có thể gửi kèm theo những dữ liệu nhập tới các
Controller xử lý tương ứng. Và yêu cầu xác định Controller xử lý cũng sẽ dựa vào bộ
Routing điều hướng.
Khi Controller đã nhận được yêu cầu gửi tới từ phía người dùng, thành phần này sẽ
chịu trách nhiệm kiểm tra yêu cầu xem có cần lấy dữ liệu từ Model hay khơng. Nếu cần
nó sẽ sử dụng các class/ function cần thiết có trong model và trả ra kết quả. Lúc này,
Controller sẽ xử lý các giá trị đó, sau đó trả ra View để hiển thị. Controller lại làm công
việc xác định các view tương ứng để hiển thị theo đúng yêu cầu của người dùng.
Khi đã nhận được dữ liệu từ Controller, View sẽ có trách nhiệm xây dựng các
thành phần hiển thị bao gồm: thông tin dữ liệu, hình ảnh, v.v. Sau đó trả về GUI Content
để Controller đưa ra kết quả trên màn hình Browser. Cùng với đó, Browser sẽ nhận giá trị
kết quả trả về và hiển thị ra cho người dùng.
2.2. PHP VÀ LARAVEL
2.2.1. PHP
PHP: Hypertext Preprocessor, thường được viết tắt thành PHP là một ngơn ngữ lập
trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết
12
cho máy chủ, mã nguồn mở, dùng cho mục đích tổng qt. Nó rất thích hợp với web và
có thể dễ dàng nhúng vào trang HTML.
PHP là một ngôn ngữ lập trình phía Server dùng để xây dựng các ứng dụng
Website.
Hình 2.2: PHP
2.2.2. Laravel
Laravel là một PHP Framework mã nguồn mở miễn phí, được phát triển bởi Taylor
Otwell với phiên bản đầu tiên được ra mắt vào tháng 6 năm 2011. Laravel ra đời nhằm
mục đích hỗ trợ phát triển các ứng dụng web, dựa trên mơ hình MVC (Model – View –
Controller).
Mặc dù ra đời muộn hơn so với các đối thủ, tuy nhiên Laravel đã thật sự tạo thành
một làn sóng lớn, được đánh giá tốt và sử dụng rộng rãi nhất hiện nay. Laravel hiện được
phát hành theo giấy phép MIT, với source code được lưu trữ tại Gitthub.
Cấu trúc MVC và lập trình hướng đối tượng OOP vẫn được giữ lại trong
Framework Laravel, giúp cung cấp tài liệu tốt hơn, và tăng hiệu suất hơn. Mô hình MVC
(Model – View – Controller) gồm có:
- Model: tương tác với database và truy xuất các thông tin từ đối tượng của bạn
- View: để hiển thị các trang
Hình
PHP
Controller: xử lý các request
của2.4:
người
dùng và truy xuất dữ liệu, bằng cách
tận dụng các Model
- Ngoài ra, các route được sử dụng để ánh xạ các URL tới các hành động được
chỉ định trong controller.
Những ưu điểm của Framework Laravel:
-
13
- Sử dụng các tính năng mới nhất của PHP.
- Nguồn tài ngun vơ cùng lớn và sẵn có.
- Tích hợp với dịch vụ mail.
- Tốc độ xử lý nhanh.
- Dễ sử dụng.
- Tính bảo mật cao.
Chính vì những ưu điểm đó mà người thực hiện đề tài chọn PHP và Laravel
Framework làm ngôn ngữ để thực hiện đề tài tốt nghiệp
2.3. MICROSOFT SQL SERVER
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database
Management System (RDBMS)) sử dụng câu lệnh SQL (Transact-SQL) để trao đổi dữ
liệu giữa máy Client và máy cài SQL Server. Một RDBMS bao gồm databases, database
engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.
SQL Server được phát triển và tiếp thị bởi Microsoft.
SQL Server hoạt động độc quyền trên môi trường Windows trong hơn 20 năm.
Năm 2016, Microsoft đã cung cấp phiên bản trên Linux. SQL Server 2017 ra mắt vào
tháng 10 năm 2016 chạy trên cả Windows và Linux, SQL Server 2019 sẽ ra mắt trong
năm 2019.
SQL Server được tối ưu để có thể chạy trên mơi trường cơ sở dữ liệu rất lớn (Very Large
Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user.
SQL Server có thể kết hợp “ăn ý” với các server khác như Microsoft Internet Information
Server (IIS), E-Commerce Server, Proxy Serve, v.v
2.4. PHẦN MỀM XAMPP
Là phần mềm web server thuộc bản quyền của GNU General Public Licence,
XAMPP do Apache Friends phân phối và phát triển. Đây là chương trình tạo máy chủ
Web (Web Server) được tích hợp sẵn Apache, PHP, MySQL, FTP Server, Mail Server và
các công cụ như phpMyAdmin.
Web Server (máy phục vụ Web) là máy tính cài đặt phần mềm phục vụ Web. Đôi
khi người ta cũng gọi chính phần mềm đó là Web Server.
Hiểu đơn giản, XAMPP là ứng dụng dùng để tạo và điều hành máy chủ nội bộ
(localhost). Được ghép của 2 chữ “local” (địa phương, ý chỉ máy tính của bạn) và “host”
(máy chủ), localhost là thuật ngữ chỉ máy chủ chạy trên máy tính cá nhân.
14
XAMPP chính là một phần mềm cho phép bạn giả lập môi trường server hosting.
Nhờ server hosting giả định này, bạn có thể chạy thử demo một website ngay trên chiếc
máy vi tính của bạn khơng cần thiết phải mua hosting hay VPS.
XAMPP là viết tắt của X + Apache + MySQL + PHP + Perl.
Chữ X là cross (platform) diễn tả ý có thể dùng được cho cả 4 hệ điều hành khác
nhau: Windows, Linux, Solaris và MAC.
XAMPP tích hợp nhiều thành phần với các tính năng:
● Apache
● PHP (tạo môi trường chạy các tập tin script *.php);
● MySQL (hệ quản trị dữ liệu MySQL): Thay vì phải cài đặt từng thành phần trên,
giờ đây chỉ cần cài XAMPP là chúng ta có 1 web server hồn chỉnh.
● Tuy nhiên, XAMPP cũng có một số hạn chế nhất định. Ví dụ như:
● Khơng được hỗ trợ cấu hình Module
● Dung lượng của XAMPP cũng tương đối nặng (dung lượng file cài đặt của
XAMPP là 141Mb).
● Khơng có nhiều phiên bản cho từng thành phần của server như PHP, Apache,
MySQL.
2.5. VSCODE
-
Visual studio code là gì?
Là một trình biên tập lập trình code miễn phí dành cho Windows, Linux và
macOS, Visual Studio Code được phát triển bởi Microsoft. Nó được xem là một sự kết
hợp hoàn hảo giữa IDE và Code Editor.
Visual Studio Code hỗ trợ chức năng debug, đi kèm với Git, có syntax
highlighting, tự hồn thành mã thơng minh, snippets, và cải tiến mã nguồn. Nhờ tính năng
tùy chỉnh, Visual Studio Code cũng cho phép người dùng thay đổi theme, phím tắt, và các
tùy chọn khác.
-
Một số tính năng:
●
Hỗ trợ nhiều ngơn ngữ lập trình
15
Visual Studio Code hỗ trợ nhiều ngơn ngữ lập trình như C/C++, C#, F#, Visual Basic,
HTML, CSS, JavaScript, v.v. Vì vậy, nó dễ dàng phát hiện và đưa ra thơng báo nếu
chương chương trình có lỗi.
● Hỗ trợ đa nền tảng
Các trình viết code thơng thường chỉ được sử dụng hoặc cho Windows hoặc Linux
hoặc Mac Systems. Nhưng Visual Studio Code có thể hoạt động tốt trên cả ba nền tảng
trên.
● Cung cấp kho tiện ích mở rộng
Trong trường hợp lập trình viên muốn sử dụng một ngơn ngữ lập trình khơng nằm
trong số các ngơn ngữ Visual Studio hỗ trợ, họ có thể tải xuống tiện ích mở rộng. Điều
này vẫn sẽ không làm giảm hiệu năng của phần mềm, bởi vì phần mở rộng này hoạt động
như một chương trình độc lập.
● Kho lưu trữ an tồn
Đi kèm với sự phát triển của lập trình là nhu cầu về lưu trữ an toàn. Với Visual
Studio Code, người dùng có thể hồn tồn n tâm vì nó dễ dàng kết nối với Git hoặc bất
kỳ kho lưu trữ hiện có nào.
● Hỗ trợ web
Visual Studio Code hỗ trợ nhiều ứng dụng web. Ngồi ra, nó cũng có một trình
soạn thảo và thiết kế website.
● Lưu trữ dữ liệu dạng phân cấp
Phần lớn tệp lưu trữ đoạn mã đều được đặt trong các thư mục tương tự nhau. Ngoài
ra, Visual Studio Code còn cung cấp các thư mục cho một số tệp đặc biệt quan trọng.
● Hỗ trợ viết Code
Một số đoạn code có thể thay đổi chút ít để thuận tiện cho người dùng. Visual
Studio Code sẽ đề xuất cho lập trình viên các tùy chọn thay thế nếu có.
● Hỗ trợ thiết bị đầu cuối
Visual Studio Code có tích hợp thiết bị đầu cuối, giúp người dùng khỏi phải chuyển
đổi giữa hai màn hình hoặc trở về thư mục gốc khi thực hiện các thao tác.
● Màn hình đa nhiệm
16
Người dùng Visual Studio Code có thể mở cùng lúc nhiều tệp tin và thư mục – mặc
dù chúng không hề liên quan với nhau.
● Hỗ trợ Git
Visual Studio Code hỗ trợ kéo hoặc sao chép mã trực tiếp từ GitHub. Mã này sau
đó có thể được thay đổi và lưu lại trên phần mềm.
● Bình luận
Việc để lại nhận xét giúp người dùng dễ dàng nhớ công việc cần hoàn thành.
2.6. SƠ LƯỢC VỀ UML VÀ PHẦN MỀM STARUML
StarUML là một mơ hình nền tảng, là phần mềm hỗ trợ UML (Unified Modeling
Language). Tích cực hỗ trợ các phương pháp tiếp cận MDA (Model Driven Architecture)
bằng cách hỗ trợ các khái niệm hồ sơ UML. StarUML vượt trội trong việc tùy biến mơi
trường của người dùng và có khả năng mở rộng cao trong chức năng của nó. dùng
StarUML, một trong các cơng cụ mơ hình hóa phần mềm hàng đầu, sẽ đảm bảo tối đa hóa
năng suất và chất lượng của các dự án phần mềm của bạn.
-
Là công cụ điều chỉnh cho người dùng:
StarUML cung cấp tùy biến tối đa với môi trường của người dùng bằng cách cung
cấp các biến tùy biến mà có thể được áp dụng trong phương pháp phát triển phần mềm
của người sử dụng, nền tảng dự án, và ngôn ngữ.
-
Hỗ trợ đúng DMA:
StarUML cho phép tạo ra các mơ hình nền tảng độc lập. Người dùng có thể dễ
dàng có được sản phẩm cuối cùng của họ thông qua tài liệu mẫu đơn giản.
-
Khả năng mở rộng và linh hoạt tuyệt vời:
StarUML cung cấp khả năng mở rộng và tính linh hoạt tuyệt vời. Nó cung cấp
khn khổ cho việc mở rộng các chức năng của cơng cụ Add-In. Nó được thiết kế để cho
phép truy cập vào tất cả các chức năng của mơ hình meta và cơng cụ thơng qua COM tự
động hóa, và nó cung cấp phần mở rộng của menu và các mục tùy chọn. Công cụ này
cũng có thể được tích hợp với bất kỳ cơng cụ bên ngoài.
17
2.7. CẤU TRÚC WEBSERVICE
Dịch vụ Web (Web Service) được coi là một công nghệ mang đến cuộc cách mạng
trong cách thức hoạt động của các dịch vụ B2B (Business to Business) và B2C (Business
to Customer). Giá trị cơ bản của dịch vụ Web dựa trên việc cung cấp các phương thức theo
chuẩn trong việc truy nhập đối với hệ thống đóng gói và hệ thống kế thừa. Các phần mềm
được viết bởi những ngơn ngữ lập trình khác nhau và chạy trên những nền tảng khác nhau
có thể sử dụng dịch vụ Web để chuyển đổi dữ liệu thông qua mạng Internet theo cách giao
tiếp tương tự bên trong một máy tính. Tuy nhiên, cơng nghệ xây dựng dịch vụ Web khơng
nhất thiết phải là các cơng nghệ mới, nó có thể kết hợp với các cơng nghệ đã có như XML,
SOAP, WSDL, UDDI... Với sự phát triển và lớn mạnh của Internet, dịch vụ Web thật sự là
một công nghệ
2.10.1.Các thành phần của webservice
XML – eXtensible Markup Language
WSDL – Web Service Description Language
UDDI - Universal Description, Discovery, and Integration
2.10.2. Cách hoạt động
Một ứng dụng WS bao gồm 2 thành phần: Client và Server giao tiếp với nhau qua
giao thức HTTP.
Client gửi yêu cầu qua các lời gọi hàm thông qua HTTP Request đến Server
Server gửi các kết quả được thực thi các ở hàm thơng qua HTTP Request
Mơ hình hoạt động của ứng dụng WebService gồm 3 thành phần chính:
UDDI register: Cơng cụ giúp nhà phát triển WS cơng bố những thơng tin về
WebService của mình cho cộng đồng các nhà phát triển ứng dụng. Người
dùng sẽ dựa vào các thông tin này để sử dụng WebService trong ứng dụng
riêng của minh.
WebService: Chứa giao thức SOAP định dạng dữ liệu, tài liệu WSDL định
nghĩa các hàm trong WebService, XML để xây dựng ứng dụng phân tán.
Applicantion Client: Ứng dụng phía Client sử dụng WebService xây dựng
riêng cho mình
18
Cách thức hoạt động có thể mơ tả như sau: Đầu tiên, Applicantion Client cần truy
vấn các mẫu tin UDDI theo 1 thơng tin nào đó(chẳng hạn tên loại) để xác định
WebService cần tìm. Khi đã xác định được WebService cần cho ứng dụng, Client có thế
lấy thơng tin về địa chỉ của tài liệu WSDL của WebService này dựa trên mẫu tin UDDI.
Tài liệu WSDL sẽ mô tả cách thức liên lạc với WebService, định dạng gói tin truy vấn và
phản hồi. Dựa vào những thông tin này, Client có thể tạo những gói tin SOAP tương ứng
để liên lạc với Service.
19
CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
3.1. KHẢO SÁT HỆ THỐNG
3.1.1. Khảo sát hiện trạng thực tế của hệ thống xem phim online
Đơn vị khảo sát
Hình 3.1: Giao diện website
Trang web khảo sát: b/
Website xemphim.club chuyên cung cấp các bộ phim truyện của nhiều hãng sản
xuất phim hàng đầu trong nước và quốc tế, với nhiều đầu mục phim hấp dẫn, phim chiếu
rạp….Với đội ngũ chuyên nghiệp cùng nguồn phim HD chất lượng cao, phong phú, được
cập nhật liên tục.
Ngày nay, thời kỳ công nghệ thông tin phát triển nên ngồi nhu cầu bán đĩa phim,
cơng ty muốn lập một website xem phim trực tuyến. Yêu cầu đặt ra là cần xây dựng một
20