Đồ án: Xây dựng ứng dụng Android quản lý nhà hàng ẩm thực (ĐH Thủ Dầu Một)

Đồ án môn học phát triển ứng dụng Android cho nhà hàng ẩm thực. Xây dựng app mobile chuyên nghiệp, tiện lợi. Tải code, tài liệu tham khảo!

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

Đồ án môn học/Đồ án chuyên ngành

2023

49
1
0

Phí lưu trữ

30 Point

Tóm tắt

I. Tổng quan đồ án ứng dụng android app mobile nhà hàng ẩm thực

Sự phát triển của công nghệ thông tin đã thay đổi bộ mặt của nhiều ngành, bao gồm cả lĩnh vực ẩm thực. Đồ án môn học đồ án chuyên ngành phát triển xây dựng ứng dụng android app mobile nhà hàng ẩm thực ra đời như một giải pháp tất yếu, đáp ứng nhu cầu quản lý chuyên nghiệp trong bối cảnh các nhà hàng, quán ăn ngày càng mở rộng quy mô. Nghiên cứu được thực hiện bởi nhóm sinh viên Nguyễn Quốc Đạt, Nguyễn Võ Hoàng Nam và Lê Tuấn Anh tại Trường Đại học Thủ Dầu Một, dưới sự hướng dẫn của ThS. Nguyễn Hữu Vĩnh. Đề tài tập trung vào việc áp dụng kiến thức về ngôn ngữ lập trình Java và môi trường phát triển Android Studio để xây dựng một hệ thống quản lý nhà hàng hiệu quả. Mục tiêu cốt lõi của đồ án là tự động hóa các quy trình thủ công, từ gọi món, thanh toán đến quản lý nhân viên và thống kê doanh thu. Việc chuyển đổi từ phương pháp quản lý truyền thống bằng giấy tờ sang một app mobile nhà hàng không chỉ giúp tiết kiệm thời gian, chi phí mà còn nâng cao đáng kể hiệu suất làm việc của nhân viên và trải nghiệm của khách hàng. Ứng dụng này hướng đến đối tượng là các nhà hàng, quán ăn quy mô vừa và nhỏ, nơi việc đầu tư vào các hệ thống phần mềm đắt đỏ gặp nhiều rào cản. Bằng cách tận dụng các thiết bị di động phổ biến, ứng dụng android này mang lại một giải pháp công nghệ dễ tiếp cận, tối ưu hóa hoạt động kinh doanh và tạo ra lợi thế cạnh tranh mạnh mẽ trong thị trường ẩm thực năng động hiện nay. Đồ án trình bày chi tiết các bước thực hiện, từ khảo sát thực tế, phân tích yêu cầu, thiết kế cơ sở dữ liệu, đến xây dựng và kiểm thử phần mềm.

1.1. Bối cảnh và sự cần thiết của app mobile quản lý nhà hàng

Trong bối cảnh xã hội phát triển, quy mô các nhà hàng, quán ăn ngày càng lớn mạnh, dẫn đến việc quản lý thủ công trở nên phức tạp và thiếu hiệu quả. Việc sử dụng sổ sách, giấy tờ để ghi chép order, tính toán hóa đơn hay quản lý nhân sự tiềm ẩn nhiều sai sót, tốn kém thời gian và nhân lực. Báo cáo đồ án chỉ ra rằng, việc tìm kiếm thông tin món ăn, hóa đơn cũ là một thách thức lớn với phương pháp truyền thống. Nhận thấy sự phổ biến của điện thoại thông minh chạy hệ điều hành Android và hạ tầng mạng Wifi, 3G/4G ngày càng rẻ, việc xây dựng ứng dụng Android để hỗ trợ nghiệp vụ quản lý là một yêu cầu cấp thiết. Một app mobile nhà hàng có thể giải quyết các vấn đề này bằng cách số hóa toàn bộ quy trình, giúp nhân viên thao tác nhanh hơn, chính xác hơn và nhà quản lý có cái nhìn tổng quan về hoạt động kinh doanh.

1.2. Mục tiêu và phạm vi của đồ án phát triển ứng dụng android

Mục tiêu chính của đồ án chuyên ngành này là xây dựng một phần mềm quản lý toàn diện cho nhà hàng ẩm thực trên nền tảng Android. Hệ thống phải giải quyết được các khuyết điểm của phương pháp quản lý cũ, mang lại tính chuyên nghiệp và hiệu quả. Phạm vi ứng dụng tập trung vào các nghiệp vụ cốt lõi: quản lý thực đơn (thêm, sửa, xóa món ăn), quản lý bàn ăn (đặt món, thanh toán), quản lý nhân viên (thêm, sửa, xóa, phân quyền), và quản lý thống kê (xem doanh thu, xuất hóa đơn). Đối tượng sử dụng chính của ứng dụng bao gồm Quản lý (Admin) với toàn quyền quản trị và các nhân viên (nhân viên chạy bàn, nhân viên đầu bếp) với các quyền hạn được phân chia rõ ràng. Đồ án không chỉ là một bài tập học thuật mà còn hướng đến việc tạo ra một sản phẩm có tính ứng dụng thực tiễn cao.

