Yêu cầu của hệ thống bán hàng - Khách hàng đặt hàng từ xa không cần phải đến cửa hàng - Khách hàng có thể dễ dàng tìm thấy thông tin chi tiết các loại sản phẩm mà họ quan tâm.. Hỗ trợ
Trang 1ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Sinh viên thực hiện
1 Nguyễn Văn Hoàng Anh
2 Nguyễn Việt Anh
Trang 2MỤC LỤC
I GIỚI THIỆU 4
1.1 Nhóm sinh viên thực hiện 4
1.2 Cách thức thực hiện 4
1.3 Công nghệ sử dụng trong project 5
II KHẢO SÁT HỆ THỐNG 5
2 Mô tả hệ thống 5
2.1 Nghiệp vụ 5
2.2 Mô tả nghiệp vụ 5
3 Mẫu biểu 7
4 Đánh giá hệ thống cũ 8
➢ Ưu điểm 8
➢ Nhược điểm 9
5 Yêu cầu đối với hệ thống mới 9
5.1 Yêu cầu của hệ thống bán hàng 9
5.2 Yêu cầu về chương trình 9
III Xây dựng mô hình chức năng 10
1 Xác định các tác nhân 10
2 Các thông tin đầu ra đầu vào của hệ thống 11
2. Biểu đồ Use case tổng quát hệ thống 12
3. Đặc tả CA sử dụng 13
3.1. CA đăng nhập 13
3.2. Tìm kiếm 15
3.1 CA quản lý sản phẩm 16
3.2 CA quản lý giỏ hàng 18
3.3. CA quản lý đơn hàng 19
3.4. CA quản lý bình luận 21
3.5. CA thống kê báo cáo 22
4. Mô hình hóa tương tác trong các Use case 24
4.1 Biểu đồ trình tự CA đăng nhập 24
5.1 CA Tìm kiếm 25
5.2 Biểu đồ trình tự CA quản lý sản phẩm 26
5.3 Biểu đồ trình tự CA thêm vào giỏ hàng 28
Trang 35.6 Biểu đồ trình tự CA quản lý bình luận 31
5.7 Biểu đồ trình tự CA thống kê báo cáo 32
6 Sơ đồ lớp 32
IV THIẾT KẾ CƠ SỞ DỮ LIỆU 33
1 Bảng Danh mục 33
2 Bảng Sản phẩm 33
3 Bảng Thành viên 34
4 Bảng Comment 34
5. Bảng Đơn hàng 35
6 Bảng chi tiết đơn hàng 35
7 Sơ đồ quan hệ 36
V THIẾT KẾ GIAO DIỆN 37
1 Giao diện người dùng 37
3.1 Trang chủ 37
3.2 Tìm kiếm 39
3.3 Chi tiết sản phẩm 41
3.4 Tìm kiếm theo danh mục 43
3.5 Giỏ hàng 45
3.6 Đặt hàng 46
4 Giao diện quản trị 47
4.1 Trang chủ quản trị 47
4.2 Quản lý danh mục 47
4.3 Quản lý sản phẩm 48
4.4 Quản lý bình luận 48
4.5 Quản lý tài khoản 49
4.6 Quản lý đơn hàng 49
Trang 4I GIỚI THIỆU
1.1 Nhóm sinh viên thực hiện
Nhóm chúng em gồm 3 thành viên cùng lớp IT-VUW17B Đại học Bách Khoa Hà Nội:
Nguyễn Phúc Tuấn - 20187351
Nguyễn Văn Hoàng Anh – 20187290
Nguyễn Việt Anh – 20187292
là giai đoạn phân chia công việc để tạo ra sản phẩm demo với nhưng gì
đã tìm hiểu, tuần cuối cùng là để test và hoàn thiện sản phẩm
Phân chia công việc trong project:
Nguyễn Phúc Tuấn:
- Phân tích thiết kế hệ thống
- Giao diện người dùng
- Giao diện admin
- Chức năng tìm kiếm
Nguyễn Văn Hoàng Anh:
- Chức năng quản lí đơn hàng
- Thống kê
- Đặt hàng
- Thiết kế CSDL Nguyễn Việt Anh:
- Giỏ hàng
- Quản lí danh mục
- Quản lí thành viên
- Quản lí sản phẩm
Trang 51.3 Công nghệ sử dụng trong project
Fontend: HTML, CSS, Javascript, Bootstrap Backend: PHP
Database: MySQL sever lưu trữ dữ liệu
Mã nguồn được lưu trữ tại:
Link Github: https://github.com/NptuanHust1/project1.git
II KHẢO SÁT HỆ THỐNG
1 Hiện trạng
Cửa hàng Quang Linh chuyên cung cấp các sản phẩm laptop, cách quản lý của cửa hàng mang tính thủ công truyền thống bằng cách khách hàng đến mua hàng trực tiếp tại cửa hàng
Trang 6và lưu hóa đơn Trong hóa đơn ghi rõ: mã hóa đơn, mã nhân viên, ngày lập, mã hàng,
số lượng, đơn giá và tổng tiền kết thúc phiên bán hàng, khách hàng được mang hàng
đã mua và hóa đơn ra khỏi cửa hàng
➢ Thống kê báo cáo
Khi quản lý cửa hàng muốn lập thống kê doanh thu của cửa hàng định kì theo tháng, theo quý, theo năm Họ sẽ tra cứu các hóa đơn từ ngày, tháng, năm đến ngày, tháng, năm Tổng hợp tổng tiền các hóa đơn thành thống kê doanh thu theo tháng, quý, năm Thông tin thống kê doanh thu theo tháng gồm có: mã thống kê doanh thu, mã hóa đơn, ngày thống kê, tổng tiền của hóa đơn, tổng tiền doanh thu Sau khi tính toán, điền đầy đủ thông tin thống kê, quản lý cửa hàng sẽ lưu lại thông tin thống kê hóa đơn bán hàng
Trang 73 Mẫu biểu
- Hóa đơn bán hàng
Trang 8- Thống kê
4 Đánh giá hệ thống cũ
➢ Ưu điểm
❖ Cơ cấu quản lý của cửa hàng chặt chẽ và logic, nếu thực hiện đúng
các nguyên tắc của quy trình quản lý thì công việc được tiến hành
chính xác đảm bảo yêu cầu
❖ Bên cạnh đó phương tiện để quản lý là giấy tờ sổ sách nên có thể
lấy và xem, tra cứu hàng tồn kho được tiến hành không cần
những điều kiện công nghệ cầu kỳ như máy móc, trang thiết bị
hiện đại…
Trang 9Hỗ trợ ôn
tập
➢ Nhược điểm
❖ Tra cứu thông tin về hàng hoá, khách hàng, lượng hàng còn trong
kho nhiều khi rất mất nhiều thời gian, thiếu chính xác
❖ Việc lưu trữ các thông tin về hàng hoá, khách hàng, tài chính… phải sử dụng nhiều loại giấy tờ, sổ sách nên rất cồng kềnh cho lưu trữ Gặp nhiều khó khăn khi phục hồi
dữ liệu bị mất
❖ Tốn nhiều thời gian tổng hợp, báo cáo, thống kê
❖ Không đáp ứng được nhu cầu thông tin phục vụ hàng ngày, đặt hàng từ xa
và mở rộng cửa hàng trong tương lai
5 Yêu cầu đối với hệ thống mới
5.1 Yêu cầu của hệ thống bán hàng
- Khách hàng đặt hàng từ xa không cần phải đến cửa hàng
- Khách hàng có thể dễ dàng tìm thấy thông tin chi tiết các loại sản phẩm
mà họ quan tâm
- Khách hàng có thể gửi ý kiến phản hồi, góp ý đến Website để góp phần
làm Website thêm phong phú và phát triển
- Hệ thống có phân quyền riêng cho từng đôi tượng sử dụng đối với một số
❖ Đảm bảo tính bảo mật của dữ liệu
❖ Hỗ trợ người cập nhật sửa đổi, tìm kiếm thông tin… thông qua các form và tính
toán các thông số
❖ Quản lý các đơn hàng, lập báo cáo định kì đột xuất, chính xác, nhanh chóng
Trang 10Hỗ trợ ôn
tập
❖ Có thể cho biết tình hình bán hàng (thống kê được danh sách các mặt hàng hiện
có, đã hết, còn tồn hay bán chạy nhất…)
❖ Lưu trữ thông tin,khả năng lưu trữ lâu dài và phục hồi thông tin dễ dàng
❖ Chương trình phải được thiết kế giao diện đẹp, khoa học, dễ sử dụng, có đầy đủ
các chức năng cần thiết như tìm kiếm, lọc danh sách, tính toán…
III Xây dựng mô hình chức năng
▪ Quản lý thông tin sản phẩm
▪ Quản lý thông tin danh mục
▪ Quản lý thông tin nhân viên
▪ Quản lý thông tin sản phẩm
▪ Xem, trả lời ý kiến, góp ý và bình luận của khách hàng
▪ Xem, xoá các thông tin của khách hàng nhưng không được quyền thay đổi thông tin đó
▪ Xem đơn hàng
Trang 112 Các thông tin đầu ra đầu vào của hệ thống
Thông tin đầu vào:
- Thông tin khách hàng
- Thông tin sản phẩm
- Thông tin danh mục
- Thông tin giỏ hàng
Trang 12Hỗ trợ ôn
tập
2 Biểu đồ Use case tổng quát hệ thống
Trang 13
Hỗ trợ ôn
tập
3 Đặc tả CA sử dụng
Tên use case Đăng nhập
Tác nhân Quản lý, nhân viên
Mô tả Mô tả quá trình đăng nhập vào hệ thống
Kích hoạt Khi người dùng muốn đăng nhập vào hệ thống
Điều kiện trước Đã có tài khoản được đăng ký trên hệ thống
Điều kiện sau Đăng nhập thành công vào hệ thống
Kịch bản chính 1 Người dùng vào ứng dụng chọn đăng nhập
2 Hệ thống hiện bảng đăng nhập
3 Hệ thống yêu cầu nhập tài khoản, mật khẩu
4 Người dùng nhập tài khoản, mật khẩu
5 Hệ thống gửi yêu cầu kiểm tra
Hệ thống kiểm tra
Trang 14( Giải quyết: người dùng chọn quên mật khẩu)
- Người dùng muốn đổi mật khẩu ( yêu cầu đăng nhập)
Ngoại lệ Không
Quyền ưu tiên Không
Tần suất sử dụng Trung bình- Cao
Quy tắc nghiệp vụ Không
Yêu cầu đặc biệt Không
Giải quyết vấn đề Không
Ghi chú Không
Trang 15Hỗ trợ ôn
tập
Tên ca sử dụng Tìm kiếm
Tác nhân Khách hàng, nhân viên, người quản lý
Mục đích Tìm kiếm thông tin sản phầm
Mô tả Tìm kiếm các sản phẩm có chứa từ khóa hoặc tên danh mục nhập
- Không có kết quả: Thông báo không có sản phẩm
Tiền điều kiện Không
Hậu điều kiện Hệ thống hiển thị danh sách sản phẩm cần tra cứu
Trang 16• Nhân viên quản lý nhập tên đăng nhập và mật khẩu đăng nhập của mình
• Hệ thống sẽ hiển thị các lựa chọn : Thêm - Sửa – Xóa hoặc Kiểm tra thông tin về sản phẩm
• Hệ thống sẽ yêu cầu chọn công việc mà họ muốn thực hiện
• Nếu chọn “Thêm một sản phẩm”, luồng sự kiện con Thêm một sản phẩm sẽ được thực hiện
• Nếu chọn “Sửa thông tin sản phẩm”, luồng sự kiện con Sửa thông tin sản phẩm sẽ được thực hiện
• Nếu chọn “Xoá một sản phẩm”, luồng sự kiện con Xoá một sản phẩm sẽ được thực hiện
- Luồng sự kiện con: Thêm một sản phẩm
• Hệ thống hiển thị form thêm sản phẩm vào hệ thống
• Hệ thống yêu cầu nhập thông tin sản phẩm, bao gồm: Mã sản phẩm, tên sản phẩm, hình ảnh, mô tả sản phẩm, đơn giá, số lượng
• Nhân viên nhập thông tin được yêu cầu
• Hệ thống tạo ra mã số tự động (duy nhất) và gán cho sản phẩm Sản phẩm được thêm và lưu vào hệ thống
Sửa đổi thông tin sản phẩm
Trang 17Hỗ trợ ôn
tập
• Hệ thống yêu cầu nhân viên nhập mã số sản phẩm
• Nhân viên nhập vào mã số sản phẩm
• Hệ thống kiểm tra mã số sản phẩm vừa nhập có tồn tại hay không?
• Nếu không tồn tại thì thực hiện luồng A1
• Hệ thống hiển thị thông tin về sản phẩm có mã số vừa nhập
• Nhân viên thực hiện việc sửa thông tin sản phẩm
• Hệ thống nhắc thủ kho việc sửa thông tin sản phẩm
• Nhân viên xác nhận lại việc sửa thông tin sản phẩm
• Hệ thống cập nhật những thay đổi vừa được thực hiện
Xoá một sản phẩm
• Hệ thống yêu cầu nhân viên nhập mã số sản phẩm
• Nhân viên nhập vào mã số sản phẩm
• Hệ thống kiểm tra mã số sản phẩm vừa nhập có tồn tại hay không?
• Nếu không tồn tại thì thực hiện luồng A1
• Hệ thống hiển thị thông tin về sản phẩm có mã số vừa nhập
• Hệ thống nhắc nhân viên xác nhận việc xoá sản phẩm
• Nhân viên xác nhận lại việc xoá sản phẩm
• Thông tin sản phẩm đó sẽ bị xoá khỏi hệ thống
- Các luồng rẽ nhánh
Luồng A1: Nhập mã số sản phẩm không tồn tại
• Hệ thống thông báo lỗi
• Hệ thống yêu cầu nhân viên nhập vào một mã số sản phẩm khác hoặc huỷ
bỏ thao tác xoá hoặc sửa
• Nếu nhân viên nhập mã số sản phẩm khác thì quay lại luồng Xoá hoặc Sửa
• Nếu nhân viên chọn hủy ca sử dụng sẽ kết thúc
c Tiền điều kiện
Nhân viên phải đăng nhập thành công vào hệ thống
Trang 18Hỗ trợ ôn
tập
d Hậu điều kiện
Nếu ca sử dụng này được thực hiện thành công, thông tin về sản phẩm sẽ được thêm vào, sửa đổi, hay xoá khỏi hệ thống Trong các trường hợp khác, hệ thống ở trong trạng thái chưa thay đổi
3.2 CA quản lý giỏ hàng
Thêm vào giỏ hàng
a) Tên ca sử dụng: Thêm vào giỏ hàng
b) Mô tả: Use Case này cung cấp chức năng thêm một Item vào giỏ hàng c) Tác nhân: Khách hàng
d) Các luồng sự kiện
Luồng sự kiện chính:
• Use Case bắt đầu khi Actor click vào button Add To Cart của một sản phẩm cụ thể
• Hệ thống sẽ tạo một giỏ hàng rồi thêm sản phẩm vào giỏ hàng
• Hệ thống thông báo thêm sản phẩm thành công và lưu dữ liệu
Luồng sự kiện thay thế:
• Nếu đã có sản phẩm trong giỏ hàng hệ thống chỉ thêm số lượng sản phẩm vào giỏ hàng
e) Tiền điều kiện: không có
f) Hậu điều kiện: không có
Trang 19Hỗ trợ ôn
tập
• Use Case bắt đầu khi Actor click vào "Đặt hàng"
• Hệ thống yêu cầu khách hàng nhập form thông tin đặt hàng
• Hệ thống hiện thông báo yêu cầu xác nhận đặt hàng
• Hệ thống hiển thị thông điệp báo cho Actor biết đã tạo đơn đặt hàng thành công và nhân viên công ty sẽ sớm liên lạc với khách hàng, đồng thời hệ thống lưu trữ dữ liệu đặt hàng vào Database
Luồng sự kiện thay thế:
• Nếu Actor hủy yêu cầu khi hệ thống yêu cầu xác nhận việc đặt hàng,
hệ thống sẽ đưa Actor trở lại màn hình quản lý sản phẩm trong giỏ hàng
Tiền điều kiện: không có
Hậu điều kiện: không có
a) Tên ca sử dụng: quản lý đơn hàng
b) Mô tả: Use case này cho phép người quản lý, nhân viên quản lý các đơn hàng
c) Tác nhân: Nhân viên, quản lý
Trang 20Hỗ trợ ôn
tập
• Hệ thống hiển thị giao diện quản lý đơn hàng
• Người quản lý chọn chức năng muốn thi hành (xóa đơn hàng)
✓ Nếu người quản lý chọn “Xóa đơn hàng”, luồng sự kiện “Xóa đơn hàng” sẽ được thực thi
Xóa đơn hàng:
• Người quản lý đơn hàng cần xóa
• Người quản lý chọn xóa đơn hàng
• Hệ thống hiện thông báo yêu cầu người quản lý xác nhận muốn xóa đơn hàng
• Người quản lý xác nhận muốn xóa đơn hàng
• Hệ thống thực hiện xóa đơn hàng
• Hệ thống thông báo đã xóa đơn hàng thành công
Luồng sự kiện thay thế:
• Hủy bỏ yêu cầu xóa đơn hàng: nếu trong luồng sự kiện “Xóa đơn hàng”, người quản trị quyết định không xóa đơn hàng, yêu cầu xóa đơn hàng sẽ bị hủy và luồng sự kiện sẽ trở lại trạng thái trước đó của luồng sự kiện tương ứng
• Sản phẩm được chọn có số lượng bằng 0: nếu trong luồng sự kiện “Thêm đơn hàng”, sản phẩm được chọn có số lượng bằng 0, hệ thống sẽ thông báo lỗi Người quản trị có thể chọn sản phẩm khác
• Sản phẩm được chọn có số lượng lớn hơn số lượng hiện có trong cơ sở dữ liệu: nếu trong luồng sự kiện “Thêm đơn hàng”, sản phẩm được chọn có số lượng lớn hơn số lượng hiện có trong cơ sở dữ liệu, hệ thống sẽ thông báo lỗi Người quản trị có thể nhập vào số lượng mới
f Tiền điều kiện: đăng nhập thành công vào hệ thống
Trang 21Hỗ trợ ôn
tập
g Hậu điều kiện:
• Nếu luồng sự kiện “Xóa đơn hàng” thực hiện thành công, đơn hàng sẽ được xóa ra khỏi hệ thống
• Ngược lại trạng thái hệ thống không thay đổi
a) Tên ca sử dụng: quản lý bình luận
b) Mô tả: Use Case cho phép nhân viên và người quản lý quản lý phản hồi, bình luận về sản phẩm
c) Tác nhân: Nhân viên, người quản lý
d) Các luồng sự kiện
Luồng sự kiện chính:
• Use case này được thực hiện khi người quản trị muốn thêm, xóa, bình luận
• Người quản trị chọn chức năng quản lý bình luận
• Hệ thống hiển thị giao diện danh sách các bình luận theo mã sản phẩm, ngày giờ
• Người quản trị chọn chức năng cần thi hành
✓ Nếu người quản trị chọn chức năng “Thêm bình luận”, luồng sự kiện “Thêm bình luận” sẽ được thực thi
✓ Nếu người quản trị chọn chức năng “Xóa bình luận”, luồng sự kiện “Xóa bình luận” sẽ được thực thi
Thêm bình luận:
• Hệ thống yêu cầu người quản trị nhập thông tin của bình luận
Trang 22Hỗ trợ ôn
tập
• Khi người quản trị cung cấp đầy đủ thông tin, hệ thống sẽ lấy mã sản phẩm tương ứng với sản phẩm và tạo mã bình luận mới cho sản phẩm được thêm vào ( mã bình luận là duy nhất) bình luận mới được lưu vào cơ sở dữ liệu (mã bình luận, nội dung, mã sản phẩm, ngày giờ)
• Hệ thống thông báo đã thêm bình luận mới thành công
Xóa bình luận:
• Người quản trị chọn bình luận cần xóa
• Người quản trị chọn xóa bình luận
• Hệ thống hiện thông báo yêu cầu người quản trị xác nhận muốn xóa bình luận
• Người quản trị xác nhận muốn xóa bình luận
• Hệ thống thực hiện xóa bình luận
• Hệ thống thông báo đã xóa bình luận thành công
Luồng sự kiện thay thế:
• Từ chối xác nhận: nếu trong các luồng sự kiện trên, người quản trị
từ chối xác nhận các thao tác tương ứng, hệ thống sẽ trở lại trạng thái trước đó của từng luồng sự kiện tương ứng
f Tiền điều kiện: đăng nhập thành công hệ thống
g Hậu điều kiện: Nếu use case thực hiện thành công, bình luận sẽ được thêm, xóa ra khỏi hệ thống Ngược lại, trạng thái của hệ thống không thay đổi
• Tên ca sử dung: Thống kê báo cáo
• Tác nhân: người quản lí
Trang 23Hê ̣thống sẽ hiển thi ̣thông tin hàng bán
- Hiển thị bảng thống kê theo doanh thu , số lượng và in hoặc lưu báo cáo của hệ thống
• Luồng sự kiện phụ : không cập nhập được tự cơ sở dữ liệu thì làm lại
• Tiền điều kiện: Đăng nhập vào hệ thống
• Hậu điều kiện: đưa ra báo cáo thống kê
Trang 24Hỗ trợ ôn
tập
4 Mô hình hóa tương tác trong các Use case
4.1 Biểu đồ trình tự CA đăng nhập
Trang 25Hỗ trợ ôn
tập
5.1 CA Tìm kiếm