I. Tổng quan về Đồ án Xây dựng E commerce Chuỗi Nhà hàng
Đồ án tốt nghiệp xây dựng e-commerce chuỗi nhà hàng là một dự án công nghệ thông tin tiên tiến được thực hiện bởi sinh viên Ngô Công An và Đào Xuân Thủy từ Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh (2016-2020). Dự án này tập trung vào việc phát triển hệ thống quản lý chuỗi nhà hàng hiện đại, kết hợp công nghệ microservices và cloud computing. Mục tiêu chính là xây dựng một nền tảng e-commerce toàn diện bao gồm website, ứng dụng mobile và hệ thống quản lý hoạt động. Dự án được hướng dẫn bởi Tiến sĩ Lê Vĩnh Thịnh, với thời gian thực hiện từ tháng 2 đến tháng 7 năm 2020.
1.1. Mục tiêu và Phạm vi Dự án
Mục tiêu dự án hướng tới việc xây dựng một hệ thống e-commerce toàn diện cho chuỗi nhà hàng. Hệ thống này bao gồm website bán hàng, ứng dụng mobile (Android và iOS), và công cụ quản lý hoạt động nhà hàng. Dự án sử dụng kiến trúc microservices để đảm bảo tính linh hoạt, khả năng mở rộng và độc lập trong quản lý các dịch vụ. Phạm vi dự án bao hồm phân tích nhu cầu, thiết kế hệ thống, phát triển chức năng bán hàng, quản lý kho hàng và tích hợp thanh toán trực tuyến.
1.2. Nhóm Nghiên cứu và Hướng dẫn
Dự án được thực hiện bởi hai sinh viên chuyên ngành Công nghệ Thông tin: Ngô Công An (MSSV: 16110002) và Đào Xuân Thủy (MSSV: 16110544). Cả hai sinh viên đều có nền tảng vững chắc về lập trình và thiết kế hệ thống. Dự án được hướng dẫn bởi Tiến sĩ Lê Vĩnh Thịnh, một chuyên gia có kinh nghiệm trong lĩnh vực kiến trúc phần mềm và quản lý chuỗi cung ứng.
II. Công nghệ và Kiến trúc Sử dụng
Dự án e-commerce chuỗi nhà hàng sử dụng các công nghệ hiện đại nhất để đảm bảo hiệu năng và khả năng mở rộng. Kiến trúc microservices là nền tảng chính, cho phép các dịch vụ hoạt động độc lập và giao tiếp thông qua RESTful APIs. Phía frontend, dự án sử dụng Angular và React Native để phát triển giao diện người dùng trên web và mobile. Phía backend được xây dựng với ASP.NET Core, một framework mạnh mẽ cho phát triển ứng dụng web. Để triển khai và quản lý hệ thống, dự án áp dụng Docker Engine cho containerization và Cloud Computing (Amazon Web Services, Heroku) cho hosted solutions.
2.1. Kiến trúc Microservices
Microservices architecture cho phép chia nhỏ ứng dụng thành các dịch vụ độc lập, mỗi dịch vụ chịu trách nhiệm cho một chức năng cụ thể. Điều này giúp tăng khả năng mở rộng và dễ dàng bảo trì. Trong dự án, load balancing được sử dụng để phân phối tải giữa các microservices. Authentication và authorization được triển khai để đảm bảo an toàn dữ liệu và kiểm soát quyền truy cập người dùng.
2.2. Công nghệ Frontend và Backend
Frontend được phát triển bằng Angular cho website và React Native cho ứng dụng mobile, cung cấp trải nghiệm người dùng mượt mà và responsive. Backend sử dụng ASP.NET Core kết hợp với RESTful APIs để xử lý logic kinh doanh. Socket.io được tích hợp để hỗ trợ real-time communication, cho phép cập nhật thông tin đơn hàng và thông báo tức thì cho khách hàng và nhân viên quản lý.
2.3. Triển khai và Cloud Computing
Docker Engine được sử dụng để containerize các microservices, đảm bảo consistency giữa môi trường phát triển và production. Amazon Web Services (AWS) và Heroku được lựa chọn làm nền tảng cloud hosting. Hệ thống được triển khai trên Ubuntu Virtual Private Server (VPS) với cấu hình tối ưu cho hiệu năng và bảo mật.
III. Quy trình Thực hiện và Lập kế hoạch
Dự án xây dựng e-commerce được thực hiện theo một kế hoạch chi tiết, từ tháng 2 đến tháng 7 năm 2020. Phase 1 tập trung vào phân tích nhu cầu và thiết kế use case. Phase 2 bao gồm thiết kế database và đặc tả use case chi tiết. Phases 3-11 dành cho phát triển các microservices, thiết kế giao diện người dùng và viết API. Mỗi phase là 1-2 tuần, đảm bảo tiến độ ổn định. Phase 12 tập trung vào tích hợp Socket.io cho tính năng real-time. Phase 13-14 dành cho cải tiến tính năng và triển khai cloud. Phase 15-16 là testing và fix bugs. Phase 17-18 hoàn thành báo cáo và chuẩn bị bảo vệ.
3.1. Giai đoạn Phân tích và Thiết kế
Giai đoạn 1-3 (Tháng 2-3) tập trung vào phân tích nhu cầu hệ thống và thiết kế kiến trúc. Nhóm thực hiện phân tích use case, xác định các tác nhân (agents) và chức năng. Tiếp theo là lập sequence diagrams, thiết kế database schema chi tiết. Các yêu cầu chức năng cho quản lý chuỗi nhà hàng, bao gồm quản lý kho hàng, bán hàng, và quản lý tài chính, được xác định rõ ràng.
3.2. Giai đoạn Phát triển và Triển khai
Giai đoạn 4-11 (Tháng 3-5) là phát triển các microservices và giao diện người dùng. Mỗi tuần, nhóm thiết kế màn hình, viết API, và ánh xạ API với giao diện. Giai đoạn 12-14 (Tháng 5) tích hợp Socket.io, cải tiến tính năng, và triển khai trên AWS, Heroku và Docker. Hệ thống được kiểm tra kỹ lưỡng để đảm bảo hoạt động ổn định.
3.3. Giai đoạn Testing và Hoàn thiện
Giai đoạn 15-16 (Tháng 6) dành cho demo hệ thống, testing các chức năng, và sửa lỗi phát sinh. Giai đoạn 17-18 hoàn thành báo cáo, chuẩn bị PowerPoint và các tài liệu cần thiết cho bảo vệ đồ án.
IV. Sản phẩm Cuối cùng và Ứng dụng
Dự án e-commerce chuỗi nhà hàng tạo ra ba sản phẩm chính: website e-commerce bán thực phẩm cho khách hàng cuối cùng, ứng dụng mobile hỗ trợ cả Android và iOS để khách hàng đặt hàng dễ dàng, và hệ thống quản lý hoạt động dành cho nhân viên quản lý chuỗi nhà hàng. Những sản phẩm này cung cấp một giải pháp toàn diện cho quản lý chuỗi nhà hàng hiện đại. Website và ứng dụng mobile tích hợp các tính năng như duyệt menu, đặt hàng, theo dõi đơn hàng, và thanh toán trực tuyến. Hệ thống quản lý backend cung cấp công cụ để theo dõi doanh số, quản lý hàng tồn kho, và phân tích dữ liệu kinh doanh.
4.1. Website E commerce
Website e-commerce được phát triển bằng Angular, cung cấp giao diện người dùng modern và responsive. Khách hàng có thể duyệt menu nhà hàng, xem thông tin sản phẩm, quản lý giỏ hàng, và thanh toán trực tuyến. Website hỗ trợ tìm kiếm và lọc sản phẩm theo danh mục, giá cả, và đánh giá. Hệ thống đánh giá cho phép khách hàng để lại nhận xét về các sản phẩm và dịch vụ.
4.2. Ứng dụng Mobile
Ứng dụng mobile được xây dựng bằng React Native, hỗ trợ cả iOS và Android. Ứng dụng cung cấp các tính năng tương tự website nhưng tối ưu cho thiết bị di động. Người dùng có thể nhận thông báo real-time về trạng thái đơn hàng, các khuyến mãi, và những món ăn mới. Push notifications được sử dụng để thông báo tức thì.
4.3. Hệ thống Quản lý Hoạt động
Hệ thống quản lý backend cung cấp bảng điều khiển (dashboard) cho quản lý viên xem tổng quan kinh doanh. Các tính năng bao gồm quản lý đơn hàng, quản lý kho hàng, quản lý nhân viên, và phân tích báo cáo doanh số. Hệ thống cho phép quản lý viên cấu hình menu, giá cả, và các chương trình khuyến mãi.