Pembangunan perangkat lunak Tow Truck berbasis android

(1)

PEMBANGUNAN PERANGKAT LUNAK

TOW TRUCK

BERBASIS MOBILE ANDROID

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

NAZAR ABDULLAH

10110251

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA


(2)

KATA PENGANTAR

Assalamu’alaikum Wr. Wb.

Puji dan syukur penulis panjatkan kehadirat Allah SWT atas rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul “Pembangunan Perangkat Lunak Tow Truck Berbasis Mobile Android” Penyusunan skripsi ini tidak akan terwujud tanpa mendapat dukungan, bantuan dan masukan dari berbagai pihak. Untuk itu, penulis ingin menyampaikan terimakasih yang sebesar-besarnya kepada:

1. Orang tua tercinta, Ibu Tuti Suminar dan Bapak Amat Muhammad yang senantiasa memberikan doa, biaya, motivasi, semangat, dan kasih sayang nya yang tulus kepada penulis.

2. Bapak Taryana Suryana, ST., M.Kom. Selaku dosen pembimbing yang telah membimbing dan memberikan saran terhadap pembangunan tugas akhir dan perangkat lunak ini.

3. Bapak Irawan Afrianto, S.T., M.T. Selaku dosen reviewer yang memberikan masukan dan arahan perbaikan selama revisi tugas akhir dan perangkat lunak ini.

4. Ibu Utami Dewi Widianti, S.Kom., M.Kom. Selaku dosen penguji yang menguji dan memberi saran pada tugas akhir dan perangkat lunak ini.

5. Bapak Iskandar Ikbal, S.T., M.Kom. Selaku wali dosen IF-6 angkatan 2010 yang sudah membantu kelancaran selama kuliah ini.

6. Carsadi, Chrismikha Hardyanto, Edi Rizkinta Harahap, Ericson Paian Majumulia, Rizky Nugraha, Selamet Riyadi yang sudah berjuang bersama selama tugas akhir ini.

7. Teman –teman IF6 angkatan 2010 yang sudah bersama – sama melewati masa perkuliahan selama 4 – 5 tahun.


(3)

8. Semua pihak yang terlibat dan ikut membantu dalam tugas akhir ini baik secara langsung maupun tidak langsung.

9. Seluruh Dosen dan Staff pengajar jurusan Teknik Informatika Universitas Komputer Indonesia.

10.Teman – Teman 1 pembimbing yang selalu memberikan informasinya selama tugas akhir ini.

Akhir kata, semoga skripsi ini dapat bermanfaat bagi para pembaca. Wa’alaikumsalam Wr. Wb.

Bandung, Februari 2015


(4)

DAFTAR ISI

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... xii

DAFTAR SIMBOL ... xvi

DAFTAR LAMPIRAN ... xix

BAB I PENDAHULUAN ... 1

I.1 Latar Belakang Masalah ... 1

I.2 Identifikasi Masalah ... 2

I.3 Maksud dan Tujuan ... 2

I.4 Batasan Masalah ... 3

I.5 Metodologi Masalah ... 4

I.5.1 Teknik Pengumpulan data ... 4

I.5.2 Model Pembangunan Perangkat Lunak ... 5

I.6 Sistem Penulisan ... 6

BAB II LANDASAN TEORI ... 9

II.1 Aplikasi ... 9

II.2 Kendaraan ... 9

II.3 Mobil Derek ... 11

II.4 Android ... 12

II.4.1 Arsitektur Android ... 12

II.4.2 Jenis Komponen pada Aplikasi Android... 14

II.4.3 Versi android ... 18

II.5 Tool pengembangan aplikasi android ... 21

II.5.1 Android SDK (Software Development Kid) ... 22

II.5.2 Android Development Tools (ADT) ... 23

II.6 Tinjauan Perangkat Keras/Lunak Pendukung ... 23

II.6.1 Chrome Browser ... 23

II.6.2 Android Studio ... 24


(5)

II.6.4 Sublime Text 3 ... 25

II.6.5 GPS ... 26

II.6.6 Web Services ... 27

II.6.7 JSON ... 27

II.6.8 Google Cloud Messaging ... 29

II.7 Bahasa Pengrograman yang digunakan ... 31

II.7.1 PHP ... 31

II.7.2 JAVA ... 31

II.7.3 MySQL ... 32

II.8 Object Oriented Analysis Design ... 33

II.8.1 Pengertian OOP ... 33

II.8.2 Konsep OOP ... 34

II.8.3 UML ... 34

II.9 Pengujian Black Box ... 37

II.10 Pengujian Kuisioner ... 37

II.11 Metode yang di gunakan ... 39

II.11.1 Rumus Haversine ... 39

BAB III ANALISIS DAN PERANCANGAN SISTEM ... 43

III.1 Analisis Sistem ... 43

III.1.1 Analisis Masalah ... 43

III.1.2 Analisis Sistem Yang Sedang Berjalan ... 43

III.1.3 Analisis Aturan Bisnis ... 46

III.1.4 Analisis Arsitektur Sistem ... 52

III.1.5 Spesifikasi Kebutuhan Perangkat Lunak ... 54

III.1.6 Analisis Kebutuhan Non Fungsional ... 56

III.1.7 Analisis Data ... 59

III.1.8 Analisis Kebutuhan Fungsional ... 61

III.1.9 Perancangan Sistem ... 160

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ... 199

IV.1 Implementasi Sistem ... 199

IV.1.1 Lingkungan Implementasi ... 199

IV.1.2 Implementasi Data ... 202

IV.1.3 Implementasi Antar Muka... 210


(6)

IV.2.1 Rencana Pengujian ... 212

IV.2.2 Skenario Pengujian... 212

IV.2.3 Hasil Pengujian ... 214

IV.2.4 Evaluasi Pengujian ... 231

BAB V KESIMPULAN DAN SARAN ... 233

V.1 Kesimpulan ... 233

V.2 Saran ... 233

DAFTAR PUSTAKA ... 235


(7)

DAFTAR PUSTAKA

[1] d. tender, "Number Of Cars Worldwide Surpasses 1 Billion; Can The World Handle This Many Wheels?," The Huffington Post Canada, 2011.

[2] n. lomas, "Android Still Growing Market Share By Winning First Time Smartphone Users," http://techcrunch.com/2014/05/06/android-still-growing-market-share-by-winning-first-time-smartphone-users/, 2014. [3] "Pengertian Mobil derek," Towing Turbo, [Online]. Available:

http://www.towingturbo.com/index.html.

[4] "Introduction to android," Google Inc, [Online]. Available: https://developer.android.com/guide/index.html.

[5] S. Ronan, D. Phil, S. James and N. , The Adnroid Developers's Cookbook, 2nd ed, New York,United States: Addison-Wesley, 2013.

[6] "chrome," google, [Online]. Available:

https://www.google.com/chrome/browser/features.html#speed.

[7] "develover android," google, [Online]. Available:

https://developer.android.com/sdk/installing/studio.html. [Accessed wednesday 10 2014].

[8] J. Avestro, Pengembangan Perangkat Mobile, Jakarta: Jardiknas, 2007.

[9] "Pengenalan JSON," JSON org, [Online]. Available: http://www.json.org/json-id.html.

[10] "what is PHP?," the PHP group, [Online]. Available: http://php.net/manual/en/intro-whatis.php.

[11] "What is JAVA technology," JAVA.com, [Online]. Available: https://www.java.com/en/download/faq/whatis_java.xml.

[12] "About Mysql," Oracle Corp, [Online]. Available: http://www.mysql.com/about/.

[13] A. M. Bachtiar, "Rekayasa Perangkat Lunak II," handbook, 2012.

[14] F. Martin, UML Distiled Third Edition: A brief Guide To The Standard Object Modeling Language, United State Of america: Addison-Wesley, 2003.


(8)

[15] S. M. P. P. H. E. T. Ruseffendi, Dasar-dasar penelitian & Bidang non eksakta lainnya, Bandung: PT Tarsito Bandung, 2005.

[16] a. hidayat, "rumus haversine di mhysql," 2014. [Online]. Available: http://adi-hidayat.com/rumus-haversine-di-mysql/.

[17] A. Joyce, "Pengembangan Perangkat Mobile," jakarta, jardiknas, 2007.

[18] JSON Org, [Online]. Available: http://www.json.org/json-id.html.

[19] R. Schwarz, P. Dutson, J. Stelee and N. To, The Android Developer's Cookbook, 2nd ed., M. Taub and L. Lewin, Eds., New York: Addison-Wesley, 2013.

[20] Google Inc, 01 2014. [Online]. Available: http://developer.android.com/guide/index.html.


(9)

BAB I

PENDAHULUAN

I.1 Latar Belakang Masalah

Mobil Merupakan suatu hal penting yang dianggap mampu membantu mempermudah hidup.. Sejak ditemukannya alat transportasi tersebut, gerak hidup manusia berubah menjadi mudah dan dinamis. Semakin berkembangnya zaman semakin banyak pula pilihan mobil yang ditawarkan oleh produsen. jumlah global mobil melebihi 1.015 miliar pada tahun 2010, melompat dari 980 juta pada tahun sebelumnya [1]. Dan juga kendaraan Merupakan sebuah mesin yang dapat rusak kapan saja atau istilah lain yaitu mogok. Untuk mengatasi terjadinya mogok salah satu solusinya adalah dengan memanggil mobil derek.

tow truck atau mobil derek adalah kendaraan yang digunakan untuk mengangkut kendaraan yang mengalami kecelakaan lalu-lintas sehingga tidak mampu untuk berjalan sendiri lagi atau terbalik, menderek kendaraan yang sedang mogok dan mengganggu kelancaran lalu lintas ataupun untuk menderek kendaraan yang melakukan pelanggaran parkir. Banyak perusahaan yang menggunakan jasa mobil derek.

Akan tetapi, dalam penggunaan jasa mobil derek masih adanya masalah yang dapat dialami oleh pelanggan maupun pengemudi supir mobil derek, dikarenakan susahnya mencari posisi keberadaan pelanggan dengan informasi atau alamat yang belum tentu akurat bagi pengendara mobil derek maupun susahnya informasi pelayanan mobil derek terdekat bagi pelanggan .

Dengan masalah yang sudah dijelaskan, maka diperlukannya Pembangunan perangkat lunak tow truck berbasis android mobile dengan memanfaatkan teknologi GPS atau LBS (Location Based Service) merupakan sebuah layanan informasi yang dapat diakses dengan perangkat bergerak melalui jaringan dan mampu menampilkan posisi secara geografis keberadaan perangkat bergerak tersebut. Fungsinya yaitu untuk melacak atau mendapatkan lokasi dari pengguna dan sebagai


(10)

lokasi penentu panggilan mobil derek. Device yang akan digunakan Merupakan mobile smartphone dan tablet dengan platform berbasis android karena hasil analisis dari ABI saat ini android memiliki marketshare sebesar 80% dari pasar-pasar OS smartphone [2]. Dengan pembangunan aplikasi diharapkan dapat menjadi sebuah solusi untuk menyelesaikan masalah dan juga meningkatkan kualitas dan mempermudah penggunaan perangkat lunak tow truck.

