Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 76 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
76
Dung lượng
654,24 KB
Nội dung
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM HUỲNH HẠ VY – 16521470 ĐỖ NGỌC BÍCH TRÂM – 16521273 KHĨA LUẬN TỐT NGHIỆP Tìm hiểu Flutter thuật toán Recommendation, xây dựng ứng dụng minh họa Research on Several Recommendation Algorithms and Build Illustrative Application with Flutter KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM GIẢNG VIÊN HƯỚNG DẪN THS TRẦN ANH DŨNG TS NGUYỄN ĐÌNH HIỂN TP HỒ CHÍ MINH, 2021 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM HUỲNH HẠ VY – 16521470 ĐỖ NGỌC BÍCH TRÂM – 16521273 KHĨA LUẬN TỐT NGHIỆP Tìm hiểu Flutter thuật toán Recommendation, xây dựng ứng dụng minh họa Research on Several Recommendation Algorithms and Build Illustrative Application with Flutter KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM GIẢNG VIÊN HƯỚNG DẪN THS TRẦN ANH DŨNG TS NGUYỄN ĐÌNH HIỂN TP HỒ CHÍ MINH, 2021 DANH SÁCH HỘI ĐỒNG BẢO VỆ KHĨA LUẬN Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……………… …… ngày ……………… Hiệu trưởng Trường Đại học Công nghệ Thông tin ………………………………………… – Chủ tịch ………………………………………… – Thư ký ………………………………………… – Ủy viên ………………………………………… – Ủy viên ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Độc Lập - Tự Do - Hạnh Phúc THÔNG TIN TP HCM, ngày tháng năm 2021 NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ HƯỚNG DẪN) Tên khóa luận: Tìm hiểu Flutter thuật tốn Recommendation, xây dựng ứng dụng minh họa Nhóm sinh viên thực hiện: Cán hướng dẫn: HUỲNH HẠ VY 16521470 THS TRẦN ANH DŨNG ĐỖ NGỌC BÍCH TRÂM 16521273 TS NGUYỄN ĐÌNH HIỂN Đánh giá Khóa luận: Về báo cáo: Số trang Số chương Số bảng số liệu Số hình vẽ Số tài liệu tham khảo Sản phẩm Một số nhận xét hình thức báo cáo: • • Về nội dung nghiên cứu: • • Về chương trình ứng dụng: • • Về thái độ làm việc sinh viên: • • Đánh giá chung: Điểm sinh viên: HUỲNH HẠ VY: ……… /10 ĐỖ NGỌC BÍCH TRÂM: ……… /10 Người nhận xét (Ký ghi rõ họ tên) ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC TRẦN ANH DŨNG NGUYỄN ĐÌNH HIỂN CƠNG NGHỆ THƠNG TIN CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc Lập – Tự Do – Hạnh Phúc TP HCM, ngày tháng năm 2021 NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ PHẢN BIỆN) Tên khóa luận: Tìm hiểu Flutter thuật tốn Recommendation, xây dựng ứng dụng minh họa Nhóm sinh viên thực hiện: Cán phản biện: HUỲNH HẠ VY 16521470 ĐỖ NGỌC BÍCH TRÂM Đánh giá Khóa luận: 16521273 Về báo cáo: Số trang Số chương Số bảng số liệu Số hình vẽ Số tài liệu tham khảo Sản phẩm Một số nhận xét hình thức báo cáo: Về nội dung nghiên cứu: Về chương trình ứng dụng: Về thái độ làm việc sinh viên: Đánh giá chung: Điểm sinh viên: HUỲNH HẠ VY: ……… /10 ĐỖ NGỌC BÍCH TRÂM: ……… /10 Người nhận xét (Ký ghi rõ họ tên) LỜI CẢM ƠN Sau trình học tập rèn luyện khoa Công nghệ phần mềm trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM chúng em trang bị kiến thức bản, kỹ thực tế để hồn thành Khóa luận tốt nghiệp Chúng em xin gửi lời cảm ơn chân thành đến thầy Trần Anh Dũng thầy Nguyễn Đình Hiển quan tâm hướng dẫn truyền đạt kiến thức kinh nghiệm cho chúng em suốt thời gian học tập mơn Khóa luận tốt nghiệp Cuối cùng, chúng em xin gửi lời cảm ơn đến tất thầy cô khoa bạn bè bên cạnh, bảo, truyền đạt động viên chúng em Trong q trình làm tập mơn khơng tránh khỏi sai sót, chúng em mong nhận góp ý quý thầy bạn để hoàn thiện Chúng em xin chân thành cảm ơn Thành phố Hồ Chí Minh, tháng năm 2021 Sinh viên HUỲNH HẠ VY ĐỖ NGỌC BÍCH TRÂM ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Độc Lập - Tự Do - Hạnh Phúc TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP HCM, ngày… tháng … năm 2021 ĐỀ CƯƠNG CHI TIẾT Tên đề tài: Tìm hiểu Flutter thuật tốn Recommendation, xây dựng ứng dụng minh họa Cán hướng dẫn: TS Nguyễn Đình Hiển Ths Trần Anh Dũng Thời gian thực hiện: Từ ngày 14/8/2020 đến ngày 10/01/2020 Sinh viên thực hiện: Huỳnh Hạ Vy – 16521470 Đỗ Ngọc Bích Trâm – 16521273 Nội dung đề tài: Mục tiêu đề tài: 1.1 Bối cảnh chọn đề tài Ngày nay, công nghệ thông tin ngày phát triển, kéo theo bùng nổ thiết bị điện tử, đặc biệt điện thoại thông minh máy tính Nếu trước việc sở hữu điện thoại thơng minh hay máy tính khó khăn ngày cạnh tranh gay gắt thương hiệu khiến giá thành thiết bị rẻ việc sở hữu chúng trở nên dễ dàng Vì nhu cầu phát triển ứng dụng cho thiết bị ngày tăng cao Để tiếp cận đến nhiều người dùng, nhà phát triển ứng dụng mong muốn ứng dụng họ chạy nhiều tảng đặc biệt Android, iOS, Windows, MacOS web Thay phải tìm hiểu nhiều ngơn ngữ, cơng nghệ khác ứng với tảng thị trường có nhiều cơng cụ hỗ trợ lập trình đa tảng Flutter, React Native, Ionic, … giúp nhà phát triển ứng dụng tiết kiệm thời gian, chi phí dành cho trình phát triển ứng dụng Trong số có Flutter cơng cụ đời muộn có tốc độ phát triển vượt trội nhiều ưu điểm so với công nghệ trước, nhiều công ty công nghệ lớn sử dụng Flutter để phát triển sản phẩm Google, Alibaba, Tencent, … Ứng dụng xây dựng với Flutter hoạt động với hiệu mạnh mẽ có vấn đề mặt tương thích, ngồi cịn cơng cụ mã nguồn mở nên ngày nhiều lập trình viên công ty quan tâm đến công nghệ Đây lý nhóm chọn đề tài khóa luận tốt nghiệp “Tìm hiểu Flutter xây dựng ứng dụng minh họa” Ngoài ra, thời điểm dịch tồn cầu COVID 19 diễn ra, thơng qua kiến thức tìm hiểu, tích lũy nhóm nhận thấy từ việc mua hàng qua mạng với thủ tục đăng ký mua sắm đơn giản đem lại nhiều lợi ích: tiết kiệm chủ động thời gian, tránh nơi đông người tránh khỏi phiền phức khó chịu Vậy nên việc mua bán hàng qua mạng người quan tâm Trên sở kiến thức học nhà trường trình tìm hiểu website thực tế, nhóm định tích hợp thêm hệ thống hỗ trợ gợi ý sản phẩm vào ứng dụng nhằm hỗ trợ khách hàng đến mức tối đa, tăng trải nghiệm khách hàng ứng dụng - Khách hàng cần thao tác đơn giản điện thoại di động đặt hàng 1.2 Tính mới, khác biệt chức đề tài so với số ứng dụng − Điểm bật đề tài Các trang thương mại điện tử, trang mua bán laptop đa số có ý tưởng phương thức hoạt động tương đồng hầu hết khâu như: loại hàng hóa, vận chuyển, tốn, độ tin cậy… khơng có khác biệt để tạo giá trị vượt trội cho khách hàng ngoại trừ ưu giá (rẻ) + Sau trình khảo sát, lắng nghe ý kiến người dùng, giải pháp mà nhóm đề để tăng lượt truy cập thời gian sử dụng người dùng ứng dụng nhóm đưa thêm viết tin tức, câu chuyện liên quan đến laptop, công nghệ video liên quan sản phẩm laptop trang thơng tin sản phẩm, điều giúp người dùng vừa giải trí bổ ích có thêm kiến thức, vừa trở thành người tiêu dùng thông minh từ gắn bó với ứng dụng + Đồng thời hệ thống gợi ý sản phẩm lấy liệu vấn đề mà người dùng quan tâm từ đưa sản phẩm, viết gợi ý trang chủ người dùng vừa mở ứng dụng + Ngồi ra, app cịn ứng dụng cơng nghệ Flutter vào việc xây dựng giao diện ứng dụng, từ giao diện trở nên trực quan, thu hút người dùng − Tính khác biệt, cải thiện chức Chọn lọc chức tiện dụng top app thương mại điện tử lớn để đưa vào ứng dụng ứng dụng mình: + Tiki: Giỏ hàng chọn mua tất xóa bớt (mua lại lần sau) Điều làm dẫn đến hạn chế thoải mái lựa chọn mua sắm người dùng → Ứng dụng thực có thêm chức chọn bỏ chọn phần giỏ hàng, hàng chưa chọn lưu lại giỏ hàng để mua sau tiến hành tốn chọn cho người dùng (một số ứng dụng làm điều Lazada, Shopee) + Shopee, Tiki, Sendo: lượng sản phẩm bán ứng dụng nhiều gây tượng giao diện trở nên rối mắt với nhiều tính năng, sản phẩm; Notification banner quảng cáo mặt hàng khác push liên tục gây phiền nhiễu cho khách hàng khách mong muốn mua laptop Ngoài ra, thực tế thị trường chưa xây dựng ứng dụng di động mua bán chuyên biệt cho laptop thị trường màu mỡ cần khai thác Điều làm người dùng phải thao tác tìm kiếm hình dẫn đến làm giảm tính tiện dụng app người mua hàng Ngoài ra, recommend nhiều sản phẩm không mong muốn so với nhu cầu cần mua laptop gây trải nghiệm không tốt cho người dùng → Ứng dụng Eshop cho phép người dùng thực trải nghiệm mua sắm với nhu cầu mua laptop phụ kiện, không gây rối mắt với nhiều thể loại sản phẩm nhiều tính khơng cần thiết, giúp người dùng dễ theo dõi, sau mở rộng sang bán đồ điện tử, linh kiện máy tính, phụ kiện Sau bước chọn sản phẩm giỏ hàng phần điền địa nhận hàng: Nếu chưa xác nhận đặt đơn hàng Tiki Sendo khơng lưu địa mà người dùng nhập, trường hợp khách hàng quay chỉnh sửa đơn giỏ hàng lại sang phần nhập địa phải nhập lại Điều làm thời gian người dùng làm giảm tính tiện dụng app người mua hàng → Ứng dụng Eshop mặc định chọn địa xét ưu tiên, người dùng chọn địa danh sách lưu hay tạo trang chọn (Ứng dụng làm điều Shopee.) + Mô tả: người dùng xem sản phẩm thơng tin sản phẩm Hình 8: Biểu đổ use case Xem sản phẩm − Use case Đánh giá phản hồi + Mục đích: Đánh giá phản hồi sản phẩm + Tác nhân: khách hàng + Mô tả: Khách hàng đánh giá sản phẩm phản hồi đánh giá sản phẩm 40 Hình 9: Biểu đồ use case Bình luận đánh giá − Use case Đặt mua hàng + Mục đích: đặt hàng sản phẩm + Tác nhân: khách hàng + Mô tả: Trong trường hợp muốn hủy đơn hàng, khách hàng cần phải liên hệ trực tiếp tới người quản trị để xử lý Khi đặt mua hàng chọn sản phẩm mua trước, chọn địa chỉ, chọn mã khuyến Hình 10: Biểu đồ use case Đặt mua hàng 41 − Use case Theo dõi đơn hàng: + Mục đích: xem trạng thái đơn hàng + Tác nhân: khách hàng + Mơ tả: khách hàng vào xem tất đơn hàng hay xem theo trạng thái đơn hàng Hình 11: Biểu đồ use case Theo dõi đơn hàng − Use case quản lý sản phẩm yêu thích: + Mục đích: khách hàng thêm, xóa sản phẩm u thích + Tác nhân: khách hàng + Mô tả: khách hàng xem sản phẩm bấm u thích để đưa vào danh sách xóa sản phẩm khỏi danh sách 42 Hình 12: Biểu đồ use case Quản lý sản phẩm yêu thích − Use case Quản lý địa giao hàng: + Mục đích: quản lý địa giao hàng đặt hàng + Tác nhân: khách hàng + Mơ tả: khách hàng thêm xóa sửa thông tin danh sách địa giao hàng chọn địa giao hàng mặc định đặt mua hàng Hình 13: Biểu đồ use case Quản lý địa giao hàng 43 + Danh sách actors STT Tên actor Ý nghĩa Quản trị viên - Admin có tài khoản riêng để đăng nhập vào trang web quản trị - Admin người quản lý hoạt động chung hệ thống quản lý danh mục sản phẩm, quản lý sản phẩm, quản lý đơn hàng, quản lý khuyến mãi, xem thống kê,… - Ngoài ra, Admin có đầy đủ quyền (Admin) người dùng khách hàng ứng dụng Khách hàng - Khách hàng người trực tiếp sử dụng tất (Customer) tính ứng dụng: tìm kiếm sản phẩm, xem sản phẩm, u thích bình luận, đánh giá, đặt hàng sản phẩm, - Tài khoản khách hàng có hiệu lực đăng nhập phần khách hàng, đăng nhập vào phần quản trị Bảng 1: Danh sách actors + Danh sách use cases STT Tên use case Ý nghĩa Use case Mức Đưa actor có hệ thống quản lý, tổng quát chức actor Use case Yêu cầu đăng nhập để xác thực ứng dụng Đăng nhập 44 Use case Quản Quản lý sản phẩm hàng hóa (thêm, sửa, xóa lý sản phẩm sản phẩm) Use case Quản Quản lý đơn hàng (cập nhật trạng thái lý đơn hàng đơn hàng) Use case Quản Quản lý mã khuyến (thêm, xóa, sửa lý mã khuyến mã khuyến mãi) Use case Quản Quản lý đánh giá, phản hồi lý đánh giá, khách hàng(duyệt, hủy đánh giá) phản hồi Use case Tìm Tìm kiếm sản phẩm theo từ khóa kiếm sản phẩm Use case Xem Xem danh sách sản phẩm, sản phẩm sản phẩm gợi ý, chi tiết thông tin sản phẩm (thêm vào giỏ hàng, yêu thích) Use case Đánh giá, phản hồi khách hàng Đánh giá, sản phẩm phản hồi 10 Use case Đặt Khách hàng đặt mua hàng, chọn sản mua hàng phẩm mua trước, điều chỉnh số lượng sản phẩm giỏ hàng, sau chọn mã khuyến mãi, địa giao hàng đặt hàng 11 Use case Khách hàng xem đơn hàng đặt Theo dõi đơn hàng 12 Use case Quản Khách hàng quản lý sản phẩm u lý sản phẩm thích (thêm, xóa, xem thêm vào giỏ hàng) yêu thích 45 13 Use case Quản Khách hàng quản lý danh sách địa lý địa giao giao hàng (thêm, xóa, sửa, cài địa mặc hàng định) Bảng 2: Danh sách use cases 46 b) Entity Relation Diagram 47 Hình 14: Biểu đồ Entity Relation c) Sơ đồ lớp Hình 15: Biểu đồ lớp 48 − Mô tả sơ đồ lớp STT Tên lớp Mô tả PRODUCTS Lớp sản phẩm USERS Lớp người dùng USER_VIEW_PRODUCTS Lớp thời gian xem sản phẩm người dùng BRANDS Lớp thương hiệu CATEGORIES Lớp danh mục FAVORITES Lớp yêu thích VOUCHERS Lớp khuyến REVIEWS Lớp bình luận REPLIES Lớp trả lời bình luận 10 ADDRESSES Lớp địa 11 ORDERS Lớp đơn hàng 12 ORDER_LINES Lớp chi tiết đơn hàng 13 CART Lớp giỏ hàng 14 CART_PRODUCTS Lớp chi tiết giỏ hàng Bảng 3: Các lớp sơ đổ lớp 3.1.4 Phân tích thiết kế CSDL Dựa việc xác định yêu cầu phân tích yêu cầu, ứng dụng Eshop bao gồm đối tượng sau đây: STT Tên đối tượng Thuộc tính 49 PRODUCTS ID, SKU, NAME, CPU, GPU, OS, RAM, STORAGE, NEW_FEATURE, DISPLAY, DISPLAY_RESOLUTION, DISPLAY_SCREEN, CAMERA, VIDEO, WIFI, BLUETOOTH, PORTS, SIZE, WEIGHT, MATERIAL, BATTERY_CAPACITY, DESCRIPTION, SOLD, RATING_AVG, RATING_COUNT, CATEGORY_ID, BRAND_ID, INSERTED_AT, UPDATED_AT, IMAGES, IS_AVAILABLE, PRICE, DISCOUNT_PRICE USERS ID, EMAIL, PASSWORD_HASH, INSERTED_AT, UPDATED_AT, ROLE USER_VIEW_PRODUCTS ID, VIEW_AT, USER_ID, PRODUCT_ID, INSERTED_AT, UPDATED_AT BRANDS ID, NAME, INSERTED_AT, UPDATED_AT CATEGORIES ID, NAME, INSERTED_AT, UPDATED_AT FAVORITES ID, USER_ID, PRODUCT_ID, INSERTED_AT, UPDATED_AT 50 VOUCHERS ID, CODE, VALID_FROM, VALID_TO, IS_USED, VALUE, CATEGORY_ID, INSERTED_AT, UPDATED_AT REVIEWS ID, CONTENT, POINT, USER_ID, PRODUCT_ID, INSERTED_AT, UPDATED_AT REPLIES ID, CONTENT, USER_ID, REVIEW_ID, INSERTED_AT, UPDATED_AT 10 ADDRESSES ID, IS_PRIMARY, LOCATE, USER_ID, INSERTED_AT, UPDATED_AT, PHONE_NUMBER 11 ORDERS ID, DISCOUNT, TOTAL, STATUS, ORDER_DATE, USER_ID, VOUCHER_ID, ADDRESS_ID, INSERTED_AT, UPDATED_AT 12 ORDER_LINES ID, PRODUCT_ID, ORDER_ID, QUANTITY, PRICE, DISCOUNT, TOTAL, INSERTED_AT, UPDATED_AT 13 CART ID, USER_ID, INSERTED_AT, UPDATED_AT 14 CART_PRODUCTS ID, QUANTITY, CARD_ID, PRODUCT_ID, INSERTED_AT, UPDATED_AT 51 Bảng 4: Các đối tượng thuộc tính đối tượng a) Bảng PRODUCTS Bảng PRODUCTS lưu trữ thông tin sản phẩm laptop, PRODUCTS Tên trường Kiểu liệu Ràng Mô tả buộc ID INT Prima Mã ID sản phẩm ry key SKU VARCHAR(255) Null Mã SKU sản phẩm NAME VARCHAR(255) Null Tên sản phẩm CPU VARCHAR(255) Null Thông tin CPU sản phẩm GPU VARCHAR(255) Null Thông tin GPU sản phẩm OS VARCHAR(255) Null Thông tin OS sản phẩm RAM VARCHAR(255) Null Thông tin RAM sản phẩm STORAGE VARCHAR(255) Null Thông tin STORAGE sản phẩm NEW_FEATU VARCHAR(255) Null RE DISPLAY Thông tin tính sản phẩm VARCHAR(255) Null Thông tin DISPLAY sản phẩm DISPLAY_R VARCHAR(255) Null ES OLUTION Thông tin DISPLAY_RESOLUTIO N sản phẩm 52 DISPLAY_S VARCHAR(255) Null CR EEN Thông tin DISPLAY_SCREEN sản phẩm CAMERA VARCHAR(255) Null Thông tin CAMERA sản phẩm VIDEO VARCHAR(255) Null Thông tin VIDEO sản phẩm WIFI VARCHAR(255) Null BLUETOOTH VARCHAR(255) Null Thông tin WIFI sản phẩm Thông tin BLUETOOTH sản phẩm PORTS VARCHAR(255) Null Thông tin cổng kết nối sản phẩm SIZE VARCHAR(255) Null Thông tin kích thước sản phẩm WEIGHT VARCHAR(255) Null Thơng tin khổi lượng sản phẩm MATERIAL VARCHAR(255) Null Thông tin nguyên liệu sản phẩm BATTERY_C VARCHAR(255) Null Thông tin pin sản phẩm VARCHAR(255) Null Thông tin mô tả A PACITY DESCRIPTION sản phẩm SOLD INT Not null Thông tin số lượng bán sản phẩm 53 ... triển ứng 11/9/2020 - − Tìm hiểu Flutter ngơn dụng 10/10/2020 ngữ Dart ứng dụng vào việc xây dựng giao diện ứng dụng − Tìm hiểu ngơn ngữ Elixir framework phoenix vào việc thực hóa ứng dụng theo... kết hợp với tìm hiểu cơng nghệ nhóm, luận văn tốt nghiệp nhóm đạt mục đích mong đợi 1.4 Ý nghĩa đề tài Trước hết, đề tài ' 'Tìm hiểu Flutter xây dựng ứng dụng minh họa' ' ứng dụng xây dựng đề tài... BIỆN) Tên khóa luận: Tìm hiểu Flutter thuật tốn Recommendation, xây dựng ứng dụng minh họa Nhóm sinh viên thực hiện: Cán phản biện: HUỲNH HẠ VY 16521470 ĐỖ NGỌC BÍCH TRÂM Đánh giá Khóa luận: 16521273