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

Đồ án được thực hiện trong bối cảnh công nghệ thông tin ngày càng đóng vai trò then chốt trong hoạt động vận hành doanh nghiệp tại Việt Nam. Nhóm tác giả nhận thấy các cửa hàng kinh doanh máy tính desktop đang gặp khó khăn trong việc quản lý các hoạt động bán hàng theo phương thức thủ công, thiếu một nền tảng số hóa tập trung và đồng bộ. Từ đó, nhóm đề xuất xây dựng một hệ thống quản lý hoạt động kinh doanh nhằm giải quyết bài toán vận hành thực tế cho loại hình cửa hàng này.

Mục tiêu của đề tài bao gồm:

  1. Nghiên cứu, phân tích và xây dựng một hệ thống phần mềm sử dụng ngôn ngữ lập trình C#.
  2. Tìm hiểu và cài đặt các nghiệp vụ liên quan đến quản lý hoạt động kinh doanh cho cửa hàng desktop.
  3. Thiết kế cơ sở dữ liệu phù hợp với yêu cầu kinh doanh thực tế.
  4. Xây dựng hệ thống với các chức năng chính phục vụ ba nhóm người dùng khác nhau.

Đối tượng phục vụ của hệ thống gồm ba nhóm chính:

  • Admin: Người quản trị hệ thống với quyền cao nhất.
  • Khách vãng lai: Người dùng chưa đăng ký tài khoản, chỉ có thể duyệt và tìm kiếm sản phẩm.
  • Khách hàng: Người dùng đã có tài khoản, được phép thực hiện giao dịch mua hàng.

Phạm vi áp dụng: Hệ thống được thiết kế để có thể triển khai cho các cửa hàng desktop trên phạm vi toàn quốc. Về thời gian, đồ án hoàn thành vào ngày 30 tháng 9 năm 2023, trong khuôn khổ học phần CDIO SE 347, Khoa Công nghệ Thông tin, Trường Đại học Duy Tân, Đà Nẵng.


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

Nhóm tiếp cận đề tài theo phương pháp thiết kế hệ thống phần mềm hướng đối tượng, sử dụng các kỹ thuật phân tích và thiết kế chuẩn mực trong kỹ nghệ phần mềm. Cụ thể:

  • Phân tích yêu cầu: Xác định các tác nhân (actor) và chức năng tương ứng thông qua đặc tả use case.
  • Mô hình hóa hệ thống: Xây dựng biểu đồ use case tổng quát, biểu đồ tuần tự (sequence diagram) và biểu đồ hoạt động (activity diagram) cho từng ca sử dụng.
  • Thiết kế cơ sở dữ liệu: Sử dụng SQL Server làm hệ quản trị cơ sở dữ liệu.
  • Thiết kế giao diện: Sử dụng công cụ Mockup để lên giao diện trước khi lập trình.
  • Ngôn ngữ lập trình: C# được chọn làm ngôn ngữ phát triển chính của hệ thống.

Nguồn dữ liệu phục vụ phân tích đến từ việc tìm hiểu bài toán quản lý cửa hàng desktop trong thực tiễn, kết hợp với kiến thức chuyên ngành Công nghệ phần mềm mà các thành viên trong nhóm đã tích lũy.


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

Phần I: Xây dựng ý tưởng sản phẩm (Cá nhân)

Phần này ghi nhận ý tưởng sản phẩm ban đầu mà mỗi thành viên đề xuất độc lập trước khi thống nhất chủ đề chung cho nhóm. Bốn ý tưởng được trình bày:

Thành viên Ý tưởng Ước tính người hưởng lợi Ước tính người trả tiền Thời gian phát triển
Nguyễn Quang Lân Website VuiVe.com (mạng xã hội/tin tức) 10.000 3.000 2 tháng
Tưởng Đạt Minh Website pass đồ cũ (mua bán đồ secondhand) 2.000 500 1 năm
Hoàng Xuân Nhật Minh Website Todo List (quản lý thời gian, tích hợp Pomodoro) 1.000 100 3 tháng
Huỳnh Văn Thành Ứng dụng Quản lý chi tiêu 1.000 100 3 tháng

Sau giai đoạn đánh giá nhóm, ý tưởng được thống nhất chuyển sang xây dựng phần mềm quản lý hoạt động kinh doanh cho cửa hàng desktop, với lý do thực tiễn rõ ràng hơn và kiến thức của nhóm phù hợp hơn. Nhóm gồm bốn thành viên, trong đó Nguyễn Quang Lân giữ vai trò Trưởng nhóm, kiêm lập trình và kiểm thử; ba thành viên còn lại đảm nhận thiết kế, lập trình và kiểm thử.

