1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Website bán bánh ngọt

64 56 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 64
Dung lượng 6,67 MB

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

Nội dung

Những thông tin bao gồm: + Thông tin các loại sản phẩm: Mã loại sản phẩm, Tên loại sản phẩm, Mô tả , - Xóa thông tin sản phẩm và loại sản phẩm: Hệ thống phải cung cấp chức năng xóa thôn

Trang 1

ĐẠI HỌC ĐÀ NẴNG PHÂN HIỆU ĐẠI HỌC ĐÀ NẴNG TẠI KON TUM

Trang 2

ĐẠI HỌC ĐÀ NẴNG PHÂN HIỆU ĐẠI HỌC ĐÀ NẴNG TẠI KON TUM

GVHD : ThS LÊ THỊ BẢO YẾN

Kon Tum, tháng 5 năm 2020

Trang 3

LỜI CẢM ƠN

Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc với những thầy cô của trường đại học Phân hiệu Đại học Đà Nẵng tại Kon Tum, đặc biệt là các thầy cô bộ môn Công nghệ thông tin thuộc khoa Kỹ Thuật - Nông Nghiệp đã tạo điều kiện và hướng dẫn em

trong quá trình thực hiện đồ án Em xin chân thành cảm ơn cô Lê Thị Bảo Yến đã

hướng dẫn, chỉ bảo tận tình để em hoàn thành được đồ án của mình

Trong quá trình làm đồ án chắc chắn em còn mắc phải nhiều sai sót rất mong các thầy

cô bỏ qua Đồng thời, với kinh nghiệm và kiến thức còn hạn chế em xin sự đóng góp

và thông cảm từ thầy cô

Em xin chân thành cảm ơn!

Sinh viên Nguyễn Phước Trọng

Trang 4

i

MỤC LỤC

MỤC LỤC i

DANH SÁCH TỪ VIẾT TẮT iii

DANH MỤC HÌNH iv

DANH MỤC BẢNG vi

TỔNG QUAN VỀ ĐỀ TÀI 1

CHƯƠNG 1: LÝ DO CHỌN ĐỀ TÀI 1

1.1 MỤC TIÊU NGHIÊN CỨU 1

1.2 GiỚI HẠN VÀ PHẠM VI ĐỀ TÀI 1

1.3 PHƯƠNG PHÁP NGHIÊN CỨU 1

1.4 CƠ SỞ LÝ THUYẾT 3

CHƯƠNG 2: MÔ HÌNH MVC 3

2.1 NGÔN NGỮ LẬP TRÌNH PHP 3

2.2 2.2.1 Khái niệm về ngôn ngữ lập trình PHP (Hypertext Preprocessor) 3

2.2.2 Ưu điểm của ngôn ngữ PHP 4

TỔNG QUAN VỀ WEB FRAMEWORK 5

2.3 2.3.1 Khái niệm về Web Framework 5

2.3.2 Ưu điểm của Web Framework 5

NGUYÊN TẮC THIẾT KẾ WEB FRAMEWORK 5

2.4 2.4.1 Tổ chức website chặt chẽ và dễ sử dụng 5

2.4.2 Đảm bảo các liên kết được khám phá dễ dàng 6

LARAVEL FRAMEWORK 6

2.5 2.5.1 Khái niệm về Laravel 6

2.5.2 Mô hình MVC trong Laravel 6

HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL 7

2.6 2.6.1 Giới thiệu hệ quản trị cơ sở dữ liệu MySQL 7

2.6.2 Mục đích sử dụng của hệ quản trị cơ sở dữ liệu MySQL 7

PHÂN TÍCH VÀ THIẾT KẾ WEBSITE 8

CHƯƠNG 3: YÊU CẦU CHỨC NĂNG HỆ THỐNG 8

3.1 3.1.1 Admin 8

3.1.2 Khách hàng 10

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 11

3.2 3.2.1 Biểu đồ Usecase tổng quát 11

3.2.2 Biểu đồ tuần tự cho từng chức năng 11

3.2.3 Sơ đồ lớp 29

LƯỢC ĐỒ QUAN HỆ CƠ SỞ DỮ LIỆU 31

3.3 THIẾT KẾ WEBSITE 32

3.4 3.4.1 Khách hàng 32

Trang 5

ii

3.4.2 Trang Admin 43

KẾT LUẬN 54 CHƯƠNG 4:

KẾT QUẢ ĐẠT ĐƯỢC CỦA ĐỀ TÀI 54 4.1

HẠN CHẾ 54 4.2

HƯỚNG NGHIÊN CỨU VÀ PHÁT TRIỂN 54 4.3

TÀI LIỆU THAM KHẢO

Trang 6

iii

DANH SÁCH TỪ VIẾT TẮT

CMS Content Management System Hệ quản trị nội dung

CNTT Công nghệ thông tin

HTML Hypertext Markup Language Ngôn ngữ đánh dấu siêu văn bản CSDL Cơ sở dữ liệu

Trang 7

iv

DANH MỤC HÌNH

Hình 2.1 Mô hình MVC 3

Hình 2.2 Sơ đồ hoạt động của PHP 4

Hình 2.3 Mô hình MVC 6

Hình 3.1 Biểu đồ User case tổng quát 11

Hình 3.2 Biểu đồ tuần tự chức năng đăng ký 12

Hình 3.3 Biểu đồ tuần tự chức năng đăng nhập 13

