Tại đây người dùng chính cóthể thêm, sửa, xóa người dùng, sản phẩm, hay nội dung bài viết.Nếu đăng nhập không thành công, hệ thống sẽ thông báo sai thôngtin đăng nhập, buộc người dùng ph
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP MÔN HỌC
THỰC TẬP HỆ THỐNG THÔNG TIN QUẢN LÝ Đ TI:
TÍCH HỢP THANH TOÁN PAYPAL, STRIPE, UPLOAD ẢNH CLOUDINARY, API LẤY TỈNH THNH VO WEBSITE BÁN SÁCH BOOKSTORE
Giảng viên hướng dẫn : LÊ THỊ TRANG LINH
Hà Nội,ngày 28 tháng 04 năm 2024
Trang 2PHIẾU CHẤM ĐIỂM Sinh viên thực hiện:
Trang 3LỜI CẢM ƠN
Trên thực tế, không có sự thành công nào mà không gắn liền với những sự hỗ trợ, sự giúp đỡ dù ít hay nhiều, dù là trực tiếp hay gián tiếp của người khác Trong suốt quãng thời gian từ khi bắt đầu học tập tại trường Đại học đã đến nay, chúng em
đã nhận được rất nhiều sự quan tâm, giúp đỡ của thầy cô, gia đình và bạn bè Với lòng biết ơn sâu sắc nhất, chúng em xin gửi đến các thầy cô ở Khoa công nghệ thông tin - trường Đại Học Điện Lực đã cùng với kinh nghiệm và tâm huyết của mình để truyền đạt vô vàn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường Và đặc biệt, trong kỳ này, chúng em được học một môn học rất hữu ích
tin tích hợp”.
Chúng em xin chân thành cảm ơn cô Lê Thị Trang Linh đã tận tâm giảng dạy chúng em Trong thời gian được học tập và thực hành dưới sự hướng dân của cô, chúng em không những thu được rất nhiều kiến thức bổ ích, mà còn được truyền cảm
lời hướng dẫn, dạy bảo của cô thì có lẽ bài báo cáo này không thể hoàn thành được Mặc dù đã rất cố gắng hoàn thiện báo cáo với tất cả sự nỗ lực, tuy nhiên, do còn thiếu kinh nghiệm, tìm hiểu và xây dựng báo cáo trong thời gian có hạn, kiến thức còn hạn chế, nhiều bỡ ngỡ, nên báo cáo chắc chắn sẽ không thể tránh khỏi những thiếu sót Em rất mong nhận được sự quan tâm, thông cảm và những đóng góp quý báu của các thầy cô và các bạn để báo cáo này được hoàn thiện hơn.
Trang 4MGC LGC
LỜI CẢM ƠN 3
MGC LGC 4
DANH MGC BẢNG BIỂU 7
DANH MGC HÌNH ẢNH 8
LỜI MỞ ĐẦU 11
CHƯƠNG 1: GIỚI THIỆU V ĐƠN VỊ THỰC TẬP 11
1.1 Giới thiệu về doanh nghiệp 11
1.2 Các sản phẩm công nghệ 12
1.3 Bảo mật website 12
1.3.1 Bảo mật JWT là gì? 12
1.3.2 Cách thức JWT hoạt động 13
1.3.3 Phương pháp phòng chống JWT 13
CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 15
2.1 Mục tiêu và phạm vi dự án 15
2.1.1 Phạm vi 15
2.1.2 Mục tiêu 15
2.2 Yêu cầu về nghiệp vụ 15
2.3 Phân tích và đặc tả nghiệp vụ hệ thống 15
2.3.1 Sơ đồ tổng quát hệ thống 15
2.4 Xác định các Actor và Use Case tổng quát của hệ thống 16
2.4.1 Xác định các Actor của hệ thống 16
2.4.1.1 Biểu đồ Use Case tổng quát của hệ thống 16
2.5 Phân tích chi tiết từng chức năng của hệ thống 16
2.5.1 Chức năng đăng nhập và đăng xuất 16
Trang 52.5.2 Chức năng quản lý tài khoản 21
2.5.2.1 Biểu đồ Use Case cho chức năng quản lý người dùng (Admin) 21
2.5.2.2 Biểu đồ hoạt động cho chức năng quản lý tài khoản 22
2.5.2.3 Biểu đồ trình tự cho chức năng quản lý tài khoản 23
2.5.3 Chức năng quản lý sản phẩm 26
2.5.3.1 Biểu đồ Use Case cho chức năng quản lý sản phẩm 26
2.5.3.2 Biểu đồ hoạt động cho chức năng quản lý sản phẩm 28
2.5.3.3 Biểu đồ trình tự cho quản lý sản phẩm 29
2.5.4 Chức năng quản lý đơn hàng 32
2.5.4.1 Biểu đồ Use Case cho chức năng quản lý đơn hàng 32
2.5.4.2 Biểu đồ hoạt động cho chức năng quản lý đơn hàng 34
2.5.3.3 Biểu đồ trình tự cho quản lý đơn hàng 35
CHƯƠNG 3: THIẾT KẾ HỆ THỐNG 36
3.1 Thiết kế cơ sở dữ liệu 36
3.2 Thiết kế giao diện 38
3.2.1 Màn hình đăng nhập trang admin 38
3.2.2 Màn hình chính 40
3.2.3 Giao diện quản lý người dùng 41
3.2.4 Giao diện quản lý sản phẩm 42
3.2.5 Giao diện quản lý đơn hàng 43
CHƯƠNG 4: TÍCH HỢP 45
4.1 Tích hợp thanh toán Stripe 45
4.1.1 Cài đặt code 45
4.1.2 Demo kết quả 46
4.2 Tích hợp thanh toán PayPal 47
4.2.1 Cài đặt Code 47
4.2.2 Demo kết quả 47
4.3 Tích hợp upload ảnh cloudinary 49
Trang 64.3.2 Demo kết quả 50
4.4 Tích hợp api tỉnh thành vnappmob 51
4.4.1 Cài đặt Code 51
4.4.2 Demo kết quả 52
4.5 Biểu đồ trình tự cho từng chức năng tích hợp 52
4.5.1 Biểu đồ trình tự Stripe 52
4.5.2 Biểu đồ trình tự PayPal 53
4.5.3 Biểu đồ trình tự Cloudinary 55
4.5.4 Biểu đồ trình tự api tỉnh thành vnappmob 55
KẾT LUẬN 57
TI LIỆU THAM KHẢO 58
Trang 7DANH MGC BẢNG BIỂU
Bảng 3 1 Bảng định nghĩa các bảng trong cơ sở dữ liệu 36
Bảng 3 2 Bảng lưu thông tin người dùng 36
Bảng 3 3 Bảng lưu dữ liệu sản phẩm 37
Bảng 3 4 Bảng lưu thông tin tác giả 37
Bảng 3 5 Bảng lưu thông tin nhà xuất bản 37
Bảng 3 6 Bảng lưu trữ thông tin danh mục 38
Bảng 3 7 Bảng lưu thông tin danh mục của sản phẩm 38
Trang 8DANH MGC HÌNH ẢNH
Hình 1 1 Logo của công ty VINOVA 9
Hình 2 1 Sơ đồ tổng quát hệ thống 15
Hình 2 2 Biểu đồ usecase tổng quát hệ thống 16
Hình 2 3 Biểu đồ usecase đăng nhập, đăng xuất 17
Hình 2 4.Biểu đồ hoạt động cho chức năng đăng nhập, đăng xuất 18
Hình 2 5.Biểu đồ trình tự cho chức năng đăng nhập 19
Hình 2 6.Biểu đồ trình tự chức năng đăng xuất 20
Hình 2 7.Biểu đồ Use Case quản lý tài khoản 21
Hình 2 8.Biểu đồ hoạt động cho chức năng quản lý tài khoản 22
Hình 2 9 Biều đồ trình tự cho chức năng sửa tài khoản 23
Hình 2 10 Biểu đồ trình tự cho chức năng xóa tài khoản 24
Hình 2 11 Biểu đồ Use Case cho chức năng quản lý sản phẩm 26
Hình 2 12 Biểu đồ hoạt động cho chức năng quản lý sản phẩm 28
Hình 2 13 Biểu đồ trình tự cho thêm sản phẩm 29
Hình 2 14 Biểu đồ trình tự cho sửa sản phẩm 30
Hình 2 15 Biểu đồ trình tự cho xóa sản phẩm 31
Hình 2 16 Biểu đồ Use Case cho chức năng quản lý sản phẩm 32
Hình 2 17 Biểu đồ hoạt động cho chức năng quản lý sản phẩm 34
Hình 2 18 Biểu đồ trình tự cho xóa đơn hàng 35
Hình 3 7 Giao diện trang đăng nhập hệ thống quán lý 37
Hình 3 8 Giao diện trang thông báo lỗi 38
Hình 3 9 Giao diện chính của hệ thống quản lý 38
Trang 9Hình 3 10 Giao diện thêm mới tài khoản 39
Hình 3 12 Giao diện xóa tài khoản 39
Hình 3 13 Giao diện thêm mới sản phẩm 40
Hình 3 14 Giao diện sửa sản phẩm 40
Hình 3 15 Giao diện xóa sản phẩm 41
Hình 4 1 Cài đặt Stripe ở phía backend 45
Hình 4 2 Cài đặt Stripe ở phía frontend 45
Hình 4 3 Chọn thanh toán Stripe ở Order 46
Hình 4 4 Giao diện thanh toán Stripe 46
Hình 4 5 Cài đặt PayPal 47
Hình 4 6 Chọn hình thức thanh toán Paypal 47
Hình 4 7 Đăng nhập paypal 48
Hình 4 8 Giao diện giao dịch PayPal 48
Hình 4 9 Giao dịch thành công 49
Hình 4 10 Cài đặt Cloudinary upload với multer 49
Hình 4 11 Giao diện tạo sản phẩm 50
Hình 4 12 Ảnh được lưu với link online trên cloudinary 50
Hình 4 13 Cài đặt code gọi tới api tỉnh thành ở backend 51
Hình 4 14 Cài đặt code ở phía frontend 51
Hình 4 15 Demo kết quả 52
Hình 4 16 Biểu đồ trình tự thanh toán Stripe 52
Hình 4 17 Biểu đồ trình tự thanh toán PayPal 53
Hình 4 18 Biểu đồ trình tự Cloudinary 55
Trang 10Hình 4 19 Biểu đồ trình tự vnappmob 55
Trang 11LỜI MỞ ĐẦU
Trên thực tế, không có sự thành công nào mà không gắn liền với những sự hỗ trợ, sự giúp đỡ dù ít hay nhiều, dù là trực tiếp hay gián tiếp của người khác Trong suốt quãng thời gian từ khi bắt đầu học tập tại trường Đại học đã đến nay, chúng em
đã nhận được rất nhiều sự quan tâm, giúp đỡ của thầy cô, gia đình và bạn bè Với lòng biết ơn sâu sắc nhất, chúng em xin gửi đến các thầy cô ở Khoa công nghệ thông tin- trường Đại Học Điện Lực đã cùng với kinh nghiệm và tâm huyết của mình để truyền đạt vô vàn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại trường Và đặc biệt, trong kỳ này, chúng em được học một môn học rất hữu ích
đối với sinh viên ngành Công Nghệ Thông Tin Đó là học phần: “Thực tập hệ thống thông tin quản lý”.
Chúng em xin chân thành cảm ơn cô Lê Thị Trang Linh đã tận tâm giảng dạy chúng em qua từng buổi học trên lớp Trong thời gian được học tập và thực hành dưới
sự hướng dân của thầy, chúng em không những thu được rất nhiều kiến thức bổ ích,
mà còn được truyền cảm hứng đối với học phần “Thực tập hệ thống thông tin quản lý” Nếu không có những lời hướng dẫn, dạy bảo của cô thì có lẽ bài báo cáo này
không thể hoàn thành được
Mặc dù đã rất cố gắng hoàn thiện báo cáo với tất cả sự nỗ lực, tuy nhiên, do còn thiếu kinh nghiệm, tìm hiểu và xây dựng báo cáo trong thời gian có hạn, kiến thức
còn hạn chế, nhiều bỡ ngỡ, nên báo cáo thực tập “Xây dựng website bán sách BookStore” chắc chắn sẽ không thể tránh khỏi những thiếu sót Em rất mong nhận
được sự quan tâm, thông cảm và những đóng góp quý báu của các thầy cô và các bạn
để báo cáo này được hoàn thiện hơn.
Một lần nữa, em xin chân thành cảm ơn và luôn mong nhận được sự đóng góp của mọi người
Chúng em xin chân thành cảm ơn!
Hà Nội, ngày 28 tháng 04 năm 2024
Sinh viên thực hiện
Vinova liên tục được xếp hạng trong số 10 công ty phát triển ứng dụng di động hàng đầu tại Singapore Một công ty sáng tạo tự hào về việc cung cấp các dự án với tiêu chuẩn cao, Vinova đã giành được sự tin tưởng
Trang 12Hình 1 1 Logo của công ty VINOVA
Vinova là một tập thể năng động, gắn kết, nhiệt huyết, luôn hết mình, không ngừng học hỏi và sáng tạo nhắm mang tới dịch vụ, sản phẩm chuyên nghiệp, chất lượng tới khách hàng Chúng tôi cho rằng yếu tố con người sẽ làm nên những sản phẩm và dịch vụ có vị thế trên thị trường Giữ vững niềm tin của khách hàng, đối tác, doanh nghiệp Trở thành một doanh nghiệp cung cấp các giải pháp công nghệ số hàng đầu Việt Nam vào những năm tiếp theo trên con đường phát triển Công ty có trụ sở chính tại Singapore.
Website: https://vinova.sg
1.2 Các sản phẩm công nghệ
Hiện tại, ở VINOVA cung cấp những sản phầm công nghệ như:
Hiện nay công ty đang triển khai xây dựng website bán sách BookStore, em tham gia vào việc triển khai website này, nên trong báo cáo này em xin được trình bày kết quả thu được trong quá trình phát triển website bán sách BookStore tại công ty.
1.3 Bảo mật website
1.3.1 Bảo mật JWT là gì?
JWT là một phương tiện đại diện cho các yêu cầu chuyển giao giữa hai bên Client –
Server , các thông tin trong chuỗi JWT được định dạng bằng JSON Trong đó chuỗi Token phải có 3 phần là header , phần payload và phần signature được ngăn bằng dấu
“.”
Cấu trúc của JSON Web Token:
Như ở trên đã nói JSON Web Token bao gồm 3 phần, được ngăn cách nhau bởi dấu chấm (.):
Header
Trang 13“typ” (type) chỉ ra rằng đối tượng là một JWT
“alg” (algorithm) xác định thuật toán mã hóa cho chuỗi là HS256
Payload
Phần payload sẽ chứa các thông tin mình muốn đặt trong
chuỗi Token như username userId author , , , … ví dụ:
data base64urlEncode header base64urlEncode payload = ( ) + "." + ( )
signature = Hash ( data secret , );
base64UrlEncoder : thuật toán mã hóa header và payload
1.3.2 Cách thức JWT hoạt động
Kỹ thuật tấn công Cross-Site Request Forgery (CSRF) hoạt động bằng cách khai thác sự tin tưởng của trình duyệt web và người dùng Thông thường, khi bạn đăng nhập vào một trang web, trình duyệt sẽ lưu trữ một số thông tin đăng nhập, chẳng hạn như tên đăng nhập và mật khẩu, dưới dạng cookies Khi bạn thực hiện các hoạt động trên trang web đó, trình duyệt sẽ tự động gửi các yêu cầu đến máy chủ của trang web đó, kèm theo các thông tin xác thực.
Tấn công CSRF xảy ra khi kẻ tấn công tạo ra các yêu cầu giả mạo hoặc khai thác các yêu cầu đã tồn tại trong trình duyệt của người dùng để gửi đến máy chủ của trang web đó Khi người dùng truy cập vào trang web đó, các yêu cầu giả mạo này sẽ được tự động gửi đi mà không cần sự cho phép hay sự nhận biết của người dùng Điều này có nghĩa là, nếu kẻ tấn công đã lừa được người dùng truy cập vào trang web của
họ, thì họ có thể thực hiện các hoạt động trái phép trên trang web đó.
1.3.3 Phương pháp phòng chống JWT
Phía người dùng (User)
Không nên lưu thông tin mật khẩu tại trình duyệt (không nênchọn các phương thức “lưu mật khẩu” hay “đăng nhập lầnsau”
Nên đăng xuất thông tin đăng nhập vào tài khoản ngân hàng,tài khoản email, hay các trang mạng xã hội trên máy tính lạ
Không nên click vào đường link lạ mà nhận được qua email,facebook Bạn nên đưa chuột vào đường link, phía dưới bêntrái của trình duyệt sẽ hiện địa chỉ link đích Sau đó, bạn
Trang 14kiểm tra xem đây có phải địa chỉ mình muốn truy cập haykhông.
Không nên truy cập vào các website khác trong khi thực hiệngiao dịch Việc truy cập các trang website lạ có thể chứa mãkhai thác của kẻ tấn công
Phía máy chủ (Server)
Phía máy chủ sử dụng CSRF_Token:
Phương pháp này yêu cầu trang web tạo ra một token ngẫu nhiên và bao gồm nó trong các yêu cầu từ người dùng Khi một yêu cầu được gửi đến trang web, token này được kiểm tra để đảm bảo rằng yêu cầu đó được gửi từ người dùng chính xác và không phải là một yêu cầu giả mạo.
Trang 15- Cải thiện tốc độ tải trang cũng như trải nghiệm người dùng.
- Hỗ trợ khách hàng mua hàng nhanh nhất có thể thông qua kênh chat tại website
2.2 Yêu cầu về nghiệp vụ
Tên gọi : Website bán sách BookStore
Dự án hướng tới 2 đối tượng, nhà phát triển và người dùng Phía nhà phát triển hay nhà cửa hàng sử dụng hệ thống quản lý bán hàng, phía còn lại là khách hàng có thể trải nghiệm dịch vụ mua sắm tại hệ thống website của cửa hàng.
Trang 16 Quản lý sản phẩm: Chức năng này cho phép quản trị viên thêm, sửa, xóa thông tin sản phẩm để hiển thị trên trang web.
Quản lý đánh giá: Chức năng này cho phép quản trị viên theo dõi cũng như là thao tác với các bình luận về sản phẩm
Quản lý đơn hàng: Chức năng cho phép quản trị viên theo dõi và thao tác với các đơn đặt hàng của khách hàng
Quản lý bài viết: Chức năng cho phép quản trị viên có thể đăng bài,tin tức lên website
2.4 Xác định các Actor và Use Case tổng quát của hệ thống
2.4.1 Xác định các Actor của hệ thống
Người quản trị viên:
Là người có quyền quản lý cao nhất của hệ thống Họ quản lý các thông tin của trong hệ thống cũng như quản lý việc hiển thị nó lên website.
Khách hàng:
Là người sẽ trải nghiệm mua sắm và cũng là người góp ý kiến về sự phục vụ của nhân viên tại của hàng cũng như cần bộ sung thêm những yếu tố gì để website phát triển và nâng cấp hơn nữa.
2.4.1.1 Biểu đồ Use Case tổng quát của hệ thống
Hình 2 2 Biểu đồ usecase tổng quát hệ thống
2.5 Phân tích chi tiết từng chức năng của hệ thống
2.5.1 Chức năng đăng nhập và đăng xuất
Trang 172.5.1.1 Biểu đồ use case cho chức năng đăng nhập, đăng xuất
Hình 2 3 Biểu đồ usecase đăng nhập, đăng xuất
Đặc tả use case đăng nhập, đăng xuất
- Tác nhân: Admin
- Mô tả: Khi người dùng được cấp thông tin tài khoản mặc địnhkhông thay đổi lần đầu bao gồm thông tin email và mật khẩu.Trong đó người dùng mặc định bắt buộc phải nhập đúng định dạngcủa email và đủ ký tự mật khẩu Khi đăng nhập thành công, hệthống sẽ chuyển hướng tới trang chủ Tại đây người dùng chính cóthể thêm, sửa, xóa người dùng, sản phẩm, hay nội dung bài viết.Nếu đăng nhập không thành công, hệ thống sẽ thông báo sai thôngtin đăng nhập, buộc người dùng phải nhập lại
- Dòng sự kiện chính:
o Tác nhân yêu cầu giao diện đăng nhập vào hệ thống
o Hệ thống hiện thị giao diện đăng nhập cho tác nhân
o Tác nhân sẽ: nhập email (email) và mật khẩu (password)
o Hệ thống kiểm tra dữ liệu đầu vào và đối chiếu thông tin tàikhoản trong cơ sở dữ liệu
o Thông tin đúng thì hệ thống cho phép đưa tác nhân vào giaodiện chính
o Kết thúc use case đăng nhập
- Các yêu cầu đặc biệt: Không có
- Trạng thái hệ thống trước khi sử dụng use case: Không có yêu cầu
Trang 18- Trạng thái hệ thống sau khi sử dụng use case:
Nếu đăng nhập thất bại: Hệ thống cũng sẽ gửi thông báo “Emaildoes not exist” hoặc “Password is incorrect” và quay lại chức năngđăng nhập cho bạn đăng nhập lại thông tin của mình
2.5.1.2 Biểu đồ hoạt động cho chức năng đăng nhập, đăng xuất
Hình 2 4.Biểu đồ hoạt động cho chức năng đăng nhập, đăng xuất
Trang 192.5.1.3 Biểu đồ trình tự cho chức năng đăng đăng nhập, đăng xuất
Hình 2 5.Biểu đồ trình tự cho chức năng đăng nhập
Mô tả chi tiết biểu đồ trình tự với chức năng đăng nhập
Bước 1: Tác nhân cụ thể là admin website khi yêu cầu đăng nhập hệ thống quản lý
Bước 2: Yêu cầu hệ thống hiện thị giao diện đăng nhập
Bước 3: Hệ thống trả về form đăng nhập
Bước 4: Hệ thống yêu cầu nhập thông tin tài khoản: email và password Bước 5: Nhập thông tin tài khoản gồm email và password
Bước 6: Click vào button đăng nhập để hệ thống xử lý thông tin
Bước 7: Kiểm tra thông tin đăng nhập.
Bước 8: Kiểm tra thông tin đăng nhập trên cơ sở dự liệu
Bước 9: Xác nhận thông tin đăng nhập và đối chiếu kết quả với cơ sở dự liệu.
Trang 20Bước 10: Gửi kết quả sau khi đối chiếu.
Bước 11: Gửi thông báo ra màn hình:
Nếu đăng nhập thất bại: Hệ thống cũng sẽ gửi thông báo “Email does not exist” hoặc “Password is incorrect” và quay lại chức năng đăng nhập cho bạn đăng nhập lại thông tin của mình.
Hình 2 6.Biểu đồ trình tự chức năng đăng xuất
Mô tả chi tiết biểu đồ trình tự với chức năng đăng xuất
- Bước 1: Tác nhân cụ thể quản lý website khi yêu cầu form đăngxuất hệ thống
- Bước 2: Click vào button đăng xuất để hệ thống xử lý thông tin
- Bước 3: Gửi yêu cầu đăng xuất
- Bước 4: Xử lí sư kiện
- Bước 5: Xác nhận thông tin đăng xuất
- Bước 6: Đăng xuất thành công
- Bước 7: Chuyển hướng sang trang đăng nhập
Trang 212.5.2 Chức năng quản lý tài khoản
2.5.2.1 Biểu đồ Use Case cho chức năng quản lý người dùng (Admin)
Hình 2 7.Biểu đồ Use Case quản lý tài khoản
Đặc tả Use Case quản lý tài khoản admin
- Tác nhân: Admin.
- Mô tả: Sau khi đăng nhập thành công, người dùng mặc định - Admin sẽ có quyền truy cập vào quản lý thực hiện các thao tác thêm mới một người dung khác Tại đây, người dùng Admin buộc phải nhập đầy đủ các trường thông tin như email, tên hiển thị, mật khẩu trước khi đăng ký thêm mới người dùng Ngoài ra, Admin còn có thể sửa hoặc xóa user đang có sẵn trong danh sách.
- Dòng sự kiện chính:
o Tác nhân yêu cầu thêm tài khoản admin trên hệ thống
o Hệ thống sẽ nhận yêu cầu và hiện thị giao diện thêm tài khoản
o Hệ thống sẽ kiểm tra dữ liệu được nhập vào và kiểm tra xem cóhợp lệ không
Trang 222.5.2.2 Biểu đồ hoạt động cho chức năng quản lý tài khoản
Hình 2 8.Biểu đồ hoạt động cho chức năng quản lý tài khoản
Trang 232.5.2.3 Biểu đồ trình tự cho chức năng quản lý tài khoản
-Hình 2 9 Biều đồ trình tự cho chức năng sửa tài khoản
Mô tả chi tiết biểu đồ trình tự với chức năng sửa thông tin tài khoản
- Bước 1: Tác nhân cụ thể là admin yêu cầu form sửa tài khoản trên
hệ thống
- Bước 2: Yêu cầu hiện thị giao diện sửa tài khoản
- Bước 3: Trả về form sửa tài khoản cho tác nhân
- Bước 4: Nhập thông tin tài khoản
- Bước 5: Tác nhân lựa chọn chức năng sửa tài khoản
Trang 24- Bước 6: Hệ thống nhận yêu cầu từ tác nhân và kiểm tra dữ liệu đầuvào.
- Bước 7: Xử lý sự kiện
- Bước 8: Hệ thống lưu dữ liệu vừa nhập
- Bước 9: Hệ thống lưu thông tin vào cơ sở dũ liệu
- Bước 10: Xác nhận kết quả
- Bước 11: Hệ thống phản hồi thông báo thành công
- Bước 12: Hiển thị thông tin ra màn hình
-Hình 2 10 Biểu đồ trình tự cho chức năng xóa tài khoản
Mô tả chi tiết biểu đồ trình tự với chức năng xóa tài khoản
- Bước 1: Tác nhân cụ thể là admin yêu cầu form danh sách tàikhoản trên hệ thống
Trang 25- Bước 2: Yêu cầu hiện thị giao diện danh sách tài khoản
- Bước 3: Trả về form danh sách tài khoản cho tác nhân
- Bước 4: Lựa chọn chức năng
- Bước 5: Tác nhân lựa chọn chức năng xóa tài khoản
- Bước 6: Xử lý sự kiện
- Bước 7: Hiển thị cảnh báo
- Bước 8: Thực hiện xóa tài khoản
- Bước 9: Hệ thống cập nhật thông tin vào cơ sở dũ liệu
- Bước 10: Xác nhận hành động
- Bước 11: Hệ thống phản hồi thông báo thành công
- Bước 12: Hiển thị thông tin ra màn hình
Trang 262.5.3 Chức năng quản lý sản phẩm
2.5.3.1 Biểu đồ Use Case cho chức năng quản lý sản phẩm
Hình 2 11 Biểu đồ Use Case cho chức năng quản lý sản phẩm
Đặc tả use case quản lý sản phẩm
- Tác nhân: Admin
- Mô tả: Về chức năng thêm sản phẩm, Admin có quyền thêm sản phẩmthỏa mãn các trường thông tin sau: tên sản phẩm, ảnh sản phẩm, trạngthái nổi bật của sản phẩm, giá, mô tả, danh mục, số lượng sản phẩmtrong kho Về trường chức năng nổi bật sản phẩm được nhà phát triểnthiết kế để hiển thị hoặc ẩn sản phẩm đó trên website của mình Ngoài
ra, Admin còn có thể sửa hoặc xóa sản phẩm đang có sẵn trong danhsách
- Dòng sự kiện chính:
o Tác nhân yêu cầu cập nhật thông tin sản phẩm trên hệ thống
o Hệ thống sẽ nhận yêu cầu và hiện thị giao diện quản lý sảnphẩm để cập nhật thông tin sản phẩm
o Hệ thống sẽ kiểm tra dữ liệu được nhập vào và kiểm tra xem
có hợp lệ không
o Kết thúc use case
- Dòng sự kiện phụ:
Sự kiện 1: Nếu tác nhân nhập đúng các dự liệu, nhưng lại muốn thoát khỏi hệ thống
→ Hệ thống thông báo thoát → Kết thúc use case
Sự kiện 2: Nếu tác nhân nhập thông tin sai → Hệ thống thông báo nhập lại → Kết
thúc use case.
Trang 27- Các yêu cầu đặc biệt: không có
- Trạng thái hệ thống trước khi sử dụng use case: không có
- Trạng thái hệ thống sau khi sử dụng use case: hoàn thành được giaodiện quản lý sản phẩm với đẩy đủ chức năng thêm, sửa, xóa và tìmkiếm sản phẩm đồng thời hiện thị được hình ảnh của từng sản phẩm
Trang 282.5.3.2 Biểu đồ hoạt động cho chức năng quản lý sản phẩm
Hình 2 12 Biểu đồ hoạt động cho chức năng quản lý sản phẩm
Trang 292.5.3.3 Biểu đồ trình tự cho quản lý sản phẩm
Hình 2 13 Biểu đồ trình tự cho thêm sản phẩm
Mô tả chi tiết biểu đồ trình tự với chức năng thêm thông tin sản phẩm
- Bước 1: Tác nhân cụ thể là admin yêu cầu form thêm sản phẩmtrên hệ thống
- Bước 2: Yêu cầu hiện thị giao diện phần mềm
- Bước 3: Trả về form thêm sản phẩm cho tác nhân
- Bước 4: Nhập thông tin sản phẩm
- Bước 5: Tác nhân lựa chọn chức năng thêm sản phẩm
- Bước 6: Hệ thống nhận yêu cầu từ tác nhân và kiểm tra dữ liệu đầuvào