BAB II

LANDASAN TEORI

2.1. Konsep Dasar Android

Konsep dasar android ini berfungsi sebagai dasar terhadap rumusan masalah yang diajukan. Dalam bab ini penulis menjelaskan beberapa teori yang berkaitan dengan permasalahan yang akan dibahas sebagai dasar dalam pembuatan aplikasi.

2.1.1. Program

Manusia kini hidup berdampingan dengan smartphone. Semua yang dilakukan dan dikerjakan adalah suatu kumpulan dari aplikasi mobile.

1. Definisi Program

Menurut Sutarman dalam Maarif (2017) menjelaskan bahwa “program adalah barisan perintah atau intruksi yang disusun sehingga dapat dipahami oleh komputer dan kemudian dijalankan sebagai barisan perhitungan numeric, dimana barisan perintah tersebut berhingga, berakhir, dan menghasilkan output.

Sekumpulan instruksi yang diwujudkan dalam bentuk bahasa, kode skema, ataupun bentuk lain, yang apabila digabungkan dengan media yang yang dapat dibaca dengan komputer akan mampu membuat komputer bekerja untuk melakukan fungsi-fungsi khusus termasuk persiapan dalam merancang instruksi- instruksi tersebut”.

Berikut ini beberapa langkah yang harus diperhatikan oleh pemrogram sebelum mengimplementasikan suatu permasalahan dalam program adalah:

6

7

a. Mendefinisikan masalah

b. Mencari solusi masalah

c. Memilih Teknik pemecahan masalah dan algoritma

d. Menulis program

e. Melakukan testing debugging

f. Melakukan dokumentasi

2. Pemrograman Mobile

Menurut Nugroho dalam Sianturi (2013) memaparkan bahwa

“pemrograman mobile atau aplikasi adalah program siap pakai yang direka untuk melaksanakan suatu fungsi bagi pengguna atau aplikasi yang lain dan dapat digunakan oleh sasaran yang dituju”. Perangkat lunak aplikasi adalah suatu subkelas perangkat lunak komputer langsung untuk melakukan tugas yang diinginkan pengguna.

2.1.2. Mobile

Mobile atau telepon genggam (handphone) adalah alat komunikasi yang mudah dibawa kemana-mana yang dapat menyampaikan pesan berupa suara atau percakapan melalui sinyal listrik. Telepon membuat kita menjadi mudah berkomunikasi jarak jauh dengan orang lain dalam hitungan detik.

1. Internet

Jumlah pengguna internet yang besar dan semakin berkembang, telah mewujudkan budaya internet. Internet juga mempunyai pengaruh besar atas ilmu dan pandangan dunia. Dengan hanya berpanduan mesin pencari seperti Google, pengguna diseluruh dunia mempunyai akses internet yang mudah atas bermacam-

8

macam informasi. Dibanding dengan buku dan perpustakaan, internet melambangkan penyebaran (decentralization) atau pengetahuan (knowledge) informasi dan data secara ekstrim.

Menurut Subaeki (2016) memaparkan bahwa “Internet adalah rangkaian komputer yang terhubung di dalam beberapa rangkaian.

2. Aplikasi Mobile

Menurut Wahana Komputer (2014:2) mendefinisikan bahwa, “Aplikasi yang dapat berpindah-pindah dari smartphone satu ke smartphone lainnya.”

Aplikasi mobile yang sering digunakan adalah game, web, browser, pembelajaran, dan sebagainya.

3. Android

Menurut Jubilee Enterprise (2015:1) memaparkan bahwa “android adalah sebuah platform penghubung antara software dan hardware pada mobile device.

Adapun sistem operasinya berbasis Linux yang dirancang untuk perangkat seluler layar sentuh seperti telepon pintar. Platform android ini di produksi dan dikembangkan oleh Open Handset Alliance, sebuah anak perusahaan dari Google, sejak tahun 2007”.

4. Android

