Giải pháp
Để có thể hoàn thành được đề tài thì cần phải nghiên cứu những nội dung như sau:
● Tìm hiểu cách thức vận hành kinh doanh của cửa hàng nội thất - gia dụng
● Nghiên cứu nhu cầu của từng đối tượng người sử dụng (khách hàng, quản lý) để có giải pháp thích hợp
● Tìm hiểu một vài các doanh nghiệp - công ty chuyên cung cấp các mặt hàng phục vụ cho việc kinh doanh.
Mục tiêu đề tài
Xây dựng website TwinD Furniture
● Thực hiện được các chức năng cơ bản của một website bán hàng
● Trang dashboard giúp chủ cửa hàng có thể quản lý, cập nhật thông tin
● Tìm kiếm hỗ trợ người dùng
● Thuật toán hỗ trợ khi khách hàng có nhu cầu tìm hiểu, mua hàng theo nhu cầu.
Phạm vi đề tài
Do thời gian thực hiện đề tài có hạn và kiến thức của nhóm về nội thất chưa sâu sắc, nhóm tác giả chỉ tập trung vào các chức năng cơ bản của ứng dụng và đánh giá những ưu nhược điểm nổi bật Về hiệu năng hệ thống trong thời gian dài và các điều kiện hạ tầng khác, nhóm chỉ có thể trình bày lại thông tin từ một số tài liệu tham khảo do không có điều kiện kiểm chứng thực tế.
Việc xây dựng ứng dụng buôn bán nội thất sẽ tập trung vào việc hỗ trợ quản lý các mặt hàng, tối ưu hóa quy trình quản lý báo cáo và thống kê, cùng với việc quản lý người dùng hiệu quả.
Công cụ sử dụng
Công cụ dùng để phân tích, thiết kế: draw.io, Astah, Adobe XD
Công cụ dung để xây dựng ứng dụng và quản lý database: Odoo 14
Công cụ quản lý dự án: Github, Trello, Messenger Group, Microsoft Teams
Công cụ soạn thảo: Google Sheet, Excel, Word, Notepad
KHẢO SÁT VÀ PHÂN TÍCH ĐẶC TẢ YÊU CẦU
Khảo sát hiện trạng
Phương pháp phỏng vấn bao gồm việc nhóm thực hiện soạn thảo một loạt câu hỏi, sau đó tiến hành phỏng vấn trực tiếp tại một cửa hàng đã được chọn trước Mục tiêu của phỏng vấn là đánh giá hiện trạng tin học và nghiệp vụ, cũng như những khó khăn trong việc quản lý các chức năng Trong quá trình phỏng vấn, nhóm sẽ tập trung chủ yếu vào trình độ tin học, yêu cầu về giao diện và chức năng của hệ thống.
Người được khảo sát: Nhân viên quản lý cửa hàng
• Doanh nghiệp có bao nhiêu nhân sự, nhiệm vụ của mỗi người là gì? o Cửa hàng có 4 người
▪ 1 nhân viên nhập kho/vận chuyển
▪ 1 nhân viên thu ngân/nhập liệu o Nhiệm vụ của mỗi người
− Thường xuyên có mặt ở văn phòng của cửa hàng, giám sát doanh thu, nhân viên, khách hàng thông qua phần mềm
− Tìm kiếm đối tác và chịu trách nhiệm kí hợp đồng xuất/nhập hàng
− Là người chịu trách nhiệm cuối cùng cho mọi vấn đề ở cửa hàng,
− Người trực tiếp có mặt ở cửa hàng để làm việc trực tiếp với khách hàng
− Tư vấn cho khách hàng mới
− Nắm rõ các mặt hàng, chức năng
▪ Nhân viên chuyên nhập kho/vận chuyển:
− Hướng dẫn, điều phối nhân viên xuất nhập hàng vào kho, trưng bày sản phẩm
− Làm việc trực tiếp với dịch vụ vận chuyển
▪ Nhân viên thu ngân/nhập liệu:
− Lập phiếu nhập/xuất hàng
− Lưu trữ thông tin khách hàng
• Phương pháp điểm danh nhân sự? o Điểm danh theo phương hướng thủ công, nhân viên đến cửa hàng thực hiện ký tên vào bảng chấm công.
• Số lượng khách hàng trong một ngày tại cửa hàng? o Trung bình 3-5 người/ngày
Khi khách hàng đến cửa hàng, nhân viên tư vấn sẽ hỗ trợ họ trong việc lựa chọn sản phẩm phù hợp Sau khi xác định danh sách mặt hàng cần mua, nhân viên thu ngân sẽ lập hóa đơn và lưu trữ, cập nhật thông tin khách hàng.
- tuỳ thuộc vào đó là khách hàng cũ hay mới o Nhân viên vận chuyển xác nhận lại địa chỉ và sẽ làm việc với dịch vụ giao hàng
Khách hàng không bắt buộc phải để lại số CMND khi mua sắm tại cửa hàng, ngoại trừ trường hợp giao dịch có tiền cọc Nếu khách hàng muốn bảo mật thông tin cá nhân, họ có thể yêu cầu không cung cấp số CMND trong các giao dịch không cần thiết.
Cửa hàng cung cấp nhiều dạng mặt hàng phong phú, phân theo công dụng và giá trị Trong phòng khách, có các sản phẩm như salon gỗ, trường kỷ, bộ bàn trà, tủ phê, kệ để TV, ghế đẩu, tranh gỗ, lục bình, ghế vải và ghế dây Phòng thờ có hoành phi, tủ thờ, trang thờ thần tài thổ địa và bộ lư hương kèm đĩa gỗ Khu vực làm việc bao gồm ghế làm việc, bàn làm việc, bàn học và kệ sách Phòng ngủ được trang bị giường sắt/gỗ, nệm (tặng kèm ga giường, gối) và tủ áo gỗ/nhựa/inox Trong bếp, có tủ chén và bộ bàn ăn, còn các mặt hàng khác như tủ giày, tượng gỗ và giá võng Về phân loại giá trị, cửa hàng có các sản phẩm đặc biệt như salon gỗ, trường kỷ, giường, tượng, hoành phi, tranh và lục bình làm từ gỗ quý hoặc có kích thước lớn Các mặt hàng cao cấp bao gồm salon gỗ, trường kỷ, tủ thờ, tượng gỗ lớn/quý, tủ phê và tủ áo gỗ, trong khi các sản phẩm có giá trị trung bình như tủ phê, giường, hoành phi và tượng gỗ trung bình cũng rất đa dạng.
Trong không gian nội thất, các món đồ như TV, ghế đẩu, tranh gỗ, ghế dây, bộ lư hương kết hợp với đĩa gỗ, tủ chén, lục bình và bộ bàn trà tạo nên sự hài hòa và thẩm mỹ Ngoài ra, tủ inox thấp, tủ giày, ghế vải, giá võng và tủ nhựa cũng là những lựa chọn thông minh để tối ưu hóa diện tích và công năng sử dụng.
Trong doanh nghiệp, cách tính lương cho nhân sự thường được xác định theo công thức: Lương = Lương cơ bản * Hệ số lương + Lương thưởng Đối với nhân viên tư vấn, lương được tính bằng Lương = Lương cơ bản * Hệ số lương + Lương phụ cấp * Số ngày làm việc Tương tự, nhân viên nhập kho và vận chuyển cũng áp dụng công thức này: Lương = Lương cơ bản * Hệ số lương + Lương phụ cấp * Số ngày làm việc Đối với nhân viên thu ngân và nhập liệu, cách tính lương cũng giống nhau, đảm bảo công bằng và minh bạch trong việc trả lương cho tất cả nhân viên.
• cửa hàng có trang bị Internet không?
• Doanh nghiệp có máy tính cá nhân không? Được trang bị ở đâu?
☒Có (2 máy) ☐Không o 1 máy ở bộ phận tiếp tân của nhân viên thu ngân o 1 máy ở phòng làm việc của quản lý
• Doanh nghiệp có nhu cầu sử dụng phần mềm quản lý cửa hàng không?
• Hệ điều hành đang dùng tại cửa hàng o Windows 10
• Nếu có một phần mềm quản lý cửa hàng, thì anh/ chị muốn nó có thể làm gì?
☒Quản lý khách hàng ☒ Quản lý nhân viên
☒ Quản lý mặt hàng ☒ Quản lý nhà phân phối
• Nếu được có một phần mềm/trang web, anh/chị muốn giao diện của nó như thế nào?
STT Câu hỏi Trả lời
1 Màu sắc chính giao diện Xanh
2 Yêu cầu màn hình Dễ nhìn, dễ thao tác,
Tình huống: Khách hàng muốn mua hàng trả góp (online)
Tình huống: Khách hàng muốn mua hàng trả góp (online)
2.1.2.3 Lập hoá đơn bán hàng
Tình huống: Nhân viên lập hoá đơn bán hàng
Tình huống: Khách hàng/nhân viên có yêu cầu cập nhật thông tin cá nhân
Thực hiện: Tiếp nhận thông tin cá nhân mới và tiến hành lưu trữ
Tình huống: Nhân viên kho/quản lý yêu cầu thêm/xoá/sửa sản phẩm
Tình huống: Quản lý yêu cầu thêm/xoá/sửa thông tin nhân viên
Tình huống : Lập báo cáo để thống kê doanh thu của cửa hàng
Bộ phân quản lý là bộ phận chịu trách nhiệm cao nhất ở cửa hàng
1 Quản lí, xem xét, đưa ra các quyết định cho hoạt động của cửa hàng.
2 Chịu trách nhiệm quản lí và hoạt động kinh doanh tại cửa hàng.
3 Có trách nhiệm về tài sản của nhân viên, khách hàng khi đến tập.
4 Giúp đỡ hỗ trợ nhân viên.
5 Đảm bảo sắp xếp nguồn nhân lực hợp lý, và nhân viên được đào tạo
6 Theo dõi và đôn đốc các báo cáo chi tiết tình hình cửa hàng (Doanh thu, lượng khách hàng, Mặt hàng bán chạy, Báo cáo tháng )
Bộ phận nhập kho/vận chuyển:
7 Tư vấn cho khách hàng mới.
8 Thực hiện đăng ký gói tập cho khách hàng.
9 Hướng dẫn, điều phối các nhân viên khác cùng nhập/xuất hàng, trưng bày sản phẩm
10 Làm việc trực tiếp với dịch vụ vận chuyển
11 Người trực tiếp có mặt ở cửa hàng để làm việc trực tiếp với khách hàng
12 Tư vấn cho khách hàng mới
13 Nắm rõ các mặt hàng, chức năng
Bộ phận thu ngân/nhập liệu:
14 Lập phiếu nhập/xuất hàng
16 Lưu trữ thông tin khách hàng
❖ Khả năng đáp ứng yêu cầu phần mềm, phần cứng o Phần cứng
Phần cứng Bộ phận quản lý Bộ phận nhân viên CPU Intel Core i3-8100 Intel Core i3-4130
Hard Disk 256GB (HDD) 256GB (HDD)
Video Card Intel HD Graphics 630 Intel HD
Tên Chức năng Yêu cầu
Hệ điều hành Bản quyền
Danh sách yêu cầu
2.2.1.1.1 Danh sách các yêu cầu
STT Tên yêu cầu Biểu mẩu Qui định Ghi chú
1 Xem các sản phẩm BM1 QĐ1 Khách
2 Tìm kiếm sản phẩm theo bộ lọc BM2 QĐ2 Khách
3 Lưu sản phẩm BM3 Khách
4 Xem sản phẩm đã lưu BM4 QĐ3 Khách
5 Đăng nhập BM5 QĐ4 Khách
6 Đăng ký BM6 QĐ5 Khách
7 Quản lý thông tin cá nhân BM7 QĐ6 Thành viên
8 Đặt hàng BM8 QĐ7 Thành viên
9 Tạo hóa đơn bán hàng BM9 QĐ8 Nhân viên bán hàng
10 Xem danh sách sản phẩm trong kho BM10 QĐ9 Nhân viên kho
11 Tạo phiếu nhập hàng BM11 QĐ10 Nhân viên kho
12 Lập báo cáo thống kê BM12 Kế toán
13 Quản lý người dùng BM13 QĐ11 Admin
14 Quản lý chức vụ BM14 QĐ12 Admin
15 Quản lý phân quyền BM15 QĐ13 Admin
16 Quản lý sản phẩm BM16 QĐ14 Admin
17 Quản lý nhà phân phối BM17 QĐ15 Admin
2.2.1.1.2 Danh sách các biểu mẩu và quy định
2.2.1.1.2.1 Biểu mẫu 1 và qui định 1
BM1 Xem chi tiết sản phẩm bán
Hình ảnh minh họa Mô tả, mục đích:
QĐ1: Trong mô tả, hiển thị một số thông tin sản phẩm (thông số kỹ thuật,…)
BM2 Tìm kiếm sản phẩm theo bộ lọc
Số phòng: Có sổ hồng:
Tên sản phẩm Người đăng Mục đích
QĐ2: Bộ lọc có nhiều tiêu chí khác nhau (giá bán, loại,…)
2.2.1.1.2.4 Biểu mẫu 4 và qui định 4
BM4 Xem sản phẩm đã lưu
STT Tên sản phẩm Giá tiền
QĐ3: Người dùng có thể bỏ lưu sản phẩm cứ lúc nào
2.2.1.1.2.5 Biểu mẫu 5 và qui định 4
Tên tài khoản: Mật khẩu:
QĐ4: Người dùng phải dùng username riêng biệt để đăng nhập, có thể truy cập vào ứng dụng bằng tư cách khách
2.2.1.1.2.6 Biểu mẫu 6 và qui định 5
BM6 Đăng ký tài khoản
Số điện thoại: Họ và tên:
QĐ5: Người dùng phải nhập đầy đủ các thông tin bắt buộc (email, username, số điện thoại, họ tên, mật khẩu)
2.2.1.1.2.7 Biểu mẫu 7 và qui định 6
BM12 Quản lý thông tin cá nhân
Số điện thoại: Họ và tên:
QĐ6: Người dùng phải nhập đầy đủ các thông tin bắt buộc (email, số điện thoại, họ tên, )
Tên tài khoản: Địa chỉ:
Tên sản phẩm: Số lượng: Đơn giá:
QĐ7: Người dùng phải nhập đầy đủ các thông tin bắt buộc (SĐT, Địa chỉ, sản phẩm, số lượng)
2.2.1.1.2.9 Biểu mẫu 9 và qui định 8
BM9 Tạo hóa đơn bán hàng
Tên người tạo: Tên người mua:
SĐT người mua: Email người mua:
Tên sản phẩm: Số lượng: Đơn giá:
QĐ8: Người dùng phải nhập đầy đủ các thông tin bắt buộc (SĐT người mua, Địa chỉ người mua, sản phẩm, số lượng)
2.2.1.1.2.10 Biểu mẫu 10 và qui định 9
BM10 Xem chi tiết sản phẩm trong kho
Hình ảnh minh họa Mô tả, mục đích:
QĐ9: Trong mô tả, hiển thị một số thông tin sản phẩm (thông số kỹ thuật,…)
2.2.1.1.2.11 Biểu mẫu 11 và qui định 10
BM11 Tạo phiếu nhập hàng
Tên tài khoản: Nhà phân phối
Danh sách sản phẩm nhập vào: Số lượng nhập: Đơn giá nhập:
QĐ10: Người dùng phải nhập đầy đủ các thông tin bắt buộc (Nhà phân phổi, Danh sách sản phẩm nhập vào, số lượng nhập, đơn giá)
BM12 Lập báo cáo thống kê
Tên tài khoản: Báo cáo trong khoản thời gian:
Số lượng sản phẩm đã bán: Số lượng sản phẩm đã nhập
Số lượt sản phẩm đã lưu:
2.2.1.1.2.13 Biểu mẫu 13 và qui định 11
BM13 Quản lý người dùng hệ thống
STT Người dùng Chức vụ Hoạt động
QĐ11: Hành động bao gồm chỉnh sửa, xóa thông tin người dùng
2.2.1.1.2.14 Biểu mẫu 14 và qui định 12
BM14 Quản lý chức vụ
STT Chức vụ Mô tả
QĐ12: Hành động bao gồm chỉnh sửa, xóa chức vụ
2.2.1.1.2.15 Biểu mẫu 15 và qui định 13
BM15 Quản lý phân quyền
QĐ13: Hành động bao gồm chỉnh sửa, xóa chức vụ
2.2.1.1.2.16 Biểu mẫu 16 và qui định 14
BM16 Quản lý sản phẩm
STT Tên sản phẩm Đơn giá xuất Đơn giá nhập Nhà phân phối
QĐ14: Hành động bao gồm chỉnh sửa, xóa sản phẩm
2.2.1.1.2.17 Biểu mẫu 17 và qui định 15
BM17 Quản lý nhà phân phối
STT Tên nhà phân phối Địa chỉ Số điện thoại
QĐ15: Hành động bao gồm chỉnh sửa, ngưng nhập hàng của nhà phân phối 2.2.1.2 Yêu cầu tiến hóa
STT Nghiệp vụ Tham số cần thay đổi Miền giá trị cần thay đổi
1 Thay đổi các chức năng Danh sách chức năng
STT Nghiệp vụ Tốc độ xử lý Dung lượng lưu trữ
1 Xem các sản phẩm 10.000 yêu cầu/giờ
2 Tìm kiếm sản phẩm theo bộ lọc 10.000 yêu cầu/giờ
3 Lưu sản phẩm 10.000 yêu cầu/giờ
4 Xem sản phẩm đã lưu Ngay tức thì
5 Đăng nhập Ngay tức thì
6 Đăng ký Ngay tức thì
7 Quản lý thông tin cá nhân Ngay tức thì
8 Đặt hàng 10.000 yêu cầu/giờ
9 Tạo hóa đơn bán hàng Ngay tức thì
10 Xem danh sách sản phẩm trong kho
11 Tạo phiếu nhập hàng Ngay tức thì
12 Lập báo cáo thống kê Ngay tức thì
13 Quản lý người dùng Ngay tức thì
14 Quản lý chức vụ Ngay tức thì
15 Quản lý phân quyền Ngay tức thì
16 Quản lý sản phẩm Ngay tức thì
17 Quản lý nhà phân phối Ngay tức thì
STT Nghiệp vụ Mức độ dễ học Mức độ dễ sử dụng
1 Xem các sản phẩm 5 phút hướng dẫn Dễ thao tác
2 Tìm kiếm sản phẩm theo bộ lọc 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
3 Lưu sản phẩm 2 phút hướng dẫn Dễ thao tác
4 Xem sản phẩm đã lưu 2 phút hướng dẫn Dễ thao tác
5 Đăng nhập 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
6 Đăng ký 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
7 Quản lý thông tin cá nhân 10 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
8 Đặt hàng 10 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
9 Tạo hóa đơn bán hàng 10 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
10 Xem danh sách sản phẩm trong kho 5 phút hướng dẫn Dễ thao tác
11 Tạo phiếu nhập hàng 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
12 Lập báo cáo thống kê 5 phút hướng dẫn Dễ thao tác
13 Quản lý người dùng 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
14 Quản lý chức vụ 10 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
15 Quản lý phân quyền 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
16 Quản lý sản phẩm 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
17 Quản lý nhà phân phối 5 phút hướng dẫn
Dễ thao tác, xử lý đúng các thông tin được nhập
Bảng trách nhiệm cho từng yêu cầu
STT Nghiệp vụ Người dùng Phần mềm Ghi chú
Hiển thị sản phẩm được chọn
2 Tìm kiếm sản phẩm theo bộ lọc
Cung cấp thông tin cho bộ lọc
Hiển thị các bài đăng phù hợp với bộ lọc
3 Lưu sản phẩm Nhấn nút lưu sản phẩm Xác nhận lưu sản phảm
Cho phép hủy, cập nhật
4 Xem sản phẩm đã lưu
Hiển thị sản phẩm được chọn
5 Đăng nhập Cung cấp thông tin đăng nhập Kiểm tra hợp lê Cho phép hủy
6 Đăng ký Cung cấp thông tin đăng ký Kiểm tra hợp lê
Cho phép cập nhật, hủy
7 Quản lý thông tin Cung cấp thông tin cá Kiểm tra hợp lê Cho phép cá nhân nhân cập nhật, hủy
Cung cấp thông tin về địa chỉ, sđt, danh sách sản phẩm, số lượng
Kiểm tra hợp lệ, ghi nhận
9 Tạo hóa đơn bán hàng
Cung cấp thông tin về địa chỉ, sđt, danh sách sản phẩm, số lượng, người mua
Kiểm tra hợp lệ, ghi nhận
Cho phép cập nhật, hủy
Xem danh sách sản phẩm trong kho
Hiển thị sản phẩm được chọn
Cung cấp thông tin về nhà phân phối, danh sách sản phẩm, số lượng, đơn giá
Kiểm tra hợp lệ, ghi nhận
Cho phép cập nhật, hủy
12 Lập báo cáo thống kê
Hiển thị thống kê được chọn
Kiểm tra hợp lệ, ghi nhận
Cho phép cập nhật hủy,
14 Quản lý chức vụ Kiểm tra hợp lệ, ghi nhận
Cho phép cập nhật hủy,
Kiểm tra hợp lệ, ghi nhận
Cho phép cập nhật hủy,
16 Quản lý sản phẩm Kiểm tra hợp lệ, ghi nhận
Cho phép cập nhật hủy,
17 Quản lý nhà phân phối
Kiểm tra hợp lệ, ghi nhận
Cho phép cập nhật hủy, 2.2.2.2 Yêu cầu tiến hóa
STT Nghiệp vụ Người dùng Phần mềm Ghi chú
2 Tìm kiếm sản phẩm theo bộ lọc
Lưu sản phẩm Cập nhật theo giá trị mới
4 Xem sản phẩm đã lưu
7 Quản lý thông tin cá nhân
Sửa thông tin Cập nhật theo giá trị mới
Thêm mới bài viết Cập nhật theo giá trị mới
9 Tạo hóa đơn bán hàng
Tạo mới hóa đơn bán hàng
Cập nhật dựa trên thời gian được cung cấp
Xem danh sách sản phẩm trong kho
Tạo mới phiếu nhập (cung cấp sản phẩm)
Cập nhật dựa trên thời gian được cung cấp
12 Lập báo cáo thống kê
Tạo mới báo cáo Cập nhật dựa trên thời gian được cung cấp
Thêm mới người dùng, (cung cấp chức vụ)
Có thể thêm mới theo giá trị mới
Thêm mới chức vụ, (cung cấp nhóm quyền)
Có thể thêm mới theo giá trị mới
Sửa quyền Có thể thêm mới theo giá trị mới
Thêm mới sản phẩm, (cung cấp đơn giá,số lượng)
Có thể thêm mới theo giá trị mới
17 Quản lý nhà phân phối
Thêm mới nhà phân phối, (cung cấp sđt, địa chỉ)
Có thể thêm mới theo giá trị mới
STT Nghiệp vụ Người dùng Phần mềm Ghi chú
1 Xem các sản phẩm Chọn sản phẩm Thực hiện đúng theo yêu cầu
2 Tìm kiếm sản phẩm theo bộ lọc
Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
3 Lưu sản phẩm Nhấn lưu sản phẩm Thực hiện đúng theo yêu cầu
4 Xem sản phẩm đã lưu Chọn sản phẩm Thực hiện đúng theo yêu cầu
5 Đăng nhập Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
6 Đăng ký Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
7 Quản lý thông tin cá nhân Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
8 Đặt hàng Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
9 Tạo hóa đơn bán hàng Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
10 Xem danh sách sản phẩm trong kho
Chọn sản phẩm Thực hiện đúng theo yêu cầu
11 Tạo phiếu nhập hàng Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
12 Lập báo cáo thống kê Chọn báo cáo Thực hiện đúng theo yêu cầu
13 Quản lý người dùng Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
14 Quản lý chức vụ Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
15 Quản lý phân quyền Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
16 Quản lý sản phẩm Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
17 Quản lý nhà phân phối Chuẩn bị thông tin nhập vào
Thực hiện đúng theo yêu cầu
STT Nghiệp vụ Người dùng Phần mềm Ghi chú
1 Xem các sản phẩm Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
2 Tìm kiếm sản phẩm theo bộ lọc Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
3 Lưu sản phẩm Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
4 Xem sản phẩm đã lưu Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
5 Đăng nhập Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
6 Đăng ký Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
7 Quản lý thông tin cá nhân Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
8 Đặt hàng Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
9 Tạo hóa đơn bán hàng Đọc hướng dẫn sử Thực hiện đúng dụng theo yêu cầu
10 Xem danh sách sản phẩm trong kho Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
11 Tạo phiếu nhập hàng Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
12 Lập báo cáo thống kê Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
13 Quản lý người dùng Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
14 Quản lý chức vụ Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
15 Quản lý phân quyền Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
16 Quản lý sản phẩm Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
17 Quản lý nhà phân phối Đọc hướng dẫn sử dụng
Thực hiện đúng theo yêu cầu
• RAM: 2GB hoặc hơn o Phần mềm
• Hệ điều hành: Android 4.4, IOS
• Trình duyệt: Any browser with Cookies
• Hệ thống máy chủ o Hardware
▪ RAM: 8GB hoặc hơn o Software
▪ Hệ điều hành: Windows Server 2008, CentOS7 …
▪ Môi trường: Microsoft NET Core 3.0
▪ Hệ quản trị Cơ sở dữ liệu: Microsoft SQL Server 2019
▪ Máy chủ Web: Internet Information Services (IIS).
Quy tắc nghiệp vụ
ID Rule Definition Type of Rule Static or
BR-1 Cần tài khoản và mật khẩu để đăng nhập vào hệ thống
BR-2 Người dùng đã đăng nhập vào hệ thống Ràng buộc Tĩnh
BR-3 Số lượng sản phẩm tồn phải lớn hơn số lượng sản phẩm cần mua
BR-4 Người dùng nhập đầy đủ thông tin Ràng buộc Tĩnh
BR-5 Chỉ có nhân viên bán hàng và quản lý mới có thể tạo hóa đơn bán hàng
BR-6 Chỉ có nhân viên kho và quản lý mới có thể xem danh sách sản phẩm trong kho
BR-7 Chỉ có nhân viên kho và quản lý mới có thể tạo phiếu nhập hàng
BR-8 Chỉ có kế toán và quản lý mới có thể lập báo cáo thống kê
BR-9 Chỉ có quản lý mới có thể quản lý người dùng
BR-10 Chỉ có quản lý mới có thể quản lý chức vụ
BR-11 Chỉ có quản lý mới có thể quản lý phân quyền
BR-12 Chỉ có quản lý mới có thể quản lý sản phẩm
BR-13 Chỉ có quản lý mới có thể quản lý giá bán của sản phẩm
BR-14 Giá bán phải lớn hơn giá nhập Ràng buộc Tĩnh
BR-15 Sản phẩm phải có thông tin: tên sản phẩm, giá bán, nhà phân phối, ngày nhập, số lượng tồn
Báo cáo khả thi
Báo cáo tóm tắt đề tài
Nhóm chúng em thực hiện dự án xây dựng website cho cửa hàng trang trí nội thất quy mô vừa và nhỏ, kết hợp với các chức năng quản lý kho, thông tin khách hàng và báo cáo doanh thu.
Hứa hẹn mang đến sự đổi mới trong giao diện, giúp người dùng dễ dàng tiếp cận và sử dụng sản phẩm hơn Điều này không chỉ nâng cao hiệu suất công việc mà còn tiết kiệm thời gian và chi phí một cách hiệu quả.
• Đề tài: Hệ thống quản lý cửa hàng trang trí nội thất TwinD
• Môi trường phát triển: Microsoft Visual Studio 2019, Odoo
• Công cụ quản lý dự án: Trello, Google Drive, Odoo
• Yêu cầu chất lượng: phần mềm đơn giản, hiệu quả, thân thiện và đảm bảo tính thẩm mỹ tạo cảm hứng cho người dùng
• Điều kiện, căn cứ pháp lý: mang tính hợp pháp
• Thời gian tiến hành: từ 29/03/2021 đến 01/07/2021
• Môi trường làm việc nhóm: Trello, Google Drive, Facebook
Dự kiến phát hành 2 phiên bản với các mốc thời gian như sau:
• Phiên bản 1 vào cuối tháng 6 năm nay
• Phiên bản 2 vào đầu tháng 7 năm nay
Dự án sau khi xây dựng xong sẽ áp dụng thử nghiệm tại cửa hàng trang trí nội thất của nơi đã thực hiện khảo sát
Nguồn vốn do nhóm tự chi
Trước những thách thức của thời kỳ đổi mới kinh tế, việc ứng dụng công nghệ cao trong quản lý nghiệp vụ là rất cần thiết Các hệ thống cửa hàng cũng phải đối mặt với sự đa dạng của mặt hàng và nhiều loại hình công tác nghiệp vụ như thủ kho, kế toán, điều này dẫn đến chi phí cao về nhân lực và tài lực.
Hệ thống quản lý cửa hàng của chúng tôi được thiết kế thân thiện và bắt mắt, tích hợp nhiều tính năng đa nhiệm phục vụ cả chủ doanh nghiệp lẫn khách hàng trong việc tìm kiếm và tra cứu hàng hóa Đặc biệt, trong bối cảnh đại dịch COVID-19, thương mại điện tử trở thành một lĩnh vực đầy tiềm năng mà chúng tôi muốn khai thác.
Dự án số hoá quy trình quản lý mang lại nhiều lợi ích cho doanh nghiệp, giúp tiết kiệm chi phí và nhân công, cho phép nhà quản lý đầu tư thời gian hiệu quả hơn, từ đó nâng cao doanh thu Đối với khách hàng, dự án cung cấp môi trường tra cứu hàng hoá thuận tiện, tiết kiệm thời gian và công sức, đồng thời nâng cao trải nghiệm mua sắm, khuyến khích họ quay lại cửa hàng nhiều hơn.
• Phù hợp với quy mô cửa hàng: 10-100 mặt hàng
• Đối tượng hướng đến: cửa hàng tư nhân, doanh nghiệp vừa và nhỏ
• Phục vụ lên đến 20 khách cùng lúc
Xây dựng hệ thống online với nền tảng Odoo Framework, sử dụng hệ quản trị cơ sở dữ liệu SQLServer
Hiện tại, người dùng chỉ có thể truy cập vào localhost thông qua LogMeIn Hamachi Tuy nhiên, nếu thành công và có nguồn kinh phí hỗ trợ, người dùng sẽ có khả năng truy cập website qua trình duyệt trên mọi nền tảng Hệ thống online được xây dựng trên nền tảng ASP.Net, sử dụng cơ sở dữ liệu MariaDB Người dùng có thể truy cập ứng dụng từ điện thoại Android hoặc iOS.
Một số lỗi có thể xảy ra đối với các kiểm duyện viên hoặc người quản trị hê thống ban đầu
Odoo là một nền tảng cực kì mới nên gặp nhiều khó khăn trong việc tìm hiểu cũng như tìm kiếm sự trợ giúp
Việc làm quen sẽ khá mất thời gian vì nhiều thao tác, yêu cầu nghiệp vụ mang tính chuyên môn
Phần mềm hiện tại chỉ cho phép truy cập vào localhost thông qua LogMeIn Hamachi Tuy nhiên, nếu thành công và có nguồn kinh phí hỗ trợ, người dùng sẽ có khả năng truy cập website bằng trình duyệt trên mọi nền tảng.
Mức độ cạnh tranh trong ngành phần mềm quản lý cửa hàng ngày càng gia tăng do sự xuất hiện của nhiều đối thủ lớn và tốc độ phát triển nhanh chóng của các công ty phần mềm.
Mang lại hiệu quả kinh tế cao: tiết kiệm nhân công, thời gian, chi phí
Hứa hẹn cho độ phủ sóng của phần mềm trong địa bàn nông thôn, nơi chưa được tiếp cận những hệ thống website chi phí lớn.
Usecase, Đặc tả usecase và sơ đồ hoạt động
6 Xem sản phẩm trong giỏ hàng
Người dùng 7 Quản lý thông tin cá nhân
9 Tạo hóa đơn bán hàng
Nhân viên kho 10 Xem danh sách sản phẩm trong kho
Kế toán 12 Lập báo cáo thống kê
Quản lý 13 Quản lý người dùng
17 Quản lý nhà phân phối
STT - tên: UC-1 Đăng ký
Mô tả: Người dùng đăng ký tài khoản để đăng nhập vào hệ thống
Mục đích: Cấp tài khoản cho người dùng truy cập vào hệ thống Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện đăng ký Điều kiện lúc sau:
POST-1 Người dùng đăng ký thành công
1.0 Đăng ký hệ thống thành công Người dùng khởi động ứng dụng
Người dùng nhập các thông tin đăng ký
Hệ thống lưu thông tin đăng ký thành công
Ngoại lệ: 1.0.E1 Người dùng đã có có tài khoản Ưu tiên: Cao
STT - tên: UC-2 Đăng Nhập
Mô tả: Người dùng đăng nhập tài khoản để truy cập vào hệ thống
Mục đích: Hệ thống cho phép người dùng truy cập Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện đăng nhập
PRE-2 Người dùng đã có tài khoản Điều kiện lúc sau:
POST-1 Người dùng đăng nhập thành công
2.0 Đăng nhập hệ thống thành công Người dùng khởi động ứng dụng
Người dùng nhập tài khoản và mật khẩu
Hệ thống xác thực thông tin đăng nhập thành công và cho phép người dùng khách truy cập vào hệ thống
Ngoại lệ: 2.0.E2 Đăng nhập hệ thống không thành công
Hệ thống xác thực thông tin đăng nhập không thành công và hiển thị thông báo Ưu tiên: Cao
STT - tên: UC-3 Xem sản phẩm
Primary Actor: Tất cả Secondary
Người dùng có thể dễ dàng xem các sản phẩm đã được phê duyệt tại cửa hàng Hệ thống này được thiết kế để cung cấp trải nghiệm mua sắm trực quan, giúp người dùng tìm kiếm và lựa chọn sản phẩm một cách thuận tiện.
PRE-1 Thiết bị của người dùng phải kết nối internet Điều kiện lúc sau:
3.0 Xem bài đăng thành công Người dùng khởi động ứng dụng
Hệ thống cập nhật các bài đăng về ứng dụng
Ngoại lệ: 3.0.E2 Đăng nhập hệ thống không thành công
Thiết bị không kết nối internet Ưu tiên: Cao
STT - tên: UC-4 Tìm kiếm sản phẩm
Primary Actor: Tất cả Secondary
Người dùng cần tìm kiếm thông tin về sản phẩm phù hợp với nhu cầu của mình Mục đích chính là cung cấp những thông tin mà người dùng đang tìm kiếm Để thực hiện điều này, thiết bị của người dùng phải được kết nối internet.
4.0 Tìm kiếm thành công Người dùng khởi động ứng dụng
Người dùng nhập thông tin cần tìm kiếm vào thanh tìm kiếm
Hệ thống truy xuất trong CSDL và trả về kết quả
Ngoại lệ: Không có Ưu tiên: Thường
STT - tên: UC-5 Lưu sản phẩm
Primary Actor: Tất cả Secondary
Mô tả: Người dùng lưu sản phẩm đang quan tâm
Mục đích: Cho phép người dùng lưu lại sản phẩm người dùng đang quan tâm Điều kiện tiên quyết:
PRE-3 Thiết bị của người dùng phải kết nối internet Điều kiện lúc sau:
5.0 Ghim thành công Người dùng chọn vào sản phẩm đang quan tâm
Hệ thống lưu lại sản phẩm người dùng đã ghim
Ngoại lệ: Không có Ưu tiên: Thường
STT - tên: UC-6 Xem sản phẩm trong giỏ hàng
Primary Actor: Tất cả Secondary
Mô tả: Người dùng xem lại danh sách sản phẩm đã lưu
Mục đích: Hệ thông cho phép người dùng xem lại những sản phẩm đã quan tâm Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet Điều kiện lúc sau:
6.0 Xem bài đăng đã ghim thành công Người dùng vào mục bài đã ghim
Hệ thống trả về những bài đăng đã ghim
Ngoại lệ: Không có Ưu tiên: Cao
STT - tên: UC-7 Quản lý thông tin cá nhân
Primary Actor: Người dùng Secondary
Mô tả: Người dùng cập nhật thông tin cá nhân
Mục đích: Hệ thống cho phép người dùng thay đổi thông tin cá nhân Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện PRE-2 Người dùng đã đăng nhập vào hệ thống
PRE-3 Người dùng đã được cấp quyền chỉnh sửa thông tin cá nhân Điều kiện lúc sau: POST-1 Người dùng cập nhật thông tin thành công
Quy trình cơ bản: 7.0 Cập nhật thông tin thành công
Người dùng truy cập vào thông tin cá nhân
Chọn “Cập nhật thông tin”
Người dùng nhập các thông tin cá nhân cần cập nhật
Hệ thống cập nhật thông tin thành công
Quy trình thay thế: Không có
Ngoại lệ: 7.0E1 Cập nhật thông tin không thành công
Hệ thống kiểm tra tính đúng đắn của thông tin người dùng nhập vào không hợp lệ và hiển thị thông báo
Yêu cầu người dùng nhập đúng thông tin cần cập nhật Ưu tiên: Cao
STT - tên: UC-8 Đặt hàng
Người dùng Seconda ry Actors:
Mô tả: Người dùng đặt sản phẩm Mục đích: Hệ thống cho phép người dùng đặt sản phẩm Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện
PRE-2 Người dùng đã đăng nhập vào hệ thống
PRE-3 Người dùng đã được đặt hàng Điều kiện lúc sau:
11.0 So sánh hai bài đăng thành công
1 Người dùng chọn vào 1 hoặc nhiều sản phẩm
3 Người dùng nhập thông tin địa chỉ
5 Hệ thống lưu lại thông tin đặt hàng của người dùng và thông báo đặt hàng thành công
Ngoại lệ: Không có Ưu tiên: Cao
Usecase cho Nhân viên bán hàng
STT - tên: UC-9 Tạo hóa đơn bán hàng
Primary Actor: Nhân viên bán hàng,
Mô tả: Nhân viên bán hàng tạo hóa đơn bán hàng
Mục đích: Hệ thống cho phép người dùng tạo hóa đơn bán hàng Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện PRE-2 Người dùng đã đăng nhập vào hệ thống
PRE-3 Người dùng đã được cấp quyền tạo hóa đơn bán hàng Điều kiện lúc sau: Không có
Quy trình cơ bản: 9.0 Tạo hóa đơn bán hàng thành công
Nhân viên bán hàng truy cập vào danh sách đơn đặt hàng
Chọn “đơn đặt hàng cần tạo hóa đơn”
Nhân viên bán hàng kiểm tra đơn đặt hàng
Chọn tạo hóa đơn bán hàng
Hệ thống cập nhật thay đổi và thông báo tạo hóa đơn thành công thành công
Quy trình thay thế: Không có
Ngoại lệ: Không có Ưu tiên: Trung bình
Business rule: BR-2,BR-3,BR-4, BR-5
Usecase cho Nhân viên kho
STT - tên: UC-10 Xem danh sách sản phẩm trong kho
Primary Actor: Nhân viên kho, Quản lý,
Mô tả: Người dùng danh sách sản phẩm có trong kho
Mục đích: Hệ thông cho phép người dùng xem danh sách sản phẩm trong kho Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện
PRE-2 Người dùng đã đăng nhập vào hệ thống
PRE-3 Người dùng đã được cấp quyền tạo hóa đơn bán hàng Điều kiện lúc sau:
10.0 Xem sản phẩm trong kho thành công Người dùng vào mục kho
Hệ thống trả về những bài đăng đã ghim Quy trình thay thế:
Ngoại lệ: Không có Ưu tiên: Cao
STT - tên: UC-11 Tạo phiếu nhập hàng
Primary Actor: Nhân viên kho, Quản lý,
Mô tả: Người dùng tạo phiếu nhập hàng
Mục đích: Hệ thông cho phép người dùng tạo phiếu nhập hàng Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện PRE-2 Người dùng đã đăng nhập vào hệ thống
PRE-3 Người dùng đã được cấp quyền tạo phiếu nhập hàng Điều kiện lúc sau:
11.0 Tạo phiếu nhập hàng thành công Người dùng vào mục quản lý kho
Chọn “Tạo phiếu nhập hàng”, Người dùng nhập thông tin phiếu nhập hàng, Bấm bút “Tạo phiếu”
Hệ thống tạo phiếu nhập hàng và thông báo tạo phiếu nhập hàng thành công
Ngoại lệ: Không có Ưu tiên: Cao
STT - tên: UC-12 Lập báo cáo thống kê
Primary Actor: Kế toán, Quản lý, Admin Secondary
Mô tả: Người dùng thống kê doanh thu cửa hàng theo từng tháng
Mục đích: Hệ thông cho phép người dùng thống kê doanh thu cửa hàng Điều kiện tiên quyết:
PRE-1 Thiết bị của người dùng phải kết nối internet Điều kiện lúc sau:
6.0 Xem bài đăng đã ghim thành công Người dùng vào mục thống kê
Hệ thống hiển thị thống kê doanh thu cửa hàng
Ngoại lệ: Không có Ưu tiên: Cao
STT - tên: UC-13 Quản lý người dùng
Primary Actor: Quản lý, Admin Secondary
Mô tả: Người dùng thêm tài khoản người dùng mới, chỉnh sửa thông tin hoặc xóa tài khoản người dùng
Mục đích: Người dùng quản lý thêm tài khoản cho người dùng mới và chỉnh sửa tài khoản người dùng Điều kiện tiên quyết:
PRE-1 Thiết bị của admin phải kết nối internet khi thực hiện
PRE-2 Admin đã đăng nhập vào hệ thống Điều kiện lúc sau: Không có
Quy trình cơ bản: 14.0 Thêm người dùng mới thành công
Người dùng vào quản lý người dùng
Người dùng chọn “Thêm tài khoản”
Người dùng nhập thông tin tài khoản người dùng và ấn “Lưu”
Hệ thống thêm tài khoản mới và thông báo thêm tài khoản thành công 14.1 Cập nhật thông tin người dùng thành công
Người dùng vào quản lý người dùng
Chọn tài khoản muốn cập nhật
Người dùng nhập thông tin cần cập nhật và ấn “Lưu”
Hệ thống cập nhật lại thông tin tài khoản người dùng và thông báo cập nhật tài khoản thành công
14.2 Xóa tài khoản người dùng thành công Người dùng vào quản lý người dùng
Chọn tài khoản muốn xóa và nhấn “Xóa tài khoản”
Hệ thống xóa tài khoản người dùng và thông báo xóa tài khoản thành công
Quy trình thay thế: Không có
Ngoại lệ: Không có Ưu tiên: Thường
STT - tên: UC-14 Quản lý chức vụ
Primary Actor: Quản lý, Admin Secondary
Người dùng có thể thêm, chỉnh sửa hoặc xóa chức vụ mới để quản lý thông tin hiệu quả hơn Việc này giúp tối ưu hóa quy trình làm việc và đảm bảo rằng các chức vụ được cập nhật kịp thời.
PRE-1 Thiết bị của admin phải kết nối internet khi thực hiện
PRE-2 Người dùng đã đăng nhập vào hệ thống Điều kiện lúc sau: Không có
Quy trình cơ bản: 16.0 Thêm Chức vụ mới thành công
Người dùng vào quản lý chức vụ
Người dùng chọn “Thêm chức vụ”
Người dùng nhập thông tin chức vụ và ấn “Lưu”
Hệ thống thêm chức vụ mới và thông báo thêm chức vụ thành công 16.1 Cập nhật chức vụ thành công
Người dùng vào quản lý chức vụ
Chọn chức vụ muốn cập nhật
Người dùng nhập thông tin cần cập nhật và ấn “Lưu”
Hệ thống cập nhật lại thông tin chức vụ và thông báo cập nhật chức vụ thành công
16.2 Xóa tài chức vụ thành công Người dùng vào quản lý chức vụ
Chọn chức vụ muốn xóa và nhấn “Xóa chức vụ”
Hệ thống xóa tài khoản chức vụ và thông báo xóa chức vụ thành công Quy trình thay thế: Không có
Ngoại lệ: Không có Ưu tiên: Thường
STT - tên: UC-15 Quản lý phân quyền
Primary Actor: Quản lý, Admin Secondary
Người dùng có thể thêm quyền mới, chỉnh sửa thông tin hoặc xóa quyền đã có để quản lý hiệu quả hơn Điều này giúp người dùng kiểm soát và cập nhật quyền truy cập theo nhu cầu Để thực hiện các thao tác này, cần đảm bảo đáp ứng các điều kiện tiên quyết nhất định.
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện PRE-2 Người dùng đã đăng nhập vào hệ thống Điều kiện lúc sau: Không có
Quy trình cơ bản: 16.0 Thêm quyền mới thành công
Người dùng vào quản lý quyền
Người dùng chọn “Thêm quyền”
Người dùng nhập thông tin quyền và ấn “Lưu”
Hệ thống thêm quyền mới và thông báo thêm quyền thành công 16.1 Cập nhật quyền thành công
Người dùng vào quản lý quyền
Chọn quyền muốn cập nhật
Người dùng nhập thông tin cần cập nhật và ấn “Lưu”
Hệ thống cập nhật lại thông tin quyền và thông báo cập nhật quyền thành công
16.2 Xóa tài quyền thành công Người dùng vào quản lý quyền
Chọn quyền muốn xóa và nhấn “Xóa quyền”
Hệ thống xóa tài khoản quyền và thông báo xóa quyền thành công Quy trình thay thế: Không có
Ngoại lệ: Không có Ưu tiên: Thường
STT - tên: UC-16 Quản lý sản phẩm
Primary Actor: Quản lý, Admin Secondary
Người dùng có thể dễ dàng thêm sản phẩm mới, chỉnh sửa thông tin hoặc xóa sản phẩm không cần thiết Mục đích chính là giúp người dùng quản lý hiệu quả danh mục sản phẩm của mình Để thực hiện các thao tác này, người dùng cần đáp ứng một số điều kiện tiên quyết nhất định.
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện PRE-2 Người dùng đã đăng nhập vào hệ thống Điều kiện lúc sau: Không có
Quy trình cơ bản: 17.0 Thêm sản phẩm mới thành công
Người dùng vào quản lý sản phẩm
Người dùng chọn “Thêm sản phẩm”
Người dùng nhập thông tin sản phẩm và ấn “Lưu”
Hệ thống thêm sản phẩm mới và thông báo thêm sản phẩm thành công 17.1 Cập nhật sản phẩm thành công
Người dùng vào quản lý sản phẩm
Chọn sản phẩm muốn cập nhật
Người dùng nhập thông tin cần cập nhật và ấn “Lưu”
Hệ thống cập nhật lại thông tin sản phẩm và thông báo cập nhật sản phẩm thành công
17.2 Xóa tài sản phẩm thành công Người dùng vào quản lý sản phẩm
Chọn sản phẩm muốn xóa và nhấn “Xóa sản phẩm”
Hệ thống xóa tài khoản sản phẩm và thông báo xóa sản phẩm thành công
Quy trình thay thế: Không có
Ngoại lệ: Không có Ưu tiên: Thường
Business rule: BR-2, BR-12,BR-13, BR-14, BR-15
STT - tên: UC-17 Quản lý nhà phân phối
Primary Actor: Quản lý, Admin Secondary
Người dùng có khả năng thêm nhà phân phối mới, chỉnh sửa thông tin hoặc xóa nhà phân phối hiện có Mục đích chính là giúp người dùng quản lý hiệu quả danh sách nhà phân phối của mình Để thực hiện các thao tác này, người dùng cần đáp ứng một số điều kiện tiên quyết nhất định.
PRE-1 Thiết bị của người dùng phải kết nối internet khi thực hiện PRE-2 Người dùng đã đăng nhập vào hệ thống Điều kiện lúc sau: Không có
Quy trình cơ bản: 18.0 Thêm nhà phân phối mới thành công
Người dùng vào quản lý nhà phân phối
Người dùng chọn “Thêm nhà phân phối”
Người dùng nhập thông tin nhà phân phối và ấn “Lưu”
Hệ thống thêm nhà phân phối mới và thông báo thêm nhà phân phối thành công
18.1 Cập nhật nhà phân phối thành công Người dùng vào quản lý nhà phân phối
Chọn nhà phân phối muốn cập nhật
Người dùng nhập thông tin cần cập nhật và ấn “Lưu”
Hệ thống cập nhật lại thông tin nhà phân phối và thông báo cập nhật nhà phân phối thành công
18.2 Xóa tài nhà phân phối thành công Người dùng vào quản lý nhà phân phối
Chọn nhà phân phối muốn xóa và nhấn “Xóa nhà phân phối”
Hệ thống xóa tài khoản nhà phân phối và thông báo xóa nhà phân phối thành công
Quy trình thay thế: Không có
Ngoại lệ: Không có Ưu tiên: Thường
Sơ đồ tuần tự
Sơ đồ tuần tự việc xem sản phẩm
Sơ đồ tuần tự cho việc đặt hàng
Sơ đồ tuần tự cho việc nhập hàng
Sơ đồ tuần tự cho việc thêm tài khoản
Sơ đồ tuần tự cho việc thêm sản phẩm
Sơ đồ tuần tự cho việc lập báo cáo
Sơ đồ trạng thái
Sơ đồ trạng thái cho Đăng nhập
Sơ đồ trạng thái cho Thêm tài khoản
Sơ đồ trạng thái cho Đặt hàng
Sơ đồ trạng thái cho Tạo sản phẩm mới
Sơ đồ trạng thái cho Tạo phiếu nhập hàng
State Diagram cho Lập hóa đơn bán hàng
Sơ đồ lớp
Mô hình thực thể ERD hoàn thiện
Mô tả sơ đồ lớp
2.8.3.1 Danh sách các lớp đối tượng và quan hệ
STT Tên lớp/quan hệ Loại Ý nghĩa/Ghi chú
5 ChiTietPhieuNhap public Chi tiết phiếu nhập
7 ChiTietHoaDon public Chi tiết hóa đơn
9 NguonPhanPhoi public Nguồn phân phối
10 LoaiSanPham public Loại sản phẩm
11 ChiTietChucVu public Chi tiết chức vụ
2.8.3.2 Mô tả chi tiết từng lớp đối tượng
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaNguoiDung int PK Mã người dùng
2 TaiKhoan string private Tài khoản
3 MatKhau char private Mật khẩu
4 MaChucVu string FK Mã chức vụ
5 HoTen string private Đã xóa
6 SDT int private Số điện thoại
9 DiaChi string private Địa chỉ
10 NgaySinh DateTime private Ngày sinh
11 GioiTinh string private Giới tính
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaChucVu int PK Mã chức vụ
2 TenChucVu string private Tên chức vụ
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaQuyen int PK Mã quyền
2 MoTa int private Mô tả
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaQuyen int PK Mã quyền
2 MaChucVu int FK Mã chức vụ
3 KichHoat bool private Kích hoạt
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaPhieuNhap int PK Mã phiếu nhập
2 NgayNhap datetime private Ngày nhập
3 MaNguoiLap int FK Mã người nhập
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
2 MaSanPham int Mã sản phẩm
3 SoLuong int private Số lượng
4 GiaNhap Money private Giá nhập
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaHoaDon Int PK Mã hóa đơn
2 NgayLapHoaDon Datetime private Ngày lập hóa đơn
3 MaKhachHang Int FK Mã khách hàng
4 MaNguoiLap int FK Mã người lập
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaChiTietHoaDon Int PK Mã chi tiết hóa đơn
2 NgàyLapHoaDon datetime private Ngày lập hóa đơn
3 SoLuong Int private Số lượng
4 DonGia Money private Đơn giá
5 MaSanPham int Fk Mã sản phẩm
6 MaHoaDon Int FK Mã hóa đơn
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaSanPham int PK Mã sản phẩm
2 TenSanPham string private Tên sản phẩm
3 SoLuongTon int private Số lượng tồn
4 SoLuongBan int private Số lượng bán
5 MaNguonPhamPhoi int FK Mã nguồn phân phối
6 GhiChu string private Ghi chú
7 MaLoaiSanPham int FK Mã loại sản phẩm
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaNguonPhanPhoi int PK Mã nguồn phân phối
2 TenNguonPhanPhoi string private Tên nguồn phân phối
3 SDT int private Số điện thoại
4 DiaChi string private Địa chỉ
6 NoGoiDauToiDa money private Nợ gối đầu tối đa
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaLoaiSanPham int PK Mã loại sản phẩm
2 TenLoaiSanPham string private Tên loại sản phẩm
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 SoLuongTonToiDa int private Số lượng tồn tối đa
2 SoLuongNhapToiDa int private Số lượng nhập tối đa
Sơ đồ logic
Thiết kế sơ đồ logic
Mô tả sơ đồ logic
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaNguoiDung int PK Mã người dùng
2 TaiKhoan string private Tài khoản
3 MatKhau char private Mật khẩu
4 MaChucVu string FK Mã chức vụ
5 HoTen string private Đã xóa
6 SDT int private Số điện thoại
9 DiaChi string private Địa chỉ
10 NgaySinh DateTime private Ngày sinh
11 GioiTinh string private Giới tính
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaChucVu int PK Mã chức vụ
2 TenChucVu string private Tên chức vụ
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaQuyen int PK Mã quyền
2 MoTa int private Mô tả
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaQuyen int PK Mã quyền
2 MaChucVu int FK Mã chức vụ
3 KichHoat bool private Kích hoạt
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaPhieuNhap int PK Mã phiếu nhập
2 NgayNhap datetime private Ngày nhập
3 MaNguoiLap int FK Mã người nhập
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
2 MaSanPham int Mã sản phẩm
3 SoLuong int private Số lượng
4 GiaNhap Money private Giá nhập
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaHoaDon Int PK Mã hóa đơn
2 NgayLapHoaDon Datetime private Ngày lập hóa đơn
3 MaKhachHang Int FK Mã khách hàng
4 MaNguoiLap int FK Mã người lập
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaChiTietHoaDon Int PK Mã chi tiết hóa đơn
2 NgàyLapHoaDon datetime private Ngày lập hóa đơn
3 SoLuong Int private Số lượng
4 DonGia Money private Đơn giá
5 MaSanPham int Fk Mã sản phẩm
6 MaHoaDon Int FK Mã hóa đơn
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaSanPham int PK Mã sản phẩm
2 TenSanPham string private Tên sản phẩm
3 SoLuongTon int private Số lượng tồn
4 SoLuongBan int private Số lượng bán
5 MaNguonPhamPhoi int FK Mã nguồn phân phối
6 GhiChu string private Ghi chú
7 MaLoaiSanPham int FK Mã loại sản phẩm
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaNguonPhanPhoi int PK Mã nguồn phân phối
2 TenNguonPhanPhoi string private Tên nguồn phân phối
3 SDT int private Số điện thoại
4 DiaChi string private Địa chỉ
6 NoGoiDauToiDa money private Nợ gối đầu tối đa
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 MaLoaiSanPham int PK Mã loại sản phẩm
2 TenLoaiSanPham string private Tên loại sản phẩm
STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chú
1 SoLuongTonToiDa int private Số lượng tồn tối đa
2 SoLuongNhapToiDa int private Số lượng nhập tối đa
Thiết kế kiến trúc
Hệ thống sử dụng kiến trúc sử dụng mô hình MVC(Model-View-Control)
• Model : database PostgreSQL để lưu trữ dữ liệu
• View : dùng XML để tạo ra giao diện
• Control : dùng Python để tạo các object, truy xuất cơ sở dữ liệu, chuyển cho view để đưa ra giao diện
Hình 1: Kiến trúc tổng quát của hệ thống
Mô hình dữ liệu trong Odoo được lưu trữ trong cơ sở dữ liệu PostgreSQL, cho phép người dùng tạo các thiết lập riêng biệt Odoo nổi bật với việc cấu trúc cơ sở dữ liệu được xác định bởi các mô-đun tại thời điểm cài đặt Odoo Framework tự động tạo các bảng cần thiết dựa trên định nghĩa mô hình, giúp quản trị viên dễ dàng mở rộng mô hình dữ liệu thông qua giao diện web mà không cần can thiệp vào mã nguồn.
Trong Odoo, mỗi loại hình xem được xác định thông qua tài liệu XML, và Odoo Framework đảm nhiệm việc hiển thị các tệp này trên trình duyệt web Ngoài ra, có thể xây dựng các chế độ xem thay thế để hiển thị các chức năng của Odoo trên các nền tảng khác, bao gồm cả thiết bị di động.
Bộ điều khiển trong kiến trúc Odoo là nơi thực hiện các logic kinh doanh và quy tắc hoạt động, được lập trình bằng ngôn ngữ Python và lưu trữ dưới dạng đối tượng trong các mô-đun Odoo.
MVC là Mô hình source code thành 3 phần, tương ứng mỗi từ Mỗi từ tương ứng với một hoạt động tách biệt trong một mô hình
3.2.1.4 Mô hình MVC và các thành phần bên trong của MVC
Model là bộ phận lưu trữ toàn bộ dữ liệu của ứng dụng, đóng vai trò cầu nối giữa View và Controller Nó có thể được thể hiện dưới dạng cơ sở dữ liệu hoặc chỉ là một file XML đơn giản.
Model thể hiện rõ các thao tác với cơ sở dữ liệu như cho phép xem, truy xuất, xử lý dữ liệu,…
Phần View (V) trong kiến trúc MVC là giao diện người dùng, nơi người dùng có thể truy cập thông tin dữ liệu thông qua các thao tác truy vấn như tìm kiếm hoặc sử dụng trên các trang web.
Các ứng dụng web thường sử dụng MVC View để tạo ra các thành phần HTML trong hệ thống Ngoài ra, View còn đóng vai trò ghi nhận hoạt động của người dùng, giúp tương tác hiệu quả với Controller.
View không trực tiếp liên kết với Controller và không thể lấy dữ liệu từ Controller; nhiệm vụ của View chỉ là hiển thị yêu cầu và chuyển giao chúng cho Controller.
Ví dụ: Nút “delete” được tạo bởi View khi người dùng nhấn vào nút đó sẽ có một hành động trong Controller
Bộ phận xử lý yêu cầu người dùng thông qua view, từ đó cung cấp dữ liệu phù hợp Ngoài ra, Controller còn có vai trò kết nối với model.
3.2.1.4.4 Luồng tương tác giữa các thành phần trong MVC:
Ví dụ: Chức năng thêm bài viết mới trong trang quản trị website Nơi đây có 2 trường nhập về tiêu đề và nội dung bài viết, thì trong đó:
● View sẽ hiển thị ra phần nhập form tiêu đề và nội dung
● Controller lấy dữ liệu từ 2 trường và gửi tới Model
Mô hình MVC nhận dữ liệu từ Controller để lưu trữ trong cơ sở dữ liệu, với từng bộ phận thực hiện chức năng riêng nhưng vẫn liên kết chặt chẽ với nhau Mô hình này nhẹ và có khả năng tích hợp nhiều tính năng hiện có trong ASP.NET, chẳng hạn như quá trình xác thực (authentication).
Khi máy client gửi yêu cầu đến server, Controller sẽ tiếp nhận và xử lý yêu cầu đó Nếu cần thiết, Controller có thể liên hệ với Model, bộ phận chuyên làm việc với cơ sở dữ liệu để hỗ trợ trong quá trình xử lý.
Sau khi hoàn tất xử lý yêu cầu, kết quả sẽ được gửi về View Tại đây, mã HTML sẽ được tạo ra để xây dựng giao diện và hiển thị trên trình duyệt.
3.2.1.4.6 Ưu & nhược điểm của MVC?
MVC tiết kiệm băng thông nhờ không sử dụng viewstate, giúp giảm diện tích băng thông cần thiết Điều này cho phép người dùng tương tác liên tục với ứng dụng web, gửi và nhận dữ liệu một cách hiệu quả Việc giảm băng thông không chỉ cải thiện hiệu suất mà còn đảm bảo website hoạt động ổn định hơn.
Với MVC, việc kiểm tra và rà soát lỗi phần mềm trở nên đơn giản hơn, giúp đảm bảo chất lượng và độ tin cậy cao trước khi sản phẩm đến tay người tiêu dùng.
Chức năng control trên các website đóng vai trò quan trọng với ngôn ngữ lập trình như CSS, HTML và JavaScript Việc áp dụng mô hình MVC giúp xây dựng bộ control hiệu quả, tận dụng các ngôn ngữ hiện đại và đa dạng hình thức.
View là nơi lưu trữ dữ liệu và kích thước của nó sẽ tăng lên khi có nhiều yêu cầu được thực hiện, dẫn đến giảm tốc độ tải của đường truyền mạng Sử dụng mô hình MVC giúp tối ưu hóa băng thông, tiết kiệm diện tích và cải thiện hiệu suất.
● Chức năng Soc (Separation of Concern): Chức năng này cho phép bạn phân tách rõ ràng các phần như Model, giao diện, data, nghiệp vụ