Hình 3.4 Biểu đồ chức năng thêm vào giỏ hàng 14

Hình 3.5 Biểu đồ tuần tự chức năng thêm sản phẩm 15

Hình 3.6 Biểu đồ tuần tự chức năng sửa thông tin sản phẩm 16

Hình 3.7 Biểu đồ tuần tự chức năng xóa sản phẩm 16

Hình 3.8 Biểu đồ tuần tự thêm loại sản phẩm 17

Hình 3.9 Biểu đồ tuần tự chức năng sửa loại sản phẩm 18

Hình 3.10 Biểu đồ tuần tự xóa loại sản phẩm 19

Hình 3.11 Biểu đồ tuần tự thêm danh mục sản phẩm 20

Hình 3.12 Biểu đồ tuần tự chức năng sửa danh mục sản phẩm 21

Hình 3.13 Biểu đồ tuần tự xóa danh mục sản phẩm 22

Hình 3.14 Biểu đồ tuần tự chức năng thêm tin tức 23

Hình 3.15 Biểu đồ tuần tự chức năng sửa tin tức 24

Hình 3.16 Biểu đồ chức năng xóa tin tức 24

Hình 3.17 Biểu đồ tuần tự chức năng thêm user 25

Hình 3.18 Biểu đồ tuần tự chức năng sửa user 26

Hình 3.19 Biểu đồ tuần tự chức năng xóa user 27

Hình 3.20 Biểu đồ tuần tự chức năng tìm kiếm 27

Hình 3.21 Biểu đồ tuần tự chức năng cập nhập trạng thái đơn hàng 28

Hình 3.22 Biểu đồ tuần tự chức năng xem chi tiết sản phẩm 28

Hình 3.23 Sơ đồ lớp 30

Hình 3.24 Cơ sở dữ liệu hệ thống 31

Hình 3.25 Giao diện trang chủ 32

Hình 3.26 Giao diện trang loại sản phẩm 34

Hình 3.27 Giao diện trang chi tiết sản phẩm 35

Hình 3.28 Giao diện trang giỏ hàng 36

Hình 3.29 Giao diện trang đặt hàng 37

Hình 3.30 Giao diện trang blog 38

Hình 3.31 Giao diện trang chi tiết blog 39

Hình 3.32 Giao diện trang giới thiệu 40

Hình 3.33 Giao diện trang liên hệ của website 41

Hình 3.34 Giao diện trang đăng ký 42

Hình 3.35 Giao diện đăng nhập 42

Trang 8

v

Hình 3.36 Giao diện trang chủ admin 43

Hình 3.37 Giao diện trang quản lý sản phẩm 44

Hình 3.38 Trang thêm sản phẩm 45

Hình 3.39 Giao diện quản lý loại sản phẩm 46

Hình 3.40 Giao diện thêm loại sản phẩm 46

Hình 3.41 Giao diện danh mục sản phẩm 47

Hình 3.42 Giao diện thêm danh mục sản phẩm 47

Hình 3.43 Giao diện trang thông tin khách hàng 48

Hình 3.44 Giao diện trang tin tức 49

Hình 3.45 Giao diện trang thêm tin tức 50

Hình 3.46 Giao diện trang user 51

Hình 3.47 Giao diện thêm user 51

Hình 3.48 Giao diện trang đơn hàng 52

Hình 3.49 Giao diện đơn hàng đã giao 52

Hình 3.50 Giao diện đơn hàng đã hủy 53

Hình 3.51 Giao diện liên hệ 53

Trang 9

vi

DANH MỤC BẢNG

Bảng 3.1 Bảng mô tả chức năng của lớp cơ sở dữ liệu 29

Trang 10

1

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

LÝ DO CHỌN ĐỀ TÀI

1.1

Quản lý cửa hàng, tiệm bán bánh ngọt là hoạt động của một cửa hàng bán bánh ngọt dù lớn hay nhỏ, nhân viên hay chủ tiệm bánh phải thực hiện các công việc liên quan đến việc nhập nguyên liệu làm bánh và xuất bánh đi cho khách hàng, thống kê doanh thu, Điều này gây ảnh hưởng rất nhiều đến hiệu quả và thời gian làm việc Bên cạnh đó, số người biết đến cửa hàng không lớn, chỉ trong quy mô nhỏ Do vậy, việc sử dụng Website để bán hàng và giới thiệu cửa hàng đến cho mọi người là điều cần thiết để phát triển lớn mạnh hơn

Hiện nay các hoạt động quản lý của cửa hàng được làm thủ công, lưu trữ trên sổ sách Cho nên quá trình quản lý, bán hàng, tìm kiếm, và thống kê gặp nhiều khó khăn

Từ thực tế trên, yêu cầu cần xây dựng hệ thống tiện lợi cho việc tính toán và lưu trữ đồng thời quảng bá sản phẩm cho cửa hàng đồ bánh ngọt Vì vậy để khắc phục những yếu tố trên em xin chọn đề tài “Website bán bánh ngọt”

MỤC TIÊU NGHIÊN CỨU

+ Tối ưu hóa các quá trình mua bánh tiết kiệm thời gian chi phí

+ Hình thức đẹp thân thiện với người dùng

- Đối tượng sử dụng: Quản trị viên, nhân viên, khách hàng

PHƯƠNG PHÁP NGHIÊN CỨU

1.4

- Tiếp cận nghiệp vụ

+ Tiếp cận về nghiệp vụ bán hàng tại các cửa hàng

