1. Trang chủ
  2. » Tất cả

MẪU ĐỒ ÁN -KHOÁ LUẬN TỐT NGHIỆP

31 10 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 31
Dung lượng 2,63 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

MẪU ĐỒ ÁN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ĐỒ ÁN CHUYÊN NGÀNH 2 ĐỀ TÀI XÂY DỰNG APPLICATION E COMMERCE Sinh viên thực hiện TRẦN NGÔ THIỆN THÀNH NGUYỄN DUY[.]

Trang 1

ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỒ ÁN CHUYÊN NGÀNH 2

ĐỀ TÀI: XÂY DỰNG APPLICATION E-COMMERCE

Sinh viên thực hiện : TRẦN NGÔ THIỆN THÀNH

NGUYỄN DUY THƯỜNG Giảng viên hướng dẫn : TS.LÊ THỊ THU NGA

Lớp : 17IT3

Đà nẵng, tháng 5 năm 2021

Trang 2

ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỒ ÁN CHUYÊN NGÀNH 2

XÂY DỰNG APPLICATION E-COMMERCE

Trang 3

Đà Nẵng, tháng 5 năm 2021

Trang 4

Thông qua bản báo cáo này, chúng em xin được gửi lời chân thành cảm ơn đếnBan giám hiệu nhà trường và cùng các thầy cô trong khoa đã tạo những điều kiện tốtnhất cho chúng em trong suốt thời gian học tập và sinh hoạt tại trường; xin chânthành cảm ơn cô TS.Lê Thị Thu Nga, giáo viên phụ trách hướng dẫn chúng em tậntình trong suốt quá trình thực hiện đề tài này.

Chúng em xin chân thành cảm ơn quý thầy cô đã nhiệt tình giảng dạy, truyềnđạt những kiến thức, kinh nghiệm quý báu và hơn hết là tình cảm mà quý thầy cô đãdành cho chúng em trong suốt quá trình giảng dạy

Mặc dù cố gắng hoàn thành đồ án trong phạm vi và khả năng cho phép nhưngchắc chắn sẽ không tránh khỏi những thiếu sót Chúng em rất mong nhận được sựthông cảm, góp ý và tận tình chỉ bảo của thầy, cô và tất cả các bạn để đề tài ngàycàng hoàn thiện hơn

Chúng em xin chân thành cảm ơn!

Đà Nẵng, tháng 5 năm 2021Sinh viên thực hiệnTrần Ngô Thiện ThànhNguyễn Duy Thường

Trang 5

NHẬN XÉT

………

………

………

………

………

………

………

Trang 6

MỤC LỤC

MỞ ĐẦU 1

1 Giới thiệu 1

2 Mục tiêu của đề tài 1

3 Yêu cầu 1

4 Đối tượng và phạm vi nguyên cứu 2

5 Đóng góp của đề tài 2

6 Bố cục của đề tài 2

Chương 1 Tổng quan về đề tài 3

1.1 Công cụ và ngôn ngữ thực hiện trong đề tài 3

1.2 Thư viện thực hiện trong đề tài 3

1.2.1 TensorFlow 3

1.2.2 Firebase 4

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

2.1.Phân tích hệ thống 6

2.1.1 Mô tả nghiệp vụ 6

2.1.2 Yêu cầu hệ thống 6

2.1.3 Bảo mật và quyền hạn 7

2.2.Mô hình nhận diện sản phẩm 7

2.3.Mô hình usecase 8

2.3.1 Danh sách các Use Case 9

2.3.2 Đặt tả use case Mobile 9

2.4 Sơ đồ tuần tự 11

2.4.1 Đăng nhập của người dùng với android 12

2.4.2 Quy trình thêm sản phẩm vào giỏ hàng với mobile 12

2.4.3 Quy trình đặt mua hàng với mobile 12

2.5 Sơ đồ diagram 13

2.6 Mô hình tổng quan của hệ thống nghiên cứu 14

2.6.1 Lược đồ liên kết giữa các bản hệ thống 14

2.6.2 Lược đồ liên kết các bản bảo mật 14

