Bối cảnh và vấn đề nghiên cứu

Đề tài đồ án tốt nghiệp "Phát triển website cửa hàng giày" được thực hiện bởi sinh viên Nguyễn Duy Huy (Khoa Công nghệ Thông tin, Trường Đại học Công nghệ Đông Á) dưới sự hướng dẫn của ThS. Lê Trung Thực vào tháng 07 năm 2022.

Bối cảnh thực tiễn được tác giả nêu rõ xuất phát từ sự tăng trưởng thu nhập bình quân đầu người và mức sống tại Việt Nam, kéo theo nhu cầu tiêu dùng hiện đại và sự du nhập của các trào lưu mới. Trong đó, thú chơi và sưu tập giày sneaker trở thành niềm đam mê lớn của giới trẻ, mở ra thị trường tiềm năng không chỉ cho việc mua bán các sản phẩm giày đa dạng từ phổ thông đến phiên bản đặc biệt của các nhãn hàng, mà còn mở rộng sang các dịch vụ đi kèm có giá trị cao như vệ sinh, phục hồi và tùy biến (custom) giày. Đồng thời, mô hình kinh doanh truyền thống bộc lộ nhu cầu chuyển đổi số: việc ứng dụng thương mại điện tử giúp cửa hàng tối ưu hóa nhân sự bán hàng, còn khách hàng có thể tra cứu thông tin, so sánh giá cả và mua sắm từ xa chỉ qua vài thao tác trực tuyến.

Mục tiêu nghiên cứu của đề tài gồm các nội dung cụ thể:

  1. Xây dựng các chức năng cơ bản của một hệ thống website cửa hàng bán giày sneaker hoàn chỉnh phục vụ cả người mua và người quản lý.
  2. Thiết kế giao diện website có khả năng tự tương thích, hiển thị ổn định trên các thiết bị hiện tại và có khả năng nâng cấp, mở rộng trong tương lai.
  3. Hỗ trợ cửa hàng quảng bá sản phẩm, xây dựng và phát triển thương hiệu, đồng thời thúc đẩy mục tiêu doanh số bán hàng.
  4. Triển khai các khối nghiệp vụ quản lý: cập nhật dữ liệu hàng hóa vào cơ sở dữ liệu, phân loại danh mục sản phẩm, quản lý giỏ hàng, quản lý đơn đặt hàng, quản lý nhà cung cấp, quản trị tin tức và thống kê doanh thu.
  5. Thiết lập kênh tiếp nhận thông tin nhằm hỗ trợ khách hàng nhanh chóng khi có yêu cầu liên hệ.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Các chủ thể tương tác và vận hành hệ thống, bao gồm chủ cửa hàng (người quản lý/admin), nhân viên bán hàng và khách hàng; các quy trình nghiệp vụ bán lẻ và quản lý cửa hàng giày.
  • Phạm vi nghiên cứu: Khái niệm, kiến trúc hoạt động, các thành phần chính và quy trình phát triển website thương mại điện tử; mô hình kiến trúc Client - Server và mô hình MVC; ứng dụng ngôn ngữ PHP kết hợp hệ quản trị cơ sở dữ liệu MySQL để phân tích, thiết kế và cài đặt hệ thống phần mềm website bán giày sneaker.

Cơ sở lý thuyết và phương pháp