I.2 Identifikasi Masalah

Berdasarkan latar belakang yang sudah dipaparkan diatas dapat diidentifikasi beberapa masalah diantaranya:

1. Susahnya mencari posisi keberadaan pelanggan bagi perusahaan mobil derek.

2. Kurangnya informasi lebih detail posisi atau alamat keberadaan pelanggan kepada mobil derek yang dapat menyulitkan pencarian.

3. Susahnya mencari letak mobil derek terdekat bagi pelanggan jika tidak tahu informasi tentang mobil derek disekitar.

I.3 Maksud dan Tujuan

Membangun sebuah aplikasi yang dapat mempermudah pelayanan mobil derek bagi para pengemudi yang mengalami mobil mogok. Adapun tujuan dari penelitian ini adalah sebagai berikut:

1. Memudahkan dalam mencari posisi keberadaan pelanggan secara akurat bagi perusahaan mobil derek.

2. Memudahkan bagi pengendara mobil derek untuk mencari pelanggan dengan cepat dengan infomasi yang lebih detail.


(11)

I.4 Batasan Masalah

Ada batasan masalah dari penelitian ini adalah:

1. Pendekatan analisis pembangunan perangkat lunak menggunakan analisis berorientasi objek.

2. System menggunakan Based-Location System sebagai teknologi pencari lokasi pengguna dan pengemudi mobil derek.

3. Harga derek kendaraan dihitung dari jumlah jarak antara mobil derek, pelanggan, tujuan dan kemudian kembali ke lokasi awal mobil derek.

4. Pembayaran menggunakan sistem manual (langsung ketemu) antara pelanggan dengan pengendara mobil derek.

5. Pencarian lokasi member dilakukan dari lokasi perusahaan ke lokasi member kemudian ke tujuan yang di pilih oleh member.

6. User yang menggunakan sistem ada 4 (Admin, Member, Member Company, Driver).

1. Admin merupakan user yang memiliki hak akses penuh dalam mengelola data-data sistem seperti data panggilan keseluruhan, data perusahaan terdaftar, data member dan juga dapat menambahkan data bengkel (Station Service).

2. Member Company merupakan user yang bertindak sebagai perusahaan mobil derek yang mengelola data panggilan yang diterima oleh user tersebut. Member company dapat mengelola data driver (pengendara mobil derek) atau kendaraan mobil derek ataupun juga member company bisa bertindak sebagai perusahaan bengkel yang hanya dapat mengelola data lokasinya dan melihat data panggilannya saja.

3. Driver Company merupakan user yang bertindak sebagai pengendara mobil derek yang didaftarkan oleh Member Company. Fitur utama pada bagian user tersebut yaitu melakukan pencarian kepada pelanggan dari hasil proses


(12)

data panggilan yang sudah diterima langsung dari perusahaannya maupun pelanggan dalam bentuk map navigation.

4. Member atau bisa disebut pelanggan merupakan user yang bertindak sebagai pengguna mobil derek yang dapat memanggil mobil derek pada sistem dengan cara memilih perusahaan mobil derek terdekat dan memanggil mobil derek. Member juga dapat memantau keberadaan mobil derek pada saat penjemputan berlangsung.

I.5 Metodologi Masalah

Metodologi penelitian yang digunakan dalam penelitian ini adalah metode penelitian terapan, metode ini bertujuan untuk menyelesaikan permasalahan yang timbul dari masyarakat berdasarkan fenomena yang ada. Adapun Teknik yang digunakan dalam penelitian ini menggunakan dua Teknik, yaitu Teknik pengumpulan data dan model pembangunan perangkat lunak.

I.5.1 Teknik Pengumpulan data

Adapun teknik pengumpulan data yang akan digunakan terdiri dari dua cara pengumpulan data, yaitu :

1. Studi Literature

Studi literatur utama dari penelitian ini bersumber dari buku online “Pro Android Augmented Reality dari Raghav Sood dan buku “The Android Developer’s Cookbook Building Applications with the Android SDK” dari Phil Dutson serta didukung oleh beberapa jurnal informatika lainya.

2. Wawancara

Pengumpulan data dengan cara melakukan Tanya jawab langsung dengan pelanggan dan pengemudi mobil derek mengenai hal-hal yang berkaitan dengan masalah yang diteliti.


(13)

I.5.2 Model Pembangunan Perangkat Lunak

Dalam pembuatan aplikasi ini menggunakan waterfall model sebagai tahapan pengembangan perangkat lunaknya. Adapun proses tersebut antara lain:

1. Requirement definition

Tahap requirement definition adalah tahap dimana pengumpulan kebutuhan telah terdefinisi secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap.

2. System and software design

Tahap system and software design merupakan tahap mendesain perangkat lunak yang dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap.

3. Implementation and unit testing

Tahap implementation and unit testing merupakan tahap hasil desain program diterjemahkan ke dalam kode-kode dengan menggunakan bahasa pemrograman yang sudah ditentukan. Program yang dibangun langsung diuji berdasarkan unit-unitnya.

4. Integration and system testing

Tahap integration and system testing merupakan tahap penyatuan unit-unit program kemudian sistem diuji secara keseluruhan.

5. Operation and maintenance

Tahap operation and maintenance merupakan tahap mengoperasikan program dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi dengan situasi yang sebenarnya. Dari berbagai tahapan-tahapan tersebut, untuk lebih jelasnya bisa dilihat pada Gambar I-1 Model Waterfall.


(14)

Gambar I-1 Model Waterfall

I.6 Sistem Penulisan

Sistematika penulisan skripsi ini disusun untuk memberikan gambaran umum mengenai penelitian yang dikerjakan. Sistematika penulisan dalam penyusunan tugas akhir ini adalah sebagai berikut:

BAB 1 PENDAHULUAN

Latar belakang, identifikasi masalah, maksud dan tujuan, pembatasan masalah, metode penelitian dan sistematika penulisan.

BAB 2 LANDASAN TEORI

bahan materi aplikasi, kendaraan, mobil derek, android, tool pengembangan aplikasi android, tinjauan perangkat keras/lunak pendukung,metode yang digunakan, konsep perancangan terstruktur dan konsep perancangan berorientasi objek. Meninjau permasalahan dan hal-hal yang berguna dari penelitian-penelitian dan sintesis serupa yang pernah dikerjakan sebelumnya dan menggunakannya sebagai acuan pemecahan masalah pada penelitian ini.


(15)

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

Hasil analisis dari objek penelitian untuk mengetahui hal atau masalah apa yang timbul dan mencoba memecahkan masalah tersebut dengan mengaplikasikan perangkat-perangkat dan pemodelan yang digunakan.

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

Perancangan solusi beserta implementasinya dari masalah-masalah yang telah dianalisis. Pada bagian ini juga akan ditentukan bagaimana sistem dirancang, dibangun, diuji dan disesuaikan dengan hasil penelitian.

BAB 5 KESIMPULAN DAN SARAN

Kesimpulan dari hasil penelitian beserta saran untuk pengembangan selanjutnya.


(16)

BAB II

LANDASAN TEORI

II.1 Aplikasi

Perangkat lunak aplikasi adalah suatu subkelas Perangkat lunak computer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna atau user. Biasanya perangkat lunak sistem dapat mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media dan lain sebagainya.

Beberapa aplikasi yang digabung bersama menjadi suatu paket kadang disebut sebagai suatu paket atau suite aplikasi (application suite). Contohnya adalah Microsoft Office dan OpenOffice.org, yang menggabungkan suatu aplikasi pengolah kata, lembar kerja, serta beberapa aplikasi lainnya. Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan setiap aplikasi. Sering kali, aplikasi ini memiliki kemampuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya, suatu lembar kerja dapat dibenamkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah.

II.2 Kendaraan

Kendaraan bermotor adalah kendaraan yang digerakkan oleh peralatan teknik atau mesin untuk pergerakkannya, dan digunakan untuk transportasi darat. Umumnya kendaraan bermotor digunakan mesin pembakaran dalam, namun motor listrik dan mesin jenis lain (misalnya kendaraan listrik hibrida dan hibrida plug-in) juga dapat digunakan. Kendaraan bermotor memiliki roda, dan biasanya berjalan di atas jalanan. Jenis-jenis kendaraan bermotor dapat bermacam-macam:


(17)

1. Mobil

Mobil adalah kendaraan darat yang digerakkan oleh tenaga mesin, beroda empat atau lebih (selalu genap), biasanya menggunakan bahan bakar minyak (bensin atau solar) untuk menghidupkan mesinnya.

2. Motor

Sepeda motor adalah kendaraan beroda duayang digerakkan oleh sebuah mesin. Letak kedua roda sebaris lurus dan pada kecepatan tinggi sepeda motor tetap stabil disebabkan oleh gaya giroskopik. Sedangkan pada kecepatan rendah, kestabilan atau keseimbangan sepeda motor bergantung kepada pengaturan setang oleh pengendara. Penggunaan sepeda motor di Indonesia sangat populer karena harganya yang relatif murah, terjangkau untuk sebagian besar kalangan dan penggunaan bahan bakarnya serta serta biaya operasionalnya cukup hemat.

3. Bus

Bus adalah kendaraan besar beroda, digunakan untuk membawa penumpang dalam jumlah banyak. Klasifikasi kendaraan bermotor ini bervariasi tergantung masing-masing negara. ISO 3833:1977 adalah standar untuk tipe dan definisi kendaraan darat.

Berdasarkan UU No. 14 tahun 1992 yang dimaksud dengan peralatan teknik dapat berupa motor atau peralatan lainnya yang berfungsi untuk mengubah suatu sumber daya energi tertentu menjadi tenaga gerak kendaraan bermotor yang bersangkutan. Pengertian kata berada dalam ketentuan ini adalah terpasang pada tempat sesuai dengan fungsinya. Termasuk dalam pengertian kendaraan bermotor adalah kereta gandengan atau kereta tempelan yang dirangkaikan dengan kendaraan bermotor sebagai penariknya.

Sampai tahun 2010, ada lebih dari 1 milyar kendaraan bermotor di seluruh dunia, tidak termasuk kendaraan off-road dan kendaraan berat. Kepemilikan


(18)

kendaraan per kapita global adalah 148 kendaraan beroperasi tiap 1000 orang. Amerika Serikat adalah negara yang memiliki jumlah kendaraan bermotor terbanyak di dunia, dengan 239,8 juta kendaraan tahun 2010. Kepemilikan kendaraan per kapita di Amerika Serikat juga tertinggi di dunia, yaitu 769 kendaraan per 1000 penduduk. Republik Rakyat Tiongkok mempunyai jumlah kendaraan terbanyak kedua di dunia, dengan jumlah 78 juta unit dan sejak 2009 juga menjadi pasar kendaraan terbesar di dunia. Pada tahun 2011, 80 juta mobil dan kendaraan komersial diproduksi di seluruh dunia, 18.4 juta unit diantaranya diproduksi di Cina. Dan akan terus bertambah setiap tahunnya.