1.3. Lợi ích khi xây dựng ứng dụng cho nhà hàng ẩm thực

Việc triển khai ứng dụng android app mobile nhà hàng ẩm thực mang lại nhiều lợi ích vượt trội. Đầu tiên, nó giúp tiết kiệm đáng kể chi phí nhân lực, thời gian và vật chất so với quản lý thủ công. Thứ hai, hệ thống cho phép thống kê doanh thu một cách nhanh chóng và chính xác, giúp người quản lý dễ dàng nắm bắt tình hình kinh doanh và đưa ra các quyết định chiến lược. Thứ ba, ứng dụng tạo sự tiện dụng cho nhân viên, nâng cao hiệu suất làm việc và giảm thiểu sai sót trong quá trình gọi món và thanh toán. Cuối cùng, việc tự động hóa công tác quản lý tạo nên một hình ảnh chuyên nghiệp cho nhà hàng, cải thiện trải nghiệm và sự hài lòng của khách hàng. Đây là những giá trị cốt lõi mà đồ án hướng tới, chứng minh vai trò quan trọng của công nghệ trong ngành dịch vụ ăn uống.

II. Phân tích thách thức trong việc quản lý nhà hàng thủ công

Phương pháp quản lý nhà hàng truyền thống dựa trên sổ sách và ghi chép thủ công đang bộc lộ nhiều hạn chế nghiêm trọng trong môi trường kinh doanh hiện đại. Những thách thức này không chỉ làm giảm hiệu quả hoạt động mà còn ảnh hưởng trực tiếp đến doanh thu và sự hài lòng của khách hàng. Thách thức lớn nhất là sự thiếu chính xác và chậm trễ trong luồng thông tin. Khi nhân viên ghi order bằng giấy, thông tin có thể bị sai sót, chữ viết khó đọc, dẫn đến việc nhà bếp chế biến sai món. Quá trình chuyển order từ bàn của khách đến bếp cũng mất thời gian, đặc biệt vào giờ cao điểm, gây ra sự chậm trễ trong phục vụ. Đồ án ứng dụng android nhà hàng ẩm thực được đề xuất như một giải pháp để khắc phục những vấn đề này. Một vấn đề khác là khó khăn trong công tác quản lý thống kê. Việc tổng hợp doanh thu hàng ngày, hàng tháng từ hàng trăm hóa đơn viết tay là một công việc tốn nhiều công sức và dễ xảy ra nhầm lẫn. Nhà quản lý không thể có được số liệu tức thời để đánh giá hiệu quả kinh doanh hay xác định các món ăn bán chạy. Ngoài ra, việc lưu trữ và tra cứu thông tin hóa đơn, thông tin nhân viên, hay thực đơn cũng rất bất tiện. Các loại sổ sách chiếm nhiều không gian và việc tìm kiếm một thông tin cụ thể có thể mất hàng giờ đồng hồ. Những nhược điểm này làm giảm tính linh hoạt và khả năng phản ứng của nhà hàng trước những thay đổi của thị trường. Việc phát triển ứng dụng quản lý nhà hàng là cần thiết để xây dựng một hệ thống chuyên nghiệp hơn, giải quyết triệt để các khuyết điểm của hệ thống cũ.

2.1. Nhược điểm của phương pháp ghi chép giấy tờ truyền thống

Phương pháp quản lý bằng giấy tờ tồn tại nhiều nhược điểm cố hữu. Thứ nhất, nó đòi hỏi nhiều nhân viên để thực hiện các công việc ghi chép, lưu trữ và quản lý sổ sách. Thứ hai, nguy cơ sai sót do con người là rất cao, từ việc ghi sai tên món, số lượng, đến tính toán sai hóa đơn. Điều này không chỉ gây thất thoát tài chính mà còn làm giảm uy tín của nhà hàng. Thứ ba, việc lưu trữ thông tin về món ăn, nhân viên, thực đơn trên nhiều loại sổ sách khác nhau gây khó khăn trong việc đồng bộ và quản lý. Theo khảo sát thực tế được nêu trong đồ án, đây là những rào cản lớn khiến các quán ăn quy mô vừa và nhỏ khó tiếp cận các phương pháp quản lý hiệu quả.

2.2. Khó khăn trong việc tra cứu thống kê và quản lý nhân sự

Một trong những khó khăn lớn nhất của quản lý thủ công là việc tra cứu và thống kê. Khi cần tìm lại một hóa đơn cũ hoặc thống kê doanh thu theo ngày, người quản lý phải mất rất nhiều thời gian để lật giở sổ sách. Việc thống kê doanh thu và phân tích dữ liệu gần như không thể thực hiện một cách hiệu quả. Tương tự, quản lý nhân viên cũng gặp nhiều bất cập. Thông tin nhân viên, lịch làm việc, tính lương đều được thực hiện thủ công, dễ gây nhầm lẫn và thiếu minh bạch. Một app mobile nhà hàng với cơ sở dữ liệu tập trung sẽ giải quyết triệt để vấn đề này, cho phép truy xuất thông tin và tạo báo cáo chỉ trong vài cú nhấp chuột.