Tác giả đã hệ thống hóa cơ sở lý thuyết về nền tảng mạng và kỹ thuật phần mềm làm nền tảng cho việc xây dựng website:

  • Khái niệm nền tảng Web và Internet: Định nghĩa mạng Internet và dịch vụ World Wide Web (WWW); cấu trúc website dưới dạng tập hợp các trang web chứa văn bản, hình ảnh, âm thanh, video lưu trữ trên máy chủ (Web server).
  • Mô hình tương tác hệ thống Web: Xác định cơ chế hoạt động giữa 4 thành phần cơ bản: Người dùng cuối (End-User - EU), Giao diện hiển thị (Front-end - FE dùng HTML, CSS, JavaScript), Khối xử lý logic (Back-end - BE) và Cơ sở dữ liệu (Database - DB). Cơ chế xử lý tuân thủ luồng: FE bắt sự kiện từ người dùng $\rightarrow$ gửi Request đến BE $\rightarrow$ BE xử lý và thao tác dữ liệu với DB $\rightarrow$ DB trả dữ liệu cho BE $\rightarrow$ BE phản hồi (Response) về FE để hiển thị.
  • Lý thuyết Hệ thống thông tin (HTTT): Cấu trúc HTTT gồm ba thành phần tương tác: Đầu vào (Input), Xử lý (Handle) và Đầu ra (Output); cấu thành từ con người, quy trình và dữ liệu. Đánh giá chất lượng HTTT qua 5 tiêu chuẩn: Độ tin cậy (xác thực, chính xác), Tính đầy đủ (bao quát yêu cầu quản lý), Tính thích hợp và dễ hiểu (thông tin mạch lạc), Tính được bảo vệ (phân quyền truy cập an toàn), và Tính kịp thời.
  • Mô hình kiến trúc phần mềm MVC (Model - View - Controller):
    • Model (M): Thành phần lưu trữ dữ liệu, thực hiện các thao tác truy xuất, xem, xử lý trực tiếp với cơ sở dữ liệu và đóng vai trò cầu nối giữa View và Controller.
    • View (V): Phần giao diện người dùng, nơi hiển thị dữ liệu và tiếp nhận tương tác truy vấn từ khách hàng hoặc quản trị viên.
    • Controller (C): Bộ phận tiếp nhận và xử lý các yêu cầu từ View, kết nối với Model để trích xuất dữ liệu phù hợp và chuyển tiếp kết quả trở lại giao diện.
  • Công nghệ lưu trữ và phát triển:
    • Hệ quản trị cơ sở dữ liệu MySQL Server: Hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở sử dụng cú pháp SQL chuẩn, hoạt động trên giấy phép GPL; hỗ trợ quản lý tập dữ liệu lớn lên tới hơn 50 triệu dòng trong một bảng; kích thước file mặc định cho một bảng đạt từ 4 GB đến 9 GB và giới hạn lý thuyết lên tới 8 TB.
    • Ngôn ngữ lập trình PHP: Ngôn ngữ kịch bản phía máy chủ (Server-side) mã nguồn mở, tối ưu cho ứng dụng web, cú pháp tương đồng C và Java; có khả năng nhúng trực tiếp vào mã nguồn HTML và sinh mã HTML động trả về cho trình duyệt.
    • Công cụ lập trình: Visual Studio của Microsoft, hỗ trợ giao diện lập trình, quản lý mã nguồn và công cụ gỡ lỗi (debug, đặt Break Point, kiểm tra giá trị biến).

Phương pháp nghiên cứu được tác giả áp dụng bao gồm:

  • Phương pháp lý thuyết: Tìm hiểu nguyên lý hoạt động của kiến trúc Client - Server; nghiên cứu kỹ thuật lập trình kịch bản PHP và cơ chế lưu trữ, truy xuất dữ liệu của MySQL Server.
  • Phương pháp thực nghiệm và xây dựng phần mềm: Khảo sát quy trình nghiệp vụ bán hàng thực tế tại cửa hàng giày; tiến hành phân tích yêu cầu, thiết kế hệ thống bằng mô hình hóa UML (biểu đồ use case, biểu đồ tuần tự, biểu đồ hoạt động, biểu đồ chức năng) và lập trình cài đặt website động.

Thiết kế và triển khai

Hệ thống website bán giày sneaker được thiết kế theo cấu trúc phân tầng kết hợp mô hình Client - Server và mô hình MVC, phân định rõ ràng giữa giao diện người dùng, xử lý nghiệp vụ và lưu trữ dữ liệu.

Phân tích yêu cầu phi chức năng

Hệ thống được thiết kế đáp ứng các tiêu chí phi chức năng phục vụ vận hành:

STT Tên yêu cầu Mô tả chi tiết trong hệ thống
1 Giao diện Thiết kế trực quan, dễ sử dụng, thân thiện với người dùng, màu sắc hài hòa, font chữ đơn giản và dễ nhìn; cấu trúc website gọn gàng, dung lượng file tối ưu.
2 Tốc độ xử lý Hệ thống xử lý chuẩn các tác vụ truy vấn dữ liệu, cập nhật giỏ hàng và duyệt đơn hàng.
3 Bảo mật Đảm bảo tính bảo mật và độ an toàn vừa đủ; kiểm soát quyền truy cập thông qua xác thực tài khoản và mật khẩu; bảo vệ thông tin đơn hàng và tài khoản khách hàng.

