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

Trong xu thế phát triển của công nghệ thông tin và chuyển đổi số, máy tính điện tử và mạng Internet đã trở thành công cụ làm việc, giao tiếp và giải trí phổ biến trong xã hội. Cùng với quá trình toàn cầu hóa nền kinh tế, nhu cầu trao đổi, lưu thông hàng hóa của con người không ngừng gia tăng cả về mặt số lượng lẫn chất lượng. Nắm bắt xu hướng này, các doanh nghiệp và tổ chức công nghệ trên thế giới liên tục đầu tư, hoàn thiện các giải pháp phần mềm nhằm thúc đẩy thương mại điện tử. Tại thị trường Việt Nam, các mặt hàng thiết bị công nghệ số như máy tính bảng, máy tính xách tay và đặc biệt là điện thoại thông minh đã trở thành vật dụng thiết yếu trong đời sống hằng ngày. Phương thức mua sắm trực tuyến cho phép người tiêu dùng tiếp cận sản phẩm, so sánh thông số, lựa chọn mức giá phù hợp và đặt mua hàng nhanh chóng tại nhà mà không cần phải tốn kém thời gian hay công sức di chuyển trực tiếp đến các cửa hàng vật lý.

Nhằm đáp ứng nhu cầu mua sắm thiết bị di động ngày càng tăng và góp phần thúc đẩy ứng dụng thương mại điện tử trong thực tiễn, đề tài "Xây dựng website bán điện thoại" được thực hiện bởi sinh viên Lê Văn Bảo Chung (Lớp 19T1, Khoa Công nghệ số, Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng), dưới sự hướng dẫn chuyên môn của ThS. Nguyễn Thị Hà Quyên. Mục tiêu trọng tâm của đề tài là phân tích, thiết kế và phát triển hoàn chỉnh một hệ thống website thương mại điện tử phục vụ hoạt động kinh doanh trực tuyến cho cửa hàng Bảo Chung Mobile.

Căn cứ theo văn bản đồ án, các mục tiêu và nhiệm vụ kỹ thuật cụ thể được xác định bao gồm tám nội dung:

  1. Cho phép Quản trị viên (Admin) quản lý thông tin nhân viên, khách hàng và hệ thống hàng hóa.
  2. Cung cấp chức năng cho phép Quản trị viên theo dõi và thống kê chi tiết các mặt hàng hiện có trong kho.
  3. Cung cấp cơ chế tiếp nhận và cho phép Quản trị viên phản hồi các ý kiến phản ánh từ phía khách hàng.
  4. Cung cấp phân hệ hỗ trợ nhân viên thực hiện các nghiệp vụ quản lý bán hàng.
  5. Thiết lập hệ thống thông báo trạng thái hết hàng gửi đến Quản trị viên để kịp thời xử lý nguồn hàng.
  6. Cho phép khách hàng tìm kiếm và lọc sản phẩm linh hoạt theo nhiều tiêu chí phù hợp với nhu cầu sử dụng.
  7. Hỗ trợ khách hàng thực hiện các thao tác mua hàng trực tuyến một cách nhanh chóng, hiệu quả và chính xác.
  8. Xây dựng một giao diện website điện tử thân thiện, trực quan và bảo đảm tính thẩm mỹ cho người dùng.

Về đối tượng nghiên cứu, đồ án hướng đến hai nhóm đối tượng chính: khách hàng có nhu cầu tìm kiếm, tham khảo và mua sắm điện thoại di động trực tuyến; cùng với các cơ sở kinh doanh, cửa hàng bán lẻ có quy mô vừa và nhỏ tương tự như cửa hàng Bảo Chung Mobile. Về phạm vi nghiên cứu, không gian khảo sát nghiệp vụ và triển khai áp dụng thực tế của đề tài được giới hạn tại cửa hàng di động Bảo Chung.


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

Đồ án ứng dụng các nền tảng công nghệ phần mềm hiện đại phục vụ phát triển ứng dụng web đa tầng, kết hợp giữa mô hình kiến trúc phía máy chủ (Backend), giao diện tương tác người dùng (Frontend) và hệ quản trị cơ sở dữ liệu quan hệ:

