Membangun Aplikasi Mobile
Dua Model SDLC Aplikasi Mobile SDLC Aplikasi Mobile = SDLC Aplikasi umum lainnya Kegiatannya dipilah-pilah & dikelompokkan menjadi: - Fase ANALISIS KEBUTUHAN (Requiments) - Fase PERANCANGAN (Design) - Fase CODING - Fase PENGUJIAN - Fase IMPLEMENTASI SISTEM Perbedaan model-model SDLC terletak pada: Pengelompokkan kegiatan & istilah tiap fase Produk tiap fase Dua model SDLC paling populer : 1. WATERFALL 2. ITERATIVE and INCREMENTAL SPIRALS
WATERFALL Metode konvensional/klasik SDLC Analisis Kebutuhan Perancangan Coding Pengujian Implementasi Sistem Aplikasi dibangun tahap per-tahap. Sebuah tahap baru dapat dilakukan hanya jika tahap sebelumnya selesai dilakukan ─ Model Waterfall ini TIDAK FLEKSIBEL & TIDAK ADAPTABLE terhadap kesalahan yg ditemukan dalam fase sebelumnya
ITERATIVE & INCREMENTAL SPIRALS Pendekatan modern, lebih realistis: Problem sering kali ditemukan saat fase berikutnya dijalankan Aplikasi dibangun melalui model PERULANGAN & PENINGKATAN SEDIKIT DEMI SEDIKIT IMPLEMENTASI SISTEM PERENCANAAN Release 1 Release 2 Release 3 Setiap 1 siklus dilaksanakan dengan cepat (Trial Error) Setiap kali Coding selesai, sistem di-uji/release ditemukan problemnya, peningkatan dokumentasi & fungsi sistem Siklus pengembangan diulang2 hingga sistem dapat diterima (memenuhi tujuan)
ITERATIVE & INCREMENTAL SPIRALS IMPLEMENTASI SISTEM PERENCANAAN Release 1 Release 2 Release 3 Kelebihan Metode ini: + Risiko overtime dapat diminimasi + Perkembangan proyek/aplikasi mudah diamati dan bukti fisik langsung terlihat tiap kali releasing + Semakin awal release/ujicoba aplikasi semakin cepat mengungkap analisis kebutuhan dan problem2 yg belum terakomodasi (release ~ prototype) REKOMENDASI untuk SDLC Aplikasi Mobile
Detail Tahapan-Tahapan SDLC Aplikasi Mobile PERENCANAAN (Planning) ANALISIS KEBUTUHAN (Requirements) PERANCANGAN (Design) PENULISAN CODE PROGRAM (Coding) PENGUJIAN (Testing) IMPLEMENTASI SISTEM & RELEASE
PERENCANAAN (Planning) Menyusun & Merencanakan PT2M: People (tim)? Time? Materials (hardware, software, tools, SDKs)? Money?
ANALISIS KEBUTUHAN (Requirements) Terdapat 5 kelompok Analisis Kebutuhan yang harus diinvestigasi Analisis kebutuhan PENGGUNA Analisis kebutuhan BISNIS Analisis kebutuhan FUNGSIONAL Sistem Analisis kebutuhan OPERASIONAL Analisis kebutuhan SISTEM Analisis kebutuhan LAINNYA
Analisis kebutuhan PENGGUNA Tanyakan ke calon pengguna sistem (end-user, operator, staf help-desk, administrator): - penginnya TAMPILAN sistem seperti apa? - Bagaimana Pengguna Berinteraksi dengan Sistem? - Bagaimana Dokumentasi Sistem yang diinginkan? 2. Analisis kebutuhan BISNIS Tanyakan & Definisikan: a. Apa tujuan Bisnis dikembangkannya sistem? b. Hitung berapa Total Biaya untuk setiap pengadaan Mobile Device untuk setiap orang (Total Cost of Ownership – TCO), mencakup * Biaya bahan/material: hardware, software, layanan jaringan * Biaya pengembangan aplikasi: honor pengembang * Biaya operasional: biaya operasional sehari2, supports & pelatihan Ingat: Biaya Biaya cukup 1 kali pengeluaran (ct. pembelian alat) Biaya rutin (ct. support, biaya operasional)
2. Analisis kebutuhan BISNIS Tanyakan & Definisikan: c. Apa Keuntungan dari Kepemilikan sistem baru ? (Total Benefit of Ownership – TBO): ct. peningkatan produktivitas karyawan, peningkatan pemasukan persh. Hasil dr peningkatan produktivitas, peningkatan akurasi, peningkatan keamanan, penurunan biaya hasil dari efisiensi dan proses perulangan d. Hitung waktu balik modalnya (Return of Investment – ROI)? Perhitungan ROI ini terkait dengan perbandingan Total Benefit of Ownership (TBO) dengan Total Cost of Ownership (TCO)
3. Analisis kebutuhan FUNGSIONAL Aplikasi Tanyakan fungsi-fungsi apa yang akan mampu dilakukan aplikasi? a. FUNGSI-FUNGSI SPESIFIK Aplikasi? b. FUNGSI-FUNGSI AKSES : Authentication, Enrollment, Access Control? c. FUNGSI-FUNGSI PELENGKAP ct: print report, copy data…
PERANCANGAN (Design) Lakukan 1. PERANCANGAN ARSITEKTUR SISTEM 2. PERANCANGAN BASIS DATA ERD, Normalisasi Tabel yang dibutuhkan 3. PERANCANGAN USER-SYSTEM INTERFACE Diagram Menu Tampilan Tiap Page 4. PERANCANGAN MODEL Flowchart
CODING TESTING Fungsionalitas (Functionality) ? Kemudahan Penggunaan (Usability) ? Performance ? Keamanan ? Dua pilihan metode: 1. BLACK BOX : Input Vs Output 2. WHITE BOX : detail tiap komponen/fungsi