Phân quyền tác nhân và chức năng hệ thống

Hệ thống xác định 3 nhóm tác nhân chính tham gia vào các luồng chức năng:

Tác nhân Quyền hạn và Chức năng chính
Khách hàng (Customer) - Xem danh mục, hình ảnh, kích thước, mẫu mã và giá bán sản phẩm.
- Tìm kiếm sản phẩm theo tên, chủng loại (giày thể thao, giày thời trang, dép...) hoặc mức giá.
- Đăng ký tài khoản thành viên, đăng nhập, đổi mật khẩu và quản lý thông tin cá nhân.
- Thêm, sửa số lượng, xóa sản phẩm trong giỏ hàng.
- Thực hiện đặt mua hàng, cung cấp địa chỉ giao hàng, số điện thoại, email xác nhận.
- Đọc tin tức cập nhật trên trang web và gửi ý kiến/câu hỏi liên hệ.
Quản trị viên (Admin/Administrator) - Đăng nhập quản trị hệ thống bằng email và mật khẩu được xác thực.
- Quản lý cấu hình và giao diện (thêm, sửa, xóa giao diện).
- Quản lý phân quyền và vai trò người dùng trong hệ thống.
- Quản trị tài khoản người dùng (bao gồm quản trị viên và thành viên khách hàng).
- Quản lý danh mục sản phẩm, cập nhật thông tin sản phẩm (tên, giá, hình ảnh, tình trạng; không cho phép sửa mã sản phẩm).
- Xóa sản phẩm không còn kinh doanh để tối ưu dung lượng hệ thống.
- Quản lý đơn hàng: tiếp nhận, kiểm tra số lượng tồn kho, duyệt đơn, hủy đơn nếu hết hàng, xác nhận giao hàng và thanh toán.
- Quản lý nhà cung cấp, quản lý tin tức, xem báo cáo và thống kê số lượng tồn kho theo từng mã sản phẩm/size.
Nhân viên bán hàng (Staff) - Đăng nhập hệ thống theo quyền hạn được phân bổ.
- Thực hiện các nghiệp vụ hỗ trợ bán hàng, tra cứu thông tin sản phẩm và tiếp nhận xử lý đơn đặt hàng của khách hàng.

Mô hình hóa hệ thống và Thiết kế cơ sở dữ liệu

Tác giả đã triển khai phân tích thiết kế hệ thống thông qua hệ thống biểu đồ UML và thiết kế liên kết cơ sở dữ liệu:

  • Biểu đồ Use Case: Xây dựng biểu đồ use case tổng quát và các biểu đồ use case chi tiết gồm: Use case đăng nhập, Use case quản lý cửa hàng (xem thông tin, tìm kiếm, sửa thông tin, xóa sản phẩm, thống kê sản phẩm tồn kho theo size), Use case quản lý khách hàng, Use case quản lý sản phẩm, Use case quản lý đơn hàng, và Use case thực hiện mua hàng.
  • Biểu đồ tuần tự (Sequence Diagram): Đặc tả dòng thông điệp tương tác theo thời gian cho các chức năng: Đăng ký, Đăng nhập (nhập email/password $\rightarrow$ kiểm tra hợp lệ $\rightarrow$ phản hồi thành công/báo lỗi), Tìm kiếm sản phẩm, Thêm sản phẩm vào giỏ hàng, Xóa sản phẩm khỏi giỏ hàng, Mua hàng - tiếp nhận và xử lý đơn hàng, Sửa thông tin sản phẩm, Thêm sản phẩm (Admin), Xóa sản phẩm (Admin), và Xem báo cáo thống kê.
  • Biểu đồ hoạt động (Activity Diagram): Mô tả quy trình nghiệp vụ của tác nhân khách hàng (tìm kiếm sản phẩm, quản lý giỏ hàng, đăng ký, đăng nhập) và quản trị viên (quản lý danh mục sản phẩm, quản lý danh sách thành viên, tiếp nhận và xử lý đơn hàng).
  • Cơ sở dữ liệu quan hệ (SQL Database): Thiết lập các bảng dữ liệu có liên kết quan hệ logic để lưu trữ thông tin nghiệp vụ, bao gồm các thực thể chính: Khách Hàng, Nhân Viên, Chức Vụ, Sản Phẩm và Loại Sản Phẩm.

