1. Trang chủ
  2. » Luận Văn - Báo Cáo

Giải pháp cung cấp dịch vụ quản lý bán hàng trên mạng xã hội

82 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Giải pháp cung cấp dịch vụ quản lý bán hàng trên mạng xã hội
Tác giả Nguyễn Thế Anh
Người hướng dẫn ThS. Trịnh Thị Vân Anh
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành Công nghệ thông tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2021
Thành phố Hà Nội
Định dạng
Số trang 82
Dung lượng 15,97 MB

Nội dung

Dé giải quyết bài toán cho các doanh nghiệp muốn quan lý ban hàng trên cáctrang mạng xã hội, em đã lựa chọn đề tài: “Giải pháp cung cấp dịch vụ quản lý bánhàng trên mạng xã hội” làm đồ á

Trang 1

HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG

KHOA CÔNG NGHỆ THÔNG TIN 1

ĐỎ ÁN TÓT NGHIỆP

ĐÈ TÀI:

GIẢI PHÁP CUNG CÁP DỊCH VỤ

QUAN LY BAN HÀNG TREN MẠNG XÃ HỘI

Giảng viên hướng dẫn : ThS Trịnh Thị Vân Anh Sinh viên thực hiện : Nguyễn Thế Anh

Mã sinh viên : BI7DCCN032 Lớp : DI7THTTT4

Khoá : 2017 — 2022

Hệ : Dai học chính quy

| Hà Nội, tháng 12/2021 |

hề —Ÿ——— c-c-—m am 5m

Trang 2

HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG

KHOA CÔNG NGHỆ THÔNG TIN 1

ĐỎ ÁN TÓT NGHIỆP

ĐÈ TÀI:

GIẢI PHÁP CUNG CÁP DỊCH VỤ

QUAN LY BAN HÀNG TREN MẠNG XÃ HỘI

Giảng viên hướng dẫn : ThS Trịnh Thị Vân Anh Sinh viên thực hiện : Nguyễn Thế Anh

Mã sinh viên : BI7DCCN032

Lớp : DITHTTT4

Khoá : 2017 — 2022

Hệ : Đại học chính quy

Hà Nội, tháng 12/2021

Trang 3

Đồ án tốt nghiệp Nhận xét của giảng viên phản biện

NHẬN XÉT ĐỎ ÁN TÓT NGHIỆP ĐẠI HỌC

CỦA GIẢNG VIÊN PHẢN BIỆN

Tên đồ án: Giải pháp cung cấp dịch vụ quản lý bán hàng trên mạng xã hội

Sinh viên thực hiện: Nguyễn Thế Anh

Lớp: DITHTTT4

Giáo viên hướng dẫn: Ths Trịnh Thị Vân Anh

NỘI DUNG NHAN XÉT:

I Nội dung báo cáo

Hà Nội, ngày tháng năm 20

GIẢNG VIÊN PHẢN BIỆN

Nguyễn Thế Anh - B17DCCN032 - DITHTTT4 3

Trang 4

Đồ án tốt nghiệp Nhận xét của giảng viên hướng dẫn

NHẬN XÉT ĐỎ ÁN TÓT NGHIỆP ĐẠI HỌC

CỦA GIẢNG VIÊN HƯỚNG DẪN

Giảng viên hướng dẫn: Ths Trịnh Thị Vân Anh Bộ môn: Công nghệ phần mềmTên đồ án: Giải pháp cung cấp dịch vụ quản lý bán hàng trên mạng xã hội

Sinh viên thực hiện: Nguyễn Thế Anh

Lớp: DITHTTT4

NOI DUNG NHAN XÉT:

I Noi dung bao cao

Hà Nội, ngay thang ndm 20

GIANG VIEN HUGNG DAN

Nguyễn Thế Anh — B17DCCN032 - DITHTTT4 4

Trang 5

Đô án tôt nghiệp Lời cảm ơn

LƠI CAM ƠN

Với lòng kính trọng và biết ơn sâu sắc, em xin gửi lời cảm ơn chân thành đến cácthầy cô của Học viện Công nghệ Bưu chính Viễn thông, đặc biệt là các thầy, cô khoa

Công nghệ thông tin 1 đã tận tình giảng dạy và trang bị cho em những kiến thức quý

báu trong suốt quá trình học tập tại trường, tạo điều kiện thuận lợi nhất dé em hoàn thành

đô án.

Em xin trân trọng gửi lời cảm ơn đặc biệt đến cô Trịnh Thị Vân Anh đã dànhnhiều thời gian tận tình chỉ bảo, hướng dẫn và đề xuất hướng giải quyết khi em gặp khókhăn, giúp em hoàn thành đồ án đúng tiến độ

Em cũng xin được cảm ơn các anh chị khóa trên đã giúp đỡ em rât nhiêu, cảm ơn

gia đình và bạn bè đã bên cạnh quan tâm, ủng hộ trong suốt quá trình thực hiện đồ án

Dù đã cô găng nhưng do thời gian và kinh nghiệm còn hạn chê nên trong đô án chăc chăn còn nhiêu điêu thiêu sót, em mong nhận được sự góp ý cũng như chỉ bảo tận

Trang 6

CHUONG 1 GIỚI THIỆU VA TONG QUAN DE TÀI

1 Phát biểu bài toán

1.4 Xây dựng sơ đồ thực thể

2 Thiết kế hệ thong

2.1 Thiết kế cơ sở dữ liệu2.2 Xây dựng biểu đồ tuần tự

CHUONG 3 CÀI ĐẶT HE THONG

1 Cac bước cài dat

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4

11 13

14 14 14

15 15 15

31 32 32 32 34

48 48

53 53

55

68 68

Trang 7

Đồ án tốt nghiệp Mục lục

1.1 Môi trường khởi chạy 68

1.2 Cấu hình Facebook Developer App 681.3 Cấu hình Paypal Developer App 70

2 Chạy thử nghiệm 71

2.1 Thue nghiém qua trinh khach hang dat hang 71

2.2 Một sé giao diện chu cửa hang 74KET LUAN 79

1 Kết quả đạt được 791.1 Hệ thống 79

1.2 Bản thân 79

2 Những hạn chế 80

3 Hướng phát triển 80

TAI LIEU THAM KHAO 81

Nguyễn Thế Anh - B17DCCN032 — DI7HTTT4 7

Trang 8

Đồ án tốt nghiệp Danh mục bảng

DANH MỤC BANG

Bang 0.1 Danh mục từ viết tắt - c5 s91 E1 E2E1121121121121111 1111111111111 xe 11Bang 1.1 So sánh tổng quan MongoDB va MySQL cscsscssessessessessessesseseeseeseesessesees 28Bảng 1.2 So sánh truy van giữa MongoDB và MySQL c.scessesssesssessesssesseesessseeseeees 28Bảng 2.1 Bảng mô tả các tác nhân hệ thống -2- ¿2£ ©+22x+2££+£x+2zxrzxzzrxz 32

Bang 2.3 Kịch bản khách hang theo dõi đơn hàng - 5c 5c 3+2 ++esserssrsss 35 Bảng 2.4 Kịch bản chủ cửa hàng đăng nhậtp - - 6 Ship 36 Bang 2.5 Kịch bản chủ cửa hang đăng Kký - - Án ng HH Hiệp 37 Bảng 2.6 Kịch ban chủ cửa hàng thêm cửa hàng - 5c 532 **+*++svsssersesers 38

