Đồ án cơ sở 3: Xây dựng ứng dụng và so sánh sản phẩm

Đồ án cơ sở 3 với đề tài: "Xây dựng ứng dụng và so sánh sản phẩm" của sinh viên trường Đại học Công nghệ thông tin và truyền thông Việt Hàn, Đại học Đà Nẵng giúp bạn tham khảo, ôn tập và hoàn thành tốt bài tập của mình đạt kết quả cao. Mời bạn đọc đón xem!

1
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
VIỆT - HÀN

KHOA KHOA HỌC MÁY TÍNH
ĐỒ ÁN CHUYÊN NGÀNH 2
ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG
SO SÁNH SẢN PHẨM
Sinh viên thực hiện: NGUYỄN THANH CƯỜNG
NGUYỄN HẢI DƯƠNG
NGUYỄN KHẮC THỊNH
Lớp: 20SE6
20SE4
20SE5
Giảng viên hướng dẫn: PGS.TS. HUỲNH CÔNG PHÁP
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
VIỆT - HÀN

KHOA KHOA HỌC MÁY TÍNH
ĐỒ ÁN CƠ SỞ 3
ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG
SO SÁNH SẢN PHẨM
Sinh viên thực hiện: NGUYỄN THANH CƯỜNG
NGUYỄN HẢI DƯƠNG
NGUYỄN KHẮC THỊNH
Lớp: 20SE6
20SE4
20SE5
Giảng viên hướng dẫn: PGS.TS. HUỲNH CÔNG PHÁP
Đà Nẵng, tháng 12 năm 2023.
2
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
LỜI MỞ ĐẦU
Trong sự phát triển không ngừng của hội thì nhu cầu của con người về cuộc
sống hàng ngày càng cao. Ứng dụng của công nghệ thông tin ngày càng cần thiết với đời
sống con người trở thành cộng c không thể thiếu của thế giới văn minh. Cùng từ đó
mà nảy sinh ra nhiều loại hình dịch vụ để đáp ứng những nhu cầu thiết yếu của con người.
Các dịch vụ hiện nay rất đa dạng về lĩnh vực với nhiều cách đáp ứng khác nhau.
Ngày nay, ứng dụng công nghệ thông tin việc tin học hóa được xem một
trong những yếu tố mang tính quyết định trong hoạt động của các chính phủ, tổ chức,
cũng như của các công ty, cửa hàng, nó đóng góp vai trò hết sức quan trọng,thể tạo ra
những bước đột phá mạnh mẽ.
Cùng với sự phát triền không ngừng về kỹ thuật máy tính mạng điện tử, công
nghệ thông tin cũng được những công nghệ đẳng cấp cao lần lượt chinh phục hết
đỉnh cao này đến đỉnh cáo khác. Mạng Internet là một trong những sản phẩm có giá trị hết
sức lớn lao ngày càng trở nên công cụ không thể thiếu, nền tảng cho sự truyền tải,
trao đổi thông tin trên toàn cầu.
Bằng Internet, chúng ta đã thực hiện được nhiều công việc với tốc độ nhanh hơn và
chi phí thấp hơn nhiều so với cách thức truyền thống. Chính điều này, đã thức đẩy sự hi
sinh phát triển của thương mại điện tử chính phủ điện tử trên khắp thế giới, làm
nâng cao cuộc sống con người.
Trong hoạt động sản xuất kinh doanh, giờ đây thương mại điện tử đã khẳng định
được vai trò xúc tiến thúc đẩy sự phát triển của doanh nghiệp. Đối với 1 cửa hàng hay
shop, việc quảng giới thiệu đến khách hàng các sản phẩm mới đáp ứng được nhu
cầu của khách hàng sẽ cần thiết.
Hiện nay, nhu cầu trao đổi hàng hóa của con người ngày càng tăng cả về số lượng
chất lượng, nhu cầu sử dụng Internet ngày càng nhiều các hình thức kinh doanh
Online ngày càng đa dạng trở thành một công cụ không thể thiếu. Nhắm vào những
yếu tố trên, chúng em đã thực hiện đồ án “XÂY DỰNG ỨNG DỤNG SO SÁNH SẢN
PHẨM”, nhằm phục vụ cho nhu cầu hiện nay với các dòng sản phẩm đa dạng và tốt nhất.
Với sự hướng dẫn tận tình của PGS.TS Huỳnh Công Pháp đã giúp em hoàn thành
báo cáo đề tài này. Tuy đã cố gắng tìm hiểu, phân tích thiết kế cài đặt hệ thống nhưng
chắc rằng không tránh khỏi những thiếu sót. Em rất mong nhận được sự cảm thông và góp
ý của quý thầy cô. Em xin chân thành cảm ơn.
1
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
LỜI CẢM ƠN
Trong suốt thời gian làm đồ án, nhóm em nhận được rất nhiều sự giúp đỡ. Em xin
chân thành cảm ơn Trường Đại học Công nghệ thông tin Truyền thông Việt - Hàn đã
tạo điều kiện thuận lợi cho em thực hiện đề tài đồ án sở 3 này. Xin cảm ơn quý Thầy
Cô Khoa Kỹ thuật máy tính đã tận tình giảng dạy, trang bị cho chúng em những kiến thức
quý báu trong học kỳ vừa qua.
Đặc biệt cảm ơn PGS.TS. Huỳnh Công Pháp, người đã tận tình hướng dẫn giúp
đỡ nhóm em trong suốt quá trình thực hiện đồ án này để nhóm em hoàn thành bài báo cáo
một cách tốt nhất.
Tuy nhiên, trong quá trình tìm hiểu, thực hiện báo cáo kiến thức kinh nghiệm
của em còn hạn chế nên không thể tránh những sai sót. Em rất mong nhận được những
nhận xét, đánh giá, đóng góp ý kiến từ thầy để rút ra kinh nghiệm từ bài báo cáo học
phần này và chuẩn bị tốt hơn cho những bài báo cáo học phần sau.
2
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
NHẬN XÉT
(Của giảng viên hướng dẫn)
............................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
Ngày ...... tháng ...... năm 2023
GVHD
PGS.TS. Huỳnh Công Pháp
3
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU.....................................................................................9
1.1. Tổng quan đề tài.......................................................................................................9
1.1.1. Tên đề tài............................................................................................................9
1.1.2. Lý do chọn đề tài................................................................................................9
1.1.3. Mục đích chọn đề tài..........................................................................................9
1.2. Nhiệm vụ thực hiện đề tài.........................................................................................9
1.2.1. Nhiệm vụ............................................................................................................9
1.2.2. Đối tượng, phạm vi tìm hiểu............................................................................10
1.2.3. Kết quả dự kiến................................................................................................10
CHƯƠNG 2: NGHIÊN CỨU TỔNG QUAN.......................................................11
2. Ngôn ngữ lập trình được sử dụng..............................................................................11
2.1. Ngôn ngữ Kotlin.................................................................................................11
2.2. Cơ sở dữ liệu Firebase.........................................................................................12
2.3. Ngôn ngữ thiết kế hệ thống UML.......................................................................13
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG.........................................15
3.1. Mô tả hệ thống........................................................................................................15
3.2. Tổng quan ứng dụng...............................................................................................15
3.3. Các nhóm chức năng của hệ thống.........................................................................15
3.4. Biểu đồ Use Case....................................................................................................16
3.4.1. Biều đồ Use Case tổng thể................................................................................16
3.4.2. Biểu đồ Use Case Khách hàng.........................................................................16
3.4.3. Biểu đồ Use Case Quản trị...............................................................................17
3.4.4. Biểu đồ Use Case Đăng ký, đăng nhập.............................................................17
3.4.5. Biểu đồ Use Case Tìm kiếm sản phẩm.............................................................18
3.4.6. Biểu đồ Use Case Xem giỏ hàng......................................................................18
3.5. Đặc tả một số Use Case..........................................................................................19
3.5.1. Đăng ký............................................................................................................19
3.5.2. Đăng nhập........................................................................................................19
3.5.3. Tìm kiếm sản phẩm..........................................................................................20
3.5.4. Thêm sản phẩm................................................................................................21
4
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.5.5. Sửa sản phẩm...................................................................................................21
3.5.6. Xóa sản phẩm...................................................................................................22
3.6 Biểu đồ Lớp:.......................................................................................................23
3.6.1 Biểu đồ lớp tổng quát:...................................................................................23
3.6.2 Danh sách các lớp đối tượng của hệ thống....................................................24
3.7. Biểu đồ hoạt động...................................................................................................26
3.7.1. Đăng ký tài khoản............................................................................................26
3.7.2. Đăng nhập........................................................................................................26
3.7.3. Tìm kiếm..........................................................................................................27
3.7.4. Thêm sản phẩm................................................................................................28
3.7.5. Sửa sản phẩm...................................................................................................29
3.7.6. Xóa sản phẩm...................................................................................................30
3.8. Biểu đồ tuần tự.......................................................................................................31
3.8.1. Đăng ký tài khoản............................................................................................31
3.8.2. Đăng nhập........................................................................................................32
3.8.3. Tìm kiếm sản phẩm..........................................................................................33
3.8.4. Thêm sản phẩm................................................................................................33
3.8.5. Sửa sản phẩm...................................................................................................34
3.8.6. Xóa sản phẩm...................................................................................................34
CHƯƠNG 4: TRIỂN KHAI XÂY DỰNG ỨNG DỤNG.....................................35
5.1. Các trang dữ liệu Firebase......................................................................................35
5.1.1. Trang xác thực người dùng...............................................................................35
5.1.2. Trang Cơ sở dữ liệu Firetore............................................................................35
5.1.3.2. Trang thông tin thể loại sản phẩm.....................................................................36
5.2. Các trang ứng dụng thành phần..............................................................................37
5.2.1. Đăng ký và Đăng nhập.....................................................................................37
5.2.2. Màn hình chính................................................................................................37
5.2.3. Các trang sản phẩm..........................................................................................38
5.2.4. Trang thông tin sản phẩm.................................................................................42
5.2.5. Trang Giỏ hàng................................................................................................43
5.2.6. Trang Thông tin người dùng............................................................................44
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.............................................................45
5
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
Kết quả đạt được............................................................................................................45
Lý thuyết....................................................................................................................45
Điểm nổi bật...............................................................................................................46
Các ý tưởng mới.........................................................................................................46
Hạn chế..........................................................................................................................46
Hướng phát triển............................................................................................................46
TÀI LIỆU THAM KHẢO.....................................................................................47
6
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
DANH MỤC HÌNH ẢNH
Hình 1.1. Ngôn ngữ lập trình..............................................................................................2
Hình 2.2. Ngôn ngữ lập trình Kotlin...................................................................................1
Hình 2.8. Cơ sở dữ liệu Firebase.........................................................................................2
Hình 2.9. Ngô ngữ thiết kế hệ thống UML.........................................................................4
7
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
DANH MỤC BIỂU ĐỒ
Biểu đồ 3.1. Biểu đồ Use Case tổng thể..............................................................................6
Biểu đồ 3.2. Biểu đồ Use Case Khách hàng........................................................................6
Biểu đồ 3.3. Biểu đồ Use Case Quản trị..............................................................................7
Biểu đồ 3.4. Biểu đồ Use Case Đăng ký, đăng nhập...........................................................7
Biểu đồ 3.5. Biểu đồ Use Case Tìm kiếm sản phẩm...........................................................8
Biểu đồ 3.6. Biểu đồ Use Case Xem giỏ hàng....................................................................8
Biểu đồ 3.7. Activity Đăng ký tài khoản...........................................................................15
Biểu đồ 3.8. Activity Đăng nhập.......................................................................................15
Biểu đồ 3.9. Activity Tìm kiếm........................................................................................16
Biểu đồ 3.10. Activity Thêm sản phẩm.............................................................................17
Biểu đồ 3.11. Activity Sửa sản phẩm................................................................................18
Biểu đồ 3.12. Activity Xóa sản phẩm...............................................................................19
Biểu đồ 3.13. Sequence Đăng ký tài khoản.......................................................................20
Biểu đồ 3.14. Sequence Đăng nhập..................................................................................21
Biểu đồ 3.15. Sequence Tìm kiếm sản phẩm....................................................................22
Biểu đồ 3.16. Sequence Thêm sản phẩm..........................................................................22
Biểu đồ 3.17. Sequence Sửa sản phẩm..............................................................................23
Biểu đồ 3.18. Sequence Xóa sản phẩm.............................................................................23
8
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
CHƯƠNG 1: GIỚI THIỆU
1.1. Tổng quan đề tài
1.1.1. Tên đề tài
Xây dựng ứng dụng so sánh sản phẩm
1.1.2. Lý do chọn đề tài
Trong bối cảnh hội phát triển không ngừng, nhu cầu của con người về cuộc
sống hàng ngày càng cao. Công nghệ thông tin ngày càng trở thành công cụ không thể
thiếu, giúp đáp ứng những nhu cầu thiết yếu của con người. Đặc biệt, với sự bùng nổ của
Internet xu hướng toàn cầu hóa, nhu cầu trao đổi hàng hóa sử dụng các hình thức
kinh doanh trực tuyến ngày càng tăng.
Nhận thấy điều này, chúng em quyết định xây dựng một ứng dụng so sánh sản
phẩm. Ứng dụng này sẽ giúp người dùng dễng tìm kiếm thông tin về các sản phẩm từ
nhiều nguồn khác nhau, so sánh chất lượng giá cả, từ đó đưa ra quyết định mua hàng
một cách thông minh và tiết kiệm thời gian.
Ứng dụng sẽ tập trung vào việc cung cấp thông tin chi tiết về sản phẩm, bao gồm
hình ảnh, tả, giá cả, đánh giá của người dùng nhiều hơn nữa. Nó cũng sẽ cho phép
người dùng lọc sản phẩm theo nhiều tiêu chí khác nhau, như loại sản phẩm, giá cả, thương
hiệu, và đánh giá.
Với ứng dụng này, chúng em hy vọng sẽ giúp người dùng tiếp cận được với thông
tin sản phẩm một cách nhanh chóng thuận tiện, giúp họ đưa ra quyết định mua hàng
một cách dễ dàng hơn. Đồng thời, ứng dụng cũng giúp các cửa hàng và công ty quảng
sản phẩm của mình đến với một lượng lớn khách hàng một cách hiệu quả.
1.1.3. Mục đích chọn đề tài
Dịch vụ mua bán hàng qua Internet hiện nay rất phổ biến, nhưng sự tiện lợi, lợi của
mang lại rất lớn, tạo cho con người sự tin cậy, nhất trong hội ngày nay. Áp
dụng thương mại điện tử là một lựa chọn đúng đắn để thực hiện lúc này.
Quảng được sản phẩm chất lượng, đưa thương hiệu đi xa, tăng khả năng tương
tác với khách hàng, tăng sự uy tín với doanh nghiệp, đáp ứng kịp thời nhu cầu hỗ trợ
những thắc mắc của khách hàng.
1.2. Nhiệm vụ thực hiện đề tài
1.2.1. Nhiệm vụ
- Xây dựng mô hình tổng quan của hệ thống ứng dụng.
- Xây dựng tiêu đề ứng dụng.
- Quản lý hoạt động của người quản trị.
- Quản lý thông tin của khách hàng.
9
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
- Quản lý các đơn hàng và hình thức thanh toán.
1.2.2. Đối tượng, phạm vi tìm hiểu
- Đối tượng nghiên cứu của đề tài môn lập trình di động nói chung ngôn ngữ lập
trình JavaScript framework React Native nói riêng.
- Nghiên cứu nhu cầu của người dùng tiềm năng trong thời đại Công nghệ 4.0 hiện nay,
đưa ra ứng dụng, nội dung phù hợp để phục vụ cho con người.
Hình 1. Framework React Native
1.2.3. Kết quả dự kiến
Ứng dụng được thiết kế cẩn thận, giao diện đẹp mắt, nội dung chất lượng được
bố trí khoa học.
Mục tiêu của đề tài thể áp dụng vào thực tế. ứng dụng sẽ cung cấp các thông
tin sản phầm cần thiết cho khách hàng, thuận tiện cho việc quản lý cửa hàng.
10
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
CHƯƠNG 2: NGHIÊN CỨU TỔNG QUAN
2. Ngôn ngữ lập trình được sử dụng
2.1. Ngôn ngữ JavaScript và Framework React Native
JavaScript là một ngôn ngữ lập trình. Nó là một ngôn ngữ lập trình bậc cao, thường
được biên dịch tức thời (just-in-time compiled) đa hình (multi-paradigm).
JavaScript được sử dụng rộng rãi trong phát triển web, cho phép tạo ra các trang web
tương tác và cải thiện trải nghiệm người dùng. Nó có thể được nhúng trực tiếp vào HTML
và giúp cho website trở nên sống động hơn.
Hình 2. Framework React Native
Điểm mạnh của React Native:
- Đa nền tảng: React Native cho phép bạn xây dựng ứng dụng di động cho cả nền tảng iOS
Android bằng việc sử dụng JavaScript. Điều này giúp giảm bớt công sức thời gian
cần thiết để phát triển và duyệt ứng dụng trên nhiều nền tảng.
- Tích hợp với các thư viện JavaScript hiện có: React Native có thể sử dụng tất cả các thư
viện JavaScript hiện có, giúp tận dụng tối đa các công cụ nguồn lực có sẵn.
- Dễ học dễ tiếp cận: React Native sử dụng JSX (JavaScript XML) để định nghĩa giao
diện người dùng, và nó có cú pháp rất giống với HTML. Điều này giúp người mới học lập
trình có thể tiếp cận dễ dàng.
11
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
- nguồn mở: React Native một framework nguồn mở, không tốn kém để sử
dụng.
- Chuyển đổi tự động từ JavaScript sang React Native: Có nhiều công cụ hỗ trợ chuyển đổi
từ JavaScript sang React Native, giúp tiết kiệm thời giancông sức.
- Xử lỗi mạnh mẽ: React Native chế xử lỗi mạnh mẽ, giúp người lập trình dễ
dàng tìm và khắc phục lỗi.
- Review code dễ dàng: React Native có cú pháp dễ hiểu, dễ đọc, giúp việc review code tr
nên dễ dàng hơn.
2.2. Heroku Cloud Application Platform
Heroku một nền tảng để phát triển ứng dụng web di động, bao gồm các API
đơn giản mạnh mẽ không cần backend hay server. dịch vụ sở dữ liệu hoạt
động trên nền tảng đám mây – cloud. Kèm theo đó hệ thống máy chủ cực kỳ mạnh mẽ
của Salesforce.
Hình 3. Heroku-Cloud Application Platform
Chức năng chính giúp người dùng lập trình ứng dụng bằng cách đơn giản hóa các thao
tác với sở dữ liệu. Cụ thể những giao diện lập trình ứng dụng API đơn giản. Mục
đích nhằm tăng số lượng người dùng thu lại nhiều lợi nhuận hơn. Đặc biệt, còn dịch
vụ đa năng và bảo mật cực tốt.
Heroku hỗ trợ nhiều ngôn ngữ lập trình như Ruby, Node.js, Python, Java, Go, PHP
Scala. Không khó hiểu khi nhiều lập trình viên chọn Heroku làm nền tảng đầu tiên
để xây dựng ứng dụng cho hàng triệu người dùng trên toàn thế giới.
12
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
Ưu điểm của Heroku:
Tạo tài khoản và sử dụng dễ dàng
Tốc độ phát triển nhanh
Nhiều dịch vụ trong một nền tảng
Được cung cấp bởi Salesforce
Tập trung vào phát triển giao diện người dùng
Heroku không có máy chủ
Học máy (Machine Learning)
Tạo lưu lượng truy cập
Theo dõi lỗi
Sao lưu
2.3. Ngôn ngữ thiết kế hệ thống UML
UML (Unified Modeling Language) là ngôn ngữ dành cho viê
c đă
c tả, hình dung,
xây dựng và làm tài liê
u của các hê
thống phần mềm.
UML tạo cơ hô
i để viết thiết kế hê
thống, bao gồm những khái niê
m như tiến trình
nghiê
p vụ và các chức năng của hê
thống.
Cách xây dựng các hình trong UML phù hợp tả các hệ thống thông tin cả
về cấu trúc cũng như hoạt động. Cách tiếp cận theo hình của UML giúp ích rất nhiều
cho những người thiết kế thực hiện hệ thống thông tin cũng như những người sử dụng
nó; tạo nên một cái nhìn bao quát và đầy đủ về hệ thống thông tin dự định xây dựng. Cách
nhìn bao quát này giúp nắm bắt trọn vẹn các yêu cầu của người dùng; phục vụ từ giai
đoạn phân tích đến việc thiết kế, thẩm định kiểm tra sản phẩm ứng dụng công nghệ
thông tin.
UML sử dụng một hệ thống hiệu thống nhất biểu diễn các Phần tử hình
(model elements). Tập hợp các phần tử hình tạo thành các đồ UML (UML
diagrams). Có các loại sơ đồ UML chủ yếu sau:
- Sơ đồ lớp (Class Diagram).
- Sơ đồ đối tượng (Object Diagram).
- Sơ đồ tình huống sử dụng (Use Cases Diagram).
- Sơ đồ trình tự (Sequence Diagram).
- Sơ đồ cộng tác (Collaboration Diagram hay là Composite Structure Diagram).
- Sơ đồ trạng thái (State Machine Diagram).
- Sơ đồ thành phần (Component Diagram).
- Sơ đồ hoạt động (Activity Diagram).
- Sơ đồ triển khai (Deployment Diagram).
- Sơ đồ gói (Package Diagram).
13
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
- Sơ đồ liên lạc (Communication Diagram).
Hình 4. Thiết kế hệ thống UML
14
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.1. Mô tả hệ thống
Ứng dụng được tạo ra để đáp ứng nhu cầu của khách hàng về một ứng dụng cung
cấp đa dạng chất lượng, mẫu mã, giá thành về các sản phẩm từ nhiều nhà cung cấp khác
nhau. Xây dựng ứng dụng so sánh sản phẩm.
Yêu cầu của ứng dụng thể hiện được các sản phẩm, thông tin sản phẩm, cho
phép khách hàng thể xem so sánh giữa các sản phẩm từ nhiều nhà cung cấp, đồng
thời xem những tin tức về các loại sản phẩm, thông tin về sản phẩm mới, tin tức khuyến
mãi của các nhà cung cấp một cách nhanh chóng,…
3.2. Tổng quan ứng dụng
- Giao diện trực quan, sinh động, thân thiện với người dùng.
- Người dùng có thể dễ dàng tìm kiếm, xem mẫu mà, đặt hàng các sản phẩm áo quần
phụ kiện mà họ quan tâm tại ứng dụng, các chương trình sắp tới.
- Người dùng sau khi đăng nhập có thể dễ dàng xem các sản phẩm.
- Người quản trị có thể dễ dàng quản lý thông tin sản phẩm và thông tin khách hàng.
3.3. Các nhóm chức năng của hệ thống
- Quản trị (Admin)
+ Quản lý sản phẩm.
+ Quản lý danh mục sản phẩm.
+ Quản lý khách hàng.
+ Quản lý đơn hàng.
+ Thống kê báo cáo.
- Khách hàng (Member)
+ Đăng ký.
+ Đăng nhập.
+ Đăng xuất.
+ Xem sản phẩm nổi bật.
+ Tìm kiếm sản phẩm.
+ Xem chi tiết sản phầm.
+ Quản lý thông tin cá nhân.
+ Thêm sản phẩm vào giỏ hàng.
+ Quản lý giỏ hàng.
15
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
+ Quản lý đơn hàng.
3.4. Biểu đồ Use Case
3.4.1. Biều đồ Use Case tổng thể
3.4.2. Biểu đồ Use Case Khách hàng
16
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.4.3. Biểu đồ Use Case Quản trị
3.4.4. Biểu đồ Use Case Đăng ký, đăng nhập
17
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.4.5. Biểu đồ Use Case Tìm kiếm sản phẩm
3.4.6. Biểu đồ Use Case Xem giỏ hàng
3.5. Đặc tả một số Use Case
3.5.1. Đăng ký
*Use Case ID: DK - 1.0
18
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
*Use Case Name: Đăng ký
*Description: Khách hàng muốn đăng ký tài khoản để sử dụng dịch vụ từ ứng
dụng.
*Actors: Khách hàng chưa có tài khoản tại hệ thống.
*Trigger: Khách hàng muốn đăng ký tài khoản.
*Pre-Conditions(s): Thiết bị đã được kết nối internet khi đăng ký.
*Post-Condition(s): - Khách hàng đăng ký thành công.
- Hệ thống ghi nhận hoạt động đăng ký thành công.
*Basic Flow: 1. Khách hàng truy cập ứng
dụng.
2. Đăng ký tài khoản.
3. Nhập thông tin tài khoản
chọn lệnh đăng ký.
4. Hệ thống xác thực thông tin
đăng thành công cho
phép truy cập hệ thống.
5. Hệ thống ghi nhận hoạt động
đăng ký thành công.
*Exception Flow: 4.1. Hệ thống xác thực thông
tin đăng không thành công
và hiển thị thông báo
4.1.1. Khách hàng chọn lệnh
hủy đăng nhập.
Use case tiếp tục UC 1-3
3.5.2. Đăng nhập
*Use Case ID: DN - 1.0
*Use Case Name: Đăng nhập
*Description: - Khách hàng muốn đăng nhập để sử dụng dịch vụ từ ứng dụng.
- Quản trị muốn đăng nhập để quản lý.
*Actors: Khách hàng, quản trị đã có tài khoản tại hệ thống.
*Trigger: - Khách hàng muốn đăng nhập vào ứng dụng.
- Quản trị muốn đăng nhập vào hệ thống quản lý.
*Pre-Conditions(s): - Tài khoản đã được tạo.
- Thiết bị đã được kết nối internet khi đăng nhập.
*Post-Condition(s): - Khách hàng, quản trị đăng nhập thành công.
- Hệ thống ghi nhận hoạt động đăng nhập thành công.
*Basic Flow: 1. Khách hàng, quản trị truy
cập ứng dụng.
2. Đăng nhập tài khoản.
3. Nhập tài khoản và chọn lệnh
đăng nhập.
4. Hệ thống xác thực thông tin
đăng nhập thành công cho
19
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
phép truy cập hệ thống
5. Hệ thống ghi nhận hoạt động
đăng nhập thành công.
*Exception Flow: 4.1. Hệ thống xác thực thông
tin đăng nhập không thành
công và hiển thị thông báo
4.1.1. Khách hàng, quản trị
chọn lệnh hủy đăng nhập.
Use case tiếp tục UC 1-3
3.5.3. Tìm kiếm sản phẩm
*Use Case ID: TK - 1.0
*Use Case Name: Tìm kiếm sản phẩm
*Description: Khách hàng muốn tìm kiếm sản phẩm trên ứng dụng.
*Actors: Khách hàng.
*Trigger: Khách hàng muốn tìm kiếm sản phẩm
*Pre-Conditions(s): - Khách hàng truy cập ứng dụng.
- Thiết bị đã được kết nối internet khi đăng nhập.
*Post-Condition(s): - Khách hàng truy cập vào ứng dụng.
- Khách hàng thực hiện tìm kiếm sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Tìm kiếm trên ứng
dụng.
*Basic Flow: 1. Khách hàng truy cập ứng
dụng.
2. Khách hàng tìm sản phẩm
với các thao tác từ khóa.
3. Hệ thống xác thực thông tin
tìm kiếm.
4. Hệ thống ghi nhận hoạt động
tìm sản phẩm hiển thị sản
phẩm ra ngoài.
*Exception Flow: 3.1. Hệ thống xác thực thông
tin tìm kiếm không đúng
hiển thị thông báo
3.1.1. Khách hàng điền lại
thông tin tiềm kiếm.
Use case tiếp tục UC 2.
3.5.4. Thêm sản phẩm
*Use Case ID: SP - 1.0
*Use Case Name: Thêm sản phẩm
20
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
*Description: Quản trị muốn thêm sản phẩm vào ứng dụng
*Actors: Quản trị
*Trigger: Quản trị muốn thêm sản phẩm
*Pre-Conditions(s): - Quản trị thêm đúng các list thông tin về sản phẩm.
- Thiết bị đã được kết nối internet.
*Post-Condition(s): - Quản trị đăng nhập vào hệ thống thành công
- Quản trị thực hiện điền các thông tin sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Thêm sản phẩm
trên sản phẩm.
*Basic Flow: 1. Quản trị truy cập hệ
thống.
2. Quản trị điền các thông
tin cần cho Sản phẩm mới.
3. Quản trị điền đúng định
dạng của các mục trong Sản
phẩm.
4. Hệ thống xác thực thông tin
điền đúng định dạng.
5. Hệ thống ghi nhận hoạt động
thêm Sản phẩm cho phép Sản
phẩm hiện lên ứng dụng.
*Exception Flow: 4.1. Hệ thống xác thực
thông tin điền vào không
đúng định dạng hiển thị
thông báo
4.1.1. Quản trị điền lại thông
tin theo đúng định dạng.
Use case tiếp tục UC 2-3.
3.5.5. Sửa sản phẩm
*Use Case ID: SP - 1.1
*Use Case Name: Sửa sản phẩm
*Description: Quản trị muốn sửa sản phẩm trên ứng dụng.
*Actors: Quản trị
*Trigger: Quản trị muốn sửa sản phẩm
*Pre-Conditions(s): - Quản trị sửa thông tin về sản phẩm.
- Thiết bị đã được kết nối internet.
*Post-Condition(s): - Quản trị đăng nhập vào hệ thống thành công
- Quản trị thực hiện sửa các thông tin sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Sửa sản phẩm trên
sản phẩm.
*Basic Flow: 1. Quản trị truy cập hệ thống.
21
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
2. Quản trị sửa các thông tin
sản phẩm.
3. Quản trị sửa thông tin sản
phẩm.
4. Hệ thống xác thực thông tin
điền đúng định dạng.
5. Hệ thống ghi nhận hoạt động
sửa thông tin Sản phẩm
*Exception Flow: 4.1. Hệ thống xác thực thông
tin sửa không đúng định dạng
và hiển thị thông báo
4.1.1. Quản trị sửa lại thông tin
theo đúng định dạng.
Use case tiếp tục UC 2-3.
3.5.6. Xóa sản phẩm
*Use Case ID: SP - 1.2
*Use Case Name: Xóa sản phẩm
*Description: Quản trị muốn xóa sản phẩm ra khỏi ứng dụng.
*Actors: Quản trị
*Trigger: Quản trị muốn xóa sản phẩm.
*Pre-Conditions(s): - Quản trị xóa thông tin về sản phẩm.
- Thiết bị đã được kết nối internet.
*Post-Condition(s): - Quản trị đăng nhập vào hệ thống thành công
- Quản trị thực hiện xóa sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Xóa sản phẩm trên
sản phẩm.
*Basic Flow: 1. Quản trị truy cập hệ thống.
2. Quản trị thực hiện thao tác
xóa sản phẩm.
3. Hệ thống xác thực thao tác
xóa sản phẩm phẩm
4. Hệ thống ghi nhận hoạt
động xóa sản phẩm
*Exception Flow: 4.1. Hệ thống xác thực thông
tin xóa không thành công
hiển thị thông báo
4.1.1. Quản trị thực hiện lại
thao tác xóa sản phẩm
Use case tiếp tục UC 2.
22
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.6 Biểu đồ Lớp:
3.6.1 Biểu đồ lớp tổng quát:
3.6.2 Danh sách các lớp đối tượng của hệ thống
Products: Lớp sản phẩm
Các phương thức chính:
- Thêm: thêm mới một sản phẩm
23
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
- Sửa: sửa thông tin sản phẩm
- Xóa: xóa thông tin sản phẩm
- Tìm kiếm: tìm kiếm thông tin sản phẩm
- Hiển thị: hiển thị thông tin sản phẩm
Category: lớp danh mục sản phẩm
Các phương thức chính:
- Thêm: thêm danh mục sản phẩm
- Sửa: sửa thông tin danh mục sản phẩm
- Xóa: xóa thông tin danh mục sản phẩm
- Hiển thị: hiển thị thông tin danh mục
Orders: lớp hóa đơn
Các phương thức chính:
- Thêm: thêm sản phẩm vào hóa đơn
Customers: lớp khách hàng
Các phương thức chính:
- Thêm: thêm mới thông tin khách hàng
- Sửa: sửa thông tin khách hàng
- Xóa: xóa thông tin khách hàng.
Suppliers: Lớp nhà cung cấp
Các phương thức chính:
- Thêm: thêm mới thông tin nhà cung cấp sản phẩm
- Sửa: sửa thông tin nhà cung cấp
- Xóa: xóa thông tin nhà cung cấp
24
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
AspNetRoles: Lớp vai trò, quyền
Các phương thức chính:
- Thêm: thêm vai trò, quyền
- Xóa: xóa quyền.
AspNetUserRoles: Lớp cấp vai trò cho người dùng
Các phương thức chính:
- Thêm: thêm mới thông tin người dùng
- Sửa: sửa thông tin người dùng
- Xóa: xóa thông tin người dùng
Permissions: Lớp cấp quyền truy cập
Các phương thức chính:
- Thêm: thêm quyền truy cập cho người dùng
- Xóa: xóa quyền truy cập ngươi dùng
3.7. Biểu đồ hoạt động
25
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.7.1. Đăng ký tài khoản
3.7.2. Đăng nhập
26
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.7.3. Tìm kiếm
27
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.7.4. Thêm sản phẩm
28
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.7.5. Sửa sản phẩm
29
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.7.6. Xóa sản phẩm
30
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.8. Biểu đồ tuần tự
3.8.1. Đăng ký tài khoản
31
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.8.2. Đăng nhập
32
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.8.3. Tìm kiếm sản phẩm
3.8.4. Thêm sản phẩm
33
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
3.8.5. Sửa sản phẩm
3.8.6. Xóa sản phẩm
34
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
CHƯƠNG 4: TRIỂN KHAI XÂY DỰNG ỨNG DỤNG
35
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Kết quả đạt được
Lý thuyết
Để xây dựng một hệ thống bán hàng một việc không hề đơn giản, đòi hỏi
chúng ta phải xây dựng theo các giai đoạn: khảo sát, phân tích thiết kế hệ thống,
nghiên cứu tổng quan các công cụ lập trình, thiết kế ứng dụng kiểm thử. Ngày nay
chúng ta đang đứng trước nhiều lựa chọn về công nghệ mới vậy nên một ứng dụng giúp
bán hàng trực tuyến một cách đơn giản, tối ưu hơn điều không thể thiếu. Thông qua
nghiên cứu xây dựng đề tài này, chúng em đã củng cố, học hỏi thêm được nhiều thứ
như:
- Hiểu xây dựng được phân tích thiết kế hệ thống. Vẽ thao tác được nhiều biểu
đồ: biểu đồ use-case, biểu đồ hoạt động, biểu đồ lớp, biểu đồ tuần tự… Đặc tả được use-
case.
- Học hỏi hiểu sâu hơn về ngôn ngữ lập trình JavaScript framework React Native,
biết cách sử dụng UML.
- Nâng cao trình độ thao tác, tư duy lập trình nhạy bén hơn.
- Qua ứng dụng bán hàng trực tuyến này thì em thể xây dựng được nhiều ứng dụng
tương tự. Từ đó giúp phát triển khả năng lập trình tốt hơn.
Từ những nghiên cứu và bắt tay vào xây dựng đề tài thì chúng em đã đạt được một
số kết quả như sau:
- Tạo nên một ứng dụng bán hàng với giao diện tính thẩm mỹ cao, nhiều chức năng
mới mẻ, tối ưu hóa trong việc quản lý bán hàng.
- Giúp khách hàng mua hàng một cách nhanh chóng và tiện lợi.
- Sử dụng ứng dụng vào các công việc quản lý bán hàng dễ dàng, thuận tiện hơn. Việc lưu
trữ các thông tin, đơn đơn hàng, sản phẩm sẽ tối ưu hơn.
- Dễ dàng hơn trong việc thống kê báo cáo doanh thu của cửa hàng.
Điểm nổi bật
- Hiển thị sản phẩm theo các đơn hàng được đặt mới nhất.
- Các sản phẩm được chia thành các trang con rõ ràng.
- Tìm kiếm sản phẩm dễ dàng.
- Phương thức đặt hàng dễ dàng.
Các ý tưởng mới
Ứng dụng thêm nhiều chức năng để phù hợp với một trang về thương mại điện
tử. Cập nhật thêm các mẫu mã mới.
Hạn chế
Do thời gian hạn chế nên việc nghiên cứu tìm hiểu để xây dựng hệ thống ứng
dụng chưa được tối ưu nhất, ứng dụng còn một số chức năng chưa được hoàn chỉnh nhất
có thể, một số vấn đề còn chưa giải quyết được mượt mà nhanh gọn, cơ sở dữ liệu còn
sơ sài, giao diện còn đơn giản.
36
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
Hướng phát triển
Hoàn thiện giao diện với đầy đủ chức năng, phát triển ứng dụng rộng rãi phổ biến
hơn trong quản bán hàng. Đây một ứng dụng thực tế, cần nhiều thời gian đề hoàn
thiện hơn. vậy trong khuôn khổ đồ án này em chỉ thể đưa ra những chức năng
bản, phỏng một số yêu cầu trong thực tế. Đồ án của em còn rất nhiều thiếu sót, rất
mong được sự đóng góp ý kiến từ quý thầy cô để em hoàn thiện dự án này hơn.
37
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
TÀI LIỆU THAM KHẢO
Các trang web:
[1] https://www.w3schools.com/
[2] https://www.javatpoint.com/
[3] https://viblo.asia/
[4] https://freetuts.net/
[5] https://www.youtube.com/
38
Downloaded by Van Le (mrl3v4n@gmail.com)
lOMoARcPSD|25518217
| 1/40