Menurut Safitri (2016) memaparkan bahwa “Sistem operasi yang digunakan pada smartphone antara lain: Android OS, Symbian OS, BlackBerry

OS, Palm OS, Windows Mobile, Windows Phone, Apple iOS, Bada

OS, Meego, WebOS, dan MXI (Motion eXperience Inteerface)”.

9

Sumber: Safitri

Gambar II.1.

Tampilan Operating System Android

Komponen-komponen yang menyusun system operasi android adalah

sebagai berikut:

1) Kernel

2) Android Runtime

3) Libraries

4) Application Framework

5) Application

5. Metode Pembelajaran

Kholis dkk (2015) mengatakan bahwa “pembelajaran saat ini masih banyak yang menggunakan metode konvensional yaitu pengajar memberikan materi hanya dari buku dan belum menambahkan media teknologi dalam pengajaran secara maksimal”.

10

2.1.3. Bahasa Pemrograman

1. BASIC

BASIC merupakan singkatan dari Beginner’s All-purpose Symbolic

Instruction Code merupakan bahasa pemrograman tingkat tinggi untuk keperluan umum yang dibuat dengan menitik beratkan pada kemudahan dalam penggunaanya. Bahasa BASIC berkembang pesat pada pertengahan tahun 1970 dan 1980 dimana mikrokomputer mulai digunakan. Mikrokomputer tersebut sudah dipasang bahasa pemmrograman BASIC. Begitu juga dengan komputer pribadi yang dibuat pada tahun 1980-an. Bahasa BASIC juga berkembang terus dan terdapat beberapa varian seperti QuickBasic, TurboBasic, DarkBasic. Salah satu varian yang terkenal adalah yang dikembangkan oleh Microsoft.

Bahasa Visual Basic ini digunakan untuk mengembangkan aplikasi Sistem

Operasi Windows. Mengadaptasi kemudahan dan popularitas bahasa BASIC kemudian dikembangkan Basic For Android (B4A). B4A menggunakan bahasa yang mirip dengan Visual Basic untuk mengembangkan aplikasi berbasis android.

Tabel II.1.

Contoh Bahasa BASIC

Statement Sintaks Kegunaan

CLS CLS [(1\2\3)] Membersihkan layar.

COLOR COLOR [foreground],[background] Memberi warna teks dan

latar belakang teks.

SOUND SOUND frekuensi, durasi Mengeluarkan suara dari

speaker.

11

Statement Sintaks Kegunaan

END END Mengakhiri program, sub

[(DEF\FUNCTION\SUB\SELECT\ program, fungsi, type atau

TYPE)] select.

GO TO GO TO no_baris Melompat ke baris yang

dituju.

LET LET variable=ekspresi Memberikan harga suatu

variabel.

REM REM catatan_kalimat Memberikan catatan

program yang tidak di

eksekusi komputer.

LOCATE LOCATE [baris], [kolom] Meletakkan kursor aktif

pada baris dan kolom

tertentu pada layar.

STOP STOP Mengakhiri program dari

bagian.

2. HTML(Hypertext Markup Language)

Menurut Raharjo dalam Supriyanta dkk (2015) menjelaskan tentang

“HTML singkatan dari Hypertext Markup Language, yaitu bahasa (aturan) standar yang digunakan untuk menampilkan teks, gambar, video atau audio ke dalam halaman web”. HTML merupakan bahasa markup bahasa ini tidak dapat melakukan operasi logika maupun perhitungan sistematis. Fungsi HTML hanya untuk mengatur tampilan website beberapa yang dapat diatur di HTML adalah

12

pembuatan paragraf, membuat garis horizontal, mengatur font, mengatur perataan teks, membuat list (order list atau unorder list), mengambil gambar, membuat link dan berbagai fungsi lain yang di dukung oleh library HTML.

Program yang digunakan untuk membuat document HTML menggunakan

HTML Editor. Ada banyak HTML editor yang bias digunakan, diantaranya:

