Đồ án tốt nghiệp: Xây dựng web bán hàng tích hợp gợi ý sản phẩm đến người dùng

Tài liệu đồ án tốt nghiệp xây dựng web bán hàng chi tiết. Trình bày giải pháp tích hợp hệ thống gợi ý sản phẩm thông minh để tăng trải nghiệm người dùng.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2020

96
0
0

Phí lưu trữ

35 Point

Tóm tắt

I. Tổng quan về đồ án web bán hàng tích hợp hệ thống gợi ý sản phẩm

Đồ án web bán hàng tích hợp hệ thống gợi ý sản phẩm là một giải pháp công nghệ thông tin hiện đại nhằm cải thiện trải nghiệm mua sắm trực tuyến của người dùng. Với sự phát triển nhanh chóng của thương mại điện tử, các nền tảng bán hàng online cần tích hợp các công nghệ thông minh để cạnh tranh hiệu quả. Đồ án này tập trung vào việc xây dựng một website thương mại điện tử có khả năng gợi ý sản phẩm cá nhân hóa dựa trên hành vi và sở thích của khách hàng. Thông qua hệ thống gợi ý intelligent, người dùng sẽ dễ dàng tìm kiếm những sản phẩm phù hợp mà không cần phải tìm kiếm thủ công. Điều này không chỉ tăng độ hài lòng của khách hàng mà còn nâng cao doanh thu của cửa hàng trực tuyến.

1.1. Khái niệm và ý nghĩa của hệ thống gợi ý sản phẩm

Hệ thống gợi ý sản phẩm (Recommendation System) là một công nghệ machine learning giúp dự đoán các sản phẩm mà khách hàng có thể quan tâm. Các thuật toán gợi ý sử dụng dữ liệu lịch sử mua hàng, đánh giá sản phẩm và hành vi duyệt web để đưa ra những gợi ý phù hợp. Ý nghĩa của hệ thống này là giúp người dùng tiết kiệm thời gian, tăng trải nghiệm mua sắm và đơn giản hóa quá trình tìm kiếm sản phẩm.

1.2. Mục tiêu chính của đồ án

Mục tiêu của đồ án là xây dựng một platform thương mại điện tử hoàn chỉnh với các chức năng quản lý sản phẩm, đơn hàng và khách hàng. Ngoài ra, tích hợp các thuật toán gợi ý như collaborative filtering và content-based filtering để tạo ra những gợi ý sản phẩm chính xác, giúp tăng tỷ lệ chuyển đổi khách hàngnâng cao doanh thu bán hàng.

II. Công nghệ và kiến trúc hệ thống được sử dụng

Đồ án web bán hàng sử dụng những công nghệ hiện đại nhất để đảm bảo hiệu suất và khả năng mở rộng. Stack công nghệ chính bao gồm Node.js với framework Express.js cho phía máy chủ, cùng với cơ sở dữ liệu đồ thị Neo4j để lưu trữ các mối quan hệ giữa sản phẩm, khách hàng và đơn hàng. Node.js cho phép xử lý đồng thời cao với hiệu suất tối ưu, trong khi Neo4j cung cấp khả năng truy vấn nhanh chóng các mối quan hệ phức tạp. Ngôn ngữ truy vấn Cypher được sử dụng để lấy dữ liệu hiệu quả từ cơ sở dữ liệu đồ thị. Kiến trúc hệ thống được thiết kế theo mô hình MVC (Model-View-Controller) để đảm bảo tính tổ chức và dễ bảo trì.

2.1. Công nghệ backend và cơ sở dữ liệu

Node.js là nền tảng JavaScript chạy phía máy chủ, cho phép xử lý yêu cầu đồng thời với tốc độ cao. Express.js là một framework nhẹ và mạnh mẽ giúp xây dựng RESTful API hiệu quả. Neo4jcơ sở dữ liệu đồ thị tối ưu cho việc lưu trữ mối quan hệ giữa các thực thể như sản phẩm, khách hàng và đơn hàng. Sử dụng Neo4j cho phép truy vấn nhanh và linh hoạt các mối quan hệ phức tạp.

2.2. Thuật toán gợi ý và xử lý dữ liệu

