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

BÁO cáo môn PROJECT 2 WEB NGHE NHẠC TRỰC TUYẾN

33 21 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 33
Dung lượng 1,17 MB

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

Cấu trúc

  • Danh mục hình ảnh

  • LỜI MỞ ĐẦU

  • Chương 1. Cơ sở lý thuyết và công nghệ sử dụng

    • 1.1. Express JS

    • 1.2. NodeJS

    • 1.3. MongoDB

  • Chương 2. Tổng quan về hệ thống

    • 2.1. Biểu đồ use case

      • 2.1.1. Biểu đồ use case tổng quan

      • 2.1.2. Phân rã use case quản lý sản phẩm

      • 2.1.3. Phân rã use case quản lý khách hàng

      • 2.1.4. Phân rã use case quản lý đơn hàng

    • 2.2. Đặc tả use case

      • 2.2.1. Đặc tả use case đăng nhập

      • 2.2.2. Đặc tả use case đăng ký

      • 2.2.3. Đặc tả use case tìm kiếm sản phẩm

      • 2.2.4. Đặc tả use case xem chi tiết sản phẩm

      • 2.2.5. Đặc tả use case đăng xuất

      • 2.2.6. Đặc tả use case xem giỏ hàng

      • 2.2.7. Đặc tả use case xóa sản phẩm khỏi giỏ hàng

      • 2.2.8. Đặc tả use case đặt hàng

      • 2.2.9. Đặc tả use case xem lịch sử đơn hàng

      • 2.2.10. Đặc tả use case xem chi tiết đơn hàng

      • 2.2.11. Đặc tả use case hủy đơn hàng

      • 2.2.12. Đặc tả use case quản lý sản phẩm

      • 2.2.13. Đặc tả use case quản lý khách hàng

      • 2.2.14. Dặc tả use case quản lý đơn hàng

    • 2.3. Biểu đồ tuần tự

      • 2.3.1. UC đăng nhập

      • 2.3.2. UC đăng ký

      • 2.3.3. UC đăng xuất

      • 2.3.4. UC thêm sản phẩm

      • 2.3.5. UC Tìm kiếm sản phẩm

      • 2.3.6. UC xem danh sách sản phẩm

      • 2.3.7. UC xem chi tiết sản phẩm

      • 2.3.8. UC sủa sản phẩm

      • 2.3.9. UC xóa sản phẩm

      • 2.3.10. UC tìm kiếm khách hàng

      • 2.3.11. UC xem danh sách khách hàng

  • Chương 3. Thiết kế và xây dựng website bán hàng

  • 3.1. Giao diện trang đăng nhập

  • 3.2. Giao diện trang đăng ký

  • 3.3. Giao diện quên mật khẩu

  • 3.4. Giao diện trang chủ

  • 3.5. Giao diện danh sách sản phẩm

  • 3.6. Giao diện xem chi tiết sản phẩm

  • 3.7. Giao diện giỏ hàng

  • 3.8. Giao diện trang thanh toán

  • 3.9. Giao diện trang thông tin tài khoản

  • Chương 4. Triển khai thử nghiệm và đánh giá

    • 4.1. Triển khai hệ thống

    • 4.2. Đánh giá hệ thống

  • KẾT LUẬN

  • TÀI LIỆU THAM KHẢO

Nội dung

Cách triển khai:  MongoDB dùng để xử lý các yêu cầu về dữ liệu  ExpressJS là một web application framework cho NodeJS, cung cấpcác tính năng mạnh mẽ cho việc xây dựng một ứng dụng web

Trang 1

ĐẠI HỌC BÁCH KHOA HÀ NỘI

TRƯỜNG CÔNG NGHỆ THÔNG TIN & TRUYỀN

Sinh viên thực hiện: Nguyễn Công

Tiến MSSV:

20194382 – K64

Giáo viên hướng dẫn : Trịnh Văn Chiến

Hà Nội, tháng 8 năm 2022

Trang 3

MỤC LỤC

Danh mục hình ảnh 4

LỜI MỞ ĐẦU 5

Chương 1 Cơ sở lý thuyết và công nghệ sử dụng 6

1.1 Express JS 6

1.2 NodeJS 7

1.3 MongoDB 8

Chương 2 Tổng quan về hệ thống 10

2.1 Biểu đồ use case 10

2.1.1 Biểu đồ use case tổng quan 10

2.1.2 Phân rã use case quản lý sản phẩm 11

2.1.3 Phân rã use case quản lý khách hàng 11

2.1.4 Phân rã use case quản lý đơn hàng 12

2.2 Đặc tả use case 12

2.2.1 Đặc tả use case đăng nhập 12

2.2.2 Đặc tả use case đăng ký 13

2.2.3 Đặc tả use case tìm kiếm sản phẩm 13

2.2.4 Đặc tả use case xem chi tiết sản phẩm 14

2.2.5 Đặc tả use case đăng xuất 14

2.2.6 Đặc tả use case xem giỏ hàng 15

2.2.7 Đặc tả use case xóa sản phẩm khỏi giỏ hàng 15

2.2.8 Đặc tả use case đặt hàng 15

2.2.9 Đặc tả use case xem lịch sử đơn hàng 16

2.2.10 Đặc tả use case xem chi tiết đơn hàng 16

2.2.11 Đặc tả use case hủy đơn hàng 17

2.2.12 Đặc tả use case quản lý sản phẩm 17

2.2.13 Đặc tả use case quản lý khách hàng 19

2.2.14 Dặc tả use case quản lý đơn hàng 20

2.3 Biểu đồ tuần tự 21

2.3.1 UC đăng nhập 21

2.3.2 UC đăng ký 21

2.3.3 UC đăng xuất 22

2.3.4 UC thêm sản phẩm 22

Trang 4

2.3.5 UC Tìm kiếm sản phẩm 23

2.3.6 UC xem danh sách sản phẩm 23

2.3.7 UC xem chi tiết sản phẩm 24

2.3.8 UC sủa sản phẩm 24

2.3.9 UC xóa sản phẩm 24

2.3.10 UC tìm kiếm khách hàng 24

2.3.11 UC xem danh sách khách hàng 25

Chương 3 Thiết kế và xây dựng website bán hàng 25

3.1 Giao diện trang đăng nhập 25

3.2 Giao diện trang đăng ký 25

3.3 Giao diện quên mật khẩu 26

3.4 Giao diện trang chủ 26

3.5 Giao diện danh sách sản phẩm 27

3.6 Giao diện xem chi tiết sản phẩm 28

3.7 Giao diện giỏ hàng 28

3.8 Giao diện trang thanh toán 28

3.9 Giao diện trang thông tin tài khoản 29

Chương 4 Triển khai thử nghiệm và đánh giá 29

4.1 Triển khai hệ thống 29

4.2 Đánh giá hệ thống 30

KẾT LUẬN 31

TÀI LIỆU THAM KHẢO 32

Trang 5

Danh mục hình ảnh

Hình 1.1 Cấu trúc ExpressJs………6

Hình 2.1 Biểu đồ Use case tổng quan……….11

Hình 2.2 Biểu đồ phân rã use case quản lý sản phẩm……….11

Hình 2.3 Biểu đồ phân rã use case quản lý khách hàng……… 12

Hình 2.4 Biểu đồ phân rã use case quản lý đơn hàng……… 12

Hình 2.5 Biểu đồ tuần tự use case đăng nhập……… 21

Hình 2.6 Biểu đồ tuần tự use case đăng ký……….22

Hình 2.7 Biểu đồ tuần tự use case đăng xuất……… 22

Hình 2.8 Biểu đồ tuần tự use case thêm sản phẩm……… 23

Hình 2.9 Biểu đồ tuần tự use case tìm kiếm sản phẩm………

23 Hình 2.10 Biểu đồ tuần tự use case xem danh sách sản phẩm………23

Hình 2.11 Biểu đồ tuần tự use case xem chi tiết sản phẩm……….24

Hình 2.11 Biểu đồ tuần tự use case sửa sản phẩm……… 24

Hình 2.12 Biểu đồ tuần tự use case xóa sản phẩm……… 24

Hình 2.13 Biểu đồ tuần tự use case tìm kiếm khách hàng……… 24

Hình 2.14 Biểu đồ tuần tự use case xem danh sách khách hàng……….25

Hình 3.1 Giao diện trang đăng nhập………25

Hình 3.2 Giao diện trang đăng ký tài khoản………26

Hình 3.3 Giao diện trang quên mật khẩu……….26

Hình 3.4 Giao diện trang chủ……… 27

Hình 3.5 Giao diện trang danh sách sản phẩm………27

Hình 3.6 Giao diện trang xem chi tiết sản phẩm………28

Hình 3.7 Giao diện trang giỏ hàng……… 28

Hình 3.8 Giao diện trang thanh toán……… 29

Hình 3.9 Giao diện trang thông tin tài khoản……… 29

Trang 6

LỜI MỞ ĐẦU

Ngày nay với sự phát triển mạnh mẽ của công nghệ thông tin và những ứng dụng của nó

trong đời sống Máy tính điện tử không còn là một thứ phương tiện lã lẫm đối với mọingười mà nó trở thành một công cụ làm việc và giải trí thông dụng và hữu ích của chúng

ta, không chỉ ở công sở mà còn ngay cả trong gia đình

Trong nền kinh tế hiện nay, với xu thế toàn cầu hoá nền kinh tế thế giới, mọi mặt của đời sống xã hội ngày càng được nâng cao, đặc biệt là nhu cầu trao đổi hàng hoá của con người ngày càng tăng cả về số lượng và chất lượng.Hiện nay các công ty tin học hàng đầu thế giới không ngừng đầu tư và cải thiện các giải pháp cũng như các sản phẩm nhằm cho phép tiến hành thương mại hóa trên Internet Thông qua các sản phẩm và công nghệ này, chúng ta dễ dàng nhận ra tầm quan trọng và tính tất yếu của thương mại điện

tử Với những thao tác đơn giản trên máy có nối mạng Internet bạn sẽ có tận tay những gì mình cần mà không phải mất nhiều thời gian Bạn chỉ cần vào các trang dịch vụ thương mại điện tử, làm theo hướng dẫn và click vào những gì bạn cần Các nhà dịch vụ sẽ mang đến tận nhà cho bạn

Để tiếp cận và góp phần đẩy mạnh sự phổ biến của thương mại điện tử ở Việt Nam,

Em đã tìm hiểu, xây dựng và cài đặt “Website bán hàng trực tuyến” với mặt hàng là:Quần áo Qua khảo sát thực tế, ở Việt Nam thì hình thức bán hàng qua mạng nàycũng khá phổ biến

Cùng với sự chỉ bảo tận tình của thầy Trịnh Văn Chiến em đã hoàn thành website này.Trong quá trình phân tích thiết kế hệ thống không thể tránh khỏi những sai sót mong cô đóng góp ý kiến để trang Web được hoàn thiện hơn

Cách triển khai:

 MongoDB dùng để xử lý các yêu cầu về dữ liệu

 ExpressJS là một web application framework cho NodeJS, cung cấpcác tính năng mạnh

mẽ cho việc xây dựng một ứng dụng web đúngnghĩa hoặc ngược lại

 NodeJS là một nền tảng được xây dựng trên “V8 Javascript engine”được viết bằng c++

và Javasccript

 Sử dụng HTML/ CSS để xây dựng giao diện website

Đồ án bao gồm 3 chương:

 Chương 1 Cơ sở lý thuyết và công nghệ sử dụng

Chương này nêu ra các công nghệ được sử dụng trong đề tài và tổng quan lý thuyết

về công nghệ được sử dụng

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

