XÂY DỰNG hệ THỐNG QUẢN lý CHO rạp CHIẾU PHIM CGV – hà nội

65 1.5K 7
XÂY DỰNG hệ THỐNG QUẢN lý CHO rạp CHIẾU PHIM CGV – hà nội

Đ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

LỜI CẢM ƠN Để đồ án đạt kết tốt đẹp, em nhận hỗ trợ, giúp đỡ nhiều quan, tổ chức, cá nhân Với tình cảm sâu sắc, chân thành, cho phép em bày tỏ lòng biết ơn đến tất cá nhân quan tạo điều kiện giúp đỡ trình học tập nghiên cứu đề tài Lời em xin gửi lời cảm ơn đến thầy Trần Hải Thanh - giảng viên môn Khoa Học Máy Tính, người tạo điều kiện cho em nghiên cứu đề tài tận tình hướng dẫn em để hồn thành tốt đồ án XÂY DỰNG HỆ THỐNG QUẢN LÝ CHO RẠP CHIẾU PHIM CGV – HÀ NỘI Em xin bày tỏ lòng biết ơn đến ban giám đốc công ty 2NF anh Nguyễn Bảo Ngọc tạo điều kiện giúp đỡ hỗ trợ em suốt trình nghiên cứu đề tài Với điều kiện thời gian kinh nghiệm hạn chế sinh viên, đồ án tránh thiếu sót em mong nhận bảo, đóng góp ý kiến thầy để em có điều kiện bổ sung, nâng cao kiến thức mình, để phục vụ tốt công tác thực tế sau Em xin chân thành cảm ơn! Thái Nguyên, ngày tháng 05 năm 2017 Sinh viên thực NÔNG TRUNG KIÊN LỜI CAM ĐOAN Em xin cam đoan đồ án trình nghiên cứu độc lập riêng em Các số liệu sử dụng phân tích đồ án có nguồn gốc rõ ràng, công bố theo quy định Các kết nghiên cứu đồ án em tự tìm hiểu, phân tích cách trung thực, khách quan phù hợp với thực tế Các kết chưa công bố nghiên cứu khác Thái Nguyên, ngày tháng 05 năm 2017 Sinh viên thực NÔNG TRUNG KIÊN MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC MỞ ĐẦU DANH MỤC HÌNH ẢNH CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 Giới thiệu Node.js Node.js gì? Đặc điểm Node.js Các thành phần quan trọng Node.js 10 Kiến trúc Node.js 10 Node.js sử dụng đâu 11 1.2 Giới thiệu Module Node.js 12 Module Node.js? 12 Global Scope Node.js 12 1.3 Hệ thống quản lý gói NPM 13 Định dạng gói 13 Tìm gói 14 Một số lệnh NPM 15 1.4 Xây dựng ứng dụng MVC với Express Node.js 17 EventEmitter 17 HTTP – Server 18 Web Server 18 Web Framework Express 19 Đối tượng request respone Node.js 20 Mơ hình MVC Express 21 1.5 Lưu trữ liệu MySQL với Sequelize 23 MySQL 23 Sequelize 24 1.6 Sơ lược Android, Socket Socket.IO 29 Android 29 Node.js Socket.IO 33 CHƯƠNG 2: PHÂN TÍCH VÀ XÂY DỰNG GIẢI PHÁP 36 2.1 Phân tích u cầu lựa chọn giải pháp cơng nghệ 36 Phân tích yêu cầu 36 Giải pháp công nghệ 36 2.2 Phân tích hệ thống “Quản lý phim cho rạp CGV” 36 Quy trình xử lý hệ thống 36 Các tác nhân Use Case hệ thống 37 Thiết kế yêu cầu chức 42 Biểu đồ lớp 51 Thiết kế sở liệu 52 CHƯƠNG 3: HỆ THỐNG QUẢN LÝ PHIM CHO RẠP CHIẾU PHIM CGV 53 3.1 Biểu đồ hoạt động 53 3.2 Giao diện phần quản lý 54 3.3 Giao diện phần khách hàng 59 KẾT LUẬN 64 TÀI LIỆU THAM KHẢO 65 MỞ ĐẦU CJ CGV trực thuộc CJ Group - tập đoàn kinh tế đa ngành lớn Hàn Quốc tập đồn có mặt 21 quốc gia toàn cầu CJ CGV top cụm rạp chiếu phim lớn toàn cầu nhà phát hành, cụm rạp chiếu phim lớn Việt Nam với mục tiêu trở thành hình mẫu cơng ty điển hình đóng góp cho phát triển ngành cơng nghiệp điện ảnh Việt Nam CJ CGV có quan tâm đến đối tượng khán giả khu vực khơng có điều kiện tiếp cận nhiều với điện ảnh, cách tạo hội để họ thưởng thức phim chất lượng cao thông qua chương trình cộng đồng Trăng cười Điện ảnh cho người Nhận thấy tiềm lớn CJ CGV đời sống xã hội tính phổ biến lĩnh vực cơng nghệ thơng tin lĩnh vực quản lí rạp chiếu phim, cơng ty giao cho em đề tài nhằm yêu cầu xây dựng lại hệ thống quản lý rạp chứng tỏ khả áp dụng kiến thức chuyên ngành vào thực tế để em hồn thành trình học tập nhận tốt nghiệp sau hồn thành đề án Sau q trình tìm hiểu nghiên cứu thực tế, em định lựa chọn Node.js để xây dựng hệ thống máy chủ, Socket.IO để xử lí đồng thời gian thực Android để xây dựng ứng dụng cho người dùng Và lý mà em chọn đề tài: “XÂY DỰNG HỆ THỐNG QUẢN LÝ CHO RẠP CHIẾU PHIM CGV – HÀ NỘI” Em trình bày đề tài nội dung sau: CHƯƠNG 1: CƠ SỞ LÝ THUYẾT CHƯƠNG 2: PHÂN TÍCH VÀ XÂY DỰNG GIẢI PHÁP CHƯƠNG 3: HỆ THỐNG QUẢN LÝ PHIM CHO RẠP CHIẾU PHIM CGV DANH MỤC HÌNH ẢNH Hình 1: Các thành phần Node.js 10 Hình 2: Cấu trúc ứng dụng web 19 Hình 3: Mơ hình MVC Node.js 21 Hình 4: Cấu trúc thư mục dự án Node.js MVC 23 Hình 5: Sơ đồ hệ thống 36 Hình 6: Biểu đồ Use Case tổng quát 38 Hình 7: Biểu đồ Use Case “Quản lý đặt vé” 38 Hình 8: Biểu đồ Use Case “Quản lý người dùng” 39 Hình 9: Biểu đồ Use Case “Quản lý giá vé” 39 Hình 10: Biểu đồ Use Case “Quản lý lịch chiếu” 39 Hình 11: Biểu đồ Use Case “Quản lý in vé” 40 Hình 12: Biểu đồ Use Case “Quản lý phim” 40 Hình 13: Biểu đồ Use Case “Thống kê vé bán theo phim” 40 Hình 14: Biểu đồ Use Case “Xác thực tài khoản” 41 Hình 15: Sơ đồ lớp 51 Hình 16: Cơ sở liệu 52 Hình 17: Sơ đồ hoạt động đặt vé 53 Hình 18: Giao diện quản lý đặt vé 54 Hình 19: Giao diện chọn ghế 54 Hình 20: Giao diện quản lý phim 55 Hình 21: Giao diện quản lý giá vé 55 Hình 22: Giao diện quản lý khách hàng 56 Hình 23: Giao diện tạo lịch chiếu 56 Hình 24: Giao diện danh sách lịch chiếu 57 Hình 25: Giao diện thống kê vé bán 57 Hình 26: Giao diện in vé 58 Hình 27: Giao diện trang chủ 59 Hình 28: Giao diện bảng điều hướng 60 Hình 29: Giao diện đăng nhập 60 Hình 30: Giao diện đăng ký tài khoản 61 Hình 31: Giao diện danh sách phim 61 Hình 32: Giao diện chi tiết phim 62 Hình 33: Giao diện lịch chiếu phim 62 Hình 34: Giao diện chọn ghế 63 Hình 35: Giao diện xác nhận đặt vé 63 CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 Giới thiệu Node.js Node.js gì? Node.js tảng phía máy chủ xây dựng dựa Javascript Engine (V8 Engine) Node.js phát triển Ryan Dahl năm 2009 phiên cuối v0.10.36 Định nghĩa Node.js tài liệu thức sau: Node.js tảng dựa vào Chrome Javascript runtime để xây dựng ứng dụng nhanh, có độ lớn Node.js sử dụng phần phát sinh kiện (eventdriven), mơ hình non-blocking I/O để tạo ứng dụng nhẹ hiệu cho ứng dụng liệu thời gian thực chạy thiết bị phân tán Node.js mã nguồn mở, đa tảng cho phát triển ứng dụng phía Máy chủ ứng dụng liên quan đến mạng Ứng dụng Node.js viết Javascript chạy mơi trường Node.js hệ điều hành Window, Linux Node.js cung cấp cho module Javascript đa dạng, đơn giản hóa phát triển ứng dụng web sử dụng Node.js với phần mở rộng Đặc điểm Node.js Dưới vài đặc điểm quan trọng biến Node.js trở thành lựa chọn hàng đầu phát triển phần mềm: - Không đồng Phát sinh kiện (Event Driven): Tất các APIs thư viện Node.js không đồng bộ, nghĩa khơng blocking (khóa) Nó cần thiết Node.js khơng đợi API trả dự liệu Máy chủ chuyển sang API sau gọi có chế thơng báo Sự kiện Node.js giúp Máy chủ nhận phản hồi từ API gọi trước - Node cho phép thực giao thức mạng cấp độ thấp cách dễ dàng Chẳng hạn Node có module HTTP cho phép xây dựng webserver với vài dòng code, nhiên mà phải học nhiều thứ học header gói tin HTTP, khơng PHP vốn module mở rộng webserver có sẵn (như Apache hay NginX…) – tức PHP dễ dùng Node lại không cho phép coder thực cơng việc cấp độ thấp Tuy nhiên Node.js framework mã nguồn mở, mạng có số thư viện hỗ trợ viết webserver nhanh dễ cho coder - Các tiến trình đơn giản hiệu cao: Node.js sử dụng mơ hình luồng đơn (single thread) với kiện lặp Các chế kiện giúp Máy chủ trả lại phản hồi với cách không khóa tạo cho Máy chủ hiệu cao ngược lại với cách truyền thống tạo số lượng luồng hữu hạn để quản lý request Node.js sử dụng chương trình đơn luồng chương trình cung cấp dịch vụ cho số lượng request nhiều so với Server truyền thống Apache HTTP Server - Không đệm: Ứng dụng Node.js không lưu trữ liệu buffer - Có giấy phép: Node.js phát hành dựa vào MIT License - Có trình CLI (giao diện dòng lệnh) - Chạy theo mơ hình REPL(Read Eval Print Loop) : hiểu nôm na là: Đọc Đánh giá - In - Lặp biểu diễn mơi trường máy tính hình console Linux shell nơi gõ dòng lệnh hệ thống trả kết Node.js có mơi trường REPL Nó để thực tác vụ mong muốn - Có hàm quản lý tiến trình - Có đối tượng hỗ trợ làm việc với liệu nhị phân - Hỗ trợ TCP UDP - Hỗ trợ phân giải DNS - Hỗ trợ HTTP HTTPS - Có thể truy cập file thư mục Các thành phần quan trọng Node.js Lược đồ mô tả thành phần quan trọng Node.js mà thảo luận chương Hình 1: Các thành phần Node.js Kiến trúc Node.js Node sử dụng kiển trúc lập trình hướng kiện khơng đồng bộ, tính làm cho ứng dụng Node chạy với hiệu suất cao Chẳng hạn ứng dụng bình thường chương trình viết C++ viết chương trình để đọc liệu, chương trình phải dừng lại đoạn code đọc liệu để chờ có liệu để đọc, muốn chương trình tiếp tục vừa chạy cơng việc khác vừa đọc liệu phải dùng đến đa luồng (multi-threading), nhiên việc dùng đa luồng phức tạp làm chậm máy chủ Node sử dụng luồng nhất, câu lệnh nhập xuất không cần phải chờ cách sử dụng Event Loop, lần có kiện xảy chuyển liệu kiện đến hàm xử lý tương ứng, hàm xử lý chạy vòng lặp kiện tiếp tục nhận kiện chuyển đến hàm xử lý tương ứng khác Ví dụ giả sử có dòng code lấy liệu từ sở liệu sau: result = query('SELECT * from db'); // xử lý result 10 Biểu đồ lớp Hình 15: Sơ đồ lớp 51 Thiết kế sở liệu Hình 16: Cơ sở liệu 52 CHƯƠNG 3: HỆ THỐNG QUẢN LÝ PHIM CHO RẠP CHIẾU PHIM CGV 3.1 Biểu đồ hoạt động Hình 17: Sơ đồ hoạt động đặt vé 53 3.2 Giao diện phần quản lý Hình 18: Giao diện quản lý đặt vé Hình 19: Giao diện chọn ghế 54 Hình 20: Giao diện quản lý phim Hình 21: Giao diện quản lý giá vé 55 Hình 22: Giao diện quản lý khách hàng Hình 23: Giao diện tạo lịch chiếu 56 Hình 24: Giao diện danh sách lịch chiếu Hình 25: Giao diện thống kê vé bán 57 Hình 26: Giao diện in vé 58 3.3 Giao diện phần khách hàng Hình 27: Giao diện trang chủ 59 Hình 28: Giao diện bảng điều hướng Hình 29: Giao diện đăng nhập 60 Hình 30: Giao diện đăng ký tài khoản Hình 31: Giao diện danh sách phim 61 Hình 32: Giao diện chi tiết phim Hình 33: Giao diện lịch chiếu phim 62 Hình 34: Giao diện chọn ghế Hình 35: Giao diện xác nhận đặt vé 63 KẾT LUẬN Ưu điểm: Sau khoảng thời gian nghiên cứu, tìm hiểu Node.js, Socket.IO, Android kiến thức liên quan, em xây dựng thành công hệ thống đáp ứng nhu cầu mà đề tài “XÂY DỰNG HỆ THỐNG QUẢN LÝ CHO RẠP CHIẾU PHIM CGV – HÀ NỘI” đặt Sau thực xong đề tài, thân em đạt số kết định sau: - Nắm vững kiến thức máy chủ Node.js, cách thức tương tác máy chủ khách hàng đồng thời tự xây dựng hệ thống máy chủ riêng cho cửa hàng thông qua máy chủ vật lý có - Hiểu mơ hình tương tác thời gian thực thơng qua việc tìm hiểu Socket Socket.IO - Củng cố kiến thức học trường - Nâng cao khả tìm kiếm tài liệu, thông tin kho liệu khổng lồ Google - Phát ứng dụng thêm kiến thức lạ, bổ ích Hạn chế: Nhìn chung với đạt được, đề tài hoàn thành tốt mục tiêu đề Tuy nhiên đề tài tồn số hạn chế sau: - Chưa cung cấp đầy đủ cho khách hàng hệ thống quản lý toàn diện, số chức cần nghiên cứu chỉnh sửa thêm để nâng cao trải nghiệm người dùng đáp ứng nhu cầu chức nghiệp vụ - Giao diện chưa bắt mắt, cần thiết kế đẹp mắt Định hướng phát triển - Hoàn thiện hệ thống cách toàn diện để cung cấp giải pháp tổng thể cho việc quản lý rạp chiếu phim, hiệu chỉnh chức năng, giao diện làm mượt chương trình để đem lại trải nghiệm tốt cho người dùng 64 TÀI LIỆU THAM KHẢO [1] Basarat Ali Syed, 2014 Beginning Node.js O’Reilly Media, Inc., Sebastopol, CA, USA [2] Mike Cantelon & TJ Holowaychuck, 2015 Node.js IN Action MANNING, O’Reilly Media, Inc., Sebastopol, CA, USA [3] Sandro Pasquali, November 2013 Mastering Node.js PACKT O’Reilly Media, Inc., Sebastopol, CA, USA [4] Pedro Teixeira, 2012 PROFESSIONAL Node.js® BUILDING JAVASCRIPTBASED SCALABLE SOFTWARE Sons, Inc., Sebastopol, CA, USA [5] Alex Young and Marc Harter, 2014 Node.js in Practice Noordhuis, Inc., Sebastopol, CA, USA [6] Azat Mardan, 2014 Practical Node.js: Building Real-World Scalable Web Apps O’Reilly Media, Inc., Sebastopol, CA, USA [7] Guillermo Rauch, 2012 Smashing Node.js: JavaScript Everywhere O’Reilly Media, Inc., Sebastopol, CA, USA [8] George Ornbo, 2012 Sams Teach Yourself Node.js in 24 Hours O’Reilly Media, Inc., Sebastopol, CA, USA [9] Edward Jiang, 2016 Node.js and Express for Android & iOS O’Reilly Media, Inc., Sebastopol, CA, USA [10] GitHub, 2017 Sequelizejs in Node.js in http://docs.sequelizejs.com/en/v3/ [11] CJ CGV, https://vi.wikipedia.org/wiki/CJ_CGV [12] Android Developers, https://developer.android.com/ [13] Stack Overflow, https://stackoverflow.com/ 65 ... người dùng Và lý mà em chọn đề tài: “XÂY DỰNG HỆ THỐNG QUẢN LÝ CHO RẠP CHIẾU PHIM CGV – HÀ NỘI” Em trình bày đề tài nội dung sau: CHƯƠNG 1: CƠ SỞ LÝ THUYẾT CHƯƠNG 2: PHÂN TÍCH VÀ XÂY DỰNG GIẢI PHÁP... 52 CHƯƠNG 3: HỆ THỐNG QUẢN LÝ PHIM CHO RẠP CHIẾU PHIM CGV 53 3.1 Biểu đồ hoạt động 53 3.2 Giao diện phần quản lý 54 3.3 Giao diện phần khách hàng ... THUYẾT CHƯƠNG 2: PHÂN TÍCH VÀ XÂY DỰNG GIẢI PHÁP CHƯƠNG 3: HỆ THỐNG QUẢN LÝ PHIM CHO RẠP CHIẾU PHIM CGV DANH MỤC HÌNH ẢNH Hình 1: Các thành phần Node.js 10 Hình 2: Cấu trúc ứng dụng web

Ngày đăng: 02/11/2017, 14:44

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan