You are on page 1of 31

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI

KHOA CÔNG NGHỆ THÔNG TIN


----------

BÁO CÁO BÀI TẬP LỚN


Đề tài: Xây dựng website bán thực phẩm

Giảng viên hướng dẫn : Nguyễn Trọng Phúc


Lớp : Công nghệ thông tin 4 - K58
Sinh viên thực hiện :
Đỗ Văn Cường (MSV: 171201933)
Kiều Văn Huy (MSV: 171200232)
Lê Xuân Lợi (MSV: 171200785)

Hà Nội, tháng 11 – 2020


NHẬN XÉT

Nhận xét của giảng viên hướng dẫn:


.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
GIẢNG VIÊN HƯỚNG DẪN
(Ký và ghi rõ họ tên)
Xây dựng website bán thực phẩm sạch Fresh Food

Lời mở đầu


Với tình trạng thực phẩm bẩn, thực phẩm nhiễm độc tràn lan trên thị trường bắt
buộc người tiêu dùng phải tìm đến những nơi cung cấp sản phẩm chất lương, có kiếm
chứng. Lúc này họ sử dụng mạng internet cụ thể là các công cụ tìm kiếm và mạng xã
hội. Vậy để tiếp cận được nhóm đối tượng khách hàng này nhất thiết bạn phải thiết kế
website bán hàng thực phẩm sạch để khi họ tìm kiếm trang web của bạn sẽ xuất hiện,
từ đó họ có thể vào trang web để xem thông tin, hình ảnh và liên hệ mua hàng trực tiếp
trên website hoặc cũng có thể đến tận nơi để xem.
Không những thế, người dùng hiện nay cũng rất cẩn trọng trước khi mua hàng
họ cần xem xét đơn vị cung cấp có uy tín hay không, đảm bảo chất lượng như thế nào.
Chính vì vậy, một website bán thực phẩm sạch chuyên nghiệp sẽ giúp bạn khẳng
định được uy tín với người tiêu dùng, mang đến trải nghiệm tốt nhất cho khách hàng
chính là cách bạn thuyết phục họ sử dụng sản phẩm của mình.
Thiết kế web bán thực phẩm sạch là giải pháp cực kỳ thông minh, giúp tiếp cận
sản phẩm sạch của mình đến với khách hàng tiềm năng, là xu thế phát triển internet
hiện nay.
Xây dựng website bán thực phẩm sạch Fresh Food

MỤC LỤC

DANH MỤC CÁC THUẬT NGỮ...............................................................................................1

DANH MỤC CÁC BẢNG.............................................................................................................2

DANH MỤC CÁC HÌNH VẼ.......................................................................................................3

CHƯƠNG 1:TỔNG QUAN VỀ ĐỀ TÀI...................................................................................5

1.1. Lý do chọn đề tài.................................................................................................5

1.2. Mục tiêu của đề tài..............................................................................................5

1.3. Giới hạn và phạm vi của đề tài............................................................................6

1.4. Nội dung thực hiện..............................................................................................7

1.5. Phương pháp tiếp cận..........................................................................................8

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT.............................................................................................9

2.1. Quy trình phát triển phần mềm............................................................................9

2.2. Phương pháp phân tích thiết kế hướng đối tượng và UML................................10

2.3. Hệ quản trị cơ sở dữ liệu MySQL......................................................................14

2.4. Thiết kế giao diện website.................................................................................14

2.6. Lập trình phía back-end.....................................................................................18

CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG....................................................20

3.1.Đặc tả yêu cầu phần mềm...................................................................................20

3.2.Thiết kế hệ thống................................................................................................36

CHƯƠNG 4: TRIỂN KHAI WEBSITE....................................................................................64

4.1.Triển khai các chức năng cho phân hệ người dùng.............................................64

4.2.Triển khai các chức năng cho phân hệ quản trị nội dung....................................64

4.3.Hướng dẫn cài đặt...............................................................................................64

4.4.Hướng dẫn sử dụng............................................................................................64

CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN......................................................65

5.1.Kết quả đạt được của bài tập lớn........................................................................65


Xây dựng website bán thực phẩm sạch Fresh Food

5.2.Hạn chế của bài tập lớn......................................................................................65

5.3.Hướng phát triển của bài tập lớn........................................................................65

TÀI LIỆU THAM KHẢO...........................................................................................67


DANH MỤC CÁC THUẬT NGỮ

STT Từ viết tắt Cụm từ tiếng anh Diễn giải


1 CMS Content Management Hệ quản trị nội dung
System
2 MySQL Relational Database Hệ quản trị cơ sở dữ liệu
Management System
3 PHP Hypertext Pre-processor Ngôn ngữ lập trình kịch bản
4 UML Unified Modeling Ngôn ngữ đặc tả,hình dung,
Language xây dựng và làm tài liệu của
các hệ thống phần mềm
5 HTML Hypertext Markup Ngôn ngữ đánh dấu siêu văn
Language bản