Chương này nêu ra bài toán quản lí thông tin cho người dùng, phân tích quy trìnhhoạt động của website Từ đó nêu lên mục đích, yêu cầu đặt ra và phân tích hệthống

 Chương 3 Thiết kế và xây dựng website bán hàng

 Chương 4 Triển khai thử nghiệm và đánh giá

Chương này nêu cách cài đặt chương trình và môi trường

Trang 7

Chương 1 Cơ sở lý thuyết và công nghệ sử dụng

1.1 Express JS

1.1.1 Khái niêm

 Express js là một Framework nhỏ, nhưng linh hoạt được xây dựng trên nềntảngcủa Nodejs Nó cung cấp các tính năng mạnh mẽ để phát triển web hoặcmobile

 Về các package hỗ trợ: Expressjs có vô số các package hỗ trợ

 Về performance: Express cung cấp thêm về các tính năng (feature) để dev lậptrình tốt hơn Chứ không làm giảm tốc độ của NodeJS

 Và hơn hết, các Framework nổi tiếng của NodeJS hiện nay đều sử dụngExpressJS như một core function, chẳng hạn: SailsJS, MERN,

1.1.2 Cấu trúc của Express JS

 Folder routes: chứa các route có trong ứng dụng

 Folder view: chứa view/template cho ứng dụng

 Folder public chứa các file css, js, images, cho ứng dụng1.1.3 Tìm hiểu về Router trong Express

1.1.3.1 Khái niệm

 Router là một Object (khác Routing nhé), nó là một instance riêngcủamiddleware và routes (Hai khái niệm này là gì thì chúng ta sẽ tìm hiểusaunhé) Chính vì nó là một instance của middleware và route nên nó có cácchứcnăng của cả hai Chúng ta có thể gọi nó là một mini-application

Trang 8

 Các Application dùng ExpressJS làm core đều có phần Router được tích hợpsẵn trong đó.

 Router hoạt động như một middleware nên chúng ta có thể dùng nó nhưmộtarguments Hoặc dùng nó như một arguments cho route khác

 Chúng ta cũng có thể sử dụng Router để chia route

1.1.3.2 Tìm hiểu về các method all của router

 router.all() Method này phù hợp với việc định nghĩa mang tính chất toàn cụccho các prefix

 Nếu ta đặt route này trên cùng (top) thì nó yêu cầu tất cả các route bên dướiphải được requireAuthentication Có nghĩa là xác thực trước khi thực hiệnmộthành động hay một task nào đó tiếp theo

1.1.4 Tìm hiều về router.METHOD()

 Router.METHOD() cung cấp cho chúng ta chức năng Routing trongExpressJS.Cụ thể METHOD() ở đây là các HTTP method mà chúng tathường xuyên sửdụng Chẳng hạn GET, POST, PUT,

 Tên METHOD phải được viết thường

 Để bảo mật tốt hơn thì có thể sử dụng Regex để bắt các Endpoint

1.2 NodeJS

1.2.1 Khái niệm

 NodeJS là một mã nguồn được xây dựng dựa trên nền tảng Javascript V8Engine,nó được sử dụng để xây dựng các ứng dụng web như các trang videoclip, các forumvà đặc biệt là trang mạng xã hội phạm vi hẹp NodeJS là một

mã nguồn mở được sửdụng rộng bởi hàng ngàn lập trình viên trên toàn thếgiới

 NodeJS có thể chạy trên nhiều nền tảng hệ điều hành khác nhau từ WIndowchotới Linux, OS X nên đó cũng là một lợi thế NodeJS cung cấp các thư việnphong phúở dạng Javascript Module khác nhau giúp đơn giản hóa việc lậptrình và giảm thờigian ở mức thấp nhất

 Khi nói đến NodeJS thì phải nghĩ tới vấn đề Realtime Realtime ở đây chínhlàxử lý giao tiếp từ client tới máy chủ theo thời gian thực

