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

Trong bối cảnh thương mại hiện đại, phương thức bán hàng trực tuyến (online) ngày càng phát triển mạnh mẽ nhờ sự tiến bộ của công nghệ thông tin và truyền thông. Hình thức kinh doanh này mang lại nhiều lợi ích thiết thực cho doanh nghiệp và các cửa hàng bán lẻ, đặc biệt là khả năng tiếp cận lượng khách hàng rộng lớn mà không bị giới hạn bởi vị trí địa lý, đồng thời giúp cắt giảm chi phí thuê mặt bằng do không cần duy trì không gian trưng bày sản phẩm vật lý quy mô lớn. Đối với người tiêu dùng, mua sắm trực tuyến đem lại sự thuận tiện khi có thể tìm kiếm, đối chiếu và đặt mua sản phẩm nhanh chóng ngay tại nhà mà không cần phải di chuyển trực tiếp đến cửa hàng.

Xuất phát từ thực tiễn trên, đề tài "Xây dựng website bán hàng cho cửa hàng Pokemon" được tác giả Nguyễn Minh Quân 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.

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

  1. Khảo sát và tổng quan các yêu cầu nghiệp vụ của mô hình cửa hàng trực tuyến chuyên kinh doanh các mặt hàng liên quan đến Pokemon.
  2. Ứng dụng ngôn ngữ mô hình hóa thống nhất (UML) để phân tích yêu cầu hệ thống, bao gồm xây dựng biểu đồ Use Case, đặc tả chi tiết từng ca sử dụng, xây dựng biểu đồ hoạt động và biểu đồ tuần tự cho tất cả các chức năng.
  3. Thiết kế mô hình cơ sở dữ liệu quan hệ và sơ đồ cấu trúc điều hướng của website nhằm đảm bảo tính toàn vẹn dữ liệu và trải nghiệm người dùng.
  4. Nghiên cứu và lựa chọn các công nghệ nền tảng phát triển web (HTML, CSS, JavaScript, ASP) cùng các công cụ hỗ trợ lập trình (Visual Studio, Adobe Dreamweaver).
  5. Hiện thực hóa hệ thống giao diện hoàn chỉnh cho cả phân hệ người dùng (khách hàng) và phân hệ quản trị (quản trị viên).

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

  • Đối tượng nghiên cứu: Quy trình vận hành và quản lý hoạt động kinh doanh trực tuyến cho cửa hàng bán sản phẩm Pokemon, cấu trúc cơ sở dữ liệu, các luồng tương tác của người dùng và quản trị viên, cùng kiến trúc giao diện web.
  • Phạm vi không gian và thời gian: Nghiên cứu được thực hiện tại Viện Kỹ thuật - Công nghệ, Trường Đại học Thủ Dầu Một, tỉnh Bình Dương, hoàn thành vào tháng 12 năm 2020 dưới sự hướng dẫn của ThS. Nguyễn Hữu Vĩnh.

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

Đề tài sử dụng các cơ sở lý thuyết chuẩn mực trong công nghệ phần mềm và lập trình ứng dụng web:

  • Ngôn ngữ mô hình hóa thống nhất (UML - Unified Modeling Language): Đóng vai trò là khung lý thuyết chính để mô hình hóa hành vi và cấu trúc của hệ thống. Tác giả áp dụng các loại biểu đồ chuẩn gồm: Biểu đồ ca sử dụng (Use Case Diagram), Biểu đồ hoạt động (Activity Diagram), và Biểu đồ tuần tự (Sequence Diagram).
  • Mô hình hóa dữ liệu quan hệ: Ứng dụng lý thuyết cơ sở dữ liệu quan hệ để thiết kế các thực thể, thuộc tính và mối quan hệ giữa các bảng phục vụ lưu trữ thông tin sản phẩm, danh mục, nhà cung cấp và tài khoản.
  • Kiến trúc ứng dụng web đa tầng: Sử dụng công nghệ xử lý phía máy khách (Client-side) kết hợp với xử lý phía máy chủ (Server-side) qua nền tảng ASP.