+ Tham khảo nghiệp vụ bán hàng online bằng các website bán hàng

- Về mặt lý thuyết

+ Nghiên cứu cách thức hoạt động của mô hình MVC

Trang 12

Mô hình MVC là viết tắt của 3 chữ Model, View, Controller Mô hình này tách

một ứng dụng web ra làm 3 thành phần đảm nhiệm chức năng tách biệt, thuận tiện cho việc xử lý và bảo trì

Model : Chịu trách nhiệm quản lý dữ liệu, nó lưu trữ và truy xuất các thực thể từ

cơ sở dữ liệu như mysql, sql server, postresSQL,… đồng thời chưa các logic được thực thi bởi ứng dụng

View : Chịu trách nhiệm hiển thị dữ liệu đã được truy xuất từ model theo một format nào đó theo ý đồ của lập trình viên Cách sử dụng của View tương tự như các module templates thường thấy trong các ứng dụng web phổ biến như WordPress, Joomla,…

Controller : trung gian, làm nhiệm vụ xử lý cho model và view tương tác với nhau Controller nhận request từ client, sau đó gọi các model để thực hiện các hoạt động được yêu cầu và gửi ra ngoài View View sẽ chịu trách nhiệm format lại data từ controller gửi ra và trình bày dữ liệu theo 1 định dạng đầu ra (html)

Hình 2.1 Mô hình MVC NGÔN NGỮ LẬP TRÌNH PHP

2.2

2.2.1 Khái niệm về ngôn ngữ lập trình PHP (Hypertext Preprocessor)

PHP là chữ viết tắt của “Personal Home Page” do Rasmus Lerdorf tạo ra năm

1994 Vì tính hữu dụng của nó và khả năng phát triển, PHP bắt đầu được sử dụng trong môi trường chuyên nghiệp và nó trở thành “PHP: Hypertext Preprocessor” [1]

Thực chất PHP là ngôn ngữ kịch bản nhúng trong HTML, nói một cách đơn giản

đó là một trang HTML có nhúng mã PHP, PHP có thể được đặt rải rác trong HTML PHP là một ngôn ngữ lập trình được kết nối chặt chẽ với máy chủ, là một công nghệ phía máy chủ (Server-Side) và không phụ thuộc vào môi trường (cross- platform) Đây là hai yếu tố rất quan trọng, thứ nhất khi nói công nghệ phía máy chủ tức là nói đến mọi thứ trong PHP đều xảy ra trên máy chủ, thứ hai, chính vì tính chất không phụ thuộc

Trang 13

4

môi trường cho phép PHP chạy trên hầu hết trên các hệ điều hành như Windows, Unix

và nhiều biến thể của nó Đặc biệt các mã kịch bản PHP viết trên máy chủ này sẽ làm việc bình thường trên máy chủ khác mà không cần phải chỉnh sửa hoặc chỉnh sửa rất ít Khi một trang Web muốn được dùng ngôn ngữ PHP thì phải đáp ứng được tất cả các quá trình xử lý thông tin trong trang Web đó, sau đó đưa ra kết quả ngôn ngữ HTML

Khác với ngôn ngữ lập trình, PHP được thiết kế để chỉ thực hiện điều gì đó sau khi một sự kiện xảy ra (ví dụ, khi người dùng gửi một biểu mẫu hoặc chuyển tới một URL)

Vì PHP là ngôn ngữ của máy chủ nên mã lệnh của PHP sẽ tập trung trên máy chủ

để phục vụ các trang Web theo yêu cầu của người dùng thông qua trình duyệt

Hình 2.2 Sơ đồ hoạt động của PHP

Sơ đồ hoạt động:

Khi người dùng truy cập Website viết bằng PHP, máy chủ đọc mã lệnh PHP và

xử lí chúng theo các hướng dẫn được mã hóa Mã lệnh PHP yêu cầu máy chủ gửi một

dữ liệu thích hợp (mã lệnh HTML) đến trình duyệt Web Trình duyệt xem nó như là một trang HTML têu chuẩn Như ta đã nói, PHP cũng chính là một trang HTML nhưng có nhúng mã PHP và có phần mở rộng là HTML Phần mở của PHP được đặt trong thẻ mở

<?php và thẻ đóng ?> Khi trình duyệt truy cập vào một trang PHP, Server sẽ đọc nội dung file PHP lên và lọc ra các đoạn mã PHP và thực thi các đoạn mã đó, lấy kết quả nhận được của đoạn mã PHP thay thế vào chỗ ban đầu của chúng trong file PHP, cuối cùng Server trả về kết quả cuối cùng là một trang nội dung HTML về cho trình duyệt [1]

2.2.2 Ưu điểm của ngôn ngữ PHP

Để thiết kế Web động có rất nhiều ngôn ngữ lập trình khác nhau để lựa chọn, mặc

dù cấu hình và tính năng khác nhau nhưng chúng vẵn đưa ra những kết quả giống nhau Chúng ta có thể lựa chọn cho mình một ngôn ngữ: ASP, PHP, Java, Perl và một số loại khác nữa Vậy tại sao chúng ta lại nên chọn PHP Rất đơn giản, có những lí do sau

mà khi lập trình Web chúng ta không nên bỏ qua sự lựa chọn tuyệt vời này

Trang 14

