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

Khóa luận tốt nghiệp Kỹ thuật phần mềm: Phát triển hệ thống đấu giá trực tuyến tích hợp ví Momo dựa trên kiến trúc Microservices

92 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Phát triển hệ thống đấu giá trực tuyến tích hợp ví Momo dựa trên kiến trúc Microservices
Tác giả Lờ Đoàn
Người hướng dẫn TS. Nguyễn Trịnh Động
Trường học Đại Học Quốc Gia Thành Phố Hồ Chí Minh
Chuyên ngành Kỹ thuật phần mềm
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2022
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 92
Dung lượng 45,63 MB

Nội dung

DANH MỤC TU VIET TATThuật ngữ Định nghĩa gRPC là một framework RPC ma nguồn mở, hiện đại và hiệu năng cao mà có thê chạy trên bât kỳ môi trường nào gRPC và thường được dùng để giao tiếp

Trang 1

ĐẠI HỌC QUOC GIA THÀNH PHO HO CHÍ MINH TRUONG DAI HOC CONG NGHE THONG TIN

KHOA CONG NGHE PHAN MEM

Lê Doan — 17520348

KHOA LUAN TOT NGHIEP

PHAT TRIEN HE THONG DAU GIA TRUC TUYEN

TICH HOP Vi MOMO DUA TREN KIEN TRUC MICROSERVICE

Developing An Online Auction Integrated MoMo Wallet

Based On Microservice Architecture

KY SU/CU NHAN NGANH KY THUAT PHAN MEM

GIANG VIEN HUONG DAN NGUYEN TRINH DONG

Trang 2

THONG TIN HỘI DONG CHAM KHÓA LUẬN TOT NGHIỆP

Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ngày

¬— của Hiệu trưởng Trường Đại học Công nghệ Thông tin

¬ eee cee cece cece eet eeeeeeeeeeaee — Chủ tịch

Qe ec cee cece eee ccneeeeee eee e nese eee neea eee eties — Thu ky

Bo ieee ccc eee ce eee cee cnet e nese eee eeea een eenes ~ Ủy viên.

— cece cececeeeecsestesesseeseneaes ~ Ủy viên

Trang 3

ĐẠI HOC QUOC GIA TP HO CHÍ MINH CONG HOA XA HOI CHU NGHIA VIET NAM

TRUONG DAI HOC Độc Lap - Tự Do - Hanh Phúc

CÔNG NGHỆ THÔNG TIN

TP Hồ Chí Minh, ngày tháng năm

NHẬN XÉT KHÓA LUẬN TÓT NGHIỆP

(CUA CÁN BỘ HƯỚNG DAN)

Tên khóa luận:

Phát Triển Hệ Thống Đấu Giá Trực Tuyến Tích Hợp Ví MoMo

Dựa Trên Kiên Trúc Microservice

Nhóm sinh viên thực hiện: Cán bô hướng dẫn:

Lê Đoàn 17520348 TS Nguyễn Trịnh Đông

Đánh giá Khóa luận:

1 Về cuốn báo cáo:

Số trang: 93 Số chương: 5

Số bảng số liệu: Số hình vẽ: 73

Số tài liệu tham khảo: 13 Sản phẩm: 1

Một số nhận xét về hình thức cuốn báo cáo:

Trang 4

Người nhận xét

(Ký tên và ghi rõ họ tên)

Nguyễn Trịnh Đông

Trang 5

ĐẠI HỌC QUÓC GIA TP HÒ CHÍ MINH CONG HOA XÃ HOI CHỦ NGHĨA VIỆT NAM

TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc

CÔNG NGHỆ THÔNG TIN

TP Hồ Chí Minh, ngày tháng năm

NHAN XÉT KHÓA LUẬN TOT NGHIỆP

(CỦA CÁN BỘ PHẢN BIỆN)Tên khóa luân:

Phát Triển Hệ Thống Đấu Giá Trực Tuyến Tích Hợp Ví MoMo

Dựa Trên Kiến Trúc Microservice

Nhóm sinh viên thực hiện: Cán bô phản biên:

Lê Đoàn 17520348 ý TẢ

Đánh giá Khóa luận:

1 Về cuốn báo cáo:

Số trang: 93 Số chương: 5

Số bảng số liệu: Số hình vẽ: 73

Số tài liệu tham khảo: 13 Sản phẩm: 1

Một số nhận xét về hình thức cuốn báo cáo:

Trang 6

3 Về chương trình ứng dụng:

Người nhận xét

(Ký tên và ghi rõ họ tên)

Trang 7

LỜI CẢM ON

Lời đầu tiên, em xin bày tỏ lòng biết ơn sâu sắc đến thay Nguyén Trinh Đông —

giảng viên hướng dẫn em thực hiện khóa luận tốt nghiệp Thầy đã cùng đồng hành và tận

tình hướng dẫn cho em qua từng giai đoạn của luận án Nhờ có sự giúp đỡ nhiệt tình củathầy mà em có thể hoàn thành được được luận án này một cách tốt nhất

Vi kiến thức của em vẫn còn hạn chế nên không thể tránh khỏi những thiếu sót trong

quá trình thực hiện Tuy nhiên, em đã cố găng hoàn thành đúng hạn và hạn chế các lỗinhiều nhất có thể Em luôn mong đợi nhận được những ý kiến đóng góp quý quý báu từ

thay và qua đó có thé rút kinh nghiệm, hoàn thiện ban thân mình trên tinh than nghiêm túc,

tự giác học hỏi

Trong quá trình làm khóa luận sẽ không thể tránh khỏi các thiếu sót, em rất mong nhận được phản hồi từ thầy và các bạn để hỗ trợ giúp cho bản báo cáo của em thêm hoànthiện hơn

Chân thành cảm ơn thầy!

TP Hồ Chí Minh, Ngày 22 tháng 12 năm 2022

Sinh viên

Lê Đoàn

Trang 8

1.3 KE HOẠCH LAM VIỆC

CHƯƠNG 2: KIÊN THỨC CƠ BẢN -.ccs -2222+eseeeeEvEvvvvesseresrtrrressserorer 192.1 HỆ THONG CƠ SỞ LUẬT

2.1.1: LUẬT THƯƠNG MẠI.

2.1.2: LUAT DAU GIÁ

2.1.3: LUẬT GIAO DỊCH ĐIỆN TU.

2.2 KIÊN THỨC CÔNG NGHỆ

2.2.1 Kiến trúc Microservice

2.2.2 Ngôn ngữ lập trình Go

2.2.3 Hệ cơ sở dữ liệu MySQL

2.2.4 Sử dụng ReactJS trong quá trình phát triển giao diện người dùng

2.3 GIẢI PHÁP THANH TOÁN QUA VÍ ĐIỆN TỬ MOMO

2.3.1 Giới thiệu về ví MoMo

2.3.2 Ví MoMo so với các ví

Trang 9

3.2.2.4 Người dùng quản lý thông tin cá nhân - - 5+ s++++zc+c+es++ 323.2.2.5 Người dùng quản lý thông tin địa chỉ giao hàng

3.2.2.6 Nguoi dùng quản lý thông tin các mặt hàng

3.2.2.7 Người dùng quản lý thông tin các phiên đâu giá

3.2.2.8 Quy trình quan lý hóa đơn mua hang

3.2.2.9 Quy trình quản lý các đơn đặt hàng

3.2.2.10 Quy trình tham gia đầu giá một sản phẩm

3.3 SƠ BO PHAN RA TÍNH NĂNG (FDD)

3.4 SƠ DO CA SỬ DUNG (USE CASE DIAGRAM)

3.4.1 Use case tổng quát

3.4.2 Use case quy trinh quan ly tai khoan

3.4.3 Use case quy trình quản lý thông tin cá nhân

3.4.4 Use case quy trình quản lý thông tin địa chỉ giao hàng