1
Xây dựng website bán thực phẩm sạch Fresh Food

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI


1.1. Lý do chọn đề tài

Thực phẩm là một trong những nỗi lo lớn mà bất kì ai trong mỗi chúng ta đều
quan tâm. Bởi nó gắn liền tới sức khỏe của mỗi con người. Có thể qua ti vi, báo đài
hoặc qua mỗi câu chuyện ai đó kể mà bạn sẽ nhận thấy rằng vai trò vô cùng quan trọng
của thực phẩm đến sức khỏe của mỗi chúng ta.

Vì vậy, người dùng hiện nay cũng rất cẩn trọng trước khi mua hàng họ cần xem
xét đơn vị cung cấp có uy tín hay không, đảm bảo chất lượng như thế nào. Chính vì
vậy, một website bán thực phẩm sạch chuyên nghiệp sẽ giúp bạn khẳng định được uy
tín với người tiêu dùng, mang đến trải nghiệm tốt nhất cho khách hàng chính là cách
bạn thuyết phục họ sử dụng sản phẩm của mình. Để đáp ứng nhu cầu của mọi người
nhóm em quyết định “ Xây dựng website bán thực phẩm sạch Fresh Food” nhằm
tạo ra hệ thống quản lý bán hàng có tính thiết thực và tính ứng dụng thực tế cao.

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

Mục tiêu của đề tài là giúp người bán, người quản trị dễ dàng quản lý được các
thông tin của website, quản lý được các mặt hàng mà cửa hàng kinh doanh cũng như
quản lý được việc mua bán dễ dàng hơn. Ngoài ra, hệ thống còn giúp người mua dễ
dàng tiếp cận được sản phẩm và mua hàng thuận tiện hơn. Xây dựng được một website
gồm hai phân hệ: phân hệ người dùng cho phép xem và mua sản phẩm, phân hệ người
quản trị cho phép quản lý các thông tin của Website.

Website sau khi xây dựng xong sẽ đáp ứng được các yêu cầu cơ bản sau:

- Phía khách hàng:

+ Xem các thông tin sản phẩm trên website, xem theo danh mục hoặc xem tất
cả. Xem chi tiết từng sản phẩm

+ Chọn sản phẩm cho vào giỏ hàng, cập nhật, xóa thông tin giỏ hàng, gửi thông
tin giỏ hàng cùng thông tin cá nhân đến người quản trị để đặt hàng.
2
Xây dựng website bán thực phẩm sạch Fresh Food

+ Quản lý các giỏ hàng mà khách hàng đã gửi. Tiếp nhận và trả lời thông tin
liên hệ từ khách hàng thông qua email.

+ Gửi ý kiến đóng góp, liên hệ đến người quản trị.


- Phía người quản trị:
+ Đăng nhập vào website.
+ Người quản trị có quyền xem, cập nhật, xóa, tìm kiếm, thống kê đặt hàng
trong website.

+ Cập nhật thông tin sản phẩm cho website. Bao gồm thêm mới, sửa thông tin,
xóa thông tin sản phẩm, danh mục sản phẩm và các thông tin khác.

+ Người quản trị quản lý nhập hàng và bán hàng

+ Cập nhật tin tức cho website khi có sự kiện hoặc chương trình khuyến mại.

+ Quản lý đơn hàng.

+ Quản lý khách hàng.

Bên cạnh các chức năng nêu trên thì website cũng phải trông đẹp mắt và dễ truy
cập. Website phải làm cho khách hàng thấy được những thông tin cần tìm, cung cấp
những thông tin quảng cáo hấp dẫn nhằm thu hút sự quan tâm của khách hàng.
Website mua bán hàng trên mạng thì cần đảm bảo an toàn những thông tin liên quan
đến khách hàng trong quá trình đặt mua hay thanh toán. Đồng thời website còn phải dễ
nâng cấp, sửa chữa khi cần bổ sung cập nhật những tính năng mới.

1.3. Giới hạn và phạm vi của đề tài

- Giới hạn của đề tài:

Các đối tượng ứng dụng của đề tài: Mọi người tiêu dùng trên toàn quốc có
nhu cầu đặt mua sản phẩm qua mạng.

- Phạm vi của đề tài:

3
Xây dựng website bán thực phẩm sạch Fresh Food

Thiết kế được CSDL, cách thức hoạt động và các đối tượng trong PHP, My
SQl, xampp. Hiểu được cách lưu trữ cơ sở dữ liệu của hệ quản trị cơ sở dữ liệu
MySQL.

Sử dụng framework Laravel và hệ quản trị cơ sở dữ liệu MySQL để xây dựng


website.
1.4. Nội dung thực hiện
Website cho cửa hàng thực phẩm sạch Fresh Food có nội dung như sau:

 Xây dựng và khảo sát thực trạng của đề tài :

Khảo sát thực trạng về nhu cầu sử dụng thực phẩm của con người ngày nay ta
xác định và lựa chọn đề tài “Xây dựng website bán thực phẩm sạch Fresh Food”.

 Xác định các yêu cầu chức năng của người dùng :