2.7 Thiết kế hệ thống 14

2.7.1 Xác định thực thể 14

2.7.2 Mô tả chi tiết thực thể 16

Chương 3 Triển khai xây dựng 21

3.1 Đánh giá mô hình nhận diện được tích hợp vào hệ thống 21

3.2 Giao diện người dùng 21

Kết luận và Hướng phát triển 24

Kết quả đạt được 24

Hướng phát triển 24

Trang 7

DANH MỤC HÌNH

Hình 1 Mô hình nhận diện sản phẩm 7

Hình 2 Sơ đồ usecase 9

Hình 3 Sơ đồ tuần tự quy trình đăng nhập 12

Hình 4 Sơ đồ tuần tự quy trình thêm sản phẩm 12

Hình 5 Sơ đồ tuần tự quy trình thêm đặc mua 13

Hình 6 Sơ đồ diagram 13

Hình 7 Lược đồ hệ thống bán hàng 14

Hình 8 Lược đồ hệ thống bảo mật 14

Hình 9 Tỉ lệ độ chính xác 21

Hình 10 Giao diện chính người dung trên android 22

Hình 11 Giao diện nhận diện tìm kiếm 22

Hình 12 Giao diện thông tin chi tiết và mua hàng 23

Trang 8

DANH MỤC BẢNG

Bảng 1 Danh sách các Actor 7

Bảng 2 Danh sách các Usecase 8

Bảng 3 Bảng categorires 14

Bảng 4 Bảng colors 14

Bảng 5 Bảng color_product 15

Bảng 6 Bảng comments 15

Bảng 7 Bảng orders 15

Bảng 8 Bảng order_product 16

Bảng 9 Bảng password_resets 16

Bảng 10 Bảng products 16

Bảng 11 Bảng product_size 17

Bảng 12 Bảng profiles 17

Bảng 13 Bảng reviews 18

Bảng 14 Bảng sizes 18

Bảng 15 Bảng social_accounts 18

Bảng 16 Bảng users 19

Trang 9

MỞ ĐẦU

1 Giới thiệu

Những tiến bộ to lớn về công nghệ, đặc biệt là công nghệ thông tin trongnhững thập niên cuối của thế kỷ 20 đã tạo ra bước ngoặt mới cho sự phát triểnkinh tế xã hội toàn cầu Chính trên nền tảng đó, một phương thức thương mại mới

đã xuất hiện và phát triển nhanh chóng, đó là thương mại điện tử Thương mạiđiện tử chính là một công cụ hiện đại sử dụng mạng Internet giúp cho các doanhnghiệp có thể thâm nhập vào thị trường, thu thập thông tin nhanh hơn, nhiều hơn

và chính xác hơn Với thương mại điện tử, các doanh nghiệp cũng có thể đưa cácthông tin về sản phẩm của mình đến các đối tượng khách hàng tiềm năng khácnhau ở mọi nơi trên thế giới với chi phí thấp hơn nhiều so với các phương pháptruyền thống

Trong xu thế phát triển mạnh mẽ của thương mại điện tử trên thế giới, cácdoanh nghiệp Việt Nam đặc biệt là các doanh nghiệp vừa và nhỏ, bộ phận chiếm

tỷ lệ lớn trong tổng số các doanh nghiệp Việt Nam, cũng đã bước đầu nhận thứcđược ích lợi và tầm quan trọng của việc ứng dụng thương mại điện tử Vì thế, cácdoanh nghiệp vừa và nhỏ cần xây dựng cho mình một chiến lược kinh doanh phùhợp với điều kiện thực tế hiện nay nhằm tiếp cận nhiều hơn nữa với thương mạiđiện tử để có thể khai thác tối đa lợi ích mà phương thức kinh doanh này đem lại.Ngày nay, các cửa hàng trực tuyến xuất hiện càng nhiều Cửa hàng trựctuyến sẽ đem lại nhiều lợi ích về cho người sử dụng Đối với doanh nghiệp, tiếtkiệm được không gian trưng bày sản phẩm, tiết kiệm nguồn nhân lực, tiết kiệmchi phí mặt bằng…Đối với khách hàng, tiết kiệm được thời gian đi lại, lựa chọnđược những sản phẩm ưa thích…Đây cũng là lý do để em chọn đề tài: “Xây dựngapplication E-COMMERCE” làm đề tài Đồ án chuyên ngành 2

