Tính cấp thiết của đề tài
Nhu cầu thị trường: Thị trường thương mại điện tử đang phát triển mạnh mẽ, đặc biệt là trong bối cảnh mua sắm trực tuyến trở nên phổ biến hơn bao giờ hết.
Người tiêu dùng ngày càng chuyển sang mua hàng trực tuyến, do đó, việc xây dựng một trang web thương mại điện tử mang lại cơ hội kinh doanh lớn.
Thời đại số hóa: Sự phát triển của công nghệ thông tin và việc số hóa các hoạt động kinh doanh là xu hướng không thể phủ nhận Việc có một trang web thương mại điện tử không chỉ giúp bạn tiếp cận được khách hàng trực tuyến mà còn tạo điều kiện thuận lợi cho quản lý, marketing và bán hàng.
Tiện lợi và nhanh chóng: Mua sắm trực tuyến mang lại sự tiện lợi và tốc độ cho người tiêu dùng Với một trang web thương mại điện tử như TECH HUB, khách hàng có thể dễ dàng tìm kiếm và mua sản phẩm một cách nhanh chóng từ bất kỳ đâu chỉ cần kết nối internet.
Tiềm năng lớn: Có một trang web thương mại điện tử hiệu quả không chỉ giúp bạn thu hút được nhiều khách hàng hơn mà còn tạo ra tiềm năng tăng trưởng lớn cho doanh nghiệp Với sự phát triển của công nghệ và thị trường, việc này càng trở nên quan trọng và có tiềm năng phát triển rất lớn. Đề tài website thương mại điện tử không chỉ là một chủ đề phù hợp với nhu cầu thị trường và xu hướng số hóa hiện nay, mà còn có tiềm năng kinh doanh lớn nếu được triển khai một cách hiệu quả.
Tình hình nghiên cứu
Sau khi chọn đề tài nhóm đã cùng nhau tiến hành nghiên cứu chuyên sâu về công nghệ cũng như lĩnh vực thương mại điển tử để thực hiện đề tài: Xây dựng website thương mại điện tử TECH HUB Nhóm phát triển đề tài này nhằm mục đích tạo ra 1 website thương mại điện tử với các công nghệ mới, khả năng quản lý tốt đồng thời được tối ưu với mục tiêu đưa vào ứng dụng thực tiễn.
Mục đích nghiên cứu
Mục đích của đề tài là tập trung vào việc phân tích thị trường, thiết kế sản phẩm, phát triển công nghệ, đánh giá hiệu suất và nghiên cứu về kinh doanh Mục tiêu cuối cùng là xây dựng một nền tảng thương mại điện tử trong lĩnh vực công nghệ, cung cấp trải nghiệm mua sắm tốt nhất cho khách hàng và đóng góp vào sự phát triển bền vững của doanh nghiệp trong môi trường kinh doanh trực tuyến ngày càng cạnh tranh.
Nhiệm vụ nghiên cứu
Phát triển một website thương mại điện tử nhằm cho phép doanh nghiệp kinh doanh trong môi trường trực tuyến và khách hàng có thể đặt, mua các thiết bị điện tử, công nghệ một cách nhanh chóng, tiện lợi.
Phương pháp nghiên cứu
Phân tích dữ liệu quan sát: Thu thập thông tin trực tiếp từ website về giao diện, tính năng, sản phẩm,
Phỏng vấn: Thu thập ý kiến chuyên gia, người dùng về website.
Khảo sát: Thu thập số liệu về hành vi mua sắm, mức độ hài lòng của người dùng.
Phân tích dữ liệu website: Lượt truy cập, tỷ lệ chuyển đổi, doanh thu,
Kết quả nghiên cứu đề tài
Xây dựng website thương mại điện tử giúp doanh nghiệp có thể kinh doanh trực tuyến, dễ dàng trong việc quản lý sản phẩm.
Tạo ra một trang mua sắm trực tuyến giúp cho người tiêu dùng có thể lựa chọn, đặt mua các sản phẩm công nghệ một cách dễ dàng, đảm bảo một trải nghiệm tốt.
CƠ SỞ LÍ THUYẾT VÀ LÍ DO CHỌN ĐỀ TÀI
Cơ sở thực tế và lí do chọn đề tài
Sự phát triển mạnh mẽ của công nghệ thông tin và hội nhập internet dẫn đến nhu cầu sử dụng các thiết bị di động, máy tính, máy tính bảng, ngày càng tăng cao trong mọi lĩnh vực của đời sống Nhu cầu mua sắm đồ công nghệ cũng tăng cao theo, đặc biệt là đối với các sản phẩm mới và có tính năng hiện đại.
Theo số liệu của Statista, doanh thu thị trường bán lẻ đồ điện tử và máy tính tại Việt Nam dự kiến đạt 15 tỷ USD vào năm 2025, với mức tăng trưởng trung bình hàng năm 7,2% trong giai đoạn 2020-2025 Điều này cho thấy tiềm năng to lớn của thị trường kinh doanh đồ công nghệ tại Việt Nam.
Nhu cầu mua sắm trực tuyến ngày càng tăng cao do sự tiện lợi, nhanh chóng và đa dạng sản phẩm Mua sắm trực tuyến giúp tiết kiệm thời gian và chi phí di chuyển, so sánh giá cả dễ dàng, có nhiều chương trình khuyến mãi hấp dẫn Xu hướng mua sắm trực tuyến ngày càng phổ biến, đặc biệt là trong giới trẻ.
Theo báo cáo của Criteo, 72% người tiêu dùng Việt Nam mua sắm trực tuyến ít nhất một lần trong 6 tháng qua Số lượng người mua sắm trực tuyến tại Việt Nam dự kiến đạt 80 triệu vào năm 2025 Điều này cho thấy tiềm năng to lớn của thương mại điện tử trong lĩnh vực kinh doanh đồ công nghệ.
Thị trường kinh doanh thiết bị công nghệ đang tiềm năng và đầy hứa hẹn với nhiều dư địa phát triển Quy mô thị trường ngày càng tăng, số lượng người mua sắm trực tuyến ngày càng nhiều Nhu cầu về các sản phẩm công nghệ đa dạng và phong phú, phù hợp với mọi đối tượng khách hàng. là cơ hội lớn cho các doanh nghiệp kinh doanh thiết bị công nghệ tham gia thị trường và gặt hái thành công.
Sự phát triển của thương mại điện tử
Thương mại điện tử đang bùng nổ mạnh mẽ tại Việt Nam với tốc độ tăng trưởng cao Doanh thu thương mại điện tử tăng trưởng liên tục trong những năm qua, dự kiến sẽ tiếp tục tăng trưởng trong những năm tới Các hình thức mua sắm trực tuyến ngày càng đa dạng, phong phú, thu hút nhiều người tham gia.
Theo số liệu của Bộ Công Thương, doanh thu thương mại điện tử Việt Nam đạt 40 tỷ USD vào năm 2022, tăng 15,3% so với năm 2021 Dự kiến, doanh thu thương mại điện tử Việt Nam sẽ đạt 52 tỷ USD vào năm 2025.
Các sàn thương mại điện tử lớn như Shopee, Lazada, Tiki, ngày càng phổ biến và thu hút nhiều người mua sắm Người tiêu dùng có thể dễ dàng tìm kiếm và mua sắm các sản phẩm mong muốn trên các sàn này Các sàn thương mại điện tử cung cấp nhiều dịch vụ tiện ích như thanh toán trực tuyến, giao hàng tận nơi, đổi trả hàng hóa,
Sự phát triển của các sàn thương mại điện tử đã tạo điều kiện thuận lợi cho các doanh nghiệp kinh doanh thiết bị công nghệ (Tech Hub) tham gia thị trường trực tuyến Doanh nghiệp có thể dễ dàng mở gian hàng trên các sàn này để tiếp cận khách hàng tiềm năng và tăng doanh thu.
Website kinh doanh thiết bị công nghệ (Tech Hub) là kênh bán hàng hiệu quả để tiếp cận khách hàng tiềm năng và tăng doanh thu Doanh nghiệp có thể dễ dàng tham gia thị trường thương mại điện tử thông qua việc xây dựng website bán hàng riêng Website kinh doanh cần có chiến lược marketing phù hợp để thu hút khách hàng và cạnh tranh hiệu quả.
Website kinh doanh thiết bị công nghệ (Tech Hub) cần cung cấp đầy đủ thông tin về sản phẩm, giá cả, chính sách mua hàng, thanh toán và vận chuyển.
Doanh nghiệp cũng cần xây dựng hình ảnh thương hiệu chuyên nghiệp và uy tín để tạo dựng lòng tin với khách hàng.
Ngành kinh doanh đồ công nghệ online có tính cạnh tranh cao do có nhiều doanh nghiệp tham gia Các doanh nghiệp cần có chiến lược kinh doanh hiệu quả để thu hút khách hàng và cạnh tranh trên thị trường Cần chú trọng đến chất lượng sản phẩm, giá cả hợp lý, dịch vụ khách hàng tốt để tạo dựng uy tín thương hiệu.
Tuy nhiên, vẫn còn nhiều cơ hội cho các doanh nghiệp mới tham gia thị trường nếu có chiến lược kinh doanh phù hợp Cần nghiên cứu thị trường kỹ lưỡng, xác định phân khúc khách hàng mục tiêu và xây dựng sản phẩm, dịch vụ phù hợp Áp dụng các chiến lược marketing hiệu quả để thu hút khách hàng và tạo dựng thương hiệu.
Với những yếu tố trên, việc thiết kế website kinh doanh đồ công nghệ(Tech Hub) là một đề tài tiềm năng và đầy hứa hẹn Nhóm có đủ kiến thức, kỹ năng và niềm đam mê để thực hiện tốt đề tài này.
Công nghệ sử dụng
ReactJS được phát triển bởi Facebook và được giới thiệu lần đầu tiên vào năm 2011 Ban đầu, ReactJS được phát triển để xây dựng giao diện người dùng trên trang web Facebook, nhằm cải thiện tốc độ và hiệu suất của ứng dụng web.
Hiện nay, ReactJS đã trở thành một trong những thư viện phát triển web phổ biến nhất, được sử dụng rộng rãi bởi các công ty lớn và nhỏ trên toàn thế giới Facebook cũng tiếp tục đầu tư phát triển và nâng cấp ReactJS để đáp ứng nhu cầu của cộng đồng phát triển.
Typescript do Microsoft phát triển, nó là 1 mã nguồn mở cho lập trình viên phát triển Là sản phẩm của ông lớn, nên chắc chắn nó phải xịn và được nhiều lập trình viên đón nhận.
Những điểm mạnh của typescript:
Kế thừa các cú pháp từ javascript nên rất dễ sử dụng hơn các mã nguồn tương tự
Ngoài kế thừa từ các phiên bản javascript, nó càng hỗ trợ các cú pháp đặc trưng của hướng đối tượng như interface, class,vv nên rất mạnh mẽ khi apply các design pattern.
Được các lib/framework khuyến khích sử dụng(vì bản thân nó cũng được dần chuyển qua viết bằng typescript)
Những dự án lớn thành công cũng đã áp dụng typescript
Một điều nữa là nó hỗ trợ rất tốt khi dùng 1 công cụ là visual code (sản phẩm của microsoft) được nhiều lập trình viên frontend sử dụng, hỗ trợ suggest code và báo lỗi cực mạnh khi dùng typescirpt trong công cụ này Lợi ích của việc sử dụng Typescript với React:
Gợi ý mã: Loại chỉ định cung cấp các đề xuất và tùy chọn trong khi bạn nhập Điều này giúp tiết kiệm rất nhiều công sức và giúp một nhà phát triển mới sử dụng mã nguồn của bạn dễ dàng hơn Các đề xuất mã này ngăn chặn thời gian lãng phí, dễ dàng giao tiếp nhóm và làm cho cơ sở mã của bạn nhất quán hơn.
Khả năng đọc và xác thực: Vì Typescript là một hệ thống được định kiểu tĩnh, bạn có thể thêm các kiểu vào các biến, hàm và thuộc tính, làm cho mã của bạn dễ đọc hơn rất nhiều Typescript cũng dùng để loại bỏ PropTypes của React, điều này giúp cho việc phát triển React dễ dàng hơn.
Bắt lỗi sớm hơn và IntelliSense: Một trong những tính năng được yêu thích nhất của Typescript là khả năng đánh dấu lỗi ngay khi chúng xuất hiện.
Typescript hiển thị cho bạn các lỗi trước khi bạn chạy mã, tiết kiệm hàng giờ đồng hồ để sửa lỗi hoặc nhầm lẫn sớm.
Duy trì và tái cấu trúc mã chính xác: Khi cơ sở mã của một ứng dụng
React phát triển, nó có thể trở nên quá khó khăn để đọc, chia sẻ hoặc duy trì.
Việc điều hướng các cơ sở mã này có thể tẻ nhạt và việc cấu trúc lại mã rất rủi ro Typescript thực sự giúp bạn cấu trúc lại mã và ngăn lỗi chính tả, giúp việc duy trì và cập nhật dễ dàng hơn nhiều mà không thay đổi bất kỳ hành vi nào của nó.
Cải thiện việc sử dụng JavaScript: Typescript tích hợp hoàn toàn với
JavaScript và sử dụng các tính năng mới nhất có sẵn cho nhà phát triển JavaScript Các dự án React được xây dựng bằng biên dịch Typecript thành một phiên bản JavaScript chạy trên bất kỳ trình duyệt nào
Java là ngôn ngữ lập trình đa nền tảng (cross-platform), được phát triển bởiJames Gosling tại Sun Microsystems (nay là Oracle Corporation) Ngôn ngữ lập
Java sử dụng cấu trúc lập trình hướng đối tượng (object-oriented programming - OOP) và được xây dựng trên cơ sở của ngôn ngữ lập trình C++ Nó cung cấp một môi trường chạy ảo (virtual machine) gọi là Java Virtual Machine (JVM), giúp các chương trình Java có thể chạy trên nhiều nền tảng khác nhau mà không cần phải biên dịch lại.
Các tính năng của Java bao gồm: đa nền tảng, quản lí bộ nhớ tự động, hỗ trợ đa luồng, tính bảo mật cao, hỗ trợ các thư viện và công cụ phát triển mạnh mẽ, tính di động, tính độc lập với nền tảng, tính kế thừa và đa hình, tính mở rộng…
Spring là một Framework phát triển các ứng dụng Java được sử dụng bởi hàng triệu lập trình viên Nó giúp tạo các ứng dụng có hiệu năng cao, dễ kiểm thử, sử dụng lại code…
Kiến trúc, các module của Spring Framework Spring được chia làm nhiều module khác nhau, tùy theo mục đích phát triển ứng dụng mà ta dùng 1 trong các module đó.
Tầng này cung cấp khả năng hỗ trợ kiểm thử với JUnit và TestNG.
Bao gồm các module spring core, beans, context và expression languate (EL) Spring core, bean cung cấp tính năng IOC và Dependency Injection Spring Context hỗ trợ đa ngôn ngữ (internationalization), các tính năng Java EE như EJB, JMX.
Expression Language được mở rộng từ Expresion Language trong JSP Nó cung cấp hỗ trợ việc setting/getting giá trị, các method cải tiến cho phép truy cập collections, index, các toán tử logic…
Những module này hỗ trợ cài đặt lập trình hướng khía cạnh (Aspect Oriented Programming), hỗ trợ tích hợp với AspectJ.
Nhóm này bao gồm JDBC, ORM, OXM, JMS và module Transaction.
Những module này cung cấp khả năng giao tiếp với database
Hay còn gọi là Spring MVC Nhóm này gồm Web, Web-Servlet… hỗ trợ việc tạo ứng dụng web.
Các lợi ích của Spring Framework
Công cụ phát triển
Visual Studio Code là một trình soạn thảo mã nguồn được phát triển bởi Microsoft dành cho Windows, Linux và macOS Nó hỗ trợ chức năng debug, đi kèm với Git, có chức năng nổi bật cú pháp (syntax highlighting), tự hoàn thành mã thông minh, snippets, và cải tiến mã nguồn Nó cũng cho phép tùy chỉnh, người dùng có thể thay đổi theme, phím tắt, và các tùy chọn khác Nó miễn phí và là phần mềm mã nguồn mở theo giấy phép MIT, mặc dù bản phát hành của Microsoft là theo giấy phép phần mềm miễn phí.
Trong dự án này, nhóm em sử dụng Visual Studio Code làm công cụ để phát triển phần Front-end cho dự án.
IntelliJ IDEA là một môi trường phát triển tích hợp (IDE) mạnh mẽ được thiết kế đặc biệt cho lập trình Java, và cũng có khả năng hỗ trợ một số ngôn ngữ khác như Node.js, Python hay nhiều ngôn ngữ khác Phiên bản đầu tiên của IntelliJ IDEA được phát hành vào tháng 1/2001, từ đó đến nãy nó đã trở thành một trong những IDE hàng đầu trong cộng đồng phát triển phần mềm.
Mặc dù ban đầu được biết đến chủ yếu là một IDE Java, IntelliJ IDEA đã mở rộng sự hỗ trợ của mình cho nhiều ngôn ngữ và framework khác nhau Nó cung cấp một loạt các tính năng thông minh như trình soạn thảo mã thông minh, công cụ phân tích mã và bộ công cụ refactorings giúp tối ưu hóa quy trình phát triển phần mềm.
IntelliJ IDEA có hai phiên bản chính: phiên bản miễn phí (community) và phiên bản trả phí (ultimate) Phiên bản trả phí cung cấp nhiều tính năng mở rộng hơn như hỗ trợ JavaScript, TypeScript, các plugin GWT, Vaadin, kiểm tra đoạn mã trùng lặp cùng các tính năng nổi trội khác Ngoài ra, IntelliJ IDEA cũng là nền tảng cho nhiều sản phẩm IDE khác của JetBrains như PyCharm, PhpStorm, RubyMine,
… giúp đáp ứng nhu cầu phát triển phần mềm đa dạng của các nhà phát triển
Trong dự án này, nhóm em sử dụng IntelliJ IDEA làm công cụ để phát triển phần Back-end cho dự án.
1.3.3 Một số công cụ và phần mềm khác
ĐẶC TẢ ĐỀ TÀI
Phát biểu bài toán
Dựa trên nhu cầu thực tiễn, nhóm đã nhận thấy việc phát triển một trang web thương mại điện tử là cần thiết Mục tiêu của đề tài là xây dựng và triển khai một trang web thương mại điện tử để quản lý và bán các sản phẩm điện tử trực tuyến thông qua phần mềm và hệ thống website.
Yêu cầu hệ thống
Khách hàng truy cập vào trang web, chọn các thông tin cơ bản như danh mục sản phẩm, giá tiền và thương hiệu, sau đó ấn tìm kiếm để hiển thị các sản phẩm tương ứng.
Trang chi tiết sản phẩm cung cấp bộ lọc giúp khách hàng chọn lựa màu sắc, kích thước, và tính năng của sản phẩm.
Thông tin chi tiết của từng sản phẩm bao gồm hình ảnh, mô tả, giá tiền, thông số kỹ thuật, và trạng thái còn hàng.
Sắp xếp sản phẩm theo giá tăng dần, giảm dần và nổi bật.
Khi mua sản phẩm, khách hàng cung cấp thông tin như Họ tên, Địa chỉ, Số điện thoại, Email để nhận thông tin đơn hàng và vận chuyển sản phẩm.
Quản lý thông tin sản phẩm, đơn hàng, và người dùng.
Theo dõi và xử lý các đơn đặt hàng, cập nhật trạng thái đơn hàng.
Phần quản lý cửa hàng:
Quản lý thông tin hàng hóa, nhập hàng từ nhà cung cấp, cập nhật số lượng tồn kho.
Tạo và quản lý các chương trình khuyến mãi, giảm giá sản phẩm.
Thống kê doanh số bán hàng, lợi nhuận, và hàng tồn kho.
Yêu cầu phi chức năng:
Giao diện thân thiện, dễ sử dụng, hoạt động mượt mà trên mọi thiết bị.
Đảm bảo tính bảo mật thông tin cá nhân của khách hàng.
Tốc độ tải trang nhanh để cải thiện trải nghiệm người dùng.
Hỗ trợ nhiều phương thức thanh toán an toàn và tiện lợi cho khách hàng.
PHÂN TÍCH, THIẾT KẾ HỆ THỐNG
Các yêu cầu của hệ thống
3.1.1 Các yêu cầu chức năng của hệ thống
Tác nhân Chức năng thực hiện
- Khách vãng lai - Đăng nhập, đăng ký, quên mật khẩu, tìm kiếm sản phẩm, xem chi tiết sản phẩm, quản lý giỏ hàng
- Thành viên - Quản lý sản phẩm yêu thích, cập nhật thông tin, đăng xuất, đổi mật khẩu, xem lịch sử đơn hàng, thanh toán, đánh giá sản phẩm, nhận xét về website, (gồm các chức năng của khách vãng lai)
- Người quản lý (admin) - Xem thống kê, quản lý đơn hàng, quản lý loại sản phẩm, quản lý sản phẩm, quản lý người dùng, …
Bảng 3.1 Các yêu cầu chức năng của hệ thống
3.1.2 Các yêu cầu phi chức năng của hệ thống Đặc tính Yêu cầu
- Dữ liệu được lưu trữ trong cơ sở dữ liệu và được đảm bảo sao lưu định kỳ và khả năng phục hồi.
- Hệ thống sử dụng các công nghệ bảo mật để đảm bảo tính bảo mật của dữ liệu.
- Hệ thống sử dụng xác thực người dùng để đảm bảo tính an toàn và truy cập dữ liệu chỉ dành cho người dùng được phép.
- Các dữ liệu về tài khoản người dùng được mã hóa và bảo mật để đảm bảo tính riêng tư.
- Mật khẩu được mã hóa bằng thuật toán Bcrypt để đảm bảo an toàn thông tin.
- Hệ thống có thể hoạt động trên mọi trình duyệt web phổ biến.
- Giao diện được thiết kế đơn giản, dễ sử dụng, hấp dẫn và thân thiện với người dùng.
- Thiết kế giao diện đồng nhất về màu sắc, font chữ và định dạng giúp người dùng dễ dàng sử dụng và tìm kiếm thông tin.
- Hệ thống sử dụng ngôn ngữ Tiếng Việt để đáp ứng nhu cầu của người dùng tại Việt Nam.
Bảng 3.2 Các yêu cầu phi chức năng của hệ thống
Biểu đồ Use case
Hình 3.3 Biểu đồ Use case tổng quát
3.2.2 Biểu đồ Use case của khách
Hình 3.4 Biểu đồ Use case của khách
3.2.3 Biểu đồ Use case của thành viên
Hình 3.5 Biểu đồ Use case của thành viên
3.2.4 Biểu đồ Use case của người quản lý
Hình 3.6 Biểu đồ Use case của người quản lý
3.2.5 Danh sách các Use case và mô tả Mã Tên use case Mô tả use case Chức năng
UC1 Đăng nhập Các tác nhân đăng Truy cập vào để mua sản phẩm hàng
UC3 Đăng xuất Khách hàng muốn đăng xuất tài khoản khỏi hệ thống
UC4 Quên mật khẩu Khách hàng quên mật khẩu và muốn thiết lập lại để khôi phục quyền truy cập vào tài khoản của mình
Cho phép khách hàng thiết lập lại mật khẩu khi họ quên mật khẩu
UC5 Tìm kiếm và lọc sản phẩm Khách hàng muốn tìm kiếm và lọc sản phẩm để dễ dàng chọn một sản phẩm phù hợp với yêu cầu của mình
Thu hẹp kết quả tìm kiếm, hiển thị thông tin chi tiết sản phẩm đúng với yêu cầu của khách hàng
UC6 Xem chi tiết sản phẩm Khách hàng muốn xem chi tiết về sản phẩm như hình ảnh, giá cả và các thông tin liên quan khác
Hiển thị thông tin chi tiết về sản phẩm như : tên sản phẩm, giá cả, và các đánh giá
UC7 Quản lý giỏ hàng Khách hàng muốn quản lý giỏ hàng để kiểm tra, thêm,
Hiển thị sản phẩm, thêm, xóa ,sửa sản sửa hoặc xóa sản phẩm phẩm, cập nhật tổng giá trị đơn hàng
UC8 Quản lý sản phẩm yêu thích Khách hàng muốn quản lý danh sách sản phẩm yêu thích để theo dõi và lưu trữ các sản phẩm mà họ quan tâm.
Hiển thị sản phẩm yêu thích, có thể thêm, sửa, xoá sản phẩm yêu thích
UC9 Cập nhật thông tin cá nhân Khách hàng muốn cập nhật thông tin cá nhân của mình để đảm bảo rằng thông tin là chính xác
Cho phép khách hàng truy cập và chỉnh sửa thông tin cá nhân trên trang web bán sản phẩm Khách hàng có thể nhập hoặc chỉnh sửa địa chỉ, số điện thoại, và mật khẩu.
UC10 Nhận xét Khách hàng muốn Nhận xét về tiến hành thanh toán để mua những sản phẩm trong giỏ hàng hoàn tất quá trình mua sắm bằng cách chọn phương thức thanh toán và nhập thông tin cần thiết Khách hàng sau đó xác nhận và hoàn tất thanh toán để đặt hàng, và hệ thống hiển thị xác nhận đơn hàng
UC12 Đánh giá sản phẩm Khách hàng muốn đánh giá về một sản phẩm sau khi đã sử dụng
Cho phép khách hàng đánh giá và chia sẻ ý kiến về các sản phẩm.
Khách hàng có thể chọn số sao và nhập ý kiến chi tiết, sau đó xác nhận và gửi đánh giá của mình
UC13 Xem lịch sử mua hàng Khách hàng muốn xem lịch sử mua hàng để kiểm tra các đơn hàng đã đặt và chi tiết về giao dịch.
Khách hàng có thể xem danh sách các đơn hàng, và chọn để xem chi tiết về giao dịch, sản phẩm, và thông tin vận chuyển của từng đơn hàng
UC14 Quản lý người dùng Admin muốn quản lý thông tin người dùng, bao gồm thêm mới, sửa đổi, và xóa người dùng
Cho phép Admin quản lý thông tin khách hàng.
Admin có thể xem danh sách khách hàng, thêm mới khách hàng, sửa đổi thông tin, và xóa khách hàng khi cần thiết
UC15 Quản lý sản phẩm Admin muốn quản lý thông tin về sản
Cho phép Admin quản lý thông tin khỏi hệ thống sản phẩm, thêm sản phẩm mới, sửa đổi thông tin sản phẩm, và xóa sản phẩm khỏi hệ thống
UC16 Quản lý loại sản phẩm Admin muốn quản lý thông tin về các loại sản phẩm, bao gồm thêm mới, sửa đổi, và xóa các loại sản phẩm
Cho phép Admin quản lý thông tin về các loại sản phẩm Admin có thể xem danh sách loại sản phẩm, thêm loại sản phẩm mới, sửa đổi thông tin loại sản phẩm, và xóa loại sản phẩm khỏi hệ thống
UC17 Quản lý đơn hàng Admin muốn quản lý thông tin về các đơn hàng, bao gồm xem chi tiết, cập nhật trạng thái, và hỗ trợ khách hàng
Cho phép Admin quản lý thông tin về các đơn hàng.
Admin có thể xem danh sách đơn hàng, xem chi tiết từng đơn,cập nhật trạng thái và hỗ trợ khách hàng liên quan đến đơn hàng
3.2.6 Đặc tả Use case 3.2.6.1 Đặc tả UC1 “Đăng nhập”
Use Case: Đăng nhập Mã Use Case UC1
Tên Use Case Đăng nhập
Tác nhân Khách hàng, người quản lý
Nếu muốn sử dụng những chức năng đặc thù của hệ thống, người dùng phải đăng nhập thành công để có thể thực hiện được các chức năng
Tiền Điều kiện Cần phải đã đăng ký trước đó rồi và nhớ tài khoản và mật khẩu
3.2.6.2 Đặc tả UC2 “Đăng ký”
Tên Use Case Đăng ký
3.2.6.3 Đặc tả UC3 “Đăng xuất”
Tên Use Case Đăng xuất
Tác nhân Khách hàng, người quản lý
Mô tả Muốn thoát tài khoản ra khỏi hệ thống
Tiền Điều kiện Đã đăng nhập trước đó
3.2.6.4 Đặc tả UC4 “Quên mật khẩu”
Use Case: Quên mật khẩu Mã Use Case UC4
Tên Use Case Quên mật khẩu
Mô tả Khi khách hàng quên mật khẩu và muốn lấy lại mật khẩu
Tiền Điều kiện Đã có tài khoản trước đó
3.2.6.5 Đặc tả UC5 “Tìm kiếm và lọc sản phẩm”
Use Case: Tìm kiếm và lọc sản phẩm Mã Use Case UC5
Tên Use Case Tìm kiếm và lọc sản phẩm
Mô tả Muốn tìm kiếm sản phẩm theo tên, loại hay lọc sản phẩm theo giá giảm dần, tăng dần
3.2.6.6 Đặc tả UC6 “Xem chi tiết sản phẩm”
Use Case: Xem chi tiết sản phẩm Mã Use Case UC6
Tên Use Case Xem chi tiết sản phẩm
Mô tả Muốn xem chi tiết sản phẩm nào đó
3.2.6.7 Đặc tả UC7 “Quản lý giỏ hàng”
Use Case: Quản lý giỏ hàng Mã Use Case UC7
Tên Use Case Quản lý giỏ hàng
Mô tả Muốn thêm, sửa, xoá 1 sản phẩm nào đó trong giỏ hàng
3.2.6.8 Đặc tả UC8 “Quản lý sản phẩm yêu thích”
Use Case: Quản lý sản phẩm yêu thích Mã Use Case UC8
Tên Use Case Quản lý sản phẩm yêu thích
Mô tả Muốn thêm, sửa, xóa 1 sản phẩm nào đó mà khách yêu thích
Tiền Điều kiện Cần phải đăng nhập
3.2.6.9 Đặc tả UC9 “Cập nhật thông tin cá nhân”
Mô tả Muốn thay đổi thông tin như avatar, tên, địa chỉ, sđt, …
Tiền Điều kiện Cần phải đăng nhập
3.2.6.10 Đặc tả UC10 “Nhận xét”
Use Case: Nhận xét Mã Use Case UC10
Tên Use Case Nhận xét
Mô tả Khi khách hàng thấy website có chỗ bất hợp lý hay chưa hài lòng thì khách hàng sử dụng chức năng “nhận xét” để phản hồi lại cho người quản lý
Tiền Điều kiện Cần phải đăng nhập
3.2.6.11 Đặc tả UC11 “Thanh toán”
Use Case: Thanh toán Mã Use Case UC11
Tên Use Case Thanh toán
Mô tả Khi khách hàng muốn thanh toán 1 hay nhiều sản phẩm
Tiền Điều kiện Cần phải đăng nhập
Trong giỏ hàng phải có sản phẩm
3.2.6.12 Đặc tả UC12 “Đánh giá sản phẩm”
Use Case: Đánh giá sản phẩm Mã Use Case UC12
Tên Use Case Đánh giá sản phẩm
Mô tả Khách hàng muốn đánh giá 1 sản phẩm
Tiền Điều kiện Cần phải đăng nhập Đã mua sản phẩm đó rồi và trạng thái của sản phẩm đó là thành công
3.2.6.13 Đặc tả UC13 “Xem lịch sử mua hàng”
Use Case: Xem lịch sử mua hàng Mã Use Case UC13
Tên Use Case Đăng ký
Mô tả Khách hàng muốn xem lại các đơn hàng trước đó đã mua
Tiền Điều kiện Cần phải đăng nhập
3.2.6.14 Đặc tả UC14 “Quản lý người dùng”
Use Case: Quản lý người dùng Mã Use Case UC14
Tên Use Case Quản lý người dùng
Tác nhân Người quản lý
Mô tả Người quản lý muốn thêm, sửa, xoá người dùng
Tiền Điều kiện Cần phải đăng nhâp và có quyển admin
3.2.6.15 Đặc tả UC15 “Quản lý sản phẩm”
Use Case: Quản lý sản phẩm
Mô tả Người quản lý muốn thêm, sửa, xoá sản phẩm
Tiền Điều kiện Cần phải đăng nhâp và có quyển admin
3.2.6.16 Đặc tả UC16 “Quản lý loại sản phẩm”
Use Case: Quản lý loại sản phẩm Mã Use Case UC16
Tên Use Case Quản lý loại sản phẩm
Tác nhân Người quản lý
Mô tả Người quản lý muốn thêm, sửa, xoá loại sản phẩm
Tiền Điều kiện Cần phải đăng nhâp và có quyển admin
3.2.6.17 Đặc tả UC17 “Quản lý đơn hàng”
Use Case: Quản lý đơn hàng Mã Use Case UC17
Tên Use Case Quản lý đơn hàng
Tác nhân Người quản lý
Mô tả Người quản lý muốn thêm, sửa, xoá đơn
Tiền Điều kiện Cần phải đăng nhâp và có quyển admin
Biểu đồ activity
3.3.2 Biểu đồ chức năng đăng ký
3.3.3 Biểu đồ chức năng quên mật khẩu
3.3.4 Biểu đồ chức năng thanh toán
3.3.5 Biểu đồ chức năng giỏ hàng
3.3.6 Biểu đồ chức năng sản phẩm yêu thích
3.3.7 Biểu đồ chức năng lọc sản phẩm
Biểu đồ sequence
3.4.3 Biểu đồ quên mật khẩu
3.4.6 Biểu đồ yêu thích sản phẩm
3.4.7 Biểu đồ lọc sản phẩm
Thiết kế cơ sở dữ liệu
- Mô tả: Dùng để lưu trữ địa chỉ của khách hàng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi địa chỉ của khách hàng tương ứng với 1 ID để phân biệt
Lưu trữ ID của khách hàng
3 default_address BIT(1) Đánh dấu khách hàng có dùng địa chỉ mặc định hay không
Lưu trữ ID của quận, huyện nơi địa chỉ của khách hàng
Lưu trữ ID của tỉnh, thành phố
KEY của phường, xã nơi địa chỉ của khách hàng
Lưu trữ số điện thoại của khách hàng
Lưu trữ họ tên đầy đủ của khách hàng
Lưu trữ email của khách hàng
Lưu trữ địa chỉ chi tiết của khách hàng (số nhà, đường,…) 11 is_deffault_addres s
BIT(1) Đánh dấu khách hàng có dùng địa chỉ mặc định hay không
- Mô tả: Dùng để lưu trữ tên các thương hiệu của sản phẩm
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi thương hiệu tương ứng với 1 ID để phân biệt
Lưu trữ đường link đến hình ảnh mô tả thương hiệu
3 name VARCHAR(45) UNIQUE Lưu trữ tên thương hiệu
- Mô tả: Dùng để thể hiện mối quan hệ giữa các danh mục sản phẩm với các thương hiệu, nghĩa là liệt kê từng danh mục hàng hoá cụ thể sẽ bao gồm các sản phẩm thuộc thương hiệu nào
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Lưu trữ ID thương hiệu
Lưu trữ ID danh mục hàng hoá
KEY hàng có 1 ID để phân biệt
Lưu trữ ID của khách hàng
Lưu trữ ID của sản phẩm trong giỏ hàng
4 quantity INT(11) Lưu trữ số lượng sản phẩm tương ứng
- Mô tả: Dùng để lưu trữ cấc danh mục hàng hoá
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi danh mục hàng hoá có 1 ID để phân biệt
2 enabled BIT(1) Xác định xem danh mục hàng hoá này có sẵn sàng để bán không
) đường link đến hình ảnh mô tả danh mục hàng hoá
UNIQUE Lưu trữ tên danh mục hàng hoá
- Mô tả: Dùng để lưu trữ thông tin tài khoản khách hàng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi tài khoản có 1 ID để phân biệt
2 enabled BIT(1) Xác định xem tài khoản có bị vô hiệu hoá hay không
3 created_time VARCHAR(6) Lưu trữ ngày khởi tạo tài khoản
VARCHAR(30) Lưu trữ mã để khôi phục mật khẩu
6 email VARCHAR(45) UNIQUE Lưu trữ email tài khoản
7 full_name VARCHAR(45) Lưu trữ họ tên đầy đủ của tài khoản
3.6 password VARCHAR(64) Lưu trữ mật khẩu của tài khoản
9 verification_code VARCHAR(64) Lưu trữ mã kích hoạt tài khoản
Lưu trữ liên kết đến link ảnh đại diện của tài khoản
11 authenication_type ENUM Phân loại tài khoản đăng nhập từ nguồn nào (dữ liệu, tài khoản Google, tài khoản Facebook)
- Mô tả: Dùng để lưu trữ các quận, huyện
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi quận, huyện có 1 ID để phân biệt
Lưu trữ ID của tỉnh, thành phố mà quận, huyện này thuộc về
Lưu trữ tên của quận, huyện
- Mô tả: Dùng để lưu trữ thông tin sản phẩm
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
1 id INT(11) PRIMARY Mỗi sản
3 average_rating FLOAT Lưu trữ mức đánh giá của người dùng đối với của sản phẩm
4 rating_count INT(11) Lưu trữ số lượt đánh giá cho sản phẩm
5 created_time DATETIME Lưu trữ ngày thêm sản phẩm
6 current_price INT(11) Lưu trữ giá hiện tại của sản phẩm
7 listed_price INT(11) Lưu trữ giá niêm yết của sản phẩm
8 discount_percent INT(11) Lưu trữ mức giảm giá của sản phẩm
9 enabled BIT(1) Xác định xem sản phẩm còn được bán hay không
10 full_description TEXT Lưu trữ mô tả sản phẩm đầy đủ
11 short_description TEXT Lưu trữ mô tả sản phẩm ngắn gọn
12 height FLOAT Lưu trữ chiều cao sản phẩm
13 length FLOAT Lưu trữ chiều dài sản phẩm
14 width FLOAT Lưu trữ chiều rộng sản phẩm
15 weight FLOAT Lưu trữ khối lượng sản phẩm
Lưu trữ đường link đến ảnh sản phẩm
17 name VARCHAR(256 UNIQUE Lưu trữ tên phẩm
19 updated_time DATETIME(6) Lưu trữ ngày cập nhật sản phẩm
Lưu trữ tên thương hiệu sản phẩm
Lưu trữ tên danh mục sản phẩm
Lưu trữ hệ điều hành sản phẩm
23 sold_quantity INT(11) Lưu trữ số lượng sản phẩm đã bán ra
- Mô tả: Dùng để lưu trữ các hình ảnh sản phẩm
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi hình ảnh có 1 ID để phân biệt
Lưu trữ ID sản phẩm
3 name VARCHAR(255 Lưu trữ tên
Lưu trữ đường link đến hình ảnh sản phẩm
- Mô tả: Dùng để lưu trữ thông tin đơn đặt hàng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi đơn đặt hàng có 1 ID để phân biệt
Lưu trữ ID khách hàng
3 total INT(11) Lưu trữ số lượng sản phẩm trong đơn hàng
4 order_time DATETIME(6) Lưu trữ thời gian đặt đơn hàng
Lưu trữ email khách hàng
Lưu trữ số điện thoại khách hàng
Lưu trữ tỉnh, thành phố của khách hàng
8 district VARCHAR(45 Lưu trữ quận, huyện
Lưu trữ địa chỉ củ thể như số nhà, đường của khách hàng
Lưu trữ tênd dầy đủ khách hàng
12 note TEXT Lưu trữ ghi chú của khách hàng đối với đơn hàng
13 payment_method ENUM Lưu trữ phương thức thanh toán của đơn hàng (COD, VNPay)
14 status ENUM Lưu trữ trạng thái đơn hàng (New, Canceled,
Processing, Packaged, Picked, Shipping, Delivered, Returned_Requested , Returned, Paid, Refunded)
- Mô tả: Dùng để lưu sản phẩm ưa thích của khách hàng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Lưu trữ id sản phẩm
2 customer_id INT(11) FOREIGN Lưu trữ id người
Lưu trữu id sản phẩm
- Mô tả: Dùng để lưu trữ chi tiết đơn đặt hàng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi dòng chi tiết đơn hàng có 1 ID để phân biệt
Lưu trữ ID đơn hàng
Lưu trữ ID sản phẩm trong đơn hàng
4 quantity INT(11) Lưu trữ số lượng sản phẩm
5 subtotal INT(11) Lưu trữ tổng số lượng sản phẩm có
- Mô tả: Dùng để lưu trữ trạng thái đơn đặt hàng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi trạng thái đơn đặt hàng có 1 ID để phân biệt
Lưu trữ ID đơn đặt hàng
3 updated_time DATETIME(6) Lưu trữ thời gian cập nhật trạng thái đơn hàng
Lưu trữ ghi chú trạng thái đơn hàng
5 status ENUM Lưu trữ trạng thái đơn hàng (New, Canceled,
Processing, Packaged, Picked, Shipping, Delivered, Returned_Requested , Returned, Paid, Refunded)
- Mô tả: Dùng để lưu trữ các tỉnh, thành phố
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi tỉnh, thành phố có 1 ID để phân biệt
Lưu trữ tên tỉnh, thành phố
- Mô tả: Dùng để lưu trữ các đánh giá sản phẩm của khách hàng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi đánh giá có 1 ID để phân biệt
Lưu trữ ID khách hàng đánh giá
Lưu trữ ID của sản phẩm được đánh giá
4 rating INT(11) Lưu trữ đánh giá của khách hàng
5 review_time DATETIME(6) Lưu trữ thời gian đánh giá
Lưu trữ tiêu đề nội dung đánh giá
7 comment VARCHAR(300) Lưu trữ nội dung đánh giá
UNIQUE Lưu trữ tên vai trò
Lưu trữ mô tả chi tiết vai trò
- Mô tả: Dùng để lưu trữ thông tin chi tiết người dùng
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
1 enabled BT(1) Xác định người dùng có bị vô hiệu hoá hay không
Mỗi người dùng có 1 ID để phân biệt
Lưu trữ ID vai trò của người dùng này
4 phone_number VARCHAR(12) Lưu trữ số điện thoại của người dùng
5 frist_name VARCHAR(45) Lưu trữ tên của người dùng
6 last_name VARCHAR(45) Lưu trữ họ của người dùng
7 password VARCHAR(64) Lưu trữ mật khẩu của người dùng
3.6 photos VARCHAR(100) Lưu trữ đường link đến ảnh của người dùng
UNIQUE Lưu trữ email của người dùng
- Mô tả: Dùng để lưu trữ xã, phường
STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Mô tả
Mỗi phường, xã có 1 ID để phẩn biệt
Lưu trữ ID của quận, huyện mà phường xã này thuộc về
Lưu trữ tên của xã, phường
KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN
Kết quả đạt được
Chức năng đăng kí tài khoản người dùng
Gửi mail xác nhận đăng kí tài khoản
Lọc sản phẩm theo khoảng giá
Trang chi tiết sản phẩm
Hướng phát tiển
Nâng cao trải nghiệm mua sắm bằng cách mở rộng danh mục sản phẩm để bao gồm đa dạng hơn các loại sản phẩm và thương hiệu Điều này có thể thu hút được đa dạng đối tượng khách hàng và tăng cơ hội bán hàng.
Tìm kiếm cơ hội mở rộng thị trường và tăng cường chiến lược quảng bá thương hiệu để thu hút được nhiều khách hàng mới và tăng doanh số bán hàng.
Sử dụng các công cụ và kênh marketing số như quảng cáo trên mạng xã hội, email marketing, SEO để tăng hiệu quả quảng bá sản phẩm và thu hút khách hàng tiềm năng.
Đối với người tiêu dùng:
Liên tục tối ưu hóa giao diện và trải nghiệm người dùng trên trang web và ứng dụng di động để đảm bảo sự thoải mái và dễ sử dụng nhất cho người dùng.
Mở rộng các phương thức thanh toán và tối ưu hóa quy trình thanh toán để tăng tính tiện lợi và an toàn cho khách hàng.
Sử dụng trí tuệ nhân tạo để cá nhân hóa trải nghiệm mua sắm, dự đoán nhu cầu của khách hàng và cung cấp gợi ý sản phẩm phù hợp.
Xây dựng tính năng tương tác như trò chuyện trực tuyến, đánh giá và đánh giá sản phẩm, hỗ trợ trực tuyến sẽ giúp tạo ra một môi trường mua sắm trực tuyến chuyên nghiệp và tương tác hơn.
ĐÁNH GIÁ VÀ KẾT LUẬN
Đánh giá kết quả
Về phần kết quả cơ bản cũng đã hoàn thành hết những yêu cầu mà nhóm đặt ra ban đầu, có đầy đủ tài liệu báo cáo, hoàn thành đầy đủ các bản vẽ của dự án, tài liệu hướng dẫn và powerpoint thuyết trình.
Tuy nhiên vần source code có một số vấn đề không thể thực hiện được để có một giao diện hoàn chỉnh Nhưng cũng qua đồ án nguyên cứu này nhóm đã học được thêm nhiều kĩ năng về lập trình website Cũng như các ứng dụng sử dụng nó và một số công nghệ cơ bản
Qua quá trình tìm hiểu các yếu tố và yêu cầu để phục vụ cho đề tài, nhóm đã thực hiện được những lý thuyết đã học vào thực tế, cụ thể là đã tiến hành phân tích, thiết kế và xây dựng hệ thống “Website Tech Hub”, Website kinh doanh các mặt hàng công nghệ như điện thoại, máy tính, Đây là một trang web có danh mục sản phẩm rộng rãi bao gồm điện thoại, máy tính xách tay, máy tính bảng, thiết bị âm thanh và nhiều hơn nữa Khách hàng có thể duyệt qua danh mục sản phẩm, đọc mô tả sản phẩm, so sánh giá cả và mua hàng trực tuyến Ngoài ra, Tech Hub cũng có phần hỗ trợ khách hàng nơi khách hàng có thể tìm kiếm câu trả lời cho các câu hỏi thường gặp, liên hệ với bộ phận hỗ trợ khách hàng và theo dõi đơn hàng của họ.
Tech Hub là một trang web gọn nhẹ với đầy đủ chức năng cần thiết của một website chuyên nghiệp. Ưu điểm:
- Kiến thức của nhóm vẫn còn nhiều thiếu sót, chưa hoàn thiện nên dự án còn nhiều lỗ hổng, sai sót là điều không thể tránh khỏi.
Bài học rút ra - Rút kinh nghiệm từ dự án để tránh rủi ro không đáng có.
- Khuyến khích thành viên đội ngũ làm việc chăm chỉ và hợp tác tốt hơn.
- Đảm bảo tận dụng hết tiềm năng của tất cả mọi người