Giai đoạn này ta cần thu thập các thông tin về đối tượng của đề tài ở đây là hệ
thống bán thực phẩm sạch Fresh Food. Xác định những yêu cầu cơ bản người dùng đặt
ra cho hệ thống để tiến hành xây dựng một hệ thống đúng theo yêu cầu và tiêu chuẩn
đề ra. Phân tích các yêu cầu chức năng của người dùng. Dựa vào những yêu cầu đã xác
định ở trên, phân tích cụ thể từng yêu cầu chức năng của hệ thống.

- Xây dựng các ca sử dụng tương ứng với từng chức năng cụ thể bằng biểu đồ
UML.Xây dựng hệ cơ sở dữ liệu cho hệ thống.

- Xây dựng cơ sở dữ liệu cho hệ thống. Sau khi đã có những thông tin về đối tượng thì
xây dựng các mô hình thực thể và các mô hình chung liên quan.

- Xây dựng chương trình website bằng framework Laravel và MySQL.

1.5. Phương pháp tiếp cận


- Các tài liệu liên quan đến nghiệp vụ quản lý bán hàng và bán hàng.
- Với việc sử dụng trình duyệt (Browser) thì người dùng có thể sử dụng máy tính tại
bất kỳ đâu có kết nối Internet với đường truyền tốt đều có thể làm việc với máy
chủ (server) từ xa.

4
Xây dựng website bán thực phẩm sạch Fresh Food

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. Quy trình phát triển phần mềm


 Giai đoạn 1: Thu thập thông tin khách hàng

- Tìm hiểu yêu cầu thực tế của khách hàng.

- Xác nhận các yêu cầu của khách hàng về trang Web và các thông tin khách
hàng cung cấp.

 Giai đoạn 2: Giai đoạn phân tích

- Dựa vào những thông tin và yêu cầu thiết kế website của khách hàng, phân
tích rõ ràng mục đích, yêu cầu, nguyện vọng của khàch hàng.

- Lập kế hoạch thực hiện dự án.

- Căn cứ trên kết quả khảo sát, thông tin do khách hàng cung cấp thiết kế lập
cấu trúc cho website và thiết kế chung cho toàn hệ thống.

 Giai đoạn 3: Giai đoạn thiết kế

- Xem xét chi tiết yêu cầu và tiến hành thiết kế website

- Tiến hành xử lý hiệu ứng ảnh, thu thập tài liệu liên quan

- Kiểm tra sản phẩm để đảm bảo tính thẩm mỹ và thống nhất.

 Giai đoạn 4: Giai đoạn xây dựng

- Xây dựng cơ sở dữ liệu dựa trên thiết kế.

- Soạn thảo nội dung tài liệu, chỉnh sửa hoàn thiện nội dung rồi đưa lên trang
web.

- Tích hợp hệ thống: lắp ghép phân tích thiết kế, nội dung lập trình thành một
sản phẩm.

- Tiến hành kiểm tra, chỉnh sửa và thực hiện nghiệm thu nội bộ.

5
Xây dựng website bán thực phẩm sạch Fresh Food

 Giai đoạn 5: Giai đoạn chạy thử

- Tổng hợp nội dung, xây dựng hệ thống theo thiết kế.

- Kiểm tra và sửa lỗi.

- Lắp ghép thiết kế với phần mềm, đảm bảo không sai lệch với thiết kế và phần
mềm hoạt động tốt.

- Chạy thử hệ thống, kiểm tra và sửa.

 Giai đoạn 6: Giai đoạn nghiệm thu và chuyển giao

- Khách hàng duyệt dự án: khách hàng duyệt chất lượng dự án.

- Đăng tải hệ thống: đảm bảo hệ thống chạy tốt.

- Bàn giao cho khách hàng

- Đào tạo và huấn luyện khách hàng quản trị website một cách hiệu quả.

- Đánh giá, bảo trì.

2.2. Phương pháp phân tích thiết kế hướng đối tượng và UML

2.2.1. Phương pháp phân tích hướng đối tượng

Trong kỹ thuật phần mềm để sản xuất được một sản phẩm phần mềm người ta
chia quá trình phát triển sản phẩm ra nhiều giai đoạn như thu thập và phân tích yêu
cầu, phân tích và thiết kế hệ thống, phát triển (coding), kiểm thử, triển khai và bảo trì.
Trong đó, giai đoạn phân tích, thiết kế bao giờ cũng là giai đoạn khó khăn và phức tạp
nhất. Giai đoạn này giúp chúng ta hiểu rõ yêu cầu đặt ra, xác định giải pháp, mô tả chi
tiết giải pháp. Nó trả lời 2 câu hỏi What (phần mềm này làm cái gì?) và How (làm nó
như thế nào?).