2 Mục tiêu của đề tài

Mục tiêu chính của đề tài bao gồm:

- Giúp cho sinh viên hiểu biết về các phương pháp cũng như cách thứcxây dựng một hệ thống bán hàng

- Cụ thể hóa được kiến thức đã học để áp dụng làm một dự án thực tế cụthể là hệ thống bán hang bao gồm website và ứng dụng android

- Xây dựng một hệ thống mang lại thuận tiện cho người dùng, tiết kiệmthời gian khi có nhu cầu mua một sản phẩm

- Xây dựng một hệ thống giúp cho nhân viên quản lý thông tin một cáchtrực quan, thuận tiện

3 Yêu cầu

Yêu cầu chung:

- Tìm hiểu về hoạt động kinh doanh của hệ thống bán hàng

1

Trang 10

- Tìm hiểu các giải pháp xây dựng một hệ thống bán hàng như thế nào.

- Xây dựng một hệ thống mang tính thương mại hóa

- Xây dựng một trang web với đầy đủ các tính năng phục vụ cho việc bánhàng trực tuyến

- Xây dựng các chức năng giúp người quản trị dễ dàng quản lý nội dungtrang web

Xây dựng application ứng dụng thương mại điện tử:

- Xem danh sách các sản phẩm

- Xem thông tin chi tiết một sản phẩm

- Tìm kiếm sản phẩm, Đưa sản phẩm vào giỏ hàng, Đặt mua, Thanh toán,Góp ý, Liên hệ, Xem các tin tức…

4 Đối tượng và phạm vi nguyên cứu

- Hệ thống bán giày nam được xây dựng với tiêu chí phục vụ cho tất cảmọi người trong lĩnh vực thời trang với mong muốn đáp ứng đầy đủ cácmặt hàng, các chức năng của một app bán hàng trực tuyến

- Với khoảng thời gian có hạn nên chúng em đã giới hạn phạm vi nguyêncứu ở một mức độ hợp lý cho mình

+ Xây dựng các chức năng cho khách hàng

+ Xây dựng các chức năng nhận diện sản phẩm

- Thêm sản phẩm vào giỏ hàng

- Xem danh sách đơn hàng

Trang 11

Chương 1 Tổng quan về đề tài

1.1 Công cụ và ngôn ngữ thực hiện trong đề tài

1.1.1 Công cụ

Android Studio là môi trường phát triển tích hợp chính thức dành cho pháttriển android, được ra mắt vào ngày 16 tháng 5 năm 2013 tại hội nghị GoogleI/O.Android Studio được phát triển miễn phí theo giấy phép Apache Licence 2.0

Android Studio ở giai đoạn truy cập xem trước sớm bắt đầu từ phiên bản 0.1vào tháng 5.2013, sau đó bước vào giai đoạn beta từ phiên bản 0.8 được pháthành vào tháng 6 năm 2014 Phiên bản ổn định đầu tiên được ra mắt vào tháng 12năm 2014, bắt đầu từ phiên bản 1.0

Dựa trên phần mềm IntelliJ IDEA của JetBrains, Android Studio được thiết

kế đặc biệt để phát triển ứng dụng Android.Nó hỗ trợ các hệ điềuhành Windows, Mac OS X và Linux, và là IDE chính thức của Google để pháttriển ứng dụng Android gốc để thay thế cho Android Development Tools (ADT)dựa trên Eclipse

1.1.2 Ngôn Ngữ

Kotlin là một ngôn ngữ lập trình kiểu tĩnh chạy trên máy ảo Java (JVM) và