3.4.5 Use case quy trình quản lý các mặt hàng

3.4.6 Use case quy trình quan lý các phiên dau giá

3.4.7 Use case quy trình quản lý các đơn đặt hàng/mua hàng

3.4.8 Use case quy trình đầu giá và thanh toán

3.5 SƠ ĐỎ HOẠT ĐỘNG (ACTIVITY DIAGRAM).

3.5.1 Quy trinh quan ly tai khoan

3.5.2 Quy trình quan ly thông tin cá nhân

3.5.2.1 Xem thông tin cá nhân

3.5.2.2 Cập nhật thông tin cá nhân

3.5.3 Quy trình quản lý thông tin địa chỉ giao hàng

3.5.3.1 Xem thông tin địa chỉ giao hàng

3.5.3.2 Thêm thông tin địa chỉ giao hàng

3.5.3.3 Cập nhật thông tin địa chỉ giao hang

3.5.4 Quy trình quản lý các mặt hàng

3.5.4.1 Xem thông tin các mặt hàng.

3.5.4.2 Thêm thông tin mặt hàng

3.5.4.3 Cập nhật thông tin mặt hàng

3.5.4.4 Sơ đồ tuần tự quy trình nhập hàng

3.5.5 Quy trình quản lý các phiên đấu giá

3.5.5.1 Xem thông tin các phiên đấu giá

3.5.5.2 Thêm thông tin phiên đấu gia

3.5.5.3 Cập nhật thông tin phiên dau gi

3.5.6 Quy trình quản lý các đơn đặt hang/mua hang

3.5.6.1 Xem thông tin các đơn đặt hàng/mua hàng

3.5.6.2 Cập nhật thông tin đơn đặt hàng/mua hàng

3.5.7 Quy trình dau giá

3.5.8 Quy trình thanh toán

Trang 10

4.1 QUY TRINH QUAN LÝ TÀI KHOẢN

4.2 QUY TRINH QUAN LY THONG TIN CÁ NHÂN

4.3 QUY TRINH QUAN LY THONG TIN DIA CHI GIAO HANG.

4.4 QUY TRINH QUAN LÝ CAC MAT HANG

4.5 QUY TRINH QUAN LY CAC PHIEN DAU GIA

4.6 QUY TRINH QUAN LY CAC DON DAT/MUA HANG.

4.6.1 Quan lý các don đặt hang

4.6.2 Quản lý các don mua hang

4.7 QUY TRINH DAU GIA

4.8 QUY TRINH THANH TOÁN.

CHƯƠNG 5: KET LUẬN

5.1 KET QUA ĐẠT ĐƯỢC

5.2 KÉT QUẢ CHƯA ĐẠT ĐƯỢC

5.3 HƯỚNG PHÁT TRIÊN

TÀI LIEU THAM KHẢO cccceccccccs+499E©tttEtttEtttrkrrrkkrkkkkkkrrrrdesrdee 93

Trang 11

So sánh giữa kiến trúc Monolithic và Microservice - -. c ss+ 20

Các mô hình thanh toán qua ví MoMo

Sơ đồ mô hình thanh toán qua QR Code

Sơ đồ mô luỗng quản lý thông tin cá nhân

Sơ dé luồng quản lý thông tin địa chỉ giao hàng.

Sơ dé luồng quan lý thông tin các mặt hang .

So dé luồng quản lý thông tin các phiên dau giá

Sơ đồ luồng quản lý hóa đơn mua hàng

Sơ đồ luồng quản lý các đơn đặt hàng

So đồ luồng quy trình tham gia đấu giá một sản phẩm.

Sơ đồ phân rã tính năng (FDD)

Sơ đồ use case tông quát

Sơ đồ use case quản lý tài khoản

So đỗ use case quản lý thông tin cá nhân

So dé use case quản lý thông tin địa chỉ giao hang

Sơ đồ use case quản lý các mặt hàng

So dé use case quản lý các phiên dau giá

Sơ đồ use case quản lý các đơn đặt hàng/mua hàng.

Sơ đỗ use case quy trình đấu giá và thanh toán.

Sơ đồ hoạt động quy trình quản lý tài khoản

Sơ đồ hoạt động xem thông tin cá nhân

Sơ đỗ hoạt động cập nhật thông tin cá nhân

Sơ đồ hoạt động xem thông tin địa chỉ giao hàng

Sơ dé hoạt động thêm thông tin dia chỉ giao hàng

So dé hoạt động cập nhật thông tin địa chỉ giao hàng

So đồ hoạt xem thông tin các mặt hàng

Sơ đồ hoạt thêm thông tin mặt hàng.

Sơ dé hoạt cập nhật thông tin mặt hàng

Sơ đồ tuần tự quy trình nhập hàng

Sơ đồ hoạt động xem thông tin các phiên đấu giá

So dé hoạt động thêm thông tin phiên đấu giá

Sơ đồ hoạt động cập nhật thông tin phiên đầu giá

Sơ đồ hoạt động xem thông tin các đơn đặt/mua hàng

Sơ đồ hoạt động cập nhật thông tin đơn đặt/mua hàng

Sơ đồ hoạt động quy trình dau giá

Sơ đồ tuần tự quy trình dau giá

Sơ đồ hoạt động quy trình thanh toán

Sơ đồ tuần tự quy trình thanh toán COD.

Trang 12

Man hình cập nhật thông tin mặt hàng

Cửa sô thêm tùy chọn

Cửa số chỉnh sửa tùy chọn Màn hình hiền thị tất cả phiên đấu giá Màn hình tạo phiên đấu giá mới

Màn hình cập nhật phiên dau g:

Cửa số xác nhận xóa phiên dau giá

Man hình hién thị tất cả đơn đặt hang.

Màn hình hiền thị chỉ tiết đơn hàng

Cửa số thay đổi địa chi giao hàng

Man hình thông báo khi don hàng lùi huỷ

Màn hình hiền thị tat cả don mua hàng của khách

Màn hình hiền thị chi tiết đơn mua hàng của khách

Màn hình hiền thị chỉ tiết đơn mua hang của khách

Màn hình hiền thị tat cả phiên đấu giá đang diễn ra

Màn hình hiền thị tất cả phiên đấu giá đang diễn raMàn hình chính diễn ra phiên dau giá

Man hình sau khi đấu giá với bảng hiển thị thông tin những người

Cửa sô hiển thị thông báo người thắng cuộc và có thể tiền hành thanh toán 87

Màn hình thanh toán sản phẩm

Màn hình giao diện của ứng dụng MoMo

Màn hình giao diện thanh toán QR Code của MoMoMàn hình thông báo thành công sau khi người dùng quét mã thanh toán

Màn hình chỉ tiết đơn hàng sau khi thanh toán thành công qua MoMo “ Màn hình chỉ tiết đơn hang sau khi thanh toán qua MoMo không thành công

Trang 13

DANH MỤC TU VIET TAT

Thuật ngữ Định nghĩa

gRPC là một framework RPC ma nguồn mở, hiện đại và

hiệu năng cao mà có thê chạy trên bât kỳ môi trường nào

gRPC và thường được dùng để giao tiếp giữa các dịch vụ với

nhau trong kiên trúc Microservice

Viết tắt của 2 cụm từ User Interface và User Experience

UL/UX là 2 khái niệm trong lập trình ứng dụng phía giao diện

người dùng

FDD Sơ đồ phân rã chức năng

Là các nền tảng điện toán đám mây phổ biến hiện nay của

các ông lớn trong ngành công nghệ (AWS là viết tắt của Amazon Web Services, GCP là viết tắt của Google Cloud Platform và cuối cùng là Azure của Microsoft)

AWS, GCP, Azure

Trang 14

TÓM TẮT KHÓA LUẬN

Nội dung khóa luận tập trung vào một nhu cau rất phổ biến trong cuộc sống hiện

