Thiết kế website bán hàng đồ gỗ mỹ nghệ Phú Hải, tìm hiểu các yêu cầu cần thiết để website hoạt động tốt. Nghiên cứu các phương pháp tối ưu hệ thống website để đáp ứng nhu cầu của công ty đồ gỗ mỹ nghệ Phú Hải. Các ưu tiên cần được thực hiện: Thu thập đầy đủ thông tin, yêu cầu, hiểu rõ các giới hạn khi tạo trang web bán hàng Thiết kế cơ sở dữ liệu hiệu quả và an toàn Có liên kết giữa người sử dụng và người quản lý cửa hàng
Trang 1KHOA CÔNG NGHỆ THÔNG TIN
Trang 2LỜI MỞ ĐẦU
Thiết kế website bán hàng đồ gỗ mỹ nghệ Phú Hải, tìm hiểu các yêu cầu cần thiết để website hoạt động tốt Nghiên cứu các phương pháp tối ưu hệ thống website để đáp ứng nhu cầu của công ty đồ gỗ mỹ nghệ Phú Hải Các ưu tiên cần được thực hiện:
Thu thập đầy đủ thông tin, yêu cầu, hiểu rõ các giới hạn khi tạo trang web bán hàng
Thiết kế cơ sở dữ liệu hiệu quả và an toàn
Có liên kết giữa người sử dụng và người quản lý cửa hàng
Trang 3MỤC LỤC
LỜI MỞ ĐẦU
Chương 1 Mô hình hóa chức năng
1.1 Biểu đồ use case 9
1.2 Mô tả chi tiết các use case 10
1.2.1 Mô tả use case Xem thông tin tài khoản (Mai Văn Thanh) 10
1.2.2 Mô tả use case Thay đổi mật khẩu (Mai Văn Thanh) 11
1.2.3 Mô tả use case Xem chi tiết sản phẩm (Mai Văn Thanh) 12
1.2.4 Mô tả use case Bảo trì sản phẩm (Mai Văn Thanh) 12
1.2.5 Mô tả use case Đăng ký tài khoản (Ngô Sách Minh Tuấn) 14
1.2.6 Mô tả use case Quản lý tài khoản (Ngô Sách Minh Tuấn) 15
1.2.7 Mô tả use case Xem giới thiệu công ty (Ngô Sách Minh Tuấn) .16 1.2.8 Mô tả use case Đăng nhập (Ngô Sách Minh Tuấn) 17
1.2.9 Mô tả use case Xem tin tức (Hà Minh Tú) 18
1.2.10 Mô tả use case Cập nhật tin tức (Hà Minh Tú) 18
1.2.11 Mô tả use case Xem sản phẩm tiêu biểu (Hà Minh Tú) 20
1.2.12 Mô tả use case Xem danh mục (Hà Minh Tú) 20
1.2.13 Mô tả use case Tìm kiếm sản phẩm (Ngô Sách Minh Tuấn) 21
1.2.14 Mô tả use case Xem Sản Phẩm Theo Danh Mục (Trần Văn Quang) 22 1.2.15 Mô tả use case Xem Lịch Sử Đơn Hàng (Trần Văn Quang) 22
23
Trang 42.1 Biểu đồ thực thể liên kết mức logic 26
2.2 Biểu đồ thực thể liên kết mức vật lý 27
2.3 Thiết kế bảng 27
2.4 Quan hệ giữa các bảng 30
Chương 3 Phân tích use case 31
3.1 Biểu đồ các lớp Entity của hệ thống 31
3.1.1 Phân tích use case đăng ký tài khoản (Ngô Sách Minh Tuấn) 31
3.1.2 Phân tích use case Đăng nhập (Ngô Sách Minh Tuấn) 32
3.1.3 Phân tích use case Quản Lý Tài Khoản (Ngô Sách Minh Tuấn) 33
3.1.4 Phân tích use case Tìm Kiếm Sản Phẩm (Ngô Sách Minh Tuấn)34 3.1.5 Phân tích use case Xem Thông Tin Tài Khoản (Mai Văn Thanh) 35 3.1.6 Phân tích use case Xem Chi Tiết Sản Phẩm (Mai Văn Thanh) 36
3.1.7 Phân tích use case Thay đổi mật khẩu (Mai Văn Thanh) 37
3.1.8 Phân tích use case Bảo Trì Sản Phẩm (Mai Văn Thanh) 38
3.1.9 Phân tích use case Xem Lịch Sử Đơn Hàng (Trần Văn Quang) .39 3.1.10 Phân tích use case Xem Sản Phẩm Theo Danh Mục (Trần Văn Quang) 40 3.1.11 Phân tích use case Bảo Trì Danh Mục (Trần Văn Quang) 41
3.1.12 Phân tích use case cập nhật tin tức (Hà Minh Tú) 41
3.1.13 Phân tích use case xem tin tức (Hà Minh Tú) 42
3.1.14 Phân tích use case xem danh mục (Hà Minh Tú) 42
3.1.15 Phân tích use case xem sản phẩm tiêu biểu (Hà Minh Tú) 43
3.2 Phân tích các use case 44
3.2.1 Phân tích use case Đăng ký tài khoản (Ngô Sách Minh Tuấn) 44
Trang 53.2.2 Phân tích use case Đăng nhập (Ngô Sách Minh Tuấn) 45
3.2.3 Phân tích use case Quản lý tài khoản (Ngô Sách Minh Tuấn) 46
3.2.4 Phân tích use case Tìm kiếm sản phẩm (Ngô Sách Minh Tuấn) 47
3.2.5 Phân tích use case Xem Sản Phẩm Theo Danh Mục (Trần Văn Quang) 48 3.2.6 Phân tích use case Xem Lịch Sử Đơn Hàng (Trần Văn Quang) .49 3.2.7 Phân tích use case Xem Thông Tin Tài Khoản (Mai Văn Thanh) 53 3.2.8 Phân tích use case Thay Đổi Mật Khẩu (Mai Văn Thanh) 54
3.2.9 Phân tích use case Xem Chi Tiết Sản Phẩm (Mai Văn Thanh) 55
3.2.10 Phân tích use case Bảo Trì Sản Phẩm ( Mai Văn Thanh ) 57
3.2.11 Phân tích use case cập nhật tin tức (Hà Minh Tú) 59
3.2.12 Phân tích use case xem tin tức (Hà Minh Tú) 60
3.2.13 Phân tích use case xem danh mục (Hà Minh Tú) 61
3.2.14 Phân tích use case xem sản phẩm tiêu biểu (Hà Minh Tú) 62
Chương 4 Thiết kế giao diện 64
4.1 Giao diện use case Đăng ký tài khoản (Ngô Sách Minh Tuấn) 64
4.1.1 Hình dung màn hình 64
4.1.2 Biểu đồ lớp màn hình 64
4.1.3 Biểu đồ cộng tác của các màn hình 65
4.2 Giao diện use case Quản lý tài khoản (Ngô Sách Minh Tuấn) 65
4.2.1 Hình dung màn hình 65
4.2.2 Biểu đồ lớp màn hình 66
4.2.3 Biểu đồ cộng tác của các màn hình 66
Trang 64.3.1 Hình dung màn hình 67
4.3.2 Biểu đồ lớp màn hình 67
4.3.3 Biểu đồ cộng tác của các màn hình 68
4.4 Giao diện use case Tìm kiếm sản phẩm (Ngô Sách Minh Tuấn) 68
4.4.1 Hình dung màn hình 68
4.4.2 Biểu đồ lớp màn hình 68
4.4.3 Biểu đồ cộng tác của các màn hình 69
4.5 Giao diện use case Xem Thông Tin Tài Khoản (Mai Văn Thanh) 69
4.5.1 Hình dung màn hình 69
4.5.2 Biểu đồ lớp màn hình 70
4.5.3 Biểu đồ cộng tác của các màn hình 71
4.6 Giao diện use case Thay Đổi Mật Khẩu (Mai Văn Thanh) 71
4.6.1 Hình dung màn hình 71
4.6.2 Biểu đồ lớp màn hình 72
4.6.3 Biểu đồ cộng tác của các màn hình 72
4.7 Giao diện use case Xem Chi Tiết Sản Phẩm (Mai Văn Thanh) 73
4.7.1 Hình dung màn hình 73
4.7.2 Biểu đồ lớp màn hình 73
4.7.3 Biểu đồ cộng tác của các màn hình 73
4.8 Giao diện use case Bảo Trì Sản Phẩm (Mai Văn Thanh) 74
4.8.1 Hình dung màn hình 74
4.8.2 Biểu đồ lớp màn hình 74
4.8.3 Biểu đồ cộng tác của các màn hình 75
4.9 Giao diện use case Xem Lịch Sử Đơn Hàng (Trần Văn Quang) 76
Trang 74.9.1 Hình dung màn hình 76
4.9.2 Biểu đồ lớp màn hình 76
4.9.3 Biểu đồ cộng tác của các màn hình 77
4.10 Giao diện use case Xem Sản Phẩm Theo Danh Mục (Trần Văn Quang) 77 4.10.1 Hình dung màn hình 77
4.10.2 Biểu đồ lớp màn hình 77
4.10.3 Biểu đồ cộng tác của các màn hình 78
4.11 Giao diện use case Bảo Trì Danh Mục (Trần Văn Quang) 78
4.11.1 Hình dung màn hình 78
4.11.2 Biểu đồ lớp màn hình 79
4.11.3 Biểu đồ cộng tác của các màn hình 79
4.12 Giao diện use case Cập Nhật Tin Tức (Hà Minh Tú) 80
4.12.1 Hình dung màn hình 80
4.12.2 Biểu đồ lớp màn hình 80
4.12.3 Biểu đồ cộng tác của các màn hình 81
4.13 Giao diện use case Xem Tin Tức (Hà Minh Tú) 81
4.13.1 Hình dung màn hình 81
4.13.2 Biểu đồ lớp màn hình 82
4.13.3 Biểu đồ cộng tác của các màn hình 82
4.14 Giao diện use case Xem Danh Mục (Hà Minh Tú) 83
4.14.1 Hình dung màn hình 83
4.14.2 Biểu đồ lớp màn hình 83
4.14.3 Biểu đồ cộng tác của các màn hình 84
Trang 84.15.1 Hình dung màn hình 84
Trang 9Chương 1 Mô hình hóa chức năng
1.1Biểu đồ use case
Trang 101.2Mô tả chi tiết các use case
1.2.1 Mô tả use case Xem thông tin tài khoản (Mai Văn Thanh)
Mô tả vắn tắt: use case này cho phép khách hàng có thể xem và cập nhật
thông tin tài khoản
Luồng sự kiện:
o Luồng cơ bản:
1 Use case này bắt đầu khi khách hàng kích chuột vào tên truy cập
hiển thị trên màn hình Hệ thống sẽ lấy thông tin tài khoản từ bảng KHACH HANG (mã khách hàng,tên khách hàng, tên truy cập, địa chỉ, số điện thoại, địa chỉ email, ngày sinh, giới tính) trong cơ sở dữ liệu và hiển thị lên màn hình Use case kết thúc
2 Cập nhật thông tin tài khoản
Use case này bắt đầu khi khách hàng kích vào nút “Đổi thông tin” trên màn hình Hệ thống hiển thị màn hình với các thông tin của
khách hàng trong các textbox
Khách hàng sửa thông tin (tên khách hàng, tên truy cập, địa chỉ, số điện thoại, địa chỉ email, ngày sinh, giới tính) và kích vào nút “cập nhật” Hệ thống sẽ cập nhật thông tin khách hàng trong bảng
KHACH HANG và hiển thị thông tin khách hàng đã cập nhật Use case kết thúc
o Luồng rẽ nhánh:
1 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
2 Tại phần 2 trong luồng cơ bản nếu khách hàng nhập thông tin tài
khoản không hợp lệ thì hệ thống sẽ hiển thị một thông báo lỗi và
yêu cầu nhập lại
Các yêu cầu đặc biệt:
Use case này chỉ cho phép một số vai trò như khách hàng hay người dùng thực hiện
Trang 11Khách hàng phải đăng nhập trước khi thực hiện use case.
Hậu điều kiện:
Nếu use case kết thúc thành công thì thông tin tài khoản sẽ được cập nhật trong cơ sở dữ liệu
Điểm mở rộng:
Use case này cho phép khách hàng liên kết đến các use case là: use case
thay đổi mật khẩu, use case xem lịch sử đơn hàng, use case quan tâm mặt hàng, use case gửi yêu cầu
1.2.2 Mô tả use case Thay đổi mật khẩu (Mai Văn Thanh)
Use case này cho phép khách hàng có thể thay đổi mật khẩu của tài khoản
Luồng sự kiện:
o Luồng cơ bản:
1 Use case này bắt đầu khi khách hàng kích vào nút “thay đổi mật
khẩu” trên menu thông tin tài khoản Khách hàng nhập mật khẩu cũ,mật khẩu mới và kích vào nút “cập nhật” Hệ thống sẽ cập nhật
thông tin tài khoản trong bảng KHACH HANG Use case kết thúc
o Luồng rẽ nhánh:
1 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
2 Tại phần 1 trong luồng cơ bản nếu khách hàng nhập mật khẩu khônghợp lệ hay không đúng sẽ hiển thị một thông báo lỗi và yêu cầu
nhập lại
Các yêu cầu đặc biệt:
Use case này chỉ cho phép một số vai trò như khách hàng thực hiện
Tiền điều kiện:
Khách hàng phải đăng nhập trước khi thực hiện use case
Hậu điều kiện:
Nếu use case kết thúc thành công thì mật khẩu sẽ được cập nhật trong cơ
sở dữ liệu
Điểm mở rộng:
Không có
Trang 121.2.3 Mô tả use case Xem chi tiết sản phẩm (Mai Văn Thanh)
Mô tả vắn tắt: Use case này cho phép người dùng xem chi tiết về sản phẩm
Luồng sự kiện:
o Luồng cơ bản:
1 Use case này bắt đầu khi người dùng kích chuột vào tên sản phẩm Hệ thống lấy thông tin chi tiết của sản phẩm (mã sản phẩm, tên sản phẩm, gía bán, ảnh, thông tin tóm tắt, thông tin chi tiết, ngày sản xuất,số lượt xem) từ bảng SANPHAM trong cơ sở dữ liệu và hiển thị lên màn hình Use case kết thúc
1.2.4 Mô tả use case Bảo trì sản phẩm (Mai Văn Thanh)
Mô tả vắn tắt: Use case này cho phép người quản trị xem, thêm, sửa và xóa
Trang 132 Thêm sản phẩm:
Use case này bắt đầu khi người quản trị kích vào nút “Thêm mới” trên cửa sổ danh sách sản phẩm Hệ thống hiển thị màn hình yêu cầu nhập thông tin chi tiết cho sản phẩm (mã sản phẩm, tên sản phẩm, giá bán, ảnh, thông tin tóm tắt, thông tinchi tiết,ngày sản xuất)
Người quản trị nhập thông tin cho sản phẩm mới và kích vào nút “Thêm” Hệ thống sẽ tạo một bảng ghi mới trong bảng SANPHAM và hiển thị danh sách các sản phẩm được cập nhật Use case kết thúc
3 Sửa sản phẩm:
Use case này bắt đầu khi người quản trị kích vào nút “Sửa” trên một dòng sản phẩm Hệ thống hiển thị màn với các thông tin cũ của sản phẩm trong các Text box
Người quản trị sửa các thông tin của sản phẩm(mã sản phẩm, tên sản phẩm, giá bán, ảnh, thông tin tóm tắt, thông tin chi tiết,ngày sản xuất) và kích vào nút “cập nhật” Hệ thống sẽ cập nhật thông tin sản phẩm trong bảng SANPHAM và hiển thị danh sách sản phẩm đã cập nhật Use case kết thúc
4 Xóa sản phẩm:
Use case này bắt đầu khi người quản trị kích vào nút “Xóa” trên một dòng sản phẩm Hệ thống sẽ hiển thị một màn hình yêu cầu xác nhận xóa
Người quản trị kích vào nút “Đồng ý” Hệ thống sẽ xóa sản
phẩm khỏi bảng SANPHAM theo mã sản phẩm và hiển thị danh sách các sản phẩm đã cập nhật Use case kết thúc
o Luồng rẽ nhánh:
1 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
Trang 142 Tại phần 2 trong luồng cơ bản nếu người quản trị nhập thông tin sản phẩm không hợp lệ thì hệ thống sẽ hiển thị một thông báo lỗi và yêu cầu nhập lại.
3 Tại phần 3 trong luồng cơ bản nếu người quản trị nhập thông tin sản phẩm không hợp lệ thì hệ thống sẽ hiển thị một thông báo lỗi và yêu cầu nhập lại
4 Tại phần 4 trong luồng cơ bản nếu người quản trị kích vào nút “hủy”
hệ thống sẽ bỏ qua thao tác cập nhật trong bảng SANPHAM
Các yêu cầu đặc biệt:
Use case này chỉ cho phép một số vai trò như người quản trị người chủ hệ
thống thực hiện
Tiền điều kiện:
Người quản trị phải đăng nhập với vai trò của quản trị viên trước khi thực
hiện use case
Hậu điều kiện:
Nếu use case kết thúc thành công thì thông tin sản phẩm sẽ được cập nhật
trong cơ sở dữ liệu
Điểm mở rộng:
Không có
1.2.5 Mô tả use case Đăng ký tài khoản (Ngô Sách Minh Tuấn)
Mô tả vắn tắt: Usecase cho phép người dùng tạo tài khoản mới
Luồng sự kiện:
o Luồng cơ bản:
1 Usecase bắt đầu khi người dùng nhấn vào nút “Đăng ký”
2 Hệ thống sẽ hiển thị form đăng ký lên màn hình và yêu cầu nhập thông tin tài khoản cần đăng ký
3 Khi nhập xong thông tin, người dùng nhấn vào nút “Hoàn tất đăng ký”,
hệ thống sẽ tạo tài khoản mới trong bảng KhachHang, và thông báo
“Đăng ký thành công”
Usecase kết thúc
o Luồng rẽ nhánh:
Trang 151 Nếu người dùng nhập thông tin “Username” bị trùng với tài khoản
khác, hệ thống sẽ báo lỗi và yêu cầu người dùng nhập lại “username” khác
2 Nếu một hoặc nhiều ô thông tin bị bỏ trống, hệ thống sẽ báo lỗi “thiếu thông tin” và yêu cầu người dùng nhập đầy đủ thông tin
Các yêu cầu đặc biệt:
Không có
Tiền điều kiện:
Người dùng hiện tại không đăng nhập
Hậu điều kiện:
Không có
Điểm mở rộng:
Không có
1.2.6 Mô tả use case Quản lý tài khoản (Ngô Sách Minh Tuấn)
Mô tả vắn tắt: Usecase cho phép quản trị viên xem, thêm sửa hoặc xóa các tài khoản hiện có trên hệ thống
Luồng sự kiện:
o Luồng cơ bản:
1 Xem tài khoản: Usecase bắt đầu khi quản trị viên nhấn nút “Quản lý tài khoản”, hệ thống sẽ hiện thị danh sách các tài khoản người dùng trong bảng KhachHang
2 Thêm tài khoản: Quản trị viên có thể tạo mới 1 tài khoản bằng cách nhấn nút “Tạo mới tài khoản” Hệ thống sẽ yêu cầu nhập đầy đủ
thông tin tài khoản cần tạo Sau khi điền đầy đủ thông tin, quản trị
viên nhấn nút “Xác nhận tạo mới” để hoàn tất việc tạo tài khoản Hệ thống sẽ tạo mới tài khoản trong bảng KhachHang và hiển thị nó trêndanh sách
3 Sửa tài khoản: Quản trị viên có thể chọn bất kỳ tài khoản nào (trong phạm vi quyền hạn của mình) để thay đổi trạng thái tài khoản sang khóa bằng cách nhấn nút “Khóa” Đối với những tài khoản đã bị
Trang 16“Mở khóa” Hệ thống sẽ thay đổi trạng thái tài khoản trong bảng
KhachHang dựa trên lựa chọn của quản trị viên
4 Xóa tài khoản: Quản trị viên có thể chọn bất kỳ tài khoản nào (trong phạm vi quyền hạn của mình) để xóa toàn bộ thông tin người dùng bằng cách nhấn nút “Xóa tài khoản” Hệ thống sẽ hiển thị cảnh báo Nếu chọn nút “Xác nhận” hệ thống sẽ xóa thông tin tài khoản người dùng đó trong bảng KhachHang Ngược lại nếu chọn nút “Hủy”,
không có gì được thay đổi
5 Usecase kết thúc khi quản trị viên đăng xuất
Tiền điều kiện:
Quản trị viên phải đăng nhập
Hậu điều kiện:
Không có
Điểm mở rộng:
Không có
1.2.7 Mô tả use case Đăng nhập (Ngô Sách Minh Tuấn)
Mô tả vắn tắt: Usecase này cho phép người dùng và quản trị viên đăng
nhập vào website để sử dụng đầy đủ các chức năng
Luồng sự kiện:
o Luồng cơ bản:
1 Usecase bắt đầu khi người dùng hoặc quản trị viên nhấn nút
“Đăng nhập” Hệ thống sẽ hiển thị form đăng nhập và yêu cầu nhập tên tài khoản và mật khẩu
Trang 172 Sau khi nhập tên người dùng và mật khẩu, người dùng hoặc quản trị viên nhấn nút đăng nhập để hoàn tất, hệ thống sẽ kiểm tra thông tin người dùng có tồn tại không trong bảng KhachHang hoặc bảng NhanVien, sau đó người dùng hoặc quản trị viên sẽ được đăng nhập vào hệ thống Usecase kết thúc.
o Luồng rẽ nhánh:
1 Tại 3.1.2 Nếu như người dùng hoặc quản trị viên nhập sai tên tài khoản hoặc mật khẩu, hệ thống sẽ hiển thị thông báo “Sai tên tài khoản hoặc mật khẩu” và yêu cầu nhập lại Usecase kết thúc khi người dùng chọn nút “Hủy”
2 Nếu hệ thống không thể kết nối được tới máy chủ hoặc quá thời gian phản hồi, hệ thống sẽ báo “Lỗi ký thuật” và usecase kết thúc
Các yêu cầu đặc biệt:
Không có
Tiền điều kiện:
Người dùng hoặc quản trị viên chưa đăng nhập
Hậu điều kiện:
Không có
Điểm mở rộng:
Không có
1.2.8 Mô tả use case Xem tin tức (Hà Minh Tú)
Mô tả vắn tắt: Usecase cho phép người dùng xem thông tin về tin tức
Luồng sự kiện:
oLuồng cơ bản:
1 Usecase bắt đầu khi người dùng nhấn vào nút “tin tức”trên menuchính.Hệ thống lấy các tin tức từ bảng TINTUC(Mã tin tức, tiêu đề, nộidung, ngày đăng,…) trong cơ sở dữ liệu và hiển thị lên màn hình
2 Người dùng kích chọn vào một tin tức trong danh sách Hệ thống lấythông tin chi tiết của tin tức từ bảng tin tức và hiển thị lên màn hình Usecase kết thúc
Trang 181 Tại bất cứ thời điểm nào trong quá trình thực hiện use case nếu khôngkế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
1.2.9 Mô tả use case Cập nhật tin tức (Hà Minh Tú)
Mô tả vắn tắt: Use case cho phép người quản trị cập nhật tin tức
Luồng sự kiện:
oLuồng cơ bản:
1 Usecase bắt đầu khi người quản trị nhấn vào nút “tin tức”trên menu
chính.Hệ thống lấy các tin tức từ bảng TINTUC(Mã tin tức, tiêu đề, nộidung, ngày đăng,…) trong cơ sở dữ liệu và hiển thị lên màn hình
2 Cập Nhật tin tức
a Người quản trị kích vào nút “cập nhật tin tức” trên của sổ danh sách tintức Hệ thông hiển thị màn hình yêu cầu nhập thông tin cho tin tức
b Người quản trị nhập thông tin cho tin tức và kích vào nút “cập nhật”
Hệ thông sẽ tạo một bản ghi mới trong bảng TINTUC(Mã tin tức, tiêu
đề, nội dung, ngày đăng,…) và hiển thị danh sách các tin tức được cập nhật
o Luồng rẽ nhánh:
1 Tại bước 2b trong luồng cơ bản nếu người nếu người quản trị nhập
thông tin tin tức không hợp lệ thì hệ thống sẽ hiển thị thông báo lỗi yêucầu nhập lại Người quản trị có thể nhập lại hoặc kích vào nút hủy bỏ
Trang 19 Các yêu cầu đặc biệt:
Use case này chỉ cho phép một số vai trò như người quản trị, người chủ hệ
thống thức hiện
Tiền điều kiện:
Người quản trị cần đăng nhập với vai trò người quản trị hệ thống trước khi
thực hiện use case
Hậu diều kiện:
Nếu use case kết thúc thành công thì thông tin về tin tức sẽ được cập nhật
trong cơ sở dữ liệu
Điểm mở rộng:
Không có
1.2.10 Mô tả use case Xem sản phẩm tiêu biểu (Hà Minh Tú)
Mô tả vắn tắt: Use case cho phép người dùng xem sản phẩm tiêu biểu
Luồng sự kiện:
oLuồng cơ bản:
1 Usecase bắt đầu khi người dùng kích chuột vào trang chủ ở phần sản phẩm tiêu biểu, hệ thống lấy thông tin sản phẩm tiêu biểu (tên sản
phẩm, ảnh , mã) từ bảng SAN PHAM trong cơ sở dữ liệu và hiển thị
lên mà hình Use case kết thúc
o Luồng rẽ nhánh:
1 Tại bất cứ 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
Các yêu cầu đặc biệt:
Trang 201.2.11 Mô tả use case Xem danh mục (Hà Minh Tú)
Mô tả vắn tắt: Use case cho phép người dùng xem danh mục
1 Tại bất cứ 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
sản phẩm, Giá Bán, Ảnh, Thông tin tóm tắt, Thông tin chi tiết, Ngày
và hiển thị lên màn hình
Trang 21Use case kết thúc.
o Luồng rẽ nhánh:
1 Tại bất kỳ thời điểm nào trong quá trình thực hiện use casenếu không kết nối được với CSDL thì hệ thống sẽ hiển thị mộtthống báo lỗi và Use case kết thúc
2 Tại bước 1 trong luồng cơ bản Nếu khách hang không nhậptên sản phẩm thì hệ thống sẽ không làm gì và use case kếtthúc
3 Tại bước 1 trong luồng cơ bản Nếu hệ thống không tìm thấysản phẩm nào khớp với tên được nhập thì sẽ hiển thị thôngbáo “Không thấy” và use case kết thúc
Các yêu cầu đặc biệt:
1.2.13 Mô tả use case Xem Sản Phẩm Theo Danh Mục (Trần Văn Quang)
Mô tả vắn tắt: Use case cho phép khách hàng xem các sản phẩm theo từng danh mục
Luồng sự kiện:
o Luồng cơ bản:
1 Use case này bắt đầu khi khách hàng kích chuột vào bất kỳ danh
mục nào trong menu bên trái Hệ thống lấy thông tin (MaSanPham, TenSanPham, GiaBan, Anh, ThongTinTomTat) từ bảng
SANPHAM trong cơ sở dữ liệu và hiển thị lên màn hình Use case kết thúc
o Luồng rẽ nhánh:
Trang 221 Tại bất kỳ thời điểm nào trong quá trình thực hiện usecase nếu
không kết nối được cơ sở dữ liệu thì hệ thống sẽ hiển thị thông báo lỗi Use case kết thúc
Các yêu cầu đặc biệt:
1.2.14 Mô tả use case Xem Lịch Sử Đơn Hàng (Trần Văn Quang)
Mô tả vắn tắt: Use case cho phép người dùng xem lịch sử các đơn hàng đã đặt
Luồng sự kiện:
o Luồng cơ bản:
1 Use case bắt đầu khi khách hàng kích chuột vào “Đơn hàng”
trong trang thành viên Hệ thống lấy thông tin (MaSanPham, TenSanPham, GiaBan, Anh, ThongTinTomTat) từ bảng SANPHAM và hiển thị danh sách lên màn hình Use case kết thúc
o Luồng rẽ nhánh:
1 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 cơ sở dữ liệu thì hệ thống sẽ hiển thị thông báo lỗi Use case kết thúc
Các yêu cầu đặc biệt:
Không có
Tiền điều kiện:
Khách hàng phải đăng nhập với vai trò người dùng trước khi thực hiện usecase
Hậu điều kiện:
Không có
Điểm mở rộng:
Không có
Trang 231.2.15 Mô tả use case Bảo Trì Danh Mục Sản Phẩm (Trần Văn Quang)
Mô tả vắn tắt: Use case cho phép quản trị viên xem, thêm, sửa hoặc xóa
các danh mục hiện có trên hệ thống
Luồng sự kiện:
o Luồng cơ bản:
1 Xem danh mục: Use case này bắt đầu khi Người quản trị ấn nút
“Bảo trì danh mục” Hệ thống sẽ hiển thị danh sách các danh mục
từ bảng “DANHMUC” Use case kết thúc
Người quản trị thực hiện nhập các thông tin cần sửa (MaDanhMuc,TieuDe, MoTa) và kích nút “Xác nhận” Hệthống thực hiện việc update bảng “DANHMUC” Use casekết thúc
4 Xóa danh mục:
Use case này bắt đầu khi Người quản trị kích chuột vào nút “Xóa” Hệ thống hiển thị yêu cầu xác nhận xóa
Trang 24 Người quản trị kích nút “Xác nhận” Hệ thống thực hiện việc delete bảng “DANHMUC” Use case kết thúc.
5 Use case kết thúc khi người quản trị ấn “Thoát”
o Luồng rẽ nhánh:
1 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 cơ sở dữ liệu thì hệ thống sẽ hiển thị thông báo lỗi và use case kết thúc
2 Tại phần 2 trong luồng cơ bản nếu người quản trị nhập thông tin danh mục thiếu hoặc không hợp lệ thì hệ thống sẽ hiển thị một thông báo lỗi và yêu cầu nhập lại Người quản trị có thể kich nút
4 Tại phần 4 trong luồng cơ bản nếu người quản trị kích vào nút
“Hủy” Hệ thống sẽ bỏ qua thao tác cập nhật trong bảng DANHMUC
Các yêu cầu đặc biệt:
Không có
Tiền điều kiện:
Phải thực hiện use case với vai trò quản trị viên
Hậu điều kiện:
Không có
Điểm mở rộng:
Không có
Trang 25Chương 2 Thiết kế sơ sở dữ liệu
2.1Biểu đồ thực thể liên kết mức logic
Trang 262.2Biểu đồ thực thể liên kết mức vật lý
2.3Thiết kế bảng
Bảng DanhMuc
Bảng SanPham
Trang 27Bảng NhaCungCap
Bang PhieuNhanHang
Bang ChiTietPN
Trang 28Bảng KhachHang
Bảng TinTuc
Trang 292.4Quan hệ giữa các bảng
Trang 30Chương 3 Phân tích use case
3.1Biểu đồ các lớp Entity của hệ thống
3.1.1 Phân tích use case đăng ký tài khoản (Ngô Sách Minh Tuấn)
ICsdl Lay bang "KhachHang"() Lay bang "NhanVien"() Lay bang "KhachHang"() Insert ban ghi vao bang "KhachHang"() Lay bang "SanPham"()
Update ban ghi trong bang "KhachHang"() Xoa ban ghi trong bang "KhachHang"()
<<boundary>>
KhachHang MaKhachHang TenKhachHang TenTruyCap MatKhau NgaySinh GioiTinh DiaChiEmail SoDienThoai DiaChi getTenTruyCap() getMatKhau() getTenNhanVien() getMatKhau() addKhachHang() getKhachHang() setKhachHang() deleteKhachHang()
<<entity>>
DangKyTaiKhoanController Tao moi tai khoan()
<<control>>
DangKyTaiKhoanUI
Bam nut "Dang Ky"()
Hien thi form "Dang Ky Tai Khoan"()
Bam nut "Hoan tat dang ky"()
Thong bao "Dang ky thanh cong"()
<<boundary>>
Trang 313.1.2 Phân tích use case Đăng nhập (Ngô Sách Minh Tuấn)
ICsdl Lay bang "KhachHang"() Lay bang "NhanVien"() Lay bang "KhachHang"() Insert ban ghi vao bang "KhachHang"() Lay bang "SanPham"()
Update ban ghi trong bang "KhachHang"() Xoa ban ghi trong bang "KhachHang"()
<<entity>>
DangNhapController Kiem tra nguoi dung()
<<control>>
DangNhapUI
Nhan nut "Dang nhap"()
Hien thi form Dang Nhap()
Nhan nut "Dang Nhap"()
Hien thi menu chinh()
<<boundary>>
Trang 323.1.3 Phân tích use case Quản Lý Tài Khoản (Ngô Sách Minh Tuấn)
KhachHang MaKhachHang TenKhachHang TenTruyCap MatKhau NgaySinh GioiTinh DiaChiEmail SoDienThoai DiaChi getTenTruyCap() getMatKhau() getTenNhanVien() getMatKhau() addKhachHang() getKhachHang() setKhachHang() deleteKhachHang()
<<entity>>
ICsdl Lay bang "KhachHang"() Lay bang "NhanVien"() Lay bang "KhachHang"() Insert ban ghi vao bang "KhachHang"() Lay bang "SanPham"()
Update ban ghi trong bang "KhachHang"() Xoa ban ghi trong bang "KhachHang"()
<<boundary>>
QuanLyTaiKhoanController Lay danh sach tai khoan() Tao moi tai khoan() Khoa tai khoan()
Mo khoa tai khoan() Xoa tai khoan()
<<control>>
QuanLyTaiKhoanUI
Bam nut "Quan ly tai khoan"()
Hien thi danh sach tai khoan()
Nhan nut "Tao moi tai khoan"()
Hien thi form tao tai khoan()
Bam nut "Xac nhan tao moi"()
Bam nut "Khoa"()
Bam nut "Mo khoa"()
Bam nut "Xoa tai khoan"()
Hien thi xac nhan xoa()
Bam nut "Xac nhan"()
<<boundary>>
Trang 333.1.4 Phân tích use case Tìm Kiếm Sản Phẩm (Ngô Sách Minh
Tuấn)
TimKiemSanPhamUI
Bam nut "Tim kiem"()
Hien thi thong tin san pham()
Lay bang "KhachHang"() Lay bang "NhanVien"() Lay bang "KhachHang"() Insert ban ghi vao bang "KhachHang"() Lay bang "SanPham"()
Update ban ghi trong bang "KhachHang"() Xoa ban ghi trong bang "KhachHang"()
<<boundary>>
SanPham MaSanPham TenSanPham GiaBan Anh ThongTinTomTat ThongTinChiTiet NgaySanXuat MaDanhMuc MaKhachHang SoLuotXem getThongTinSanPham()
<<entity>>
TimKiemSanPhamController Tim kiem san pham()
<<control>>
Trang 343.1.5 Phân tích use case Xem Thông Tin Tài Khoản (Mai Văn
Thanh)
Trang 353.1.6 Phân tích use case Xem Chi Tiết Sản Phẩm (Mai Văn Thanh)
Trang 363.1.7 Phân tích use case Thay đổi mật khẩu (Mai Văn Thanh)
Trang 373.1.8 Phân tích use case Bảo Trì Sản Phẩm (Mai Văn Thanh)
Trang 383.1.9 Phân tích use case Xem Lịch Sử Đơn Hàng (Trần Văn Quang)
Trang 393.1.10 Phân tích use case Xem Sản Phẩm Theo Danh Mục
(Trần Văn Quang)
Trang 403.1.11 Phân tích use case Bảo Trì Danh Mục (Trần Văn Quang)
3.1.12 Phân tích use case Cập Nhật Tin Tức (Hà Minh Tú)