- PHP vừa dễ với người mới sử dụng vừa có thể đáp ứng mọi yêu cầu của các lập trình viên chuyên nghiệp, mọi ý tuởng của các bạn PHP có thể đáp ứng một cách xuất sắc

Cách đây không lâu ASP vốn được xem là ngôn ngữ kịch bản phổ biến nhất, vậy

mà bây giờ PHP đã bắt kịp ASP, bằng chứng là nó đã có mặt trên 12 triệu Website [1]

TỔNG QUAN VỀ WEB FRAMEWORK

2.3

2.3.1 Khái niệm về Web Framework

Web Framework là một nền tảng phát triển ứng dụng cho phép nhanh chóng xây dựng và triển khai những ứng dụng nền web với đầy đủ tính năng, tính tương tác cao Với một hệ thống giao diện dễ sử dụng, triển khai, Web Framework cho phép ngay cả những người dùng không có kiến thức kỹ thuật cũng dễ dàng tạo ra một website mới hoặc kế thừa những website có sẵn

2.3.2 Ưu điểm của Web Framework

- Web Framework được phát triển trên nền tảng mỗi nền tảng khác nhau là một

hệ thống quản trị nội dung web (CMS) tổng thể Các công cụ được xây dựng trong Web Framework dễ dàng sử dụng cho người quản trị, biên tập, lập trình viên, thiết kế

đồ họa để xây dựng, triển khai, quản trị tất cả những tương tác được cung cấp trong hệ thống bao gồm: nội dung, giao diện, bố cục, thành viên, các tính năng (modules)

- Web Framework cung cấp một nền tảng ứng dụng đáp ứng nhanh, tức thời và

dễ sử dụng cho những ứng dụng, website thương mại lẫn không thương mại với giá thành rẻ hơn nhiều lần so với những giải pháp nền tảng đã có sẵn [2]

NGUYÊN TẮC THIẾT KẾ WEB FRAMEWORK

Về cách phân chia và tổ chức nội dung, trước khi Framework được thiết kế, nhóm đề tài đã định hình một số khung giao diện thường gặp và thiết kế chúng trở

Trang 15

6

thành Skin Sau đó phân chia các Control theo các Module và vị trí Qua việc phân tích nhu cầu tìm đọc của người dùng, nhóm đề tài đã lựa chọn xây dựng các module chính, module tiện ích giúp người dùng có thể tìm đến bản tin một cách nhanh nhất

2.4.2 Đảm bảo các liên kết được khám phá dễ dàng

Các đường liên kết là một điểm mạnh của website so với những tập thông tin bằng giấy Do đó, nhóm đề tài đã tận dụng tối đa ưu điểm này để phân chia nội dung nhằm giúp người tiếp cận thông tin của bạn một cách dễ dàng nhất

Một vấn đề đặt ra, tại sao trên các mạng xã hội, thông tin được truyền tải đi rất nhanh và rộng rãi Bởi các nhà thiết kế đã tạo ra rất nhiều liên kết toàn bộ trên các thông tin của người dùng với bạn bè của họ Tương tự như vậy, muốn người dùng khám phá nhiều thông tin trên website, nhóm đề tài đã phân chia nội dung và bố cục

có những đường liên kết đến ngay các vị trí thích hợp cho người dùng

LARAVEL FRAMEWORK

2.5

2.5.1 Khái niệm về Laravel

Laravel là một PHP framework mã nguồn mở và miễn phí, được phát triển bởi Taylor Otwell và nhắm vào mục tiêu hỗ trợ phát triển các ứng dụng web theo kiếm trúc model-view-controller (MVC) Những tính năng nổi bật của Laravel bao gồm cú pháp dễ hiểu – rõ ràng , một hệ thống đóng gói modular và quản lý gói phụ thuộc, nhiều cách khác nhau để truy cập vào các cơ sở dữ liệu quan hệ, nhiều tiện ích khác nhau hỗ trợ việc triển khai vào bảo trì ứng dụng [3]

Laravel được phát hành theo giấy phép MIT, với source code được lưu trữ tại Github

2.5.2 Mô hình MVC trong Laravel

Trong Laravel, mô hình này có sơ đồ như sau:

Hình 2.3 Mô hình MVC

Laravel Framework hỗ trợ lập trình theo mô hình MVC khá mạnh mẽ Ngoài các thành phần chính Model, View, Controller thì Routes được sử dụng định tuyến người dùng theo đúng Urls [4]

Trang 16

7

Ở đây, mọi Request từ phía người dùng đều phải qua Route, dữ liệu được gửi xuống Controller để xử lý, cần dữ liệu sẽ lấy từ Model lên hoặc cập nhật dữ liệu xuống Model, kết quả gửi ra View cho người sử dụng

User tạo ra một yêu cầu với URL dựa trên ứng dụng

Xác định “route” tương ứng với URL của user, chuyển tới controller tương ứng Controller xử lý nghiệp vụ, nếu cần thiết thì truy vấn dữ liệu từ model và trả thông tin cho View

View cung cấp thông tin trả về cho user

HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL

2.6

2.6.1 Giới thiệu hệ quản trị cơ sở dữ liệu MySQL

MySQL là ứng dụng cơ sở dữ liệu mã nguồn mở phổ biến nhất hiện nay và được

sử dụng phối hợp với PHP Trước khi làm việc với MySQL cần xác định các nhu cầu cho ứng dụng [5]

MySQL là cơ sở dữ liệu có trình giao diện trên Windows hay Linux, cho phép

