Project-Based Learning (PBL)
Program Studi: D4 Teknik Informatika
Semester: 5
Mata Kuliah Terintegrasi: Pemrograman Mobile, Computer Vision, Machine Learning
Judul Proyek: Porting Aplikasi Web Jawara (Sistem Manajemen RT/RW) ke Platform Mobile
1. RUANG LINGKUP
1.1 Latar Belakang
Aplikasi Jawara (http://jawarapintar.sytes.net) merupakan sistem informasi berbasis web untuk manajemen data warga, keuangan, dan marketplace di tingkat RT/RW. Untuk meningkatkan aksesibilitas dan kemudahan penggunaan, diperlukan pengembangan aplikasi mobile yang dapat diakses kapan saja dan di mana saja oleh warga.
1.2 Tujuan Proyek
- Mengembangkan aplikasi mobile Android/iOS dari aplikasi web Jawara yang sudah ada
- Mengintegrasikan fitur Computer Vision untuk verifikasi identitas dan OCR KTP
- Menerapkan Machine Learning untuk prediksi keuangan dan rekomendasi marketplace
- Memberikan pengalaman belajar komprehensif dalam pengembangan aplikasi mobile terintegrasi
1.3 Batasan Proyek
- Platform: Android (prioritas utama) dan iOS (opsional)
- Fokus pada fitur utama: manajemen data warga, keuangan, dan marketplace
- Integrasi dengan backend existing (API)
- Fitur ML dan CV sebagai value-added features
- Waktu pengembangan: 7 minggu (minggu ke-10 hingga minggu ke-16 semester)
1.4 Target Pengguna
- Admin sistem
- Ketua RT
- Ketua RW
- Bendahara
- Sekretaris
- Warga
2. RANCANGAN SISTEM
2.1 Arsitektur Sistem
┌─────────────────────────────────────────────┐
│ Mobile Application Layer │
│ (Flutter) │
├─────────────────────────────────────────────┤
│ Business Logic Layer │
│ - Authentication Module │
│ - Data Management Module │
│ - Financial Module │
│ - Marketplace Module │
│ - Computer Vision Module │
│ - Machine Learning Module │
├─────────────────────────────────────────────┤
│ API Integration Layer │
│ - REST API Client │
│ - WebSocket (untuk notifikasi real-time) │
│ - Payment Gateway (QRIS, Gopay, dsb) |
├─────────────────────────────────────────────┤
│ Local Storage Layer │
│ - SQLite/Realm (offline data) │
│ - SharedPreferences (user settings) │
└─────────────────────────────────────────────┘
↕ HTTP/HTTPS
┌─────────────────────────────────────────────┐
│ Backend Server (Laravel/Firebase) │
│ │
└─────────────────────────────────────────────┘
2.2 Modul Utama Aplikasi
A. Modul Autentikasi & Otorisasi
- Login multi-role (admin, ketua RT/RW, bendahara, sekretaris, warga)
- Session management
- Biometric authentication (fingerprint/face recognition)
B. Modul Manajemen Data Warga
- CRUD data warga
- Pencarian dan filtering data
- Computer Vision: OCR KTP untuk input data otomatis
- Computer Vision: OCR Kartu Keluarga (KK) untuk input data keluarga batch
- Computer Vision: Face recognition untuk verifikasi identitas warga sesuai foto KTP
- Upload dan manajemen dokumen warga
C. Modul Keuangan
- Input dan monitoring iuran warga
- Laporan keuangan
- Riwayat transaksi
- Computer Vision: OCR untuk scan bukti transfer pembayaran iuran (manual transfer)
- Computer Vision: Ekstraksi informasi dari struk transfer (nominal, tanggal, pengirim)
- Verifikasi pembayaran otomatis
- Machine Learning: Prediksi pembayaran iuran (classification)
- Machine Learning: Anomaly detection untuk transaksi mencurigakan
D. Modul Marketplace
- Katalog produk warga
- Sistem pemesanan
- Rating dan review
- Machine Learning: Recommendation system untuk produk
- Computer Vision: Image classification untuk kategori produk otomatis
E. Modul Notifikasi
- Push notification untuk pengumuman
- Reminder pembayaran iuran
- Update marketplace
F. Modul Dashboard & Reporting
- Visualisasi data statistik
- Export laporan (PDF)
- Grafik dan chart interaktif
2.3 Teknologi yang Digunakan
Mobile Development
- Framework: Flutter (rekomendasi) atau React Native
- State Management: Provider/Bloc (Flutter) atau Redux (React Native)
- Local Database: SQLite atau Realm
- HTTP Client: Dio (Flutter) atau Axios (React Native)
Computer Vision
- Framework: TensorFlow Lite atau ML Kit
- Fitur:
- OCR KTP menggunakan Firebase ML Kit Text Recognition
- OCR Kartu Keluarga (KK) untuk ekstraksi data keluarga
- OCR Bukti transfer untuk verifikasi pembayaran iuran
- Face Detection/Recognition menggunakan TensorFlow Lite
- Face verification: matching foto wajah dengan foto di KTP
- Image Classification untuk produk marketplace
Machine Learning
- Framework: TensorFlow Lite atau scikit-learn (converted to mobile)
- Model:
- Classification model untuk prediksi pembayaran
- Recommendation system (Collaborative Filtering)
- Time series forecasting untuk prediksi keuangan
- Anomaly detection untuk fraud detection
3. TAHAPAN PELAKSANAAN PROYEK
Catatan Penting: Proyek dimulai pada minggu ke-10 semester dengan total durasi 7 minggu. Pendekatan development menggunakan rapid prototyping dan agile methodology dengan fokus pada MVP (Minimum Viable Product) yang dapat dikembangkan dalam timeline terbatas.
Minggu 10: Inisiasi Cepat dan Setup
Deliverables:
- Pembentukan tim (4-5 mahasiswa per kelompok)
- Analisis cepat requirement dari aplikasi web existing
- Dokumentasi requirement specification (simplified)
- Wireframe low-fidelity untuk screens prioritas
- Setup environment development
Activities:
- Kick-off meeting dan pembagian role
- Eksplorasi aplikasi web Jawara (reverse engineering API)
- Identifikasi fitur MVP (Must Have vs Nice to Have)
- Quick design sprint untuk wireframe
- Setup project repository dan development tools
- Pembagian modul per anggota tim
Output: Project charter, wireframe basic, environment ready
Minggu 11: Design & Prototyping
Deliverables:
- System design document (simplified)
- Database schema lokal
- API endpoint documentation
- UI/UX prototype medium-fidelity (Figma)
- Project architecture established
Activities:
- Finalisasi arsitektur sistem
- Design database lokal untuk offline mode
- Prototype interface screens prioritas dengan Figma
- Setup project structure (folder architecture)
- API testing dengan Postman
- Parallel work: UI designer + Backend integration team
Output: Design approved, prototype clickable, API documented
Minggu 12: Development Sprint 1 (Core Features - Week 1)
Deliverables:
- Modul autentikasi berfungsi (login multi-role)
- Modul manajemen data warga (list & detail view)
- API integration foundation
- Navigation structure complete
Activities:
- Implementasi login, logout, session management
- Implementasi list warga dengan search & filter
- Implementasi detail warga
- Setup state management
- Basic error handling
- Daily standup untuk sync progress
Output: Working prototype dengan 2 modul utama
Minggu 13: Development Sprint 2 (Core Features - Week 2 + Advanced)
Deliverables:
- CRUD warga complete (tambah, edit, hapus)
- Modul keuangan basic (list iuran, input pembayaran)
- Modul marketplace basic (list produk, detail produk)
- Local storage implementation
- Dashboard basic
Activities:
- Finalisasi CRUD operasi untuk warga
- Implementasi fitur keuangan (input iuran, history)
- Implementasi marketplace (tampil produk, detail)
- Implementasi SQLite untuk caching
- Dashboard dengan data visualization sederhana
- Integration testing antar modul
Output: 4 modul utama berfungsi, offline mode basic
Minggu 14: Development Sprint 3 (AI Integration - Computer Vision)
Deliverables:
- OCR KTP terintegrasi dan berfungsi
- OCR Kartu Keluarga (KK) terintegrasi
- OCR bukti transfer pembayaran berfungsi
- Face verification (matching dengan KTP) berfungsi
- Image classification untuk kategori produk marketplace
- Model CV ter-optimasi untuk mobile
Activities:
- Parallel Track A (CV Team - 3 orang):
- Sub-team A1 (2 orang - Document OCR):
- Implementasi OCR KTP menggunakan ML Kit atau Tesseract
- Implementasi OCR Kartu Keluarga (KK) dengan template parsing
- Implementasi OCR bukti transfer (struk bank)
- Preprocessing image untuk OCR (crop, brightness, contrast, deskew)
- Parsing hasil OCR ke field form (KTP, KK, bukti bayar)
- Validasi format data (NIK, No. KK, nominal transfer)
- Testing berbagai kondisi pencahayaan dan kualitas gambar
- Sub-team A2 (1 orang - Face Verification):
- Implementasi face detection dari foto real-time
- Ekstraksi face embedding dari foto KTP
- Face matching/verification (similarity score)
- Threshold tuning untuk acceptance rate
- Anti-spoofing basic (liveness detection)
- Sub-team A1 (2 orang - Document OCR):
- Parallel Track B (Main Dev Team - 2 orang):
- Integration OCR results ke database
- UI/UX untuk capture document (guide overlay)
- Refinement fitur existing
- Bug fixing dan stabilisasi
- UI/UX improvement untuk flow pembayaran
Output:
- OCR 3 jenis dokumen berfungsi dengan akurasi acceptable (KTP, KK, Struk)
- Face verification working dengan FAR < 5%
- App semakin stabil dengan flow document scanning yang smooth
Minggu 15: Development Sprint 4 (AI Integration - Machine Learning + Polish)
Deliverables:
- Model prediksi pembayaran iuran terintegrasi
- Recommendation system marketplace (basic)
- Semua fitur final polish
- Bug fixes major selesai
- Performance optimization
Activities:
- Parallel Track A (ML Team):
- Training model classification untuk prediksi pembayaran (gunakan data dummy/simulasi jika perlu)
- Implementasi recommendation sederhana (content-based filtering)
- Konversi model ke TensorFlow Lite
- Integration ke aplikasi
- Parallel Track B (QA & Polish Team):
- Comprehensive testing semua fitur
- UI/UX refinement berdasarkan feedback
- Performance testing dan optimization
- Security check
- Error handling improvement
Output: Feature complete, ML/CV integrated, app polished
Minggu 16: Testing, Documentation & Presentation
Deliverables:
- Aplikasi final (APK)
- Dokumentasi teknis lengkap
- User manual
- Video demo aplikasi
- Presentasi final
- Test report
Activities:
- Days 1-2: Final Testing
- User Acceptance Testing (UAT) dengan sample users
- Final bug fixing
- Performance tuning
- Security final check
- Days 3-4: Documentation
- Finalisasi dokumentasi teknis (architecture, API, code docs)
- User manual per role user
- Installation guide
- Known issues & limitation documentation
- Days 5-7: Presentation Preparation
- Video demo recording dan editing
- Presentation slide preparation
- Rehearsal presentasi
- Final submission
- Presentasi dan demo ke dosen
Output: Deliverable lengkap, presentasi sukses, project selesai
Strategi Akselerasi untuk Timeline 7 Minggu
1. MVP-First Approach
Fokus pada fitur core yang memberikan value paling tinggi:
- Must Have: Login, CRUD warga, view keuangan, view marketplace
- Should Have: OCR KTP, dashboard, notifications
- Nice to Have: ML prediction, recommendation, face recognition
2. Parallel Development
Bagi tim menjadi sub-teams:
- Team A: Core mobile features (3 orang)
- Team B: AI/ML features (2 orang)
- Daily sync: Untuk integration dan blocker resolution
3. Leverage Existing Solutions
- Gunakan UI component library (Material UI, Flutter widgets)
- Gunakan pre-trained models (ML Kit, TensorFlow Hub)
- Gunakan template code dan boilerplate
- Gunakan Firebase untuk backend services (auth, push notif)
4. Rapid Prototyping
- Week 1: Paper prototype + basic code
- Week 2: Clickable prototype + 50% features
- Week 3-4: Working prototype + 80% features
- Week 5-6: Feature complete + polish
- Week 7: Testing + documentation
5. Risk Mitigation
- Buffer time: Built-in dalam setiap sprint
- Fallback plan: Jika CV/ML tidak bisa selesai, fokus polish core features
- Daily standup: Cepat identify blockers
- Help protocol: Peer help, mentor consultation
6. Quality Gates (Simplified)
- Gate 1 (End Week 11): Design approved
- Gate 2 (End Week 13): Core features working
- Gate 3 (End Week 15): Feature complete
- Gate 4 (End Week 16): Ready to present
4. KEBUTUHAN PERALATAN/PERANGKAT DAN BAHAN/KOMPONEN
4.1 Hardware
| Item | Spesifikasi Minimum | Jumlah | Keterangan |
|---|---|---|---|
| Laptop Development | RAM 8GB, SSD 256GB, Processor i5/Ryzen 5 | 1 per mahasiswa | Untuk development |
| Smartphone Android | Android 8.0+, RAM 3GB+ | 2 per kelompok | Testing device |
| Smartphone iOS | iOS 12+, iPhone 7+ | 1 per kelompok (opsional) | Testing iOS |
| Webcam/Camera | Minimal 5MP | 1 per kelompok | Testing CV features |
| Storage External | 1TB | 1 per kelompok | Backup project |
4.2 Software & Tools
Development Tools
- IDE: Android Studio / VS Code / Xcode
- Design: Figma / Adobe XD
- Version Control: Git + GitHub/GitLab
- API Testing: Postman
- Database: SQLite Browser
Frameworks & Libraries
- Mobile: Flutter SDK atau React Native
- CV: TensorFlow Lite, ML Kit, OpenCV
- ML: TensorFlow, scikit-learn, pandas, numpy
- Backend: Dokumentasi API existing
Cloud Services (Free Tier)
- Firebase (Authentication, Cloud Messaging, ML Kit)
- Google Cloud Platform (Vision API - free tier)
- GitHub (repository dan CI/CD)
4.3 Data & Model
Dataset untuk Training
- Dataset KTP Indonesia (minimal 500 gambar, berbagai format lama & baru)
- Dataset Kartu Keluarga (minimal 300 gambar, berbagai format regional)
- Dataset struk transfer bank (minimal 200 gambar, 5-7 bank populer)
- Dataset wajah untuk face recognition (100-200 wajah)
- Dataset foto KTP untuk face verification training (paired: foto asli + foto KTP)
- Data historis transaksi keuangan (simulasi)
- Data produk marketplace dengan kategori
Pre-trained Models
- Mobile-optimized OCR model (Tesseract, ML Kit)
- Face detection model (MobileNet)
- Face recognition/verification model (FaceNet mobile)
- Image classification model (EfficientNet-Lite)
4.4 Konektivitas
- Akses internet stabil untuk testing API
- Akses ke server backend Jawara
- API key untuk services (Firebase, GCP)
4.5 Dokumentasi
- Template dokumentasi teknis
- Template user manual
- Template laporan PBL
5. TANTANGAN DAN ISU
5.1 Tantangan Teknis
A. Integrasi Backend
Masalah:
- API documentation mungkin tidak lengkap
- Endpoint API mungkin tidak mobile-friendly
- Authentication mechanism compatibility
Solusi:
- Reverse engineering API menggunakan browser dev tools
- Koordinasi dengan backend developer
- Implementasi wrapper API di aplikasi
- Caching strategy untuk offline mode
B. Performance Optimization
Masalah:
- Model ML/CV terlalu besar untuk mobile
- Loading time lambat
- Battery drain tinggi
Solusi:
- Model quantization dan pruning
- Lazy loading untuk data besar
- Image compression
- Background task optimization
- Implementasi pagination
C. Computer Vision Accuracy & Robustness
Masalah:
- Akurasi OCR KTP rendah pada kondisi pencahayaan buruk
- OCR Kartu Keluarga kompleks (banyak field, layout bervariasi)
- OCR bukti transfer (format struk bank bervariasi per bank)
- Face verification false positive/negative
- Variasi format KTP/KK regional
Solusi:
- Untuk OCR Documents:
- Data augmentation saat training (rotation, blur, noise)
- Preprocessing pipeline: grayscale → denoise → contrast enhancement → binarization
- Template matching untuk deteksi layout dokumen
- Multiple OCR engine ensemble (ML Kit + Tesseract)
- Regex validation untuk format data (NIK 16 digit, No. KK 16 digit, dll)
- Confidence score threshold (reject jika confidence < 70%)
- Manual correction UI jika OCR gagal
- Untuk Face Verification:
- Face alignment sebelum comparison
- Multiple face detection attempts
- Liveness detection sederhana (blink, turn head)
- Fallback ke manual verification oleh admin
- Adjustable similarity threshold per use case
- User Guidance:
- Overlay guide untuk posisi dokumen saat scan
- Real-time feedback (terlalu gelap, terlalu blur, dll)
- Tips untuk hasil terbaik (pencahayaan, jarak, sudut)
- Multiple retry dengan hints
D. OCR Data Parsing Complexity
Masalah:
- Layout KTP/KK tidak konsisten antar daerah
- Typo/error dari OCR engine
- Field label bervariasi
- Data multi-line (alamat)
Solusi:
- Template-based Parsing:
- Buat template untuk berbagai format KTP (lama vs baru)
- Deteksi layout menggunakan spatial analysis
- Keyword matching untuk field identification ("NIK:", "Nama:", dst)
- Fuzzy Matching:
- Levenshtein distance untuk match field labels
- Phonetic matching untuk nama
- Post-processing:
- Digit-only validation untuk NIK/No. KK
- Date format standardization
- Title case untuk nama
- Address normalization
- Iterative Improvement:
- Log failed cases untuk improvement
- User feedback untuk training data
- Regular expression refinement
E. Bank Transfer Receipt Variation
Masalah:
- Setiap bank punya format struk berbeda (BCA, Mandiri, BRI, BNI, dll)
- Mobile banking screenshot vs ATM print
- Info yang perlu diextract: nominal, tanggal, nama pengirim, bank
Solusi:
- Multi-template OCR:
- Template detection berdasarkan logo bank
- Bank-specific parsing rules
- Generic fallback parser
- Key Information Extraction:
- Fokus pada field kritis: nominal, tanggal, referensi
- Regex pattern untuk format currency (Rp, ., ,)
- Date pattern matching (DD/MM/YYYY, DD-MM-YYYY, dll)
- Validation:
- Cross-check nominal dengan expected amount
- Date validation (tidak boleh future date)
- Minimum confidence threshold
- Fallback:
- Manual input jika OCR confidence < threshold
- Admin verification untuk transaksi besar
- Photo attachment tetap disimpan untuk audit
D. Machine Learning Data Quality
Masalah:
- Data historis terbatas
- Data tidak seimbang (imbalanced)
- Feature engineering complexity
Solusi:
- Data synthesis dan augmentation
- SMOTE untuk handling imbalanced data
- Feature selection dan dimensionality reduction
- Regular model retraining dengan data baru
5.2 Tantangan Project Management
A. Koordinasi Tim
Masalah:
- Jadwal kuliah berbeda
- Pembagian task tidak merata
- Communication gap
Solusi:
- Daily standup meeting (online)
- Gunakan project management tools (Trello/Jira)
- Code review mandatory
- Pair programming untuk task kompleks
B. Scope Creep
Masalah:
- Permintaan fitur tambahan
- Ekspektasi stakeholder berubah
- Waktu terbatas
Solusi:
- Strict scope definition
- Prioritas fitur (MoSCoW method)
- Agile development dengan sprint jelas
- Regular checkpoint dengan dosen pembimbing
5.3 Tantangan Pembelajaran
A. Learning Curve
Masalah:
- Mahasiswa belum menguasai semua teknologi
- Kompleksitas integrasi 3 domain (Mobile, CV, ML)
Solusi:
- Peer learning dan knowledge sharing
- Tutorial dan workshop internal
- Mentoring dari dosen
- Online course dan documentation
B. Time Management
Masalah:
- Deadline overlap dengan mata kuliah lain
- Underestimate task complexity
Solusi:
- Buffer time di setiap sprint
- Regular progress monitoring
- Prioritas critical path tasks
- Realistic estimation dengan contingency
5.4 Isu Keamanan dan Privasi
Masalah:
- Data warga sensitif (KTP, foto, alamat)
- API security
- Local storage vulnerability
Solusi:
- Enkripsi data lokal (SQLCipher)
- Secure API communication (HTTPS, token refresh)
- Implement proper authorization check
- Data minimization principle
- Privacy policy dan informed consent
6. ESTIMASI WAKTU PEKERJAAN
6.1 Breakdown per Fase (7 Minggu - Accelerated Timeline)
| Fase | Minggu | Durasi | Effort (person-hours) | Critical Path |
|---|---|---|---|---|
| Fase 1: Inisiasi & Setup | 10 | 1 minggu | 60 jam | Ya |
| - Analisis requirement | 2 hari | 20 jam | Ya | |
| - Design wireframe | 2 hari | 20 jam | Ya | |
| - Setup environment | 2 hari | 20 jam | Ya | |
| Fase 2: Design & Prototyping | 11 | 1 minggu | 70 jam | Ya |
| - Arsitektur sistem | 2 hari | 20 jam | Ya | |
| - Database design | 1 hari | 10 jam | Ya | |
| - UI/UX prototype | 3 hari | 30 jam | Ya | |
| - API documentation | 1 hari | 10 ham | Ya | |
| Fase 3: Development Sprint 1 | 12 | 1 minggu | 100 jam | Ya |
| - Autentikasi | 2 hari | 30 jam | Ya | |
| - Manajemen warga (list/detail) | 3 hari | 40 ham | Ya | |
| - API integration | 2 hari | 30 jam | Ya | |
| Fase 4: Development Sprint 2 | 13 | 1 minggu | 120 jam | Ya |
| - CRUD warga complete | 2 hari | 30 jam | Ya | |
| - Modul keuangan | 3 hari | 45 ham | Ya | |
| - Modul marketplace | 3 hari | 45 jam | Ya | |
| Fase 5: Computer Vision | 14 | 1 minggu | 120 ham | Tidak |
| - OCR KTP implementation | 2 hari | 30 jam | Tidak | |
| - OCR Kartu Keluarga (KK) | 2 hari | 25 jam | Tidak | |
| - OCR bukti transfer | 2 hari | 25 jam | Tidak | |
| - Face verification | 2 hari | 30 jam | Tidak | |
| - Testing & optimization | 1 hari | 10 ham | Tidak | |
| Fase 6: Machine Learning + Polish | 15 | 1 minggu | 90 jam | Tidak |
| - ML model training | 3 hari | 35 jam | Tidak | |
| - ML integration | 2 hari | 25 ham | Tidak | |
| - Bug fixing & polish | 2 hari | 30 jam | Ya | |
| Fase 7: Testing & Presentation | 16 | 1 minggu | 80 ham | Ya |
| - UAT & bug fixing | 2 hari | 30 ham | Ya | |
| - Documentation | 2 hari | 25 ham | Ya | |
| - Presentation prep | 3 hari | 25 jam | Ya | |
| TOTAL | 10-16 | 7 minggu | 640 jam |
6.2 Alokasi Waktu per Mahasiswa (Timeline Compressed)
Asumsi: 1 kelompok = 5 mahasiswa
- Total effort: 640 person-hours
- Per mahasiswa: 640 / 5 = 128 jam
- Per minggu per mahasiswa: 128 / 7 = 18.3 jam
- Setara: ~3.5-4 jam per hari (5 hari kerja) atau ~2.6 jam per hari (7 hari)
Catatan: Timeline ini lebih intensif dibanding timeline 16 minggu. Mahasiswa perlu alokasi waktu lebih banyak per minggu, terutama untuk minggu 14 (CV intensive).
6.3 Gantt Chart (7 Minggu)
Minggu: 10 11 12 13 14 15 16
Inisiasi: ██
Design: ██
Sprint 1 Core: ██
Sprint 2 Core: ██
Computer Vision: ██ (intensive)
ML + Polish: ██
Test & Present: ██
Critical Path: ██ ██ ██ ██ ██ ██
Parallel Work: ██ ██
CV Heavy Week: ██
6.4 Milestone Utama (7 Minggu)
| Milestone | Target Minggu | Target Date | Deliverable Key |
|---|---|---|---|
| M1: Project Kickoff | Minggu 10 | [Sesuaikan] | Project charter, wireframe |
| M2: Design Approved | Minggu 11 | [Sesuaikan] | Prototype approved |
| M3: Core Features Working | Minggu 13 | [Sesuaikan] | MVP functional |
| M4: Feature Complete | Minggu 15 | [Sesuaikan] | All features done |
| M5: Final Delivery | Minggu 16 | [Sesuaikan] | Product + docs complete |
6.5 Daily Time Allocation (Recommended)
Weekdays (Senin - Jumat):
- 2-3 jam coding/development
- 30 menit daily standup
- 30 menit learning/research
Weekend (Sabtu - Minggu):
- 3-4 jam intensive development
- 1 jam team meeting/review
Total per week: ~17-20 jam
6.6 Contingency Plan
Karena timeline ketat, siapkan contingency:
Jika Terlambat 1 Minggu:
- Option A: Kurangi scope fitur ML/CV (fokus core saja)
- Option B: Tambah work hours jadi 20-25 jam/minggu
- Option C: Simplify UI/UX (gunakan template)
Jika Terlambat 2 Minggu:
- Critical: Fokus hanya pada MVP
- Drop fitur: Face recognition, ML recommendation
- Keep fitur: Login, CRUD warga, keuangan basic, marketplace basic, OCR KTP
Buffer Strategy:
- Minggu 10-13: NO BUFFER (must on track)
- Minggu 14-15: Buffer 1-2 hari untuk AI features
- Minggu 16: Buffer 1 hari untuk emergency fixes
7. BIAYA PROYEK
7.1 Breakdown Biaya
A. Hardware & Equipment
| Item | Harga Satuan | Jumlah | Total | Keterangan |
|---|---|---|---|---|
| Smartphone Android (testing) | Rp 2.000.000 | 2 | Rp 4.000.000 | Dapat dipinjam dari lab |
| Smartphone iOS (testing) | Rp 5.000.000 | 1 | Rp 5.000.000 | Opsional / pinjam |
| External HDD 1TB | Rp 700.000 | 1 | Rp 700.000 | Backup & storage |
| Webcam HD | Rp 500.000 | 1 | Rp 500.000 | CV testing |
| Subtotal A | Rp 10.200.000 | Dapat dikurangi via fasilitas kampus |
B. Software & Subscription (1 semester = 7 minggu tersisa)
| Item | Biaya/bulan | Durasi | Total | Keterangan |
|---|---|---|---|---|
| Firebase (Spark Plan) | Gratis | 2 bulan | Rp 0 | Free tier cukup |
| Google Cloud Platform | Rp 300.000 | 2 bulan | Rp 600.000 | Vision API (dapat free credit) |
| Domain & Hosting (optional) | Rp 100.000 | 2 bulan | Rp 200.000 | Untuk documentation site |
| Figma Pro (optional) | Gratis | - | Rp 0 | Student license |
| GitHub Pro | Gratis | - | Rp 0 | Student pack |
| Subtotal B | Rp 800.000 | Dapat gratis dengan student pack |
C. Development Tools (One-time)
| Item | Harga | Keterangan |
|---|---|---|
| IDE & Development Tools | Rp 0 | Free (VS Code, Android Studio) |
| Design Tools | Rp 0 | Free (Figma, Canva) |
| Testing Tools | Rp 0 | Free (Postman, Firebase) |
| Subtotal C | Rp 0 |
D. Data & Training
| Item | Harga | Keterangan |
|---|---|---|
| Dataset KTP (scraping/generation) | Rp 0 | Self-collected / synthetic |
| Dataset produk marketplace | Rp 0 | Public dataset |
| Cloud compute untuk training (GCP/Colab) | Rp 0 | Gunakan Colab free tier |
| Subtotal D | Rp 0 |
E. Operasional (7 minggu)
| Item | Harga | Keterangan |
|---|---|---|
| Pulsa & Kuota Internet (2 bulan x 5 org) | Rp 100.000 | Rp 1.000.000 |
| Printing & dokumentasi | Rp 300.000 | Rp 300.000 |
| Konsumsi meeting & testing | Rp 30.000 | Rp 600.000 |
| Transportasi UAT & presentasi | Rp 100.000 | Rp 500.000 |
| Kontijensi (10%) | - | Rp 240.000 |
| Subtotal E | Rp 2.640.000 |
7.2 Total Biaya Proyek (7 Minggu)
| Kategori | Biaya | Presentase |
|---|---|---|
| Hardware & Equipment | Rp 10.200.000 | 75% |
| Software & Subscription | Rp 800.000 | 6% |
| Development Tools | Rp 0 | 0% |
| Data & Training | Rp 0 | 0% |
| Operasional | Rp 2.640.000 | 19% |
| TOTAL | Rp 13.640.000 | 100% |
7.3 Biaya Per Mahasiswa
- Total biaya: Rp 13.640.000
- Jumlah mahasiswa: 5 orang
- Biaya per mahasiswa: Rp 2.728.000
7.4 Skenario Cost Reduction
Opsi A: Maksimalkan Fasilitas Kampus
- Pinjam smartphone dari lab mobile: -Rp 9.000.000
- Gunakan GCP free credit ($300): -Rp 600.000
- Gunakan WiFi kampus: -Rp 500.000
- Total dengan fasilitas kampus: Rp 3.540.000
- Per mahasiswa: Rp 708.000
Opsi B: Minimal Viable Budget
- Hanya beli essentials (HDD, printing): Rp 1.000.000
- Kuota internet minimal: Rp 500.000
- Kontijensi: Rp 150.000
- Total minimal: Rp 1.650.000
- Per mahasiswa: Rp 330.000 Training | Rp 0 | 0% | | Operasional | Rp 4.950.000 | 29% | | TOTAL | Rp 16.750.000 | 100% |
7.3 Biaya Per Mahasiswa
- Total biaya: Rp 16.750.000
- Jumlah mahasiswa: 5 orang
- Biaya per mahasiswa: Rp 3.350.000
7.4 Skenario Cost Reduction
Opsi A: Maksimalkan Fasilitas Kampus
- Pinjam smartphone dari lab mobile: -Rp 9.000.000
- Gunakan GCP free credit ($300): -Rp 1.200.000
- Gunakan WiFi kampus: -Rp 1.000.000
- Total dengan fasilitas kampus: Rp 5.550.000
- Per mahasiswa: Rp 1.110.000
Opsi B: Minimal Viable Budget
- Hanya beli essentials (HDD, printing): Rp 1.200.000
- Kuota internet minimal: Rp 1.000.000
- Kontijensi: Rp 220.000
- Total minimal: Rp 2.420.000
- Per mahasiswa: Rp 484.000
7.5 Sumber Pendanaan Potensial
- Kampus: Hibah PBL atau research grant
- Sponsor: Kerjasama dengan vendor teknologi
- Mandiri: Iuran mahasiswa
- Kompetisi: Dana dari perlombaan aplikasi mobile
8. MATA KULIAH, CAPAIAN PEMBELAJARAN, DAN TUJUAN PEMBELAJARAN YANG TERLIBAT
8.1 Mata Kuliah Pemrograman Mobile
Capaian Pembelajaran (CP)
- CP1: Mahasiswa mampu memahami konsep dan arsitektur pengembangan aplikasi mobile
- CP2: Mahasiswa mampu merancang user interface dan user experience aplikasi mobile yang responsif
- CP3: Mahasiswa mampu mengimplementasikan aplikasi mobile menggunakan framework modern
- CP4: Mahasiswa mampu melakukan evaluasi dan optimasi model machine learning
- CP5: Mahasiswa mampu melakukan deployment model ML pada production environment
Tujuan Pembelajaran (TP)
- TP1: Melakukan exploratory data analysis (EDA) pada dataset
- TP2: Melakukan data cleaning, handling missing values, dan outlier detection
- TP3: Melakukan feature selection dan feature engineering
- TP4: Implementasi supervised learning (classification, regression)
- TP5: Implementasi unsupervised learning (clustering, recommendation system)
- TP6: Melakukan hyperparameter tuning untuk optimasi model
- TP7: Evaluasi model menggunakan cross-validation dan berbagai metrics
- TP8: Handling imbalanced dataset
- TP9: Implementasi time series forecasting
- TP10: Konversi dan deployment model ke mobile platform
Pemetaan ke Proyek
| Aktivitas Proyek | CP Terkait | TP Terkait |
|---|---|---|
| Analisis data historis keuangan | CP2 | TP1 |
| Preprocessing data transaksi | CP2 | TP2 |
| Feature engineering untuk prediksi | CP2 | TP3 |
| Model prediksi pembayaran iuran | CP3 | TP4, TP8 |
| Recommendation system marketplace | CP3 | TP5 |
| Anomaly detection transaksi | CP3 | TP4 |
| Forecasting keuangan RT/RW | CP3 | TP9 |
| Hyperparameter tuning | CP4 | TP6 |
| Evaluasi dan validasi model | CP4 | TP7 |
| Konversi model ke TFLite | CP5 | TP10 |
8.4 Soft Skills dan Kompetensi Tambahan
A. Project Management
- Perencanaan project dengan Agile/Scrum methodology
- Risk management dan problem solving
- Time management dan meeting deadlines
- Documentation dan reporting
B. Teamwork & Collaboration
- Git collaboration dan version control
- Code review dan peer feedback
- Pair programming
- Communication skills (technical writing, presentation)
C. Critical Thinking
- System design dan architectural decisions
- Trade-off analysis (performance vs accuracy vs cost)
- Debugging dan troubleshooting
- Innovation dan creative problem solving
D. Professional Skills
- User research dan requirement gathering
- Stakeholder management
- Quality assurance mindset
- Continuous learning attitude
8.5 Matriks Kompetensi Mahasiswa
| Kompetensi | Pemrograman Mobile | Computer Vision | Machine Learning | Soft Skills |
|---|---|---|---|---|
| Beginner → Intermediate | ✓ UI/UX Design<br>✓ State Management | ✓ Image Processing<br>✓ Model Training | ✓ Data Preprocessing<br>✓ Feature Engineering | ✓ Git Version Control<br>✓ Agile Basics |
| Intermediate → Advanced | ✓ API Integration<br>✓ Architecture Design<br>✓ Performance Tuning | ✓ Transfer Learning<br>✓ Model Optimization<br>✓ Real-time Processing | ✓ Model Evaluation<br>✓ Hyperparameter Tuning<br>✓ Deployment | ✓ Technical Documentation<br>✓ Problem Solving |
| Advanced → Expert | ✓ Security Implementation<br>✓ Offline Mode<br>✓ Production Deployment | ✓ Custom Architecture<br>✓ Edge Cases Handling | ✓ Ensemble Methods<br>✓ A/B Testing | ✓ Leadership<br>✓ Innovation |
9. PEMANTAUAN DAN EVALUASI
9.1 Sistem Pemantauan (7 Minggu Timeline)
A. Pemantauan Harian (Daily Standup) - MANDATORY
Format: Online meeting 15 menit (Zoom/Discord/Google Meet) Waktu: Setiap hari kerja pukul 19.00 WIB (after class) Agenda:
- Apa yang dikerjakan kemarin?
- Apa yang akan dikerjakan hari ini?
- Ada blocker atau hambatan?
- Quick decision untuk unblock issues
Tools:
- Trello/Jira untuk tracking task
- Discord/Telegram untuk quick communication
- GitHub project board
Importance: Karena timeline ketat (7 minggu), daily sync WAJIB untuk detect blockers early
B. Pemantauan Mingguan (Weekly Sprint Review) - CRITICAL
Format: Meeting 2 jam setiap akhir minggu (Sabtu/Minggu) Peserta: Seluruh tim + dosen pembimbing Agenda:
- Demo progress yang telah dicapai (LIVE DEMO)
- Review code quality dan best practices
- Evaluasi sprint: apa yang selesai, apa yang tertunda
- Planning detail untuk sprint berikutnya
- Risk assessment dan immediate action plan
- GO/NO-GO decision untuk lanjut ke fase berikutnya
Deliverable:
- Sprint report (1-2 halaman)
- Updated Gantt chart
- Risk register
- Demo video (optional tapi recommended)
Format Sprint Report:
SPRINT REVIEW - MINGGU [X]
Target Sprint: [Deskripsi]
Pencapaian: [% complete, fitur yang selesai]
Blockers: [Masalah yang dihadapi]
Solutions: [Action items]
Next Sprint Target: [Specific & measurable]
C. Pemantauan Milestone (Critical Gates)
Format: Formal presentation & demo Frekuensi: Minggu 11, 13, 15, 16
Milestone Gates:
Gate 1 (Minggu 11): Design Review
- Kriteria Pass:
- Wireframe & UI design complete dan approved
- Architecture design documented
- API endpoints identified dan tested
- Project setup complete (environment, repo, tools)
- If FAIL: Revisi desain dalam 2 hari, tidak boleh lanjut coding
Gate 2 (Minggu 13): MVP Review
- Kriteria Pass:
- Core features working (login, CRUD warga, basic keuangan & marketplace)
- API integration functional
- No critical bugs
- Code quality acceptable (no major code smells)
- If FAIL: Emergency sprint untuk fix critical issues, delay AI features
Gate 3 (Minggu 15): Feature Complete Review
- Kriteria Pass:
- ALL features implemented (including CV & ML)
- Integration testing passed
- Major bugs fixed
- Performance acceptable
- If FAIL: Reduce scope, focus on polish existing features
Gate 4 (Minggu 16): Final Review
- Kriteria Pass:
- UAT passed (user satisfaction ≥ 7/10)
- Documentation complete
- Presentation ready
- APK ready for deployment
- If FAIL: Not possible - must present, focus on damage control
D. Monitoring Real-time (Dashboard)
Setup Team Dashboard menggunakan:
- GitHub Insights: Commit frequency, PR status, code review
- Trello Board: Task status (To Do, In Progress, Testing, Done)
- Google Sheets: Progress tracker
Example Progress Tracker:
| Minggu | Target | Actual | Status | Blocker | Action |
|---|---|---|---|---|---|
| 10 | Setup | 100% | ✅ Done | - | - |
| 11 | Design | 80% | ⚠️ Delay | UI review | Add 1 day |
| 12 | Sprint 1 | 90% | ✅ On track | - | - |
Traffic Light System:
- 🟢 Green (On Track): Progress ≥ 90% target
- 🟡 Yellow (At Risk): Progress 70-89% target, need attention
- 🔴 Red (Critical): Progress < 70%, need immediate intervention
9.2 Instrumen Evaluasi
A. Evaluasi Produk (60%)
1. Fungsionalitas Aplikasi (25%)
Kriteria Penilaian:
| Aspek | Bobot | Indikator |
|---|---|---|
| Kelengkapan fitur core | 8% | Semua fitur wajib terimplementasi |
| Integrasi API | 6% | Komunikasi backend lancar, error handling baik |
| Offline functionality | 5% | Data caching dan sync berfungsi |
| User authentication | 3% | Login multi-role, security, session management |
| Error handling | 3% | Graceful error, user-friendly message |
2. Computer Vision Implementation (15%)
Kriteria Penilaian:
| Aspek | Bobot | Indikator |
|---|---|---|
| OCR KTP akurasi | 4% | Akurasi ≥ 80% pada kondisi normal, parsing field benar |
| OCR Kartu Keluarga (KK) | 4% | Akurasi ≥ 75%, ekstraksi data keluarga batch working |
| OCR bukti transfer | 3% | Ekstraksi nominal & tanggal ≥ 80% akurat, multi-bank support |
| Face verification | 4% | False acceptance rate < 5%, matching dengan KTP working |
3. Machine Learning Implementation (12%)
Kriteria Penilaian:
| Aspek | Bobot | Indikator |
|---|---|---|
| Prediction accuracy | 5% | Model prediksi pembayaran akurasi ≥ 75% |
| Recommendation relevance | 4% | User satisfaction terhadap rekomendasi |
| Model performance | 3% | Inference time < 2 detik di device |
4. User Interface/UX (6%)
Kriteria Penilaian:
- Konsistensi design system
- Responsiveness berbagai screen size
- Intuitive navigation
- Accessibility considerations
- Visual appeal dan modern design
5. Performance & Quality (5%)
Kriteria Penilaian:
- Loading time (< 3 detik untuk list view, < 5 detik untuk OCR processing)
- Memory usage (< 200 MB normal, < 300 MB saat OCR)
- Battery consumption (efisien, tidak drain cepat saat scanning)
- Crash rate (< 1%)
- APK size (< 100 MB)
- OCR processing time (< 3 detik per dokumen)
B. Evaluasi Proses (25%)
1. Project Management (8%)
Kriteria:
- Ketepatan timeline dan milestone
- Risk management effectiveness
- Quality assurance process
- Documentation completeness
- Version control practices
Tools Monitoring:
- GitHub commit frequency dan quality
- Trello/Jira task completion rate
- Sprint velocity tracking
2. Teamwork & Collaboration (8%)
Kriteria:
- Kontribusi seimbang antar anggota
- Code review participation
- Communication effectiveness
- Conflict resolution
- Peer feedback quality
Metode Evaluasi:
- Peer assessment (anonymous)
- Contribution matrix dari Git analytics
- Meeting attendance dan participation
3. Problem Solving (5%)
Kriteria:
- Kemampuan identifikasi masalah
- Analytical thinking
- Solution creativity
- Implementation effectiveness
- Learning from mistakes
4. Innovation & Creativity (4%)
Kriteria:
- Fitur value-added yang unik
- Technical innovation
- UX innovation
- Approach to challenges
C. Evaluasi Presentasi & Dokumentasi (15%)
1. Dokumentasi Teknis (7%)
Deliverables:
- Architecture diagram
- API documentation
- Database schema
- Code documentation (inline comments, README)
- Installation guide
- Deployment guide
Kriteria:
- Kelengkapan dan detail
- Clarity dan struktur
- Technical accuracy
- Professional formatting
2. User Manual (3%)
Kriteria:
- Kelengkapan panduan per role user
- Screenshot dan visual guide
- Troubleshooting section
- FAQ section
- Bahasa yang mudah dipahami
3. Presentasi Akhir (5%)
Kriteria:
- Clarity of presentation
- Demo effectiveness
- Q&A handling
- Time management
- Visual aids quality
9.3 Rubrik Penilaian Detail
Skala Penilaian
- A (85-100): Excellent - Melebihi ekspektasi, innovation tinggi
- B (70-84): Good - Memenuhi semua requirement dengan baik
- C (60-69): Satisfactory - Memenuhi requirement minimal
- D (50-59): Poor - Banyak kekurangan signifikan
- E (<50): Fail - Tidak memenuhi requirement minimal
Contoh Rubrik: Fungsionalitas OCR KTP
| Skor | Kriteria |
|---|---|
| 90-100 | Akurasi ≥ 90%, bekerja baik di berbagai kondisi pencahayaan, auto-crop KTP, validasi format NIK, handling error excellent, parsing semua field utama (NIK, Nama, TTL, Alamat, RT/RW, Kel/Desa, Kecamatan) |
| 80-89 | Akurasi 80-89%, bekerja baik di kondisi normal, ada preprocessing, error handling baik, parsing minimal 6 field |
| 70-79 | Akurasi 70-79%, bekerja pada kondisi terbatas, preprocessing basic, error handling cukup, parsing minimal 4 field utama |
| 60-69 | Akurasi 60-69%, sering error, butuh kondisi ideal, error handling minimal, parsing 2-3 field |
| <60 | Akurasi < 60% atau tidak berfungsi pada banyak kasus |
Contoh Rubrik: OCR Kartu Keluarga (KK)
| Skor | Kriteria |
|---|---|
| 90-100 | Ekstraksi ≥ 8 anggota keluarga, akurasi ≥ 85%, parsing relasi keluarga, validasi No. KK, handling multi-page |
| 80-89 | Ekstraksi 5-7 anggota keluarga, akurasi 75-84%, parsing field utama per anggota, validasi basic |
| 70-79 | Ekstraksi 3-4 anggota keluarga, akurasi 65-74%, parsing nama & NIK saja |
| 60-69 | Ekstraksi 1-2 anggota keluarga, akurasi 55-64%, parsing terbatas |
| <60 | Tidak dapat ekstrak data keluarga dengan benar |
Contoh Rubrik: OCR Bukti Transfer
| Skor | Kriteria |
|---|---|
| 90-100 | Support ≥ 5 bank, akurasi nominal 95%+, akurasi tanggal 90%+, ekstraksi nama pengirim, validasi format currency |
| 80-89 | Support 3-4 bank, akurasi nominal 85-94%, akurasi tanggal 80-89%, ekstraksi partial info |
| 70-79 | Support 2-3 bank, akurasi nominal 75-84%, akurasi tanggal 70-79% |
| 60-69 | Support 1-2 bank, akurasi nominal 65-74%, sering error |
| <60 | Tidak reliable, akurasi < 65% |
Contoh Rubrik: Face Verification
| Skor | Kriteria |
|---|---|
| 90-100 | FAR < 2%, FRR < 5%, liveness detection, robust terhadap variasi pose, matching cepat < 2 detik |
| 80-89 | FAR 2-5%, FRR 5-10%, basic liveness, handling pose minor variation, matching < 3 detik |
| 70-79 | FAR 5-10%, FRR 10-15%, no liveness, frontal face only, matching < 5 detik |
| 60-69 | FAR 10-20%, FRR 15-25%, tidak reliable, butuh kondisi ideal |
| <60 | FAR > 20% atau FRR > 25%, tidak berfungsi dengan baik |
Keterangan:
- FAR (False Accept Rate): Persentase orang yang salah diterima sebagai match
- FRR (False Reject Rate): Persentase orang yang benar ditolak
9.4 Mekanisme Feedback
A. Feedback Real-time (Daily)
- Daily standup untuk feedback cepat
- Code review comments di GitHub
- Chat group untuk technical discussion
B. Feedback Mingguan
- Sprint review meeting dengan feedback konstruktif
- Written feedback report dari dosen
- Peer feedback session
C. Feedback Milestone
- Comprehensive evaluation report
- One-on-one mentoring session
- Action items untuk improvement
9.5 Quality Gates (Adjusted for 7 Weeks)
Setiap fase harus memenuhi quality gate sebelum lanjut ke fase berikutnya:
| Quality Gate | Minggu | Kriteria Lulus | Action jika Tidak Lulus |
|---|---|---|---|
| Gate 0: Kickoff | 10 | Tim terbentuk, role jelas, environment setup | Tidak bisa mulai project |
| Gate 1: Design Phase | 11 | UI/UX approved, architecture clear, API documented | Max 2 hari revisi, delay sprint 1 |
| Gate 2: MVP Ready | 13 | Core features berfungsi, API connected, no critical bugs | Emergency fix 2 hari, delay AI features |
| Gate 3: Feature Complete | 15 | All features done, CV/ML integrated, bugs < 10 | Polish only, drop non-critical features |
| Gate 4: Production Ready | 16 | UAT passed, docs complete, ready to present | Must present regardless, post-mortem |
Critical Success Factors:
- Minggu 10-11: TIDAK BOLEH DELAY (foundation phase)
- Minggu 12-13: Delay maksimal 2 hari (core development)
- Minggu 14-15: Flexible, AI features dapat di-descope
- Minggu 16: Fixed deadline, adjust scope if needed
9.6 Risk Monitoring Dashboard (7 Weeks Specific)
Red Flags (Immediate Escalation Needed):
- ⚠️ Week 10-11: Environment setup belum selesai hari ke-3
- ⚠️ Week 12: Authentication belum working hari ke-4
- ⚠️ Week 13: API integration masih banyak error hari ke-5
- ⚠️ Week 14: OCR belum jalan hari ke-3 → consider drop feature
- ⚠️ Week 15: Major bugs > 15 → all hands on deck
- ⚠️ Any week: Team member absence > 2 hari tanpa backup
Action Plan per Risk Level:
🔴 Critical Risk (Project Jeopardy):
- Emergency meeting dalam 4 jam
- Dosen intervention immediately
- Scope reduction discussion
- Reallocate resources
- Extended work hours (up to 25 jam/minggu)
🟡 Medium Risk (Need Attention):
- Team discussion dalam 24 jam
- Root cause analysis
- Adjust sprint backlog
- Peer assistance
- Review in next daily standup
🟢 Low Risk (Monitor):
- Document in sprint review
- Add to lessons learned
- Continue monitoring
9.7 Self-Assessment & Reflection (Accelerated)
Weekly Reflection (Individual) - 30 menit setiap Minggu
Template sederhana:
REFLECTION - MINGGU [X]
1. Pencapaian saya minggu ini: [bullets]
2. Challenges terbesar: [1-2 items]
3. Learning baru: [bullets]
4. Commit minggu depan: [specific actions]
5. Help needed: [if any]
Sprint Retrospective (Team) - 30 menit setiap Sprint
Format: Start-Stop-Continue-Try
- Start: Apa yang harus mulai dilakukan?
- Stop: Apa yang harus dihentikan?
- Continue: Apa yang sudah bagus dan perlu dilanjutkan?
- Try: Eksperimen baru yang ingin dicoba?
Example:
- Start: Daily code review, pair programming untuk fitur complex
- Stop: Meeting terlalu lama (cut to max 1 jam)
- Continue: Daily standup yang efektif, good documentation
- Try: AI tools untuk speed up coding (GitHub Copilot)
9.8 Final Evaluation Summary (7 Minggu Timeline)
Komponen Penilaian Akhir:
Total Nilai = (Produk × 60%) + (Proses × 25%) + (Dokumentasi & Presentasi × 15%)
Dimana:
- Produk = (Fungsionalitas × 0.40) + (CV × 0.25) + (ML × 0.20) +
(UI/UX × 0.10) + (Performance × 0.05)
Note: CV bobot naik dari 20% → 25% karena scope bertambah
(3 jenis OCR + face verification)
- Proses = (PM × 0.32) + (Teamwork × 0.32) + (Problem Solving × 0.20) +
(Innovation × 0.16)
- Dok & Presentasi = (Dok Teknis × 0.47) + (User Manual × 0.20) +
(Presentasi × 0.33)
Passing Grade: Minimal 60 (C)
Grade Distribution (Adjusted for Compressed Timeline):
- A (85-100): Semua fitur lengkap + 3 jenis OCR + face verification working + ML berfungsi baik + exceptional quality
- B (70-84): Core features complete + minimal 2 OCR working (KTP + KK atau bukti bayar) + face verification attempt + good quality
- C (60-69): MVP features working + minimal 1 OCR working (KTP) + attempt AI features + acceptable quality
- D (50-59): MVP incomplete atau banyak critical bugs
- E (<50): Major failures atau tidak presentable
Special Consideration untuk Timeline 7 Minggu:
- Jika Core Features (Auth, CRUD, Keuangan, Marketplace) ALL working well: minimum B-
- Jika + OCR KTP working well (akurasi ≥ 80%): minimum B
- Jika + OCR KTP + OCR KK working: minimum B+
- Jika + 3 OCR + face verification working: minimum A-
- Jika + excellent polish, ML, & innovation: potential A/A+
Catatan Penting:
- OCR bukti transfer adalah value-added feature yang sangat praktis, jika berhasil diimplementasikan dengan baik (+5 bonus points)
- Face verification dengan KTP adalah differentiator yang strong (+5 bonus points)
- Kombinasi 3 OCR + face verification = +10 bonus points maksimal
Excellence Award: Tim dengan nilai ≥ 88 mendapat excellence award dan kesempatan publish ke Play Store dengan dukungan kampus
9.9 Weekly Progress Checklist
✅ Minggu 10 Checklist (Inisiasi)
- [ ] Tim terbentuk dan role assigned
- [ ] Project charter dibuat
- [ ] Analisis aplikasi web Jawara selesai
- [ ] Wireframe low-fidelity untuk 5 screens utama
- [ ] Environment setup (IDE, tools, repo)
- [ ] First commit ke GitHub
- [ ] Trello board setup dengan all tasks
✅ Minggu 11 Checklist (Design)
- [ ] Arsitektur sistem documented
- [ ] Database schema designed
- [ ] API endpoints documented (minimum 10 endpoints)
- [ ] UI/UX prototype medium-fidelity (Figma)
- [ ] Design approved oleh dosen
- [ ] Project structure setup
- [ ] Sprint 1 backlog ready
✅ Minggu 12 Checklist (Sprint 1)
- [ ] Login berfungsi untuk semua role
- [ ] List warga with search & filter
- [ ] Detail warga display
- [ ] Navigation drawer/bottom nav
- [ ] API client setup
- [ ] Error handling basic
- [ ] State management implemented
✅ Minggu 13 Checklist (Sprint 2)
- [ ] CRUD warga complete (add, edit, delete)
- [ ] Modul keuangan: input iuran, list transaksi
- [ ] Modul marketplace: list produk, detail produk
- [ ] Local storage (SQLite) working
- [ ] Dashboard basic dengan 3 charts
- [ ] Push notification setup
- [ ] Integration testing passed
✅ Minggu 14 Checklist (Computer Vision - INTENSIVE)
- [ ] OCR KTP implementation done & tested
- [ ] OCR KTP akurasi ≥ 75% pada test dataset (target 80%)
- [ ] OCR Kartu Keluarga (KK) implementation done
- [ ] OCR KK dapat ekstrak minimal 5 anggota keluarga
- [ ] OCR bukti transfer implementation done
- [ ] OCR bukti transfer dapat ekstrak: nominal, tanggal, pengirim
- [ ] Support minimal 3 bank populer (BCA, Mandiri, BRI)
- [ ] Face detection dari foto real-time working
- [ ] Face verification (matching dengan foto KTP) working
- [ ] Face verification FAR (False Accept Rate) < 10%
- [ ] Camera integration smooth dengan preview
- [ ] Image preprocessing working (crop, enhance, denoise)
- [ ] Parsing OCR result to form untuk KTP & KK
- [ ] Validation format data (NIK 16 digit, No. KK, dll)
- [ ] Error handling untuk OCR failures dengan fallback manual input
- [ ] UI guide overlay untuk document scanning
- [ ] Real-time feedback untuk kualitas foto (blur, gelap, dll)
- [ ] Testing berbagai kondisi pencahayaan
- [ ] Image classification marketplace (optional) working
- [ ] Camera integration smooth
- [ ] Image preprocessing working
- [ ] Parsing OCR result to form
- [ ] Error handling untuk OCR failures
- [ ] Image classification (optional) working
✅ Minggu 15 Checklist (ML + Polish)
- [ ] ML model trained dan converted to TFLite
- [ ] ML integration complete (prediction atau recommendation)
- [ ] All critical bugs fixed (< 5 critical bugs)
- [ ] UI/UX polished
- [ ] Performance optimization done
- [ ] Security check passed
- [ ] APK generated dan tested
✅ Minggu 16 Checklist (Final)
- [ ] UAT completed dengan ≥ 5 users
- [ ] All bugs documented dan prioritized
- [ ] Documentation complete (technical + user manual)
- [ ] Video demo ready (3-5 menit)
- [ ] Presentation slides ready
- [ ] APK final ready for distribution
- [ ] All deliverables submitted
- [ ] Presentation delivered
9.10 Communication Protocol (7 Minggu)
Daily Communication
- Platform: Discord/Telegram group
- Response time: < 2 jam untuk urgent issues
- Availability: 08.00 - 22.00 WIB
Weekly Communication
- Sprint Review: Zoom meeting (recorded)
- Dosen Consultation: Offline/online, scheduled via email
- Peer Review: GitHub PR comments
Emergency Communication
- Trigger: Critical blocker, project at risk, team conflict
- Protocol:
- Post in group immediately
- Tag team lead + dosen
- Emergency meeting dalam 4 jam
- Document issue dan resolution
Documentation Communication
- Platform: Google Drive (shared folder)
- Naming Convention:
[MingguX]_[Deliverable]_[Date].pdf - Version Control: Git tags untuk major versions
9.11 Success Metrics Dashboard
Track Weekly:
| Metric | Target | Actual | Status |
|---|---|---|---|
| Velocity | |||
| Tasks completed | 15-20/week | [X] | 🟢/🟡/🔴 |
| Story points | 30-40/week | [X] | 🟢/🟡/🔴 |
| Quality | |||
| Critical bugs | < 3 | [X] | 🟢/🟡/🔴 |
| Code review done | 100% | [X]% | 🟢/🟡/🔴 |
| Test coverage | > 50% | [X]% | 🟢/🟡/🔴 |
| Collaboration | |||
| Daily standup attendance | 100% | [X]% | 🟢/🟡/🔴 |
| Commits per person | 5-10/week | [X] | 🟢/🟡/🔴 |
| PR review time | < 24 jam | [X] | 🟢/🟡/🔴 |
Project Health Score:
- All Green (🟢): Healthy, on track
- 1-2 Yellow (🟡): Need attention, monitor closely
- 3+ Yellow atau 1 Red (🔴): At risk, intervention needed
10. LAMPIRAN
A. Template Dokumen (belum ada)
- Sprint Planning Template
- Daily Standup Log
- Bug Report Template
- Code Review Checklist
- Testing Report Template
- User Acceptance Test (UAT) Form
B. Resources & References
Mobile Development:
- Flutter Documentation: https://flutter.dev/docs
- React Native Documentation: https://reactnative.dev/
- Material Design Guidelines: https://material.io/
Computer Vision:
- TensorFlow Lite: https://www.tensorflow.org/lite
- ML Kit: https://developers.google.com/ml-kit
- OpenCV: https://opencv.org/
Machine Learning:
- scikit-learn: https://scikit-learn.org/
- TensorFlow: https://www.tensorflow.org/
- Kaggle Datasets: https://www.kaggle.com/datasets
Best Practices:
- Clean Code by Robert Martin
- Design Patterns
- Git Flow Workflow
- Agile Scrum Guide
0 komentar :
Posting Komentar