Tầng kiến trúc / Phân loại Công nghệ sử dụng Vai trò và đặc tính kỹ thuật trong đề tài
Phát triển Backend Python & Django Framework Ngôn ngữ Python đa nền tảng, mã nguồn mở. Django Framework cung cấp kiến trúc Model-View-Controller (MVC) / Model-View-Template (MVT), định tuyến (routing), công cụ ánh xạ đối tượng - cơ sở dữ liệu (ORM), cơ chế xác thực người dùng, bảo mật và hỗ trợ phân trang dữ liệu.
Phát triển Frontend HTML, CSS, JavaScript, Bootstrap 5, jQuery, AJAX HTML định dạng và cấu trúc các thành phần trang web; CSS tạo phong cách, kiểu chữ và bố cục; JavaScript xử lý tương tác logic phản hồi người dùng; Bootstrap 5 hỗ trợ xây dựng giao diện; jQuery và AJAX phục vụ xử lý bất đồng bộ dữ liệu.
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 ngôn ngữ truy vấn có cấu trúc (SQL); quản lý bảng dữ liệu, thiết lập chỉ mục (index), bảo mật tài khoản truy cập, hỗ trợ sao lưu - phục hồi và tương thích kết nối qua các chuẩn giao tiếp.

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

  • Phương pháp khảo sát thực tế: Khảo sát nhu cầu sử dụng thực tế của nhóm đối tượng khách hàng có mong muốn tìm kiếm và đặt mua điện thoại di động qua môi trường mạng Internet.
  • Phương pháp phân tích đối chuẩn: Tham khảo mô hình hoạt động, tính năng và giao diện của các hệ thống website kinh doanh điện thoại trực tuyến đang vận hành trên thị trường.
  • Phương pháp phân tích thiết kế phần mềm hướng đối tượng: Sử dụng mô hình biểu đồ ca sử dụng (Use case), sơ đồ hoạt động (Activity diagram), mô hình quan hệ thực thể (ERD) và sơ đồ lớp (Class diagram) để chuẩn hóa quy trình nghiệp vụ và thiết kế cơ sở dữ liệu.
  • Nguồn dữ liệu kỹ thuật: Tài liệu lập trình chính thức về ngôn ngữ Python, Django Framework và tài liệu kỹ thuật về hệ quản trị cơ sở dữ liệu MySQL Server.

Thiết kế và triển khai

Hệ thống website bán điện thoại được thiết kế dựa trên sự phân định rõ ràng về quyền hạn và luồng tương tác giữa các tác nhân (Actors). Tác giả đã mô hình hóa ba nhóm người dùng chính tương ứng với các phân hệ chức năng:

Tác nhân (Actor) Nhóm chức năng chính Mô tả quyền hạn và thao tác trong hệ thống
Khách hàng vãng lai Khách truy cập chưa đăng nhập - Đăng ký tài khoản thành viên mới.
- Xem danh mục sản phẩm và chi tiết thông tin thiết bị.
- Tìm kiếm và lọc sản phẩm theo tên, khoảng giá hoặc loại điện thoại.
- Xem trạng thái đơn hàng, hủy đơn hàng, thanh toán và chat với nhân viên hỗ trợ.
Khách hàng thành viên Người dùng đã có tài khoản và đăng nhập - Đăng nhập hệ thống, cập nhật thông tin cá nhân.
- Tìm kiếm và lọc sản phẩm theo tên, giá, hãng sản xuất.
- Quản lý giỏ hàng: thêm sản phẩm, cập nhật số lượng, hủy giỏ hàng.
- Thực hiện mua hàng và thanh toán trực tuyến.
- Theo dõi trạng thái đơn hàng, xem lịch sử mua hàng, hủy đơn hàng và viết bình luận - đánh giá sản phẩm.
Quản trị viên (Admin) Quản lý toàn bộ hệ thống - Quản lý tài khoản người dùng và phân quyền.
- Quản lý danh mục sản phẩm: thêm sản phẩm mới, sửa thông tin, xóa sản phẩm.
- Quản lý danh mục hãng sản xuất: thêm hãng, sửa hãng, xóa hãng điện thoại.
- Quản trị đơn hàng: theo dõi danh sách đặt hàng, xem chi tiết đơn hàng, quản lý địa chỉ giao hàng và thông tin vận chuyển.