Để phân tích và thiết kế một phần mềm thì có nhiều cách làm, một trong những
cách làm đó là xem hệ thống gồm những đối tượng sống trong đó và tương tác với
nhau. Việc mô tả được tất cả các đối tượng và sự tương tác của chúng sẽ giúp chúng ta

6
Xây dựng website bán thực phẩm sạch Fresh Food

hiểu rõ hệ thống và cài đặt được nó. Phương thức này gọi là Phân tích thiết kế hướng
đối tượng (OOAD)

2.2.2. Ngôn ngữ mô hình hóa UML

 UML (Unified Model Language) là một ngôn ngữ dùng cho phân tích thiết kế
hướng đối tượng (OOAD – Object Oriented Analys and Design)
 Các biểu đồ UML cho ta cái nhìn rõ hơn về hệ thống
 Hiện nay UML được sử dụng rất phổ biến trong các dự án phần mềm.
 UML thể hiện phương pháp phân tích hướng đối tượng nên không lệ thuộc
ngôn ngữ lập trình.
 Có rất nhiều công cụ phần mềm hỗ trợ phân tích thiết kế dùng UML.
 Nhiều công cụ có thể sinh ra mã từ UML và ngược lại.
 UML không phải là ngôn ngữ lập trình.
 Một số biểu đồ UML cơ bản:
- Biểu đồ Ca sử dụng Use Case Diagram
- Biểu đồ lớp Class Diagram
- Biểu đồ tuần tự Sequence Diagram

2.3. Hệ quản trị cơ sở dữ liệu MySQL


MySQL là một hệ quản trị csdl nhanh, dễ sử dụng được sử dụng cho nhiều
doanh nghiệp lớn nhỏ khác nhau. MySQL được hỗ trợ và phát triển bởi MySQL AB,
một công ty của Thụy Điển. MySQL đang trở nên phổ biến vì nhiều lý do khác nhau
như:

 MySQL được phát triển theo dạng mã nguồn mở. Vì vậy, bạn không phải trả
tiền để sử dụng nó.
 MySQL là một phần mềm rất mạnh mẽ. Nó xử lý một tập hợp lớn các chức
năng của các gói cơ sở dữ liệu đắt tiền và mạnh.

 MySQL hoạt động trên nhiều hệ điều hành và với nhiều ngôn ngữ bao gồm
PHP, PERL, C, C ++, JAVA, v.v.

7
Xây dựng website bán thực phẩm sạch Fresh Food

 MySQL hoạt động rất nhanh và hoạt động tốt ngay cả với các tập dữ liệu
lớn.

 MySQL rất thân thiện với PHP, ngôn ngữ được đánh giá cao nhất để phát
triển web.

 MySQL hỗ trợ cơ sở dữ liệu lớn, lên tới 50 triệu hàng hoặc nhiều hơn trong
một bảng. Giới hạn kích thước file mặc định cho một bảng là 4GB, nhưng
bạn có thể tăng điều này (nếu hệ điều hành của bạn có thể xử lý nó) với giới
hạn là 8 triệu terabyte (TB).

2.4. Thiết kế giao diện website

- Thiết kế giao diện web là một trong các khâu quan trọng, có thể nói là chiếm
đếm 50% mức độ thành công của một trang web. Thiết kế giao diện web là tổng hợp
các thao tác cơ bản của các nhà thiết kế (designer) bao gồm tổng hợp, hình dung và tạo
ra các option cụ thể đúng với những yêu cầu và mong muốn của khách hàng. Tìm hiểu
về thông điệp mà doanh nghiệp muốn truyền tải. Thiết kế giao diện web bao gồm tất
cả những gì xuất hiện trên website bao gồm hình ảnh, thông tin, các điều hướng người
dùng trên website, liên kết trên web…  hay đơn giản là tất cả những gì người dùng
nhìn thấy, tương tác trên website (truy cập danh mục, đặt hàng, … ) khi vào trong
trang web của bạn.

 Các bước thiết kế giao diện website

- Bước 1: Tiếp nhận thông tin từ khách hàng

- Bước 2: Phác thảo giao diện web nháp trên giấy

- Bước 3: Thiết kế giao diện web trên các phần mềm chuyên dụng

- Bước 4: Chỉnh sửa và thay đổi

- Bước 5: Hoàn thiện bản thiết kế cuối cùng


2.5. Lập trình phía front-end
Phần front-end của một trang web là phần tương tác với người dùng. Tất cả mọi
thứ nhìn thấy khi điều hướng trên Internet, từ các font chữ, màu sắc cho tới các menu

8
Xây dựng website bán thực phẩm sạch Fresh Food

xổ xuống và các thanh trượt, là một sự kết hợp của HTML, CSS, Bootstrap và
JavaScript được điều khiển bởi trình duyệt máy tính.

2.6. Lập trình phía back-end


Phần back-end của một trang web bao gồm một máy chủ, một ứng dụng, và một
cơ sở dữ liệu. Một lập trình viên back-end xây dựng và duy trì công nghệ mà sức mạnh
của những thành phần đó, cho phép phần giao diện người dùng của trang web có thể
tồn tại được.

 Tổng quan về PHP


