HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN Phân tích Thiết kế Hệ thống Thông tin Đề tài: Xây dựng hệ thống bán sách online
Nhóm sinh viên thực hiện : Nguyễn Mạnh Cường
Nguyễn Xuân Pháp Nguyễn Trọng Minh
Lớp : D11CNPM2. Hà nội, tháng 11 năm 2014
Xây dựng hệ thống bán sách online I. XÁC ĐỊNH YÊU CẦU……………………………….3
II. PHÂN TÍCH YÊU CẦU……………………………...23
III. THIẾT KẾ KIẾN TRÚC……………………………32
IV. THIẾT KẾ HỆ THỐNG…………………………….33
V. CODE VÀ DEMO…………………………………...34
2
Xây dựng hệ thống bán sách online
I. XÁC ĐỊNH YÊU CẦU. A. Xác định yêu cầu nghiệp vụ.
1. Xác định và mô tả các tác nhân.
- Các tác nhân:
- Nhân viên quản lý (Staff Manager): người quản lý nhân viên thực hiện thêm, sửa, xóa và tra cứu thông tin của nhân viên. Cũng là người quản lý khách hàng, có thể xem và xóa thông tin khách hàng thành viên. - Nhân viên kho (Staff Store): là người quản lý sách thực hiện thêm, sửa, xóa và tra cứu thông tin sách trong kho. - Nhân viên bán hàng (Seller): là người quản lý đơn đặt hàng bao gồm các công việc xem đơn đặt hàng và tạo hóa đơn gửi kèm cho khách hàng khi giao hàng. - Khách hàng (Customer): là người có thể xem một phần thông tin sách, đặt sách, gửi đơn đặt hàng hoặc đăng ký để trở thành khách hàng thành viên. Nếu là khách hàng thành viên thì có thể thay đổi thông tin cá nhân, nạp thêm tiền vào tài khoản. Khách hàng thành viên sẽ hưởng ưu đãi khi mua sách bằng số tiền đã nạp trong tài khoản.
- Bảng Thuật ngữ và xác định mô tả các chức năng nghiệp vụ:
STT Tiếng anh Tiếng Việt Mô tả 1 Người quản lý nhân viên và khách hàng
Nhân viên quản lý
2 Staff Manager Staff Store Nhân viên Người quản lý sách
3 Seller
Kho Nhân viên Bán hàng Người quản lý đơn đặt hàng của khách hàng
4 5 Chức năng thêm nhân viên mới
6 Chức năng sửa thông tin nhân viên
7 Chức năng xóa nhân viên
8 Chức năng tìm kiếm nhân viên
9
Customer Khách hàng Người đặt sách thông qua giao diện web Add Employee Edit Employee Delete Employee Search Employee Delete Customer
Thêm nhân viên Sửa nhân viên Xóa nhân viên Tìm kiếm nhân viên Xóa khách hàng thành viên
10 View
Chức năng xóa khách hàng, những khách hàng có những thông tin ảo nếu đặt hàng mà không thể liên lạc được hoặc thông tin thiếu chính xác sẽ bị xóa tài khoản Chức năng xem đầy đủ mọi thông tin của khách hàng Customer
Xem thông tin Khách hàng
3
Xây dựng hệ thống bán sách online
11 Chức năng tìm kiếm khách hàng
Search Customer 12 Add Card Bank
Tìm kiếm khách hàng Thêm thông tin thẻ ngan hàng
13 Del Card
Bank Khi trang cửa hàng liên kết với ngân hàng nào đó, người quản lý sẽ nhập thông tin về thẻ thanh toán của ngân hàng đó, nếu khách hàng thanh toán nhập đúng thông tin về thẻ thì có thể thanh toán bằng thẻ đó Chức năng cho phép người quản lý xóa thông tin thẻ
14
Search Card Bank Chức năng cho phép người quản lý tìm kiếm thông tin thẻ
Xóa thông tin thẻ ngân hàng Tìm kiếm thông tin thẻ ngân hàng
Chức năng sửa sách Chức năng xóa sách Edit Book Sửa sách Xóa sách
18 Chức năng tìm kiếm sách
19 Chức năng tìm kiếm đơn đặt hàng
15 Add Book Thêm sách Chức năng thêm sách 16 17 Delete Book Search Book Search Orders
Tìm kiếm sách Tìm kiếm đơn đặt hàng
20 Create Bill Tạo hóa Chức năng tạo hóa đơn
21 View Book
22 Add to
Cart Chức năng cho phép khách hàng xem một số thông tin về sách Chức năng thêm những quyển sách mà khách hàng muốn đặt vào giỏ hàng
đơn Xem thông tin sách Thêm sách vào giỏ hàng
23 View Cart Xem giỏ
hàng
24 Edit Cart
Sửa giỏ hàng
25 Save Cart Lưu giỏ
26
Set Shipping
hàng Điền thông tin giao hàng Chức năng cho phép khách hàng xem danh sách những quyển sách đã cho vào giỏ hàng Chức năng cho phép khách hàng thay đổi về số lượng đầu sách đã đặt hoặc xóa bỏ sách đã cho vào giỏ hàng Chức năng cho phép khách hàng thành viên lưu giỏ hàng của mình Khách hàng điền các thồn tin yêu cầu để thực hiện gửi đơn đặt hàng đến cho nhân viên bán hàng
4
Xây dựng hệ thống bán sách online
27 Payment Thanh toán Chức năng thanh toán, trước khi điền
28 Sent Order Gửi đơn đặt
29 Register hàng Đăng ký
30
thông tin giao hàng, khách hàng phải thực hiện thanh toán Chức năng gửi đơn đặt hàng cho nhân viên bán hàng Chức năng cho phép khách hàng đăng ký để trở thành khách hàng thành viên Chức năng cho phép khách hàng thành viên thay đổi thông tin cá nhân của mình Change Profile
Thay đổi thông tin cá nhân
31 Extra Coin Thêm tiền
Chức năng cho phép khách hàng thành viên nạp thêm tiền vào tài khoản
trong tài khoản
B. Xác định yêu cầu hệ thống.
1. Xác định các ca sử dụng và sơ đồ ca sử dụng.
Sơ đồ tổng quát
5
Xây dựng hệ thống bán sách online
Các Use Case trừu tượng: Manage Employee: Quản lý Nhân viên Manage Customer: Quản lý Khách hàng thành viên Manage Orders: Quản lý Đơn đặt hàng Manage Book: Quản lý Sách Use Website: Tác động của khách hàng với hệ thống thông
qua trang web
Order: Những tác động tới hệ thông tìm kiếm, xem thông tin sách, đặt sách, thêm sách vào giỏ hàng, gửi đơn đặt hàng
Sơ đồ use case phân rã của nhân viên quản lý
Mô tả: Staff Manager sau khi đăng nhập có thể chọn các chức năng
Add Employee, Search Customer. Muốn Edit Employee hoặc Delete Employee thì Staff Manager phải View Employee trước. Tương tự, Staff Manager muốn Delete Customer thì phải View Customer và phải Search Customer trước đó. Staff Manager có thể Add Card Bank, Search Card Bank, Muốn Delete Card Bank, Staff Manager phải Search Card Bank trước
6
Xây dựng hệ thống bán sách online
Sơ đồ use case phân rã của nhân viên kho
Mô tả: Staff Store sau khi đăng nhập có thể chọn các chức năng Add
Book, Search Book, Change Password Muốn Edit Book hoặc Delete Book thì Staff Store phải View Book trước.
Sơ đồ use case phân rã của nhân viên bán hàng
7
Xây dựng hệ thống bán sách online
Mô tả: Seller sau khi đăng nhập có thể Search Order sau đó chọn View Orders hay không. Sau khi chọn View Orders, Seller có thể chọn Create Bill Seller sau khi đăng nhập cũng có thể Change Password
Sơ đồ use case phân rã của khách hàng
Mô tả: Customer sau khi truy cập trang web cửa hàng thành công sẽ có
thể chọn Register, Login hoặc chức năng Search Book Muốn Login, Customer phải có tài khoản tức là đã từng Register. Sau khi Register, Customer có thể chọn Login hay không. Customer sau khi đăng nhập có thể Change Profile hoặc thêm tiền vào tài khoản bằng chức năng Extra Coin (tài khoản cửa hàng được thêm bằng thẻ điện thoại với tỉ lệ Thẻ điện thoại 50.000 VND = 60.000 KCoin, 100.000 VND = 120.000 KCoin). Nếu nạp thẻ điện thoại vào tài khoản thì Customer được lợi hơn khi mua sách cùng giá bằng tài khoản ngân hàng. Nếu Customer chọn Search Book sau đó có thể chọn View Book để xem thông tin về sách đã chọn. Customer có quyền Add to Cart hoặc không. Sau đó Customer nếu muốn xem những quyển sách đã cho vào giỏ hàng thì chọn chức năng View Cart, Trong View Cart, Customer có thể sửa hoặc xóa những đầu sách đã để vào giỏ bằng chức năng Edit Cart. Khi muốn lưu giỏ hàng,
8
Xây dựng hệ thống bán sách online
Customer phải đăng nhập trước rồi mới có thể Save Cart. Khi muốn đặt hàng sách, Customer chọn chức năng Sent Orders. Để thực hiện Sent Orders, Customer phải thực hiện Set Shipping gồm thông tin khách hàng, thông tin giao hàng. Hoàn tất Set Shipping, Customer phải Payment. Chỉ khi Payment thì yêu cầu đặt hàng của khách hàng mới gửi đến nhân viên bán hàng.
2. Xây dựng kịch bản.
1. Kịch bản Login của Staff (Staff Manager, Staff Store, Seller)
Login Staff Staff có tài khoản để đăng nhập Staff đăng nhập được vào hệ thống
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện Chuỗi sự kiện chính
1. Staff chọn chức năng Login trên giao diện hệ thống 2. Hệ thống hiển thị form Login 3. Staff nhập tài khoản và mật khẩu của mình và nhấn nút Đăng
nhập
4. Hệ thống hiển thị giao diện tương ứng với tác nhân
Ngoại lệ
3.1. Staff nhập sai tài khoản và mật khẩu
3.1.1. Hệ thống thông báo sai tài khoản mật khẩu yêu cầu Staff
nhập lại
2. Kịch bản Add Employee của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Add Employee Staff Manager Staff Manager đăng nhập thành công vào hệ thống Staff Manager thêm nhân viên thành công
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Add Employee sau khi đăng
nhập
2. Hệ thống hiển thị form Add Employee gồm mã nhân viên, tài khoản nhân viên, mật khẩu nhân viên, họ tên nhân viên (họ, tên đệm, tên), địa chỉ nhân viên (số nhà/ngõ/ngách, phường/xã, quận/huyện, tỉnh thành),ngày sinh, số điện thoại, email, chức vụ (nhân viên kho hoặc nhân viên bán hàng)
9
Xây dựng hệ thống bán sách online
3. Staff Manager nhập thông tin cần thiết và nhấn nút Thêm nhân
viên
4. Hệ thống thông báo thêm nhân viên thành công
Ngoại lệ
3.1. Staff Manager nhập mã nhân viên đã có trong cơ sở dữ liệu hệ
thống
3.1.1. Hệ thống thông báo mã nhân viên đã tồn tại và yêu cầu Staff
Manager nhập lại
3. Kịch bản Search Employee của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Search Employee Staff Manager Staff Manager đăng nhập thành công vào hệ thống Staff Manager tìm kiếm được nhân viên muốn tìm
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Search Employee sau khi đăng
nhập
2. Hệ thống hiển thị form tìm kiếm 3. Staff Manager nhập tên nhân viên muốn tìm và nhấn nút tìm
kiếm
4. Hệ thống hiển thị danh sách nhân viên có tên thỏa mãn
Ngoại lệ
3.1. Staff Manager nhập tên nhân viên không có trong cơ sở dữ
liệu
3.1.1. Hệ thống thông báo không có nhân viên Staff Manager
muốn tìm
4. Kịch bản View Employee của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
View Employee Staff Manager Staff Manager tìm kiếm nhân viên thành công Staff Manager xem được tất cả thông tin nhân viên đã chọn
Chuỗi sự kiện chính
1. Staff Manager chọn nhân viên từ danh sách tìm kiếm nhân viên
trả về và chọn chức năng View Employee
2. Hệ thống hiển thị thông tin của nhân viên đã chọn
10
Xây dựng hệ thống bán sách online
5. Kịch bản Edit Employee của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Edit Employee Staff Manager Staff Manager xem thông tin của nhân viên muốn sửa Staff Manager sửa được thông tin nhân viên
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Edit Employee sau khi xem
thông tin chi tiết về nhân viên đã chọn 2. Hệ thống hiển thị form sửa nhân viên 3. Staff Manager sửa lại thông tin của nhân viên và nhấn nút cập
nhật
4. Hệ thống thông báo sửa nhân viên thành công
6. Kịch bản Delete Employee của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Delete Employee Staff Manager Staff Manager xem thông tin của nhân viên muốn xóa Staff Manager xóa được nhân viên khỏi cơ sở dự liệu
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Delete Employee sau khi xem
thông tin chi tiết về nhân viên đã chọn
2. Hệ thống hiển thị form hỏi Staff Manager có muốn xóa nhân
viên đã chọn không
3. Staff Manager nhấn nút có 4. Hệ thống thông báo xóa nhân viên thành công
Ngoại lệ
3.1. Staff Manager nhấn nút không
3.1.1. Hệ thống trở về form xem thông tin nhân viên
7. Kịch bản Search Customer của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Search Customer Staff Manager Staff Manager đăng nhập thành công vào hệ thống
11
Xây dựng hệ thống bán sách online
Hậu điều kiện
Staff Manager tìm kiếm được khách hàng thành viên muốn tìm
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Search Customer sau khi đăng
nhập
2. Hệ thống hiển thị form tìm kiếm 3. Staff Manager chọn tìm kiếm theo tên, theo phường/xã, theo quận/huyện, theo tỉnh thành và nhập từ khóa và nhấn nút tìm kiếm
4. Hệ thống hiển thị danh sách nhân viên có yêu cầu tìm kiếm thỏa
mãn
Ngoại lệ
3.1. Staff Manager nhập từ khóa không có trong cơ sở dữ liệu 3.1.1. Hệ thống thông báo không có khách hàng thành viên mà
Staff Manager muốn tìm
8. Kịch bản View Customer của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
View Customer Staff Manager Staff Manager tìm kiếm khách hàng thành công Staff Manager xem được tất cả thông tin khách hàng đã chọn
Chuỗi sự kiện chính
1. Staff Manager chọn khách hàng từ danh sách tìm kiếm khách
hàng trả về và chọn chức năng View Customer 2. Hệ thống hiển thị thông tin của khách hàng đã chọn
9. Kịch bản Delete Customer của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Delete Customer Staff Manager Staff Manager xem thông tin của khách hàng muốn xóa Staff Manager xóa được khách hàng khỏi cơ sở dự liệu
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Delete Customer sau khi xem
thông tin chi tiết về khách hàng đã chọn
2. Hệ thống hiển thị form hỏi Staff Manager có muốn xóa khách
hàng đã chọn không
12
Xây dựng hệ thống bán sách online
3. Staff Manager nhấn nút có 4. Hệ thống thông báo xóa khách hàng thành công
Ngoại lệ
3.1. Staff Manager nhấn nút không
3.1.1. Hệ thống trở về form xem thông tin khách hàng
10. Kịch bản Add Card Bank của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Add Card Bank Staff Manager Staff Manager đăng nhập thành công vào hệ thống Staff Manager thêm thông tin thẻ ngân hàng thành công
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Add Card Bank sau khi đăng
nhập
2. Hệ thống hiển thị form Add Card Bank gồm mã thẻ, loại thẻ,
tên ghi trên thẻ, mã số trên thẻ, ngày cấp thẻ.
3. Staff Manager nhập thông tin cần thiết và nhấn nút Thêm thẻ 4. Hệ thống thông báo thêm thẻ thành công
Ngoại lệ
3.1. Staff Manager nhập mã thẻ đã có trong cơ sở dữ liệu hệ thống
3.1.1. Hệ thống thông báo mã thẻ đã tồn tại và yêu cầu Staff
Manager nhập lại
11. Kịch bản Search Cart Bank của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Search Card Bank Staff Manager Staff Manager đăng nhập thành công vào hệ thống Staff Manager tìm kiếm được thẻ ngân hàng muốn tìm
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Search Card Bank sau khi đăng
nhập
2. Hệ thống hiển thị form tìm kiếm 3. Staff Manager nhập mã số trên thẻ muốn tìm và nhấn nút tìm
kiếm
4. Hệ thống hiển thị thông tin về thẻ có mã số trên thẻ thỏa mãn
Ngoại lệ
3.1. Staff Manager nhập mã số trên thẻ không có trong cơ sở dữ
liệu
13
Xây dựng hệ thống bán sách online
3.1.1. Hệ thống thông báo không có thẻ mà Staff Manager muốn
tìm
12. Kịch bản Delete Card Bank của Staff Manager
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Delete Card Bank Staff Manager Staff Manager tìm kiếm được thông tin về thẻ muốn xóa Staff Manager xóa được thông tin thẻ khỏi cơ sở dự liệu
Chuỗi sự kiện chính
1. Staff Manager chọn chức năng Delete Card Bank sau chọn thẻ
đã tìm kiếm được
2. Hệ thống hiển thị form hỏi Staff Manager có muốn xóa thẻ đã
chọn không
3. Staff Manager nhấn nút có 4. Hệ thống thông báo xóa thẻ thành công
Ngoại lệ
3.1. Staff Manager nhấn nút không
3.1.1. Hệ thống trở về form kết quả tìm kiếm của tìm kiếm thẻ
13. Kịch bản Change Password của Staff Store
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
Change Password Staff Store Staff Store đăng nhập thành công Staff Store thay đổi được mật khẩu tài khoản của mình
Chuỗi sự kiện chính
1. Staff Store chọn chức năng Change Password sau khi đăng
nhập thành công
2. Hệ thống hiển thị form Changer Password 3. Staff Store nhập mật mật khẩu mới và nhấn nút đổi mật khẩu 4. Hệ thống thông báo đổi mật khẩu thành công
14. Kịch bản Add Book của Staff Store
Tên Use Case Tác nhân chính Tiền điều kiện
Add Book Staff Store Staff Store đăng nhập thành công vào hệ thống Staff Store thêm sách thành công
Hậu điều kiện Chuỗi sự kiện chính
14
Xây dựng hệ thống bán sách online
1. Staff Store chọn chức năng Add Store sau khi đăng nhập 2. Hệ thống hiển thị form Add Store gồm mã sách, tên sách, tên tác
giả, nhà xuất bản, năm xuất bản, mô tả, giá, số lượng 3. Staff Store nhập thông tin cần thiết và nhấn nút Thêm sách 4. Hệ thống thông báo thêm sách thành công
Ngoại lệ
3.1. Staff Store nhập mã sách đã có trong cơ sở dữ liệu hệ thống 3.1.1. Hệ thống thông báo mã sách đã tồn tại và yêu cầu Staff
Store nhập lại
15. Kịch bản Search Book của Staff Store
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Search Book Staff Store Staff Store đăng nhập thành công vào hệ thống Staff Store tìm kiếm được sách muốn tìm
Chuỗi sự kiện chính
1. Staff Store chọn chức năng Search Book sau khi đăng nhập 2. Hệ thống hiển thị form tìm kiếm 3. Staff Store chọn tìm kiếm theo tên sách, theo tên tác giả, theo
nhà xuất bản, theo năm xuất bản, theo số lượng nhỏ hơn một con số nào đó
4. Hệ thống hiển thị danh sách sách có yêu cầu tìm kiếm thỏa mãn
Ngoại lệ
3.1. Staff Store nhập từ khóa không có trong cơ sở dữ liệu
3.1.1. Hệ thống thông báo không có sách mà Staff Store muốn tìm
16. Kịch bản View Book của Staff Store
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
View Book Staff Store Staff Store tìm kiếm sách thành công Staff Store xem được tất cả thông tin sách đã chọn
Chuỗi sự kiện chính
1. Staff Store chọn sách từ danh sách tìm kiếm sách trả về và chọn
chức năng View Book
2. Hệ thống hiển thị thông tin của sách đã chọn
17. Kịch bản Edit Book của Staff Store
Tên Use Case Edit Book
15
Xây dựng hệ thống bán sách online
Tác nhân chính Tiền điều kiện
Staff Store Staff Store xem thông tin của sách muốn sửa Staff Store sửa được thông tin sách
Hậu điều kiện Chuỗi sự kiện chính
1. Staff Store chọn chức năng Edit Store sau khi xem thông tin chi
tiết về sách đã chọn
2. Hệ thống hiển thị form sửa sách 3. Staff Store sửa lại thông tin của Sách và nhấn nút cập nhật 4. Hệ thống thông báo sửa sách thành công
18. Kịch bản Delete Book của Staff Store
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Delete Book Staff Store Staff Store xem thông tin của sách muốn xóa Staff Store xóa được sách khỏi cơ sở dự liệu
Chuỗi sự kiện chính
1. Staff Store chọn chức năng Delete Book sau khi xem thông tin
chi tiết về sách đã chọn
2. Hệ thống hiển thị form hỏi Staff Store có muốn xóa sách đã chọn
không
3. Staff Store nhấn nút có 4. Hệ thống thông báo xóa sách thành công
Ngoại lệ
3.1. Staff Store nhấn nút không
3.1.1. Hệ thống trở về form xem thông tin sách
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
19. Kịch bản Change Password của Seller Change Password Seller Seller đăng nhập thành công Seller thay đổi được mật khẩu tài khoản của mình
Chuỗi sự kiện chính
1. Seller chọn chức năng Change Password sau khi đăng nhập
thành công
2. Hệ thống hiển thị form Changer Password 3. Seller nhập mật mật khẩu mới và nhấn nút đổi mật khẩu 4. Hệ thống thông báo đổi mật khẩu thành công
16
Xây dựng hệ thống bán sách online
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
20. Kịch bản Search Orders của Seller Search Orders Seller Seller đăng nhập thành công vào hệ thống Seller tìm kiếm được đơn đặt hàng muốn tìm
Chuỗi sự kiện chính
1. Seller chọn chức năng Search Orders sau khi đăng nhập 2. Hệ thống hiển thị form tìm kiếm 3. Seller chọn tìm kiếm theo ngày, nhập từ khóa tìm kiếm và nhấn
nút tìm kiếm
4. Hệ thống hiển thị danh sách đơn đặt hàng có yêu cầu tìm kiếm
thỏa mãn
Ngoại lệ
3.1. Seller nhập từ khóa không có trong cơ sở dữ liệu
3.1.1. Hệ thống thông báo không có sách mà Seller muốn tìm
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
21. Kịch bản View Orders của Seller View Orders Seller Seller tìm kiếm đơn đặt hàng thành công Seller xem được tất cả thông tin đơn đặt hàng đã chọn
Chuỗi sự kiện chính
1. Seller chọn đơn đặt hàng từ danh sách tìm kiếm đơn đặt hàng trả
về và chọn chức năng View Orders
2. Hệ thống hiển thị thông tin của đơn đặt hàng đã chọn gồm mã đơn đặt hàng, tên khách hàng, ngày sinh, số điện thoại, địa chỉ giao hàng, danh sách sách khách hàng đặt, hình thức thanh toán của khách hàng, tổng số tiền khách hàng đã thanh toán.
22. Kịch bản Create Bill của Seller Create Bill Tên Use Case
17
Xây dựng hệ thống bán sách online
Seller Seller xem đơn đặt hàng thành công Seller tạo được hóa đơn
Tác nhân chính Tiền điều kiện Hậu điều kiện Chuỗi sự kiện chính
1. Seller chọn chức năng Create Bill sau khi xem chi tiết đơn đặt
hàng
2. Hệ thống hiển thị form Create Bill gồm mã hóa đơn, tên khách
hàng, ngày sinh, số điện thoại, địa chỉ giao hàng, danh sách sách khách hàng đặt, hình thức thanh toán của khách hàng, tổng số tiền khách hàng đã thanh toán, tên nhân viên tạo hóa đơn
3. Seller xem lại thông tin và nhấn nút tạo hóa đơn.
23. Kịch bản Register của Customer
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Register Customer Customer truy cập trang web thành công Customer đăng ký tài khoản thành công
Chuỗi sự kiện chính
1. Customer chọn chức năng Register sau khi truy cập trang web
của cửa hàng
2. Hệ thống hiển thị form Register gồm tài khoản, mật khẩu, họ tên
khách hàng (họ, tên đệm, tên), địa chỉ (số nhà/ngõ/ngách, phường/xã, quận/huyện, tỉnh thành), ngày sinh, số điện thoại, email
3. Customer nhập đầy đủ thông tin và nhấn nút Đăng ký 4. Hệ thống thông báo đăng ký thành công
Ngoại lệ
3.1. Customer nhập tên tài khoản đã tồn tại
3.1.1. Hệ thống thông báo tài khoản đã tồn tại và yêu cầu
Customer nhập lại
24. Kịch bản Login của Customer
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
Login Customer Customer có tài khoản để đăng nhập Customer đăng nhập được vào hệ thống
Chuỗi sự kiện chính
1. Customer chọn chức năng Login sau khi truy cập trang web
18
Xây dựng hệ thống bán sách online
2. Hệ thống hiển thị form Login 3. Customer nhập tài khoản và mật khẩu của mình và nhấn nút
Đăng nhập
4. Hệ thống thông báo đăng nhập thành công và hiện trang chủ của
trang web
Ngoại lệ
3.1. Customer nhập sai tài khoản và mật khẩu
3.1.1. Hệ thống thông báo sai tài khoản mật khẩu yêu cầu
Customer nhập lại
25. Kịch bản Change Profile của Customer
Tên Use Case Tác nhân chính Tiền điều kiện
Change Profile Customer Customer đã đăng nhập trang web thành công Customer đổi được thông tin cá nhân
Hậu điều kiện Chuỗi sự kiện chính
1. Customer chọn chức năng Change Profile sau khi đăng nhập
trang web
2. Hệ thống hiển thị form Change Profile 3. Customer sửa thông tin cá nhân của mình và nhấn nút cập nhật 4. Hệ thống thông báo thay đổi thông tin thành công
26. Kịch bản Extra Coin của Customer
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Extra Coin Customer Customer đã đăng nhập trang web thành công Customer thêm số dư tài khoản thành công
Chuỗi sự kiện chính
1. Customer chọn chức năng Extra Coin sau khi đăng nhập trang
web
2. Hệ thống hiển thị form Extra Coin gồm loại thẻ cào, mã thẻ cào 3. Customer chọn loại thẻ cào và nhập mã thẻ cào và nhấn nút nạp
thẻ
4. Hệ thống thông báo nạp thẻ thành công
Ngoại lệ
3.1. Customer nhập sai mã thẻ cào
3.1.1. Hệ thống thông báo mã thẻ cào không đúng và yêu cầu nhập
lại
19
Xây dựng hệ thống bán sách online
27. Kịch bản Search Book của Customer
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Search Book Customer Customer truy cập trang web thành công Customer tìm kiếm được sách muốn tìm
Chuỗi sự kiện chính
1. Customer chọn chức năng Search Book sau khi truy cập trang
web
2. Hệ thống hiển thị form tìm kiếm 3. Customer chọn tìm kiếm theo tên sách, theo tên tác giả, theo nhà
xuất bản, theo năm xuất bản
4. Hệ thống hiển thị danh sách sách có yêu cầu tìm kiếm thỏa mãn
Ngoại lệ
3.1. Customer nhập từ khóa không có trong cơ sở dữ liệu
3.1.1. Hệ thống thông báo không có sách mà Customer muốn tìm
28. Kịch bản View Book của Customer
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
View Book Customer Customer tìm kiếm sách thành công Customer xem được một số thông tin sách đã chọn
Chuỗi sự kiện chính
1. Customer chọn sách từ danh sách tìm kiếm sách trả về và chọn
chức năng View Book
2. Hệ thống hiển thị thông tin của sách đã chọn
29. Kịch bản Add to Cart của Customer
Tên Use Case Tác nhân chính Tiền điều kiện
Hậu điều kiện
Add to Cart Customer Customer xem thông tin sách thành công Customer thêm được sách đã chọn vào cửa hàng
Chuỗi sự kiện chính
1. Customer chọn chức năng Add to Cart sau khi xem thông tin
sách đã chọn
20
Xây dựng hệ thống bán sách online
2. Hệ thống thông báo thêm giỏ hàng thành công
30. Kịch bản View Cart của Customer
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
View Cart Customer Customer giỏ hàng đã có sách Customer xem được những đầu sách đã đặt trong giỏ hàng
Chuỗi sự kiện chính
1. Customer chọn chức năng View Cart sau khi thêm sách vào giỏ 2. Hệ thống hiển thị danh sách đầu sách trong giỏ hàng bao gồm tên
sách, giá, số lượng, thành tiền
31. Kịch bản Edit Cart của Customer
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
Edit Cart Customer Customer xem giỏ hàng thành công Customer sửa được thông tin về đặt sách trong giỏ hàng
Chuỗi sự kiện chính
1. Customer chọn chức năng Edit Cart sau khi xem giỏ hàng 2. Hệ thống hiển thị form Edit Cart cho phép Customer thay đổi số
lượng sách hoặc bỏ sách khỏi giỏ hàng
3. Customer sửa giỏ hàng và nhấn nút Cập nhật 4. Hệ thống thông báo cập nhật giỏ hàng thành công
32. Kịch bản Save Cart của Customer
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện
Save Cart Customer Customer xem giỏ hàng thành công Customer lưu được thông tin về đặt sách trong giỏ hàng
Chuỗi sự kiện chính
1. Customer chọn chức năng Save Cart sau khi xem giỏ hàng 2. Hệ thống hiển thị form Login yêu cầu Customer đăng nhập 3. Customer nhập tài khoản, mật khẩu và nhấn nút Đăng nhập 4. Hệ thống thông báo lưu giỏ hàng thành công
Ngoại lệ
21
Xây dựng hệ thống bán sách online
3.1. Customer đăng nhập không thành công
3.1.1. Hệ thống yêu cầu Customer nhập lại tài khoản, mật
khẩu
33. Kịch bản Sent Orders của Customer
Sent Orders Customer Customer xem giỏ hàng thành công Customer gửi được yêu cầu đặt hàng
Tên Use Case Tác nhân chính Tiền điều kiện Hậu điều kiện Chuỗi sự kiện chính
1. Customer chọn chức năng Sent Order sau khi truy cập trang
web
2. Hệ thống hiển thị form hỏi Customer muốn đăng nhập hay không 3. Customer chọn
3.1. Customer chọn có đăng nhập
3.1.1. Hệ thống hiển thị form đăng nhập 3.1.2. Customer nhập tài khoản, mật khẩu và nhấn nút đăng
nhập
3.1.3. Hệ thống thông báo đăng nhập thành công 3.1.4. Customer nhấn nút tiếp tục 3.2. Customer chọn không đăng nhập
3.2.1. Hệ thống hiển thị form thông tin khách hàng gồm họ tên
(họ, tên đệm, tên), ngày sinh, số điện thoại, địa chỉ liên lạc (số nhà/ngõ/ngách, phường/xã, quận/huyện, tỉnh thành)
3.2.2. Customer nhập thông tin và nhấn nút tiếp tục
4. Hệ thống hiển thị form địa chỉ giao hàng 5. Customer nhập địa chỉ giao hàng (số nhà/ngõ/ngách, phường/xã, quận/huyện, tỉnh thành). Đối với Customer đã đăng nhập hệ thống điền sẵn thông tin địa chỉ của khách hàng đó và cho phép khách hàng sửa lại. Khách hàng nhấn nút tiếp tục
6. Hệ thống hiển thị form Payment gồm ô chọn loại thẻ, tên in trên thẻ, mã số thẻ, ngày phát hành và ô chọn thanh toán bằng tài khoản cửa hàng cho Customer đã đăng nhập
7. Customer nhập thông tin cần thiết và chọn nút Hoàn tất 8. Hệ thống thông báo thanh toán và đặt hàng thành công
Ngoại lệ
3.1.1 Customer đăng nhập không thành công 6.1. Customer nhập sai thông tin
6.1.1. Hệ thống yêu cầu nhập lại thông tin
22
Xây dựng hệ thống bán sách online
II. PHÂN TÍCH YÊU CẦU.
1. Sơ đồ giao tiếp.
1. Sơ đồ giao tiếp Login của Staff
2. Sơ đồ giao tiếp Add Employee của Staff Manager
3. Sơ đồ giao tiếp Edit Employee của Staff Manager
23
Xây dựng hệ thống bán sách online
4. Sơ đồ giao tiếp Delete Employee của Staff Manager
5. Sơ đồ giao tiếp Delete Customer của Staff Manager
6. Sơ đồ giao tiếp Add Card Bank của Staff Manager
24
Xây dựng hệ thống bán sách online
7. Sơ đồ giao tiếp Delete Card Bank của Staff Manager
8. Sơ đồ giao tiếp Change Password của Staff
9. Sơ đồ giao tiếp Add Book của Staff Store
25
Xây dựng hệ thống bán sách online
10. Sơ đồ giao tiếp Edit Book của Staff Store
11. Sơ đồ giao tiếp Delete Book của Staff Store
26
Xây dựng hệ thống bán sách online
12. Sơ đồ giao tiếp Create Bill của Seller
13. Sơ đồ giao tiếp Register của Customer
14. Sơ đồ giao tiếp Change Profile của Customer
27
Xây dựng hệ thống bán sách online
15. Sơ đồ giao tiếp Extra Coin của Customer
16. Sơ đồ giao tiếp Add To Cart của Customer
16. Sơ đồ giao tiếp Edit Cart của Customer
28
Xây dựng hệ thống bán sách online
17. Sơ đồ giao tiếp Save Cart của Customer
29
Xây dựng hệ thống bán sách online
18. Sơ đồ giao tiếp Sent Order của Customer Member
30
Xây dựng hệ thống bán sách online
19. Sơ đồ giao tiếp Sent Order của Customer Not Mem
Sau pha xác định yêu cầu và phân tích phải hoàn những công việc được
cho là quan trọng và cần thiết. Những bước thực hiện nếu không cần thiết như vẽ sơ đồ hoạt động, sơ đồ giao tiếp của xác định yêu cầu có thể bỏ qua. Nếu có sơ đồ giao tiếp thì không cần sơ đồ tuần tự, nếu có sơ đồ tuần tự thì sơ đồ giao tiếp là không cần thiết. Việc hoàn thiện các sơ đồ nhằm xác định rõ ràng, cụ thể hơn cho bước thực hiện tiếp theo.
2. Sơ đồ các lớp
Các trường thuộc tính được xác định qua kịch bản của các chức năng hệ thống. Phương thức các lớp, các lớp biên xác định qua sơ đồ giao tiếp.
31
Xây dựng hệ thống bán sách online
III. THIẾT KẾ KIẾN TRÚC.
Xác định công nghệ: Sử dụng Jsp và Servlet.
32
Xây dựng hệ thống bán sách online
IV. THIẾT KẾ HỆ THỐNG. 1. Thiết kế lớp chi tiết
33
Xây dựng hệ thống bán sách online
2. Thiết kế cơ sở dữ liệu.
Ánh xạ các lớp qua cơ sở dữ liệu, mỗi lớp là một bảng trong cơ
sở dữ liệu. Thêm các quan hệ 1- n, 0- n, 1-1. Với quan hệ kế thừa, mỗi lớp tương ứng một bảng.
Dữ liệu của bảng book_order, cart chỉ được lưu khi khách hàng
hoàn tất Sent Order thành công.
Thông tin Khách hàng chọn sách, đặt sách, nhập số lượng sách
đều được lưu qua session và được đồng bộ session.
Khi khách hàng không phải thành viên đặt hàng phải nhập thông
tin, Nhập thông tin đó tương đương với đăng ký thành viên nhưng khách hàng đó không sử dụng lại được thông tin đó và không có tài khoản thanh toán của cửa hàng.
Thông tin khách hàng đã mua hàng đều được lưu lại dù là khách
hàng thành viên hay không.
34
Xây dựng hệ thống bán sách online
V. CODE VÀ DEMO.
Tạo các lớp thực thể, các lớp DAO, Servlet, Jsp
35
Xây dựng hệ thống bán sách online
Trong khi tạo project code,
có thể thay đổi thêm những
phương thức cần thiết, lớp
biên cần thiết để dễ dàng code
những phương thức yêu cầu
từ sơ đồ lớp và sơ đồ gói
36
Xây dựng hệ thống bán sách online
Demo Cho Khách hàng đăng ký thành viên.
Các lớp và phương thức của gói DAO
37
Xây dựng hệ thống bán sách online
38
Xây dựng hệ thống bán sách online
Giao diện đơn giản nhất của trang Register,jsp
39
Xây dựng hệ thống bán sách online
40
Xây dựng hệ thống bán sách online Trong cơ sở dữ liệu
41
Xây dựng hệ thống bán sách online
GetList lớp control hiển thị dữ liệu thông tin sách trong trang chủ
42
Xây dựng hệ thống bán sách online Home_Customer.jsp
Trang Home_Customer
43
Xây dựng hệ thống bán sách online Khi click View Book
44
Xây dựng hệ thống bán sách online Nếu price là out of stock thì không hiện nút Add to Cart
Trang Giỏ Hàng tổng tiền tính bằng Sale Price*Quantity
45
Xây dựng hệ thống bán sách online Lớp control AddToCart
Trang View
46
Xây dựng hệ thống bán sách online Trang Cart
47
Xây dựng hệ thống bán sách online Khi Đặt sách có Book Set trùng nhau. Ví dụ 2 quyển có cùng book set là Bộ sách cho thiếu nhi Giá được tính bằng totalPrice-numOfSet*10000
48