III. Cách chọn công nghệ xây dựng đồ án app mobile nhà hàng

Việc lựa chọn công nghệ phù hợp là yếu tố quyết định đến sự thành công của đồ án ứng dụng android nhà hàng ẩm thực. Nhóm phát triển đã tiến hành phân tích kỹ lưỡng để chọn ra một bộ công cụ tối ưu, vừa đáp ứng yêu cầu kỹ thuật, vừa đảm bảo tính khả thi và hiệu quả. Nền tảng được lựa chọn là hệ điều hành Android, một quyết định chiến lược dựa trên sự phổ biến rộng rãi của nó. Android chiếm thị phần lớn trên thị trường thiết bị di động, giúp ứng dụng có khả năng tiếp cận một lượng lớn người dùng tiềm năng, từ nhân viên đến quản lý. Môi trường phát triển tích hợp (IDE) chính thức được sử dụng là Android Studio. Công cụ này cung cấp một bộ tính năng mạnh mẽ, từ trình soạn thảo mã thông minh, trình gỡ lỗi, đến hệ thống xây dựng linh hoạt và trình giả lập nhanh, giúp tối ưu hóa toàn bộ quy trình xây dựng ứng dụng Android. Về ngôn ngữ lập trình, ngôn ngữ lập trình Java được chọn làm ngôn ngữ chính. Java là một ngôn ngữ lập trình hướng đối tượng, mạnh mẽ, bảo mật và có một cộng đồng hỗ trợ khổng lồ. Sự quen thuộc và tính ổn định của Java làm cho nó trở thành lựa chọn lý tưởng cho việc phát triển các ứng dụng Android phức tạp. Để quản lý dữ liệu, đồ án đã sử dụng SQLite. Đây là một hệ thống quản lý cơ sở dữ liệu SQL mã nguồn mở, gọn nhẹ và được tích hợp sẵn trên các thiết bị Android. Ưu điểm của SQLite là không cần cài đặt hay cấu hình máy chủ, dữ liệu được lưu trữ trong một tệp duy nhất, rất phù hợp cho các ứng dụng di động cần hoạt động độc lập và hiệu quả.

3.1. Lý do chọn hệ điều hành Android và Android Studio IDE

Hệ điều hành Android được chọn vì tính chất mã nguồn mở và khả năng tùy biến cao. Điều này cho phép các nhà phát triển tự do sáng tạo mà không bị ràng buộc. Hơn nữa, sự đa dạng của các thiết bị Android từ phân khúc bình dân đến cao cấp giúp ứng dụng dễ dàng được triển khai rộng rãi. Android Studio IDE là công cụ được Google đề xuất, cung cấp môi trường phát triển toàn diện. Nó tích hợp sẵn các công cụ cần thiết để thiết kế giao diện, viết mã, kiểm thử và đóng gói ứng dụng, giúp đẩy nhanh tiến độ và đảm bảo chất lượng sản phẩm cuối cùng.

3.2. Vai trò của ngôn ngữ lập trình Java trong phát triển app

Ngôn ngữ lập trình Java đóng vai trò xương sống trong việc xây dựng logic cho ứng dụng. Với cú pháp quen thuộc (tương tự C++ nhưng loại bỏ các yếu tố phức tạp như con trỏ), Java giúp các lập trình viên dễ dàng tiếp cận và phát triển. Tính hướng đối tượng của Java cho phép cấu trúc mã nguồn một cách rõ ràng, dễ bảo trì và mở rộng. Trong đồ án này, Java được sử dụng để xử lý các sự kiện người dùng, tương tác với cơ sở dữ liệu SQLite, và thực hiện các nghiệp vụ quản lý phức tạp như tính toán hóa đơn hay tạo báo cáo thống kê.

3.3. Sử dụng SQLite để thiết kế cơ sở dữ liệu CSDL gọn nhẹ

Đối với một app mobile nhà hàng, việc có một hệ thống lưu trữ dữ liệu hiệu quả tại chỗ là rất quan trọng. SQLite đáp ứng hoàn hảo yêu cầu này. Nó là một cơ sở dữ liệu quan hệ nhỏ gọn, không yêu cầu một tiến trình máy chủ riêng biệt. Dữ liệu được lưu trực tiếp trên thiết bị, giúp ứng dụng hoạt động nhanh chóng và có thể truy cập dữ liệu ngay cả khi không có kết nối mạng. Trong đồ án, SQLite được dùng để thiết kế CSDL lưu trữ toàn bộ thông tin về nhân viên, bàn ăn, thực đơn, đơn đặt hàng và chi tiết đơn hàng, đảm bảo tính toàn vẹn và bảo mật cho dữ liệu của nhà hàng.

IV. Quy trình phân tích và thiết kế hệ thống app quản lý nhà hàng