PHP (Hypertext Preprocessor), là một ngôn ngữ lập trình kịch bản được chạy
ở phía server nhằm sinh ra mã html trên client. PHP đã trải qua rất nhiều phiên bản và
được tối ưu hóa cho các ứng dụng web, với cách viết mã rõ rãng, tốc độ nhanh, dễ học
nên PHP đã trở thành một ngôn ngữ lập trình web rất phổ biến và được ưa chuộng.

  PHP chạy trên môi trường Webserver và lưu trữ dữ liệu thông qua hệ quản trị
cơ sở dữ liệu nên PHP thường đi kèm với Apache, MySQL và hệ điều hành Linux
(LAMP).

- Apache là một phần mềm web server có nhiệm vụ tiếp nhận request từ trình
duyệt người dùng sau đó chuyển giao cho PHP xử lý và gửi trả lại cho trình
duyệt.

Ngôn ngữ kịch bản

PHP là ngôn ngữ kịch bản (scripting language). Ngôn ngữ kịch bản là một
nhánh của ngôn ngữ lập trình. Tập tin chứa mã lệnh viết bằng ngôn ngữ kịch bản (như
PHP) có thể được chạy (hay thực thi) trực tiếp trên máy mà không cần phải chuyển
sang một định dạng khác. Đối với các ngôn ngữ như C hay Pascal thì tập tin chứa mã
lệnh (source code) cần phải được chuyển sang định dạng khác chứa machine code để
máy tính có thể chạy được.

Mã nguồn mở

9
Xây dựng website bán thực phẩm sạch Fresh Food

PHP là ngôn ngữ lập trình mã nguồn mở và điều này có nghĩa là bạn có thể sử
dụng PHP hoàn toàn miễn phí. PHP có thể được chạy trên nhiều nền tảng hệ điều hành
khác nhau như Windows, Mac OS và Linux. Ngôn ngữ lập trình PHP có thể được sử
dụng trên nhiều hệ điều hành khác nhau bao gồm Windows, Mac OS và Linux
(Ubuntu, Linux Mint...).

Tập tin PHP

Các tập tin PHP chứa mã lệnh viết bằng ngôn ngữ PHP và được lưu trên máy
tính (hoặc máy chủ) với phần mở rộng là .php. Việc tạo và chỉnh sửa nội dung các
tập tin này thường được thực hiện bởi một chương trình hiệu chỉnh văn bản (hay còn
gọi là text editor). Dưới đây là danh sách các chương trình hiệu chỉnh mã lệnh phổ
biến trên các hệ điều hành khác nhau:

- Trên Windows: Notepad có sẵn hoặc Nodepad++ (cần cài đặt thêm)
- Trên Mac OSX: TextEdit

- Trên Ubuntu: Gedit hoặc Vim

 Tổng quan về Framework Laravel


Laravel là một PHP Framework mã nguồn mở miễn phí, được phát triển
bởi Taylor Otwell với phiên bản đầu tiên được ra mắt vào tháng 6 năm
2011. Laravel ra đời nhằm mục đích hỗ trợ phát triển các ứng dụng web, dựa trên mô
hình MVC (Model – View – Controller).

Ưu điểm của Laravel

 Sử dụng các tính năng mới nhất của PHP


Sử dụng Laravel 5 giúp các lập trình viên tiếp cận những tính năng mới nhất mà
PHP cung cấp, nhất là đối với Namespaces, Interfaces, Overloading, Anonymous
functions và Shorter array syntax.

 Nguồn tài nguyên vô cùng lớn và sẵn có

10
Xây dựng website bán thực phẩm sạch Fresh Food

Nguồn tài nguyên của Laravel rất thân thiện với các lập trình viên với đa dạng
tài liệu khác nhau để tham khảo. Các phiên bản được phát hành đều có nguồn tài liệu
phù hợp với ứng dụng của mình.

 Tích hợp với dịch vụ mail


Lavarel là framework được trang bị API sạch trên thư viện SwiftMailer, do đó,
bạn có thể gửi thư qua các dịch vụ dựa trên nền tảng đám mây hoặc local.

 Tốc độ xử lý nhanh
Laravel hỗ trợ hiệu quả cho việc tạo lập website hay các dự án lớn trong thời
gian ngắn. Vì vậy, nó được các công ty công nghệ và lập trình viên sử dụng rộng rãi để
phát triển các sản phẩm của họ.

 Dễ sử dụng
Laravel được đón nhận và trở nên sử dụng phổ biến vì nó rất d sử dụng.
Thường chỉ mất vài giờ, bạn có thể bắt đầu thực hiện một dự án nhỏ với vốn kiến
thức cơ bản nhất về lập trình với PHP.

 Tính bảo mật cao