Hệ thống use case được xây dựng dựa trên kịch bản chi tiết với luồng cơ bản (Basic Flow) và luồng rẽ nhánh/ngoại lệ (Alternative Flow):

  • Ca sử dụng "Đăng ký tài khoản": Người dùng cung cấp tên đăng nhập (username), mật khẩu (password), họ tên (firstname, lastname) và địa chỉ thư điện tử (email). Hệ thống kiểm tra tính đầy đủ của biểu mẫu trước khi khởi tạo tài khoản.
  • Ca sử dụng "Đăng nhập": Hệ thống xác thực thông tin đăng nhập; trong trường hợp số điện thoại/tài khoản không tồn tại hoặc mật khẩu không trùng khớp, hệ thống gửi thông báo lỗi và yêu cầu người dùng thao tác lại.
  • Ca sử dụng "Tìm kiếm/Lọc": Hỗ trợ tìm kiếm theo từ khóa tên máy hoặc lựa chọn bộ lọc thương hiệu cụ thể (Iphone, Oppo, Samsung, Vivo) và mức giá định sẵn để điều hướng tới trang chi tiết sản phẩm.
  • Ca sử dụng "Quản lý giỏ hàng và Mua hàng": Cho phép khách hàng thêm mặt hàng mong muốn, điều chỉnh tăng giảm số lượng sản phẩm, chuyển tiếp sang màn hình thanh toán (checkout), cập nhật thông tin giao nhận và xác nhận hoàn tất giao dịch.
  • Phân hệ quản trị sản phẩm: Cung cấp các biểu mẫu nghiệp vụ để quản trị viên nhập mới thông số, cập nhật giá bán hoặc xóa bỏ các mã sản phẩm không còn kinh doanh khỏi cơ sở dữ liệu.

Mô hình dữ liệu của hệ thống được hoàn thiện thông qua sơ đồ liên kết thực thể (ERD) và sơ đồ lớp (Class Diagram), liên kết chặt chẽ các thực thể: sản phẩm, hãng sản xuất, người dùng, giỏ hàng, đơn hàng, chi tiết đơn hàng và địa chỉ giao hàng.


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

Mở đầu

Phần Mở đầu trình bày tổng quan về tính cấp thiết của đề tài trong bối cảnh thương mại điện tử phát triển mạnh mẽ; sự cần thiết của việc xây dựng kênh bán hàng trực tuyến nhằm phục vụ hoạt động kinh doanh cho cửa hàng Bảo Chung Mobile. Tác giả xác định rõ mục tiêu đề tài, tám nhiệm vụ cụ thể của hệ thống, đối tượng và phạm vi nghiên cứu, các phương pháp tiếp cận cùng bố cục tổng thể gồm ba chương nội dung chính.

Chương 1. Cơ sở lý thuyết

Chương 1 hệ thống hóa toàn bộ các nền tảng lý thuyết và công nghệ được sử dụng làm nền tảng phát triển website:

  • Ngôn ngữ lập trình Python và Django Framework: Nêu rõ khái niệm, đặc tính đa nền tảng, tính hiệu quả của ngôn ngữ Python; phân tích cấu trúc Django Framework với các tính năng định tuyến, xác thực, bảo mật, bộ máy ORM và khả năng triển khai mô hình MVC/MVT.
  • Công nghệ Frontend: Giới thiệu vai trò của các ngôn ngữ đánh dấu và kịch bản phía giao diện bao gồm HTML (định hình cấu trúc văn bản, bảng, liên kết), CSS (tùy biến giao diện, kiểu dáng, màu sắc, bố cục) và JavaScript (điều khiển logic phản hồi tương tác của người dùng).
  • Hệ quản trị cơ sở dữ liệu MySQL Server: Khái quát phần mềm cơ sở dữ liệu mã nguồn mở của Tập đoàn Oracle, việc ứng dụng ngôn ngữ SQL trong quản lý, lưu trữ, truy vấn dữ liệu, thiết lập chỉ mục, bảo mật và kết nối đa nền tảng.

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