1.2.2 Các đặc tính của NodeJS

 Không đồng bộ: Tất cả các API của NodeJS đều không đồng bộ( blocking), nó chủ yếu được dựa trên nền của NodeJS Server và chờ đợiServer trả dữ liệu về Việc di chuyển máy chủ đến các API tiếp theo sau khigọi và cơ chế thông báo các sự kiện của NodeJS giúp máy chủ để có đượcmột phản ứng từ các cuộc gọi API trươc(realtime)

none- Chạy rất nhanh: NodeJ được xây dựng dựa vào nền tảng V8 JavascriptEnginenên việc thực thi chương trình rất nhanh

 Đơn luồng nhưng khả năng mở rộng cao: Node.js sử dụng một mô hìnhluồngduy nhất với sự kiện lặp cơ chế tổ chức sự kiện giúp các máy chủ đểđáp ứngmột cách không ngăn chặn và làm cho máy chủ cao khả năng mở rộng nhưtrái ngược với các máy chủ truyền thống mà tạo đề hạn chế để xửlý yêu cầu.Node.js sử dụng một chương trình đơn luồng và các chươngtrình tương tự cóthể cung cấp dịch vụ cho một số lượng lớn hơn nhiều sovới yêu cầu máy chủtruyền thống như Apache HTTP Server

 Không đệm: NodeJS không đệm bất kì một dữ liệu nào và các ứng dụng nàychủ yếu là đầu ra dữ liệu

Trang 9

 Có giấy phép: NodeJS đã được cấp giấy phép bởiMIT License.

1.2.3 Hai NodeJS framework sử dụng

1.2.3.1 Express

ExpressJS là một trong những framework phổ biến dùng để xây dựng APIvàWebsite phổ biến nhất của NodeJS Nó được sử dụng rộng rãi đến mức hầu nhưmọidự án Web nào đều bắt đầu bằng việc tích hợp Express Có rất nhiều lý do đểchọnExpressJS:

 Có nhiều tính năng hỗ trợ tất cả những gì bạn cần trong việc xây dựng WebvàAPI

 Quản lý các router dễ dàng

 Cung cấp một nền tảng phát triển cho các API

 Hỗ trợ nhiều thư viện và plugin

 Bảo mật và an toàn hơn so với việc code thuần

 Hỗ trợ cồng đồng tuyệt vời

1.2.3.2 SocketIO

 SocketIO là một web-socket framework có sẵn cho nhiều ngôn ngữ lập trình

 Trong NodeJS, SocketIO cho phép xây dựng một các ứng dụng realtime nhưchatbot, tickers, dashboard APIs, và nhiều ứng dụng khác SocketIO có lợiíchhơn so với NodeJS thông thường

 Hỗ trợ route URL tùy chỉnh cho web socket

 Tích hợp dễ dàng hơn với Express JS

 Hỗ trợ clustering với Redis

1.3 MongoDB

1.3.1 Khái niệm

MongoDB là phần mềm cơ sở dữ liệu mã nguồn mở NoSQL hỗ trợ đa nềntảngđược thiết kế theo hướng đối tượng Các bảng (trong MongoDB gọi làcollection) có cấu trúc linh hoạt cho phép dữ liệu không cần tuân theo dạng cấu trúcnào.Vì thế, nó có thể dùng để lưu trữ dữ liệu có cấu trúc phức tạp và đa dạng Dữliệuđược gọi là Big Data Đặc biệt, chương trình này lưu trữ dữ liệu vào collectiontheohướng tài liệu kiểu JSON thay vì bảng nên có hiệu suất cao và tính khả dụngcao

1.3.2 NoSQL

NoSQL (Non-Relational SQL) là dạng cơ sở dữ liệu mã nguồn mở được ra đờinhưmột mô hình tiến bộ hơn về tốc độ, tính năng,… so với hệ quản trị cơ sở dữliệuquan hệ RDBMS NoSQL có kiểu dữ liệu JSON Đây là dạng dữ liệu kiểu keyvàvalue cùng với hiệu suất nhanh và khả năng mở rộng không bị ràng buộc bởi việctạokhóa ngoại, khóa chính,… nên được ưa chuộng và sử dụng rất phổ biến