Nội dung chính theo từng chương

Phần mở đầu

Trình bày mục đích và yêu cầu xây dựng website cửa hàng bán giày sneaker nhằm hỗ trợ mua sắm trực tuyến, tự tương thích thiết bị, kết nối CSDL để quản lý đơn hàng, hàng hóa, nhà cung cấp và tin tức. Đồng thời, tác giả xác định đối tượng nghiên cứu (chủ cửa hàng, nhân viên, khách hàng) và phạm vi nghiên cứu xoay quanh mô hình dịch vụ, kiến trúc website và các công nghệ phát triển web động.

Chương 1: Tổng quan về hệ thống

Phân tích thực trạng thị trường giày thể thao tại Việt Nam gắn với sự gia tăng mức sống của người dân và xu hướng tiêu dùng của giới trẻ đối với các sản phẩm sneaker và dịch vụ đi kèm. Chương này trình bày cơ sở lý thuyết về mạng Internet, World Wide Web, mô hình phân tầng tương tác Front-end - Back-end - Database, khái niệm và tiêu chuẩn chất lượng của hệ thống thông tin. Tác giả cũng phân tích các đặc điểm kinh doanh của cửa hàng giày (trang trí mặt tiền, quản lý tồn kho, lựa chọn sản phẩm, quản lý khách hàng), làm rõ quy trình nghiệp vụ mua bán - xử lý đơn hàng, đồng thời giới thiệu tổng quan các công nghệ thực hiện bao gồm cơ sở dữ liệu MySQL Server, ngôn ngữ lập trình PHP, mô hình thiết kế MVC và môi trường phát triển Visual Studio.

Chương 2: Phân tích thiết kế hệ thống website

Tập trung đặc tả các yêu cầu chức năng và phi chức năng của hệ thống; phân loại quyền hạn và bảng chức năng của các tác nhân (Admin, Quản lý, Người dùng). Tác giả tiến hành mô hình hóa toàn diện hệ thống thông qua các công cụ biểu đồ UML:

  • Xây dựng biểu đồ use case tổng quát và các use case phân rã chi tiết cho từng tác vụ quản trị và mua hàng.
  • Xây dựng biểu đồ tuần tự cho các quy trình đăng ký, đăng nhập, tìm kiếm, thao tác giỏ hàng, mua hàng, xử lý đơn hàng và thống kê.
  • Xây dựng biểu đồ hoạt động và biểu đồ chức năng thể hiện luồng xử lý công việc của khách hàng và ban quản trị.
  • Thiết kế cấu trúc cơ sở dữ liệu quan hệ với các bảng thực thể: Khách Hàng, Nhân Viên, Chức Vụ, Sản Phẩm, Loại Sản Phẩm.

Chương 3: Đánh giá kết quả và hướng phát triển của đề tài

Tổng kết những kết quả đạt được sau quá trình phân tích và xây dựng hệ thống website bán giày sneaker; đối chiếu với mục tiêu ban đầu về khả năng đáp ứng quy trình bán hàng trực tuyến và hỗ trợ quản lý. Đồng thời, tác giả đề xuất các định hướng nghiên cứu và hoàn thiện hệ thống trong các giai đoạn phát triển tiếp theo.

Kết quả và đóng góp

