4
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Program
Dalam pembuatan Tugas Akhir ini penulis membutuhkan teori-teori yang
dapat mendukung kemudahan dalam mempelajari maupun merancang program
aplikasi yang diharapkan dapat digunakan atau berfungsi seoptimal mungkin.
Penulis berharap dengan adanya program yang dibuat, para pengguna (user) lebih
mudah dalam bekerja, sehingga dapat membantu setiap pengguna dalam
menyelesaikan pekerjaannya dengan baik dan dapat memperkecil terjadinya suatu
kesalahan yang dilakukan oleh pengguna. Berikut ini adalah teori pendukung
yang dapat memperkuat penulisan Tugas Akhir ini.
2.1.1. Program
Menurut Junaedi (2007:3) “Program adalah serangkaian kode yang
dituliskan dalam bahasa pemrograman tertentu, seperti bahasa C, C++, Pascal,
FORTRAN, JAVA, CGI, Perl, Cobol, ASP, (Active Server Pages), PHP, dan
sebagainya yang umumnya merupakan penjabaran dari algoritma yang dibuat”.
Pada umumnya program adalah kumpulan aturan-aturan atau perintah
yang menggunakan bahasa tertentu yang menggunakan dan dimengerti oleh
komputer. Aturan-aturan tersebut berfungsi untuk mengatur pekerjaan apa saja
yang akan dilakukanb oleh computer agar dapat mendapatkan dan menghasilkan
suatu hasil atau keluaran yang diharapkan.
5
2.1.2. Bahasa Pemrograman
Menurut Munir (2011:13) “Bahasa pemrograman adalah bahasa komputer
yang digunakan dalam menulis program.” Untuk itu, bahasa pemrograman dibagi
menjadi 4 (empat) tingkatan yaitu:
1. Bahasa mesin (Machine Language), bahasa pemrograman yang hanya dapat
dimengerti oleh mesin komputer.
2. Bahasa tingkat rendah (Low Level Language). Karena banyak keterbatasan
yang dimiliki bahasa mesin maka dibuatlah simbol yang mudah diingat yang
disebut dengan mnemonic. Bahasa Assembler adalah bahasa yang dapat
menerjemahkan mnemonic.
3. Bahasa tingkat menengah (Middle Level Language), bahasa pemrograman yang
menggunakan aturan-aturan yang sesuai dengan tata bahasa dalam penulisan
pernyatannya, mudah untuk dipahami, dan memiliki instruksi-instruksi tertentu
yang dapat langsung diakses oleh komputer. Contohnya bahasa C.
4. Bahasa tingkat tinggi (High Level Language), bahasa pemrograman yang
dalam penulisan pernyataannya mudah dipahami secara langsung. Contohnya
Algoritma, Fortran, Pascal, Basic, Cobol.
2.1.3. Sistem
Menurut Kusrini (2007:11) “Sistem adalah sebuah tatanan yang terdiri atas
sejumlah komponen fungsional yang saling berhubungan dan secara bersama-
sama bertujuan untuk memenuhi suatu proses tertentu”.
1. Menurut Kusrini (2007:6) sistem mempunyai karakteristik atau sifat-sifat
tertentu, diantaranya:
6
a. Komponen Sistem (Component)
Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi, yang
saling bekerja sama membentuk suatu komponen sistem atau bagian-bagian
dari sistem.
b. Batas Sistem (Boundary)
Merupakan daerah yang membatasi suatu sistem dengan sistem yang lain
atau dengan lingkungan kerjanya.
c. Subsistem
Bagian-bagian dari sistem yang beraktivitas dan berinteraksi satu sama lain
untuk mencapai tujuan dengan sasarannya masing-masing.
d. Lingkungan Luar Sistem (Environment)
Suatu sistem yang ada diluar dari atas sistem yang dipengaruhi oleh operasi
sistem.
e. Penghubung Sistem (Interface)
Media penghubung antara suatu subsistem dengan subsistem lain. Adanya
penghubung ini memungkinkan berbagai sumber daya mengalir dari suatu
subsistem ke subsistem lainnya.
f. Masukan Sistem (Input)
Energi yang masuk ke dalam sistem, berupa perawatan dan sinyal.
Masukkan perawatan adalah energi yang dimasukkan supaya sistem tersebut
dapat berinteraksi.
g. Keluaran Sistem (Output)
Hasil energi yang diolah dan diklasifikasikan menjadi keluaran yang
berguna dan sisa pembuangan.
7
h. Pengolahan Sistem (Proces)
Suatu sistem yang mempunyai suatu bagian pengolah yang akan mengubah
masukan menjadi keluaran
i. Sasaran Sistem (Objective)
Tujuan yang ingin dicapai oleh sistem, akan dikatakan berhasil apabila
mengenai sasaran atau tujuan.
2. Menurut Kusrini (2007:7) mengatakan bahwa suatu sistem dapat
diklasifikasikan sistem sebagai berikut:
a. Sistem Abstrak dan Sistem Fisik
Sistem abstrak adalah sistem yang berupa pemikiran atau gagasan yang
tidak tampak secara fisik. Sedangkan sistem fisik adalah sistem yang ada
secar fisik.
b. Sistem Alamiah dan Sistem Buatan Manusia
Sistem alamiah adalah sistem yang terjadi karena proses alam. Sedangkan
sistem buatan manusia adalah sistem yang dirancangan oleh manusia.
c. Sistem Tertentu dan Sistem Tak Tentu
Sistem tertentu adalah suatu sistem yang operasinya dapat diprediksi secara
tepat. Sedangkan sistem tak tertentu adalah sistem dengan perilaku kedepan
yang tidak dapat diprediksi.
d. Sistem Tertutup dan Sistem Terbuka
Sistem Tertutup adalah sistem yang tidak berhubungan dengan lingkungan
luar atau otomatis. Sedangkan sistem terbuka adalah sistem yang
berhubungan dan dapat terpengaruh dengan keadaan lingkungan luarnya.
8
2.1.4. Pakar
Menurut Rosnelly (2012:10) “Pakar adalah seorang individu yang
memiliki pengetahuan khusus, pemahaman, pengalaman, dan metode-metode
yang digunakan untuk memecahkan persoalan dalam bidang tertentu.”
Menurut Rosnelly (2012:10) seorang pakar memiliki kemampuan
kepakaran, yaitu :
1. Dapat mengenali dan merumuskan suatu masalah.
2. Menyelesaikan masalah dengan cepat dan tepat.
3. Menjelaskan solusi dari suatu masalah.
4. Restrukturisasi pengetahuan.
5. Belajar dari pengalaman.
6. Memahami batas kemampuan.
2.1.5. Sistem Pakar
Menurut Kusrini (2008:3) ”Sistem pakar adalah aplikasi berbasis
komputer yang digunakan untuk menyelesaikan masalah sebagaimana yang
dipikirkan oleh pakar”.
Sistem pakar dapat membantu aktivitas para pakar sebagai asisten yang
berpengalaman dan mempunyai pengetahuan yang dibutuhkan. Dalam
penyusunannya, sistem pakar mengkombinasikan kaidah-kaidah penarikan
kesimpulan dengan basis pengetahuan tertentu yang diberikan oleh satu atau lebih
pakar dalam bidang tertentu. Kombinasi dari kedua hal tersebut disimpan dalam
basis pengetahuan, yang selanjutnya digunakan dalam proses pengambilan
keputusan untuk penyelesaian masalah tertentu.
9
1. Keuntungan sistem pakar
Menurut Kusrini (2008), ada beberapa keuntungan yang dapat diperoleh
dengan mengembangkan sistem pakar antara lain:
a. Membuat seorang yang awam dapat bekerja seperti layaknya seorang pakar.
b. Dapat bekerja dengan informasi yang tidak lengkap atau tidak pasti.
c. Meningkatkan output dan produktivitas.
d. Meningkatkan kualitas.
e. Menyediakan nasihat atau solusi yang konsisten dan dapat mengurangi
tingkat kesalahan.
f. Membuat peralatan yang kompleks dan mudah dioperasionalkan karena
sistem pakar dapat melatih pekerja yang tidak berpengalaman.
g. Sistem tidak dapat lelah atau bosan.
h. Memungkinkan pemindahan pengetahuan ke lokasi yang jauh
i. Memperluas jangkauan seorang pakar, dapat diperoleh dan dipakai di
mana saja.
2. Elemen manusia pada sistem pakar
Pengembangan sistem pakar dari awal hingga menghasilkan solusi akhir
melibatkan peran serta 4 kelompok diantaranya:
a. Pakar (expert)
Pakar adalah individu yang memiliki pengetahuan khusus, pemahaman,
pengalaman, dan metode-metode yang digunakan untuk memecahkan
persoalan dalam bidang tertentu. Selain itu seorang pakar, juga memilki
kemampuan untuk mengaplikasikan pengetahuannya dan memberikan
saran.
10
b. Pembangun pengetahuan (knowledge engineer)
Pembangun pengetahuan adalah individu yang memiliki tugas
menerjemahkan dan mempresentasikan pengetahuan yang diperoleh dari
pakar, baik berupa pengalaman pakar dalam menyelesaikan masalah
maupun sumber terdokumentasi lainnya ke dalam bentuk yang diterima
oleh sistem. Dalam hal ini, pembangun pengetahuan mengintrepetasikan
dan merepresentasikan pengetahuan dalam bentuk jawaban atas pertanyaan–
pertanyaan yang diajukan pada pakar atau pemahaman, penggambaran
analogis, sistemastis, konseptual yang diperoleh dari membaca beberapa
dokumen cetak seperti text book, jurnal, makalah, dan sebagainya.
c. Pembangun Sistem (system enginer)
Pembangun sistem adalah individu yang bertugas untuk merancang
antarmuka pemakai sistem pakar, merancang pengetahuan yang sudah
diterjemahkan oleh pembangun pengetahuan ke dalam bentuk yang sesuai
dan dapat diterima oleh sistem pakar dan mengimplementasikan ke dalam
mesin inferensi. Selain itu, pembangun sistem juga bertanggung jawab
apabila sistem pakar akan diintegrasikan dengan sistem komputerisasi lain.
d. Pemakai (user)
Banyak sistem berbasis komputer mempunyai susunan pemakai tunggal.
Hal ini berbeda dengan sistem pakar yang memungkinkan mempunyai
beberapa kelas pemakai.
11
3. Struktur Sistem Pakar
Adapun struktur sistem pakar sebagai berikut:
Sumber: Kusrini (2008:19)
Gambar II.1 Struktur Sistem Pakar
Komponen-komponen yang biasanya terdapat dalam sebuah sistem pakar ada 7
jenis yaitu:
a. Antarmuka Pengguna (User Interface)
Pada komponen ini terjadi interaksi antara program dan pengguna. Sistem
menerima input berupa informasi dan instruksi dari pengguna dan sistem
memberikan output berupa informasi kepada pengguna.
b. Basis Pengetahuan (Knowledge Base)
Knowledge base (basis pengetahuan) merupakan bagian dari sistem pakar
yang berisi domain pengetahuan yang dibutuhkan untuk memahami,
12
merumuskan, dan menyelesaikan masalah. Pengetahuan merupakan
kemampuan membentuk model mental yang menggambarkan objek dengan
tepat dan mempresentasikannya dalam aksi yang dilakukan terhadap objek.
Basis pengetahuan yang merupakan inti program sistem pakar adalah
representasi pengetahuan dari seorang pakar. Basis pengetahuan berisi
pengetahuan-pengetahuan dalam penyelesaian masalah. Ada 2 bentuk
pendekatan basis pengetahuan, yaitu:
1) Penalaran berbasis aturan (rule-based reasoning)
Pada penalaran berbasis aturan, pengetahuan direpresentasikan dengan
menggunakan aturan berbentuk IF-THEN. Bentuk ini digunakan apabila
kita memiliki sejumlah pengetahuan pakar pada suatu permasalahan
tertentu, dan si pakar dapat menyelesaikan masalah tersebut secara
berurutan. Disamping itu, bentuk ini juga digunakan apabila dibutuhkan
penjelasan tentang langkah-langkah pencapaian solusi.
Contoh : aturan identifikasi hewan
Rule 1 : IF hewan berambut dan menyusui THEN hewan mamalia
Rule 2 : IF hewan mempunyai sayap dan bertelur THEN hewan jenis
burung
Rule 3 : IF hewan mamalia dan memakan daging THEN hewan
karnivora
2) Penalaran berbasis kasus (case-based reasoning)
Pada penalaran berbasis kasus, basis pengetahuan akan berisi solusi-
solusi yang telah dicapai sebelumnya, kemudian akan diturunkan suatu
solusi untuk keadaan yang terjadi sekarang (fakta yang ada). Bentuk ini
13
digunakan apabila user menginginkan untuk tahu lebih banyak lagi pada
kasus-kasus yang hampir sama. Selain itu bentuk ini juga digunakan bila
kita telah memiliki sejumlah situasi atau kasus tertentu dalam basis
pengetahuan.
c. Akuisisi Pengetahuan (Knowledge Acqusitition)
Akuisisi pengetahuan merupakan transformasi keahlian dalam
menyelesaikan masalah dari sumber pengetahuan ke dalam program
komputer.
d. Mesin Inferensi (Inference Engine)
Mesin inferensi merupakan otak dari sistem pakar yang mengandung
mekanisme fungsi berpikir dan pola-pola penalaran sistem yang digunakan
oleh seorang pakar. Mesin inferensi bertindak sebagai penarik kesimpulan
dan pengontrol mekanisme dari sistem pakar.
e. Memory Kerja (Working Memory)
Working memory merupakan bagian dari sistem pakar yang berisi fakta-
fakta masalah yang ditemukan dalam suatu sesi ataupun dalam proses
konsultasi. Mesin inferensi (inference engine) merupakan processor pada
sistem pakar yang mencocokan fakta-fakta yang ada pada working memory
dengan domain pengetahuan yang terdapat pada knowledge base untuk
menarik kesimpulan dari masalah yang dihadapi.
f. Subsistem Penjelasan (Explanation Subsystem)
Komponen ini merupakan komponen tambahan yang akan meningkatkan
kemampuan sistem pakar. Komponen ini menggambarkan penalaran sistem
kepada pemakai dengan cara menjawab pertanyaan-pertanyaan.
14
g. Perbaikan Pengetahuan
Pakar memiliki kemampuan untuk menganalisa dan meningkatkan kinerja
serta kemampuannya untuk belajar dari kinerjanya.
4. Karakteristik Sistem Pakar
Ada berbagai karakteristik yang membedakan sistem pakar dengan sistem yang
lain. karakteristik ini menjadi pedoman utama dalam pengembangan sistem
pakar, karakteristik yang dimaksud antara lain:
a. Pengetahuan sistem pakar merupakan suatu konsep, bukan berbentuk
numeris. Hal ini dikarenakan komputer melakukan proses pengolahan data
secara numerik sedangkan keahlian dari seorang pakar adalah fakta dan
aturan-aturan, bukan numerik.
b. Informasi dalam sistem pakar tidak selalu lengkap, subyektif, tidak
konsisten, subyek terus berubah dan tergantung pada kondisi lingkungan
sehingga keputusan yang diambil bersifat tidak pasti dan tidak mutlak “ya”
atau “tidak” akan tetapi menurut ukuran kebenaran tertentu. Oleh karena itu
dibutuhkan kemampuan sistem untuk belajar secara mandiri dalam
menyelesaikan masalah-masalah dengan pertimbangan-pertimbangan
khusus.
c. Kemungkinan solusi sistem pakar terhadap suatu permasalahan adalah
bervariasi dan mempunyai banyak pilihan jawaban yang dapat diterima,
semua faktor yang ditelusuri memiliki ruang masalah yang luas dan tidak
pasti. Oleh karena itu diperlukan sistem yang fleksibel dalam menangani
kemungkinan solusi dari berbagai permasalahan.
15
d. Perubahan atau pengembangan pengetahuan dalam sistem pakar dapat
terjadi setiap saat bahkan sepanjang waktu sehingga diperlukan kemudahan
dalam modifikasi sistem untuk menampung jumlah pengetahuan yang
semakin besar dan semakin bervariasi.
e. Pandangan dan pendapat setiap pakar tidaklah selalu sama, yang oleh karena
itu tidak ada jaminan bahwa solusi Sistem Pakar merupakan jawaban yang
pasti benar. Setiap pakar akan memberikan pertimbangan-pertimbangan
berdasarkan faktor subyektif.
f. Keputusan merupakan bagian terpenting dari sistem pakar. Sistem Pakar
harus memberikan solusi yang akurat berdasarkan masukan pengetahuan
meskipun solusinya sulit sehingga fasilitas informasi sistem harus selalu
diperlukan.
2.2. Peralatan Pendukung (Tools System)
2.2.1. Android
Menurut Wahadyo (2013:2) mengemukakan bahwa “Android adalah
sistem operasi disematkan pada gadget, baik itu handphone, tablet, juga sekarang
sudah merambah ke kamera digital dan jam tangan”. Android tidak terikat ke satu
merek Handphone saja, beberapa vendor terkenal yang sudah memakai Android
antara lain Samsung , Sony Ericsson, HTC, Nexus, Motorolla, dan lain-lain.
Sejak dirilis pertama kali dan mulai diperkenalkan, android mengalami
perkembangan untuk versi dari versi pertama yang disesuaikan dengan kebutuhan,
baik dari segi perbaikan bug ataupun perubahan fitur baru. Perkembangan versi
android sebagai berikut
16
(http://tekno.kompas.com/read/2016/10/17/19480037/evolusi.os.android.dari.versi
.1.0.hingga.7.0.nougat?page=all, Fatimah Kartini Bohang, diakses tanggal 4 Mei
2017)
1. Perkembangan Android
a. Android 1.0 (2008)
Sistem operasi ini bisa dibilang sebagai Android bayi yang masih sangat
sederhana. Pengguna diajak beradaptasi dengan peradaban baru dalam
menjajal sebuah perangkat telekomunikasi mobile. Jika hari ini kita terbiasa
menggulir layar ke bawah untuk melihat notifikasi, perlu diketahui bahwa
asal-muasalnya dari Android 1.0 ini. Sebab, di versi inilah Google untuk
pertama kalinya memperkenalkan mekanisme pengecekan notifikasi yang
kerap diistilahkan pull-down notification tersebut. Selain notifikasi, dua
komponen pada Android 1.0 yang masih digunakan hingga kini adalah
widget aplikasi, serta toko aplikasi Google Play Store yang kala itu masih
bertajuk "Market".
b. Android 1.5 Cupcake (2009)
Ini adalah debut versi Android yang menggunakan nama kudapan manis.
Tradisi tersebut dipertahankan hingga sekarang. Pada Cupcake, Google juga
memperkenalkan SDK widget untuk developer pihak ketiga. Gunanya agar
aplikasi pihak ketiga bisa memiliki widget sendiri layaknya aplikasi bawaan
Google. Dua pembaruan signifikan pada Cupcake juga meliputi kemampuan
perekaman video dengan kamera ponsel, serta kemampuan keyboard layar
sentuh. Sistem operasi ini juga menyatukan layanan Gmail. Dua aplikasi
17
tersebut, Gmail dan Market, menjadi layanan bawaan paling purba yang
dipatrikan Google pada Android 1.0.
c. Android 1.6 Donut (2009)
Masih di tahun yang sama, Google tak sabar menghadirkan Android baru
bertajuk "Donut". Pada versi ini, Google mengumumkan bahwa Android
bisa digunakan untuk perangkat mobile dengan ukuran layar berapa saja.
Android Donut juga memunculkan kolom pencarian pada antarmuka ponsel.
Pengguna bisa mencari informasi di internet, file lokal, kontak, dan apa saja
secara lebih cepat dengan kolom tersebut.
d. Android 2.0 Eclair (2009)
2009 memang merupakan tahun produktif bagi Google dalam menelurkan
sistem operasi. Eclair menjadi Android pertama yang menghadirkan
layanan navigasi Google Maps. Sistem tersebut menjadi awal mula era GPS
yang sekarang bukan cuma ada di ponsel, tapi juga di mobil-mobil modern.
Eclair juga menjadi Android pertama yang mendukung HTML5 pada
peramban sehingga bisa memutar video. Kemampuan membuka layar alias
unlock-screen dengan mekanisme menyapu atau swipe juga diperkenalkan
pada Eclair.
e. Android 2.2 Froyo (2010)
Tahun 2010, selain meluncurkan Android Froyo, Google juga
menghadirkan ponsel Nexus pertama yang dinamai "Nexus One". Ada
beberapa pembaruan pada Froyo dibandingkan pendahulunya. Tentu saja
pengguna Nexus One menjadi yang pertama mendapat update Android
tersebut.Dari segi tampilan, Android Froyo memungkinkan lima panel layar
18
depan alias home screen. Sebelumnya, batas panel cuma sampai tiga saja.
Froyo juga menambah pilihan keamanan penguncian bagi pengguna. Dari
yang sebelumnya cuma penguncian pola (pattern lock), belakangan
dilengkapi dengan opsi penguncian PIN atau PIN lock.
f. Android 2.3 Gingerbread (2010)
Menyadari kebutuhan netizen akan selfie, Google pun membangun versi
Gingerbread dengan kemampuan kamera depan untuk membidik foto
mandiri. Pada versi ini, pengguna juga bisa melihat desain ulang antarmuka
yang cukup signifikan. Selain itu, dari segi fungsi, Gingerbread
memungkinkan pengguna memencet keyboard virtual secara berbarengan
alias multitouch. Kemampuan ini dipertahankan hingga sekarang dengan
berbagai peningkatan kinerja.
g. Android 3.0 Honeycomb (2011)
Sistem operasi ini mendukung kemampuan tombol virtual untuk home,
back, dan menu, untuk pertama kalinya. Sasarannya pun lebih ke perangkat
tablet ketimbang smartphone. Pada masa itu, memang pasar tablet sedang
subur-suburnya.
h. Android 4.0 Ice Cream Sandwich (2011)
Versi ini memboyong kemampuan pada Honeycomb tapi lebih menyasar
smartphone. Contohnya saja kemampuan tombol virtual yang hingga
sekarang banyak diimplementasikan para vendor. Beberapa pembaruan fitur
lainnya mencakup kemampuan membuka layar menggunakan wajah (face
unlock), analisa penggunaan data internet, serta paket aplikasi bawaan dari
vendor yang mencakup kalender, mail, kalkulator, dan lainnya.
19
i. Android 4.1 Jelly Bean (2012)
Ini merupakan versi Android yang membawa pembaruan cukup signifikan
setelah beberapa kali update yang dilakukan Google hanya membawa
perbedaan minor. Salah satunya, Jelly Bean memungkinkan pengguna
menggulir (scroll) cepat home screen ke bawah untuk melihat kumpulan
informasi penting, seperti agenda, email, dan laporan cuaca. Sebelumnya,
pengguliran ke bawah cuma memperlihatkan notifikasi aplikasi. Selain itu,
Jelly Bean merupakan upaya pertama Google untuk menghadirkan asisten
digital yang dinamai Google Now. Mulai dari versi ini, Google semakin
berhasrat untuk membuat asisten digital yang lebih hidup, manusiawi, dan
relevan bagi pengguna.
j. Android 4.4 KitKat (2013)
Butuh setahun bagi Google untuk menghadirkan KitKat. Versi Android ini
memberikan suasana yang segar dengan pembaruan antarmuka beraksen
putih dan biru muda. Pada KitKat, Google menghadirkan perintah pencarian
menggunakan suara atau disebut "Ok, Google". Fitur ini dirundung puji-
pujian dari para pakar teknologi. Di saat bersamaan, Google juga
meluncurkan aplikasi pesan singkat Hangouts untuk pertama kalinya.
Sayangnya, belakangan Hangouts dilabeli sebagai layanan Google yang
gagal karena tak menuai penetrasi yang memuaskan.
k. Android 5.0 Lollipop (2014)
Pembaruan yang mencolok pada Lollipop tampak dari sisi desainnya yang
diperhalus dan disesuaikan dengan zaman. Selain itu, fitur-fitur yang sudah
hadir pada Android sebelumnya ditingkatkan. Inovasi kurang terasa pada
20
versi ini. Satu-satunya yang lumayan baru adalah dukungan untuk gambar
berformat RAW. Format itu memungkinkan para ilustrator, fotografer, atau
graphic designer menyimpan file dengan ukuran besar agar bisa diedit tanpa
mengurangi kualitas.
l. Android 6.0 Marshmallow (2015)
Menu aplikasi pada Android Marshmallow benar-benar dibuat baru.
Desainnya membuat pengguna merasa naik kelas dari versi sebelumnya
karena lebih dinamis. Selain itu, ada juga fitur memory manager yang
memungkinkan pengguna mengecek penggunaan memori pada tiap aplikasi.
Rentan waktu pengecekannya bisa disetel dari tiga jam yang lalu hingga 24
jam sebelumnya. Pembaruan kedua ditilik dari pengaturan volume. Pada
Marshmallow, pengguna bisa mengontrol volume yang berbeda-beda pada
panggilan, media, dan alarm. Keamanan juga mendapat peningkatan pada
versi ini. Google memungkinkan vendor menyematkan sensor pemindai
sidik jari karena sudah didukung Marshmallow.
m. Android 7.0 Nougat (2016)
Nougat adalah versi Android termutakhir yang baru diperkenalkan pada
ajang kumpul developer Google I/O, pertengahan 2016 ini. Beberapa lama
setelahnya, Google menghadirkan Nougat secara resmi untuk publik.
Pembaruan paling mendasar pada versi Nougat adalah kehadiran Google
Assistant yang menggantikan Google Now. Asisten digital tersebut lebih
bisa diandalkan untuk menjalankan berbagai fungsi. Fitur-fitur baru lainnya
mencakup layar split-screen saat dipakai multitasking, serta fitur Doze yang
telah dikenalkan di versi Android Marshmallow namun telah ditingkatkan.
21
Android Nougat juga memiliki dukungan terhadap platform virtual reality
terbaru Google.
2. Karakteristik Android
Android memiliki empat karakteristik sebagai berikut:
a. Terbuka
Android dibangun untuk benar-benar terbuka sehingga sebuah aplikasi
dapat memanggil salah satu fungsi inti ponsel seperti membuat panggilan,
mengirim pesan teks, menggunakan kamera dan lain-lain. Android
merupakan sebuah mesin virtual yang dirancang khusus untuk
mengoptimalkan sumber daya memori dan perangkat keras yang terdapat di
dalam perangkat. Android merupakan open source, dapat secara bebas
diperluas untuk memasukkan teknologi baru yang lebih maju pada saat
teknologi tersebut muncul. Platform ini akan terus berkembang untuk
membangun aplikasi mobile yang inovatif.
b. Semua aplikasi dibuat sama
Android tidak memberikan perbedaan terhadap aplikasi utama dari telepon
dan aplikasi pihak ketiga (third-party application). Semua apliksi dapat
dibangun untuk memiliki akses yang sama terhadap kemampuan sebuah
telepon dalam menyediakan layanan dan aplikasi yang luas terhadap para
pengguna.
c. Memecahkan hambatan pada aplikasi
Android memecah hambatan untuk membangun aplikasi yang baru dan
inovatif. Misalnya, pengembang dapat menggabungkan informasi yang
22
diperoleh dari web dengan data pada ponsel seseorang seperti kontak
pengguna, kalender atau lokasi geografis.
d. Pengembangan aplikasi yang cepat dan mudah
Android menyediakan akses yang sangat luas kepada pengguna untuk
menggunakan aplikasi yang semakin baik. Android memiliki sekumpulan
tools yang dapat digunakan sehingga membantu para pengembang dalam
meningkatkan produktivitas pada saat membangun aplikasi yang dibuat.
2.2.2. B4A (Basic For Android)
Basic4android adalah development tool sederhana yang dapat digunakan
untuk membangun aplikasi Android. Bahasa Basic4android mirip dengan Visual
Basic dengan tambahan dukungan untuk objek. Banyak cara untuk membangun
aplikasi berbasis Android contohnya seperti Java, Eclypse, atau membuat program
langsung melalui situs ibuildapp.com, dan kini bisa juga dengan bahasa BASIC
yang khusus dikembangkan untuk OS Android, yaitu Basic4Android. Bahasa
Basic untuk Android ini agak mirip dengan bahasa Visual Basic yang sudah lebih
dulu dikenal di kalangan pengguna komputer berbasis Ms Windows. Bahkan,
karena bekerja di lingkungan Ms Windows, Basic4Android juga menggunakan
tampilan yang menggunakan WYSIWYG berbentuk IDEtools, menggunakan
library Java, dan tentu saja berbagai tools yang diperlukan untuk merancang
design agar berjalan seperti yang diinginkan.
Basic4Android menyediakan berbagai libraries yang cukup lengkap,
sehingga mampu membuat aplikasi yang dapat dijalankan pada berbagai versi
Android, mulai dari 1.6 hingga 4.0. Aplikasi ini juga dapat memanfaatkan semua
23
fungsi yang ada di ponsel atau tablet Android, mulai dari koneksi wi-fi dan
bluetooth, kamera, GPS, hingga NFC
Sumber: Aplikasi B4A (Basic For Android)
Gambar II.2
Tampilan Aplikasi B4A
2.2.3. Java
Java merupakan bahasa permrograman yang disusun oleh James Gosling
yang dibantu oleh rekan-rekannya disuatu perusahaan perangkat lunak yang
bernama Sun Microsystems, pada tahun 1991. Bahasa pemrograman ini mula-
mula diinisialisasi dengan nama “Oak”, namun pada tahun 1995 diganti namanya
menjadi “Java”.
1. Pengertian Java
Menurut definisi Sun Microsystem, di dalam buku M. Shalahuddin dan
Rosa A.S. (2010:1) Java adalah nama sekumpulan teknologi untuk
membuat dan menjalankan perangkat lunak pada komputer yang berdiri
sendiri (standalone) ataupun pada lingkungan jaringan. Java berdiri diatas
sebuah mesin penterjemah (interpreter) yang diberi nama Java Virtual
Machine (JVM). JVM inilah yang akan membaca kode bit (bytcode) dalam
file .class dari suatu program sebagai representasi langsung program yang
berisi bahasa mesin. Oleh karena itu bahasa java disebut sebagai bahasa
pemrograman yang portable karena dapat dijalankan pada berbagai sistem
operasi, asalkan pada sistem operasi tersebut terdapat JVM. Alasan utama
24
pembentukan java adalah untuk membuat aplikasi-aplikasi yang dapat
diletakan di berbagai macam perangkat elektronik, sehingga java harus
bersifat tidak bergantung pada platform (platform independent).
2. Arsitektur Java
Secara arsitektur, Java tidak berubah sekalipun sejak awal mula bahasa
tersebut dirilis. Compiler Java (yang disebut dengan javac atau Java Compiler)
akan mentransformasikan kode-kode dalam bahasa java ke dalam suatu kode
bit. Dimana bytecode adalah sekumpulan perintah hasil kompilasi yang
kemudian dapat dieksekusi melalui sebuah mesin komputer abstrak, yang
disebut dengan JVM (Java Virtual Machine). JVM juga sering dinamakan
sebagai interpreter karena sifatnya yang selalu menerjemahkan kode-kode
yang tersimpan dalam kode bit dengan cara baris demi baris. Untuk
menjalankan program java, maka file dengan ekstensi java harus dikompliasi
menjadi file kode bit. Dimana untuk menjalankan kode bit tersebut dibutuhkan
JRE (Java Runtime Environment) yang memungkinkan pemakai untuk
menjalankan program Java, hanya menjalankan, tidak untuk membuat kode
baru lagi. JRE berisi JVM dan pustaka Java yang digunakan.
2.2.4. DB Browser for SQLite
DB Browser for SQLite adalah sebuah program visual kualitas tinggi dan
bersifat open source yang berfungsi untuk membuat, mendesain dan mengedit file
database yang bersifat kompatibel dengan SQLite.Program tersebut ditujukan
untuk pengguna dan pengembang dalam membuat database, mencari dan
mengedit data. Program DB Browser for SQLite menggunakan interface atau
25
tampilan seperti halnya spreadsheet dan anda tidak perlu belajar perintah SQL
yang rumit.(https://sqlitebrowser.org/, diakses pada tanggal 3 Mei 2017)
Beberapa fungsi atau fitur yang tersedia untuk pengguna diantaranya:
1. Membuat dan compact file database.
2. Membuat, mendefinisikan, mengubah dan menghapus tabel
3. Membuat, memdefinisikan dan menghapus indeks.
4. Mengisi, mengedit, menambah dan menghapus record.
5. Mencari record.
6. Impor dan ekspor record sebagai teks
7. Impor dan ekspor tabel datai atau ke file CSV (Comma-Separated Values).
8. Impor dan ekspor database dari atau ke file dump SQL.
9. Mengeluarkan pertanyaan SQL dan memeriksa hasil.
10. Memeriksa log dari semua perintah SQL yang dikeluarkan oleh aplikasi.
Sumber: Aplikasi DB Browser for SQLite
Gambar II.3
Tampilan Aplikasi DB Browser for SQLite
26
2.2.5. HIPO (Heirarchy Input Proccess Output)
Menurut Fatta (2007:147) menyatakan bahwa “HIPO (Hierarchy plus
Input-Process-Output) merupakan teknik untuk mendokumentasikan
pengembangan suatu sistem yang dikembangkan oleh IBM”.
HIPO dapat digunakan untuk memenuhi kebutuhan beberapa pengguna
untuk kepentingan berbeda-beda, antara lain:
1. Seorang manajer dapat menggunakan dokumentasi HIPO untuk memperoleh
gambaran umum sistem.
2. Seorang programer menggunakan HIPO untuk menentukan fungsi-fungsi
dalam program yang dibuatnya.
3. Programer juga dapat menggunakan HIPO untuk mencari fungsi-fungsi yang
dimodifikasi dengan cepat.
Menurut Fatta (2007:149), “Paket HIPO sendiri terdiri dari 3 jenis
diagram, yaitu diagram daftar visual (visual table of content), diagram ringkas
(overview diagram). Dan diagram rinci (detail diagram)”.
1. Diagram Isi Visual (DIV)
Diagram ini memuat semua modul yang ada dalam sistem berikut nama dan
nomornya, yang nantinya akan diperinci, dalam diagram ringkas dan diagram
rinci. Dalam DIV juga bisa dilihat fungsi-fungsi utama yang menysun sebuah
sistem dan hubungan antar fungsi-fungsi.
2. Diagram ringkas
Diagram ringkas menerangkan input, proses, dan output dari sistem. Diagram
ringkas menggambarkan input dan output dari fungsi-fungsi yang telah
didefinisikan dalam daftar isi visual.
27
3. Diagram rinci
Diagram rinci HIPO digunakan untuk memperinci input, proses, dan output
yang telah digambarkan dalam diagram ringkas. Dalam input data dijelaskan
field-field datanya secara detail. Untuk fungsi, juga dideskripsikan proses apa
yang dilakukan oleh fungsi-fungsi tersebut.
2.2.6. Flowchart
Ewolf community (2012:16) mengemukakan, “Flowchart adalah simbol-
simbol pekerjaan yang menunjukkan bagan aliran proses yang saling terhubung.
Jadi, setiap simbol flowchart melambangkan pekerjaan dan instruksinya”. Adapun
simbol-simbol Flowchart adalah sebagai berikut:
Tabel II.1.
Simbol Program Flowchart
No. Simbol Keterangan
1
Simbol Start atau End yang mendefinisikan
awal atau akhir dari sebuah flowchart.
2
Simbol pemrosesan yang terjadi pada
sebuah alur kerja
3
Simbol Input atau Oputput yang
mendefinisikan masukan dan keluaran
proses
4
Simbol untuk memutuskan proses lanjutan
dari kondisi tertentu
28
5
Simbol konektor untuk menyambung proses
pada lembar kerja yang sama
6
Simbol konektor untuk menyambung proses
pada lembar kerja yang berbeda
7
Simbol untuk menghubungkan antar proses
atau antar simbol
8
Simbol yang menyatakan piranti keluaran,
seperti layar monitor, printer, dan
sebagainya
9
Simbol yang mendefinisikan proses yang
dilakukan secara manual
10
Simbol masukan atau keluaran dari atau
kesebuah dokumen
11
Simbol yang menyatakan bagian dari
program (subprogram)
12
Simbol masukan atau keluaran dari atau
kesebuah pita magnetic
13
Simbol database atau basis data
Sumber: Ewolf Community (2012:17)
29
2.2.7. Dreamweaver CS6
Menurut Sutisna (2007:51) ”Deamweaver adalah salah satu editor web
yang banyak digunakan oleh para programmer. Software ini semula dibangun
oleh macromedia, tetapi belakangan diakuisisi oleh adobe”. Beberapa kelebihan
dreamweaver antara lain:
1. Pada program HTML dan XHTML, tampilan situs dapat dilihat tanpa
menggunakan browser sehingga memudahkan programmer untuk editing.
2. Dreamweaver mendukung pemrogaman PHP, ASP, ColdFusion, JSP, CSS,
Javascript, dan XML.
3. Dreamweaver dapat membantu webmaster untuk lebih memahami kode-kode
pemrogaman.
4. Dreamweaver dapat memeriksa jika terjadi kesalahan dalam penulisan
sintaks.
5. Membantu dalam mengelola situs yang sedang dibuat.
Mengunakan Dreamweaver tidak sesulit menulis kode progam. Tampilan
Dreamweaver sangat user-friendly, sehingga memudahkan untuk mempelajarinya
meski bagi pemula.
30
Sumber: Aplikasi Dreamweaver CS6
Gambar II.4
Tampilan Aplikasi Dreamweaver CS6
2.2.8. HTML (Hyper Text Markup Language)
Menurut Ardhana (2012:42) “HTML merupakan suatu bahasa yang
dikenali oleh web browser untuk menampilkan informasi seprti teks, gambar,
suara, animasi bahkan video. Untuk dapat membuat website dengan baik maka
langkah awal yang harus dilakukan yaitu mengenal kode-kode dasar HTML yang
sering digunakan oleh programmer web professional”.
Kode HTML memiliki aturan dan struktur penulisan tersendiri yang
disebut tag HTML. Tag adalah kode yang digunakan untuk memoles (mark-up)
teks ASCII (American Standard Code for Information Interchange) menjadi file
HTML. Setiap tag ditutup dengan kurung runcing. Ada tag pembuka yaitu
<HTML> dan ada tag penutup yaitu </HTML> yang ditandai dengan tanda garis
miring (slash) di depan awal tulisan.
31
Tag di atas memberikan faidah bahwa yang akan ditulis di antara kedua
tag tersebut adalah isi dari dokumen HTML. Perlu diketahui bahwa tag-tag html
dapat ditulis dengan huruf besar ataupun huruf kecil. Artinya, penulisan <HTML>
atau <html> atau <Html> sama saja hasilnya. Namun perlu selalu diingat bahwa
penulisan tag yang salah meskipun hanya satu karakterakan berpengaruh terhadap
dokumen HTML, bahkan bisa berakibat dokumen HTML tidak bisa ditampilkan
dalam browser.
.