Đặc tả Use case Xem và tìm kiếm tài khoảnUse case: Xem và tìm kiếm tài khoảnTác nhân chính: AdminMô tả ngắn gọn:− Người dùng muốn xem thông tin tài khoảnĐiều kiện tiên quyết:− Hệ thống đ
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINHTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
BÙI THẾ LIÊM – 21520321TRẦN LÊ YẾN LINH - 21520327
Trang 2ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINHTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
BÙI THẾ LIÊM – 21520321TRẦN LÊ YẾN LINH - 21520327
Trang 3Bên cạnh đó, chúng em xin cảm ơn các bạn bè trong lớp đã động viên, thảo luận vàgóp ý cho em đồng thời đã khơi thêm nguồn động lực cho em trong suốt quá trìnhđầy khó khăn.
Mặc dù đã cố gắng hoàn thành báo cáo với tất cả nỗ lực song báo cáo của em chắcchắn không tránh khỏi những thiếu sót, em rất mong nhận được sự thông cảm vàgóp ý chân thành từ thầy Em xin chân thành cảm ơn.
Thành phố Hồ Chí Minh, tháng 12 năm 2023
Bùi Thế LiêmTrần Lê Yến Linh
Trang 4TÓM TẮT
Đồ án với đề tài “Hệ thống hỗ trợ quản lí doanh nghiệp phân hệ Logistic,Kho hàng và Đội xe dựa trên nền tảng Odoo” tập trung vào việc xây dựng một hệthống quản lí doanh nghiệp toàn diện, với các chức năng chính hỗ trợ các hoạt độngLogistic, Kho hàng và Đội xe Hệ thống này được phát triển dựa trên Odoo
framework, sử dụng Python làm ngôn ngữ chính, nhằm cung cấp một giải phápquản lí doanh nghiệp linh hoạt và hiệu quả.
Quá trình phát triển hệ thống bắt đầu từ việc nghiên cứu thực trạng, xác địnhcác vấn đề cần giải quyết trong quản lí Logistic, Kho hàng và Đội xe Mục tiêu vàphạm vi của đề tài được định rõ, cùng với việc lựa chọn các chức năng cần thiết chohệ thống Trong quá trình thiết kế, Figma và PlantUML là những công cụ chủ chốt,với Figma được sử dụng để thiết kế giao diện người dùng và PlantUML hỗ trợ môhình hóa quy trình nghiệp vụ và kiến trúc hệ thống.
Trong giai đoạn phát triển, Odoo framework và Python được lựa chọn làmnền tảng chính, tạo nền móng vững chắc cho hệ thống Odoo cung cấp khả năng tùychỉnh cao và phù hợp với nhu cầu đa dạng của doanh nghiệp, trong khi Python vớithư viện phong phú giúp tăng tốc quá trình phát triển và đảm bảo tính ổn định Quảnlý tiến độ và công việc được thực hiện thông qua Notion, giúp theo dõi chi tiết cáccông việc và quản lý tài liệu một cách hiệu quả Trong giai đoạn vận hành, server đãđược triển khai lên máy chủ cá nhân, hoàn toàn có thể truy cập dữ liệu thông quaapi từ bất cứ thiết bị nào gửi yêu cầu có chứa trường xác thực dữ liệu hợp lệ.
Kết quả thu được là một hệ thống quản lí doanh nghiệp mạnh mẽ, linh hoạtvà dễ sử dụng, đáp ứng hiệu quả nhu cầu quản lí trong các lĩnh vực Logistic, Khohàng và Đội xe Hệ thống không chỉ cải thiện hiệu suất làm việc mà còn mang lạilợi ích lâu dài cho doanh nghiệp, mở ra hướng phát triển mới trong quản lí và vậnhành doanh nghiệp.
Trang 5Phần cuối cùng của đồ án là trình bày kết quả đã thực hiện lên cuốn báo cáo,đưa ra kết luận và hướng phát triển cho hệ thống trong tương lai.
Nội dung đồ án được trình bày trong 5 chương:- Chương 01: Tổng quan
Trình bày sơ bộ về thực trạng, nhu cầu thực tế Xác định mục tiêu và phạm viđề tài.
- Chương 02: Cơ sở lý thuyết, tổng quan công nghệ
Giớ thiệu về giải thuật, những công nghệ, nền tảng được sử dụng trong đồ án.- Chương 03: Phân tích thiết kế ứng dụng
Phân tích yêu cầu, thiết kế, hiện thực và triển khai ứng dụng.- Chương 04: Kết luận
- Chương 05: Cài đặt và thử nghiệm
Những kết quả đạt được sau khi kết thúc đồ án Những hạn chế, khó khăntrong quá trình phát triển đồ án và nêu ra hướng phát triển trong tương lai.
Trang 62.1.4 JSON Web Token Error! Bookmark not defined.2.1.5 Stripe Error! Bookmark not defined.2.1.6 MySQL Error! Bookmark not defined.Chương 3 PHÂN TÍCH THIẾT KẾ ỨNG DỤNG 8
Trang 73.1.1 Sơ đồ Use case 8
3.1.2 Danh sách Actors 10
3.1.3 Danh sách các Use case 11
3.1.4 Đặc tả Use case 14
3.1.5 LượC đồ hoạt động đăng ký 51
3.1.6 Lược đồ quản lý địa chỉ 52
3.1.7 Lược đồ hoạt động tìm kiếm sản phẩmError! Bookmark not defined.3.1.8 Lược đồ hoạt động xem chi tiết sản phẩm 53
3.1.9 Lược đồ hoạt động thêm sản phẩm vào giỏ hàng 53
Chương 5 CÀI ĐẶT VÀ THỬ NGHIỆM 102
5.1 Môi trường cài đặt 102
5.2 Các thư viện, framework liên quan 102
Trang 85.3 Kiểm thử phần mềm 1025.4 Hướng dẫn cài đặt 102TÀI LIỆU THAM KHẢO 103
Trang 9DANH MỤC CÁC HÌNH
DANH MỤC CÁC BẢNG
Trang 10CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN1.1.Khảo sát hiện trạng
1.1.1 Nhu cầu thực tế đề tài
1.1.2 Khảo sát một số ứng dụng hiện có1.1.2.1 Mã tốc Logistic
1 Giới thiệu
Mã tốc logistics xây dựng hệ thống vận chuyển hàng hóa Trung-Việt chấtlượng và uy tín Hệ thống quản lý hàng hóa thông minh, tối ưu giúp tối giản thờigian vận chuyển Đây cũng là một thương hiệu tiêu biểu đang sử dụng dịch vụ trọngói tại Mona Software.
1.1.2.2 Abivin vRoute1 Giới thiệu
Abivin vRoute là một Hệ thống Quản lý Vận tải đầy đủ tính năng để giải quyếtcác vấn đề trong lĩnh vực logistics như quản lý vận tải thủ công, kế hoạch giao hàngkhông hiệu quả, chi phí logistics cao, quá phụ thuộc vào kinh nghiệm của lái
xe/nhân viên điều phối, hoặc thiếu hụt về khả năng hiển thị vận chuyển.
Trang 111.2.Mục tiêu
- Doanh nghiệp có thể sử dụng các tính năng hỗ trợ việc quản lí đơn hàng,quản lí kho hàng và quản lí phương tiện và tối ưu hóa thiết lập tuyếnđường vận chuyển.
- Chủ hệ thống có thể phát triển dễ dàng với chi phí thấp.- Hệ thống gọn nhẹ.
- Có thể mở rộng dễ dàng
1.2.1 Đối tượng sử dụng
- Doanh nghiệp hoạt động trong lĩnh vực Logistic và Vận tải.
1.2.2 Yêu cầu
1.2.2.1 Yêu cầu chức năng
Đối với doanh nghiệp
o Quản lý tài khoản (đăng nhập, đăng ký)o Quản lí, báo giá đơn đặt hàng vận chuyển.
o Thiết lập, quản lí và tối ưu hóa các tuyển đường vận chuyển.o Quản lí kho hàng.
o Quản lí đội xe.
o Quản lí các nhà cung cấp dịch vụ.
1.2.2.2 Yêu cầu phi chức năng
Yêu cầu về giao diện:
- Giao diện thân thiện, bố cục hợp lý, dễ sử dụng.
- Giao diện thống nhất, đồng bộ, không gây bất ngờ cho ngườisử dụng.
- Màu sắc, vị trí, hiển thị của các component có tính đồng bộ. Yêu cầu về độ tin cậy, bảo mật:
- Có sử dụng phân quyền cho từng loại người dùng.
Trang 12- Dữ liệu không bị xóa hoàn toàn, có thể khôi phục lại. Yêu cầu về độ tương thích:
o Đối với web- IE11 / Edge
- Firefox: 2 version gần nhất- Chrome: 2 version gần nhất Yêu cầu về khả năng phát triển:
- Dễ dàng nâng cấp tính năng đã có nhờ vào sự hệ thống hóatrong khâu xử lý.
- Dễ dàng mở rộng khi có nhu cầu phát triển. Yêu cầu về tính hiệu quả:
- Hệ thống quản lý dữ liệu một cách logic.
- Hiệu năng ổn định tránh gây khó chịu cho người dùng.- Có khả năng chịu tải tốt.
- Khả năng mở rộng tùy chỉnh phụ thuộc theo tình hình tài chínhcủa chủ sở hữu.
Trang 13CHƯƠNG 2. NỀN TẢNG LÝ THUYẾT VÀ CÔNG NGHỆ2.1.Công nghệ sử dụng
Hiểu biết về quy trình làm việc của các thành phần trong doanh nghiệp làquan trọng để sử dụng Odoo một cách hiệu quả.
Vì Odoo là mã nguồn mở, các nhà phát triển có thể lập trình các mô-đun bổsung (addons/extensions) để đáp ứng nhu cầu cụ thể của người dùng và phải tuânthủ các nguyên tắc tương ứng với khuôn khổ do Odoo cung cấp.
Giới thiệu về Odoo
Trang 14 Trang chủ Odoo: https://www.odoo.com/
Mã nguồn Odoo được lưu trữ trên Github: https://github.com/odoo/odoo Trước đây được biết đến với tên gọi OpenERP:
https://www.odoo.com/blog/odoo-news-5/post/odoo-the-new-openerp-156 Phiên bản Odoo hiện tại tính đến năm 2023: v16.0
Hai phiên bản của Odoo: Odoo Community (miễn phí, mã nguồn mở trênGithub) và Odoo Enterprise (trả phí); https://www.odoo.com/page/editions Odoo cung cấp dịch vụ đám mây odoo.sh: https://www.odoo.sh/
Odoo cung cấp cả các mô-đun miễn phí và trả phí trên cửa hàng:https://apps.odoo.com/apps
Tài liệu hướng dẫn cho người dùng Odoo:
https://www.odoo.com/documentation/user/13.0/index.html Tài liệu hướng dẫn cho nhà phát triển:
Đối tác Odoo: https://www.odoo.com/partners; khi doanh nghiệp cần tư vấn/tùychỉnh/triển khai các giải pháp Odoo, bạn nên liên hệ với đối tác Odoo thay vìliên hệ trực tiếp với Odoo Nếu bạn liên hệ trực tiếp với Odoo, họ sẽ giới thiệubạn đến đối tác phù hợp nhất.
Nền tảng Kỹ thuật Odoo
Ngôn ngữ lập trình chính: Python CMS backend: Python
Frontend: Backbone JS, jQuery, underscore.js, D3.js Hệ quản trị cơ sở dữ liệu (DBMS): Postgres
Trang 15o Liên kết ORM: Tạo các lớp Python -> ánh xạ đến các bảng trong cơ sở dữliệu Postgres.
Việc tùy chỉnh trên nền tảng Odoo làm cho việc phát triển phần mềm nhanhhơn nhiều so với bắt đầu từ đầu, đem lại một lợi thế đáng kể Hiện tại, chưa tìm thấyđối thủ cạnh tranh nào trên nền tảng Python, v.v.
2.1.2 PostgreSQL
Hình 2- 2 Logo PostgreSQL
PostgreSQL là một hệ thống quản trị cơ sở dữ liệu quan hệ-đối tượng
(object-relational database management system) có mục đích chung, hệ thống cơ sởdữ liệu mã nguồn mở tiên tiến nhất hiện nay.
PostgreSQL được thiết kế để chạy trên các nền tảng tương tự UNIX Tuynhiên, PostgreSQL sau đó cũng được điều chỉnh linh động để có thể chạy được trênnhiều nền tảng khác nhau như Mac OS X, Solaris và Windows.
PostgreSQL là một phần mềm mã nguồn mở miễn phí Mã nguồn của phầnmềm khả dụng theo license của PostgreSQL, một license nguồn mở tự do Theo đó,bạn sẽ được tự do sử dụng, sửa đổi và phân phối PostgreSQL dưới mọi hình thức.
Trang 162.1.3 Docker
Hình 2.7 Logo Docker
Docker là một nền tảng mã nguồn mở cho việc tạo, triển khai và quản lý cácứng dụng trong các môi trường ảo hóa.
Trang 17CHƯƠNG 3. PHÂN TÍCH THIẾT KẾ ỨNG DỤNG3.1.Use case
3.1.1 Sơ đồ Use case
Trang 193.1.2 Danh sách Actors
1 Admin Người dùng hệ thống để quản lý tài khoản
3 Nhân viên bán hàng Người dùng hệ thống
Trang 205 Nhân viên kho Người dùng hệ thống
Bang 3.1 Bang danh sách các actors
3.1.3 Danh sách các Use case
Usecase chínhPhân rã Use-caseÝ nghĩa/Ghi chú
người dùng
Xem và tìm kiếm thông tin nhómngười dùng
Thêm nhóm ngườidùng
Người dùng thêm thông tin nhómngười dùng
Cập nhật nhóm ngườidùng
Người dùng cập nhật thông nhómngười dùng
Xóa nhóm ngườidùng
Người dùng xóa thông tin nhóm ngườidùng
Trang 21hàng tin kho hàng theo từ khóaThêm thông tin kho
Người dùng thêm thông tin kho hàngvào hệ thống
Cập nhật thông tinkho hàng
Người dùng cập nhật thông tin khohàng
Xóa thông tin kho
hàng Người dùng xóa thông tin kho hàngXem , tìm kiếm kệ
Người dùng cập nhật thông tin kệhàng
Xóa thông tin kệ hàng Người dùng xóa thông tin kệ hàngXem , tìm kiếm sản
Xem và tìm kiếm thông tin sản phẩmtheo từ khóa
Cập nhật thông tinsản phẩm
Người dùng cập nhật thông tin sảnphẩm
Quản lý phươngtiện
Xem , tìm kiếmphương tiện
Xem và tìm kiếm thông tin phươngtiện theo từ khóa
Thêm thông tinphương tiện
Người dùng thêm thông tin phươngtiện vào hệ thống
Cập nhật thôngphương tiện
Người dùng cập nhật thông tinphương tiện
Xóa thông tin phương
tiện Người dùng xóa thông tin phương tiệnXem , tìm kiếm loại
phương tiện
Xem và tìm kiếm thông tin loạiphương tiện theo từ khóa
Trang 22Thêm thông tin loạiphương tiện
Người dùng thêm thông tin loạiphương tiện vào hệ thốngCập nhật thông loại
Người dùng phân công tài xế và xecho chuyến giao
Xem , tìm kiếm thôngtin tài xế
Xem và tìm kiếm thông tin tài xế theotừ khóa
Thêm thông tin tài xế Người dùng thêm thông tin tài xế vàohệ thống
Cập nhật thông tin tài
xế Người dùng cập nhật thông tin tài xếXóa thông tin tài xế Người dùng xóa thông tài xếQuản lý kế
Xem , tìm kiếm kếhoạch
Xem và tìm kiếm thông tin kế hoạchtheo từ khóa
Thêm thông tin kếhoạch
Người dùng thêm thông tin kế hoạchvào hệ thống
Cập nhật thông kếhọach
Người dùng cập nhật thông tin kếhoạch
Xóa thông tin kế
hoạch Người dùng xóa thông tin kế hoạchXem , tìm kiếm
chuyến giao
Xem và tìm kiếm thông tin chuyếngiao theo từ khóa
Cập nhật thông tinchuyến giao
Người dùng cập nhật thông tin chuyếngiao
Cập nhật trạng thái Người dùng cập nhật trạng thái của
Trang 23chuyến giao chuyến giaoQuản lý khách
Người dùng cập nhật thông tin kháchhàng
Xóa thông tin khách
hàng Người dùng xóa thông tin khách hàng
Bang 3.2 Danh sách các use case
− Người dùng muốn vào hệ thống để thực hiện các tính năng thì phải thôngqua đăng nhập
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải có tài khoản
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Hiển thị màn hình đăng nhập.
Trang 24− Nhập username, password sau đó bấm “Login” Hoặc chọn “Sign in withGoogle” (đối với chủ xe người dùng app) thì chuyển sang luồng A1.− Nếu thông tin chính xác thì chuyển sang màn hình chính.
− Nếu đăng nhập thất bại thì sẽ thông báo thất bại và phải nhập lại thôngtin để tiếp tục đăng nhập.
− Kết thúc usecase.
Luồng sự kiện phụLuồng A1:
− Nhập tài khoản Google
− Chuyển sang màn hình chính.− Kết thúc use case
Bang 3.3 Đặc ta Use case Đăng nhập
b Đặc tả Usecase Phân quyền truy cậpUse case: Phân quyền truy cập
Tác nhân chính: AdminMô tả ngắn gọn:
− Admin muốn phân quyền truy cập cho các nhóm tài khoản để truy cậpvào các chức năng của hệ thống
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Đăng nhập với vai trò admin
Sự kiện kích hoạt: Bấm nút “Chỉnh sửa quyền truy cập”Điều kiện thực hiện: Không có
Trang 25Luồng sự kiện chính:
− Hiển thị màn hình danh sách các User Group− Chọn nút “Edit”
− Chỉnh sửa quyền truy cập
− Nếu thành công chuyển sang màn danh sách các User Group.− Nếu không thành công hiển thị thông báo.
− Kết thúc usecase.
Bang 3.4 Đặc ta Usecase Đăng ký tài khoan
c Đặc tả Use case Cập nhật thông tinUse case: Cập nhật thông tin
Tác nhân chính: Người dùngMô tả ngắn gọn:
− Người dùng muốn thay đổi thông tin cá nhân hoặc mật khẩu thì sử dụnguse case này
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập vào hệ thống
Sự kiện kích hoạt: Người dùng chọn vào “Profile” ở menuĐiều kiện thực hiện: Không có
Luồng sự kiện chính:
− Hiển thị menu để chọn các chức năng.− Chọn “Profile”
Trang 26− Nếu thành công chuyển sang màn hình Profile.− Nếu không thành công hiển thị thông báo.− Kết thúc usecase.
Luồng sự kiện phụ: Không có
Bang 3.5 Đặc ta Use case Cập nhật thông tin
d Đặc tả Use case Xem và tìm kiếm tài khoảnUse case: Xem và tìm kiếm tài khoản
Tác nhân chính: AdminMô tả ngắn gọn:
− Người dùng muốn xem thông tin tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải đăng nhập với tài khoản Admin
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục User List
− Người dùng nhập từ khóa tìm kiếm
− Nếu thành công hệ thống hiển thị các User− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.8 Đặc ta Use case Tìm kiếm tài khoan
Trang 27e Đặc tả Use case Thêm tài khoảnUse case: Thêm tài khoản
Tác nhân chính: AdminMô tả ngắn gọn:
− Người dùng muốn thêm tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải đăng nhập với tài khoản Admin
Sự kiện kích hoạt: Bấm nút “Create”Điều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục User List− Bấm nút “Create”
− Nhập thông tin tài khoản
− Nếu thành công hệ thống thông báo thành công, chuyển đến màn hìnhdanh sách các User
− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.8 Đặc ta Use case Thêm tài khoan
f Đặc tả Use case Xóa tài khoảnUse case: Xóa tài khoản
Tác nhân chính: AdminMô tả ngắn gọn:
Trang 28− Người dùng muốn xóa thông tin tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải đăng nhập với tài khoản Admin
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn tài khoản− Bấm “Delete”
− Bấm “Confirm” để xác nhận
− Nếu thành công hệ thống hiển thị các User− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.8 Đặc ta Use case Xóa tài khoan
g Đặc tả Use case Xem và tìm kiếm nhóm người dùngUse case: Xem và tìm kiếm nhóm người dùng
Tác nhân chính: AdminMô tả ngắn gọn:
− Người dùng muốn xem thông tin nhóm người dùng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải đăng nhập với tài khoản Admin
Trang 29Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục User List
− Người dùng nhập từ khóa tìm kiếm
− Nếu thành công hệ thống hiển thị các User− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.8 Đặc ta Use case Tìm kiếm nhóm người dùng
h Đặc tả Use case Thêm nhóm người dùngUse case: Thêm nhóm người dùng
Tác nhân chính: AdminMô tả ngắn gọn:
Người dùng muốn thêm nhóm người dùng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải đăng nhập với tài khoản Admin
Sự kiện kích hoạt: Bấm nút “Create”Điều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục User Group List− Bấm nút “Create”
− Nhập thông tin tài khoản
Trang 30− Nếu thành công hệ thống thông báo thành công, chuyển đến màn hìnhdanh sách các User Group
− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.8 Đặc ta Use case Thêm tài khoan
i Đặc tả Use case Cập nhật thông tin nhóm người dùngUse case: Cập nhật nhóm người dùng
Tác nhân chính: AdminMô tả ngắn gọn:
Người dùng muốn cập nhật thông tin nhóm người dùng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải đăng nhập với tài khoản Admin
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Hiển thị menu để chọn các chức năng.− Chọn User Group
Trang 31Bang 3.8 Đặc ta Use case Cập nhật nhóm người dùng
j Đặc tả Use case Xóa thông tin nhóm người dùngUse case: Xóa nhóm người dùng
Tác nhân chính: AdminMô tả ngắn gọn:
Người dùng muốn xóa thông tin nhóm người dùng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Phải đăng nhập với tài khoản Admin
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn tài khoản− Bấm “Delete”
− Bấm “Confirm” để xác nhận
− Nếu thành công hệ thống hiển thị các User Group− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.8 Đặc ta Use case Xóa nhóm người dùng
Trang 323.1.4.2 Đặc tả Use case Quản lý kho hàng
a Đặc tả Use case Xem và tìm kiếm khohàng
Use case: Xem và tìm kiếm kho hàng
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
− Người dùng muốn xem thông tin kho hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục Warehouse List
− Người dùng nhập từ khóa tìm kiếm
− Nếu thành công hệ thống hiển thị các Warehouse− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.14 Đặc ta Use case Tìm kiếm kho hàng
b Đặc tả Use case Thêm kho hàngUse case: Thêm kho hàng
Tác nhân chính: Người dùng có quyền truy cập
Trang 33Người dùng muốn thêm kho hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Bấm nút “Create”Điều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục warehouseList− Bấm nút “Create”
− Nhập thông tin tài khoản
− Nếu thành công hệ thống thông báo thành công, chuyển đến màn hìnhdanh sách các warehouse
− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.15 Đặc ta Use case Thêm kho hàng
c Đặc tả Use case Cập nhật thông tin khohàng
Use case: Cập nhật kho hàng
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
Người dùng muốn cập nhật thông tin kho hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.
Trang 34− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Hiển thị menu để chọn các chức năng.− Chọn warehouse
− Cập nhật các thông tin
− Nếu thành công chuyển sang màn hình danh sách warehouse.− Nếu không thành công hiển thị thông báo.
− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.16 Đặc ta Use case Cập nhật kho hàng
d Đặc tả Use case Xóa thông tin kho hàngUse case: Xóa kho hàng
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
Người dùng muốn xóa thông tin kho hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
Trang 35− Bấm “Delete”
− Bấm “Confirm” để xác nhận
− Nếu thành công hệ thống hiển thị các warehouse− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.17 Đặc ta Use case Xóa kho hàng
e Đặc tả Use case Xem và tìm kiếm kệhàng
Use case: Xem và tìm kiếm kệ hàng
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
− Người dùng muốn xem thông tin kệ hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục shelvesList
− Người dùng nhập từ khóa tìm kiếm
− Nếu thành công hệ thống hiển thị các shelves− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Trang 36Luồng sự kiện phụ: Không có
Bang 3.18 Đặc ta Use case Tìm kiếm kệ hàng
f Đặc tả Use case Thêm kệ hàngUse case: Thêm kệ hàng
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
Người dùng muốn thêm kệ hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Bấm nút “Create”Điều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục shelves List− Bấm nút “Create”
− Nhập thông tin tài khoản
− Nếu thành công hệ thống thông báo thành công, chuyển đến màn hìnhdanh sách các shelves
− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.19 Đặc ta Use case Thêm kệ hàng
Trang 37g Đặc tả Use case Cập nhật thông tin kệhàng
Use case: Cập nhật kệ hàng
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
Người dùng muốn cập nhật thông tin kệ hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Hiển thị menu để chọn các chức năng.− Chọn shelves
− Cập nhật các thông tin
− Nếu thành công chuyển sang màn hình danh sách shelves.− Nếu không thành công hiển thị thông báo.
− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.20 Đặc ta Use case Cập nhật kệ hàng
h Đặc tả Use case Xóa thông tin kệ hàngUse case: Xóa kệ hàng
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
Trang 38Người dùng muốn xóa thông tin kệ hàng
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn tài khoản− Bấm “Delete”
− Bấm “Confirm” để xác nhận
− Nếu thành công hệ thống hiển thị các shelves− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.21 Đặc ta Use case Xóa kệ hàng
i Đặc tả Use case Xem và tìm kiếm sảnphẩm
Use case: Xem và tìm kiếm sản phẩm
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
− Người dùng muốn xem thông tin sản phẩm
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.
Trang 39Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục product List
− Người dùng nhập từ khóa tìm kiếm
− Nếu thành công hệ thống hiển thị các product− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.22 Đặc ta Use case Tìm kiếm san phẩm
j Đặc tả Use case Cập nhật thông tin sảnphẩm
Use case: Cập nhật sản phẩm
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
Người dùng muốn cập nhật thông tin sản phẩm
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Hiển thị menu để chọn các chức năng.− Chọn product
Trang 40− Cập nhật các thông tin
− Nếu thành công chuyển sang màn hình danh sách product.− Nếu không thành công hiển thị thông báo.
− Kết thúc usecase
Luồng sự kiện phụ: Không có
Bang 3.23 Đặc ta Use case Cập nhật san phẩm
3.1.4.3 Đặc tả Use case Quản lý phương tiện
a Đặc tả Use case Xem và tìm kiếmphương tiện
Use case: Xem và tìm kiếm phương tiện
Tác nhân chính: Người dùng có quyền truy cậpMô tả ngắn gọn:
− Người dùng muốn xem thông tin phương tiện
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động.− Người dùng phải đăng nhập
Sự kiện kích hoạt: Không cóĐiều kiện thực hiện: Không cóLuồng sự kiện chính:
− Chọn mục vehicle List
− Người dùng nhập từ khóa tìm kiếm
− Nếu thành công hệ thống hiển thị các vehicle− Nếu không thành công hệ thống thông báo lỗi− Kết thúc usecase