CƠ SỞ LÝ THUYẾT
MỘT SỐ KHÁI NIỆM VỀ THƯƠNG MẠI ĐIỆN TỬ
MVC, viết tắt của Model – View – Controller, là một mô hình thiết kế quan trọng trong kỹ thuật phần mềm Mô hình này chia source code thành ba phần riêng biệt, mỗi phần tương ứng với một hoạt động cụ thể, giúp tổ chức và quản lý mã nguồn hiệu quả hơn.
Hình 2.1: Mô hình MVC a Model (M)
Model là bộ phận lưu trữ dữ liệu của ứng dụng, đóng vai trò cầu nối giữa View và Controller Nó có thể là cơ sở dữ liệu hoặc file XML, cho phép thực hiện các thao tác như xem, truy xuất và xử lý dữ liệu View là giao diện dành cho người sử dụng, nơi người dùng có thể truy cập thông tin từ MVC thông qua các thao tác tìm kiếm hoặc sử dụng trên website.
Trong các ứng dụng web, View theo mô hình MVC đóng vai trò quan trọng trong việc tạo ra các thành phần HTML và ghi nhận hoạt động của người dùng để tương tác với Controller Tuy nhiên, View không có mối quan hệ trực tiếp với Controller và không lấy dữ liệu từ Controller, mà chỉ hiển thị các yêu cầu được chuyển đến Controller.
Bộ phận Controller có nhiệm vụ xử lý các yêu cầu từ người dùng thông qua view và cung cấp dữ liệu phù hợp Ngoài ra, Controller còn kết nối với model để đảm bảo tính đồng bộ và hiệu quả trong việc quản lý dữ liệu.
Thương mại truyền thống là quá trình trao đổi hàng hóa và dịch vụ giữa ít nhất hai bên, bao gồm tất cả các hoạt động cần thiết để hoàn thành giao dịch mua bán Hệ thống này dựa trên nguyên tắc tiền tệ và đóng vai trò là kênh phân phối hàng hóa từ nhà sản xuất đến người tiêu dùng thông qua các trung gian như nhà phân phối, đại lý và các cửa hàng bán lẻ Các hoạt động trong giao dịch mua bán bao gồm việc chuyển tiền, đặt hàng, gửi hóa đơn và chuyển hàng đến người mua, thể hiện cam kết của cả hai bên trong quá trình này.
Mô hình này có nhược điểm là công ty không kiểm soát được đích đến của hàng hóa, chương trình khuyến mãi, tính liên tục trong cung ứng và sự thống nhất giá cả đến tay người tiêu dùng Hơn nữa, việc dự báo sản lượng tiêu thụ một cách chính xác, yếu tố quan trọng để đảm bảo sự ổn định và tăng trưởng kinh doanh, lại trở nên khó khăn và xa vời.
Thương mại điện tử, hay e-commerce, là quá trình mua bán sản phẩm và dịch vụ qua các hệ thống điện tử như Internet và mạng máy tính Nó dựa trên nhiều công nghệ như chuyển tiền điện tử, quản lý chuỗi cung ứng, tiếp thị trực tuyến, giao dịch trực tuyến, và trao đổi dữ liệu điện tử Thương mại điện tử hiện đại chủ yếu sử dụng mạng World Wide Web, mặc dù cũng bao gồm các công nghệ khác như email, thiết bị di động và điện thoại.
Thương mại điện tử, thường được hiểu trong bối cảnh kinh doanh điện tử (e-business), không chỉ bao gồm việc mua bán hàng hóa trực tuyến mà còn liên quan đến việc trao đổi dữ liệu, giúp tối ưu hóa các nguồn tài chính và quy trình thanh toán trong giao dịch kinh doanh.
Thương mại điện tử và kinh doanh điện tử thường bị nhầm lẫn, nhưng thực tế, thương mại điện tử là một phần của kinh doanh điện tử Thương mại điện tử tập trung vào việc mua bán trực tuyến, trong khi kinh doanh điện tử sử dụng Internet và công nghệ trực tuyến để tối ưu hóa hoạt động kinh doanh, bất kể có lợi nhuận hay không, nhằm nâng cao lợi ích cho khách hàng.
Thương mại điện tử diễn ra trong môi trường kinh doanh trực tuyến, kết nối các cá nhân thông qua các công cụ và công nghệ điện tử.
Thương mại điện tử là phương thức giao dịch nhanh chóng và hiệu quả, tối ưu hóa mọi nguồn lực Hoạt động trên nền tảng mạng, thương mại điện tử không bị ràng buộc bởi khoảng cách địa lý và không phân biệt quy mô nhà cung cấp, mang lại sự hiện diện toàn cầu cho nhà cung cấp và lựa chọn đa dạng cho khách hàng Điều này giúp các nhà cung cấp tiếp cận gần hơn với khách hàng, từ đó nâng cao chất lượng dịch vụ cho người tiêu dùng.
Thương mại điện tử đòi hỏi chi phí đầu tư công nghệ cao và người dùng cần liên tục nâng cao kiến thức công nghệ Các bên tham gia thương mại điện tử không cần gặp mặt trực tiếp và không yêu cầu có sự quen biết trước Mỗi giao dịch thương mại điện tử đều có ít nhất ba bên tham gia, trong đó không thể thiếu nhà cung cấp dịch vụ mạng và các cơ quan chứng thực.
2.1.4 Website thương mại điện tử và website bán hàng
Website thương mại điện tử là nền tảng trực tuyến phục vụ cho toàn bộ hoặc một phần quy trình mua bán hàng hóa và cung ứng dịch vụ Nó bao gồm các chức năng như trưng bày sản phẩm, giao kết hợp đồng, thanh toán và cung cấp dịch vụ sau bán hàng.
Website bán hàng là một nền tảng thương mại điện tử nhỏ gọn, được tối ưu hóa về giao diện và tính năng nhằm đơn giản hóa quy trình bán hàng Thiết kế của website này thường được điều chỉnh theo đặc điểm của từng loại sản phẩm để phù hợp với nhu cầu mua sắm của khách hàng.
Các chức năng cơ bản của một website điện tử bán hàng có thể kể đến như:
Hiển thị thông tin sản phẩm (Bao gồm giá cả, giới thiệu về sản phẩm, chức năng mua hàng…)
Đăng và quản lý sản phẩm
Đăng nhập và đăng ký thành viên
Hiển thị các chương trình khuyến mãi, gói coupon
Các lệnh xử lí đơn hàng tự động
Đăng và quản lý tin tức
Cho phép khách hàng theo dõi đơn hàng đã đặt mua
2.2 NGÔN NGỮ LẬP TRÌNH VÀ CÀI ĐẶT
HTML, viết tắt của Hypertext Markup Language, là ngôn ngữ giúp người dùng tạo ra và cấu trúc các thành phần trên trang web hoặc ứng dụng, bao gồm việc phân chia đoạn văn, tiêu đề, liên kết và các đoạn trích.
Khi làm việc với HTML, chúng ta sẽ sử dụng cấu trúc code đơn giản (tags và attributes) để đánh dấu lên trang web
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
TÁC NHÂN VÀ CHỨC NĂNG CHƯƠNG TRÌNH
Bảng 3.1: Bảng tác nhân và chức năng chương trình
Tác nhân Chức năng Chức năng con
Xem danh sánh sản phẩm Thêm sản phẩm Chỉnh sửa sản phẩm Xóa sản phẩm Tìm kiếm sản phẩm
Xem danh sánh Blog Thêm Blog Chỉnh sửa Blog Xóa Blog Tìm kiếm Blog
Xem danh danh mục Thêm danh mục Chỉnh sửa danh mục Xóa danh mục Tìm kiếm danh mục
Quản lý loại sản phẩm
Xem danh sách loai sản phẩm Thêm loại sản phẩm Chỉnh sửa loại sản phẩm Tìm kiếm loại sản phẩm Quản lý đơn đặt hàng
Danh sách hóa đơn Hủy đơn đặt hàng Xác nhân đơn đặt hàng
Danh sách Slide Thêm Side Sửa Slide Xóa Slide
Xem sản phẩm Đặt hàng Tìm kiếm sản phẩm Xem Blog
CHỨC NĂNG CHƯƠNG TRÌNH
Người dùng có thể dễ dàng tìm kiếm các sản phẩm trên website của shop bằng cách nhập thông tin như tên sản phẩm, thương hiệu hoặc mức giá Họ cũng có khả năng cập nhật giỏ hàng và tạo tài khoản thành viên để thực hiện các giao dịch mua sắm thuận tiện hơn.
Để xử lý thông tin sản phẩm, cần lấy dữ liệu từ cơ sở dữ liệu theo các trường tìm kiếm Sau đó, hiển thị thông tin sản phẩm vừa tìm kiếm để người dùng có thể xem chi tiết.
Xem danh sách sản phẩm
+ Đầu vào: Chọn danh mục sản phẩm muốn xem
+ Xử lý: Lấy toàn bộ thông tin chi tiết của sản phẩm có trong cơ sở dữ liệu + Đầu ra: Hiển thị danh sách sản phẩm
Xem thông tin sản phẩm
+ Đầu vào Chọn sản phẩm muốn xem
Để xử lý, chúng ta cần lấy toàn bộ thông tin chi tiết của sản phẩm từ cơ sở dữ liệu Kết quả đầu ra sẽ là danh sách thông tin sản phẩm được hiển thị rõ ràng Quá trình này hỗ trợ việc mua hàng hiệu quả hơn.
Cho phép tất cả các khách hàng có thể đặt hàng và mua hàng
Sau khi thêm sản phẩm vào giỏ hàng, khách hàng có thể xem và kiểm tra nội dung giỏ hàng trước khi nhấn nút mua hàng Sau đó, họ cần điền một số thông tin cần thiết để hệ thống tiếp nhận thông tin.
Xử lý: Lưu thông tin khách hàng và thông tin hóa đơn đặt hàng vào cơ sở dữ liệu
Đầu ra: Đưa ra thông báo đơn mua hàng đã được lập thành công hoặc không d Gửi phản hồi cho website
Đầu vào: Thông tin phản hồi
Xử lý: Lưu thông tin phản hồi vào cơ sở dữ liệu
Đầu ra: Hiển thị thông tin phản hồi thành công hoặc báo lỗi
Người quản trị hệ thống website có toàn quyền thực hiện các chức năng như đăng nhập, quản lý thông tin sản phẩm, danh mục sản phẩm, người dùng, khách hàng, đơn đặt hàng, cũng như thống kê doanh thu và xuất nhập kho.
Đầu vào: Nhập vào các thông tin về username, password
Xử lý: Kiểm tra username và password của người dùng nhập vào và so sánh với username và password trong cơ sở dữ liệu
Nếu thông tin đăng nhập chính xác, hệ thống sẽ hiển thị các chức năng quản trị viên; ngược lại, người dùng sẽ nhận được thông báo yêu cầu nhập lại thông tin Bên cạnh đó, chức năng đổi mật khẩu cũng được cung cấp để tăng cường bảo mật.
Đầu vào: Mật khẩu cũ và mật khẩu mới muốn đổi
Xử lý: Kiểm tra cơ sở dữ liệu so sánh với mật khẩu cũ Nếu đúng thì tiến hàng thay đổi mật khẩu, ngược lại không thay đổi
Khi người dùng thực hiện thay đổi mật khẩu, hệ thống sẽ thông báo thành công nếu mật khẩu cũ được nhập đúng Ngược lại, nếu mật khẩu cũ không chính xác, hệ thống sẽ hiển thị thông báo lỗi và yêu cầu người dùng nhập lại mật khẩu.
Đầu vào: Yêu cầu thoát trên hệ thống
Xử lý: Tiến hành xóa session lưu thông tin đăng nhập để dừng phiên làm việc của tài khoản trong hệ thống
Đầu ra: Quay trở lại trang chủ Ẩn hết các chức năng của quản trị viên d Quản lý sản phẩm
+ Đầu vào: Nhập thông tin của sản phẩm
Để xử lý, cần kiểm tra các trường dữ liệu xem có trường nào bị bỏ trống hay không Nếu tất cả các trường đều hợp lệ, dữ liệu sẽ được thêm vào cơ sở dữ liệu Ngược lại, nếu có trường không hợp lệ, dữ liệu sẽ không được thêm vào.
+ Đầu ra: Thông báo thêm thành công và hiển thị danh sách sản phẩm
+ Đầu vào: Nhập thông tin cần chỉnh sửa của sản phẩm
+ Xử lý: Cập nhật thông tin mới cho sản phẩm
+ Đầu ra: Hiển thị thông báo đã cập nhật sản phẩm
+ Đầu vào: Chọn sản phẩm cần xoá
+ Xử lý: Xoá trong cơ sở dữ liệu
+ Đầu ra: Thông báo thành công và tải lại danh sách sản phẩm e Quản lý danh mục sản phẩm
+ Đầu vào: Nhập danh mục sản phẩm
+ Xử lý: Kiểm tra trong cơ sở dữ liệu đã tồn tại danh mục chưa Nếu chưa thì thêm vào cơ sở dữ liệu ngược lại thông báo lỗi
+ Đầu ra: Thông báo thành công hoặc báo lỗi
+ Đầu vào: Nhập thông tin cần chỉnh sửa
+ Xử lý: Cập nhật danh mục sản phẩm
+ Đầu ra: Hiển thị thông báo cập nhật danh mục sản phẩm thành công hoặc báo lỗi
+ Đầu vào: Chọn danh mục sản phẩm cần xoá
+ Xử lý: Xoá trong cơ sở dữ liệu
+ Đầu ra: Hiển thị danh sách danh mục sản phẩm f Quản lý tài khoản
+ Đầu vào: Nhập vào những thông tin cần thiết của tài khoản
Để xử lý, cần kiểm tra các trường dữ liệu để đảm bảo không có trường nào để trống Nếu tất cả các trường đều hợp lệ, dữ liệu sẽ được thêm vào cơ sở dữ liệu Ngược lại, nếu có trường không hợp lệ, dữ liệu sẽ không được thêm vào cơ sở dữ liệu.
+ Đầu ra: Hiển thị danh sách tài khoản
+ Đầu vào: Nhập thông tin mới của tài khoản
+ Xử lý: Cập nhật thông tin mới cho tài khoản
+ Đầu ra: Hiển thị thông báo đã cập nhật tài khoản thành công hoặc báo lỗi
+ Đầu vào: Chọn tài khoản cần xoá
+ Xử lý: Xoá trong cơ sở dữ liệu
+ Đầu ra: Hiển thị thông báo đã xóa tài khoản thành công g Quản lý đơn đặt hàng
Đầu vào: Thông tin đơn đặt hàng
Xử lý: Thiết lập hóa đơn bán hàng hoặc yêu cầu thêm thông tin từ khách hàng
Đầu ra: Thông báo cho khách hàng đơn hàng thành công hoặc ngược lại h Phản hồi khách hàng
Đầu vào: Thông tin phản hồi từ khách hàng
Xử lý: Thêm trả lời phản hồi vào cơ sở dữ liệu
Đầu ra: Thông báo trả lời phản hồi thành công i Thống kê
+ Đầu vào: Đơn hàng sản phẩm đã bán được
+ Xử lý: Tính tổng doanh thu bán được
+ Đầu ra: Doanh thu sản phẩm theo tháng, theo năm
Thống kê sản phẩm sắp hết hàng
+ Đầu vào: Số lượng sản phẩm đã nhập
+ Xử lý: Kiểm tra số lượng sản phẩm
+ Đầu ra: Hiển thị sản phẩm sắp hết hàng
Thống kê sản phẩm có trong kho
+ Đầu vào: Số lượng hàng đã nhập
+ Xử lý: Tính tổng sản phẩm hiện có
+ Đầu ra: Tổng số sản phẩm có trong kho
Đầu vào: nhập vào các thông tin về username, password
Xử lý: Kiểm tra username và password của người dùng nhập vào và so sánh với username và password trong cơ sở dữ liệu
Đầu ra của hệ thống sẽ hiển thị các chức năng của quản trị viên nếu thông tin đăng nhập chính xác; ngược lại, sẽ thông báo yêu cầu người dùng nhập lại thông tin Ngoài ra, hệ thống cũng hỗ trợ chức năng đổi mật khẩu.
Đầu vào: mật khẩu cũ và mật khẩu mới muốn đổi
Xử lý: kiểm tra cơ sở dữ liệu so sánh với mật khẩu cũ Nếu đúng thì tiến hàng thay đổi mật khẩu, ngược lại không thay đổi
Khi người dùng thay đổi mật khẩu, hệ thống sẽ thông báo thành công nếu mật khẩu cũ được nhập đúng Nếu mật khẩu cũ sai, hệ thống sẽ hiển thị thông báo lỗi và quay về màn hình nhập lại Ngoài ra, người dùng cũng có tùy chọn đăng xuất khỏi tài khoản.
Đầu vào: Yêu cầu thoát trên hệ thống
Xử lý: Tiến hành xóa session lưu thông tin đăng nhập để dừng phiên làm việc của tài khoản trong hệ thống
Đầu ra: Quay trở lại trang chủ Ẩn hết các chức năng của quản trị viên d Quản lý sản phẩm
+ Đầu vào: nhập thông tin của sản phẩm
Để xử lý dữ liệu, cần kiểm tra các trường thông tin xem có trường nào không được để trống Nếu tất cả các trường đều hợp lệ, dữ liệu sẽ được thêm vào cơ sở dữ liệu Ngược lại, nếu có trường không hợp lệ, dữ liệu sẽ không được thêm vào cơ sở dữ liệu.
+ Đầu ra: thông báo thêm thành công và hiển thị danh sách sản phẩm
+ Đầu vào: Nhập thông tin cần chỉnh sửa của sản phẩm
+ Xử lý: Cập nhật thông tin mới cho sản phẩm
+ Đầu ra: Hiển thị thông báo đã cập nhật sản phẩm
+ Đầu vào: Chọn sản phẩm cần xoá
+ Xử lý: Xoá trong cơ sở dữ liệu
+ Đầu ra: Thông báo thành công và tải lại danh sách sản phẩm e Quản lý danh mục sản phẩm
+ Đầu vào: Nhập danh mục sản phẩm
+ Xử lý: Kiểm tra trong cơ sở dữ liệu đã tồn tại danh mục chưa Nếu chưa thì thêm vào cơ sở dữ liệu ngược lại thông báo lỗi
+ Đầu ra: Thông báo thành công hoặc báo lỗi
+ Đầu vào: Nhập thông tin cần chỉnh sửa
+ Xử lý: Cập nhật danh mục sản phẩm
+ Đầu ra: Hiển thị thông báo cập nhật danh mục sản phẩm thành công hoặc báo lỗi
+ Đầu vào: Chọn danh mục sản phẩm cần xoá
+ Xử lý: Xoá trong cơ sở dữ liệu
+ Đầu ra: Hiển thị danh sách danh mục sản phẩm f Quản lý đơn đặt hàng
Đầu vào: thông tin đơn đặt hàng
Xử lý: thiết lập hóa đơn bán hàng hoặc yêu cầu thêm thông tin từ khách hàng
Đầu ra: thông báo cho khách hàng đơn hàng thành công hoặc ngược lại g Phản hồi khách hàng
Đầu vào: thông tin phản hồi từ khách hàng
Xử lý: thêm trả lời phản hồi vào cơ sở dữ liệu
Đầu ra: thông báo trả lời phản hồi thành công
THIẾT KẾ HỆ THỐNG
3.3.1 Sơ đồ Use case tổng quát
Bảng 3.2: Bảng mô tả Use case
1 Quản trị hệ thống Đăng nhập, đăng xuất
2 Quản trị hệ thống Quản lý sản phẩm
3 Quản trị hệ thống Quản lý nhân viên
4 Quản trị hệ thống Quản lý tin tức
5 Quản trị hệ thống Quản lý đơn hàng
6 Quản trị hệ thống Quản lý giao diện
7 Quản trị hệ thống Báo cáo thống kê
8 Khách hàng Xem thông tin
Hình 3.1: Sơ đồ Use case tổng quát a Use-case đăng nhập
Hình 3.2: Use case mô tả chức năng đăng nhập
Bảng 3.3: Đặc tả use case đăng nhập
Tên use case Đăng nhập
Use case cho phép quản trị hệ thống đăng nhập vào hệ thống để thực hiện chức năng của được cấp thông qua mỗi quyền riêng của hệ thống
Actor Quản trị hệ thống Điều kiện kích hoạt Khi người dùng muốn vào hệ thống
Tiền điều kiện Người dùng phải có tài khoản
Hậu điều kiện Người dùng phải đăng nhập thành công
1 Hệ thống hiển thị màn hình đăng nhập
2 Người dùng phải nhập tài khoản và mật khẩu
3 Hệ thống kiểm tra thông tin tài khoản
4 Nếu thành công hệ thống hiển thị màn hình đăng nhập thành công
4.1 Mật khẩu, tài khoảng không hợp lệ:
4.2 Hệ thống hiển thị lại màn hình đăng nhập để người dùng nhập lại thông tin quay lại bước 2 trong luồng sự kiện chính b Use case tổng quan khách hàng
Hình 3.3: Use case tổng quan khách hàng Bảng 3.4: Đặc tả use case xem danh sách sản phẩm
Tên use case Xem danh sách sản phẩm
Mô tả Use case cho phép khách hàng xem các sản phẩm của hệ thống
Actor Khách hàng Điều kiện kích hoạt Truy cập vào hệ thống
Luồng sự kiện chính 1 Người dùng truy cập vào trang website hệ thống
2 Chọn loại sản phẩm và đi đến use case mới
Bảng 3.5: Đặc tả use case xem chi tiết sản phẩm
Tên use case Xem chi tiết sản phẩm
Mô tả Use case cho phép khách hàng xem chi tiết từng sản phẩm của hệ thống
Actor Khách hàng Điều kiện kích hoạt Truy cập vào hệ thống
Tiền điều kiện Xem danh sách sản phẩm
1 Người dùng truy cập vào trang website hệ thống
2 Chọn sản phẩm và click xem chi tiết sản phẩm
Bảng 3.6: Đặc tả use case xem tin tức
Tên use case Xem tin tức
Mô tả Use case cho phép khách hàng xem các tin tức của hệ thống
Actor Khách hàng Điều kiện kích hoạt Truy cập vào hệ thống
1 Người dùng truy cập vào trang website hệ thống
2 Chọn tin tức và click xem chi tiết tin tức
Bảng 3.7: Đặc tả use case bình luận
Tên use case Bình luận
Mô tả Use case cho phép khách hàng có thể bình luận về sản phẩm
Actor Khách hàng Điều kiện kích hoạt Truy cập vào hệ thống
Tiền điều kiện Xem chi tiết sản phẩm
1 Người dùng truy cập vào trang website hệ thống
2 Chọn sản phẩm và click xem chi tiết sản phẩm
3 Bình luận về sản phẩm
Bảng 3.8: Đặc tả use case đánh giá
Tên use case Đánh giá
Mô tả Use case cho phép khách hàng có thể đánh giá về sản phẩm
Actor Khách hàng Điều kiện kích hoạt Truy cập vào hệ thống
Tiền điều kiện Xem chi tiết sản phẩm
1 Người dùng truy cập vào trang website hệ thống
2 Chọn sản phẩm và click xem chi tiết sản phẩm
3 Đánh giá về sản phẩm
Bảng 3.9: Đặc tả use case xem quản lý giỏ hàng
Tên use case Quản lý giỏ hàng
Use case cho phép khách hàng thêm sản phẩm vào giỏ hàng, xóa sản phẩm khỏi giỏ, và cập nhật số lượng sản phẩm trong giỏ
Actor Khách hàng Điều kiện kích hoạt Truy cập vào hệ thống
1 Người dùng truy cập vào trang website hệ thống
2 Chọn chức năng quản lý giỏ hàng:
Số lượng sản phẩm trong kho đã hết
Quay lại bước 2.1 trong luồng sự kiện chính
2.3.1 Khi cập nhật số lượng:
Số lượng sản phẩm cập nhật