Về mặt kết quả cụ thể, đồ án đã hoàn thành các mục tiêu đề ra:

  • Khảo sát và mô hình hóa thành công quy trình nghiệp vụ của một cửa hàng kinh doanh giày sneaker, phân định rõ ràng luồng công việc giữa khách hàng, nhân viên bán hàng và nhà quản trị.
  • Phân tích và đặc tả chi tiết hệ thống phần mềm thông qua các bảng chức năng (Admin, Quản lý, Người dùng) cùng hệ thống biểu đồ UML chuẩn tắc (Use Case, Biểu đồ tuần tự, Biểu đồ hoạt động, Biểu đồ chức năng).
  • Thiết kế cấu trúc cơ sở dữ liệu quan hệ MySQL chuẩn hóa gồm các bảng Khách Hàng, Nhân Viên, Chức Vụ, Sản Phẩm, Loại Sản Phẩm nhằm đảm bảo tính toàn vẹn dữ liệu cho hoạt động bán hàng và quản trị tồn kho.
  • Ứng dụng thành công mô hình MVC kết hợp ngôn ngữ lập trình PHP, HTML, CSS, JavaScript và công cụ Visual Studio để xây dựng trang web động phục vụ tìm kiếm, quản lý giỏ hàng, đặt hàng và cập nhật sản phẩm.

Về giải pháp và kiến nghị nghiệp vụ:

  • Thiết lập quy trình đặt hàng chặt chẽ: bắt buộc người dùng đăng ký/đăng nhập thành viên trước khi tiến hành đặt đơn nhằm xác thực thông tin liên lạc (số điện thoại, email, địa chỉ giao hàng).
  • Đưa ra phương án quản lý đơn hàng kết hợp kiểm kho trực tiếp: người quản lý chủ động liên hệ với khách hàng để đổi hoặc hủy đơn trong trường hợp sản phẩm trong kho đã bán hết trước khi duyệt đơn và giao hàng.
  • Đề xuất xóa bỏ các bản ghi sản phẩm đã hết hàng trong thời gian dài nhằm tối ưu hóa dung lượng cơ sở dữ liệu và tránh làm phình to hệ thống lưu trữ.

Về đóng góp của đề tài:

  • Vận dụng kiến thức lý thuyết về công nghệ phần mềm, phân tích thiết kế hệ thống và phát triển web vào việc giải quyết bài toán thực tế của một cửa hàng bán lẻ giày dép.
  • Xây dựng được tài liệu phân tích thiết kế hệ thống chi tiết, làm cơ sở kỹ thuật cho việc triển khai và nâng cấp các website thương mại điện tử quy mô vừa và nhỏ.

Hạn chế và hướng nghiên cứu tiếp

Dựa trên nội dung được tác giả trình bày trong tài liệu, các hạn chế và định hướng phát triển được ghi nhận như sau:

  • Hạn chế: Hệ thống website được thiết kế ở quy mô cửa hàng nhỏ; tính bảo mật và an toàn dữ liệu dừng ở mức cơ bản theo yêu cầu thiết kế; việc xử lý các truy vấn nâng cao của SQL chưa được khai thác tối đa do bản chất đơn giản hóa của một số hàm truy xuất trong MySQL phục vụ PHP.
  • Hướng nghiên cứu tiếp:
    • Nâng cấp khả năng tự tương thích trên đa dạng các thiết bị phần cứng và nền tảng di động khác nhau.
    • Mở rộng các phân hệ thống kê, báo cáo doanh thu chuyên sâu phục vụ công tác quản trị kinh doanh.
    • Bổ sung và tích hợp trực tiếp các phân hệ dịch vụ đặc thù của cửa hàng giày lên website như đặt lịch dịch vụ vệ sinh, phục hồi và tùy biến (custom) giày theo yêu cầu của khách hàng.

Giá trị tham khảo

Đồ án tốt nghiệp này mang lại giá trị tham khảo hữu ích cho các đối tượng:

  • Sinh viên ngành Công nghệ thông tin và Hệ thống thông tin: Có thể sử dụng tài liệu làm mẫu tham khảo khi thực hiện đồ án tốt nghiệp, khóa luận hoặc môn học Phân tích thiết kế hệ thống thông tin, Lập trình web với PHP/MySQL.
  • Lập trình viên và người nghiên cứu phát triển web thương mại điện tử: Tham khảo cấu trúc phân tích biểu đồ UML (Use Case, Sequence, Activity), bảng phân quyền tác nhân và mô hình MVC trong việc xây dựng các ứng dụng bán hàng trực tuyến vừa và nhỏ.
  • Phần đáng tham khảo nhất: Chương 2 của tài liệu, với hệ thống đặc tả yêu cầu phi chức năng, bảng phân rã chức năng cho từng tác nhân và các biểu đồ tuần tự mô tả chi tiết luồng dữ liệu (đăng nhập, mua hàng, xử lý đơn hàng, quản lý kho).