Phương pháp nghiên cứu và kỹ thuật thực hiện bao gồm:

  • Phương pháp phân tích và thiết kế hướng đối tượng: Phân rã hệ thống thành các tác nhân (Actors) và các ca sử dụng (Use Cases) cụ thể; xây dựng bảng đặc tả chi tiết cho từng ca sử dụng bao gồm định danh, mô tả, tác nhân, kích hoạt, tiền điều kiện, hậu điều kiện, luồng cơ bản và luồng ngoại lệ.
  • Phương pháp thiết kế giao diện người dùng (UI Design): Xây dựng sơ đồ phân cấp website (Site Map) và thiết kế hệ thống màn hình chức năng trực quan, phân định rõ khu vực tương tác của khách hàng và bảng điều khiển của quản trị viên.
  • Nguồn dữ liệu: Dữ liệu nghiệp vụ phục vụ bài toán bán hàng sản phẩm Pokemon (thông tin sản phẩm, nhà cung cấp, danh mục hàng hóa), kết hợp cùng các tài liệu kỹ thuật về HTML, CSS, JavaScript, ASP, Microsoft Visual Studio và Adobe Dreamweaver.

Thiết kế và triển khai

Hệ thống được thiết kế theo cấu trúc mô-đun hóa, phân tách rõ ràng giữa phân hệ người dùng cuối và phân hệ quản trị. Quá trình thiết kế và triển khai được mô tả chi tiết qua các thành phần kỹ thuật sau:

1. Phân rã tác nhân và ca sử dụng (Actors & Use Cases)

Hệ thống xác định 2 tác nhân chính tham gia tương tác:

  • Khách hàng (Customer): Thực hiện các tác vụ duyệt xem sản phẩm, tìm kiếm, đăng ký tài khoản, đăng nhập, đổi mật khẩu, thêm sản phẩm vào giỏ hàng và thanh toán hóa đơn.
  • Quản trị viên (Admin): Kế thừa toàn bộ quyền hạn của tác nhân Khách hàng, đồng thời được cấp quyền quản lý hệ thống bao gồm: xem thông tin quản trị, cập nhật sản phẩm (thêm/sửa/xóa), cập nhật danh mục (thêm/sửa/xóa), và cập nhật thông tin nhà cung cấp (thêm/sửa/xóa).
STT Tên Use Case Mã Use Case (ID) Tác nhân thực hiện Mục đích / Chức năng
1 Đăng nhập DN001 Khách hàng, Quản trị viên Cho phép truy cập vào tài khoản cá nhân
2 Đăng kí DK001 Khách hàng, Quản trị viên Cho phép tạo tài khoản người dùng mới
3 Xem sản phẩm SV001 Khách hàng, Quản trị viên Hiển thị thông tin chi tiết của sản phẩm
4 Mua hàng BY001 Khách hàng, Quản trị viên Chọn và thêm sản phẩm vào đơn hàng
5 Thanh toán TT001 Khách hàng, Quản trị viên Nhập thông tin và thanh toán hóa đơn mua hàng
6 Xem thông tin VI001 Quản trị viên Xem thông tin các mục quản trị trong website
7 Thêm sản phẩm AD001 Quản trị viên Bổ sung sản phẩm mới vào cơ sở dữ liệu
8 Sửa sản phẩm ED001 Quản trị viên Chỉnh sửa thông tin sản phẩm đã có
9 Xóa sản phẩm DE001 Quản trị viên Gỡ bỏ sản phẩm khỏi hệ thống
10 Thêm danh mục AD002 Quản trị viên Tạo mới nhóm/danh mục sản phẩm
11 Sửa danh mục ED002 Quản trị viên Cập nhật thông tin danh mục sản phẩm
12 Xóa danh mục DE002 Quản trị viên Xóa danh mục khỏi hệ thống
13 Thêm nhà cung cấp AD003 Quản trị viên Bổ sung đối tác/nhà cung cấp mới
14 Sửa nhà cung cấp ED003 Quản trị viên Điều chỉnh thông tin của nhà cung cấp
15 Xóa nhà cung cấp DE003 Quản trị viên Xóa thông tin nhà cung cấp
16 Tìm sản phẩm SR001 Khách hàng, Quản trị viên Tra cứu sản phẩm theo tên hoặc từ khóa
17 Đổi mật khẩu CH001 Khách hàng, Quản trị viên Thay đổi mật khẩu tài khoản hiện tại

2. Thiết kế luồng hoạt động và tương tác tuần tự

