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

Lý do chọn đề tài và bối cảnh thực tiễn

Trong bối cảnh thương mại điện tử phát triển mạnh mẽ, thị trường bán lẻ thời trang trực tuyến tại Việt Nam ngày càng cạnh tranh gay gắt với sự tham gia của các nền tảng lớn như Lazada, Shopee, Tiki và Amazon. Tác giả xác định rằng việc triển khai một trang web bán hàng trên môi trường Internet không đơn giản do ba rào cản chính: chi phí, thời gian triển khai và bảo trì hệ thống. Đồng thời, qua quá trình thực tập và khảo sát thực tế trang web thương mại điện tử thời trang tại địa chỉ https://emoij.com (180 Láng Hạ, Đống Đa, Hà Nội), tác giả nhận thấy hệ thống hiện tại tồn tại nhược điểm rõ rệt: giao diện lỗi thời, thiếu chức năng giỏ hàng, thiếu chức năng tài khoản khách hàng và chức năng đánh giá sản phẩm.

Từ thực tiễn đó, tác giả lựa chọn đề tài "Phát triển website bán hàng thời trang bằng công nghệ ASP.NET MVC" nhằm xây dựng một hệ thống thương mại điện tử hoàn chỉnh, khắc phục các hạn chế của hệ thống cũ và ứng dụng kiến thức công nghệ thông tin vào bài toán kinh doanh thực tế.

Mục tiêu của đề tài

Tác giả xác định các mục tiêu cụ thể như sau:

  1. Nắm bắt phương pháp kinh doanh của cửa hàng thời trang trực tuyến.
  2. Xây dựng thành công website có đầy đủ các chức năng cần thiết và hoạt động hiệu quả, áp dụng công nghệ thông tin vào quản lý mặt hàng cho cửa hàng.
  3. Trình bày các vấn đề liên quan đến ASP.NET, HTML, CSS và thao tác với Web Server trong lập trình website.
  4. Phân tích hệ thống chương trình bao gồm giao diện và các user control nhằm đáp ứng nhu cầu người dùng.
  5. Triển khai và truy cập website trong môi trường web.
  6. Kiểm chứng kiến thức được học trên giảng đường Đại học và trang bị kiến thức mới.

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

  • Đối tượng nghiên cứu: Bài toán kinh doanh thời trang trực tuyến; hệ thống website bán hàng sử dụng công nghệ ASP.NET MVC.
  • Phạm vi kỹ thuật: Xây dựng phần mềm sử dụng công nghệ HTML, CSS, JavaScript, ASP.NET MVC, SQL Server; thao tác với Web Server trong lập trình website.
  • Phạm vi chức năng: Tập trung xử lý dữ liệu giải quyết bài toán kinh doanh thời trang của cửa hàng, bao gồm phân hệ khách hàng và phân hệ quản trị.

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

Khung lý thuyết và công nghệ nền tảng

Đồ án được xây dựng dựa trên ba trụ cột lý thuyết chính: phân tích thiết kế hướng đối tượng, cơ sở dữ liệu quan hệ và ngôn ngữ lập trình web.

Mô hình kiến trúc MVC (Model – View – Controller) là trung tâm của toàn bộ thiết kế hệ thống. Theo tác giả trình bày:

  • Model chứa toàn bộ nghiệp vụ logic, phương thức xử lý, truy xuất Database và các đối tượng mô tả dữ liệu.
  • View đảm nhận hiển thị thông tin và tương tác với người dùng thông qua các form HTML.
  • Controller tiếp nhận và điều hướng yêu cầu từ người dùng, gọi đúng phương thức xử lý tương ứng.

Nền tảng ASP.NET MVC được đánh giá có ưu điểm hỗ trợ Dependency Injection (DI), Inversion of Control (IoC), URL mapping linh hoạt và tích hợp Razor View Engine từ phiên bản MVC 3.

Ngôn ngữ UML (Unified Modeling Language) được sử dụng toàn diện để đặc tả hệ thống, bao gồm: Use Case Diagram, Sequence Diagram (Biểu đồ tuần tự), Activity Diagram (Biểu đồ hoạt động) và State Diagram (Biểu đồ trạng thái).