Phần II: Phân tích và Thiết kế hệ thống

Đây là phần trọng tâm của đồ án, bao gồm đặc tả yêu cầu chức năng chi tiết cho từng nhóm người dùng.

Chức năng theo vai trò:

  • Khách vãng lai: Đăng ký tài khoản, tìm kiếm sản phẩm, xem thông tin sản phẩm.
  • Khách hàng: Đăng nhập, quản lý tài khoản, đặt hàng, đánh giá sản phẩm, xem lịch sử mua hàng, quản lý giỏ hàng, cập nhật thông tin cá nhân.
  • Admin: Quản lý tài khoản khách hàng, quản lý sản phẩm, quản lý đơn hàng, tư vấn khách hàng, thống kê và báo cáo, quản lý đánh giá.

Hệ thống định nghĩa 14 use case (UC01–UC14), được mô tả chi tiết với đầy đủ tác nhân, mục đích, luồng sự kiện chính, luồng thay thế và điều kiện trước/sau:

Mã Tên Use Case
UC01 Đăng ký tài khoản
UC02 Đăng nhập
UC03 Xem thông tin sản phẩm
UC04 Tìm kiếm
UC05 Đặt hàng / Mua hàng
UC06 Đánh giá sản phẩm
UC07 Quản lý giỏ hàng
UC08 Cập nhật thông tin cá nhân
UC09 Quản lý tài khoản khách hàng
UC10 Quản lý sản phẩm
UC11 Quản lý đơn hàng
UC12 Tư vấn khách hàng
UC13 Thống kê báo cáo
UC14 Quản lý đánh giá

Mỗi use case được bổ sung bằng biểu đồ tuần tự và biểu đồ hoạt động minh họa luồng xử lý. Đáng chú ý, UC01 (Đăng ký) mô tả luồng xác thực qua email với mã xác nhận; UC02 (Đăng nhập) yêu cầu người dùng nhập tài khoản, mật khẩu và mã captcha để tăng bảo mật.

Yêu cầu phi chức năng được xác định gồm: hỗ trợ tối đa 1.000–10.000 người truy cập đồng thời, bảo mật thông tin khách hàng tuyệt đối, phân quyền chi tiết, giao diện hỗ trợ hai ngôn ngữ tiếng Việt và tiếng Anh, có hướng dẫn sử dụng cho người mới.

Thiết kế và triển khai

Kiến trúc và công nghệ:

  • Ngôn ngữ lập trình: C#
  • Hệ quản trị cơ sở dữ liệu: SQL Server
  • Công cụ thiết kế giao diện: Mockup
  • Mô hình phân tích: Hướng đối tượng, UML (use case diagram, sequence diagram, activity diagram)

Giao diện người dùng được thiết kế thành các màn hình chính:

  • Giao diện trang chủ
  • Giao diện đăng nhập
  • Giao diện đăng ký
  • Giao diện chi tiết sản phẩm
  • Giao diện đơn hàng
  • Giao diện quản lý thông tin cá nhân
  • Giao diện admin (quản trị hệ thống)

Phần III: Thực hiện

Phần này trình bày kết quả cài đặt thực tế của hệ thống, bao gồm các màn hình giao diện hoàn chỉnh theo thiết kế đã đề ra ở Phần II. Tổng số trang giao diện được cài đặt lên đến trang 80 của tài liệu, phản ánh quy mô cài đặt khá đầy đủ so với đặc tả.

Phần IV: Kết luận và Hướng phát triển

Phần cuối tổng kết kết quả đạt được trong quá trình thực hiện đồ án và đề xuất các hướng mở rộng trong tương lai, bắt đầu từ trang 82.


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

Hệ thống được xây dựng đáp ứng đầy đủ đặc tả chức năng cho ba nhóm người dùng với 14 use case đã định nghĩa. Cụ thể, đồ án đã hoàn thành:

  • Phân tích và thiết kế hệ thống thông tin quản lý hoạt động kinh doanh cửa hàng desktop với đầy đủ biểu đồ UML minh họa.
  • Cài đặt hệ thống bằng C# với cơ sở dữ liệu SQL Server.
  • Xây dựng bảy màn hình giao diện chính phục vụ cả người dùng cuối và quản trị viên.
  • Cài đặt luồng đăng ký có xác thực email, đăng nhập có captcha nhằm tăng cường bảo mật.

Đóng góp chính của đề tài là cung cấp một giải pháp phần mềm có thể áp dụng thực tế cho cửa hàng desktop quy mô vừa và nhỏ, thay thế quy trình quản lý thủ công bằng nền tảng số hóa tập trung.


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

