1 BAB III ANALISA DAN PERANCANGAN SOFTWARE 3.1. Analisa Kebutuhan Aplikasi Dalam kebutuhan aplikasi pertama yang harus dilakukan adalah menganalisa berbagai kebutuhan yang di perlukan dalam rancangan aplikasi untuk dijadikan sebagai bahan masukan atau acuan dalam pengembangan aplikasi tersebut. Kebutuhan-kebutuhan ini diperlukan sebagai input yang diperlukan, output yang diharapkan dan pembuatan design user interface yang mudah dipahami dan mudah digunakan oleh pengguna atau user. 3.1.1. Identifikasi Permasalahan Permasalahan yang akan dibahas pada penyusunan skripsi ini adalah pembuatan aplikasi mobile dengan sistem operasi android untuk aplikasi pengenalan budaya aceh. 3.1.2. Analisa Kebutuhan Kebutuhan yang akan di analisa mencakup perangkat lunak dan perangkat keras yang digunakan. 1. Kebutuhan perangkat lunak yang digunakan penulis. Perangkat lunak yang digunakan oleh penulis untuk pengembangan aplikasi ini, sebagai berikut : 34
35 MIT App Inventor 2 App Inventor adalah sistem perangkat lunak untuk membuat aplikasi pada perangkat Android. Uniknya, App Inventor dibuat tidak seperti sistem pengembangan aplikasi biasa, di mana seorang programmer harus menuliskan baris-baris kode program, melainkan dengan interaksi visual berbasis grafis. Dalam kaitan ini, inventor dapat disebut sebagai sistem terpadu untuk pengembangan aplikasi berbasis blok-blok grafis (dalam istilah asing:blocks language). 2. Kebutuhan perangkat keras yang digunakan penulis. a. Laptop, dengan spesifikasi : 1. Processor : Intel Celeron CPU 1007U @ 1.50 GHZ 1.50 GHZ 2. Ram : 2.00 GB 3. Graphic : Intel HD Graphics 4. Harddisk : 250 GB 5. OS : Windows 10 64-Bit b. Smart Phone, dengan spesifikasi : 1. Processor : Snapdragon 400 Quad Core 1.1 GHz Adreno 305 2. Memory : 1 GB 3. Dimensi : 135 x 67 x 10.1 mm 4. OS : Android OS, v5.1.1 (Lollipop)
36 3.2. Desain Perancangan sistem atau desain secara umum dimaksudkan agar memberikan gambaran umum mengenai sistem yang akan dibangun. Perancangan ini mengidentifikasi komponen sistem informasi yang akan dibangun secara detail. Adapaun perancangan sistem yang dimaksud adalah sebagai berikut : 3.2.1. Rancangan Algoritma Pada Kasus Algoritma Sekuensial Pada Halaman Screen1 1. Screen1 Gambar III.1 Blok Screen1
37 a. Blok Screen1 adalah perintah awal untuk mengaktifkan waktu dari Clock1 dan Clock2. b. Blok Clock2 adalah perintah yang berfungsi untuk mengatur sudut rotasi pada gambar. c. Blok Clock1 adalah perintah lanjutan untuk mengaktifkan waktu dari Clock2 dan Clock1 menuju ke screen berikutnya. 2. Menu Gambar III.2 Blok Menu a. Blok ButtonMateri adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah Materi. b. Blok ButtonInfo adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah Info. c. Blok Keluar adalah perintah untuk menutup aplikasi.
38 3. Materi Gambar III.3 Blok Materi a. Blok ButtonSuku adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah SukuAceh. b. Blok ButtonRumahAdat adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah RumohAceh. c. Blok ButtonPakaianAdat adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah LintoBaro. d. Blok ButtonMakananKhas adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah MieAceh. e. Blok ButtonSenjataDaerah adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah Rencong. f. Blok ButtonAlatMusikDaerah adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah TaktokTrieng. g. Blok ButonTarianDaerah adalah perintah untuk membuka screen lain. Screen yang dimaksud adalah TariSaman.
39 4. Suku Aceh Gambar III.4 Blok SukuAceh a. Blok ButtonSukuAceh adalah perintah awal untuk mengaktifkan dan menjalankan Clock1. b. Blok Clock1 adalah perintah waktu yang digunakan untuk menampilkan dan menyembunyikan huruf atau Label yang terdapat dalam VerticalArrangement1. c. Blok ButtonSelanjutnya adalah perintah untuk membuka screen selanjutnya.
40 5. Info Gambar III.5 Blok Info a. Blok ButtonTentangAplikasi adalah blok perintah untuk menampilkan dan menjalankan Clock1. b. Blok Clock1 adalah perintah waktu yang digunakan untuk menampilkan dan menyembunyikan huruf atau Label yang terdapat dalam VerticalArrangement1.
41 3.2.2. Software Architecture 1. Pseudocode Mempermudah manusia dalam pemahaman dibandingkan menggunakan bahasa pemrograman yang umum digunakan, terlebih aspeknya yang ringkas serta tidak bergantung pada suatu sistem tertentu merupakan prinsip utama dalam suatu algoritma
42 a. Diagram Use Case Gambar III.6 Diagram Use Case Pengenalan Budaya Aceh
43 b. Diagram Activity Gambar III.7 Diagram Activity Pengenalan Budaya Aceh
44 c. Sequence Diagram Materi Pengenalan Budaya Aceh Gambar III.8 Sequence Diagram Materi Pengenalan Budaya Aceh
45 d. Deployment Diagram Gambar III.9 Deployment Diagram Pengenalan Budaya Aceh
46 3.2.3. User Interface Desain User Interface pada aplikasi ini melipputi,antara lain : MATERI INFO KELUAR Gambar III.10 User Interface Menu Utama a. Jika dipilih tombol materi maka akan menampilkan informasi tentang budaya aceh. b. Jika dipilih tombol info maka akan menampilkan informasi tentang aplikasi. c. Jika dipilih tombol keluar maka akan keluar dari aplikasi.
47 SUKU RUMAH ADAT PAKAIAN ADAT MAKANAN KHAS SENJATA DAERAH ALAT MUSIK TARIAN DAERAH Gambar III.11 User Interface Pada Halaman Materi a. Jika dipilih tombol suku maka akan menampilkan informasi tentang suku. b. Jika dipilih tombol rumah adat maka akan menampilkan informasi tentang rumah adat. c. Jika dipilih tombol pakaian adat maka akan menampilkan informasi tentang pakaian adat. d. Jika dipilih tombol makanan khas maka akan menampilkan informasi tentang makanan khas.
48 e. Jika dipilih tombol senjata daerah maka akan menampilkan informasi tentang senjata daerah. f. Jika dipilih tombol alat musik maka akan menampilkan informasi tentang alat musik. g. Jika dipilih tombol tarian daerah maka akan menampilkan informasi tentang tarian daerah. 3.3. Implementasi Implementasi merupakan salah satu tahap dalam pengembangan sebuah perangkat lunak. Implementasi aplikasi Pengenalan Budaya Aceh pada aplikasi mobile android menggunakan bahasa pemrograman Block Language pada compile MIT App Inventor.
49 1. Tampilan Screen1 Gambar III.12 Tampilan Screen1
50 2. Tampilan Menu Utama Gambar III.13 Tampilan Menu Utama
51 3. Tampilan Materi Gambar III.14 Tampilan Materi
52 Gambar III.15 Tampilan Informasi Yang Terdapat Pada Menu Materi Suku
53 4. Tampilan Info Gambar III.16 Tampilan Informasi Yang Terdapat Pada Menu Info 3.4. Testing Testing adalah proses pengujian suatu program untuk mendeteksi perbedaan antara kondisi yang ada dengan kondisi yang diinginkan (error atau bugs) untuk mengetahui kesiapan sebuah program dalam melakukan input data, proses pengolahan data dan output dari data yang diharapkan. Pengujian testing disini penulis menggunakan metode black box testing dan white box testing.
54 3.4.1. Pengujian Black Box Black Box Testing adalah metode pengujian perangkat lunak untuk menunjukkan cara beroperasinya, walaupun dirancang untuk menemukan kesalahan, pengujian black box digunakan untuk mendemonstrasikan fungsi software yang di operasikan apakah input data, proses data, dan output data sesuai apa yang diharapkan. Langkah selanjutnya adalah melakukan pengecekan terhadap fungsi logika pada aplikasi ini, dalam hal ini diambil sample fungsi logika untuk aplikasi pengenalan budaya aceh. Untuk mengecek apakah terdapat kesalahan logika dalam aplikasi ini, maka dibuat table percobaan sebagai berikut : Table III.1 Black Box Testing Menu Utama Data Data yang di Pengamatan Kesimpulan Masukan Harapkan Klik tombol Menampilkan Halaman menu Valid materi halaman menu materi tampil materi Klik tombol Menampilkan Halaman info Valid info halaman info tampil Klik tombol Keluar dari Aplikasi Valid keluar aplikasi berhasil keluar
55 Table III.2 Black Box Testing Menu Materi Data Data yang di Pengamatan Kesimpulan Masukan Harapkan Klik tombol Menampilkan Informasi suku Valid suku informasi suku tampil Klik tombol Menampilkan Informasi Valid rumah adat informasi rumah adat rumah adat tampil Klik tombol Menampilkan Informasi Valid pakaian adat informasi pakaian adat pakaian adat tampil Klik tombol Menampilkan Informasi Valid makanan informasi makanan khas khas makanan khas tampil Klik tombol Menampilkan Informasi Valid senjata informasi senjata daerah daerah senjata daerah tampil Klik tombol Menampilkan Informasi alat Valid alat musik informasi alat musik tampil musik Klik tombol Menampilkan Informasi Valid
56 tarian daerah informasi tarian daerah tarian daerah tampil Pada table di atas menunjukan hasil pada aplikasi pengenalan budaya aceh ini sesuai dengan hasil yang diharapkan. Maka dari itu dapat dipastikan jika aplikasi pengenalan budaya aceh ini tidak ditemukan logic error atau kesalahan logika. Jika ada unit yang sesuai dengan outputnya maka untuk menyelesaikannya, diteruskan pada pengujian kedua, yaitu white box testing. 3.4.2. Pengujian White Box Testing White Box Testing berarti pengujian terhadap perhitungan yang dihasilkan oleh aplikasi yang sudah dibuat didasarkan pada pemeriksaan detail procedural, apakah terjadi kesalahan atau kekurangan dalam perhitungan. Hal ini dapat dijadikan bahan evaluasi untuk memperbaiki kesalahan kesalahan pada perangkat lunak yang sudah dibangun. Testing menggunakan white box. Cyclomatic Complexity Cyclomatic Complexity merupakan suatu sistem pengukuran yang menyediakan ukuran kuantitatif dari kompleksitas logika suatu program. Pada Basis PathTesting, hasil dari cyclomatic complexity digunakan untuk
57 menentukan banyaknya independentpaths. Independentpath adalah sebuah kondisi pada program yang menghubungkan node awal dengan node akhir. Terdapat 2 persamaan yang digunakan, yaitu : V(G) = E N + 2 V(G) = P + 1 Atau Keterangan : V(G) = Cyclomatic Complexity E = Jumlah Edge (panah) N = Jumlah Node (lingkaran) P = Jumlah Predicate Node
58 1. Menu Utama Gambar III.17 Flowchart Bagan Alir Menu Utama
59 Gambar III.18 Flowchart Grafik Alir Menu Utama Dari gambar III.17 dan III.18 dapat dihitung cyclomatic complexity sebagai berikut : V(G) = E N + 2 V(G) = 8 7 + 2 V(G) = 1 + 2 V(G) = 3
60 Jadi, cyclomatic complexity untuk gambar III.17 dan III.18 adalah 3. Berdasarkan cyclomatic complexity tersebut, maka terdapat 3 path yang terdiri dari : Path 1 : 1,2,3,4,5 Path 2 : 1,2,3,6,2,3,4,5 Path 3 : 1,2,3,4,7,2,3,4,5
61 2. Menu Materi Gambar III.19 Flowchart Bagan Menu Materi
62 Gambar III.20 Flowchart Grafik Alir Menu Materi
63 Dari gambar III.19 dan III.20 dapat dihitung cyclomatic complexity sebagai berikut : V(G) = E N + 2 V(G) = 23 17 + 2 V(G) = 6 + 2 V(G) = 8 Jadi, cyclomatic complexity untuk gambar III.19 dan III.20 adalah 8. Berdasarkan cyclomatic complexity tersebut, maka terdapat 8 path yang terdiri dari : Path 1 : 1,2,3,4,5,6,7,8,9,10 Path 2 : 1,2,3,11,2,3,4,5,6,7,8,9,10 Path 3 : 1,2,3,4,12,2,3,4,5,6,7,8,9,10 Path 4 : 1,2,3,4,5,13,2,3,4,5,6,7,8,9,10 Path 5 : 1,2,3,4,5,6,14,2,3,4,5,6,7,8,9,10 Path 6 : 1,2,3,4,5,6,7,15,2,3,4,5,6,7,8,9,10 Path 7 : 1,2,3,4,5,6,7,8,16,2,3,4,5,6,7,8,9,10 Path 8 : 1,2,3,4,5,6,7,8,9,17,2,3,4,5,6,7,8,9,10
64 3.5. Support Dalam bagian ini merupakan perangkat yang digunakan untuk mendukung pemasangan aplikasi yang telah diujikan. Perangkat pendukung yang digunakan pada aplikasi ini menggunakan sebuah smartphone berbasis sistem operasi android. Tabel III.1 Support Kebutuhan Keterangan Tipe Asus Zenfone Go X014D Sistem Operasi Android Lollipop (5.1.1) Processor Snapdragon 400 Quad Core 1.1 GHz Adreno 305 RAM 1 GB