Chương 2 tập trung khảo sát yêu cầu và thực hiện các bước phân tích, thiết kế hệ thống phần mềm:

  • Khảo sát yêu cầu và quy trình nghiệp vụ: Xác định sơ đồ hoạt động nghiệp vụ thực tế; phân loại các yêu cầu chức năng và phi chức năng đối với hai nhóm đối tượng chính là khách hàng (giao diện thẩm mỹ, bảo mật, tìm kiếm chính xác, thanh toán rõ ràng) và quản trị viên (quản lý kho, quản lý đơn hàng trực tuyến, báo cáo thống kê thu chi, phản hồi khách hàng).
  • Mô hình hóa Actor và Use case: Xác định các ca sử dụng cho ba nhóm tác nhân (khách hàng vãng lai, khách hàng thành viên, quản trị viên) và xây dựng biểu đồ usecase tổng thể.
  • Đặc tả kịch bản ca sử dụng: Thiết lập 9 bảng kịch bản usecase chi tiết (từ Bảng 2.1 đến Bảng 2.9) kèm sơ đồ hoạt động tương ứng cho các chức năng: Đăng ký tài khoản, Đăng nhập, Tìm kiếm/Lọc, Xem thông tin sản phẩm, Cập nhật giỏ hàng, Mua hàng, Thêm sản phẩm, Sửa sản phẩm, Xóa sản phẩm.
  • Thiết kế dữ liệu và giao diện: Trình bày các bản phác thảo giao diện, xây dựng sơ đồ quan hệ thực thể (ERD) và sơ đồ lớp (Class Diagram) phục vụ ánh xạ cơ sở dữ liệu.

Chương 3. Xây dựng chương trình

Chương 3 trình bày kết quả cài đặt và hiện thực hóa phần mềm trong thực tế:

  • Công cụ xây dựng chương trình: Sử dụng ngôn ngữ Python kết hợp Django Framework, hệ quản trị cơ sở dữ liệu MySQL Server (kết hợp công cụ quản trị dữ liệu SQL), thư viện giao diện Bootstrap 5, jQuery và công nghệ AJAX.
  • Thiết kế và đặc tả giao diện: Đồ án hoàn thiện và trình bày 18 màn hình chức năng (Hình 3.1 đến Hình 3.18) cùng 8 bảng đặc tả chi tiết màn hình (Bảng 3.1 đến Bảng 3.8):
    • Màn hình người dùng: Đăng nhập, Đăng ký, Trang chủ, Tìm kiếm theo giá, Tìm kiếm theo hãng, Tìm kiếm theo tên sản phẩm, Xem thông tin sản phẩm, Giỏ hàng, Giao hàng cho khách vãng lai, Giao hàng cho khách thành viên, Mua hàng thành công.
    • Màn hình quản trị: Giao diện sửa/xóa sản phẩm, Thêm sản phẩm, Quản lý đơn hàng, Quản lý chi tiết đơn hàng, Quản lý địa chỉ giao hàng, Quản lý hãng điện thoại và Quản lý người dùng.
  • Mỗi bảng đặc tả màn hình nêu rõ các thành phần giao diện (Screen Content) gồm các trường văn bản (Textfield), nút bấm (Button), cùng các quy tắc tương tác (Screen Actions) xác định trạng thái xử lý khi thành công hoặc thất bại.

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

