Về nhân sự: các Quản trị phụ trách từng kho hàng, và các nhân viên trực thuộc kho Hệ thống được xây đựng sẽ cân đáp ứng môt số nghiệp vụ cơ bản sau: - Quản lý các kho hàng - Quản lý cá
Trang 1BO GIAO DUC VA DAO TAO TRUONG DAI HOC SAI GON KHOA CONG NGHE THONG TIN
è tài: Quản lý kho vận - Odoo
Sinh viên thực hiện:
Trần Nguyễn Việt Thái - 3120560088 Hoàng Huỳnh Trung Hiếu - 3120410168
Trang 2H GIAI ĐOẠN KHẢO SÁT VÀ THU THẬP YÊU CÂU 2222222122222 122222 10
1 Kỹ thuật thu thập yêu cầu 222- 22222 222112222112221112211122211222112221221222222ee 10
2 Kết luận sau quá trình -22- 22222 2221222211122111221111221122211222212122 1x, 10
HL GIAI ĐOẠN PHÂN TÍCH THIẾT KỀ 55s S221122111222111222112221221222222xe ul
1 Lược đồ Use Case tổng quát
3 Chức năng Đăng ký Q.2 H 2122122 16 3.1 Focused Usecase án ^ 16 3.2 Activity Diagram — Dang ky 18 K0 2 jav ố 19
4 Chức năng Đặt lại mật khẩu -©©52222212211212111211212112221122211122211122222 226 20
4.1 Focused Usecase — Dat lai mật khẫu 22252 22212222112221212222212222222e 20
4.2 Activity diagram — Đặt lại mật khẫu -22-©22222222222221122222221221212 2.2 22
4,3 Sequence Diagram — Dat lai mật khẫu -2-©5222221222211222121221212 222 e2 23
5 Chire nang Quan ly kho hang ec cette te tne ce cece 24 5.1 Focused Usecase — Quan ly kho hàng
5.2 Activity diagram — Quan ly kho hang
5.3 Sequence Diagram — Quan ly kho hang
6 Chire nang Tao kho bang 28 6.1 Focused Usecase — Tao kho hàng 2 2H22, 29 6.2 Activity điaeram — Tạo kho hàng Q0 22222221112 1221 1112 1122112 xe 31 6.3 Sequence diagram — Tạo kho hang ct eee cece 2.2222, 32
7 Chức năng quản lý phế liệu kho 2-22-2222 22E112221122211122211222112221112 2112222222 7.1 Focused Usecase — Quản lý phế liệu kho
7.2 Activity diagram — Quan ly phé liệu kho
Trang 38 Chức năng Bỗ sung hàng 222222221 12251122111221112121211121211112112112212122111 12222262 38 8.1 Focused Usecase — Bỗ sung 22222222 2122121221112112212112211102211122211122212222 xe 38 8.2 Activity diagram — Bỗ sung 2222222222 2211222211222111221112221122212112222112 xe 4I 8.3 Sequence diagram — Bồ sung hàng 22522 22212221112221212122122112 22,22, 42
9 Chức năng điều chuyển hàng 22 ©2222 S222 222112221112221122111221112221122221222 2e
9.1 Focused Usecase — Diéu chuyén hang
9,2 Activity diagram — Diéu chuyén hang
9,3 Sequence diagram — Diéu chuyén hang cece cece eesee esses eeceeeeeeeneeeee 48
10 Chive nding Quan Wy sin phan eee cece ceseee essen teseeeeeseeeeeeveetetteteseeeeees 50 10.1 Focused Usecase — Quản lý sản phẩm 2222222222 2221122122211222212222226 50 10.2 Activity diagram — Quản lý sản phẩm 22- ©2222 225122221122211222221222212222 52 10.3 Sequence diagram - Quản lý sản phẩm -22222S1222251222112222212212 2222 53
11 Chức năng Kiểm kê kho 2 S2 2212221 2212222222222 2g xe 54
11.1 Focused Usecase - Kiểm kê kho 54 11.2 Activity diagram - Kiểm kê kho 22 22222 22112222 222122 ga 57 11.3 Sequence diagram - Kiểm kê kho 2 ©2222 S22222221121222111222112222 tees 58 k0 60
4 Sơ đồ thực thể mối kết hợp - ERD 22-22222221122211222211222212222122212xe 61
hMàAaaiaiiaiiẳầiẳẳiẳiẳẳẳẳẳẳẳẳẳẳẳẳẳẳầẳẳầiắẳaŸ 62
Trang 4Trường Đại Học Sai Gon
Khoa Công Ngh ệ Thông Tin
Độc lập - Tự do - Hạnh phúc Nam
BIÊN BẢN ĐÁNH GIÁ ĐÒ ÁN GIỮA KỲ
Học phân: Công Nghệ Phần Mềm
Cộng Hòa Xã Hội Chủ Nghĩa Việt
Trang 5
Trong đồ án Công Nghệ Phần Mềm này, nhóm chúng em thực hiện phân tích yêu câu và phân tích thiết kế Dự án open source Odoo — moudle Quản lý Kho Trong
đồ án chúng em tập trung vào giai đoạn phân tích thiết kế phân mềm, cũng như áp
dụng những kiến thức về quy trình phát triển một phần mềm, kế hoạch phân tích thiết
kế phần mềm đi từ mức Quan niệm — Logic — Vật lý, và các kiến thức tông hợp khi phân tích thiết kế dự án quy mô doanh nghiệp vừa và lớn như Odoo
Mặc dù đã rất cô gắng trong việc ứng dụng những kiến thức đã học, đặc biệt là những kiến thức của môn Công nghệ phần mềm nhưng không thê tránh khỏi những sai sót, thiếu sót do trình độ chuyên môn còn thấp, kinh nghiệm non nớt, thiếu trải
nghiệm thực tế Mong thây góp ý và sửa lỗi cho nhóm em, những ý kiến góp ý của thầy sẽ là những lời khuyên quý giá giúp chúng em thấy được và khắc phục được những khuyết điểm của mình
Xin tran treng cảm ơn Nhom 28
Trang 6I GIỚI THIỆU CHUNG VẺ DOANH NGHIỆP VÀ KÉ HOẠCH QUẢN LÝ DỰ
AN PHAN MEM
1 Giới thiệu chung về doanh nghiệp
Một doanh nghiệp kinh doanh đang mở rộng quy mô cần xây dựng một hệ thông quản lý các kho hàng và các nghiệp vụ liên quan đến kho hàng, thay vì việc quản lý kho bằng nhân sự và thủ công như trước kia đã không còn đủ điều kiện đáp ứng
Về nhân sự: các Quản trị phụ trách từng kho hàng, và các nhân viên trực thuộc kho
Hệ thống được xây đựng sẽ cân đáp ứng môt số nghiệp vụ cơ bản sau:
- Quản lý các kho hàng
- Quản lý các sản phẩm
- Quản lý các tuyến giao, nhận, bô sung hàng trong kho
- Quản lý các hoạt động điều chuyên hàng trong kho
- Có thể truy vết quãng đường, lịch sử hoạt động của các hàng hóa/đơn hàng -_ Có thê phân quyền giữa nhân viên kho và quản trị kho
- Kiếm kê, báo cáo tình hình kho
2 Kế hoạch quản lý dự án phần mềm
2.1 Mô hình phát triển phần mềm
Nhóm em chọn mô hình phát triển phân mềm theo mô hình thác nước -
WaterFall
Lý do lựa chọn theo phương án này là do đây là một thử thách đối với chúng
em về mặt thời gian thực hiện cũng như các thành viên nhóm còn nhiều hạn chế trong
cả kỹ năng và kinh nghiệm Đối với mô hình này, các công việc được nối tiếp một cách tuân tự, độc lập với nhau nên chúng em dễ dàng hình dung, nắm bắt được yêu câu của từng giai đoạn trong quy trình phát triển phân mềm.
Trang 7Analysis Waterfall Model
Trang 8Tuân 4 | Tuân § | Tuân 6 | Tuân 7 | Tuân 8 | Tuân 9 | Tuân
Odoo DONE SHOULD HAVE Odoo DONE MUST HAVE
MUST HAVE MUST HAVE
MUST HAVE MUST HAVE
SHOULD HAVE SHOULD HAVE MUST HAVE
MUST HAVE MUST HAVE MUST HAVE
MUST HAVE MUST HAVE MUST HAVE
Trang 9MUST HAVE MUST HAVE
Trang 10MUST HAVE
MUST HAVE MUST HAVE
MUST HAVE
Trang 11IL GIAI BOAN KHAO SAT VA THU THẬP YÊU CAU
1 Kỹ thuật thu thập yêu cầu
Xem xét tài liệu và phần mềm
- Do phân mềm được phát triển dựa trên mã nguồn mở Odoo, ta cần năm rõ các tài liệu, quy định, các thao tác chuẩn của Odoo
- Đọc tài liệu của Odoo hiéu qua
- Tìm hiểu sử dụng phần mềm Odoo, nghiên cứu, đánh giá phù hợp các chức năng hiện có
- Quan sát, thu thập thông tin, khảo sat các yêu câu cần có hiện nay phủ hợp với xu hướng, quy mô, yêu cầu chung của khách hàng
- Hiểu rõ về quy trình phát triển phần mềm, các yêu cầu cơ bản của một phần mềm cần có
- Nắm rõ các nghiệp vụ cơ bản về Quản Lý Tén Kho
Họp nhóm:
- Tổ chức các buổi hop dé bao cáo tiễn độ
- Phân công công việc, và quản lý thời gian phù hợp
- Thảo luận, tích cực đóng góp các ý kiến khi phân tích yêu cầu
2 Kết luận sau quá trình
- Phần lớn các chức năng trong phân mềm đều gần như hoàn thành và đáp ứng yêu cầu đồ án
- Trong quá trình hoàn thành đồ án, nhóm gặp khá nhiều khó khăn trong phân tích hệ
thông và thiết kế, viết báo cáo cũng như là quản lý, sắp xếp thời gian họp nhóm sao
cho các thành viên đều tham gia đầy đủ ở cac budi hop
- Một số phần trong báo cáo van còn sai sót và chưa được hoàn thiện đầy đủ
- Ngoài ra, một số lỗi mà nhóm cần khắc phục trong quá trình thực hiện đồ án như:
Trang 12+ chưa thực hiện được đây đủ các bước theo mô hình
Trang 13III GIAI DOAN PHAN TICH THIET KE
1 Lược đồ Use Case tổng quát
Bổ sung hàng
Quản lý kho
nd>>
<<exte hàng
Trang 142.1 Focused Usecase - Dang nhap
Người quản trị Đăng nhập
Thành viên
Use Case Number UCI
Use Case Name Dang nhap
Actor User (Người dung)
Maturity Focused
Summary Người dùng đăng nhập vào app Odoo đề sử dụng, cần xác
thực tài khoản người dùng
4 Bấm “Đăng nhập”
5 Hệ thông thực hiện {Kiém tra text form}
5 Hé thong lay dit liéu nhập
từ form truy vẫn tới database để xác thực đăng nhập {Xác thực tài khoản}
6 Hệ thông điều hướng người dùng đên giao diện
app Odoo sau khi đăng nhập thành công
“Chưa có tài khoản?” trên
form đăng nhập
2 Hệ thông chuyên đên Usecase {Đăng ký tài khoản}
A2
Trang 15vào link “Đặt lại mật khẩu”
trên form đăng nhập
2 Hệ thông chuyên đến Usecase {Dat lai mat khau}
EI tại {Kiểm tra text form}, dé dam bao cho hanh déng truy van database duoc toi ưu và chính xác, khi người dùng submit form hệ thong can kiém tra xem 6 text cd dang dé trống hay không, nêu có thông báo lỗi
Exception Path E2 tại {Xác thực tài khoản}, thông báo lỗi “sai tài
khoản/mật khẩu”, trở về bước 2 Basic course
Extension Points {Xác thực tài khoản}
Hệ thông kiểm tra trong database xem có tôn tại đúng email
và mật khâu đã nhập E2 Trigger None -
Assumption Người dùng app muon dang nhập vào app đê sử dụng
chính của app
Reference None
Author(s) Nhóm 28
Date 22/10/2022
Trang 16Usecase bắt đầu khi
- Yes Tài khoản
Thông báo lỗi tồn tại ?
Hệ thống chuyển đến khoản}
Hệ thống chuyển đến {Đặt lại mật khẩu}
Trang 17
trả về level phân quyền của tài khoản đăng nhập |
level của tài khoán H :
1.5 initGUIC: Ũ else !
1.2 hienThiLoi(messege)
Trang 183.1 Focused Usecase — Dang ky
Người quan tri Thanh vién
Use Case Number UC2
Use Case Name Dang ky
Actor User, Admin
Maturity Focused
Summary Người dùng đăng ký tài khoản đê sử dụng
app Odoo Basic Course of Events Actor Action System Response
1 UsecCase bat dau khi người dùng lựa chọn đăng ký tải khoản mới
6 Hệ thông tạo mới thông tin tài khoản và cập nhật dữ liệu vào database
Exception Paths EL Tai {kiêm tra 6 text}, dé tranh lam hong database, hé
thông cần ngăn chặn trường hợp ô 6 dữ liệu bị bỏ trống khi người dùng bấm submit, nêu rơi vào trường hợp lễi, hiên thị thông báo và ngăn form được POSTT lên server
E2 Tại {kiêm tra mail}, vì môi tài khoản sử dụng một mai]
đê đăng nhập xác thực, nên hệ thống phải kiểm tra xem trong
Trang 19
database mail người dùng nhập đã được đăng ký trước đó chưa, nêu có thông báo lôi tương ứng và ngăn form được POST lên server
Extension Points None
Trigger Login
Assumption Người dùng là nhân viên kho
Pre conditions None
Post conditions Dữ liệu tài khoản mới tại được lựu trữ trên database, người
dùng có thê sử dụng tài khoản mới đăng ký đê đăng nhập vào
app
Reference None
Author(s) Nhom 28
Date 20/10/2022
Trang 20
Người dùng điền email, tên, mật khẩu
Thông báo lỗi
Họp lệ ?
Bám "Đã có tài khoản"
Hệ thống chuyển đến Usecase {Đăng nhập}
Hệ thống cập nhật tài khoản mới vào
database
Trang 21: yêu cầu kiểm tra mail
Trang 224 Chức năng Đặt lại mật khẩu
4.1 Focused Usecase — Dat lai mat khau
Người quản trị
Đặt lại mật khâu Thành viên
Use Case Number UC3
Use Case Name Đặt lại mật khâu
Actor User, Admin
Maturity Focused
Summary Người dùng có thé thay đôi mật khẩu hiện tại của tài khoản,
vi ly do bảo mật hoặc quên mị ật khâu cũ
5 Hệ thông thực hiện {Kiêm tra email} El
6 Hệ thống gửi thư xác thực đên email người dùng đã
11 Hệ thông cập nhật dữ liệu mật khâu mới vào database
1 Người dùng muôn quay
lại form đăng nhập, bâm vào
21
Trang 23Exception Path E1
Tại {Kiểm tra email}, hệ thống kiểm tra trong database xem có tổn tại email đã nhập là tài khoản Ôdoo trước đó chựa, nêu không tổn tại thì thông báo lỗi tương ứng và ngăn form submit
E2 Tại {Kiểm tra ô text}, kiểm tra trước khi submit lên, ô mật khẩu và xác nhận mật khâu có bị bỏ trống không, nếu có thông báo lỗi tương ứng và ngăn form được submit lên server
E3 Tại {Kiểm tra xác nhận mật khẩu}, kiém tra xem nội dung người dùng nhập ở ô text Xác nhận mật khâu phải trùng khớp với ô mật khẩu đã nhập, nêu không thông báo lỗi tương ứng và ngăn form được submit
Reference None
Author(s) Nhom 28
Date 22/10/2022
Trang 24
UseCase bat đầu khi
@ người dùng lựa chọn
Đặt lại mật khâu Start
Hé thong hiển thị form đặt lại mật khẩu
Người dùng nhập mail đã đăng ký tài
khoản Odoo
Xác nhận
bước kế tiếp ? Bam "quay lại đăng
mật khẩu mới cho tài
khoan vao database
Người dùng điền mật khâu mới và điền xác
nhận mật khẩu mới
Thông báo lỗi No
Trang 25
Ầ Admin, formDangNhap Account D
\ User <<boundary>> <<control>> atabase
i 1 chon Dat i :
lai mat khau
1.1|hien ThiFormDatLaiMatKhau()
không tôn tại : 1.4 hienThiLoi(messege)
Trang 265.1 Focused Usecase — Quan ly kho hang
Người quan tri
Quan ly kho hang
<<extend>>
>{Tao kho hang
Use Case Number UC4
Use Case Name Quan ly kho hang
Actor Admin (Quan tri)
1 Nguoi dung truy cap
“Kho hang” trong muc Quan ly kho hang
2 Hệ thống hiển thị ra danh sách các kho hàng đang hoạt động
3 Người dùng bấm chọn A3A4
2 Hệ thông thực hiện {Kiém tra ràng buộc khóa tham chiêu} EI
3 Hệ thông xóa dữ liệu kho hàng được chọn trong database
Trang 27
2 Hệ thống thực hiện {Kiểm tra có sản phẩm trong kho} E2 và {Kiểm tra phiếu kho cần xử lý} E3
2 Hệ thông cập nhật lại tình trạng kho hàng hoạt động
2 Hệ thông thực hiện {Kiém tra trang lặp tên viét tat} E4
3 Người dùng nhập thông tin muôn sửa: tên kho, tên việt tặt, chọn địa chỉ, tuyên
2 Hệ thông xóa form đã
nhập, quay lại bước 4 Basic course
Exception Path EL Tại {Kiêm tra ràng buộc khóa tham chiêu}, kiêm tra
xem thông tin của kho hàng này có đang được tham chiêu bởi các thành phân khác trong hệ thông hay không, nêu có
Trang 28
E2 Tại {Kiểm tra có sản phẩm trong kho}, kiêm tra xem
có sản phẩm nào đang được lưu trữ trong kho này hay không, nếu có hiên thị 16i tượng, ung,
ES Tai {kiém tra 6 text}, kiém tra xem 6 tén kho va tén viết tắt có bị bỏ trống hay không, nếu có thông báo lỗi
tương ứng Extension Points None
Trigger Người Quản Trị truy cập “Kho hàng” trong mục Quản lý
kho của phần Câu hình
Assumption Quản trị muôn quản lý các kho hàng
Pre conditions Quản trị đã có kế hoạch duy trì và quản lý đanh sách các
kho hàng của doanh nghiệp
Post conditions Các kế hoạch quản lý được thực hiện thành công qua app
Reference None
Author(s) Nhom 28
Date 22/10/2022
Trang 29
Hệ thống hiển thị form thông tin chỉ tiết
Hợp lệ 2
Trang 31
yêu cầu lầy danh sách kì
dữ liệu danh sách kho hảr
kiểm tra cho phéi
tra cho phép xéa kl
nếu kết quả kiểm tra cho phép xóa kho .2 xoaKho(mal<hoHz
nếu kết quả cho phép lưu trữ kho 22
yêu cầu ki:
kết quả kiểm tra
30
Trang 326.1 Focused Usecase — Tao kho hang
Người quản tri
Tạo kho hàng
Use Case Number UCS
Use Case Name Tao kho hang moi
Actor Admin (Quan tri)
3 Người dùng điền thông tin vào form: tên kho, tên viết tắt của kho, chọn địa chỉ kho AI
Trang 332 Basic course
Exception Path EI Tại {Kiểm tra tên kho}, thông báo lỗi đữ liệu không
hợp lệ và trả về bước Š Basic course
E2 Tại {Kiểm tra tên viết tắt}, thông báo lỗi trường dữ
liệu không hợp lệ và trở về bước 5 Basic course
Extension Points {Kiêm tra tên kho}
Kiểm tra phan text tên kho không được đề trống E1
{Kiểm tra tên viết tắt
Kiểm tra phần text tên viết tắt không được trùng với kho hàng khác trong cùng một Địa chỉ, và không được bỏ trồng E2
Trigger Người quản trị truy cập vào mục câu hình app, chọn kho
hang, bam nut “Tao” o giao dién Assumption Doanh nghiệp cân tạo ra kho lưu trữ mới
Pre conditions Doanh nghiệp đã có sẵn kê hoạch, nguồn hàng và cung ứng
cho kho sắp tạo
Post conditions Thông tin kho hàng mới được lưu trữ
Trang 34
thông tin vào form
<> No
Hệ thống lưu thông Yes
tin kho hàng mới tạo
Vào database
33
Trang 351.2 getDSKhoHang()
khoHang diaChi tuyenCungUng
<<control>> <<control>> <<entity>:
*[ yêu cầu lấy dai
1.4 kiemTraTenVietTat(tenviettat)
kết quá kiếm tra tên viết tắt trả về
yêu cầu kiểm tra tên viết tắt;
kết quả kiểm tra tên viết tắt trả về
dữ liệu tuyến cung ứng mới được khởi tạo trả về |
dữ liệu kho hàng mới được khởi tạo ' ;