nay chính là mua sắm trực tuyến Em đã áp dụng các kỹ thuật khai thác và phân tích yêucầu để mô hình hóa các đối tượng và hành động tương ứng của các đối tượng Từ đó, đưa

ra cái nhìn bao quát về các van dé và phương pháp giải quyết van đề mua và bán trên cácsan thương mại điện tử

Do các yếu tố như phạm vi để tài, thời gian hoàn thành khóa luận và năng lực cánhân nên sản phẩm cuối cùng mà em hướng đến là một ứng dụng web được tối ưu giaodiện cho các màn hình máy tính có độ phân giải phổ biến hiện nay là 1920x1080

Trong quá trình thực hiện đề tài, phần giao diện cho người dùng cuối (Client) và

phần máy chủ (Server) sẽ được phát triển song song với nhau để tăng hiệu suất tối đa trongquá trình kiểm thử và bé sung các tinh năng cần thiết:

© Client được xây dựng bằng ReactJS — một thư viện được viết bằng javascript

được sử dụng rất phô biến trong ngành công nghiệp phần mềm hiện nay Kếthợp với đó là các thư viện của bên thứ ba nôi bat là MaterialUI dé day nhanh

quá trình phát triển giao diện với các thành phần (components) có sẵn mà thư

viện này cung cấp.

o Server được xây dựng bằng ngôn ngữ Golang và phát triển dựa trên kiến trúc

Microservice với các mô đun (hay thường được gọi là các services) được xây

dựng độc lập với nhau Các dịch vụ này do giới hạn về nhân lực nên chỉ gọi tới một hệ cơ sở dữ liệu (database) duy nhất là MySQL Trong quá trình vận

hành hệ thống, các dịch vụ này sẽ giao tiếp với nhau thông qua frameworkgRPC được phát triển bởi Google dành cho các ứng dụng được thiết kế theokiến trúc Microservice.

o Client và Server được kết nối với nhau thông qua HTTP Request và dùng

Github đê quản lý mã nguôn

Kết quả sau cùng là một website thương mại điện tử có tính thực tiễn nhằm đáp ứng

các nhu cầu mua sắm của người dùng ngày nay và mang đến một hình thức mua hàng mang

tính hấp dẫn cao đó là đấu giá trực tuyến

Nội dung của khóa luận được chia thành 5 chương chính Các chương sẽ đi từ khái

niệm cơ bản đến quá trình triển khai hệ thống một cách chỉ tiết và cuối cùng là phần kết luận Nhằm tăng tính trực quan cho bản báo cáo, các phần trình bày sẽ có những hình ảnh

cụ thể kèm theo.

Trang 15

CHUONG 1: Mớ đầu

1.1 Dẫn nhập

- Trong cuộc cách mạng công nghiệp lần thứ 4, tiến bộ công nghệ đã tạo ra sự kết

nối giữa thế giới thực, thế giới số và thé giới sinh vật hữu cơ, v.v Những thành phần

điển hình của nền công nghiệp cách mạng lần thứ 4 bao gồm các công nghệ số nhưđiện toán đám mây (Cloud Computing), dữ liệu lớn (Big Data), Mang lưới vạn vật kết

nối Internet (Internet of Thing) và công nghệ thông minh như trí tuệ nhân tạo (AD),

robot, thực tế ảo, in 3D.

- Nó đã thay đổi một cách tích cực các hoạt động hằng ngày của con người, và mua

sắm cũng năm trong đó với sự ra đời và phát trién mạnh mẽ của hình thức mua sắm

trực tuyến trong gần một thập kỷ trở lại đây Theo VnEconomy, trong nhiều năm qua,thương mại điện tử Việt Nam luôn giữ được tốc độ tăng trưởng từ 16-30%, cụ thể trongbài báo ngày 12/09/2022 VnEconomy đã viết:

“Năm 2021, Covid-19 đã ảnh hưởng nghiêm trọng đến hoạt động thương mại và

dịch vụ của Việt Nam nói riêng và toàn cầu nói chung Tăng trưởng âm của một số

ngành dịch vụ chiếm tỷ trọng lớn đã làm giảm mức tăng chung của khu vực dịch vụ

và toàn bộ nền kinh tế.

Trong bối cảnh đó, thương mại điện tử Việt Nam vẫn giữ tốc độ tăng trưởng ôn

định Với mức tăng trưởng 20%, có thê thây, trong suôt 7 năm qua, thương mại điện

tử Việt Nam luôn giữ được toc độ tăng trưởng từ 16-30%.” [1]

- Cũng theo VnEconomy, với 75% người dân sử dụng Internet, Việt Nam có 74,8%

người người dùng internet tham gia mua sam trực tuyên Quần áo, giày dép, mỹ phẩm;

thiết bị đồ dùng gia đình; đồ công nghệ và điện tử; sách, hoa, quà tặng và thực phẩm

là những loại hàng hóa dịch vụ được người tiêu dùng lựa chọn mua sắm trực tuyếnnhiều nhất

1.2 Mục đích

1.2.1 Lý do chọn dé tài

- Các trang thương mại điện tử lớn hiện nay đã trở thành một chuẩn mựctrong lĩnh vực này, từ giao diện người dùng đên nghiệp vụ đêu đã được tôi ưu hóamột cách hiệu quả trong những năm qua Vậy nên dé cung cấp thêm một sự lựa chọncho người dùng nhằm tăng thêm trải nghiệm trong quá trình mua sắm qua hình thứcdau giá, em đã quyết định chọn đề tài này dé nghiên cứu cho khóa luận

- Đây cũng là cơ hội dé em áp dung các kiến thức đã học ở trường như phântích nghiệp vụ, phân tích yêu cầu, mô hình hóahệ thống vào một dự án

1.2.2 Mục tiêu

- Giao diện của hệ thống phải trực quan và thân thiện với người dùng.

- Nghiên cứu tìm hiểu thói quen người dùng thông qua các nền tảng thương

mại điện tử lớn hiện nay từ mua hàng, thanh toán đên quản lý đơn hàng

Trang 16

- Áp dụng được các kiến thức đã tự nghiên cứu và được sự hướng dẫn của

giảng viên hướng dẫn là thầy Nguyễn Trịnh Đông dé đầu ra cuối cùng là một sản

phẩm mang tính thực tiễn và giải quyết được các van dé đã đề ra.

- Sản phẩm phải đáp ứng được các nhu cầu cơ của người dùng bao gồm:

©

©

©

©

Đăng ký tài khoản và xác thực đăng nhập

Tìm kiếm sản phâm thông qua từ khóa, cuộn trang dé hiển thị thêm

Quản lý và theo dõi đơn hàng (đơn hàng đặt mua hoặc đăng bán)

1.2.3 Tính khác biệt/tính mới

- Đấu giá và theo dõi (theo thời gian thực) những người đang cùng tham gia trên sản phẩm đó.

- Hình thức thanh toán trực tuyến qua ví điện tử MoMo (hiện đang là xu

hướng thanh toán hang ngày của nhiều người trẻ).

- Áp dụng kiến trúc Microservice trong quá trình phát trién sản phâm dé dé

dang hon trong viéc bao tri va nang cap hé thong.

- Sử dụng gRPC dé giao tiếp giữa các dich vụ với nhau.

1.3 Kế hoạch làm việc

05/09/2022 — 17/09/2022 mại điện tử lớn hiện nay cả trong và ngoài

Đoàn:

- Nghiên cứu tìm hiéu các công nghệ

đang được áp dụng trên các trang thương

nước.

- Trao đổi nội dung đề tài với giảng

Trang 17

đê cho ra được danh sách các chức năng

của sản phâm.

19/09/2022 — 29/10/2022

Doan:

- Hoàn thành các APIs ở phía

back-end chưa bao gồm thanh toán qua ví điện

tử MoMo và API Gateway

- Tìm hiểu gRPC để giao tiếp giữa

- Tích hop APIs của back-end và tim

hiểu về nghiệp vu của Ví điện tử MoMo

- Trao đổi với giảng viên hướng dẫn

dé có hướng thực hiện các chức năng còn chưa hoàn thiện và chuẩn bị cho báo cáo

giữa kỳ

28/11/2022 — 10/12/2022

Doan:

- Triển khai tích hợp thanh toán qua

MoMo cho cả back-end và front-end

- Tạo Gateway dé tat cả API đều gọi chung đến một endpoint nhất định

- Tạo Dockerfile và

Docker-compose để đưa ứng dụng lên Docker

swarm

12/12/2022 — 22/12/2022

Doan:

- Hoan thành báo cáo khóa luận va

chuân bị các tài liệu liên quan cho quá trình

phản biện và bảo vệ khóa luận

Trang 18

CHƯƠNG 2: Kiến thức cơ bản

Chương này Khóa luận trình bày các kiến thức tổng quát về các nghiệp vụliên quan đến thương mại điện tử, đấu giá, đấu giá trực tuyến và các dịch vụ vận

chuyên dựa trên cơ sở pháp luật Việt Nam Bên cạnh đó, chương này cũng trình bày các kiến thức về kiến trúc phần mềm vi dich vụ (Microservices), kiến thức về ngôn

ngữ lập trình liên quan đến phần Backend (ngôn ngữ Golang), Frontend (sử dụngReact) và cơ sở dữ liệu cũng như các kiến thức liên quan.

2.1 Hệ thống cơ sở luật

2.1.1: Luật Thương mại

Các hoạt động thương mại tại Việt Nam phải tuân thủ quy định pháp luật

Việt Nam về thương mại Khóa luận tham khảo Luật Thương Mại Việt Nam hiện anh dé làm cơ sở cho các nghiệp vụ giao dịch và mua ban hàng hóa trên hệ thống

mua bán hàng Do giới hạn phạm vi, Khóa luận chỉ tìm hiểu và tóm tắt một số thông

tin của Luật để xác định quyên và nghĩa vụ của các bên tham gia vào hoạt động mua

bán hàng hóa trên hệ thống như xác định nghĩa vụ của bên bán hàng, bên mua hàng

và các hoạt động liên quan Chương | của Luật quy định về pham vi, đối tượng,hình thức của hoạt động thương mại Chương 2, trình bày chỉ tiết về hoạt động mua

bán hàng hóa Chương 3, trình bày các quy định về cung ứng hàng hóa Mục 2 của Chương 4, quy định về quảng cáo thương mại Chương 5, trình bày về các hoạt động trung gian trong thương mại, trong đó Mục 3 có các điều luật về ủy thác mua bán

hàng hóa, v.v Tóm lại, Khóa luận đề cập đến Luật Thương mại nhằm bồ sung kiến

thức ngoài công nghệ thông tin để phát triển dự án phù hợp với môi trường pháp

luật Việt Nam

2.1.2: Luật Đấu giá Cách tiếp cận bài toán trong Khóa luận là hoạt động mua bán hàng hóa dựa trên phương pháp dau giá Do đó, một phần kiến thức quan trọng không thể thiếu

khi phát trién ứng dụng liên quan đến dau giá là dựa trên cơ sở của Luật Đấu giá

Luật này được Quốc hội ban hành năm 2016 Khóa luận tham khảo Luật đấu giá

mới nhất số 01/2016/QH14 Luật có 8 chương, 80 điều Chương 3, quy định vềtrình tự và thủ tích đấu giá Chương 5 quy định về thù lao dịch vụ đâu giá, chỉ phíđấu giá Chương 6 quy định về việc hủy kết quả đấu giá, bồi thường thiệt hại, v.v.Khóa luận chi tập trung tìm hiểu các kiến thức liên quan đến dau giá hang hóa Trên

cơ sở tham khảo các điều khoản trong Luật, các hoạt động nghiệp vụ được trình bày trong Khóa luận cần tuân theo các quy định của pháp luật.

2.1.3: Luật Giao dịch Điện tử

Trang 19

tập trung vào những kiến thức liên quan đến giao dịch hàng hóa trên môi trườngđiện tử.

Trên cơ sở tham khảo ba luật trên, các nghiệp vụ trình bày trong Khóa luận

sẽ có cách đánh giá và cơ sở thực hiện trên thực tê

2.2 Kiến thức công nghệ

2.2.1 Kiến trúc Microservice Microservice là một kiến trúc trong kỹ thuật lập trình ma trong đó các các

dịch vụ (hay còn gọi là các services) được phân chia nhỏ ra thành nhiều phần Cácthành phần này được tách bạch ra một cách riêng biệt về mặt đữ liệu (database), cólogic riêng và có thé hoạt động độc lập với nhau

Data Base Data Base Data Base Data Base Data Base

Hình 2.1: So sánh giữa kiên trúc Monolithic và Microservice

Các đặc điêm của kiên trúc Microservice:

- _ Hoạt động độc lập, linh hoạt, có tính | - Rời rac, khó kiểm soát thống nhất: Trong

chuyên biệt cao: Do không bị ràng buộc bởi | trường hợp dự án quá lớn, số lượng các

những yêu cầu chung, nên mỗi dịch vu nhỏ | dịch vụ nhiều, chia nhỏ rời rạc, thiếu tính

có thê tự do lựa chọn công nghệ, nền tảng | liên kết Cùng với cách thức liên kết thông

phù hợp tin giữa qua môi trường mạng, việc trao đôi

giữa các dịch vụ càng trở nên khó khăn.Đôi khi, các lỗi kết nối cũng có thé xảy ra

khiến việc trao đối này bị gián đoạn.

Trang 20

- Nâng cao khả năng xử lý lỗi: Với mô

hình này, một dịch vụ bắt kỳ nào gặp lỗi sẽ

không gây ra ảnh hưởng đối với những bộ

phận còn lại Việc khắc phục lỗi trên quy

mô hẹp cũng sẽ được tiến hành một cách dễ

dàng

- Thuan tiện trong nâng cấp, mở rộng:

Tương tự như trường hợp xử lý lỗi, việc

nâng cấp, bảo trì các dịch vụ hoàn toàn độc

lập sẽ không làm gián đoạn quá trình vận

hành của cả phần mềm Nhờ vậy, những

phiên bản mới có thé được cập nhật thường

xuyên

- Don giản hóa trong quản lý và kiểm thử:

Với từng dịch vụ nhỏ, các bước quản lý,

tính toán và kiểm soát, xử lý lỗi sẽ trở nên

đơn giản và nhanh chóng hơn so với cả

phần mềm.

- Tính chính xác và bảo mật của dữ liệu:

Việc liên tục di chuyển qua các database khác nhau sẽ khiến dữ liệu bị đảo lộn,

không còn nguyên vẹn, thậm chí phải đối

mặt với nguy cơ an ninh, bị đánh cắp.

- Gây khó khăn trong quá trình mở rộng,

phát triển: Khi phần mềm được phát triển với quy mô lớn hơn, số lượng dịch vụ cũng trở nên nhiều hơn Các lập trình viên không

chi mat thời gian tính toán chính xác kíchthước của từng dịch vụ, mà còn gặp khó

khăn khi sử dụng những công cụ hỗ trợ tự

động mã nguồn mở bên ngoài khác.

2.2.2 Ngôn ngữ lập trình GoNgôn ngữ lập trình Go (hay còn được biết đến với cái tên Golang) là một

ngôn ngữ lập trình được thiết kế dựa trên tư duy lập trình hệ thống Go được phát triển bởi Robert Griesemer, Rob Pike và Ken Thompson tại Google vào năm 2007 Điểm mạnh của ngôn ngữ Go là bộ thu gom rác và hỗ trợ lập trình đồng thời (tương

tự như đa luồng — multithreading) Go là một ngôn ngữ biên dịch như C/C++, Java,