có thể được biên dịch sang mã nguồn Java hay sử dụng cơ sở hạ tầng trình biêndịch LLVM Nó được tài trợ và phát triển bởi bởi JetBrains Mặc dù cú phápkhông tương thích với Java, nhưng hiện thực JVM của thư viện chuẩn Kotlinđược thiết kế để tương tác với mã Java và dựa vào mã Java từ Java ClassLibrary có sẵn, ví dụ như collections framework.[2] Kotlin sử dụng suy luậnkiểu một cách tích cực để xác định kiểu của giá trị và biểu thức vốn không đượcnêu rõ Điều này giúp giảm tính dài dòng của ngôn ngữ so với Java, vốn thườngđòi hỏi toàn bộ đặc kiểu một cách dư thừa mãi đến phiên bản 10 Mã Kotlin cóthể chạy trên JVM đến phiên bản Java 11 mới nhất

Kotlin v1.3 được phát hành vào ngày 29 tháng 10 năm 2018, với cáccoroutine API cho lập trình bất đồng bộ

Kotlin nới lỏng các giới hạn của Java vốn chỉ cho phép phương thức vàbiến tĩnh (static) chỉ tồn tại trong thân hàm Đối tượng và hàm tĩnh có thể đượcđịnh nghĩa ở mức cao nhất (top level) của gói (package) mà không cần một mứccủa lớp dư thừa Để tương thích với Java, Kotlin cung cấp chú thích JvmName đểđặc tả một tên lớp được sử dụng khi gói được xem từ một dự án Java

1.2 Thư viện thực hiện trong đề tài

1.2.1. TensorFlow

TensorFlow là một thư viện phần mềm mã nguồn mở dành cho máyhọc trong nhiều loại hình tác vụ nhận thức và hiểu ngôn ngữ Nó hiện đang được

3

Trang 12

sử dụng cho cả nghiên cứu lẫn sản xuất bởi 50 đội khác nhau trong hàng tá sảnphẩm thương mại của Google, như nhận dạng giọng nói, Gmail, Google Photos,

và tìm kiếm,nhiều trong số đó đã từng sử dụng chương trình tiền nhiệmDistBelief của nó TensorFlow nguyên thủy được phát triển bởi đội Google Braincho mục đích nghiên cứu và sản xuất của Google và sau đó được phát hànhtheo giấy phép mã nguồn mở Apache 2.0 vào ngày 9/11/2015

TensorFlow thế hệ thứ hai của hệ thống học máy của Google Brain, với mộtbản cài đặt tham khảo đã phát hành dưới dạng phần mềm mã nguồn mở vào ngày9/11/2015 Trong khi bản cài đặt tham khảo chạy trên một thiết bị đơn,TensorFlow có thể chạy trên nhiều CPU và GPU (với nhiều mở rộng CUDA tùychọn cho việc tính toán đa năng trên các GPU) Nó chạy trên desktop Linux hoặcMac OS X 64-bit hoặc các hệ thống máy chủ, cũng như trên các nền tảng điệntoán di động, bao gồm Android và iOS của Apple Các tính toán của TensorFlowđược thể hiện dưới dạng các biểu đồ dataflow chi tiết Nhiều nhóm tại Google đãchuyển từ DistBelief sang TensorFlow để phục vụ cho việc nghiên cứu và sảnxuất.Thư viện thuật toán này bắt nguồn từ nhu cầu của Google để hướng dẫn (lậptrình) các hệ thống máy tính, được gọi là mạng nơron, để tìm hiểu và lý luậntương tự cách thức của con người, vì vậy mà các ứng dụng mới có thể được xuấtphát từ đây có thể đảm nhận các vai trò và chức năng vốn trước đây chỉ dành chonhững người có khả năng; cái tên TensorFlow bản thân nó xuất phát từ các thaotác mà các mạng nơron như vậy thực hiện trên các mảng dữ liệu đa chiều Nhữngmảng đa chiều được gọi là các "tensor" nhưng khái niệm này là không giống vớikhái niệm 'tensor' trong toán học Mục đích là để huấn luyện các mạng nơron pháthiện và giải mã các mẫu và các mối tương quan