Quy trình phân tích và thiết kế hệ thống là giai đoạn nền tảng, định hình cấu trúc và chức năng cho đồ án ứng dụng android nhà hàng ẩm thực. Giai đoạn này được thực hiện một cách bài bản, bắt đầu từ việc xác định yêu cầu hệ thống đến việc mô hình hóa và thiết kế chi tiết. Đầu tiên, nhóm nghiên cứu đã tiến hành phân tích yêu cầu, chia thành hai loại: yêu cầu chức năng và yêu cầu phi chức năng. Yêu cầu chức năng xác định các tác vụ cụ thể mà hệ thống phải thực hiện, ví dụ như quản lý nhân viên, quản lý thực đơn, thanh toán. Yêu cầu phi chức năng đề cập đến các tiêu chí về hiệu suất, bảo mật và trải nghiệm người dùng, chẳng hạn như quá trình đăng nhập phải nhanh chóng, giao diện đẹp mắt, và cơ sở dữ liệu có khả năng lưu trữ lớn. Tiếp theo, hệ thống được mô hình hóa bằng các sơ đồ trực quan. Sơ đồ Usecase được sử dụng để mô tả sự tương tác giữa các tác nhân (Actor) như Admin, Nhân viên chạy bàn, Nhân viên đầu bếp với các chức năng của hệ thống. Ví dụ, Actor Admin có quyền truy cập tất cả các chức năng, trong khi Nhân viên chạy bàn chỉ có thể quản lý bàn và thực đơn. Các sơ đồ phân rã chức năng được xây dựng để chi tiết hóa từng nghiệp vụ, giúp làm rõ luồng hoạt động của ứng dụng. Cuối cùng là giai đoạn thiết kế cơ sở dữ liệu. Dựa trên các phân tích nghiệp vụ, một cấu trúc CSDL tối ưu đã được thiết kế trên SQLite. Các bảng dữ liệu chính bao gồm Bảng Nhân viên, Bảng Bàn, Bảng Món, Bảng Đơn Đặt, và các bảng liên quan khác. Việc thiết kế cẩn thận các mối quan hệ giữa các bảng đảm bảo dữ liệu được lưu trữ nhất quán và không trùng lặp.

4.1. Xác định yêu cầu chức năng cho Admin và nhân viên

Yêu cầu chức năng được xác định rõ ràng cho từng đối tượng người dùng. Admin (Quản lý) có toàn quyền, bao gồm thêm/xóa tài khoản nhân viên, xem thống kê doanh thu chi tiết, và quản lý tất cả các chức năng khác. Nhân viên chạy bàn có quyền thực hiện các chức năng như thêm/xóa món ăn vào thực đơn, quản lý trạng thái bàn ăn và thực hiện thanh toán hóa đơn. Nhân viên đầu bếp chủ yếu tương tác với chức năng quản lý thực đơn để cập nhật các món ăn mới. Việc phân quyền rõ ràng này giúp đảm bảo an ninh hệ thống và tối ưu hóa quy trình làm việc cho từng vị trí.

4.2. Mô hình hóa hệ thống bằng sơ đồ Usecase và Class Diagram

Mô hình hóa là một bước quan trọng để trực quan hóa kiến trúc hệ thống. Sơ đồ Usecase tổng quan đã được vẽ để thể hiện mối quan hệ giữa các Actor và các chức năng chính. Ngoài ra, Sơ đồ Class Diagram cũng được xây dựng để mô tả các lớp đối tượng trong hệ thống (như NhanVien, MonAn, DonDat), các thuộc tính của chúng và mối quan hệ kế thừa, liên kết giữa chúng. Những sơ đồ này không chỉ giúp đội ngũ phát triển có một cái nhìn thống nhất về hệ thống mà còn là tài liệu quan trọng cho việc bảo trì và nâng cấp sau này.

4.3. Thiết kế chi tiết các bảng trong cơ sở dữ liệu SQLite

Việc thiết kế cơ sở dữ liệu là trái tim của hệ thống quản lý. Các bảng trong SQLite được thiết kế chi tiết với các trường dữ liệu, kiểu dữ liệu và khóa chính/khóa ngoại phù hợp. Các bảng chính bao gồm: Bảng Nhân viên (lưu thông tin cá nhân và quyền hạn), Bảng Bàn (lưu trạng thái bàn), Bảng Món (lưu tên, giá, loại món), Bảng Đơn Đặt (lưu thông tin chung của hóa đơn), và Bảng Chi Tiết Đơn Đặt (lưu các món ăn cụ thể trong từng hóa đơn). Cấu trúc này đảm bảo tính toàn vẹn dữ liệu và hỗ trợ hiệu quả cho việc truy vấn, báo cáo.

V. Minh họa kết quả xây dựng ứng dụng android quản lý nhà hàng