Notepad, Ms. FrontPage, Dreamweaver, Brackets. Berikut adalah contoh kode yang dituliskan di Notepad dan disimpan dengan document HTML.

Sumber: Supriyanta dkk (2015)

Gambar II.2.

Gambar Contoh Kode HTML

Setiap dokumen HTML harus diawali dan ditutup dengan tag HTML

. Tag HTML memberi tahu browser bahwa yang ada didalam kedua tag tersebut adalah document HTML. Berikut adalah contoh file latihan.html tersebut dengan browser.

13

Sumber: Supriyanta dkk (2015)

Gambar II.3.

Contoh File Latihan.html Dengan Browser

3. CSS (Casacading Style Sheet)

Menurut Raharjo dalam Supriyanta dkk (2015) menjelaskan tentang bahwa “CSS (Casacading Style Sheet), yaitu suatu bahasa yang bekerja sama dengan HTML untuk mendefinisikan bagaimana suatu isi halaman web ditampilkan atau dipresentasikan”. Dalam CSS terdapat pustaka untuk mengatur font, ukuran font, tinggi dan lebar suatu objek, serta hal lain yang berhubungan dengan tampilan web. Ada tiga tipe CSS yang biasa digunakan oleh para pengembang website. Internal CSS adalah yang diletakkan di antara tag dan biasanya di tandai dengan tag . External CSS adalah berkas CSS yang disimpan di luar file yang dibuat oleh programmer biasanya di panggil seperti . Inline CSS yaitu file CSS yang ditulis langsung satu baris dengan tag HTML. Dalam pembuatan aplikasi

Rumahku Madrasahku Berbasis Android juga memanfaatkan CSS.

14

Ada dua jenis CSS yang dapat digunakan yaitu CSS yang bersifat internal dan eksternal. Akan lebih mudah menggunakan yang eksternal, karena script CSS akan tersimpan berupa file CSS tersendiri, jadi akan lebih mudah bila ingin melakukan pengeditan, karena biasanya dihubungkan dengan link. Sedangkan jika menggunakan CSS yang bersifat internal pada halaman, maka bila ada perubahan format harus melakukan banyak pengeditan pada semua file.

Contoh program CSS skrip HTML:

Latihan Pertama

…………………………………………..

15

2.1.4. Basis Data

Menurut Pamungkas (2017:2) medefiniskan bahwa “Basis data adalah kumpulan data-data yang saling berhubungan sedemikian rupa sehingga dapat mudah disimpan, dimanipulasi, serta dipanggil oleh penggunanya”. Data sendiri merupakan fakta mengenai objek orang dan lain-lain. Deta dinyatakan dengan nilai (angka, deretan karakter, atau symbol ).

1. SQLite

Menurut Junindar (2017) SQLite adalah sekumpulan database SQL yang tertanam pada system yang kita gunakan, salah satu database yang bersifat open source”.

Salah satu library yang terdapat dalam database SQLite adalah fungsi commandline sqlite3 (sqlite3.exe) yang memungkinkan user untuk berinteraksi dan menjalankan perintah SQL di SQLite. Tulisan ini berisi pengenalan database

SQLite dan perintah (Command Line) yang dapat digunakan pada database

SQLite.

2.1.5. Model Pengembangan Perangkat Lunak

Berikut adalah model pengembangan perangkat lunak yang digunakan oleh penulis yaitu model SDLC air terjun (waterfall).

Menurut Rosa dan Shalahuddin dalam Destiana (2014) menyimpulkan bahwa : “Model SDLC air terjun (waterfall) sering juga disebut model sekuensial linier (sequential linear) atau alur hidup klasik (classic life cycle), model air terjun menyediakan pendekatan air hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengodean, pengujian, dan tahap pendukung (support)”. Berikut adalah gambar model air terjun (waterfall) :

16

Sistem/Rekayasa Informasi

Analisis Desain Pengkodean Pengujian

Sumber: Rosa dan Shalahuddin dalam Destiana(2014)

Gambar II.4.

