Hiện trạng Hàng hóa quản lý trong kho của một siêu thị gồm có hàng thực phẩm, hàng sảnh sứ và hàng điện máy.. Ngoài ra, người quản lý cần quan tâm đến số lượng tổn kho và các yếu tố khác
Trang 1
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC GIA ĐỊNH KHOA:
Z `
eS
GIA DINH
MAU THIET KE PHAN MEM
DE TAI: QUAN LY TRONG KHO CUA
MOT SIEU THI
Ngành: CÔNG NGHỆ THÔNG TIN
Chuyén nganh : KY THUAT PHAN MEM
Giảng viên hướng dẫn: Lê Huỳnh Phước
Sinh viên thực hiện: Lê Quốc Phi
MSSV: 2108110370
Lop: K15DCPM05
TP Hồ Chí Minh, tháng 8, năm 2023
Trang 2
Khoa/Viện:
NHAN XET VA CHAM DIEM CUA GIANG VIEN
TIỂU LUẬN MÔN: c2 see
I Họ và tên sinh VIÊNI:, 0s s4 3 9 TH 4 1 1 1 TH T00 8 04.90
P ốc na
3 Nhận xét:
a) Những kết quả đạt được:
4 Điểm đánh giá (/heo thang điểm 10, làm tròn đến 0.5):
bi 0i 1211 ằ eenaee sents eens Điểm số: IÐ)12i49i/lìaiiiđáiađaiiaáẳđáđáđáẳáẳẳảảaảẳảáả
1P HCM, ngày tháng năm 20
Giảng viên chấm thi
(Kỹ và ghi rõ họ tên)
Trang 3Mục lục
Trang 41 Hiện trạng và yêu cầu
1.1 Hiện trạng
Hàng hóa quản lý trong kho của một siêu thị gồm có hàng thực phẩm, hàng sảnh
sứ và hàng điện máy
Mỗi loại hàng đều có mã hàng (không được sửa, không được đề trống), tên hàng (không được rỗng), số lượng tồn (>=0), đơn giá (>0)
Hàng thực phẩm thì cần quan tâm đến thông tin ngày sản xuất, ngày hết hạn (ngày hết hạn phải sau hoặc là ngày sản xuất) và nhà cung cấp
Hàng điện máy cần biết thời gian bảo hành bao nhiêu tháng (>=0), công suất bao nhiêu KW (=0)
Hàng sành sứ thì cần biết thông tin về nhà sản xuất và ngày nhập kho
Ngoài ra, người quản lý cần quan tâm đến số lượng tổn kho và các yếu tố khác của từng loại hàng hóa để đánh giá mức độ bán buôn, tiền VAT từng loại hàng hóa Biết rằng VAT của hàng điện máy và sảnh sứ là 10%, VAT của hàng thực phẩm là
3%
12 Yéucau
Người dùng đầu cuối (quản lý kho) có thê sử dụng được những chức năng cơ bản:
a Thêm, xóa, sửa
b Tính tông số lượng cho từng loại hàng hóa
c Tìm kiếm sản phẩm còn 1 tuần là hết hạn
1.3 Các biểu mẫu thống kê
1.4 Mô hình hóa yêu cầu
1.4.1 Xác định các actor
Actor chinh trong mô hình quản lí kho của một siêu thị là người quản lí có vai trò trực tiếp đến hệ thong
Trang 51.4.2 Các định các use case
- _ Thêm sản phâm
- Xoá sản phẩm
- _ Sửa thông tin san phẩm “
- _ Tổng số lượng từng loại hàng hoá
- Tim kiém san pham con l tuân là hết hạn
1.4.3 So dé use case
hang dién may
hang thuc pham
quan li
hang sanh sw
1.4.4 Mô tả các use case
Quản lí cửa hàng thực phâm
ngày sản xuất
<<include>>
foe” ngay hét han _.<<include>>' 7 ˆ
ang thực phá
` "<<include>>
mã sản phẩm
Trang 6Quản lí cửa hàng điện máy
thời gian bảo hành
công suất
quản lí <<include>>
` `
ma san pham
Quan li hang sanh str
ma san pham
<<include>>
nhà sản xuất quản lÍ
hàng nhập kho
Trang 72 Phân tích
2.1 So dé lép (Class Diargam)
E <<abstraction>>
HangHoa
- MaHang: int
- DonGia: double
- TenHang:String
- SoLuongTon:int
+ tinnSoLuongTonKho(): int
A A Y*
<<extend>> <<extend>> <<extend>>
= HangThucPham = HangDienMay = HangSanhSu
+ NgaySanXuat: date
+ NgayHetHan: date
+ NhaCungCap: String
+ CongSuat: int
+ ThoiGianBaoHang: int + NhaSanXuat: String + NgayNhapKho: date
+ tinhSoLuongTonkKho(): int
+ VAT():int
+ tinhSoLuongTonKho(): int
+ VAT():int + tinhSoLuongTonKhoj): int
+ VAT():int
Trang 8
2.2 So dé tuan tu (Sequency Diagram)
Tim kiém san pham
Người dùng Hệ thống Cơ sở dữ liệu Chọn mục sản phẩm cần tìm
Hiễn thị mục sản phẩm cho người dùng
Nhập sản pham can tim
Gửi thông tin cần tìm
| at) Tra vé théng tin
[hông tin nhập vào đúng
Hiện thị thông tin được trả về
1 0
Laka et alt già iba ik bse a eats sl cabo deo betes ab aie Leite
Lỗi nhập sai thông tin
Thông tin nhập vào sai K3 2404)60220/04610160-074442600 giay Ea bu
Hiễn thị thông báo thông tin bị sai
‹ .ự
Trang 9Thêm sản phâm
Người dùng Hệ thống Cơ sở dữ liệu
Chọn mục sản phẩm cần |
Hiên thị mục sản phẩm cho người dùng
ld -<<- Ị}ĨỶĨƑŸ}†ŸỷƑỶŸỷ}Ÿỷ}ƒHỈHỊỊ]ỊỊ] HH He ch
Nhập thông tin sản phẩm mới
alt )
Gửi lại thông báo yêu cầu ghi đây đủ
Nếu ghi thiếu thông tin Ị
Gửi thông tin đến cơ sở dữ liệu
Sản phẩm đã tồn
tại Yêu câu nhập lại thông tin
Sản phẩm đã luôn hoàn thành Sân phẩm UW chưa tồn tại :
Gửi thông báo lưu thành công ;
Trang 10Xóa sản phầm
Người dùng Hệ thông Cơ sở dữ liệu
: Chọn mục sản phẩm cản xoá :
Hiễn thị mục sản phẩm cho người dùng
Chọn sản phẩm cần xoá
Hién thị thông báo xác nhận
Xoá sản phẩm
Sản phẩm đã được xoá
Thông báo sản phẩm đã được xoá
~xx=====~~~~ kẻ.
Trang 11Sua san pham
Người dùng
Hệ thống €ơ sở dữ liệu
Chọn mục sản phẩm cần sửa
Hién thị danh sách sản phẩm theo loại
Chọn sản phẩm cân sửa
Chuyên thông tin xuống ô textfield
Sửa thông tin trong 6
Gửi thông tin về cơ sở dữ liệu
alt )
Thêm thông tin không hợp lệ Ghi thông tin không chính
xac
Yêu câu nhập lại thông tin hợp lệ
Thêm thành công
Cập nhật thông tin thành
công
Cập nhật thông tin sản phẩm | : |
Trang 12
2.3 So dé hoat déng (Activity Diagram)
pe) eel
§_—see¿c —
DJ
|——» Gil thing bao 4
L—] F==
Trang 132.4 Sơ đồ dữ liệu (ERD)
25 Sơđồ trạng thải
Tìm kiếm sản phâm
Tìm kiêm sản phẩm
Nếu không có sản phẩm Nếu không đúng loại hàng
€ Chọn mục sản phẩm Tim kiêm Ghi sản phẩm cần tìm Hiện sản phẩm
Huỷ tìm kiêm Huỷ tìm kiêm Huỷ tìm kiềm Kết thúc
Trang 14Thêm sản phâm
Nhập lại nếu thiếu thông tin
DI lại nêu bị trùng lặp hoặc sai định dạng
Chon muc san | Nhập thông tin sản Thông tin sản
phẩm phẩm cần thêm phẩm hợp lệ
Kiểm tra thông tin Thêm thông tin Í Them thong tin
moi vao database
Kết thúc
Xóa sản phầm
Thông báo xác nhận
Xoá sản phẩm _ | Xoá thông tin sản
phẩm khỏi database
Chọn sản phẩm Đồng ý xoá sản
Kết thúc
Sua san pham
Nhập lại nêu thiêu thông tin
Nhập lại nêu bị trùng lặp hoặc sai định dạng
Kiểm tra thông tin
Nhập thông tin sản Thông tin sản sửa thông tin
pham can sửa phâm hợp lệ
ửa thông tin trong
database
Kết thúc
Trang 153 Thiết kế
3.1 Kiến tric phan mén
Kiến trúc phần mềm có thê được chia thành 3 lớp chính: lớp giao diện người dùng (User Interface), lớp xử lý nghiệp vụ (Business Logic) và lớp truy xuất đữ liệu (Data Access)
- Lớp giao diện người dùng sẽ cung cấp các chức năng cho người dùng để thực hiện các use case mà bạn đã nêu ra, bao gồm: Thêm hóa đơn mới Hiển thị danh sách hóa đơn
Tìm kiếm hóa đơn, Sửa thông tin hóa đơn, Xóa hóa đơn và
Tính doanh thu
- _ Lớp xử lý nghiệp vụ sẽ xử lý các logic liên quan đến quản lý hóa đơn, bao gồm việc tính toán thành tiền cho các loại hóa đơn theo hàng hóa và tinh số lượng tồn kho
- Lớp truy xuất dữ liệu sẽ thực hiện việc truy xuất và lưu trữ
đữ liệu liên quan đến hóa đơn trong cơ sở dữ liệu
3.2 Các mẫu thiết kế
MVC, ECB, Observer, Three-Layer va Command Processor 3.3 So dé thiét ké (Deployment Diagram)
3.4 Thiết kế giao diện
Trang 164 Cài đặt thứ nghiệm
4.1 Cai dat
STT | MSSV
l
4.2 Các thử nghiệm
E] Giao điện trống
Crockery Warenouse Food Warenouse
sản phẩm:
hàng:
SỐ lương ton:
suất:
gian bảo hành:
Add
MM 4 san phẩm | Tân hãng | Số lượng tồn I Đơn giả Ngay san xudt | Ngay héthan
Mã sản phẩm:
Tén hang:
S6 turerng ton:
Don gia:
Ngày sản xuất:
Ngày hót hạn:
Trang 17Mã sản Tên hàng lương Đơn giá
sản phẩm:
hàng:
lượng tên:
gia:
tin nhà sản xuất:
Thông tin nhà săn Ngày nhập kho
Trang 185
5.1
Tông kết
Kết quả đạt được
Trong quá trình nghiên cứu và thực hiện dự ân về Mẫu thiết kế phần mềm củng với việc sử dụng MVC, ECB, Observer, Three-Layer và Command Proeessor, chúng em đã đạt được các kết quả như ý và hoàn thiện chúng tốt đẹp
Chúng em đã hiểu rõ hơn về cách áp dụng các mẫu thiết kế phần mềm như Singleton, Factory, Observer và Command trong việc tạo ra cấu trúc chương trình linh hoạt và đễ bảo trì Những kiến thức này đã giúp chúng em xây dựng một hệ thông có thê mở rộng và thích ứng với các yêu câu thay đôi
Kiến thức về mô hình kiến trúc MVC và ECB bằng cách chia thành các phần riêng biệt nhu module, view, control va entity, control, boundary Qua việc này, chúng em tạo ra sự tách biệt giữa dữ liệu, logie và giao diện người dùng, làm cho mã nguồn dê quản lý hơn và mở rộng hơn
Sử dụng mô hình Observer, chúng tôi đã kết nối các thành phần trong hệ thống
đề thực hiện cập nhật tự động khi có sự thay đôi Cùng với đó, triển khai kiến trúc Three-Layer giúp chúng tôi tạo ra một hệ thống được chia thành ba tầng: Presentation, Logic va Data, tao ra sw phan cấp và rõ ràng trong cấu trúc chương trình
Sử dụng Command Processor để xây dựng các lệnh và xử lý tương tác với dữ liệu Kết hợp với SQL, chúng em đã thực hiện cách truy vẫn, cập nhật và quản
lý dữ liệu một cách hiệu qua
5.2 Đánh giá ưu điểm, khuyết điểm ?
521 Uudiém
Phan mén hé thong quan lí kho có những ưu điểm sau đây:
Trang 19- Giảm thiểu sai sót: Tự động hóa các quy trình giúp giảm thiểu
saI sót trong quá trình quản ly kho
- _ Tăng cường sự minh bạch: Hệ thống quản lí trong kho cung cấp
thông tin rõ ràng về số lượng hàng tồn kho, doanh số bán
hàng, và các hoạt động trong kho, giúp tăng cường sự minh
bạch và kiếm soát công việc một cách hiệu quả
- _ Tiết kiệm thời gian và nhân lực: Tự động hóa các quy trình giúp
tiết kiệm thời gian và nhân lực của nhân viên trong việc quản
lý kho hàng
5.2.2 Khuyét diém
Tuy vậy, nó cũng còn những hạn chế nhất định:
- Doi hoi dau tu ban dau: Trién khai hệ thống quản lí trong kho
yêu cầu một khoản đầu tư ban đầu, bao gồm phần cứng, phần
mềm và đào tạo nhân viên
- _ Đôi khi phụ thuộc vào công nghệ: Nếu hệ thống gặp sự có hoặc
lỗi kỹ thuật, nó có thể ảnh hưởng đến hoạt động của kho và
gay kho khan trong quản lý hàng hóa
5.3 Hướng phát triển tương lai
- Nâng cao tính linh hoạt: Tôi ưu hóa hệ thống để đáp ứng các
yêu cầu và thay đổi của siêu thị khi quy mô hoạt động mở rộng
hoặc thay đổi
- Két hợp với trí tuệ nhân tạo và tự động hóa: Sử dụng trí tuệ
nhân tạo và tự động hóa để cải thiện hiệu quả tự động quản lý
tồn kho và dự đoán nhu cầu hàng hóa
- Thử xây dựng ứng dụng phức tạp hơn, có nhiều tương tác và tích hợp nhiều thành phần Điều này sẽ giúp thấy rõ hơn cách các mẫu thiết kế tương tác với nhau và giải quyết các vấn đề phức tạp trong phát triển phần mềm Ví dụ, kết
Trang 20hợp mẫu MVC với mẫu Observer để xây dựng ứng dụng có khả năng tương tác thời gian thực
Kết nối với các hệ thống khác: Tích hợp hệ thống quản lí trong
kho với các hệ thống khác như quản lý bán hàng, quản lý
khách hàng giúp tối ưu hóa quy trình hoạt động toàn bộ siêu
thị
Băng cách liên tục cập nhật va nâng cao dự án, bạn có thê tạo ra một sản phầm phần mềm chất lượng cao và thú vị cho cộng đồng người dùng