II.3 Mobil Derek

Mobil derek adalah kendaraan yang digunakan untuk menderek kendaraan yang mengalami kecelakaan lalu-lintas sehingga tidak mampu untuk berjalan sendiri lagi atau terbalik, menderek kendaraan yang sedang mogok dan mengganggu kelancaran lalu lintas ataupun untuk menderek kendaraan yang melakukan pelanggaran parkir [3].

Ada beberapa jenis mobil derek yang biasa digunakan:

1. Boom yaitu derek yang menggunakan boom/kran yang biasanya digunakan untuk mengangkat mobil yang terperosok kedalam parit, ataupun untuk membalikkan kendaraan yang terbalik [3].

2. Kait dan Tarik, digunakan untuk menarik kendaraan dengan rantai atau tali yang dikaitkan ke mobil derek, kendaraan yang di Tarik di kemudikan oleh pengemudi [3].

3. Roda diangkat yaitu penderekan dengan mengangkat roda depan atau belakang kendaraan kemudian ditarik, hal ini biasanya dilakukan pada kendaraan yang salah parkir, dimana kendaraan tersebut rem parkirnya dijalankan sehingga roda yang terkunci diangkat [3].

4. Derek gendong, dimana kendaraan yang diderek digendong keatas kendaraan truk, biasanya digunakan untuk mengangkut mobil mewah dari show room ke


(19)

rumah pembeli atau untuk mengangkat mobil mewah yang rusak/mogok ke bengkel [3].

II.4 Android

Android adalah sistem operasi untuk telepon seluler yang berbasiskan Linux. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri sehingga dapat digunakan oleh bermacam peranti penggerak [4].

II.4.1 Arsitektur Android

Diagram Arsitektur Anroid dapat dilihat pada gambar II.1:

Gambar II-1 Arsitektur Android

Berikut Merupakan garis besar pada arsitektur yang di miliki android:

1. Application dan Widget

Android akan mengirimkan serangkaian aplikasi initi, termasuk e-mail, SMS, kalender, peta, browser, kontak, dan lain-lain. Semua aplikasi dibuat dengan menggunakan bahasa pemrograman Java.


(20)

2. Applications Framework

Aristektur aplikasi ini dirancang untuk menyederhanakan penggunaan ulang komponen. Aplikasi apapun dapat mem-publish kapabilitas-nya dan kemudian aplikasi lain dapat menggunakannya.

Yang mendasari aplikasi-aplikasi tersebut adalah seperangkat layanan dan sistem, yaitu:

a. Satu set tampilan untuk membangun aplikasi, termasuk list, grid, text box, button dan bahkan browser.

b. Content Providers yang menyediakan aplikasi untuk mengakses data dari aplikasi lain (seperti Kontak), atau untuk data sharing.

c. Resource Manager menyediakan akses ke resource non-code seperti grafik dan file layout.

d. Notification Manager yang memungkinkan semua aplikasi untuk

menampilkan custom alert pada status bar.

e. Activity Manager yang mengelola live cycle dari aplikasi dan menyediakan navigasi backstack.

3. Libraries

Android memuat seperangkat C / C++ libraries yang digunakan oleh berbagai komponen Android. Beberapa libraries core-nya adalah:

a. System C library, implementasi turunan BSD dari system C library standar (libc) yang disesuaikan untuk perangkat berbasis Linux.

b. Media Libraries, berbasis Packet Video’s OpenCORE. Support pada library playback, rekaman video dan audio, serta file gambar statis, termasuk MPEG4, MP3, AMR, JPG dan PNG.

c. Surface Manager, mengelola akses ke tampilan subsistem.

d. LibWebCore, modern web browser engine yang terintegrasi pada Android dan

tampilan web browser. e. SGL, engine grafis 2D.


(21)

f. 3D libraries, implementasi berbasis OpenGL 1.0 API, library menggunakan hardware 3D.

g. FreeType, bitmap dan vektor font rendering.

h. SQLite, database relasional engine yang handal dan ringan tersedia untuk semua aplikasi.

4. Android Run Time

Setiap aplikasi Android berjalan dalam prosesnya sendiri, contohnya Dalvik Virtual Mesin. Dalvik VM mengeksekisi file dalam format .dex yang dioptimalkan untuk meminimalisir kapasitas memori. VM ini di compile oleh Java Compiler dan ditransformasikan dalam format .dex oleh dx tool.

5. Linux Kernel

Android bergatung pada Linux versi 2.6 untuk layanan sistem core seperti keamanan, manajemen memori, manajemen proses, network stack dan driver model. Kernel juga bertindak sebagai layer abstraksi antara hardware dan seluruh software stack.

II.4.2 Jenis Komponen pada Aplikasi Android

Android memiliki 4 komponen yang memiliki peran yang berbeda-beda dan berdiri sendiri meskipun terkadang salah satu komponen bergantung pada komponenen lainnya. Masing-masing komponen memiliki daur hidup sendiri-sendiri yang mengatur kapan komponen dibuat dan bagaimana komponen dihapus. Berikut ini adalah 4 tipe komponen dalam aplikasi android [4]:

1. Activity

Aplikasi yang kita buat bisa memiliki satu activity, atau juga banyak activity. Setiap activity yang didefinisikan memiliki daur hidup tersendiri, jika saat ini


(22)

activity sedang running, mungkin selanjutnya aplikasi kita berhenti sebentar (pause) atau memang benar-benar dimusnahkan, hilang dari memori (destroy) [4].

Kita melakukan pengaturan tindakan saat activity berada di state tertentu dengan cara melakukan override terhadap method di dalam class Activity. Pada waktunya, Android akan memanggil method yang bersesuaian dengan state activity. Sebagai contoh, sebuah aplikasi email mungkin memiliki satu activity untuk menunjukan email baru, satu lagi activity untuk menulis surat, dan satu lagi activity untuk membaca email. Meskipun activity-activity bekerja bersamaan untuk membentuk sebuah aplikasi email yang bagus, setiap activity tidak bergantung kepada yang lainnya. Misalnya aplikasi lain bisa menggunakan satu dari beberapa activitytersebut jika aplikasi email memperbolehkannya [4].

Beberapa tahapan (state) yang terjadi dalam class Activity bisa dilihat gambar berikut ini :

Gambar II-2 Class Activity

Penjelasan state method pada class Activity :

1. onCreate(), method ini dipanggil ketika aktifitas pertama kali dimulai. Kita dapat menggunakan method ini untuk melakukan inisialiasi awal seperti menentukan antar muka (user interface), method onCreate() yang memiliki satu


(23)

parameter yang dapat bernilai null atau bernilai informasi dari state sebelumnya yang dijalankan oleh method onSaveInstanceState().

2. onStart(), method ini mengindikasikan aktifitas yang siap ditampilkan ke user. 3. onResume(), method ini dipanggil ketika aktifitas anda dinyatakan siap

berinteraksi dengan user. Ini adalah aktifitas yang paling tepat untuk menyertakan animasi dan music pada aplikasi.

4. onPause(), method ini dijalankan ketika aktifitas akan dijalankan di background, biasanya terjadi ketika aktifitas berjalan di atas aktifitas ini. Pada state ini sebaiknya anda implementasi persistent data pada program anda, seperti ketika sebuah database sedang dilakukan proses edit.

5. onStop(), method ini dipanggil saat aktifitas anda tidak bisa dilihat lagi oleh user dan tidak dibutuhkan untuk sementara waktu. Jika memori dalam keadaan parah (karena banyak resource berjalan) maka method onStop() tidak pernah akan dipanggil (system mungkin akan mematikan prosesnya)

6. onRestart(), jika method ini dipanggil, berarti aktifitas anda sedang di tampilkan ulang (redisplay) oleh user dari sebelumnya distop.

7. onDestroy(), method ini dipanggil sebelum sebuah aktifitas di matikan (didestroy). Jika resource memory ketat method onDestroty() tidak pernah akan dipanggil (system mungkin akan mematikan prosesnya).

8. onStateInstanceState() 9. onRestoreInstanceState()

2. Service

Service adalah komponen yang berjalan dibalik layar. Sebuah service tidak memiliki user interface. Sebagai contoh, sebuah service bisa memainkan musik, sementara user sedang menjalankan aplikasi lain. Atau service juga bisa mengirimkan data melalui internet tanpa harus menghentikan interaksi user dengan sebuah activity. Komponen lain, misalnya activity bisa memulai service dan menjalankannya atau terikat ke service tersebut untuk berinteraksi dengan service tersebut [4].


(24)

3. Content Provider

Sebuah content provider mengatur sekumpulan data aplikasi yang terbagi (shared). Kita bisa menyimpan data di filesystem, sebuah database SQLite, di web, atau di metode penyimpanan data lainnya yang bisa diakses oleh aplikasi kita. Melalui content provider, aplikasi lain bisa memberikan query atau bahkan bisa memodifikasi, tentunya jika content provider mengijinkan aksesnya. Sebagai contoh, sistem android menyediakan content provider yang mengatur informasi kontak user. Misalnya, aplikasi apa saja yang memiliki ijin bisa memberikan query kepada sebagian data untuk membaca dan menulis informasi tentang orang tertentu. Content provider juga bisa digunakan untuk menulis dan membaca data pribadi yang tidak dibagikan (tidak di shared) [4].

4. Broadcast Receivers

Broadcast receiver adalah komponen yang merespon terhadap siaran (broadcast) pengumuman yang dikeluarkan oleh sistem. Banyak siaran broadcast yang aslinya berasal dari sistem. Misalnya broadcast yang memberitahukan bahwa layar sudah mati, battery lemah, atau gambar sudah diambil. Aplikasi juga bisa memulai broadcast, misalnya memberitahukan aplikasi lain bahwa beberapa data sudah selesai didwonload dan bisa digunakan. Meskipun broadcast receiver tidak menampilkan user interface, broadcast receiver bisa membuat notifikasi di status bar untuk memberitahukan user sedang terjadi broadcast. Secara umum, broadcast receiver hanyalah sebuah "gerbang" kepada komponen lain dan ditujukan untuk melakukan perkerjaan yang sangat minimal [4].

Tiga dari empat tipe komponen (activity, service dan broadcast receiver) diaktifkan oleh sebuah pesan tidak sinkron yang disebut intent. Intent mengikat beberapa komponen-komponen indiviual menjadi satu pada saat runtime. Sebuah intent dibuat dengan objek Intent, yang mendefinisikan sebuah pesan untuk mengaktifkan sebuah komponen khusus atau sebuah tipe komponen (sebuah intent bisa Merupakan komponen implisit atau eksplisit). Untuk activity dan service,


(25)

sebuah intent mendefinisikan aksi apa yang harus dilakukan oleh keduanya, misalnya untuk melihat atau mengirim sesuatu [4].

