ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN KHẮC HƯNG XÂY DỰNG HỆ THỐNG ĐỒNG BỘ SẢN PHẨM TRÊN CÁC TRANG THƯƠNG MẠI ĐIỆN TỬ BẰNG AUTOIT VÀ SELENIUM Ngành: Công Ngh Thông Ti
Trang 1ĐẠ I H C QUỐC GIA HÀ N I Ọ Ộ TRƯỜ NG Đ I H C CÔNG NGHỆ Ạ Ọ
LUẬN VĂN THẠC SỸ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC:
Ts Trầ n Trúc Mai
HÀ N ỘI NĂM 2020 -
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN KHẮC HƯNG
XÂY DỰNG HỆ THỐNG ĐỒNG BỘ SẢN PHẨM TRÊN CÁC TRANG THƯƠNG MẠI ĐIỆN TỬ BẰNG AUTOIT
VÀ SELENIUM
Ngành: Công Ngh Thông Tin ệ
Chuyên ngành: M ng máy tính và truy n thông d u ạ ề ữ liệ
Mã số: 18025066
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS TRẦN TRÚC MAI
Hà Nội – 2020
Trang 3LỜI CẢM ƠN
Trước tiên, tôi xin g i l i cử ờ ảm ơn sâu sắc nhất đến th y TS Tr n Trúc Mai, ầ ầngười thầy đã tận tâm, tận lực hướng dẫn, định hướng phương pháp nghiên cứu khoa học cho tôi, đồng th i cung c p nhi u tài ờ ấ ề liệu và tạo điều ki n thu n l i trong ệ ậ ợsuốt quá trình h c t p và nghiên cọ ậ ứu để tôi có th hoàn thành luể ận văn này
Tôi cũng xin được g i l i cử ờ ảm ơn đến các th y, cô trong b môn M ng máy ầ ộ ạtính và truy n thông d ề ữ liệu và Khoa Công ngh ệ thông tin, Trường Đại h c Công ọnghệ - Đại học Qu c gia Hà Nố ội đã nhiệt tình gi ng d y và truyả ạ ền đạt những kiến thức, kinh nghi m quý giá trong su t th i gian tôi h c t p tệ ố ờ ọ ậ ại trường
Tôi xin g i l i cử ờ ảm ơn đến các b n h c viên khóa K25, nhạ ọ ững người đồng hành trong su t khóa h c và có nhi u góp ý b ích cho tôi Cố ọ ề ổ ảm ơn gia đình, bạn
bè đã quan tâm và động viên giúp tôi có ngh l c phị ự ấn đấu để hoàn thành t t luố ận văn này
Do ki n th c và th i gian có h n nên luế ứ ờ ạ ận văn chắc ch n không tránh khắ ỏi những thi u sót nhế ất định
Tôi xin chân thành cảm ơn!
Hà N i, tháng 09 ộ năm 2020Học viên th c hi n ự ệ
Nguyễn Khắc Hưng
Trang 4LỜI CAM ĐOAN
Tôi xin cam đoan luận văn “Xây d ng hự ệ thống đồ ng b s n ph m trên ộ ả ẩ
các trang thương mại điện tử bằng AutoIT và Selenium” được hoàn thành
bằng kiến thức tôi đã tiếp thu được trong su t quá trình rèn luy n, h c tố ệ ọ ập của tôi
dưới s ựhướng d n c a TS Trần Trúc Mai ẫ ủ
Trong toàn b n i dung nghiên c u cộ ộ ứ ủa luận văn, các vấn đề được trình bày
đều là nh ng tìm hi u và nghiên c u của cá nhân tôi ho c là trích d n các ngu n ữ ể ứ ặ ẫ ồtài liệu đều được đưa ra ở phần tài liệu tham kh o ả
Tôi xin cam đoan những lời trên là sự thật và chịu mọi trách nhiệm trước thầy cô và hội đồng bảo vệ luận văn thạc sĩ
Hà N i, tháng 09 ộ năm 2020Học viên th c hi n ự ệ
Nguyễn Khắc Hưng
Trang 5MỤC L C Ụ
LỜI CẢM ƠN ii
LỜI CAM ĐOAN iii
MỤC LỤC 1
DANH MỤC BẢNG BI U 3 Ể DANH MỤC HÌNH V , ĐỒ THỊ 4 Ẽ DANH MỤC CÁC TỪ VI T T T 5 Ế Ắ PHẦN M ỞĐẦ 6 U CHƯƠNG 1 ĐẶT VẤN ĐỀ 8
1.1 Thương mại điệ ửn t là gì? 8
1.2 Thực trạng thương mại điện tử trên thế giới 11
1.3 Tình hình thương mại điệ ử ở Viện t t Nam 11
CHƯƠNG 2 CÁC NỀN TẢNG HỖ TRỢ THỰC THI TÁC V T Ụ Ự ĐỘNG 13
2.1 AutoIT 13
Giới thi u ệ 13
Điểm m nh c a AUTOIT ạ ủ 13
Điểm y u c a AUTOIT ế ủ 14
2.2 Selenium 19
19
2.2.1 Gi i thi u ớ ệ 19
2.2.2 Thành phần c a Selenium ủ 19
2.2.3 Chi ti t v Selenium WebDriver ế ề 21
2.3 T i sao không s d ng nh ng công ngh khác? ạ ử ụ ữ ệ 23
CHƯƠNG 3 XÂY DỰNG HỆ THỐNG, CÀI ĐẶT VÀ ĐÁNH GIÁ 25
3.1 Yêu c u ầ 25
3.2 Phân tích thi t k ế ế 25
3.2.1 Người dùng c a h ủ ệ thống 25
3.2.2 Ki n trúc cế ủa hệ thống 26
3.2.3 B tộ ạo/sửa các hành động mẫu 27
Trang 63.2.3.1 Ki n trúc h ế ệ thống 27
3.2.3.2 Định nghĩa hành động, bước hành động 28
3.2.3.3 Biểu đồ Use case 29
3.2.3.4 Thiế ế cơ sở ữ liệu 30 t k d 3.2.3.5 Thi t k các API ế ế 32
3.2.3.6 M t vài thu t toán ộ ậ 33
3.2.4 B ộ thực thi các hành động 38
3.2.4.1 Ki n trúc h ế ệ thống 38
3.2.4.2 Biểu đồ Use case 39
3.2.4.3 Thi t k ế ế cơ sở dữ liệu 39
3.2.4.4 Thi t k các API ế ế 41
3.2.5 Trang web dành cho người dùng 41
3.2.5.1 Ki n trúc h ế ệ thống 41
3.2.5.2 Biểu đồ Use case 42
3.2.5.3 Thi t k ế ế cơ sở dữ liệu 45
3.2.5.4 Thi t k các API ế ế 47
3.2.5.5 M t vài thu t toán ộ ậ 48
3.3 K t qu xây dế ả ựng 50
3.3.1 Các giao diện web dành cho người bán hàng 50
3.3.2 Các giao di n phía server ệ 54
3.4 Cài đặt và th nghi m ử ệ 56
3.4.1 Yêu c u h ầ ệ thống 56
3.4.2 Quá trình t ng hóa các thao tác ự độ 57
3.5 K t qu ế ả 57
3.6 Định hướng phát triển trong tương lai 58
3.6.1 Xây d ng trang t ng quát cho admin ự ổ 58
3.6.2 H ỗ trợ thêm các hành động 58
3.6.3 Phát tri n theo mô hình Server farm ể 58
CHƯƠNG 4 KẾT LUẬN 60
TÀI LIỆU THAM KH O Ả 61
Trang 7DANH M ỤC BẢ NG BI ỂU
Bảng 2-1: Các hàm biến môi trường trong AUTOIT 15
Bảng 2-2: Các hàm phát âm thanh 15
Bảng 2-3: Các hàm x ử lý thư mục 16
Bảng 2-4: Các hàm ti n ích bàn phím ệ 16
Bảng 2-5: Các hàm toán h c ọ 17
Bảng 2-6: Các hàm x lý chu i ử ỗ 17
Bảng 2-7: Các hàm x lý h p tho i ử ộ ạ 17
Bảng 2-8: Các hàm x lý ti n trình ử ế 18
Bảng 2-9: Một s hàm khác c a AutoIT ố ủ 18
Bảng 3-1: Danh sách các hành động ch yủ ếu khi đăng sản phẩm 29
Bảng 3-2: Danh sách các API module t o sạ ửa hành động mẫu 33
Bảng 3-3: Các hàm th t c mà h ủ ụ ệ thống h ỗ trợ gọi AutoIT 34
Bảng 3-4: Các hàm th t c mà h ủ ụ ệ thống h ỗ trợ gọi Selenium 35
Bảng 3-5: Danh sách các API module thực thi hành động 41
Bảng 3-6: Danh sách các API module web qu n tr ả ị 48
Trang 8DANH M C HÌNH V Ụ Ẽ, ĐỒ THỊ
Hình 1-1: Khái niệm thương mại điện tử (nguồn internet) 8
Hình 1-5: Giá tr ị thị trường TMĐT liên tục tăng trưởng qua các năm 11
Hình 1-8: Doanh thu TMĐT B2C Việt Nam năm 2015 – 2019 (tỷ USD) 12
Hình 1-9: Quy mô th ịtrường thương mại điện tử B2C Việt Nam năm 2018 12
Hình 2-1: N n t ng h ề ả ỗ trợ ự động GUI AutoIT 13 t Hình 2-2: Ví d v script c a AutoIT ụ ề ủ 18
Hình 2-3: Các thành ph n chính c a Selenium ầ ủ 19
Hình 2-4: Ki n trúc c a Selenium WebDriver ế ủ 21
Hình 2-5: Selenium webdriver tương thích với nhiều trình duy t ệ 23
Hình 3-1: Ki n trúc h ế ệ thống 26
Hình 3-2: Ki n trúc h ế ệ thống module t o sạ ửa hành động mẫu 27
Hình 3-3: Lược đồ use case của ph n t o sầ ạ ửa hành động 29
Hình 3-4: Lược đồ quan hệ thực th c a ph n t o sể ủ ầ ạ ửa hành động 31
Hình 3-5: Import thư viện hỗ trợ AutoIT 35
Hình 3-6: Cài đặt một hàm AutoIT v i ngôn ng ớ ữ C# 36
Hình 3-7: Ki n trúc h ế ệ thống ph n t o sầ ạ ửa hành động m u ẫ 38
Hình 3-8: Quy trình tạo hành động tác động lên sàn TMĐT 39
Hình 3-9: Lược đồ use case của ph n th c thi t ầ ự ự động 39
Hình 3-10: Lược đồ thực th quan h c a phể ệ ủ ần tạo thực thi hành động 40
Hình 3-11: Sơ đồ khối module web dành cho người dùng 41
Hình 3-12: Biểu đồ Usecase của người dùng cu i ố 43
Hình 3-13: Quy trình đăng sản phẩm đồng bộ 43
Hình 3-14: Lược đồ quan h ệ thực th c a ph n web qu n lý ể ủ ầ ả 45
Hình 3-15: Giao di n trang th ng kêệ ố 50
Hình 3-16: Giao di n trang danh sách s n ph m ệ ả ẩ 51
Hình 3-17: Giao di n h p tho i thêm s n ph m mệ ộ ạ ả ẩ ới 51
Hình 3-18: Giao di n trang qu n lý tài kho n ệ ả ả 52
Hình 3-19: Giao di n trang qu n lý danh m c ệ ả ụ 53
Hình 3-20: Giao di n trang giá tr mệ ị ặc định 54
Hình 3-21: Giao diện ứng dụng các hành động mẫu 55
Hình 3-22: Giao diện ứng d ng tụ ừng bước của hành động 55
Hình 3-23: Giao diện ứng d ng khi ch y thêm s n ph m ụ ạ ả ẩ 56
Hình 3-24: Mô hình Server Farm 59
Trang 10PHẦN M Ở ĐẦ U
Lý do chọn đề tài
Cùng v i s phát tri n c a thi t b ớ ự ể ủ ế ị di động và mạng máy tính Thương mại điệ ửn t , mua sắm tr c tuyến càng ngày càng phát tri n mạnh mẽ Theo báo cáo ự ểcủa statistics thì doanh s bán lố ẻ trên các sàn thương mại điệ ử năm 2019 đạt n tmức 3.535 tỷ Đô la Mỹ Th ịtrường thương mại điện t ử Việt Nam cũng nằm trong top các th ịtrường phát tri n nhanh nh t th ể ấ ế giới v i t l ớ ỉ ệ tăng trưởng đạt g n 30% ầtrong năm 2019
Hiện nay có r t nhiấ ều người tham gia bán hàng trên các sàn thương mại điệ ửn t Trong s đó thì lại có không ít ngườố i tham gia vào nhiều hơn mộ sàn đểt
có th ể bán được nhiều hàng hóa hơn, phủ kênh sản phẩm tốt hơn Việc phải đăng cùng m t s n ph m lên nhi u sàn là vi c khá t n th i gian, công s c l i có th ộ ả ẩ ề ệ ố ờ ứ ạ ểnhầm l n v s ẫ ề ố lượng hàng t n, giá bán, ho c thố ặ ời điểm bán cho mỗi đơn hàng
Vì v y n u xây dậ ế ựng được m t công c h ộ ụ ỗ trợ đăng sản phẩm lên đồng th i nhiờ ều sàn TMĐT thì sẽ hỗ trợ rất tốt cho người bán hàng
Qua tìm hi u và phân tích m t s ể ộ ố giải pháp trước đây, tác giả thấy có nh ng ữbài nghiên cứu trướ ử ụng phương pháp đăng sản ph m qua k t n i b ng API c s d ẩ ế ố ằTuy nhiên phương pháp này không triệt để nên qua một thời gian nghiên cứu tác giả đã tìm ra một giải pháp triệt để hơn Đó là sử dụng các nền tảng hỗ trợ thực thi tác vụ động là AutoIT và Selenium để giả lập hành vi của người dùng Thay
vì một người dùng thao tác trên nhiều sàn, người dùng ch c n nh p s n ph m 1 ỉ ầ ậ ả ẩlần Hệ thống s sinh ra các mã k ch bẽ ị ản để các AutoBot đăng sản ph m lên các ẩsàn khác nhau
Mục đích nghiên cứu c a luủ ận văn, đối tượng, ph m vi nghiên cạ ứu
Mục đích củ a luận văn:
Nghiên cứu đề tài này nh m mằ ục đích tìm ra phương pháp đồng bộ sản phẩm lên các sàn thương mại điện tử mà gi i quyả ết triệt để được vấn đề mà hướng gi i quyả ết trước đây chưa làm được: Hỗ trợ toàn di n t t c các sàn Khi ệ ấ ả
Trang 11các sàn có s ự thay đổi thì không cần người có k ỹ năng lập trình v n có th cẫ ể ập nhật để hoạt động hoạt động ổn định
Đối tượng và phạm vi áp d ng: ụ
Đối tượng áp dụng là việc đăng sản ph m lên nhiẩ ều sàn TMĐT mà không
sử d ng API ụ
Phạm vi áp d ng là t t c các sàn ph ụ ấ ả ổ biến ở Việt Nam
Để đặ t được mục tiêu trên đề tài tập trung tìm hiểu các n i dung sau: ộ
- Tìm hi u v n n t ng AutoIT và Selenium, biể ề ề ả ết được điểm mạnh, điểm yếu của t ng n n từ ề ảng để có cách giải quyết phù h p ợ
- Phân tích v ề luồng khi đăng sản phẩm lên các sàn
- Xây dựng các đầy đủ kiến trúc h ệ thống, mô hình client server để giải quyết yêu c u bài toán ầ
Nội dung luận văn
Luận văn này gồm 4 chương, cụ thể như sau:
Giới thi u vệ ề thương mại điệ ử ề thựn t , v c trạng thương mại điện tử hiện này trên thế giới và các trang thương mại điệ ử phổ biến t n nhất ở Việt Nam hiện nay
Chương 2: CÁC N N T NG H Ề Ả Ỗ TRỢ THỰ C THI TÁC V T Ụ Ự ĐỘNG
Các n n t ng hề ả ỗ trợ thực thi tác v tụ ự động M t là AutoIT - N n t ng h ộ ề ả ỗtrợ tự động hóa các thao tác GUI và thao tác người dùng Hai là Selenium WebDriver để tương tác với web
Phân tích yêu c u, thi t k ầ ế ế luồng, giao di n c a hệ ủ ệ thống
Cái đặt và đưa ra kết quả thực nghiệm
Trang 12CHƯƠNG 1 ĐẶ T V ẤN ĐỀ
1.1 Thương mại điện tử là gì?
Định nghĩa của WTO “Thương mại điện t bao g m vi c s n xu t, quử ồ ệ ả ấ ảng cáo, bán hàng và phân ph i s n phố ả ẩm được mua bán và thanh toán trên mạng Internet, nhưng được giao nhận một cách hữu hình, cả các sản phẩm giao nhận cũng như những thông tin s hoá thông qua m ng Internet [1] ố ạ ”
Ủy ban châu Âu định nghĩa:
Thương mại điện tử có thể định nghĩa chung là sự mua bán, trao đổi hàng hóa hay d ch vị ụ giữa các doanh nghiệp, gia đình, cá nhân, tổ chức tư nhân bằng các giao dịch điệ ửn t thông qua m ng Internet hay các m ng máy tính trung gian ạ ạ(thông tin liên l c tr c tuy n) Th t ng bao g m viạ ự ế ậ ữ ồ ệc đặt hàng và d ch thông qua ịmạng máy tính, nhưng thanh toán và quá trình vận chuy n hàng hay d ch v ể ị ụ cuối cùng có th ể thực hi n tr c tuyệ ự ến hoặc bằng phương pháp thủ công [2]
Hiểu một cách đơn giản thì thương mại điện t chính là các hoử ạt động kinh doanh, sản xu t, giao d ch, mua bán, thanh ấ ị toán, đặt hàng, qu ng cáo và k c giao ả ể ảhàng s dử ụng các phương tiện công ngh ệ điệ ử chủ ếu là qua máy tính và điện n t ythoại có kết n i internet ố
Hình 1-1: Khái niệm thương mại điện tử (nguồn internet)
Trang 13Thế giới ngày này phát tri n m t cách bùng n v mể ộ ổ ề ạng và điện toán đám mây m, ọi người có th kể ết nối với nhau m t cách nhanh chóng và dộ ễ dàng hơn thông qua các loại hình dich v ụ trực tuyến Thương mại điện tử có kh ả năng giúp ích cho nhi u khách hàng sề ẽ mua được sản phẩm rẻ hơn, thuận lợi hơn, nhanh hơn, hiệu quả hơn còn doanh nghiệp có thể đưa sản phẩm của mình đến với thị trường một cách nhanh nh t, bán hàng thu n lấ ậ ợi hơn
Thương mại điện tử diễn ra trên các phương tiện điện tử như bảng biểu, trang web hay ng dứ ụng điện thoại
Thương mại điện t có ử phụ thu c vào s phát tri n cộ ự ể ủa công ngh ệ như công nghệ m ng, công nghạ ệ quản trị cơ sở ữ liệu, công ngh web, công ngh d ệ ệ di động
và càng ngày càng không ph ụ thuộ trình độ ủ ngườ ử ụng c c a i s d
Các bên ti n hanh giao d ch không nh t thi t ph i g p g ế ị ấ ế ả ặ ỡ trực ti p v i nhau ế ớCàng ngày thì các trang thương mại điện tử càng có nhi u d u t ề ữ liệ ừ người dùng và thông minh hơn, hiểu người mua cần mua gì hơn
Không c n phầ ải đầu tư với số vốn lớn
Với các doanh nghi p v a và nhệ ừ ỏ, chỉ c n h có 1 chi c smartphone ầ ọ ế là cũng
có th bán hàng ể Đặc bi t v i s phát tri n c a m ng xã h i và công ngh truyệ ớ ự ể ủ ạ ộ ệ ền hình tr c tuyự ến, ai cũng có thể “Live stream” và bán bất cứ sản ph m nào mình ẩ
có
Giả m chi phí m t b ng kinh doanh, ti p thặ ằ ế ị
Thương mại điện tử giúp ích rất nhiều trong việc giảm chi phí thuê mặt bằng Nếu trước đây để ản được hàng ngườ b i bán c n thuê ầ “mặt tiền” để khách hàng qua l i nhìn th y và mua s n ph m thì ngày nay, ngay c khi bạ ấ ả ẩ ả ạn ở sâu trong ngõ nhỏ hoặc chung cư thì người mua hàng hoặc đơn vị giao v n có thậ ể đến chuyển hàng giúp Và người bán hàng không c n phầ ải có văn phòng để để giấy t ờ
sổ sách vì m i giao dọ ịch đều được lưu trữ trên máy tính, vi c mua bán di n ra ệ ễ
Trang 14nhanh chóng và d dàng nên không c n quá nhi u nhân công cho nên giễ ầ ề ảm được chi phí v ề nguồn nhân lực.
Xây d ng quan h lâu dài v i khách hàng ự ệ ớ
Thương mại điện tử giúp các bên có thể trao đổi tức thì, liên tục và nhiều lần Nhiều ch c a hàng ch n hình th c qu ng cáo qua tin nh n, t c là khi khách ủ ử ọ ứ ả ắ ứhàng đến mua sản phẩm, chủ shop sẽ đăng kí thông tin cho khách bằng số điện thoại và gửi khuyến m i qua tin nh n cho khách hàng ạ ắ
1.1.5.1 C huyển sang s d ng thi t b ử ụ ế ị di động
Theo th ng kê số ố lượt truy c p trên hậ ệ thống hơn 33.000 trang web khách hàng của Sapo Web năm 2018, có tới hơn 60% số lượt truy c p vào trang web là ậ
từ thi t bế ị di động, tăng 5% so với năm 2017 Ngoài ra, theo s ghi nh n c a các ự ậ ủcông ty nghiên c u th ứ ị trường, khoảng 70% lượng th i gian tr c tuy n cờ ự ế ủa người tiêu dùng là qua thi t bế ị di động và c hai l n mua s m tr c tuy n thì có mứ ầ ắ ự ế ột lần đặt qua điện thoại Đồng thời, người tiêu dùng vẫn duy trì thói quen xem hàng trên di động, đặt mua hàng trên máy tính vì quá trình thanh toán rõ ràng hơn (có
lẻ do màn hình to hơn) Do đó, nếu nền tảng thanh toán trên di động làm tốt hơn nữa trong th i gian tờ ới, s ố lượng khách hàng chuy n qua mua sể ắm qua di động có khả năng tăng nhanh so với hiện nay
iPrice cũng cho biết các doanh nghiệp TMĐT tại Vi t Nam có t l chuyệ ỷ ệ ển đổi lượt truy cập các trang web TMĐT thành đơn hàng cao nhất trong khu vực Đông Nam Á v i 65%, tiớ ếp đến là Singapore và Indonesia
1.1.5.2 S ử dụng nhi u công ngh phát tri n ề ệ để ể
Để tăng trải nghiệm người dùng, quảng cáo đúng đối tượng và giao hàng nhanh chóng ti t ki m thì công ngh ế ệ ệ là điều không th thi u Ví d ể ế ụ để qu ng cáo ảhiệu quả, các sàn ho c trang qu ng cáo, marketing liên k t s d ng Big Data và ặ ả ế ử ụMachine Learning vào để target đối tượng được chính xác hơn Hoặc sử dụng Robot vào các kho hàng, AI vào việc nên để sản phẩm ở kho nào thì d giao hàng ễtới nhiều người mua hàng nh ất
Trang 151.1.5.3 Phát triển theo hướng của mạng xã h i ộ
Để tăng trải nghiệm người dùng các trang thương mại điện tử liên tục tung
ra các tính năng mới nhằm “cung cấp các tính năng mang tính xã hội cho người dùng như tạo nội dung để tương tác vớ ạn bè, người mua hàng và người b i bán hàng” Tháng 3 năm 2019 Shopee giới thiệu tính năng Shopee Live và shopee feed, y như những tính năng chính của m ng xã h i Facebook ạ ộ Thực trạng thương mại điện tử trên th ế giới
TMĐT là ng nh tăng trưởà ng mạnh nhất trên thế giới Trong các năm qua thì thị trường thương mại điệ ử thế giớn t i không ngừng gia tăng Và theo dự báo của statista thì giá trị thị trường năm 2019 sẽ đạt m c 3.535 t USD và ti p tứ ỷ ế ục tăng gần gấp đôi giá trị (với 4.878 tỷ USD) [3] vào năm 2021
Hình 1-2: Giá tr ị thị trường TMĐT liên tục tăng trưở ng qua các năm
Cùng nhìn vào s phát tri n cự ể ủa hai sàn thương mại điệ ử đứng đần t u th ếgiới và đứng đầu châu Á t i thạ ời điểm hi n t i là Amazon và Alibaba ệ ạ
1.2 Tình hình thương mại điện tử ở Việt Nam
Cùng s phát tri n nhanh chóng c a m ng internet và thi t b ự ể ủ ạ ế ị di động thông minh, thương mại điện tử ở Việt Nam có sự bứt tốc bùng nổ Theo Statista, tổng doanh thu của các công ty thương mại điện tử t i Viạ ệt Nam đạt 2,26 t ỷ USD, tăng gần 30% so với năm 2017 Vớ ếi k t quả đó, Việt Nam vươn lên top 6 trong 10 thịtrường thương mại điện tử lớn nhất thế giới Trên thị trường này, Vi t Nam ch ệ ỉ
Trang 16xếp sau những “ông lớn” như Trung Quốc, Mỹ, Anh, Nhật Bản và Đức Tổng lượng người mua hàng trên các sàn thương mại điện tử trong năm 2018 đạt 49,8 triệu người D ự kiến, con s ố này tăng lên 51,1 triệu người vào năm 2019 xu hướng mua sắm trên di động ngày càng tăng, chiếm đến 72% số đơn hàng
Theo Sách trắng thương mại điệ ử Việt Nam 2019, thương mại điệ ửn t n t bán l - B2C c a Viẻ ủ ệt Nam đã có mức tăng trưởng cao nhất trong 3 năm trở lại đây, tăng tới 30% Mức tăng trưởng của thương mại điện tử Việt Nam trong 2 năm 2016 và 2017 lần lượt là 23% và 24%
Hình 1-3: Doanh thu TMĐT B2C Việt Nam năm 2015 – 2019 (tỷ USD)
Tỷ trọng doanh thu TMĐT B2C so với tổng mức bán
(Nguồn: Sách tr ắng thương mại điệ ử Việt Nam 2019) n t
Hình 1-4: Quy mô thị trường thương mạ i điện tử B2C Việt Nam năm 2018
Trang 17CHƯƠNG 2 CÁC NỀN TẢNG HỖ TRỢ THỰC THI TÁC VỤ
TỰ ĐỘNG 2.1 AutoIT
Giới thiệu
AutoIt là m t ngôn ng lộ ữ ập trình được ra đời vào tháng 1 năm 1999 bởi Jonathan Bennett AutoIt có cú pháp tương tự ần như ngôn ngữ BASIC đượ g c thiết kế để tự động hóa các GUI (giao diện người dùng) như giả ập phím nh n, l ấ
di chuy n chu t, và th c hi n m t s thao tác ph c t p khác trên c a s , thao tác ể ộ ự ệ ộ ố ứ ạ ử ổvới t p tậ in, thư mục AutoIt bước đầu được thi t kế ế để ấ c u hình tự động hoá và hàng ngàn máy tính cá nhân V i ớ dung lượng vô cùng nhỏ ọ và đồng thời chạy g n, độc l p ậ được trên m i các phiên b n c a Windows mà không c n các ọ ả ủ ầ chương trình runtime chạy n n Hi n t i phiên b n m i nh t: 3.3.14.3 (Phát hành tháng 2, 2018) ề ệ ạ ả ớ ấ[13]
Hình 2-1: Nền t ng hả ỗ trợ ự động GUI AutoIT t
Điểm mạnh của AUTOIT
Dễ dàng tiếp cận dành cho người mới bắt đầu với cú pháp đơn giản
Mô ph ng s ỏ ự kiện chu t và keystrokes ộ
Tương tác với tất c các c a s theo tiêu chu n ki m soát và các ti n trình ả ử ổ ẩ ể ếcủa h ệ điều hành
Mã th c thi có th ự ể thực thi độc lập v i quá trình biên soớ ạn
Tạo giao diện GUI tương tác với người dùng h ỗ trợ COM
Trang 18 Tương thích với tất c phiên b n h ả ả ệ điều hành của Windows và có h ỗ trợ x64 và Unicode
Có th g i các hàm giao di n l p trình ng dể ọ ệ ậ ứ ụng (API) và các thư viện động (DLL) một cách có định hướng
Cộng đồng hỗ trợ vô cùng l n kèm theo tài li u chi ti t ớ ệ ế
AutoIt hoàn toàn miễn phí nhưng nhà phát triển có th quyên góp ể tiền bạc hoặc đóng góp công sức cho cộng đồng phát triển AutoIt
Autoit được xem là m t ngôn ng hộ ữ ỗ trợ tốt để viết các ti n ích auto Ví d ệ ụnhư là auto webgame, keylogger, botnet, auto click chuột, auto đăng nhập và những thao tác t ự động khác mà không cần đến s can thi p cự ệ ủa người dùng Với công c Aut2Exe, các k ch b n có th ụ ị ả ể được biên d ch thành t p tin th c thi (*.exe) ị ệ ự
• Chưa hỗ trợ đa tiến trình (multi-thread)
• Chưa hỗ trợ đầy đủ b x lý s ộ ử ự kiện v i chu t ớ ộ như sự kiện MouseHover, MouseMove
• Khả năng b dị ịch ngược: d ễ dàng để giải mã mã ngu n và cồ ần dùng thêm một số thủ thuật để khắc phục sau khi biên d ch mã nguị ồn c a AutoIt mủ ặc dù đã được nén và mã hóa luôn vào t p tin th c thi ệ ự
• Thường bị trình di t vi-rút cho luôn là Trojan/Malware ệ
Với mục đích ban đầu AutoIT được s dử ụng để ết các chương trình Auto vi
để ả gi i quyết các nhu c u về công viầ ệc nào đó Đa số trong số đó là AutoGame, AutoSendRequest Tuy nhiên có vẻ như nhiều ngườ ử ụng AutoIT để viếi s d t các
mã độc virus malware hay nổi tiếng hơn là Botnet/RAT Cái này chuyên để- tạo
ra những troijan Yahoo ngày xưa cũng bị phát tán virus năm 2006, hầu hết các
mã độc đó đều được vi t b ng AutoIT V y nên sau m t th i gian dài thì các trình ế ằ ậ ộ ờ
Trang 19diệt virus chỉ c n nh n di n "ch ký" của ứng d ng ầ ậ ệ ữ ụ đó là AutoIt thì coi là virus/malware luôn
Các hàm, th t c AUTOIT h ủ ụ ỗ trợ
Hàm x lý biử ến môi trường trong Windows
Thông thường người dùng ph i bấm phải chu t vào My Computer > ả ộProperties >Advanced, ch n Environment Variables thi t l p biọ để ế ậ ến môi trường trong Windows AutoIT có s n m t s hàm x lý biẵ ộ ố ử ến môi trường để làm vi c này ệ
mà không ph i thao tác ả như trên
EnvGet (Envvar) Trả ề v giá trị c a một bi ủ ến môi trườ ng trong Windows
EnvSet(Envvar, value) Thiết lập giá tr cho m ị ột bi ến môi trườ ng trong Windows
EnvUpdate() Cập nh t l i bi ậ ạ ến môi trườ ng c a Windows ủ
Bảng 2-1: Các hàm biến môi trường trong AUTOIT
Hàm phát âm thanh ho c kiặ ểm tra hình ảnh.
Beep([fre], [duration]) Phát ti ng bip bip trong 1 khoế ảng thời gian
SoundPlay(“filename”, [wait]) Chơi tập tin âm thanh có đường dẫn là filename
SoundSetWaveVolume(percent) Thiết l p lậ ại biến môi trường của Windows
PixelChecksum(left, top, right,
Trang 20DirMove(“sourcedir”, “destdir”,
DirRemove(“path”, [flag]) Xóa thư mục
FileGetAttrib(“filename”) Lấy thông tin các thu c tính cộ ủa tập tin
FileOpenDialog(“title”, “dir”,
FileChangeDir(“path”) Chuyển đường dẫn thư mục làm việc hiện
HotKeySet(“key”) Gán phím nóng n cđế ửa sổ đang kích hoạt
SendKeepActive(“Title”) Giữ m t c a s ộ ử ổ chương trình nào đó luôn luôn
được kích hoạt trong khi gọi hàm Send
Bảng 2-4: Các hàm tiện ích bàn phím
Hàm toán h c ọ
Abs(expression) Tính trị tuyệt đối của một con số
ACos(expression) Tính arcCosine c a m t con s (hàm tr vủ ộ ố ả ề theo đơn vị
radians) ASin(expression) Tính arcsine c a m t con s (hàm tr vủ ộ ố ả ề theo đơn vị
radians) Atan(expression) Tính arctangent c a m t s (hàm tr vủ ộ ố ả ề theo đơn vị
radians)
Trang 21Ceiling(expression) Làm tròn m t con sộ ố đến con s nguyên kố ế tiế ớn hơn p l
nó
Bảng 2-5: Các hàm toán học
Hàm x lý chu i ử ỗ
StringCompare() So sánh hai chu i ỗ
StringInStr() Tìm v ị trí của m t chuộ ỗi nhỏ trong m t chuộ ỗi lớn
StringIsAlNum() Kiểm tra chu i có ph i là s ỗ ả ố
StringIsAlpha() Kiểm tra chu i có phỗ ải chỉ chứa các kí tự hay không
StringLen() Trả v s kí t ề ố ự có trong chuỗi
StringReplace() Thay đổi n i dung c a m t chuộ ủ ộ ỗi con nào đó trong chuỗi
Bảng 2-6: Các hàm xử lý chuỗi
Hàm liên quan đến xử lý h p thoại ộ
InputBox(“title”, “prompt”) Xuất hiện một hộp nhập cho người dùng gõ chuỗi thông tin
vào MsgBox(flag, “title”, “text”) Xuất hiện một hộp thoại thông tin cho người dùng
SplashTextOn ( "title", "text") Tạo một cửa sổ popup dạng text
Bảng 2-7: Các hàm xử lý hộp thoại
Hàm qu n lý ti n trình ả ế
ProcessClose() Đóng mộ ến trình đang chạt ti y
ProcessExists() Kiểm tra xem m t tiộ ến trình nào đó có đang chạy
trong hệ thống hay không
ProcessSetPriority() Thiết lập ch ế độ ưu tiên của CPU cho mộ ến trình t tiProcessWait(“process”,
[timeout])
Tạm d ng mừ ột đoạn mã script AutoIt đang thực thi cho đến khi một tiến trình nào đó tồn tại chạy trong hệ thống
ProcessWaitClose(“process”,
[timeout])
Tạm d ng mừ ột đoạn mã script AutoIt đang thực thi cho đến khi một tiến trình nào đó không tồn tại chạy trong hệ thống
Trang 22Các hàm t o các control ạ Thêm các đối tượng control ở trên GUI như tạo
Button Label
Các hàm c p nh t control ậ ậ Thay đổi các đối tượng control trên GUI như đổi màu
nền, xóa đối tượng, thiết lập giá tr ị
Bảng 2-9: Một số hàm khác của AutoIT
Ví d v ụ ề việ ử ụ c s d ng AUTOIT
Trang 232.2 Selenium
Nói đến kiểm thử tự động không thể không kể đến Selenium, đây là bộ
kiểm th tử ự động phổ ếbi n nh t ấ hi n này Selenium được xây dựệ ng hỗ trợ và đểkhuyến khích ki m th t ể ử ự động v mề ặt chức năng và giao diện của ứng d ng d ng ụ ạweb và thực thi trên m t lo t các trình duy t, n n tộ ạ ệ ề ảng như Chrome, Mozilla, Internet Explorer, Safari Selenium tr thành m t trong nhở ộ ững công cụ kiểm th ử
tự động được s d ng nh t c a các chuyên gia ki m th b i là ph n m m mã ử ụ ấ ủ ể ử ở ầ ềnguồn mở và cộng đồng đông đảo [14]
Selenium mlà ộ ột b tập hợp các công c riêng rẽ M i công c được thiết ụ ỗ ụ
kế tùy thuộc yêu c u vầ ề môi trường ki m thể ử để phục vụ các mục đích kiểm th ửkhác nhau Gói Selenium bao g m các thành ph n sau: ồ ầ
Selenium IDE (Selenium Integrated Development Environment)
Selenium IDE được phát triển đầu tiên bởi lập trình viên người Nhật Bản Shinya Kasatani, ban đầu là m t ti n ích m r ng c a Firefox Trong quá trình ộ ệ ở ộ ủthực hành và nghiên cứu vớ Selenium Core, ông đã thấy có thể mở ri ộng để ạo t
Trang 24ra một môi trường phát tri n tích h p Vể ợ ới nó, người dùng có th tích h p vào ể ợtrình duy t Mozilla Firefox IDE có khệ ả năng ghi lại và chạy sau đó (record and play back) các hành động của người dùng trên trình duy t (trình duy t này phệ ệ ải được tích h p hợ ỗ trợ ở b i IDE) Kể t năm 2006, gói Seleniừ um đã tích hợp sẵn Selenium IDE IDE đóng góp giá tr r t lị ấ ớn cho cộng đồng kiểm th Selenium ử
Selenium IDE là công c d s d ng nh t trong b công c c a gói ụ ễ ử ụ ấ ộ ụ ủSelenium Tính năng ghi lại và chạy sau đó (record and play back) làm cho nó rất
dễ học đối v i nhớ ững người đã biết chút v ngôn ề ngữ l p trình Tuy nhiênậ , Selenium IDE cũng có một vài nhược điểm làm nó không thích hợp để ử ụng s dtrong trường hợp các k ch bị ản kiểm th ử thường xuyên b ị thay đổi
Selenium RC (Selenium Remote Control)
Selenium RC được viết bằng ngôn ngữ Java, cho phép thiết kế và thực thi kịch bản kiểm th cho các ng d ng d ng web Selenium RC là s n ph m sau khi ử ứ ụ ạ ả ẩ
đã khắc phục được một số điểm h n ch c a Selenium IDE/ Core M t trong ạ ế ủ ộnhững h n ch ạ ế chủ ếu là v y ấn đề Same Origin:
Đó là không cho phép truy cập DOM của một tài liệu từ một ngu n khác ồvới nguồn mà chúng ta đang truy cập tài li u Cệ ho nên để test v i b t k ớ ấ ỳ ứng dụng nào mà s dử ụng Selenium Core, người ta phải cài đặt toàn b ộ ứng dụng Selenium Core trên một server để khắc phục các vấn đề về chính sách Same origin
Selenium Grid
Phát tri n bể ởi Pat Lightbody để giải quyết cho việc thực hiện các bộ kiểm thử thử phân tán, ki m thể ử ở nhiều môi trường khác nhau và ti t kiế ệm đáng kểthời gian th c hi n ự ệ
Selenium WebDriver
Được tạo vào năm 2006 b i k ở ỹ sư tại ThoughtWorks tên là Simon Stewart, Webdriver là một trong những công c ụ kiểm th t ử ự động mạnh mẽ và thông dụng nhất Đây chính là phiên bản mở rộng sau khi cải tiến các điểm không c n thiầ ết cũng như hạn chế của Selenium RC, như không cần khởi chạy trước máy ch ủSelenium khi th c thi các k ch bự ị ản kiểm thử Và hơn hết, phiên b n WebDriver ả
Trang 25tương thích với r t ấ nhiều n n t ng ề ả và trình duy Công c WebDriver th nghiệt ụ ử ệm Selenium được coi là một trong nh ng l a chữ ự ọn ưu tiên nhất để thử nghi m các ệ
ứng d ng d a trên web ụ ự
2.2.3.1 Kiế n trúc c a WebDriver ủ
Selenium WebDriver là m t khung web cho phép th c hi n các ki m tra ộ ự ệ ểtrình duy t chéo Công cệ ụ này được s dử ụng để ự độ t ng ki m tra ng d ng dể ứ ụ ựa trên web để xác minh r ng nó hoằ ạt động được mong đợi
Selenium WebDriver cho phép ch n ngôn ng l p trình b n chọ ữ ậ ạ ọn để t o tạ ập lệnh th nghiử ệm Như đã thảo luận trước đó, đây là một tiến bộ so với Selenium
RC để khắc ph c mụ ột vài h n ch Selenium WebDriver không có kh ạ ế ả năng xử lý các thành ph n cầ ửa sổ, nhưng nhược điểm này có thể khắc ph c b ng cách s ụ ằ ửdụng các công cụ như Sikuli, Auto IT, v.v
Hình 2-4: Kiến trúc c a Selenium WebDriver ủ
Mô t chi ti t t ng thành ph n ả ế ừ ầ
Thư viện khách hàng Selenium / Ràng bu c ngôn ng : ộ ữ
Trang 26Selenium cung c p h ấ ỗ trợ cho nhiều thư viện như Ruby, Python, Java, v.v
vì các ràng bu c ngôn ngộ ữ đã được phát tri n b i các nhà phát triể ở ển Selenium đểcung c p khấ ả năng tương thích cho nhiều ngôn ng Ví d : n u mu n s dữ ụ ế ố ử ụng trình điều khiển trình duyệt trong Python, hãy s d ng Bindings Python Có th ử ụ ểtải xu ng t t c các ràng bu c ngôn ngố ấ ả ộ ữ được hỗ trợ theo l a ch n t trang web ự ọ ừchính th c c a Selenium ứ ủ
Giao th c dây JSON ứ
JSON là t ừ viế ắt c a Ký hit t ủ ệu đối tượng JavaScript Đó là một tiêu chuẩn
mở cung cấp một cơ chế ận chuy v ển để truy n dề ữ liệu giữa máy khách và máy chủ trên web Nó cung c p hấ ỗ trợ cho các cấu trúc dữ liệu khác nhau như mảng
và đối tượng giúp đọc và ghi dữ liệu từ JSON d ễ dàng hơn
JSON đóng vai trò là API REST (Chuyển giao trạng thái đại diện) để trao đổi thông tin gi a các máy ch HTTP ữ ủ
Trình điều khiển trình duy t ệ
Selenium cung cấp trình điều khi n cể ụ thể cho t ng trình duy t và không ừ ệtiết l logic bên trong c a chộ ủ ức năng trình duyệt, trình điều khi n trình duyể ệt tương tác v i trình duyớ ệt tương ứng b ng cách thi t l p k t n i an toàn ằ ế ậ ế ố Các trình điều khiển trình duyệt này cũng dành riêng cho ngôn ngữ được s dử ụng để tự động hóa trường h p th nghiợ ử ệm
2.2.3.2 M t s ộ ố tính năng của Selenium WebDriver
Tương thích với trình duy t ệ
WebDriver h ỗ trợ các lo i trình duyạ ệt thông thường hiện nay như: Chrome, FireFox cho đến những trình duyệt hiếm gặp như HtmlUnit Trình duyệt HtmlUnit có thể chạy ở chế độ Headless, là quá trình th c thi mà không c n m ự ầ ởtrình duy t ệ
Trang 27Hình 2-5: Selenium webdriver tương thích với nhiều trình duyệt
Tốc độ
Bởi vì Driver giao ti p không c n thông qua l p trung gian nào mà tr c tiế ầ ớ ự ếp kết n i th ng v i trình duyố ẳ ớ ệt tương tự như người dùng cu i cho nên tố ốc độ ủa cDriver t t ố hơn rất nhi u so v i các thành ph n khác c a b Selenium Ví dề ớ ầ ủ ộ ụ như Selenium RC không giao ti p tr c ti p v i trình duy t web ế ự ế ớ ệ mà chia thành 2 thư viện riêng biệt làm giảm tốc độ th c thi c a nh ng công cụ này vì phải trải qua ự ủ ữtầng tầng l p l p giao ti p ớ ớ ế
2.3 T i sao không s d ng nh ng công ngh khác? ạ ử ụ ữ ệ
Đầu tiên khi được đưa ra bài toán này, tác giả đã nghĩ ngay đến Selenium web driver vì tính linh động, hỗ trợ nhi u ngôn ng , n n t ng l p trình và tri n khai ề ữ ề ả ậ ểđược trên nhi u trình duy t c a nó ề ệ ủ Nhờ các tính năng này của Selenium mà có thể giải quyết được gần như toàn bộ bài toán Ví d vụ ới trang thương mại điện tử Vật giá, với selenium có th ể giải quyết được 100% yêu cầu bài toán đặt ra
Tuy nhiên khi áp d ng v i nhụ ớ ững trang thương mại điện t lử ớn, t m c ầ ỡ quốc t ế thì gặp một số vấn đề như Khả năng website nhận diện được trình duy t tệ ự động, chống spammer nên s ẽ khó qua được bước đăng nhập vào trang web Tiếp đến đó
là khi người dùng mu n thao tác v i viố ớ ệc đăng tải ảnh s n ph m, v i các truy vả ẩ ớ ấn trên cây DOM sẽ không có cách nào thao tác được v i h p tho i trên windows ớ ộ ạ
Trang 28Từ đó tác giả m r ng công c h ở ộ ụ ỗ trợ sang AutoIT để hỗ trợ làm vi c v i các cệ ớ ửa
sổ và gi lả ập thao tác người dùng cu i chính xác nh ố ất
Ngoài 2 công c trên thì tác gi ụ ả cũng thử nghi m v i công c t ệ ớ ụ ự động trên thi t b ế ị
di động như UIAutomator của hệ điều hành android Tuy nhiên có 1 nhược điểm rất lớn đó là màn hình của thiết bị android nh , vi c tìm kiỏ ệ ếm đối tượng trên thiết
bị gặp khó khăn về độ trễ (thời gian tìm) cũng như độ chính xác (có thể các đối tượng chồng đè nên nhau) Vì vậy sau khi tìm hiểu thì tác gi quy t tâm chỉ s ả ế ửdụng Selenium và AutoIT
Trang 29CHƯƠNG 3 XÂY DỰNG HỆ THỐNG, CÀI ĐẶT VÀ ĐÁNH GIÁ
3.2 Phân tích thi t k ế ế
Người dùng cu i ố
Người dùng cuối là các chủ cửa hàng có đăng các sản phẩm lên các trang thương mại điện tử Thay vì vào lần lượt từng trang rồi đăng sản phẩm thì người dùng có th ể thực hi n mệ ột trong hai cách sau:
- Vào trang qu n tr c a h ả ị ủ ệ thống đăng một s n ph m m u gả ẩ ẫ ồm đầy đủ tên, ảnh, giá cả…
- Vào trang chi ti t c a mế ủ ột sản ph m tẩ ại sàn đã có sản ph m r i g i thông ẩ ồ ửtin s n ph m v h ả ẩ ề ệ thống
Người quản tr ị
Trang 30Người qu n trị hệ thống có tác vụ duy nhất là c p nh t bộ k ch b n theo ả ậ ậ ị ảkhuôn m u mẫ ới
Về t ng quan hổ ệ thống được triển khai theo mô hình k t h p giế ợ ữa Client – Server và Server Application –
Bộ thực thi các hành động:
Đây cũng là một ứng dụng Server nhưng thực hi n công vi c ch y các hành ệ ệ ạ
động mà kết h p t ợ ừhành động mẫu và d liệu s n phẩm Chi ti t về ng d ng s ữ ả ế ứ ụ ẽđược trình bày mở ục 3.2.4
Trang web dành cho người dùng
Trang 31Đây là giao diện mà người dùng sẽ tương tác, đồng thời phía Server của web sẽ thực hi n vi c k t h p gi a dệ ệ ế ợ ữ ữ liệu hành động m u và dẫ ữ liệu th c cự ủa người dùng để sinh ra hành động mới chi ti t v ế ề trang web được trình bày c ụ thể
Trang 32Đây là nơi lưu trữ và thao tác truy vấn, quản lý cơ sở dữ liệu, tầng này được cài đặt dựa trên DB_Buider có sẵn của Codeigniter giúp cho việc triển khai các câu truy vấn được rành mạch, linh động
Mỗi website hay sàn TMĐT có các giao diện đăng sản phẩm khác nhau Điều này
có nghĩa là bộ các hành động trên mỗi sàn là khác nhau Nhưng tựu chung lại đểđăng được một s n phả ẩm thì cần có các hành động sau:
5 Tên sản ph m và mã s n phẩ ả ẩm Nhập tên, mã vào textbox
6 Ảnh đại diện của sản phẩm Chọn nh t b ả ừ ộ sưu tập hoặc tải từ máy
tính
7 Giá gốc, giá khuy n mế ại của sản
phẩm, ngày bắ ầt đ u và kết thúc
khuyến m i, sạ ố lượng hàng còn
Nhập thông tin vào textbox
8 Nhập Mô t v s n ph m ả ề ả ẩ Nhập thông tin vào textbox
nhập mã màu ho c ch n t b ng màu ặ ọ ừ ả
Trang 3311 Nhập Ki u dáng ể Nhập thông tin vào textbox hoặc chọn
Bảng 3-1 : Danh sách các hành độ ng ch yủ ếu khi đăng sản ph m ẩ
3.2.3.3 Biểu đồ Use case
Người quản trị
Xác thực tài khoản
do Super Admin c a h ủ ệ thống cung cấp
b) Thêm/sửa website