Về kết quả kỹ thuật, đồ án đã hiện thực hóa đầy đủ các mục tiêu thiết kế và xây dựng phần mềm được đề ra ban đầu:

  • Xây dựng thành công hệ thống website bán điện thoại trực tuyến hoàn chỉnh cho cửa hàng Bảo Chung Mobile, bao gồm cả phân hệ tương tác dành cho khách hàng và phân hệ quản trị dành cho nhân viên/admin.
  • Hoàn thành tài liệu phân tích thiết kế hệ thống theo chuẩn công nghệ phần mềm với 9 bảng kịch bản ca sử dụng chi tiết (Bảng 2.1 - 2.9) và hệ thống sơ đồ ca sử dụng, sơ đồ hoạt động, sơ đồ ERD, sơ đồ lớp.
  • Triển khai thành công 18 màn hình giao diện ứng dụng (từ Hình 3.1 đến Hình 3.18), chuẩn hóa 8 bảng đặc tả giao diện (Bảng 3.1 - 3.8) quy định rõ các thành phần nhập liệu và điều kiện kiểm tra hợp lệ của dữ liệu.
  • Thiết lập bộ lọc tìm kiếm sản phẩm đa tiêu chí, cho phép người dùng lọc sản phẩm theo mức giá tùy chỉnh, theo tên thiết bị và theo các thương hiệu cụ thể được hỗ trợ trên hệ thống bao gồm: Iphone, Oppo, Samsung, Vivo.
  • Tích hợp quy trình xử lý đơn hàng linh hoạt cho cả hai đối tượng: khách hàng vãng lai (nhập thông tin giao hàng trực tiếp) và khách hàng thành viên (quản lý thông tin qua tài khoản đăng ký).

Về giải pháp và đóng góp thực tiễn: Đề tài đề xuất giải pháp ứng dụng kiến trúc MVC/MVT trên nền tảng Python Django kết hợp cơ sở dữ liệu MySQL nhằm số hóa quy trình quản lý kinh doanh cho các cửa hàng bán lẻ thiết bị di động có quy mô vừa và nhỏ. Kết quả này giúp giảm bớt thời gian, công sức mua sắm của khách hàng, đồng thời hỗ trợ chủ cơ sở kinh doanh theo dõi kho hàng, đơn đặt hàng và tương tác với người mua một cách có hệ thống.


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

Căn cứ vào nội dung và phạm vi nghiên cứu được tác giả trình bày trong đồ án, các hạn chế và hướng mở của đề tài được ghi nhận như sau:

  • Hạn chế: Hệ thống được xây dựng và thử nghiệm phục vụ phạm vi nghiệp vụ cụ thể của cửa hàng Bảo Chung Mobile. Văn bản đồ án tập trung chủ yếu vào khâu phân tích thiết kế, mô tả kịch bản chức năng và đặc tả các màn hình giao diện; chưa trình bày các dữ liệu thực nghiệm về kiểm thử hiệu năng chịu tải hệ thống khi có lượng truy cập lớn, cũng như chưa tích hợp các cổng thanh toán trực tuyến tự động qua bên thứ ba (các phương thức thanh toán mới dừng ở mức mô tả quy trình tiếp nhận thông tin và giao hàng).
  • Hướng phát triển: Đồ án xác định hướng phát triển tiếp theo là hoàn thiện các tính năng mở rộng của hệ thống, nâng cấp giao diện và bổ sung các tiện ích quản lý nhằm đáp ứng tốt hơn yêu cầu vận hành thực tế của cửa hàng trong tương lai.

Giá trị tham khảo

Đồ án tốt nghiệp "Xây dựng website bán điện thoại" có giá trị tham khảo thiết thực cho nhiều nhóm đối tượng:

  • Sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm: Tài liệu là biểu mẫu trực quan cho việc trình bày một đồ án tốt nghiệp phát triển phần mềm ứng dụng, từ khâu khảo sát nghiệp vụ, lập tài liệu đặc tả usecase, thiết kế ERD/Class diagram cho đến lập trình giao diện.
  • Người nghiên cứu và lập trình web với Python: Đồ án cung cấp các thông tin tham khảo hữu ích về việc ứng dụng Django Framework kết hợp MySQL trong xây dựng website thương mại điện tử thực tế.
  • Các nội dung có giá trị tham khảo cao nhất trong tài liệu bao gồm:
    1. Cấu trúc kịch bản ca sử dụng chi tiết (đầy đủ Actors, Input, Output, Basic Flow, Alternative Flow).
    2. Bảng quy chuẩn đặc tả chi tiết màn hình (Screen Content và Screen Actions), giúp việc ánh xạ từ yêu cầu phân tích sang giao diện lập trình được chặt chẽ.
    3. Mô hình phân tách nghiệp vụ đặt hàng giữa khách hàng vãng lai và khách hàng thành viên.

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