Preview text:

lOMoARcPSD|25518217
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG VIỆT - HÀN 
KHOA KHOA HỌC MÁY TÍNH
ĐỒ ÁN CHUYÊN NGÀNH 2
ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG SO SÁNH SẢN PHẨM
Sinh viên thực hiện: NGUYỄN THANH CƯỜNG NGUYỄN HẢI DƯƠNG NGUYỄN KHẮC THỊNH Lớp: 20SE6 20SE4 20SE5
Giảng viên hướng dẫn: PGS.TS. HUỲNH CÔNG PHÁP 1
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG VIỆT - HÀN 
KHOA KHOA HỌC MÁY TÍNH ĐỒ ÁN CƠ SỞ 3
ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG SO SÁNH SẢN PHẨM
Sinh viên thực hiện: NGUYỄN THANH CƯỜNG NGUYỄN HẢI DƯƠNG NGUYỄN KHẮC THỊNH Lớp: 20SE6 20SE4 20SE5
Giảng viên hướng dẫn: PGS.TS. HUỲNH CÔNG PHÁP
Đà Nẵng, tháng 12 năm 2023. 2
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 LỜI MỞ ĐẦU
Trong sự phát triển không ngừng của xã hội thì nhu cầu của con người về cuộc
sống hàng ngày càng cao. Ứng dụng của công nghệ thông tin ngày càng cần thiết với đời
sống con người và trở thành cộng cụ không thể thiếu của thế giới văn minh. Cùng từ đó
mà nảy sinh ra nhiều loại hình dịch vụ để đáp ứng những nhu cầu thiết yếu của con người.
Các dịch vụ hiện nay rất đa dạng về lĩnh vực với nhiều cách đáp ứng khác nhau.
Ngày nay, ứng dụng công nghệ thông tin và việc tin học hóa được xem là một
trong những yếu tố mang tính quyết định trong hoạt động của các chính phủ, tổ chức,
cũng như của các công ty, cửa hàng, nó đóng góp vai trò hết sức quan trọng, có thể tạo ra
những bước đột phá mạnh mẽ.
Cùng với sự phát triền không ngừng về kỹ thuật máy tính và mạng điện tử, công
nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hết
đỉnh cao này đến đỉnh cáo khác. Mạng Internet là một trong những sản phẩm có giá trị hết
sức lớn lao và ngày càng trở nên công cụ không thể thiếu, là nền tảng cho sự truyền tải,
trao đổi thông tin trên toàn cầu.
Bằng Internet, chúng ta đã thực hiện được nhiều công việc với tốc độ nhanh hơn và
chi phí thấp hơn nhiều so với cách thức truyền thống. Chính điều này, đã thức đẩy sự hi
sinh và phát triển của thương mại điện tử và chính phủ điện tử trên khắp thế giới, làm
nâng cao cuộc sống con người.
Trong hoạt động sản xuất kinh doanh, giờ đây thương mại điện tử đã khẳng định
được vai trò xúc tiến và thúc đẩy sự phát triển của doanh nghiệp. Đối với 1 cửa hàng hay
shop, việc quảng bá và giới thiệu đến khách hàng các sản phẩm mới đáp ứng được nhu
cầu của khách hàng sẽ cần thiết.
Hiện nay, nhu cầu trao đổi hàng hóa của con người ngày càng tăng cả về số lượng
và chất lượng, nhu cầu sử dụng Internet ngày càng nhiều và các hình thức kinh doanh
Online ngày càng đa dạng và trở thành một công cụ không thể thiếu. Nhắm vào những
yếu tố trên, chúng em đã thực hiện đồ án “XÂY DỰNG ỨNG DỤNG SO SÁNH SẢN
PHẨM”, nhằm phục vụ cho nhu cầu hiện nay với các dòng sản phẩm đa dạng và tốt nhất.
Với sự hướng dẫn tận tình của PGS.TS Huỳnh Công Pháp đã giúp em hoàn thành
báo cáo đề tài này. Tuy đã cố gắng tìm hiểu, phân tích thiết kế và cài đặt hệ thống nhưng
chắc rằng không tránh khỏi những thiếu sót. Em rất mong nhận được sự cảm thông và góp
ý của quý thầy cô. Em xin chân thành cảm ơn. 1
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 LỜI CẢM ƠN
Trong suốt thời gian làm đồ án, nhóm em nhận được rất nhiều sự giúp đỡ. Em xin
chân thành cảm ơn Trường Đại học Công nghệ thông tin và Truyền thông Việt - Hàn đã
tạo điều kiện thuận lợi cho em thực hiện đề tài đồ án cơ sở 3 này. Xin cảm ơn quý Thầy
Cô Khoa Kỹ thuật máy tính đã tận tình giảng dạy, trang bị cho chúng em những kiến thức
quý báu trong học kỳ vừa qua.
Đặc biệt cảm ơn PGS.TS. Huỳnh Công Pháp, người đã tận tình hướng dẫn và giúp
đỡ nhóm em trong suốt quá trình thực hiện đồ án này để nhóm em hoàn thành bài báo cáo một cách tốt nhất.
Tuy nhiên, trong quá trình tìm hiểu, thực hiện báo cáo kiến thức và kinh nghiệm
của em còn hạn chế nên không thể tránh những sai sót. Em rất mong nhận được những
nhận xét, đánh giá, đóng góp ý kiến từ thầy cô để rút ra kinh nghiệm từ bài báo cáo học
phần này và chuẩn bị tốt hơn cho những bài báo cáo học phần sau. 2
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 NHẬN XÉT
(Của giảng viên hướng dẫn)
............................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
Ngày ...... tháng ...... năm 2023 GVHD
PGS.TS. Huỳnh Công Pháp 3
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU.....................................................................................9
1.1. Tổng quan đề tài.......................................................................................................9
1.1.1. Tên đề tài............................................................................................................9
1.1.2. Lý do chọn đề tài................................................................................................9
1.1.3. Mục đích chọn đề tài..........................................................................................9
1.2. Nhiệm vụ thực hiện đề tài.........................................................................................9
1.2.1. Nhiệm vụ............................................................................................................9
1.2.2. Đối tượng, phạm vi tìm hiểu............................................................................10
1.2.3. Kết quả dự kiến................................................................................................10
CHƯƠNG 2: NGHIÊN CỨU TỔNG QUAN.......................................................11
2. Ngôn ngữ lập trình được sử dụng..............................................................................11
2.1. Ngôn ngữ Kotlin.................................................................................................11
2.2. Cơ sở dữ liệu Firebase.........................................................................................12
2.3. Ngôn ngữ thiết kế hệ thống UML.......................................................................13
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG.........................................15
3.1. Mô tả hệ thống........................................................................................................15
3.2. Tổng quan ứng dụng...............................................................................................15
3.3. Các nhóm chức năng của hệ thống.........................................................................15
3.4. Biểu đồ Use Case....................................................................................................16
3.4.1. Biều đồ Use Case tổng thể................................................................................16
3.4.2. Biểu đồ Use Case Khách hàng.........................................................................16
3.4.3. Biểu đồ Use Case Quản trị...............................................................................17
3.4.4. Biểu đồ Use Case Đăng ký, đăng nhập.............................................................17
3.4.5. Biểu đồ Use Case Tìm kiếm sản phẩm.............................................................18
3.4.6. Biểu đồ Use Case Xem giỏ hàng......................................................................18
3.5. Đặc tả một số Use Case..........................................................................................19
3.5.1. Đăng ký............................................................................................................19
3.5.2. Đăng nhập........................................................................................................19
3.5.3. Tìm kiếm sản phẩm..........................................................................................20
3.5.4. Thêm sản phẩm................................................................................................21 4
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.5.5. Sửa sản phẩm...................................................................................................21
3.5.6. Xóa sản phẩm...................................................................................................22 3.6
Biểu đồ Lớp:.......................................................................................................23 3.6.1
Biểu đồ lớp tổng quát:...................................................................................23 3.6.2
Danh sách các lớp đối tượng của hệ thống....................................................24
3.7. Biểu đồ hoạt động...................................................................................................26
3.7.1. Đăng ký tài khoản............................................................................................26
3.7.2. Đăng nhập........................................................................................................26
3.7.3. Tìm kiếm..........................................................................................................27
3.7.4. Thêm sản phẩm................................................................................................28
3.7.5. Sửa sản phẩm...................................................................................................29
3.7.6. Xóa sản phẩm...................................................................................................30
3.8. Biểu đồ tuần tự.......................................................................................................31
3.8.1. Đăng ký tài khoản............................................................................................31
3.8.2. Đăng nhập........................................................................................................32
3.8.3. Tìm kiếm sản phẩm..........................................................................................33
3.8.4. Thêm sản phẩm................................................................................................33
3.8.5. Sửa sản phẩm...................................................................................................34
3.8.6. Xóa sản phẩm...................................................................................................34
CHƯƠNG 4: TRIỂN KHAI XÂY DỰNG ỨNG DỤNG.....................................35
5.1. Các trang dữ liệu Firebase......................................................................................35
5.1.1. Trang xác thực người dùng...............................................................................35
5.1.2. Trang Cơ sở dữ liệu Firetore............................................................................35
5.1.3.2. Trang thông tin thể loại sản phẩm.....................................................................36
5.2. Các trang ứng dụng thành phần..............................................................................37
5.2.1. Đăng ký và Đăng nhập.....................................................................................37
5.2.2. Màn hình chính................................................................................................37
5.2.3. Các trang sản phẩm..........................................................................................38
5.2.4. Trang thông tin sản phẩm.................................................................................42
5.2.5. Trang Giỏ hàng................................................................................................43
5.2.6. Trang Thông tin người dùng............................................................................44
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.............................................................45 5
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
Kết quả đạt được............................................................................................................45
Lý thuyết....................................................................................................................45
Điểm nổi bật...............................................................................................................46
Các ý tưởng mới.........................................................................................................46
Hạn chế.......................................................................................................................... 46
Hướng phát triển............................................................................................................46
TÀI LIỆU THAM KHẢO.....................................................................................47 6
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 DANH MỤC HÌNH ẢNH
Hình 1.1. Ngôn ngữ lập trình..............................................................................................2
Hình 2.2. Ngôn ngữ lập trình Kotlin...................................................................................1
Hình 2.8. Cơ sở dữ liệu Firebase.........................................................................................2
Hình 2.9. Ngô ngữ thiết kế hệ thống UML.........................................................................4 7
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 DANH MỤC BIỂU ĐỒ
Biểu đồ 3.1. Biểu đồ Use Case tổng thể..............................................................................6
Biểu đồ 3.2. Biểu đồ Use Case Khách hàng........................................................................6
Biểu đồ 3.3. Biểu đồ Use Case Quản trị..............................................................................7
Biểu đồ 3.4. Biểu đồ Use Case Đăng ký, đăng nhập...........................................................7
Biểu đồ 3.5. Biểu đồ Use Case Tìm kiếm sản phẩm...........................................................8
Biểu đồ 3.6. Biểu đồ Use Case Xem giỏ hàng....................................................................8
Biểu đồ 3.7. Activity Đăng ký tài khoản...........................................................................15
Biểu đồ 3.8. Activity Đăng nhập.......................................................................................15
Biểu đồ 3.9. Activity Tìm kiếm........................................................................................16
Biểu đồ 3.10. Activity Thêm sản phẩm.............................................................................17
Biểu đồ 3.11. Activity Sửa sản phẩm................................................................................18
Biểu đồ 3.12. Activity Xóa sản phẩm...............................................................................19
Biểu đồ 3.13. Sequence Đăng ký tài khoản.......................................................................20
Biểu đồ 3.14. Sequence Đăng nhập..................................................................................21
Biểu đồ 3.15. Sequence Tìm kiếm sản phẩm....................................................................22
Biểu đồ 3.16. Sequence Thêm sản phẩm..........................................................................22
Biểu đồ 3.17. Sequence Sửa sản phẩm..............................................................................23
Biểu đồ 3.18. Sequence Xóa sản phẩm.............................................................................23 8
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
CHƯƠNG 1: GIỚI THIỆU 1.1. Tổng quan đề tài 1.1.1. Tên đề tài
Xây dựng ứng dụng so sánh sản phẩm
1.1.2. Lý do chọn đề tài
Trong bối cảnh xã hội phát triển không ngừng, nhu cầu của con người về cuộc
sống hàng ngày càng cao. Công nghệ thông tin ngày càng trở thành công cụ không thể
thiếu, giúp đáp ứng những nhu cầu thiết yếu của con người. Đặc biệt, với sự bùng nổ của
Internet và xu hướng toàn cầu hóa, nhu cầu trao đổi hàng hóa và sử dụng các hình thức
kinh doanh trực tuyến ngày càng tăng.
Nhận thấy điều này, chúng em quyết định xây dựng một ứng dụng so sánh sản
phẩm. Ứng dụng này sẽ giúp người dùng dễ dàng tìm kiếm thông tin về các sản phẩm từ
nhiều nguồn khác nhau, so sánh chất lượng và giá cả, từ đó đưa ra quyết định mua hàng
một cách thông minh và tiết kiệm thời gian.
Ứng dụng sẽ tập trung vào việc cung cấp thông tin chi tiết về sản phẩm, bao gồm
hình ảnh, mô tả, giá cả, đánh giá của người dùng và nhiều hơn nữa. Nó cũng sẽ cho phép
người dùng lọc sản phẩm theo nhiều tiêu chí khác nhau, như loại sản phẩm, giá cả, thương hiệu, và đánh giá.
Với ứng dụng này, chúng em hy vọng sẽ giúp người dùng tiếp cận được với thông
tin sản phẩm một cách nhanh chóng và thuận tiện, giúp họ đưa ra quyết định mua hàng
một cách dễ dàng hơn. Đồng thời, ứng dụng cũng giúp các cửa hàng và công ty quảng bá
sản phẩm của mình đến với một lượng lớn khách hàng một cách hiệu quả.
1.1.3. Mục đích chọn đề tài
Dịch vụ mua bán hàng qua Internet hiện nay rất phổ biến, nhưng sự tiện lợi, lợi của
nó mang lại rất lớn, tạo cho con người sự tin cậy, mà nhất là trong xã hội ngày nay. Áp
dụng thương mại điện tử là một lựa chọn đúng đắn để thực hiện lúc này.
Quảng bá được sản phẩm chất lượng, đưa thương hiệu đi xa, tăng khả năng tương
tác với khách hàng, tăng sự uy tín với doanh nghiệp, đáp ứng kịp thời nhu cầu và hỗ trợ
những thắc mắc của khách hàng.
1.2. Nhiệm vụ thực hiện đề tài 1.2.1. Nhiệm vụ
- Xây dựng mô hình tổng quan của hệ thống ứng dụng.
- Xây dựng tiêu đề ứng dụng.
- Quản lý hoạt động của người quản trị.
- Quản lý thông tin của khách hàng. 9
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
- Quản lý các đơn hàng và hình thức thanh toán.
1.2.2. Đối tượng, phạm vi tìm hiểu
- Đối tượng nghiên cứu của đề tài là môn lập trình di động nói chung và ngôn ngữ lập
trình JavaScript framework React Native nói riêng.
- Nghiên cứu nhu cầu của người dùng tiềm năng trong thời đại Công nghệ 4.0 hiện nay,
đưa ra ứng dụng, nội dung phù hợp để phục vụ cho con người.
Hình 1. Framework React Native
1.2.3. Kết quả dự kiến
Ứng dụng được thiết kế cẩn thận, giao diện đẹp mắt, nội dung chất lượng và được bố trí khoa học.
Mục tiêu của đề tài là có thể áp dụng vào thực tế. ứng dụng sẽ cung cấp các thông
tin sản phầm cần thiết cho khách hàng, thuận tiện cho việc quản lý cửa hàng. 10
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
CHƯƠNG 2: NGHIÊN CỨU TỔNG QUAN
2. Ngôn ngữ lập trình được sử dụng
2.1. Ngôn ngữ JavaScript và Framework React Native