Hệ thống sử dụng hai thuật toán gợi ý chính: Collaborative Filtering (lọc cộng tác) phân tích hành vi của những khách hàng có sở thích tương tự, và Content-Based Filtering (lọc nội dung) gợi ý những sản phẩm giống với sản phẩm khách hàng đã xem. Các thuật toán tìm đường trong đồ thị giúp xác định các kết nối giữa khách hàng và sản phẩm để đưa ra gợi ý chính xác.

III. Các chức năng chính của hệ thống

Website bán hàng tích hợp gợi ý sản phẩm cung cấp một loạt các chức năng toàn diện cho cả khách hàng và quản trị viên. Phía khách hàng bao gồm đăng ký tài khoản, đăng nhập, duyệt sản phẩm, xem chi tiết sản phẩm, thêm vào giỏ hàngthanh toán đơn hàng. Hệ thống cũng cho phép khách hàng viết bình luậnđánh giá sản phẩm để cải thiện chất lượng gợi ý. Phía quản trị viên (Admin) có quyền quản lý sản phẩm (thêm, sửa, xóa), quản lý danh mục sản phẩm, quản lý đơn hàng, quản lý khách hàngxem thống kê doanh thu. Chức năng gợi ý sản phẩm hoạt động tự động trên trang chủ, trang danh sách sản phẩm và trang chi tiết sản phẩm.

3.1. Chức năng cho khách hàng

Khách hàng có thể đăng kýđăng nhập để truy cập các dịch vụ cá nhân hóa. Họ có thể tìm kiếmduyệt thông qua các danh mục sản phẩm khác nhau. Mỗi sản phẩm có trang chi tiết hiển thị hình ảnh, giá cả, mô tả và sản phẩm liên quan được gợi ý. Khách hàng có thể thêm sản phẩm vào giỏ hàng, chỉnh sửa số lượng và thanh toán trực tuyến.

3.2. Chức năng quản trị viên

Admin có thể thêm, sửa, xóa sản phẩm trong hệ thống, quản lý danh mục để tổ chức sản phẩm một cách logic. Chúng có thể xem danh sách đơn hàng, cập nhật trạng thái đơn hàngquản lý thông tin khách hàng. Tính năng thống kê cho phép Admin xem doanh thu, phân tích dữ liệu bán hàng và đưa ra quyết định kinh doanh.

IV. Kết quả và hướng phát triển trong tương lai

Đồ án web bán hàng tích hợp hệ thống gợi ý sản phẩm đã thành công trong việc xây dựng một nền tảng thương mại điện tử hoàn chỉnh với các tính năng gợi ý thông minh. Hệ thống đã được kiểm thử và chứng minh khả năng hoạt động ổn định, cung cấp gợi ý sản phẩm chính xác dựa trên hành vi người dùng. Những kết quả đạt được bao gồm việc nâng cao trải nghiệm người dùng, tăng tỷ lệ xem sản phẩm và tạo nền tảng vững chắc cho các nhà bán hàng trực tuyến. Tuy nhiên, còn một số hạn chế như độ chính xác của gợi ý có thể cải thiện thêm. Hướng phát triển trong tương lai bao gồm tích hợp trí tuệ nhân tạo nâng cao, deep learning, mobile app, hỗ trợ thanh toán đa dạng, và phân tích cảm xúc từ bình luận khách hàng.

4.1. Kết quả và thành tựu đạt được

Hệ thống đã thành công trong việc tích hợp gợi ý sản phẩm vào một nền tảng bán hàng hoàn chỉnh. Kiểm thử chức năng cho thấy các tính năng chính hoạt động đúng và hiệu quả. Gợi ý sản phẩm giúp khách hàng tìm thấy những sản phẩm phù hợp nhanh hơn, từ đó cải thiện tỷ lệ chuyển đổi.

4.2. Hạn chế và hướng phát triển tương lai

Hệ thống hiện tại có thể được cải tiến bằng cách tích hợp thuật toán machine learning nâng cao hơn như neural networks. Phát triển phiên bản mobile để tiếp cận nhiều người dùng hơn. Tích hợp thanh toán di động, giao hàng thực tếchính sách hoàn trả là những hướng phát triển quan trọng cho tương lai.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

28/12/2025
Đồ án tốt nghiệp xây dựng web bán hàng tích hợp gợi ý sản phẩm đến người dùng

Trích đoạn nội dung tài liệu