Laravel cung cấp sẵn cho người dùng các tính năng bảo mật mạnh mẽ để người
dùng hoàn toàn tập trung vào việc phát triển sản phẩm của mình:
- Sử dụng PDO để chống lại tấn công SQL Injection.
- Sử dụng một field token ẩn để chống lại tấn công kiểu CSRF.

Nhược điểm của Laravel

So với các PHP framework khác, Laravel bộc lộ khá ít nhược điểm. Vấn đề lớn
nhất có thể kể đến của framework này là thiếu sự liên kết giữa các phiên bản, nếu cố
cập nhật code, có thể khiến cho ứng dụng bị gián đoạn hoặc phá vỡ.
Bên cạnh đó, Lavarel cũng quá nặng cho ứng dụng di động, khiến việc tải trang
trở nên chậm chạp

11
Xây dựng website bán thực phẩm sạch Fresh Food

CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG


3.1.Đặc tả yêu cầu phần mềm

Để đáp ứng yêu cầu người dùng, hệ thống website bán thực phẩm sạch bao gồm
2 phân hệ chính: phân hệ cho người quản trị đế quản trị nội dung và quản trị hoạt động
kinh doanh; phân hệ cho người dùng để cho khách hàng có thể xem thông tin về các
mặt hàng kinh doanh và đặt hàng.

3.1.1.Các yêu cầu chức năng


a) Chức năng của trang quan trị

Bảng chức năng của trang quản trị

STT Chức năng Mô tả

1 Quản lý loại sản phẩm Quản lý thông tin loại sản phẩm bao gồm các chức
năng thêm, sửa, xóa.

2 Quản lý sản phẩm Người quản trị có thể quản lý thông tin tất cả sản
phẩm bao gồm cả thêm, sửa, xóa các sản phẩm trên
website đang bán

4 Quản lý đơn hàng Người quản trị quản lý các đơn hàng: xác thực đơn
hàng, sửa đơn hàng, hủy đơn hàng chưa xác thực.

5 Quản lý chi tiết đơn Người quản trị quản lý thông tin chi tiết đơn hàng:
hàng xóa đơn hàng

6 Quản lý khách hàng Khi khách hàng đặt mua sản phẩm, quản trị viên sẽ
thêm thông tin nhà khách hàng vào hệ thống, khi
thông tin của khách hàng thay đổi thì sẽ phải cập
nhật lại.

 Biểu đồ Use Case tổng quát của trang quản trị

12
Xây dựng website bán thực phẩm sạch Fresh Food

Hình 3. 1: Biểu đồ Use Case tổng quát của trang quản trị

 Các biểu đồ Use Case phân rã của trang quản trị

- Use Case quản lý loại sản phẩm

Hình 3. 2: Biểu đồ phân rã Use Case Quản lý loại sản phẩm

- Use Case quản lý SP

13
Xây dựng website bán thực phẩm sạch Fresh Food

Hình 3. 3: Biểu đồ phân rã Use Case Quản lý Sản Phẩm

- Use Case quản lý DonHang

Hình 3. 4: Biểu đồ phân rã Use Case Quản lý Đơn hàng

- Use Case quản lý khách hàng

Hình 3. 5: Biểu đồ phân rã Use Case Quản lý Khách hàng

14
Xây dựng website bán thực phẩm sạch Fresh Food

- Use Case quản lý thống kê

Hình 3. 6: Biểu đồ phân rã Use Case quản lý thống kê

b) Chức năng của trang người dùng

Bảng chức năng của người dùng

STT Chức năng Mô tả

1. Xem SP Người dùng xem thông tin về SP trên website. Thông tin
SP bao gồm: Mã SP, Mã loại SP, tên SP, giá, số lượng,
mô tả, ảnh.

2. Xem thông tin chi Khi người dùng xem SP trên trang Web nếu quan tâm
tiết SP đến thông tin chi tiết của SP nào thì người dùng có thể
thực hiện chức năng xem thông tin chi tiết của SP. Khi
đó hệ thống hiển thị thông tin chi tiết của SP

3. Tìm kiếm Website có công cụ tìm kiếm giúp người dùng có thể tìm
kiếm SP

4. Quản lý Giỏ hàng Người dùng quản lý thông tin của các mặt hàng SP đã
chọn mua như sửa hoặc xóa các thông tin trong giỏ hàng
đã chọn sẽ chọn các mặt hàng mình muốn mua cho vào
giỏ hàng của mình. Và điều chỉnh các thông tin về mặt
hàng đã chọn.

5. Đặt hàng Khi người dùng muốn mua sẽ vào phần giỏ hàng chọn
15
Xây dựng website bán thực phẩm sạch Fresh Food

đặt mua yêu cầu người dùng nhập thông tin của mình và
xác nhận đặt hàng.

 Biểu đồ Use Case tổng quát của trang người dùng

Hình 3. 7: Biểu đồ Use Case tổng quát trang người dùng

 Các biểu đồ Use Case phân rã của trang người dùng

- Use Case quản lý giỏ hàng

16
Xây dựng website bán thực phẩm sạch Fresh Food

