



















Preview text:
Đ Ạ I H Ọ C BÁCH KHOA HÀ N Ộ I
TRƯ Ờ NG CÔNG NGH Ệ THÔNG TIN VÀ TRUY Ề N THÔNG BÁO CÁO BÀI T Ậ
P L Ớ N PHÂN TÍCH VÀ THI Ế
T K Ế H Ệ TH Ố NG Đ
ề tài: H ệ th ố ng qu ả n lý bán hàng
Gi ả ng viên: TS Nguy ễ n Bá Ng ọ c
L ớ p: 149491
Nhóm s inh viên th ự c hi ệ n : IT2
STT Họ và tên MSSV 1 Trần Tiến Đạt 20194 246 2 Nguyễn Hữu Hiếu 20215577 3 Nguyễn Phương Linh 20 215607 4 Đào Quang Lợi 20 212866 5 Hà Văn Tăng 20 215638
Hà N ộ i, tháng 6 năm 202 4 Nội dung
I. Phân tích hệ thống .................................................................................................... 3
1. Môi trường và tính cấp thiết của hệ thống .......................................................... 3
2. Mô hình hoá chức năng ....................................................................................... 6
2.1. Sơ đồ ca sử dụng tổng quan ......................................................................... 6
2.2. Tạo đơn hàng ................................................................................................ 7
2.3. Xử lý đơn hàng ............................................................................................. 8
2.4. Thống kê bán hàng ....................................................................................... 9
2.5. Quản lý kho hàng ....................................................................................... 10
2.6. Quản lý sự kiện .......................................................................................... 11
2.7. Ước lượng chi phí thực hiện dự án theo phương pháp UCP...................... 12
3. Mô hình hoá cấu trúc ......................................................................................... 15
3.1. Xác định đối tượng ..................................................................................... 15
3.2. Mô hình lĩnh vực ........................................................................................ 17
4. Mô hình hoá hành vi ......................................................................................... 17
4.1. Trạng thái của đối tượng trọng tâm ............................................................ 17
4.2. Tạo đơn hàng .............................................................................................. 18
4.3. Xử lý đơn hàng ........................................................................................... 19
4.4. Thống kê bán hàng ..................................................................................... 19
4.5. Quản lý kho hàng ....................................................................................... 20
4.6. Quản lý sự kiện .......................................................................................... 21
II. Thiết kế hệ thống .................................................................................................. 22
1. Thiết kế chi tiết lớp ........................................................................................... 22
1.1. Sơ đồ lớp với các chi tiết bổ xung .............................................................. 22
1.2. Tập thẻ CRC ............................................................................................... 22
1.3. Tập hợp đồng thông điệp ........................................................................... 33
2. Thiết kế tương tác mức nghiệp vụ .................................................................... 40
2.1. Tạo đơn hàng .............................................................................................. 40
2.2. Xử lý đơn hàng ........................................................................................... 41
2.3. Thống kê bán hàng ..................................................................................... 42
2.4. Quản lý kho hàng ....................................................................................... 43
2.5. Quản lý sự kiện .......................................................................................... 44
3. Thiết kế giao diện .............................................................................................. 45
3.1. Quy chuẩn giao diện................................................................................... 45
3.2. Tạo đơn hàng .............................................................................................. 52
3.3. Xử lý đơn hàng ........................................................................................... 60
3.4. Thống kê bán hàng ..................................................................................... 63
3.5. Quản lý kho hàng ....................................................................................... 66
3.6. Quản lý sự kiện .......................................................................................... 68
4. Thiết kế cơ sở dữ liệu ........................................................................................ 72
4.1. Lựa chọn công nghệ lưu trữ ....................................................................... 72
4.2. Ánh xạ mô hình lĩnh vực sang mô hình dữ liệu ......................................... 72
5. Thiết kế tương tác đầy đủ .................................................................................. 80
5.1. Lựa chọn mẫu thiết kế ................................................................................ 80
5.2. Các ca sử dụng thực tế ............................................................................... 81
6. Thiết kế kiến trúc hệ thống................................................................................ 87
6.1. Chia gói ...................................................................................................... 87
6.2. Sơ đồ thành phần ........................................................................................ 88
6.3. Sơ đồ triển khai .......................................................................................... 88
I. Phân tích hệ thống
1. Môi trường và tính cấp thiết của hệ thống
Một hệ thống quản lý bán hàng có các chức năng được mô tả như sau:
Khách hàng truy cập vào trang web của hệ thống, được hiển thị các mặt hàng sản phẩm mà
siêu thị cung cấp. Khách hàng có thể tìm kiếm sản phẩm theo hai cách: chọn danh mục sản
phẩm (Tivi, tủ lạnh, điều hoà, máy giặt, đồ gia dụng,…) hoặc sử dụng thanh tìm kiếm để
hệ thống hiển thị các mặt hàng, sản phẩm theo yêu cầu. Khách hàng có thể xem chi tiết
thông tin, đánh giá phản hồi từ những người mua trước về sản phẩm.
Sau khi chọn được sản phẩm theo ý muốn, khách hàng có hai lựa chọn: mua ngay
(khi đó sản phẩm tự động thêm vào giỏ hàng và chuyển tiếp người dùng đến giao diện đặt
hàng) hoặc thêm vào giỏ hàng và tiếp tục mua sắm.
Khách hàng thực hiện đặt hàng bằng cách ở giao diện giỏ hàng, chọn đặt hàng và thực hiện các bước sau:
• Chọn số lượng, mẫu mã, chủng loại của sản phẩm.
• Nhập các thông tin cá nhân, liên lạc và địa chỉ cần thiết để thực hiện vận chuyển giao hàng.
• Chọn/Nhập mã giảm giá (do hệ thống/nhân viên chăm sóc khách hàng cung cấp) (nếu có).
• Thực hiện xác nhận và hệ thống sẽ ghi nhận thông tin đơn hàng để gửi đến bộ phận bán hàng.
• Ứng với các phương thức thanh toán online (trừ ship COD), hệ thống chuyển tiếp
đến giao diện thanh toán cung cấp bởi bên thứ ba.
Bộ phận bán hàng tiếp nhận đơn đặt hàng. Bộ phận bán hàng sẽ liên hệ kiểm tra số lượng
sản phẩm có trong kho hàng. Nếu hết hàng sẽ gửi thông báo tới khách hàng. Nếu còn hàng
sẽ thực hiện xác nhận và thay đổi trạng thái đơn hàng. Bộ phận bán hàng tạo bản sao thông
tin đơn hàng gửi cho bộ phận kế toán, bộ phận giao hàng:
• Nếu khách hàng thanh toán online: Bộ phận giao hàng giao hàng cho khách. Sau khi
nhận được hàng khách hàng sẽ xác nhận và thông báo được gửi về bộ phận bán
hàng. Bộ phận bán hàng sẽ thay đổi trạng thái đơn hàng và kết thúc.
• Nếu khách hàng thanh toán offline: Bộ phận giao hàng giao hàng cho khách.
Sau khi nhận được hàng khách hàng sẽ thanh toán và thông báo được gửi về bộ phận
kế toán. Bộ phận kế toán xuất hóa đơn bán hàng và gửi thông báo về cho bộ phận
bán hàng. Bộ phận bán hàng sẽ thay đổi trạng thái đơn hàng và kết thúc.
Thống kê bán hàng cho phép bộ phận kế toán có thể thống kê được số lượng đơn hàng có
trong tuần hiện tại hoặc theo khoảng thời gian được chọn, số lượng đơn hàng giao thành
công và đang giao hàng và đang xử lý, thống kê được số sản phẩm đã bán ra và tổng doanh
thu. Ngoài ra hệ thống còn thống kê được số lượng khách hàng mới trong tuần hiện tại hoặc
trong khoảng thời gian được chọn, tổng số khách hàng tính đến thời điểm hiện tại, thống
kê được top 5 sản phẩm bán chạy nhất.
Bộ phận kho hàng thực hiện quản lý kho hàng sản phẩm. Bộ phận kho hàng thực hiện thêm
kho hàng khi có sản phẩm mới, xem, sửa thông tin chi tiết của kho hàng, xóa kho hàng khi
có yêu cầu của nhân viên kho hàng với điều kiện sản phẩm đã hết hàng và cửa hàng không
có ý định kinh doanh thêm mặt hàng này nữa. Bô phận kho hàng thay đổi số lượng các sản
phẩm trong kho hàng khi nhân viên kho hàng có yêu cầu tăng số lượng hoặc giảm số lượng
khi đã xác nhận yêu cầu xuất hàng từ bộ phận bán hàng. Sau khi chọn chức năng quản lý
kho hàng, hệ thống sẽ hiển thị danh sách các kho hàng, bộ phận kho hàng có thể lựa chọn các chức năng cụ thể:
• Thêm: Điền thông tin chi tiết của kho hàng mới theo form thêm mới do hệ thống
cung cấp và gửi yêu cầu tới hệ thống để xác nhận. Hệ thống sẽ kiểm tra thông tin
của kho hàng mới được thêm, nếu thỏa mãn các yêu cầu: không trùng lặp với kho
hàng đã có, các thông tin điền đúng form, số lượng sản phẩm không âm,… thì hệ
thống tiến hành thêm mới thông tin kho hàng vào cơ sở dữ liệu.
• Xem: Chọn kho hàng cụ thể, hệ thống hiển thị chi tiết kho hàng được chọn.
• Cập nhật: Chọn kho hàng cần cập nhật, hệ thống hiển thị giao diện với các trường
thông tin đã được nhập sẵn. Sau khi điền các thông tin mới và xác nhận, hệ thống sẽ
kiểm tra xem các trường thông tin có hợp lệ và đầy đủ, nếu không hệ thống sẽ yêu
cầu nhập lại đầy đủ thông tin hợp lệ. Nếu các trường thông tin đầy đủ và hợp lệ, hệ
thống chỉnh sửa thông tin kho hàng trong cơ sở dữ liệu.
• Xóa: Chọn kho hàng cần xoá, hệ thống yêu cầu xác nhận xóa kho hàng, nếu xác
nhận có, sẽ xóa kho hàng khỏi cơ sở dữ liệu.
Cùng với các hoạt động bán hàng, cửa hàng sẽ có các sự kiện trong các khoảng thời gian
cụ thể. Bộ phận bán hàng chịu trách nhiệm quản lý các sự kiện này, bao gồm các chương
trình khuyến mãi, các hoạt động quảng bá sản phẩm,… Bộ phận bán hàng có thể thêm,
xem, sửa, xóa các sự kiện. Sau khi chọn chức năng quản lý sự kiện, hệ thống sẽ hiển thị
danh sách các sự kiện, bộ phận bán hàng có thể lựa chọn các chức năng cụ thể:
• Thêm: Điền thông tin chi tiết của sự kiện mới theo form thêm mới do hệ thống cung
cấp và gửi yêu cầu tới hệ thống để xác nhận. Hệ thống sẽ kiểm tra thông tin của sự
kiện mới được thêm, nếu thỏa mãn các yêu cầu: không trùng lặp với sự kiện đã có,
các thông tin điền đúng form, thời gian áp dụng phù hợp,… thì hệ thống tiến hành
thêm mới thông tin sự kiện vào cơ sở dữ liệu.
• Xem: Chọn sự kiện cụ thể, hệ thống hiển thị chi tiết sự kiện được chọn.
• Cập nhật: Chọn sự kiện cần cập nhật, hệ thống hiển thị giao diện với các trường
thông tin đã được nhập sẵn. Sau khi điền các thông tin mới và xác nhận, hệ thống sẽ
kiểm tra xem các trường thông tin có hợp lệ và đầy đủ, nếu không hệ thống sẽ yêu
cầu nhập lại đầy đủ thông tin hợp lệ. Nếu các trường thông tin đầy đủ và hợp lệ, hệ
thống chỉnh sửa thông tin sự kiện trong cơ sở dữ liệu.
• Xóa: Chọn sự kiện cần xoá, hệ thống yêu cầu xác nhận xóa sự kiện, nếu xác nhận
có, sẽ xóa sự kiện khỏi cơ sở dữ liệu.
2. Mô hình hoá chức năng
2.1. Sơ đồ ca sử dụng tổng quan Tạo đơn hàng
Tên ca sử dụng: Tạo đơn hàng ID: 1 Mức quan trọng: Cao
Tác nhân chính: Khách hàng
Loại ca sử dụng: Khái quát, thiết yếu
Các bên liên quan và mối quan tâm:
− Khách hàng muốn đặt mua sản phẩm bằng cách tạo đơn hàng. Mô tả ngắn gọn:
− Mục đích: Ca sử dụng này mô tả cách tạo đơn hàng đặt mua sản phẩm trên hệ thống.
− Nội dung: Khách hàng truy cập vào website hệ thống, tìm kiếm sản phẩm mong muốn và thêm vào giỏ
hàng. Khách hàng tạo yêu cầu đặt hàng sản phẩm trong giỏ. Hệ thống hiển thị biểu mẫu thông tin cần
thiết cho đơn hàng. Khách hàng nhập thông tin cho đơn hàng. Hệ thống ghi nhận yêu cầu tạo đơn
hàng. Bộ phận bán hàng kiểm tra thông tin và gửi đến bộ phận kế toán. Bộ phận kế toán gửi yêu cầu
thanh toán đến khách hàng. Khách hàng thực hiện thanh toán online. Nếu thanh toán thành công, bộ
phận kế toán xác nhận thanh toán và bộ phận bán hàng cập nhật trạng thái đơn hàng của khách hàng.
Nếu thanh toán thất bại thì hệ thống bán hàng sẽ huỷ đơn hàng hoặc khách hàng tự huỷ đơn hàng. Xử lý đơn hàng
Tên ca sử dụng: Xử lý đơn hàng ID: 2 Mức quan trọng: Cao
Tác nhân chính: Bộ phận bán hàng
Loại ca sử dụng: Khái quát, thiết yếu
Các bên liên quan và mối quan tâm:
− Khách hàng đặt hàng hoặc nhận hàng.
− Bộ phận bán hàng sẽ thay đổi trạng thái đơn hàng theo từng giai đoạn. Mô tả ngắn gọn:
− Mục đích: Ca sử dụng này mô tả cách thay đổi và cập nhật trạng thái đơn hàng trên hệ thống.
− Nội dung: Bộ phận bán hàng kiểm tra danh sách đơn hàng, sau đó gửi yêu cầu kiểm tra sản phẩm còn
trong kho hàng không. Nếu hết hàng thì gửi thông báo hết hàng đến khách hàng. Nếu còn hàng thì gửi
thông báo đã xác nhận đơn hàng đến khách hàng. Bộ phận bán hàng thực hiện cập nhật trạng thái
đơn hàng, gửi bản sao thông tin đơn hàng đến các bộ phận khác. Sau khi đơn hàng đã được xác nhận
thanh toán và khách hàng đã nhận được hàng thì bộ phận bán hàng thực hiện cập nhật trạng thái đơn hàng. Thống kê bán hàng
Tên ca sử dụng: Thống kê bán hàng ID: 3
Mức quan trọng: Trung bình
Tác nhân chính: Bộ phận kế toán
Loại ca sử dụng: Khái quát, thiết yếu
Các bên liên quan và mối quan tâm:
− Bộ phận kế toán cần thực hiện thống kê bán hàng. Mô tả ngắn gọn:
− Mục đích: Ca sử dụng này mô tả cách thống kê bán hàng trên hệ thống.
− Nội dung: Bộ phận kế toán thực hiện thống kê bán hàng. Hệ thống hiển thị kết quả bán hàng trong tuần
hiện tại. Bộ phận bán hàng có thể chọn khoảng thời gian bất kì trên hệ thống. Hệ thống sẽ hiển thị kết
quả bán hàng theo khoảng thời gian đã chọn. Quản lý kho hàng
Tên ca sử dụng: Quản lý kho hàng ID: 4 Mức quan trọng: Cao
Tác nhân chính: Bộ phận kho hàng
Loại ca sử dụng: Khái quát, thiết yếu
Các bên liên quan và mối quan tâm:
− Bộ phận kho hàng cần quản lý các kho hàng và số lượng các sản phẩm trong kho hàng, bao gồm các
hoạt động thêm, xem, cập nhật, xóa các kho hàng, thay đổi số lượng sản phẩm. Mô tả ngắn gọn:
− Mục đích: Ca sử dụng này mô tả quy trình quản lý kho hàng.
− Nội dung: Bộ phận bán hàng thực hiện thêm kho hàng, xem chi tiết và cập nhật thông tin kho hàng,
xoá kho hàng, thay đổi số lượng sản phẩm. Quản lý sự kiện
Tên ca sử dụng: Quản lý sự kiện ID: 5
Mức quan trọng: Trung bình
Tác nhân chính: Bộ phận bán hàng
Loại ca sử dụng: Khái quát, thiết yếu
Các bên liên quan và mối quan tâm:
− Bộ phận bán hàng cần quản lý các sự kiện như khuyến mãi, giảm giá,… bao gồm các hoạt động thêm,
xem, cập nhật, xóa các sự kiện. Mô tả ngắn gọn:
− Mục đích: Ca sử dụng này mô tả quy trình quản lý sự kiện.
− Nội dung: Bộ phận bán hàng thực hiện thêm sự kiện, xem chi tiết và cập nhật thông tin sự kiện, xoá sự kiện.
Ước lượng chi phí thực hiện dự án theo phương pháp UCP
Phân loại tác nhân
Bảng đánh giá trọng số tác nhân chưa hiệu chỉnh
Loại tác nhân Mô tả
Điểm Số lượng Tổng điểm
Hệ thống ngoại với API được định Đơn giản 1 0 0 nghĩa rõ ràng
Hệ thống ngoại sử dụng một giao
diện dựa trên giao thức, ví dụ, Trung bình 2 0 0
HTTP, TCP/IP, hoặc một cơ sở dữ liệu Phức tạp Người 3 4 12
Tổng trọng số tác nhân chưa hiệu chỉnh (UAW) 12
Phân loại ca sử dụng
Bảng đánh giá trọng số ca sử dụng chưa hiệu chỉnh
Loại ca sử dụng Mô tả
Điểm Số lượng Tổng điểm Đơn giản 1-3 giao dịch 5 1 5 Trung bình 4-7 giao dịch 10 2 20 Phức tạp >7 giao dịch 15 2 30
Tổng trọng số ca sử dụng chưa hiệu chỉnh (UUCW) 55
Số lượng đơn vị ca sử dụng chưa hiệu chỉnh: UUCP
= UAW + UUCW = 12 + 55 = 67
Đánh giá các chỉ số kỹ thuật
Các hệ số phức tạp kỹ thuật
Mã số Mô tả
Hệ số Giá trị Giá trị thực T1 Hệ phân tán 2 0 0 T2
Thời gian phản hồi hoặc thông lượng 1 5 5 T3
Sử dụng thuận tiện và hiệu quả 1 5 5 T4
Xử lý bên trong phức tạp 1 1 1 T5
Khả năng tái sử dụng mã nguồn 1 1 1 T6 Dễ cài đặt 0.5 2 1 T7 Dễ vận hành 0.5 4 2 T8 Tính khả chuyển 2 0 0 T9
Dễ bảo trì và cập nhật 1 2 2 T10
Xử lý tính toán song song/đồng thời 1 0 0 T11 Bảo mật 1 2 2 T12
Liên kết với đối tác, sử dụng/cung cấp 1 1 1 T13
Đào tạo đặc biệt cho người dùng 1 0 0
Tổng giá trị hệ số kỹ thuật (TFactor) 20
Hệ số phức tạp kỹ thuật:
TCF = 0.6 + (0.01 * TFactor) = 0.6 + (0.01 * 20) = 0.8
Đánh giá các chỉ số môi trường
Các hệ số môi trường
Mã số Mô tả
Trọng số Giá trị Giá trị thực E1
Có kinh nghiệm với quy trình phát 1.5 3 4.5 triển hệ thống E2
Có kinh nghiệm về ứng dụng tương tự 0.5 4 2 E3
Kinh nghiệm về hướng đối tượng 1 4 4 E4
Khả năng lãnh đạo nhóm 0.5 5 2.5 E5 Động lực làm việc 1 5 5 E6
Sự ổn định của yêu cầu 2 5 10 E7 Nhân sự bán thời gian -1 0 0 E8
Sự phức tạp của ngôn ngữ lập trình -1 4 -4
Tổng giá trị hệ số môi trường (EFactor) 24
Hệ số môi trường:
EF = 1.4 + (-0.03 * EFactor) = 1.4 + (-0.03 *24) = 0.68
Số lượng đơn vị ca sử dụng sau hiệu chỉnh:
UCP = UUCP * TCF * EF = 67 * 0.8 * 0.68 = 36.448
Số lượng đặc điểm môi trường không thuận lợi: 1 ⇒ PMH = 20
Chi phí tính bằng giờ nhân lực E = UCP * PHM = 36.448 * 20 = 728.96
Giả sử số giờ làm việc trong 1 tháng = 158
Chi phí theo tháng nhân lực E = UCP * PHM / 158 = 4.62
Thời gian tối ưu theo McConnel (1996) 𝑇 = 2.5 * = 2.5 *
Kích thước nhóm trung bình
P = E / T = 4.62 / 4.16 = 1.11
Nhóm có số lượng thành viên > P (5 người) thì thời gian hoàn thành dự án được đánh giá > E / 5 = 0.924
⇒ Ước lượng thời gian hoàn thành dự án: 1 tháng
3. Mô hình hoá cấu trúc
3.1. Xác định đối tượng 3.1.1. Tạo đơn hàng
Khách hàng Tiến Đạt có tài khoản mã A001 thực hiện tạo đơn hàng mã O001. Đơn
hàng O001 có chứa 2 sản phẩm là “Smart TV 4K” gồm 2 chiếc và “Điều hoà 2 chiều”
với 1 chiếc. 2 sản phẩm này cũng nằm trong giỏ hàng của khách hàng. Đơn hàng được
thanh toán thông qua tài khoản của khách hàng. 3.1.2. Xử lý đơn hàng
Đơn hàng mã O001 được xử lý bởi bộ phận bán hàng Văn Hà và được giao hàng bởi
bộ phận giao hàng Hữu Hiếu. Đơn hàng được thanh toán xác nhận bởi bộ phận kế toán Phương Linh. 3.1.3. Thống kê bán hàng
Thống kê bán hàng được thực hiện bởi bộ phận kế toán Phương Linh. 3.1.4. Quản lý kho hàng
Sản phẩm “Tủ lạnh Inverter” nằm trong kho hàng mã IN001 và được quản lý bởi bộ phận kho hàng Quang Lợi. 3.1.5. Quản lý sự kiện
Sự kiện “Quốc khánh 2/9” được quản lý bởi bộ phận bán hàng Văn Hà. 3.2. Mô hình lĩnh vực
4. Mô hình hoá hành vi
4.1. Trạng thái của đối tượng trọng tâm 4.2. Tạo đơn hàng 4.3. Xử lý đơn hàng 4.4. Thống kê bán hàng