Hệ thống thiết lập bộ biểu đồ hoạt động (Activity Diagrams) và biểu đồ tuần tự (Sequence Diagrams) đồng bộ cho toàn bộ 17 chức năng. Mỗi chức năng đều được kiểm soát bởi các luồng cơ bản và luồng ngoại lệ:

  • Đối với các thao tác dữ liệu của quản trị viên (Thêm, Sửa, Xóa sản phẩm, danh mục, nhà cung cấp): Tiền điều kiện bắt buộc là quản trị viên phải đăng nhập thành công và thiết bị có kết nối mạng; nếu nhấn nút hủy thao tác, hệ thống sẽ điều hướng quay lại danh sách hiện hành mà không lưu thay đổi.
  • Đối với quy trình giao dịch của khách hàng: Luồng Mua hàng (BY001) kích hoạt chuyển sang bước Thanh toán (TT001), yêu cầu kiểm tra tiền điều kiện có sản phẩm trong giỏ hàng và người dùng đã đăng nhập trước khi điều hướng sang trang xác nhận đơn hàng.

3. Ngăn xếp công nghệ và môi trường triển khai

Đề tài sử dụng bộ công nghệ tiêu chuẩn cho phát triển web truyền thống:

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

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 là phần nội dung chiếm dung lượng lớn nhất trong tài liệu (từ trang 2 đến trang 34), trình bày chi tiết toàn bộ hồ sơ thiết kế hướng đối tượng:

  • Biểu đồ Use Case tổng quát: Thể hiện mối quan hệ giữa 2 Actor (Khách hàng, Quản trị viên) và 17 Use Case. Điểm mấu chốt trong thiết kế là Actor Quản trị viên kế thừa hoàn toàn các quyền của Khách hàng, đồng thời sở hữu các ca sử dụng quản trị mở rộng.
  • Hồ sơ đặc tả 17 Use Case: Mỗi ca sử dụng được chuẩn hóa bằng bảng đặc tả gồm các trường thông tin: Tên ca sử dụng, Mã định danh (ID), Mô tả tóm tắt, Tác nhân tham gia, Mức độ ưu tiên, Sự kiện kích hoạt (Trigger), Tiền điều kiện (Pre-Condition), Hậu điều kiện (Post-Condition), Luồng sự kiện chính (Basic Flow) và Luồng ngoại lệ (Exception Flow).
  • Hệ thống biểu đồ hoạt động (Activity Diagrams): Xây dựng 17 sơ đồ hoạt động mô tả tiến trình xử lý từ trạng thái bắt đầu, các bước nhập liệu, kiểm tra dữ liệu, rẽ nhánh điều kiện cho đến trạng thái kết thúc đối với các chức năng Đăng nhập, Đăng kí, Xem sản phẩm, Mua hàng, Thanh toán, Xem thông tin, Thêm/Sửa/Xóa sản phẩm, Thêm/Sửa/Xóa danh mục, Thêm/Sửa/Xóa nhà cung cấp, Tìm sản phẩm, và Đổi mật khẩu.
  • Hệ thống biểu đồ tuần tự (Sequence Diagrams): Trình bày 17 sơ đồ tuần tự mô hình hóa tương tác theo trục thời gian giữa tác nhân người dùng, các đối tượng giao diện (Boundary/Interface), bộ điều khiển xử lý (Controller) và thực thể dữ liệu (Entity/Database).

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

Chương 2 (trang 35) giới thiệu Hình 2 biểu diễn mô hình cơ sở dữ liệu quan hệ của hệ thống. Mô hình này được thiết kế nhằm lưu trữ và quản lý tập trung toàn bộ dữ liệu của website bán hàng Pokemon, bao gồm các bảng chứa thông tin tài khoản người dùng, sản phẩm Pokemon, danh mục phân loại, thông tin đối tác cung cấp, và chi tiết giỏ hàng/đơn hàng.

Chương 3: Sơ Đồ Website

Chương 3 (trang 36) mô tả Hình 3 là sơ đồ website (Site Map) của hệ thống. Sơ đồ thể hiện trực quan cấu trúc cây điều hướng từ trang chủ phân nhánh sang các trang chức năng công khai (dành cho khách hàng) và phân nhánh sang khu vực quản trị chuyên biệt (dành cho quản trị viên), đảm bảo luồng di chuyển giữa các trang diễn ra logic và thuận tiện.

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

Chương 4 (trang 37) làm rõ bức tranh tổng thể về đề tài qua 4 nội dung cốt lõi:

  • Mục tiêu của đề tài: Xây dựng hoàn chỉnh website thương mại điện tử chuyên cung cấp các mặt hàng Pokemon, đáp ứng nhu cầu giao dịch trực tuyến nhanh chóng.
  • Ý nghĩa của đề tài: Tối ưu hóa chi phí vận hành cửa hàng, giảm thiểu chi phí mặt bằng trưng bày, mở rộng tệp khách hàng tiềm năng và mang lại giải pháp mua sắm tiện lợi cho người dùng.
  • Đối tượng của đề tài: Xác định nhóm khách hàng có nhu cầu mua sắm sản phẩm Pokemon và nhân sự quản lý cửa hàng.
  • Một số trang chính của website: Khái quát các phân vùng trang trọng yếu cấu thành nên ứng dụng web.

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

