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

Đề tài "Xây dựng website bán đồng hồ TDC Watches" là báo cáo kết thúc học phần môn Lập trình Web (được thực hiện dưới dạng đồ án chuyên ngành) của sinh viên Tất Dục Chí (Lớp D18PM04, Khóa 2020–2021, Ngành Kỹ thuật phần mềm), thuộc Viện Kỹ thuật – Công nghệ, Trường Đại học Thủ Dầu Một, dưới sự hướng dẫn chuyên môn của giảng viên Nguyễn Hữu Vĩnh vào tháng 12 năm 2020.

Bối cảnh thực tiễn của nghiên cứu xuất phát từ sự bùng nổ của công nghệ thông tin và thương mại điện tử trên toàn cầu. Kỹ thuật số và môi trường mạng Internet mang lại khả năng tối ưu hóa chi phí vận hành, cắt giảm các khâu trung gian, giảm thiểu chi phí giao dịch và tiết kiệm quỹ thời gian cho người tiêu dùng lẫn đơn vị kinh doanh. Hệ thống thương mại trực tuyến cho phép khách hàng tìm kiếm thông tin tự động theo nhu cầu và sở thích cá nhân, thực hiện quy trình mua sắm từ xa mà không cần đến cửa hàng vật lý.

Tuy nhiên, qua quá trình khảo sát thực tế tại các chuỗi cửa hàng và doanh nghiệp kinh doanh trang sức, đặc biệt là ngành hàng đồng hồ, tác giả nhận thấy đa số các đơn vị vừa và nhỏ vẫn chưa khai thác hoặc chưa phát triển kênh quảng bá, phân phối sản phẩm trên nền tảng website trực tuyến. Việc quản lý danh mục hàng hóa, thông tin khách hàng và chứng từ thanh toán tại nhiều điểm bán vẫn thực hiện thủ công hoặc thiếu tính đồng bộ.

Mục tiêu nghiên cứu và nhiệm vụ trọng tâm của đề tài được xác định gồm:

  1. Nghiên cứu thực trạng kinh doanh, nhu cầu quản bá và mua sắm các mặt hàng đồng hồ trên môi trường mạng.
  2. Thiết kế và xây dựng hoàn chỉnh website thương mại điện tử TDC Watches phục vụ hai nhóm đối tượng chính: khách hàng cá nhân và người quản trị cửa hàng.
  3. Cung cấp các công cụ quản lý danh mục (sản phẩm, loại sản phẩm, thương hiệu) và tiện ích mua hàng (xem chi tiết, phân loại, giỏ hàng trực tuyến).

Đối tượng, phạm vi và cách tiếp cận nghiên cứu:

  • Đối tượng nghiên cứu: Các sản phẩm đồng hồ thời trang và hệ thống quản lý kinh doanh mặt hàng đồng hồ.
  • Phạm vi nghiên cứu: Khảo sát, thu thập thông tin và dữ liệu hoạt động từ các cửa hàng chuyên doanh đồng hồ trên thị trường; phân tích nhu cầu tiếp cận nguồn hàng của các tiểu thương và người mua lẻ.
  • Cách tiếp cận: Tiếp cận từ góc độ kỹ thuật phần mềm hướng đối tượng; phân tích nghiệp vụ bán lẻ thực tế, mô hình hóa chức năng hệ thống bằng biểu đồ chuẩn UML và chuyển giao thành ứng dụng web tương tác.
  • Phương pháp nghiên cứu: Phương pháp phân tích thiết kế hệ thống thông tin, xây dựng phần mềm trên nền tảng công nghệ ASP.NET MVC với ngôn ngữ C# và hệ quản trị cơ sở dữ liệu Microsoft SQL Server.

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

Đề tài vận dụng các nền tảng lý thuyết lập trình hướng đối tượng, kiến trúc phần mềm đa tầng và hệ cơ sở dữ liệu quan hệ, cụ thể:

1. Ngôn ngữ lập trình C# và .NET Framework

Ngôn ngữ C# thuộc họ công nghệ .NET của Microsoft. Nền tảng .NET Framework cung cấp hai thành phần cốt lõi:

  • Common Language Runtime (CLR): Thành phần thực thi môi trường quản lý, chịu trách nhiệm cấp phát bộ nhớ, thực thi mã lệnh, xử lý ngoại lệ và chuyển đổi mã trung gian CIL (Common Intermediate Language, trước đây là MSIL) từ các tệp assembly thành mã máy (native code).
  • .NET Framework Class Library (FCL): Thư viện lớp toàn diện hỗ trợ lập trình viên xây dựng đa dạng loại hình ứng dụng, từ dòng lệnh (Command Line) đến giao diện đồ họa người dùng (GUI).

