Enrolment options
Pengembangan Aplikasi Mobile (Flutter dan Kolaborasi Tim)
Mata kuliah ini mengajak mahasiswa belajar membuat aplikasi mobile secara bertahap, mulai dari dasar pemrograman hingga menghasilkan aplikasi yang dapat digunakan. Pembelajaran diawali dengan latihan logika dan pengenalan bahasa Dart, kemudian dilanjutkan dengan membuat tampilan, navigasi, dan pengelolaan state di Flutter.
Seiring berkembangnya aplikasi, mahasiswa belajar menata kode menggunakan design pattern dan arsitektur sederhana. Mahasiswa juga akan menghubungkan aplikasi dengan Firebase Authentication untuk login, Cloud Firestore untuk penyimpanan data, serta layanan backend melalui API.
Untuk mengenal kemampuan perangkat mobile, mahasiswa mencoba penggunaan kamera dan pemindaian QR. Praktik Bluetooth printer atau NFC dapat ditambahkan sesuai ketersediaan perangkat. Aplikasi yang dibuat kemudian diuji melalui pengujian dasar dan pengenalan pengujian otomatis menggunakan Maestro.
Selama perkuliahan, mahasiswa mengerjakan satu proyek aplikasi secara berkelompok dengan bantuan Git dan GitHub. Melalui proyek ini, mahasiswa belajar membagi tugas, mencatat perubahan kode, memeriksa pekerjaan rekan, serta menyelesaikan konflik saat menggabungkan kode. Setiap anggota diharapkan memahami bagian yang dikerjakannya dan dapat menjelaskan bagaimana bagian tersebut terhubung dengan aplikasi secara keseluruhan.
Tujuan pembelajaran
Setelah mengikuti mata kuliah ini, mahasiswa diharapkan mampu:
Memahami kebutuhan pengguna dan menguraikannya menjadi langkah penyelesaian yang jelas, mulai dari input, proses, dan output hingga algoritma dan kode.
Membuat aplikasi Flutter yang memiliki tampilan, navigasi, pengelolaan state, validasi input, dan pengolahan data.
Menata kode dengan memisahkan tampilan, logika aplikasi, dan akses data agar lebih mudah dipahami dan dikembangkan.
Menghubungkan aplikasi dengan Firebase, API backend, dan fitur perangkat mobile, termasuk menangani kegagalan seperti koneksi terputus atau data yang tidak sesuai.
Menyusun skenario pengujian, menjalankan pengujian, serta mencari dan memperbaiki penyebab bug berdasarkan hasil yang ditemukan.
Bekerja sama menggunakan Git dan GitHub, mulai dari pembagian tugas hingga memberikan masukan terhadap kode rekan satu tim.
Belajar bekerja sebagai engineer
Dalam proyek perkuliahan, mahasiswa berlatih memahami masalah sebelum menulis kode. Mereka juga belajar menentukan cara memeriksa apakah solusi yang dibuat sudah sesuai kebutuhan. Proses ini dilakukan secara bertahap, dengan ruang untuk mencoba, menemukan kesalahan, dan memperbaiki hasil pekerjaan.
| Tahap | Kegiatan mahasiswa | Hasil yang diharapkan |
|---|---|---|
| Memahami masalah | Mengenali siapa penggunanya, apa kebutuhannya, dan apa saja yang akan dikerjakan | Rumusan masalah dan alur pengguna |
| Menentukan keberhasilan | Menuliskan kondisi yang harus dipenuhi agar fitur dianggap selesai dan berfungsi | Kriteria penerimaan (acceptance criteria) |
| Merancang solusi | Membuat rancangan tampilan, struktur data, dan pembagian komponen | Rancangan sederhana sebagai acuan pengerjaan |
| Membagi pekerjaan | Memecah fitur menjadi tugas kecil dan menentukan penanggung jawabnya | Daftar issue di GitHub dengan pembagian tugas yang jelas |
| Membuat fitur | Menulis kode secara bertahap dan mencatat perubahan melalui Git | Fitur yang dapat dijalankan |
| Menguji aplikasi | Mencoba alur normal, kondisi gagal, dan kasus batas | Catatan hasil pengujian dan bug yang ditemukan |
| Meninjau kode | Memeriksa perubahan kode rekan dan mendiskusikan masukan | Kode yang sudah diperiksa dan diperbaiki sebelum digabungkan |
| Merilis dan mengevaluasi | Membuat APK, mendemonstrasikan aplikasi, dan menerima umpan balik | Aplikasi yang dapat dicoba serta daftar perbaikan berikutnya |
- Teacher: I Ketut Gunawan