người sử dụng có thể thao tác các hành động liên quan đến nó Việc tìm hiểu từng

công nghệ trước khi bắt tay vào việc viết mã kịch bản PHP, việc tích hợp hai công nghệ PHP và MySQL là một công việc cần thiết và rất quan trọng

2.6.2 Mục đích sử dụng của hệ quản trị cơ sở dữ liệu MySQL

Mục đích sử dụng cơ sở dữ liệu bao gồm các chức năng như: lưu trữ (storage), truy cập (accessibility), tổ chức (organization) và xử lí (manipulation)

- Lưu trữ trên đĩa và có thể chuyển đổi dữ liệu từ cơ sở dữ liệu này sang cơ sở dữ liệu khác, nếu bạn sử dụng cho quy mô nhỏ, bạn có thể chọn cơ sở dữ liệu nhỏ như:Microsoft Exel, Microsoft Access, MySQL, Microsoft Visual FoxPro, Nếu ứng dụng có quy mô lớn, bạn có thể chọn cơ sở dữ liệu có quy mô lớn như :Oracle, SQL Server,

- Truy cập: Truy cập dữ liệu phụ thuộc vào mục đích và yêu cầu của người sử dụng, ở mức độ mang tính cục bộ, truy cập cơ sỏ dữ liệu ngay trong cơ sở dữ liệu với nhau, nhằm trao đổi hay xử lí dữ liệu ngay bên trong chính nó, nhưng do mục đích và yêu cầu người dùng vượt ra ngoài cơ sở dữ liệu, nên bạn cần có các phương thức truy cập dữ liệu giữa các cơ sở dử liệu với nhau như:Microsoft Access với SQL Server, hay SQL Server và cơ sở dữ liệu Oracle

- Tổ chức: Tổ chức cơ sở dữ liệu phụ thuộc vào mo hình cơ sở dữ liệu, phân tích

và thiết kế cơ sở dữ liệu tức là tổ chức cơ sở dữ liệu phụ thuộc vào đặc điểm riêng của từng ứng dụng Tuy nhiên khi tổ chức cơ sở dữ liệu cần phải tuân theo một số tiêu chuẩn của hệ thống cơ sở dữ liệu nnhằm tăng tính tối ưu khi truy cập và xử lí

- Xử lí: Tùy vào nhu cầu tính toán và truy vấn cơ sở dữ liệu với các mục đích khác nhau, cần phải sử dụng các phát biểu truy vấn cùng các phép toán, phát biểu của cơ sở

dữ liệu để xuất ra kết quả như yêu cầu Để thao tác hay xử lí dữ liệu bên trong chính cơ

sở dữ liệu ta sử dụng các ngôn ngữ lập trình như:PHP, C++, Java, Visual Basic,

Trang 17

a Quản lý thông tin sản phẩm và loại sản phẩm

- Thêm thông tin các loại sản phẩm và sản phẩm: Hệ thống cung cấp chức năng thêm các hình ảnh của từng loại sản phẩm của shop với các thông tin liên quan đến sản phẩm Những thông tin bao gồm:

+ Thông tin các loại sản phẩm: Mã loại sản phẩm, Tên loại sản phẩm, Mô tả ,

- Xóa thông tin sản phẩm và loại sản phẩm: Hệ thống phải cung cấp chức năng xóa thông tin về một sản phẩm hoặc loại sản phẩm khi hết hàng hoặc không bán sản phẩm này nữa

- Hiển thị thông tin sản phẩm và loại sản phẩm: Hệ thống phải cung cấp chức năng hiện thị danh sách thông tin các loại sản phẩm và sản phẩm hiện có của cửa hàng

b Quản lý hóa đơn nhập

- Thêm thông tin hóa đơn nhập: Hệ thống cung cấp chức năng thêm hóa đơn nhập Những thông tin bao gồm: mã hóa đơn nhập, mã nhân viên, ngày tạo, tổng tiền

- Cập nhật thông tin hóa đơn nhập: Hệ thống cung cấp chức năng sửa lại thông

tin của hóa đơn nhập khi có sự thay đổi

- Xóa hóa đơn nhập: Hệ thống phải cung cấp chức năng xóa thông tin về một

hóa đơn nhập

- Hiển thị thông tin hóa đơn nhập: Hệ thống phải cung cấp chức năng hiện thị

danh sách thông tin các hóa đơn nhập của cửa hàng

c Quản lý chi tiết hóa đơn nhập

- Thêm chi tiết hóa đơn nhập: Hệ thống cung cấp chức năng thêm chi tiết hóa đơn nhập Những thông tin bao gồm: mã hóa đơn nhập, mã sản phẩm, số lượng, đơn giá

- Cập nhật thông tin chi tiết hóa đơn nhập: Hệ thống cung cấp chức năng sửa lại thông tin của chi tiết hóa đơn nhập khi có sự thay đổi

- Xóa chi tiết hóa đơn nhập: Hệ thống phải cung cấp chức năng xóa thông tin về một chi tiết hóa đơn nhập

Trang 18

9

- Hiển thị thông tin chi tiết hóa đơn nhập: Hệ thống phải cung cấp chức năng hiện thị danh sách thông tin các chi tiết hóa đơn nhập của cửa hàng

d Quản lý hóa đơn bán

- Thêm thông tin hóa đơn bán: Hệ thống cung cấp chức năng thêm hóa đơn bán Những thông tin bao gồm: mã hóa đơn bán, mã nhân viên, mã khách hàng, ngày tạo, tổng tiền

