Đầy là báo cáo đồ án viết chi tiết cho đề tài thiết kế website và các loại bài tập lớn ( 80 trang chuẩn). Giúp các bạn có thể đạt điểm cao trong quá trình báo cáo cũng như làm đồ án để thầy cô xét duyệt.Đề tài của đồ án là: Xây dựng website hỗ trợ nấu ăn tương tác sử dụng Framwork Laravel và Vue.js
Trang 1MỤC LỤC
DANH MỤC CÁC BẢNG 0
DANH SÁCH CÁC HÌNH ẢNH VÀ BIỂU ĐỒ 1
LỜI CẢM ƠN 3
MỞ ĐẦU 4
1 Tên đề tài 4
2 Lý do chọn và tính cấp thiết của đề tài 4
3 Mục tiêu nghiên cứu 5
4 Nội dung nghiên cứu 5
5 Đối tượng và phạm vi nghiên cứu 5
6 Bố cục đồ án 5
CHƯƠNG 1 KHẢO SÁT VÀ ĐẶC TẢ HỆ THỐNG HỖ TRỢ NẤU ĂN TƯƠNG TÁC
6 1.1 Khảo sát sơ bộ hệ thống 6
1.2 Xác định yêu cầu hệ thống 6
1.3 Kết quả khảo sát sơ bộ 7
1.4 Phân quyền người dùng 8
1.4.1 Quản trị hệ thống (Admin) 8
1.4.2 Các nhân viên 9
1.4.3 Các chuyên gia ẩm 9
1.4.4 Người dùng internet (Thành viên/ người chưa có tài khoản) 9
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 10
2.1 Biểu đồ ca sử dụng chính 10
2.2 Các tác nhân của hệ thống 11
Trang 22.3 Đặc tả ca sử dụng 12
2.3.1 Usecase Login 12
2.3.2 Usecase Xem công thức 13
2.3.3 Usecase Comment 13
2.3.4 Usecase Quản lý User 14
2.3.5 UseCase Đăng công thức 15
2.3.6 Usecase Quản lý Công thức 16
2.3.7 Usecase Hỗ trợ nấu ăn tương tác 18
2.4 Tìm lớp lĩnh vực của hệ thống 19
2.4.1 Xác định các lớp dựa vào các khái niệm của lĩnh vực ứng dụng 19
2.4.2 Mô hình hóa sự tương tác 22
2.5 Thiết kế cơ sở dữ liệu 39
2.5.1 Bảng cơ sở dữ liệu chung 39
2.5.2 Chi tiết các bảng 41
2.6 Phác thảo giao diện 47
2.6.1 Trang đăng nhập 47
2.6.2 Trang đăng ký thành viên 48
2.6.3 Trang chủ 49
2.6.4 Trang quản trị 50
2.6.5 Trang xem công thức 51
2.6.6 Trang hỗ trợ nấu ăn tương tác 52
CHƯƠNG 3: THIẾT KẾ VÀ CÀI ĐẶT CHƯƠNG TRÌNH 53
3.1 Cài đặt và lập trình 53
3.1.1 Framework Laravel 53
3.1.2 Vue Js 54
3.1.3 PHP 55
3.1.4 Cấu trúc Project 56
3.2 Kết quả đạt được 57
Trang 33.2.1 Giao diện Trang chủ 57
3.2.2 Giao diện trang Đăng nhập 59
3.2.3 Giao diện trang Đăng ký 60
3.2.4 Giao diện trang Quản trị 61
3.2.5 Giao diện trang Xem công thức 62
3.2.6 Giao diện trang Hỗ trợ nấu ăn tương tác 64
3.2.7 Giao diện trang Thêm mới thể loại 65
3.2.8 Giao diện trang Quản lý món ăn (dish) 66
3.2.9 Giao diện trang Thêm mới món ăn 68
3.2.10 Giao diện trang Quản lý công thức nấu 69
3.2.11 Giao diện trang Thêm công thức mới 70
3.2.12 Giao diện trang Cập nhật công thức 71
3.2.13 Giao diện trang Quản lý user 72
3.2.14 Giao diện trang Thêm mới user 73
3.2.15 Giao diện trang Cập nhật thông tin user 74
3.2.16 Giao diện trang Thông tin cá nhân 75
3.2.17 Giao diện trang Đăng công thức 76
KẾT LUẬN 78
1 Đánh giá kết quả 78
2 Hướng phát triển đề tài 79
3 Tổng kết 79
TÀI LIỆU THAM KHẢO 80
PHỤ LỤC 81
Trang 4DANH MỤC CÁC BẢNG
Bảng 1: Bảng users 41
Bảng 2: Bảng category 42
Bảng 3: Bảng dish 42
Bảng 4: Bảng recipes 43
Bảng 5: Bảng messages 45
Bảng 6: Bảng Comment 45
Bảng 7: Bảng TuKhoa 45
Bảng 8: Bảng Slide 46
Trang 5DANH SÁCH CÁC HÌNH ẢNH VÀ BIỂU ĐỒ
Hình 1.1: Sơ đồ quy trình hệ thống 7
Hình 1.2: Sơ đồ phân quyền người dùng 8
Hình 2.1 : Biểu đồ ca sử dụng chính 10
Hình 2.2: Biểu đồ trình tự đăng nhập 24
Hình 2.3: Biểu đồ trình tự đăng ký tài khoản 25
Hình 2.4: Biểu đồ trình tự xem công thức 26
Hình 2.5: Biểu đồ trình tự bình luận (comment) 27
Hình 2.6: Biểu đồ trình tự tính nguyên liệu (count material) 28
Hình 2.7: Biểu đồ trình tự đăng công thức 29
Hình 2.8: Biểu đồ trình tự thêm mới user 30
Hình 2.9: Biểu đồ trình tự cập nhật user 31
Hình 2.10: Biểu đồ trình tự xóa user 32
Hình 2.11: Biểu đồ trình tự thêm mới công thức 33
Hình 2.12: Biểu đồ trình tự duyệt công thức 34
Hình 2.13: Biểu đồ trình tự update recipe 35
Hình 2.14: Biểu đồ trình tự xóa công thức 36
Hình 2.15: Biểu đồ trình tự Tìm kiếm công thức 37
Hình 2.16: Biểu đồ trình tự chat real-time 38
Hình 2.17:Lược đồ Cơ sở dữ liệu 39
Hình 2.18: Phác thảo giao diện trang đăng nhập 47
Hình 2.19: Phác thảo giao diện trang đăng ký thành viên 48
Hình 2.20: Phác thảo giao diện trang chủ 49
Hình 2.21: Phác thảo giao diện trang quản trị 50
Trang 6Hình 2.22: Phác thảo giao diện trang xem công thức 51
Hình 2.23: Phác thảo giao diện trang hỗ trợ nấu ăn tương tác 52
Hình 3.1: Mô hình MVC 55
Hình 3.2: Cấu trúc Project 56
Hình 3.3: Giao diện trang chủ 58
Hình 3.4: Giao diện trang đăng nhập 59
Hình 3.5: Giao diện trang đăng ký 60
Hình 3.6: Giao diện trang quản trị 61
Hình 3.7: Giao diện trang xem công thức 63
Hình 3.8: Giao diện trang hỗ trợ nấu ăn tương tác 64
Hình 3.9: Giao diện trang thêm mới thể loại 65
Hình 3.10: Giao diện trang Quản lý món ăn (dish) 67
Hình 3.11: Giao diện trang thêm mới món ăn 68
Hình 3.12: Giao diện trang quản lý công thức 69
Hình 3.13: Giao diện trang thêm mới công thức 70
Hình 3.14: Giao diện trang update công thức 71
Hình 3.15: Giao diện trang quản lý user 72
Hình 3.16: Giao diện trang thêm mới user 73
Hình 3.17: Giao diện trang cập nhật thông tin user 74
Hình 3.18: Giao diện trang thông tin cá nhân 75
Hình 3.19: Giao diện trang đăng công thức 77
Trang 7LỜI CẢM ƠN
Em xin cảm ơn trường Đại học Công Nghiệp Hà Nội và khoa CôngNghệ Thông Tin đã cho em cơ hội được làm đồ án tốt nghiệp
Em xin chân thành cảm ơn sự giúp đỡ của thầy giáo T.S Phạm Văn
Hà đã tận tình giúp đỡ em trong suốt thời gian làm đồ án và thời gian thực tập
tốt nghiệp
Em cũng rất mong nhận được sự góp ý của thầy cô và các bạn, giúp sảnphẩm của em ngày càng hoàn thiện hơn, đáp ứng được nhu cầu thực tiễn củangười sử dụng
Em xin chân thành cảm ơn! Sinh viên thực hiện
Trưởng Nguyễn Văn Trưởng
Trang 8MỞ ĐẦU
“ Xây dựng hệ thống hỗ trợ nấu ăn tương tác sử dụng Laravel
FrameWork và Vue.js”
Chế biến thức ăn là việc làm cần thiết cho sự sống của con người, đượcthực hiện ở nơi công cộng hay trong từng hộ gia đình Chính vì thế, nấu ăn làmột hoạt động không thể thiếu được Muốn có thức ăn ngon, phải có ngườinấu ăn giỏi Xã hội càng phát triển, cuộc sống ngày càng sung túc và vănminh, nhu cầu ăn ngon mặc đẹp ngày càng được nâng cao
Hiện nay, nhiều trường lớp đào tạo nấu ăn được phát triển mạnh mẽ, từ
hệ sơ cấp đến hệ đại học hoặc tổ chức dưới dạng các trường lớp chuyênnghiệp, chính quy, không chính quy, các lớp dạy nấu ăn ngắn hạn Tuy nhiên,không phải ai cũng có nhiều thời gian cho việc đi học nấu ăn để về nấu chogia đình, thay vào đó là sử dụng Internet để hỗ trợ việc nấu ăn Với nhiều ưuđiểm và tiện ích vượt trội, Internet từ khi ra đời đến nay luôn đóng một vaitrò quan trọng trong đời sống xã hội, có ảnh hưởng và tác động đến mọi mặt,lĩnh vực của cuộc sống Vì thế em thấy rằng việc xây dựng một hệ thống hỗtrợ nấu ăn tương tác trực tuyến là phù hợp và cần thiết trong bối cảnh hiệnnay, giúp cho việc nấu ăn của các bà nội chợ trở lên đơn giản hơn, tăng chấtlượng của mỗi bữa ăn cũng như chất lượng sức khỏe cho các thành viên tronggia đình
Với lí do đó, được sự hướng dẫn và giúp đỡ của thầy giáo T.S Phạm
Văn Hà, em đã chọn đề tài :”Xây dựng hệ thống hỗ trợ nấu ăn tương tác sử dụng Laravel FrameWork và Vue.js” làm đề tài luận án tốt nghiệp của mình.
Trang 93 Mục tiêu nghiên cứu
Vận dụng các kiến thức đã được học, triển khai phân tích, thiết kếwebsite hỗ trợ nấu ăn tương tác trực tuyến, nghiên cứu và ứng dụng LaravelFrameWork và Vue.js vào xây dựng phần mềm đã thiết kế
Người dùng: Giúp cho công việc nấu ăn của các bà nội chợ trở nên dễdàng hơn, tiết kiệm thời gian và tiền bạc, đảm bảo chất lượng cho bữa ăn giađình và những bữa tiệc chỉ với một chiếc máy tính hoặc smartphone có kếtnối Internet
Người quản trị: giúp việc quản lý dữ liệu hệ thống một cách dễ dàng vàphục vụ việc nghiên cứu nhu cầu , thói quen ăn uống của người dùng
Khảo sát, phân tích, thiết kế xây dựng hệ thống
Tìm hiểu về Framework Laravel và Vue.js
Thiết kế và xây dựng theo mô hình MVC
Tính năng chat real-time và các tính năng tương tác cho người dùng
Phạm vi nghiên cứu: những bà nội chợ, người có sở thích học và dạynấu ăn trên Internet
Đối tượng nghiên cứu: các món ăn và những công thức nấu ăn
Nội dung chính của đề tài gồm 3 chương :
CHƯƠNG 1: KHẢO SÁT VÀ ĐẶC TẢ HỆ THỐNG NẤU ĂN
TƯƠNG TÁC
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
CHƯƠNG 3: THIẾT KẾ VÀ CÀI ĐẶT CHƯƠNG TRÌNH
Trang 10CHƯƠNG 1 KHẢO SÁT VÀ ĐẶC TẢ HỆ THỐNG HỖ TRỢ NẤU ĂN
TƯƠNG TÁC 1.1 Khảo sát sơ bộ hệ thống
Hệ thống hỗ trợ nấu ăn monngon365.com là website giúp cho công
việc nấu ăn trở nên dễ dàng hơn, tại đây mọi người sẽ được biết hàng ngàncông thức nấu ăn ngon, đơn giản và vô cùng hấp dẫn
Tại đây mọi người sẽ được tham khảo các công thức chế biến món ăn
từ các đầu bếp nổi tiếng, các bạn cũng có thể chia những cách nấu ăn củamình lên cho mọi người biết
Một số tính năng của hệ thống:
Tìm kiếm cách chế biến các món ăn từ những chuyên gia ẩm thực của
hệ thống
Để lại bình luận, đánh giá dưới mỗi công thức, like công thức
Chat trực tiếp với người làm ra món ăn để hỏi công thức
Hệ thống hỗ trợ trực tiếp người dùng khi cần hỗ trợ
Chia sẻ công thức nấu ăn riêng của bản thân
1.2 Xác định yêu cầu hệ thống
Xây dựng hệ thống hỗ trợ nấu ăn tương tác trên nền tảng Web cần đápứng được những yêu cầu sau:
Giao diện đẹp mắt, thân thiện với người dùng
Chia sẻ các công thức nấu ăn tới người dùng
Cho phép tra cứu công thức khi người sử dụng có nhu cầu tìm côngthức
Các thành viên tương tác với các chuyên gia ẩm thực trực tuyến, giúpngười dùng tính toán nguyên liệu nấu nướng Like công thức và để lại lời bìnhdưới mỗi công thức
Trang 11Người quản trị/nhân viên cập nhật: thể loại, món ăn, công thức, thànhviên, thông tin khác…
Các chuyên gia ẩm thực có thể phê duyệt các công thức của các thànhviên đưa lên hệ thống và tư vấn cho các thành viên trong phần hỗ trợ nấu ăntrực tuyến
1.3 Kết quả khảo sát sơ bộ
Nắm rõ được các nghiệp vụ chức năng và cách tổ chức của hệ thống Phân quyền người dùng, người quản trị thì sẽ quản lý người dùng, quản
lý thể loại, món ăn, công thức, quản lý quyền người dùng Người dùng có thểđăng công thức, tìm kiếm công thức, để lại bình luận dưới công thức, likecông thức, thảo luận trên diễn đàn Hỗ trợ nấu ăn tương tác trực tuyến
Quy trình hoạt động của hệ thống hỗ trợ nấu ăn tương tác được thựchiện theo mô tả sau đây:
Hình 1.1: Sơ đồ quy trình hệ thống
1.4 Phân quyền người dùng
Trang 12Hệ thống hỗ trợ nấu ăn thực hiện hỗ trợ độc giả nấu các món ăn ngon.
Và như vậy dựa vào quy trình hoạt động của hệ thống ta có sơ đồ phân quyềnngươi dùng như sau:
Hệ thống hỗ trợ nấu ăn tương tác thực hiện hỗ trợ độc giả nấu các món
ăn ngon Và như vậy dựa vào quy trình hoạt động của hệ thống ta có sơ đồphân quyền ngươi dùng như sau:
Hình 1.2: Sơ đồ phân quyền người dùng
1.4.1 Quản trị hệ thống (Admin)
Hệ thống hỗ trợ nấu ăn được xây dựng trên Internet, việc thực thi vàvận hành quản lý các dữ liệu trên một phạm vi quy mô lớn nên cần phải có sựphân chia quyền hạn rõ ràng Do đó vai trò của người quản trị hệ thống thểhiện như sau:
Quản lý quyền thực thi hệ thống của người sử dụng
Quản trị người sử dụng ( Thêm, sửa, xóa người dùng)
1.4.2 Các nhân viên
Người thu thập dữ liệu, tìm kiếm và biên tập các công thức, phân loại,các công thức được gửi từ các thành viên trên hệ thống Đảm bảo tính chínhxác về mặt thông tin và từng công thức được đưa lên trên hệ thống Luôn luôn
Trang 13đảm bảo những công thức được đưa lên phải hoàn toàn đạt tiêu chuẩn và cólợi cho sức khỏe, từ đó giúp người dùng an tâm và học theo những công thứctrên hệ thống.
1.4.3 Các chuyên gia ẩm
Những người chuyên gia về ẩm thực đóng góp 1 phần không nhỏ trongviệc hỗ trợ và tư vấn cho tất cả người dùng Đóng vai trò cực kì quan trọng đểgiữ chân người dùng cho hệ thống Giúp cho các bà nội trợ có thể tự tin nấunhững món ăn ngon và bổ dưỡng cho gia đình mình Họ là những người phêduyệt các công thức của các thành viên đưa lên hệ thống
1.4.4 Người dùng internet (Thành viên/ người chưa có tài khoản)
Hệ thống hỗ trợ nấu ăn tương đối phong phú và đa dạng về thể loại cácmón ăn, vì vậy đối tượng độc giả trên Internet cũng phong phú và đa dạng
Các độc giả có thể đăng kí tài khoản trên website để có thể để lại nhữngbình luận, nhận xét của mình đối với từng món ăn, like các công thức nấu ăn
Ngoài ra, mỗi độc giả có thể trở thành những đầu bếp cung cấp nhữngcông thức món ngon của bản thân Phía hệ thống sẽ có các chuyên gia ẩmthực phụ trách việc kiểm duyệt để xuất lên hệ thống
Trang 14CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Trang 15Bình luận (comment): Người dùng sau khi xem các công thức có thểgửi ý kiến của mình bên dưới công thức
Like công thức: Người dùng có thể like công thức trên hệ thống
Quản lý công thức: Các nhân viên/ Admin có thể dễ dàng quản lý cũngnhư kiểm soát các công thức được hiển thị trên hệ thống Đảm bảo tính đúngđắn, chính xác và uy tín về mặt dữ liệu trên hệ thống
Duyệt công thức: Các chuyên gia ẩm thực sẽ đóng vai trò là người đánhgiá cũng như phê duyệt công thức của người dùng đăng lên hệ thống
Quản lý từ khóa tìm kiếm: Giúp người quản trị có thể nắm bắt và đápứng được nhu cầu thị hiếu của người dùng
Quản lý người dùng hệ thống (Quản lý User): Người dùng là toàn thểcác thành viên thuộc trên mọi miền của tổ quốc Do đó cần phải sắt sao trongviệc giám sát người dùng
2 Nhân viên Là người quản lý cập nhật danh sách thể loại, món ăn
và công thức, chính sửa công thức nấu ăn của cácthành viên
3 Thành viên Là người sử dụng hệ thống, bình luận đánh giá, chat
nhóm tương tác với những thành viên khác, đăng bài.
4 Chuyên gia ẩm
thực
Là những chuyên gia ẩm thực của hệ thống, hỗ trợviệc nấu ăn cho các user Duyệt công thức người dùngđăng lên
2.3 Đặc tả ca sử dụng
2.3.1 Usecase Login
Tên Usecase Login (Đăng nhập)
Trang 16Mô tả Usecase này cho phép người dùng truy cập vào hệ
thống để thực hiện các chức năng
Luồng sự kiện
Luồng cơ bản Usecase bắt đầu khi người dùng click vào nút “Đăng
nhập” trên trang web
Hệ thống hiển thị form đăng nhập, yêu cầu nhập tênđăng nhập và mật khẩu , rồi nhấn nút “Đăng nhập”
Hệ thống kiểm tra thông tin đăng nhập, nếu đúng thìcho phép truy cập, sai thì hiển thị thông báo
Luồng rẽ nhánh Nếu người dùng chưa có tài khoản thì sẽ phải nhấn
vào link “Đăng ký” để tạo tài khoản mới
Người dùng nhập đầy đủ thông tin rồi nhấn nút đăng
ký để tạo tài khoản mới Hệ thống sẽ hiển thị thôngbáo nếu thất bại, nếu thành công sẽ chuyển về mànhình đăng nhập
Các yêu cầu đặc biệt Không có
Tiền điều kiện Tài khoản đã được tạo trước đó
Hậu điều kiện Chuyển hướng sang trang chính hoặc hiển thị thông
báo nếu thất bại
2.3.2 Usecase Xem công thức
Tên Usecase Xem công thức
Mô tả Usecase này cho phép người dùng xem công thức nấu
ăn trên hệ thống Luồng sự kiện
Luồng cơ bản Usecase bắt đầu khi người dùng click vào một công
thức nấu món ăn Hệ thống hiển thị thông tin : côngthức chế biến của món ăn,khẩu phần ăn,hình ảnh minhhọa cũng như nguyên liệu cần thiết
Luồng rẽ nhánh Không có
Trang 17Các yêu cầu đặc biệt Không có
Tiền điều kiện Không có
Hậu điều kiện Không có
Điểm mở rộng Không có
2.3.3 Usecase Comment
Mô tả Usecase này cho phép người dùng bình luận ngay bên
dưới công thức đang xem
Luồng sự kiện
Luồng cơ bản Usecase bắt đầu khi người dùng click vào một công
thức nấu món ăn Sau đó click vào “Nội dung thảoluận” và nhập sau đó click “Gửi bình luận”
Hệ thống sẽ lưu bình luận vào bảng Comment và hiểnthị lại trang Công thức đang xem cùng với bình luậnvừa gửi
Luồng rẽ nhánh Không có
Các yêu cầu đặc biệt Không có
Tiền điều kiện Người dùng đã đăng nhập được vào hệ thống
Hậu điều kiện Không có
Điểm mở rộng Không có
2.3.4 Usecase Quản lý User
Tên Usecase Quản lý User
Mô tả Usecase này cho phép người quản trị hệ thống chỉnh
sửa thông tin, thêm, xóa tài khoản người dùng
Luồng sự kiện
Luồng cơ bản Usecase bắt đầu khi Admin nhấn vào tab “Quản lý
users” Hệ thống hiển thị trang “Quản lý users”
Admin nhập thông tin vào các ô như “Email”,
“PassWord” và 1 số thông tin khác Sau đó nhấn nút
“Thêm” thì hệ thống sẽ kiểm tra nếu thỏa mãn sẽ lưu
Trang 18giá trị vừa nhập vào hệ thống.
Hoặc nhấn nút “Cập nhật” thì hệ thống sẽ chuyểnsang trang Cập nhật User sau đó nhập lại các thôngtin Hệ thống sẽ kiểm tra các thông tin vừa nhập lạinếu thỏa mãn sẽ cập nhật giá trị vừa nhập trong hệthống
Hoặc nhấn nút “Xóa” thì hệ thống xóa tài khoản dựatrên thông tin trong hệ thống
Luồng rẽ nhánh Admin không nhập thông tin vào các ô bắt buộc thì hệ
thống sẽ báo lỗi và yêu cầu nhập lại
Các yêu cầu đặc biệt Không có
Tiền điều kiện Admin đã đăng nhập được vào hệ thống
Hậu điều kiện Refresh lại trang hoặc hiển thị thông báo nếu thất bại.Điểm mở rộng Không có
2.3.5 UseCase Đăng công thức
Tên Usecase Đăng công thức
Mô tả Usecase này cho phép người dùng gửi công thức chế
biến của mình lên hệ thống và chờ phê duyệt
Luồng sự kiện
Luồng cơ bản Usecase bắt đầu khi người nhấn chọn “Đăng công
thức”.Hệ thống hiển thị các trường cho người dùngnhập thông tin
Người dùng nhập thông tin vào các ô như “Nguyênliệu”, “Phần ăn”, “Thời gian thực hiện”,”Độkhó”,”Cách thực hiện”,”Hình ảnh minh họa” Sau đóngười dùng nhấn nút “Đăng bài” để gửi bài
Hệ thống kiểm tra dữ liệu.Nếu thỏa mãn Hệ thống sẽphê duyệt và giúp người dùng share công thức trêntrang chủ
Trang 19Luồng rẽ nhánh Nếu người dùng không nhập thông tin vào các ô bắt
buộc thì hệ thống sẽ báo lỗi và yêu cầu nhập lại Các yêu cầu đặc biệt Không có
Tiền điều kiện Người dùng đã đăng nhập được vào hệ thống
Hậu điều kiện Refresh lại trang hoặc hiển thị thông báo nếu thất bại.Điểm mở rộng Không có
Trang 202.3.6 Usecase Quản lý Công thức
Tên Usecase Quản lý công thức
Mô tả Usecase này cho phép Admin/Nhân viên có thể thêm,
sửa, xóa hoặc duyệt công thức được gửi trên hệ thống
Luồng sự kiện
Luồng cơ bản Usecase bắt đầu khi Admin/Nhân viên nhấn vào tab
“Quản lý công thức”.Hệ thống hiển thị các trườngcông thức từ CSDL
Admin/Nhân viên có thể tìm kiếm công thức theo cácdanh mục Admin/Nhân viên click nút “Thêm” thì hệthống sẽ hiển thị trang Thêm công thức sau đó nhậpthông tin, Admin/Nhân viên click nút “Thêm” thì hệthống sẽ kiểm tra nếu thỏa mãn lưu lại trong CSDL Admin/Nhân viên chọn một dòng công thức sau đónhập mới thông tin ,nhấn nút “Cập nhật” thì hệ thống
sẽ hiển thị trang Update công thức sau đó nhập thôngtin Hệ thống kiểm tra nếu thỏa mãn sẽ cập nhật giá trịvừa nhập lưu lại trong CSDL
Hoặc nhấn nút “Xóa” thì hệ thống update trạng tháicông thức về “Đang chờ duyệt”
Hoặc Người biên tập nhấn nút “Duyệt” thì hệ thốngupdate trạng thái công thức về “Đã duyệt”
Luồng rẽ nhánh Không có
Các yêu cầu đặc biệt Không có
Tiền điều kiện Người dùng đã đăng nhập được vào hệ thống xác thực
thuộc “Admin/Nhân viên.”
Hậu điều kiện Không có
Điểm mở rộng Không có
Trang 212.3.7 Usecase Hỗ trợ nấu ăn tương tác
Tên Usecase Hỗ trợ nấu ăn tương tác
Mô tả Usecase này cho phép người dùng có thể trò truyện
trực tiếp với các chuyên gia ẩm thực của hệ thống vànhững người dùng khác
Luồng sự kiện
Luồng cơ bản Usecase bắt đầu khi người dùng nhấn vào tab “Hỗ trợ
nấu ăn tương tác” Hệ thống hiển thị khung chat chongười dùng để có thể trò truyện
Người dùng nhập vào ô input sau đó ấn “Gửi đi” hệthống sẽ ngay lập tức hiển thị thông điệp của ngườidùng cho tất cả mọi người
Luồng rẽ nhánh Không có
Các yêu cầu đặc biệt Không có
Tiền điều kiện Người dùng đã đăng nhập trước đó
Hậu điều kiện Không có
Điểm mở rộng Trò truyện trực tiếp thời gian thực
Trang 222.4Tìm lớp lĩnh vực của hệ thống
2.4.1 Xác định các lớp dựa vào các khái niệm của lĩnh vực ứng dụng
Dựa vào các khái niệm của lĩnh vực ứng dụng và dựa vào văn bản mô
tả bài toán, ta xác định được các lớp thực thể như sau:
2.3.1.1 Lớp Users gồm có:
Mã người dùng (id)
Ảnh đại diện (avatar)
Tên người dùng (name)
Tên đầy đủ (fullname)
Giới tính người dùng (sex)
Email người dùng (email)
Ngày khởi tạo (created_at)Ngày update (updated_at)
2.3.1.2 Lớp Category gồm có:
Mã thể loại (id)
Tên thể loại (name)
(unsigned_name)
Icon thể loại (icon)
Chú thích (note)Trạng thái thể loại (status)Ngày khởi tạo (created_at)Ngày update (updated_at
2.3.1.3 Lớp Dish gồm có:
Mã món ăn (id)
Tên món ăn (name)
(unsigned_name)
Trang 23Hình ảnh bước 5 (image_5)Bước 6 (step_6)
Hình ảnh bước 6 (image_6)Bước 7 (step_7)
Hình ảnh bước 7 (image_7)
Độ khó (level)Trạng thái công thức (status)
Số like (number_like)
Số lượt xem (number_view)Ngày khởi tạo (created_at)Ngày cập nhật (updated_at)
Trang 24Ngày cập nhật (updated_at)
2.3.1.6 Lớp Messages gồm có:
Mã messages (id)
Mã người gửi (id_user)
Ngày khởi tạo (created_at)
Nội dung gửi (message)
Trang 252.4.2 Mô hình hóa sự tương tác
Từ những chức năng tìm được, ta gộp những chức năng nhỏ thànhUsecase của hệ thống:
Register (Đăng ký)
2 Xem công thức
Xem công thứcLike công thứcBình luậnTính nguyên liệu
Cập nhật UserXóa UserTìm kiếm User
Cập nhật công thứcDuyệt công thức (update trạngthái)
Xóa công thức (update trạngthái )
Tìm kiếm công thứcXóa bình luận
Cập nhật món ănXóa món ăn (update trạngthái)
Tìm kiếm món ăn
7 Hỗ trợ nấu tương tác Chat real-time
Cập nhật thể loạiXóa thể loạiTìm kiếm thể loại
Trang 269 Quản lý slide Thêm slide
Cập nhật slideXóa slide (update trạng thái)Tìm kiếm slide
Trang 272.4.2.1 Login
Hình 2.2: Biểu đồ trình tự đăng nhập
Trang 282.4.2.2 Đăng ký
Hình 2.3: Biểu đồ trình tự đăng ký tài khoản
Trang 292.4.2.3 Xem công thức
Hình 2.4: Biểu đồ trình tự xem công thức
Trang 302.4.2.4 Bình luận (Comment)
Hình 2.5: Biểu đồ trình tự bình luận (comment)
Trang 312.4.2.5 Tính nguyên liệu
Hình 2.6: Biểu đồ trình tự tính nguyên liệu (count material)
Trang 322.4.2.6 Đăng công thức
Hình 2.7: Biểu đồ trình tự đăng công thức
Trang 332.4.2.7 Thêm user
Hình 2.8: Biểu đồ trình tự thêm mới user
Trang 342.4.2.8 Cập nhật user
Hình 2.9: Biểu đồ trình tự cập nhật user
Trang 352.4.2.9 Xóa user
Hình 2.10: Biểu đồ trình tự xóa user
Trang 362.4.2.10 Thêm mới công thức
Hình 2.11: Biểu đồ trình tự thêm mới công thức
Trang 372.4.2.11 Duyệt công thức
Hình 2.12: Biểu đồ trình tự duyệt công thức
Trang 382.4.2.12 Cập nhật công thức
Hình 2.13: Biểu đồ trình tự update recipe
Trang 392.4.2.13 Xóa công thức
Hình 2.14: Biểu đồ trình tự xóa công thức
Trang 402.4.2.14 Tìm kiếm công thức
Hình 2.15: Biểu đồ trình tự Tìm kiếm công thức