6
BAB II
LANDASAN TEORI
2.1. Tinjauan Jurnal
Adapun jurnal yang di jadikan dasar untuk memperkuat skripsi ini penulis
mengambil dua jurnal sebagai berikut yaitu
Menurut parno dkk (2011:121) menyatakan bahwa Sistem operasi Android
merupakan salah satu sistem operasi yang dewasa ini tengah berkembang di
masyarakat. Terdapat keunggulan dari sistem operasi ini antara lain sistem
operasinyadapat di ubah sesuai dengan keinginan kita sendiri, banyaknya
aplikasi komputer yang sudah tersedia untuk smartphone android.
Menurut wibowo (2013:75) Media pembelajaran merupakan media
informasi kegitan belajar mengajar sehingga mampu memberikan efektifitas
dan interaktifitas dalam pembelajaran. adanya media pada proses belajar
mengajar, diharapkan dapat membantu guru dan siswa dalam pembelajaran
lebih visual, interaktif, menarik, mudah dan cepat dimengerti.
2.2. Konsep Dasar Program
Menurut Raharjo, dkk (2012:35) ciri dari Object Oriented Programming
adalah abstraksi (abstraction), pembungkusan (encapsulation), pewarisan
(inheritance), dan polimorfisme atau kebanyakan rupaan (polymorphism).
Pembuatan program tentunya tidak terlepas dari tahapan-tahapan yang harus
dikerjakan secara terstruktur untuk membantu pemrogram dalam menyelesaikan
programnya dengan baik.Untuk lebih jelasnya tahapan-tahapan perancangan
program secara umum adalah sebagai berikut :
1. Definisi Masalah
Pengenalan bangun ruang membutuhkan tampilan yang jelas agar lebih
mudah dalam menjelaskan bagaimana mengenalkan bentuk bangun ruang.
7
2. Analisis Kebutuhan
Media pembelajaran matematika pada pokok bahasan bentuk bangun datar
masih banyak yang menggunakan metode konvesional sehingga masih
banyak yang merasa kesulitan untuk memahami materi tersebut.
Diperlukan sebuah media pembelajaran interaktif untuk mengatasi
permasalahan rendah nya minat belajar dan untuk mempermudah pengguna
dalam mempelajari materi pembelajaran matematika perhitungan rumus
bentuk bangun datar.
3. Desain Algoritma
Menulis langkah-langkah dalam pemecahan yang ada dengan menggunakan
simbol-simbol untuk menceritakan aktivitas data yang akan diolah menjadi
informasi.
4. Pengkodean
Merupakan pengkodean dari algoritma yang dibuat, diterjemahkan kedalam
bentuk statement yang sesuai dengan bahasa pemrograman yang digunakan.
5. Melakukan Tes Program
Dari proses logika yang sudah dibuat, diperiksa apakah program tersebut
sudah benar dan bebas dari kesalahan atau masih harus diperbaiki kembali.
Semua kesalahan yang terjadi diperbaiki agar program komputer dapat
dijalankan dan memberi hasil sesuai yang diharapkan.
8
6. Dokumentasi Program
Membuat pendokumentasian programsebagai cadangan (backup) yang
mana proses ini penting untuk dilakukan, untuk usaha pengembangan
program selanjutnya.
7. Pemeliharaan
Pemeliharaan digunakan unyuk menjabarkan aktivitas dari analisis sistem
pada saat perangkat telah dipergunakan oleh pemakai.
Konsep dasar program yang digunakan dalam pembuatan android adalah:
1. Android
Menurut Safaat (2012:1) mengungkapkan bahwa “Android adalah sebuah
sistem informasi untuk perangkat mobile berbasis linux yang mencakup sistem
informasi, middleware dan aplikasi”.
Android menyediakan platform yang terbuka bagi para pengembang untuk
menciptakan aplikasi mereka. Awalnya, Google Inc. Membeli Android Inc, yang
merupakan pendatang baru yang membuat peranti lunak untuk ponsel smartphone.
Kemudian untuk mengembangkan Android dibentuklah Open Handset Alliance,
konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi
termaksud Google, HTC, Intel, Motorola, Qualcom, T-Mobil dan Nvidia.
2. AVD (AndroidVirtual Device)
Menurut Safaat (2012:19) menyebutkan bahwa“AVD merupakan emolator
untuk menjalankan program aplikasi android”, AVD ini nantinya yang kita
9
jadikan sebagai tempat testing dan menjalankan aplikasi android yang kita buat,
AVD berjalan di virtual machine.
3. Eclipse
Menurut Safaat (2012:16) menjelaskan bahwa “Eclipse adalah IDE untuk
pengembangan java atau android”, bisa dikatakan bahwa eclipse adalah program
untuk tempat kita membuat aplikasi tersebut, adapun hal yang di perhatikan
eclipse bukan software yang terinstal permanen di komputer melainkan eclipse
hanya program portable.
4. ADT (AndroidDevelopment Tools)
Menurut Safaat (2012:17) menyebutkan bahwa “ADT adalah plugin di
eclipse yang harus diinstall sehingga android SDK dapat dihubungkan dengan
IDE eclipse”.
2.3. Metode Algoritma
Algoritma yang digunakan penulis adalah algoritma Sequence. (2008 : 105)
Menyebutkan bahwa algoritma yang berbeda dapat diterapkan pada suatu
masalah dengan syarat yang sama. Tingkat kesulitan dari suatu algoritma
merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma
tersebut untuk menyelesaikan.
Dalam perhitungan rumus bangun datar, satu sama lain mempunyai rumus
yang berbeda dalam penyelesaikannya.
10
Sebagai contoh perhitungan Luas segitiga:
Algoritma :{dibaca alas (a) dan tinggi (t). Hitung Luas segitiga tersebut, untuk
panjang, lebar dan tinggi tertentu. Luasdihitung dengan rumusnya L=a*t. Nilai L
di cetak di piranti lunak}.
Deskripsinya dalam pemograman Android:
Privateclass itung implements OnClickListener{ Publicvoid onClick(View L) { try{ int alas = Integer.parseInt(txtAlas.getText().toString()); int tinggi = Integer.parseInt(txtTinggi.getText().toString()); int luas = alas*tinggi; txtLuas.setText(string.valueOf(luas)); } catch (Exception e) { e.printStackTrace(); } }
Dengan Flowchart:
Gambar II. 1 Diagram Flowchart Algoritma Sequence
Masukan alas
Masukan tinggi
L = A * T
Cetak L
Akhir
mulai
11
2.4. Pengujian Software
Menurut Efendi (2014:22) menjelaskan bahwa “pengujian software
dilakukan untuk mencegah terjadinya kesalahan dalam program dengan metode-
metode tertentu ”.
Didalam perhitungan software terdapat beberapa metode diantaranya adalah
1. Metode Pengujian Black Box
Menurut Efendi (2014:30) menjelaskan bahwa “Pengujian Black Box
adalah pengujian yang dilakukan terhadap interface tertentu untuk menguji bahwa
fungsi-fungsi interface tersebut bekerja dengan baik”.
2. Metode Pengujian White Box
Menurut Efendi (2014:50)menjelaskan bahwa “Pengujian White Box
merupakan pengujian yang dititik beratkan kepada prosedur cara program tertentu
bekerja dengan memberikan suatu kondisi”.
2.5 Peralatan Pendukung
Membuat suatu aplikasi android diprlukan berbagai macam pendukung yang
dapat membantu terbentuknya aplikasi mulai dari logika hingga konsep
pemrogramannya.
1. OOP ( Object Oriented Program)
Menurut Sukamto Shalahudin (2014 : 100) Menyebutkan bahwa
”Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat
lunak sebagai kumpulan objek yang berisi data dan opersi yang diberlakukan
terhadap”.
12
Metode berorientasi objek meliputi rangkaian aktivitas analisis berorientasi
objek, perancangan berorientasi objek, pemrograman berorientasi objek dan
pengujian berorientasi objek, metode berorientasi objek banyak dipilih karena
metode lama banyak menimbulkan masalah seperti adanya kesulitan pada saat
mentransformasikan hasil dari satu tahapan pengembangan ketahap berikutnya,
keuntungan menggunakan metode berorientasi objek adalah sebagai berikut.
a. Meningkatkan produktivitas
Karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat
dipakai ulang untuk masalah lainnya yang melibatkan objek tersebut.
b. Kecepatan pengembangan
Karena sistem yang dibangun dengan baik dan benar pada saat analisa dan
perancangan akan menyebabkan berkurangannya kesalahan pada saat
pengkodean.
c. Kemudahan pemeliharaan
Karena dengan model-model, pola-pola yang cenderung tetap dan stabil
dapat dipisahkan dan pola-pola yang mungkin sering berubah-rubah.
d. Adanya konsistensi
Karena sifat pewaris dan penggunaan notasi yang sama pada saat analisa,
perancangan maupun pengkodean.
e. Meningkatkan kualitas perangkat lunak
Karena pendekatanpengembangan lebih dekat dengan dunia nyata dan
adanya kosisten pada saat pengembangannya, perangkat lunak yang
dihasilkan akan mampu memenuhi kebutuhan pemakai serta mempunyai
sedikit kesalahan.
13
Pada saat ini banyak bahasa pemrograman berorientasi objek. Banyak yang
berfikir bahwa pemrograman berorientasi objek identik dengan bahasa java.
Memang bahasa java merupakan bahasa yang paling kosisten dalam
mengimplementasikan paradigma pemrograman yang mendukung pemrograman
berorientasi objek tidak hanya bahasa java, berikut ini adalah beberapa konsep
dasar yang harus dipahami tentang metologi berorientasi objek .
a. Kelas (class)
Menurut Sukamto Shalahuddin (2014:104) menyatakan bahwa “Kelas
adalah kumpulan objek-objek dengan karakteristik yang sama”.
Kelas merupakan definisi statis dan himpunan objek yang sama yang
mungkin lahir atau diciptakannya dan kelas tersebut, sebuah kelas akan
mempunyai sifat (atribute), kelakuan (method), hubungan (relationship) dan
arti.
b. Objek
Menurut Sukamto Shalahuddin (2014:106) menyatakan bahwa “Objek
adalah abstraksi dan sesuatu yang mewakili dunia nyata seperti benda,
manusia, satuan organisasi, atau hal lain-lainnya yang bersifat abstrak”.
Objek merupakan suatu entitas yang mampu menyimpan informasi (status)
dan mempunyai oprasi (kelakuan) yang dapat diterapkan data dapat
berpengaruh pada status objek.
c. Metode (method)
Menurut Sukamto Shalahuddin (2014:107) menyatakan bahwa “Operasi
atau metode atau method pada sebuah kelas hampir sama dengan fungsi atau
prosedur”.
14
Pada metodologi struktural. Sebuah kelas boleh memiliki lebih dari satu
metode atau operasi. Metode atau oprasi yang berfungsi untuk
memanipulasi objek itu sendiri. Operasi atau metode merupakan fungsi atau
transformasi yang dapat dilakukan terhadap objek atau dilakukan oleh
objek.
d. Atribut (attribute)
Menurut Sukamto Shalahuddin (2014:108) menyatakan bahwa “Attribute
dari sebuah kelas adalah variabel global yang dimiliki sebuah kelas”.
Attribute dapat berupa nilai atau element-element data yang dimiliki oleh
dalam kelas objek. Attribute dipunyai secara individu oleh sebuah objek,
misalnya berat, jenis, nama , dan sebagainya.
e. Abstraksi (abstraction)
Menurut Sukamto Shalahuddin (2014:108) menyatakan bahwa “Prinsip
untuk merepresentasikan dunia nyata yang kompleks menjadi satu bentuk
model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak
sesuai dengan permasalahan”.
f. Enkapsulasi
Menurut Shalahuddin (2014:108) menyatakan bahwa “Pembungkus atribute
data dan layanan (oprasi-oprasi) yang dipunyai objek untuk
menyembunyikan implementasi dan objek hingga objek lain tidak
mengetahui cara kerjanya”.
15
g. Pewaris (inheritance)
Menurut Shalahuddin (2014:109) menyatakan bahwa “Mekasime yang
memungkinkan suatu objek mewarisi sebagian atau seluruh definisi dan
objek lainnya sebagai bagian dari dirinya”.
h. Polimorfism
Menurut Shalahuddin (2014:109) menyatakan bahwa “Kemampuan suatu
objek untuk digunakan dibanyak tujuan yang berbeda dengan nama yang
sama sehingga menghemat baris program”.
2. UML (Unifield Modeling Language)
Menurut Sukamto Shalahuddin (2014:133) menjelaskan bahwa “UML
adalah salah standar bahasa yang banyak digunakan di dunia industi untuk
mendefinisikan requitment, membuat analisis & desain, serta menggambarkan
arsitektur dalam program berbasis objek”.
Pada perkembangan teknik pemrograman berorientasi objek, munculah
sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yang
dibangun dengan menggunakan teknik pemrograman yang berbasis objek yaitu
Unifield Modeling Language (UML). UML muncul karena adanya kebutuhan
pemodelan visual untuk mengimplementasikan, menggambarkan, membangun,
dan dokumentasi dari sistem perangkat lunak. UML merupakan bahasa visual
untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan
diagram dan teks-teks pendukung.
Secara analogi jika dengan bahasa yang kita gunakan sehari-hari belum
tentu penyampaian bahasa dengan puisi adalah hal yang salah.
16
a. Class Diagram
Menurut Sukamto Shalahuddin (2014:141) menjelaskan bahwa “Diagram
kelas atau class diagram menggambarkan struktur sistem dari segi
pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem”.
Kelas memiliki apa yang disebut atribut dan metode atau operasi.
1) Atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas.
2) Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu
kelas.
Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-
fungsi sesuai dengan kebutuhan sistem, susunan struktur kelas yang baik pada
diagram kelas sebaiknya memiliki jenis-jenis kelas berikut.
1) Kelas main
Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
2) Kelas yang menangani tampilan sistem
Kelas yang mendefinisikan dan mengatur tampilan kepemakai.
3) Kelas yang diambil dari pendefinisian use case
Kelas yang menangani fungsi-fungsi yang harus ada diambil dari
pendefinisian use case.
4) Kelas yang diambil dari pendefinisian data
Kelas yang digunakan untuk memegang atau membungkus data
menjadi sebuah kesatuan yang diambil maupun akan disimpan kebasis
data.
17
b. Use Case Diagram
Menurut Sukamto Shalahuddin (2014:155) menjelaskan bahwa “Use Case
atau diagram use case merupakan pemodelan untuk kelakuan sistem
informasi yang akan dibuat”.
Use case mendeskripsikan sebuah intraksi antara satu atau lebih aktor
dengan sistem informasi yang akan dibuat, use case digunakan untuk
mengetahui fungsi apa saja ada didalam sebuah sistem informasi dan siapa
saja yang berhak menggunakan fungsi-fungsi itu. syarat penamaan pada use
case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami, ada
dua hal utama pada use case yaitu pendefinisian atau apa saja yang disebut
aktor dan use case.
1) Aktor merupakan orang, proses atau sistem lain yang berintraksi
dengan sistem informasi ayang akan dibuat diluar sistem sistem
informasi yang akan dibuat itu sendiri jadi walaupun jadi walaupun
simbol dari aktor adalah gambar orang, tapi aktor belum tentu
merupakan orang.
2) Use case merupakan fungsionalitas yang disediakan sistem sebagai
unit-unit yang saling bertukar pesan antar unit atau aktor.
c. Activity Diagram
Menurut Sukamto Salahuddin (2014:161) menjelaskan bahwa “Diagram
aktivitas atau activity diagram menggambarkan work flow (aliran kerja)
atau aktivitas dari sebuah sistem atau proses bisnis”.
Yang perlu diperhatikan disini adalah bahwa diagram aktivitas
menggambarkan aktivitas sistem bukan apa yang dilakukan aktor jadi
18
aktivitas yang dapat dilakukan sistem. Diagram aktivitas juga banyakl
digunakan untuk mendefinisikan hal-hal berikut.
1) Rancangan proses bisnis dimana setiap urutan aktivitas yang
digambarkan merupakan proses bisnis sistem yang didefinisikan.
2) Urutan atau pengelompokan tampilan dari sistem/user interface dimana
setiap aktivtas dianggap memiliki sebuah rancangan antarmuka
tampilan.
3) Rancangan pengujian dimana setiap aktivitas dianggap memerlukan
sebuah pengujian yang perlu didefinisikan kasus ujinya.
d. Sequence Diagram
Menurut Sukamto Salahuddin (2014:165) menjelaskan bahwa ”Diagram
sekuen menggambarkan kelakuan objek pada use case dengan
mendeskripsikan waktu hidup objek dan message yang dikirimkan dan
diterima antar objek”. Oleh karena itu untuk menggambarkan diagram
sekuen makan harus diketahui objek-objek yang terlibat dalan use case
beserta metode-metode yang dimiliki kelas yang diimplementasikan
menjadi objek itu.
Banyaknya diagram sekuen yang harus digambar adalah sebanyak
pendefinisian use case yang memiliki proses sendiri atau yang penting
semua use case yang didefiniskan maka diagram sekuen yang harus dibuat
juga semakin banyak. Masing – masing urutan objek diatur didalam suatu
urutan horizontal dengan pesan yang disampaikan dibelakang dan di depan
di antara objek – objek.