Pascal Go được giới thiệu vào năm 2009 và được sử dụng hầu hết trong các sản

phẩm của Google.

Một số đặc điểm

Trang 21

o_ Ngôn ngữ đơn giản, ngắn gọn

Tuy nhiên chính vì muốn ngôn ngữ này trở nên cực kỳ đơn giản mà các nhà

phát triên đã loại bỏ một sô tính năng có trong các ngôn ngữ khác như:

o_ Không hỗ trợ thừa kế o_ Không hỗ trợ quá tải toán tử hoặc ghi dé phương thức

o Không hỗ trợ thao tác trên con trỏ (vì lý do bảo mật)

o_ Không hỗ trợ kiểu Generic (giống như template trong C++)

Các ngôn ngữ như Python hay Java là các ngôn ngữ sinh ra vào những thậpniên 90 thời kỳ của môi trường đơn luồng (single threaded environment) nhưng haunhư các ngôn ngữ này đều hỗ trợ tinh đa luồng (multi-threading) Nhưng van dé thật

sự nằm ở việc thực thi đồng thời (concurrent execution), khóa luồng locking), race conditions và deadlocks Những vấn dé này làm cho VIỆC tao ra các ứng dụng đa luồng trên các ngôn ngữ này cực kỳ khó khăn Do đó, nếu chúng ta