- Xóa hóa đơn bán: Hệ thống phải cung cấp chức năng xóa thông tin về một hóa

đơn bán

- Hiển thị thông tin hóa đơn bán: Hệ thống phải cung cấp chức năng hiện thị danh

sách thông tin các hóa đơn bán của cửa hàng

e Quản lý chi tiết hóa đơn bán

- Thêm thông tin chi tiết hóa đơn bán: Hệ thống cung cấp chức năng thêm chi

tiết hóa đơn bán Những thông tin bao gồm: mã hóa đơn bán, mã sản phẩm, số lượng,

- Xóa thông tin khách hàng: Hệ thống phải cung cấp cho người dùng chức năng xóa thông tin khách hàng khi cần thiết

- Hiển thị thông tin khách hàng: Hệ thống phải cung cấp cho người dùng chức năng hiển thị danh sách thông tin khách hàng đến mua sản phẩm

g Quản lý nhân viên

- Nhập thông tin nhân viên: Hệ thống giúp người quản lý cửa hàng nhập các thông tin về khách hàng Những thông tin liên quan đến nhân viên bao gồm: mã nhân viên, tên nhân viên, ngày sinh, số điện thoại, địa chỉ, email, chức vụ

- Cập nhật thông tin nhân viên: Hệ thống phải cung cấp cho người dùng chức năng sửa lại thông tin nhân viên khi có sự thay đổi

- Xóa thông tin nhân viên: Hệ thống phải cung cấp cho người dùng chức năng xóa thông tin nhân viên khi nhân viên đó không làm việc tại cửa hàng

- Hiển thị thông tin nhân viên: Hệ thống phải cung cấp cho người dùng chức năng hiển thị danh sách thông tin nhân viên trong cửa hàng

h Quản lý tin tức

- Thêm một tin tức: Hệ thống giúp người quản lý cửa hàng thêm các thông tin

về bản tin Những thông tin liên quan đến một bản tin bao gồm: mã tin, tiêu đề, nội dung, ảnh, ngày tạo

Trang 19

người dùng, họ và tên, địa chỉ, số điện thoại, quyền, email, password

- Cập nhật thông tin người dùng: Hệ thống phải cung cấp cho người dùng chức năng sửa lại thông tin người dùng khi có sự thay đổi

- Xóa thông tin người dùng: Hệ thống phải cung cấp cho người dùng chức năng xóa thông tin người dùng khi người dùng đó không sử dụng dịch vụ của cửa hàng

3.1.2 Khách hàng

a Xem thông tin

- Khách hàng có thể xem thông tin chi tiết của từng sản phẩm trong website

- Khách hàng có thể xem thông tin giới thiệu về cửa hàng

- Khách hàng có thể xem tin tức trên website

- Khách hàng có thể xem thông tin liên hệ trên website

b Tìm kiếm

- Tìm kiếm thông tin sản phẩm theo tên sản phẩm: Hệ thống phải cung cấp cho người dùng chức năng tìm kiếm và hiển thị toàn bộ danh sách các sản phẩm có tên gần đúng hoặc đúng với tên sản phẩm cần tìm

- Tìm kiếm thông tin sản phẩm theo mã sản phẩm: Hệ thống phải cung cấp cho người dùng chức năng tìm kiếm và hiển thị danh sách các sản phẩm có mã đúng với

mã vừa nhập

- Tìm kiếm thông tin sản phẩm theo giá tiền sản phẩm: Hệ thống phải cung cấp cho người dùng chức năng tìm kiếm và hiển thị danh sách các sản phẩm có giá tiền đúng hoặc gần đúng với giá tiền vừa nhập

Trang 20

11

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

3.2

3.2.1 Biểu đồ Usecase tổng quát

Hình 3.1 Biểu đồ User case tổng quát 3.2.2 Biểu đồ tuần tự cho từng chức năng

a Chức năng đăng ký

- Tác nhân: Khách hàng

- Tiền điều kiện: Khách hàng chưa có tài khoản trên hệ thống

- Mô tả: Cho phép khách hàng đăng ký tài khoản để trở thành thành viên của hệ thống

- Luồng sự kiện chính:

Trang 21

12

 B1: Khách hàng chọn đăng ký tài khoản

 B2: Form đăng ký hiển thị

 B3: Khách hàng nhập thông tin cần thiết vào form đăng kí

Luồng nhánh A1: Quá trình nhập thông tin không chính xác

+ Hệ thống thông báo “Vui lòng nhập đúng thông tin”

 Hệ thống yêu cầu khách hàng nhập lại thông tin

 Nếu khách hàng đồng ý thì quay về bước 2 của luồng sự kiện chính, nếu không đồng ý thì UC kết thúc

- Hậu điều kiện: Tài khoản mới trở thành thành viên của hệ thống

Hình 3.2 Biểu đồ tuần tự chức năng đăng ký

b Chức năng đăng nhập

- Tác nhân: Admin, khách hàng

- Tiền điều kiện: Thành viên chưa đăng nhập vào hệ thống

- Mô tả: Use case cho phép thành viên đăng nhập vào hệ thống

- Luồng sự kiện chính:

 B1: Thành viên truy cập vào Website

 B2: Form đăng nhập hiển thị

 B3: Nhập tên, mật khẩu vào form đăng nhập

 B4: Hệ thống kiểm tra tên, mật khẩu của thành viên