Trong cấu trúc ứng dụng C#, tác giả phân tích mô hình 3 lớp (3-Layers Architecture) gồm:

  • GUI Layer (Lớp giao diện): Tiếp nhận tương tác và hiển thị thông tin cho người dùng cuối.
  • Business Layer (BUS - Lớp xử lý nghiệp vụ): Tiếp nhận yêu cầu từ lớp GUI, xử lý các logic nghiệp vụ và chuyển giao tương tác dữ liệu xuống lớp Data.
  • Data Access Layer (DAL - Lớp truy xuất dữ liệu): Lớp duy nhất làm việc và trao đổi trực tiếp với hệ quản trị cơ sở dữ liệu.

2. Kiến trúc ASP.NET MVC

ASP.NET MVC là mô hình kế tiếp của ASP.NET Web Forms, được xây dựng dựa trên sự mở rộng của không gian tên System.Web trong System. Mô hình này phân tách ứng dụng web thành ba thành phần độc lập:

  • Model (M): Quản lý cấu trúc dữ liệu, các đối tượng thực thể và logic xử lý trạng thái.
  • View (V): Chịu trách nhiệm render dữ liệu ra giao diện hiển thị cho người dùng.
  • Controller (C): Đóng vai trò điều phối luồng xử lý, tiếp nhận các yêu cầu HTTP từ View, tương tác với Model và lựa chọn View phù hợp để trả về kết quả.

Ưu điểm của mô hình là cấu trúc nhẹ (lightweight), dễ kiểm thử giao diện, tăng tính module hóa và thừa hưởng toàn bộ các tính năng bảo mật, quản lý phiên của nền tảng ASP.NET.

3. Hệ quản trị cơ sở dữ liệu Microsoft SQL Server

Tài liệu trình bày lịch sử phát triển của SQL Server từ phiên bản 1.0 (1989 - nền tảng 16 bit), phiên bản 6.5, bản cải tiến viết lại engine 7.0, bản 8.0 tối ưu hóa tính năng thiết kế web, đến phiên bản SQL Server 2016 (hỗ trợ vi xử lý 64-bit ra mắt ngày 01/06/2016). Tác giả tổng hợp các ấn bản của SQL Server:

  • Enterprise Edition: Hỗ trợ đầy đủ tính năng phân cụm, quản lý bộ nhớ lên tới 12 Terabytes và quy mô cơ sở dữ liệu 524 Petabytes.
  • Standard Edition: Hoạt động ổn định trên hệ thống tối đa 4 CPU và 2 GB RAM, thích hợp cho các dịch vụ web quy mô vừa và nhỏ.
  • Developer Edition: Cung cấp đầy đủ tính năng như bản Enterprise nhưng giới hạn số lượng kết nối người dùng, phục vụ công tác phát triển và kiểm thử.
  • Express Edition: Ấn bản miễn phí, dễ cài đặt và quản trị, phù hợp cho các ứng dụng đơn giản.

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

Bố cục của báo cáo được tổ chức thành 4 chương chính như sau:

Chương 1: Tổng quan

Chương này giới thiệu tên đề tài, lý do chọn đề tài, đối tượng, phạm vi nghiên cứu, cách tiếp cận và bố cục tài liệu. Đồng thời, chương 1 trình bày tổng quan các phân hệ chức năng (phân hệ Admin và phân hệ User) cùng các công nghệ nền tảng được lựa chọn gồm ngôn ngữ C#, kiến trúc ASP.NET MVC và hệ cơ sở dữ liệu SQL Server.

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

Đây là nội dung trọng tâm của báo cáo, tập trung vào việc mô hình hóa hệ thống phần mềm:

  • Xây dựng mô hình phân rã chức năng tổng thể của website TDC Watches.
  • Xác định và mô tả các tác nhân (Actor) tham gia vào hệ thống.
  • Xây dựng danh sách Use Case, vẽ sơ đồ Use Case tổng quát và viết tài liệu đặc tả chi tiết cho từng Use Case (từ UC_001 đến UC_007) gồm tiền điều kiện, bộ kích hoạt (trigger), luồng sự kiện chính, luồng phụ và quy tắc nghiệp vụ.
  • Thiết kế hệ thống biểu đồ hoạt động (Activity Diagram) và biểu đồ tuần tự (Sequence Diagram) cho các chức năng Đăng ký, Đăng nhập, Quản lý Thương hiệu, Quản lý Loại sản phẩm, Quản lý Sản phẩm, Xem/Lọc sản phẩm và Giỏ hàng.
  • Thiết kế sơ đồ quan hệ cơ sở dữ liệu (CSDL) và các bảng dữ liệu liên quan.