(threading-muốn giao tiếp giữa các luồng với nhau bằng những ngôn ngữ lập trình này là rấtkhó

Ngôn ngữ Go được ra mắt vào năm 2009 khi mà các vi xử lý đa nhân

(multi-core processors) đã có Đó là nguyên nhân tại sao ngôn ngữ nay được thiết kế và

phát triển với lưu ý về việc thực thi đồng thời (concurrency) và goroutines trong Gođược sinh ra chính là để phục vụ cho mục đích đó

Goroutine: là một cơ chế ngăn xếp phân khúc có thể mở rộng (growablesegmented stacks) trong Go Điều này có nghĩa là nó sẽ sử dụng nhiều bộ nhớ RAMhơn nếu điều đó là cần thiết Một lợi thế lớn của goroutines là có thời gian khởi độngnhanh hơn là threads Ngoài ra goroutines còn có các kênh (channel) và giữa các

kênh này có thể giao tiếp với nhau Bản thân goroutines còn cung cấp thêm một cơ chế là khóa mutex (mutex locking) dé dam bao viéc doc va ghi vào một cấu trúc dữ liệu hay một biến chung nhằm tránh xảy ra xung đột trong quá trình vận hành

chương trình.

2.2.3 Hệ cơ sở dữ liệu MySQLĐầu tiên chúng ta sẽ nói về SQL, SQL là viết tắt của Structured Query Language hay còn gọi là ngôn ngữ truy vấn có cấu trúc SQL là một loại ngôn ngữmáy tính phô biến dé tạo, sửa, và lấy dữ liệu từ một hệ quản trị cơ sở dữ liệu quan

hệ Ngôn ngữ này phát triển vượt xa so với mục đích ban dau là dé phục vụ các hệquản trị cơ sở dữ liệu đối tượng - quan hệ

Tiếp theo là khái niệm về hệ quản trị cơ sở dữ liệu (tiếng Anh: DatabaseManagement System, việt tat là DBMS): là một chương trình máy tính (một bộ cácchương trình) được thiết kế dé quản lý một cơ sở dữ liệu, một tập hợp dữ liệu lớn

có cấu trúc, phục vụ cho các yêu cau về dữ liệu của một số lượng lớn người sử dụng

Trang 22

Và MySQL chính là một trong những hệ quản trị cơ sở dữ liệu tự do nguồn

mở phô biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình

phát triển ứng dụng Lý do bởi vì MySQL là hệ quản trị cơ sở dữ liệu có tốc độ cao, 6n định, dé sử dụng và có thể hoạt động trên nhiều hệ điều hành với một hệ thống

các hàm tiện ích rât mạnh Với tốc độ và tính bảo mật cao, MySQL trong thời điểm

hiện tại vẫn rất phù hợp cho các ứng dụng có truy cập CSDL trên internet

2.2.4 Sử dụng ReactJS trong quá trình phát triển giao diện người dùng

ReactJS là một trong các thư viện JavaScript để xây dựng các thành phan giao điện người dùng (UI) Nó giúp phân chia các UI phức tạp thành nhiều thành

phần nhỏ (được gọi là component) ReactJS được dùng dé xây dựng các ứng dụng (SPA) Một trong những điểm hap dẫn của ReactJS là nó không chỉ được xây dựng bên phía clients mà còn sử dụng được bên phía server Đặc điểm:

o Tài liệu hướng dẫn của Facebook rất chỉ tiết nên người mới bắt đầu rất dễ

học, nhờ thiết kế đơn giản, sử dụng JSX (một cú pháp giống như HTML chophép nhúng mã Javascript) đề tạo khuôn mẫu

o Tốc độ ứng dụng cực kì cao Tất cả là nhờ kỹ thuật DOM ảo của React và tối

ưu hóa rendering

o Ngoài ra, còn một ưu điều cực lớn nữa, đó là nếu ta biết về React thì sẽ dễ

dàng học thêm React Native để phát triển ứng dụng di động trên đa nền tang.2.3 Giải pháp thanh toán qua ví điện tử MoMo

2.3.1 Giới thiệu về ví MoMo

MoMo là một nền tảng ví điện tử do Công ty Cổ phần Dịch vụ Di động Trực

tuyến (M._ Service) phát triên cho phép người dùng thực hiện các thanh toán, giao

dịch trên các thiết bị di động.

Số tiền trong Momo sẽ được bảo chứng bởi ngân hàng Vietcombank Ví điện

tử này đã cán moc 20 triệu người dùng vào tháng 9 năm 2020 đã chứng minh sự uytín của ví điện tử này trong lĩnh vực ví điện tử

Vi MoMo ra đời không chỉ ở mức độ giải quyết các thanh toán trực tuyến

như thông thường Bên cạnh đó nó còn cung cap rat nhiêu tính năng thanh toán khác

rât tiện lợi cho người dùng như:

o Thanh toán các hóa đơn hàng ngày

o Nạp thẻ điện thoại

o Thanh toán trực tuyến

Trang 23

kỹ thuật số Tính đến năm 2022, ví điện tử MoMo có hơn 31 triệu người dùng sử

dụng.

2.3.2 Ví MoMo so với các ví điện tử khác hiện nay

ZaloPay:

o Ví điện tử ZaloPay là ví điện tử duy nhất tại Việt Nam tích hợp chuyền

tiền trong Zalo chat, tức là khi bạn đang nhắn tin với một ai đó trên ứng dụng Zalo, bạn có thé chuyền tiền ngay trên đó mà không cần mở

ZaloPay.

o Với tinh năng này hiện nay vi MoMo đã có tích hợp chuyên tiền ngay

trong phần trò chuyện của ứng dụng cho phép người dùng dễ dàng

thực hiện chuyền tiền đến bất kỳ cá nhân nào mà không cần phải phân

biệt ứng dụng nao dé chat và dé chuyền tiền.

ShopeePay:

o Ví điện tử ShopeePay trước đây được biết đến với tên gọi là ví AirPay.

Đây là một trong những ví điện tử số 1 Việt Nam bởi tính ứng dụng rất cao Bằng việc liên kết thanh toán trực tiếp với Shopee, ví điện tử

ShopeePay có một lượng người dùng đông đảo Chính vì vậy, vào

những đọt sale lớn hoặc các dịp khuyến mãi đặc biệt, ShopeePay

thường xuyên quá tải hệ thông, khiến cho việc thanh toán gặp đôi chút khó khăn Và việc tích hợp ví ShopeePay vào một siêu ứng dụng mua

sắm lớn như Shopee cũng sẽ làm cho người dùng khó khăn trong việc làm quen khi vừa chuyền sang sử dụng hình thức thanh toán này.

o_ Với ví MoMo người dùng sẽ chỉ cần biết đối tượng cần thanh toán có

sử dụng hình thức thanh toán qua ví điện tử MoMo hay không bởi

MoMo không được tích hợp vào bat kỳ ứng dụng nào khác mà hoạt động một cách độc lập Chính điều này sẽ giúp người dùng dễ dàng hơn trong việc thanh toán ngay cả khi sử dụng lần đầu.

Trang 24

2.3.3 Áp dụng ví MoMo vào đề tài

Sau quá trình tìm hiểu và nghiên cứu thị trường ví điện tử ở Việt Nam, em

đã quyết định chọn ví MoMo là bên thứ ba ho trợ thanh toán cho đê tai của mình

bởi những ưu điêm đã nêu ở trên.

MÔ HÌNH THANH TOÁN ĐA DẠNG

Cổng Thanh Toán MoMo (s) Tự Động Hóa Thanh Toán © SDK

ALL-IN-ONE ALL-IN-ONE ALL-IN-ONE

ang phương thức thanh toán trên nhiều kênh thanh ïiải pháp thanh toán nhanh cho khách hàng thường Thêm nhiều lợi ích khi tích hợp qua SDK tạo riêng bởi

c nhau - bắt đầu chỉ với một quy trinh tích hợp uyên của bạn - không cần xác thực lại với những giao MoMo.

gian cling MoMo dịch tiếp theo.

1 MOD @: Thanh Toan Nhanh Tai Quay BH QR Code Tĩnh

ALL-IN-ONE oT & AloT = Non-integation

Thanh toán trực tiếp khi nhận hàng với MoMo Trải nghiệm thanh toán tại quầy nhanh hơn bao giờ hết Giải pháp thanh toán tiết kiệm chỉ phí và nguồn lực khi

bang chính QR code cá nhân tích hợp

(Gumus MoMo Paybox Link Thanh Toán 54/4 Mua Trước Trả Sau

ea AY;

loT & AloT Non-integation $ All-in-one

Thiết bị thanh toán tại quầy với âm thanh xác nhận khi Đa dạng phương thức thanh toán chỉ với 1 đường link Linh hoạt giải pháp thanh toán giúp tăng doanh thu cho

thanh toán đối tác

Hình 2.2: Các mô hình thanh toán qua ví MoMo

MoMo là một nhà cung cấp giải pháp thanh toán hang đầu trong ngành bởi

do sự đa dạng trong các mô hình mà họ đưa ra Và Thanh toán thông thường qua

QR Code là một trong mô hình được rât nhiêu bên đôi tác của MoMo chọn sử dụng với các ưu điểm sau:

o_ Sự tiện lợi và dễ dàng trong quá trình sử dụng phía khách hàng

o Các quy trình tích hợp công nghệ này ở phía các doanh nghiệp cũng

dễ dàng hơn do các tài liệu hướng dẫn tích hợp mà MoMo cung cap

là rất chỉ tiết và đầy đủ

o_ Vẫn đảm bảo được tính bảo mật, an toàn rất cao cho cả khách hàng

lẫn doanh nghiệp do áp dụng những công nghệ bảo mật tiên tiến nhất hiện nay Bên cạnh đó hệ thông bảo mật của MoMo cũng đã được đạt chứng nhận bao mật toàn cầu PCI DSS (Payment Card Industry Data Security Standard), cấp độ cao nhất của Service Provider dành cho

Nhà cung cấp dịch vụ loại 1 nên chúng ta hoàn toàn có thể yên tâm

mà ứng dụng mô hình này vào doanh nghiệp hay những dự án của

mình

Trang 25

KHÁCH HÀNG

1 Thanh Toán

Khách hàng tiến hành thanh

toán bang cách chọn phương.

thức thanh toán của MoMo, với

tài khoản đã liên kết với MoMo.

toán qua màn hình thanh toán

an toàn của ứng dụng MoMo.

ỐI T,

2 Yêu cầu phương thức

thanh toán

Hệ thống đối tác khởi tạo đơn

hàng với thông tin đơn hàng

CỔNG THANH TOÁN MOMO iG DỤNG MOMO |

3 Trả về phương thức thanh toán

Sau khi xác thực, MoMo trả về phương thức thanh toán được yêu cầu.

—>._ cùng mã đơn hàng (orderld) duy ——>

nhất dé yêu cầu phương thức thanh toán phù hợp nhất.

Nha phương thức thanh 4.1 Điều hướng tới ứng

dụng MoMo

waa wa age tories am, Thanh oán bảng deepink hoặc

hành: deeplinkMiniApp được tra vê

cho ứng dụng trên di động của

r3 đối tác.

Đối tác điều hướng người dùng =~)

ý tới ứng dụng MoMo để xác nhận

liên kết (và thanh toán) Trường

4.2 Điều hướng tới MoMo hợp ứng dụng chưa có trên thiết web bị di động của người dùng, đối

tác sẽ điều hướng người dùng

Thanh toán bang payUrl tới trang app store tải ứng dụng

(phương thức mặc định) được MoMo.

trả về khí người dùng thực hiện trên website đối tac

Đối tác điều hướng người dùng

tới website của MoMo thông qua payUrl này Trang web này

tu động phát hiện nền tảng mà trang web đối tác đang chạy đế

tiến hành cho phù hợp.

4.3 Tạo mã QR 4.2.2 MoMo web trên thiết 4.2.1 MoMo web trên di

bị không phải di động động

Thanh toán bang qrCodeUrl a ¬

được trả về khi đối tác hoạt động Nếu người dùng tương tác với học oan ship tu ae

trên hệ thống không hỗ trợ trình Website desktop (thường là PC, tới ứng dụng MoMo.

duyệt internet, vi thé không thé màn hình thứ 2 của POS 2 màn

sử dụng giao diện web tạo sẵn hình, thiết bị tai Kiosk) hoặc may Trường hợp MoMo chưa có trên

`> cho người dùng do MoMo cung tính bang hay smartTV, payUrl thiết bị di động của người ding,

cấp sẽ điều hướng người ding tới đối tác sẽ điều hướng người

bề, wWwWwŒ cổng thanh toán của MoMo, dùng tới trang app store tải ứng

Nhà X ở hiển thị mã QR trên giao diện dụng MoMo.

trên giao diện người dùng của người dùng được xây dựng từ

đối tác (được chấp thuận bởi tước :

MoMo).

<

<

7 Xử lý thanh toán

MoMo xử lý thanh toán, sau đó

trả về kết quá thanh toán giao.

dich cho đổi tác qua ipnUrl,

8 Hiển thị kết quả giao dịch

Đối tác nhận kết quả thanh toán giao dịch, sau đó hiển thị kết quá cho người dùng biết.

đồng thời điều hướng người dùng về lại trang web/ứng dụng của đối tác qua redirectUrl nếu người dùng đang trên thiết bị di

động.

Hình 2.3: Sơ đồ mô hình thanh toán qua QR Code

Trang 26

CHƯƠNG 3: Phân tích thiết kế hệ thống

Chương này Khóa luận trình bày nội dung phân tích thiết kế hệ thống Các thông tin về hệ thống cần thiết kế được thé hiện qua các sơ dé và các hình vẽ Với phạm vi va

giới hạn thời gian của Khóa luận, Chương này trình bày những thành phần cơ bản và các

bước tiến hành đề phân tích hệ thống Các nội dung chính được trình bày trong các mục

của Chương.

#

3.1 Bang phân rã chức nang

Nhom tinh nang

Dang ky, xac thuc dang

nhập người dùng

Tên chức năng

Đăng ký tài khoản người dùng

Ghi chú

Người dùng đăng ký tài

khoản cho lân đâu sử

Đăng xuất tài khoản

Người dùng đăng xuất

khỏi hệ thông và xóa phiên làm việc

Quản lý thông tin cá

diện ngày sinh, giới tính,

tên hién thị và tên shop.

Thay đổi mật khâu

Người dùng bắt buộc phải nhập đúng mật khâu

cũ mới được phép thay

Trang 27

Quản lý phiên dau giá

Tạo mới phiên đâu giá

Phiên đấu giá sẽ được

tạo dựa trên các sản

phẩm hiện có và sẽ chọn

ra một hình đại diện

chính cho phiên đấu giá

đó Ngoài ra thời gian

bắt đầu của phiên dau giá

đó không được nhỏ hơn

ngày hiện tại

Cập nhật phiên dau giá

Phiên đấu giá sẽ không

thê bị chỉnh sửa nêu như đang có người tham gia

Xóa phiên đấu giá

Phiên đấu giá sẽ không

thê xóa khi có người

đang tham gia

đang thanh toán

Xem chỉ tiết đơn hàng

Huỷ đơn hàng

Nếu khách hàng huỷ đơn

hàng hoặc bị huỷ do phía

Trang 28

toán trả trước qua ví

MoMo

- Sau khi xác nhận hình thức thanh toán xong khách mua hàng sẽ cập nhật trang thai đơn hang

đã được giao đến hay

chưa

Xem tất cả đơn hàng đã được Có thê lọc theo các trạng

18 dat giao thái của don hang

se ye | Xem chi tiết don hang của

19 Quản lý hóa don ban khách hàng đã đặt

22 Tìm kiếm theo tên sản phâm

23 Chọn xem thông tin chỉ tiết của

ột món hà

Đấu giá và thanh toán [oe on ne

Điều kiện có thể tham

gia dau giá: khi sô dư

sak ee nh Đà z,|trong ví lớn hơn hoặc

24 Tham gia đầu giá món hàng bât bằng giá trị của món

tín phải lớn hơn hoặc băng 80 trên tông 100

Trang 29

3.2 Đặc tả Use case

3.2.1 Danh sách các Use case hệ thống

# Ma Use case Mô tả

1 | UC_REGISTER

2 | UC_LOGIN

3 | UC_CHANGE_PW Người dùng thay đổi mật khẩu

4 | UC_MNG_PROFILE Người dùng quản lý thông tin cá nhân

5 | UC_MNG_ADDRESS Người dùng quản lý thông tin dia chi giao hang

6 |UC MNG PROS Người dùng quản lý thông tin các mặt hàng

7 | UC_MNG_AUCT Người dùng quản ly thông tin các phiên đấu giá

8 | UC_MNG_PMT_PROCESS Quy trình quan lý hóa don mua hàng

9 | UC_MNG_SALE PROCESS Quy trinh quan ly cac don dat hang

10 | UC_BID_PROCESS Quy trình tham gia đấu giá một sản pham

3.2.2 Đặc tả các Use case

3.2.2.1 Người dùng đăng ký tài khoản

hành đăng ký tai khoản trong lân dau sử dụng hệ thông

Luông hoạt động

Luông ngoại lệ

Trang 30

Lay được thông tin đăng ký mà người dùng cung cấp dé tạo

tài khoản

Yêu cầu phi tính "0100 Thong báo tao tài khoản thành công hoặc thất bại

- Business Rules:

BR Code Mô tả

BRI Mật khẩu phải có ít nhất 6 ký tự và không có ký tự “ ”

Email phải là email chưa từng được sử dụng dé đăng ký trên

BR2 ^ ak

hệ thông

3.2.2.2 Người dùng đăng nhập vào hệ thống

Mã Use case UC_LOGIN

Tén Người dùng đăng nhập vào hệ thống

Người dùng cung cấp email và mật khâu đề hệ thống xác thực

Mô tả wae 5 Ậ

va cap quyên truy cập

Điều kiện tiên quyết Tài khoản phải được đăng ký trước đó

Sau khi xác thực thành công hệ thống sẽ cấp phiên hoạt động Điều kiện theo sau Te - Pog SẠC Là ›

: cho người dùng và di chuyên đên màn hình trang chủ

Luông hoạt động

Luông ngoại lệ

Yêu cầu tính năng Lay được thông tin đăng nhập của người dùng

Yêu cầu phi tính năng Thông báo xác thực tài khoản thành công hoặc thất bại

- Business Rules:

Trang 31

3.2.2.3 Người dùng thay déi mật khẩu

Yéu cau tính năng

Yêu cầu phi tính năng

BR4 Mật khâu mới không được trùng với mật khẩu cũ

BRS Phải nhập chính xác mật khâu hiện tai

3.2.2.4 Người dùng quản lý thông tin cá nhân

Người dùng quan lý thông tin cá nhân

Cho phép người dùng cập nhật thông tin cá nhân Và xem hồ

Sơ của người khác

Người dùng chỉ có thê thay đổi thông tin hồ sơ của chính tài

khoản mình sở hữu

Trang 32

Yéu cau tính năng

)4 1102 1100)/17.111 071.11 Thông báo đã lưu hồ sơ thành công hoặc thất bại

- Business Rules:

BR Code Mô tả

BR6 Ngày sinh không được lớn hon ngay hiện tai

BR7 Tên shop không được đề rỗng

- Sơ đồ luồng hoạt động của UC_MNG_PROFILE:

Xem thông tin tài

khoản của người

dùng khác

Hình 3.1: Sơ đồ mô luồng quản lý thông tin cá nhân

3.2.2.5 Người dùng quản lý thông tin địa chỉ giao hàng

Ma Use case UC_MNG_ADDRESS

Tén Người dùng quản lý thông tin dia chi giao hang

Người dùng cân có it nhat một dia chỉ mặc định dé có thé mua

Mô tả hàng

Điều kiện tiên quyết Người dùng phải đăng nhập vào hệ thống

Điều kiện theo sau Không thể xóa địa chỉ mặc định

Trang 33

Yéu cau tính năng

Yéu cau phi tính năng

- Sơ đồ luồng hoạt động của UC_MNG_ADDRESS:

Quản lý địa chỉ

giao hàng

T_ADDRESSES

Xác thực Xem tất cả địa chỉ i Khoản dang, giao hang

Xoá thông tin địa chỉ

T_ADDRESSES

Hình 3.2: So đồ luồng quản lý thông tin địa chỉ giao hàng

3.2.2.6 Người dùng quản lý thông tin các mặt hàng

Người dùng sẽ thêm/sửa/xóa các mặt hàng muốn đăng bán Người dùng cần đăng nhập vào hệ thống

Mỗi mặt hàng sẽ phải có 2 loại giá đi kèm theo: giá niêm yết

tôi thiêu và 1 loại thứ 2 là giá tôi đa

Trang 34

Luông ngoại lệ

'Yêu câu tính năng

4/1 07)100)17./1.7 7.1 Thông báo đã thao tác thành công hoặc thất bại

- Business Rules:

BR Code Mô tả

BR10 Giá tối đa không được nhỏ hơn giá khởi điểm BRII Mã đơn hàng phải là duy nhất

BRI2 Mô tả chỉ tiết không được dé rỗng

- Sơ đồ luồng hoạt động của UC_MNG_PROS:

› Xoá mặt hàng

khỏi kho

T_PRODUCTS

3.2.2.7 Người dùng quản lý thông tin các phiên đấu giá

Hình 3.3: Sơ đồ luồng quan lý thông tin các mặt hang

Mã Use case UC_MNG_AUCT

Tén Người dùng quản ly thông tin các phiên đấu giá

Từ những sản phâm đã được thêm trước đó người dùng sẽ mở

Trang 35

- Phải có ít nhất một sản phẩm trong kho

- Phiên đấu giá phải có thời gian bắt đầu sau thời gian hiện tại

Điêu kiện tiên quyêt va thời gian kết thúc không được sớm hơn thời gian bat dau

- Chỉ có thé chỉnh sửa hoặc xóa phiên đấu giá sau trước khi có

người tham gia hoặc sau khi đã thanh toán xong sản phâm

Luông hoạt động

Luông ngoại lệ

'Yêu câu tính năng

)4)10211001/17./11.0.71.17 Thong báo đã thao tác thành công hoặc thất bại

- Business Rules:

BR Code Mo ta

BRI3 Bước giá không được <= 0 hoặc >= giá tối đa

Thời gian bắt đầu không được nhỏ hơn thời gian hiện tại và

BRI14 - a =

lớn hơn thoi gian kêt thúc.

BRI5 Không được thay đổi thông tin hoặc xóa phiên đấu giá khi có

người đang tham gia

- Sơ đồ luồng hoạt động của UC_MNG_AUCT:

Xác thực

Xem tất cả tài khoản đang

phiên đấu giá

Quản lý thông tin (Cập nhật thông tin

phiên đấu giá phiên đấu giá

Xác thực

tài khoản đang, thao tác

` |Xoá phiên đấu giá

Phiên đấu giá

đã có người tham gia

Trang 36

Hình 3.4: Sơ đồ luồng quản ly thông tin các phiên dau giá

3.2.2.8 Quy trình quản lý hóa đơn mua hàng

Ma Use case UC_MNG_PMT_PROCESS

Tén Quy trình quan lý hóa đơn mua hàng

Theo dõi tất cả đơn hàng đã đặt mua và cập nhật trạng thái đơn

Mo ta hang đã nhận hàng hoặc đã thanh toán

Sau khi đấu giá thành công đơn hàng sẽ được tạo một cách tự

động trong mục Thanh toán và Sô dư

Nếu không thực hiện thanh toán đơn hàng sẽ bị trừ điểm uy tín

Điều kiện th ì CÔ ẤT ez GÁ eu kign theo sau cho lân tham gia dau giá tiép theo

Luông hoạt động

Luông ngoại lệ

'Yêu câu tính năng

4-02 1100)/17./11 071/121 Thông báo đã thao tác thành công hoặc thất bại