Trang 22

Luồng nhánh A1: Thành viên đăng nhập không thành công

 Hệ thống thông báo đăng nhập thất bại

 Hệ thống yêu cầu thành viên nhập lại tên và mật khẩu Quay về luồng sự kiện chính B2 của luồng sự kiện chính

 Use case kết thúc

- Hậu điều kiện: Thành viên đã đăng nhập thành công và có thể sử dụng các chức năng mà hệ thống cung cấp

Hình 3.3 Biểu đồ tuần tự chức năng đăng nhập

c Chức năng thêm vào giỏ hàng

- Tác nhân: Khách hàng

- Mô tả: Cho phép khách hàng đưa sản phẩm đã chọn vào giỏ hàng

- Tiền điều kiện: sản phẩm đã được chọn

Trang 23

14

Hình 3.4 Biểu đồ chức năng thêm vào giỏ hàng

d Chức năng thêm sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên thêm mới sản phẩm vào hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng nhập sản phẩm

+ B2 Form nhập thông tin sản phẩm hiển thị lên màn hình

+ B3 Admin điền những thông tin sản phẩm mà form yêu cầu

+ B4 Nhấn nút tạo sản phẩm

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Tạo sản phẩm thành công Thông tin về sản phẩm mới được lưu vào database

- Luồng rẽ nhánh A1: Tạo sản phẩm không thành công

+ B1 Hệ thống thông báo tạo sản phẩm không thành công

+ B2 Yêu cầu nhập lại thông tin sản phẩm

+ B3 Quay lại bước ba trong luồng điều kiện chính

- Hậu điều kiện: Tạo sản phẩm thành công, khách hàng có thể nhìn thấy được sản phẩm mà admin vừa tạo ra

Trang 24

15

Hình 3.5 Biểu đồ tuần tự chức năng thêm sản phẩm

e Chức năng sửa thông tin sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên sửa thông tin sản phẩm trên hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng sửa sản phẩm

+ B2 Form thông tin sản phẩm hiển thị lên màn hình

+ B3 Admin chỉnh sửa những thông tin cần sửa của sản phẩm

+ B4 Nhấn nút sửa sản phẩm

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Sửa sản phẩm thành công Thông tin đã chỉnh sửa về sản phẩm được lưu vào database

- Luồng rẽ nhánh A1: Sửa sản phẩm không thành công

+ B1 Hệ thống thông báo sửa sản phẩm không thành công

+ B2 Yêu cầu nhập lại thông tin muốn sửa sản phẩm

+ B3 Quay lại bước ba trong luồng điều kiện chính

- Hậu điều kiện: Sửa sản phẩm thành công, hiển thị thông tin đã sửa cho sản phẩm

Trang 25

16

Hình 3.6 Biểu đồ tuần tự chức năng sửa thông tin sản phẩm

f Chức năng xóa sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên xóa sản phẩm trên hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng xóa trên sản phẩm muốn xóa + B2 Form thông báo quản trị viên có muốn xóa sản phẩm không

+ B3 Admin nhấn nút yes

+ B4 Thông tin về sản phẩm trên hệ thống sẽ bị xóa

- Hậu điều kiện: Xóa sản phẩm thành công, thông tin về sản phẩm biến mất trên

hệ thống

Hình 3.7 Biểu đồ tuần tự chức năng xóa sản phẩm

Trang 26

17

g Chức năng thêm loại sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên thêm mới loại sản phẩm vào hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng thêm loại sản phẩm

+ B2 Form nhập thông tin loại sản phẩm hiển thị lên màn hình

+ B3 Admin điền thông tin loại sản phẩm mà form yêu cầu

+ B4 Nhấn nút tạo loại sản phẩm

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Tạo loại sản phẩm thành công Thông tin về loại sản phẩm mới được lưu vào database

- Luồng rẽ nhánh A1: Tạo loại sản phẩm không thành công

+ B1 Hệ thống thông báo tạo loại sản phẩm không thành công

+ B2 Yêu cầu nhập lại thông tin loại sản phẩm

+ B3 Quay lại B3 trong luồng điều kiện chính

Hậu điều kiện: Tạo loại sản phẩm thành công, khách hàng có thể nhìn thấy được loại sản phẩm mà admin vừa tạo ra

Hình 3.8 Biểu đồ tuần tự thêm loại sản phẩm

h Chức năng sửa loại sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

Trang 27

18

- Mô tả: Chức năng này cho phép quản trị viên sửa loại sản phẩm trong hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng sửa loại sản phẩm

+ B2 Form thông tin loại sản phẩm hiển thị lên màn hình

+ B3 Admin điền thông tin cần sửa

+ B4 Nhấn nút sửa loại sản phẩm

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Sửa loại sản phẩm thành công Thông tin mới về loại sản phẩm được lưu vào database

- Luồng rẽ nhánh A1: Sửa loại sản phẩm không thành công

+ B1 Hệ thống thông báo sửa loại sản phẩm không thành công

+ B2 Yêu cầu nhập lại thông tin cần sửa trên loại sản phẩm

+ B3 Quay lại B3 trong luồng điều kiện chính

Hậu điều kiện: Sửa loại sản phẩm thành công, khách hàng có thể nhìn thấy được loại sản phẩm đã chỉnh sửa

Hình 3.9 Biểu đồ tuần tự chức năng sửa loại sản phẩm

