1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng website bán hoa tươi sử dụng php và mysql ngành kỹ thuật phần mềm

63 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng website bán hoa tươi sử dụng PHP và MySQL
Tác giả Nguyễn Mạnh Duy
Người hướng dẫn TS. Vũ Việt Thắng
Trường học Trường Đại học Công nghiệp Hà Nội
Chuyên ngành Kỹ thuật phần mềm
Thể loại Báo cáo thực tập doanh nghiệp
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 63
Dung lượng 3 MB

Cấu trúc

  • CHƯƠNG 1: KHẢO SÁT HỆ THỐNG (6)
    • 1.1 Mô tả (6)
    • 1.2 Khảo sát (6)
      • 1.2.1 Hoạt động của khách hàng (6)
      • 1.2.2 Hoạt động của người quản trị (7)
    • 1.3 Yêu cầu chức năng và phi chức năng (7)
      • 1.3.1 Yêu cầu chức năng (7)
      • 1.3.2 Yêu cầu phi chức năng (0)
    • 1.4 Kết luận (8)
    • 1.5 Một số biểu mẫu (8)
  • CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU (0)
    • 2.1 Các chức năng của hệ thống (10)
    • 2.2 Biểu đồ usecase (0)
      • 2.2.1 Biểu đồ usecase mức tổng quát (12)
      • 2.2.2 Biểu đồ usecase phân rã (13)
    • 2.3 Mô tả chi tiết các usecase (15)
      • 2.3.1 Usecase Đăng nhập (15)
      • 2.3.2 Usecase Đăng ký (16)
      • 2.3.3 Usecase Thay đổi thông tin cá nhân khi đặt hàng (18)
      • 2.3.4 Usecase Xem hàng (20)
      • 2.3.5 Usecase Thêm hàng vào giỏ (21)
      • 2.3.6 Usecase Đặt hàng (23)
      • 2.3.7 Usecase Thanh toán (25)
      • 2.3.8 Usecase Quản lý hoa (26)
      • 2.3.9 Usecase Quản lý khách hàng (29)
      • 2.3.10 Usecase Quản lý đơn hàng (32)
      • 2.3.11 Usecase Quản lý tin tức (35)
      • 2.3.12 Usecase Thống kê (38)
      • 2.3.13 Usecase Tìm kiếm (39)
    • 2.4 Biểu đồ thực thể quan hệ (39)
    • 2.5 Thiết kế giao diện (0)
  • CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG (45)
    • 3.1 Giao diện trang web (45)
      • 3.1.1 Giao diện phía người dùng (45)
      • 3.1.2 Giao diện phía người quản trị (53)
    • 3.2 Kiểm thử chức năng hệ thống (57)
      • 3.2.1 Kiểm thử chức năng phía khách hàng (0)
      • 3.2.2 Kiểm thử chức năng phía quản trị (0)
  • KẾT LUẬN (62)
  • TÀI LIỆU THAM KHẢO (63)

Nội dung

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ý

Ngày đăng: 27/03/2024, 15:55

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w