JavaScript là một ngôn ngữ lập trình. Nó là một ngôn ngữ lập trình bậc cao, thường
được biên dịch tức thời (just-in-time compiled) và đa mô hình (multi-paradigm).
JavaScript được sử dụng rộng rãi trong phát triển web, cho phép tạo ra các trang web
tương tác và cải thiện trải nghiệm người dùng. Nó có thể được nhúng trực tiếp vào HTML
và giúp cho website trở nên sống động hơn.
Hình 2. Framework React Native
Điểm mạnh của React Native:
- Đa nền tảng: React Native cho phép bạn xây dựng ứng dụng di động cho cả nền tảng iOS
và Android bằng việc sử dụng JavaScript. Điều này giúp giảm bớt công sức và thời gian
cần thiết để phát triển và duyệt ứng dụng trên nhiều nền tảng.
- Tích hợp với các thư viện JavaScript hiện có: React Native có thể sử dụng tất cả các thư
viện JavaScript hiện có, giúp tận dụng tối đa các công cụ và nguồn lực có sẵn.
- Dễ học và dễ tiếp cận: React Native sử dụng JSX (JavaScript XML) để định nghĩa giao
diện người dùng, và nó có cú pháp rất giống với HTML. Điều này giúp người mới học lập
trình có thể tiếp cận dễ dàng. 11
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
- Mã nguồn mở: React Native là một framework mã nguồn mở, không tốn kém gì để sử dụng.
- Chuyển đổi tự động từ JavaScript sang React Native: Có nhiều công cụ hỗ trợ chuyển đổi
từ JavaScript sang React Native, giúp tiết kiệm thời gian và công sức.
- Xử lý lỗi mạnh mẽ: React Native có cơ chế xử lý lỗi mạnh mẽ, giúp người lập trình dễ
dàng tìm và khắc phục lỗi.
- Review code dễ dàng: React Native có cú pháp dễ hiểu, dễ đọc, giúp việc review code trở nên dễ dàng hơn.
2.2. Heroku Cloud Application Platform
Heroku là một nền tảng để phát triển ứng dụng web và di động, bao gồm các API
đơn giản và mạnh mẽ mà không cần backend hay server. Là dịch vụ cơ sở dữ liệu hoạt
động trên nền tảng đám mây – cloud. Kèm theo đó là hệ thống máy chủ cực kỳ mạnh mẽ của Salesforce.
Hình 3. Heroku-Cloud Application Platform
Chức năng chính là giúp người dùng lập trình ứng dụng bằng cách đơn giản hóa các thao
tác với cơ sở dữ liệu. Cụ thể là những giao diện lập trình ứng dụng API đơn giản. Mục
đích nhằm tăng số lượng người dùng và thu lại nhiều lợi nhuận hơn. Đặc biệt, còn là dịch
vụ đa năng và bảo mật cực tốt.
Heroku hỗ trợ nhiều ngôn ngữ lập trình như Ruby, Node.js, Python, Java, Go, PHP và
Scala. Không có gì khó hiểu khi nhiều lập trình viên chọn Heroku làm nền tảng đầu tiên
để xây dựng ứng dụng cho hàng triệu người dùng trên toàn thế giới. 12
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 Ưu điểm của Heroku: 
Tạo tài khoản và sử dụng dễ dàng 
Tốc độ phát triển nhanh 
Nhiều dịch vụ trong một nền tảng 
Được cung cấp bởi Salesforce 
Tập trung vào phát triển giao diện người dùng  Heroku không có máy chủ  Học máy (Machine Learning)  Tạo lưu lượng truy cập  Theo dõi lỗi  Sao lưu
2.3. Ngôn ngữ thiết kế hệ thống UML
UML (Unified Modeling Language) là ngôn ngữ dành cho viê ̣c đă ̣c tả, hình dung,
xây dựng và làm tài liê ̣u của các hê ̣ thống phần mềm.
UML tạo cơ hô ̣i để viết thiết kế hê ̣ thống, bao gồm những khái niê ̣m như tiến trình
nghiê ̣p vụ và các chức năng của hê ̣ thống.
Cách xây dựng các mô hình trong UML phù hợp mô tả các hệ thống thông tin cả
về cấu trúc cũng như hoạt động. Cách tiếp cận theo mô hình của UML giúp ích rất nhiều
cho những người thiết kế và thực hiện hệ thống thông tin cũng như những người sử dụng
nó; tạo nên một cái nhìn bao quát và đầy đủ về hệ thống thông tin dự định xây dựng. Cách
nhìn bao quát này giúp nắm bắt trọn vẹn các yêu cầu của người dùng; phục vụ từ giai
đoạn phân tích đến việc thiết kế, thẩm định và kiểm tra sản phẩm ứng dụng công nghệ thông tin.
UML sử dụng một hệ thống ký hiệu thống nhất biểu diễn các Phần tử mô hình
(model elements). Tập hợp các phần tử mô hình tạo thành các Sơ đồ UML (UML
diagrams). Có các loại sơ đồ UML chủ yếu sau:
- Sơ đồ lớp (Class Diagram).
- Sơ đồ đối tượng (Object Diagram).
- Sơ đồ tình huống sử dụng (Use Cases Diagram).
- Sơ đồ trình tự (Sequence Diagram).
- Sơ đồ cộng tác (Collaboration Diagram hay là Composite Structure Diagram).
- Sơ đồ trạng thái (State Machine Diagram).
- Sơ đồ thành phần (Component Diagram).
- Sơ đồ hoạt động (Activity Diagram).
- Sơ đồ triển khai (Deployment Diagram).
- Sơ đồ gói (Package Diagram). 13
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
- Sơ đồ liên lạc (Communication Diagram).
Hình 4. Thiết kế hệ thống UML 14
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
3.1. Mô tả hệ thống
Ứng dụng được tạo ra để đáp ứng nhu cầu của khách hàng về một ứng dụng cung
cấp đa dạng chất lượng, mẫu mã, giá thành về các sản phẩm từ nhiều nhà cung cấp khác
nhau. Xây dựng ứng dụng so sánh sản phẩm.
Yêu cầu của ứng dụng là thể hiện được các sản phẩm, thông tin sản phẩm, cho
phép khách hàng có thể xem và so sánh giữa các sản phẩm từ nhiều nhà cung cấp, đồng
thời xem những tin tức về các loại sản phẩm, thông tin về sản phẩm mới, tin tức khuyến
mãi của các nhà cung cấp một cách nhanh chóng,…
3.2. Tổng quan ứng dụng
- Giao diện trực quan, sinh động, thân thiện với người dùng.
- Người dùng có thể dễ dàng tìm kiếm, xem mẫu mà, đặt hàng các sản phẩm áo quần
phụ kiện mà họ quan tâm tại ứng dụng, các chương trình sắp tới.
- Người dùng sau khi đăng nhập có thể dễ dàng xem các sản phẩm.
- Người quản trị có thể dễ dàng quản lý thông tin sản phẩm và thông tin khách hàng.
3.3. Các nhóm chức năng của hệ thống - Quản trị (Admin) + Quản lý sản phẩm.
+ Quản lý danh mục sản phẩm. + Quản lý khách hàng. + Quản lý đơn hàng. + Thống kê báo cáo. - Khách hàng (Member) + Đăng ký. + Đăng nhập. + Đăng xuất.
+ Xem sản phẩm nổi bật. + Tìm kiếm sản phẩm. + Xem chi tiết sản phầm.
+ Quản lý thông tin cá nhân.
+ Thêm sản phẩm vào giỏ hàng. + Quản lý giỏ hàng. 15
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 + Quản lý đơn hàng. 3.4. Biểu đồ Use Case
3.4.1. Biều đồ Use Case tổng thể

