Xây dựng website hỗ trợ đăng ký tuyển sinh trực tuyến của Trường cao đẳng xây dựng Nam Định Xây dựng website hỗ trợ đăng ký tuyển sinh trực tuyến của Trường cao đẳng xây dựng Nam Định Xây dựng website hỗ trợ đăng ký tuyển sinh trực tuyến của Trường cao đẳng xây dựng Nam Định luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ──────── * ─────── Phạm Thị Vui XÂY DỰNG WEBSITE HỖ TRỢ ĐĂNG KÝ TUYỂN SINH TRỰC TUYẾN CỦA TRƯỜNG CAO ĐẲNG XÂY DỰNG NAM ĐỊNH LUẬN VĂN THẠC SĨ KỸ THUẬT NGÀNH CÔNG NGHỆ THÔNG TIN Hà Nội - Năm 2016 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ──────── * ─────── Phạm Thị Vui XÂY DỰNG WEBSITE HỖ TRỢ ĐĂNG KÝ TUYỂN SINH TRỰC TUYẾN CỦA TRƯỜNG CAO ĐẲNG XÂY DỰNG NAM ĐỊNH LUẬN VĂN THẠC SĨ KỸ THUẬT NGÀNH CÔNG NGHỆ THÔNG TIN Người hướng dẫn khoa học: TS Nguyễn Thanh Hùng Hà Nội - Năm 2016 MỤC LỤC Trang LỜI CẢM ƠN LỜI CAM ĐOAN DANH MỤC CÁC TỪ VIẾT TẮT DANH MỤC HÌNH ẢNH DANH MỤC CÁC BẢNG MỞ ĐẦU 10 Đặt vấn đề 10 Đối tượng nghiên cứu 11 Phạm vi phương pháp nghiên cứu 11 Nội dung luận văn 11 CHƯƠNG CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ ỨNG DỤNG 12 1.1 Ngơn ngữ lập trình Web PHP 12 1.1.1 Khái niệm PHP 12 1.1.2 Tại nên dùng PHP 12 1.1.3 Hoạt động PHP 13 1.1.4 Các loại thẻ PHP 14 1.1.5 Các kiểu liệu: 14 1.1.6 Biến giá trị 15 1.1.9 Biểu thức 15 1.1.10 Các cấu trúc lệnh 15 1.1.11 Hàm: 15 1.1.12 Các toán tử: 15 1.1.13 Lớp đối tượng 16 1.1.14 Tham chiếu: 16 1.1.15 MySQL PHP: 17 1.2 Cơ sở liệu MYSQL 18 1.2.1 Giới thiệu sở liệu: 18 1.2.2 Mục đích sử dụng sở liệu: 18 1.2.3 Các kiểu liệu sở liệu MySQL 19 1.2.4 Các thao tác cập nhật liệu: 21 1.2 Các hàm thông dụng MySQL 22 1.3 Tìm hiểu Cloud Computing 23 1.3.1 Khái niệm Cloud Computing 23 1.3.2 Tính chất 25 1.3.2 Các mơ hình Cloud Computing 27 1.3.3 Kiến trúc Cloud Computing 31 1.3.4 Lợi ích hạn chế Cloud Computing 33 1.4 Ứng dụng cloud computing tảng Google App Engine 37 1.4.1 Tổng quan Google App Engine 37 1.4.2 Mơ hình kiến trúc dịch vụ GAE 40 1.4.3 Hạn chế Google App Engine 44 CHƯƠNG PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 45 2.1 Phân tích tốn 45 2.2 Các yêu cầu toán 45 2.3 Mô tả hệ thống 46 2.4 Đặc tả chức 48 2.4.1 Chức đăng nhập admin: 48 2.4.2 Chức đăng ký tuyển sinh 49 2.5 Biểu đồ Use – Case 50 2.6 Phân tích chức lập biểu đồ Use – Case 50 2.6.1 Nhập liệu đầu vào 50 2.6.2 Đăng nhập trang admin 51 2.6.3 Tra cứu thông tin 51 2.7 Biểu đồ trình tự hoạt động hệ thống 52 CHƯƠNG CÀI ĐẶT VÀ KẾT QUẢ ĐẠT ĐƯỢC 55 3.1 Kết website server 55 3.1.1 Trang đăng ký tuyển sinh 55 3.1.2 Trang admin: 55 3.2 Một số Modul, mã nguồn Javascrip dùng chương trình 58 3.2.1 Kết nối liệu 58 3.2.2 Modul Javascript 59 3.2 Triển khai Google App Engine 59 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 61 TÀI LIỆU THAM KHẢO 62 LỜI CẢM ƠN Lời đầu tiên, em xin gửi lời cảm ơn lòng biết ơn sâu sắc đến TS Nguyễn Thanh Hùng tận tình hướng dẫn bảo em suốt trình thực luận văn tốt nghiệp Em xin chân thành cảm ơn thầy, cô trường Đại học Bách Khoa tạo điều kiện thuận lợi cho em học tập nghiên cứu Em xin gửi lời cảm ơn bạn lớp CNTT-2014B ủng hộ khuyến khích em suốt q trình học tập trường Cuối cùng, em xin gửi lời cảm ơn vơ hạn tới gia đình bạn bè, người bên cạnh, giúp đỡ động viên em suốt trình học tập suốt q trình thực khóa luận Em xin chân thành cảm ơn! LỜI CAM ĐOAN Tôi xin cam đoan luận văn thạc sĩ kỹ thuật với đề tài “Xây dựng website hỗ trợ đăng ký tuyển sinh trực tuyến trường Cao đẳng Xây dựng Nam Định” cơng trình nghiên cứu riêng tơi, khơng chép lại người khác Trong tồn nội dung luận văn, điều trình bày cá nhân tổng hợp từ nhiều nguồn tài liệu Tất nguồn liệu tham khảo có xuất xứ rõ ràng hợp pháp Tơi xin hồn tồn chịu trách nhiệm chịu hình thức kỷ luật theo quy định cho lời cam đoan Hà Nội, tháng 10 năm 2016 Tác giả luận văn Phạm Thị Vui DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Giải thích PHP Personal Home Page HTML Hyper Text Markup Language XML Extensible Markup Language CSDL Cơ sở liệu SQL Structured Query Language CPU Central Processing Unit GAE Google App Engine SaaS Software as a Service PaaS Platform as a Service 10 IaaS Infrastructure as a Service 11 CSS Cascading Style Sheet 12 JDK Java Development Kit 13 API Application Programming Interface STT DANH MỤC HÌNH ẢNH Hình 1.1 Sơ đồ hoạt động PHP 14 Hình 1.2 Mọi thứ tập trung vào đám mây 23 Hình 1.3 Hình ảnh Cloud Computing 24 Hình 1.4 ĐTĐM “di cư” nguồn tài nguyên lên mạng Internet 24 Hình 1.5 NIST Visual Model of Cloud Computing Definition 25 Hình 1.6 Các loại dịch vụ Cloud Computing 27 Hình 1.7 Mơ hình SPI 28 Hình 1.8 Các mơ hình triển khai điện tốn đám mây 29 Hình 1.9 Mơ hình Public Cloud 29 Hình 1.10 Mơ hình Private Cloud 30 Hình 1.11 Kết hợp Public Cloud Private Cloud 30 Hình 1.12 Triển khai ứng dụng Hybrid Cloud 31 Hình 1.13 Kiến trúc Cloud Computing 32 Hình 1.14: Những ưu điểm khuyết điểm ĐTĐM 36 Hình 1.15 Kiến trúc GAE 40 Hình 1.17 Sử dụng dịch vụ Memcache 42 Hình 1.18 Sử dụng dịch vụ URL Fetch 43 Hình 2.1 Quá trình hoạt động hệ thống User 47 Hình 2.2 Quá trình hoạt động hệ thống Admin 48 Hình 2.3 Biểu đồ Use - Case 50 Hình 2.4 Biểu đồ use case đăng ký 52 Hình 2.5 Biểu đồ Admin 53 Hình 3.1 Biểu đăng ký tuyển sinh 55 Hình 3.2 Biểu đăng nhập hệ thống 56 Hình 3.3 Biểu cập nhật thơng tin 56 DANH MỤC CÁC BẢNG Bảng 1.1 Kiểu liệu số nguyên 19 Bảng 1.2 Kiểu liệu số chấm động 19 Bảng 1.3 Kiểu liệu số nguyên 20 Bảng 1.4 Kiểu liệu số string 21 MỞ ĐẦU Đặt vấn đề Với phát triển mạnh công nghệ thông tin nay, Internet ngày giữ vai trò quan trọng lĩnh vực khoa học kĩ thuật đời sống Dĩ nhiên bạn nghe nói nhiều Internet, nói cách đơn giản, Internet tập hợp máy tính nối kết với nhau, mạng máy tính tồn cầu mà kết nối máy tính họ Với mạng Internet, tin học thật tạo nên cách mạng trao đổi thông tin lĩnh vực văn hóa, xã hội, trị, kinh tế Trong thời buổi ngày thông tin gần đưa lên mạng Internet người xem, cập nhật, trao đổi thơng tin giúp cho cơng việc nhanh tiện xác Mọi người giải trí, lưu trữ thơng tin cách an toàn dễ dàng … Trước nhu cầu cấp thiết Nhà trường (nơi em công tác) cần có cơng cụ giao tiếp ban tuyển sinh với học sinh, sinh viên Ban tuyển sinh có thơng chi tiết thí sinh nhằm tư vấn, giải đáp mối quan tâm thí sinh, đồng thời tiện lợi cho việc quản lý hồ sơ đăng ký tuyển sinh Bên cạnh đó, tạo đường nhanh nhất, dễ dàng nhất, xác thí sinh gửi thông tin đăng ký tuyển sinh đến nhà trường - thay cách gửi qua đường bưu điện thông thường Đặc biệt, người đăng ký dễ dàng truy cập tra cứu thông tin Bên cạnh đó, cách thức xây dựng hệ thống web truyền thống đáp ứng tốt cho yêu cầu toán tuyển sinh Tuy nhiên q trình phân tích, tìm hiểu, em có nhìn thấy số vấn đề sau: việc sử dụng hệ thống tuyển sinh tập trung vào giai đoạn ngắn năm, số lượng truy cập thời điểm thường cao, điều dẫn đến toán nâng cấp sở hạ tầng, mà cụ thể phía máy chủ Để đáp ứng tốt số lượng truy cập lớn chi phí cho server lớn, nhiên ngồi thời gian tuyển sinh, tài nguyên server không sử dụng hết, dẫn đến lãng phí 10 - Dịng kiện chính: Khi admin đăng nhập “tên đăng nhập” “mật khẩu” hình làm việc chức cập nhật xử lý thông tin admin Danh sách đăng ký Thêm sinh viên Dân tộc Học vấn Hệ đào tạo Ngành đào tạo Xếp loại tốt nghiệp - Dòng kiện phụ: Khi admin đăng nhập sai tên đăng nhập mật hình quay trạng thái ban đầu để đăng nhập 2.4.2 Chức đăng ký tuyển sinh Thí sinh sử dụng trang đăng ký để cung cấp thơng tin đăng ký tuyển sinh - Dịng kiện chính: Thí sinh đăng ký thông tin cá nhân, lựa chọn phương thức tuyển sinh, hệ đào tạo ngành đào tạo Sau bấm nút “Gửi thông tin đăng ký” Hệ thống thông báo “Bạn đăng ký thành công Xin cảm ơn!” - Dịng kiện phụ: Nếu thí sinh đăng ký bỏ trống số trường bắt buộc hệ thống thơng báo “Vui lịng điền vào trường này” 49 2.5 Biểu đồ Use – Case DangNhap Admin Thisinh DK_Thong Tin TraCuuThongTin CapNhatThongTin TraCuuLichSu Hình 2.3 Biểu đồ Use - Case 2.6 Phân tích chức lập biểu đồ Use – Case 2.6.1 Nhập liệu đầu vào Mô tả Use – Case: Tên Use Case Nhập liệu đầu vào Mục đích Mơ tả cách nhập thơng tin liệu đầu vào Tác nhân Tất tác nhân Dòng kiện - Ca sử dụng bắt đầu tác nhân truy cập để bắt đầu sử dụng hệ thống - Hệ thống yêu cầu tác nhân khai báo thông tin cá nhân - Tác nhân chọn hình thức xét tuyển- Hệ thống ghi lại q trình nhập liệu Dịng kiện - phụ Người dùng quay lại để thay đổi thơng tin nhập trước - Sau người dùng chọn “Gửi thơng tin đăng ký” vai trị ca sử dụng kết thúc 50 2.6.2 Đăng nhập trang admin Mô Tả Use Case : Tên Use Case Đăng nhập hệ thống Mục đích Mơ tả cách người sử dụng đăng nhập vào hệ thống Tác nhân Tác nhân admin Dòng kiện - Ca sử dụng bắt đầu tác nhân muốn đăng nhập vào hệ thống - Hệ thống yêu cầu tác nhân nhập tên đăng nhập mật đăng nhập - Tác nhân nhập tên đăng nhập mật đăng nhập - Hệ thống xác nhận tài khoản mật đăng nhập có hợp lệ khơng, khơng hợp lệ thực luồng A1 - Hệ thống ghi lại q trình đăng nhập Dịng kiện Luồng A1: Khi nhập sai tên đăng nhập mật đăng nhập phụ - Hệ thống hiển thị thông báo lỗi - Người sử dụng chọn đăng nhập lại hủy bỏ đăng nhập Khi ca sử dụng kết thúc 2.6.3 Tra cứu thông tin Mô Tả Use Case: Tên Use Case Tra cứu thông tin Mục đích Mơ tả cách người sử dụng tra cứu thông tin Tác nhân Tất tác nhân Dòng kiện - Ca sử dụng bắt đầu tác nhân sử dụng tra cứu thơng tin - Hệ thống yêu cầu tác nhân nhập họ tên; tháng năm sinh - Hiện thị giao diện cho phép tác nhân quan sát thông tin thứ tự danh sách đăng ký Dịng kiện - Hệ thống hiển thị thông báo lỗi bệnh nhân không nhập đủ phụ thông tin - Bệnh nhân sửa thơng tin sau nhập để tra cứu 51 2.7 Biểu đồ trình tự hoạt động hệ thống Biểu đồ dạng biểu đồ tương tác biểu diễn mối quan hệ đối tượng, đối tượng tác nhân theo thứ tự thời gian nhấn mạnh thứ tự thực tương tác : NguoiDung : W ChuongTrinh : B ChuongTrinh : Database 1.NhapThongTinDK() 2.DocThongTinDK () KiemTraThongTin() NhapKhoDuLieu() NhapThanhCong() 6.Thong bao NhapThanhCong() Hình 2.4 Biểu đồ use case đăng ký Mơ tả hoạt động: Thí sinh nhập thơng tin cá nhân (Họ tên, Ngày sinh, Giới tính, Dân tộc, Email, Số ĐT … ) - Thí sinh lựa chọn thông tin đăng ký xét tuyển (Phương thức xét tuyển, Hệ đào tạo, Ngành đào tạo…) - Hệ thống lấy liệu từ phía Server trả phía Client - Phía Client hiển thị thơng tin đầy đủ phương thức xét tuyển, hệ đào tạo ngành đào tạo - Hệ thống lưu trữ thông tin vào Cơ sở liệu, để phục vụ cho việc tra cứu sau 52 : :W :B 1.DangNhap() 2.DocThongTinTK () Kích hoạt NhapThanhCong() 6.HienChucNangAdmin RutTrich/Nhap/Sua/ ThongTinCanCapNhat 10 CapNhatDuLieu 11 CapNhatThanhcong 11 CapNhatThanhcong 12 ThongbaoThanhcong Hình 2.5 Biểu đồ Admin 53 : Mô tả hoạt động: - Admin điền thông tin tài khoản để đăng nhập - Hệ thống đọc thông tin từ sở liệu, sau trả hình đăng nhập Admin - Admin tiến hành chọn chức quản trị: ví dụ Trích rút thơng tin, cập nhật thông tin hệ đào tạo, ngành đào tạo… o Cập nhật thông tin tuyển sinh o Lấy danh sách thí sinh đăng ký o Trả kết hiển thị hình 54 CHƯƠNG CÀI ĐẶT VÀ KẾT QUẢ ĐẠT ĐƯỢC 3.1 Kết website server 3.1.1 Trang đăng ký tuyển sinh Trang chủ: Hiện thị thông tin đăng kí tuyển sinh Hình 3.1 Biểu đăng ký tuyển sinh 3.1.2 Trang admin: Màn hình khai báo đăng nhập 55 Hình 3.2 Biểu đăng nhập hệ thống Màn hình Cập nhật thơng tin chung Hình 3.3 Biểu cập nhật thơng tin chung 56 Màn hình Cập nhật ngành đào tạo Trích lọc danh sách thí sinh đăng ký: 57 Danh sách thí sinh đăng ký (file Excel) 3.2 Một số Modul, mã nguồn Javascrip dùng chương trình 3.2.1 Kết nối liệu 58 3.2.2 Modul Javascript 3.2 Triển khai Google App Engine Địa truy cập trang đăng ký tuyển sinh: https://b3ful68.appspot.com/ Các bước triển khai Step 1: Create app.yaml (app.yaml is the same routing file) runtime: php55 api_version: handlers: # Serve images as static resources - url: /(.+\.(gif|png|jpg|js|css))$ static_files: \1 upload: +\.(gif|png|jpg)$ application_readable: true - url: / script: index.php 59 - url: /admin/ script: admin/index.php - url: /admin/control_panel.php script: admin/control_panel.php - url: /admin/index.php script: admin/index.php Step2: Run project on Local #/usr/local/bin/dev_appserver.py dev_appserver.py app.yaml Step 3: Deploy PHP source to GAE cd PROJECT_SOURCE # Place contain app.yaml file gcloud app deploy [app.yaml] project [PROJECT_ID] -v [YOUR_VERSION_ID] #gcloud app deploy cdxdnd/app.yaml project b3ful68 -v v1 Step 4: Import SQL file to GOOGLE SQL Step 5: Connect PHP GAE with GOOGLE SQL Create Google SQL Instance Connect To GOOGLE SQl $link = mysql_connect(':/cloudsql/b3ful68:us-central1:ksmysql', 'root', '') 60 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Trong nội dung luận văn, tác giả trình bày kết nghiên cứu công nghệ thiết kế web PHP, MySQL Cloud Computer triển khai tảng Google App Engine, website tuyển sinh cho trường Cao đẳng Xây dưng Nam Định sử dụng từ năm học 2015 - 2016 Măc dù đạt số kết môi trường thử nghiệm môi trường thực tiễn, nhiên, luận văn cần khắc phục số vấn đề phát triển giai đoạn Cụ thể chế an tồn bảo mật thơng tin cịn sơ khai; triển khai hồn tồn Cloud computing để tiết kiệm chi phí thuê máy chủ Trong trình thực đề tài, thời gian, khả nghiên cứu làm việc thân cịn hạn chế, nên luận văn khơng tránh khỏi thiếu sót Em mong nhận góp ý thầy cô bạn bè, đặc biệt Thầy hội đồng chấm luận văn Nhà trường để luận văn hồn thiện 61 TÀI LIỆU THAM KHẢO A Sách [B01] Phạm Hữu Khang, Xây dựng ứng dụng Web PHP & MySQl_Nhà xuất Mũi Cà Mau, 2003: 12-15; 20-30; 67-74; 102-118; 128-134 [B02] Nguyễn Trường Sinh, Sử dụng PHP & MySQL thiết kế Web động, Nhà xuất Thống Kê, 2005: 5-20; 163-169; 177-192 [B03] Nguyễn Anh Tài, Nguyễn Phương Duy, Phạm Thanh Phương, Báo cáo đề tài Cloud Computing, Đại Học Bách Khoa Tp.HCM: 3-5;11-25 [B04] Nguyễn Đức Thiện (2011), Điện toán đám mây ứng dụng, Đại học Sư phạm - Đại học Quốc gia: 15-18; 22; 27-31 [B05] Borko Furht (2010), Hanbook of Cloud Computing, Springer: 21-45 [B06] Marcia Kaufman, Dr Fern Halper, 2012, Cloud Services for Dummies Judith Hurwitz ISBN: 11-18;127;196 [B07] Dan Sanderson (2012), Programming Google App Engine, O'Reilly Media: 421-486 [B08] Ian Foster, Yong Zhao, Ioan Raicu, Shiyong Lu, 2008, Cloud Computing and Grid Computing 360-Degree Compared, Grid Computing Environments Workshop 5-20 [B09] Rajkumar Buyya, Chee Shin Yeo, and Srikumar Venugopal, 2008, Market-Oriented Cloud Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities, International Conference on High Performance Computing 3-10 B Tạp chí [C01] Bareiss,R&Sedano, T., 2011, “Improving Mobile Application Development”, 2nd Annual Workshop on Software Engineering for Mobille Application Development, MobiCASE’11 Santa Monica, CA, USA, 2011 62 [C02] Ramzi N.Sansour, Nidal Kafri, Muath N.Sabha, 2014, A servey on mobile multimedia application development frameworks – Multimedia Computing and Systems (ICMCS), 2014 International Conference C Web Google, https://developers.google.com/appengine/, Google App Engine Google, Google App Engine Exercise Google, Sun Microsystems(2009), Sun Cloud Computing Google, https://developers.google.com/appengine/docs/java/gettingstarted/, Java Google https://congdonglaptrinhjava.wordpress.com/category/google-appengine 63 ... GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI ──────── * ─────── Phạm Thị Vui XÂY DỰNG WEBSITE HỖ TRỢ ĐĂNG KÝ TUYỂN SINH TRỰC TUYẾN CỦA TRƯỜNG CAO ĐẲNG XÂY DỰNG NAM ĐỊNH LUẬN VĂN THẠC SĨ... để xây dựng website hỗ trợ tuyển sinh trường Cao đẳng Xây dựng Nam Định Đối tượng nghiên cứu - Nghiên cứu quy chế tuyển sinh Bộ Giáo dục Đào tạo nói chung quy chế, hình thức tuyển sinh cụ thể trường. .. Tôi xin cam đoan luận văn thạc sĩ kỹ thuật với đề tài ? ?Xây dựng website hỗ trợ đăng ký tuyển sinh trực tuyến trường Cao đẳng Xây dựng Nam Định? ?? công trình nghiên cứu riêng tơi, khơng chép lại