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

(Đồ án tốt nghiệp) ứng dụng ruby on rails xây dựng website cookgram

115 13 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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN ỨNG DỤNG RUBY ON RAILS XÂY DỰNG WEBSITE COOKGRAM GVHD: LÊ THỊ MINH CHÂU SVTH: TÔ NGỌC ÁNH MSSV:16126003 SVTH: MÃ NGỌC TÚ MSSV:16110254 SKL007072 Tp Hồ Chí Minh, tháng 07/2020 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP ỨNG DỤNG RUBY ON RAILS XÂY DỰNG WEBSITE COOKGRAM SVTH1: TÔ NGỌC ÁNH MSSV1: 16126003 SVTH2: MÃ NGỌC TÚ MSSV2: 16110254 Khóa: 2016 Nghành: CƠNG NGHỆ THƠNG TIN GVHD: THS LÊ THỊ MINH CHÂU Tp Hồ Chí Minh, tháng 07 năm 2020 CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc -*** - Tp Hồ Chí Minh, ngày tháng năm 2020 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên 1: Tô Ngọc Ánh Họ tên sinh viên 2: Mã Ngọc Tú Nghành: Công Nghệ Thông Tin Giảng viên hướng dẫn: ThS Lê Thị Minh Châu Ngày nhận đề tài: 25/02/2020 MSSV1: 16126003 MSSV2: 16110254 Lớp: 16110CLST4 ĐT: 090.2200.557 Ngày nộp đề tài: 01/07/2020 Tên đề tài: Ứng dụng ruby on rails xây dựng website cookgram Các số liệu, tài liệu ban đầu: Đồ án phát triển dựa đề tài Tiểu luận chuyên ngành Nội dung thực đề tài: - Ứng dụng Ruby on Rails xây dựng website chia sẻ công thức nấu ăn: Cải thiện, phát triển thêm chức hoàn thiện sản phẩm có từ tiểu luận chuyên nghành - Tìm hiểu cài đặt thêm chức như: Gợi ý ăn, tìm kiếm chatbot để hỗ trợ người dùng Sản phẩm: Webistie Cookgram – website chia sẻ công thức nấu ăn TRƯỞNG NGHÀNH GIẢNG VIÊN HƯỚNG DẪN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc ***** PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN MSSV1: 16126003 Họ tên sinh viên 1: Tô Ngọc Ánh MSSV2: 16110254 Họ tên sinh viên 2: Mã Ngọc Tú Nghành: Công Nghệ Thông Tin Tên đề tài: Ứng dụng ruby on rails xây dựng website cookgram Họ tên giảng viên hướng dẫn: ThS Lê Thị Minh Châu NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: (Bằng chữ: ) Tp Hồ Chí Minh, ngàytháng Giảng viên hướng dẫn (Ký & ghi rõ họ tên) CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc ***** PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN MSSV1: 16126003 Họ tên sinh viên 1: Tô Ngọc Ánh Họ tên sinh viên 2: Mã Ngọc Tú MSSV2: 16110254 Nghành: Công Nghệ Thông Tin Tên đề tài: Ứng dụng ruby on rails xây dựng website cookgram Họ tên giảng viên phản biện: NHẬN XÉT Về nội dung đề tài & khối lượng thực hiện: Ưu điểm: Khuyết điểm: Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: (Bằng chữ: ) Tp Hồ Chí Minh, ngàytháng Giảng viên phản biện (Ký & ghi rõ họ tên) LỜI CẢM ƠN Để hoàn thành tốt đề tài khóa luận tốt nghiệp này, ngồi nỗ lực từ thân, nhóm em cịn nhận quan tâm giúp đỡ, bảo tận tình nhiều cá nhân, tập thể Người mà chúng em không quên gửi lời cảm ơn sâu sắc Đầu tiên, nhóm em xin chân thành cảm ơn khoa Đào tạo Chất lượng cao – nghành Công nghệ thông tin, trường Đại học Sư Phạm Kỹ Thuật TP Hồ Chí Minh thầy Nguyễn Đăng Quang – trưởng nghành CNTT tạo điều kiện thuận lợi cho chúng em thực đề tài Chúng em xin gửi lời cảm ơn chân thành đến cô Lê Thị Minh Châu, người tận tình bảo hướng dẫn nhóm em suốt q trình thực đề tài Bên cạnh đó, chúng em xin gửi lời cảm ơn đến thầy cô giảng viên trường Đại học Sư Phạm Kỹ Thuật TP Hồ Chí Minh nói chung thầy giảng viên khoa Đào tạo Chất lượng cao, nghành Công nghệ thơng tin nói riêng, người giảng dạy, tích lũy cho chúng em kiến thức quý báu năm học vừa qua Đó tảng giúp chúng em làm nên đề tài tiền đề giúp chúng em tiến xa tương lai Dù cố gắng hoàn thành đề tài khóa luận yêu cầu, thời gian hạn hẹp khả hạn chế nên chắn nhóm khơng tránh khỏi nhiều thiếu sót Chúng em mong nhận thơng cảm tận tình bảo thầy bạn Nhóm chúng em lần xin chân thành cảm ơn Trân trọng i TÓM TẮT ĐỒ ÁN TỐT NGHIỆP Đề tài: ỨNG DỤNG RUBY ON RAILS XÂY DỰNG WEBSITE COOKGRAM Ngày với phát triển công nghệ thông tin, nhu cầu chia sẻ, cập nhật thông tin thiếu người sống ngày Từ đó, giới mang tên Mạng xã hội đời, nơi mà người, đặc biệt giới trẻ yêu thích Và với xu hướng đó, nhóm chúng em tạo Cookgram – mạng xã hội nho nhỏ chuyên nấu ăn, dành cho người có sở thích bếp núc cập nhật cơng thức mới, chia sẻ, giao lưu, kết bạn ii MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN PHIẾU NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN LỜI CẢM ƠN TÓM TẮT ĐỒ ÁN TỐT NGHIỆP MỤC LỤC DANH MỤC CÁC TỪ VIẾT TẮT DANH MỤC CÁC BẢNG BIỂU DANH MỤC CÁC BIỂU ĐỒ VÀ HÌNH ẢNH CHƯƠNG 1: TỔNG QUAN 1.1.Tính cấp thiết đề tài 1.1.1.Vấn đề đặt 1.1.2.Khảo sát trạng 1.1.3 1.2.Mục tiêu đề tài 1.3.Đối tượng nghiên cứu CHƯƠNG 2: YÊU CẦU HỆ THỐNG 2.1.Yêu cầu người dùng 2.2.Yêu cầu hệ thống 2.2.1.Yêu cầu chức 2.2.2.Yêu cầu phi chức CHƯƠNG 3: THIẾT KẾ HỆ THỐNG 3.1.Tổng quan hệ thống 3.1.1 3.1.2.Mơ hình MVC Ruby on rails 3.1.3 3.2.Database 3.2.1 iii 3.2.2 3.2.3 3.3.Sequence diagram 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.4.Đặc tả API 3.4.1 3.5.Thiết kế giao diện 3.5.1 3.5.2 3.5.3 CHƯƠNG 4: TRIỂN KHAI HỆ THỐNG 4.1.Nền tảng phát triển 4.1.1 4.1.2 4.2.Công nghệ sử dụng 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 CHƯƠNG 5: KIỂM THỬ VÀ CÀI ĐẶT HỆ THỐNG 5.1.Kiểm thử phần mềm 5.1.1 5.1.2 5.1.3 5.1.4 5.2.Cài đặt môi trường hệ thống iv 5.2.1 Cài đặt framework Ruby on Rails 79 5.2.2 Cài đặt Yarn 80 5.2.3 Cài đặt MySQL Server 80 5.2.4 Cấu hình tích hợp chatbot 80 5.2.5 Cài đặt chạy website Cookgram 81 CHƯƠNG 6: KẾT LUẬN 82 6.1 Tiến độ thực 82 6.2 Kết đạt 82 6.2.1 Kiến thức thực nghiệm 82 6.2.2 Ưu điểm nhược điểm 83 6.3 Thách thức 83 6.4 Kế hoạch phát triển tương lai 83 TÀI LIỆU THAM KHẢO v RECIPE_021 RECIPE_022 5.1.3.4 Testcase Trang cá nhân Điều kiện tiên quyết: Đã cài đặt đầy đủ môi trường phần mềm Thiết bị có kết nối internet Trang web: https://cooksocial.herokuapp.com/vn - Đăng nhập với tài khoản: ngoctutu1102@gmail.com/Xoadi998 Bảng 5.4 Testcase Trang cá nhân - Testcase ID PROFILE_01 PROFILE_02 PROFILE_03 PROFILE_04 PROFILE_05 PROFILE_06 PROFILE_07 PROFILE_08 PROFILE_09 PROFILE_010 PROFILE_011 PROFILE_012 PROFILE_013 PROFILE_014 PROFILE_015 PROFILE_016 PROFILE_017 PROFILE_018 PROFILE_019 PROFILE_020 PROFILE_021 PROFILE_022 PROFILE_023 76 5.1.4 Kết kiểm thử 5.1.4.1 Kết tổng quan Số testcase thực hiện: 85 Số testcase PASS: 80/85 Số testcasse FASLE: 05/85 Kết kiểm thử FASLE 5% 5.1.4.2 Kết chi tiết Với kết 100% PASS 50% FASLE (đã fix lần 1) 5.1.4.2.1 Testcase Đăng nhập Hình 5.2 Kết testcase Đăng nhập 77 5.1.4.2.2 Testcase Đăng công thức POST_01 POST_01 POST_01 POST_01 POST_0 POST _0 POST_0 POST_0 POST_0 Hình 5.3 Kết testcase Đăng cơng thức 5.1.4.2.3 Testcase Chi tiết cơng thức Testcase Chi tiết cơng thức Hình 5.4 Kết testcase Chi tiết công thức 78 5.1.4.2.4 Testcase Trang cá nhân PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE PROFILE Hình 5.5 Kết testcase Trang cá nhân 5.2 Cài đặt môi trường hệ thống 5.2.1 Cài đặt framework Ruby on Rails Bước 1: Cài đặt Ruby Truy cập http://rubyinstaller.org/downloads/ để tải gói cài đặt Ruby+Devkit 2.6.X (x64) tiến hành cài đặt Mở command prompt nhập ruby –v Nếu Ruby trả giá trị ruby 2.6.5, gõ gem -v Nếu Gem trả giá trị 3.0.6, Ruby cài đặt thành công Bước 2: Cài đặt Rails Mở command prompt nhập gem install rails –v để tải rails phiên 6.0.0 Kiểm tra cài đặt thành công cách nhập lệnh rails –v command promp 79 5.2.2 Cài đặt Yarn Bước 1: Cài đặt NodeJS để sử dụng Yarn Bước 2: Dùng lệnh npm install –g yarn để cài đật yarn 5.2.3 Cài đặt MySQL Server Download MySQL Community tại: https://downloads.mysql.com/archives/community/ Và tiến hành cài đặt theo hướng dẫn 5.2.4 Cấu hình tích hợp chatbot Bước 1: Truy cập vào https://dialogflow.cloud.google.com/ để tạo chatbot với kịch xây dựng trước Tải key file thông qua Json từ SERVICE ACCOUNT Google Dialogflow Bước 2: Truy cập tiếp vào https://www.kommunicate.io/ để tạo tài khoản cấu hình bot Bước 3: Từ Kommunicate chọn Bot Integrations chọn tiếp Google Dialogflow Bước 4: Upload file Json vừa tải vào website theo hướng dẫn 80 Bước 5: Vào tiếp Setting/Install/Web để tải file Javascript nhúng thẳng vào website Ví dụ: 5.2.5 Cài đặt chạy website Cookgram Bước 1: Tải source code https://github.com/NgocAnhs/Cookgram Bước 2: Mở command promt thư mục source code gõ lệnh sau: - gem install bundler - Bundle install - rails db: migrate: create - rails s Bước 3: Mở trình duyệt truy cập http://localhost:3000/ Hoặc truy cập website: https://cooksocial.herokuapp.com/vn 81 6.1 CHƯƠNG 6: KẾT LUẬN Tiến độ thực Bảng 6.1 Tiến độ công việc STT 1.1 1.2 1.3 2.1 2.2 3.1 3.2 4.1 4.2 4.3 5.1 5.2 6.1 Tên công việc Thiết kế Requirement Use case Class diagram Sequence Xây dựng Font-end Tìm hiểu thiết kế bảng vẽ UI Tiến hành code Xây dựng back-end Thiết kế ERD Code Machine Learning Tìm hiểu recommendation systems Collaborative Filtering Recommendation Search engine elasticsearch Google Dialogflow Xây dựng kịch bot Tích hợp bot vào website Báo cáo Viết báo cáo 6.2 Kết đạt 6.2.1 Kiến thức thực nghiệm 6.2.1.1 Về kiến thức Nắm cú pháp ngôn ngữ Ruby Hiểu cấu trúc cách vận hành ứng dụng xây dựng framework Ruby on Rails Kỹ phát triển webistie Biết sử dụng github để quản lý sourcecode trình làm việc nhóm Các thuật tốn Recommendation systems Tìm hiểu Google Dialogflow Google Clouds 6.2.1.2 Về thực nghiệm Áp dụng kiến thức tìm hiểu vào xây dựng website với chức năng: 82 Authenticate Authorize Quản lý công thức nấu ăn Quản lý thông tin cá nhân Tương tác với viết người dùng khác (Bình luận, like, bookmark, follow, đánh giá) Ứng dụng cơng nghệ Search engine elasticsearch chức tìm kiếm Dashboard admin quản lý Hệ thống đề xuất theo hành vi người dùng Áp dụng thuật toán Recommendation systems Tích hợp Q&A bot bot gợi ý 6.2.2 Ưu điểm nhược điểm 6.2.2.1 Ưu điểm Giao diện đơn giản, dễ sử dụng Đáp ứng đầy đủ chức Có bot hướng dẫn 6.2.2.2 Nhược điểm Code chưa tối ưu hóa Chatbot chưa lấy liệu từ database Chưa có kênh giao tiếp người dùng với người dùng Chưa có video hướng dẫn chi tiết 6.3 Thách thức - Tìm hiểu công nghệ Cách để thiết kế phần mềm cách chuyên nghiệp Xử lý hình ảnh chưa thật tối ưu 6.4 Kế hoạch phát triển tương lai - Thiết kế cải thiện giao diện, trải nghiệm người dùng Tạo kênh giao tiếp người dùng với người dùng Cải thiện công nghệ Search (tiếng Việt khơng dấu) Tích hợp bán ngun liệu Cải thiện tối ưu chatbot Đánh giá kèm hình ảnh Video hướng dẫn nấu ăn 83 TÀI LIỆU THAM KHẢO [1] Wikipedia, "Ruby on Rails," 06 2020 [Online] Available: https://en.wikipedia.org/wiki/Ruby_on_Rails [Accessed 20 06 2020] [2] H G., “MySQL gì: giải thích tường tận MySQL cho người bắt đầu,” hostinger, 17 05 2019 [Trực tuyến] Available: https://www.hostinger.vn/huong-dan/mysql-la-gi/ [Đã truy cập 20 06 2020] [3] BOSS, “Dialogflow – Các khái niệm,” Dialogflow Việt Nam, 18 11 2017 [Trực tuyến] Available: https://dialogflowvn.wordpress.com/2017/11/18/dialogflow-cac-khai-niem/ [Đã truy cập 20 04 2020] [4] N T K Chi, “Giới thiệu hệ thống gợi ý (Recommender systems Recommendation systems),” viblo.asia, 26 10 2017 [Trực tuyến] Available: https://viblo.asia/p/gioi-thieu-ve-he-thong-goi-y-recommender-systems-hoacrecommendation-systems-maGK78yOZj2 [Đã truy cập 15 05 2020] [5] t le, "Elasticsearch gì? Tìm hiểu Elasticsearch," Topdev.vn, [Online] Available: https://topdev.vn/blog/elasticsearch-la-gi/#cac-cong-ty-lon-dang-sudung [Accessed 18 06 2020] ... tài: Ứng dụng ruby on rails xây dựng website cookgram Các số liệu, tài liệu ban đầu: Đồ án phát triển dựa đề tài Tiểu luận chuyên ngành Nội dung thực đề tài: - Ứng dụng Ruby on Rails xây dựng website. .. THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP ỨNG DỤNG RUBY ON RAILS XÂY DỰNG WEBSITE COOKGRAM SVTH1: TÔ NGỌC ÁNH MSSV1: 16126003 SVTH2: MÃ NGỌC TÚ MSSV2: 16110254 Khóa:... tránh khỏi nhiều thiếu sót Chúng em mong nhận thông cảm tận tình bảo thầy bạn Nhóm chúng em lần xin chân thành cảm ơn Trân trọng i TÓM TẮT ĐỒ ÁN TỐT NGHIỆP Đề tài: ỨNG DỤNG RUBY ON RAILS XÂY DỰNG

Ngày đăng: 27/12/2021, 08:48

Xem thêm:

w