Đặt vấn đề - Hiện nay có khá nhiều web bán hàng thuộc các đơn vị kinh doanh tại Việt Nam trên internet, qui mô từ nhỏ đến lớn,. nhƣng đa số những web này khá tƣơng tự nhau và chƣa có nhiều lắm sự tƣơng tác với ngƣời sử dụng. Khi một khách hàng vào một website thƣơng mại điện tử thì có hai xu hƣớng: thứ nhất là họ đã định hƣớng đƣợc sản phẩm cụ thể mà họ đã mua, thứ hai là họ chỉ định hƣớng đƣợc loại sản phẩm mà họ sẽ mua. Đối với trƣờng hợp thứ nhất thì đơn giản là họ đã định hƣớng đƣợc sẽ mua sản phẩm nào rồi, vấn đề chỉ là chọn mua ở đâu mà thôi.

Đối với trƣờng hợp thứ hai thì ngƣời dùng sẽ gặp khó khăn hơn nhiều, họ sẽ phải chọn sản phẩm phù hợp nhất với nhu cầu của họ. Vấn đề đặt ra là làm sao họ có thể làm đƣợc điều đó trong vô vàn sản phẩm cùng chủng loại mà họ đang tìm. Trong trƣờng hợp này ngƣời dùng sẽ cần đến sự trợ giúp của hệ thống gợi ý sản phẩm để giải quyết vấn đề về này. - Rất lâu rồi facebook hay youtube, Ebay, Amazon, Netflix đã có chức năng gợi ý ngƣời dùng, dựa vào chủ đề mà ngƣời dùng click và xem, cũng nhƣ thời gian ngƣời dùng xem, hay dựa vào thông tin của ngƣời dùng nhƣ địa chỉ, tuổi, giới tính mà có những gợi ý phù hợp, giúp cho ngƣời dùng có trải nghiệm tốt hơn, thích thú hơn khi sử dụng.

- Đa số các website bán hàng hiện tại chƣa có hệ thống phân tích gợi ý ngƣời dùng hay chức năng gợi ý ngƣời dùng cũng nhƣ có các giải pháp về trải nghiệm ngƣời dùng nhƣ lƣu lại giỏ hàng hay lƣu lại những sản phẩm đã xem nhƣng cũng chƣa thật sự đem lại trải nghiệm tốt hơn cho ngƣời dùng.1: Mô tả tượng trưng yêu cầu mua hàng - Do đó tại sao chúng ta không tích hợp hệ gợi ý ngƣời dùng cho một web bán hàng? Với nó, phần nào làm tăng giá trị web của doanh nghiệp, cũng nhƣ tăng tỉ lệ thành công hơn khi khách hàng khi đến với web, cũng tăng trải nghiệm cho ngƣời dùng tốt hơn.2 Giới thiệu chung - Đề tài em chọn là ―Xây dựng web bán hàng tích hợp gợi ý sản phẩm đến ngƣời dùng‖ em chọn cũng vì những lý do trên, bên cạnh đó cũng vì em muốn trải nghiệm một công nghệ mới lạ với nhiều thử thách mới, để trau dồi bản thân. - Ứng dụng Web sẽ hoạt động gồm các chức năng : đăng nhập mua hàng, xem hàng, tìm kiếm sản phẩm, thêm sản phầm vào giỏ hàng. Phần quản trị sẽ có phần quản lý sản phẩm, quản lý khách hàng, quản lý thể loại, quản lý hóa đơn - Phần chính quan trọng là gợi ý cho ngƣời dùng, dựa vào thông tin tài khoản của ngƣời dùng có những thông tin về tuổi, tùy vào từng loại thông tin và ngữ cảnh thì sẽ có những sản phẩm phù hợp để gợi ý. Đối với những tài khoản đã mua hàng thì sẽ gợi ý theo những sản phẩm đã mua và những loại sản phẩm tƣơng tự, và cũng gợi ý theo hành vi của ngƣời dùng dựa vào lƣợt click vào sản phẩm, hay thời gian xem sản phẩm.