Hình 3. 8: Biểu đồ phân rã Use Case quản lý giỏ hàng

- Use case xem sản phẩm

Hình 3. 9: Biểu đồ phân rã Use Case Xem Sản Phẩm

- Use case tìm kiếm sản phẩm

Hình 3. 10: Biểu đồ phân rã Use Case Tìm Kiếm Sản Phẩm

17
Xây dựng website bán thực phẩm sạch Fresh Food

3.1.2. Các yêu cầu phi chức năng

1. Yêu cầu về hiệu năng

Thời gian phản hồi của trang web

2. Yêu cầu về sự logic của CSDL

3. Yêu cầu ràng buộc về thiết kế.

Mô hình phát triển MVC

4. Độ tin cậy

Đảm bảo chức năng đặt hàng thanh toán được

5. Tính khả dụng

6. Bảo mật

Thông tin người dùng phải được bảo mật và được mã hóa bằng MD5 Hash

7. Bảo trì

Hệ thống có thể dễ dàng bảo trì được khi yêu cầu người dùng thay đổi

8. Tính khả chuyển

Trên các môi trường khác nhau mobile, destop

18
Xây dựng website bán thực phẩm sạch Fresh Food

3.2.Thiết kế hệ thống
3.2.1.Biểu đồ mô hình ER

3.2.2.Thiết kế cơ sở dữ liệu

19
Xây dựng website bán thực phẩm sạch Fresh Food

Mô hình cơ sở dữ liệu
+ Tbl_category_product (loại sản phẩm):
STT Tên trường Kiểu dữ liệu Mô tả

1 Category_id Nvarchar (10) Primary key

2 Category_name Nvarchar (255) Not null

3 Category_desc Nvarchar (255) Not null

4 Category_status Nvarchar (255) Not null

+ Tbl_product:
STT Tên trường Kiểu dữ liệu Mô tả

1 Product_id int Primary key

2 Category_id int Foreign key

3 Product_name Nvarchar (MAX) Not null

4 Product_desc Nvarchar (MAX) Not null

5 Product_price Nvarchar (MAX) Not null

6 Product_image Nvarchar (MAX) Not null

7 Product_status Nvarchar (MAX) Not null

8 Product_content Nvarchar (MAX) Not null

+ Tbl_admin:
STT Tên trường Kiểu dữ liệu Mô tả

1 Admin_id int Primary key

2 Admin_email nvarchar (50) Not null

20
Xây dựng website bán thực phẩm sạch Fresh Food

3 Admin_password nvarchar (50) Not null

4 Admin_name nvarchar (50) Not null

5 Admin_phone nvarchar (50) Not null

+ Tbl_order:
STT Tên thuộc tính Kiểu dữ liệu Mô tả

1 Order_id Int Primary key

2 Customer_id Int Foreign key

3 Shipping_id int Foreign key

4 Payment_id Int Foreign key

5 Order_total nVachar(50) Not null

6 Order_status nVachar(50) Not null

+ Tbl_order_details:
STT Tên thuộc tính Kiểu dữ liệu Mô tả

1 Order_Details_id Int Primary key

2 product_id Int Foreign key

3 product_name Varchar(255) Not null

4 product_price Varchar(255) Not null

5 product_qty Int Not null

6 Order_id Int Foreign key

+ tbl_shipping:
21
Xây dựng website bán thực phẩm sạch Fresh Food

STT Tên thuộc tính Kiểu dữ liệu Mô tả

1 shipping_id Int Primary key

2 Shipping_name Varchar(255) Not null

3 Shipping_address Varchar(255) Not null

4 Shipping_phone Varchar(255) Not null

5 Shipping_email Varchar(255) Not null

6 Shipping_notes Varchar(255) Not null

+ Tbl_customers:
STT Tên thuộc tính Kiểu dữ liệu Mô tả

1 customer_id Int Primary key

2 customer_name Varchar(255) Not null

3 customer_password Varchar(255) Not null

4 customer_phone Varchar(255) Not null

5 customer_email Varchar(255) Not null

+ tbl_payment:
STT Tên thuộc tính Kiểu dữ liệu Mô tả

1 payment_id Int Primary key

2 payment_method Varchar(255) Not null

3 Payment_status Varchar(255) Not null

22
Xây dựng website bán thực phẩm sạch Fresh Food

CHƯƠNG 4: TRIỂN KHAI WEBSITE


4.1.Triển khai các chức năng cho phân hệ người dùng

- Người dùng có thể đặt mua hàng tại website.


4.2.Triển khai các chức năng cho phân hệ quản trị nội dung

- Admin quản lý tất cả các thông tin của website bao gồn thêm sửa xóa thông tin
liên quan đến sản phẩm.
4.3.Hướng dẫn cài đặt

- Cài đặt CSDL, đẩy lên hosting.


4.4.Hướng dẫn sử dụng

- Để mua hàng người dùng sẽ chọn đặt mua sản phẩm điền đầy đủ các thông tin cần
thiết để giao hàng và xác nhận mua sản phẩm.

CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN


Chương này, bài tập lớn môn học trình bày các kết quả đạt được cũng như hạn
chế của bài tập lớn. Nhóm em cũng trình bày các hướng phát triển của đề tài sau khi
bảo vệ.

5.1. Kết quả đạt được của bài tập lớn

 Về kiến thức:

- Cơ bản nắm được các bước xây dựng một website bán hàng trực tuyến, thực
hiện đúng quy trình.

- Xây dựng được bố cục trang web hợp lý, bước đầu thực hiện được nghiệp
vụ của hệ thống.

- Hiểu và vận dụng một cách cơ bản Framework Laravel và hệ quản trị
CSDL MySQL.

- Hiểu thêm về html, css, bootstrap, js.


 Về chương trình:
- Website chạy tốt trên các thiết bị.
- Server hoạt động tốt và không có lỗi.
23
Xây dựng website bán thực phẩm sạch Fresh Food

- Tính bảo mật cao, xây dựng cơ chế bảo mật cả backend và frontend
- Thực hiện được các công việc tìm kiếm thông tin, từ đó việc tìm kiếm trở
nên nhanh chóng, dễ dàng và thuận tiện hơn.
- Chức năng thêm, sửa, xóa các thông tin liên quan đến website đối với người
quản lý trang web.

- Người dùng có thể đặt mua sản phẩm tại trang Web

5.2.Hạn chế của bài tập lớn

- Website nhỏ mang tính chất mô phỏng.

- Cơ sở dữ liệu nhỏ, chức năng phân quyền chưa tối ưu.

- Chưa có tính năng gợi ý thực đơn


5.3.Hướng phát triển của bài tập lớn

- Xây dựng một website sử dụng được đáp ứng nhu cầu cũng như nghiệp vụ của
một website bán hàng đặt ra.

- Phân quyền và quản lý tối ưu.

- Cơ sở dữ liệu phong phú.


- Kết hợp chức năng thanh toán trực tuyến hoặc qua thẻ ATM( liên kết với hệ
thống ngân hàng)
- Cần thống kê được doanh thu, hàng tồn kho theo năm, quý.
- Gợi ý thực đơn cho khách hàng

24
Xây dựng website bán thực phẩm sạch Fresh Food

TÀI LIỆU THAM KHẢO

[1] Phạm Hữu Khang, Lập trình ASP.NET 2.0. Hà Nội, Việt Nam: Nhà xuất bản Lao
Động Xã Hội, 2005.
[2] Nguyễn Văn Quyết, Giáo trình Công nghệ Web và ứng dụng. Hưng Yên, Việt
Nam: Khoa Công nghệ Thông tin - UTEHY, 2010.
[3] Trang web : https://laravel.com/
[4] Trang web : https://gist.github.com/
[5] Trang web : https://stackoverflow.com/
[6] Trang web : https://freetuts.net/
[7] Trang web : http://laptrinhphp.vn/
[8] Trang web : https://devpro.edu.vn/
[9] Trang web : https://codegym.vn/
[10] Trang web : https://w3layouts.com/
[11] Trang web : https://www.w3schools.com/
[12] Kênh youtube : SUNTECH VIỆT NAM
[13] Kênh youtube: Kênh Tổng Hợp Bài tập lớn Báo Cáo
[14] Kênh youtube: Hiếu Tutorial with live project
[15] Kênh youtube: Chia Sẻ Source Code Miễn Phí
[16] Trang web : https://phpbuddy.com/
[17] Trang web : https://tiazag.com/
[18] Trang web : https://php.net/
[19] Kênh youtube: Design course
[20] Kênh youtube: freecodecamp
[21] Kênh youtube: DEV Ed
[22] Kênh youtube: Trung tâm đào tạo khoa phạm

25
Xây dựng website bán thực phẩm sạch Fresh Food

LỜI KẾT
Trên đây là nội dung của bài tập lớn xây dựng website. Đó là một minh
chứng thiết thực nhằm đánh giá khả năng hiểu biết của nhóm em trong việc tìm
hiểu hệ thống website bán thực phẩm cũng như kiến thức môn học. Với kiến
thức có được qua quá trình học tập nhóm em đã hoàn thành bài tập lớn của
mình.

Trong thời gian làm chương trình này nhóm em đã được sự giúp đỡ của
thầy và nhiều bạn bè và đã đúc kết được nhiều kinh nghiệm quý báu để bổ sung
kiến thức cho mình. Mặc dù khóa luận bài tập lớn đã hoàn thành và hệ thống
website đã được xây dựng, song do lần thực hiện chương trình quản lý và kiến
thức hạn hẹp nên chắc chắn trang web vẫn còn nhiều hạn chế nhất định. Bởi vậy
nhóm em rất mong được sự chỉ bảo hướng dẫn, đóng góp ý kiến của thầy và các
bạn để website hoàn thiện hơn.

26

You might also like