Trang 6 CHƯƠNG 1: KHẢO SÁT HỆ THỐNG1.1 Mô tảCửa hàng ngoài việc cung cấp phong phú các loại hoa còncung cấpđầy đủ các dịch vụ về hoa tươi từ hoa tặng người thân yêu,hoa cưới, tới hoa văn
KHẢO SÁT HỆ THỐNG
Mô tả
Cửa hàng ngoài việc cung cấp phong phú các loại hoa còn cung cấp đầy đủ các dịch vụ về hoa tươi từ hoa tặng người thân yêu, hoa cưới, tới hoa văn phòng, hoa chúc mừng, hoa sinh nhật. Nhu cầu hoa tươi của bạn sẽ được cửa hàng phục vụ một cách hoàn hảo nhất.
Khách hàng, từ một máy tính tại một nơi nào đó, điền những thông tin thanh toán và địa chỉ liên hệ vào đơn đặt hàng trên Web bán hàng của cửa hàng Khi nhận được yêu cầu mua hàng khách hàng và hệ thống tóm tắt lại những thông tin cần thiết những mặt hàng đã chọn, hình thức thanh toán, địa chỉ giao nhận và số phiếu đặt hàng… Khách hàng kiểm tra lại các thông tin và kích vào nút “đặt hàng” gửi thông tin trả về cho hệ thống.
Khảo sát
1.2.1 Hoạt động của khách hàng
- Một khách hàng khi tham quan cửa hàng, họ sẽ đặt vấn đề cửa hàng bán những gì, thông tin gì về những mặt hàng được bán, giá cả và hình thức thanh toán Do đó để đáp ứng những nhu cầu tối thiểu trên, cửa hàng trên Internet phải đảm bảo cung cấp những thông tin cần thiết, có giá trị và hơn thế nữa là dễ thao tác Hoa khi bán phải có tên, hình ảnh, có giá cả, mô tả và số lượng còn.
- Khi cần mua hoa, khách hàng truy cập vào website để tìm kiếm hoa cần mua và đặt hàng.
- Khách hàng có thể tiến hành đăng ký tài khoản nếu chưa có tài khoản ở trên hệ thống Khi đăng ký khách hàng nhập đầu đủ thông tin bao gồm tên khách hàng, email, địa chỉ, số điện thoại, mật khẩu.
- Khách hàng sẽ cảm thấy thoải mái khi duyệt qua toàn bộ cửa hàng trực tuyến mà không bị gián đoạn ở bất kỳ đâu vì phải lo quyết định xem có mua một mặt hàng nào đó không,cho tới khi kết thúc việc mua hàng Mỗi khách hàng được cung cấp một giỏ hàng tương ứng Khi khách hàng thêm những mặt hàng vào giỏ hàng thì một trang đăng nhập sẽ xuất hiện nếu khách hàng chưa tiến hành đăng nhập Khách hàng có thể cập nhật số lượng của mặt hàng mà mình muốn mua hoặc xóa bỏ mặt hàng hiện có trong giỏ của mình.
- Khách hàng vẫn có thể quay trở lại trang sản phẩm để xem và chọn tiếp, các sản phẩm đã chọn sẽ được lưu vào trong giỏ hàng.
- Khi khách hàng đã sẵn sàng hoàn thành đơn đặt hàng của mình thì khách hàng tiến hành chọn phương thức thanh toán và đặt hàng Thông tin về đặt hàng sẽ được lưu vào cơ sở dữ liệu và chờ người quản trị xử lý Thông tin về hóa đơn bao gồm mã hóa đơn, mã khách hàng, ngày đặt, trạng thái, tổng tiền.
- Sau khi khách hàng đã đặt hàng trên cửa hàng rồi, họ có thể theo dõi đơn đặt hàng của mình để trực tiếp kiểm tra đơn đặt hàng tại trang web của cửa hàng khi có những băn khoăn.
1.2.2 Hoạt động của người quản trị
- Người quản trị ngoài việc nhận thông tin từ khách hàng còn phải đưa thông tin về loại mặt hàng mà mình bán trên trang web.
- Quản lý mặt hàng: người quản trị có thể bổ sung, loại bỏ và cập nhật mặt hàng để phù hợp với tình hình hoạt động của cửa hàng và nhu cầu thị yếu của khách hàng…
- Quản lý khách hàng: quản lý thông tin cá nhân của khách hàng Người quản trị tiến hành xóa tài khoản của khách hàng nếu cần thiết.
- Quản lý và xử lý đơn đặt hàng:
Hiển thị danh sách các đơn đặt hàng đã giao hay chưa giao. Đánh dấu tình trạng giao hàng ứng với đơn đặt hàng đã giao.
- Mỗi khi có thông tin mới về loại hoa, hoạt động của cửa hàng,… người quản trị tiến hành đăng tin tức bao gồm tên tin tức, nội dung, hình, thời gian.
- Cho phép người quản trị thay đổi slider, logo, quảng cáo của trang web.
- Người quản trị có thể tiến hành thống kê doanh thu theo ngày, tháng, năm, số lượng bán, loại hoa bán nhiều nhất.
- Website có thêm phần liên hệ ở cuối trang, là nơi tiếp nhận ý kiến phản hồi của khách hàng Mỗi khi có ý kiến phản hồi của khách hàng, người quản trị tiến hành trả lời và có thể xóa ý kiến phản hồi.
Yêu cầu chức năng và phi chức năng
Website đáp ứng các chức năng cơ bản của một web bán hàng online, được thiết kế để phù hợp với khách hàng không có tài khoản (Guess) hoặc
Phải có một giao diện thân thiện dễ sử dụng:
Màu sắc hài hoà làm nổi bật hình ảnh của sản phẩm, font chữ thống nhất, tiện lợi khi sử dụng.
Giới thiệu những thông tin về cửa hàng: Địa chỉ liên hệ của cửa hàng hoặc các đại lý trực thuộc, các số điện thoại liên hệ, email liên hệ.
Sản phẩm của cửa hàng: sản phẩm đang có, sản phẩm bán chạy, sản phẩm mới nhất, sản phẩm sắp ra mắt…
Giao diện người quản trị:
- Giao diện đơn giản, dễ quản lý dữ liệu.
- Phải được bảo vệ bằng User & Password riêng của Admin.
Kết luận
Từ việc khảo sát ta thấy để làm được một website bán hoa phải đạt được những mục tiêu sau:
- Khách hàng có thể xem, mua bất cứ sản phẩm nào trong kho
- Có hướng dẫn cụ thể về mua hàng, phương thức thanh toán và giao nhận vận chuyển hàng
- Giao diện thân thiện và dễ sử dụng
- Có hỗ trợ để khách hàng có thể trao đổi các thông tin, thắc mắc
- Có sự phân loại các sản phẩm theo danh mục và quản lý có thể thay đổi được
- Các sản phẩm đều được mô tả chi tiết, luôn được cập nhật mới nhất và phong phú nhất
- Có ô tìm kiếm để có thể tìm kiếm mặt hàng nhanh nhất
Một số biểu mẫu
PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
Các chức năng của hệ thống
UC001 Đăng nhập Thực hiện đăng nhập vào hệ thống, nhập vào username và password Kiểm tra hợp lệ trùng với dữ liệu có sẵn thì hệ thống sẽ cho phép đăng nhập để thực hiện các chức năng trong hệ thống.
UC002 Đăng ký Khách hàng tiến hành đăng ký giúp cho việc mua hàng diễn ra thuận lợi hơn và nhận được nhiều khuyến mãi Sau khi khách hàng điền đầy đủ thông tin cá nhân, hệ thống xác nhận và thông tin của khách hàng được bảo mật trong CSDL.
UC003 Thay đổi thông tin cá nhân
Tùy vào từng điều kiện khách quan mà thông tin cá nhân của khách hàng có thể thay đổi, chức năng này giúp khách hàng có thể cập nhật lại thông tin trên hệ thống.
UC004 Xem hàng Là chức năng chung cho toàn bộ khách hàng khi ghé thăm website Thông qua cơ sở dữ liệu, hệ thống sẽ gửi trả tất cả những kết quả tìm kiếm của khách hàng.
UC005 Thêm hàng vào giỏ Sau khi đăng nhập và chọn mua sản phẩm, giỏ hàng là nơi chứa thông tin về sản phẩm mà khách hàng đã chọn mua như số lượng sản phẩm, tên sản phẩm và giá tiền sản phẩm đó.
UC006 Đặt hàng Sau khi đăng nhập vào hệ thống thì khách hàng có thể mua hàng theo thông tin tài khoản thành viên của mình UC007 Thanh toán Sau khi tiến hành lập đơn hàng xong, khách hàng được quyền chọn hình thức thanh toán, hình thức vận chuyển.
UC008 Quản lý hoa Quản lý, lưu trữ thông tin về hoa như mã hoa, tên hoa,…
UC009 Quản lý khách hàng
Quản lý hoạt động mua bán của khách hàng, lưu lại thông tin về khách hàng như tên khách hàng, địa chỉ, mã khách hàng, số điện thoại, email
UC010 Quản lý đơn đặt hàng
Quản lý giao dịch khi khách hàng mua hàng có các thông tin như: Mã giao dịch, mã khách hàng, địa chỉ người nhận, số điện thoại, tổng tiền, hình thức thanh toán, hình thức vận chuyển.
UC011 Quản lý danh mục tin tức
Quản lý danh mục tin tức của cửa hàng như: tin khuyến mãi, hàng bán chạy…
UC012 Thống kê Tùy thuộc yêu cầu của người quản trị chọn theo hình thức nào, thời gian bao lâu.
Biểu đồ usecase
Hình 1 Biểu đồ usecase mức tổng quát
2.2.2 Biểu đồ usecase phân rã
Hình 2 Phân rã usecase của Admin
Hình 3 Phân rã usecase của khách hàng
Mô tả chi tiết các usecase
Tên use case Đăng nhập
Tác nhân chính Khách hàng, Admin
Tiền điều kiện Tài khoản người dùng đã tồn tại trong hệ thống Chuỗi sự kiện chính:
1 Người dùng kích vào nút “Đăng nhập” trên trang web
2 Hệ thống hiển thị form đăng nhập
3 Người dùng nhập thông tin tài khoản và chọn “Đăng nhập”
4 Hệ thống xác nhận thông tin đăng nhập, thông báo kết quả và quay lại trang chủ
3a Người dùng không nhập email không đúng định dạng
3.a.1 Hệ thống thông báo: “Email không hợp lệ”
3.a.2 Người dùng nhập lại email
3b Người dùng không nhập mật khẩu
3.b.1 Hệ thống thông báo: “Mật khẩu không được để trống”
3.b.2 Người dùng nhập lại mật khẩu
4a Hệ thống xác minh thông tin đăng nhập không thành công, hiển thị thông báo, quay lại bước 2
- Nếu trong quá trình thực hiện hệ thống bị mất kết nối: Hệ thống thông báo mất kết nối và trở lại giao diện trước đó
Hậu điều kiện - Người dùng đăng nhập hệ thống website thành công.
- Mở phiên làm việc cho người dùng
- Cho phép người dùng thực hiện các chức năng theo role của tài khoản.
: KhachHang : DangnhapUI : DangnhapUI : DangnhapController : DangnhapController : TAIKHOAN : TAIKHOAN : ICsdl : ICsdl : CSDL : CSDL 1: kich vao nut "Dang nhap"( )
2: hien thi khung dang nhap( )
3: dien thong tin tai khoan, mat khau
9: return 10: hien thi thong bao dang nhap thanh cong( )
Tên use case Đăng ký
Tác nhân chính Khách hàng
Tiền điều kiện Tài khoản người dùng chưa tồn tại trong hệ thống Chuỗi sự kiện chính:
1 Người dùng kích vào nút “Đăng ký” trên trang web
2 Hệ thống hiển thị form đăng ký bao gồm thông tin cá nhân (Họ tên, giới tính, địa chỉ, điện thoại) và thông tin đăng nhập(Email, mật khẩu, nhập lại mật khẩu)
3 Người dùng nhập thông tin tài khoản và chọn “Đăng ký”
4 Hệ thống kiểm tra điều kiện hợp lệ của thông tin nhập
5 Hệ thống thông báo đăng ký thành công và thông báo về tài khoản kèm gửi email thông tin tài khoản Đồng thời lưu thông tin tài khoản vào CSDL
4a Người dùng không nhập 1 trong các thông tin ở trên form
4.a.1 Hệ thống hiển thị thông báo “Không được để trống”
4.a.2 Người dùng tiến hành nhập thông tin vào form
4b Người dùng nhập định dạng Email không đúng
4.b.1 Hệ thống hiển thị thống báo “Email không hợp lệ”
4.b.2 Người dùng tiến hành nhập lại email
4c Người dùng nhập lại ô xác nhận mật khẩu không đúng
4.c.1 Hệ thống hiển thị thông báo “Mật khẩu không trùng khớp”
4.c.2 Người dùng nhập lại vào ô xác nhận mật khẩu
- Nếu trong quá trình thực hiện hệ thống bị mất kết nối: Hệ thống thông báo mất kết nối và trở lại giao diện trước đó
Hậu điều kiện Một tài khoản mới với các thông tin đăng nhập được tạo ra và lưu trữ CSDL.
: Khach Hang : DangKyUI : DangKyUI : DangKyController : DangKyController : TaiKhoan : TaiKhoan : ICSDL : ICSDL : CSDL : CSDL 1: Kich vao bieu tuong hinh nguoi( )
5: Nhap thong tin vao form
6: Kich vao nut "Dang ky"( )
7: Them moi mot tai khoan khach hang( )
(from Use Case Vi ew)
Nhap thong tin khach hang() Lay khach hang() Lay bang tai khoan() opname() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPham() Cap nhat bang SanPhamTrongGioHang() Doc bang SanPhamTrongGioHang() Doc bang TaiKhoan()
Doc bang TaiKhoan() Doc bang LoaiSanPham() Cap nhat bang TaiKhoan()
(from Use Case Vi ew)
Kich vao bieu tuong hinh nguoi()
Kich vao nut "Dang Ky"()
Hien thi "Dang ky thanh cong"()
Hien thi thong bao "Vui long nhap vao truong nay"()
Hien thi thong bao "Ma capcha xac dinh la may"()
Hien thi thong bao"Loi ket noi"()
Kich vao nut "Dang ky"()
Nhap khach hang() Lay khach hang() Doc bang khach hang() Nhap thong tin() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPhamTrongGioHang() Cap nhat bang SanPhamTrongGioHang() Cap nhat bang TaiKhoan()
TaiKhoan TenKhachHang HoKhachHang Email MatKhau getTenKhachHang() setTenKhachHang() getHoKhachHang() setHoKhachHang() getEmail() setEmail() getMatKhau() setMatKhau() setTaiKhoan() getTaiKhoan() createTaiKhoan() setTaiKhoan_byTaiKhoan() createTaiKhoan() getTaiKhoan_byTaiKhoan()
Nhap khach hang() opname() Them moi mot tai khoan khach hang()
2.3.3 Usecase Thay đổi thông tin cá nhân
Tên use case Thay đổi thông tin cá nhân
Tác nhân chính Khách hàng
Tiền điều kiện Khách hàng đã đăng nhập vào hệ thống
1 Khách hàng kích vào avatar hoặc tên trên màn hình
2 Hệ thống lấy thông tin của khách hàng trong CSDL và hiển thị ra màn hình
3 Khách hàng nhập thông tin cần sửa.
4 Khách hàng chọn cập nhật để xác nhận thay đổi thông tin
5 Hệ thống tự cập nhật lại dữ liệu và thông báo cập nhật thành công
4a Hệ thống hiển thị không hợp lệ Quay lại bước 3
- Nếu trong quá trình thực hiện hệ thống bị mất kết nối: Hệ thống thông báo mất kết nối và trở lại giao diện trước đó
Hậu điều kiện Thông tin tài khoản của khách hàng được cập nhật lại trong CSDL
1: Nhan vao "Doi mat khau"( )
2: Hien thi form nhap mat khau( )
3: Nhap thong tin vao form
4: Kich nut "Dat lai mat khau"( )
5: Sua thong tin khach hang( )
9: Hien thi thong bao "Doi mat khau thanh cong"( )
10: Nhan vao "So dia chi"( )
11: Hien thi nut chon"Them dia chi"( )
12: Nhan nut "Them dia chi"( )
13: Hien thi form nhap dia chi( )
14: Nhap thong tin vao form
16: Sua thong tin khach hang( )
19: Cap nhat bang TaiKhoan( )15: Kich nut "Them dia chi" trong form( )
Khach Hang (from Use Case View)
Nhap thong tin khach hang() Lay khach hang() Lay bang tai khoan() opname() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPham() Cap nhat bang SanPhamTrongGioHang() Doc bang SanPhamTrongGioHang() Doc bang TaiKhoan()
Doc bang TaiKhoan() Doc bang LoaiSanPham() Cap nhat bang TaiKhoan()
Kich vao bieu tuong hinh nguoi()
Hien thi thong tin khach hang()
Kich vao "So dia chi"()
Nhap thong tin khach hang()
Kich vao "Them dia chi"()
Hien thi "Them dia chi thanh cong"()
Hien thi thong bao "Mat khau khong khop"()
Hien thi thong bao "Muc nay khong hop le hoac bo trong" tai muc()
Hien thi thong bao "Loi ket noi"()
Nhan vao "Doi mat khau"()
Hien thi form nhap mat khau()
Kich nut "Dat lai mat khau"()
Hien thi thong bao "Doi mat khau thanh cong"()
Nhan vao "So dia chi:()
Hien thi nut chon"Them dia chi"()
Nhan nut "Them dia chi"()
Hien thi form nhap dia chi()
Kich nut "Them dia chi" trong form()
Nhap khach hang() Lay khach hang() Doc bang khach hang() Nhap thong tin() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPhamTrongGioHang() Cap nhat bang SanPhamTrongGioHang() Cap nhat bang TaiKhoan()
TaiKhoan TenKhachHang HoKhachHang Email MatKhau getTenKhachHang() setTenKhachHang() getHoKhachHang() setHoKhachHang() getEmail() setEmail() getMatKhau() setMatKhau() setTaiKhoan() getTaiKhoan() createTaiKhoan() setTaiKhoan_byTaiKhoan() createTaiKhoan() getTaiKhoan_byTaiKhoan()
Lay thong tin khach hang() Nhap thong tin() Nhap khach hang() opname() Sua thong tin khach hang() Sua thong tin khach hang()
Tên use case Xem hàng
Tác nhân chính Khách hàng
Tiền điều kiện Người dùng đang ở trang có chứa sản phẩm Chuỗi sự kiện chính:
1 Người dùng chọn một sản phẩm trong danh sách sản phẩm
2 Hệ thống kiểm tra và truy vấn dữ liệu từ CSDL
3 Hệ thống hiển thị trang chi tiết sản phẩm
2a Hệ thống hiển thị thông báo lỗi nếu truy vấn không thành công
- Nếu trong quá trình thực hiện hệ thống bị mất kết nối: Hệ thống thông báo mất kết nối và trở lại giao diện trước đó
Hậu điều kiện Hệ thống hiển thị chi tiết sản phẩm đã chọn
: ICsdl : ICsdl : CSDL : CSDL 1: nhap vao xem san pham( )
2: lay danh sach danh muc( )
3: lay danh sach danh muc
4: lay danh sach danh muc( ) 5: getDANHMUC( )
6: return DANHMUC 7: hien thi danh sach danh muc( )
8: nhap vao san pham bat ki trong danh muc( )
9: lay thong tin san pham( )
10: lay thong tin san pham( )
13: return SANPHAM_byMadnahmuc 14: hien thi thong tin san pham len man hinh
2.3.5 Usecase Thêm hàng vào giỏ
Tên use case Thêm hàng vào giỏ
Tác nhân chính Khách hàng
Tiền điều kiện Người dùng đang ở trang sản phẩm hoặc trang chi tiết sản phẩm Chuỗi sự kiện chính:
1 Người dùng nhấn vào biểu tượng thêm giỏ hàng.
2 Hệ thống kiểm tra số lượng chọn mua với số lượng trong kho.
3 Hệ thống kiểm tra xem sản phẩm đã tồn tại trong giỏ hàng hay chưa
4 Hệ thống thêm sản phẩm vào giỏ hàng và cập nhật số lượng
5 Hệ thống thông báo "Thêm vào giỏ hàng thành công!"
- Nếu trong quá trình thực hiện hệ thống bị mất kết nối: Hệ thống thông báo mất kết nối và trở lại giao diện trước đó
Hậu điều kiện Sản phẩm sau khi chọn mua sẽ được đưa vào trong giỏ hàng, nếu chọn sản phẩm đã có trong giỏ hàng, hệ thống sẽ cập nhật số lượng
: Khach Hang : DatHangUI : DatHangUI : DatHangController : DatHangController :
: ICSDL : ICSDL : CSDL : CSDL 1: Nhan nut "Mua hang"( )
2: Hien thi thong bao va duong dan "Toi gio hang"( )
3: Nhan vao "Toi gio hang"( )
8: return danh sach SanPham trong gio hang
10: Hien thi form thong tin mua hang( )
11: Dien thong tin va chon hinh thuc thanh toan
13: Hien thi thong bao len man hinh( )
Khach Hang (from Use Case View)
Nhap thong tin khach hang() Lay khach hang() Lay bang tai khoan() opname() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPham() Cap nhat bang SanPhamTrongGioHang() Doc bang SanPhamTrongGioHang() Doc bang TaiKhoan()
Doc bang TaiKhoan() Doc bang LoaiSanPham() Cap nhat bang TaiKhoan()
Hien thi thong bao va duong dan "Toi gio hang"()
Nhan vao "Toi gio hang"()
Hien thi form thong tin mua hang()
Hien thi thong bao len man hinh()
Nhan nut "Xoa" o san pham muon xoa()
Hien thi danh sach san pham() opname()
Hien thi thong bao "Khong co san pham nao"()
Hien thi thong bao "Nhap sai thong tin" tai truong nhap sai()
Hien thi thong bao "Loi ket noi"()
GiaBan SoLuong getTenSanPham() setTenSanPham() getGiaBan() setGiaBan() getSoLuong() setSoLuong() getSanPhamTrongGioHang() deleteSanPhamTrongGioHang_bySPTGH()
Nhap khach hang() Lay khach hang() Doc bang khach hang() Nhap thong tin() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPhamTrongGioHang() Cap nhat bang SanPhamTrongGioHang() Cap nhat bang TaiKhoan()
Lay bang SanPhamTrongGioHang() Xoa san pham da chon()
Tác nhân chính Khách hàng
Tiền điều kiện Khách hàng đã đăng nhập hệ thống, Sản phẩm đã tồn tại trong giỏ hàng.
Luồng sự kiện chính Đặt hàng
Khách hàng click vào nút “Đặt hàng” trong giỏ hàng Hệ thống lấy thông tin danh sách sản phẩm trong bảng “GioHang”, thông tin khách hàng trong bảng “TaiKhoan” và lưu thông tin chi tiết các sản phẩm vào bảng “DonHang”.
Khách hàng tiến hành thay đổi số lượng có sản phẩm trong giỏ hàng bằng cách chọn dấu + sẽ tăng
Khách hàng chọn “Xóa” bên cảnh sản phẩm cần xóa Hệ thống sẽ tiến hành xóa sản phẩm khỏi giỏ hàng và cập nhật lại thành tiền.
Nếu khách hàng chưa đăng nhập thì hệ thống yêu cầu khách hàng cần phải đăng nhập hệ thống, sau đó hiển thị màn hình đăng nhập.
Không kết nối được với cơ sở dữ liệu : tại bất kỳ thời điểm nào trong quá trình thực hiện use case nếu không kết nối được với cơ sở dữ liệu thì hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc
Hậu điều kiện Số lượng sản phẩm trong giỏ hàng được cập nhật trong CSDL
: Khach Hang : DatHangUI : DatHangUI : DatHangController : DatHangController :
: SanPhamTrongGioHang : ICSDL : ICSDL : CSDL : CSDL 1: Nhan nut "Mua hang"( )
2: Hien thi thong bao va duong dan "Toi gio hang"( )
3: Nhan vao "Toi gio hang"( )
8: return danh sach SanPham trong gio hang
10: Hien thi form thong tin mua hang( )
11: Dien thong tin va chon hinh thuc thanh toan
13: Hien thi thong bao len man hinh( )
Nhap thong tin khach hang() Lay khach hang() Lay bang tai khoan() opname() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPham() Cap nhat bang SanPhamTrongGioHang() Doc bang SanPhamTrongGioHang() Doc bang TaiKhoan()
Doc bang TaiKhoan() Doc bang LoaiSanPham() Cap nhat bang TaiKhoan()
Hien thi thong bao va duong dan "Toi gio hang"()
Nhan vao "Toi gio hang"()
Hien thi form thong tin mua hang()
Hien thi thong bao len man hinh()
Nhan nut "Xoa" o san pham muon xoa()
Hien thi danh sach san pham() opname()
Hien thi thong bao "Khong co san pham nao"()
Hien thi thong bao "Nhap sai thong tin" tai truong nhap sai()
Hien thi thong bao "Loi ket noi"()
GiaBan SoLuong getTenSanPham() setTenSanPham() getGiaBan() setGiaBan() getSoLuong() setSoLuong() getSanPhamTrongGioHang() deleteSanPhamTrongGioHang_bySPTGH()
Nhap khach hang() Lay khach hang() Doc bang khach hang() Nhap thong tin() Nhap khach hang() Cap nhat thong tin khach hang() Doc bang LoaiSanPham() Doc bang SanPhamTrongGioHang() Cap nhat bang SanPhamTrongGioHang() Cap nhat bang TaiKhoan()
Lay bang SanPhamTrongGioHang() Xoa san pham da chon()
Tác nhân chính Khách hàng
Tiền điều kiện Khách hàng đã đăng nhập hệ thống, Đơn hàng đã được tạo.
Use case này bắt đầu khi khách hàng click vào nút “Thanh toán” trong đơn hàng Hệ thống lấy thông tin danh sách sản phẩm, thông tin khách hàng trong bảng “DonHang” Và lưu thông tin chia tiết đơn hàng vào bảng “ChiTietDonHang” Use case kết thúc
Không kết nối được với cơ sở dữ liệu : tại bất kỳ thời điểm nào trong quá trình thực hiện use case nếu không kết nối được với cơ sở dữ liệu thì hệ thống sẽ hiển thị một thông báo lỗi và use case kết thúc
Biểu đồ thực thể quan hệ
Trang quản lý sản phẩm
Trang quản lý khách hàng
Trang quản lý đơn hàng
Trang thống kê theo sản phẩm
Thiết kế giao diện
3.1.1 Giao diện phía người dùng
XÂY DỰNG ỨNG DỤNG
Giao diện trang web
3.1.1 Giao diện phía người dùng
Hình 5 Giao diện trang giới thiệu
Hình 6 Giao diện trang danh sách sản phẩm
Hình 7 Giao diện trang tin tức
Hình 8 Giao diện trang check hóa đơn
Hình 9 Giao diện trang liên hệ
Hình 10 Giao diện đăng nhập
Hình 11 Giao diện đăng ký
3.1.2 Giao diện phía người quản trị
Hình 12 Giao diện đăng nhập
Hình 13 Giao diện trang tổng quan
Hình 14 Giao diện trang quản lý thành viên
Hình 15 Giao diện trang quản lý sản phẩm
Hình 16 Giao diện trang quản lý đơn hàng đã duyệt
Hình 17 Giao diện trang quản lý đơn hàng chưa duyệt
Hình 18 Giao diện quản lý tin tức
Hình 19 Giao diện trang quản lý khách hàng
Hình 20 Giao diện thống kê
Kiểm thử chức năng hệ thống
3.2.1 Giới thiệu về công cụ kiểm thử
Cucumber là một công cụ kiểm thử hay là một Testing Framework hỗ trợ Behavior Driven Development (BDD), cho phép người dùng định nghĩa hành vi của hệ thống với tiếng anh có ý nghĩa đơn giản bằng cách sử dụng một ngữ pháp được xác định bởi một ngôn ngữ gọi là Gherkin.
Cucumber hướng tới việc viết test case mà bất kỳ ai cũng có thể hiểu cho dù họ không có chuyên môn kĩ thuật.
Ví dụ như các nền tảng quen thuộc như Selenium thì thường chỉ người viết test hoặc có kĩ năng lập trình mới hiểu được những gì đang test, còn khách hàng hoặc các bên liên quan thì không đọc ngay code để hiểu mà họ cần hiểu qua tài liệu.
Cucumber ban đầu được thực hiện dành riêng cho ngôn ngữ Ruby và sau đó được mở rộng sang Java, cả Ruby và Java đều sử dụng Junit để chạy test Sau này là với nhiều ngôn ngữ khác và khung sườn khác như C#, Javascript, Python và cùng với framework như TestNG, specflow,
Em đã kiểm thử các chức năng và kết quả em đã ghi ở dưới.
3.2.2 Kiểm thử chức năng phía khách hàng
T Trường hợp Đầu vào Đầu ra mong muốn Kết quả
Kiểm tra chức năng đăng ký tài khoản
Nhập thông tin đăng ký hợp lệ Đăng ký thành công, tự động đăng nhập Pass
Nhập thông tin đăng ký không hợp lệ
Hệ thống hiển thị thông báo nhập sai định dạng Pass
Kiểm tra chức năng đăng nhập
Nhập thông tin tài khoản và mật khẩu hợp lệ Đăng nhập thành công, hiển thị giao diện sau đăng nhập
Nhập thông tin tài khoản và mật khẩu không hợp lệ
Hệ thống thông báo lỗi Pass
Kiểm tra chức năng đăng xuất Đăng xuất tài khoản Đăng xuất thành công, chuyển sang giao diện chưa đăng nhập
Kiểm tra chức năng đặt hàng
Thêm hàng vào giỏ và chưa đăng nhập
Hiện thị trang đăng nhập Pass
Thêm hàng vào giỏ, đăng nhập, sửa thông tin và đặt hàng
Hiển thị trang đặt hàng, đặt hàng thành công Pass
Kiểm tra chức năng xem đơn hàng Đăng nhập và xem đơn đã đặt
Hiện thị trang đơn hàng Pass
T Trường hợp Đầu vào Đầu ra mong muốn Kết quả
Kiểm tra chức năng đăng nhập
Nhập thông tin tài khoản và mật khẩu hợp lệ Đăng nhập thành công, hiển thị giao diện sau đăng nhập
Nhập thông tin tài khoản và mật khẩu không hợp lệ
Hệ thống thông báo lỗi Pass
Kiểm tra chức năng đăng xuất Đăng xuất tài khoản Đăng xuất thành công, chuyển sang giao diện đăng nhập
Kiểm tra chức năng quản lý hoa Đã đăng nhập hệ thống bằng tài khoản quản trị viên.
Xem danh sách hoa, thêm hoa, sửa thông tin hoa, xoá hoa
Kiểm tra chức năng quản lý danh sách đơn hàng Đã đăng nhập hệ thống bằng tài khoản quản trị viên.
Xem danh sách đơn hàng, xem chi tiết đơn hàng, xử lý đơn hàng, hoàn thành đơn hàng
Kiểm tra chức năng quản lý nội dung Đã đăng nhập hệ thống bằng tài khoản quản trị viên.
Xem danh sách slider, thông tin, tin tức, thêm, sửa, xóa Pass
Kiểm tra chức năng quản lý thành viên Đã đăng nhập hệ thống bằng tài khoản quản trị viên (Quyền cao nhất).
Xem danh sách thành viên, thêm, sửa, xóa thành viên
11 Kiểm tra chức năng thống kê Đã đăng nhập hệ thống bằng tài khoản quản trị viên(Quyền
Xem thống kế theo ngày, tháng, quý