1.3.3 Tính năng của MongoDB

1.3.3.1 Truy vấn ad học

Truy vấn ad hoc là một trong những tính năng tốt nhất của chương trình Nó hỗtrợcác trường, truy vấn phạm vi và tìm kiếm các biểu thức để trả về các trường tàiliệucụ thể bao gồm các hàm JavaScript do người dùng xác định hoặc các truy vấnnàyđược cấu hình và trả về mẫu kết quả ngẫu nhiên có kích thước nhất định Bêncạnh đó,các trường trong MongoDB có thể được dùng để lập các chỉ mục chính vàcác chỉ mục phụ

Trang 10

1.3.3.3 Cân bằng tải

Bằng cách sử dụng Sharding, MongoDB chia tỷ lệ theo chiều ngang để ngườidùngchọn một Shard key Xác định các dữ liệu được phân phối trong collection.Nhìnchung, dữ liệu được chia thành các phạm vi và được phân phối đồng đều dựatrên các Shard key Nó chạy trên nhiều máy chủ, cân bằng tải hoặc sao chép dữ liệu

để giữhệ thống luôn hoạt động trong trường hợp có lỗi về phần cứng

1.3.3.4 Lưu trữ tệp

Với tính năng lưu trữ tệp, MongoDB được sử dụng như một hệ thống tệp(GridFS)giúp cân bằng tải và sao chép dữ liệu trên nhiều máy tính để lưu trữ tệp.Trong đó,GridFS chia một tệp ra thành các phần hoặc các đoạn và lưu trữ thànhnhững tài liệuriêng biệt Bạn có thể truy cập GridFS bằng tiện ích Mongofiles hoặc plugin choNginx và Lighttpd

1.3.3.5 Tập hợp

Ở tính năng tập hợp, chương trình này cung cấp ba cách chính để thực hiện tậphợp

là Aggregation Pipeline, chức năng Mapreduce và Single-purposeAggregation.Trong đó, theo tài liệu của MongoDB thì Aggregation Pipeline đượccông nhận làcung cấp hiệu suất tốt hơn hầu hết các hoạt động tổng hợp

1.3.3.6 Thực thi Javascript phía máy chủ

JavaScript thường được thực thi trong các truy vấn, các hàm tổng hợp và đượcgửitrực tiếp đến cơ sở dữ liệu

1.3.3.7 Giới hạn kích thước collection

MongoDB hỗ trợ collection có kích thước cố định được gọi là collection giớihạn

Nó có kích cỡ cố định theo sau thứ tự chèn làm tăng hiệu suất các hoạt động kháccóliên quan đến dữ liệu Khi dữ liệu vượt quá mức giới hạn thì các tài liệu cũ sẽ bịxóamà không cần dùng bất cứ dòng lệnh nào

Trang 11

 Đầu tiên có thể nhắc đến là tính linh hoạt lưu trữ dữ liệu theo các kích cỡkhác nhau, dữ liệu dưới dạng hướng tài liệu JSON nên bạn có thể chènvàothoải mái bất cứ thông tin gì bạn muốn.

 Khác với RDBMS dữ liệu trong đây không có sự ràng buộc và không cóyêucầu tuân theo khuôn khổ nhất định, điều này giúp bạn tiết kiệm thờigian choviệc kiểm tra sự thỏa mãn về cấu trúc nếu muốn chèn, xóa, cậpnhật hay thayđổi các dữ liệu trong bảng

 MongoDB dễ dàng mở rộng hệ thống bằng cách thêm node vào cluster – cụmcác node chứa dữ liệu giao tiếp với nhau

 Ưu điểm thứ tư là tốc độ truy vấn nhanh hơn nhiều so với hệ quản trị cơ sở dữliệu quan hệ RDBMS do dữ liệu truy vấn được cached lên bộ nhớ RAMđểlượt truy vấn sau diễn ra nhanh hơn mà không cần đọc từ ổ cứng

 Cũng là một ưu điểm về hiệu suất truy vấn của MongoDB, trường dữliệu“_id” luôn được tự động đánh chỉ mục để đạt hiệu suất cao nhất

