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

Trong bối cảnh công nghệ thông tin và mạng Internet phát triển mạnh mẽ, các phương thức kinh doanh truyền thống đã có sự chuyển dịch sâu sắc sang hình thức trực tuyến. Bán hàng trực tuyến (online) mang lại nhiều lợi thế cạnh tranh cho doanh nghiệp và các cơ sở bán lẻ, bao gồm khả năng tiếp cận tập khách hàng rộng lớn mà không bị rào cản bởi khoảng cách địa lý, đồng thời cắt giảm đáng kể chi phí thuê mặt bằng do không đòi hỏi không gian trưng bày vật lý quá lớn. Đối với người tiêu dùng, phương thức mua sắm trực tuyến mang lại sự tiện lợi, tiết kiệm thời gian di chuyển, hỗ trợ tìm kiếm, so sánh và đặt mua các sản phẩm nhanh chóng.

Xuất phát từ thực tế đó, đề tài "Xây dựng website bán hàng cho cửa hàng Pokemon" được thực hiện dưới dạng tiểu luận môn học Lập trình Website tại Viện Kỹ thuật - Công nghệ, Trường Đại học Thủ Dầu Một. Nghiên cứu do sinh viên Nguyễn Minh Quân (lớp D18PM03) thực hiện dưới sự hướng dẫn chuyên môn của ThS. Nguyễn Hữu Vĩnh vào tháng 12 năm 2020 tại Bình Dương.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài được xác định cụ thể:

  1. Nghiên cứu tổng quan về mô hình thương mại điện tử ứng dụng trong việc phân phối và bán lẻ các dòng sản phẩm, phụ kiện liên quan đến chủ đề Pokemon.
  2. Phân tích các yêu cầu chức năng và phi chức năng của hệ thống website bằng ngôn ngữ mô hình hóa thống nhất (UML), bao gồm việc xác định tác nhân, xây dựng biểu đồ ca sử dụng (Use Case), biểu đồ hoạt động (Activity Diagram) và biểu đồ tuần tự (Sequence Diagram).
  3. Thiết kế mô hình cơ sở dữ liệu quan hệ và cấu trúc sơ đồ điều hướng website nhằm đảm bảo luồng hoạt động thông suốt giữa người dùng và quản trị viên.
  4. Tìm hiểu và ứng dụng các công nghệ lập trình web (HTML, CSS, JavaScript, ASP) cùng các công cụ phát triển phần mềm (Visual Studio, Adobe Dreamweaver) để xây dựng hệ thống giao diện và chức năng của website.

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

  • Đối tượng nghiên cứu: Quy trình vận hành, quản lý dữ liệu bán hàng trực tuyến và kiến trúc phần mềm của website thương mại điện tử dành cho cửa hàng Pokemon.
  • Phạm vi không gian: Đề tài nghiên cứu và triển khai ứng dụng cho cửa hàng bán lẻ sản phẩm Pokemon trong khuôn khổ đào tạo tại Trường Đại học Thủ Dầu Một, tỉnh Bình Dương.
  • Phạm vi thời gian: Dữ liệu và các giải pháp kỹ thuật được tác giả tổng hợp, thiết kế và hoàn thiện tính đến tháng 12/2020.

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

Đề tài vận dụng phương pháp luận kỹ thuật phần mềm hướng đối tượng kết hợp với mô hình phát triển ứng dụng web truyền thống. Các cơ sở lý thuyết và phương pháp cụ thể bao gồm:

  • Mô hình hóa hệ thống bằng ngôn ngữ UML (Unified Modeling Language): Tác giả sử dụng chuẩn UML để phân tích và đặc tả toàn bộ hành vi cũng như tương tác trong hệ thống:
    • Biểu đồ ca sử dụng (Use Case Diagram): Mô hình hóa ranh giới hệ thống, mối quan hệ thừa kế giữa các tác nhân (Actor) và các ca sử dụng.
    • Biểu đồ hoạt động (Activity Diagram): Mô tả chi tiết luồng xử lý nghiệp vụ, các bước rẽ nhánh và điều kiện thực thi của từng tác vụ.
    • Biểu đồ tuần tự (Sequence Diagram): Biểu diễn sự tương tác theo trình tự thời gian giữa tác nhân, giao diện người dùng, hệ thống xử lý và tầng lưu trữ dữ liệu.
  • Phương pháp thiết kế dữ liệu: Xây dựng mô hình cơ sở dữ liệu quan hệ phục vụ việc lưu trữ thông tin sản phẩm, danh mục hàng hóa, nhà cung cấp, tài khoản người dùng và đơn hàng.
  • Phương pháp thiết kế cấu trúc website (Site Map): Xây dựng sơ đồ cây phân cấp để tổ chức các trang chức năng từ trang chủ, phân hệ người dùng công khai đến phân hệ quản trị dành cho nhân viên quản trị.
  • Nguồn dữ liệu: Nguồn tài liệu kỹ thuật về các chuẩn ngôn ngữ web, tài liệu hướng dẫn công nghệ ASP và các tài liệu tham khảo chuyên ngành lập trình website.