Bang 2.7 Kịch ban chủ cửa hàng thêm sản phẩm - 2-52 22 2+E+£x+£xezzzce+z 39

Bang 2.8 Kịch ban chủ cửa hàng sửa sản phẩm 2-2 2 5S2Et2E£2E2EeExerxersez 40

Bang 2.9 Kịch bản chủ cửa hàng xóa sản phẩm - 2-52 5c sEE‡E2E2EEEeExeExereeg 40

Bang 2.11 Kịch bản chủ cửa hang xóa don hàng 5c Sc 3 c1 tsessrresrses 42

Bảng 2.12 Kịch ban chủ cửa hàng thêm chiến dịch -2- 5+ 52z+2sz2zx+zzzzzxz 42Bang 2.13 Kịch bản chủ cửa hàng sửa thông tin chiến dich - 2-5: 55522 43Bang 2.14 Kịch bản chủ cửa hàng xóa chiến dich ¿5-2 s+S++E+Ec£e£xerxzxeez 44

Bang 2.15 Kịch bản chủ cửa hàng Liên kết Facebook - - 2-2 z+s+xe£x+zszcs+z 45

Bảng 2.16 Kịch ban chủ cửa hàng Liên kết Paypal 2-52 5x22+22x2zxczxzsrez 46

Bang 2.17 Kịch bản chủ cửa hàng chỉnh sửa từ khóa đặt hàng . ‹- 47

Bảng 2.18 Bang mô tả lớp W€T G221 121112111 1111111 111 110 11011 g1 H1 ng Hy 48 Bảng 2.19 Bang mô tả lớp Shop c2 121112111111 111 1111 1111111111111 E11 E1 key 49