Sau quá trình phân tích, thiết kế và lập trình, đồ án ứng dụng android app mobile nhà hàng ẩm thực đã hoàn thành với một sản phẩm phần mềm hoàn chỉnh, đáp ứng các yêu cầu đề ra. Ứng dụng được xây dựng trên Android Studio sử dụng ngôn ngữ Java và cơ sở dữ liệu SQLite, có giao diện thân thiện, dễ sử dụng và đầy đủ các chức năng quản lý cần thiết. Phần minh họa phần mềm trong báo cáo đã trình bày chi tiết các màn hình giao diện và luồng hoạt động của ứng dụng, cho thấy kết quả thực tiễn của quá trình phát triển. Giao diện người dùng (UI) được thiết kế trực quan, với màn hình khởi động (Splash Screen), màn hình đăng nhập/đăng ký rõ ràng. Hệ thống phân quyền hoạt động hiệu quả: khi đăng nhập với tài khoản Admin, trang chủ sẽ hiển thị đầy đủ các module quản lý thống kê, quản lý bàn, quản lý thực đơn, và quản lý nhân viên. Ngược lại, tài khoản nhân viên chỉ có quyền truy cập vào các chức năng được cho phép. Chức năng quản lý thực đơn cho phép người dùng thêm, sửa, xóa các loại thực đơn và món ăn, kèm theo hình ảnh minh họa sinh động. Chức năng quản lý bàn ăn thể hiện trực quan trạng thái của từng bàn (trống hoặc đã có khách), hỗ trợ việc gọi món, nhập số lượng và thực hiện thanh toán hóa đơn một cách nhanh chóng. Sau khi thanh toán, hệ thống tự động tạo hóa đơn và lưu vào mục quản lý thống kê. Module quản lý thống kê là một điểm nhấn của ứng dụng, cho phép Admin xem danh sách hóa đơn, chi tiết đơn đặt, và đặc biệt là xem biểu đồ thống kê tổng doanh thu, cung cấp một cái nhìn tổng quan về hiệu quả kinh doanh.

5.1. Giao diện các chức năng chính đăng nhập và quản lý

Ứng dụng bắt đầu với giao diện đăng nhập và đăng ký chuyên nghiệp, cho phép người dùng tạo tài khoản mới với các thông tin chi tiết. Sau khi đăng nhập thành công, giao diện trang chủ sẽ thay đổi tùy theo quyền của người dùng. Trang chủ của Admin cung cấp quyền truy cập vào tất cả các module quản lý. Giao diện quản lý nhân viên cho phép Admin thực hiện các thao tác thêm, sửa, xóa thông tin nhân viên một cách dễ dàng. Các form nhập liệu được thiết kế rõ ràng, đảm bảo người dùng có thể thao tác một cách thuận tiện và chính xác.

5.2. Chức năng quản lý thực đơn quản lý bàn và thanh toán

Chức năng quản lý thực đơn cho phép thêm các loại menu và món ăn mới kèm hình ảnh, tên món, giá bán. Giao diện hiển thị các món ăn rất hấp dẫn và dễ dàng cho việc lựa chọn. Trong module quản lý bàn ăn, mỗi bàn được biểu thị bằng một icon, nhân viên có thể chọn bàn để đặt món, chọn số lượng và xác nhận. Khi khách hàng yêu cầu thanh toán, nhân viên chỉ cần chọn bàn và nhấn nút thanh toán. Hệ thống sẽ hiển thị chi tiết hóa đơn và xác nhận thanh toán thành công, đồng thời cập nhật trạng thái bàn về trạng thái trống.

5.3. Module thống kê doanh thu và quản lý nhân viên hiệu quả

Module quản lý thống kê là công cụ đắc lực cho người quản lý. Nó không chỉ liệt kê danh sách các hóa đơn đã thanh toán mà còn cho phép xuất hóa đơn chi tiết. Đặc biệt, tính năng hiển thị biểu đồ thống kê doanh thu giúp Admin nhanh chóng nắm bắt tình hình kinh doanh theo ngày, tháng hoặc năm. Bên cạnh đó, chức năng quản lý nhân viên cho phép Admin phân quyền, đặt lương và xem danh sách nhân viên trong hệ thống, giúp công tác quản lý nhân sự trở nên minh bạch và hiệu quả hơn bao giờ hết. Các tính năng này đã biến ứng dụng trở thành một công cụ quản lý toàn diện.

VI. Đánh giá và hướng phát triển tương lai cho app nhà hàng

Kết thúc quá trình thực hiện, đồ án môn học đồ án chuyên ngành phát triển xây dựng ứng dụng android app mobile nhà hàng ẩm thực đã đạt được những thành công nhất định, đồng thời cũng mở ra nhiều hướng phát triển tiềm năng trong tương lai. Về mặt đánh giá, phần mềm đã đáp ứng đầy đủ các yêu cầu cơ bản của một hệ thống quản lý nhà hàng. Ưu điểm nổi bật của ứng dụng là giao diện người dùng thân thiện, dễ sử dụng, giúp nhân viên mới có thể nhanh chóng làm quen. Việc truy cập cơ sở dữ liệu SQLite được thực hiện một cách dễ dàng và hiệu quả, đảm bảo hiệu suất hoạt động của ứng dụng. Các chức năng cốt lõi như quản lý thực đơn, quản lý bàn ăn, thanh toán hóa đơnthống kê doanh thu đều hoạt động ổn định. Tuy nhiên, bên cạnh những ưu điểm, đồ án cũng nhìn nhận một số nhược điểm. Do hạn chế về thời gian và kiến thức, phần mềm vẫn còn khá sơ sài, chưa tích hợp các tính năng nâng cao như quản lý kho, đặt bàn online cho khách hàng, hay tích hợp với các cổng thanh toán điện tử. Ngoài ra, có thể vẫn còn tồn tại những lỗi kỹ thuật chưa được phát hiện trong quá trình kiểm thử. Về hướng phát triển, tiềm năng của app mobile nhà hàng này là rất lớn. Trong tương lai, ứng dụng có thể được nâng cấp để trở thành một phần mềm quản lý chính thức, thương mại hóa. Các chức năng mới có thể được bổ sung bao gồm: module quản lý kho nguyên vật liệu, tính năng đặt bàn trực tuyến cho khách hàng, chương trình khách hàng thân thiết, và tích hợp thanh toán qua ví điện tử. Hơn nữa, có thể phát triển thêm một phiên bản ứng dụng dành riêng cho khách hàng để họ có thể xem thực đơn và đặt món ngay tại bàn bằng điện thoại của mình.