Ilustrasi model waterfall

Metode pengembangan perangkat lunak ini menggunakan metode waterfall (Rosa dan Shalahuddin dalam Destiana, 2014) yang terbagi menjadi lima tahapan, yaitu:

1. Analisis kebutuhan perangkat lunak

Proses pengumpulan kebutuhan dilakukan secara intensif untuk

menspesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat

lunak seperti apa yang dibutuhkan oleh user. Spesifikasi kebutuhan perangkat

lunak pada tahap ini perlu didokumentasikan.

2. Desain

Desain perangkat lunak adalah proses multi langkah yang fokus pada

desain pembuatan program perangkat lunak termasuk struktur data, arsitektur

perangkat lunak, representasi antarmuka, dan prosedur pengodean. Tahap ini

mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke

representasi desain agar dapat diimplementasikan menjadi program pada tahap

selanjutnya. Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu

didokumentasikan.

17

3. Pembuatan kode program

Desain harus ditranslasikan ke dalam program perangkat lunak. Hasil dari

tahap ini adalah program komputer sesuai dengan desain yang telah dibuat

pada tahap desain.

4. Pengujian

Pengujian fokus pada perangkat lunak secara dari segi lojik dan fungsional

dan memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk

meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan

sesuai dengan yang diinginkan.

5. Pendukung (support) atau pemeliharaan (maintenance)

Tidak menutup kemungkinan sebuah perangkat lunak mengalami

perubahan ketika sudah dikirimkan ke user. Perubahan bisa terjadi karena

adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian atau

perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung

atau pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis

spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk

membuat perangkat lunak baru.

2.1.6. Aplikasi Perangkat Lunak

Berikut ini adalah aplikasi perangkat lunak yang diguanakan penulis dalam pembuatan aplikasi.

1. Basic4Android

BASIC (Beginner’s All-Purpose Symbolic Instruction Code) yaitu bahasa pemrograman tingkat tinggi untuk keperluan umum yang dibuat untuk

18

mempermudah penggunanya. Bahasa juga terus berkembang dan terdapat beberapa varian seperti QuickBasic, TurboBasic, DarkBasic. Salah satu yang terkenal adalah Visual Basic yang dikembangkan oleh Microsoft. Bahasa Visual

Basic ini digunakan untuk mengembangkan aplikasi berbasis Sistem Operasi

Windows. Semakin berkembangnya bahasa basic kemudian dikembangkan Basic

For Android(B4A). Menurut B4A book (2017) mendefinisikan bahwa “B4A

(Basic For Android) adalah keluarga umum, bahasa pemrograman yang menekankan kemudahan bagi pengguna.”

Program yang digunakan untuk membuat dokumen B4A menggunakan aplikasi B4A. Berikut adalah contoh kode yang dituliskan di B4A dan disimpan dengan B4A Source Code.

Gambar II. 5.

Gambar Contoh Kode B4A

19

Gambar II. 6.

Gambar contoh kode B4A.

Berikut adalah contoh file MyFirstProgram.b4a tersebut dengan smartphone.

Gambar II. 7.

Contoh file MyFirstProgram.b4a dengan smartphone

2. Corel DRAW X7

Menurut Adi (2017:1) mendefinisikan “Corel DRAW adalah suatu aplikasi desain grafis yang berguna untuk membuat gambar vektor, logo dan layout halaman”. Beberapa bagian-bagian dari lembar kerja CorelDRAW X7 yaitu:

20

a. Menu Bar

Menu Bar adalah bagian yang menampilkan sederet daftar perintah

yang berfungsi untuk mengatur dan menampilkan objek. b. Ruler

Ruler adalah garis mistar yang berfungsi untuk mengatur posisi ukuran

objek. c. Tool Bar

Tool Bar adalah sebuah batang yang berisi tombol-tombol perintah

untuk mengolah objek. d. Lembar Kerja

Lembar Kerja adalah lokasi untuk membuat objek e. Property Bar

