Thiết kế giao diện hấp dẫn: Website cần có giao diện dễ sử dụng, thu hút người Hệ thống quản lý sản phẩm: Cần có cơ chế quản lý sản phẩm, đơn hàng, và thanhBảo mật thông tin: Đảm bảo an
TƯỞNG (CONVICE)
Đề xuất ý tưởng cá nhân
1.1.1 Thành viên 1:Nguyễn Thành Long
Tên ý tưởng :Xây dựng website đặt món ăn.
Tạo ra một nền tảng trực tuyến cho người dùng để dễ dàng tìm kiếm, lựa chọn và đặt hàng từ các nhà hàng và quán ăn địa phương.
Giúp khách hàng có thể tiếp cận những món ăn mới và tiết kiệm thời gian và chi phí các thủ tục mua hàng trở nên dễ dàng và nhanh chóng.
Cung cấp các món ăn phù hợp với nhu cầu của khách hàng trong và ngoài nước.
Mở rộng cho mọi người biết đến nhiều hơn
Khách / Người dùng : Xem, tìm kiếm món ăn,đặt món, đăng ký tài khoản , đánh giá chất lượng dịch vụ, quản lý đơn hàng và nhận thông báo.
Quản trị viên : Phê duyệt đăng nhập vào hệ thống , tạo mới và cập nhật món ăn, cấp quyền truy cập và tạo tài khoản, quản lý người dùng và khách hàng, quản lý đơn hàng và hỗ trợ khách hàng
Phân phối: Đối với người mua, trang web cung cấp khả năng tìm kiếm, đặt hàng, quản lý đơn hàng và đánh giá các nhà hàng Đối với người bán, họ có thể quản lý thông tin về nhà hàng, thực đơn, và đơn hàng được đặt, cũng như nhận phản hồi từ khách hàng.
Phạm vi: trong một tỉnh hoặc trong một thành phố
Nhân viên kỹ thuật, bảo mật, bảo trì và phát triển hệ thống ứng dụng.
Nhân viên quản lí, nhân viên bán hàng, quản lý dữ liệu.
1.1.2 Thành viên 2: Nguyễn Hữu Duy
Tên ý tưởng :Xây dựng website bán đồng hồ.
Cung cấp nền tảng trực tuyến cho việc mua bán đồng hồ.
Hiển thị sản phẩm đồng hồ từ các thương hiệu khác nhau.
Tạo kênh giao dịch giữa người mua và người bán.
Hiển thị danh sách sản phẩm: Cho phép người dùng xem các mẫu đồng hồ có sẵn để mua.
Tìm kiếm và lọc sản phẩm: Người dùng có thể tìm kiếm theo thương hiệu, loại đồng hồ, giá cả, và các tiêu chí khác. Đặt hàng và thanh toán: Cho phép người dùng thêm sản phẩm vào giỏ hàng và thanh toán qua các phương thức khác nhau.
Quản lý tài khoản: Người dùng có thể đăng ký, đăng nhập, và quản lý thông tin cá nhân.
Sản phẩm: Website sẽ tập trung vào bán đồng hồ, có thể mở rộng sang phụ kiện khác liên quan đến đồng hồ.
Khách hàng: Dành cho người mua đồng hồ trực tuyến.
Khu vực hoạt động: Có thể hoạt động cả trong và ngoài nước.
Thiết kế giao diện hấp dẫn: Website cần có giao diện dễ sử dụng, thu hút người dùng.
Hệ thống quản lý sản phẩm: Cần có cơ chế quản lý sản phẩm, đơn hàng, và thanh toán.
Bảo mật thông tin: Đảm bảo an toàn thông tin cá nhân của người dùng.
Tối ưu hóa trải nghiệm người dùng: Tốc độ tải trang nhanh, thân thiện với thiết bị di động.
1.1.3 Thành viên 3: Lê Hoàng Anh Tài
Tên ý tưởng : Xây dựng website Sức khỏe và Thể dục
Cung cấp thông tin về duy trì một lỗi sống lành mạnh
Tạo ra một cộng đồng trực tuyến cho những người quan tâm đến sức khỏe và thể dục
Cung cấp các công cụ và tài nguyên để giúp người dùng theo dõi tiến độ của họ Các biện pháp giảm căn thẳng , giảm cân , tăng cân
Quản lý tài khoản: Người dùng có thể đăng ký, đăng nhập, và quản lý thông tin cá nhân.
Mua khóa đào tạo : Khóa đào tạo sẽ có những bài tập thể dục chuyên sâu
Tìm kiếm : Tìm kiếm những bài tập liên quan đến nhu cầu của mình
Theo dõi tiến độ và thống kê : Cung cấp các công cụ để người dùng theo dõi tiến độ luyện tập và thống kê sức khỏe
Người dùng mục tiêu: Phạm vi của trang web có thể tập trung vào một nhóm người dùng cụ thể, chẳng hạn như người mới bắt đầu tập thể dục, người muốn giảm cân, người quan tâm đến yoga và thiền, hoặc người muốn nâng cao thể lực và sức mạnh.
Mục tiêu kinh doanh: Trang web có thể có mục tiêu kinh doanh như quảng cáo, bán sản phẩm hoặc dịch vụ, thu thập dữ liệu người dùng, hoặc thuê mua nội dung Phạm vi của trang web có thể được xác định dựa trên mục tiêu kinh doanh này.
Tính năng và giao diện người dùng (UI/UX):
Giao diện phải được thiết kế đơn giản, dễ sử dụng và thân thiện với người dùng.
Tích hợp các tính năng như hướng dẫn tập thể dục, thực đơn dinh dưỡng, theo dõi tiến độ, cộng đồng trực tuyến, và cửa hàng trực tuyến (nếu có). Đảm bảo trang web thân thiện với thiết bị di động để người dùng có thể truy cập từ bất kỳ thiết bị nào.
Nội dung và thông tin:
Cung cấp nội dung chất lượng và đáng tin cậy về sức khỏe, dinh dưỡng và thể dục.
Tích hợp các công cụ tìm kiếm và lọc để người dùng dễ dàng tìm kiếm thông tin. Cập nhật thường xuyên để đảm bảo rằng nội dung luôn mới mẻ và thú vị.
Tích hợp các tính năng đặc biệt như tư vấn trực tuyến từ chuyên gia, bảng xếp hạng và nhận xét về các sản phẩm và dịch vụ liên quan đến sức khỏe và thể dục.
Tính năng theo dõi và thống kê để người dùng có thể theo dõi tiến độ tập luyện và sức khỏe của họ.
Bảo mật và quản lý dữ liệu: Đảm bảo bảo mật thông tin cá nhân của người dùng, bao gồm thông tin về sức khỏe và tài khoản cá nhân.
Tuân thủ các quy định về bảo mật dữ liệu như GDPR để bảo vệ quyền riêng tư của người dùng. Đảm bảo trang web có thời gian tải nhanh và hoạt động mượt mà trên mọi loại thiết bị và trình duyệt.
Tối ưu hóa SEO để đảm bảo rằng trang web xuất hiện cao trong các kết quả tìm kiếm liên quan đến sức khỏe và thể dục.
1.1.4 Thành viên 4: Ngô Minh Thắng
Tên ý tưởng : Xây dựng website Bán quần áo
-Cung cấp các mặt hàng thời trang
-Tạo kênh giao dịch để tiện lợi cho người mua
-Bắt kịp xu hướng thời trang
-Trình bày sản phẩm: Hiển thị sản phẩm một cách rõ ràng và hấp dẫn, bao gồm hình ảnh chất lượng cao, mô tả chi tiết và thông tin về giá cả.
-Tìm kiếm và bộ lọc: Cung cấp công cụ tìm kiếm và bộ lọc sản phẩm giúp khách hàng dễ dàng tìm kiếm và lọc ra các sản phẩm theo yêu cầu cụ thể.
Giỏ hàng và thanh toán: Cho phép khách hàng thêm sản phẩm vào giỏ hàng, xem lại đơn hàng và thực hiện thanh toán một cách dễ dàng và an toàn.
-Quản lý tài khoản: Đăng ký và đăng nhập tài khoản cá nhân, quản lý thông tin cá nhân và địa chỉ giao hàng.
-Chăm sóc khách hàng: Cung cấp hỗ trợ trực tuyến qua chat, email hoặc điện thoại để giải đáp thắc mắc và cung cấp hỗ trợ cho khách hàng.
-Tối ưu hóa di động: Đảm bảo website có giao diện thân thiện với thiết bị di động, giúp khách hàng dễ dàng truy cập và mua sắm từ điện thoại di động.
-Sản phẩm: Hiển thị và bán các loại quần áo, bao gồm áo sơ mi, áo thun, quần jean, váy đầm, phụ kiện, và các loại trang phục khác.
Đánh giá ý tưởng cá nhân
Liệt kê 3 mảng kiến thức chuyên ngành cần thiết cho việc phát triển sản phẩm hoặc ý tưởng sản phẩm đã nêu:
Chuyên ngành 1 Chuyên ngành 2 Chuyên ngành 3
Phân tích Thiết kế hệ thống, Lập trình thương mại điện tử
Hệ quản trị cơ sỡ dữ liệu, lập trình hướng đối tượng
Giới thiệu với cấu trúc dữ liệu
Nguyễn Hữu Duy Phân tích Thiết kế hệ thống
Hệ Quản trị CSDL Hướng đối tượng
Lê Hoàng Anh Tài Hệ quản trị cơ sở dữ liệu
Phân tích và thiết kế
Ngô Minh Thắng Hệ quản trị cơ sở dữ liệu
Phân tích và thiết kế hệ thống
Lê Vũ Hoàng Duy Hệ quản trị cơ sở dữ liệu
Phân tích và thiết kế hệ thống
Liệt kê 3 mảng kỹ năng cần thiết cho việc phát triển sản phẩm hoặc ý tưởng sản phẩm đã nêu:
Kỹ năng 1 Kỹ năng 2 Kỹ năng 3
Kỹ năng làm việc nhóm, cơ sỡ dữ liệu
Lê Hoàng Anh Tài Cơ sở dữ liệu Thiết kế giao diện Lập trình C#
Nguyễn Hữu Duy Hệ quản trị CSDL Lập trình C#
Ngô Minh Thắng Lập trình C# CSDL
Lê Vũ Hoàng Duy Lập trình C# Cơ sở dữ liệu
Liệt kê các loại đối tượng sẽ được hưởng lợi từ ý tưởng sản phẩm đã nêu (ít nhất là
1, nhiều nhất là 5): Đối tượng 1 Đối tượng 2 Đối tượng 3 Đối tượng 4 Đối tượng 5
Người bán Người mua Bên trung gian Nguyễn Hữu
Người mua Người bán Quản trị viên
NHân viên giao hàng Ngô Minh
Sinh viên và người đi làm shipper
Người quản lý trang web
Lê Vũ Hoàng Duy Ước lượng số lượng người sẽ
1000 người 1000 người 1000 người 1000 người 1000 người được hưởng lợi từ ý tưởng sản phẩm đã nêu:
Lê Vũ Hoàng Duy Ước lượng số lượng người sẽ chịu bỏ tiền ra mua sản phẩm đã nêu
(nếu giá cả phải chăng):
500 người 500 người 500 người 500 người 500 người Đánh giá khả năng các nhà đầu tư sẽ bỏ tiền ra cho ý tưởng sản phẩm đã nêu:
Không cao Trung bình Cao Rất cao
Nguyễn Lê Hoàng Nguyễn Hữu Ngô Minh Lê Vũ
Thành Long Anh Tài Duy Thắng Hoàng
Duy Ước lượng số năm sản phẩm đã nêu sẽ ở trên thị trường cho đến trước khi bị thay thế:
1 năm 1 năm 1 năm 1 năm 1 năm
Liệt kê những sản phẩm thực tế hay sản phẩm tiềm năng có thể thay thế sản phẩm hay ý tưởng sản phẩm đã nêu thế:
500.000 người Ước lượng độ khó trong việc phát triển thành công ý tưởng sản phẩm đã nêu:
Không cao Trung bình Cao Rất cao
Lê Vũ Hoàng Duy Ước lượng thời gian cần thiết để phát triển đầy đủ sản phẩm đã nêu (dưới khía cạnh thương mại):
2 tháng 2 tháng 2 tháng 2 tháng 2 tháng
Lựa chọn ý tưởng
1.3.1 Ý tưởng nhóm Đề tài: Xây dựng website đặt món ăn.
Tạo ra một nền tảng trực tuyến cho người dùng để dễ dàng tìm kiếm, lựa chọn và đặt hàng từ các nhà hàng và quán ăn địa phương.
Giúp khách hàng có thể tiếp cận những món ăn mới và tiết kiệm thời gian và chi phí các thủ tục mua hàng trở nên dễ dàng và nhanh chóng.
Thúc đẩy sự đa dạng trong ẩm thực: Bằng cách cung cấp một loạt các món ăn từ nhiều nhà hàng và quán ăn khác nhau, nền tảng này giúp khách hàng tiếp cận với những hương vị mới và đa dạng từ nhiều vùng miền và quốc gia khác nhau.
Tiết kiệm thời gian và chi phí: Người dùng có thể tiết kiệm thời gian và chi phí cho các thủ tục mua hàng thông thường như di chuyển đến nhà hàng hoặc gọi điện thoại để đặt hàng, thay vào đó, họ có thể dễ dàng đặt hàng trực tuyến từ bất kỳ đâu và bất kỳ khi nào.
Cung cấp các món ăn phù hợp với nhu cầu của khách hàng trong và ngoài nước.
Mở rộng cho mọi người biết đến nhiều hơn
❖ Xem danh sách món ăn:
Cho phép người dùng xem danh sách các món ăn có sẵn để chọn Thông thường, danh sách này được tổ chức theo các danh mục như món chính, món phụ, đồ uống, tráng miệng và có thể được hiển thị dưới dạng danh sách hoặc lưới hình ảnh.
Cho phép người dùng chọn món ăn từ danh sách và thêm chúng vào đơn đặt hàng của mình Sau khi đã chọn món, người dùng có thể xem lại đơn đặt hàng trước khi xác nhận.
❖ Hủy món : cho phép người dùng xóa bỏ một hoặc nhiều món ăn khỏi đơn đặt hàng trước khi hoàn tất quá trình đặt hàng.
❖ Đánh giá món ăn: cho phép người dùng chia sẻ ý kiến và trải nghiệm của họ về các món ăn mà họ đã thử.
❖ Thanh toán: cho phép người dùng chọn phương thức thanh toán và nhập thông tin thanh toán để hoàn tất quá trình mua hàng Sau khi thanh toán thành công, đơn đặt hàng sẽ được xác nhận và chờ xử lý.
❖ Chức năng quản lý hệ thống:
- Đăng nhập nhập hệ thống
- Đổi mật khẩu người dùng
- Phân quyền cho các nhóm người dung: các nhóm người dùng được quy định quyền hạn sử dụng các chức năng của phần mềm khác nhau.
❖ Chức năng quản lý khách hàng:
- Cập nhật khách hàng: gồm các thông tin: họ và tên, giới tính, mật khẩu
- Cập nhật danh sách khách hàng: thêm, sửa, xóa nhân viên thử việc.
❖ Chức năng quản lý danh mục món ăn:
- Thực hiện thêm sửa xóa, cập nhật thông tin danh mục khi có quyết định
❖ Chức năng quản lý món ăn:
- Thực hiện thêm sửa xóa, cập nhật thông tin danh mục khi có quyết định
❖ Chức năng quản lý đơn hàng:
-Cập nhật thông tin hóa đơn.
-Xóa hóa đơn bán hàng
❖ Chức năng tìm kiếm món ăn :
- Tìm kiếm theo tên món ăn : cho phép ta tìm thông tin món ăn theo tên
- Tìm kiếm theo mã món ăn : cho phép ta tìm kiếm thông tin của món ăn
- thống kê danh sách khách hàng đã mua
- Thống kê số lượng mua hàng và tồn kho.
Người mua: Đây là những người sử dụng trang web để tìm kiếm, đặt hàng, quản lý đơn hàng và đánh giá các món ăn, chất lượng phục vụ Đối với khách hàng, trang web cung cấp một nền tảng thuận tiện để khám phá và đặt hàng từ các nhà hàng địa phương.
Người bán: Đối với những người quản lý nhà hàng hoặc quán ăn, trang web cung cấp khả năng quản lý thông tin về nhà hàng, thực đơn, đơn hàng được đặt, và nhận phản hồi từ khách hàng Điều này giúp cho người bán nắm bắt được nhu cầu của khách hàng và cải thiện dịch vụ của mình.
Phạm vi: trong một tỉnh hoặc trong một thành phố
Nhân viên kỹ thuật: Chịu trách nhiệm về phát triển, bảo mật, bảo trì và quản lý hệ thống ứng dụng Các kỹ sư và nhà phát triển sẽ tham gia vào việc xây dựng và duy trì nền tảng công nghệ.
Nhân viên quản lí và bán hàng: Các nhân viên này sẽ quản lý hoạt động kinh doanh và bán hàng của các nhà hàng trên nền tảng Họ cũng có thể tham gia vào việc quản lý dữ liệu và cung cấp hỗ trợ cho khách hàng.
Quản lý dữ liệu: Nhân viên này sẽ chịu trách nhiệm về việc quản lý và bảo mật dữ liệu liên quan đến thông tin khách hàng, đơn hàng và thông tin nhà hàng trên nền tảng Đảm bảo tính bảo mật và tính nhất quán của dữ liệu là rất quan trọng.
KẾ HỆ THỐNG (DESGIN)
Xác định tác nhân hệ thống
STT TÊN TÁC NHÂN DIỄN GIẢI
1 Khách hàng Có thể thực hiện các chức năng như đăng ký tài khoản , thay đổi thông tin tài khoản tìm kiếm món ăn , đặt món ăn , mua hàng, xem hóa đơn….
2 Admin(Người quản trị) Chịu trách nhiệm quản lý dữ liệu của hệ thống , tài khoản khách hàng, thực đơn, thông tin đơn hàng và các dữ liệu khác liên quan.Để thực hiện các chức năng quản trị trong hệ thống bắt buộc phải thực hiện đăng nhập.
Xác định yêu cầu của hệ thống
Admin:người quản trị hệ thống. o Quản lý danh mục o Quản lý món ăn o Quản lý tài khoản khách hàng o Quản lý đánh giá o Quản lý đơn hàng o Quản lý thống kê o Đăng nhập
Khách hàng o Xem danh sách món ăn o Tìm kiếm và lọc món ăn o Đánh giá món ăn o Quản lý đặt món o Quản lý tài khoản cá nhân o Xem lịch sử đơn hàng o Thanh toán o Đăng nhập o Đăng ký
2.2.2 Yêu cầu phi chức năng
Giao diện người dùng thân thiện:
Giao diện đơn giản, thẩm mỹ dễ sử dụng, dễ sử dụng cho cả người dùng và quản trị viên. Đảm bảo trải nghiệm mua hàng trực tuyến thuận tiện và nhanh chóng.
Bảo mật: Đảm bảo tính bảo mật của thông tin khách hàng và giao dịch.
Xác thực và ủy quyền đối với người dùng và quản trị viên.
Tích hợp tính năng quản lý dữ liệu:
Sao lưu và phục hồi dữ liệu định kỳ để đảm bảo an toàn dữ liệu.
Mô hình hóa dữ liệu
2.3.1 Biểu đồ use case tổng quát
Hình 2.3.1.1 Biểu đồ use case tổng quát
UC Tên chức năng Mô tả
UC01 Đăng ký Khách hàng có thể thực hiện thao tác đăng ký để trở thành thành viên thuận tiện cho việc mua và đặt hàng.Sau đó thực hiện đăng nhập vào hệ thống
UC02 Đăng nhập Thực hiện đăng nhập vào hệ thống vào user và password.Kiểm tra hợp lệ trùng với dữ liệu có sẵn sẽ cho phép đăng nhập để thực hiện các chức năng trong hệ thống.
UC03 Xem danh sách món ăn
Khách hàng có xem cá thông tin món ăn như về giá , khuyến mãi , địa chỉ Để lựa chọn món ăn phù hợp.
UC04 Tìm kiếm và lọc theo sản phẩm
Tìm kiếm nhanh về thông tin sản phẩm , dựa vào các tiêu chí tìm kiếm của website như tìm thoe tên của sản phẩm
UC05 Đánh giá món ăn Khách hàng có thể thực hiện chức năng đánh giá về món ăn về mức độ phục vụ.
UC06 Quản lý đặt món Khách hàng có thể thực hiện chức năng để đặt mua , hủy món, hủy đơn đã dặt ,nhằm giảm thiểu thời gian và chi phí cho khách hàng
UC07 Quản lý tài khoản cá nhân
Khách hàng có thể thay đổi thông tin cảu tài khoản , thay đổi mật khẩu…
UC08 Xem lịch sử đơn hàng Khách hàng có thể xem và quản lý đơn hàng đã đặt.
UC09 Thanh toán Khách hàng có thể lụa chọn hình thức thanh toán bằng tiền mặt , chuyển khoản qua ngân hàng…
UC10 Quản lý thống kê Quản lý thống kê sản phẩm ,doanh thu
UC11 Quản lý tài khoản Quản lý hoạt động mua bán của khách hàng , người dùng lưu lại thông tin về khách hàng như tên khách hàng, mã khách hàng , số điện thoại và email
UC12 Quản lý đánh giá Quản lý các thông tin đánh giá của khách hàng về chất lượng phục vụ và giá cả
UC13 Quản lý danh mục Quản lý về cá danh mục sản phẩm
UC14 Quản lý món ăn Quản lý thông tin về món ăn như mã món ăn , tên món ăn…
UC15 Quản lý hóa đơn Quản lý hóa đơn của khách hàng có những thông tin như :mã giao dịch, mã hóa đơn , mã sản phẩm, số lượng và thành tiền
Use case Tác nhân Mục đích
Tổng quát Khách hàng, admin Mô tả toàn bộ chức năng của từng đối tượng người dùng trong hệ thống.
2.3.2 Đặc tả các use case
Hình 2.3.2.02 Biểu đồ Usecase đăng ký
Tên use case Đăng ký
Mô tả chung Người dùng có thể đăng ký và tạo tài khoản mới Điều kiện trước Khách hàng đã vào trang wed và vào trang đăng ký Điều kiện sau Khách hàng đăng ký thành công và tới trang đăng nhập
1.Khách hàng chọn chức năng đăng ký.
3.Khách hàng nhập thông tin đăng ký gồm email, username và phone và bấm nút xác nhận…
2.Hệ thống hiển thị giao diện đăng ký.
3 Hệ thống kiểm tra thông tin xác nhận hợp lệ và sẽ thêm vào CSDL.Nếu email và username đã tồn tại thì hệ thống sẽ thông báo email hoặc username đã tồn tại.Ngược lại , thông báo đăng ký thành công thì hệ thống chuyển qua trang đăng nhập.
Hình 2.3.2.02 Biểu đồ Usecase đăng nhập Bảng đặc tả:
Tên use case Đăng nhập
Tác nhân Khách hàng, Quản trị viên
Mô tả chung Người dùng có thể đăng nhập khi đã có tài khoản Điều kiện trước Khách hàng đã đăng ký tài khoản thành công Điều kiện sau Khách hàng đã đăng nhập thành công vào trang
1.Khách hàng,Admin sau khi đã đăng kí xong và đăng nhập
3.Khách hàng , Admin nhập thông tin đăng nhập gồm email và password.
2.Hệ thống hiển thị thông tin đăng nhập.
4.Hệ thống kiểm tra, xác nhận thông tin hợp lệ.Nếu đăng nhập thành công thì hệ thống báo thành công.Ngược lại, hệ thống đăng nhập thất bại.
2.3.2.3:UC03-Xem danh sách món ăn
Hình 2.3.2.06 Biểu đồ Usecase xem danh sách món ăn
Tên use case Xem danh mục sản phẩm
Mô tả chung Khách hàng khi muốn xem danh sách các món ăn có sẵn trong hệ thống Điều kiện trước Khách hàng đã mở ứng dụng hoặc trang web của nhà hàng hoặc dịch vụ cung cấp món ăn. Điều kiện sau Khách hàng đã xem được danh sách các món ăn có sẵn và có thể chọn một hoặc nhiều món để đặt hàng hoặc xem chi tiết về mỗi món.
1 Khách hàng chọn chức năng Xem danh mục sản phẩm
3.Khách hàng có thể chọn một món cụ thể để xem thông tin chi tiết
2.Hệ thống hiển thị trang chính danh sách các món ăn
4.Hệ thống hiển thị thông tin sản phẩm
2.3.2.4:UC04-Tìm kiếm và lọc món ăn
Hình 2.3.2.04 Biểu đồ Usecase tìm kiếm và lọc sản phẩm
Tên use case Tìm kiếm và lọc sản phẩm
Mô tả chung Khi khách hàng muốn tìm kiếm hoặc lọc các món ăn theo các tiêu chí nhất định trong hệ thống Điều kiện trước Khách hàng đã ở trong danh mục Xem danh sách món ăn Điều kiện sau Khách hàng đã xem được danh sách món ăn sau khi dùng bộ lọc hoặc tìm kiếm
1 Chọn món ăn cần đánh giá
3.Khách hàng gửi đánh giá sản phẩm về nội dung hoặc theo mức độ
2.Hệ thống sẽ hiện ra trang đánh giá của sản phẩm
4.Hệ thống sẽ lưu đánh giá của khách hàng và hiển thị công khai trên trang thông tin món ăn
2.3.2.5:UC05- Đáng giá món ăn
Hình 2.3.2.05 Biểu đồ Usecase đánh giá món ăn Bảng đặc tả
Tên use case Đánh giá món ăn
Mô tả chung Khách hàng khi muốn đánh giá hoặc xem các đánh giá về món ăn Điều kiện trước Khách hàng đã mua hoặc sử dụng món ăn
Khách hàng có tài khoản trên web của cửa hàng Điều kiện sau Đánh giá của khách hàng được gửi và lưu trữ trong hệ thống. Được hiển thị công khai trên trang thông tin sản phẩm để người mua khác có thể tham khảo.
Cửa hàng hoặc nhà sản xuất có thể sử dụng đánh giá để cải thiện chất lượng sản phẩm và dịch vụ của họ.
1.Chọn món ăn cần đánh giá
3.Khách hàng gửi đánh giá sản phẩm về nội dung hoặc theo mức độ
2.Hệ thống sẽ hiện ra trang đánh giá của sản phẩm
4.Hệ thống sẽ lưu đánh giá của khách hàng và hiển thị công khai trên trang thông tin món ăn
2.3.2.6:UC06-Quản lý đặt món
Hình 2.3.2.06 Biểu đồ Usecase đặt món
Tên use case Đặt Món Ăn
Mô tả chung Khách hàng khi muốn đặt các món ăn có sẵn trong hệ thống Điều kiện trước Khách hàng đã mở ứng dụng hoặc trang web của nhà hàng hoặc dịch vụ cung cấp món ăn. Điều kiện sau Khách hàng đã chọn các món ăn mà họ muốn đặt
1.Khách hàng mở ứng dụng hoặc trang web của nhà hàng hoặc dịch vụ cung cấp món ăn
3.Khách hàng xem danh sách các món ăn
5.Khách hàng chọn món và đặt món
2.Hệ thống hiển thị giao diện đặt món ăn cho khách hàng
4.Hệ thống cung cấp danh sách các món ăn có sẵn để khách hàng chọn
6.Hệ thống hiển thị xác nhận đơn hàng cho khách hàng
2.3.2.7:UC07: Quản lý tài khoản cá nhân
Hình 2.3.2.08 Biểu đồ Usecase Quản lý tài khoản cá nhân.
Tên use case Quản lý cá nhân tài khoản
Mô tả chung Khách hàng muốn cập nhật thông tin cá nhân của mình trên hệ thống Điều kiện trước Khách hàng đã đăng nhập vào tài khoản của mình trên ứng dụng hoặc trang web. Điều kiện sau Thông tin cá nhân của khách hàng đã được cập nhật thành công trong hệ thống và có sẵn để sử dụng cho các mục đích khác nhau trong tương lai
1.Khách hàng truy cập vào trang quản lý tài khoản cá nhân.
3.Khách hàng chọn chức năng nhập thông tin chỉnh sửa thông tin cá nhân và bấm nút xác nhận.
2.Hệ thống hiển thị giao diện quản lý tài khoản cá nhân.
4.Hệ thống kiểm tra , xác nhận hợp lê Hệ thống thông báo chỉnh sửa thành công.Ngược lại, hệ thông báo không thành công.
2.3.2.09: UC08-Xem lịch sử đơn hàng
Hình 2.3.2.09 Biểu đồ Usecase Xem lịch sử Đơn Hàng.
Tên usecase Xem lịch sử đơn hàng
Mô tả chung Khách hàng chọn chức năng xem danh sách hóa đơn.Khách hàng có thể theo dõi trình trạng mua hàng Điều kiện sau Khách hàng đã thanh toán và theo theo dõi tình trạng đơn hàng
1 Khách hàng chọn chức năng xem lịch sử đơn hàng
3.Khách hàng chọn chức năng xem chi tiết đơn hàng.
5.Khách hàng cập nhật trạng thái đơn hàng và bấm nút xác nhận.
2 Hệ thống sẽ xác thực người dùng.Sau khi xác thục người dùng thành công và hiện ra tất cả các thông tin về trình trạng đơn hàng tương ứng.
4.Hệ thống sẽ hiển thị thông tin chi tiết đơn hàng gồm username, email và trạng thái đơn hàng tương ứng.
6.Hệ thống sẽ kiểm tra đơn hàng.Sau khi xác thực đơn hàng thành công, hệ thống thông báo cập nhật trạng thái đơn hàng thành công.
Hình 2.3.2.10 Biểu đồ Usecase quản lý thống kê.
Thiết kế cơ sỡ dữ liệu
Hình 3.1.1 Lược đồ quan hệ cơ sở dữ liệu
Tên cột Kiểu dữ liệu Kích cỡ Mô tả Ràng buộc
MaDanhMuc int Mã danh mục Primary key
TenDanhMuc nvarchar 100 Tên danh mục Not null
SlugDanhMuc nvarchar 100 Slug danh mục Not null
MoTa nvarchar max Mô tả Not null
Trangthai int Trạng thái Not null
Tên cột Kiểu dữ liệu Kích cỡ Mô tả Ràng buộc
MaMonAn int Mã món ăn Primary key
TenMonAn nvarchar 100 Tên món ăn Not null
SlugMonAn nvarchar 100 Slug món ăn Not null
HinhAnh nvarchar max Hình ảnh null
MoTa nvarchar max Mô tả Not null
SoLuong int Số lượng SoLuong=1, not null
GiaBan double Gía bán GiaBan>=0, not null
MaDanhMuc int Mã Danh mục Foreign key
Tên cột Kiểu dữ liệu Kích cỡ Mô tả Ràng buộc
MaDanhGia int Mã đánh giá Primary key
TenNguoiDanhGi a nvarchar 100 Tên người đánh giá
Email nvarchar 100 email Not null
NoiDung nvarchar max Nội dung Not null
MaMonAn int Mã món ăn Foreign key
MaTaiKhoan int Mã tài khoản Foreign key
Tên cột Kiểu dữ Kích cỡ Mô tả Ràng buộc liệu
MaCTDH int Mã chi tiết đơn hàng
MaMonAn int Mã món ăn Foreign Key
MaHoaDon int Mã hóa đơn Foreign Key
SoLuongBan int Số lượng bán SoLuongBan =1
ThanhTien double Thành tiền ThanhTien=SoLuongBan
Tên cột Kiểu dữ liệu Kích cỡ Mô tả Ràng buộc
MaHoaDon int Mã Hóa đơn Primary key
Ten nvarhar 100 Tên Not null
DiaChi nvarchar max Địa chỉ Not null
SDT nvarchar 100 Số điện thoại Not null
NgayTao DateTime Ngày tạo Not null
TrangThai int Trạng thái Not null
TongTien double Tổng tiền TongTien =0
MaTaiKhoan int Mã tài khoản Foreign key
Tên cột Kiểu dữ liệu Kích cỡ Mô tả Ràng buộc
MaTaiKhoan int Mã Hóa đơn Primary key
TenTaiKhoan nvarhar 200 Tên Not null
MatKhau nvarchar 100 Mật khẩu Not null
Email nvarchar 100 email Not null
SDT nvarchar 100 Số điện thoại Not null
DiaChi nvarchar Địa chỉ Not null
MaPhanQuyen int Mã phân quyền
Tên cột Kiểu dữ liệu Kích cỡ Mô tả Ràng buộc
MaPhanQuyen int Mã Phân quyền
TenQuyen nvarhar 100 Tên quyền Not null
MoTa nvarchar max Mô tả Not null
Thiết kế giao diện
USECASE chức năng Đăng nhập
STT Tên trường Loại Mục tiêu Chú ý
1 Tên đăng nhập Textbox Nhập tên đăng nhập
3 Mật khẩu Textbox Nhập mật khẩu
5 Nhớ mật khẩu Label Ghi nhớ mật khẩu đã nhập
6 Đăng ký Label Hiển thị form tạo tài khoản
7 Facebook Button Đăng nhập bằng tài khoản Facebook
8 Twitter Button Đăng nhập bằng tài khoản Twitter
9 Google Button Đăng nhập bằng tài khoản Google
10 Đăng nhập Button Hiển thị trang chủ admin Đặc tả Giao diện Đăng Nhập
USECASE Chức năng Trang chủ
STT Tên trường Loại Mục tiêu Chú ý
2 Tên Textbox Nhập tên người dùng
4 Số điện thoại Textbox Nhập số điện thoại
5 Mật khẩu Textbox Nhập mật khẩu
6 Xác nhận mật khẩu Textbox Nhập lại để xác nhận mật khẩu
7 Đăng kí Button Hiển thị giao diện đăng nhập Đặc tả giao diện đăng ký
2.5.3 Giao diện trang chủ xem danh sách món ăn
USECASE Chức năng Danh mục món ăn
STT Tên trường Loại Mục tiêu Chú ý
1 Trang chủ List view Về giao diện chính
2 Danh mục món ăn List view Xem danh sách các món ăn
3 Thanh toán List view Thanh toán đặt hàng
4 Đánh giá List view Đánh giá món ăn
5 Thông tin tài khoản List view Chỉnh sửa thông tin tài khoản
6 Tìm kiếm món ăn Text box Tìm kiếm hoặc lọc món ăn
7 Danh mục món ăn List view Chọn loại món ăn
8 Giá món ăn Button Chọn món ăn theo giá cả
9 Chọn món ăn Button Chọn loại món ăn
10 Danh sách món ăn Image
11 Thêm giỏ hàng Button Chọn thêm mua món ăn
12 Tên món ăn Label Hiển thị tên món ăn
13 Địa chỉ , số điện thoại Label Hiển thị địa chỉ , số điện thoại
2.5.4 Giao diện xem chi tiết món ăn
USECASE Chức năng Chi tiết món ăn
STT Tên trường Loại Mục tiêu Chú ý
1 Tên món ăn Label Hiển thị tên món ăn
2 Danh mục Label Loại đồ ăn
4 Giá bán Label Xem giá cả món ăn
5 Trạng thái Label Xen món ăn còn hàng hay không
6 Mức độ Sao Checkboxlist Xem mức độ món ăn
7 Chi tiết món ăn Label Gửi đánh giá cho hệ thống
8 Số lượng món ăn Number Đặt món ăn theo số lượng
12 Tìm kiếm Textbox Tìm kiếm món ăn
13 Danh mục món ăn List view Xem những loại món khác
14 Món ăn khác List view Xem những món ăn khác
15 Thêm vào giỏ hàng Button Chọn mua món ăn
2.5.5 Giao diện đánh giá món ăn
USECASE Chức năng Đánh giá
STT Tên trường Loại Mục tiêu Chú ý
1 Đánh giá món ăn Label Hiển thị giao diện đánh giá
2 Tên Text box Nhập tên người dùng
4 Thêm bình luận Text box Bình luận sản phẩm
5 Đánh giá Sao Checkboxlist Đánh giá mức độ món ăn
6 Bình luận Label Xem những bình luận khác
7 Gửi đánh giá Button Gửi đánh giá cho hệ thống
8 Tên món ăn Label Hiển thị tên món ăn
2.5.6 Giao diện Quản lý đặt món
USECASE Chức năng Quản lý đặt món
STT Tên trường Loại Mục tiêu Chú ý
1 Giỏ hàng button Hiển thị giao diện giỏ hàng
2 + button Gia tăng số lượng món
3 - button Giảm số lượng món
5 Nhập phiếu giảm giá textbox Nhập mã giảm giá
6 Phiếu giảm giá button Them phiếu giảm giá
7 Tổng số label Hiển thị tổng số lượng, đơn giá đã mua
8 Thanh toán button Thanh toán sản phẩm
2.5.7 Giao diện quản lý tài khoản cá nhân
USECASE Chức năng Quản lý tài khoản cá nhân
STT Tên trường Loại Mục tiêu Chú ý
1 Thông tin tài khoản button Hiển thị giao diện quản lý thông tin tài khoản
1 Thay đổi ảnh đại button diện
2 Tên Đăng Nhập Textbox Nhập tên đăng nhập
3 Mật khẩu Textbox Nhập Mật khẩu
4 Xác nhận mật khẩu Textbox Nhập xác nhận lại Mật khẩu
5 Số điện thoại Textbox Nhập số điện thoại
7 Địa chỉ Textbox Nhập địa chỉ
8 lưu button Lưu lại thông tin người dùng
2.5.8 Giao diện xem chi tiết đơn hàng
STT Tên trường Loại Mục tiêu Chú ý
1 Tên món ăn , ghi chú , giá bán , số lượng
Tabel Hiển thị thông tin đặt món
2 Nội dung thông tin : Tabel Hiển thị nội dung thông tin đặt
Tên món ăn , Ghi chú , Giá bán , Số lượng , Thành tiền món
USECASE Chức năng Thanh toán
STT Tên trường Loại Mục tiêu Chú ý
1 Thanh toán Label Hiển thị thanh toán
2 Trang chủ button Trở về trang giao diện chính.
3 Nhập địa chỉ nhận hàng label Hiển thị nội dung địa chỉ nhận hàng
4 Số điện thoại label Hiển thị thông tin tên người nhận hàng.
5 long Textbox Nhập tên người nhận hàng
6 email label Hiển thị thông tin email
7 example@gmail.com Textbox Nhập email nhận hàng
8 Địa chỉ cụ thể label Nhập địa chỉ cụ thể
9 Quảng nam Textbox Nhập địa chỉ cụ thể nhận hàng
10 Tạo mới đơn hàng Checkbox Lưu thông tin đơn hàng
11 Tổng tiền thanh toán label Hiển thị các thông tin món ăn và số tiền cần thanh toán.
12 Chọn hình thức thanh toán
Checkbox Chọn hình thức thanh toán
13 Xác nhận thanh toán Button Xác nhận thanh toán
USECASE Chức năng Trang quản trị
STT Tên trường Loại Mục tiêu Chú ý
1 Trang Quản trị List view Về giao diện chính
2 Quản lý danh mục List view Xem danh sách danh mục
3 Quản lý món ăn List view Xem danh sách món ăn
4 Quản lý thành viên List view Xem danh sách các thành viên
5 Quản lý hóa đơn List view Xem danh sách các hóa đơn
6 Quản lý đánh giá Text box Xem danh sách các đánh giá
7 Quản lý thống kê List view Quản lý các thông tin thống kê
8 Hình ảnh Imagebutton Hiển thị tài khoản
9 Trang quản trị label Hiển thị trang quản trị
2.5.11 Giao diện quản lý đánh giá
STT Tên trường Loại Mục tiêu Chú ý
1 Danh sách đánh giá label Hiển thị nội dung
2 # label Hiển thị nội dung
3 Tên người đánh giá label Hiển thị người đánh giá
4 Nội dung label Hiển thị nội dung đánh giá
5 xóa button Nhấn xóa nội dung
6 Nguyễn thành long Text box Hiển thị danh sách người đánh giá
2.5.12: Giao diện quản lý thống kê
USECASE Chức năng Quản lý thống kê
STT Tên trường Loại Mục tiêu Chú ý
Textbox Nhập thông tin cần thống kê
2 Số lượng món ăn nhiều nhất label Hiển thị nội dung cần thống kê
3 Phở bò label Hiển thị các thông tin món ăn thông kê theo số lượng
2.5.13 Giao diện quản lý danh mục
2.5.13.1 Giao diện trang quản lý danh mục
USECASE Chức năng Danh sách danh mục
STT Tên trường Loại Mục tiêu Chú ý
1 Thêm danh mục button Hiển thị form thêm danh mục
2 Tìm kiếm Textbox Nhập thông tin cần tìm
3 Icon Button Hiển thị thông tin cần tìm
5 Tên danh mục Label Hiển thị danh mục
6 Nội dung Label Hiển thị Nội dung
2.5.13.2 Giao diện thêm mới danh mục
USECASE Chức năng Thêm danh mục
STT Tên trường Loại Mục tiêu Chú ý
1 Tên danh mục Textbox Nhập tên danh mục cần thêm
2 Mô tả danh mục Textbox Nhập mô tả danh mục cần thêm
3 Thêm mới Button Hiển thị form danh sách danh mục đã thêm mới
4 Làm mới Button Làm mới lại form thêm danh sách
2.5.13.3 Giao diện cập nhật danh mục
USECASE Chức năng Cập nhật danh mục
STT Tên trường Loại Mục tiêu Chú ý
1 Tên danh mục Textbox Sửa tên danh mục cần cập nhật
2 Mô tả danh mục Textbox Sửa mô tả danh mục cần cập nhật
3 Cập nhật Button Hiển thị form danh sách danh mục đã cập nhật
4 Làm mới Button Làm mới lại form thêm danh sách
2.5.14:Giao diện quản lý món ăn
2.5.14.1:Giao diện trang quản lý món ăn
USECASE Chức năng Danh sách món ăn
STT Tên trường Loại Mục tiêu Chú ý
1 Thêm danh mục button Hiển thị form thêm món ăn
2 Tìm kiếm Textbox Nhập thông tin cần tìm
3 Icon Button Hiển thị thông tin cần tìm
5 Tên món ăn Label Hiển thị món ăn
6 Hình ảnh Image Hiển thị hình ảnh
7 Số lượng Label Hiển thị số lượng
8 Giá bán Label Hiển thị giá bán
9 Mô tả Label Hiển thị mô tả
10 Danh mục Label Hiển thị danh mục
11 Trạng thái Button Thay đổi nội dung thực hiện
2.5.14.2 Giao diện thêm mới món ăn
USECASE Chức năng Thêm món ăn
STT Tên trường Loại Mục tiêu Chú ý
1 Tên món ăn Textbox Nhập món ăn
2 ảnh File Chọn ảnh trong file
3 Số lượng Textbox Nhập số lượng
4 Giá bán Textbox Nhập giá bán
5 Mô tả Textbox Nhập mô tả
6 Danh mục Textbox Nhập danh mục
7 thêm mới Button Hiển thị form danh sách món ăn đã thêm mới
8 Làm mới Button Làm mới lại form thêm món ăn
2.5.14.3 Giao diện cập nhật món ăn
USECASE Chức năng Cập nhât món ăn
STT Tên trường Loại Mục tiêu Chú ý
1 Tên món ăn Textbox Sửa món ăn
2 ảnh File Chọn lại ảnh trong file
3 Số lượng Textbox Sửa số lượng
4 Giá bán Textbox Sửa giá bán
5 Mô tả Textbox Sửa mô tả
6 Danh mục Textbox Sửa danh mục
7 Cập nhật Button Hiển thị form danh sách món ăn đã cập nhật
8 Làm mới Button Làm mới lại form cập nhật món ăn
2.5.15 Giao diện quản lý đơn hàng
USECASE Chức năng Danh sách hóa đơn
STT Tên trường Loại Mục tiêu Chú ý
2 Tìm kiếm Textbox Nhập thông tin cần tìm
3 Icon Button Hiển thị thông tin cần tìm
5 Mã hóa đơn Label Hiển thị mã hóa đơn
6 Địa chỉ Label Hiển thị địa chỉ
7 SDT Label Hiển thị số điện thoại
8 Ngày tạo Label Hiển thị ngày tạo hóa đơn
9 Trạng thái Button Thay đổi nội dung thực thiện
10 Xóa Button Thực hiên xóa lớp đó
HÀNH VÀ CÀI ĐẶT (IMPLEMNT AND SETTING )
Các công cụ cài đặt
C# (hay C sharp) là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội ngũ kỹ sư của Microsoft vào năm 2000 C# là ngôn ngữ lập trình hiện đại, hướng đối tượng và được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java.
Trong các ứng dụng Windows truyền thống, mã nguồn chương trình được biên dịch trực tiếp thành mã thực thi của hệ điều hành.
Trong các ứng dụng sử dụng NET Framework, mã nguồn chương trình (C#,VB.NET) được biên dịch thành mã ngôn ngữ trung gian MSIL (Microsoft intermediate language).
Sau đó mã này được biên dịch bởi Common Language Runtime (CLR) để trở thành mã thực thi của hệ điều hành Hình bên dưới thể hiện quá trình chuyển đổi MSIL code thành native code.
C# loại bỏ sự phức tạp tồn tại trong ngôn ngữ Java và C++, để trở thành một ngôn ngữ đơn giản.
C# sở hữu một lượng cộng đồng người dùng trực tuyến vô cùng đông đảo, sẵn sàng hỗ trợ bạn bất cứ lúc nào gặp khó khăn trong công việc.
Với những ai có ý định chuyển hướng hay theo đuổi lập trình game, đặc biệt là Unity game, thì đừng nên bỏ qua C# đấy!
Không những thế, bạn còn có thể sử dụng C# để xây dựng nên một ứng dụng vận hành trên cả Android lẫn iOS chỉ với sự hỗ trợ của Xamarin.
Là ngôn ngữ được chính Microsoft xây dựng và phát triển, thế nên, C# sẽ không ngừng được nâng cấp và tích hợp những tính năng mới, hỗ trợ tối ưu cho các công việc lập trình.
Là một ngôn ngữ phổ biến thứ tư trên khắp thế giới, nên cơ hội việc làm cho ngôn ngữ C# luôn rộng mở và với mức thu nhập vô cùng hấp dẫn.
Cung cấp các đặc trưng của lập trình hướng thành phần, phổ biến với Property, sự kiện và cả Attribute.
Phát triển ứng dụng desktop: C# thường được sử dụng để phát triển ứng dụng desktop thông qua Windows Forms hoặc WPF (Windows Presentation Foundation).Điều này cho phép lập trình viên xây dựng các ứng dụng giao diện người dùng đa dạng như trình quản lý tệp, ứng dụng văn phòng, và các ứng dụng đồ họa.
Phát triển ứng dụng web: C# có thể được sử dụng để phát triển các ứng dụng web thông qua ASP.NET và ASP.NET Core Cả hai framework này cho phép xây dựng các ứng dụng web động mạnh mẽ, từ các trang web đơn giản đến các ứng dụng web phức tạp.
Phát triển ứng dụng di động: Với Xamarin, một framework cho phép phát triển ứng dụng di động đa nền tảng, lập trình viên có thể sử dụng C# để phát triển ứng dụng cho iOS và Android.
Phát triển game: C# cũng được sử dụng rộng rãi trong việc phát triển game, đặc biệt là thông qua Unity Engine, một trong những công cụ phát triển game phổ biến nhất hiện nay.
Phát triển ứng dụng dịch vụ và hệ thống phân tán: C# cung cấp hỗ trợ mạnh mẽ cho việc phát triển các dịch vụ và hệ thống phân tán thông qua ASP.NET Web API, WCF (Windows Communication Foundation), và các công nghệ khác.
Phát triển ứng dụng IoT và nhúng: C# cũng có thể được sử dụng để phát triển các ứng dụng cho Internet of Things (IoT) và các thiết bị nhúng thông qua NET Core và NET Micro Framework.
3.1.2 TỔNG QUAN VỀ ENTITY FRAMEWORK 6 VÀ MÔ HÌNH MVC Giới thiệu
Entity Framework là một công cụ quan trọng trong lĩnh vực phát triển ứng dụng Nó cung cấp một cách tiếp cận tiện lợi và linh hoạt để tương tác với cơ sở dữ liệu, cho phép nhà phát triển tập trung vào việc xây dựng logic kinh doanh hơn là quản lý trực tiếp các truy vấn SQL
Tính năng của entity framework 6:
ORM (Object-Relational Mapping): Entity Framework 6 cho phép ánh xạ các đối tượng trong ứng dụng NET vào cơ sở dữ liệu, tự động thực hiện các truy vấn và cập nhật dữ liệu, giúp giảm thiểu việc phải viết câu lệnh SQL thủ công.
Code First Development: Entity Framework 6 hỗ trợ phát triển theo mô hình Code First, cho phép bạn định nghĩa các đối tượng C# đầu tiên và sau đó tạo cơ sở dữ liệu tương ứng từ các đối tượng này.
Model First Development: Ngoài ra, bạn cũng có thể sử dụng Model First Development, trong đó bạn có thể thiết kế mô hình cơ sở dữ liệu sử dụng Entity Framework Designer và sau đó sinh mã C# từ mô hình đó.