6.1. Tổng kết ưu điểm và nhược điểm của phần mềm đã xây dựng

Phần mềm đã thành công trong việc hiện thực hóa các mục tiêu đề ra, tạo ra một công cụ quản lý hiệu quả. Ưu điểm chính là giao diện trực quan, đáp ứng các nghiệp vụ cơ bản và có khả năng truy cập CSDL dễ dàng. Tuy nhiên, nhược điểm là phần mềm còn ở mức độ cơ bản, chưa có các chức năng nâng cao và có thể tồn tại lỗi tiềm ẩn. Nhóm tác giả cũng thừa nhận tiến trình làm việc còn khá chậm, ảnh hưởng đến phạm vi tính năng của sản phẩm cuối cùng. Việc nhận diện rõ ràng các điểm mạnh, yếu này là cơ sở quan trọng để cải tiến trong các phiên bản tiếp theo.

6.2. Tiềm năng nâng cấp và phát triển ứng dụng trong tương lai

Với nền tảng vững chắc đã xây dựng, ứng dụng android này có thể phát triển theo nhiều hướng. Một hướng quan trọng là mở rộng hệ sinh thái, bao gồm một ứng dụng cho khách hàng và một giao diện web cho quản lý cấp cao. Việc tích hợp các công nghệ mới như AI để gợi ý món ăn hoặc phân tích hành vi khách hàng cũng là một hướng đi đầy hứa hẹn. Ngoài ra, việc cải thiện hiệu suất, tối ưu hóa CSDL và tăng cường bảo mật sẽ là những nhiệm vụ cần thiết để biến đồ án này thành một sản phẩm thương mại hoàn chỉnh, đáp ứng nhu cầu ngày càng cao của thị trường F&B trong cuộc cách mạng công nghệ số.

11/09/2025

Trích đoạn nội dung tài liệu

Chương 1: Tổng quan  Chương 2: Cơ sở lý thuyết  Chương 3: Phân tích thiết kế hệ thống  Chương 4: Xây dựng hệ thống và các chức năn chương trình  Chương 5: Kết luận và hướng phát triển PAGE \* MERGEFORMAT 2 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2. Các khái niệm và cơ chế hoạt động 2.Công nghệ sử dụng 2. Hệ điều hành Android Android là một hệ điều hành có mã nguồn mở dựa trên nền tảng Linux được thiết kế dành riêng cho các thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng. Ban đầu, hệ điều này này được phát triển bởi công ty Android, với sự hỗ trợ tài chính từ Google, sau đó chính Google đã mua lại công ty này và tiếp tục phát triển Android trở thành một nền tảng hiệu quả hơn.

* Ưu điểm - Android có khả năng tuỳ biến cao, cho phép tùy ý chỉnh sửa mà không có sự can thiệp hay ràng buộc pháp lý từ Google - Android xuất hiện trên rất nhiều mẫu thiết bị từ phân khúc bình dân đến cao cấp, mang đến nhiều lựa chọn cho người dụng - Kho ứng dụng Google Play Store đồ sộ, nhiều ứng hữu ích - Giao diện thân thiện, dễ sử dụng * Nhược điểm - Do tính chất mã nguồn mở nên Android luôn có nguy cơ tiềm ẩn cao bị dính virus hoặc các phần mềm độc hại - Android có sự phân mảnh quá lớn do có mặt trên rất nhiều thiết bị khác nhau, gây nên một số khó khăn cho các nhà phát triển khi xây dựng ứng dụng mới - Không hỗ trợ cập nhật cho tất cả mọi thiết bị, do đó trong nhiều trường hợp, nếu muốn trải nghiệm phiên bản Android mới, người dùng phải mua thiết bị mới. Android Studio IDE Android Studio là IDE chính thức được sử dụng trong phát triển ứng dụng Android dựa trên IntelliJ IDEA. PAGE \* MERGEFORMAT 2 Chức năng chính của Android Studio là cung cấp các giao diện giúp người dùng có thể tạo các ứng dụng và xử lý các công cụ file phức tạp sau hậu trường. Ngôn ngữ lập trình được sử dụng trong Android Studio là Java và nó sẽ được cài đặt sẵn trên thiết bị của bạn.