Thiết kế và triển khai

Hệ thống được thiết kế dựa trên kiến trúc phân tầng phục vụ mô hình bán hàng trực tuyến với sự tham gia của 2 tác nhân chính: Khách hàng và Quản trị viên. Quản trị viên kế thừa toàn bộ quyền hạn của Khách hàng, đồng thời có thêm các chức năng quản trị nghiệp vụ.

1. Phân loại tác nhân và ca sử dụng

Tác nhân (Actor) Quyền hạn và chức năng trong hệ thống
Khách hàng Xem sản phẩm, tìm kiếm sản phẩm, mua hàng, thanh toán, đăng ký tài khoản, đăng nhập hệ thống, đổi mật khẩu cá nhân.
Quản trị viên Kế thừa toàn bộ chức năng của Khách hàng; thực hiện xem thông tin hệ thống, cập nhật (thêm, sửa, xóa) sản phẩm; cập nhật (thêm, sửa, xóa) danh mục; cập nhật (thêm, sửa, xóa) nhà cung cấp.

2. Danh mục các ca sử dụng được đặc tả trong hệ thống

Hệ thống xác định 17 ca sử dụng cốt lõi, được gán mã định danh và thiết lập quy trình kiểm soát cụ thể:

Mã ID Tên Use Case Tác nhân thực hiện Tiền điều kiện (Pre-Condition) Hậu điều kiện (Post-Condition)
DN001 Đăng nhập Khách hàng, Quản trị viên Thiết bị có kết nối mạng; đã có tài khoản trong cơ sở dữ liệu Thông báo đăng nhập thành công và chuyển hướng về trang chủ
DK001 Đăng kí Khách hàng, Quản trị viên Thiết bị có kết nối mạng Thông báo đăng ký thành công
SV001 Xem sản phẩm Khách hàng, Quản trị viên Thiết bị có kết nối mạng Hiển thị thông tin chi tiết sản phẩm
BY001 Mua hàng Khách hàng, Quản trị viên Thiết bị có kết nối mạng Chuyển sang trang thanh toán
TT001 Thanh toán Khách hàng, Quản trị viên Thiết bị có mạng; đã đăng nhập; có sản phẩm trong giỏ hàng Chuyển sang trang xác nhận đơn hàng
VI001 Xem thông tin Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị thông tin quản trị cần thiết
AD001 Thêm sản phẩm Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách sản phẩm sau khi thêm
ED001 Sửa sản phẩm Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách sản phẩm sau khi sửa
DE001 Xóa sản phẩm Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách sản phẩm sau khi xóa
AD002 Thêm danh mục Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách danh mục sau khi thêm
ED002 Sửa danh mục Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách danh mục sau khi sửa
DE002 Xóa danh mục Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách danh mục sau khi xóa
AD003 Thêm nhà cung cấp Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách nhà cung cấp sau khi thêm
ED003 Sửa nhà cung cấp Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách nhà cung cấp sau khi sửa
DE003 Xóa nhà cung cấp Quản trị viên Thiết bị có mạng; Quản trị viên đã đăng nhập Hiển thị danh sách nhà cung cấp sau khi xóa
SR001 Tìm sản phẩm Khách hàng, Quản trị viên Thiết bị có kết nối mạng Hiển thị danh sách sản phẩm theo từ khóa
CH001 Đổi mật khẩu Khách hàng, Quản trị viên Thiết bị có kết nối mạng; đã có tài khoản trong hệ thống Thông báo đổi mật khẩu thành công

3. Công nghệ và công cụ phát triển

  • Công nghệ phía máy khách (Client-side):
    • HTML (HyperText Markup Language): Đóng vai trò định hình khung cấu trúc nội dung và định dạng dữ liệu hiển thị trên các trang web.
    • CSS (Cascading Style Sheets): Thiết lập định dạng kiểu dáng, màu sắc, bố cục và tối ưu hóa trải nghiệm trực quan cho giao diện.
    • JavaScript: Ngôn ngữ kịch bản thực thi tại trình duyệt, hỗ trợ xử lý tương tác sự kiện từ người dùng và kiểm tra tính hợp lệ của dữ liệu biểu mẫu.
  • Công nghệ phía máy chủ (Server-side):
    • ASP (Active Server Pages): Xử lý logic nghiệp vụ, tiếp nhận yêu cầu HTTP từ máy khách, tương tác với tầng cơ sở dữ liệu và kết xuất mã HTML trả về cho trình duyệt.
  • Môi trường phát triển tích hợp (IDE & Tools):
    • Microsoft Visual Studio: Môi trường phát triển chính với trình biên dịch, trình gỡ lỗi (debugger) mạnh mẽ và khả năng mở rộng linh hoạt.
    • Adobe Dreamweaver: Công cụ hỗ trợ thiết kế bố cục và chỉnh sửa mã nguồn giao diện web.

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