i Chức năng xóa loại sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên xóa loại sản phẩm trên hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng xóa trên loại sản phẩm muốn xóa

Trang 28

19

+ B2 Form thông báo quản trị viên có muốn xóa loại sản phẩm không

+ B3 Admin nhấn nút yes

+ B4 Thông tin về loại sản phẩm trên hệ thống sẽ bị xóa

- Hậu điều kiện: Xóa loại sản phẩm thành công, thông tin về loại sản phẩm biến mất trên hệ thống

Hình 3.10 Biểu đồ tuần tự xóa loại sản phẩm

j Chức năng thêm danh mục sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên thêm mới danh mục sản phẩm vào hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng thêm danh mục sản phẩm

+ B2 Form nhập thông tin danh mục sản phẩm hiển thị lên màn hình

+ B3 Admin điền thông tin danh mục sản phẩm mà form yêu cầu

+ B4 Nhấn nút tạo danh mục sản phẩm

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Tạo danh mục sản phẩm thành công Thông tin về danh mục sản phẩm mới được lưu vào database

- Luồng rẽ nhánh A1: Tạo danh mục sản phẩm không thành công

+ B1 Hệ thống thông báo tạo danh mục sản phẩm không thành công

+ B2 Yêu cầu nhập lại thông tin danh mục sản phẩm

+ B3 Quay lại B3 trong luồng điều kiện chính

Trang 29

20

Hậu điều kiện: Tạo danh mục sản phẩm thành công, khách hàng có thể nhìn thấy được danh mục sản phẩm mà admin vừa tạo ra

Hình 3.11 Biểu đồ tuần tự thêm danh mục sản phẩm

k Chức năng sửa danh mục sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên sửa danh mục sản phẩm trong hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng sửa danh mục sản phẩm

+ B2 Form thông tin danh mục sản phẩm hiển thị lên màn hình

+ B3 Admin điền thông tin cần sửa

+ B4 Nhấn nút sửa danh mục sản phẩm

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Sửa danh mục sản phẩm thành công Thông tin mới về danh mục sản phẩm được lưu vào database

- Luồng rẽ nhánh A1: Sửa danh mục sản phẩm không thành công

+ B1 Hệ thống thông báo sửa danh mục sản phẩm không thành công

+ B2 Yêu cầu nhập lại thông tin cần sửa trên danh mục sản phẩm

+ B3 Quay lại B3 trong luồng điều kiện chính

Hậu điều kiện: Sửa danh mục sản phẩm thành công, khách hàng có thể nhìn thấy được danh mục sản phẩm đã chỉnh sửa

Trang 30

21

Hình 3.12 Biểu đồ tuần tự chức năng sửa danh mục sản phẩm

l Chức năng xóa danh mục sản phẩm

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên xóa danh mục sản phẩm trên hệ thống

+ B4 Thông tin về danh mục sản phẩm trên hệ thống sẽ bị xóa

- Hậu điều kiện: Xóa danh mục sản phẩm thành công, thông tin về danh mục sản phẩm biến mất trên hệ thống

Trang 31

22

Hình 3.13 Biểu đồ tuần tự xóa danh mục sản phẩm

m Chức năng thêm tin tức

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên thêm tin tức mới vào hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng thêm tin tức

+ B2 Form nhập tin tức hiển thị lên màn hình

+ B3 Admin điền thông tin tin tức mà form yêu cầu

+ B4 Nhấn nút tạo tin tức

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Tạo tin tức thành công Thông tin về tin tức mới được lưu vào database

- Luồng rẽ nhánh A1: Tạo tin tức không thành công

+ B1 Hệ thống thông báo tạo tin tức không thành công

+ B2 Yêu cầu nhập lại thông tin tin tức

+ B3 Quay lại B3 trong luồng điều kiện chính

Hậu điều kiện: Tạo tin tức thành công, khách hàng có thể đọc được tin tức mà admin vừa tạo ra

Trang 32

23

Hình 3.14 Biểu đồ tuần tự chức năng thêm tin tức

n Chức năng sửa tin tức

- Tác nhân: Admin

- Tiền điều kiện: Admin đã đăng nhập vào hệ thống thành công

- Mô tả: Chức năng này cho phép quản trị viên sửa tin tức trong hệ thống

- Luồng sự kiện chính:

+ B1 Quản trị viên click chuột chọn chức năng sửa tin tức

+ B2 Form thông tin tin tức hiển thị lên màn hình

+ B3 Admin điền thông tin cần sửa

+ B4 Nhấn nút sửa tin tức

+ B5 Hệ thống sẽ kiểm tra thông tin vừa nhập vào nếu không hợp lệ thì thực hiện luồng rẽ nhánh A1 Nếu hợp lệ tiếp tục thực hiện bước tiếp theo trong luồng sự kiện chính

+ B6 Sửa tin tức thành công Thông tin mới về tin tức được lưu vào database

- Luồng rẽ nhánh A1: Sửa tin tức không thành công

+ B1 Hệ thống thông báo sửa tin tức không thành công

+ B2 Yêu cầu nhập lại thông tin cần sửa trên tinn tức

+ B3 Quay lại B3 trong luồng điều kiện chính

Hậu điều kiện: Sửa tin tức thành công, khách hàng có thể tin tức đã chỉnh sửa

Ngày đăng: 02/09/2021, 17:28

TỪ KHÓA LIÊN QUAN

w