BAB II LANDASAN TEORI - repository.nusamandiri.ac.id filekeberadaan sistem informasi ... dan...
Transcript of BAB II LANDASAN TEORI - repository.nusamandiri.ac.id filekeberadaan sistem informasi ... dan...
5
BAB II
LANDASAN TEORI
2.1. Tinjauan Jurnal
Dalam penelitian ini, penulis menggunakan beberapa jurnal sebagai
referensi, yaitu :
Menurut (Sholeh, Iswayudi, & Prabowo, 2014) mengemukakan bahwa:
Yogyakarta sebagai kota budaya memiliki banyak museum dengan berbagai
karakteristik dan jenis yang beraneka ragam. Sebagai upaya untuk
memperkenalkan museum penggunaan teknologi informasi perlu
mengoptimalkan perkembangan teknologi informasi saat ini terutama
penggunaan smartphone. Dengan penggunaan smartphone aplikasi sistem
informasi yang dikembangkan diakses lebih mudah. Dengan adanya sistem
informasi museum berbasis web mobile diharapkan pengaksesan informasi
dapat dilakukan dengan mudah. Hal lain yang perlu diperhatikan adalah
promosi atau menyampaikan informasi kepada masyarakat tentang
keberadaan sistem informasi museum berbasis web mobile ini.
Menurut (Agustina, Risnanto, & Supriadi, 2016) mengemukakan bahwa:
Dengan memanfaatkan teknologi GPS, sistem LBS ini dapat digunakan
untuk mengetahui posisi berdasarkan titik geografis dari lokasi pengguna
dan lokasi yang dituju. Android merupakan salah satu platform smartphone
terbaru yang dapat digunakan untuk mengimplementasikan sistem LBS
(Location Based Service).
Penelitian tersebut menjadi dasar utama dalam pembuatan Aplikasi Mobile
Finder Museum Jakarta berbasis Android dengan menggunakan metode algoritma
A* untuk mencari rute tercepat untuk penggunanya.
2.2. Konsep Dasar Program
Menurut (Yurindra, 2017:2) mengemukakan bahwa, “Program adalah
kumpulan perintah yang dimengerti oleh komputer”.
6
2.2.1. Sistem Informasi
1. Pengertian Sistem
Menurut (Romney & Steinbart, 2015:3) mengemukakan bahwa, “Sistem adalah
suatu rangkaian yang terdiri dari dua atau lebih komponen yang saling
berhubungan dan saling berinteraksi satu sama lain untuk mencapai tujuan
dimana sistem biasanya terbagi dalam subsistem yang lebih kecil yang
mendukung sistem yang lebih besar”.
2. Pengertian Informasi
Menurut (Hutahean, 2015:9) mengemukakan bahwa, “Informasi adalah data
yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi
penerimanya”.
3. Pengertian Sistem Informasi
Menurut (Anggraeni, 2017:2) mengemukakan bahwa, “Sistem informasi
merupakan suatu kombinasi teratur dari orang-orang, hardware, sofware,
jaringan komunikasi dan sumber daya data yang mengumpulkan, mengubah,
dan menyebarkan informasi dalam sebuah organisasi”.
2.2.2.Systems Development Life Cycle (SDLC)
Menurut (Mulyani, 2016:24) mengemukakan bahwa, “SDLC adalah
sebuah proses logika yang digunakan oleh seorang system analist untuk
mengembangkan sebuah sistem informasi”.
Menurut (Rosa & Salahudin, 2015:28) mengemukakan bahwa:
Model SDLC air terjun (waterfall) sering juga disebut model sekuensial
linier (sekuensial linier) atau alur hidup klasik (classic life cycle). Model
air terjun menyediakan pendekatan alur hidup perangkat lunak secara
sekuensial atau terurut dimulai dari analisis, desain, pengodean, pengujian,
dan tahap pendukung (support).
7
Tahapan-tahapan SDLC, yaitu:
1. Analisis Kebutuhan Perangkat Lunak
Merupakan proses pengumpulan kebutuhan perangkat lunak yang dilakukan
secara intensif untuk menspesifikasikan kebutuhan perangkat lunak.
2. Desain
Proses multi langkah yang fokus pada desain pembuatan program perangkat
lunak termasuk struktur data, arsitektur perangkat lunak, representasi
antarmuka, dan prosedur pengodean.
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.
4. Pengujian
Hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan
keluaran yang dihasilkan sesuai dengan yang diinginkan.
5. Pendukung (Support) atau Pemeliharaan (Maintenance)
Proses pengembangan mulai dari analisis spesifikasi untuk perubahan
perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak
baru.
Sumber: Penelitian Tahun 2018
Gambar II.1 SDLC Model Waterfall
8
2.2.3.Unified Modelling Language (UML)
Menurut (Mulyani, 2016:35) mengemukakan bahwa, “UML adalah sebuah
teknik pengembangan sistem yang menggunakan bahasa grafis sebagai alat untuk
pendokumentasian dan melakukan spesifikasi pada sistem”.
Macam-macam Diagram UML
Sumber: (Sukamto dan Shalahuddin, 2014:140)
Gambar II.2 Macam-macam Diagram UML
Berdasarkan gambar diatas, UML memiliki 3 kategori, yaitu:
1. Structure Diagram
Yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur
statis dari sistem yang dimodelkan.
2. Behavior Diagram
Yaitu kumpulan diagram yang digunakan untuk menggambarkan kelakuan
sistem atau rangkaian perubahan yang terjadi pada sebuah sistem.
9
3. Interaction Diagram
Yaitu kumpulan diagram yang digunakan untuk menggambarkan interkasi
sistem dengan sistem lain maupun interaksi antar subsistem pada suatu sistem.
Menurut (Sukamto & Shalahudin, 2014:140), UML memiliki 13 macam
diagram, diantaranya adalah:
1. Use Case Diagram
(Sukamto & Shalahudin, 2014:155) mengemukakan bahwa, “Use case atau
diagram use case merupakan pemodelan untuk kelakuan (behavior) sistem
informasi yang akan dibuat”.
Sumber: http://astah.net/tutorial
Gambar II.3 ContohUse Case Diagram
2. Class Diagram
(Sukamto & Shalahudin, 2014:141) mengemukakan bahwa, “Diagram kelas
atau class diagram menggambarkan struktur sistem dari segi pendefinisian
kelas-kelas yang akan dibuat untuk membangun sistem”.
10
Sumber: http://astah.net/tutorial
Gambar II.4 Contoh Class Diagram
3. Activity Diagram
(Sukamto & Shalahudin, 2014:161) mengemukakan bahwa, “Diagram
aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau
aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada
perangkat lunak”.
Sumber: http://astah.net/tutorial
Gambar II.5 Contoh Activity Diagram
11
4. Sequence Diagram
(Sukamto & Shalahudin, 2014:165) mengemukakan bahwa, “Diagram sekuan
menggambarkan kelakuan objek pada usecase dengan mendeskripsikan waktu
hidup objek dan message yang dikirimkan dan diterima antar objek”.
Sumber: http://static2.creately.com/
Gambar II.6 Contoh Sequence Diagram
5. State Machine Diagram
Statemachine diagram yaitu salah satu jenis diagram pada UML yang
menggambarkan transisi maupun perubahan keadaan suatu objek pada sistem.
Sumber: http://www.pengertianku.net
Gambar II.7 Contoh State Machine Diagram
12
6. Communication Diagram
Communication diagram yaitu salah satu jenis diagram pada UML yang dapat
menggambarkan tahapan terjadinya suatu aktivitas dan diagram ini juga
menggambarkan interaksi antara objek yang ada pada sistem.
Sumber: http://www.pengertianku.net
Gambar II.8 Contoh Communication Diagram
7. Timing Diagram
Timing diagram yaitu salah satu jenis diagram pada UML yang disebut sebagai
bentuk lain dari interaksi diagram, dimana fokus yang paling utamanya kepada
waktu.
Sumber: http://www.conceptdraw.com
Gambar II.9 Contoh Timing Diagram
13
8. Interaction Overview Diagram
Interaction overview diagram yaitu salah satu jenis diagram pada UML yang
berguna untuk men-visualisasikan kerjasama dan hubungan antara activity
diagram dengan sequence diagram.
Sumber: https://www.visual-paradigm.com
Gambar II.10 ContohInteraction Overview Diagram
9. Object Diagram
Object diagram yaitu salah satu jenis diagram pada UML yang
menggambarkan objek-objek pada suatu sistem dan hubungan antaranya.
Sumber: http://astah.net/tutorial
Gambar II.11 Contoh Object Diagram
14
10. Componet Diagram
Component diagram yaitu salah satu jenis diagram pada UML yang
menggambarkan software pada suatu sistem. Component diagram merupakan
penerapan software dari satu ataupun lebih class, dan biasanya berupa file
data atau .exe, source kode, table, dokumen dsb.
Sumber:http://www.pengertianku.net
Gambar II.12 Contoh Component Diagram
11. Composite Structure Diagram
Composite structure diagram yaitu salah satu jenis diagram pada UML yang
menggambarkan struktur internal dari penklasifikasian (class, component
atau use case) dan termasuk titik-titik interaksi penklasifikasian kebagian
lainnya dari suatu sistem.
Sumber: http://astah.net/tutorial
Gambar II.13 Contoh Composite Structure Diagram
15
12. Package Diagram
Package diagram yaitu salah satu jenis diagram pada UML digunakan untuk
mengelompokan kelas dan juga menunjukan bagaimana elemen model akan
disusun serta mengambarkan ketergantungan antara paket-paket.
Sumber: http://astah.net/tutorial
Gambar II.14 Contoh Package Diagram
13. Deployment Diagram
Deployment diagram yaitu salah satu diagram pada UML yang menunjukan
tata letak suatu sistem secara fisik, dapat juga dikatakan untuk menampilkan
bagian-bagian software yang terdapat pada hardware dan digunakan untuk
menerapkan suatu sistem dan hubungan antara komponen hardware.
Sumber: http://www.pengertianku.net
Gambar II.15 Contoh Deployment Diagram
16
2.2.4.Sistem Informasi Geografis
1. Pengertian SIG
Menurut (Swara & Zalmi, 2017) mengemukakan bahwa:
Sistem Informasi Geografis (SIG) merupakan suatu sistem informasi
berbasiskan komputer yang merupakan penggabungan antara unsur peta
(geografis) dan informasi tentang peta tersebut (data atribut), yang dirancang
untuk mendapatkan, mengolah, memanipulasi, analisis, memperagakan dan
menampilkan data spesial untuk menyelesaikan perencanaan mengolah dan
meneliti permasalahan.
2. Subsistem SIG
Menurut (Adil, 2017:19) menjelaskan bahwa, Subsistem SIG dapat diuraikan
sebagai berikut:
a. Data Input
Subsistem ini bertugas untuk mengumpulkan, mempersiapkan dan
menyimpan data spasial dan data atribut dari berbagai sumber. Subsistem ini
pula yang bertanggung jawab dalam mengkonversi atau mentransformasi
format-format data aslinya yang digunakan oleh perangkat SIG yang
bersangkutan.
b. Data Output
Subsistem ini bertugas menampilkan atau menghasilkan keluaran (termasuk
mengekspornya ke format yang dikehendaki) seluruh atau sebagian basis
data (spasial) baik dalam bentuk softcopy maupun bentuk hardcopy, seperti:
tabel, grafik, peta dan lain-lain.
c. Data Management
Subsistem ini mengorganisasikan baik data spasial maupun tabel atribut ke
dalam sebuah sistem basis data sehingga mudah di-retrieve, di-update, dan
di-edit.
17
d. Data Manipulasi dan Analisis
Subsistem ini menentukan informasi-informasi yang dapat dihasilkan oleh
SIG. Selain itu, subsistem ini juga melakukan manipulasi (evaluasi dan
penggunaan fungsi operator matematis dan logika) permodelan data untuk
menghasilkan informasi yang diharapkan.
Sumber: (Adil, 2017:20)
Gambar II.16 UraianSub-sistem SIG
3. Komponen SIG
Menurut (Irwansyah, 2013:11-13) menjelaskan bahwa, Komponen-komponen
yang dapat membangun sebuah sistem informasi geografis adalah:
a. Computer System And Software
Merupakan sistem komputer dan kumpulan piranti lunak yang digunakan
untuk mengolah data.
b. Spatial Data
Merupakan data spasial (bereferensi keruangan dan kebumian) yang akan
diolah.
18
c. Data Management And Analysis Procedure
Manajemen data dan analisa prosedur oleh Database Management System.
d. People
Entitas sumber data manusia yang akan mengoperasikan sistem informasi
geografis.
4. Model Data SIG
Menurut (Wibowo, Kanedi, & Jumadi, 2015), Data digital geografis diorganisir
menjadi dua bagian, sebagai berikut:
a. Data Spasial
Data spasial adalah data yang menyimpan kenampakan-kenampakan
permukaan bumi, seperti jalan, sungai, dan lain-lain. Model data spasial
dibedakan menjadi dua yaitu model data vektor dan model data raster.
Model data vektor diwakili oleh simbol-simbol yang dikenal dengan feature,
seperti feature titik (point), feature garis (line), dan feature area (surface).
b. Data Non Spasial/Data Atribut
Data non spasial/data atribut adalah data yang menyimpan atribut dari
kenampakan-kenampakan permukaan bumi.
2.2.5.Mobile GIS
Menurut (Geoda, 2014:90) mengemukakan bahwa :
Mobile GIS merupakan sebuah integrasi cara kerja perangkat lunak/keras
untuk pengaksesan data dan layanan geospasial melalui perangkat
bergerak via jaringan kabel atau nirkabel. Secara umum, mobile GIS
diimplementasikan pada dua area aplikasi utama yaitu Layanan Berbasis
Lokasi (Location Based Service) dan GIS untuk kegiatan lapangan (Field
Based GIS).
19
2.2.6.Google Maps API
Menurut (Mahdia & Noviyanto, 2013) mengemukakan bahwa:
Google Maps API adalah sebuah layanan (service) yang diberikan oleh
Google kepada para pengguna untuk memanfaatkan Google Map dalam
mengembangkan aplikasi. Google Maps API menyediakan beberapa fitur
untuk memanipulasi peta, dan menambah konten melalui berbagai jenis
services yang dimiliki, serta mengijinkan kepada pengguna untuk
membangun aplikasi enterprise di dalam websitenya.
2.2.7.Global Positioning System
Menurut (Komputer, 2013:26) mengemukakan bahwa:
Global Positioning System (GPS) adalah sebuah sistem yang menyediakan
informasi posisi secara terus menerus di berbagai tempat di bumi. Karena
GPS dapat diakses oleh sejumlah orang secara tidak terbatas, maka GPS
adalah sebuah sistem yang pasif. Selain untuk mengetahui letak/posisi
suatu tempat/benda tertentu, GPS juga membantu untuk mencari rute
tercepat dan banyak digunakan sebagai alat bantu navigasi.
Sistem kerja GPS adalah dengan menstransmisikan sinyal dari satelit ke
perangkat GPS. GPS membutuhkan transmisi dari 3 satelit untuk mendapatkan
informasi dua dimensi (lintang dan bujur) dan 4 satelit untuk tiga dimensi (lintang,
bujur dan ketinggian).
Cara kerja GPS sebagai berikut:
1. Memakai perhitungan “triangulation” dari satelit.
2. Untuk perhitungan “triangulation”, GPS mengukur jarak menggunakan travel
time sinyal radio.
3. Untuk mengukur travel time, GPS memerlukan akurasi waktu yang tinggi.
4. Untuk perhitungan jarak, pastikan posisi satelit dan ketingian pada orbitnya.
5. Menggoreksi delay sinyal waktu perjalanan di atmosfer sampai diterima
reciever.
20
2.2.8.Location Based Service (LBS)
Menurut (R, Yapie, & Mulyani, 2013) mengemukakan bahwa:
Teknologi Location Based service (LBS) merupakan salah satu bagian dari
implementasi mobile GIS yang lebih cenderung memberikan fungsi
terapan sehari-hari seperti menampilkan direktori kota, navigasi
kendaraan, pencarian alamat serta jejaring sosial dibanding fungsionalitas
pada teknologi GIS populer untuk Field Based GIS.
Dua unsur utama LBS adalah :
1. Location Manager (API Maps)
Menyediakan tools/source untuk LBS, Aplication Programming Interface
(API) Maps menyediakan fasilitas untuk menampilkan, memanipulasi peta
beserta feature lainnya seperti tampilan satelit, street (jalan), maupun
gabungannya. Paket ini berada pada com.google.android.maps.
2. Location Providers (API Location)
Menyediakan teknologi pencarian lokasi yang digunakan oleh
device/perangkat. API Location berhubungan dengan data GPS (Global
Positioning System) dan data lokasi real-time. API Location berada pada paket
Android yaitu android.location. Dengan location manager, kita dapat
menentukan lokasi kita saat ini dan rute menuju tempat tertentu.
Sumber: http://shopanninh.com/
Gambar II.17 Sistem Kerja LBS
21
2.2.9.Android
1. Pengertian Android
Menurut (Jubilee, 2015:1) mengemukakan bahwa:
Android adalah sistem operasi berbasis Linux yang dirancang untuk perangkat
seluler layar sentuh seperti telepon pintar dan komputer tablet. Android
awalnya dikembangkan oleh Android, Inc., dengan dukungan finansial dari
Google, yang kemudian membelinya pada tahun 2005. Sistem operasi ini dirilis
resmi pada tahun 2007.
2. Versi-versi Android
Menurut (Irsyad, 2016:4), Android selalu merilis versi-versinya dengan nama
makanan ringan dan sesuai dengan urutan abjad. Versi android akan dijelaskan
pada tabel II.1 berikut ini.
Tabel II.1
Versi-versi Android
Versi Nama Tanggal Rilis
1.5 Cupcake 30 April 2009
1.6 Donut 15 September 2009
2.0-2.1 Eclair 26 Oktober 2009
2.2 Froyo 20 Mei 2010
2.3-3.2 Gingerbread 6 Desember 2010
2.3.3-2.3.7 Gingerbread 9 Februari 2011
3.1 Honeycomb 10 Mei 2011
3.2 Honeycomb 15 Juli 2011
4.0.3-4.0.4 Ice Cream Sandwitch 16 Desember 2011
4.1.x Jelly Bean 9 Juli 2012
4.2.x Jelly Bean 13 November 2012
22
4.3.x Jelly Bean 24 Juli 2013
4.4.x KitKat 31 Oktober 2013
5.0 Lollipop 15 Oktober 2014
6.0 Marshmallow 5 Oktober 2015
Sumber : (Irsyad, 2016:4)
3. Fitur-fitur Android
Menurut (Jubilee, 2015:2), Android memiliki beberapa fitur yang akan
dijelaskan pada tabel II.2 berikut ini.
Tabel II.2
Fitur-fitur Android
Fitur Deskripsi
Antarmuka Layar sistem operasi Android menampilkan antarmuka
yang bagus dan intuitif.
Konektifitas GSM/EDGE, IDEN, CDMA, EV-DO, UMTS,
Bluetooth, Wi-Fi, LTE, NFC dan WiMAX.
Penyimpanan SQLite, database relasional ringan yang digunakan untuk
penyimpanan data.
Media H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC,
HE-AAC, AAC 5.1, MP3, MIDI, Ogg Vorbis, WAV,
JPEG, PNG, GIF dan BMP.
Messaging SMS dan MMS
Web Browser
Berdasarkan Layout Engine Webkit, dengan Chrome’s
V8 JavaScript Engine yang mendukung HTML5 dan
CSS3.
Multi –touch Android memiliki dukungan multi-touch (lebih dari satu
sentuhan layar).
Multi-tasking Pengguna dapat berpindah dari satu task ke task lainnya
dan beberapa aplikasi dapat berjalan pada waktu yang
bersamaan.
23
Ukuran widgets Widges dapat diatur ukuranya sesuai dengan keinginan
pengguna, baik memperbesar ukuran untuk tampilan
lebih banyak konten, atau memperkecil ukuran untuk
menyediakan lebih banyak ruang.
Multi language Mendukung teks dalam berbagai bahasa.
GCM Google Cloud Messaging (GCM) adalah layanan
memungkinkan Developer untuk mengirim data pesan
pendek pada pengguna tanpa menggunakan solusi sync
proprietary.
Wi-Fi Direct Teknologi yang memungkinkan aplikasi untuk
menemukan dan memasangkan secara langsung, melalui
koneksi peer-to-peer high-bandwitch.
Android Beam Teknologi berbasis NFC populer yang memungkinkan
pengguna untuk berbagi konten secara langsung hanya
dengan menyentuhkan dua perangkat Android.
Sumber : (Jubilee, 2015:2)
4. Arsitektur Android
Menurut (Supardi, 2015:3) menjelaskan, Arsitektur android terdiri atas:
a. Applications dan Widgets
Merupakan layer dimana kita berhubungan langsung dengan aplikasi saja.
b. Application Frameworks
Merupakan Open Development Platform yang ditawarkan Android untuk
dapat dikembangkan dalam membangun aplikasi. Pengembang memiliki
akses penuh menuju API Framemworks.
c. Libraries
Merupakan layer dimana fitur-fitur Android berada.
d. Android Run Time
Merupakan layer yang membuat aplikasi Android dapat dijalankan. Dimana
prosesnya menggunakan implementasi linux.
24
e. Linux Kernel
Merupakan layer inti dari sistem operasi Android berada.
Sumber: (Supardi, 2015:4)
Gambar II.18 Arsitektur Android
5. Struktur Aplikasi Android
Struktur aplikasi Android menggunakan bahasa pemograman Java. Kode Java
dikompilasi bersama dengan resource file yang dibutuhkan oleh aplikasi,
dimana prosesnya di-package oleh tools yang dinamakan “Apt Tools” ke
dalam paket Android sehingga menghasilkan file dengan eksitensi apk. File
apk ini yang nantinya dapat anda jalankan pada peralatan mobile.
Ada 4 jenis komponen dalam aplikasi Android, yaitu:
a. Activities, Merupakan komponen untuk menyajikan tampilan pemakai
kepada pengguna.
25
b. Service, Merupakan komponen yang tidak memiliki tampilan pemakai,
tetapi service berjalan secara backgrounds.
c. Broadcast Receiver, Merupakan komponen yang berfungsi menerima dan
beraksi untuk menyampaikan notifikasi.
d. Content Provider, Merupakan komponen yang membuat kumpulan data
secara spesifik sehingga dapat digunakan oleh aplikasi lain.
6. Android SDK
Menurut (Afandi & Saputra, 2013) mengemukakan bahwa, “Android SDK
adalah perangkat lunak atau tool API (Application Programming Interface)
yang diperlukan untuk mulai mengembangkan hasil aplikasi pada platform
Android yang menggunakan bahasa pemograman Java”.
7. Android Virtual Device (AVD)
Menurut (Kadir, 2013:15) mengemukakan bahwa, “Android Virtual Device
(AVD) atau dikenal dengan sebutan emulator perlu dibuat terlebih dahulu untuk
kepentingan pengujian aplikasi Android.
2.2.10.Android Studio
Android Studio adalah sebuah IDE untuk Android Development yang
diperkenalkan Google pada acara Google I/O 2013. Android Studio merupakan
pengembangkan dari Eclipse IDE, dan dibuat berdasarkan IDE Java populer, yaitu
IntelliJ IDEA. Android Studio merupakan IDE resmi untuk pengembangan
aplikasi Android.
26
Sumber: http://tools.android.com/recent/androidstudio11preview1released
Gambar II.19 Android Studio
2.2.11.Pemograman Berorientsi Objek
Menurut (Abdulloh, 2017:1) mengemukakan bahwa:
OOP (Object Oriented Programming) merupakan teknik pemograman
dengan menggnakan konsep objek. Tujuan dari OOP adalah untuk
memudahkan programmer dalam pembuatan program dengan
menggunakan konsep objek yang ada dalam kehidupan sehari-hari. Jadi
setiap bagian permasalahn adalah objek, dan objek itu sendiri merupakan
gabungan dari beberapa objek yang lebih kecil.
Keuntungan menggunakan pemrograman berorientasi objek yaitu dapat
meningkatkan produktifitas, kecepatan pengembangan, kemudahan pemeliharaan,
adanya konsistensi dan meningkatkan kualitas perangkat lunak.
2.2.12.Bahasa Pemrograman Java
Menurut (Hariyanto, 2014:3) mengemukakan bahwa, “Java merupakan
bahasa orientasi objek untuk pengembangan apikasi mandiri, aplikasi berbasis
internet, aplikasi untuk perangkat cerdas, yang dapat berkomunikasi lewat
internet/jaringan komunikasi”.
27
The Java 2 Platform tersedia dalam tiga edisi untuk keperluan berbeda:
1. Standard Edition (J2SE)
Standard Edition (J2SE) menyediakan lingkungan pengembang yang kaya
fitur, stabil, aman, dan cross-platform. Edisi ini mendukung konektivitas basis
data, rancangan antarmuka pemakai, masukan/keluaran pemograman jaringan
dan termasuk sebagai paket-paket dasar bahasa Java.
2. Enterprise Edition (J2EE)
Enterprise Edition (J2EE) menyediakan kakas untuk membangun dan
menjalankan multitier enterprise applications. J2EE berisi paket-paket di J2SE
ditambah paket-paket untuk mendukung pengembangan Enterprise JavaBeans,
JavaServer Pages, XML dan kendali transaksi yang fleksibel.
3. Micro Edition (J2ME)
Micro Edition (J2ME) untuk beragam costumer electronic product, seperti:
smartcard, smartphone, PDA dan set-top-box. J2ME menyediakan bahasa Java
yang sama, unggul dalam portabilitas, kemampuan dijalankan dimana pun dan
safe network delivery seperti J2SE dan J2EE. J2ME menggunakan sekumpulan
paket lebuh kecil. J2ME berisi subset paker J2SE ditambah paket spesifik
Micro Edition java.microedition.io. Aplikasi J2ME dapat diskala agar juga
dapat bekerja dengan J2SE dan J2EE.
2.2.13.Adobe Photoshop
Menurut (Suprayogo, 2016:2) mengemukakan bahwa, “Photoshop adalah
pengolah grafis raster buatan Adobe System, Inc, sebuah perushaan software
terkemuka berbasis di California, Amerika Serikat”.
28
Menurut (Firmantoro, Anton, & Nainggolan, 2016) “Adobe Photoshop
sebagai perangkat lunak pengolahan gambar dan pembuatan efek yang memiliki
hasil dan kualitas terbaik dan telah banyak memberikan kemudahan dalam
penyempurnaan sebuah gambar atau foto”.
2.3. Metode Algoritma
Menurut (Koswara & Wiguna, 2015) mengemukakan bahwa, “Algoritma
adalah suatu metode khusus yang tepat dan terdiri dari serangkaian langkah yang
terstruktur dan dituliskan secara matematis”.
2.3.1.Algoritma A* (A-Star)
Menurut (Taufiq, Wibowo, & Septiana, 2015) mengemukan bahwa, “A*
adalah algoritma Best First Search yang merupakan perpaduan Uniform Cost
Search yang memilih jarak paling kecil dari simpul awal ke simpul berikutnya dan
Greedy-Best First Search yang menggunakan nilai heuristik atau nilai perkiraan
untuk menentukan simpul berikutnya”.
Algoritma A* memiliki 5 komponen utama, yaitu : simpul awal, simpul
goal, open list, closed list, dan cost. Simpul awal merupakan titik awal dari posisi
saat ini. Simpul goal merupakan titik akhir atau dapat juga disebut titik tempat
tujuan. Cost merupakan nilai dari jarak yang telah ditempuh untuk sampai
ketempat tujuan. Open list digunakan sebagai penampung alternatif simpul yang
tersedia untuk dipilih sebagai simpul selanjutnya. Closed list digunakan sebagai
penampung simpul yang telah dilewati selama proses berlangsung. Isi dari open
list dan closed list adalah node-n, parent node-n, dan f(n). Node-n merupakan
29
simpul tempat berada saat ini. Parent node-n merupakan simpul asal dari simpul
saat ini. f(n) merupakan nilai cost yang didapat dari perhitungan fungsi heuristik.
Rumus: f(n) = g(n) + h(n)
Dimana, g(n) yaitu cost yang telah didapat dari simpul awal hingga simpul yang
akan dituju. h(n) yaitu nilai estimasi dari suatu simpul tempat berada hingga
simpul goal. Nilai h(n) didapat dari jarak antara suatu simpul hingga simpul goal
tanpa perlu melewati simpul-simpul lain yang tersedia. Nilai f(n) digunakan
sebagai acuan dalam memilih simpul yang akan dituju selanjutnya. Simpul yang
memiliki nilai f(n) terkecil yang akan dipilih sebagai simpul tujuan.
Sumber: Penelitian Tahun 2018
Gambar II.20 Flowchart Algoritma A-Star
30
2.4. Pengujian Aplikasi
Software Testing adalah proses mengoprasikan software dalam suatu kondisi
yang dikendalikan untuk verifikasi, mendeteksi error dan validasi. Validasi adalah
melihat kebenaran sistem apakah proses yang telah dituliskan sudah sesuai dengan
apa yang dibutuhkan oleh pengguna. Test case merupakan suatu tes yang
dilakukan berdasarkan pada suatu inisialisasi, masukan, kondisi ataupun hasil
yang telah ditentukan sebelumnya.
Dalam penelitian ini, penulis menggunakan metode pengujian Black Box
Testing dan White Box Testing untuk menguji test case yang ada.
2.4.1.Black Box Testing
Menurut (Budiman, 2014:4) mengemukakan bahwa, “Pengujian black box
merupakan metode perancangan data uji yang didasarkan pada spesifikasi
perangkat lunak. Data uji digunakan untuk kemudian dieksekusi pada perangkat
lunak dan kemudian keluaran dari perangkat lunak diuji apakah telah sesuai
dengan yang diharapkan.”
Black Box Testing memfokuskan pada kebutuhan fungsional software,
berdasarkkan pada spesifikasi kebutuhan software. Black box testing dilakukan
agar software terbebas dari error dan fungsi-fungsi yang diperlukanberjalan sesuai
dengan yang diharapkan.
Sumber: http://lutwamaconsulting.com
Gambar II.21 Black Box Testing
31
Teknik Pengujian Black Box:
1. Equivalence Class Partitioning
Teknik ini merupakan teknik pengujian software yang melibatkan pembagian
nilai input kedalam bagian nilai valid dan tidak valid dan memilih nilai
perwakilan dari masing-masing sebagai data test.
2. Boundary Value Analysis
Teknik ini merupakan teknik pengujian software yang melibatkan penentuan-
penentuan nilai input dan memilih beberapa nilai dari batasan-batasan tersebut
baik luar maupun dalam dari batasan-batasan tersebut sebagai data test.
3. Cause-Effect Graphing
Teknik ini merupakan teknik pengujian software yang melibatkan
penidentifikasian sebab-sebab (kodisi input) dan akibat-akibat (kondisi output),
menghasilkan grafik sebab-akibat dan kasus-kasus test.
4. State Transitions Table
Tekni ini merupakan sebuah tabel yang didalamnya terdapat beberapa input
yaitu pernyataan sementara, dan output termasuk pernyataan selanjutnya.
Black Box Testing akan menemukan kesalahan dalam beberapa kategori,
diantaranya:
1. Fungsi-fungsi yang salah atau hilang
2. Kesalahan Interface
3. Kesalahan dalam struktur data atau akses database eksternal
4. Kesalahan performa
5. Kesalahan inisialisasi dan terminasi
32
2.4.2.White Box Testing
White box testing adalah pengujian yang didasarkan pada pengecekan
terhadap detail perancangan, menggunakan struktur kontrol dari desain program
secara prosedural untuk membagi pengujian ke dalam beberapa kasus pengujian.
Pengujian White Box:
1. Untuk mengetahui cara kerja suatu perangkat lunak secara internal.
2. Untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah
ditetapkan dengan menggunakan struktur kendali dari prosedur yang
dirancang.
Langkah-langkah White Box:
1. Mendefinisikan semua alur logika
2. Membangun kasus untuk digunakan dalam pengujian
3. Melakukan pengujian.
Sumber: http://lutwamaconsulting.com
Gambar II.22 White Box Testing
33
2.5. Peralatan Pendukung
2.5.1.Hardware
Menurut (Mulyani, 2016:64) “Hardware adalah semua bagian fisik
komputer, dan dibedakan dengan data yang berada di dalamnya atau yang
beropersi didalamnya, dan dibedakan dengan perangkat lunak (software) yang
menyediakan instruksi untuk perangkat keras dalam menyelesaikan tugasnya”.
Hardware yang digunakan dalam pembuatan aplikasi ini, adalah:
1. NotebookAcer Aspire One 756
2. Processor Intel(R) Celeron(R) B877 @1.40 GHz
3. HDD 320GB SATA, RAM 8.00 GB
4. OS Windows 10 Pro 64 bit
5. Smartphone Xiaomi Redmi3
2.5.2.Software
Menurut (Mulyani, 2016:66) mengemukakan bahwa, “Software adalah
istilah umum yang digunakan untuk mendeskripsikan kumpulan program-program
komputer yang terdiri dari prosedur-prosedur dan dokumentasi untuk melakukan
tugas tertentu”.
Software yang digunakan dalam pembuatan aplikasi ini, adalah:
1. Android Studio V.1.3.2
2. Java (TM) Platform SE 7 U79
3. Adobe Photoshop CS3
4. Maps V.9.77.2
5. Internet