1. Trang chủ
  2. » Tất cả

(Đồ án hcmute) tìm hiểu xây dựng ứng dụng tìm kiếm nhà trọ trên di động

112 2 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 TÌM HIỂU XÂY DỰNG ỨNG DỤNG TÌM KIẾM NHÀ TRỌ TRÊN DI ĐỘNG GVHD: LÊ VĂN VINH SVTH: LÊ HỒNG CƠNG MSSV: 16110286 SVTH: NGUYỄN QUANG THỌ MSSV: 16110476 SKL007098 Tp Hồ Chí Minh, năm 2020 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN BỘ MƠN CƠNG NGHỆ PHẦN MỀM  LÊ HỒNG CÔNG – 16110286 NGUYỄN QUANG THỌ – 16110476 Đề tài: TÌM HIỂU XÂY DỰNG ỨNG DỤNG TÌM KIẾM NHÀ TRỌ TRÊN DI ĐỘNG KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT GIÁO VIÊN HƯỚNG DẪN TS LÊ VĂN VINH KHOÁ 2016 – 2020 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN BỘ MƠN CƠNG NGHỆ PHẦN MỀM  LÊ HỒNG CƠNG – 16110286 NGUYỄN QUANG THỌ – 16110476 Đề tài: TÌM HIỂU XÂY DỰNG ỨNG DỤNG TÌM KIẾM NHÀ TRỌ TRÊN DI ĐỘNG KHÓA LUẬN TỐT NGHIỆP KỸ SƯ CNTT GIÁO VIÊN HƯỚNG DẪN TS LÊ VĂN VINH KHOÁ 2016 – 2020 an ĐH SƯ PHẠM KỸ THUẬT TP.HCM KHOA CƠNG NGHỆ THƠNG TIN CỘNG HỒ 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ÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên 1: Lê Hồng Cơng MSSV 1: 16110286 Họ tên Sinh viên 2: Nguyễn Quang Thọ MSSV 2: 16110476 Ngành: Công nghệ thông tin Tên đề tài: Tìm hiểu xây dựng ứng dụng tìm kiếm nhà trọ di động Họ tên Giáo viên hướng dẫn: TS Lê Văn Vinh NHẬN XÉT Về nội dung đề tài khối lượng công việc: ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Ưu điểm: ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Khuyết điểm: ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Thành phố Hồ Chí Minh, ngày tháng Giáo viên hướng dẫn (Ký ghi rõ họ tên) an năm 2020 ĐH SƯ PHẠM KỸ THUẬT TP.HCM KHOA CƠNG NGHỆ THƠNG TIN CỘNG HỒ 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ÁO VIÊN PHẢN BIỆN Họ tên Sinh viên 1: Lê Hồng Cơng MSSV 1: 16110286 Họ tên Sinh viên 2: Nguyễn Quang Thọ MSSV 2: 16110476 Ngành: Công nghệ thông tin Tên đề tài: Tìm hiểu xây dựng ứng dụng tìm kiếm nhà trọ di động Họ tên Giáo viên phản biện: NHẬN XÉT Về nội dung đề tài khối lượng công việc: ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Ưu điểm: ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Khuyết điểm: ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Thành phố Hồ Chí Minh, ngày tháng Giáo viên phản biện (Ký ghi rõ họ tên) an năm 2020 LỜI CÁM ƠN Lời đầu tiên, cho phép nhóm em gửi lời cảm ơn chân thành đến thầy Lê Văn Vinh, người phụ trách hướng dẫn nhóm chúng em việc thực hoàn thành báo cáo cách tốt hiệu Những dạy, nhật xét, đóng góp ý kiến từ thầy góp phần quan trọng việc giúp chúng em hoàn hành đề tài cách hoàn thiện Cảm ơn thầy cô khoa Công Nghệ Thông Tin nhiệt tình, cống hiến, tận tình giải đáp thắc mắc chúng em Bên cạnh đó, chúng em xin cảm ơn bạn khóa, anh chị khóa không ngần ngại chia sẻ thông tin, kinh nghiệm bổ ích giúp chúng em hồn thiện đề tài Báo cáo thực khoảng thời gian có hạn, với hạn chế mặt kiến thức nên việc sai sót điều khơng thể tránh khỏi q trình thực Chúng em kính mong nhận lời nhận xét, ý kiến đóng góp q báo từ q Thầy Cơ để chúng em có thêm kinh nghiệm hồn thành tốt đề tài sau Chúng em xin chân thành cảm ơn! ii an LỜI CAM ĐOAN Chúng xin cam đoan: Những nội dung khóa luận tốt nghiệp chúng tơi thực dẫn trực tiếp thầy Lê Văn Vinh Mọi tham khảo dùng khóa luận tốt nghiệp trích dẫn rỏ ràng tên tác giả, tên cơng trình, thời gian, địa điểm cơng bố Mọi chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, xin chịu hồn tồn trách nhiệm Thành phố Hồ Chí Minh, ngày tháng Đại diện nhóm (Ký ghi rõ họ tên) iii an năm 2020 ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN ******** ĐỀ CƯƠNG KHĨA LUẬN TỐT NGHIỆP Họ tên sinh viên thực 1: Lê Hồng Cơng MSSV: 16110286 Họ tên sinh viên thực 2: Nguyễn Quang Thọ MSSV: 16110476 Khóa luận tốt nghiệp: Tìm hiểu xây dựng ứng dụng tìm kiếm nhà trọ di động Giáo viên hướng dẫn: Tiến sĩ Lê Văn Vinh Nhiệm vụ tiểu luận: Lý thuyết: - Lý thuyết liên quan đến dịch vụ nhà trọ - Nghiên cứu cách viết RESTful API cách ứng dụng - Cách sử dụng MySQL ứng dụng đề tài - Sử dụng ExpressJS để thực cơng việc bên server-side - Python: tìm hiểu Django - Nghiên cứu Maps SDK, Admob, Google play - Tìm hiểu XMPP, WebRTC, Quickblox Thực hành: - Xây dựng ứng dụng tìm kiếm nhà trọ di động cho người dùng website quản lý cho admin iv an PHÂN CƠNG CƠNG VIỆC Bảng phân cơng theo tuần Bảng phân công theo tuần STT Mô tả công việc Ngày bắt Ngày kết Ngày bắt Ngày kết đầu thúc đầu thúc (Dự kiến) (Thực tế) (Dự kiến) (Thực tế) Chọn đề tài, lên ý 17/3/2020 15/04/2020 17/03/2020 14/04/2020 tưởng, khảo sát trạng, mô hình hóa u cầu, vẽ use case Hồn thiện usecase, vẽ 16/04/2020 13/05/2019 16/04/2020 13/05/2020 sequence diagram, class diagram, lược đồ sở liệu, thiết kế UI(thiết kế UI, danh sách xử lý, sơ đồ luồng, thuật toán), Tìm liệu nhập liệu cho ứng dụng thiết kế UI cho app, 14/05/2020 27/05/2020 14/05/2020 27/05/2020 web, viết api code xử lý thiết kế UI cho app, 28/05/2020 24/06/2020 28/05/2020 24/06/2020 web, viết api code xử lý Báo cáo chức 25/06/2020 01/07/2020 25/06/2020 01/07/2020 hồn thành phân cơng viết báo cáo Hoàn thành báo cáo 02/07/2020 02/08/2020 02/07/2020 02/08/2020 ứng dụng Báo cáo tổng kết nội dung thực v an Bảng phân công cá nhân Sinh viên thực Mã số sinh viên Phân cơng cơng việc Lê Hồng Cơng 16110286 - Khảo sát trạng - Thiết kế CSDL - Viết api cho app - Viết WebSite cho Admin - Tìm hiểu thuật toán gợi ý sản phẩm cho người dùng (recommendation system) Nguyễn Quang Thọ - Khảo sát trạng 16110476 - Xử lý api cho app - Viết ứng dụng app Android - Nghiên cứu Maps SDK, Admob, Google play - Tìm hiểu XMPP, WebRTC, Quickblox Chữ ký sinh viên 1: …………………………… Chữ ký sinh viên 2: …………………………… Tp Hồ Chí Minh, ngày……tháng……năm 20… Ý kiến giáo viên hướng dẫn Người viết đề cương (Ký & ghi rõ họ tên) (Ký & ghi rõ họ tên) vi an 5.2.4 Giao diện quản lý nhà trọ Hình 57: Hình ảnh giao diện quản lý nhà trọ Admin Mô tả chi tiết: STT Tên xử lý Kiểu đối tượng Diễn giải Tìm kiếm Textbox Tìm kiếm liệu nhập vào Hủy Button Hủy đăng Xóa Button Xóa đăng Chuyển trang trước Button Chuyển trang trước 80 an Chuyển trang Chuyển trang sau Button Bảng 40: Bảng mô tả chi tiết giao diện quản lý nhà trọ Admin 5.2.5 Giao diện quản lý User Hình 58: Hình ảnh giao diện quản lý user Admin Mô tả chi tiết: STT Tên xử lý Kiểu đối tượng Diễn giải Tìm kiếm Phân liệu Selectbox Chọn hiển thị số lượng liệu theo mong muốn Xóa Button Xóa User Phân trang Button Chuyển trang trước Phân trnag Button Chuyển trang sau Textbox Tìm kiếm liệu nhập vào Bảng 41: Bảng mô tả chi tiết giao diện quản lý user Admin 81 an 5.2.6 Giao diện quản lý Admin Hình 59: Hình ảnh giao diện quản lý admin SuperAdmin Mô tả chi tiết: STT Tên xử lý Kiểu đối tượng Diễn giải Tìm kiếm Phân liệu Selectbox Chọn hiển thị số lượng liệu theo mong muốn Xóa Button Xóa User Phân trang Button Chuyển trang trước Phân trang Button Chuyển trang sau Thêm admin Button Textbox Tìm kiếm liệu nhập vào Thêm admin Bảng 42: Bảng mô tả chi tiết giao diện quản lý admin SuperAdmin 82 an 5.2.7 Giao diện thêm Admin Hình 60: Hình ảnh giao diện thêm admin SuperAdmin Mô tả chi tiết: STT Tên xử lý Kiểu đối tượng Diễn giải Ghi tên admin Textbox Dùng để nhập tên admin Nhập ngày sinh Textbox Dùng để nhập ngày sinh Nhập quận Selectbox Dùng để nhập quận Nhập số điện thoại Textbox Dùng để nhập số điện thoại Nhập địa Textbox Dùng để nhập địa Nhập thành phố Textbox Dùng để nhập thành phố Phân quyền admin Selectbox Dùng để phân quyền admin Nhập username Textbox Dùng để nhập username 83 an Nhập password Textbox Dùng để nhập password 10 Thêm admin Button Thêm admin Bảng 43: Bảng mô tả chi tiết giao diện thêm admin SuperAdmin 5.3 Triển khai hệ thống gợi ý cho người dùng (RS) [5] 5.3.1 Ứng dụng thuật toán Collaborative Filtering Recommend System Pearson correlation Thuật toán Pearson correlation 5.3.1.1 ⁕ Thuật toán Pearson correlation sử dụng rộng rãi nghiên cứu, thuật toán phổ biến cho collaborative filtering ⁕ Pearson correlation hay gọi hệ số tương quan pearson, dùng để đo lường mức độ tương quan người dùng (và thuộc tính họ, chẳng hạn báo đọc từ sưu tập blog) tính tốn xác với pearson correlation Nguyên tắc thuật toán đo lường sư phụ thuộc tuyến tính hai biến (hoặc người dùng) Do đó, phân tích tương quan Pearson cịn gọi phân tích hồi quy đơn giản Tính tốn tương quan hai người dùng 5.3.1.2 ⁕ Trong sử dụng độ tương tự dựa vào sản phẩm với (items-items) ⁕ Xem thông tin nhà trọ vector Chúng ta tính khoảng cánh hai vector để suy độ tương phản:  Khoảng cách nhỏ => gần => độ tương tự lớn  Khoảng cách lớn => xa => độ tương tự nhỏ ⁕ Dataset cần chuẩn bị:  idNhatro: Mã nhà trọ  Dientich: Diện tích nhà trọ  Phong: Số lượng phịng nhà trọ  Nhavesinh: Số lượng nhà vệ sinh 84 an  Maylanh: Có máy lạnh hay khơng  Giuxe: Có chỗ giữ xe hay khơng  Nuocnong: Có nước nóng hay khơng  Wifi: Có wifi hay khơng  Gio: Giờ giấc có tự hay khơng  Chungchu: Có chung chủ hay không ⁕ Trong dùng khoảng cách Ơ-clit để tính tốn độ phương phản này, Cơng thức tổng qt Ơ-clit là: Hình 61: Hình ảnh minh họa cơng thức tính Ơ-clit 5.3.1.3 Tính tốn độ tương quan hai nhà trọ dựa vào đặc tính nhà trọ B1: Lấy toàn liệu nhà trọ B2: Chuẩn hóa dữa liệu nhà trọ theo vector B3: Tạo ma trận chiều để chứa giá trị sau tính tốn B4: Tính tốn vector với sau ghi kết vào mảng chiều B5: Sắp xếp kết đưa danh sách gợi ý 85 an CHƯƠNG 6: KIỂM THỬ PHẦN MỀM 6.1 Cài đặt 6.1.1 Cài đặt ứng dụng ⁕ Máy phải có cài đặt mpn ⁕ Máy phải có cài đặt Nodejs ⁕ Máy phải có cài đặt Android studio ⁕ Máy phải có cài đặt pycharm 6.1.2 Các bước cài đặt Bước 1: Clone dowload project từ link github: https://github.com/Tho391/NhaTroSVKLTN Bước 2: Ở phần server mở thư mục “nhatrosinhvienserver” lên click mở terminal sau chạy dịng lệnh “node server.js” hình sau Hình 62: Hình ảnh minh họa chạy dòng lệnh “node server.js” Bước 3: phần app mở thư mục app lên android studio sau run app Bước 4: phần admin mở pycharm lên mở thư mục quanlynhatro sau mở terminal pycharm lên chạy dịng lệnh “python manage.py runserver” hình sau 86 an Hình 63: Hình ảnh minh họa chạy dòng lệnh "python manage.py runserver" 6.2 - Kiểm thử Kế hoạch kiểm thử Nhận dạng chiến lược để kiểm tra đảm bảo sản phẩm thỏa mãn đặc tả thiết kế, yêu cầu phần mềm Xác định tính chất mức độ rủi ro để lựa chọn phương pháp kiểm thử hợp lý Chuẩn bị viết sẵn test case, phân chia cho thành viên nhóm Theo dõi, báo cáo sửa lỗi test case khơng đạt u cầu, ưu tiên lỗi có ảnh hưởng nghiêm trọng Quá trình kiểm thử thực lặp lặp lại chương trình hồn thiện, đáp ứng u cầu đề ra, khơng cịn phát sinh thêm test case khác, thời gian test kết thúc - Quy trình kiểm thử Phân tích yêu cầu: Đọc hiểu, nghiên cứu phân tích cụ thể yêu cầu tài liệu đặc tả dự án để nắm bắt yêu cầu mà dự án đưa bao gồm yêu cầu kiểm thử chức phi chức Lập kế hoạch kiểm thử: Xác định phạm vi dự án gồm cơng việc gì? thời gian bao lâu? để phân bổ công việc phù hợp Xác định phương pháp tiếp cận thời gian kiểm thử, mức độ hoàn thiện Xác định nguồn lực để phân chia công việc kiểm thử Lên kế hoạch thiết kế công việc test Thiết kế kịch kiểm thử: Viết test case, chuẩn bị liệu kiểm thử test data, test script Tổng hợp lại testcase, xem xét, bổ sung nhằm tránh sai sót rủi ro sau 87 an Thực kiểm thử: Thực test case thiết kế mức độ ưu tiên đưa So sánh với kết mong đợi, ghi lại kết thực test, tổng hợp báo cáo Phân tích kết kiểm thử: Từ kết không đạt yêu cầu, tiến hành sửa lỗi bổ sung test case có phát sinh Kiểm thử lại lỗi: Tiến hành thực kiểm thử lại test case không đạt yêu cầu trước test case phát sinh sau sửa lỗi Kết thúc kiểm thử: Khi test case đạt yêu cầu, không phát sinh test case khác, đáp ứng yêu cầu đề ứng dụng trình kiểm thử kết thúc Một vài testcase: ID Mô tả testcase Kết mong đợi Quy trình Kết thực tế Kiểm thử chức Truy cập ứng dụng Chức đăng nhập Nhập tài khoản, mật App chuyển sang hoạt động tài hình trang chủ khoản mật Nhấn nút đăng nhập mong đợi Kiểm thử chức đăng nhập google Truy cập ứng dụng Nhập tài khoản, mật Nhấn nút "Sign in Chức App chuyển sang hoạt động hình trang chủ mong đợi with Google Đăng nhập thành Hiển thị kết Kiểm tra công vào app danh sách nhà trọ chức Thay đổi xếp mục kết đánh Chức tìm kiếm, lọc, theo giá, theo diện dấu vị trí nhà trọ hoạt động xếp nhà tích, giá phịng, khu tìm đồ trọ vực Danh sách kết hình đồ Xem kết nhà trọ nhà trọ thay đổi theo hiển thị giao diện 88 an tiêu chí lọc mong đợi đồ người dùng Click vào nhà trọ để Thông tin xem thông tin nhà trọ nhà trọ hiển thị popup theo nhà trọ người dùng chọn Kiểm tra chức Ở hình trang xem thơng tin chủ, nhấn vào nút "Chi chi tiết nhà tiết" trọ Hiển thị thông tin Chức nhà trọ hình hoạt động với nhà trọ mà người dùng chọn mong đợi Hiển thị quảng cáo Kiểm tra chức gọi điện cho chủ trọ Ở hình chi tiết nhà trọ, nhấn vào icon gọi Sau người Chức dùng đóng quảng hoạt động cáo, số điện thoại hiển thị cho người mong đợi dùng thấy Bảng 44: Kiểm thử phần mềm 89 an PHẦN KẾT LUẬN Kết đạt Hiểu vận dụng thư viện Retrofit, Coil, Rubber Picker, Bubble Navigation, Dexter, QuickBlox việc xây dựng ứng dụng android Có kiến thức XMPP, WebRTC việc xây dựng tính nhắn tin gọi video call Từ áp dụng vào ứng dụng để nâng cao trải nghiệm người dùng Sử dụng google admob, google map, google play để tạo doanh thu cho ứng dụng Nâng cao kỹ thân: lập trình với kotlin, làm việc với google play, google admob, làm việc với bên thứ ba QuickBlox (trong tính chat, video call), google (đăng nhập, quảng cáo Admob, đưa ứng dụng lên Google play) Sử dụng NodeJS để viết api Sử dụng Python để lập trình web Ưu nhược điểm đề tài - Ưu điểm: · Đáp ứng nhu cầu tìm kiếm nhà trọ người dùng · Giao diện trực quan, dễ sử dụng · Hồn thành tính năng:  Xem tìm kiếm nhà trọ  Bình luận, đánh giá đăng nhà trọ  Chat, video call người tìm trọ chủ trọ  Người dùng quản lý nhà trọ đăng, thơng tin  Đăng nhập, đăng ký google  Có tính gợi ý nhà trọ cho người dùng giúp người dùng dễ dàng tìm kiếm nhà trọ theo mong muốn - Nhược điểm: · Tính video call cịn chưa ổn định cần phải hồn thiện thêm · Đã tìm hiểu giải vấn đề quên mật khẩu, dùng miễn phí nên bên phía nhà cung cấp gởi tin nhắn lâu để xác nhận Hướng phát triển đề tài 90 an - Thêm tính tìm bạn chung - Thêm tính thống kê 91 an DANH MỤC THAM KHẢO [1] https://vi.wikipedia.org/wiki/Node.js [2] https://o7planning.org/vi/11953/huong-dan-nodejs-eventemitter [3] https://viblo.asia/p/nhung-dieu-can-biet-ve-nodejs-XL6lAypmlek [4] https://topdev.vn/blog/express-js-la-gi [5].https://viblo.asia/p/lam-the-nao-de-xay-dung-mot-recommender-system-rsphan-2-4dbZNxom5YM [6] Kotlin Programming Language https://kotlinlang.org/ [7] Android Developers https://developer.android.com/ [8] GitHub https://github.com/ [9] Google Developers https://developers.google.com/ [10] Quickblox https://docs.quickblox.com/docs [11] Material Design https://material.io/ [12] Rubber Picker https://github.com/Chrisvin/RubberPicker [13] Bubble Navigation https://github.com/gauravk95/bubble-navigation [14] Material Spinner https://github.com/jaredrummler/MaterialSpinner [15] Coil https://github.com/coil-kt/coil [16] Retrofit https://square.github.io/retrofit/ [17] Dexter https://github.com/Karumi/Dexter [18] Stack Exchange Inc https://stackoverflow.com/ [19] RxJava https://github.com/ReactiveX/RxJava [20] Gson https://github.com/google/gson [21] XMPP https://xmpp.org/ [22] WebRTC https://webrtc.org/ [23] Google Play https://play.google.com/ [24] Google AdMob https://admob.google.com/ [25] Medium https://medium.com/ [26] Heroku https://www.heroku.com/ 92 an [27] Education Host https://educationhost.cloud/ [28] Gear Host https://www.gearhost.com/ [29] Ohana https://www.ohanaliving.vn/ [30] Nhà Trọ 360 https://thuenhatro360.com/ 93 an S an K L 0 ... luận tốt nghiệp: Tìm hiểu xây dựng ứng dụng tìm kiếm nhà trọ di động Giáo viên hướng dẫn: Tiến sĩ Lê Văn Vinh Nhiệm vụ tiểu luận: Lý thuyết: - Lý thuyết liên quan đến dịch vụ nhà trọ - Nghiên cứu... tượng hướng đến phần lớn sử dụng sinh viên nhập học, công nhân nhân viên làm xa nhà Chính chúng em lựa chọn đề tài Tìm hiểu xây dựng ứng dụng tìm kiếm nhà trọ di động để nhằm giải vấn đề Mục... dung sau: • Tìm hiểu nghiên cứu ngơn ngữ lập trình kotlin tảng di động (Android) • Tìm kiếm so sánh liệu từ app dùng để từ rút ý tưởng để xây dựng ứng dụng • Tìm hiểu CSDL MySql để sử dụng lưu liệu

Ngày đăng: 02/02/2023, 09:31

Xem thêm:

w