1.3.5 Nhược điểm MongoDB

 Dữ liệu trong MongoDB không bị ràng buộc như RDBMS nhưng ngườisửdụng lưu ý cẩn thận mọi thao tác để không xảy ra các kết quả ngoài ýmuốngây ảnh hưởng đến dữ liệu

 Một nhược điểm mà “dân công nghệ” hay lo ngại là bộ nhớ của thiếtbị.Chương trình này thường tốn bộ nhớ do dữ liệu được lưu dưới dạng key-value, trong khi các collection chỉ khác về value nên sẽ lặp lại key dẫn đếnthừa dữ liệu

 Thông thường, dữ liệu thay đổi từ RAM xuống ổ cứng phải qua 60 giâythìchương trình mới thực hiện hoàn tất, đây là nguy cơ bị mất dữ liệu nếu bấtngờ xảy ra tình huống mất điện trong vòng 60 giây đó

Chương 2 Tổng quan về hệ thống

2.1 Biểu đồ use case

2.1.1 Biểu đồ use case tổng quan

Trang 12

Hình 2.1 Biểu đồ Use case tổng quan

2.1.2 Phân rã use case quản lý sản phẩm

Hình 2.2 Biểu đồ phân rã use case quản lý sản phẩm

2.1.3 Phân rã use case quản lý khách hàng

Trang 13

Hình 2.3 Biểu đồ phân rã use case quản lý khách hàng

2.1.4 Phân rã use case quản lý đơn hàng

Hình 2.4 Biểu đồ phân rã use case quản lý đơn hàng

2.2 Đặc tả use case

2.2.1 Đặc tả use case đăng nhập

Mã Use case UC01 Tên Use case Đăng nhập

4. Khách Yêu cầu đăng nhập

5. Hệ thống Kiểm tra xem khách đã nhập các trường bắt buộc hay chưa

6. Hệ thống Kiểm tra email và mật khẩu có hợp lệ hay không

7. Hệ thống Hiển thi giao diện trang chủLuồng sự kiện

thay thế STT Thực hiện bởi6a. Hệ thống Thông báo lỗi: cần nhập các trường bắt buộc nhập nếu Hành động

khách nhập thiếu 7a Hệ thống Thông báo lỗi: Email hoặc mật khẩu không đúng Hậu điều kiện Không

Bảng 2.1 Đặc tả use case đăng nhập

2.2.2 Đặc tả use case đăng ký

Mã Use case UC02 Tên Use case Đăng Ký

Trang 14

2. Hệ thống Hiển thị giao diện đăng ký

3. Khách Nhập các thông tin cá nhân

4. Khách Yêu cầu đăng ký

5. Hệ thống Kiểm tra xem khách đã nhập các trường bắt buộc hay chưa

6. Hệ thống Kiểm tra email và mật khẩu có hợp lệ hay không

7. Hệ thống Lưu thông tin tài khoảnLuồng sự kiện

thay thế STT Thực hiện bởi6a. Hệ thống Thông báo lỗi: cần nhập các trường bắt buộc nhập nếu Hành động

khách nhập thiếu 7a Hệ thống Thông báo lỗi: Email hoặc mật khẩu không đúng Hậu điều kiện Không

Bảng 2.2 Đặc tả use case đăng ký

2.2.3 Đặc tả use case tìm kiếm sản phẩm

Mã Use case UC03 Tên Use case Tìm kiếm sản phẩm

2. Hệ thống Lấy danh sách sản phẩm và hiển thị giao diện tìm kiếm sản phầm

3. Khách Nhập tên sản phẩm muốn tìm kiếm

4. Khách Yêu cầu tìm kiếm

5. Hệ thống Kiểm tra xem khách đã nhập ít nhất 1 thông tin tìm kiếmchưa

6. Hệ thống Tìm và lấy về thông tin sản phẩm phù hợp