Bagi broadcast receiver, intent hanyalah mendefinisikan pengumuman yang dibroadcast. Misalnya sebuah broadcast untuk mengindikasikan batery perangkat sudah lemah hanya terdiri dari sebuah action string yang bernilai "Battery lemah". Komponen tipe lain, content provider, tidak diaktifkan oleh intent. Akan tetapi, content provider diaktifkan ketika menjadi target permintaan dari sebuah content resolver. Content resolver meng-handle semua transaksi langsung dengan content provider sehingga komponen yang ingin bertransaksi dengan content provider cukup memanggil method di objek content resolver [4].

II.4.3 Versi android

Adapun versi-versi android yang sudah dirilis adalah sebagai berikut :

1. Android 1.1

Pada 9 Maret 2009, Google merilis Android versi 1.1. Android versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, voice

search (pencarian suara), pengiriman pesan dengan Gmail, dan

pemberitahuan email.

2. Android 1.5 (Cupcake)

Pada pertengahan Mei 2009, Google kembali merilis telepon seluler dengan menggunakan Android dan SDK (Software Development Kit) dengan versi 1.5 (Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung dari telepon, Bluetooth A2DP support, kemampuan terhubung secara otomatis ke headset Bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan sistem.


(26)

3. Android 1.6 (Donut)

Donut (versi 1.6) dirilis pada September dengan menampilkan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus, kamera, camcorder dan galeri yang dintegrasikan, Gestures, dan Text-to-speech engine, kemampuan dial kontak, teknologi text to change speech dan juga pada pengetikan kata yang lebih mudah.

4. Android 2.0/2.1(Eclair)

Pada 3 Desember 2009 kembali diluncurkan ponsel Android dengan versi 2.0/2.1 (Eclair). Perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1.

Dengan semakin berkembangnya dan semakin bertambahnya jumlah handset Android, semakin banyak pihak ketiga yang berminat untuk menyalurkan aplikasi mereka kepada sistem operasi Android. Aplikasi terkenal yang diubah ke dalam sistem operasi Android adalah Shazam, Backgrounds, dan WeatherBug. Sistem operasi Android dalam situs Internet juga dianggap penting untuk menciptakan aplikasi Android asli, contohnya oleh MySpace dan Facebook.

5. Android 2.2 (froyo : Frozen Yoghurt)

Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan. Perubahan-perubahan umumnya terhadap versi-versi sebelumnya antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, intergrasi V8 JavaScript engine yang dipakai Google Chrome yang mempercepat kemampuan rendering pada browser, pemasangan aplikasi dalam SD Card,


(27)

kemampuan WiFi Hotspot portabel, dan kemampuan auto update dalam aplikasi Android Market.

6. Android 2.3 (Gingerbread)

Pada 6 Desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan-perubahan umum yang didapat dari Android versi ini antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copy paste, layar antar muka (User Interface) didesain ulang, dukungan format video VP8 dan WebM, efek audio baru (reverb, equalization, headphone virtualization, dan bass

boost), dukungan kemampuan Near Field Communication (NFC), dan dukungan

jumlah kamera yang lebih dari satu.

7. Android 3.0 (Honeycomb)

Android Honeycomb dirancang khusus untuk tablet. Android versi ini mendukung ukuran layar yang lebih besar. User Interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb juga mendukung multi prosesor dan juga akselerasi perangkat keras (hardware) untuk grafis. Tablet pertama yang dibuat dengan menjalankan Honeycomb adalah Motorola Xoom.

8. Android 4.0 (IceCreamSandwich/ICS)

Android pertama yang mempunyai fitur baru membuka kunci dengan pengenalan wajah. Fitur ini belum dimiliki oleh Android versi dibawah Ice Cream Sandwich tetapi sudah disempurnakan pada versi diatasnya. Selain itu Ice Cream Sandwitch juga mempunyai penampilan Interface yang bersih dan smooth.

Ice Cream Sandwitch juga mempunyai font yang bernama Roboto. Jika digunakan font ini terlihat sangat simpel namun elegan, tampilan yang diciptakan oleh font Roboto sungguh terkesan unik.


(28)

9. Android 4.1 (JellyBean)

Jelly Bean-Android versi 4.1 yang diluncurkan pada acara Google I/O membawa fitur fitur baru yang menawan, beberapa fitur yang diperbaharui dalam sistem operasi ini antara lain, pencarian dengan menggunakan Voice Search yang lebih cepat, informasi cuaca, lalu lintas, hasil pertandingan olahraga yang cepat dan tepat, selain itu versi 4.1 ini juga mempunyai fitur keyboard virtual yang lebih baik. Permasalahan umum yang sering ditemui pengguna Android adalah baterai, namun Baterai dalam sistem Android Jelly Bean versi 4.1 ini diklaim cukup hemat.

10.Android 4.4 (Kitkat)

Android 4,4 KitKat sendiri merupakan versi terbaru dari seri sebelumnya yaitu 4,3 Jelly Bean dan sudah diperkenalkan pada umum pada bulan September 2013. Android KitKat merupakan penyermpurnaan dari versi sebelumnya.

1. Penyempurnaan yaitu mampu mengoptimasi memori dan memperbaiki respon layar sentuh agar lebih cepat dan akurat di bandingkan sebelumnya.

2. Fitur multi-tasking dimana dapat membuka 2 aplikasi secara bersamaan. 3. Pada aplikasi baru secara otomatis akan memprioritaskan nomor kontak yang

sering dihubungi. Fitur pencarian berdasarkan lokasi terdekat, bisnis, kontak dan orang-orang pada aplikasi Google.

4. Pencocokan daftar nomor yang tidak ada dengan daftar nomor di peta Google secara otomatis.

5. Tampilan karakter Bahasa jepang lebih nyaman terlihat dalam layar handphone.

II.5 Tool pengembangan aplikasi android

Adapun beberapa tool di pakai dalam pembangunan perangkat lunak ini adalah sebagai berikut:


(29)

II.5.1 Android SDK (Software Development Kid)

Sesuai dengan namanya merupakan kumpulan tools-tools yang di perlukan untuk mengembangkan aplikasi Android. Seperti pada java yang dapat dijalankan pada multiplatform, SDK Android pun tersedia untuk beberapa platform seperti Windows, Mac OS dan Linux. [5]

Adapun aplikasi SDK yang didalamnya terdapat beberapa folder sebagai berikut :

1. Tools

Berisikan tools-tools yang diperlukan dalam membangun aplikasi Android seperti emulator, Android Virtual Device (AVD), SDK Manager, ddms dan banyak lagi untuk memudahkan membangun aplikasi Android. Semua tools ini dapat di update mengikuti setiap perkembangan platfom Android.

2. Platforms

Direktori ini ditujukkan untuk meletakkan versi platform-platform Android yang telah kita download dari SDK Manager. Seperti Android 1.5, 1.6, 2.0 dan seterusnya.

3. Add-ons

Direktori ini nantinya berisikan tools tambahan untuk Android SDK, yang fungsinya untuk menambahkan library yang akan digunakan untuk pengembangan aplikasi. Seperti jika ingin mengembangkan aplikasi menggunakan map dari google maka harus memerlukan platform Android yang sudah terdapat library map atau misal jika ingin mengembangkan aplikasi untuk galaxy tab atau Sony X-peria juga memerlukan library dari masing-masing platform tersebut. Semua ini dapat di download melalui SDK Manager.


(30)

Selain folder-folder diatas, akan terdapat file tambahan jika kita mendownload beberapa platfom dan tool dalam folder Android SDK tersebut. Seperti Docs, paltform tools, dan samples.

II.5.2 Android Development Tools (ADT)

Merupakan plugin Eclipse yang disediakan oleh google untuk membantu dan memudahkan Developer mengembangkan aplikasi Android. Dengan adanya ADT membuat project Android, mendesain tampilan aplikasi, menambahkan komponen-komponen yang berasal dari Android Framework, debug aplikasi menggunakan tools-tools pada SDK Android hingga membuat file installer menjadi lebih mudah berkat plugin ini. Untuk proses penginstallan ADT dapat dilakukan dengan 2 cara Pertama secara Offline dengan mendownload file ADT secara manual pada situs Android dan kedua Secara online dengan menggunakan eclipse maupun Android studio. [5]

II.6 Tinjauan Perangkat Keras/Lunak Pendukung

Perangkat pendukung yang penulis pergunakan adalah Chrome, android studio, Sublime text 3.google Maps dan GPS.

II.6.1 Chrome Browser

Chrome adalah peramban web yang cepat, sederhana, dan aman, khusus dibuat untuk web modern [6]. Keunggulan yang ada pada google chrome adalah.

1. Kecepatan

Chrome dirancang agar bekerja secepat mungkin. Dimulai dengan cepat dari desktop Anda, memuat laman web dalam sekejap, dan menjalankan aplikasi web yang rumit secepat kilat [6].


(31)

Jendela peramban Chrome efektif, bersih, dan sederhana. Misalnya, Anda dapat menelusuri dan bernavigasi dari kotak yang sama dan mengatur tab sesuka Anda -- dengan cepat dan mudah [6].

3. Keamanan

Chrome dirancang untuk menjaga Anda agar lebih aman dan terjamin di web dengan perlindungan program jahat dan phishing yang sudah ada di dalamnya, pembaruan otomatis untuk memastikan bahwa Anda memiliki semua pemutakhiran keamanan terbaru, dan yang lainnya [6].

4. Privasi

Chrome memberikan Anda kontrol atas informasi pribadi sambil membantu melindungi informasi yang Anda bagikan saat online [6].

5. Pengubahsuaian

Ada berbagai macam cara untuk menyesuaikan Chrome dan menjadikannya milik Anda. Mudah untuk menyesuaikan setelan Anda dan menambahkan aplikasi, ekstensi, serta tema dari Toko Web Chrome [6].

6. Masuk login

Dengan masuk ke Chrome, maka bookmark, riwayat, dan setelan lainnya akan muncul di semua komputer Anda. Anda otomatis masuk ke semua layanan Google favorit juga [6].

II.6.2 Android Studio

Android Studio adalah lingkungan pengembangan Android baru berdasarkan IntelliJ IDEA. Ini menyediakan fitur baru dan perbaikan atas Eclipse ADT dan akan menjadi IDE Android resmi setelah siap. Di atas kemampuan yang Anda harapkan dari IntelliJ [7], Android Studio menawarkan:


(32)

1. Fleksibel Gradle berbasis sistem membangun.

2. Membangun varian dan generasi APK beberapa.

3. Diperluas dukungan template untuk Layanan Google dan berbagai jenis perangkat.

4. Layout editor kaya dengan dukungan untuk mengedit tema.

5. Lint Tool untuk menangkap kinerja, kegunaan, versi kompatibilitas, dan masalah lainnya.

6. ProGuard dan aplikasi-penandatanganan kemampuan.

7. Built-in mendukung untuk Google Cloud Platform, sehingga mudah untuk mengintegrasikan Google Cloud Messaging dan App Engine.

II.6.3 Google Map

Google Maps adalah sebuah jasa peta globe virtual gratis dan online disediakan oleh Google dapat ditemukan di http://maps.google.com. Teknologi tersebut menawarkan peta yang dapat diseret dan gambar satelit untuk seluruh dunia.

Google Maps merupakan Peta Online atau Membuka peta secara online. kini dapat dilakukan secara mudah melalui servis gratis dari Google ini. Bahkan, servis ini menyediakan API (Application Programming Interface) yang memungkinkan developer lain untuk memanfaatkan aplikasi ini di aplikasi buatannya. Tampilan GoogleMaps pun dapat dipilih, berdasarkan foto asli atau peta gambar rute saja.

II.6.4 Sublime Text 3

Teks luhur adalah editor teks yang canggih untuk kode, markup dan prosa. UI friendly, fitur luar biasa dan kinerja yang luar biasa.


(33)

II.6.5 GPS

GPS adalah singkatan dari Global Positioning System yang Merupakan sistem untuk menentukan posisi dan navigasi secara global dengan menggunakan satelit. Sistem yang pertama kali dikembangkan oleh departemen pertahanan amerika ini digunakan untuk kepentingan militer maupun sipil (survey dan pemetaan).

Sistem GPS, yang nama aslinya adalah NAVSTAR GPS (Navigation Satellite Timing and Ranging Global Positioning System), mempunyai tiga segmen yaitu:

1. Satellite

Bertugas untuk menerima dan menyimpan data yan ditransmisikan oleh stasiun-stasiun pengontrol, menyimpan dan menjaga informasi waktu ketelitian tinggi (ditentukan dengan jam atomic di satelit), dan memancarkan sinyal dan informasi secara kontinyu ke pesawat penerima (receiver)dari pengguna.

2. Pengontrol

Bertugas untuk mengendalikan dan mengontrol satelit dari bumi baik untuk mengecek kesehatan satelit, penentuan dan prediksi orbit dan waktu, sinkronisasi waktu antar satelit, dan mengirim data ke satelit.

3. Penerima

Bertugas menerima data dari satelit dan memprosesnya untuk menentukan posisi (posisi tiga dimensi yaitu koordinat di bumi plus ketinggian), arah jarak dan waktu yang diperlukan oleh pengguna. Ada dua macam tipe penerima yaitu tipe NAVIGASI dan tipe GEODETIC.


(34)

Satelit GPS yang mengorbit bumi, dengan orbit dan kedudukan yang tetap (koordinatnya pasti), seluruhnya berjumlah 24 buah dimana 21 buah aktip bekerja dan 3 buah sisanya adalah cadangan.

Dalam bidang survey dan pemetaan untuk wilayah terumbu karang, GPS dapat digunakan untuk menentukan posisi titik-titik lokasi penyelaman maupun transek. Posisi yang diperoleh adalah posisi yang benar terhadap sistem koodinat bumi. Dengan mengetahui posisinya yang pasti, lokasi-lokasi penyelaman maupun transek dapat diplotkan kedalam peta kerja.

II.6.6 Web Services

W3C mendefinisikan web service sebagai sebuah software aplikasi yang dapat teridentifikasi oleh URI dan memiliki interface yang didefinisikan, dideskripsikan, dan dimengerti oleh XML atau JSON dan juga mendukung interaksi langsung dengan software aplikasi yang lain dengan menggunakan message berbasis XML atau JSON melalui protokol internet Web service adalah sebuah software aplikasi yang tidak terpengaruh oleh platform, menyediakan method-method yang dapat diakses oleh network. Web Service juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda. Beberapa karakteristik dari web service adalah:

1. Message-based 2. Standards-based

3. Programming language independent 4. Platform-neutral

Beberapa key standard di dalam web service adalah: JSON, XML, SOAP, WSDL and UDDI [8].

II.6.7 JSON

JSON (JavaScript Object Notation) adalah format pertukaran data yang ringan, mudah dibaca dan ditulis oleh manusia, serta mudah diterjemahkan dan


(35)

dibuat (generate) oleh komputer. Format ini dibuat berdasarkan bagian dari Bahasa Pemprograman JavaScript, Standar ECMA-262 Edisi ke-3 - Desember 1999. JSON merupakan format teks yang tidak bergantung pada bahasa pemrograman apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C termasuk C, C++, C#, Java, JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data. JSON terbuat dari dua struktur:

a. Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan sebagai objek (object), rekaman (record), struktur (struct), kamus (dictionary), tabel hash (hash table), daftar berkunci (keyed list), atau associative array [9].

b. Daftar nilai terurutkan (an ordered list of values). Pada kebanyakan bahasa, hal ini dinyatakan sebagai larik (array), vektor (vector), daftar (list), atau urutan (sequence) [9].

Struktur-struktur data ini disebut sebagai struktur data universal. Pada dasarnya, semua bahasa pemprograman modern mendukung struktur data ini dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian karena format data mudah dipertukarkan dengan bahasa-bahasa pemprograman yang juga berdasarkan pada struktur data ini. JSON menggunakan bentuk sebagai berikut:

1. Objek

Objek adalah sepasang nama / nilai yang tidak terurutkan. Objek dimulai dengan { (kurung kurawal buka) dan diakhiri dengan } (kurung kurawal tutup). Setiap nama diikuti dengan : (titik dua) dan setiap pasangan nama/nilai dipisahkan oleh , (koma). Objek biasanya digunakan untuk menyimpan data tunggal dalam bentuk JSON [9].


(36)

Gambar II-3 Object JSON

2. Larik

Larik adalah kumpulan nilai yang terurutkan. Larik dimulai dengan [ (kurung kotak buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan oleh , (koma). Larik dalam JSON dapat digunakan sebagai value dari JSON object hal ini dapat berguna jika JSON menyimpan data bertingkat [9].

Gambar II-4 Array JSON

Bentuk data JSON objek dan larik dapat saling dikombinasikan untuk mendukung struktur data yang lebih kompleks. JSON mendukung beberapa tipe data untuk menjadi value seperti Angka, String, Bollean dan nilai NULL [9].

II.6.8 Google Cloud Messaging

Google Cloud Messaging adalah teknologi untuk membantu pengembang mengirim data dari server menuju device android secara langsung melalui server google, pemanfaatan teknologi ini biasanya digunakan untuk push messaging. Pengiriman pesan menggunakan teknologi ini mengharuskan adanya API key, key ini terkait langsung dengan akun google yang digunakan untuk mempublikasikan aplikasi melalui google play [5].


(37)

Gambar II-5 GCM Model [5]

Berdasarkan ilustrasi dari Gambar II-5 GCM Model terdapat dua server yang terlibat dalam proses push messaging , pada setiap server yang terlibat terdapat proses pengiriman data yang berbeda-beda diantaranya [5]:

1. Device android mengirimkan sender id dan application id menuju GCM Server untuk registrasi.

2. Setelah berhasil registrasi, GCM server akan mengirimkan registration id menuju device android.

3. Setelah device android mendapatkan registration id, d

4. evice tersebut akan mengirimkan registration id menuju server aplikasi.Server aplikasi akan menyimpan registrasi id yang dikirimkan untuk digunakan sebagai id saat menggunakan push messaging.


(38)

II.7 Bahasa Pengrograman yang digunakan

Adapun beberapa bahasa pemrograman yang digunakan pada pembangunan perangkat lunak ini adalah sebagai berikut:

II.7.1 PHP

PHP adalah salah satu bahasa Server-side yang didesain khusus untuk aplikasi web. PHP dapat disisipkan diantara bahasa HTML dan karena bahasa Server side, maka bahasa PHP akan dieksekusi di server, sehingga dikirimkan ke browser adalah “hasil jadi” dalam bentuk HTML, dan kode PHP anda tidak akan terlihat [10].

PHP termasuk dalam Open Source Product. Jadi anda dapat merubah source code dan mendistribusikan secara bebas. Adapun kelebihan-kelebihan dari PHP yaitu:

1. PHP mudah dibuat dan kecepatan akses tinggi.

2. PHP dapat berjalan dalam web server yang berada dan dalam system operasi yang berbeda pula. PHP dapat berjalan disistem operasi UNIX, Windows98, Windows NT dan Macintosh.

3. PHP diterbitkan secara gratis.

4. PHP juga dapat berjalan pada web server Microsoft Personal Web Server, Apache, IIS, Xitami dan sebagainya.

5. PHP adalah termasuk bahasa yang embeddeb (bisa ditempel atau diletakkan dalam tag HTML).

6. PHP termasuk server-side programming.

Sistem database yang didukung oleh PHP seperti Oracle, Sybase, mSQL, MySQL, Solid, Generic ODBC, Postgres SQL [10].

II.7.2 JAVA

Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James


(39)

Gosling saat masih bergabung di Sun Microsystems saat ini merupakan bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal. Aplikasi-aplikasi berbasis java umumnya dikompilasi ke dalam p-code (bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM). Java merupakan Bahasa pemrograman yang bersifat umum/non-spesifik (general purpose), dan secara khusus didisain untuk memanfaatkan dependensi implementasi seminimal mungkin [11].

Karena fungsionalitasnya yang memungkinkan aplikasi java mampu berjalan di beberapa platform sistem operasi yang berbeda, java dikenal pula dengan slogannya, "Tulis sekali, jalankan di mana pun". Saat ini java Merupakan bahasa pemrograman yang paling populer digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis perangkat lunak aplikasi ataupun aplikasi berbasis web [11].

II.7.3 MySQL

Dalam bahasa SQL data akan diatur dalam baris dan kolom pada table, karena pada database di dalamnya pasti akan anda temukan beberapa table. Ada banyak server database yang bisa digunakan, namun salah satu server database yang popular dan banyak digunakan orang adalah MySQL. Selain karena bisa didapat dengan mudah dan gratis, MySQL juga dapat berjalan pada sistem operasi apa pun. Berikut beberapa kelebihan yang dimiliki MySQL [12] [13] [14]:

1. Program database MySQL memang merupakan pasangan setia yang sering diintegrasikan dengan Apache.

2. MySQL memiliki kemampuan server multithread sehingga dapat menangani banyak permintaan (requet) layanan secara bersamaan.

3. Dapat berjalan pada banyak sistem operasi (Linux, Windows, SunOS, MacOS). 4. Memiliki metode enkripsi yang baik.


(40)

6. Menggunakan autentifikasi pengguna (user) dan kata sandi (password) sehingga menjadikannya lebih aman.

II.8 Object Oriented Analysis Design

suatu pendekatan rekayasa perangkat lunak dari sebuah sistem yang terdiri dari sekelompok objek yang saling berinteraksi, dan setiap objek itu mewakili beberapa entitas.

II.8.1 Pengertian OOP

OOP (Object Oriented Programming) adalah sebuah konsep pemograman yang berbasis objek, OOP merupakan terobosanbaru dalam pemrograman setelah pemrograman prosedural, pemrograman modular dan pemrograman abstraksi data [14].

OOP memberikan kemudahan bagi programmer dalam pembuatan sebuah program, memberikan fleksibilitas yang lebih, kemudahan penggunaan program, dan dipakai luas dalam teknik piranti lunak skala besar. Selain itu dengan pemrograman OOP kode yang dibuat akan lebih mudah dikembangkan dan dirawat dalam arti seorang programer bisa menambah sebuah objek baru tanpa harus menggangu dan merubah modul yang lain. Berikut ini keuntungan dari penggunaan OOP dalam pemrograman [14] :

1. Reusability

(kemampuan untuk digunakan kembali). Kode yang dibuat dapat digunakan kembali di aplikasi atau programlainnya.

2. Extensibility

(Kemampuan untuk dapat dikembangkan). Kita dapat membuat method yang baru atau mengubah yangsudah ada sesuai dengan yang kita inginkan tanpa harus membuat kode dari awal.


(41)

3. Maintainability

(Kemampuan untuk mudah dikelola), kode yang sudah dibuat lebih mudah untuk di maintain/manage. Apabila aplikasi yang dibuat adalah aplikasi dengan skala besar dan apabila terjadi error atau kesalahan maka dengan OOP hal tersebut mudah ditangani karena pemograman yang menggunakan OOP sudah modularitas (memecahkan program yang besar menjadi bagian-bagian kecil) sehingga perbaikan cukup pada modul-modul tertentu saja tanpa harus mengubah modul yang lainnya.

II.8.2 Konsep OOP

Dalam pemrograman OOP, ada empat hal yang diperhatikan karena hal tersebut merupakan konsep vital dari OOP tersebut [14].

Berikut ini konsep utama tersebut:

1. Encapsulation/pembungkusan, merupakan penyembunyian informasi melalui private dan protected

2. Inheritance /pewarisan, adalah kemampuan untuk membuat class turunan yang mewarisi property dan method dari kelas induk.3.

3. Abtraction/abtraksi, adalah sebuah konsep yang merupakan representasi abstrak dari konsep dalam pemograman,misalnya objek mobil merupakan representasi abstrak dari mobil dalam dunia nyata.

4. Polymorphism /banyak bentuk, seorang programer bisa memakai method dengan nama yang sama pada class-class yang berbeda

II.8.3 UML

UML (Unified Modeling Language) meruapakan pengganti dari metode analisis berorientasi object dan design berorientasi object (OOA & OOD) yang dimunculkan sekitar akhir tahun 80-an dan awal tahun 90-an [14].

UML merupakan gabungan dari metode Grady Booch (Booch Method), James Rumubaugh (OMT) dan Ivar Jacobson (OOSE). Tetapi UML ini akan


(42)

mencakup lebih luas daripada OOA&D. Pada pertengahan pengembangan UML dilakukan standarisasi proses dengan OMG (Object Managemet Group) dengan harapan UML akan menjadi bahsa standar pemodelan masa yang akan datang [14].

UML disebut sebagai pemodelan bukan metode. Kebanyakan metode terdiri paling sedikit prinsip, bahasa pemodelan dan proses. Bahasa pemodelan (sebagai besar grafik) merupakan notasi dari metode yang digunakan untuk mendesain secara cepat [14].

Bahasa pemodelan merupakan bagian terpenting dari metode. Ini merupakan bagian kunci tertentu untuk komunikasi. Jika anda ingin berdiskusi tentang desain dengan seseorang, maka anda hanya membutuhkan bahasa pemodelan bukan proses yang digunakan untuk mendapatkan desain. Ada beberapa model pada UML diantaranya adalah [14]:

1. Use Case Diagram

Use case diagram merupakan suatu pemodelan yang menitik beratkan pada fungsionalitas utama dalam suatu konteks sistem. Use case diagram juga menekankan tingkah laku fungsional utama dalam sistem berinteraksi dengan objek diluar sistem tersebut. Selain itu, use case diagram juga telah menitik beratkan jenis hubungan diantara fungsi utama. Adapun komponen-komponen dalam use case diagram antaranya [14]:

a. Aktor

Aktor merupakan suatu entitas yang berkaitan dengan sistem tapi bukan dari bagian dalam sistem itu sendiri. Aktor berada diluar sistem namun berkaitan erat dengan fungsionalitas didalamnya. Aktor dapat memiliki hubungan secara langsung terhadap fungsi utama baik terhadap salah satu atau semua fungsionalitas utama. Aktor juga dapat dibagi terhadap berbagai jenis atau tingkatan dengan cara digeneralisasi atau dispesifikasi tergantung kebutuhan sistemnya. Aktor biasanya


(43)

dapat berupa pengguna atau database yang secara pandang berada dalam suatu ruang lingkup sistem tersebut.

b. Use Case

Use case merupakan gambaran umum dari fungsi atau proses utama yang menggambarkan tentang salah satu perilaku sistem. Perilaku sistem ini terdefinisi dari proses bisnis sistem yang akan dimodelkan. Tidak semua proses bisnis digambarkan secara fungsional pada use case, tetapi yang digambarkan hanya fungsionalitas utama yang berkaitan dengan sistem. Use case menitik beratkan bagaimana suatu sistem dapat berinteraksi baik antar sistem maupun diluar system.

2. Class Diagram

Class diagram merupakan diagram yang selalu ada di permodelan sistem berorientasi objek. Class diagram menunjukkan hubungan antar class dalam sistem yang sedang dibangun dan bagaimana mereka saling berkolaborasi untuk mencapai suatu tujuan. Kelas pada kelas diagram terdiri dari 3 bagian utama yaitu nama kelas, isi properti dari kelas beserta metode yang ada pada kelas tersebut. Kelas juga memiliki jenis-jenis hubungan seperti asosiatif, dependensi, agregasi, komposisi, spesifikasi dan generalisasi. Hubungan ini digunakan untuk menggambarkan bagaimana hubungan dan interaksi yang terjadi antar kelas. Masing-masing komponen penyusun kelas memiliki hak akses seperti public, private, dan protected [14].

3. Sequence Diagram

Sequence diagram menjelaskan secara detil urutan proses yang dilakukan dalam sistem untuk mencapai tujuan dari use case: interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan antar operasi, dan informasi yang diperlukan oleh masing-masing operasi [14].


(44)

II.9 Pengujian Black Box

Metode pengujian blackbox fokus pada keperluan penelusuran kesalahan fungsional dari software. Ujicoba blackbox berusaha untuk 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

Teknik pengujian black box terdiri dari 10 jenis diantaranya Equivalence Partitioning, Boundary Value Analysis/Limit Testing, Comparison Testing, Sample Testing, Robustness Testing, Behavior Testing, Requirement Testing, Performance Testing, Endurance Testing, Cause-Effect Relationship Testing. Salah satunya yang akan dibahas adalah Equivalence partitioning.

Equivalence partioning merupakan metode ujicoba blackbox yang membagi domain input dari program menjadi beberapa kelas data dari kasus ujicoba yang dihasilkan. Kasus uji penanganan single yang ideal menemukan sejumlah kesalahan (misalnya : kesalahan pemrosesan dari seluruh data karakter) yang merupakan syarat lain dari suatu kasus yang dieksekusi sebelum kesalahan umum diamati.

II.10Pengujian Kuisioner

Kuesioner adalah sebuah daftar pernyataan yang harus diisi oleh orang yang akan dievaluasi (responden). Metode yang digunakan dalam kuesioner pada penelitian ini adalah skala Likert. Dalam skala likert, responden diminta untuk membaca dengan seksama setiap pernyataan yang disajikan, kemudian ia diminta untuk menilai pernyataan-pernyataan tersebut.


(45)

Derajat penilaian responden terhadap suatu pernyataan terbagi dalam 5 kategori yang tersusun secara bertingkat, mulai dari Sangat Tidak Setuju (ST), Tidak Setuju (T), Tidak Memutuskan (N), Setuju (S), dan Sangat Setuju (SS). Atau dapat pula sebaliknya. Pernyataan tiap kuesioner dibuat berdasarkan aspek-aspek yang diteliti. Bobot pemberian skor yang digunakan dapat dilihat pada Tabel II-1 Panduan Pemberian Skor .

Tabel II-1 Panduan Pemberian Skor [15]

Jenis Pernyataan

Bobot pendapat

SS S N T TS

Positif 5 4 3 2 1

Negatif 1 2 3 4 5

Skor yang telah dihitung pada setiap pernyataan kemudian dikalikan dengan masing-masing bobot tersebut sesuai dengan skenario kuesioner yang telah dibuat. Setelah itu total kan seluruh bobot jawaban tersebut kemudian bagi dengan total responden yang nantinya menjadi nilai rata-rata. Nilai rata-rata inilah yang diambil sebagai acuan sikap dimana jika nilai rata-rata kurang dari 3, maka dapat diartikan responden bersikap negatif dan jika nilai rata-rata lebih dari sama dengan 3, maka dapat diartikan responden bersikap positif terhadap tujuan yang ingin peneliti capai. Untuk lebih jelasnya dapat dilihat pada rumus dibawah ini.

� = ∑ �

Dimana,

� ≥ 3 � < 3

Keterangan :


(46)

∑� = ℎ ℎ ℎ n = total responden

II.11 Metode yang di gunakan

Metode yang digunakan pada sistem yang akan dibangun sebagai berikut:

II.11.1 Rumus Haversine

Rumus Haversine adalah persamaan pada navigasi, yang memberikan jarak lingkaran besar antara dua titik bumi berdasarkan garis bujur (longitude) dan garis lintang (latitude). Perhitungan dari rumus ini juga cukup akurat dimana rumus ini mengabaikan ketinggian bukit dan kedalaman lembah di permukaan bumi. Secara matematis dapat dituliskan didalam persamaan sebagai berikut pada gambar II - 6 [16] :

Gambar II-6 Rumus Haversine

Analisis perhitungan jarak ini menggunakan rumus haversine untuk menghitung jarak antara dua titik dengan mengabaikan kondisi geografis seperti lembah ataupun bukit berdasarkan persamaan 1 dimana sudut harus dalam satuan radian untuk menggunakan fungsi trigonometri.

Berikut sejumlah data sarana musik yang digunakan sebagai contoh untuk proses perhitungan jarak :

Tabel II-2 Data Lokasi Sarana Musik

Sarana

Musik Alamat latitude longitude

Sarana 1 Jl. Indramayu Raya No. 68 -6.919695 107.657364 Sarana 2 Jl. Pungkur 97 -6.927554 107.607798 Sarana 3 Jl. Soka no 4 -6.915286 107.628294 Sarana 4 Jl. Surapati No 197 -6.898055 107.633097 Sarana 5 Jl. Depok Raya No 1 -6.914517 107.655424


(47)

Berikut merupakan data lokasi pengguna :

Tabel II-3 Lokasi Awal

Lokasi Awal Alamat latitude longitude

Lokasi Pengguna Jl. Purwakarta -6.917557 107.660445

Dari sejumlah data sarana musik yang ada akan dihitung jarak antara lokasi pengguna dengan setiap lokasi sarana untuk mendapatkan lokasi terdekat yang dalam hal ini terdekat dalam radius 2 km. Untuk mendapatkan lokasi terdekat perlu dilakukan perhitungan jarak pada setiap lokasi yang ada dengan lokasi pengguna setelah itu dilakukan pengecekan jarak dalam radius 2 Km.

Berikut contoh perhitungan lokasi pengguna (Jl. Purwakarta) dengan salah satu lokasi sarana (Jl. Indramayu) pada tabel diatas menggunakan rumus haversine pada persamaan 1.

Langkah awal dihitung selisih lokasi pengguna dengan lokasi sarana musik: Δlat = (-6.919695 – (-6.917557))

= -0.000037315139 (dalam radian) Δlon = (107.657364 - 107.660445)

=-0.000053773594 (dalam radian)

Kemudian menghitung perpotongan sumbu untuk mengetahui jarak dengan menghitung :

a = sin²( -0.000037315139 / 2) + (cos-6.917557) * (cos(-6.919695) * sin²( -0.000053773594 / 2)

= 0.00000000106051512354642 (dalam radian) c = 2 * Atan2 (√0.0000000728901324047745,

√(1 − 0.0000000728901324047745)) = 0.0000651311023681102

Hasil diatas masih dalam radian maka perlu dikalikan dengan radius permukaan bumi sehingga didapat hasil seperti berikut :


(48)

d = 6371 * 0.0000651311023681102

= 0.41 Km (pembulatan dua angka di belakang koma)

Perhitungan tersebut dilakukan terhadap lokasi pengguna dengan lokasi – lokasi sarana yang ada sehingga akan didapatkan hasil (jarak) antara lokasi pengguna dan sarana musik yang kemudian di cek ke dalam radius 2 Km untuk mengetahui lokasi mana saja yang terdekat seperti pada tabel berikut :

Tabel II-4 Kesimpulan Perhitungan Jarak

Lokasi Awal Lokasi Tujuan Jarak Kesimpulan

Lokasi

Pengguna Sarana1 0.41 Km Didalam radius 2 Km Lokasi

Pengguna Sarana 2 5.92 Km Diluar radius 2 Km Lokasi

Pengguna Sarana 3 3.56 Km Diluar radius 2 Km Lokasi

Pengguna Sarana 4 3.72 Km Diluar radius 2 Km Lokasi


(49)

1

BAB III

ANALISIS DAN PERANCANGAN SISTEM

III.1 Analisis Sistem

Analisis sistem bertujuan untuk mengidentifikasi permasalahan-permasalahan pada sistem yang masih berjalan dan juga menentukan kebutuhan-kebutuhan dari sistem yang akan di bangun.

III.1.1 Analisis Masalah

Bagi pemanggil tow truck masih ada masalah-masalah yang bisa terjadi, masalah-masalah tersebut adalah sebagai berikut:

1. Susahnya mencari posisi keberadaan pelanggan bagi perusahaan mobil derek.

2. Kurangnya informasi lebih detail posisi atau alamat keberadaan pelanggan kepada mobil derek yang dapat menyulitkan pencarian.

3. Susahnya mencari letak mobil derek terdekat bagi pelanggan jika tidak tahu informasi tentang mobil derek disekitar.

III.1.2 Analisis Sistem Yang Sedang Berjalan

Analisis Sistem pada Pelayanan Mobil derek yang sedang berjalan masih kebanyakan menggunakan via telepon sebagai alat pemanggil mobil derek dimana pelanggan memanggil perusahaan mobil derek dan kemudian di respon oleh perusahaan tersebut dan kemudian dikirimkan mobil derek ke lokasi pelanggan yang memanggil. Analisis sistem yang sedang berjalan tersebut juga dapat digambarkan dalam bentuk Use Case Diagram dan Activity Diagram.


(50)

2

1. Use Case Diagram sistem yang sedang Berjalan

Berikut merupakan use case diagram pada sistem yang sedang berjalan.

Gambar III-1 Use Case Sistem yang sedang berjalan

2. Activity Diagram Sistem yang sedang Berjalan

Activity diagram menjelaskan aliran kerja aktor pada sistem yang sedang berjalan. Berikut ini adalah diagram activity pada sistem yang berjalan.


(51)

3 1. Activity Diagram Proses Call Tow Truck

Berikut merupakan Activity Diagram Pada Proses Call Tow Truck.

Gambar III-2 Activity Diagram Proses Call Tow Truck

Pelanggan atau pemanggil akan memanggil perusahaan mobil derek untuk melakukan permintaan penjemputan mobil derek dan kemudian perusahaan akan memproses panggilan tersebut dan akan di cek lokasi dari informasi pelanggan jika informasinya belum lengkap maka ditanyakan kembali ke pelanggan, jika sudah lengkap maka perusahaan akan memilih truk mobil derek yang lebih dekat dengan pelanggan, kemudian pengendara mobil derek menerima panggilan tersebut dan melakukan penjemputan terhadap pelanggan atau pemanggil.


(52)

4 2. Activity Diagram Location Driver

Berikut merupakan Activity Diagram pada Location Driver.

Gambar III-3 Activity Diagram Proses Location Driver

Perusahaan mobil derek akan menentukan lokasi patroli pengendara mobil derek kemudian dipilih kendaraan mobil derek yang akan digunakan, kemudian pengendara mobil derek menerima perintah tersebut dan melakukan patroli pada tempat yang sudah ditetapkan.

III.1.3 Analisis Aturan Bisnis

Analisis aturan bisnis dibutuhkan untuk mengetahui batasan yang dibuat ketika sistem beroperasi. Berikut aturan bisnis yang dibuat berdasarkan pengguna yang akan menggunakan sistem:


(53)

5 1. Admin (Back End)

Merupakan user yang dapat mengakses sub sistem web untuk melakukan proses pengolahan data pada database melalui web admin. Terdapat beberapa batasan untuk admin, yaitu:

1. Member dapat diblok oleh admin melalui subsistem web admin jika admin mendapatkan pesan dari member company (perusahaan mobil derek yang terdaftar) berisi penyalahgunaan sistem atau kejahatan yang dilakukan member.

2. Admin dapat menonaktifkan member company jika sudah tidak dipakai dalam jangka waktu panjang

3. Admin dapat melihat statistik dari keseluruhan data.

4. Admin dapat mengkonfirmasi account member company.

5. Admin dapat mengkonfirmasi paket yang dipesan oleh member company.

6. Pada model bisnis yang digunakan yaitu :

a. Display Ad

Model bisnis yang sederhana yang paling banyak digunakan dalam bentuk iklan yang disimpan pada subsistem yang memiliki kaitan pada content sebagai bahan promosi dari perusahaan tersebut.

b. Payment Subscription

Pembayaran bagi pelanggan yang terdaftar pada sistem dikarenakan mudahnya pengguna pada sistem tersebut. Model bisnis tersebut diterapkan pada subsistem web member company. type pembayarannya berupa packet dengan jumlah ada 4:

1. Trial

Merupakan paket free untuk memulai pendaftaran baru dengan limit 10 panggilan dan jangkauan 1 tahun.


(54)

6 2. Silver

Merupakan paket bayar dengan limit 250.000 panggilan dan jangkauan waktu 1 tahun

3. Gold.

Merupakan paket bayar dengan limit 1.000.000 panggilan dan jangkauan waktu 1 tahun

4. Platinum.

Merupakan paket bayar dengan panggilan unlimited dan jangkauan waktu 1 tahun.

5. Member Company (Front End)

Pada pengguna sistem member company terbagi menjadi 2 bagian:

1. Perusahaan mobil derek

Merupakan pengguna yang dapat menerima panggilan dari pelanggan dan juga dapat mengelola data panggilan, driver maupun truck. Berikut beberapa batasan yang pada subsistem member company untuk perusahaan mobil derek adalah:

1. Member company dapat mengelola data Driver company

2. Data Driver memiliki beberapa status yang ditampilkan, yaitu:

a. Off

Artinya Driver tidak sedang kerja atau login pada sub sistem mobil driver.

b. Free

Artinya Driver sedang kerja atau login pada sub sistem mobil driver tapi tidak mengendarai mobil derek atau masih di dalam pusat perusahaan.

c. On Towing

Artinya Driver sedang bekerja dan menerima panggilan yang sudah di proses oleh Member Company.


(55)

7

3. Member company dapat mengelola data Truck

4. Truck memiliki 2 type, yaitu:

a. PickUp

Merupakan kendaraan mobil derek yang dapat menderek kendaraan dengan cara diangkat ke bagian badan kendaraan atau diangkut.

b. Hook

Merupakan kendaraan mobil derek yang dapat menderek kendaraan dengan cara mengaitkan alat kail atau hook kebagian depan bawah atau belakang bawah kendaraan, kemudian di angkat.

5. Member Company dapat mengelola data Call(panggilan) yang diterima dari Member yang menggunakan subsistem mobile Member dan telah memanggil Member company, kemudian dapat diproses data panggilan tersebut dengan menentukan harga.

6. Ketentuan harga ditentukan dari jarak Driver menuju member(pemanggil) kemudian menuju bengkel yang pilih oleh pemanggil dan terakhir kembali lagi ke lokasi perusahaan mobil derek.

Contoh:

Harga 1 KM: Rp.100000,-

Jarak tempuh : 3 km.

Maka : 100000 x 3 = 300000 rupiah

Jika jarak tempuh lebih kecil dari 1 km maka akan diambil harga standar awal yang sudah di tentukan oleh Member Company pada saat pendaftaran.

7. Data Call (panggilan) memiliki beberapa status yang ditampilkan, yaitu:

a. New Call

Artinya panggilan yang dikirim langsung dari Sub sistem mobil Member atas pemintaan yang masih belum di proses.


(56)

8 b. Proses confirmation

Artinya panggilan yang sudah diproses harga maupun driver yang kemudian di kirim kembali ke Member yang memanggil melalui Subsistem mobile Member tersebut, kemudian menunggu respon dari Member diterima atau tidaknya syarat harganya.

c. On Towing

Artinya panggilan sudah diterima oleh Member dan sedang di proses pencarix`an dan pelaksanaan penderekan sampai tujuan tercapai.

d. Finish

Artinya panggilan sudah selesai dikerjakan.

2. Perusahaan bengkel

Merupakan pengguna yang hanya dapat mengelola lokasi perusahaan bengkel tersebut. Ada beberapa batasan pada subsistem member company untuk perusahaan bengkel adalah:

1. perusahaan hanya dapat melihat data panggilannya saja.

2. Perusahaan dapat mengubah data lokasinya

Adapun satu perusahaan dapat mendaftarkan kedua-duanya sebagai perusahaan mobil derek maupun perusahaan bengkel secara terpisah.

6. Member (Front End)

Merupakan User Utama pada sistem yang dapat mengakses fitur-fitur utama melalui subsistem Mobile yang dapat melakukan panggilan pada pilihan Perusahaan mobil derek. Terdapat beberapa batasan pada subsistem Mobile Member:

1. Member Dapat melakukan 1 kali panggilan sampai panggilan tersebut terselesaikan.

2. Member dapat memilih perusahaan terdekat maupun terjauh.


(57)

9 a. Type Truck

Artinya form yang berisi tipe truk yang akan digunakan karena setiap kendaraan memiliki perbedaan dalam kegunaannya.

b. Destination

Artinya Tujuan Benkel (Station service) yang nantinya kendaraan Member di derek ke tujuan yang di pilih

c. No Car

Artinya no polisi kendaraan yang tertera di depan mobil maupun belakang mobil.

4. Member dapat melihat 2 jenis pesan yang diterima, yaitu

a. <Member Company> has set price

Artinya pesan panggilan yang sudah diproses oleh Member Company kemudian dapat di validasi oleh Member

b. Truck location

Artinya pesan untuk menampilkan lokasi Driver yang sedang mencari Member.

7. Driver Company

Merupakan User yang dapat mengakses panggilan yang sudah diproses dari Member Company Melalui sub sistem mobile Driver. Terdapat beberapa batasan pada sub sistem mobile Driver Company:

1. Driver hanya dapat menerima pesan panggilan dari hasil proses yang diberikan oleh Member Company.

2. Driver dapat melakukan pencarian dalam bentuk map.

3. Driver dapat menampilkan data detail Member yang memanggil.


(58)

10

III.1.4 Analisis Arsitektur Sistem

Analisis Arsitektur Sistem bertujuan untuk mengidentifikasi arsitektur yang akan dibangun berdasarkan dua subsistem yaitu web dan mobile.

1. Web

Web adalah salah satu subsistem yang digunakan untuk pembangunan perangkat lunak ini. Pada sub sistem ini dibagi menjadi dua yaitu administrator dan member Company. Administrator bekerja untuk pengolah data konten pengguna, member Company dan Call, sedangakan member company bekerja untuk mengolah data panggilan data yang diterima, data driver. Berikut pada Gambar III.1 merupakan Arsitektur perangkat lunak yang menggambarkan secara keseluruhan dalam sistem pada platform web.


(59)

11 2. Mobile

Mobile adalah salah satu subsistem yang digunakan untuk pembangunan perangkat lunak ini. Pada sub sistem ini menggunakan platform android dan dibagi menjadi dua yaitu member dan driver. Member merupakan sebagai user yang menggunakan fitur utama yaitu memanggil driver yang tersedia dalam sistem ini dan juga mencari lokasi terdekat perusahaan mobil Derek dan driver bekerja untuk mencari lokasi member dan bengkel tujuan dalam bentuk Route Direction yang sudah tersedia dalam sistem. Berikut pada Gambar III.2 merupakan Arsitektur perangkat lunak yang menggambarkan secara keseluruhan dalam sistem pada platform mobile.

Gambar III-5 Arsitektur mobile

Arsitektur sistem yang digambarkan diatas merupakan penggambaran merupakan arsitektur dari dua sub sistem. Sedangkan pada gambar III.3 merupakan Arsitektur perangkat lunak yang menggambarkan perspektif secara keseluruhan.


(60)

12

Gambar III-6 Arsitektur Keseluruhan

III.1.5 Spesifikasi Kebutuhan Perangkat Lunak

Spesifikasi kebutuhan perangkat lunak terbagi kedalam dua kebutuhan yaitu kebutuhan non fungsional dan fungsional. Kebutuhan fungsional dapat dilihat padaTabel III-1 spesifikasi kebutuhan fungsional.

Tabel III-1 spesifikasi kebutuhan fungsional

Kode SKPL Spesifikasi Kebutuhan Perangkat Lunak

SKPL-F-001 Subsistem mobile menyediakan fasilitas bagi calon member untuk registrasi kedalam sistem

SKPL-F-002 Subsistem mobile menyediakan fasilitas bagi member untuk login kedalam sistem

SKPL-F-003 Subsistem mobile menyediakan fasilitas bagi member untuk melakukan panggilan tow truck dalam sistem

SKPL-F-004 Subsistem mobile menyediakan fasilitas bagi member untuk melihat detail tow truck company yang tersedia dalam sistem

SKPL-F-005 Subsistem mobile menyediakan fasilitas bagi member untuk memilih dalam list notifikasi dalam sistem

SKPL-F-006 Subsistem mobile menyediakan fasilitas bagi member untuk melihat route direction antara member dan driver

SKPL-F-007 Subsistem mobile menyediakan fasilitas bagi member untuk mengubah data profil pada fitur setting di dalam sistem

SKPL-F-008 Subsistem mobile menyediakan fasilitas bagi member untuk melakukan log out dari dalam sistem

SKPL-F-009 Subsistem mobile menyediakan fasilitas bagi driver untuk melihat antara lokasi driver dan member company


(61)

13

Kode SKPL Spesifikasi Kebutuhan Perangkat Lunak

SKPL-F-010 Subsistem mobile menyediakan fasilitas bagi driver untuk menerima panggilan dari member

SKPL-F-011 Subsistem mobile menyediakan fasilitas bagi driver untuk melihat lokasi antara driver dan member

SKPL-F-012 Subsistem mobile menyediakan fasilitas bagi driver untuk melihat lokasi antara driver dan bengkel tujuan

SKPL-F-013 Subsistem mobile menyediakan fasilitas bagi driver untuk logout dalam sistem

SKPL-F-014 Subsistem web menyediakan fasilitas bagi admin untuk Login ke dalam sistem

SKPL-F-015 Subsistem web menyediakan fasilitas bagi admin untuk melihat data statistic

SKPL-F-016 Subsistem web menyediakan fasilitas bagi admin untuk melihat data call SKPL-F-017 Subsistem web menyediakan fasilitas bagi admin untuk melihat detail

data call

SKPL-F-018 Subsistem web menyediakan fasilitas bagi admin untuk melihat data company

SKPL-F-019 Subsistem web menyediakan fasilitas bagi admin untuk melihat detail data company

SKPL-F-020 Subsistem web menyediakan fasilitas bagi admin untuk menambahkan station service

SKPL-F-021 Subsistem web menyediakan fasilitas bagi admin untuk delete company SKPL-F-022 Subsistem web menyediakan fasilitas bagi admin untuk update station

service

SKPL-F-023 Subsistem web menyediakan fasilitas bagi admin untuk melihat data member

SKPL-F-024 Subsistem web menyediakan fasilitas bagi admin untuk memblok data member

SKPL-F-025 Subsistem web menyediakan fasilitas bagi admin untuk menhapus data member

SKPL-F-026 Subsistem web menyediakan fasilitas bagi admin untuk melihat detail data member

SKPL-F-027 Subsistem web menyediakan fasilitas bagi member company untuk login kedalam sistem

SKPL-F-028 Subsistem web menyediakan fasilitas bagi member company untuk melihat data statistic perusahaan

SKPL-F-029 Subsistem web menyediakan fasilitas bagi member company untuk melihat data Call

SKPL-F-030 Subsistem web menyediakan fasilitas bagi member company untuk melihat detail data call

SKPL-F-031 Subsistem web menyediakan fasilitas bagi member company untuk menghapus data Call

SKPL-F-032 Subsistem web menyediakan fasilitas bagi member company untuk melihat data driver

SKPL-F-033 Subsistem web menyediakan fasilitas bagi member company untuk menambahkan data driver

SKPL-F-034 Subsistem web menyediakan fasilitas bagi member company untuk melihat detail data driver

SKPL-F-035 Subsistem web menyediakan fasilitas bagi member company untuk melihat data notification

SKPL-F-036 Subsistem web menyediakan fasilitas bagi member company untuk melihat panggilan baru


(62)

14

Kode SKPL Spesifikasi Kebutuhan Perangkat Lunak

SKPL-F-037 Subsistem web menyediakan fasilitas bagi member company untuk mengolah data panggilan

Kebutuhan Non Fungsional pada perangkat lunak yang dibangun dapat dilihat pada Tabel III-2 spesifikasi kebutuhan non fungsional.

Tabel III-2 spesifikasi kebutuhan non fungsional

Kode SKPL Spesifikasi Kebutuhan Perangkat Lunak

SKPL-NF-001 Sistem yang dibangun memiliki dua subsistem yaitu web dan mobile SKPL-NF-002 Sistem yang dibangun minimal menggunakan sistem operasi android

versi 4.0 Ice Cream Sandwich ke atas

SKPL-NF-003 Sistem yang dibangun menggunakan google map sebagai kebutuhan utama pada sistem

SKPL-NF-004 Sistem dibangun dengan spesifikasi hardware yang memenuhi standar minimum kebutuhan

SKPL-NF-005 Perangkat lunak yang dibangun dapat menampilkan lokasi pemegang aplikasi

SKPL-NF-006 Desain user interface pada perangkat lunak yang akan dibangun mengacu kepada design guidelines android dari google

SKPL-NF-007 Perangkat lunak yang dibangun harus menghasilkan format file standar (.json) yang bisa digunakan oleh pihak luar yang berkepentingan.

III.1.6 Analisis Kebutuhan Non Fungsional

Analisis kebutuhan non fungsional pada sistem ini meliputi analisis perangkat lunak, analisis perangkat keras dan perangkat pikir.

1. Product Requirement

Berikut adalah kebutuhan non fungsional berdasarkan klasifikasi product requirement.

1. SKPL-NF-001 Sistem yang dibangun memiliki dua subsistem yaitu web dan mobile.

2. SKPL-NF-002 Sistem yang dibangun minimal menggunakan sistem operasi android versi 4.0 Ice Cream Sandwich dan dibangun dengan dengan kebutuhan perangkat lunak minimum


(1)

Nazar Abdullah

Address : Cibeureum Tengah Jl. Goalpara No.146 RT 01/07 kecamatan Sukaraja, Kabupaten Sukabumi Phone : +6285863000651

Email : nazarabdullah1@gmail.com

Personal Information

Place & D.O.B : Sukabumi, May 30th 1992 Marital Status : Single

Religion : Moslem

Languages Known : Sunda, Indonesian, English

Formal Education

School or Campus Departments Years

Indonesia Computer University

Majoring Informatics Engineering

2010 – present

SMAN Teknologi plus padjadjaran

computer and network engineering

2007 – 2010

Mts Sunanul Huda 2004 – 2006

Mts Darul Muta’allimin 2006 – 2007


(2)

Projects Experience Web Application

 E-commerce Alami

 Geographic Information System of Campus  E-Learning Let’s Learn Tense

Mobile Application

 Social Media CaptureMoment  Social Media Hyjabs

 Social Media TrackL Skills

Operating System : Microsoft Windows XP

Microsoft Windows 7 Microsoft Windows Server Microsoft Windows 8 Pro 64bit Linux Ubuntu

Integrated Development Environtment : Dev C++

Adobe DreamWeaver CS5

Microsoft Visual Studio 2012 Ultimate Android Studio


(3)

Text Editor : Sublime Text 3 Notepad

Programming Language : HTML

CSS Javascript PHP

C / C++ / C# JAVA XML SQL

Framework : Codeigniter


(4)

(5)

(6)