I. Tổng Quan Về Đồ Án Môn Học Xây Dựng HTTT
Đồ án môn học xây dựng hệ thống thông tin là một bài tập thực hành quan trọng được triển khai tại Trường Đại học Công nghệ Thông tin - Đại học Quốc gia TP.HCM. Đề tài này tập trung vào việc xây dựng website kinh doanh thiết bị công nghệ CyberShark sử dụng các framework hiện đại. Nhóm sinh viên thực hiện gồm Võ Ngọc Lệ Xuân, Bùi Hữu Bằng và Quang Đai Thi dưới sự hướng dẫn của thầy Lê Võ Đình Kha. Đồ án được hoàn thành vào tháng 12 năm 2023, kết hợp kiến thức nền tảng và những công nghệ mới nhất trong lĩnh vực phát triển web. Mục tiêu chính là tạo ra một nền tảng thương mại điện tử chuyên nghiệp với các tính năng quản lý sản phẩm, xử lý thanh toán và tương tác khách hàng.
1.1. Mục Tiêu Của Đề Tài
Mục tiêu chính của đồ án xây dựng hệ thống thông tin là phát triển một website thương mại điện tử hoàn chỉnh cho lĩnh vực bán thiết bị công nghệ. Hệ thống cần đáp ứng các yêu cầu về quản lý sản phẩm, xử lý đơn hàng, tích hợp thanh toán VNPay và cung cấp giao diện người dùng thân thiện. Nhóm dự kiến ứng dụng các công nghệ hiện đại như ASP.NET API và ReactJS để xây dựng backend và frontend chuyên nghiệp, đồng thời tạo ra một nền tảng scalable cho các hoạt động kinh doanh trực tuyến.
1.2. Phạm Vi Nghiên Cứu Và Đối Tượng
Phạm vi đề tài bao gồm phân tích, thiết kế và triển khai một hệ thống bán hàng trực tuyến với các mô-đun chính như quản lý sản phẩm, quản lý đơn hàng, quản lý khách hàng và thanh toán. Đối tượng sử dụng bao gồm quản trị viên cửa hàng và khách hàng cuối cùng. Hệ thống được xây dựng với cơ sở dữ liệu quan hệ, API RESTful và giao diện web responsive, đảm bảo tính bảo mật, hiệu suất và trải nghiệm người dùng tối ưu.
II. Các Công Nghệ Sử Dụng Trong Xây Dựng Hệ Thống
Công nghệ là nền tảng quan trọng cho thành công của đồ án xây dựng hệ thống thông tin. Nhóm sinh viên đã lựa chọn ASP.NET Core và ReactJS - hai công nghệ hàng đầu hiện nay - để phát triển hệ thống. ASP.NET Web API được sử dụng để xây dựng backend mạnh mẽ với các tính năng xử lý dữ liệu, quản lý người dùng, và tích hợp thanh toán. Phía frontend sử dụng ReactJS để tạo giao diện người dùng động, responsive và có trải nghiệm tương tác mượt mà. Việc kết hợp hai công nghệ này giúp hệ thống đạt được tính mô-đun hóa, khả năng bảo trì cao và hiệu suất tối ưu, phù hợp với các yêu cầu của một nền tảng thương mại điện tử chuyên nghiệp.
2.1. ASP.NET Core và Web API
ASP.NET Core là một framework mã nguồn mở hiện đại của Microsoft, cung cấp nền tảng mạnh mẽ để xây dựng Web API RESTful. Framework này cho phép nhóm xây dựng các endpoint API để xử lý các hoạt động như tạo sản phẩm, quản lý đơn hàng, xác thực người dùng và tích hợp VNPay gateway. ASP.NET Core hỗ trợ Entity Framework Core, giúp đơn giản hóa tương tác với cơ sở dữ liệu SQL Server và đảm bảo bảo mật dữ liệu thông qua các cơ chế mã hóa và xác thực hiện đại.
2.2. ReactJS Cho Frontend Development
ReactJS là một thư viện JavaScript do Facebook phát triển, chuyên dụng cho xây dựng giao diện người dùng động và tương tác cao. Nhóm sử dụng ReactJS để phát triển hai giao diện riêng biệt: giao diện quản lý cửa hàng cho nhân viên admin và giao diện bán hàng cho khách hàng. Component-based architecture của ReactJS giúp tái sử dụng code, dễ bảo trì và nâng cấp. Kết hợp với các state management tools, ReactJS đảm bảo trải nghiệm người dùng mượt mà và responsive trên các thiết bị khác nhau.
III. Phân Tích Và Thiết Kế Hệ Thống
Phân tích và thiết kế hệ thống là giai đoạn quan trọng trong quá trình phát triển đồ án xây dựng HTTT. Nhóm tiến hành phân tích các yêu cầu chức năng bao gồm thêm sản phẩm vào kho, đặt mua sắm, tìm kiếm sản phẩm, quản lý thanh toán và các chức năng bổ trợ khác. Quy trình phân tích bao gồm xây dựng Use Case Diagram để mô tả tương tác giữa các actor và hệ thống, sơ đồ phân rã chức năng để phân chia công việc thành các mô-đun nhỏ. Thiết kế cơ sở dữ liệu được thực hiện với Entity-Relationship Diagram (ERD), xác định các bảng dữ liệu và mối quan hệ giữa chúng. Quá trình này đảm bảo hệ thống được xây dựng một cách có hệ thống, rõ ràng và dễ thực thi.
3.1. Xác Định Yêu Cầu Hệ Thống
Yêu cầu hệ thống được xác định thông qua phân tích nhu cầu kinh doanh và tương tác người dùng. Các yêu cầu chính bao gồm: quản lý danh mục sản phẩm (thương hiệu, loại sản phẩm), quản lý kho hàng, chức năng giỏ hàng, xử lý đơn hàng, tích hợp thanh toán VNPay, đăng ký/đăng nhập người dùng, tìm kiếm và lọc sản phẩm, quản lý bình luận sản phẩm, và tính năng ChatBox. Mỗi yêu cầu được ghi chép chi tiết để hướng dẫn quá trình phát triển.
3.2. Thiết Kế Cơ Sở Dữ Liệu
Thiết kế cơ sở dữ liệu sử dụng mô hình quan hệ với SQL Server, bao gồm các bảng chính như Users (người dùng), Products (sản phẩm), Categories (danh mục), Orders (đơn hàng), OrderDetails (chi tiết đơn hàng), Cart (giỏ hàng), Comments (bình luận) và Payments (thanh toán). Các quan hệ được thiết lập giữa các bảng để đảm bảo tính toàn vẹn dữ liệu. Sơ đồ ERD được vẽ để trực quan hóa cấu trúc và các ràng buộc của cơ sở dữ liệu.
IV. Cài Đặt Triển Khai Và Kết Luận
Cài đặt và triển khai hệ thống là bước cuối cùng trong quá trình phát triển đồ án xây dựng HTTT. Nhóm tiến hành cấu hình môi trường phát triển với Visual Studio Code cho frontend ReactJS và Visual Studio cho backend ASP.NET Core. SQL Server được sử dụng làm cơ sở dữ liệu với các migration được thực hiện thông qua Entity Framework Core. Các API endpoint được kiểm thử sử dụng Postman để đảm bảo chúng hoạt động chính xác. Frontend được tích hợp với backend thông qua các API call, và các tính năng như thanh toán VNPay, xác thực người dùng được kiểm thử toàn diện. Hệ thống được triển khai và ghi lại giao diện người dùng qua các ảnh chụp màn hình. Kết luận rút ra các thành tựu đạt được, các khó khăn gặp phải và hướng phát triển trong tương lai bao gồm tối ưu hiệu suất, thêm các tính năng AI gợi ý sản phẩm, và mở rộng sang ứng dụng di động.
4.1. Quy Trình Cài Đặt Và Cấu Hình
Quy trình cài đặt bao gồm cài đặt các công cụ cần thiết như .NET SDK, Node.js, Visual Studio Code và SQL Server Management Studio. Database migration được thực hiện để tạo các bảng và quan hệ trong SQL Server. Backend được cấu hình với các connection string, JWT authentication, và VNPay API keys. Frontend được cài đặt các dependencies thông qua npm và cấu hình các environment variables. Quá trình này đảm bảo hệ thống sẵn sàng để phát triển và kiểm thử các tính năng.
4.2. Hướng Phát Triển Trong Tương Lai
Hướng phát triển trong tương lai của đồ án xây dựng hệ thống thông tin bao gồm: tối ưu hóa hiệu suất hệ thống bằng caching, áp dụng machine learning để gợi ý sản phẩm, phát triển ứng dụng mobile native cho iOS và Android, tích hợp các payment gateway khác, mở rộng tính năng quản lý kho hàng với barcode scanning, và xây dựng hệ thống analytics để phân tích hành vi khách hàng. Những cải tiến này sẽ giúp hệ thống trở nên cạnh tranh hơn trên thị trường thương mại điện tử.