Vào tháng 10 năm 2017, Firebase đã ra mắt Cloud Firestore, một cơ sở dữliệu tài liệu thời gian thực như là sản phẩm kế thừa của Cơ sở dữ liệu thời gianthực Firebase ban đầu

4

Trang 13

1.3 Mô hình nhận diện CNN

CNN được sử dụng nhiều trong các bài toán nhận dạng các object trong ảnh

Để tìm hiểu tại sao thuật toán này được sử dụng rộng rãi cho việc nhận dạng(detection), chúng ta hãy cùng tìm hiểu về thuật toán này

Convolutional Neural Network là một trong những phương pháp chính khi

sử dụng dữ liệu về ảnh Kiến trúc mạng này xuất hiện do các phương pháp xử lý

dữ liệu ảnh thường sử dụng giá trị của từng pixel Vậy nên với một ảnh có giá trịkích thước 100x100 sử dụng kênh RGB ta có tổng cộng ta có 100 * 100 * 3 bằng

30000 nút ở lớp đầu vào Điều đó kéo theo việc có một số lượng lớn weight vàbias dẫn đến mạng nơ-ron trở nên quá đồ sộ, gây khó khăn cho việc tính toán.Hơn nữa, chúng ta có thể thấy rằng thông tin của các pixel thường chỉ chịu tácđộng bởi các pixel ngay gần nó, vậy nên việc bỏ qua một số nút ở tầng đầu vàotrong mỗi lần huấn luyện sẽ không làm giảm độ chính xác của mô hình Vậy nênngười ta sử dụng cửa số tích chập nhằm giải quyết vấn đề số lượng tham số lớn

mà vẫn trích xuất được đặc trưng của ảnh

Về mặt kỹ thuật, trong mô hình học sâu CNN, mô hình ảnh đầu vào sẽchuyển nó qua một loạt các lớp tích chập với các bộ lọc, sau đó đến lớp Pooling,rồi tiếp theo là các lớp được kết nối đầy đủ (FC — fully connected layers) và cuốicùng áp dụng hàm softmax để phân loại một đối tượng dựa trên giá trị xác suấttrong khoản từ 0 đến 1

Mạng nơ-ron nhân tạo (Neural Network - NN) là một mô hình lập trình môphỏng cách thức hoạt động của mạng nơ-ron thần kinh Kết hợp với các kĩ thuậthọc sâu (Deep Learning - DL), mạng nơ-ron nhân tạo đang trở thành một công cụrất mạnh mẽ mang lại hiệu quả tốt nhất cho nhiều bài toán khó như nhận dạngảnh, giọng nói hay xử lý ngôn ngữ tự nhiên

Lịch sử phát triển của mạng nơ-ron nhân tạo bắt đầu khi Warren McCulloch

và Walter Pitts đã tạo ra một mô hình tính toán cho mạng nơ-ron dựa trên cácthuật toán gọi là logic ngưỡng vào năm 1943 Tuy nhiên, để làm quen và hiểuđược một số kiến thức cơ bản về mô hình mạng nơ-ron nhân tạp, chúng ta sẽ bànđến hồi quy logictics - thứ có thể coi là mô hình neural network đơn giản nhất vớichỉ input layer và output layer

5

Trang 14

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

2.1.Phân tích hệ thống

2.1.1 Mô tả nghiệp vụ

- Khách hàng bắt đầu duyệt những sản phẩm trên mobile, các sản phẩmđược bố trí theo từng loại đa dạng như sản phẩm mới, sản phẩm bánchạy…Khi đã ưng ý một sản phẩm khách hàng có thể kích vào hình sảnphẩm hoặc tên để xem thông tin chi tiết về sản phẩm Sau đó khách hàng

có thể chọn nút “Mua Ngay” để đưa sản phẩm vào giỏ hàng của mình, giỏ

hàng chỉ đơn giản là danh sách các sản phẩm bao gồm những thông tinnhư mã sản phẩm, tên sản phẩm, đơn giá, số lượng, thành tiền

- Các giỏ hàng thường cung cấp các tùy chọn để xóa sạch giỏ hàng, xóamột sản phẩm, tiếp tục mua sản phẩm và cập nhật số lượng

