CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 1. Lý do chọn đề tài Nấu ăn là một phần không thể thiếu với tất cả mọi người, nhất là với các tín đồ đam mê nghề bếp. Hiện nay cuộc sống đang dần phát triển nên đời sống càng được nâng cao. Thay vì nhu cầu ăn no mặc ấm như trước kia mà thay vào đó là nhu cầu ăn ngon mặc đẹp.
Nhưng ăn món gì, nấu như thế nào, nguyên liệu ra làm sao, thời gian nấu như thế nào… đây là các câu hỏi mà không ít người đặt ra hàng ngày ngay cả bản thân chúng em cũng luôn phải đặt ra những câu hỏi như vậy. Nhiều người lựa chọn tìm kiếm trên mạng hoặc các mạng xã hội, qua các nhận xét của người quen hay đơn giản hơn là những công thức truyền miệng, công thức mẹ nấu ngày xưa. Nhưng khi tìm kiếm thông tin như vậy khiến nhiều người thấy khó khăn, đôi khi không tìm được những món ăn ứng ý, khó tìm được những món ăn với những nguyên liệu sẵn có. Mặt khác nhiều người biết công thức những món ăn ngon, nguyên liệu sẵn có muốn chia sẻ cho mọi người biết nhưng lại chưa tìm được một nơi phù hợp để chia sẻ.
Dựa vào nhu cầu trên chúng em đã hướng đề tài xây dựng website và ứng dụng chia sẻ công thức nấu ăn Đậu Đậu. Website và ứng dụng giúp những người có tâm hồn ăn uống và những bạn có đam mê đầu bếp có thể chia sẻ sở thích để lại gần nhau hơn. Mô tả hệ thống − Để sử dụng được hệ thống, người dùng cần phải đăng ký tài khoản và sử dụng tài khoản đó để đăng nhập vào hệ thống. − Người dùng có thể xem chi tiết công thức hoặc tìm kiếm công thức mà không cần đăng nhập.
− Với một tài khoản sau khi đăng nhập vào trong hệ thống, người dùng có thể thay đổi các thông tin cá nhân của họ như họ tên hiển thị, ảnh đại diện, thông tin cơ bản mô tả của bản thân như tên đăng nhập, mật khẩu, email, phone,… và những tác vụ quản lý mật khẩu như thay đổi mật khẩu, yêu cầu khôi phục mật khẩu khi người dùng quên mật khẩu. − Người dùng có thể tạo các công thức hướng dẫn nấu ăn và lưu lại trên hệ thống. Các công thức sẽ có mô tả về nội dung như tên công thức, nguyên liệu sử dụng, thời gian thực hiện, công thức thuộc những nhóm nào, chi tiết các bước thực hiện và ảnh mô tả trực quan các bước làm (nếu có), link video (nếu có). Các công thức này sẽ được người quản trị trang web kiểm duyêt, phê duyệt để hiển thị lên hệ thống.
Công thức có thể chỉnh sửa, xoá bỏ bởi người tạo công thức người quản trị chỉ có thể xóa mà không thể chỉnh sửa nội dung của công thức. Tất cả mọi người trong hệ thống đều có thể đánh dấu lưu lại các công thức, cùng với các chức năng giúp mọi người tương tác với nhau như yêu thích, bỏ yêu thích công thức, đánh giá công thức, các chức năng liên quan đến bình luận thêm bình luận. − Người dùng có thể tìm kiếm các công thức dựa vào những nguyên liệu trong công thức, nhóm mà công thức thuộc trong đó, tên công thức. 3 − Người dùng có thể bình luận, gửi phản hồi công thức, đánh giá công thức.
− Người dùng có thể đăng ký theo dõi lẫn nhau để có thể dễ dàng cho nhận những công thức mới của nhau, một người dùng có thể quản lý danh sách những người mình theo đõi và những người đăng ký theo dõi họ. Người dùng có thể bỏ theo dõi những người họ đã đăng ký theo dõi. − Người dùng có thể tìm kiếm những người khác theo tên đăng nhập. − Hệ thống sẽ cấp tài khoản cho người quản trị, người quản trị đăng nhập vào trang quản trị hệ thống để quản lý hệ thống.
− Người quản trị có thể quản lý danh sách người dùng như: thêm, sửa, vô hiệu hóa người dùng. − Người quản trị có thể quản lý, phê duyệt, yêu cầu người viết sửa công thức trước khi công thức được đăng lên rộng rãi với mọi người. Người quản lý có thể xóa công thức mà người viết đăng. − Người quản trị quản lý các nhóm công thức, thêm, sửa các nhóm công thức để phục vụ cho người dùng đăng các công thức.
Xác định yêu cầu hệ thống 1. Yêu cầu chức năng − Người dùng đăng ký tài khoản, đăng nhập tài khoản. − Người dùng lấy lại mật khẩu, thay đổi mật khẩu. − Người dùng quản lý thông tin cá nhân gồm: số điện thoại, email, họ tên, hình ảnh đại diện.
− Người dùng quản lý công thức gồm: tạo công thức, sửa công thức, xóa công thức. − Người dùng quản lý công thức được đánh dấu của mình gồm: đánh dấu công thức, xóa công thức khỏi danh sách đánh dấu. − Người dùng tương tác với công thức trên hệ thống gồm: yêu thích công thức, bỏ yêu thích công thức, bình luận vào công thức, đánh giá công thức, lưu công thức và bỏ lưu công thức. − Người dùng tương tác với người dùng khác gồm: xem danh sách người đang theo dõi, theo dõi người dùng khác, bỏ theo dõi người dùng khác, đánh giá người dùng.
− Người dùng quản lý những người khác theo dõi mình gồm: xem danh sách người đang theo dõi mình. − Người dùng tìm kiếm: người dùng khác theo tên đăng nhập, công thức theo các dang mục mà công thức phụ thuộc, các nguyên liệu mà công thức sử dụng. − Người quản trị quản lý danh sách người dùng gồm: thêm người dùng, vô hiệu hóa người dùng. − Người quản trị quản lý công thức được đăng gồm: phê duyệt công thức, yêu cầu người viết sửa công thức, xóa công thức.
5 − Người quản trị quản lý các nhómmà công thức phụ thuộc gồm: thêm nhóm, xóa nhóm. − Một email chỉ đăng ký cho 1 tài khoản. − Mỗi tài khoản có thể đăng nhập ở nhiều thiết bị cùng một lúc. − Mỗi công thức phải phụ thuộc tối thiểu một nhóm.
− Công thức cần phải đầy đủ các thành phần gồm: tên công thức, nguyên liệu, nhómcông thức phụ thuộc, các bước thực hiện 1. Yêu cầu phi chức năng − Website, ứng dụng mobile đáp ứng được khả năng truy cập nhanh, thông tin tin cậy, chính xác. − Giao diện thân thiện, dễ sử dụng, tính thẩm mỹ và tính ổn định cao. − Ứng dụng có khả năng lưu trữ, xử lý khối lượng lớn thông tin nhưng chiếm dung lượng nhỏ trong máy tính.
− Tính thân thiện và dễ sử dụng: giao diện cần phải có trực quan, đẹp, hạn chế đến mức tối thiểu sử dụng các thuật ngữ chuyên ngành, thuật ngữ tiếng nước ngoài. Việc trình bày trang web và ứng dụng bởi nhiều thứ tiếng có thể được tính đến sau này. − Tính an toàn: an toàn ở đây được xét trên hai yếu tố: thông tin và người dùng. Bài viết trước khi được đưa lên trang chính thức phải được kiểm duyệt kỹ.
Thông tin chỉ được chỉnh sửa bởi những người có thẩm quyền. Các hành vi nhằm chỉnh sửa làm sai lệch nội dung phục vụ cho mục đích riêng cần phải được ngăn chặn. 6 CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 2. Xác định các chức năng Từ yêu cầu của hệ thống, ta xác định các chức năng chính của hệ thống: Bảng 2.
Rà soát các yêu cầu chức năng với chức năng Yêu cầu Thứ tự Chức năng 1 Đăng ký tài khoản Người dùng đăng ký tài khoản, đăng nhập tài khoản Người dùng quản lý 2 Đăng nhập tài khoản 3 Đăng xuất tài khoản 4 Người dùng lấy lại mật khẩu, thay đổi mật Lấy lại mật khẩu tài khoản 5 Thay đổi mật khẩu khẩu tài khoản thông tin cá nhân 6 Cập nhật thông tin tài khoản 7 Tạo công thức Người dùng quản lý công thức gồm 8 Sửa công thức 9 Xóa công thức 10 Đánh dấu công thức 11 Bỏ đánh dấu công Người dùng tương tác với công thức trên hệ thống thức 12 Yêu thích công thức Người dùng tương tác với người dùng khác Xem danh sách công thức yêu thích 17 Xem danh sách công thức lưu trữ 18 Xem danh sách người mình đang theo dõi Người dùng tìm kiếm 19 Theo dõi người dùng 20 Bỏ theo dõi người dùng Người quản trị quản lý danh sách người dùng gồm 21 Đánh giá người dùng Người quản trị quản lý công thức được đăng 22 Tìm kiếm công thức gồm 23 Tìm kiếm người dùng Người quản trị quản lý các nhómcông thức 7 24 Thêm tài khoản người dùng 25 Vô hiệu hóa tài khoản người dùng 26 Phê duyệt công thức 13 Bỏ yêu thích công thức 27 Yêu cầu sửa công thức 14 Bình luận vào công thức 28 Thêm nhóm công thức 15 Báo cáo công thức cho quản trị viên 16 29 Xóa nhóm công thức 8 2. Sơ đồ phân rã chức năng − Sau khi nắm bắt yêu cầu và chức năng của hệ thống, ta đưa ra được sơ đồ phân rã chứ năng như hình 2. Chia sẻ công thức nấu ăn Đậu Đậu 3. Tương tác với người dùng 5.
Quản lý tài khoản 2. Quản lý công thức công thức 4. Tương tác công thức 1. Đăng ký tài khoản 1.
Đăng nhập tài khoản 1. Đăng xuất tài khoản 1. Đổi mật khẩu 1. Vô hiệu hóa tài công thức dõi 4.
Yêu thích 4. Báo cáo tài khoản khoản công thức công thức 2. Thêm nhóm thức 2. Yêu cầu sửa 3.
Đánh giá người công thức 1. Quên mật công thức dùng 4. Bỏ yêu thích khẩu tài khoản 4. Đánh dấu công thức 3.
Theo dõi người 2. Sửa công công thức 5. Xóa nhóm dùng thức công thức 1. Tìm kiếm thông tin tài 4.
Bỏ đánh dấu sách công thức yêu công thức 3. Bỏ theo dõi khoản 2. Xóa công người dùng công thức thích thức 6. Xem danh sách người dùng khoản sách công thức công thức 2.
Phê duyệt người dùng đang theo đánh dấu Hình 2. Sơ đồ phân rã chức năng 9 2. Sơ đồ luồng dữ liệu 2. Ký hiệu sử dụng 2.
Quan hệ giữa kho, tiến trình, luồng dữ liệu 2.