3.4.2. Biểu đồ Use Case Khách hàng 16
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.4.3. Biểu đồ Use Case Quản trị
3.4.4. Biểu đồ Use Case Đăng ký, đăng nhập 17
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.4.5. Biểu đồ Use Case Tìm kiếm sản phẩm
3.4.6. Biểu đồ Use Case Xem giỏ hàng
3.5. Đặc tả một số Use Case 3.5.1. Đăng ký *Use Case ID: DK - 1.0 18
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 *Use Case Name: Đăng ký *Description:
Khách hàng muốn đăng ký tài khoản để sử dụng dịch vụ từ ứng dụng. *Actors:
Khách hàng chưa có tài khoản tại hệ thống. *Trigger:
Khách hàng muốn đăng ký tài khoản.
*Pre-Conditions(s): Thiết bị đã được kết nối internet khi đăng ký.
*Post-Condition(s): - Khách hàng đăng ký thành công.
- Hệ thống ghi nhận hoạt động đăng ký thành công. *Basic Flow:
1. Khách hàng truy cập ứng dụng. 2. Đăng ký tài khoản.
3. Nhập thông tin tài khoản và chọn lệnh đăng ký.
4. Hệ thống xác thực thông tin
đăng ký thành công và cho
phép truy cập hệ thống.
5. Hệ thống ghi nhận hoạt động đăng ký thành công. *Exception Flow:
4.1. Hệ thống xác thực thông
tin đăng ký không thành công và hiển thị thông báo
4.1.1. Khách hàng chọn lệnh hủy đăng nhập.
Use case tiếp tục UC 1-3 3.5.2. Đăng nhập *Use Case ID: DN - 1.0 *Use Case Name: Đăng nhập *Description:
- Khách hàng muốn đăng nhập để sử dụng dịch vụ từ ứng dụng.
- Quản trị muốn đăng nhập để quản lý. *Actors:
Khách hàng, quản trị đã có tài khoản tại hệ thống. *Trigger:
- Khách hàng muốn đăng nhập vào ứng dụng.
- Quản trị muốn đăng nhập vào hệ thống quản lý.
*Pre-Conditions(s): - Tài khoản đã được tạo.
- Thiết bị đã được kết nối internet khi đăng nhập.
*Post-Condition(s): - Khách hàng, quản trị đăng nhập thành công.
- Hệ thống ghi nhận hoạt động đăng nhập thành công. *Basic Flow:
1. Khách hàng, quản trị truy cập ứng dụng. 2. Đăng nhập tài khoản.
3. Nhập tài khoản và chọn lệnh đăng nhập.
4. Hệ thống xác thực thông tin
đăng nhập thành công và cho 19
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 phép truy cập hệ thống
5. Hệ thống ghi nhận hoạt động đăng nhập thành công. *Exception Flow:
4.1. Hệ thống xác thực thông
tin đăng nhập không thành
công và hiển thị thông báo
4.1.1. Khách hàng, quản trị
chọn lệnh hủy đăng nhập.
Use case tiếp tục UC 1-3
3.5.3. Tìm kiếm sản phẩm *Use Case ID: TK - 1.0 *Use Case Name: Tìm kiếm sản phẩm *Description:
Khách hàng muốn tìm kiếm sản phẩm trên ứng dụng. *Actors: Khách hàng. *Trigger:
Khách hàng muốn tìm kiếm sản phẩm
*Pre-Conditions(s): - Khách hàng truy cập ứng dụng.
- Thiết bị đã được kết nối internet khi đăng nhập.
*Post-Condition(s): - Khách hàng truy cập vào ứng dụng.
- Khách hàng thực hiện tìm kiếm sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Tìm kiếm trên ứng dụng. *Basic Flow:
1. Khách hàng truy cập ứng dụng.
2. Khách hàng tìm sản phẩm
với các thao tác từ khóa.
3. Hệ thống xác thực thông tin tìm kiếm.
4. Hệ thống ghi nhận hoạt động
tìm sản phẩm và hiển thị sản phẩm ra ngoài. *Exception Flow:
3.1. Hệ thống xác thực thông
tin tìm kiếm không đúng và hiển thị thông báo
3.1.1. Khách hàng điền lại thông tin tiềm kiếm.
Use case tiếp tục UC 2.
3.5.4. Thêm sản phẩm *Use Case ID: SP - 1.0 *Use Case Name: Thêm sản phẩm 20
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 *Description:
Quản trị muốn thêm sản phẩm vào ứng dụng *Actors: Quản trị *Trigger:
Quản trị muốn thêm sản phẩm *Pre-Conditions(s):
- Quản trị thêm đúng các list thông tin về sản phẩm.
- Thiết bị đã được kết nối internet. *Post-Condition(s):
- Quản trị đăng nhập vào hệ thống thành công
- Quản trị thực hiện điền các thông tin sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Thêm sản phẩm trên sản phẩm. *Basic Flow:
1. Quản trị truy cập hệ thống.
2. Quản trị điền các thông
tin cần cho Sản phẩm mới.
3. Quản trị điền đúng định
dạng của các mục trong Sản phẩm.
4. Hệ thống xác thực thông tin
điền đúng định dạng.
5. Hệ thống ghi nhận hoạt động
thêm Sản phẩm và cho phép Sản
phẩm hiện lên ứng dụng. *Exception Flow: 4.1. Hệ thống xác thực thông tin điền vào không
đúng định dạng và hiển thị thông báo
4.1.1. Quản trị điền lại thông
tin theo đúng định dạng.
Use case tiếp tục UC 2-3.
3.5.5. Sửa sản phẩm *Use Case ID: SP - 1.1 *Use Case Name: Sửa sản phẩm *Description:
Quản trị muốn sửa sản phẩm trên ứng dụng. *Actors: Quản trị *Trigger:
Quản trị muốn sửa sản phẩm
*Pre-Conditions(s): - Quản trị sửa thông tin về sản phẩm.
- Thiết bị đã được kết nối internet.
*Post-Condition(s): - Quản trị đăng nhập vào hệ thống thành công
- Quản trị thực hiện sửa các thông tin sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Sửa sản phẩm trên sản phẩm. *Basic Flow:
1. Quản trị truy cập hệ thống. 21
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
2. Quản trị sửa các thông tin sản phẩm.
3. Quản trị sửa thông tin sản phẩm.
4. Hệ thống xác thực thông tin
điền đúng định dạng.
5. Hệ thống ghi nhận hoạt động sửa thông tin Sản phẩm *Exception Flow:
4.1. Hệ thống xác thực thông
tin sửa không đúng định dạng và hiển thị thông báo
4.1.1. Quản trị sửa lại thông tin theo đúng định dạng.
Use case tiếp tục UC 2-3.
3.5.6. Xóa sản phẩm *Use Case ID: SP - 1.2 *Use Case Name: Xóa sản phẩm *Description:
Quản trị muốn xóa sản phẩm ra khỏi ứng dụng. *Actors: Quản trị *Trigger:
Quản trị muốn xóa sản phẩm. *Pre-Conditions(s):
- Quản trị xóa thông tin về sản phẩm.
- Thiết bị đã được kết nối internet. *Post-Condition(s):
- Quản trị đăng nhập vào hệ thống thành công
- Quản trị thực hiện xóa sản phẩm.
- Hệ thống ghi nhận hoạt động liên quan đến Xóa sản phẩm trên sản phẩm. *Basic Flow:
1. Quản trị truy cập hệ thống.
2. Quản trị thực hiện thao tác xóa sản phẩm.
3. Hệ thống xác thực thao tác xóa sản phẩm phẩm
4. Hệ thống ghi nhận hoạt động xóa sản phẩm *Exception Flow:
4.1. Hệ thống xác thực thông
tin xóa không thành công và hiển thị thông báo
4.1.1. Quản trị thực hiện lại thao tác xóa sản phẩm
Use case tiếp tục UC 2. 22
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 3.6 Biểu đồ Lớp:
3.6.1 Biểu đồ lớp tổng quát:
3.6.2 Danh sách các lớp đối tượng của hệ thống
Products: Lớp sản phẩm Các phương thức chính: -
Thêm: thêm mới một sản phẩm 23
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 -
Sửa: sửa thông tin sản phẩm -
Xóa: xóa thông tin sản phẩm -
Tìm kiếm: tìm kiếm thông tin sản phẩm -
Hiển thị: hiển thị thông tin sản phẩm 
Category: lớp danh mục sản phẩm Các phương thức chính:
- Thêm: thêm danh mục sản phẩm
- Sửa: sửa thông tin danh mục sản phẩm
- Xóa: xóa thông tin danh mục sản phẩm
- Hiển thị: hiển thị thông tin danh mục 
Orders: lớp hóa đơn Các phương thức chính:
- Thêm: thêm sản phẩm vào hóa đơn 
Customers: lớp khách hàng Các phương thức chính:
- Thêm: thêm mới thông tin khách hàng
- Sửa: sửa thông tin khách hàng
- Xóa: xóa thông tin khách hàng. 
Suppliers: Lớp nhà cung cấp Các phương thức chính:
- Thêm: thêm mới thông tin nhà cung cấp sản phẩm
- Sửa: sửa thông tin nhà cung cấp
- Xóa: xóa thông tin nhà cung cấp 24
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 
AspNetRoles: Lớp vai trò, quyền Các phương thức chính:
- Thêm: thêm vai trò, quyền - Xóa: xóa quyền. 
AspNetUserRoles: Lớp cấp vai trò cho người dùng Các phương thức chính:
- Thêm: thêm mới thông tin người dùng
- Sửa: sửa thông tin người dùng
- Xóa: xóa thông tin người dùng 
Permissions: Lớp cấp quyền truy cập Các phương thức chính:
- Thêm: thêm quyền truy cập cho người dùng
- Xóa: xóa quyền truy cập ngươi dùng
3.7. Biểu đồ hoạt động 25
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.7.1. Đăng ký tài khoản 3.7.2. Đăng nhập 26
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 3.7.3. Tìm kiếm 27
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.7.4. Thêm sản phẩm 28
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.7.5. Sửa sản phẩm 29
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.7.6. Xóa sản phẩm 30
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.8. Biểu đồ tuần tự
3.8.1. Đăng ký tài khoản
31
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 3.8.2. Đăng nhập 32
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.8.3. Tìm kiếm sản phẩm
3.8.4. Thêm sản phẩm 33
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
3.8.5. Sửa sản phẩm
3.8.6. Xóa sản phẩm 34
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
CHƯƠNG 4: TRIỂN KHAI XÂY DỰNG ỨNG DỤNG 35
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Kết quả đạt được Lý thuyết
Để xây dựng một hệ thống bán hàng là một việc không hề đơn giản, nó đòi hỏi
chúng ta phải xây dựng theo các giai đoạn: khảo sát, phân tích và thiết kế hệ thống,
nghiên cứu tổng quan các công cụ lập trình, thiết kế ứng dụng và kiểm thử. Ngày nay
chúng ta đang đứng trước nhiều lựa chọn về công nghệ mới vậy nên một ứng dụng giúp
bán hàng trực tuyến một cách đơn giản, tối ưu hơn là điều không thể thiếu. Thông qua
nghiên cứu và xây dựng đề tài này, chúng em đã củng cố, học hỏi thêm được nhiều thứ như:
- Hiểu và xây dựng được phân tích và thiết kế hệ thống. Vẽ và thao tác được nhiều biểu
đồ: biểu đồ use-case, biểu đồ hoạt động, biểu đồ lớp, biểu đồ tuần tự… Đặc tả được use- case.
- Học hỏi và hiểu sâu hơn về ngôn ngữ lập trình JavaScript và framework React Native, biết cách sử dụng UML.
- Nâng cao trình độ thao tác, tư duy lập trình nhạy bén hơn.
- Qua ứng dụng bán hàng trực tuyến này thì em có thể xây dựng được nhiều ứng dụng
tương tự. Từ đó giúp phát triển khả năng lập trình tốt hơn.
Từ những nghiên cứu và bắt tay vào xây dựng đề tài thì chúng em đã đạt được một số kết quả như sau:
- Tạo nên một ứng dụng bán hàng với giao diện có tính thẩm mỹ cao, nhiều chức năng
mới mẻ, tối ưu hóa trong việc quản lý bán hàng.
- Giúp khách hàng mua hàng một cách nhanh chóng và tiện lợi.
- Sử dụng ứng dụng vào các công việc quản lý bán hàng dễ dàng, thuận tiện hơn. Việc lưu
trữ các thông tin, đơn đơn hàng, sản phẩm sẽ tối ưu hơn.
- Dễ dàng hơn trong việc thống kê báo cáo doanh thu của cửa hàng. Điểm nổi bật
- Hiển thị sản phẩm theo các đơn hàng được đặt mới nhất.
- Các sản phẩm được chia thành các trang con rõ ràng.
- Tìm kiếm sản phẩm dễ dàng.
- Phương thức đặt hàng dễ dàng. Các ý tưởng mới
Ứng dụng có thêm nhiều chức năng để phù hợp với một trang về thương mại điện
tử. Cập nhật thêm các mẫu mã mới. Hạn chế
Do thời gian hạn chế nên việc nghiên cứu và tìm hiểu để xây dựng hệ thống ứng
dụng chưa được tối ưu nhất, ứng dụng còn một số chức năng chưa được hoàn chỉnh nhất
có thể, một số vấn đề còn chưa giải quyết được mượt mà và nhanh gọn, cơ sở dữ liệu còn
sơ sài, giao diện còn đơn giản. 36
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 Hướng phát triển
Hoàn thiện giao diện với đầy đủ chức năng, phát triển ứng dụng rộng rãi phổ biến
hơn trong quản lý bán hàng. Đây là một ứng dụng thực tế, cần nhiều thời gian đề hoàn
thiện hơn. Vì vậy trong khuôn khổ đồ án này em chỉ có thể đưa ra những chức năng cơ
bản, mô phỏng một số yêu cầu trong thực tế. Đồ án của em còn rất nhiều thiếu sót, rất
mong được sự đóng góp ý kiến từ quý thầy cô để em hoàn thiện dự án này hơn. 37
Downloaded by Van Le (mrl3v4n@gmail.com) lOMoARcPSD|25518217 TÀI LIỆU THAM KHẢO Các trang web: [1] https://www.w3schools.com/ [2] https://www.javatpoint.com/ [3] https://viblo.asia/ [4] https://freetuts.net/ [5] https://www.youtube.com/ 38
Downloaded by Van Le (mrl3v4n@gmail.com)