Trang 37

- Sơ đồ luồng hoạt động của UC_MNG_PMT_PROCESS:

Quản lý hoá đơn mua hàng

Hình 3.5: Sơ đồ luồng quản lý hóa đơn mua hàng

3.2.2.9 Quy trình quản lý các đơn đặt hàng

Mã Use case

Tên

Mô tả

Điều kiện tiên quyết

Điều kiện theo sau

Luông hoạt động

Luông ngoại lệ

Yêu cầu phi tính năng

UC_MNG_SALE_PROCESS Quy trình quản lý các đơn đặt hàng

Theo dõi tất cả đơn đặt hàng mà khách đã đặt và cập nhật trạng

thái giao hàng và hoàn tât đơn hàng

Đơn hàng mới sẽ tự động được cập nhật trong mục Thống kê

Đơn hàng

Chủ cửa hàng cân xác nhận quá trình giao hang dé tránh việc

trì hoãn trong quá trình diễn ra

Trường hợp khách tự huỷ đơn hàng thì đơn hàng sẽ tự động chuyên sau mục Don huỷ

Thông báo đã thao tác thành công hoặc thất bại

Trang 38

- Sơ đồ luồng hoạt động của UC_MNG_SALE_PROCESS:

Quản lý các đơn đặt hàng

Xác thực tài khoản đang, thao tác