1. Đề tài được xây dựng nhằm ứng dụng thực tế cho đơn vị kinh doanh nào?
Đề tài nghiên cứu khảo sát và xây dựng website bán điện thoại trực tuyến phục vụ trực tiếp cho cửa hàng di động Bảo Chung (Bảo Chung Mobile), đồng thời hướng đến các cửa hàng bán lẻ điện thoại có quy mô vừa và nhỏ tương tự.

2. Hệ thống phân chia người dùng thành những nhóm tác nhân nào và có sự khác biệt gì về chức năng?
Hệ thống phân chia thành ba nhóm tác nhân:

  • Khách hàng vãng lai: Có thể xem sản phẩm, tìm kiếm/lọc sản phẩm, đăng ký tài khoản, đặt hàng trực tiếp, xem trạng thái đơn, hủy đơn và chat với nhân viên.
  • Khách hàng thành viên: Có đầy đủ các quyền của khách vãng lai, đồng thời có thêm quyền đăng nhập, quản lý giỏ hàng nhiều lần, cập nhật thông tin cá nhân, xem lịch sử mua hàng và viết bình luận - đánh giá sản phẩm.
  • Quản trị viên (Admin): Toàn quyền quản trị tài khoản người dùng, danh mục sản phẩm (thêm/sửa/xóa), danh mục hãng sản xuất, quản lý đơn hàng, chi tiết đơn hàng và địa chỉ giao hàng.

3. Khách hàng có thể thực hiện tìm kiếm và lọc sản phẩm theo những tiêu chí nào trên website?
Hệ thống hỗ trợ khách hàng tìm kiếm và lọc sản phẩm theo ba phương thức: tìm kiếm theo từ khóa tên sản phẩm, tìm kiếm lọc theo mức giá (sử dụng thanh kéo/nhập mức giá) và lọc sản phẩm theo các hãng điện thoại cụ thể hiển thị trên giao diện gồm Iphone, Oppo, Samsung và Vivo.

4. Trong kịch bản use case "Đăng nhập", hệ thống xử lý các trường hợp ngoại lệ (Alternative Flow) như thế nào?
Theo bảng kịch bản ca sử dụng "Đăng nhập" (Bảng 2.2), hệ thống thiết lập hai luồng ngoại lệ:

  • Luồng 4a: Nếu số điện thoại/tài khoản không đúng hoặc chưa được đăng ký, ứng dụng hiển thị thông báo lỗi và yêu cầu người dùng quay lại bước nhập liệu.
  • Luồng 4b: Nếu mật khẩu nhập vào không chính xác, ứng dụng hiển thị thông báo sai mật khẩu và yêu cầu nhập lại.

5. Những công nghệ cụ thể nào đã được tác giả lựa chọn để xây dựng hệ thống website?
Website được phát triển dựa trên bộ công nghệ gồm: ngôn ngữ lập trình Python và framework Python Django ở tầng Backend; các công nghệ HTML, CSS, JavaScript kết hợp thư viện Bootstrap 5, jQuery và AJAX ở tầng Frontend; cơ sở dữ liệu được quản lý bằng hệ quản trị cơ sở dữ liệu quan hệ MySQL Server.


Kết luận

Đồ án tốt nghiệp "Xây dựng website bán điện thoại" do sinh viên Lê Văn Bảo Chung thực hiện tại Trường Đại học Sư phạm Kỹ thuật – Đại học Đà Nẵng đã hoàn thành việc nghiên cứu, phân tích thiết kế và xây dựng một ứng dụng thương mại điện tử chuyên biệt cho cửa hàng Bảo Chung Mobile. Bằng việc ứng dụng ngôn ngữ Python, Django Framework cùng hệ quản trị cơ sở dữ liệu MySQL và các công nghệ giao diện web hiện đại, hệ thống đã giải quyết trọn vẹn quy trình mua bán thiết bị di động trực tuyến từ khâu tra cứu, đặt hàng đến quản trị kho hàng và xử lý đơn hàng. Đồ án cung cấp một bộ tài liệu đặc tả kỹ thuật và mô hình hóa hệ thống chuẩn mực, đóng vai trò là tài liệu tham khảo có giá trị học thuật và ứng dụng thực tiễn cho sinh viên ngành Công nghệ thông tin.