34
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 :
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)
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
Sumber : Hasil Penelitian
Gambar III.1 Blok Screen1
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
Sumber : Hasil Penelitian
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.
3. Materi
Sumber : Hasil Penelitian
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.
4. Suku Aceh
Sumber : Hasil Penelitian
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.
5. Info
Sumber : Hasil Penelitian
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.
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
a. Diagram Use Case
Sumber : Hasil Penelitian
Gambar III.6 Diagram Use Case Pengenalan Budaya Aceh
b. Diagram Activity
Sumber : Hasil Penelitian
Gambar III.7 Diagram Activity Pengenalan Budaya Aceh
c. Sequence Diagram Materi Pengenalan Budaya Aceh
Sumber : Hasil Penelitian
Gambar III.8 Sequence Diagram Materi Pengenalan Budaya Aceh
d. Deployment Diagram
Sumber : Hasil Penelitian
Gambar III.9 Deployment Diagram Pengenalan Budaya Aceh
3.2.3. User Interface
Desain User Interface pada aplikasi ini melipputi,antara lain :
Sumber : Hasil Penelitian
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.
MATERI INFO
KELUAR
Sumber : Hasil Penelitian
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.
SUKU RUMAH ADAT PAKAIAN ADAT MAKANAN KHAS SENJATA DAERAH
ALAT MUSIK TARIAN DAERAH
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.
1. Tampilan Screen1
Sumber : Hasil Penelitian
Gambar III.12 Tampilan Screen1
2. Tampilan Menu Utama
Sumber : Hasil Penelitian
Gambar III.13 Tampilan Menu Utama
3. Tampilan Materi
Sumber : Hasil Penelitian
Gambar III.14 Tampilan Materi
Sumber : Hasil Penelitian
Gambar III.15 Tampilan Informasi Yang Terdapat Pada Menu Materi Suku
4. Tampilan Info
Sumber : Hasil Penelitian
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.
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 Masukan
Data yang di Harapkan
Pengamatan Kesimpulan
Klik tombol materi
Menampilkan halaman menu materi
Halaman menu materi tampil
Valid
Klik tombol info
Menampilkan halaman info
Halaman info tampil
Valid
Klik tombol keluar
Keluar dari aplikasi
Aplikasi berhasil keluar
Valid
Sumber : Hasil Penelitian
Table III.2 Black Box Testing Menu Materi Data
Masukan
Data yang di Harapkan
Pengamatan Kesimpulan
Klik tombol suku
Menampilkan informasi suku
Informasi suku tampil
Valid
Klik tombol rumah adat
Menampilkan informasi rumah adat
Informasi rumah adat tampil
Valid
Klik tombol pakaian adat
Menampilkan informasi pakaian adat
Informasi pakaian adat tampil
Valid
Klik tombol makanan khas
Menampilkan informasi makanan khas
Informasi makanan khas tampil
Valid
Klik tombol senjata daerah
Menampilkan informasi senjata daerah
Informasi senjata daerah tampil
Valid
Klik tombol alat musik
Menampilkan informasi alat musik
Informasi alat musik tampil
Valid
Klik tombol Menampilkan Informasi Valid
tarian daerah informasi tarian daerah
tarian daerah tampil Sumber : Hasil Penelitian
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
menentukan banyaknya independentpaths. Independentpath adalah sebuah kondisi pada program yang menghubungkan node awal dengan node akhir.
Terdapat 2 persamaan yang digunakan, yaitu :
Atau Keterangan :
V(G) = Cyclomatic Complexity E = Jumlah Edge (panah) N = Jumlah Node (lingkaran) P = Jumlah Predicate Node
V(G) = E – N + 2 V(G) = P + 1
1. Menu Utama
Sumber : Hasil Penelitian
Gambar III.17 Flowchart Bagan Alir Menu Utama
Sumber : Hasil Penelitian
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
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
2. Menu Materi
Sumber : Hasil Penelitian
Gambar III.19 Flowchart Bagan Menu Materi
Sumber : Hasil Penelitian
Gambar III.20 Flowchart Grafik Alir Menu Materi
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
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