Câu hỏi thường gặp

1. Khách hàng chưa có tài khoản hoặc chưa đăng nhập có thể thực hiện những thao tác nào trên website?
Theo quy trình nghiệp vụ được tác giả xây dựng, khách hàng chưa có tài khoản hoặc chưa đăng nhập vẫn có quyền truy cập website, tra cứu, xem thông tin chi tiết về sản phẩm (tên, mẫu mã, kích thước, giá cả, hình ảnh) và đọc tin tức mới. Tuy nhiên, khách hàng không có quyền thực hiện chức năng mua hàng nếu chưa đăng ký tài khoản thành viên và đăng nhập vào hệ thống.

2. Hệ quản trị cơ sở dữ liệu MySQL được tác giả sử dụng có các đặc tính và giới hạn lưu trữ lý thuyết như thế nào?
Tác giả nêu rõ MySQL là hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở sử dụng cú pháp SQL chuẩn, chạy trên giấy phép GPL và tích hợp chung với Apache, PHP. MySQL có khả năng hỗ trợ các tập dữ liệu lớn lên tới hơn 50 triệu hàng trong một bảng; kích thước file mặc định cho một bảng được giới hạn từ 4 GB đến 9 GB và có thể mở rộng đạt tới giới hạn lý thuyết là 8 TB.

3. Cơ sở dữ liệu của hệ thống bao gồm những bảng thực thể cơ bản nào?
Theo phần mô tả liên kết cơ sở dữ liệu trong Chương 2, cơ sở dữ liệu của website được xây dựng với các bảng thực thể chính bao gồm: bảng Khách Hàng, bảng Nhân Viên, bảng Chức Vụ, bảng Sản Phẩm và bảng Loại Sản Phẩm.

4. Khi có đơn hàng mới phát sinh, quy trình xử lý của người quản trị được thực hiện theo các bước nào?
Khi nhận được thông tin đặt hàng, người quản lý sẽ xem chi tiết đơn hàng và kiểm tra số lượng mặt hàng tương ứng trong kho. Nếu sản phẩm đã hết hàng, người quản lý sẽ liên lạc với khách hàng để thỏa thuận thay đổi sản phẩm hoặc hủy đơn. Nếu số lượng hàng hóa còn đủ, người quản lý sẽ thực hiện thao tác duyệt đơn đặt hàng, chuyển giao hàng và xác nhận thanh toán.

5. Mô hình MVC được áp dụng trong đồ án phân chia kiến trúc mã nguồn thành những thành phần nào?
Hệ thống áp dụng mô hình MVC chia mã nguồn thành 3 thành phần tách biệt: Model (chịu trách nhiệm lưu trữ, truy xuất và xử lý dữ liệu với cơ sở dữ liệu MySQL), View (giao diện hiển thị theme dành cho người dùng tương tác và xem dữ liệu) và Controller (tiếp nhận yêu cầu từ View, kết nối với Model để lấy hoặc cập nhật dữ liệu và gửi phản hồi tương ứng về cho View).

Kết luận

Đồ án tốt nghiệp "Phát triển website cửa hàng giày" của sinh viên Nguyễn Duy Huy đã hoàn thành việc nghiên cứu, phân tích và thiết kế một hệ thống thương mại điện tử hoàn chỉnh cho lĩnh vực bán lẻ giày sneaker. Tác giả đã hệ thống hóa đầy đủ cơ sở lý thuyết về hệ thống thông tin, mô hình Client - Server và kiến trúc phần mềm MVC, đồng thời chuyển hóa thành công vào các biểu đồ phân tích UML và mô hình cơ sở dữ liệu quan hệ MySQL. Đồ án phản ánh đúng năng lực ứng dụng công nghệ PHP và hệ quản trị cơ sở dữ liệu để giải quyết bài toán nghiệp vụ bán hàng thực tế tại cơ sở kinh doanh.