Xem tất cả đơn hàng

Hiển thị kết quả

ừ chối

O

An nhẬi Xác thực Cập nhật trạng › -

| thái đơn đặt hàng vài Khoan dang

Hình 3.6: Sơ đồ luồng quản lý các đơn đặt hàng

3.2.2.10 Quy trình tham gia đấu giá một sản phẩm

Ma Use case

Tén

Điều kiện tiên quyết

Điều kiện theo sau

Luôồng hoạt động

Luông ngoại lệ

'Yêu câu tính năng

UC_BID_PROCESS

Quy trình tham gia dau giá một sản pham

Sau khi nhấn vào xem sản phẩm, người dùng có thể tham gia

dau giá và theo dõi những ai đang tham gia trên cùng sản phâm đó

- Người dùng phải có điểm uy tín >= 80 và số du trong ví phải

lớn hơn hoặc băng giá tri sản pham đó

- Nếu người dùng đang có mức tiền cao nhất sẽ tạm thời không

thê thao tác dau gia cho đên khi có người khác trả mức giá cao hơn

Sau khi đấu giá thành công người dùng bắt buộc phải thanh toán hóa đơn sản phẩm nếu không sẽ bị trừ điểm uy tín

Trang 39

Business Rules:

BR Code Mô tả

BRI8 Số dư trong ví phải >= giá trị tối thiêu của sản phâm mới có

thê tiên hành tham gia đâu giá

BRI9 Điểm uy tín dưới 80 sẽ không được tham gia đấu giá

Người tham gia đấu giá không được tiếp tục đặt tiền cho tới

BR20 ” Meh An Axper en aid

khi có người khác đặt mức gia cao hon

BR2I Người tham gia dau giá thắng cuộc phải thanh toán đơn hàng

sau đó nếu không sẽ bị trừ 5 điểm uy tín

- Sơ đồ luồng hoạt động của UC_BID_PROCESS:

Chọn số tiền

muốn đấu giá tài khoản đang Tit chối Thông báo.

Kiểm tra điểm uy tín

Lưu thông tin

Tạo hoá đơn thanh toán

Buring

Kiểm tra nếu người dùng

là người thang cuộc

Hình 3.7: Sơ đồ luồng quy trình tham gia đấu giá một sản phẩm

Sai

Trang 40

3.3 Sơ đồ phân rã tính năng (FDD)

HỆ THỐNG.

DANG KY VA QUAN LY THONG TIN QUAN LY THONG TIN QUAN LY THONG TIN QUAN LY DON QUAN LY DON

ĐẤU GIÁ THANH TOÁN XÁC THỰC ĐĂNG NHẬP CÁ NHÂN ‘IA CHỈ GIAO HANG ‘SAN PHAM MUA HANG ĐẶT HANG

- ^ ¬ : ẤT CẢ cin pur ẤT CẢ À XEM TẤT CA XEM TẤT CA THANH TOÁN BẰNG.

ĐĂNG KÝ XEM THONG TIN XEM TẤT CA BIA CHỈ XEM TAT CA SAN PHAM XEM TẤT CA DON HANG DON ĐẶT HANG >) puién ku cud HINH THUC COD

a CAP NHẬT HOẶC XOA CAP NHẬT HOẶC XOÁ CAP NHẬT TRANG THÁI CAP NHẬT TRANG THÁI CAP NHẬT HOẶC XOÁ THANH TOÁN QUA

ĐĂNG NHẬP CẬP NHẬT THONG TIN ĐỊA CHÍ SAN PHẨM BON HÀNG ON ĐẶT HÀNG [| PHIEN ẤU GIÁ VÍ MOMO.

THAY ĐỔI MẬT KHẨU. ‘THEO DOI CHI TIẾT

>) THAM GIA ĐẤU GIÁ

Hình 3.§: Sơ đồ phân rã tính năng (FDD)

3.4 Sơ đồ ca sử dung (Use case diagram)

3.4.1 Use case tông quát

Đăng nhập

Đấu giá và thanh toán

cá nhân Quản lý thông tin

Người dùng

Quản lý các đơn đặt hàng/mua hàng

Quản lý thông tin địa chỉ giao hàng

Quản lý các phiên đấu giá

Hình 3.9: Sơ đồ use case tổng quát

Quản lý các mặt hàng

Ngày đăng: 23/10/2024, 10:14

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

TÀI LIỆU LIÊN QUAN