Khi sử dụng Android Studio thì bạn chỉ cần viết, chỉnh sửa và lưu trữ chúng trên các dự án của mình và các file nằm trong dự án đó. Đồng thời, Android Studio còn cung cấp quyền truy cập vào Android SDK. Ngoài ra, bạn có thể xem Android Studio là đuôi cho code Java cho phép nó chạy trơn tru trên các thiết bị Android rồi tận dụng được lợi thế của phần cứng gốc. Bạn chỉ cần sử dụng ngôn ngữ lập trình Java để có thể viết chương trình, khi đó Android SDK sẽ có nhiệm vụ kết nối các phần này lại với nhau.

Ngôn ngữ lập trình Java Java được biết đến là ngôn ngữ lập trình bậc cao, hướng đối tượng và giúp bảo mật mạnh mẽ, và còn được định nghĩa là một Platform. Java được phát triển bởi Sun Microsystems, do James Gosling khởi xướng và ra mắt năm 1995. Java hoạt động trên rất nhiều nền tảng như Windows, Mac và các phiên bản khác nhau của UNIX. Tương tự C++, hướng đối tượng hoàn toàn.

Trong quá trình tạo ra một ngôn ngữ mới phục vụ cho mục đích chạy được trên nhiều nền tảng, các kỹ sư của Sun MicroSystem muốn tạo ra một ngôn ngữ dễ học và quen thuộc với đa số người lập trình. Vì vậy họ đã sử dụng lại các cú pháp của C và C+ +. Tuy nhiên, trong Java thao tác với con trỏ bị lược bỏ nhằm đảo bảo tính an toàn và dễ sử dụng hơn. Các thao tác overload, goto hay các cấu trúc như struct và union cũng được loại bỏ khỏi Java.

Tính đến năm 2019 Java là một trong những ngôn ngữ lập trình phổ biến nhất được sử dụng theo GitHub, đặc biệt cho các ứng dụng web máy khách- máy chủ, với 9 triệu nhà phát triển đã được báo cáo. SQLite SQLite là một cơ sở dữ liệu SQL mã nguồn mở, nó lưu trữ dữ liệu vào một tập tin văn bản trên một thiết bị. Nó mặc định đã được tích hợp trên thiết bị Android. Để truy cập dữ liệu này, bạn không cần phải thiết lập bất kỳ loại kết nối nào cho nó như JDBC, ODBC,.

Đặc điểm nổi bật của SQLite so với các DBMS khác là gọn, nhẹ, đơn giản, đặt biệt không cần mô hình server-client, không cần cài đặt, cấu hình hay khởi động nên không có khái niệm user, password hay quyền hạn trong SQLite Database. Dữ liệu cũng được lưu ở một file duy nhất. SQLite thường không được sử dụng với các hệ thống lớn nhưng với những hệ thống ở quy mô vùa và nhỏ thì SQLite không thua các DBMS khác về chức năng hay tốc độ. Vì không cần cài đặt hay cấu hình nên SQLite được sử dụng nhiều trong việc phát triển, thử nghiệm … vì tránh được những rắc rối trong quá trình cài đặt.Các thư viện và công cụ hỗ trợ 2.

MPAndroidChart MPAndroidChart là một thư viện biểu đồ mạnh mẽ và dễ sử dụng cho Android. Nó support việc vẽ biểu đồ, chia tỷ lệ và xử lí animations trong Chart.Luôn dùng trong việc thống kê biểu đồ chia cột doanh thu và tổng số lượng,.com/PhilJay/MPAndroidChart 2. CircleImageView CircleImageView là một thự viện tạo thành một hình ảnh ở khuôn hình tròn nhằm để tạo hình thiết kế cho đẹp mắt hơn.com/hdodenhof/CircleImageView PAGE \* MERGEFORMAT 2 2. Xác định yêu cầu 2.Yêu cầu hệ thống Do là ứng dụng đặt đồ ăn, phần mềm phải có 2 đối tượng người dùng chính là Quản lý (Admin) và nhân viên.

Bên cạnh đó, nhân viên sẽ được phân chia ra là Chạy bàn và đầu bếp. Các chức năng của mỗi đối tượng được liệt kê dưới đây: - Admin: Sẽ là vai trò toàn quyền trong việc quản lý các chức năng. Bên cạnh đó, có thể thêm và xóa tài khoản của các nhân viên trong quán ăn. Xem thống kê hóa đơn chi tiết.