Property Bar adalah sebuah batang yang berisi sederetan perintah untuk

mengatur parameter dari suatu objek. f. Page Navigator

Papan Navigator berisi informasi dan tombol pertintah untuk pindah

dari satu halaman (page) kehalaman lain. g. Color Palletes

Color Palletes berfungsi untuk memberi warna pada objek. h. Toolbox

Toolbox adalah bagian yang memuat tombol-tombol perintah yang

digunakan untuk membuat dan meodifikasi objek.

21

Sumber: Adi

Gambar II. 8.

Tampilan Corel Draw X7

3. Brackets

Menurut Herlangga (2014) mengatakan bahwa “brackets adalah kode

editor yang secara khusus dikembangkan untuk tujuan web design dan font-end

development”. Project brackets diusung oleh adobe secara open source dan

dikembangkan secara aktif oleh komunitas web developer dan benar-benar

dibuat untuk kebutuhan web development, khususnya web design dan font-end

development. Berikut adalah contoh tampilan brackets.

22

Sumber: Herlangga

Gambar II. 9.

Tampilan Brackets

2.2. Teori Pendukung

2.2.1. Model Pembelajaran Berbasis Mobile

Menuru Setiawan (2017) memaparkan bahwa “model pembelajaran yang memanfaatkan teknologi informasi dan komunikasi. Pada konsep pembelajaran tersebut media pembelajaran berbasis mobile membawa manfaat ketersediaan materi ajar yang dapat diakses setiap saat dan visualisasi materi yang menarik”.

Pembelajaran berbasis mobile mengacu kepada penggunaan perangkat teknologi informasi (TI) genggam dan bergerak, seperti PDA, telepon genggam,

Laptop, dan tablet PC, dalam pengajaran dan pembelajaran. Media pembelajaran berbasis mobile merupakan bagian dari pembelajaran secara digital (e-Learning) sehingga, dengan sendirinya, juga merupakan bagian dari distance learning (d-

Learning).

23

2.2.2. ERD (Entity Relationship Diagram)

Menurut Ladjamudin dalam Destiana dkk (2014) “ERD adalah suatu model jaringan yang menggunakan susunan data yang disimpan dalam sistm secara abstrak”. Entitas biasaanya menggambarkan jenis informasi yang sama.

Dalam entitas digunakan untuk menghubungkan antar entitas yang sekaligus menunjukan hubungan antar data.

Menurut Brady dan Loonam dalam Faithly Kevin Ridge Sumantri (2016)

Komponen ERD antara lain yaitu:

1. Entitas (Entity)

Entitas adalah objek yang menarik dimana kita akan menyimpan data.

2. Relasi (Relationship)

Relasi adalah hubungan yang terjadi antara satu atau lebih entitas dan di

presentasikan sebagai garis lurus yang menghubungkan dua entitas.

3. Atribut (Attribut)

Atribut adalah ciri umum semua atau sebagian besar instansi pada entitas

tertentu. Sebutan lain atribut adalah properti, elemen data, dan field.

2.2.3. LRS (Logical Record Structure)

Logical Record Structure merupakan tahapan berikutnya setelah membuat

ERD untuk memantapkan rencana pembuatan basis data (Supriyanta 2015).

Perbedaan LRS dengan ERD dan tipe record berada diluar field tipe record ditempatkan. LRS terdiri dari link-link diantara tipe record. Link ini menunjukkan arah dari satu tipe record lainnya. Banyak link dari LRS yang diberi tanda field- field yang terlihat pada kedua link tipe record.

24

2.2.4. UML (Unified Modelling Language)

Menurut Nugroho dalam Junaidi (2016) “UML menyediakan model- model ambigu yang tepat, tidak mendua arti (ambigu) serta lengkap.”.

UML digunakan untuk memodelkan suatu system bukan hanya perangkat lunak yang menggunakan konsep berorientasi object. Dan juga untuk menciptakan suatu bahasa permodelan yang dapat digunakan baik oleh manusia maupun mesin.

