Tiểu luận môn phát triển ứng dụng di độngNHẬN XÉT VÀ CHẤM ĐIỂM CỦA GIẢNG VIÊN Họ và tên giảng viên: Nguyễn Hữu Vĩnh Đề tài: Xây dựng ứng dụng di động quản lý thu chi Nội dung nhận xét:
GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI
Tên đề tài
“Xây dựng ứng dụng di động quản lý thu chi”
Mục đích chọn đề tài
Xây dựng một ứng dụng dễ sử dụng với giao diện thân thiện, giúp người dùng ghi chép và truy xuất thông tin về các khoản thu chi hàng ngày một cách hiệu quả và mạnh mẽ.
Ý nghĩa đề tài
- Đơn giản hóa việc ghi chép, thay đổi hình thức ghi chép truyền thống trên giấy thành hình thức ghi chép hiện đại với công nghệ 4.0
- Đây là đề tài mang tính ứng dụng hỗ trợ việc thu ngân và báo cáo chi tiêu hàng ngày của người dùng.
- Xây dựng ứng dụng di động có khả năng tương thích với người dùng tốt.
CƠ SỞ LÝ THUYẾT
Bài toán
Ghi chép là quá trình thu thập và xử lý thông tin kinh tế, tài chính, bao gồm giá trị, hiện vật và thời gian lao động Quá trình này giúp lưu giữ các hoạt động chi tiêu hàng ngày của người dùng và tổng hợp kết quả thông qua các báo cáo chi tiết.
Ghi chép chi tiêu giúp người dùng theo dõi tình hình tài chính cá nhân, bao gồm thu nhập và chi phí Qua đó, người dùng có thể đánh giá và lập kế hoạch chi tiêu hợp lý cho tương lai.
Ghi chép đóng vai trò quan trọng trong cuộc sống hàng ngày, cung cấp thông tin cần thiết cho người dùng để đưa ra chiến lược và quyết định chi tiêu hợp lý Nếu thông tin ghi chép không chính xác, người dùng có thể mắc sai lầm trong quyết định, dẫn đến những khó khăn trong quản lý tài chính.
Hoạt động ghi chép thu chi hàng ngày đóng vai trò quan trọng trong việc quản lý tài chính cá nhân Nó không chỉ giúp người dùng theo dõi các khoản chi tiêu mà còn phản ánh các mục tiêu và phương hướng chi tiêu của mỗi cá nhân Việc này tuân theo quy luật khách quan và góp phần vào việc cải thiện tình hình tài chính của người dùng.
Hoạt động ghi chép thu chi giúp xác định nhu cầu huy động tiền chính xác, lựa chọn nguồn tiền và phương thức thanh toán phù hợp, từ đó bảo toàn và phát triển nguồn tài chính, nâng cao thu nhập cho người dùng.
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Xác định yêu cầu
3.1.1 Khảo sát nhu cầu thực tế
Khảo sát hiện trạng ứng dụng cho thấy, trong bối cảnh kinh tế phát triển và giao dịch ngày càng đa dạng, nhu cầu ghi chép giao dịch trở nên quan trọng hơn bao giờ hết đối với người dùng.
Qua khảo sát, chúng tôi nhận thấy rằng các ứng dụng ghi chép thu chi hiện có còn nhiều hạn chế và không phù hợp với nhiều loại hình khác nhau Vì vậy, chúng tôi quyết định phát triển một ứng dụng di động mới, nhằm mang lại trải nghiệm thao tác dễ dàng và linh hoạt cho người dùng.
Hình 3.1.2.1.1 Hệ thống các chức năng
Xây dựng cho các nhóm người sử dụng sau:
3.1.3 Yêu cầu phi chức năng
Ứng dụng tổ chức theo mô hình giống như một trang quản lý chi tiêu, với các chức năng và giao diện đơn giản, dễ sử dụng
- Phương án xây dựng ứng dụng
Phát triển ứng dụng dựa vào công nghệ Android Studio
Ngôn ngữ lập trình: Java
Hệ quản trị cơ sở dữ liệu: SQLite
Biểu đồ Usecase
Một actor hay tác nhân ngoài là một vai trò của một hay nhiều người hay vật thể trong sự tương tác với hệ thống.
STT Tác nhân Mô tả
1 Người dùng Là người sử dụng hệ thống, có quyền truy cập vào hệ thống
Bảng 3.3.1.1.1.1 Danh sách các Actor
Hình 3.3.2.1.1 Biểu đồ hệ thống
1 Nhập thu Cho phép người sử dụng nhập thu
2 Nhập chi tiêu Cho phép người sử dụng nhập chi tiêu Người dùng
3 Xem lịch sử Cho phép người sử dụng xem lịch sử thu chi
4 Cài đặt Cho phép người sử dụng có thể chỉnh sửa thiết lập ứng dụng Người dùng
5 Xóa lịch sử Cho phép người sử dụng có thể xóa dòng lịch sử Người dụng
6 Sửa lịch sử Cho phép người sử dụng có thể sửa dòng lịch sử Người dùng
7 Chuyển ngôn ngữ Cho phép người sử dụng có thể chuyển đổi ngôn ngữ Người dùng
8 Chuyển chế độ màu Cho phép người sử dụng chuyển đổi màu ứng dụng Người dùng
9 Lưu Cho phép người dùng lưu nhập thu chi Người dùng
Bảng 3.3.3.1.1.1 Danh sách các Usecase
3.3.5 Biểu đồ Usecase toàn hệ thống
Hình 3.3.5.1.1 Biểu đồ Usecase toàn hệ thống
3.3.6.1 Đặc tả Usecase Nhập thu
Tiền điều kiện Vào ứng dụng
Hậu điều kiện Người dùng vào giao diện trang chủ ứng dụng.
Mô tả chung Cho phép người sử dụng nhập thu nhập từ nguồn nào.
Dòng sự kiện chính B1: Click vào biểu tượng ứng dụng
B2: Vào ứng dụng B3: Click vào nhập thu B4: Vào giao diện thu B5: Điền thông tin B6: Bấm nút lưu
Dòng sự kiện phụ Xác nhận thông tin không được nhập, hiện thông báo không có thông tin để lưu.
Bảng 3.3.6.1.1.1 Đặc tả Usecase Nhập thu
3.3.6.2 Đặc tả Usecase Nhập chi tiêu
Tên Usecase Nhập chi tiêu
Tiền điều kiện Vào ứng dụng
Hậu điều kiện Người dùng vào giao diện trang chủ ứng dụng.
Mô tả chung Cho phép người sử dụng nhập chi tiêu.
Dòng sự kiện chính B1: Click vào biểu tượng ứng dụng
B2: Vào ứng dụng B3: Click vào nhập chi B4: Vào giao diện chi B5: Điền thông tin B6: Bấm nút lưu
Dòng sự kiện phụ Xác nhận thông tin không được nhập, hiện thông báo không có thông tin để lưu.
Bảng 3.3.6.2.1.1 Đặc tả Usecase Nhập chi tiêu
3.3.6.3 Đặc tả Usecase Xem lịch sử
Tên Usecase Xem lịch sử
Actor chính Người sử dụng
Tiền điều kiện Đã vào giao diện chính
Hậu điều kiện Vào giao diện lịch sử
Mô tả chung Cho phép người sử dụng xem, sửa, xóa lịch sử ghi chép. Dòng sự kiện chính B1: Người sử dụng vào giao diện chính
B3: Hệ thống hiện thị giao diện lịch sử.
B4: Người dùng ấn giữ để sửa, xóa lịch sử.
Dòng sự kiện phụ Người dùng ấn thoát ra ngoài.
Bảng 3.3.6.3.1.1 Đặc tả Usecase Xem lịch sử
3.3.6.4 Đặc tả Usecase Cài đặt
Actor chính Người sử dụng
Tiền điều kiện Đã vào giao diện chính
Hậu điều kiện Vào giao diện cài đặt
Mô tả chung Cho phép người sử dụng có thể chỉnh sửa thiết lập ứng dụng.
Dòng sự kiện chính B1: Người sử dụng vào giao diện chính
B3: Hệ thống hiện thị giao diện cài đặt.
B4: Người dùng chọn các cài đặt mình mong muốn. Dòng sự kiện phụ Người dùng ấn thoát ra ngoài.
Bảng 3.3.6.4.1.1 Đặc tả Usecase Cài đặt
3.3.6.5 Đặc tả Usecase Xóa lịch sử
Tên Usecase Xóa lịch sử
Actor chính Người sử dụng
Tiền điều kiện Đã vào giao diện chính
Hậu điều kiện Vào giao diện lịch sử
Mô tả chung Cho phép người dùng xóa dòng lịch sử.
Dòng sự kiện chính B1: Người sử dụng vào giao diện chính
B3: Hệ thống hiện thị giao diện lịch sử.
B4: Người dùng chọn dòng lịch sử muốn xóa.
Dòng sự kiện phụ Người dùng ấn thoát ra ngoài.
Hình 3.3.6.5.1 Đặc tả Usecase Xóa lịch sử
3.3.6.6 Đặc tả Usecase Sửa lịch sử
Tên Usecase Sửa lịch sử
Actor chính Người sử dụng
Tiền điều kiện Đã vào giao diện chính
Hậu điều kiện Vào giao diện lịch sử
Mô tả chung Cho phép người dùng sửa dòng lịch sử.
Dòng sự kiện chính B1: Người sử dụng vào giao diện chính
B3: Hệ thống hiện thị giao diện lịch sử.
B4: Người dùng chọn dòng lịch sử muốn sửa B5: Chọn sửa
Dòng sự kiện phụ Người dùng ấn thoát ra ngoài.
Bảng 3.3.6.6.1.1 Đặc tả Usecase Sửa lịch sử
Biểu đồ tuần tự các chức năng hệ thống
3.4.1 Biểu đồ tuần tự Nhập thu
Hình 3.4.1.1.1 Biểu đồ tuận tự Nhập thu
3.4.2 Biểu đồ tuần tự nhập chi
Hình 3.4.2.1.1 Biểu đồ tuần tự nhập chi
3.4.4 Biểu đồ tuần tự Xem lịch sử
Hình 3.4.4.1.1 Biểu đồ tuần tự Xem lịch sử
3.4.5 Biểu đồ tuần tự Cài đặt
Hình 3.4.5.1.1 Biểu đồ tuần tự Cài đặt
3.4.6 Biểu đồ tuần tự Sửa lịch sử
Hình 3.4.6.1.1 Biểu đồ tuần tự Sửa lịch sử
3.4.7 Biểu đồ tuần tự Xóa lịch sử
Hình 3.4.7.1.1 Biểu đồ tuần tự Xóa lịch sử
CÀI ĐẶT ỨNG DỤNG DI ĐỘNG GHI CHÉP THU CHI
Công nghệ sử dụng
Android là hệ điều hành mã nguồn mở dựa trên nền tảng Linux, được phát triển cho các thiết bị di động có màn hình cảm ứng, bao gồm điện thoại thông minh và máy tính bảng.
Android, ban đầu được phát triển bởi Tổng công ty Android với sự hỗ trợ tài chính từ Google, đã chính thức ra mắt vào năm 2007 sau khi Google mua lại công ty này vào năm 2005 Chiếc điện thoại đầu tiên sử dụng hệ điều hành Android là HTC Dream, được phát hành vào ngày 22 tháng 10 năm 2008.
Mã nguồn mở và giấy phép linh hoạt đã cho phép các nhà phát triển tùy chỉnh và phân phối Android một cách tự do, giúp nền tảng này trở thành phổ biến nhất thế giới Tính đến quý 3 năm 2012, Android chiếm 75% thị phần điện thoại thông minh toàn cầu với 500 triệu thiết bị được kích hoạt và 1,3 triệu lượt kích hoạt mỗi ngày Đến tháng 10 năm 2012, đã có khoảng 700.000 ứng dụng trên Android, với ước tính 25 tỷ lượt tải từ Google Play Mặc dù hiện nay thị phần của Android đã giảm do sự cạnh tranh từ iOS và một phần từ Windows Phone, nhưng Android vẫn giữ vị trí dẫn đầu trên thị trường.
Java là một ngôn ngữ lập trình hướng đối tượng (OOP) và dựa trên các lớp, được thiết kế để biên dịch mã nguồn thành bytecode thay vì mã máy Công nghệ biên dịch tại chỗ (Just in Time compilation) đã giúp Java cải thiện tốc độ, cho phép nó chạy nhanh hơn nhiều so với các ngôn ngữ thông dịch như Python, Perl, và PHP, và tương đương với C# Cú pháp của Java vay mượn từ C và C++, nhưng đơn giản hơn và ít tính năng xử lý cấp thấp hơn, giúp việc lập trình trở nên dễ dàng và tiết kiệm thời gian sửa lỗi Java cũng giảm thiểu hiện tượng rò rỉ bộ nhớ nhờ vào việc quản lý bộ nhớ tự động của Java Virtual Machine (JVM), mặc dù vẫn có thể xảy ra rò rỉ dữ liệu khi sử dụng các tài nguyên bên ngoài mà không được đóng đúng cách.
SQLite là một thư viện phần mềm triển khai SQL Database Engine, đặc biệt không yêu cầu máy chủ hay cấu hình, mang lại tính khép kín và kích thước nhỏ gọn Điều này có nghĩa là SQLite hoạt động như một cơ sở dữ liệu độc lập, giúp người dùng dễ dàng sử dụng mà không cần phải cấu hình trong hệ thống của mình.
SQLite không hoạt động như một quy trình độc lập như các cơ sở dữ liệu khác, mà có thể được liên kết một cách tĩnh hoặc động tùy thuộc vào nhu cầu của ứng dụng Nó truy cập trực tiếp vào các file lưu trữ của mình.
• SQLite không yêu cầu một quy trình hoặc hệ thống máy chủ riêng biệt để hoạt động.
• SQLite không cần cấu hình, có nghĩa là không cần thiết lập hoặc quản trị.
• Một cơ sở dữ liệu SQLite hoàn chỉnh được lưu trữ trong một file disk đa nền tảng (cross-platform disk file).
• SQLite rất nhỏ và trọng lượng nhẹ, dưới 400KiB được cấu hình đầy đủ hoặc dưới 250KiB với các tính năng tùy chọn bị bỏ qua.
• SQLite là khép kín (self-contained), có nghĩa là không có phụ thuộc bên ngoài.
• Các transaction trong SQLite hoàn toàn tuân thủ ACID, cho phép truy cập an toàn từ nhiều tiến trình (process) hoặc luồng (thread).
• SQLite hỗ trợ hầu hết các tính năng ngôn ngữ truy vấn (query language) được tìm thấy trong tiêu chuẩn SQL92 (SQL2).
• SQLite được viết bằng ANSI-C và cung cấp API đơn giản và dễ sử dụng.
• SQLite có sẵn trên UNIX (Linux, Mac OS-X, Android, iOS) và Windows (Win32, WinCE, WinRT).
TỔNG KẾT
Kết quả đạt được
- Giao diện có tính tương tác cao
- Có đầy đủ chức năng thông kê vào báo cáo
- Dễ thao tác và sử dụng
Hạn Chế
- Nhiều chức năng chưa hoàn thiện
- Chưa kéo mở được danh sách lịch sử
Hướng phát triển
- Vì kiến thức còn hạn hẹp nên ứng dụng còn thô sơ
- Trong thời gian sắp tới tôi sẽ cố gắng mở rộng ứng dụng để có nhiều chữ năng hon để phục vụ nhu cầu người dùng.
Kết luận
Sau một thời gian học hỏi và xây dựng dưới sự hướng dẫn của thầy Nguyễn Hữu Vĩnh, tôi đã hoàn thành đề tài “Xây dựng ứng dụng di động quản lý thu chi” Tuy nhiên, do thời gian hạn chế và kinh nghiệm còn thiếu, báo cáo này chưa được tối ưu hoàn toàn Tôi rất mong nhận được những nhận xét và đánh giá từ thầy cô để cải thiện và hoàn thiện hơn cho hệ thống ứng dụng này.