Modeling Pengembangan Perangkat Lunak Media Pembelajaran Mobile

76 3 Representasi Interface Representasi interface yakni perancangan secara rinci desain interface atau antarmuka yang akan dibuat. Representasi interface pada penelitian ini dilakukan dengan membuat story board guna memudahkan pembuatan media pembelajaran mobile. Salah satu hasil representasi interface media pembelajaran mobile dapat dilihat pada Gambar 7, sedangkan story board media pembelajaran mobile secara lengkap dapat dilihat pada Lampiran 5. Gambar 7. Tampilan Halaman Materi 4 Algoritma Perancangan algoritma secara dasar bersifat lebih spesifik daripada representasi interface. Perancangan algoritma menggambarkan secara rinci komponen-komponen perangkat lunak yang dibuat dalam bentuk flowchart. Flowchart media pembeljaran mobile dapat dilihat pada Lampiran 4. 77

d. Construction

Pada tahap construction dilakukan dalam dua tahap, yaitu tahap pengkodean dan tahap pengujian. Pada tahap pengujian dilakukan validasi instrumen, alpha testing, dan kesesuaian dengan standar perangkat lunak ISO 9126. Pengujian standar perangkat lunak ISO 9126 meliputi uji functionality menggunakan black box testing, uji reliability, dan uji usability menggunakan beta testing. Berikut penjelasan dalam tahap construction. 1 Pengkodean Tahap pengkodean merupakan tahap pembuatan kode pada media pembelajaran mobile gerbang logika dasar setelah dilakukan perencanaan dan desain. Desain yang telah dibuat kemudian direalisasikan ke dalam bahasa pemrograman yakni Android Studio sehingga media pembelajaran mobile gerbang logika dasar yang direncanakan dapat berfungsi sesuai harapan. Proses pengkodean yaitu memasukkan komponen-komponen perintah yang disesuaikan desain yang telah dirancang menggunakan software Android Studio. Halaman awal berisikan empat komponen. Komponen-komponen tersebut meliputi tombol navigasi ”home”, logo aplikasi beserta penjelasan, tombol navigasi “tentang”, dan tombol navigasi “exit”. Pada halaman ini user dapat memilih untuk lanjut ke halaman selanjutnya atau keluar dari aplikasi. Kode-kode yang mendasari halaman awal media pembelajaran mobile gerbang logika dasar dapat di lihat pada Tabel 21. 78 Tabel 21. Kode Progam Halaman Awal Media Pembelajaran Mobile Kode Program Penjelasan protected ImageButton btnExit; protected ImageView btnHome; protected Button btnTentang; Inisialisasi view yang ada di halaman utama, ImageButton, ImageView, dan Button. public static boolean isPlaying = false; public static boolean mIsBound = false; public static MusicService mServ; - Pembuatan variabel “public static” variabel yang adapat diakses dari kelas manapun dalam atu project. - “isPlaying” untuk mengetahui apakah musik onoff. - “isBound” untuk mengetahui apakah service untuk music backgroundnya terhubung atau tidak. - “nServ” adalah variabel dari musik service untuk menjalankan musik di background. public static ServiceConnection Scon =new ServiceConnection { Override public void onServiceConnectedComponentName name, IBinder service { MusicService.ServiceBinder binder = MusicService.ServiceBinder service; mServ = binder.getService; mIsBound = true; } Override public void onServiceDisconnectedComponentName name { mServ = null; mIsBound = false; } }; Variabel “Scon” untuk mengetahui koneksi antara aplikasi dengan service musik. - Jika terhubung connect akan memanggil fungsi onServiceConnected di dalamnya yang mengubah isBound menjadi “true” dan menjalankan MusicService. - Jika tidak terhubung disconnect maka isBound menjadi “false” dan mServ dibuat null atau dihilangkan. 79 Kode Program Penjelasan Override protected void onCreateBundle savedInstanceState { super.onCreatesavedInstanceState; super.setContentViewR.layout.activity_mai n; initView; doBindService; } void doBindService{ bindServicenew Intentthis,MusicService.class, Scon, Context.BIND_AUTO_CREATE; mIsBound = true; isPlaying = true; Intent music = new Intent; music.setClassthis,MusicService.class; startServicemusic; } Fungsi “doBindService” digunakan untuk menjalankan service music background. Cara menjalankannya dengan Intent music dan mengubah nilai-nilai dari variabel di dalamnya. void doUnbindService { ifmIsBound { unbindServiceScon; mIsBound = false; isPlaying = false; mServ.stopMusic; } } Fungsi “doUnbound” digunakan untuk menghentikan service music background. Override protected void onDestroy { super.onDestroy; doUnbindService; } Fungsi “onDestroy” digunakan untuk mengetahui jika aplikasi sudah ditutup. Jika aplikasi sudah ditutup, maka akan memanggil fungsi doUnbindService untuk menghentikan music background, sehingga ketika aplikasi ditutup, music backgroundnya akan mati.