Đăng ký Đăng nhập
Trang chủ Báo cáo bài tập lớn quản lý website giao đồ ăn nhanh...

Tài liệu Báo cáo bài tập lớn quản lý website giao đồ ăn nhanh

.DOCX
31
1
88

Mô tả:

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI KHOA CÔNG NGHỆ THÔNG TIN MÔN HỌC: CHUYÊN ĐỀ VỀ CÔNG NGHỆ PHẦN MỀM ---------o0o--------- BÁO CÁO BÀI TẬP LỚN QUẢN LÝ WEBSITE GIAO ĐỒ ĂN NHANH Giáo viên hướng dẫn : Giảng viên :Nguyễn Trọng Phúc Hà Nội, Ngày 30 Tháng 9 Năm 2021 1 MỤC LỤC CHƯƠNG 1 1.1 TỔNG QUAN ĐỀ TÀI......................................................................4 Tổng quan công nghệ.......................................................................................4 1.1.1 Ngôn ngữ Java.......................................................................................4 1.1.2 Hệ quản trị cơ sở dữ liệu MySQL..........................................................5 1.1.3 Tổng quan về Spring boot......................................................................8 1.2 Tổng quan về đề tài..........................................................................................9 1.2.1 Lý do chọn đề tài...................................................................................9 1.2.2 Mục tiêu đề tài.......................................................................................9 1.2.3 Phạm vi đề tài......................................................................................10 1.2.4 Đối tượng nghiên cứu và phạm vi hệ thống.........................................10 CHƯƠNG 2. 2.1 PHÂN TÍCH THIẾT KẾ HỆ THỐNG.............................................11 Mô tả tổng quan hệ thống..............................................................................11 2.1.1 Khảo sát...............................................................................................11 2.1.2 Các yêu cầu của hệ thống....................................................................13 2.2 Tìm hiểu chức năng của hệ thống..................................................................14 2.2.1 Sơ đồ phân rã chức năng......................................................................14 2.2.2 Chức năng hệ thống.............................................................................14 2.2.3 Đặc tả chức năng hệ thống...................................................................15 2.2.4 Đặc tả chức năng cơ sở........................................................................15 2.2.5 Biểu đồ use case..................................................................................17 2.2.6 Biểu đồ hành động...............................................................................23 2.3 Phân tích thiết kế cơ sở dữ liệu......................................................................25 2.3.1 Phân tích cơ sở dữ liệu.........................................................................25 2.3.2 Thiết kế cơ sở dữ liệu..........................................................................25 2.3.3 Sơ đồ quan hệ thực thể ERD................................................................28 2 DANH MỤC HÌNH ẢNH Hình 2. 1 Hình ảnh giao diện thực đơn trang jollibee..........................................8 Hình 2. 2 Hình ảnh giao diện danh sách món ăn trang web popeyes...................9 Hình 2. 3 Hình ảnh giao diện giỏ hàng trang web popeyes..................................9 Hình 2. 4 Hình ảnh giao diện chính trang web kfcvietnam..................................9 Hình 2. 5 Hình ảnh giao diện giỏ hàng trang web kfcvietnam...........................10 Hình 2. 6 Sơ đồ quản lý chức năng hệ thống bán đồ ăn nhanh..........................11 Hình 2. 7 Biểu đồ use case tổng quát..................................................................14 Hình 2. 8 Biểu đồ use case quản lý người dùng.................................................14 Hình 2. 9 Biểu đồ use case quản lý thực đơn.....................................................16 Hình 2. 10 Biểu đồ use case giao dịch khách hàng............................................17 Hình 2. 11 Biểu đồ use case quản lý bán hàng..................................................19 Hình 2. 12 Biểu đồ use case thống kê.................................................................20 Hình 2. 13 Biểu đồ hành động chức năng đặt món............................................21 Hình 2. 14 Mô hình thực thể liên kết ERD.........................................................22 Hình 2. 15 Cơ sở dữ liệu quan hệ.......................................................................26 3 DANH MỤC BẢNG BIỂ 1 Bảng 2. 1 Bảng chức năng của hệ thống............................................................15 Bảng 2. 2 Bảng chức năng cơ sở........................................................................15 Bảng 2. 3 Mô tả use case quản lý người dùng....................................................18 Bảng 2. 4 Mô tả use case quản lý thực đơn........................................................19 Bảng 2. 5 Mô tả use case giao dịch khách hàng.................................................21 Bảng 2. 6 Mô tả use case quản lý bán hàng........................................................22 Bảng 2. 7 Mô tả use case thống kê.....................................................................23 Bảng 2. 8 Bảng Account.....................................................................................25 Bảng 2. 9 Bảng Category....................................................................................25 Bảng 2. 10 Bảng Product....................................................................................25 Bảng 2. 11 Bảng Combo.....................................................................................26 Bảng 2. 12 Bảng ComboProduct........................................................................26 Bảng 2. 13 Bảng Order.......................................................................................27 Bảng 2. 14 Bảng OrderDetail.............................................................................27 2 CHƯƠNG 1. TỔNG QUAN ĐỀ TÀI 1.1 Tổng quan công nghệ 1.1.1 Ngôn ngữ Java 1.1.1.1 Lịch sử hình thành Ngôn ngữ lập tình Java ban đầu được phát triển bởi Sun Microsystems do James Gosling khởi xướng và phát hành vào năm 1995 (Java 1.0 [J2SE]). Tại thời điểm này phiên bản được sử dụng nhiều nhất là 8. Với ưu thế về đa nền tảng (multi platform) Java càng lúc càng được ứng dụng rộng rãi trên nhiều thiết bị từ máy tính đến mobile và nhiều thiết bị phần cứng khác… 1.1.1.2 Java là gì? Là một ngôn ngữ lập trình hướng đối tượng (OOP) và dựa trên các lớp (class). Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi (runtime environment) chạy. 1.1.1.3 Đặc điểm - Java là ngôn ngữ lập trình hướng đối tượng nên nó cũng có 4 đặc điểm chung của các ngôn ngữ hướng đối tượng. - Tính trừu tượng (Abstraction): là tiến trình xác định và nhóm các thuộc tính, Các hành động liên quan đến một thực thể đặc thù, xét trong mối tương quan với ứng dụng đang phát triển. - Tính đa hình (Polymorphism): cho phép một phương thức có các tác động khác nhau trên nhiều loại đối tượng khác nhau. Với tính đa hình, nếu cùng một phương thức ứng dụng cho các đối tượng thuốc các lớp khác nhau thì nó đưa đến những kết quả khác nhau. Bản chất của sự việc chính là phương thức này bao gồm cùng một số lượng các tham số. - Tính kế thừa (Inheritance): Điều này cho phép các đối tượng chia sẻ hay mở rộng các đặc tính sẵn có mà không phải tiến hành định nghĩa lại. 1 - Tính đóng gói (Encapsulation): là tiến trình che giấu việc thực thi những chi tiết của một đối tượng với người sử dụng đối tượng ấy. - Bên cạnh đó java còn có một số đặc tính khác: - Độc lập nền (Write Once, Run Anywhere): Không - giống như nhiều ngôn ngữ lập trình khác như C và C++, khi Java được biên dịch, nó không được biên dịch sang mã máy cụ thể, mà thay vào đó là mã byte code chạy trên máy ảo Java (JVM). Điều này đông nghĩa với việc bất cứ thiết bị nào có cài đặt JVM sẽ có thể thực thi được các chương trình Java. - Đơn giản: học Java thật sự dễ hơn nhiều so với C/C++, nếu bạn đã quen với các ngôn ngữ lập trình hướng đối tượng thì việc học Java sẽ dễ dàng hơn. Java trở nên đơn giản hơn so với C/C++ do đã loại bỏ tính đa kế thừa và phép toán con trỏ từ C/C++. - Bảo mật: Java hỗ trợ bảo mật rất tốt bởi các thuật toán mã hóa như mã hóa một chiều (oneway hasing) hoặc mã hóa công cộng (public key) … - Đa luồng: Với tính năng đa luồng Java có thể viết chương trình có thể thực thi nhiều task cùng lúc. Tính năng này thường được xử dụng rất nhiều trong lập trình game. - Hiệu suất cao nhờ vào trình thug om rác (garbage collection), giải phóng bộ nhớ đối với các đối tượng không được dùng đến. - Linh hoạt: Java được xem là linh hoạt hơn C/C++ vì nó được thiết kế để thích ứng với nhiều môi trường phát triển. 1.1.2 Hệ quản trị cơ sở dữ liệu MySQL 1.1.2.1 Tổng quan cơ sở dữ liệu MySQL - Hệ quản trị cơ sở dữ liệu MySQL được hiểu như là chương trình dùng để quản lý hệ thống cơ sở dữ liệu, trong đó, cơ sở dữ liệu là một hệ thống lưu trữ thông tin được sắp xếp rõ ràng, phân lớp ngăn nắp. Nó giúp bạn có thể truy cập dữ liệu một cách thuận lợi và nhanh chóng nhất. Vì hỗ trợ đa số các ngôn ngữ lập trình nên MySQL chính là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất trên thế giới. Hiện MySQL đang được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. - MySQL là cơ sở dữ liệu tốc độ cao, ổn định hoạt động trên nhiều hệ điều hành, cung cấp một hệ thống lớn các hàm tiện ích rất mạnh. Đặc biệt, hệ quản trị cơ sở dữ liệu MySQL hoàn toàn miễn phí nên người dùng có thể thoải mái tải về từ trang chủ. Nó có rất nhiều những phiên bản cho các hệ điều hành khác nhau. 2 MySQL được sử dụng cho việc bỗ trợ PHP, Perl và nhiều ngôn ngữ khác. Là nơi lưu trữ những thông tin trên các trang web viết bằng framework PHP hay Perl… 1.1.2.2 Đặc điểm - Hệ quản trị cơ sở dữ liệu MySQL chính là một trong những phần mềm quản trị CSDL dạng server based, hệ gần giống với SQL server of Microsoft. MySQL là phần mềm quản lý dữ liệu thông qua CSDL. Và mỗi một CSDL đều có bảng quan hệ chứa dữ liệu riêng biệt. MySQL có cơ chế quản lý sử dụng riêng giúp cho mỗi người sử dụng đều có thể quản lý cùng lúc một hay nhiều CSDL khác nhau. Và mỗi người dùng đều có 1 username và password để truy nhập và truy xuất đến CSDL. Khi truy vấn đến CSDL của MySQL, bạn phải cung cấp tài khoản và mật khẩu có quyền sử dụng cơ sở dữ liệu đó. 1.1.2.3 Những lợi ích khi sử dụng hệ quản trị cơ sở dữ liệu MySQL Hình 1. 1 Hình ảnh tổng quan về MySQL - Hiệu năng sử dụng cao Hầu hết, hệ quản trị cơ sở dữ liệu MySQL đang được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Và họ đánh giá rất cao ở hiệu năng sử dụng của MySQL. Với kiến trúc storage-engine, MySQL đặc trưng cho các ứng dụng chuyên biệt, đặc biệt là đối với những trang web có dung lượng lớn, phục vụ hàng triệu khách hàng. Hoặc đối với những hệ thống xử lý giao dịch tốc độ cao thì MySQL đều cùng có thể đáp ứng được những khả năng xử lý khắt khe của mọi hệ thống. Đặc biệt, với 3 những tiện ích tải tốc độ cao, cơ chế xử lý nâng cao cùng bộ nhớ cache. MySQL đưa ra tất cả những tính năng cần có, đây là giải pháp hoàn hảo nhất ngay cả đối với những hệ thống doanh nghiệp khó tính nhất hiện nay. - MySQL hỗ trợ giao dịch mạnh mẽ Hệ quản trị cơ sở dữ liệu MySQL không những mang lại hiệu năng sử dụng cao. Mà nó còn đưa ra một trong số những engine giao dịch cơ sở dữ liệu tốt nhất trên thị trường hiện nay. Tính năng này bao gồm: Khóa mức dòng không hạn chế; hỗ trợ giao dịch ACID hoàn thiện; khả năng giao dịch được phân loại và hỗ trợ giao dịch đa dạng mà người đọc không cản trở cho người viết và ngược lại. Với MySQL, dữ liệu sẽ được đảm bảo trong suốt quá trình server có hiệu lực. Các mức giao dịch độc lập sẽ được chuyên môn hóa, nếu phát hiện có lỗi khóa chết ngay tức thì. - Tốc độ rất nhanh Đánh giá chung của các nhà phát triển, tất cả họ đều cho rằng hệ quản trị cơ sở dữ liệu MySQL là cơ sở dữ liệu nhanh nhất. Đây là nơi để cho các website có thể trao đổi thường xuyên các dữ liệu bởi nó có engine xử lý tốc độ cao. Khả năng chèn dữ liệu cực nhanh và hỗ trợ mạnh mẽ các chức năng chuyên dụng cho trang web. Các tính năng này cũng được sử dụng cho môi trường lưu trữ dữ liệu mà hệ quản trị này tăng cường đến hàng terabyte cho các server đơn. Ngoài ra còn có những tính năng khác như: chỉ số băm, bảng nhớ chính, bảng lưu trữ và cây B được gói lại để giúp giảm các yêu cầu lưu trữ tối đa đến 80%. Với tốc độ nhanh, thật không thể phủ nhận hệ quản trị cơ sở dữ liệu MySQL là sự lựa chọn tốt nhất cho cả ứng dụng web cũng như các ứng dụng của doanh nghiệp ngày nay. - Dễ dàng sử dụng MySQL ngoài được biết đến với tốc độ khá cao, ổn định thì nó thực sự là một hệ thống cơ sở dữ liệu rất đơn giản, rất dễ sử dụng. Ít phức tạp khi cài đặt và quản trị hơn các hệ thống lớn. Đặc biệt nó có thể hoạt động trên tất cả các hệ điều hành. - Hỗ trợ ngôn ngữ truy vấn MySQL hệ quản trị cơ sở dữ liệu là ngôn ngữ của sự lựa chọn cho tất cả các hệ thống cơ sở dữ liệu hiện đại. Người dùng hoàn toàn có thể truy cập MySQL bằng cách sử dụng các ứng dụng mà hỗ trợ ODBC (một giao thức giao tiếp cơ sở dữ liệu được phát triển bởi Microsoft). Nhiều client có thể truy cập đến server trong cùng một thời gian. Đặc biệt các client có thể sử dụng nhiều cơ sở dữ liệu một cách đồng thời. Bạn cũng có thể truy cập MySQL tương tác với khi sử dụng một vài giao diện để đưa vào các truy vấn và xem kết quả như: các dòng yêu cầu của khách hàng, các trình duyệt web… - Tính kết nối và bảo mật cao Điều quan trọng nhất của mỗi một doanh nghiệp chính là việc bảo mật dữ liệu tuyệt đối. Và hệ quản trị cơ sở dữ liệu MySQL tích hợp các tính năng bảo mật an toàn tuyệt đối. MySQL được nối mạng một cách đầy đủ. Các cơ sở dữ liệu có thể được truy cập từ bất cứ nơi nào trên internet. Bạn có thể chia sẻ dữ liệu của bạn với bất kì ai, bất cứ 4 lúc nào và bất cứ nơi đâu bạn muốn. Nhưng MySQL kiểm soát quyền truy cập nên người không nên nhìn thấy dữ liệu của bạn sẽ không thể nào nhìn được. Với việc xác nhận truy cập cơ sở dữ liệu, MySQL trang bị các kĩ thuật mạnh. Chỉ có những người sử dụng đã được xác nhận mới truy cập được vào cơ sở dữ liệu. Ngoài ra, SSH và SSL cũng được hỗ trợ nhằm đảm bảo kết nối an toàn và bảo mật. Tiện ích backup và recovery cung cấp bởi MySQL hệ quản trị cơ sở dữ liệu và các hãng phần mềm thứ 3 cho phép backup logic và vật lý cũng như recovery toàn bộ ngay tại một thời điểm. - Tính linh động cao MySQL có thể hoạt động trên tất cả các hệ điều hành, chạy được với mọi phần cứng từ các máy PC ở nhà cho đến các máy server. Máy chủ hệ quản trị cơ sở dữ liệu MySQL đáp ứng nhiều tính năng linh hoạt. Nó có sức chứa để xử lý các ứng dụng được nhúng sâu với 1MB dung lượng để chạy kho dữ liệu khổng lồ lên đến hàng terabytes thông tin. Tính chất mã nguồn mở của MySQL cho phép tùy biến theo ý muốn để thêm các yêu cầu phù hợp cho database server. - Mã nguồn mở tự do và hỗ trợ 24/7 Băn khoăn của rất nhiều doanh nghiệp khi họ gặp khó khăn trong việc giao toàn bộ phần mềm cho một mã nguồn mở. Bởi khó có thể tìm được hỗ trợ hay bảo mật an toàn phục vụ một cách chuyên nghiệp. Nhưng vấn đề khó khăn này sẽ không còn nữa nếu sử dụng hệ quản trị cơ sở dữ liệu MySQL. Với MySQL, mọi sự cam kết đều rất rõ ràng, mọi sự cố đều được MySQL bồi thường. Bạn có thể tìm thấy các tài nguyên có sẵn mà hệ quản trị này hỗ trợ. Cộng đồng MySQL rất có trách nhiệm. Họ thường trả lời các câu hỏi trên mailing list chỉ trong vài phút. Nếu lỗi xảy ra, các nhà phát triển sẽ đưa ra cách khắc phục nhanh nhất cho bạn. Và cách khắc phục đó sẽ ngay lập tức có sẵn trên internet. - Chi phí sở hữu thấp nhất Hệ quản trị cơ sở dữ liệu MySQL cung cấp miễn phí cho hầu hết các việc sử dụng trong một tổ chức. Chính vì vậy, sử dụng MySQL cho các dự án, các doanh nghiệp đầu nhận thấy được sự tiết kiệm cho phí rất đáng kể. Người dùng của MySQL cũng không phải mất nhiều thời gian để sửa chữa hoặc vấn đề thời gian chết. 1.1.3 Tổng quan về Spring boot 1.1.3.1 Spring boot là gì? - Spring Boot là một module của Spring Framework, cung cấp tính năng RAD (Rapid Application Development) – Phát triển ứng dụng nhanh. - Spring Boot được dùng để tạo các ứng dụng độc lập dựa trên Spring. - Spring Boot không yêu cầu cấu hình XML - Nó là một chuẩn cho cấu hình thiết kế phần mềm, tăng cao năng suất cho developer. 5 1.1.3.2 Ưu và nhược điểm của spring boot? Ưu điểm: - Spring Boot là một module của Spring Framework, cung cấp tính năng RAD (Rapid Application Development) – Phát triển ứng dụng nhanh. - Spring Boot được dùng để tạo các ứng dụng độc lập dựa trên Spring. - Spring Boot không yêu cầu cấu hình XML. - Nó là một chuẩn cho cấu hình thiết kế phần mềm, tăng cao năng suất cho developer. 1.2 Tổng quan về đề tài 1.2.1 Lý do chọn đề tài Trong thời đại công nghệ thông tin như hiện nay, khi mà Internet đã trở nên thân quen và dần trở thành một công cụ không thể thiếu trong cuộc sống thì lợi ích của một website đối với việc quảng bá sản phẩm và thương hiệu của một công ty là vô cùng lớn. Bên cạnh đó, 1 website còn giúp chúng ta quản lý sản phẩm, khách hàng, doanh thu vô cùng tiện lợi để có các chính sách và hướng phát triển phù hợp với nhu cầu người dùng. Thời gian gần đây, dịch covid đã và đang gây ảnh hưởng rất lớn đối với kinh tế nước nhà. Để đáp ứng tình hình hiện tại cũng như là nhu cầu mua đồ ăn được một cách dễ dàng và tiện lợi, không phải di chuyển, nhóm bọn em đã tìm hiểu nghiên cứu và quyết định làm đề tài: “xây dựng trang web cửa hàng bán đồ ăn nhanh online”. 1.2.2 Mục tiêu đề tài - Đề tài được thực hiện nhằm tạo ra ứng dụng cho phép khác hàng có thể đặt đồ ăn nhanh online. Thực hiện đề tài nhằm:  Tìm hiểu về ngôn ngữ java.  Tìm hiểu và áp dụng được framework Spring Boot để làm một webservice. 1.2.3 Phạm vi đề tài - Ứng dụng được thiết kế nhằm đáp ứng nhu cầu đặt đồ ăn nhanh online cho tất cả mọi người. 6 1.2.4 Đối tượng nghiên cứu và phạm vi hệ thống Đối tượng: - Công cụ sử dụng: MySQL Workbench, Visual Studio. Ngôn ngữ lập trình: html, css, js, java. - Framework và library: SpringBoot. - Mô hình ứng dụng đạt được: Websever theo mô hình Restful API(Spring). Ứng dụng web. Phạm vi: Đề tài chỉ dừng lại ở phạm vi xây dựng ứng dụng trên nền tảng Web. 7 CHƯƠNG 2. PHÂN TÍCH THIẾT KẾ HỆ THỐNG 2.1 Mô tả tổng quan hệ thống 2.1.1 Khảo sát 2.1.1.1 Khảo sát một số trang web 1. https://jollibee.com.vn/ - Giao diện trang thực đơn: Hình 2. 1 Hình ảnh giao diện thực đơn trang jollibee  Danh sách sản phẩm được hiển thị theo danh mục loại món ăn.  Mỗi món ăn hiển thị: ảnh món ăn, tên món, giá bán, và một đặt hàng.  Giỏ hàng ở góc phải dưới của màn hình. 2. https://popeyes.vn/ 8 - Giao diện trang thực đơn: - Hình 2. 2 Hình ảnh giao diện danh sách món ăn trang web popeyes  Tương tự jolibee.vn, danh sách sản phẩm được hiển thị theo danh mục loại món ăn. Tuy nhiên, danh mục món ăn nằm trên phần header của trang web.  Mỗi sản phẩm đều có thông tin giảm giá. Trang giỏ hàng: Hình 2. 3 Hình ảnh giao diện giỏ hàng trang web popeyes  Giao diện trang giỏ hàng là modal nằm trên giao diện sản phẩm.  Giao diện gồm: thông tin sản phẩm gồm: tên sản phẩm, giá, số lượng; tổng tiền phải trả. Người dùng có thể thay đổi số lượng sản phẩm, khẩu phần ăn và chọn thanh toán. 3. https://kfcvietnam.com.vn/ 9 - Trang giao diện chính: - Hình 2. 4 Hình ảnh giao diện chính trang web kfcvietnam  Sản phẩm hiển thị theo ba loại: món lẻ và combo và menu ưu đãi.  Nút tùy chỉnh hướng người dùng đến trang cung cấp địa chỉ giao hàng. Trang giỏ hàng: Hình 2. 5 Hình ảnh giao diện giỏ hàng trang web kfcvietnam  Giỏ hàng chứa thông tin đơn hàng, khung nhập mã khuyến mãi, tổng đơn hàng. 2.1.1.2 Một số đặc điểm chung của các trang web khảo sát:  Giao diện sản phẩm: hiển thị sản phẩm theo loại, combo mỗi sản phẩm hiển thị đầy đủ thông tin: tên sản phẩm, mô tả sản phẩm, giá sản phẩm, giá khuyến mãi. Người dùng có thể thêm sản phẩm vào giỏ hàng khi chọn tác vụ “thêm vào giỏ hàng”.  Giao diện giỏ hàng: chứa thông tin sản phẩm: tên sản phẩm, số lượng, đơn giá, tổng tiền. Khách hàng có thể thay đổi số lượng sản phẩm hoặc xóa sản phẩm và đặt hàng tại đây. 10  Giao diện đặt hàng: khi khách hàng chọn tác vụ đặt hàng, nếu khách hàng chưa đăng nhập, hệ thống yêu cầu đăng nhập. Sau đó, hệ thống hiển thị giao diện nhập thông tin đơn hàng gồm: tên người nhận, địa chỉ đặt hàng, tổng tiền cần thanh toán. Giao diện thanh toán online hiển thị khi người dùng chọn tác vụ “thanh toán online”.  Giao diện đăng ký: gồm các thông tin: tên người dùng, email, số điện thoại, mật khẩu.  Giao diện đăng nhập: thông tin tên tài khoản, mật khẩu. 2.1.2 Các yêu cầu của hệ thống 2.1.2.1 Yêu cầu chức năng Website có những yêu cầu chức năng sau: - Đăng kí, đăng nhập tài khoản khách hàng. - Xem, thêm, cập nhật loại đồ ăn nhanh. - Thêm, cập nhật, lọc, tìm kiếm đồ ăn nhanh. - Xem, tìm kiếm danh sách khách hàng. - Quản lý giỏ hàng, đặt hàng. - Xem, lọc, duyệt đơn hàng. - Gửi phản hồi khách hàng. - Cập nhật trạng thái đơn hàng. - Thống kê doanh thu theo tháng, cả năm. 2.1.2.2 Yêu cầu phi chức năng Website có những yêu cầu phi chức năng sau: - Giao diện thân thiện, dễ sử dụng. - Các tính năng của hệ thống phải tối ưu và phải đảm bảo được tính tự động. - Tương thích với đa phần các trình web hiện tại. 11 2.2 Tìm hiểu chức năng của hệ thống 2.2.1 Sơ đồ phân rã chức năng Hình 2. 6 Sơ đồ quản lý chức năng hệ thống bán đồ ăn nhanh 2.2.2 Chức năng hệ thống - Quản lý người dùng - Quản lý thực đơn - Giao dịch khách hàng - Quản lý bán hàng - Thống kê 2.2.3 Đặc tả chức năng hệ thống Bảng 2. 1 Bảng chức năng của hệ thống Mục Tên chức năng Mô tả Hỗ trợ quản trị, nhân viên, khách hàng sử dụng, 1 Quản lý người dùng đăng kí tài khoản, đăng nhập vào hệ thống giúp người quản trị (hoặc nhân viên) có thể cập nhật tài khoản hoặc các thông tin có trong hệ thống 2 3 Quản lý thực đơn Cập nhật món ăn, loại món ăn, lọc món ăn Giao dịch khách Hỗ trợ khách hàng tìm kiếm món ăn, chọn giỏ hàng, hàng đặt món ăn và theo dõi trạng thái đơn hàng Kiểm tra xem các đơn đặt có khả thi không (số 4 Quản lý bán hàng lượng, địa chỉ giao hàng, …), lập hóa đơn bán cho các đơn hàng, In hóa đơn, phản hồi lại đơn hàng 5 Thống kê Đưa ra các báo cáo thống kê kinh doanh theo từng nhóm tùy chọn, định kỳ từ thời gian bắt đầu đến thời 12 Mục Tên chức năng Mô tả gian kết thúc 2.2.4 Đặc tả chức năng cơ sở Bảng 2. 2 Bảng chức năng cơ sở Mụ c Tên chức năng Mô tả Mở Form cho người sử dụng đăng ký Tài khoản, 1 Đăng nhập điền các thông tin cần thiết của mình như họ tên, sđt, địa chỉ, mật khẩu 2 3 4 Đăng nhập Xác thực vào hệ thống với tư cách một Tài khoản bằng cách nhập thông tin và mật khẩu Cập nhật người sử Cho phép người quản trị thêm, sửa, xóa thông tin dụng của một Tài khoản. Gán vai trò cho một Tài khoản Cập nhật loại tài khoản Cấp các quyền truy cập cho một vai trò Thêm, sửa, xóa món ăn với các thông tin liên quan 5 Cập nhật món ăn như mô tả, hình ảnh, loại, giá, …. 6 Cập nhật loại món ăn Thêm, sửa, xóa loại món ăn với các thông tin mô tả, hình ảnh, ngày, 7 Lọc món ăn Lọc món ăn theo loại 8 Tìm kiếm món ăn 9 Chọn giỏ hàng 10 Đặt món ăn 11 Theo dõi trạng thái Khách hàng có thể theo dõi quá trình xử lý đơn mua đơn hàng hàng của mình thông qua các trạng thái: Đã đặt – đã Hỗ trợ người sử dụng tìm kiếm món ăn theo loại món ăn, ... Hỗ trợ một Tài khoản lựa chọn một số món ăn muốn đặt với số lượng xác định Sau khi đã chọn giỏ hàng, khách hàng có thể nhấn nút đặt mua hàng và nhập thông tin nơi nhận hàng thanh toán hoặc chưa, Đã xử lý, Đang chờ giao 13 Mụ c Tên chức năng Mô tả hàng, Đã giao hàng (và thanh toán). Xem xét các đơn đặt về tính hợp lệ, mặt hàng, số 12 Duyệt đơn đặt hàng lượng, địa điểm nhận hàng để duyệt đơn hàng và lập hóa đơn bán 13 In hóa đơn bán Xuất hóa đơn bán cho một đơn hàng 14 Phản hồi đơn hàng Xuất hóa đơn bán cho một đơn hàng Thống kê doanh thu Đưa ra báo cáo doanh thu theo thời gian định kỳ từ 15 định kỳ ngày bắt đầu đến ngày kết thúc 14 2.2.5 Biểu đồ use case 2.2.5.1 Biểu đồ use case tổng quát Hình 2. 7 Biểu đồ use case tổng quát 2.2.5.2 Biểu đồ use case quản lý người dùng Hình 2. 8 Biểu đồ use case quản lý người dùng 15
- Xem thêm -

Tài liệu liên quan