Chương 3: Cài đặt và giao diện

Chương 3 trình bày các yêu cầu kỹ thuật về phần cứng, cấu hình môi trường máy chủ/máy trạm và giao diện website. Tác giả giới thiệu cấu trúc các màn hình chức năng thông qua danh mục giao diện:

  • Giao diện người dùng: Đăng ký, Đăng nhập, Trang chủ, Danh mục Sản phẩm, Danh mục Đồng hồ Nam, Đồng hồ Nữ, Phân loại theo Thương hiệu, Phân loại theo Loại sản phẩm, Chi tiết sản phẩm, Giỏ hàng, Giới thiệu và Liên hệ.
  • Giao diện quản trị: Trang chủ quản lý, Quản lý thương hiệu, Quản lý loại sản phẩm và Quản lý sản phẩm.

Chương 4: Đánh giá kết quả và hướng phát triển

Chương cuối cùng tổng kết các kết quả đạt được sau quá trình triển khai, đối chiếu với mục tiêu ban đầu để chỉ ra danh sách các chức năng đã hoàn thành, các mặt còn tồn tại (chức năng chưa làm được) và định hướng nâng cấp hệ thống trong tương lai.

Thiết kế và triển khai

1. Phân rã chức năng và Tác nhân hệ thống

Hệ thống TDC Watches xác định hai nhóm tác nhân (Actors) chính tương tác với ứng dụng:

Tác nhân Vai trò và phạm vi hoạt động Ghi chú
Quản lý (Admin - AD) Đăng nhập hệ thống quản trị; thực hiện các thao tác thêm, cập nhật, xem và xóa tạm thời đối với danh mục Thương hiệu, Loại sản phẩm và Sản phẩm. Người có thẩm quyền quản trị hệ thống
Khách hàng (KH) Thực hiện đăng ký tài khoản thành viên, đăng nhập, xem danh sách sản phẩm, lọc sản phẩm theo tiêu chí, xem chi tiết và quản lý giỏ hàng trực tuyến. Người dùng cuối mua sắm trên website

Danh mục Use Case chính trong hệ thống:

Mã Use Case Tác nhân thực hiện Tên Use Case Mô tả chức năng
UC_001 Khách hàng Đăng ký Đăng ký tài khoản thành viên mới bằng email và mật khẩu
UC_002 Quản lý, Khách hàng Đăng nhập Đăng nhập hệ thống theo quyền hạn tương ứng
UC_003 Quản lý Quản lý Thương hiệu Thêm, cập nhật, xem danh sách và xóa tạm thời thương hiệu
UC_004 Quản lý Quản lý Loại sản phẩm Thêm, cập nhật, xem danh sách và xóa tạm thời loại sản phẩm
UC_005 Quản lý Quản lý Sản phẩm Thêm, cập nhật, xem danh sách và xóa tạm thời sản phẩm
UC_006 Khách hàng Xem thông tin sản phẩm Xem danh sách, lọc sản phẩm theo thuộc tính, xem chi tiết và thêm vào giỏ
UC_007 Khách hàng Giỏ Hàng Xem danh sách giỏ hàng, cập nhật số lượng và xóa món hàng

2. Quy trình nghiệp vụ và Đặc tả Use Case chi tiết