- Ngay sau khi khách hàng có tất cả các sản phẩm cần mua, khách hàng có

thể chọn nút “Đặt Mua” Trang đơn hàng này gồm có thông tin về khách

hàng (họ tên, email, địa chỉ…), thông tin về địa chỉ giao hàng (địa chỉ,ngày giao…), phương thức thanh toán (chuyển khoản, thanh toán tiền trựctuyến), sau cùng là thông tin về giỏ hàng (mã sản phẩm, tên sản phẩm, đơngiá, số lượng, thành tiền)

- Sau khi khách hàng đã điền đầy đủ thông tin thì chọn nút “Đặt Hàng” để

hoàn tất quá trình mua hàng

2.1.2 Yêu cầu hệ thống

Yêu cầu chức năng của đối tượng sử dụng application

- Người dùng app: Ngoài các chức năng của người dùng app còn có một sốchức năng sau:

+ Xem danh sách sản phẩm: Khi người dùng truy cập vào mobile thì hệthống sẽ tự động hiển thị một số sản phẩm nỗi bât Khi người dùngchọn vào một danh mục sản phẩm cụ thể nào thì tất cả sản phẩm củadanh mục đó sẽ hiển thị lên giao diện

+ Xem chi tiết sản phẩm: Sau khi tìm thấy sản phẩm cần, người dùng

có thể chọn vào sản phẩm để xem thông tin chi tiết của sản phẩm đó.+ Tìm kiếm: Khi khách hàng cần tìm một sản phẩm nào đó thì có thểnhập thông tin sản phẩm vào ô tìm kiếm để thực hiện chức năng tìmkiếm Nếu sản phẩm đó có tồn tại trong dữ liệu thì sẽ hiện thông tinsản phẩm được tìm thấy

+ Đăng ký: Khi Người dùng chung muốn mua hàng thì có thể thực hiệnchức năng đăng ký để trở thành thành viên của mobile và thực hiệncác chức năng mua hàng

6

Trang 15

+ Đưa sản phẩm vào giỏ hàng: Sau khi khách hàng tìm thấy sản phẩmđáp ứng nhu cầu của mình thì có thể chọn đưa sản phẩm vào giỏhàng.

+ Cập nhật giỏ hàng: Khi người dùng đã lựa chọn một sản phẩm nhưngtìm được một sản phẩm hợp lý hơn thì có thể xóa sản phẩm đã cótrong giỏ hàng vào chọn lại sản phẩm mới Ngoài ra, khi cần mua sảnphẩm đó với một số lượng thì người dùng cũng có thể cập nhật tronggiỏ hàng

+ Đặt mua: Sau khi xem thông tin sản phẩm đúng với nhu cầu thì ngườidùng có thể chọn đặt mua để đưa sản phẩm vào giỏ hàng

+ Xem danh sách sản phẩm: Khách hàng có thể xem lại các sản phẩm

mà mình từng đặt mua trên mobile

+ Quản lý đơn hàng: Sau khi đặt mua mà chưa thực hiện thanh toán thìkhách hàng có thể cập nhật lai đơn hàng

+ Thanh toán: Khi đã quyết định chắc chắn mua sản phẩm, người dùng

có thể chọn chức năng thanh toán để thực hiện xác nhận đơn hàngcho mình Muốn thực hiện thanh toán thì yêu cầu người dùng phảiđăng nhập vào hệ thống Trong quá trình thực hiện chức năng thanhtoán thì người dùng có thể thấy được danh sách sản phẩm mà mìnhđặt mua trong giỏ hàng Người dùng cần điền một số thông tin nhưngười nhận (người nhận và người đặt mua là hai người khác nhau),chọn hình thức giao hàng (giao đến tận nơi, chuyển qua các dịch vụ,khách hàng đến công ty để nhận hàng), chọn hình thức thanh toán.Sau khi thực hiện xong các bước thì người dùng xác nhận đơn hàng

Ngày đăng: 14/11/2022, 00:15

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w