Chương 5 (trang 45) thuyết minh chi tiết về cơ sở kỹ thuật và công cụ phần mềm được sử dụng trong dự án:

  • Ngôn ngữ HTML: Trình bày định nghĩa, công dụng trong việc tạo cấu trúc trang và các định dạng thẻ HTML.
  • Ngôn ngữ CSS & JavaScript: Trình bày vai trò của CSS trong việc định kiểu giao diện và JavaScript trong việc xử lý các hiệu ứng động, tương tác người dùng.
  • Công cụ Adobe Dreamweaver: Giới thiệu tính năng hỗ trợ thiết kế giao diện web trực quan.
  • Môi trường Microsoft Visual Studio: Phân tích tổng quan về IDE, khả năng mở rộng hệ sinh thái và cơ chế hoạt động của trình gỡ lỗi (debugger).
  • Công nghệ ASP: Trình bày tổng quan về nền tảng Active Server Pages và cấu trúc xử lý mã nguồn phía máy chủ.

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

Chương 6 (trang 56) cung cấp hồ sơ đặc tả và hình ảnh thiết kế thực tế của 21 màn hình giao diện trong hệ thống:

  • Nhóm giao diện người dùng công khai: Giao diện Trang chủ, Trang giới thiệu, Trang đăng kí, Trang đăng nhập, Trang đổi mật khẩu, Trang giỏ hàng, Trang thanh toán, Trang xác nhận, Giao diện Danh mục, Giao diện Nhà cung cấp, và Giao diện Liên hệ.
  • Nhóm giao diện quản trị viên: Giao diện Trang quản trị viên, Trang cập nhật sản phẩm, Trang thêm sản phẩm, Trang sửa sản phẩm, Trang cập nhật danh mục, Trang thêm danh mục, Trang sửa danh mục, Trang cập nhật nhà cung cấp, Trang thêm nhà cung cấp, và Trang sửa thông tin nhà cung cấp.

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

Chương 7 (trang 57) tổng kết toàn bộ kết quả đạt được của đồ án môn học trong việc mô hình hóa yêu cầu, thiết kế dữ liệu và xây dựng hệ thống giao diện website bán hàng Pokemon, đồng thời định hướng các nội dung cần tiếp tục nghiên cứu và nâng cấp cho hệ thống trong tương lai.


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

Đồ án đã đạt được các kết quả cụ thể theo đúng mục tiêu đặt ra:

  1. Hoàn thiện hồ sơ phân tích thiết kế UML: Xây dựng đầy đủ 17 bảng đặc tả ca sử dụng chi tiết, 17 biểu đồ hoạt động và 17 biểu đồ tuần tự tương ứng cho từng chức năng nghiệp vụ, phân định rõ ràng vai trò giữa khách hàng và quản trị viên.
  2. Thiết kế cấu trúc dữ liệu và điều hướng: Xây dựng hoàn chỉnh mô hình cơ sở dữ liệu quan hệ tại Chương 2 và sơ đồ website hệ thống tại Chương 3, làm cơ sở vững chắc cho việc liên kết các trang chức năng.
  3. Hiện thực hóa hệ thống giao diện: Thiết kế chi tiết 21 màn hình giao diện trực quan, bao quát toàn bộ quy trình mua sắm, thanh toán, quản lý danh mục, quản lý sản phẩm và quản lý nhà cung cấp.

Về mặt đóng góp, đề tài cung cấp một tài liệu tham khảo hoàn chỉnh về quy trình phân tích và thiết kế hệ thống phần mềm thương mại điện tử quy mô vừa và nhỏ, áp dụng phương pháp luận UML bài bản và kết hợp các công nghệ lập trình web căn bản.


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

