ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THÔNG TIN
---------------------------------------------KHOA CÔNG NGHỆ PHẦN MỀM
ĐỒ ÁN 1
PHÁT TRIỂN HỆ THỐNG QUẢN LÝ VẬN
CHUYỂN HÀNG HÓA CHO SÀN THƯƠNG MẠI
ĐIỆN TỬ
GV HƯỚNG DẪN: TH.S NGUYỄN TRỊNH ĐÔNG
SV THỰC HIỆN:
TRƯƠNG NGUYỄN CƠNG CHÍNH – 20520884
NGUYỄN THÁI BẢO - 20521105
TP. HỒ CHÍ MINH, 2023
LỜI CẢM ƠN
Bài báo cáo này được thực hiện tại Trường Đại học Công nghệ thông tin, Đại học
Quốc gia Thành phố Hồ Chí Minh dưới sự hướng dẫn khoa học của TS. Nguyễn Trịnh
Đơng. Tơi xin bày tỏ lịng biết ơn sâu sắc tới thầy đã quan tâm, hướng dẫn từ các kỹ năng
cơ bản đến định hướng khoa học, tạo điều kiện thuận lợi trong suốt quá trình làm bài báo
cáo tại trường.
Tôi cũng xin gửi lời cám ơn đến Ban Lãnh đạo Trường Đại học Công nghệ thơng
tin, Đại học Quốc gia Thành phố Hồ Chí Minh đã tạo điều kiện tốt về cả cơ sở vật chất lẫn
tinh thần cho tơi trong suốt q trình hồn thành bài báo cáo này.
Cuối cùng, tơi bày tỏ lịng biết ơn tới bố mẹ, ông bà, các anh chị em trong gia đình.
Và lịng biết ơn vơ tận đến ông nội, sự ra đi của ông có lẽ là sự mất mát lớn nhất trong cuộc
đời tôi kèm theo đó là sự tiếc nuối những điều mà tơi chưa có khả năng làm cho ơng. Nhưng
qua thời gian, tơi đã có thể mở lịng và đón nhận sự mất mát này hơn. Đối với tôi đây là
động lực lớn nhất để tơi có thể hồn thành đồ án 1 này cũng như là tiếp túc phấn đấu cho
những chặng đường tiếp theo trong cuộc đời. Lời cuối thì tơi cũng chỉ muốn nói là: “ Con
cảm ơn tất cả và xin lỗi những gì mình đã làm mọi người thất vọng”.
Thành phố Hồ Chí Minh, ngày 19 tháng 5 năm 2023
Trương Nguyễn Cơng Chính
2|Page
Mục lục
CHƯƠNG 1. TỔNG QUAN ĐỀ TÀI ................................................................................................................. 4
1.1 Đặt vấn đề ............................................................................................................................................... 4
1.2 Giải pháp ................................................................................................................................................. 4
1.3 Mục tiêu đề tài ........................................................................................................................................ 4
1.4 Phạm vi đề tài.......................................................................................................................................... 5
1.5 Công cụ sử dụng ...................................................................................................................................... 5
1.6 Đối tượng nghiên cứu ............................................................................................................................. 6
1.7 Khảo sát và đánh giá các ứng dụng hiện có ............................................................................................ 6
CHƯƠNG 2. TỔNG QUAN CƠNG NGHỆ ..................................................................................................... 10
2.1 Phương pháp làm việc .......................................................................................................................... 10
2.2 Phương pháp nghiên cứu...................................................................................................................... 10
2.3 Phương pháp công nghệ và nền tảng ................................................................................................... 10
2.4 Giới thiệu về ReactJS và Node.js ........................................................................................................... 10
CHƯƠNG 3. KHẢO SÁT VÀ PHÂN TÍCH ĐẶC TẢ YÊU CẦU ......................................................................... 14
3.1 Khảo sát hiện trạng ............................................................................................................................... 14
3.2 Danh sách yêu cầu có trong ứng dụng .................................................................................................. 14
CHƯƠNG 4. PHÂN TÍCH HỆ THỐNG ........................................................................................................... 16
4.1 Phân tích các yêu cầu phần mềm.......................................................................................................... 16
4.2 Bẳng trách nhiệm cho từng loại yêu cầu............................................................................................... 18
CHƯƠNG 5. THIẾT KẾ HỆ THỐNG............................................................................................................... 19
5.1 Sơ đồ Usecase tổng quát ...................................................................................................................... 19
CHƯƠNG 6. THIẾT KẾ DỮ LIỆU................................................................................................................... 69
6.1 Sơ đồ logic hoàn chỉnh .......................................................................................................................... 69
6.2 Danh sách các bản dữ liệu trong sơ đồ logic ........................................................................................ 69
6.3 Mô tả từng bảng dữ liệu ....................................................................................................................... 69
CHƯƠNG 7. THIẾT KẾ GIAO DIỆN............................................................................................................... 75
CHƯƠNG 8. CÀI ĐẶT DEMO SẢN PHẨM ................................................................................................... 76
CHƯƠNG 9. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ....................................................................................... 78
3|Page
CHƯƠNG 1. TỔNG QUAN ĐỀ TÀI
1.1 Đặt vấn đề
Trong thời đại số hóa ngày càng phát triển, thương mại điện tử đã trở thành một phương
thức mua sắm phổ biến và tiện lợi. Sàn thương mại điện tử (e-commerce) đóng vai trò quan
trọng trong việc kết nối người mua và người bán trên nền tảng trực tuyến. Tuy nhiên, việc
quản lý vận chuyển hàng hóa trong lĩnh vực này vẫn gặp phải nhiều khó khăn và thách
thức.
Hiện nay, hầu hết các sàn thương mại điện tử đều phụ thuộc vào các bên thứ ba để
quản lý và vận chuyển hàng hóa. Điều này có thể gây ra nhiều vấn đề như mất kiểm sốt
về thời gian giao hàng, chi phí vận chuyển cao, rủi ro về bảo mật và chất lượng dịch vụ
khơng đảm bảo. Vì vậy, một hệ thống quản lý vận chuyển hàng hóa tích hợp được phát
triển trực tiếp bởi sàn thương mại điện tử có thể giải quyết những khó khăn này và cung
cấp một trải nghiệm mua sắm tốt hơn cho người dùng
1.2 Giải pháp
Để có thể hồn thành được đề tài, em đã nghiên cứu những nội dung như sau:
Tìm hiểu về ngơn ngữ Javascript và framework Express (Node.js) để hỗ trợ cho việc
lập trình backend.
Tìm hiểu về ReactJS cũng như là các thư viện hỗ trợ để hỗ trợ cho việc lập trình
web.
Tìm hiểu về các cơng cụ hỗ trợ về UI/UX design và một số công cụ thiết kế chỉnh
sửa của Adobe và Figma để thiết kế giao diện cho ứng dụng.
1.3 Mục tiêu đề tài
Mục đích của đề tài này là phát triển một hệ thống quản lý vận chuyển hàng hóa cho
sàn thương mại điện tử, nhằm cải thiện q trình vận chuyển hàng hóa và tăng cường trải
nghiệm mua sắm của người dùng. Hệ thống sẽ giúp sàn thương mại điện tử quản lý quá
4|Page
trình vận chuyển từ khi đơn hàng được đặt cho đến khi hàng hóa được giao đến tay khách
hàng một cách hiệu quả, an toàn và đáng tin cậy.
1.4 Phạm vi đề tài
Phạm vi nghiên cứu của đề tài sẽ tập trung vào việc phát triển hệ thống quản lý vận
chuyển hàng hóa từ khi đơn hàng được đặt cho đến khi hàng hóa được giao đến tay khách
hàng. Các chức năng chính của hệ thống sẽ bao gồm quản lý đơn hàng, quản lý kho hàng,
quản lý vận chuyển, theo dõi vận chuyển, và thông báo trạng thái vận chuyển đến người
dùng.
Hệ thống sẽ được xây dựng dựa trên các nguyên tắc và tiêu chuẩn về quản lý vận
chuyển hàng hóa hiện có, như bản đồ định vị, phương thức vận chuyển, quy trình kiểm tra
và giao nhận hàng hóa. Sản phẩm cuối cùng sẽ được kiểm thử và đánh giá hiệu năng để
đảm bảo tính ổn định, an toàn và khả năng mở rộng của hệ thống.
Với mục đích này, đề tài sẽ tìm hiểu các phương pháp, cơng nghệ và tiêu chuẩn quản
lý vận chuyển hàng hóa, áp dụng các kỹ thuật phát triển phần mềm và kiến trúc hệ thống,
cùng với việc nghiên cứu và sử dụng các công nghệ mới như hệ thống thông tin địa lý
(GIS) để tăng cường tính năng và hiệu suất của hệ thống.
Tóm lại, việc phát triển hệ thống quản lý vận chuyển hàng hóa cho sàn thương mại
điện tử là cần thiết để giải quyết những khó khăn hiện tại trong q trình vận chuyển hàng
hóa. Đề tài sẽ tập trung vào việc nghiên cứu và xây dựng một hệ thống tích hợp, hiệu quả
và tin cậy, nhằm nâng cao trải nghiệm mua sắm của người dùng và tạo ra lợi ích kinh tế
cho sàn thương mại điện tử
1.5 Công cụ sử dụng
Công cụ phát triển: Visual Studio Code
Cơng cụ dùng để phân tích, thiết kế: Adobe illustrator, Adobe photoshop,
Figma.
5|Page
Công cụ quản lý dự án: Github.
Công cụ soạn thảo báo cáo và vẽ sơ đồ: Microsoft Word, draw.io.
1.6 Đối tượng nghiên cứu
Đối tượng nghiên cứu của đề tài này là các sàn thương mại điện tử hoạt động trực
tuyến, đặc biệt là những sàn thương mại điện tử có quy mơ lớn và giao dịch hàng hóa với
số lượng lớn. Hệ thống quản lý vận chuyển hàng hóa được đề xuất có thể được tùy chỉnh
và triển khai cho các sàn thương mại điện tử thuộc nhiều ngành hàng khác nhau, như thời
trang, điện tử, đồ gia dụng, v.v
1.7 Kháo sát, đánh giá các ứng dụng cạnh tranh hiện có
1.7.1 Giao hàng nhanh
GIAOHANGNHANH
GIAOHANGNHANH là một nền tảng trực tuyến kết nối người mua và người bán,
giúp quản lý q trình vận chuyển hàng hóa từ người bán đến người mua một cách thuận
tiện và nhanh chóng. Ứng dụng này cung cấp một giao diện đơn giản và dễ sử dụng cho cả
người mua và người bán, giúp tạo ra một trải nghiệm mua sắm trực tuyến tốt cho người
dùng.
Ưu điểm của GIAOHANGNHANH bao gồm:
6|Page
o Tiện lợi và nhanh chóng: GIAOHANGNHANH cho phép người mua truy
cập vào nhiều cửa hàng và sản phẩm khác nhau trong cùng một ứng dụng,
giúp tiết kiệm thời gian và cơng sức trong việc tìm kiếm và mua hàng.
o Quản lý đơn hàng hiệu quả: Ứng dụng cung cấp tính năng quản lý đơn hàng
tự động, cho phép người mua theo dõi trạng thái đơn hàng của mình, từ khi
đặt hàng cho đến khi nhận hàng.
o Lựa chọn phương thức thanh toán đa dạng: GIAOHANGNHANH hỗ trợ
nhiều phương thức thanh tốn trực tuyến, bao gồm thẻ tín dụng, thẻ ngân
hàng và các nền tảng thanh toán trực tuyến khác, đảm bảo tính tiện lợi và linh
hoạt cho người mua.
Tuy nhiên, GIAOHANGNHANH cũng có một số nhược điểm:
o Phụ thuộc vào mạng internet: Vì là một ứng dụng trực tuyến,
GIAOHANGNHANH yêu cầu người dùng có kết nối internet ổn định để truy
cập và sử dụng ứng dụng.
o Khả năng mất mát hàng hóa: Do phụ thuộc vào dịch vụ vận chuyển từ bên
thứ ba, có thể xảy ra các trường hợp mất mát hoặc hỏng hóc hàng hóa trong
quá trình vận chuyển.
o Độ tin cậy của người bán: GIAOHANGNHANH không kiểm tra hoặc đảm
bảo độ tin cậy của người bán và chất lượng của sản phẩm, do đó người mua
cần tự đánh giá và chọn lựa người bán đáng tin cậy.
1.7.2 GIAOHANGTIETKIEM
7|Page
GIAOHANGTIETKIEM
GHTK là một công ty chuyên cung cấp dịch vụ giao hàng và vận chuyển hàng hóa
trong nước. Ứng dụng GHTK cung cấp nền tảng trực tuyến giúp người dùng (người mua
và người bán) quản lý quá trình vận chuyển hàng hóa một cách dễ dàng và hiệu quả.
Ưu điểm của GHTK bao gồm:
o Phạm vi vận chuyển rộng: GHTK có mạng lưới vận chuyển rộng khắp cả
nước, cho phép giao hàng đến nhiều địa điểm khác nhau, bao gồm cả các khu
vực khó tiếp cận.
o Dịch vụ nhanh chóng: GHTK cam kết giao hàng nhanh chóng và đáng tin
cậy, giúp người bán và người mua tiết kiệm thời gian và đảm bảo hàng hóa
được giao đúng thời hạn.
o Theo dõi đơn hàng: GHTK cung cấp tính năng theo dõi đơn hàng trực tuyến,
cho phép người dùng theo dõi q trình vận chuyển của hàng hóa từ khi đặt
hàng cho đến khi nhận hàng.
o Dịch vụ hỗ trợ khách hàng: GHTK có đội ngũ nhân viên chuyên nghiệp và
nhiệt tình, sẵn sàng hỗ trợ khách hàng trong quá trình vận chuyển và giải
quyết các vấn đề liên quan.
Tuy nhiên, cũng có một số nhược điểm của GHTK:
o Chi phí vận chuyển: GHTK có các mức phí vận chuyển khác nhau, phụ thuộc
vào khoảng cách và trọng lượng hàng hóa, có thể làm tăng chi phí giao dịch
của người mua hoặc người bán.
8|Page
o Điều kiện giao hàng: GHTK có những quy định và hạn chế về kích thước,
trọng lượng và loại hàng hóa có thể vận chuyển, điều này có thể ảnh hưởng
đến việc vận chuyển nhất là đối với hàng hóa có kích thước lớn hoặc cồng
kềnh.
9|Page
CHƯƠNG 2. TỔNG QUAN CÔNG NGHỆ
2.1 Phương pháp làm việc
Làm việc khi tâm trạng đạt trạng thái tốt nhất. Thường xuyên ghi chép lại các
ý tưởng cũng như là những thay đổi lớn liên quan đến ứng dụng để thuận tiện cho
việc chỉnh sửa sau này
2.2 Phương pháp nghiên cứu
- Phân tích nhu cầu sử dụng của các đối tượng có liên quan đến ứng dụng.
- Nghiên cứu, phân tích và đánh giá các ứng dụng cõ sẵn trên thị trường.
2.3 Phương pháp cơng nghệ và nền tảng
- Tìm hiểu ngôn ngữ và framework để xây dựng website:
+ Ngôn ngữ lập trình backend: Javascript với Express, Postman.
+ Ngơn ngữ lập trình frontend: Javascript với ReactJS
2.4 Giới thiệu ReactJS và NodeJS
2.4.1 Node.js
Node.js là một mơi trường chạy mã JavaScript phía máy chủ (server-side) được xây
dựng dựa trên nền tảng JavaScript V8 engine của Google Chrome. Nó cho phép phát triển
ứng dụng web và các dịch vụ mạng có khả năng xử lý đa luồng, đáp ứng cao và có khả
năng mở rộng.
Dưới đây là một số ưu điểm của Node.js:
Hiệu suất cao: Node.js sử dụng kiến trúc không đồng bộ và hướng sự kiện (eventdriven), cho phép xử lý đa luồng mà không bị chặn bởi I/O. Điều này giúp tăng
cường hiệu suất và đáp ứng nhanh hơn trong các ứng dụng có tính tải cao.
10 | P a g e
Xây dựng ứng dụng thời gian thực: Node.js hỗ trợ xử lý đồng thời và gửi dữ liệu
qua WebSockets, cho phép xây dựng các ứng dụng thời gian thực như trò chuyện
trực tuyến, trò chơi đa người chơi, ứng dụng đồng bộ, v.v.
Mã nguồn mở và cộng đồng phát triển đông đảo: Node.js là một dự án mã nguồn
mở, có nhiều thư viện, framework và cơng cụ phát triển phong phú. Cộng đồng phát
triển của Node.js rất lớn và năng động, mang lại nhiều tài nguyên và hỗ trợ cho nhà
phát triển.
Đơn giản và dễ học: Node.js sử dụng ngôn ngữ JavaScript, ngôn ngữ phổ biến và
dễ học. Điều này giúp cho việc học và phát triển ứng dụng trở nên dễ dàng và nhanh
chóng.
Tuy nhiên, Node.js cũng có một số nhược điểm cần lưu ý:
Xử lý CPU-intensive chậm: Do Node.js sử dụng mơ hình đơn luồng, nếu ứng dụng
có nhiều tác vụ CPU-intensive (như tính tốn phức tạp), hiệu suất có thể giảm.
Node.js thích hợp hơn cho các ứng dụng I/O-intensive (như ứng dụng web) hơn là
CPU-intensive.
Tiềm ẩn về quản lý bộ nhớ: Node.js sử dụng bộ nhớ không đồng bộ (non-blocking)
và sự kiện để đạt hiệu suất cao. Tuy nhiên, điều này có thể tạo ra một số thách thức
trong quản lý bộ nhớ, đặc biệt là khi xử lý các tác vụ dài hạn hoặc có khối lượng dữ
liệu lớn.
Chưa hồn thiện trong việc hỗ trợ một số tính năng: Mặc dù Node.js đã phát triển mạnh
mẽ, nhưng vẫn còn một số tính năng và giao diện chưa được hồn thiện hoặc thiếu hỗ trợ
tốt.
2.4.2 ReactJs
ReactJS là một thư viện JavaScript mã nguồn mở được sử dụng để xây dựng giao
diện người dùng (UI) động trong các ứng dụng web. Với ReactJS, người phát triển có thể
11 | P a g e
xây dựng các thành phần giao diện độc lập, tái sử dụng và quản lý trạng thái của ứng
dụng một cách hiệu quả.
Dưới đây là một số ưu điểm của ReactJS:
Hiệu suất cao: ReactJS sử dụng Virtual DOM (DOM ảo) để làm việc, giúp cải
thiện hiệu suất bằng cách chỉ cập nhật lại các phần tử cần thiết trên trang web, thay
vì cập nhật tồn bộ DOM. Điều này giúp giảm thời gian render và cải thiện trải
nghiệm người dùng.
Quản lý trạng thái dễ dàng: ReactJS sử dụng mơ hình quản lý trạng thái (state) và
các thành phần có trạng thái (stateful components), cho phép người phát triển quản
lý và cập nhật trạng thái của ứng dụng một cách dễ dàng và nhất quán.
Tính năng tái sử dụng cao: ReactJS khuyến khích việc phân chia giao diện thành
các thành phần nhỏ và độc lập, cho phép tái sử dụng và kết hợp chúng để xây
dựng giao diện phức tạp. Điều này giúp giảm mã lặp và tăng tính chất lượng của
mã nguồn.
Cộng đồng và hỗ trợ đa dạng: ReactJS có một cộng đồng phát triển rất lớn và năng
động, cung cấp nhiều tài liệu, ví dụ, và thư viện mở rộng. Ngồi ra, có nhiều cơng
cụ hỗ trợ như Redux, React Router, và Material-UI giúp việc phát triển ứng dụng
dễ dàng hơn.
Tuy nhiên, ReactJS cũng có một số nhược điểm:
Khái niệm phức tạp ban đầu: ReactJS sử dụng cú pháp và khái niệm mới, đòi hỏi
một thời gian để làm quen và hiểu rõ cách thức hoạt động. Điều này có thể địi hỏi
người phát triển phải có một q trình học tập ban đầu.
Phụ thuộc vào hệ sinh thái: Để tận dụng hết tiềm năng của ReactJS, người phát
triển thường phải sử dụng các thư viện và công cụ khác như Redux, React Router,
hoặc CSS-in-JS. Điều này có thể khiến ứng dụng trở nên phức tạp và phụ thuộc
nhiều vào hệ sinh thái ReactJS.
12 | P a g e
Kích thước tải xuống ban đầu: Mặc dù ReactJS đã được tối ưu để tải xuống nhanh
hơn, tuy nhiên, ứng dụng ReactJS ban đầu có kích thước lớn hơn so với các trang
web tĩnh. Điều này có thể gây ảnh hưởng đến thời gian tải trang đầu và yêu cầu
mạng.
Tóm lại, ReactJS là một cơng nghệ mạnh mẽ để xây dựng giao diện người dùng linh
hoạt và hiệu suất cao. Tuy nhiên, việc sử dụng ReactJS cần xem xét kỹ lưỡng và đảm bảo
rằng nó phù hợp với yêu cầu và quy mô dự án của bạn.
13 | P a g e
CHƯƠNG 3. KHẢO SÁT VÀ PHÂN TÍCH ĐẶC TẢ YÊU CẦU
3.1 Khảo sát hiện trạng
- Phương pháp: Dựa trên báo cáo, nghiên cứu chính thức. Ngồi ra cịn thực hiện một
cuộc khảo sát quy mô nhỏ và nhận được khoảng 121 phản hồi.
- Kết quả nhận được từ cuộc khảo sát:
Tỷ lệ người đã từng sử dụng dịch vụ:
Đánh giá tổng thể về trải nghiệm sử dụng ứng dụng trên thang điểm từ 1 đến 10:
Các ưu điểm chính của ứng dụng theo ý kiến người dùng (người dùng được yêu
cầu chọn nhiều lựa chọn):
o Giao diện người dùng thân thiện và dễ sử dụng: 83%
o Tốc độ xử lý ổn định: 72%
o Cung cấp các tính năng quản lý vận chuyển hàng hóa hiệu quả: 68%
3.2 Danh sách yêu cầu có trong ứng dụng
STT
Loại yêu cầu
Tên yêu cầu
1
Chức năng
Xem thông tin đơn hàng
2
Chức năng
Đăng ký tài khoản
3
Chức năng
Đăng nhập
4
Chức năng
Lấy lại mật khẩu
5
Chức năng
Thay đổi thông tin cá nhân
6
Chức năng
CRUD các thông tin liên quan đến ứng dụng
7
Chức năng
Theo dõi đơn hàng
8
Chức năng
Phân quyền nhân viên
9
Chức năng
Quản lý kho
10
Chức năng
Quản lý đơn hàng
11
Chức năng
Quản lý trạng thái đơn hàng
14 | P a g e
12
Chức năng
Đổi mật khẩu
13
Chức năng
Tạo tin tức trên trang chủ
14
Chức năng
Tra cứu kho
15
Chức năng
Phân chia đơn hàng
16
Chức năng
Đăng xuất
17
Chức năng
Chọn ngơn ngữ
18
Chức năng
Tìm kiếm đơn hàng
19
Chức năng
Chọn phương thức xem hàng
20
Chức năng
Chọn phương thức thanh toán
21
Chức năng
Yêu cầu giao hàng lại
22
Chức năng
Hủy đơn hàng
23
Chức năng
Xem các bản tin
24
Giao diện
Tiện dụng, tối ưu hóa chức năng
25
Giao diện
Giao diện dễ nhìn, thân thiện
26
Giao diện
Animation đẹp mắt
27
Giao diện
Bố cục hợp lý
28
Giao diện
Tối giản hóa các chức năng
15 | P a g e
CHƯƠNG 4: PHÂN TÍCH HỆ THỐNG
4.1 Phân loại các yêu cầu phần mềm
4.1.1 Yêu cầu hệ thống
- Ứng dụng có thể hoạt động như các website thông thường.
- Ứng dụng đáp ứng được các nhu cầu cần thiết, cơ bản của khách hàng cũng như các
chức năng khác liên quan như là quản lý các mục thông tin liên quan đến ứng dụng.
4.1.2 Yêu cầu nghiệp vụ
STT
Tên chức năng
Nghiệp vụ yêu cầu
1
Xem thông tin đơn hàng
Hiện thị tất cả đơn hàng mà người dùng đã
lên đơn
2
Đăng ký tài khoản
Khách hàng tạo tài khoản cá nhân để đăng
nhập và lên đơn hàng.
3
Đăng nhập
Khách hàng đăng nhập để tiền hành lên đơn
hàng để vận chuyển cũng như là quản lý
doanh thu của mình.
4
Lấy lại mật khẩu
Khách hàng có thể lấy lại mật khẩu khi qn
5
Thay đổi thơng tin cá nhân
Khách hàng có thể thay đổi và cập nhật thông
tin mới về bản thân.
6
CRUD các thông tin liên
Cho phép các nhân viên quản lý trong hệ
quan đến ứng dụng
thống được phép CRUD một số thông tin liên
quan đến ứng dụng.
7
Theo dõi đơn hàng
Cho phép tất cả người dùng ( Khơng cần đăng
nhập) có thể theo dõi tình trạng đơn hàng chỉ
cần biết mã đơn hàng.
8
Phân quyền nhân viên
Cho phép quản trị hệ thống có thể phân quyền
cho các nhân viên trong hệ thống.
16 | P a g e
9
Quản lý kho
Cho phép quản lý các nhân viên kho cũng
như là kiểm tra các đơn hàng đang còn lưu
trong kho.
10
Quản lý đơn hàng
Cho phép quản lý cũng như là phân loại các
đơn hàng theo trạng thái
11
Quản lý trạng thái đơn hàng
Cho phép một số nhân viên liên quan đến tiến
trình của việc giao đơn hàng cập nhật trạng
thái của đơn hàng.
12
Đổi mật khẩu
Cho phép người dùng đổi mật khẩu.
13
Tạo tin tức trên trang chủ
Cho phép quản trị hệ thống tạo thêm các tin
tức mới liên quan đến hệ thống lên trang chủ.
14
Tra cứu kho
Cho phép tất cả người dùng kiểm tra xem đã
có hệ thống kho ở địa phương nơi mình sinh
sống để hỗ trợ giao nhận hàng hay chưa.
15
Phân chia đơn hàng
Cho phép quản lý kho phân chia đơn hàng
cho nhân viên giao hàng phụ trách.
16
Đăng xuất
Cho phép người dùng có thể đăng xuất ra
khỏi tài khoản của mình trên hệ thống.
17
Chọn ngơn ngữ
Cho phép người dùng thay đỗi ngơn ngữ hiển
thị trên giao diện (Vi-En).
18
Tìm kiếm đơn hàng
Cho phép người dùng tìm kiếm đơn hàng
trong chuỗi đơn hàng của mình.
19
Chọn phương thức xem hàng Cho phép người lên đơn hàng được phép
chọn kiểu xem hàng khi giao đến người nhận.
20
21
Chọn phương thức thanh
Cho phép người dùng thanh tốn phí giao
tốn
hàng khi lên đơn COD hoặc Trực tuyến.
u cầu giao hàng lại
Cho phép người lên đơn yêu cầu giao lại hang
sau khi giao thất bại.
17 | P a g e
22
Hủy đơn hàng
Cho phép người lên đơn hủy đơn hàng trong
khoảng thời gian cho phép.
23
Xem các bản tin
Cho phép người dùng xem các bản tin mới tại
trang chủ.
24
Lên đơn hàng
Cho phép người dùng tạo đơn hàng để bắt đầu
giao đi.
4.2 Bảng trách nhiệm cho từng loại yêu cầu
STT Nghiệp vụ
1
Người dùng
Quản trị viên Phần mềm
CRUD thông tin
CRUD thông
Phê chuẩn
liên quan đến ứng
tin liên quan
các trường
dụng
đến ứng dụng
dữ liệu nhập
Ghi chú
vào
2
3
Phân quyền
Lấy lại mật khẩu
Sử dụng được
Sử dụng các
Hạn chế truy
chức năng
chức năng
cập các chức
thuộc các quyền thuộc các
năng không
của khách hàng
quyền của
thuộc đúng
quản trị viên
quyền hạn
Lấy lại được
Lấy lại được
Phải trả về
mật khẩu cho
mật khẩu cho
mật khẩu mới
tại khoản
tài khoản
ứng với mỗi
tài khoản
18 | P a g e
CHƯƠNG 5: THIẾT KẾ HỆ THỐNG
5.1 Sơ đồ Usecase tổng quát
5.1.1 Yêu cầu tổng quát
UC1: Đăng ký
Name
Đăng ký
Description
Actor
Cung cấp chức năng cho phép người dùng đăng ký tài khoản để sử dụng dịch
vụ giao hàng
Khách hàng
Trigger
1. Khách hàng truy cập ứng dụng vào mục đăng nhập và chọn đăng ký tài
khoản.
2. Khách hàng nhập Tên.
3. Khách hàng chọn Giới tính.
4. Khách hàng chọn Ngày sinh.
5. Khách hàng nhập Số điện thoại.
6. Khách hàng nhập Email.
7. Khách hàng nhập Mật khẩu.
8. Khách hàng nhập Xác nhận mật khẩu.
9. Khách hàng thực hiện đăng ký.
10. Hệ thống xác thực định dạng thông tin Khách hàng nhập.
11. Hệ thống thông báo “Đăng ký thành công” và chuyển đến trang đăng
nhập.
Pre-condition
Postcondition
Khách hàng đã kết nối Internet và truy cập vào trang đăng ký.
Ta Tài khoản của khách hàng được tạo và lưu trên hệ thống.
Activities Flow
19 | P a g e
Sequence diagram
20 | P a g e
Business Rules
Activity
BR
Code
Description
(1)
BR1
Khi người dùng click vào nút đăng ký hệ thống phải chuyển sang trang tạo tài
khoản. Kèm theo đó lấy danh sách thông tin về tỉnh huyện của Việt Nam.
(2)
BR2
Khi khách hàng/admin điền các thơng tin vào màn hình Đăng ký. Nếu có trường
dữ liệu bị sai yêu cầu hoặc thiếu thơng tin thì ở dưới ơ textbox để điền dữ liệu sẽ có
dịng chữ error và ơ dữ liệu chuyển sang đỏ [TextBoxColor]=”Red”. Phía dưới ơ
dữ liệu sẽ có thơng báo:
Để trống ơ dữ liệu: [TextError]= <<Tên trường dữ liệu>> + “khơng được
để trống”
Ví dụ:”Tên đăng nhập không được để trống”
Dữ liệu đầu vào sai: [TextError]=<<Tên trường dữ liệu>> + ”sai kiểu
dữ liệu đầu vào”.
Ví dụ “Email sai kiểu dữ liệu đầu vào”
Nếu textbox nhập đúng thơng tin, label kế bên textbox hiện kí hiệu “✓”
UC2: Đăng nhập
21 | P a g e
Name
Description
Đăng nhập
Actor
Cung cấp chức năng cho phép người dùng sử dụng 1 tài khoản để vào hệ
thống.
Khách hàng, nhân viên, admin
Trigger
1. Khách hàng/Admin nhập tài khoản.
2. Khách hàng/Admin nhập mật khẩu.
3. Khách hàng/Admin thực hiện đăng nhập.
4. Hệ thống xác thực thông tin tài khoản và mật khẩu.
5. Hệ thống cho Khách hàng/Admin đăng nhập vào hệ thống .
Pre-condition
Người dùng đã kết nối internet và truy cập vào trang đăng nhập.
Postcondition
Người dùng đăng nhập vào hệ thống bằng tài khoản đã nhập.
Activities Flow
22 | P a g e
Sequence diagram
Business Rules
Activity
BR
Code
(1)
BR1
Description
Khi người dùng truy cập vào ứng dụng hệ thống phải tải màn hình đăng
nhập bao gồm form đăng nhập:
Khi khách hàng hàng điền các thông tin vào màn hình Đăng nhập.
Nếu có trường dữ liệu bị sai u cầu hoặc thiếu thơng tin thì ở dưới ơ
textbox để điền dữ liệu sẽ có dịng chữ error và ơ dữ liệu chuyển sang đỏ
[TextBoxColor]=”Red”. Phía dưới ô dữ liệu sẽ có thông báo:
Để trống ô dữ liệu: [TextError]=”<<Tên trường dữ liệu>>”+ “khơng được
để trống”. Ví dụ:”Tên đăng nhập không được để trống”
Đăng nhập thành công hệ thống sẽ gửi về thông báo “Đăng nhập
23 | P a g e
thành công”.
Đăng nhập thất bại hệ thống sẽ gửi về thông báo “Sai tài khoản hoặc
mật khẩu”
UC3: Lấy lại mật khẩu
Name
Description
Lấy lại mật khẩu
Actor
Cung cấp chức năng cho phép khách hàng hoặc quản trị viên có thể lấy lại mật
khẩu khi quên mật khẩu.
Khách hàng, nhân viên, admin
Trigger
1. Khách hàng/Admin nhập Email.
2. Khách hàng/Admin gửi Email.
3. Hệ thống gửi lại mã PIN vào Email.
4. Khách hàng/Admin nhập mã PIN.
5. Khách hàng/Admin gửi mã PIN.
6. Khách hàng/Admin nhập mật khẩu, xác nhận mật khẩu mới.
7. Khách hàng/Admin gửi mật khẩu, xác nhận mật khẩu mới.
Pre-condition
Khách hàng/Admin đã kết nối internet và truy cập vào trang Quên mật khẩu
Postcondition
Mật khẩu tài khoản Khách hàng/Admin được cập nhật mới.
24 | P a g e
Sequence diagram
Business Rules
Activity
BR
Code
Description
25 | P a g e