Bảng 2.20 Bang mô tả lớp OwnerShop - - c1 t1 vn HH H111 111 tr re 49 Bảng 2.21 Bảng mô tả lớp Product 5 2 322213321 1132112111E11EE1EE1 xe 49 Bang 2.22 Bảng mô tả lớp Campaign - - 5 2 3111351113511 EErkre 50 Bảng 2.23 Bang mô tả lớp CampaIgnPrOdUC( - 5-22 3S 3+ EEsEEsereerserrsrkrrek 50 Bảng 2.24 Bang mô tả lớp Or€T G22 221112111111 251 15 112 11111111111 11 tr re 51

Bang 2.25 Bảng mô tả đối tượng ShippingDetails 0 0 cccccceceseesesesessesteseeseeeseeeees 52

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 8

Trang 9

Đồ án tốt nghiệp Danh mục hình ảnh

DANH MỤC HÌNH ẢNH

Hình 1.1 Facebook Graph API EXPÏOF€T - c2 2c 3221121131311 ekrre 16

Hình 1.2 Developer app của hệ thống ShopSocial c.scccccsccsssessessessessesssesessesseeseeees 17

Hình 1.3 Cơ chế hoạt động của Facebook Webhooks trong ShopSocial 18

Hình 1.4 AWS EC2 instance của hệ thống ShopSocial 2-2 2+5 sezxzczzcs+z 20Hình 1.5 AWS S3 của hệ thống ShopSocial -¿- 2 2 + +xeSE‡EE2E2E£EerEerxerkereee 22

Hirh 1.6 1i 2117 22

Hình 1.7 Kiến trúc của Do Ker - 2-5252 2+EE+EE£EE£EE2EE2E1271221711711211221 212122 23Hình 1.8 Kiến trúc backend của hệ thống ShopSocial - 2 2 z+s+s+£xz£z+cs+z 26Hình 1.9 Dữ liệu hệ thống ShopSocial tại Mongodb Atlas - 2-5-5 5s+csscs+2 29

Hình 1.10 Manyrepo và MOnOT€PDO c1 121111111 111 119 119111111111 11 kg re 30

Hình 1.11 Biểu đồ Nx workspace dep-graph ccsccsccessessessesseessessessessessessssssessesseeaes 31Hình 2.1 Biểu đồ use case -¿- 2-52 2E22E12212712712112112112112117171211 211.111 33

Hình 2.2 Biểu đồ usecase khách hang đặt hàng 2-2-5522 2EcrEerxerxrreee 34

Hình 2.3 Kịch bản use case khách hàng theo dõi đơn hàng - 55+ +5 +++<+ 35

Hình 2.4 Biểu đồ use case Chủ cửa hàng Đăng nhập -2- ¿22 5¿2cx+zzzsr+z36Hình 2.5 Biểu đồ use case Chủ cửa hàng đăng ký - 2 cscSt2EcEcrererxereee 37Hình 2.6 Biểu đồ use case Chủ cửa hàng thêm cửa hàng 5 s52 5+¿ 38Hình 2.7 Kịch ban use case chủ cửa hàng quản lý sản phẩm -2- 5: 525522 39

Hình 2.8 Kịch ban use case chủ cửa hang quản lý đơn hàng - - <+-+2 41

Hình 2.9 Kịch ban use case chủ cửa hang quản lý chiến dich - 2: 5+: 42Hình 2.10 Kịch ban use case chủ cửa hàng Liên kết Facebook - +: 45Hình 2.11 Biểu đồ usecase Chủ cửa hàng Liên kết Paypal 2-2 2 +52 46

Hình 2.12 Kịch ban use case Chủ cửa hàng chỉnh sửa từ khóa đặt hàng 46

Hình 2.13 Biéu đồ lớp phân tíchh - 2-2 2 +SS£EEEEE2EE2EEEEEEEEEEEEEEEE2EEEEEEEEEctrei 48

Hinh 2.14 0.0 - 54

Hình 2.15 Biéu đồ tuần tự chức năng khách hang theo dõi don hang 55Hình 2.16 Biéu đồ tuần tự chức năng khách hàng đặt hàng eee 56Hình 2.17 Biéu đồ tuần tự chức năng chủ cửa hang thêm cửa hàng 57Hình 2.18 Biéu đồ tuần tự chức năng chủ cửa hàng thêm sản phẩm - 58Hình 2.19 Biéu đồ tuần tự chức năng chủ cửa hang sửa sản phẩm - - 59

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 9

Trang 10

Đồ án tốt nghiệp Danh mục hình ảnh

Hình 2.20 Biéu đồ tuần tự chức năng chủ cửa hàng xóa sản phẩm - 60

Hình 2.21 Biéu đồ tuần tự chức năng chủ cửa hàng cập nhật trạng thái đơn hang 61

Hình 2.22 Biéu đồ tuần tự chức năng chủ cửa hàng xóa đơn hàng - 62

Hình 2.23 Biéu đồ tuần tự chức năng chủ cửa hàng thêm chiến dịch - 63

Hình 2.24 Biéu đồ tuần tự chức năng chủ cửa hàng sửa thông tin chiến dịch 64

Hình 2.25 Biéu đồ tuần tự chức năng chủ cửa hàng xóa chiến địch 65

Hình 2.26 Biéu đồ tuần tự chức năng chủ cửa hàng liên kết Facebook - 66

Hình 2.27 Biéu đồ tuần tự chức năng chủ cửa hàng chỉnh sửa từ khóa đặt hàng 67

Hình 3.1 Mô hình triển khai hệ thống ShopSocial 2-22 +¿22++2x+2zx+zxzzz+z 68 Hình 3.2 Cấu hình Facebook Login - 2 + ++E£EE+EE+E£EE£EEEEEEEEEEEEEerkerkerkerree 69 Hình 3.3 Cau hình Webhooks Subscription - 2-52 2+ ++Ex+EE££Et£EtzEEzEEerxerxerxee 70 Hình 3.4 Thông tin Client ID dùng cho việc tích hợp Thanh toán Paypal 70

Hình 3.5 Giao diện khách hàng bình luận bài viết với từ khóa mua hàng 71

Hình 3.6 Giao điện khách hàng nhận tin nhắn tir fanpage 2-5 sccs+ss+¿ 71 Hình 3.7 Giao điện khách hàng chọn sản phẩm 2-2-2 5 E222 E££E££Ee£eExzEvez 72 Hình 3.8 Giao diện khách hàng nhập thông tin - 55 22c +2 *+EE+eexseseersrrses 72 Hình 3.9 Giao diện khách hàng chọn phương thức thanh toán - -«: 72

Hình 3.10 Giao diện thanh toán PaypalL - - - 2 3 13111335 E1EEE1EEErerrvre 73 Hình 3.11 Giao diện nhập thông tin đăng nhập Paypal 5 555cc sex 73 Hình 3.12 Giao diện xác nhận thanh toán Paypal - c Sc ccctsstsrreirssrrerrres 73 Hình 3.13 Giao diện đăng nhậtp - . - c2 2221151122112 112 119 1 9 111111 nh nh Hy re 74 Hình 3.14 Giao diện Onboard .- 2111111122223 11 111121533111 111999331111 key, 74 Hình 3.15 Giao điện Liên kết Facebook - ¿+ + St+E‡EvEEEE+EvEEEEEEeEerrxskrrereree 75 Hình 3.16 Giao điện xin quyền truy cập tài khoản Facebook -:2- 5:75 Hình 3.17 Giao điện Danh sách chiến dịch - ¿- 5s +Sx+EvEE+EvEE+EvEEeEeExererxererxez 76 Hình 3.18 Giao diện chi tiết chiến dịch c:¿55st2£xxtrtEktrrrrtrrrrtrrrrrrrrrrriei 76 Hình 3.19 Giao điện Danh sách sản phẩm 2-2 2 £+E£EE+EE+EE2E£EerEerxerxereee 76 Hình 3.20 Giao diện Chi tiết sản phẩm -¿- 2 5£ +S+2E2EE2EE2EEEEEEEEEEEEEEEEkerkerree 77 Hình 3.21 Giao diện Danh sách don hàng - Án HH Hiệp 78 Hinh 3.22 Giao dién Cai 0, 1n .ố 78

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 10

Trang 11

Đồ án tốt nghiệp Danh mục từ viết tắt

DANH MỤC TU VIET TAT

Bang 0.1 Danh mục từ viết tắt

STT| Từ viết tắt | Tiếng Anh Tiếng Việt/Giải thích

1 AWS Amazon Web Services Hệ thống các dịch vụ điện toán

đám mây của Amazon

2 EC2 Elastic Compute Cloud Nền tảng điện toán đám mây

cung cấp bởi AWS

3 S3 Simple Storage Service Dịch vụ lưu trữ don giản được

cung cấp bởi AWS

4 IP

5 API

Internet Protocol Dia chi giao thức của Internet

Application Programming Giao diện lập trình ứng dụng Interface

Service Level Agreement Thỏa thuận mức độ dịch vu

Relational Database Service | Dịch vụ cơ sở đữ liệu quan hệ của

Amazon

p fe Uniform Resource Locator Dia chi web

HyperText Transfer Protocol | Giao thức truyền tải siêu văn bản

Secure bao mat

Simple Mail Transfer Giao thức truyền tải thư tin don

Protocol giản

12 REST Representational State Một dai diện cho sự chuyển đôi

Transfer dữ liệu

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 ll

Trang 12

Đồ án tốt nghiệp Danh mục từ viết tắt

SQL NoSQL

Structured Query Language | Ngôn ngữ truy van có cau trúc

Phi SQL (Ngôn ngữ truy van phicau tric)

User Interface Giao diện người dùng

Single Page Application Tên gọi chung cho một kiểu lập

trình web, chỉ tải trang web trên

một document duy nhất

JavaScript Object Notation

Tinh nhat quan, tinh kha dung va

dung sai phan vùng

Central Processing Unit Bộ xử ly trung tâm

Trang 13

Đồ án tốt nghiệp Lời mở đầu

LỜI MỞ ĐẦU

Mạng xã hội đang thực sự bùng nô, là một làn sóng lớn trên toàn cầu Sự hiện

diện của các mạng xã hội đã thay đổi rất nhiều thứ trong cuộc sống của con người Hiệnnay nó còn được coi là một phần cuộc sống, không thê thiếu của chúng ta Hàng ngày

mỗi chúng ta dành ra rất nhiều thời gian trên các trang mạng xã hội Từ người già đếntrẻ nhỏ, tất cả chúng ta đều đắm chìm trong sự thú vị mà mạng xã hội mang lại

Sự phát triển của mạng xã hội đã góp phan làm thay d6i thói quen của con người.Việc con người dành nhiều thời gian trên các trang mạng xã hội là một mảnh đất màu

mỡ dé các doanh nghiệp phát triển kinh doanh Nhu cầu mua bán của con người vốn đãrất cao, vậy nên dé tận dụng nhu cầu đó, người ta đã bắt đầu bán hàng trên các trangmạng xã hội, tạo ra nhiều nội dung thú vi dé thu hút người mua Theo như thống kê việcmua sắm trên các trang mạng xã hội đã tăng vọt trong những năm gần đây

Dé giải quyết bài toán cho các doanh nghiệp muốn quan lý ban hàng trên cáctrang mạng xã hội, em đã lựa chọn đề tài: “Giải pháp cung cấp dịch vụ quản lý bánhàng trên mạng xã hội” làm đồ án tốt nghiệp Học viện Công nghệ Bưu chính Viễnthông Nội dung sẽ được đề cập trong những chương dưới đây:

Chương 1: Giới thiệu và tổng quan đề tài

Chương 2: Phân tích và thiết kế hệ thống

Chương 3: Cài đặt

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 13

Trang 14

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

CHƯƠNG 1 GIỚI THIEU VA TONG QUAN DE TÀI

1 Phát biểu bai toán

Theo các phân tích của GlobalData’s E-Commerce Analytics, Việt Nam được

đánh giá là một trong những thị trường Thương mại điện tử phát triển nhanh nhất ởĐông Nam Á với tốc độ tăng trưởng trung bình năm khoảng 18% và được dự báo quy

mô thị trường có khả năng lên tới 26 tỷ USD vào năm 2024.

Mang xã hội đang ngày càng trở nên phổ biến được nhiều người Việt Nam sử

dụng Theo Báo cáo Digital 2020 for Vietnam của We are social và Hootsuite, lượng

người dùng mạng xã hội thường xuyên ở Việt Nam tính đến tháng 01/2020 là 65 triệungười, chiếm 67% tổng dân số, cùng với thời gian trung bình một người dùng ở Việt

Nam sử dụng mạng xã hội là 2 giờ 22 phút 89% người sử dụng Internet có tham gia

hoặc đóng góp vào mạng xã hội trong thời gian một thang gần nhất

Với số lượng người dùng đông đảo, khả năng tương tác và chia sẻ thông tin cao

như vậy, mạng xã hội đang đóng vai trò quan trọng với các hoạt động có yếu tố Thương

mại điện tử.

Từ những nội dung trên, việc giải quyết bài toán kênh hỗ trợ Thương mại điện tử

mới trên mạng xã hội trở nên cần thiết đối với những doanh nghiệp có nhu cầu phânphối các sản phẩm, dịch vụ Đề tài “Giải pháp cung cấp dịch vụ quản lý bán hàng trênmạng xã hội” là phương tiện để phục vụ quảng bá và phát triển kinh doanh với đối tượng

hướng đến là những Chủ cửa hàng, doanh nghiệp tham gia vào hệ thống

2 Mục tiêu

- _ Xây dựng một hệ thống giúp chủ cửa hàng, doanh nghiệp đưa ra được những

chiến dich hợp lý với từng loại sản phâm hướng tới từng đối tượng khách hàngriêng biệt, từ đó phân loại được tệp khách hàng tiềm năng

- Chi cửa hàng, doanh nghiệp có thé quản lý tập trung sản pham, đơn hàng, đưa ra

được những số liệu thống kê, tầm nhìn Bên cạnh đó, doanh nghiệp không cầnphải tự xây dựng, duy trì một hệ théng/website hay một ứng dụng với chi phí tốn

kém mà có thê tận dụng trực tiếp mạng xã hội

- Giảm thiểu chi phí phải thuê nhân viên trực page và lên đơn so với trước đây

- _ Khách hàng có thể trực tiếp tương tác với trang mang xã hội dé mua sắm

Nguyễn Thế Anh - B17DCCN032 — DI7HTTT4 14

Trang 15

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

3 Phạm vi đề tài

- _ Đề tài xây dung website cung cap dich vụ được thực hiện trong 3 tháng, từ tháng

10 đến thang 1/2022, trong khuôn khổ thời gian thực hiện đồ án tốt nghiệp Tronggiới hạn của dé tài, đồ án tập trung vào việc cung cấp dich vụ quản lý bán hàng

cho các chủ cửa hàng vừa và nhỏ, kinh doanh cá nhân trên mạng xã hội Facebook.

4 Đề xuất giải pháp

- _ Dựa trên việc tìm hiểu ứng dụng Novaon Social, hệ thống cũng sẽ cung cấp các

chức năng thiết yếu cho chủ cửa hàng, doanh nghiệp cũng như khách hàng sử

dụng.

- _ Hệ thống đáp ứng một số chức năng sau:

Khách hàng:

e Đặt hàng trực tiếp thông qua mạng xã hội Facebook bằng cách bình luận

vào bài đăng thuộc chiến dịch của hệ thống để nhận tin nhắn Đặt muanhững sản phẩm được bán trong chiến dịch đó

e Theo dõi đơn hàng.

e Thanh toán qua Paypal.

5 Các công nghệ và công cụ sử dung

5.1 Facebook for Developers

3.1.1 Giới thiệu

- Facebook for Developers là 1 nền tảng/công cụ được cung cấp bởi Facebook (nay

là Meta) để giúp đỡ những nhà phát triển tích hợp những dịch vụ của họ trên

Facebook.

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 15

Trang 16

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

- Facebook cung cấp Facebook Graph API, là cách chính để những nha phát triển

ứng dụng dựa trên nền tảng Facebook sử dụng đề đọc và ghi dữ liệu Nó dựa trên

HTTP dé những ứng dụng có thé sử dụng để truy van dữ liệu, đăng story, quan

lý quảng cáo, upload ảnh và những tác vụ khác,

- Facebook cung cấp Facebook Graph API Explorer là 1 công cụ giúp nhà phát

triển có thể test, tạo và xác thực các lệnh gọi API cũng như debug

Graph API Explorer

= GETw 2/ v20 | me2felds-idname | sem |

Hình 1.1 Facebook Graph API Explorer

5.1.2 Cong nghé Webhook va Webhook trong Facebook Developer

- Webhook là một tinh năng cho phép website tự động thông bao va gửi dữ liệu

thời gian thực đến các hệ thống khi có một sự kiện nào đó phát sinh (ví dụ nhưkhánh hàng đăng ký, điền form, mua hàng, hay gửi email) Webhook sẽ giúp hệthống chủ động hơn trong việc vận hành cũng như trao đổi thông tin

- Webhook trong Facebook Developer: cho phép nhận thông bao HTTP theo thời

gian thực về những thay đổi đối với các đối tượng trong Facebook Social Graph.5.1.3 Sử dụng Facebook for Developers trong hệ thông ShopSocial

- Dé có thé quan ly fanpage và tương tác với nền tảng Facebook, hệ thống

ShopSocial được phát triển tích hợp với Facebook thông qua 1 ứng dụng dành

cho nhà phát triển

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 16

Trang 17

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

© Meta for Developers % Ole |

Bnessoee = | Appi: 8520487883206 ‘App Type: Business Onep

Required Actions

ff Dashboard

$3 settings v You don't have any required action items to dlepay any of your apps need immediate attention in the future, an em will show her.

By Rotes v plication Rate Limi User Rate Limit

‘Audience Network Fundraisers Instagram Graph API

Monetize your app and g nue wth ads rom P wat the Instagram API to et

book advertiser

Read Docs Setup Read Docs Setup Read Docs Setup

Hinh 1.2 Developer app cua hé thong ShopSocial

- ShopSocial tích hop các sản pham của Facebook: Facebook Login, Webhooks

- Facebook Login: dùng dé lấy thông tin accessToken của users va những

fanpage user đó quan ly.

- Webhooks: giúp hệ thống ShopSocial nhận được đữ liệu từ phía Facebook

mỗi khi có người dùng tương tác với các fanpage mà hệ thống quản lý

- _ Cơ chế hoạt động của Facebook Webhooks trong hệ thống ShopSocial:

- Pau tiên, đưa 1 địa chi Webhooks cho Facebook Khi có khách hàng bình

luận hoặc gửi tin nhắn đến Fanpage, Facebook sẽ gửi 1 HTTP POSTrequest đến webhook của hệ thống dé xử lý

- Sau khi xử lý xong, hệ thống sẽ gửi đến GraphAPI của Facebook, từ đó

Facebook sẽ thực hiện 1 số nhiệm vụ mà hệ thống ShopSocial yêu cầu

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 17

Trang 18

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Lñ Trang này are Thế Anh lập ra dé dev 1 Người dùng bình luận

số _ từ khoá mua hàng của shop.

3 Server xử lý, gửi tin nhắn Chọn mua hàng lên

Facebook Graph API

2 Facebook gửi đến

Webhook thông tin

4 Fanpage tra Idi binh luan va hành động

Hình 1.3 Cơ chế hoạt động của Facebook Webhooks trong ShopSocial

5.2 Amazon Web Services

5.2.1 Amazon EC2

Giới thiệu

- Amazon Elastic Compute Cloud (Amazon EC2) là dịch vụ web cung cấp năng

lực điện toán bảo mật và có kích cỡ linh hoạt trên đám mây Dịch vụ này được

thiết kế dé giúp các nhà phát triển dé sử dụng điện toán dam mây ở quy mô web

- Str dụng Amazon EC2 giúp doanh nghiệp không cần phải đầu tư vào hệ thống

phần cứng Do đó, doanh nghiệp có thể phát triển và triển khai các ứng dụng

nhanh hơn.

- _ Nó cho phép sử dụng môi trường Amazon dé tính toán và kiểm soát hoàn toàn

tài nguyên máy tính của nhà phát triển Khi nhu cầu điện toán của hệ thống thayđối, nhà phát triển có thé nhanh chóng mở rộng công suất vì người dùng có thé

khởi động và tạo lập các máy chủ mới trong vài phút thông qua Amazon EC2.

Nó cũng bảo vệ dữ liệu, chống lại các sự cố ngoài ý muốn và cung cấp cho cácnhà phát triển các công cụ dé phát triển các ứng dụng có khả năng phục hồi những

sự CỐ

Thanh phan EC2

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 18

Trang 19

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Trong AWS EC2, người dùng cần phải biết về các thành phần của EC2, hệ điều

hành được hỗ trợ, biện pháp bảo mật, v.v

Hỗ trợ hệ điều hành: Amazon EC2 hỗ trợ nhiều hệ điều hành: Linux, Red Hat

Enterprise, UNIX, Windows Server,

Bảo mật: người dùng có toàn quyền kiểm soát kha năng hién thị tài khoản AWScủa họ Trong AWS EC2, các hệ thống bảo mật cho phép tạo các nhóm và đặt

các Instance đang chạy vào nó theo yêu cầu Người dùng có thé chỉ định cácnhóm mà các nhóm khác giao tiếp cũng như các nhóm có mạng con IP trênInternet có thể nói chuyện

Định giá: AWS cung cấp nhiều tùy chọn giá khác nhau, tùy thuộc vào loại tàinguyên, loại ứng dụng và cơ sở đữ liệu Nó cho phép người dùng cấu hình tài

nguyên của họ và tính toán các khoản phí tương ứng.

Khả năng chịu lỗi (Fault tolerance): Amazon EC2 cho phép người dùng truy

cập tài nguyên của nó đề thiết kế các ứng dụng chịu lỗi EC2 cũng có các vùngđịa lý và vùng cô lập được gọi là vùng có sẵn có khả năng chịu lỗi và có tính ôn

định Nó không chia sẻ vị trí chính xác của trung tâm dữ liệu vùng vì lý do bảo

mật.

Di chuyển: dịch vụ này cho phép người dùng di chuyên các ứng dụng hiện có

vào EC2.

Tinh năng của EC2

Dưới đây là danh sách một số tính năng nỗi bat của EC2:

Đáng tin cậy - Amazon EC2 cung cấp một môi trường có độ tin cậy cao, thaythế nhanh các Instance Cam kết chất lượng dịch vụ SLA (Service Level

Agreement) có sẵn 99,9% cho mỗi khu vực Amazon EC2.

Được thiết kế cho Amazon Web Services - Amazon EC2 hoạt động tốt với các

dịch vụ của Amazon như Amazon S3, Amazon RDS, Amazon DynamoDB và SQS của

Amazon Nó cung cấp một giải pháp hoàn chỉnh cho máy tính, xử lý truy vấn và lưu trữ

trên một loạt các ứng dụng.

Bảo mật - Amazon EC2 hoạt động trong Amazon đám mây riêng ảo (Virtual

Private Cloud) để cung cấp một mạng lưới an toàn và mạnh mẽ cho các tài

nguyên.

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 19

Trang 20

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

- _ Công cụ linh hoạt - Amazon EC2 cung cấp các công cụ cho các nhà phát triển

và quản trị viên hệ thong dé xây dựng các ứng dụng và cô lập nó khỏi các tìnhhuống thất bại chung

- _ Không tốn kém - Nhà phát triển chỉ phải trả tiền cho những tài nguyên sử dung

Nó có nhiều gói mua như On-Demand Instances, Reserved Instances, SpotInstances, v.v dé lựa chọn theo nhu cầu

Lý do lựa chọn EC2 trong hệ thống ShopSocial:

- Chi phí thấp, EC2 có tùy chọn bậc miễn phí 12 tháng với 750 giờ mỗi tháng

Instance state = running |X| [ Clearfilters ]

EC2 Global View ——————

Events Name Y InstancelD Instancestate v Instancetype v Status check Alarm status Availability Zone v Public

- Amazon S3 là từ viết tắt của Amazon Simple Storage Service (Dich vụ lưu trữ

đơn giản của Amazon), nó giúp lưu trữ các file trong một cau trúc thư mục và có

thé truy cập vào các file này trong môi trường web

- Amazon S3 cung cấp các API cho phép tải lên, download và quản lý quyền

(permission) đối với các file, có thể quản lý các file thông qua website quản trị

Trang 21

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Bucket: Là một container mà các objects (files) lưu trữ trong đó, bucket cho phép

lưu trữ không giới hạn số lượng obJects

Object: Là các tệp lưu trữ dữ liệu trong Bucket Amazon S3, có thé lưu trữ mọiloại dữ liệu với bất kì định dạng nào Dung lượng tối đa của mỗi bucket là 5TB

Key: Là mã định danh duy nhất tương ứng với object được lưu trữ trong mỗi

Bucket Một key có thé lên tới 1024 byte ký tự Unicode UTF-8, bao gồm daugạch chéo, dấu gạch chéo ngược, dấu chấm và dấu gạch ngang

Object URL: Vi Amazon S3 là dịch vụ lưu trữ qua mạng internet, nên mỗi object

sẽ có một địa chỉ URL duy nhất ứng với tên bucket, object và key

Ly do lựa chọn S3 trong hệ thông ShopSocial

Được sử dụng với mục đích làm nơi lưu trữ các hình ảnh của hệ thống.

Chi phí thấp, S3 có tùy chon bậc miễn phí 12 tháng với 5GB Standard, 20.000yêu cầu GET; 2.000 yêu cầu PUT, COPY, POST hoặc LIST va 100 GB đữ liệutruyền ra mỗi thang

Hoạt động tốt với EC2

Hỗ trợ mạnh mẽ, tích hợp dé dàng với backend của hệ thống (NodeJS)

Tính ổn định cao, duy trì tính sẵn sàng ở mức 99,99%,

Đơn giản, dễ dùng.

Tính mở rộng cao do thiết kế của S3 cho phép sự điều chỉnh dé dang trong dịch

vụ khi lượng truy cập vào ứng dung web tăng đột biến với lưu lượng không 16

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 21

Trang 22

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Amazon S5 x Amazon S5 > social-dev-ntheanh201

lăng social-dev-ntheanh201

Access Points

Object Lambda Access Points

Multl-Region Access Points Objects | Properties | Permissions | Metrics Management

Batch Operations

Access analyzer for S5

Objects (8)

Objects are the fundamental entities stored in Amazon S5 You can use Amazon S3 inventoi

Block Public Access settings for 4 lá

this account G 6) Copy 55 URI G6) Copy URL [4 Download (

Trang 23

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

- Nginx là một web server mạnh mẽ và sử dụng kiến trúc đơn luồng, hướng sự

kiện Nginx cũng là một máy chủ proxy ngược mã nguồn mở (open sourcereverse proxy server) sử dụng phô biến giao thức HTTP, HTTPS, SMTP,

- Nginx thường được chọn dé cân bang tải (load balancer), HTTP caching và máy

chủ web (web server) Ngày càng được ưa chuộng và có mặt trên khắp các máy

chu Linux, Nginx hiện nay được sử dụng bởi 1 - 4% tổng số lượng tên miền toànthế giới, điển hình là Facebook, Microsoft, Google, Apple,

5.3.2 Lý do lựa chọn Nginx trong hệ thống ShopSocial:

- _ Được sử dụng làm web server dé triển khai hệ thong

- Reverse proxy cho phia Backend

5.4 Docker

5.4.1 Giới thiệu

- Docker là 1 nền tang để phát triển, chia sẻ và chạy các ứng dụng dưới dạng

container có thê đóng gói phần mềm dễ dàng, deploy nhanh và không cần cài đặtcau hình rườm ra

- _ Với docker, có thể khởi tạo, deploy, copy và di chuyển các container qua lại từ

môi trường này tới môi trường khác, điều này giúp đỡ cho quá trình triển khai

production cũng như đây lên cloud

5.4.2 Kiến trúc của Docker

- Docker sử dụng kiên trúc client-server

Trang 24

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

- _ Được xây dựng trên 3 thành phan chính: Client, Docker daemon và Registry

* Client: có thé trên cùng 1 system với docker daemon hoặc khác, là cách người

dùng tương tác với docker (docker run, )

* Docker daemon: lắng nghe các Docker API requests và quan lý các Docker

objects

* Registry: dùng dé lưu trữ các docker image Docker Hub là 1 public registry,

ngoài ra có thé khởi tao private registry cho riêng minh

5.4.3 Ly do lựa chon Docker trong hệ thống ShopSocial:

- Nhe, chạy được nhiều khối lượng công việc hơn trên cùng 1 nền tảng phần cứng

- Docker hoá Backend, Frontend của hệ thong với sự nhanh chóng, nhất quán trong

việc triển khai ứng dụng Ở hệ thống ShopSocial, việc triển khai Docker giúp hệthống nhất quán giữa 2 môi trường development (local) và production bat chấp

sự khác nhau giữa môi trường local là Mac OS/Ubuntu và môi trường production

là Ubuntu

5.5 NodeJS

5.5.1 Giới thiệu

Node.js là một mã nguồn mở được xây dựng dựa trên JavaScript runtime chạy

theo hướng sự kiện bat đồng bộ, được thiết kế dé xây dựng các ứng dụng mạng

có thê mở rộng

Node.js có thé được dùng dé xây dựng các loại ứng dụng khác nhau như các ứng

dụng dòng lệnh, ứng dụng web, ứng dụng trò chuyện theo thời gian thực, máy

chủ REST API Tuy nhiên, Node.js thường được dùng chủ yếu dé xây dựng các

chương trình mạng như máy chủ web, tương tự như PHP, Java hoặc ASP.NET.

5.5.2 Đặc điểm của NodeJS

NodeJS không can đợi API tra dữ liệu về, do đó mọi APIs nằm trong thư việnNodeJS đều không được đồng bộ

Đây là một Platform chứ không phải là một Framework Do đó, NodeJS cho phép

xây dựng các website một cách độc lập và nhanh chóng hơn.

Node1S có thé chạy trên đa nền tảng gồm: Window, MacOS, Linux

NodeJS được xem là một máy chủ đơn luồng và không thé hỗ trợ đa luồng

NodeJS không được xem là một ngôn ngữ lập trình, nên những người mới phải năm chắc kiên thức lập trình căn bản như: các giao thức, Javascript, mới có thê

Nguyễn Thế Anh - B17DCCN032 — DI7HTTT4 24

Trang 25

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

sử dung NodeJS Tuy nhiên, cộng đồng NodeJS thường rat lớn, sẵn sang support

cho lập trình viên mọi lúc mọi nơi.

- Phan core của NodeJS thường được biết bằng ngôn ngữ C++ nên nó hiệu năng

và tốc độ xử lý tương đối cao Nhờ vậy, hầu hết các ứng dụng NodeJS đều có khả

năng đáp ứng được thời gian thực chạy trên đa nền tảng, đa thiết bi,

5.5.3 Những ứng dụng của NodeJS trong lập trình web

- NodeJS có thé tạo, mở, đọc, ghi, xóa và đóng các tệp ngay khi đang truy cập trên

máy chủ.

- _ Xây dựng nội dung cho các trang web động.

- _ Thực hiện thu thập đữ liệu theo yêu cầu cụ thê

- _ Thực hiện truy van, sửa, xóa, thêm các dữ liệu trong các hệ quan tri cơ sở như:

Microsoft SQL Server, MySQL, MongoDB, PostgreSQL.

5.5.4 Lý do lựa chon NodeJS trong hệ thống ShopSocial

- Trong hệ thống ShopSocial, sử dụng ExpressJS là một Node.js framework

Expressjs hỗ trợ các method HTTP va middleware tạo ra API vô cùng mạnh mẽ

Trang 26

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Main

>» Interface | >» Interface |

|

i y ¥ vy ¥

SeviceA | Service B Service C

Repository A Repository B Repository C

Hình 1.8 Kiến trúc backend cua hệ thống ShopSocial

e Tang Main, Controller sẽ giao tiếp với tang Service

e Các tang Service chi giao giao tiếp với nhau qua Interface, áp dung

Dependency Inversion Principle (những thành phan trong 1 chương trình chi

nên phụ thuộc vào những cái trừu tượng).

e_ Mỗi Service chỉ phụ trách giao tiếp với chính Repository của nó

5.6 ReactJS

5.6.1 Giới thiệu

- ReactJs là một thư viện viết bang Javascript, dung dé xây dung giao diện người

dùng (UI) React được sử dụng rộng rãi va có hệ sinh thai da dạng phong phú.

- ReactJs sử dung Virtual DOM giúp cho hiệu suất tốt hơn với DOM: khi mà

Virtual DOM thay đổi, điều đặc biệt ở đây là chúng ta không cần thao tác trựctiếp trên DOM mà van có thé thấy được view và thấy được những thay đôi đó

- ReactJs là một SPA (Single Page Application), toàn bộ resource của web bao

gồm các file CSS, Javascript, layout hay cấu trúc webpage sẽ được load lần đầu

tiên khi bắt đầu duyệt website Ở những lần sau, khi chuyên trang khác, chỉ những

dữ liệu cần thiết mới cần tải xuống, việc này mang đến trải nghiệm cho ngườidùng web tốt hơn, giảm thời gian phải load lại toàn bộ trang web cồng kénh, tiết

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 26

Trang 27

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

kiệm băng thông cũng như thời gian chờ đợi Việc này hoàn toàn trải ngược với

trang web truyền thống khi toàn bộ trang web phải load lại mỗi khi chuyền trang.5.6.2 Lý do lựa chọn ReactJS trong hệ thong ShopSocial

Dễ sử dụng, cho hiệu suất tốt với một số phương pháp phát triển truyền thống

như Jquery,

Hỗ trợ Reusable Component: React cho phép sử dụng lại components đã được

phát triển thành các ứng dụng khác có cùng chức năng Tính năng tái sử dụngcomponent là một lợi thế khác biệt cho các lập trình viên

Kết nối dé dàng với Backend Nodejs của hệ thống

Hỗ trợ mạnh mẽ khi tích hợp với Facebook, Paypal.

5.7 MongoDB

5.7.1 Giới thiệu

MongoDB là một database hướng tài liệu (document), một dạng NoSQL

database Vì thế, MongoDB sẽ tránh cau trúc table-based của relational database

dé thích ứng với các tài liệu như JSON có một schema rất linh hoạt gọi là BSON

MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi một collection sẽ các các kích cỡ và các document khác nhau Các dữ liệu được lưu

trữ trong document kiêu JSON nên truy van sẽ rất nhanh

5.7.2 Đặc điểm của MongoDB

Mỗi cơ sở dữ liệu chứa các collections lần lượt chứa các documents Mỗi

document có thê khác nhau với một số trường khác nhau Kích thước và nội dungcủa mỗi document có thé khác nhau

Cấu trúc document phù hợp hơn với cách các nhà phát triển xây dựng các lớp và

đối tượng của họ băng ngôn ngữ lập trình tương ứng Document bao gồm các cặp

key - value là đơn vị dữ liệu cơ bản trong MongoDB.

Các hàng (tải liệu) không cần phải có lược đồ được xác định trước Thay vào đó,các trường có thể được tạo nhanh chóng

Khả năng mở rộng: các công ty trên toàn thế giới chạy những cluster với khoảng

hàng triệu tải liệu trong cơ sở dữ liệu

Có hiệu suât cao và tính san sang cao

5.7.3 NoSQL (MongoDB) và SOL (MySQL)

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 27

Trang 28

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Bang 1.1 So sánh tổng quan MongoDB và MySOL

Kiêu

MySQL SQL

Theo chiều doc Có thểquản lý tăng tải bằng cách

tăng CPU, RAM, SSD,

Theo chiều ngang Có thể

dễ dàng thêm một vài máy

chủ trong cơ sở hạ tầng cơ

sở dit liệu NoSQL dé xử

lý lưu lượng lớn.

Bang 1.2 So sánh truy van giữa MongoDB và MySOL

20)

INSERT INTO products(id, name,

amount) VALUES (‘001’, ‘Iphone 12’,

db.products.insert({ id: ‘001’, name:

‘Iphone 12, amount: 20})

WHERE amount> 30

UPDATE products SET name= ‘C’ đb.products.update( { amount: { $øt: 30}

5.7.4 Lý do lựa chon MongoDB trong hệ thông ShopSocial

- Hệ thống ShopSocial sử dung MongoDB Atlas (cloud database của MongoDB)

Trang 29

Đô án tôt nghiệp Giới thiệu và tông quan đê tải

- Mongodb Atlas là một giải pháp phan mém Database as a Service Provider

được cung cap bởi MongoDB.

- ShopSocial hiện tai đang sử dụng gói Shared miền phí.

- Backend của ShopSocial sử dung Mongoose, là một ODM (Object Document

Mapper) Mongoose có những ưu diém:

- Cung cap các abstraction dựa trên MongoDB.

- Cho phép định nghĩa các object (đôi tượng) với một schema được định

nghĩa rõ ràng, được ánh xạ tới một MongoDB document.

6 aa SocialDevelopment vị@ Access Manager +

BB Social x @ Atlas = Realm Z3 Charts

® DEPLOYMENT SOCIALDEVELOPMENT > SOCIAL > DATABASES

Network Access social Collection Name

Advanced campaign_product campaign_product

- Nx Workspace là một bộ công cụ được thiết kế dé kiến trúc, xây dựng và quản

lý monorepos ở mọi quy mô Nó có hỗ trợ cho nhiều frontend framework như

29

Trang 30

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Angular và React cũng như các backend framework bao gồm Nest, Next và

Express.

Nx Workspace cho phép quản lý duy nhất 1 git repository cho nhiều project, làmột hệ thống thông minh, nhanh chóng và dé dang mở rộng đi kèm với nhiều

tích hợp mạnh mẽ.

5.8.2 Cac tinh nang, lợi ích của Nx

Có sẵn các tools đi kèm khi khởi tao project Ví dụ khi khởi tao 1 frontend project

sử dụng Nx, sẽ có các tools hỗ trợ tích hợp kém theo như: Jest, Cypress, ESLint,

Cung cấp Plugins va Nx CLI toàn diện, quan lý và cập nhật các packages dé dang

hơn.

Nx sử dụng Computation Caching và thực thi tác vụ dựa trên đồ thị phân tán

5.8.3 Lý do lựa chọn Nx Workspace trong hệ thống ShopSocial

Cho phép quản ly tại 1 git repository duy nhất

Chia sẻ code và packages giữa Frontend và Backend do đều được viết bằng ngôn

ngữ TypeScript.

Với việc quản lý chung sử dụng Nx, không có những đoạn mã dư thừa được sử

dụng lại ở 2 project cũng như các packages dùng chung được nhất quan 1 phiênbản cụ thể

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 30

Trang 31

Đồ án tốt nghiệp Giới thiệu và tổng quan đề tài

Hình 1.11 Biểu đồ Nx workspace dep-graph

Hình trên thé hiện cách Nx biểu diễn sự phụ thuộc của các project trong hệthống ShopSocial, Backend (api) và Frontend (social) có thể dùng chung code

trong thư viện data nằm ngoài 2 project trên

6 Kết luận

Chương | đã trình bày tổng quan, mục tiêu, các công nghệ được ứng dung dé xây

dựng và phát triển của đề tài “Giải pháp cung cấp dịch vụ quan lý bán hangtrên mạng xã hội” Nội dung Chương 2 sẽ trình bày chỉ tiết về phân tích, thiết

kế hệ thống theo đề xuất giải pháp của đề tài

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 31

Trang 32

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

CHƯƠNG 2 PHAN TÍCH VÀ THIẾT KE HỆ THONG

Bảng 2.1 Bảng mô tả các tác nhân hệ thống

STT Tác nhân Mô tả

1 Khach hang Người sử dung Mạng xã hội Facebook dé đặt hang

và theo dõi đơn hàng

1.1.2 Biêu đồ use case

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 32

Trang 33

Đồ án tốt nghiệp Phân tích và thiết kế hệ thong

Khách hàn.

<<Extend>>

Đặt hàng extension points

Xem chi tiết sản phẩm

Ếập nhật trang thái don hàng ' " <<Extend>> a)

Gửa thông tin chiến dich

<<Extend>>

Quản lý chiến dịc]

extension points

Thêm chiến dịch Sửa thông tin chiến dịch.

Xoá chiến dịch.

ee <<Extend>|>

Powered By Visual Paradigm Come nity ation @

Nguyễn Thế Anh - B17DCCN032 - DI7HTTT4

Hình 2.1 Biểu đồ use case

33

Trang 34

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

Tén usecase Dat hang

Tac nhan chinh Khach hang

Diéu kién - Khách hang có tài khoản Facebook

- Khách hàng đã bình luận bài đăng

thuộc chiến dịch và nhận được tin

nhắn của fanpage

Đảm bảo thành công Khách hàng đặt hàng thành công

Chuỗi sự kiện chính

1 Khách hàng nhắn vào nút Chọn san pham trong màn hình tin nhắn với fanpage

2 Hệ thống hiển thị giao diện đặt hàng với những sản phẩm thuộc chiến dich từ

bài viết trên fanpage của cửa hàng

3 Khách hàng chọn sản phẩm và chọn Đặt mua

Nguyễn Thế Anh — B17DCCN032 — DI7HTTT4 34

Trang 35

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

4 Khách hàng nhập thông tin giao hàng: Họ tên, Số điện thoại, Dia chỉ, Ghi chú

cho đơn hàng và chọn Xác nhận.

5 Khách hàng chọn Phương thức thanh toán.

5.1 Khách hàng chọn phương thức Thanh toán khi nhận hàng.

5.2 Khách hàng chọn phương thức Thanh toán qua Paypal:

5.2.1 Hệ thống hiển thị màn hình thanh toán Paypal

5.2.2 Khách hàng chọn kiểu thanh toán: qua ví Paypal hoặc Debit/Credit Card

1 Khách hàng chọn thanh toán qua ví Paypal:

1.1 Hệ thống hiển thi giao diện đăng nhập tài khoản Paypal

1.2 Khách hàng đăng nhập tài khoản Paypal.

1.3 Hệ thống hién thị nguồn tiền từ các ví trong tài khoản Paypal của khách.1.4 Khách hàng chọn nguồn tiền và thanh toán

2 Khách hang chọn thanh toán qua Debit/Credit Card:

2.1 Hệ thống hiển thị form nhập thông tin thẻ thanh toán

2.2 Khách hàng nhập thông tin và chọn Thanh toán ngay.

5.2.3 Hệ thống hiên thị màn hình Thanh toán thành công

6 Khách hang chon Hoàn thành đơn dé đặt hàng

Ngoại lệ

4.1 Khách hàng nhập không đủ thông tin

4.1.1 Hệ thống báo lỗi phải nhập đủ các trường thông tin

e Kịch bản khách hàng theo dõi đơn hàng

Ro aa

Khach hang Powered By Visual Paradigm Community Editior ©

Hình 2.3 Kịch bản use case khách hàng theo dõi đơn hàng

Bảng 2.3 Kịch bản khách hàng theo dõi đơn hàng

Tác nhân chính Khách hàng

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 35

Trang 36

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

Điều kiện Khách hàng đã đặt hàng

Đảm bảo thành công Khách hàng theo dõi được những đơn

hàng đã đặt.

Chuỗi sự kiện chính

1 Khách hàng chọn nút Theo dõi đơn hang ở tin nhắn với fanpage

2 Hệ thống hiển thị những đơn hang mà khách hàng đã đặt

1.2.2 Kịch bản các chức năng của chủ cửa hàng

e Kịch bản chu cửa hàng đăng nhập

Chủ cửa hàng

Hình 2.4 Biểu do use case Chủ cửa hàng Đăng nhập

Bảng 2.4 Kịch bản chủ cửa hàng đăng nhập

Tén usecase Dang nhap

Tac nhan chinh Chủ cửa hang

Điều kiện - Chủ cửa hàng có tài khoản

- Chủ cửa hàng chưa đăng nhập

Đảm bảo tối thiểu Chủ cửa hàng được phép đăng nhập lại

Đảm bảo thành công Chủ cửa hàng đăng nhập tài khoản thành

công

Chuỗi sự kiện chính

1 Hệ thống hién thị form đăng nhập với các trường: email, mật khẩu

2 Chủ cửa hàng nhập thông tin vào các trường và bam nút Đăng nhập

3 Hệ thống kiểm tra và hiển thị màn hình Onboard sau khi đăng nhập

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 36

Trang 37

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

Ngoại lệ

2.1 Khách hàng nhập không đủ thông tin

2.1.1 Hệ thống yêu cầu phải nhập đủ các trường thông tin

3.1 Khách hàng nhập sai thông tin

2.2.1 Hệ thống báo email hoặc mật khẩu sai

e Kịch bản chu cua hàng đăng ký

Điều kiện Chủ cửa hàng chưa đăng nhập

Đảm bảo tối thiểu Chủ cửa hàng được phép đăng ký lại

Đảm bảo thành công Chủ cửa hàng đăng ký tài khoản thành

công

Chuỗi sự kiện chính

1 Ở màn hình đăng nhập, chủ cửa hàng chon Đăng ký ngay

2 Hệ thống hiển thị form đăng ký với các trường: Email, mật khẩu, nhập lại mật

khâu

3 Chủ cửa hàng nhập thông tin vào các trường và bam nút Đăng ký

4 Hệ thống kiểm tra và lưu thông tin vào cơ sở dữ liệu và thông báo đăng ký

thành công Màn hình chuyển sang Đăng nhập

Ngoại lệ

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 37

Trang 38

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

3.1 Khách hàng nhập không đủ thông tin

3.1.1 Hệ thống yêu cầu phải nhập đủ các trường thông tin4.1 Khách hàng nhập email đã tồn tại

4.1.1 Hệ thống báo lỗi email đã tồn tại

e Kịch ban chu cua hàng thêm cửa hàng

Chủ cửa hàng *£red By Visual Paradigm Community Edition @

Hình 2.6 Biểu do use case Chủ cửa hàng thêm cửa hàng

Bảng 2.6 Kịch bản chủ cửa hàng thêm cửa hàng

Tác nhân chính Chủ cửa hàng

Điều kiện Chủ cửa hàng đăng nhập thành công

Đảm bảo thành công Chủ cửa hàng tạo cửa hàng thành công

Chuỗi sự kiện chính

1 Chủ cửa hàng chọn nút Tạo cửa hàng ở màn hình Onboard

2 Hệ thống hién thị giao diện thêm mới cửa hàng với trường Tên cửa hàng

3 Chủ cửa hàng nhập thông tin và bam Xác nhận

4 Hệ thống tạo cửa hàng mới

Ngoại lệ

3.1 Chủ cửa hàng bỏ trống trường tên cửa hàng3.1.1 Hệ thống yêu cầu chủ cửa hàng nhập tên cửa hàng

Nguyễn Thế Anh — B17DCCN032 — D17HTTT4 38

Trang 39

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

Điều kiện Chủ cửa hàng đăng nhập thành công

Đảm bảo thành công Chủ cửa hàng thêm sản phâm thành công

Chuỗi sự kiện chính

1 Tai giao diện Danh sách sản phẩm, chủ cửa hàng chọn Tạo sản phẩm

phẩm

3 Chủ cửa hàng nhập thông tin và bam Lưu sản phẩm

4 Hệ thống lưu sản phâm và thông báo thành công

2 Hệ thông hiên thị giao diện thêm mới sản phâm với các trường: Tên sản phâm,

Mã sản phẩm, Mô tả, Số lượng trong kho, Gia san phẩm, Giá sale, Ảnh sản

Ngoại lệ

3.1 Chủ cửa hàng không nhập đủ thông tin

3.1.1 Hệ thống báo lỗi các trường không được dé trống và yêu cầu nhập lại

Trang 40

Đồ án tốt nghiệp Phân tích và thiết kế hệ thống

- — Kịch bản chủ cửa hàng sửa sản phẩm

Bảng 2.8 Kịch bản chủ cửa hàng sửa sản phẩm

Tên usecase Sửa sản phâm

Tác nhân chính Chủ cửa hàng

Điều kiện Chủ cửa hàng đăng nhập thành công

Đảm bảo thành công Chủ cửa hang sửa sản phẩm thành công

Chuỗi sự kiện chính

1 Tao giao diện Danh sách sản phẩm, chủ cửa hang chọn sản phẩm can sửa

2 Hệ thống hiển thị giao điện sửa sản phẩm với các trường: Tên sản phẩm, Mã

sản pham, Mô tả, Số lượng trong kho, Giá sản phẩm, Giá sale, Ảnh sản phẩm

3 Chủ cửa hang sửa thông tin và bam Cập nhật sản phẩm

4 Hệ thống cập nhật sản phẩm và thông báo thành công

Ngoại lệ

3.1 Chủ cửa hàng không nhập đủ thông tin, bỏ trống một số trường

3.1.1 Hệ thống báo lỗi không được đề trống và yêu cầu nhập lại

- Kịch bản chủ cửa hàng xóa sản phâm

Ngày đăng: 08/03/2024, 13:56

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w