Phương pháp nghiên cứu

Đồ án thuộc loại thiết kế và xây dựng hệ thống phần mềm, kết hợp các phương pháp:

  • Khảo sát hiện trạng: Gửi bộ câu hỏi qua email đến quản trị viên trang web thương mại điện tử thực tế (https://emoij.com) để thu thập thông tin về cách thức vận hành, nghiệp vụ chuyên môn và quy trình mua hàng.
  • Phân tích thiết kế hướng đối tượng: Sử dụng phần mềm IBM Rational Rose để mô hình hóa hệ thống theo chuẩn UML trước khi lập trình.
  • Phân tích – tổng hợp tài liệu: Nghiên cứu tài liệu về ASP.NET MVC, SQL Server, HTML, CSS, JavaScript/jQuery.

Nguồn dữ liệu và công cụ phát triển

Thành phần Công cụ / Công nghệ
Ngôn ngữ lập trình backend ASP.NET MVC (C#)
Ngôn ngữ lập trình frontend HTML5, CSS (Cascading Style Sheets), JavaScript, jQuery
Hệ quản trị cơ sở dữ liệu SQL Server 2018
Môi trường phát triển (IDE) Visual Studio 2022
Công cụ phân tích thiết kế IBM Rational Rose
Mô hình thiết kế MVC (Model – View – Controller)

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

Chương 1 – Mở đầu

Chương này trình bày lý do chọn đề tài xuất phát từ thực tiễn thị trường thời trang trực tuyến cạnh tranh cao và những hạn chế của hệ thống mua bán trực tuyến hiện tại. Tác giả nêu sáu mục tiêu cụ thể của đề tài, xác định giới hạn phạm vi xây dựng phần mềm tập trung vào bài toán kinh doanh thời trang, và liệt kê kết quả dự kiến bao gồm: báo cáo đặc tả phân tích thiết kế hệ thống và website bán hàng thời trang hoàn chỉnh với đầy đủ chức năng phía khách hàng (xem danh mục, tìm kiếm, giỏ hàng, thanh toán) và phía quản trị viên (quản lý danh mục, sản phẩm, đơn hàng, kho, báo cáo thống kê).

Chương 2 – Kiến thức nền tảng

Chương trình bày toàn bộ cơ sở lý thuyết phục vụ xây dựng hệ thống. Nội dung gồm: (1) Phân tích thiết kế hướng đối tượng — định nghĩa, ưu điểm về tính tái sử dụng; (2) Cơ sở dữ liệu — định nghĩa CSDL có cấu trúc, ưu điểm giảm trùng lặp và đảm bảo toàn vẹn dữ liệu; (3) HTML5 và CSS — ngôn ngữ thiết kế giao diện web; (4) ASP.NET — nền tảng phát triển web của Microsoft, phát hành năm 2002, hỗ trợ ngôn ngữ C# và VB.NET; (5) Mô hình MVC — kiến trúc phần mềm phân tách Model, View, Controller; (6) UML — 9 loại biểu đồ chính trong phiên bản mới nhất; (7) SQL Server — hệ quản trị cơ sở dữ liệu quan hệ (RDBMS) với các thành phần Database Engine, Replication, Integration Services (DTS), Analysis Services và Notification Services; (8) Các công cụ: IBM Rational Rose và Visual Studio 2022.

Chương 3 – Phân tích và thiết kế hệ thống

Đây là chương trọng tâm và có khối lượng lớn nhất của đồ án. Nội dung được tổ chức theo các phần sau:

Khảo sát hệ thống: Tác giả thực hiện khảo sát trang web https://emoij.com qua bộ câu hỏi 7 mục gửi email tới quản trị viên, bao gồm các câu hỏi về mặt hàng kinh doanh, cách thức vận hành, số lượng người quản lý, quy trình đăng ký tài khoản, thủ tục mua hàng và hình thức thanh toán. Kết quả khảo sát xác định ưu điểm và nhược điểm của hệ thống hiện tại, từ đó lập mục tiêu nâng cấp và kế hoạch triển khai hệ thống mới.

Yêu cầu phi chức năng: Bốn yêu cầu được xác định gồm: (1) Giao diện dễ sử dụng, trực quan, thân thiện người dùng; (2) Tốc độ xử lý nhanh và chính xác; (3) Bảo mật cao; (4) Tương thích đa trình duyệt web.

Mô tả và phát biểu bài toán: Hệ thống có hai nhóm tác nhân chính: Khách hàng (có thể xem sản phẩm mà không cần tài khoản; cần đăng ký bằng số điện thoại hoặc email để đặt hàng; quy trình đặt hàng bao gồm chọn sản phẩm → giỏ hàng → nhập thông tin giao hàng → thanh toán tiền mặt khi nhận hàng) và Quản trị viên/Nhân viên bán hàng (quản lý toàn bộ danh mục, sản phẩm, đơn hàng, tài khoản, tin tức, banner, thống kê).

Biểu đồ Use Case: Tác giả xây dựng Use Case tổng quát và sáu biểu đồ Use Case chi tiết cho các nhóm chức năng: Quản lý tài khoản, Quản lý sản phẩm (Quản lý kho), Quản lý danh mục, Quản lý đơn hàng, Giỏ hàng, Tìm kiếm và Thống kê báo cáo. Mỗi Use Case được đặc tả đầy đủ tác nhân, mục đích, mô tả, luồng sự kiện chính và luồng sự kiện phụ.

Biểu đồ tuần tự: 20 biểu đồ Sequence Diagram được xây dựng cho từng chức năng cụ thể, bao gồm: đăng nhập, đăng ký, sửa tài khoản, tìm kiếm, đặt hàng, xem/tìm kiếm/hủy đơn hàng, thêm/sửa/xóa/tìm kiếm danh mục, thêm/sửa/xóa giỏ hàng, thêm/sửa/tìm kiếm/xóa sản phẩm và thống kê báo cáo.

Biểu đồ hoạt động và trạng thái: Tương ứng với từng chức năng trên, tác giả xây dựng Activity Diagram và hai State Diagram mô tả chu kỳ trạng thái của sản phẩm và đơn hàng.

Thiết kế cơ sở dữ liệu: Hệ thống gồm 32 bảng dữ liệu, bao gồm các bảng nghiệp vụ cốt lõi và các bảng hỗ trợ. Danh sách bảng tiêu biểu:

Nhóm Tên bảng
Tài khoản & địa chỉ Account, Account_address, OrderAddress
Sản phẩm & phân loại Product, Product_image, Genre, ParentGenres, Brand, Childcategory, ParentCategory, NewProducts, NewTags, Tags
Đơn hàng & thanh toán Order, Order_Detail, Payment, Delivery, Discount
Tin tức & bình luận Tin tức, NewComments, CommentLikes, Reply_Comments, Reply_Like
Giao diện & hỗ trợ Banner, Banner_Detail, Stickypost, Contact, Feedback, Feedback_Image, Provinces, Wards

Thiết kế và triển khai

Kiến trúc hệ thống

Hệ thống được xây dựng theo kiến trúc ASP.NET MVC triển khai trên Visual Studio 2022, kết nối với cơ sở dữ liệu SQL Server 2018. Kiến trúc ba tầng (Model – View – Controller) tách biệt logic nghiệp vụ, hiển thị giao diện và xử lý yêu cầu người dùng. Hệ thống sử dụng Razor View Engine để render giao diện phía server.

Phương thức Front Controller được áp dụng để định tuyến toàn bộ request thông qua một Controller duy nhất, hỗ trợ URL mapping thân thiện với SEO. Nền tảng ASP.NET MVC hỗ trợ cơ chế xác thực người dùng, quản lý session, output caching và data caching tích hợp sẵn.

Giao diện người dùng

Tác giả xây dựng hai phân hệ giao diện tách biệt:

  • Phân hệ khách hàng: Trang chủ, trang danh sách sản phẩm, trang chi tiết sản phẩm, trang tin tức, trang đăng ký tài khoản, trang đăng nhập và trang giỏ hàng.
  • Phân hệ quản trị: Trang đăng nhập quản trị, trang tổng quan (dashboard), trang quản lý sản phẩm (danh sách, thêm mới), trang quản lý đơn hàng, trang quản lý tài khoản.

Kiểm thử

Đồ án bao gồm phần Test Case và Test Data được xây dựng theo từng chức năng của hệ thống, đảm bảo kiểm tra luồng chính và luồng phụ (nhập sai định dạng, nhập thiếu thông tin) cho từng Use Case đã đặc tả.


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

Kết quả chính

Tác giả hoàn thành hai sản phẩm theo kế hoạch đề ra:

  1. Bản báo cáo đặc tả về phân tích và thiết kế hệ thống, bao gồm toàn bộ tài liệu UML (Use Case, Sequence, Activity, State Diagram) và đặc tả cơ sở dữ liệu 32 bảng.
  2. Website bán hàng thời trang hoạt động hoàn chỉnh, cung cấp các chức năng:
Phân hệ Chức năng
Khách hàng Xem danh mục sản phẩm, tìm kiếm, xem chi tiết sản phẩm, quản lý giỏ hàng, đặt hàng, thanh toán tiền mặt
Quản trị viên Quản lý tài khoản (thêm/sửa/xóa/tìm kiếm), quản lý danh mục (thêm/sửa/xóa/tìm kiếm), quản lý sản phẩm/kho (thêm/sửa/xóa/tìm kiếm), quản lý đơn hàng (xem/sửa/hủy/tìm kiếm), quản lý banner, quản lý tin tức, báo cáo thống kê doanh thu và số lượng đơn hàng

Giải pháp và kiến nghị tác giả đề xuất

Để khắc phục nhược điểm của hệ thống cũ đã khảo sát, tác giả xây dựng hệ thống mới với các cải tiến: thiết kế giao diện trực quan, bắt mắt và dễ sử dụng hơn; bổ sung chức năng tài khoản khách hàng (đăng ký, đăng nhập), giỏ hàng, đánh giá sản phẩm (Feedback), chức năng quản lý thương hiệu và thống kê báo cáo chi tiết doanh thu.

Đóng góp so với nghiên cứu trước

Tác giả tự đánh giá đóng góp ở việc ứng dụng công nghệ ASP.NET MVC — một kiến trúc hiện đại hỗ trợ TDD, DI/IoC — vào bài toán thương mại điện tử thời trang thực tế, cung cấp hệ thống đầy đủ tính năng so với hệ thống hiện tại còn thiếu nhiều chức năng cơ bản.


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

Dựa trên phạm vi được xác định trong văn bản, đồ án có một số giới hạn cần lưu ý:

  • Về thanh toán: Hệ thống chỉ hỗ trợ hình thức thanh toán tiền mặt khi nhận hàng (COD); chưa tích hợp cổng thanh toán điện tử.
  • Về phạm vi kinh doanh: Chương trình tập trung giải quyết bài toán của một cửa hàng đơn lẻ; chưa mở rộng thành nền tảng đa người bán.
  • Về kiểm thử: Phạm vi kiểm thử dừng ở Test Case theo chức năng; chưa đề cập đến kiểm thử hiệu năng (performance testing) hoặc kiểm thử bảo mật chuyên sâu.
  • Hướng phát triển tiếp theo có thể bao gồm: tích hợp cổng thanh toán trực tuyến (VNPay, Momo), xây dựng ứng dụng di động, bổ sung tính năng gợi ý sản phẩm (recommendation), và triển khai trên môi trường cloud.

Giá trị tham khảo

Đồ án phù hợp để tham khảo cho các nhóm đối tượng sau:

  • Sinh viên ngành Công nghệ thông tin năm 3–4 đang thực hiện đồ án tốt nghiệp về xây dựng website thương mại điện tử, đặc biệt những sinh viên lần đầu tiếp cận mô hình ASP.NET MVC và SQL Server.
  • Sinh viên đang học môn Phân tích thiết kế hệ thống thông tin có thể tham khảo cách xây dựng tài liệu UML đầy đủ (Use Case, Sequence, Activity, State Diagram) và đặc tả bài toán theo quy trình chuẩn.
  • Người làm đề tài tương tự về website bán hàng thời trang hoặc bán lẻ trực tuyến có thể tham khảo thiết kế cơ sở dữ liệu 32 bảng, đặc biệt nhóm bảng quản lý đơn hàng, sản phẩm và tài khoản.
  • Phần đáng tham khảo nhất: Chương 3 với bộ đặc tả Use Case chi tiết và sơ đồ mô hình quan hệ dữ liệu (ERD).

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

1. Website hỗ trợ những hình thức thanh toán nào? Theo mô tả bài toán trong văn bản, hệ thống hiện chỉ hỗ trợ hình thức thanh toán bằng tiền mặt khi nhận hàng (COD). Sau khi khách đặt hàng, nhân viên xác nhận đơn, giao hàng, và hoàn tất khi nhận tiền từ khách; đơn hàng trên hệ thống khi đó chuyển sang trạng thái "đã thanh toán".

2. Khách hàng chưa có tài khoản có thể mua hàng không? Khách hàng chưa đăng ký tài khoản vẫn có thể xem và tìm kiếm sản phẩm trên trang chủ. Tuy nhiên, để thực hiện đặt hàng, khách hàng bắt buộc phải đăng ký tài khoản bằng số điện thoại hoặc email để xác nhận thông tin nhận hàng.

3. Cơ sở dữ liệu của hệ thống gồm bao nhiêu bảng và bảng nào quản lý trạng thái đơn hàng? Hệ thống gồm 32 bảng trong cơ sở dữ liệu SQL Server 2018. Trạng thái đơn hàng được quản lý thông qua bảng Order và Order_Detail, kết hợp với bảng Delivery và Payment. Biểu đồ trạng thái đơn hàng được xây dựng riêng, mô tả chu kỳ từ trạng thái chờ xác nhận đến đã thanh toán hoặc hủy.

4. Công cụ nào được dùng để vẽ các biểu đồ UML trong đồ án? Tác giả sử dụng phần mềm IBM Rational Rose để mô hình hóa hệ thống theo UML trước khi lập trình. Rational Rose hỗ trợ toàn bộ các loại biểu đồ được sử dụng trong đồ án: Use Case Diagram, Sequence Diagram, Activity Diagram và State Diagram.

5. Hệ thống phân quyền người dùng được thiết kế như thế nào? Hệ thống có ba nhóm người dùng với quyền hạn khác nhau: Khách hàng (xem, tìm kiếm, đặt hàng, quản lý giỏ hàng); Nhân viên bán hàng (đăng nhập bằng tài khoản do quản trị viên cấp, thực hiện quản lý sản phẩm, đơn hàng, tìm kiếm tài khoản, thống kê); Quản trị viên (có toàn quyền bao gồm cấp/xóa tài khoản nhân viên, chỉnh sửa thông tin website, quản lý banner, tin tức và tất cả chức năng của nhân viên).


Kết luận

Đồ án tốt nghiệp "Phát triển website bán hàng thời trang bằng công nghệ ASP.NET MVC" của sinh viên Nguyễn Thị Trường Giang, Trường Đại học Công nghệ Đông Á (2023) trình bày quy trình xây dựng hệ thống thương mại điện tử hoàn chỉnh từ khảo sát hiện trạng, phân tích thiết kế hướng đối tượng theo chuẩn UML đến lập trình và kiểm thử trên nền tảng ASP.NET MVC kết hợp SQL Server 2018. Hệ thống kết quả đáp ứng đầy đủ hai phân hệ khách hàng và quản trị với tổng cộng 32 bảng cơ sở dữ liệu và bộ tài liệu đặc tả UML gồm Use Case, Sequence, Activity và State Diagram. Đồ án đặc biệt có giá trị tham khảo cho sinh viên CNTT muốn nắm quy trình phân tích – thiết kế – triển khai một ứng dụng web thương mại điện tử theo kiến trúc MVC từ đầu đến cuối.