2 - Khách hàng sẽ đƣợc gợi ý những mặt hàng mà họ đang quan tâm mỗi khi họ quay lại hệ thống, giúp họ nhìn thấy ngay những sản phẩm họ đang quan tâm trên web.3 Giải pháp - Để giải quyết bài toán này, hệ thống gợi ý trong đồ án này sẽ sử dụng kết hợp hai phƣơng pháp gợi ý là đối sánh mẫu và phản hồi ngƣời dùng. - Về tổng quan hệ thống gợi ý sẽ đƣợc chia làm hai pha: Danh sách gợi ý ban đầu: Trong phiên gợi ý này hệ thống sẽ dựa trên lịch sử phản hồi ngƣời dùng để đƣa ra gợi ý. Phiên này, hệ thống sử dụng phƣơng pháp gợi ý đối sánh mẫu. Gợi ý dựa trên phản hồi ngƣời dùng: Trong phiên gợi ý này ngƣời dùng sẽ phản hồi lại các thuộc tính của sản phẩm mà ngƣời dùng mong muốn.

Từ đó hệ thống gợi ý sẽ xử lý dữ liệu để tìm ra những sản phẩm phù hợp nhất với yêu cầu ngƣời dùng. Ngƣời dùng phản hồi các thuộc tính một cách trực tiếp các thuộc tính dựa trên các thuộc tính mà ngƣời dùng đang xem. Hệ thống sẽ sử dụng kết hợp hai phƣơng pháp gơi ý là đối sánh mẫu và phản hồi ngƣời dùng.1 Tổng quan công nghê sử dụng 2.1 Giới thiệu chung Xây dựng web: + back end : Nodejs, expressJs, Javascript + font end : ejs, html, css, bootraps, jquery.2 Lý do chọn công nghệ Nodejs là công nghệ sử dụng phù hợp cho các ứng dụng, web cần sự tƣơng tác nhanh với ngƣời dùng,với cộng đồng phát triền mạnh mẽ đa số các vấn đề trong lập với Nodejs đều đƣợc giải quyết. Neo4j là cơ sở dữ liệu đồ thị mạnh mẽ trong phần gợi ý ngƣời dùng, mạng xã hội.1 Giới thiệu Node.js là một nền tảng chạy trên môi trƣờng V8 JavaScript runtime - một trình thông dịch JavaScript cực nhanh chạy trên trình duyệt Chrome.

Bình thƣờng thì bạn cũng có thể tải bộ V8 và nhúng nó vào bất cứ thứ gì, Node.js làm điều đó đối với các web server. JavaScript suy cho cùng cũng chỉ là một ngôn ngữ - vậy thì không có lý do gì để nói nó không thể sử dụng trên môi trƣờng server tốt nhƣ là trong trình duyệt của ngƣời dùng đƣợc. Trong một môi trƣờng server điển hình LAMP (Linux-Apache-MySQL-PHP), bạn có một web server là Apache hoặc NGINX nằm dƣới, cùng với PHP chạy trên nó. Mỗi một kết nối tới server sẽ sinh ra một thread mới, và điều này khiến ứng dụng nhanh chóng trở nên chậm chạp hoặc quá tải - cách duy nhất để hỗ trợ nhiều ngƣời dùng hơn là bằng cách bổ sung thêm nhiều máy chủ.

Đơn giản là nó không có khả 4 năng mở rộng tốt. Nhƣng với Node.js thì điều này không phải là vấn đề. Không có một máy chủ Apache lắng nghe các kết nối tới và trả về mã trạng thái HTTP - bạn sẽ phải tự quản lý kiến trúc lõi của máy chủ đó. May mắn thay, có một số module giúp thực hiện điều này đƣợc dễ dàng hơn, nhƣng công việc này vẫn gây cho bạn một chút khó khăn khi mới bắt đầu.

Tuy nhiên, kết quả thu đƣợc là một ứng dụng web có tốc độ thực thi cao.1: Mô hình hoạt động nodeJs Cách thức hoạt động Cứ mỗi request tới sẽ đƣa vào một hàng đời,event loop trong nodejs luôn hoạt động để bắt lấy, và những yêu cầu đó sẽ đƣợc xử lý đo lƣờng xem đó có phải là một tiến trình bất đồng bộ không.Nếu là bất động bộ thì sẽ cấp một thread pool đóng vai trò nhƣ một worker để xử lý tiến trình bất đồng bộ đó, sau khi xử lý xong, sẽ trả về 5 event loop và trả về cho ngƣời gửi. Đối với những yêu cầu không bất đồng bộ sẽ đƣợc sử lý ngay và trả về kết quả cho ngƣời gửi.3 Express và JavaScript 2.1 Giới thiệu - JavaScript: Javascript là ngôn ngữ rất nỗi trong vài năm trong trong mảng lập trình web back-end và cũng là ngôn ngữ chính trong lập trình web font-end trong nhiều năm. Ngôn ngữ có cú pháp dễ dàng học, điều khiến Javascript có thể sử dụng làm ngôn ngữ lập trình backend là do sự xuất hiện của ES5, ES6( phiên bản nâng cấp ) có nhiều các thức đồng bộ (ví dụ : promise, async await, arrow function),vv .Và đang đƣợc cập nhật hàng ngày.Bên cận đó có cộng đồng phát triển mạnh mẽ. Theo thống kê của https://csc.vn trên các nguồn nhƣ StackOverflow TIOBE, PYPL, GitHub, thì javascript là ngôn ngữ nằm trong top phổ biến nhất.

