Bối cảnh và vấn đề nghiên cứu
Trong nhịp sống hiện đại với nhiều áp lực từ học tập, công việc và đời sống xã hội, nhu cầu tạo dựng không gian sống xanh để thư giãn, giảm căng thẳng (stress) và cân bằng tâm lý ngày càng trở nên thiết thực. Bên cạnh đó, việc trồng và chăm sóc cây cảnh còn gắn liền với ý thức bảo vệ môi trường, hưởng ứng lời dạy "Rừng vàng biển bạc" của Chủ tịch Hồ Chí Minh và phong trào phủ xanh không gian sống nhằm hạn chế các tác động tiêu cực của biến đổi khí hậu.
Qua quá trình khảo sát thực tế thị trường và các cửa hàng cây cảnh, tác giả nhận thấy phần lớn các cơ sở kinh doanh cây cảnh truyền thống chỉ hoạt động dưới hình thức bán hàng trực tiếp. Phương thức này bộc lộ nhiều hạn chế: lượng khách hàng tiếp cận còn ít, phạm vi phục vụ bị giới hạn theo vị trí địa lý, độ nhận diện của cửa hàng thấp. Do đó, việc ứng dụng công nghệ thông tin vào kinh doanh là yêu cầu cấp thiết nhằm quảng bá sản phẩm rộng rãi, tạo ra kênh mua sắm tiện lợi và xây dựng hệ thống quản lý bán hàng hiệu quả.
Đề tài "Xây dựng website bán cây" được thực hiện với các mục tiêu và nhiệm vụ nghiên cứu cụ thể:
- Xây dựng một website thương mại điện tử chuyên kinh doanh các mặt hàng cây cảnh (cây phong thủy, xương rồng, sen đá, cây tiểu cảnh...).
- Thiết kế giao diện thân thiện với người dùng, hỗ trợ khách hàng tìm kiếm, chọn lựa các giống cây phù hợp với phong thủy nhà ở, văn phòng và tiến hành đặt mua trực tuyến nhanh gọn.
- Tích hợp chuyên mục blog cung cấp kiến thức, hướng dẫn chi tiết về cách chơi và kỹ thuật chăm sóc cây cảnh.
- Xây dựng phân hệ quản trị (Admin) hỗ trợ người quản lý kiểm soát danh mục sản phẩm, số lượng hàng hóa, thông tin khách hàng, đơn đặt hàng và bài viết tin tức.
Đối tượng nghiên cứu của đề tài là quy trình bán hàng và quản lý kinh doanh cây cảnh trực tuyến. Phạm vi nghiên cứu tập trung vào việc phân tích, thiết kế và cài đặt hệ thống phần mềm website bán cây cảnh, được thực hiện tại Khoa Kỹ thuật Công nghệ – Trường Đại học Thủ Dầu Một (Bình Dương) vào tháng 12 năm 2020.
Cơ sở lý thuyết và phương pháp
Nền tảng công nghệ và kiến trúc hệ thống
Hệ thống được phát triển dựa trên nền tảng công nghệ của Microsoft, bao gồm:
- Ngôn ngữ lập trình C#: Hoạt động trong môi trường .NET Framework với hai thành phần cốt lõi là Common Language Runtime (CLR - quản lý bộ nhớ, thực thi mã nguồn, xử lý lỗi) và .NET Framework Class Library (FCL - cung cấp thư viện lớp để xây dựng ứng dụng từ giao diện dòng lệnh đến giao diện đồ họa GUI). Mã nguồn C# được biên dịch sang mã CIL (Common Intermediate Language) lưu trong assembly trước khi CLR chuyển đổi thành mã thực thi tương ứng của hệ điều hành.
- ASP.NET Web Forms: Mô hình lập trình ứng dụng web kết hợp giữa HTML, Server Controls và Server code (C#), phát triển trên môi trường Microsoft Visual Studio. Nền tảng này cho phép tách biệt giữa mã giao diện người dùng và mã xử lý logic, cung cấp bộ Server Controls hỗ trợ ràng buộc dữ liệu mạnh mẽ và tích hợp kỹ thuật Ajax.
- Hệ quản trị cơ sở dữ liệu Microsoft SQL Server: Đảm nhiệm việc lưu trữ, truy xuất và quản trị toàn bộ dữ liệu của hệ thống web.
- Mô hình kiến trúc 3 lớp (3-Layers Architecture):
- GUI Layer (Presentation Layer): Lớp hiển thị giao diện và tiếp nhận tương tác trực tiếp từ người dùng cuối.
- Business Logic Layer (BUS Layer): Lớp tiếp nhận yêu cầu từ GUI Layer, xử lý các nghiệp vụ logic và điều phối việc truy xuất dữ liệu từ lớp Data Access.
- Data Access Layer (DAL): Lớp chuyên trách tương tác và thực thi các thao tác đọc/ghi trực tiếp với cơ sở dữ liệu SQL Server.
Phương pháp nghiên cứu
- Phương pháp thu thập và khảo sát thực tế: Khảo sát nhu cầu của người dùng, tìm hiểu thị trường và các mô hình cửa hàng kinh doanh cây cảnh truyền thống để xác định yêu cầu nghiệp vụ.
- Phương pháp phân tích và thiết kế hướng đối tượng/hướng chức năng: Sử dụng ngôn ngữ mô hình hóa UML để xây dựng sơ đồ phân rã chức năng, sơ đồ Use Case, sơ đồ hoạt động (Activity Diagram) và sơ đồ quan hệ cơ sở dữ liệu (ERD).
- Phương pháp thực nghiệm phần mềm: Hiện thực hóa các bản thiết kế thành mã nguồn cụ thể, triển khai cơ sở dữ liệu và kiểm thử các chức năng giao diện trên trình duyệt web.
Thiết kế và triển khai
Phân tích tác nhân và chức năng hệ thống
Hệ thống xác định hai tác nhân chính (Actors) tham gia tương tác:
- Khách hàng (Customer): Người dùng truy cập website để duyệt sản phẩm, xem chi tiết, tìm kiếm, đăng ký tài khoản, đăng nhập, quản lý giỏ hàng, đặt hàng và đọc tin tức/blog.
- Quản trị viên (Admin): Người quản lý hệ thống, có quyền đăng nhập trang quản trị để quản lý danh mục sản phẩm, quản lý thông tin sản phẩm, quản lý bài viết tin tức, quản lý tài khoản người dùng và xử lý đơn đặt hàng.
| ID Use Case |
Tác nhân |
Tên Use Case |
Chức năng chi tiết |
| UC_001 |
Khách hàng |
Đăng ký |
Đăng ký tài khoản thành viên mới trên hệ thống |
| UC_002 |
Khách hàng, Quản lý |
Đăng nhập |
Đăng nhập hệ thống (bằng tài khoản web hoặc liên kết ngoài) |
| UC_003 |
Quản lý |
Quản lý danh mục |
Thêm mới, cập nhật thông tin, xóa danh mục sản phẩm |
| UC_004 |
Quản lý |
Quản lý tài khoản |
Xem, cập nhật, phân quyền và xóa tài khoản người dùng |
| UC_005 |
Quản lý |
Quản lý sản phẩm |
Thêm mới, cập nhật thông tin giá/ảnh/loại, xóa sản phẩm |
| UC_006 |
Quản lý |
Quản lý bài viết |
Thêm mới, chỉnh sửa nội dung, xóa bài viết trên blog |
| UC_007 |
Khách hàng |
Xem thông tin sản phẩm |
Xem danh sách, chi tiết thông số, nguồn gốc và đánh giá |
| UC_008 |
Khách hàng |
Giỏ hàng |
Thêm sản phẩm, thay đổi số lượng, xóa khỏi giỏ, thanh toán |
| UC_009 |
Khách hàng |
Tìm kiếm |
Tìm kiếm gần đúng sản phẩm theo tên hoặc loại |
Thiết kế cơ sở dữ liệu
Cơ sở dữ liệu của hệ thống gồm 7 bảng dữ liệu chính được chuẩn hóa và thiết kế trên SQL Server:
Cấu trúc các bảng dữ liệu chính trong hệ thống:
-- Bảng Table (Đăng nhập Admin)
Table_Admin (Id INT, FirstName NVARCHAR(50), LastName NVARCHAR(50), UserName NVARCHAR(50), PassWord NVARCHAR(50), Email NVARCHAR(50), Contact NVARCHAR(50))
-- Bảng Quản lý tài khoản (Admin)
Account_Admin (Id INT, Email NVARCHAR(50), MatKhau NVARCHAR(50), DiaChi NVARCHAR(50))
-- Bảng Quản lý danh mục
DanhMuc (Id INT, TenDM NVARCHAR(50))
-- Bảng Đăng ký người dùng
User_Signup (Id INT, Firstname NVARCHAR(50), Lastname NVARCHAR(50), Enrollment_no NVARCHAR(50), Username NVARCHAR(50), Password NVARCHAR(50), Email NVARCHAR(50), contact NVARCHAR(50), approved NVARCHAR(50))
-- Bảng Bài viết
BaiViet (Id INT, TieuDe NVARCHAR(50), TacGia NVARCHAR(50), NoiDung NVARCHAR(MAX))
-- Bảng Thêm sản phẩm
SanPham (Id INT, LoaiSP NVARCHAR(50), MaSP NVARCHAR(50), GiaSP NVARCHAR(50), TenSP NVARCHAR(50), HinhAnh NVARCHAR(MAX), ThongTin NVARCHAR(50))
| STT |
Tên bảng |
Số lượng trường |
Mục đích lưu trữ |
| 1 |
Table (Đăng nhập Admin) |
7 |
Lưu trữ thông tin định danh và quyền hạn của quản trị viên |
| 2 |
Quản lý tài khoản (Admin) |
4 |
Quản lý thông tin tài khoản truy cập hệ thống |
| 3 |
Quản lý danh mục |
2 |
Lưu trữ danh mục phân loại cây cảnh (Id, TenDM) |
| 4 |
Đăng ký người dùng |
9 |
Lưu trữ thông tin cá nhân và tài khoản của khách hàng thành viên |
| 5 |
Bài viết |
4 |
Lưu trữ tiêu đề, tác giả và nội dung bài viết hướng dẫn trên blog |
| 6 |
Thêm sản phẩm |
7 |
Lưu trữ thông tin chi tiết sản phẩm cây cảnh (mã, tên, giá, loại, ảnh, mô tả) |
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương 1 giới thiệu tổng quan về đề tài, lý do lựa chọn và xác định các yêu cầu chức năng đối với từng nhóm đối tượng sử dụng:
- Yêu cầu chức năng phân hệ Admin: Bao gồm các mô-đun quản lý sản phẩm (xem, thêm, sửa, xóa, tìm kiếm), quản lý loại sản phẩm, quản lý danh sách bài viết blog và quản lý đơn đặt hàng (xem chi tiết, cập nhật trạng thái, xóa đơn).
- Yêu cầu chức năng phân hệ Khách hàng: Bao gồm các chức năng đăng ký, đăng nhập tài khoản, xem danh sách sản phẩm, lọc theo loại, tìm kiếm theo tên, xem chi tiết sản phẩm cùng các mặt hàng liên quan, bình luận/đánh giá, quản lý giỏ hàng và tiến hành đặt hàng/thanh toán.
- Tổng quan công nghệ: Trình bày cơ sở lý thuyết về ngôn ngữ C#, kiến trúc .NET Framework (CLR, FCL), mô hình 3 lớp (GUI, BUS, DAL), công nghệ ASP.NET Web Forms và hệ quản trị cơ sở dữ liệu SQL Server (lịch sử phát triển từ phiên bản 1.0 năm 1989 đến phiên bản 2016 và các ấn bản Enterprise, Standard, Developer, Workgroup, Express).
Chương 2: Phân tích và thiết kế hệ thống
Chương 2 trình bày chi tiết quá trình mô hình hóa hệ thống phần mềm:
- Mô hình chức năng và Use Case: Xây dựng sơ đồ phân rã chức năng và sơ đồ Use Case tổng quát. Lập bảng đặc tả chi tiết cho 6 Use Case nòng cốt: UC_C03 (Danh mục sản phẩm), UC_C05 (Giỏ hàng), UC_C02 (Tìm kiếm), UC_A04 (Quản lý tài khoản), UC_4.1 (Đăng nhập) và UC_C04 (Đăng ký), bao gồm định danh, tác nhân, điều kiện tiên quyết, luồng sự kiện chính, luồng thay thế và luồng ngoại lệ.
- Sơ đồ hoạt động (Activity Diagram): Trình bày quy trình xử lý nghiệp vụ cho 4 luồng thao tác: Đăng nhập, Tìm kiếm sản phẩm, Xem giỏ hàng và Đăng ký tài khoản.
- Thiết kế dữ liệu: Trình bày sơ đồ quan hệ thực thể (ERD) và đặc tả chi tiết 6 bảng cơ sở dữ liệu trong SQL Server.
Chương 3: Cài đặt
Chương 3 minh họa kết quả triển khai giao diện và chức năng của website:
- Giao diện người dùng (Client):
- Giao diện trang chủ sử dụng hai tông màu chủ đạo là trắng và xanh lá, mang lại cảm giác tươi mát, thân thiện với thiên nhiên.
- Phân vùng hiển thị các khối sản phẩm đặc thù: khối "Sản phẩm Hot" (các loại cây bán chạy), khối "Sản phẩm Sale" (các mặt hàng đang có chương trình giảm giá) và nút "Xem thêm sản phẩm".
- Trang danh mục sản phẩm được phân chia thành 6 loại khác nhau, hỗ trợ lọc và hiển thị danh sách sản phẩm theo từng nhóm cây cảnh.
- Trang chi tiết sản phẩm hiển thị đầy đủ hình ảnh, thông số kỹ thuật, giá thành, mô tả ý nghĩa phong thủy và danh sách các sản phẩm liên quan.
- Hệ thống Blog chuyên đề chia thành 4 chủ đề chính, cung cấp bài viết hướng dẫn kỹ thuật trồng, chăm sóc cây cảnh kèm hình ảnh minh họa chi tiết và video giới thiệu.
- Giao diện giỏ hàng, giao diện thanh toán nhập thông tin khách hàng, cùng các form Đăng ký/Đăng nhập dành cho người dùng.
- Giao diện quản trị (Admin):
- Trang đăng nhập quản trị viên độc lập.
- Màn hình chính quản trị, giao diện danh sách và biểu mẫu thêm mới danh mục sản phẩm.
- Giao diện danh sách sản phẩm, biểu mẫu thêm sản phẩm mới (cho phép upload hình ảnh, nhập mã, giá, loại sản phẩm).
- Biểu mẫu soạn thảo và thêm mới bài viết blog, tính năng tìm kiếm gần đúng và chức năng phân trang dữ liệu trong trang quản trị.
Chương 4: Đánh giá kết quả và hướng phát triển
Chương 4 tổng kết quá trình thực hiện đồ án:
- Đánh giá kết quả đạt được: Đã hoàn thành các chức năng cơ bản của một website thương mại điện tử chuyên ngành cây cảnh, giao diện trực quan, thao tác mua hàng và quản lý sản phẩm thuận tiện.
- Những mặt chưa làm được: Cần tối ưu thêm các nghiệp vụ nâng cao và xử lý bảo mật đa tầng.
- Hướng phát triển: Mở rộng các tiện ích hỗ trợ người dùng, nâng cấp hệ thống thanh toán và tiếp tục hoàn thiện các mô-đun chức năng còn hạn chế.
Kết quả và đóng góp
Kết quả chính
- Hiện thực hóa hệ thống website: Xây dựng hoàn chỉnh website bán cây cảnh với đầy đủ 2 phân hệ tương tác dành cho Khách hàng và Quản trị viên, áp dụng mô hình kiến trúc 3 lớp trên nền tảng C# và ASP.NET Web Forms.
- Tổ chức cơ sở dữ liệu: Thiết lập thành công cơ sở dữ liệu gồm 7 bảng dữ liệu trên SQL Server, bảo đảm tính toàn vẹn dữ liệu và khả năng liên kết giữa các thực thể (sản phẩm, danh mục, bài viết, người dùng, admin).
- Trải nghiệm người dùng: Thiết kế giao diện lấy tông màu trắng – xanh lá làm chủ đạo, tích hợp phân loại 6 danh mục sản phẩm, hiển thị sản phẩm theo trạng thái "Hot" và "Sale", cùng chuyên mục Blog 4 chủ đề kết hợp video minh họa hướng dẫn chăm sóc cây cảnh.
Đóng góp thực tiễn
- Đề tài đưa ra giải pháp số hóa kênh phân phối cho các cửa hàng kinh doanh cây cảnh truyền thống, giúp tiếp cận khách hàng trên diện rộng mà không bị giới hạn về không gian địa lý.
- Giúp khách hàng dễ dàng tìm kiếm và lựa chọn cây phong thủy phù hợp với nhà ở, văn phòng, đồng thời hỗ trợ tra cứu kỹ thuật chăm sóc cây cảnh một cách thuận tiện.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế
- Hệ thống được triển khai trong phạm vi đồ án môn học (Lập trình Web / Đồ án cơ sở ngành), quy mô thử nghiệm tập trung vào các chức năng cốt lõi của việc quản lý danh mục và đặt hàng trực tuyến.
- Các tính năng thanh toán trực tuyến nâng cao, cổng thanh toán ngân hàng/ví điện tử tự động chưa được tích hợp toàn diện mà chủ yếu dựa trên biểu mẫu nhập thông tin thanh toán cơ bản.
Hướng phát triển
- Tích hợp thêm các phương thức thanh toán trực tuyến tự động qua cổng thanh toán điện tử.
- Nâng cấp chức năng tương tác khách hàng như hệ thống đánh giá/bình luận đa cấp, tích hợp chatbot tư vấn chọn cây theo phong thủy tự động.
- Tối ưu hóa cơ sở dữ liệu và nâng cao khả năng bảo mật cho hệ thống tài khoản người dùng và quản trị.
Giá trị tham khảo
Báo cáo đồ án là tài liệu tham khảo hữu ích cho:
- Sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm: Sinh viên đang theo học các học phần Lập trình Web, Lập trình .NET/C# hoặc đang chuẩn bị thực hiện đồ án cơ sở ngành về xây dựng website thương mại điện tử.
- Nội dung tham khảo giá trị: Cung cấp mẫu phân tích thiết kế hệ thống hoàn chỉnh theo chuẩn UML (đặc tả Use Case, Activity Diagram), tài liệu thiết kế cơ sở dữ liệu quan hệ cho website bán hàng và quy trình triển khai mô hình 3 lớp trên nền tảng ASP.NET Web Forms kết hợp SQL Server.
Câu hỏi thường gặp
1. Đề tài được thực hiện bởi ai, tại cơ sở đào tạo nào và vào thời gian nào?
Đề tài do sinh viên Trần Thị Như Ý (Lớp D18PM04, Khóa 2018–2022, Ngành Kỹ thuật công nghệ) thực hiện dưới sự hướng dẫn của giảng viên Nguyễn Hữu Vĩnh (và Nguyễn Hải Vĩnh Cường) tại Viện Kỹ thuật Công nghệ – Trường Đại học Thủ Dầu Một (Bình Dương), hoàn thành vào ngày 10 tháng 12 năm 2020.
2. Hệ thống website được xây dựng bằng những công nghệ và kiến trúc nào?
Hệ thống sử dụng ngôn ngữ lập trình C# kết hợp với công nghệ ASP.NET Web Forms trên môi trường Visual Studio 2010, cơ sở dữ liệu Microsoft SQL Server và được tổ chức theo mô hình kiến trúc 3 lớp (GUI Layer, Business Layer và Data Access Layer).
3. Cơ sở dữ liệu của website gồm những bảng dữ liệu nào?
Cơ sở dữ liệu được thiết kế gồm 7 bảng chính, trong đó văn bản đặc tả chi tiết cấu trúc của 6 bảng: Table (Đăng nhập Admin), Quản lý tài khoản (Admin), Quản lý danh mục, Đăng ký người dùng, Bài viết và Thêm sản phẩm.
4. Giao diện người dùng của website có những đặc điểm nổi bật nào?
Giao diện được thiết kế với hai tông màu chủ đạo là trắng và xanh lá, bố trí các khối danh mục sản phẩm (gồm 6 loại), khu vực dành riêng cho "Sản phẩm Hot" và "Sản phẩm Sale", cùng chuyên mục Blog gồm 4 chủ đề chia sẻ kiến thức chăm sóc cây cảnh kèm video minh họa.
5. Phân hệ quản trị (Admin) cung cấp những chức năng quản lý nào?
Phân hệ Admin cho phép quản trị viên đăng nhập hệ thống, quản lý sản phẩm (thêm, cập nhật, xóa, tìm kiếm), quản lý loại sản phẩm (danh mục), quản lý bài viết trên blog (thêm, xem, xóa), quản lý tài khoản thành viên và theo dõi, xử lý các đơn đặt hàng.
Kết luận
Đồ án "Xây dựng website bán cây" của tác giả Trần Thị Như Ý đã giải quyết thành công bài toán xây dựng một kênh thương mại điện tử chuyên biệt cho mặt hàng cây cảnh trên nền tảng C# và ASP.NET Web Forms. Báo cáo thể hiện đầy đủ quy trình kỹ thuật phần mềm từ khảo sát yêu cầu, mô hình hóa Use Case, thiết kế cơ sở dữ liệu trên SQL Server theo mô hình 3 lớp đến triển khai giao diện thực tế cho cả khách hàng và quản trị viên. Kết quả nghiên cứu không chỉ đáp ứng tốt yêu cầu học phần mà còn cung cấp tài liệu tham khảo thiết thực cho sinh viên công nghệ thông tin trong việc thiết kế và phát triển các hệ thống web bán hàng trực tuyến.