Chương 1: Phân Tích Yêu Cầu Theo Uml

Chương 1 tập trung toàn bộ vào việc mô hình hóa các yêu cầu chức năng của hệ thống website bán hàng Pokemon theo chuẩn UML. Nội dung chương trình bày chi tiết:

  • Danh sách 2 tác nhân (Khách hàng, Quản trị viên) và mối quan hệ thừa kế quyền hạn.
  • Danh sách 17 ca sử dụng từ việc xác thực tài khoản (đăng nhập, đăng ký, đổi mật khẩu), nghiệp vụ mua bán (xem sản phẩm, tìm kiếm, mua hàng, thanh toán) đến nghiệp vụ quản trị dữ liệu (xem thông tin, quản lý sản phẩm, danh mục, nhà cung cấp).
  • Bảng đặc tả chi tiết cho từng ca sử dụng với đầy đủ thông tin: Mã Use Case, Tên Use Case, Mô tả, Tác nhân, Mức độ ưu tiên, Sự kiện kích hoạt, Tiền điều kiện, Hậu điều kiện, Luồng sự kiện chính (Basic Flow) và Luồng sự kiện ngoại lệ (Exception Flow).
  • Hệ thống sơ đồ trực quan bao gồm Hình 1 (Biểu đồ Use Case tổng quát), chuỗi biểu đồ hoạt động và chuỗi biểu đồ tuần tự mô tả chi tiết từng thao tác của người dùng tương tác với hệ thống.

Chương 2: Mô Hình Cơ Sở Dữ Liệu

Chương 2 trình bày thiết kế mô hình dữ liệu quan hệ (được minh họa thông qua Hình 2: Mô hình cơ sở dữ liệu ở trang 35). Mô hình này xác định các thực thể và mối quan hệ lưu trữ thông tin về sản phẩm Pokemon, danh mục hàng hóa, thông tin nhà cung cấp, thông tin tài khoản người dùng và dữ liệu giỏ hàng/thanh toán, đảm bảo tính toàn vẹn dữ liệu khi thực hiện các thao tác thêm, sửa, xóa và truy vấn.

Chương 3: Sơ Đồ Website

Chương 3 thiết lập sơ đồ cấu trúc website (được thể hiện qua Hình 3: Sơ đồ website của hệ thống ở trang 36). Sơ đồ phân định rõ ràng phân cấp các trang công khai (Trang chủ, Giới thiệu, Liên hệ, Danh mục sản phẩm, Chi tiết sản phẩm, Giỏ hàng, Thanh toán, Đăng nhập, Đăng ký) và các trang quản trị nội bộ dành cho người quản trị (Dashboard quản trị, Quản lý sản phẩm, Quản lý danh mục, Quản lý nhà cung cấp).

Chương 4: Tổng Quan Đề Tài

Chương 4 cung cấp cái nhìn tổng quát về đề tài, bao gồm các mục:

  • Mục tiêu của đề tài: Xây dựng hoàn chỉnh website bán hàng trực tuyến cho cửa hàng Pokemon.
  • Ý nghĩa của đề tài: Giải quyết bài toán kinh doanh online, giảm chi phí mặt bằng và nâng cao trải nghiệm mua hàng cho người tiêu dùng.
  • Đối tượng của đề tài: Các mặt hàng liên quan đến Pokemon và các nhóm đối tượng người dùng tương tác với website.
  • Một số trang chính của website: Giới thiệu khái quát các màn hình chức năng quan trọng của hệ thống (trang 37).

Chương 5: Giới Thiệu Công Nghệ

Chương 5 thuyết minh chi tiết về cơ sở lý thuyết công nghệ và các công cụ được lựa chọn để xây dựng hệ thống:

  • HTML: Trình bày khái niệm, công dụng và các định dạng thẻ cơ bản trong xây dựng tài liệu web.
  • CSS và JavaScript: Trình bày vai trò tạo kiểu dáng giao diện và ngôn ngữ kịch bản xử lý tương tác phía máy khách.
  • ASP: Giới thiệu tổng quan và cấu trúc của công nghệ Active Server Pages trong việc xử lý dữ liệu động phía máy chủ (trang 45).
  • Công cụ phát triển: Giới thiệu phần mềm Adobe Dreamweaver và môi trường Microsoft Visual Studio (nêu bật các tính năng tổng quát, trình gỡ lỗi và khả năng mở rộng).