Tài liệu không nêu rõ các hạn chế cụ thể, song dựa trên phạm vi đồ án, có thể nhận thấy một số điểm còn bỏ ngỏ. Hệ thống chưa đề cập đến tích hợp cổng thanh toán trực tuyến, chức năng quản lý kho hàng chi tiết, hay cơ chế báo cáo phân tích kinh doanh nâng cao. Phần hướng phát triển được đề cập ngắn gọn ở Phần IV nhưng nội dung cụ thể không được trích dẫn đầy đủ trong phần fulltext được cung cấp. Về mặt kỹ thuật, đồ án chưa đề cập đến kiểm thử tự động hay triển khai trên môi trường server thực tế.


Giá trị tham khảo

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

  • Sinh viên năm 2–3 ngành Công nghệ phần mềm đang học học phần phân tích thiết kế hệ thống hoặc chuẩn bị thực hiện đồ án CDIO: phần mô tả chi tiết use case (UC01–UC14) kèm biểu đồ tuần tự và biểu đồ hoạt động là tài liệu mẫu có giá trị thực hành.
  • Sinh viên tìm đề tài đồ án về hệ thống thương mại điện tử quy mô nhỏ: cấu trúc bốn phần của đồ án (ý tưởng → phân tích thiết kế → thực hiện → kết luận) là khung tham khảo rõ ràng.
  • Sinh viên học C# và SQL Server: phần đặc tả môi trường phát triển và thiết kế cơ sở dữ liệu cung cấp ngữ cảnh ứng dụng thực tế.
  • Người muốn tìm hiểu quy trình CDIO trong đào tạo kỹ thuật phần mềm: đồ án minh họa cách áp dụng phương pháp CDIO từ giai đoạn hình thành ý tưởng đến triển khai.

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

1. Hệ thống sử dụng công nghệ nào để phát triển? Hệ thống được xây dựng bằng ngôn ngữ lập trình C#, sử dụng SQL Server làm hệ quản trị cơ sở dữ liệu, và công cụ Mockup để thiết kế giao diện trước khi lập trình.

2. Khách vãng lai (chưa đăng ký) có thể làm gì trên hệ thống? Khách vãng lai có thể thực hiện ba chức năng: đăng ký tài khoản mới (UC01), tìm kiếm sản phẩm theo từ khóa hoặc danh mục (UC03), và xem thông tin chi tiết sản phẩm bao gồm xem khuyến mãi, sản phẩm mới, sản phẩm cũ, và đánh giá của người dùng khác (UC04).

3. Luồng đăng ký tài khoản được xử lý như thế nào? Sau khi khách nhập thông tin, hệ thống kiểm tra tên tài khoản và địa chỉ email có trùng với dữ liệu hiện có hay không. Nếu không trùng, hệ thống lưu tài khoản và gửi mã xác thực đến email đăng ký. Người dùng nhập mã này để hoàn tất xác nhận; nếu mã sai, hệ thống yêu cầu nhập lại.

4. Admin có những quyền quản lý nào trong hệ thống? Admin có sáu nhóm chức năng: quản lý tài khoản khách hàng, quản lý sản phẩm, quản lý đơn hàng, tư vấn khách hàng trực tiếp, thống kê và báo cáo kinh doanh, và quản lý đánh giá sản phẩm từ người dùng.

5. Ý tưởng sản phẩm nào được nhóm đề xuất ban đầu trước khi chọn đề tài cuối cùng? Bốn thành viên đề xuất bốn ý tưởng riêng biệt: Website VuiVe.com (tin tức/giải trí), Website pass đồ cũ (secondhand), Website Todo List tích hợp Pomodoro, và ứng dụng Quản lý chi tiêu. Sau đánh giá nhóm, đề tài thống nhất được chuyển sang xây dựng hệ thống quản lý cửa hàng desktop với SQL Server và C#.


Kết luận

Đồ án CDIO SE 347 của nhóm sinh viên Trường Đại học Duy Tân trình bày toàn bộ quy trình xây dựng hệ thống quản lý hoạt động kinh doanh cho cửa hàng desktop, từ giai đoạn hình thành ý tưởng đến phân tích thiết kế và cài đặt thực tế bằng C# và SQL Server. Hệ thống định nghĩa 14 use case phục vụ ba nhóm người dùng với đầy đủ biểu đồ UML minh họa, đồng thời xây dựng bảy màn hình giao diện chính bao gồm giao diện dành cho người dùng cuối và quản trị viên. Đây là tài liệu tham khảo thực hành cho sinh viên ngành Công nghệ phần mềm đang tiếp cận phương pháp phân tích thiết kế hệ thống theo hướng đối tượng trong khuôn khổ chương trình CDIO.