7. Hệ thống Hiển thị danh sách sản phẩmLuồng sự kiện

thay thế STT Thực hiện bởi6a. Hệ thống Thông báo lỗi: cần nhập ít nhất 1 tiêu chí tìm kiếmHành động

7a Hệ thống Thông báo lỗi: Không tìm thấy sản phẩm phù hợp Hậu điều kiện Không

Bảng 2.3 Đặc tả use case tìm kiếm sản phẩm

2.2.4 Đặc tả use case xem chi tiết sản phẩm

Trang 15

Mã Use case UC04 Tên Use case Xem chi tiết sản phẩmTác nhân Khách

Tiền điều kiện Không

2. Hệ thống Lấy thông tin về sản phẩm

3. Hệ thống Hiện thị giao diện chi tiết sản phẩm

4. Khách Thêm sản phẩm vào giỏ hàng

5. Hệ thống Thêm sản phẩm vào giỏ hàngLuồng sự kiện

thay thế STT Thực hiện bởi3a. Hệ thống Thông báo lỗi: sản phẩm không tồn tại trong hệ thốngHành động

5a Hệ thống Thông báo lỗi: phải đăng nhập để thêm sản phẩm Hậu điều kiện Không

Bảng 2.4 Đặc tả use case xem chi tiết sản phẩm

2.2.5 Đặc tả use case đăng xuất

Mã Use case UC05 Tên Use case Đăng xuất

1. Khách hàng Chọn chức năng đăng xuất

2. Hệ thống Đăng xuất cho khách hàng

3. Khách Hiện thị giao diện trang chủLuồng sự kiện

thay thế Không có

Hậu điều kiện Khách hàng đăng xuất khỏi tài khoản

Bảng 2.5 Đặc tả use đăng xuất

2.2.6 Đặc tả use case xem giỏ hàng

Mã Use case UC06 Tên Use case Xem giỏ hàng

1. Khách hàng Chọn chức năng xem giỏ hàng

2. Hệ thống Hiển thị danh sách các thông tin sản phẩm đang có tronggiỏ hàng và nút Mua hàng, hoặc thông báo Giỏ hàng

rỗng kèm link trở về trang chủ

Trang 16

Luồng sự kiện

thay thế Không có

Hậu điều kiện Không

Bảng 2.6 Đặc tả use case xem giỏ hàng

2.2.7 Đặc tả use case xóa sản phẩm khỏi giỏ hàng

Mã Use case UC07 Tên Use case Xóa sản phẩm khỏi giỏ

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

Tiền điều kiện Khách hàng đang ở trang Giỏ hàng, Giỏ hàng không rỗng

Luồng sự kiện

chính

(Thành công)

STT Thực hiện bởi Hành động

1. Khách hàng Chọn chức năng xóa sản phẩm khỏi giot hàng

2. Hệ thống Hiển thị giao diện xác nhận xóa

3. Khách hàng Chọn xóa hoặc không

4. Hệ thống Xóa sản phẩm khỏi giỏ hàngLuồng sự kiện

thay thế Không có

Hậu điều kiện Khách hàng đăng xuất khỏi tài khoản

Bảng 2.7 Đặc tả use case xóa sản phẩm khỏi giỏ hàng

2. Hệ thống Hiển thị tên các sản phẩm, giá tiền, giảm giá và trường nhập địa chỉ giao hàng

3. Khách hàng Nhập địa chỉ mà đơn hàng cần giao đến và chọn Thanh toán

4. Hệ thống Kiểm tra khách hàng đã nhập địa chỉ hay chưa

5. Hệ thống Thông báo: “Đơn hàng của bạn đang chờ được xử lý"Luồng sự kiện

thay thế STT Thực hiện bởi5a. Hệ thống Thông báo lỗi: khách hàng chưa nhập địa chỉ giao hàngHành động

Hậu điều kiện Không

Bảng 2.8 Đặc tả use case đặt hàng

Ngày đăng: 28/10/2022, 15:03

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w