Văn bản mô tả quy trình thực hiện cụ thể cho từng Use Case:

  • Đăng ký (UC_001): Khách hàng nhấn nút [Đăng Ký], nhập thông tin gồm Email, Mật khẩu và Nhập lại mật khẩu. Hệ thống kiểm tra tính hợp lệ của dữ liệu; nếu hợp lệ, thông tin được lưu vào CSDL và chuyển hướng về Trang chủ. Nếu dữ liệu sai hoặc thiếu, hệ thống thông báo lỗi yêu cầu nhập lại (quy tắc: các trường dữ liệu đều bắt buộc).
  • Đăng nhập (UC_002): Người dùng nhập Email và Mật khẩu. Hệ thống kiểm tra tài khoản trong CSDL; nếu đúng sẽ điều hướng vào trang tương ứng. Trường hợp sai thông tin, hệ thống bật hộp thoại thông báo.
  • Quản lý Thương hiệu (UC_003), Loại sản phẩm (UC_004) và Sản phẩm (UC_005):
    • Thêm mới: Quản lý nhập thông tin, hệ thống kiểm tra sự tồn tại trong CSDL và tiến hành lưu bản ghi mới.
    • Sửa thông tin: Quản lý nhập các giá trị cần cập nhật, hệ thống ghi nhận và chuyển hướng về trang danh sách.
    • Xóa tạm thời (Soft Delete): Khi Quản lý nhấn [Xóa], hệ thống không xóa vĩnh viễn bản ghi khỏi bảng dữ liệu mà chuyển trạng thái của đối tượng sang "Đã Khóa" để bảo đảm toàn vẹn dữ liệu lịch sử.
  • Xem và lọc sản phẩm (UC_006): Khách hàng duyệt danh mục, thực hiện lọc theo Loại sản phẩm, Giới tính (Đồng hồ Nam, Đồng hồ Nữ) hoặc Thương hiệu. Tại trang chi tiết, hệ thống hiển thị thông tin sản phẩm cùng các mặt hàng liên quan và cho phép thêm vào giỏ hàng (yêu cầu đăng nhập).
  • Giỏ hàng (UC_007): Cho phép khách hàng xem các mặt hàng đã chọn, thay đổi số lượng mua và nhấn [Cập nhật] để hệ thống tính lại tổng giá trị đơn hàng, hoặc nhấn [Xóa] để loại bỏ sản phẩm ra khỏi giỏ.

3. Mô hình thiết kế UML và CSDL

Hệ thống được thiết kế chi tiết thông qua các mô hình:

  • Mô hình phân rã chức năng (Functional Decomposition Diagram).
  • Biểu đồ Use Case tổng quát (Hình 5 trong văn bản).
  • Biểu đồ hoạt động (Activity Diagram) và Biểu đồ tuần tự (Sequence Diagram) cho cả 7 Use Case chính.
  • Sơ đồ quan hệ CSDL và hệ thống bảng quan hệ lưu trữ thông tin thực thể khách hàng, quản trị, sản phẩm, thương hiệu, loại sản phẩm và chi tiết đơn hàng/giỏ hàng.

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

1. Kết quả kỹ thuật đạt được

Đồ án đã triển khai và hoàn thiện website TDC Watches với các kết quả cụ thể:

  • Xây dựng thành công giao diện phía người dùng (Front-end) thân thiện, bố cục rõ ràng, hỗ trợ đầy đủ các thao tác xem sản phẩm, phân loại theo danh mục giới tính/thương hiệu, xem chi tiết và tính năng giỏ hàng tương tác.
  • Thiết lập phân hệ quản trị (Back-end) cho phép người quản lý thực hiện toàn diện các thao tác CRUD (Create - Read - Update - Delete) trên dữ liệu danh mục sản phẩm, loại sản phẩm và thương hiệu.
  • Áp dụng cơ chế "Xóa tạm thời" (chuyển trạng thái sang "Đã Khóa") giúp bảo vệ dữ liệu nghiệp vụ không bị mất dấu vết hoặc gây lỗi liên kết khóa ngoại trong CSDL quan hệ.
  • Áp dụng thành công mô hình phân tầng ASP.NET MVC và C# kết nối cơ sở dữ liệu SQL Server, phân định rõ ràng các tầng giao diện, điều hướng và dữ liệu.

2. Đóng góp thực tiễn của đề tài

  • Đưa ra giải pháp trực tuyến hóa quy trình bán lẻ cho các cửa hàng đồng hồ vừa và nhỏ, giúp mở rộng kênh tiếp cận khách hàng trên môi trường Internet.
  • Giúp chủ cửa hàng tiết kiệm thời gian và giảm thiểu chi phí quản lý hàng hóa so với hình thức quản lý sổ sách truyền thống.
  • Cung cấp một bộ tài liệu phân tích thiết kế hệ thống chi tiết từ danh sách tác nhân, ca sử dụng, biểu đồ hoạt động đến biểu đồ tuần tự, phục vụ tốt cho công tác phát triển phần mềm chuẩn mực.

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

Dựa trên nội dung đánh giá của tác giả trong văn bản:

  • Hạn chế:
    • Hệ thống mới dừng lại ở mức độ hoàn thành các chức năng cốt lõi của một website kinh doanh cơ bản; một số chức năng chuyên sâu về thương mại điện tử vẫn thuộc nhóm "chưa làm được" (như tích hợp cổng thanh toán trực tuyến tự động, quản lý vận chuyển chuyên sâu, theo dõi trạng thái đơn hàng nâng cao).
    • Giao diện và trải nghiệm người dùng còn ở mức đơn giản, chủ yếu đáp ứng yêu cầu kết thúc học phần môn học.
  • Hướng phát triển:
    • Nâng cấp và cập nhật giao diện hiện đại hơn, tối ưu hóa khả năng tiếp cận và trải nghiệm của người dùng khi công nghệ web phát triển.
    • Mở rộng các tính năng nghiệp vụ nổi bật và mới hơn cho hệ thống bán lẻ trực tuyến, kết nối thêm các tiện ích thanh toán và tự động hóa trong quản lý đơn hàng.