Dựa trên nội dung được trình bày trong tài liệu, đề tài có một số hạn chế và hướng mở:

  • Hạn chế: Hệ thống tập trung chủ yếu vào khâu mô hình hóa yêu cầu bằng UML, thiết kế cơ sở dữ liệu và xây dựng hệ thống giao diện (UI). Tài liệu chưa mở rộng sâu vào các cơ chế bảo mật nâng cao, tích hợp cổng thanh toán trực tuyến của bên thứ ba hoặc kiểm thử hiệu năng hệ thống dưới tải trọng lớn.
  • Hướng nghiên cứu tiếp: Tiếp tục phát triển và hoàn thiện các chức năng nâng cao theo định hướng tại Chương 7, tối ưu hóa khả năng xử lý nghiệp vụ phía máy chủ với ASP, hoàn thiện liên kết cơ sở dữ liệu thực tế và nâng cấp trải nghiệm người dùng trên các thiết bị di động.

Giá trị tham khảo

Tài liệu này là nguồn tài liệu học thuật và kỹ thuật phù hợp cho:

  • Sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm đang thực hiện tiểu luận, đồ án môn học về Lập trình Website hoặc Phân tích & Thiết kế hệ thống thông tin.
  • Người học cần tài liệu mẫu chuẩn mực về cách trình bày đặc tả ca sử dụng (Use Case Specification), vẽ biểu đồ hoạt động và biểu đồ tuần tự theo chuẩn UML.
  • Các nhà phát triển muốn tham khảo cấu trúc sơ đồ website và danh mục màn hình chức năng cho một hệ thống thương mại điện tử chuyên biệt.

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

1. Hệ thống website bán hàng Pokemon phân chia bao nhiêu tác nhân (Actor) và quyền hạn của chúng là gì?
Hệ thống có 2 tác nhân chính: Khách hàng (thực hiện xem sản phẩm, mua hàng, thanh toán, đăng ký, đăng nhập) và Quản trị viên (kế thừa toàn bộ quyền của Khách hàng, đồng thời có thêm quyền xem thông tin quản trị, cập nhật sản phẩm, cập nhật danh mục và cập nhật nhà cung cấp).

2. Tài liệu đặc tả bao nhiêu ca sử dụng (Use Case) và mã định danh của chúng được quy ước như thế nào?
Hệ thống đặc tả chi tiết 17 ca sử dụng, được gắn các mã định danh chuẩn hóa như: Đă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ửa/Xóa sản phẩm (AD001, ED001, DE001), Thêm/Sửa/Xóa danh mục (AD002, ED002, DE002), Thêm/Sửa/Xóa nhà cung cấp (AD003, ED003, DE003), Tìm sản phẩm (SR001) và Đổi mật khẩu (CH001).

3. Bảng đặc tả Use Case trong tài liệu bao gồm những trường thông tin bắt buộc nào?
Mỗi ca sử dụng được đặc tả với đầy đủ các mục: Tên ca sử dụng (Use Case Name), Mã (Use Case ID), Mô tả (Description), Tác nhân (Actor), Mức độ ưu tiên (Priority), Sự kiện kích hoạt (Trigger), Tiền điều kiện (Pre-Condition), Hậu điều kiện (Post-Condition), Luồng cơ bản (Basic Flow), Luồng thay thế (Alternative Flow) và Luồng ngoại lệ (Exception Flow).

4. Những công nghệ và công cụ lập trình nào được lựa chọn để xây dựng hệ thống?
Đề tài sử dụng HTML, CSS và JavaScript cho giao diện phía máy khách; công nghệ ASP cho xử lý phía máy chủ; cùng hai công cụ phát triển chính là Microsoft Visual Studio và Adobe Dreamweaver.

5. Hệ thống giao diện của website bao gồm tổng cộng bao nhiêu màn hình?
Chương 6 của tài liệu đặc tả tổng cộng 21 màn hình giao diện, chia thành hai nhóm: các trang dịch vụ dành cho khách hàng (trang chủ, giỏ hàng, thanh toán, liên hệ...) và các trang quản trị chuyên biệt dành cho người quản lý (cập nhật sản phẩm, danh mục, 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 là một công trình học thuật hoàn chỉnh về phân tích, thiết kế và xây dựng giao diện ứng dụng web thương mại điện tử. Đề tài đã áp dụng chặt chẽ ngôn ngữ mô hình hóa UML để chuẩn hóa 17 ca sử dụng từ biểu đồ tổng quát, đặc tả chi tiết cho đến các biểu đồ hoạt động và tuần tự tương ứng. Cùng với việc thiết kế mô hình dữ liệu, sơ đồ website và hiện thực 21 màn hình chức năng, tài liệu mang lại giá trị tham khảo rõ ràng cho sinh viên khối ngành kỹ thuật phần mềm và công nghệ thông tin.