2.2.5. Flowchart

Menurut Nuraini (2015) “flowchart dapat diartikan sebagai suatu alat atau sarana yang menunjukan langkah-langkah yang harus dilaksanakan dalam menyelesaikan suatu permasalahan untuk komputasi dengan cara mengekspresikannya ke dalam serangkaian symbol-simbol grafis khusus”.

Manfaat yang akan diperoleh bila menggunakan flowchart dalam pemecahan masalah komputasi:

a. Terbiasa berfikir secara sistematis dan terstruktur

b. Mudah mengecek dan menemukan bagian-bagian prosedur yang tidak

valid dan bertele-tele.

c. Prosedur akan mudah dikembangkan.

Berikut ini adalah beberapa simbol yang digunakan dalam menggambar

suatu flowchart:

25

Tabel II.2.

Simbol-Simbol Flowchart

No Simbol Nama Fungsi

1

Terminal Menunjukkan permulaan (start) atau akhir (stop) dari suatu proses.

2 Input atau Menunjukkan proses input- output yang terjadi tanpa Output bergantung dari jenis peralatannya.

3

Menyatakan suatu tindakan Process (proses) yang dilakukan oleh komputer.

4

Memilih proses atau keputusan Decision berdasarkan kondisi yang ada. Simbol ini biasanya ditemui pada flowchart program.

5 Menyederhanakan hubungan antar simbol yang letaknya berjauhan atau rumit bila Connector dihubungkan dengan garis dalam satu halaman. (On-Page)

6 Connector Menghubungkan simbol dalam halaman berbeda. label dari simbol ini dapat menggunakan (Off-Page) huruf atau angka.

7 Merupakan simbol yang digunakan untuk mempersiapkan penyimpanan Preparation di dalam storage.

26

8

Merupakan simbol yang Predefined digunakan untuk menunjukkan pelaksanaan suatu bagian Process prosedur (sub-proses).

9

Menyalakan Input atau Output Punch Tape yang menggunakan pita kertas berlubang.

10

Mencetak keluaran dalam Document bentuk dokumen (melalui printer).

11

Menghubungkan antara simbol Flow yang satu dengan simbol yang lain (connecting line).

2.2.6. Pengujian Aplikasi

1. Black - Box Testing

Menurut Rosa dan Shalahudin dalam Pratama dkk (2015) menyatakan bahwa “ menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain dank ode program”.

Pengujian dengan metode Black Box Testing (pengujian kotak hitam) membuat penguji harus memahami fungsi yang di maksud. Jika terjadi kesalahan atau fungsi maka harus dilakukan perbaikan agar fungsi tersebut berjalan normal.

Pengujian dengan metode ini juga dilakukan dengan cara yang seharusnya dan kemudian dilakukan dengan cara yang menyimpang atau cara yang salah. Cara uji dengan black box memungkinkan mengungkap suatu kesalahan yang terjadi pada

27

fungsi yang terdapat dalam system. Focus dari pengujian black box adalah persyaratan fungsional dari perangkat lunak. Serangkaian masukan data diberikan kepada sistem sebagai bahan dasar pengujian yang kemudian harus diproses sesuai persyaratan dan fungsi yang ada dalam sistem.

Mustaqbal, dan kawan-kawan (2015) dalam bukunya menjelaskan tentang kesalahan yang mungkin terjadi dalam sistem adalah:

1. Fungsi-fungsi yang tidak benar atau ada.

2. Kesalahan antar muka (interface).

3. Kesalahan dalam struktur data atau akses basis data.

4. Kesalahan permofansi (performance errors).

5. Kesalahan inisialisasi dan terminasi.

Pengujian black box memperhatikan struktur control, maka perhatian berfokus pada domain informasi. Tidak seperti pengujian white box,yang dilakukan pada saat awal proses pengujian, pengujian black box cenderung diaplikasikan selama tahap akhir pengujian.