Chương 6: Giao Diện Chương Trình

Chương 6 trình bày đặc tả giao diện và thiết kế chi tiết 21 màn hình giao diện thực tế của hệ thống:

  1. Giao diện Trang chủ
  2. Giao diện trang Giới thiệu
  3. Giao diện trang Đăng kí
  4. Giao diện trang Đăng nhập
  5. Giao diện trang Đổi mật khẩu
  6. Giao diện trang Giỏ hàng
  7. Giao diện trang Thanh toán
  8. Giao diện trang Xác nhận
  9. Giao diện trang Quản trị viên
  10. Giao diện trang Cập nhật sản phẩm
  11. Giao diện trang Thêm sản phẩm
  12. Giao diện trang Sửa sản phẩm
  13. Giao diện trang Cập nhật danh mục
  14. Giao diện trang Thêm danh mục
  15. Giao diện trang Sửa danh mục
  16. Giao diện trang Cập nhật nhà cung cấp
  17. Giao diện trang Thêm nhà cung cấp
  18. Giao diện trang Sửa thông tin nhà cung cấp
  19. Giao diện Danh mục
  20. Giao diện Nhà cung cấp
  21. Giao diện Liên hệ

Chương 7: Kết Luận Và Hướng Phát Triển

Chương 7 tổng kết toàn bộ kết quả đạt được của tiểu luận sau quá trình nghiên cứu, phân tích thiết kế và hiện thực hóa website bán hàng Pokemon, đồng thời chỉ ra các hướng mở rộng phát triển tiếp theo của hệ thống (trang 57).


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

  • Kết quả thiết kế kỹ thuật: Đề tài hoàn thành bộ tài liệu phân tích thiết kế phần mềm chi tiết cho website bán hàng Pokemon, bao gồm:
    • Xác định và phân quyền thành công 2 nhóm tác nhân (Khách hàng, Quản trị viên).
    • Đặc tả hoàn chỉnh 17 ca sử dụng (từ mã DN001 đến CH001) với đầy đủ luồng sự kiện cơ bản và luồng ngoại lệ.
    • Xây dựng hệ thống biểu đồ mô hình hóa (Use Case Diagram, Activity Diagrams, Sequence Diagrams) cho tất cả các ca sử dụng.
    • Thiết kế hoàn chỉnh mô hình cơ sở dữ liệu (Hình 2) và sơ đồ website hệ thống (Hình 3).
  • Kết quả triển khai giao diện: Thiết kế và xây dựng thành công 21 màn hình giao diện chức năng bao quát toàn bộ quy trình mua hàng của người dùng và quy trình quản trị dữ liệu của quản trị viên.
  • Đóng góp của đề tài: Cung cấp một giải pháp ứng dụng công nghệ web (HTML, CSS, JavaScript, ASP) vào việc số hóa quy trình kinh doanh bán lẻ các sản phẩm chủ đề Pokemon, giúp tối ưu hóa chi phí vận hành cửa hàng và tạo kênh mua sắm thuận tiện cho khách hàng.

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

  • Hạn chế:
    • Đề tài được thực hiện trong phạm vi một tiểu luận môn học (Lập trình Website) vào năm 2020 nên các giải pháp công nghệ phía máy chủ tập trung chủ yếu vào nền tảng ASP truyền thống.
    • Quy trình thanh toán mới dừng lại ở mức nhập thông tin và xác nhận đơn hàng trên giao diện hệ thống, chưa tích hợp sâu các cổng thanh toán điện tử trực tuyến bên thứ ba.
  • Hướng nghiên cứu và phát triển tiếp:
    • Tiếp tục nâng cấp và hoàn thiện các chức năng theo nội dung định hướng phát triển đã nêu tại Chương 7 của tài liệu.
    • Nâng cấp nền tảng công nghệ, tối ưu hóa cơ sở dữ liệu và bổ sung các tính năng bảo mật nâng cao cho hệ thống website.

Giá trị tham khảo

