-
Notifications
You must be signed in to change notification settings - Fork 1
MVP and User Flow
ThanhDat edited this page Oct 8, 2025
·
8 revisions
| Tính năng | Mô tả | Lý do |
|---|---|---|
| 1. Đăng ký / Đăng nhập | Email / Phone hoặc “Continue as Guest” | Lưu dữ liệu người dùng, phân biệt dữ liệu, bảo mật cơ bản. |
| 2. Quản lý liên hệ (Debtor) | Thêm / Sửa / Xóa người nợ (tên, phone, email, note) | Tính năng cốt lõi. |
| 3. Tạo nhắc nợ (Debt Entry) | Số tiền, hạn trả, mô tả, lặp lại (tùy chọn), mức ưu tiên | Tính năng cốt lõi. |
| 4. Danh sách & Dashboard đơn giản | Upcoming / Overdue / All | UX tối thiểu. |
| 5. Thông báo & Reminders | In-app + Push local | Đảm bảo người dùng nhận nhắc đúng hạn. |
| 6. Đánh dấu “Đã trả” / Snooze / Ghi chú | Cập nhật trạng thái, lưu lịch sử thanh toán | Cần hành động sau khi nhận nhắc. |
| 7. Lịch sử (Timeline) | Lưu log cho từng debtor / debt item | Minh bạch, tra cứu nhanh. |
| 8. Cài đặt thông báo cơ bản | Thời điểm trước hạn, tắt/bật push | Giúp người dùng tùy chỉnh trải nghiệm. |
| Impact \ Effort | Low Effort | High Effort |
|---|---|---|
| High Impact |
Quick wins: - Thêm người nợ - Tạo nhắc đơn giản - Đánh dấu “Đã trả” - Dashboard cơ bản |
Major projects: - SMS/Email - Báo cáo, thống kê theo thời gian - Push notifications |
| Low Impact |
Fill-ins: - Theme / UI nhỏ - Import/Export CSV |
Time sinks: - Payment integration - Thêm nhiều loại tiền tệ |
✅ Đăng kí/ đăng nhập
✅ Quản lý liên hệ
✅ Tạo nhắc nợ
✅ Dashboard
✅ Push/In-app minimal
✅ Đánh dấu đã trả
✅ Lịch sử cơ bản
✅ Cài đặt thông báo
✅ Guest login
Lùi (Post-MVP):
- SMS/Email
- Payment integration
- Multi-user/group debts
- ...
- Mở app → nếu chưa login, chọn “Continue as Guest” hoặc Đăng ký.
- Tại Dashboard, nhấn Thêm người nợ.
- Nhập thông tin: Tên, Số điện thoại, Email (tùy chọn), Ghi chú → Lưu.
- Mở hồ sơ người nợ vừa thêm → chọn Tạo nhắc nợ.
- Nhập:
- Số tiền
- Ngày hết hạn
- Thời điểm nhắc (VD: 1 ngày trước, sáng ngày đến hạn)
- Bật lặp lại (optional)
- Client gửi request đến server → server tạo record + schedule job vào queue.
- Hiển thị xác nhận, trả về Dashboard → mục Upcoming hiển thị item mới.
- Nếu offline: lưu local, sync khi có mạng.
- Validate:
amount > 0,dueDate >= today. - Nếu là guest: chỉ lưu local hoặc nhắc đăng ký để sync.
- Khi đến thời điểm trigger → server/worker gửi push notification (hoặc local alarm nếu app đang foreground).
- Notification hiển thị:
- Tiêu đề
- Tên người nợ
- Số tiền
- Hạn trả
- User tap vào thông báo → mở chi tiết nhắc nợ.
- Trong detail view có 3 nút:
- Đã trả
- Nhắc lại (Snooze)
- Liên hệ
- Nếu chọn Đã trả:
- Hiện confirm dialog (có thể nhập ngày/ghi chú).
- Khi confirm → cập nhật trạng thái, lưu history, hủy reminder lặp.
- Nếu chọn Nhắc lại (Snooze):
- Chọn thời gian snooze (1h / 1d).
- App schedule lại local job hoặc gửi request server tạo nhắc mới.
- Nếu chọn Liên hệ:
- Mở dialer hoặc chat app theo cài đặt.
- Nếu offline, push có thể không tới → app nên có local fallback (local notification).
- Khi mark paid, nếu có nhiều reminder lặp → cần rule rõ (hủy tất cả hay chỉ instance hiện tại).