Giá trị tham khảo

Tài liệu đồ án mang lại giá trị học thuật và ứng dụng thực tiễn cụ thể:

  • Đối với sinh viên ngành Kỹ thuật phần mềm và Công nghệ thông tin: Là tài liệu tham khảo trực quan cho học phần Lập trình Web, Công nghệ .NET hoặc Đồ án cơ sở ngành. Sinh viên có thể học hỏi cách phân tích quy trình nghiệp vụ bán hàng, cách viết tài liệu đặc tả Use Case chuẩn mực và cách xây dựng hệ thống biểu đồ UML (Activity, Sequence Diagram).
  • Đối với người lập trình ứng dụng web ASP.NET MVC: Tham khảo cách tổ chức mô hình phân tầng (GUI, BUS, DAL) kết hợp mô hình MVC và phương pháp quản trị dữ liệu SQL Server trong các bài toán thương mại điện tử vừa và nhỏ.

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

1. Đề tài "Xây dựng website bán đồng hồ TDC Watches" do ai thực hiện và thuộc đơn vị đào tạo nào?
Đề tài do sinh viên Tất Dục Chí (Lớp D18PM04, Khóa 2020–2021, Ngành Kỹ thuật phần mềm) thực hiện tại Viện Kỹ thuật – Công nghệ, Trường Đại học Thủ Dầu Một, dưới sự hướng dẫn của giảng viên Nguyễn Hữu Vĩnh (tháng 12/2020).

2. Công nghệ và nền tảng chính được sử dụng để xây dựng hệ thống là gì?
Hệ thống được xây dựng trên nền tảng ASP.NET MVC kết hợp ngôn ngữ lập trình C# (.NET Framework với CLR, FCL) theo mô hình 3 lớp (GUI, BUS, DAL) và sử dụng hệ quản trị cơ sở dữ liệu Microsoft SQL Server.

3. Cơ chế xóa dữ liệu danh mục (Sản phẩm, Thương hiệu, Loại sản phẩm) trong hệ thống được thiết kế như thế nào?
Hệ thống áp dụng cơ chế "Xóa tạm thời" (Soft Delete). Khi người quản lý thực hiện thao tác xóa, hệ thống không xóa hẳn dữ liệu trong CSDL mà cập nhật trạng thái của bản ghi đó thành "Đã Khóa", giúp duy trì tính toàn vẹn của dữ liệu.

4. Khách hàng trên website TDC Watches có thể lọc và tìm kiếm sản phẩm theo những tiêu chí nào?
Khách hàng có thể xem toàn bộ danh sách sản phẩm và thực hiện lọc sản phẩm theo ba tiêu chí chính: theo loại sản phẩm, theo thương hiệu và theo giới tính (Đồng hồ Nam, Đồng hồ Nữ).

5. Hệ thống xác định những nhóm tác nhân (Actor) nào và có bao nhiêu ca sử dụng (Use Case) chính?
Hệ thống xác định 2 nhóm tác nhân chính là Quản lý (Admin) và Khách hàng, cùng 7 Use Case chính được đánh mã từ UC_001 đến UC_007 bao gồm: Đăng ký, Đăng nhập, Quản lý Thương hiệu, Quản lý Loại sản phẩm, Quản lý Sản phẩm, Xem/Lọc sản phẩm và Giỏ hàng.

Kết luận

Đồ án "Xây dựng website bán đồng hồ TDC Watches" của sinh viên Tất Dục Chí đã giải quyết trọn vẹn bài toán xây dựng một website thương mại điện tử chuyên ngành đồng hồ dựa trên nền tảng công nghệ ASP.NET MVC, C# và SQL Server. Báo cáo thể hiện quy trình phân tích và thiết kế phần mềm bài bản thông qua việc đặc tả rõ ràng các tác nhân, ca sử dụng và chuỗi biểu đồ hoạt động, biểu đồ tuần tự chi tiết. Mặc dù còn một số hạn chế về tính năng nâng cao, đề tài đã đáp ứng tốt yêu cầu của một đồ án môn học kỹ thuật phần mềm và tạo nền tảng vững chắc cho các hướng nâng cấp ứng dụng web trong tương lai.