- Nhân viên chạy bàn: Là người phục vụ chạy bàn quán ăn thì sẽ được thực thi các chức năng như sau: + Thêm, xóa các món ăn và thực đơn + Thêm, xóa các bàn ăn + Thanh toán món ăn - Nhân viên đầu bếp: Là người chế biến món ăn và sẽ thêm món ăn mới thì sẽ được thực thi chức năng: + Thêm, xóa các món ăn và thực đơn 2.Yêu cầu phi chức năng - Điện thoại sử dụng hệ điều hành Android phiên bản 4.0 trở lên - Có kết nối Internet - Quá trình đăng nhập diễn ra nhanh chóng - Database có khả năng lưu trữ thông tin của 10000 người dùng. - Tài khoản được đăng ký đúng chính xác nhất - Giao diện đẹp mắt PAGE \* MERGEFORMAT 2 CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 3. Bảng mô tả đối tượng – Usecase 3.Mô tả Actor STT Tên Actor Mô tả 1 Admin Là quản trị viên của hệ thống, có mọi quyền và thực hiện mọi chức năng 2 Nhân Viên chạy bàn Là người chạy bàn trong quán 3 Nhân Viên đầu bếp Là người chế biến món ăn trong quán Bảng 3. Mô Tả Actor 3.Mô tả Usecase STT Tên Usecase Mô tả 1 Quản lý bàn Actor admin, nhân viên chạy bàn thêm/xóa/sửa bàn 2 Quản lý thực đơn Các actor có thể thực thi thêm/xóa/sửa thực đơn và món ăn.

3 Quản lý nhân Actor admin là người có quyền Thêm/xóa/sửa viên thông tin nhân viên và cấp tài khoản cho nhân viên 4 Quản lý thống kê Actor admin là người có quyền vận hành quản lý thống kê bằng cách xem danh sách hóa đơn và tổng doanh thu qua ngày, tháng, năm 5 Xem lương Các actor có thể xem thông tin đã được trả lương Bảng 3.2 Mô tả Usecase PAGE \* MERGEFORMAT 2 3. Sơ đồ tổng quản Usecase Sơ đồ tổng quan về các chức năng của các Actor:  Đối với Admin thì Actor này có thể quản lý được tất cả các chức năng như: quản lý bàn, quản lý thực đơn, quản lý nhân viên, quản lý thống kê và xem lương.  Đối với nhân viên Chạy Bàn thì Actor này có thể quản lý được một số chức năng như: quản lý bàn, quản lý thực đơn, và xem lương.  Đối với nhân viên đầu bếp thì có thể quản lý được thực đơn và xem lương.

Sơ đồ phân rã chức năng Hình 3. Sơ đồ chức năng quản lý bàn Về chức năng quản lý bàn hệ thống sẽ phân quyền cho 2 Actor là Admin và nhân viên chạy bàn bằng cách đăng nhập tài khoản vào hệ thống để có thể: thêm, sửa, xóa các bàn, quản lý thực đơn và thanh toán hóa đơn cho khách PAGE \* MERGEFORMAT 2 Hình 3. Sơ đồ chức năng quản lý thực đơn Về chức năng quản lý thực đơn thì hệ thống sẽ phân quyền cho cả 3 Actor là Admin, nhân viên đầu bếp, nhân viên chạy bàn bằng cách đăng nhập vào tài khoản đã phân quyền của 3 Actor này. Với quản lý thực đơn thì cả 3 Actor này đều có thể thao tác như: thêm, xóa, sửa các thực đơn.

Và có thể quản lý được loại món như: thêm, sửa, xóa loại món ăn PAGE \* MERGEFORMAT 2 Hình 3. Sơ đồ chức năng quản lý thống kê Ở chức năng quản lý thông kê này thì chỉ có Actor Admin mới được thao tác ở trên nó. Để Admin có thể quản lý thống kê như:  Xem chi tiết đơn hàng  Xem biểu đồ thống kê doanh thu  Xuất hóa đơn  Xem danh sách hóa đơn PAGE \* MERGEFORMAT 2 Hình 3. Sơ đồ chức năng quản lý nhân viên Về phía chức năng quản lý nhân viên thì tương tự như chức năng thống kê, chức năng này chỉ phân quyền cho Admin thao tác bằng cách đăng nhập vào hệ thống bằng tài khoản được cấp.

Admin có thể quản lý nhân viện như:  Phân quyền nhân viên (nhân viên chạy bàn, nhân viên đầu bếp,.)  Thêm, xóa, sửa nhân viên  Đặt lương nhân viên  Xem danh sách các nhân viên trong hệ thống PAGE \* MERGEFORMAT 2 3. Sơ đồ Class Diagram Hình 3. Sơ đồ Class Diagram PAGE \* MERGEFORMAT 2 CHƯƠNG 4: XÂY DỰNG HỆ THỐNG VÀ CÁC CHỨC NĂNG CHO CHƯƠNG TRÌNH 4. Xây dựng hệ thống 4.1 Môi trường phát triển - Chương trình được phát triển trên môi trường Android Studio IDE.

- Ngôn ngữ Java.1 Công nghệ sử dụng SQLite: một cơ sở dữ liệu SQL mã nguồn mở, nó lưu trữ dữ liệu vào một tập tin văn bản trên một thiết bị 4. Cấu trúc chương trình 4. DTO (Data Transfer Object) Chứa các thực thể của dữ liệu phạm vi của thuộc tính Object, kèm theo các phương Get/Set. DTO PAGE \* MERGEFORMAT 2 4.

Database Cấu trúc để khởi tạo cơ sở dữ liệu Database Hình 4. Cấu trúc Database Hình 4. Khởi tạo Database theo phương thức SQLite 4.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