JavaScript đƣợc tiêu chuẩn hóa tại Ecma International — the European association for standardizing information and communication systems, Liên kết Châu Âu cho các tiêu chuẩn hóa hệ thống thông tin và truyền thông (ECMA trƣớc đây là viết tắt cho the European Computer Manufacturers Association) cung cấp một tiêu chuẩn hóa, nền tảng ngôn ngữ lập trình mở quốc tế lên JavaScript. Phiên bản đã tiêu chuẩn hóa của JavaScript đƣợc gọi là ECMAScript, làm việc giống với cái cách mà tất cả ứng dụng đã đƣợc hỗ trợ theo tiêu chuẩn. Các công ty có thể sử dụng tiêu chuẩn ngôn ngữ mở (open standard language) để phát triển các implementation của JavaScript riêng cho họ. Tiêu chuẩn ECMAScript là tài liệu nằm trong tiêu chuẩn ECMA-262 (ECMA-262 specification).

JavaScript thƣờng đƣợc nhúng trực tiếp vào một trang web hoặc đƣợc tham chiếu qua file. Nó là ngôn ngữ phía client, tức là script đƣợc tải về máy của khách truy cập và đƣợc xử lý tại đó thay vì phía server là xử lý trên server rồi mới đƣa kết quả tới khách truy cập. 6 JavaScript thƣờng đƣợc nhúng trực tiếp vào một trang web hoặc đƣợc tham chiếu qua file. Nó là ngôn ngữ phía client, tức là script đƣợc tải về máy của khách truy cập và đƣợc xử lý tại đó thay vì phía server là xử lý trên server rồi mới đƣa kết quả tới khách truy cập.

JavaScript và Java thì giống nhau ở những cái này nhƣng lại khác nhau ở cái khác. Ngôn ngữ JavaScript có lẽ giống giống với ngôn ngữ Java nhƣng JavaScript không có khai báo static cũng nhƣ không kiểm tra kiểu mạnh (strong type checking) nhƣ Java. Cú pháp lập trình, đặt tên công thức và xây dựng dòng điều khiển (control-flow) cơ bản của JavaScript phần lớn dựa theo ngôn ngữ lập trình Java, đó cũng là lý do tại sao JavaScript đƣợc đổi tên từ LiveScript thành JavaScript. Ngƣợc lại với hệ thống thời gian biên dịch (compile-time) Java của các lớp đƣợc xây dựng bởi các khai báo, JavaScript hỗ trợ nền tảng hệ thống thời gian chạy dựa trên một số lƣợng nhỏ các loại dữ liệu đại diện cho số, boolean và dữ liệu các chuỗi.

JavaScript có một mô hình ít phổ biến hơn là mô hình đối tƣợng dựa trên nguyên mẫu ( prototype-based ) thay vì các mô hình đối tƣợng dựa trên lớp (class- based). Các mô hình dựa trên nguyên mẫu cung cấp khả năng thừa kế năng động; nghĩa là, những gì đƣợc kế thừa có thể khác nhau cho các đối tƣợng khác nhau. JavaScript cũng hỗ trợ các phƣơng thức (function) không khai báo bất cứ gì ở trong. Phƣơng thức có thể là một trong các thuộc tính (property) của các đối tƣợng, thực thi nhƣ là một phƣơng thức đã đƣợc định kiểu (loosely typed methods).

JavaScript là một ngôn ngữ rất tự do so với Java. Bạn có thể không cần khai báo tất cả biến (variable), lớp (class) và cả phƣơng thức (method). Bạn không cần quan tâm cho dù phƣơng thức đó là public, private hoặc protected, và bạn không cần phải implement interfaces.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