Tài liệu tiểu luận có giá trị tham khảo thiết thực cho sinh viên các chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm (đặc biệt là sinh viên theo học các học phần Lập trình Website, Phân tích và Thiết kế Hệ thống):

  • Tham khảo phương pháp đặc tả UML: Cung cấp cấu trúc mẫu chuẩn mực trong việc phân rã ca sử dụng, đặt mã định danh (ID), viết đặc tả luồng sự kiện (Basic Flow, Exception Flow) và vẽ biểu đồ hoạt động, biểu đồ tuần tự đi kèm.
  • Tham khảo quy trình xây dựng website thương mại điện tử cơ bản: Cung cấp sơ đồ điều hướng trang (Site Map) và danh mục 21 màn hình giao diện cần thiết cho một hệ thống bán hàng trực tuyến hoàn chỉnh.

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

1. Hệ thống website bán hàng Pokemon phân chia người dùng thành những tác nhân (Actor) nào và mối quan hệ giữa chúng là gì?
Hệ thống xác định 2 tác nhân chính: Khách hàng và Quản trị viên. Trong đó, Quản trị viên có quan hệ kế thừa toàn bộ chức năng của Khách hàng (xem sản phẩm, mua hàng, thanh toán, đăng ký, đăng nhập) và được bổ sung thêm các quyền quản trị như cập nhật sản phẩm, cập nhật danh mục, cập nhật nhà cung cấp và xem thông tin hệ thống.

2. Trong Chương 1, hệ thống đã phân tích và đặc tả bao nhiêu ca sử dụng (Use Case)?
Chương 1 đã phân tích, mô hình hóa và lập bảng đặc tả chi tiết cho 17 ca sử dụng, bao gồm: Đăng nhập (DN001), Đăng kí (DK001), Xem sản phẩm (SV001), Mua hàng (BY001), Thanh toán (TT001), Xem thông tin (VI001), Thêm sản phẩm (AD001), Sửa sản phẩm (ED001), Xóa sản phẩm (DE001), Thêm danh mục (AD002), Sửa danh mục (ED002), Xóa danh mục (DE002), Thêm nhà cung cấp (AD003), Sửa nhà cung cấp (ED003), Xóa nhà cung cấp (DE003), Tìm sản phẩm (SR001) và Đổi mật khẩu (CH001).

3. Để thực hiện ca sử dụng Thanh toán (Mã Use Case: TT001), người dùng cần thỏa mãn những tiền điều kiện (Pre-Condition) nào?
Theo đặc tả Use Case TT001, tiền điều kiện bắt buộc gồm có: thiết bị của người dùng phải có kết nối mạng, người dùng (Khách hàng hoặc Quản trị viên) đã đăng nhập thành công vào hệ thống và đã có sản phẩm tồn tại trong giỏ hàng.

4. Đề tài đã sử dụng những công nghệ và công cụ phát triển phần mềm nào?
Các công nghệ và công cụ được trình bày trong Chương 5 bao gồm: HTML (định dạng cấu trúc), CSS (định dạng trình bày), JavaScript (kịch bản tương tác client), ASP (xử lý logic server), cùng hai công cụ phát triển là Microsoft Visual Studio (cung cấp trình gỡ lỗi và khả năng mở rộng) và Adobe Dreamweaver.

5. Hệ thống giao diện được đặc tả tại Chương 6 gồm những nhóm màn hình chức năng nào?
Chương 6 đặc tả tổng cộng 21 giao diện màn hình, chia thành hai nhóm chính: nhóm giao diện phía người dùng (Trang chủ, Giới thiệu, Đăng kí, Đăng nhập, Đổi mật khẩu, Giỏ hàng, Thanh toán, Xác nhận, Danh mục, Nhà cung cấp, Liên hệ) và nhóm giao diện quản trị (Trang quản trị viên cùng các trang thêm, sửa, cập nhật dành riêng cho Sản phẩm, Danh mục và Nhà cung cấp).


Kết luận

Tiểu luận môn học "Xây dựng website bán hàng cho cửa hàng Pokemon" của sinh viên Nguyễn Minh Quân đã hoàn thành đầy đủ quy trình phân tích và thiết kế một hệ thống thương mại điện tử chuyên biệt. Đề tài đã xây dựng hệ thống tài liệu kỹ thuật chuẩn mực bằng ngôn ngữ UML với 17 ca sử dụng được đặc tả chặt chẽ kèm biểu đồ hoạt động và biểu đồ tuần tự tương ứng. Bên cạnh đó, tác giả đã thiết kế hoàn chỉnh mô hình dữ liệu, sơ đồ website và 21 màn hình giao diện chức năng phục vụ cho cả khách hàng lẫn người quản trị. Công trình đóng vai trò là tài liệu tham khảo có giá trị học thuật và thực tiễn cho sinh viên ngành kỹ thuật phần mềm khi tiếp cận các bài toán lập trình ứng dụng web.