• Tidak ada hasil yang ditemukan

Pembangunan Aplikasi Pengukuran Tinggi Objek Menggunakan Pendekatan Trigonometri Dengan Memanfaatkan Accelerometer Pada Sistem Operasi Android

N/A
N/A
Protected

Academic year: 2017

Membagikan "Pembangunan Aplikasi Pengukuran Tinggi Objek Menggunakan Pendekatan Trigonometri Dengan Memanfaatkan Accelerometer Pada Sistem Operasi Android"

Copied!
84
0
0

Teks penuh

(1)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

DENI ARIYANTO

10109372

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

(2)
(3)
(4)

Telp : 087823750905

Tempat lahir : Bandung

Tanggal Lahir : 17 November 1989

Jenis Kelamin : Pria

Agama : Islam

Kewarganegaraan : Indonesia

Alamat : Jl. Jantinegara Gg Philip No 174 Rt 10/02 Cicadas.

Pendidikan Formal

1. 1997 2003 : SD Jembar

2. 2003 2007 : Pondok Modern Gontor

3. 2007 2009 : MAN 2 Kota Bandung

4. 2009 2014 : Teknik Informatika - Universitas Komputer

(5)

v

ABTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ...viii

DAFTAR TABEL ... x

DAFTAR SIMBOL ... xi

DAFTAR LAMPIRAN ... xiv

BAB 1 PENDAHULUAN ... 1

1.5.2 Metode Pembangunan Perangkat Lunak ... 4

1.6 Sistematika Penulisan ... 5

2.4.1 Kelebihan dan Kekurangan Java ... 12

2.4.1.1 Kelebihan Java ... 12

2.4.1.2 Kekurangan Java ... 13

(6)

vi

2.7.1 Konsep Perancangan Berorientasi Objek ... 25

2.7.1.1 Unified Modelling Language ... 26

2.7.1.2 Use Case Diagram ... 26

2.7.1.3 Sequence Diagram ... 27

2.7.1.4 Activity Diagram ... 27

2.7.1.5 Class Diagram ... 27

2.8 Pengenalan Teorema Trigonometri ... 28

2.9 Pengukuran Kesalahan Peramalan MAD ... 30

2.10 Perancangan Kuesioner ... 32

BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 33

3.1 Analisis Sistem ... 33

3.1.1 Analisis Masalah ... 33

3.1.2 Analisis Metode ... 34

3.1.2.1 Analisis Sistem yang akan dibangun ... 34

3.1.2.2 Analisis Accelerometer ... 35

3.1.2.3 Analisis Metode Trigonometri ... 37

3.1.3 Analisis Kebutuhan Sistem ... 39

3.1.3.1 Analisis Kebutuhan Non Fungsional ... 40

3.1.3.2 Analisis Kebutuhan Fungsional ... 41

3.1.3.2.1 Use Case Diagram ... 42

(7)

vii

3.2.2 Perancangan Antarmuka ... 56

3.2.2.1 Perancangan Tampilan ... 56

3.2.2.2 Perancangan Pesan ... 58

3.2.2.3 Perancangan Jaringan Semantik ... 59

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 61

4.1 Implementasi ... 61

4.1.1 Implementasi Perangkat Lunak ... 61

4.1.2 Implementasi Perangkat Keras... 61

4.1.3 Implementasi Class... 62

4.1.4 Implementasi Antarmuka ... 63

4.1.31 Antarmuka Aplikasi Frontend ... 63

4.2 Pengujian ... 66

4.2.1 Pengujian Alphaa ... 66

4.2.2 Kasus dan Hasil Pengujian ... 67

4.2.2.1 Menghitung Kesalahan dengan MAD ... 68

4.2.3 Kesimpulan Alpha ... 68

4.2.4 Pengujian Beta ... 69

4.2.5 Kesimpulan Pengujian Beta ... 72

BAB 5 KESIMPULAN DAN SARAN ... 73

5.1 Kesimpulan ... 73

5.2 Saran ... 73

(8)

75

[1]. http://developer.android.com, Akses:28/05/2014, jam : 21.00 WIB.

[2]. Wahyu, Adhi Susanto, sasongko Pramono Hadi, wahyu Widada. Simulasi

Filter kalman untuk Estimasi Posisi dengan Menggunakan sensor

Accelerometer, Jurna Techo Science, UDINUS Semarang, 2009.

[3]. Bambang Hariyanto, Ir., MT. “Esensi-Esensi Bahasa Pemrograman JAVA”, Penerbit Infromatika-Bandung, 2003.

[4]. Nazruddin Safaat H. “Pemrograman Aplikasi Mobile Smartphone dan Tanblet PC Berbasis Android” Penerbit Informatika Bandung, 2012.

[5]. Munawar. “Pemodelan Visual Dengan UML”, Graha Ilmu, Yogyakarta,

2005.

[6]. Ismail Besari. “Matematika Universitas”, Armico, Bandung, 1980.

[7]. Santoso, Singgih 2009. Busness Forecasting Metode Peramalan Bisnis

Masa Kini dengan Minitab dan SPSS, PT Elex Media Komputindo,

Jakaerta

[8]. Sugiyono., 2010, Metode Penelitian Kuantitatif, kuantitatif Dan R&D,

(9)

iii Assalamu alaikum Wr. Wb,

Puji syukur penyusun panjatkan kehadiran Allah SWT yang telah

memberikan rahmat dan hidayahnya, sehingga penyusun dapat menyelesaikan

skripsi ini yang berjudul “PEMBANGUNAN APLIKASI PENGUKURAN

TINGGI OBJEK MENGGUNAKAN PENDEKATAN TRIGONOMETRI

DENGAN MEMANFAATKAN ACCELEROMETER PADA SISTEM

OPERASI ANDROID”

Serta sholawat dan salam semoga tetap tercurah kepada Nabi Muhammad

SAW, kepada keluarga, sahabatnya dan umatnya.

Skripsi ini merupakan syarat akademik dalam menyelesaikan pendidikan

pada program studi Teknik Informatika Universitas Komputer Indonesia

Bandung. Penyusun menyadari bahwa skripsi ini bisa selesai berkat bantuan

bimbingan dan nasehat dati berbagai pihak, untuk itu pada kesempatan ini

penyusun menyampaikan rasa hormat dan terima kasih yang sebesar-besarnya,

kepada yang terhormat:

1. Kedua orang tua kasih sayang dan doa’anya, serta telah memberikan

dorongan baik dari segi materil dan imateril.

2. Kakak dan seluruh keluarga yang penulis cintai.

3. Dr. Ir. Eddy Suryanto Soegoto, M.Sc, selaku Rektor Universitas

Komputer Indonesia Bandung

4. Prof. Dr. Ir Denny Kurniadie, M.Sc. selaku Dekan Fakultas Teknik

Dan Ilmu Komputer Universitas Komputer Indonesia.

5. Bapak Irawan Afrianto, S.T., M.T, selaku Ketua Prodi Sistem

Informasi Fakultas Teknik dan Ilmu Komputer Universitas Komputer

(10)

iv

telah banyak meluangkan waktu untuk memberikan petunjuk dan

pengarahan kepada penyusun.

8. Bapak Andri Heryandi. S.T., M.T. selaku Dosen Penguji 1 yang telah

menguji serta memberikan arahan kepada penyusun selama proses

penyusunan laporan skripsi ini.

9. Seluruh dosen Teknik Informatika yang telah memberikan banyak

ilmu yang berharga untuk penyusun.

10.Seluruh kawan-kawan IF-9 angkatan 2009 yang tidak bisa penyusun

sebutkan satu persatu, terima kasih kepada semuanya yang telah

memberikan segala bentuk bantuan untuk menyelesaikan skripsi ini.

11.Terima kasih kepada Dian Widiawati yang telah menerima dan

memberikan semangat.

12.Deni Febriyanto S, M Rizky S, Aril Syahril, Ryan Indrawan, Rico, M

Irfan dan sahabat terbaikku yang telah membantu dalam segala hal

Dengan segala kerandahan hati, penyusun menyadari bahwa skripsi ini

masih banyak kesalahan dan kekurangan, oleh karena itu penyusun mohom saran

dan kritikannya demi kesempurnaan didalam skripsi ini yang dapat dijadikan

pedoman bagi penulis khususnya dan pembaca pada umumnya.

Wassalamu’alaikum Wr.Wb.

Bandung,19 Agustus 2014

(11)

1

1.1Latar Belakang

Waterpass adalah suatu alat ukur tanah yang dipergunakan untuk

mengukur tinggi objek antara titik-titik saling berdekatan. Tinggi objek

tersebut ditentukan dengan garis-garis visir (sumbu teropong) horizontal yang

ditunjukan ke rambu-rambu ukur yang vertikal. Dan peralatan yang

digunakan dalam pengukuran waterpass ini adalah sebagai berikut: waterpass,

statip, unting-unting, payung, dua buah rambu ukur, meteran, paku, palu, cat

dan kuas kecil.

Pada penggunaan alat ukur waterpass selalu harus disertai dengan

rambu ukur (baak),yang terpenting dari rambu ukur adalah pembagian

skalanya harus betul-betul teliti untuk dapat menghasilkan pengukuran yang

baik. Di samping itu cara memegangnya pun harus betul-betul tegak (vertikal)

dan tidak sembarang orang dapat melakukan pengukuran dengan tepat,

kemudian pengamat pulang pergi untuk mencatat hasil pembacaan rambu

ukur yang minimum.

Dalam melakukan pengukuran kemungkinan terjadi kesalahan

pastilah ada dimana sumber kesalahan atau permasalahan tersebut, antara

lain: kurangnya ketelitian mata dalam pembacaan alat waterpass, adanya

angin yang membuat rambu ukur terkena hembusan angin, sehingga tidak

dapat berdiri dengan tegak yang dapat membuat pita akur menjadi susah

diluruskan.

Dengan majunya perkembangan teknologi komunikasiseperti ponsel

sekarang ini, kini fungsi ponsel bukan hanya sebagai alat komunikasi.

Dengan adanya penambahan beberapa alat dan fungsi-fungsi kedalam ponsel

memungkinkan penggunaannya akan menjadi lebih luas. Hampir setiap

ponsel sekarang ini sudah dilengkapi dengan fitur kamera yang memiliki

(12)

juga dengan halnya ponsel berbasis Android, dengan memanfaatkan kamera

dan sensor Accelerometer yang ada pada ponsel berbasis Android.

Accelerometer digunakan sebagai alat bantu untuk mengukur jarak

kemiringan antara ponsel terhadap objek yang akan dituju. Dengan

mengetahui berapa besar sudut yang dihasilkan antara jarak ponsel dan objek

yang dituju maka penghitungan terhadap ketinggian objek pun dapat

dilakukan dengan memanfaatkan rumus trigonometri dalam menemukan

hasilnya, sehingga ketinggian suatu objek pun dapat diketahui.

Berdasarkan permasalahan di atas, akan dibuat aplikasi mobile yang

dapat digunakan untuk membantu mengukur tinggi objek yang ingin

diketahui tanpa memerlukan alat tambahan dan menghemat waktu dalam

mencari tinggi objek.

Dengan didasari uraian dan latar belakang masalah tersebut maka

tertarik untuk membuat suatu aplikasi mobile dengan mengangkat topik yang

berjudul “PEMBANGUNAN APLIKASI PENGUKURAN TINGGI

OBJEK MENGGUNAKAN PENDEKATAN TRIGONOMETRI

DENGAN MEMANFAATKAN ACCELEROMETER PADA SYSTEM OPERASI ANDROID”, dengan harapan agar dapat membantu setiap pekerjaan yang berhubungan dalam mengukur tinggi objek, terutama para

pekerja bangunan yang ingin mencari tinggi benda tanpa perlu alat bantu dan

mempersingkat waktu yang digunakan dalam penghitungan karena sistem

perhitungan telah dimasukkan ke dalam program aplikasi.

1.2Rumusan Masalah

Dalam pembuatan aplikasi ini ada beberapa hal dan masalah yang

harus diperhatikan, antara lain:

1. Bagaimana membuat alat bantu untuk mengukur tinggi objek

(13)

1.3Maksud dan Tujuan Penelitian

1.3.1 Maksud Penelitian

Maksud dari pembuatan skripsi ini adalah untuk membuat sebuah

aplikasi mobile phone yang dapat mengukur tinggi objek dengan

memanfaatkan Accelerometer pada System Operasi Android dan rumus

Trigonometri.

1.3.2 Tujuan Penelitian

Sedangkan tujuan yang dicapai untuk penelitian ini adalah:

1. Mempermudah dalam pengukuran ketinggian objek

2. Mengetahui keakuratan tinggi objek

1.4Batasan Masalah

Dalam pembahasan lebih lanjut maka permasalahan yang akan dikaji

dibatasi terlebih dahulu, agar tidak menimbulkan terlalu luasnya penafsiran

mengenai permasalahan dan pembahasan, sebagai berikut:

1. Objek yang dijadikan ilustrasi adalah tinggi bangunan, tinggi lemari,

tinggi pintu, tinggi kulkas.

2. Metode pengembangan perangkat lunak dilakukan dengan cara

Object Oriented dan Tools yang digunakan yaitu UML (Unified

Modeling Language) dalam menggambarkan model fungsional dan

diagram-diagram yang digunakan yaitu Use Case Diagram, Class

Diagram, Sequence Diagram, Acrivity Diagram.

3. Penggunaan aplikasi ini hanya diperuntukan bagi para pengguna

mobile phone android versi froyo hingga versi yang terbaru.

4. Aplikasi ini hanya untuk mengukur tinggi objek.

5. Metode yang digunakan pada proses penghitungan tinggi bangunan

yaitu metode trigonometri.

6. Pada system operasiandroid harus terdapat Accelerometer

(14)

1.5Metodelogi Penelitian

Metodelogi penelitian merupakan suatu proses yang digunakan untuk

memecahkan suatu masalah yang logis. Dalam pembuatan tugas akhir ini

digunakan metode penelitian deskripsif yang menggambarkan fakta-fakta dan

informasi secara sistematis, faktual, dan akurat. Metode penelitian ini

memiliki dua tahapan penelitian, yaitu metode pengumpulan data dan metode

pembangunan perangkat lunak

1.5.1 Metode Pengumpulan Data

Metode pengumpulan data yang digunakan dalam penelitian ini

adalah sebagai berikut:

1. Studi Literatur

Pengumpulan data dengan cara mengumpulkan literatur, jurnal,

paper dan bacaan-bacaan yang ada kaitannya dengan judul

penelitian.

2. Observasi

Teknik pengumpulan data dengan mengadakan peninjauan langsung

terhadap permasalahan yang diambil.

1.5.2 Metode Pembangunan Perangkat Lunak

Metodologi yang akan digunakan adalah metodologi waterfall,

penelitian ini terdiri dari langkah-langkah berikut:

1. Analysis

Merupakan tahap menganalisis hal-hal yang berkaitan dengan

penelitian dan mengumpulkan bahan-bahan yang diperlukan dalam

pembangunan sistem secara rinci

2. Desain

Tahap penerjemahan dari data yang dianalisis kedalam bentuk yang

mudah dimengerti oleh pengguna.

3. Coding

Tahap penerjemahan data atau pemecahan masalah yang telah

dirancang kedalam bahasa pemrograman tertentu.

(15)

Merupakan tahapan pengujian terhadap perangkat lunak yang

dibangun

5. Maintenance

Tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat

mengalami perubahan-perubahan atau penambahan sesuai dengan

permintaan pengguna

Gambar 1.1 Waterfall Model

1.6Sistematika Penulisan

Sistematika penulisan tugas akhir ini disusun untuk memberikan

gambaran umum tentang penelitian yang dijalankan. Sistematika

penulisan tugas akhir ini adalah sebagai berikut:

BAB I PENDAHULUAN

Bab ini berisi latar belakang masalah,rumusan masalah, maksud

dan tujuan penelitian, batasan masalah, metodologi penelitian

dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini membahas teori penunjang yang berhubungan dengan

pemrograman android dan pengukuran ketinggian objek dengan

(16)

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab ini membahas tentang desain dan sistem yang akan dibuat

meliputi: Lingkungan pengembangan program, Analisis,

Perancangan sistem, Rancangan tampilan aplikasi, dan UML.

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisi kelebihan/keunggulan program, pengujian program,

serta analisis hasil pengujian untuk mengetahui efektifitas dari

Aplikasi

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dari hasil uji coba yang dilakukan serta

(17)

7

Menurut berbagai sumber, sensor didefinisikan sebagai berikut:

1. Menurut Kenny “Sensor adalah perangkat yang mengubah suatu

properti fisik menjadi sebuah sinyal elektronik”[2]

2. Menurut Zook, Bonne & Samad “Sensor adalah perangkat yang

merubah rangsangan fisik atau masukan menjadi keluaran yang dapat dibaca”[2]

2.2Sensor Accelerometer

Accelerometermodern tidak lain adalah MEMS (micro electro mechanical system) berskala kecil. Accelerometer adalah suatu alat untuk

mengukur percepatan, mendeteksi dan mengukur getaran, atau untuk mengukur percepatan gravitasi (inklinasi)” [2].

Pengukurannya bisa secara analog maupun digital. Accelerometer

dapat digunakan untuk mengukur percepatan baik statis maupun dinamis.

Accelerometer akan mengalami percepatan dalam kisaran dari -1g sampai

+1g (9.8m/s2), dan hingga kemiringan 180°.

Pada smartphoneAccelerometer merupakan sensor yang bisa

membaca pergerakan sehingga dapat mengubah tampilan layar dari

posisilandscape ke portrait atau sebaliknya dengan cukup memiringkan

badan ponsel secara otomatis. Sensor Accelerometer terlihat pada Gambar 2.2

:

(18)

Jenis – jenis Accelerometer:

a. Kapasitif

Teknologi yang digunakan lempengan logam atau mesin mikro

yang menghasilkan kapasitansi. Perubahan kapasitansi berkaitan

dengan percepatan.

b. Piezoelektrik

Teknologi yang digunakan kristal piezoelektrik yang sensitif

terhadap percepatan (tekanan) dan mengubahnya menjadi muatan

listrik.

c. Piezoresistif

Teknologi yang digunakan lempeng atau mesin mikro yang tahan

terhadap perubahan percepatan.

d. Hall Effect

Teknologi yang digunakan gerakan diubah jadi sinyal listrik

dengan mengukur perubahan yang terjadi pada medan magnet.

e. Magnetoresistive

Teknologi yang digunakan resistivitas dari material yang berubah

ketika berada di medan magnet.

f. Head transfer

Teknologi yang digunakan lokasi dari material yang mengalami

perubahan suhu dilacak selama terjadi percepatan dengan

mengukur temperatur.

Accelerometer dapat diimplementasikan pada beberapa bidang

Salah satu pengguaan Accelerometer yang sangat umum yaitu dalam sistem

airbag yang terdapat pada kendaraan, khususnya mobil. Accelerometer ini

digunakan untuk mendeteksi penurunan percepatan yang sangat besar yang

biasanya terjadi ketika terjadinya tabrakan antar kendaraan.

Sport Watch, berupa jam tangan olahraga yang juga dapat menghitung

berapa banyak langkah yang telah lakukan, Accelerometer juga digunakan

untuk menghitung kecepatan dan jarak dari si pelari yang menggunakannya.

(19)

percepatan dari sebuah kendaraan. Accelerometer membantu untuk

mengevaluasi performansi dari mesin dan sistem percepatan dan juga breaking

system (sistem penurunan percepatan).

Kecepatan yang biasa ditampilkan pada kendaraan anda umumnya

didapatkan dari penggunaan Accelerometer. Selain itu juga biasa digunakan

untuk menghitung vibrasi pada kendaraan, mesin, bangunan, dan sistem

keamanan pada kendaraan (safety installation). Accelerometer juga dapat

mengkalkulasi percepatan yang diakibatkan oleh gravitasi bumi. Accelerometer

yang menghitung gravitasi secara spesifik digunakan pada gravimetry, disebut

sebagai gravimeter. Notebook atau laptop juga dilengkapi dengan

Accelerometer untuk mengevaluasi goncangan yang dirasakan oleh laptop

tersebut.

Accelerometer pada laptop biasanya digunakan pada sistem Sudden

Motion Sensor, yang biasa digunakan untuk mendeteksi jatuhnya laptop. Jika

kondisi pada saat jatuh terdeteksi, hard diskdrive yang ada akan diproteksi

sehingga tidak terjadi data loss. Sekarang ini juga terdapat notebook yang

menggunakan Accelerometer untuk secara otomatis mengubah arah layar

(menjadi miring ataupun terbalik) sesuai dengan arah monitor tersebut

ditegakkan (portrait atau landscape).

Terdapat juga sejumlah ponsel yang menggunakan Accelerometer untuk

mengubah lagu yang dimainkan (Track Switching). Camera recorder

menggunakan Accelerometer untuk menstabilkan gambar. Kamera digital

menggunakan Accelerometer untuk menu pilihan anti blur ketika mengambil

gambar. Baru-baru ini Apple.Inc memperkenalkan sebuah gebrakan dengan

mengkombinasikan 2 sensor gerakan yaitu antara Accelerometer

dan Gyroscope pada sebuah perangkat ponsel. Ini akan menyempurnakan fitur

dari ponsel yang hanya menggunakan Accelerometer dalam mendeteksi

gerakan. Dengan kombinasi ini maka akan didapatkan 6 sumbu gerakan yaitu 3

sumbu linier (atas-bawah, kanan-kiri, depan-belakang) dan 3 sumbu rotasi

(rotasi roll,pitch and yaw seperti pada gambar 2). 1 keunggulan lagi dari

(20)

gerakannya lebih halus dari pada perangkat ponsel yang hanya menggunakan

Accelerometer.[2]

Memilih Portrait dan Landscape Mode

Penggunaan volume tinggi pertama accelerometer dalam produk

konsumen adalah untuk beralih tampilan antara orientasi landscape dan

portrait. Sebuah tablet PC, yang ditunjukkan pada Gambar 2.2, memiliki empat

kemungkinan orientasi layar berlabel di sini sebagai Bawah, Atas, Kanan dan

Kiri, menurut lokasi tepi bawah teks atau citra yang ditampilkan.

Gambar 2. 2Portrait dan Landscape Layar Orientasi

Masalah ini agak lebih kompleks dari itu akan muncul pada pandangan

pertama sejak pemetaan langsung antara orientasi layar dan membaca

accelerometer tidak ergonomis cocok. Secara khusus, pengguna melihat layar

dalam salah satu dari empat mode yang ditunjukkan pada Gambar 8

mengharapkan bahwa mode tampilan tetap tidak berubah sebagai tablet diputar

ke orientasi datar. Pembacaan accelerometer yang dihasilkan dari tablet yang

datar di atas meja sehingga dapat dikaitkan dengan salah satu dari empat

(21)

Solusinya adalah mesin negara sederhana di mana pembacaan

accelerometer mengarah ke transisi antara orientasi layar daripada langsung

mendefinisikan orientasi layar. Sederhana aturan transisi keadaan tercantum

di bawah ini.

1.(|Gpz|< 0.5g)dan(|Gpx|< 0.5g)dan(|Gpy|< 0.4g) : orientasikeatas

2.(|Gpz|< 0.5g)dan(|Gpx|<-0.5g)dan(|Gpy|< 0.4g) : orientasikebawah

3.(|Gpz|< 0.5g)dan(|Gpy|< 0.5g)dan(|Gpx|< 0.4g) : orientasikekanan

4.(|Gpz|< 0.5g)dan(|Gpy|<-0.5g)dan(|Gpx|< 0.4g) : orientasikekiri

Pada smartphone berbasis android terdapat sensor manager yang

berfungsi untuk mengaktifkan sensor accelerometer dalam mencari nilai

koordinat x,y,z dengan memiringkan handphone

Tabel 2. 1 Sensor Manager

sensorManager=(SensorManager)getSystemService(SENSOR_SERVICE);

sensor=sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);

sensorManager.registerListener(new SensorEventListener() {

@Override

publicvoid onSensorChanged(SensorEvent event) {

currentX=event.values[0];

currentY=event.values[1];

currentZ=event.values[2];

Log.d("X,Y,Z", String.valueOf(round(currentX))+", "+round(currentY)+", "+round(currentZ));

}

Jika sensor accelerometer telah diaktifkan maka dapat mencari nilai

koordinat kemiringan dimana values [0] untuk nilai currentX dan values [1]

untuk nilai currentY dan values [2] untuk nilai currentZ

2.3Handphone

Telepon seluler (ponsel) atau telepon genggam (telgam) atau

handphone(HP) atau disebut pula adalah perangkat telekomunikasi elektronik

yang mempunyai kemampuan dasar yang sama dengan telepon konvensional

saluran tetap, namun dapat dibawa ke mana-mana (portable, mobile) dan tidak

(22)

wireless). Saat ini Indonesia mempunyai dua jaringan telepon nirkabel yaitu

sistem GSM (Global System for Mobile Telecommunications) dan sistem

CDMA (Code Division Multiple Access). Badan yang mengatur

telekomunikasi seluler Indonesia adalah Asosiasi Telekomunikasi Seluler

Indonesia (ATSI)

2.4Java

Bahasa Java dikembangkanoleh Sun Microsystem tahun 1991 sebagai

bagian dari suatu proyek penelitian untuk mengembangkan software bagi

konsumer barang-barang elektronik seperti televise, VCR, toaster dan mesin-

mesin lainnya yang dapat dibeli di swalayan. Tujuan penciptaan Java pada

waktu itu adalah menjadi suatu program yang berukuran kecil, efisien, dan

portable di segala jenis hardware. Tujuan yang sama ini membuat Java

menjadi satu bahasa yang ideal untuk mendistribusikan program – program

yang dapat dijalankan melalui www dan juga suatu bahasa pemrograman untuk

segala tujuan untuk mengembangkan program – program yang dapat

digunakan dengan mudah dan portable di berbagai platform yang berbeda.[3]

Saat ini distribusi Java dan kelas pendukungnya dibagi dalam tiga

bagian yang masing-masing memiliki konsentrasi tersendiri yaitu:

1. Java 2 Standart Edition (J2SE), untuk aplikasi desktop

2. Java 2 Enterprise Edition (J2EE), untuk aplikasi server

3. Java 2 Micro Edition (J2ME), untuk piranti dengan kemampuan

terbatas

2.4.1 Kelebihan dan Kekurangan Java

Setelah membahas mengenai pengertian java, kemudian akan

membahas mengenai kelebihan dan kekurangan java.

2.4.1.1 Kelebihan Java

Kelebihan Java yang pertama tentu saja multi platform. Java dapat

dijalankan dalam beberapa platform komputer dan sistem operasi yang

(23)

Yang kedua adalah OOP (Object Oriented Programming). Java memiliki

library yang lengkap. Library disini adalah sebuah kumpulan dari program

yang disertakan dalam Java. Hal ini akan memudahkan pemrograman

menjadi lebih mudah. Kelengkapan library semakin beragam jika ditambah

dengan karya komunitas Java. Setiap hal pasti memiliki kelebihan dan

kekurangan.

2.4.1.2 Kekurangan Java

Kekurangan Java yang adalah penggunaan memori yang cukup

banyak, lebih besar daripada bahasa tingkat tinggi sebelum generasi Java.

Namun hal ini memang sesuai dengan fitur beragam yang dimiliki oleh Java.

Masalah memori ini juga tidak dialami oleh semua pengguna aplikasi Java.

yang sudah menggunakan perangkat keras dengan teknologi terbaru tidak

merasakan kelambatan dan konsumsi memori Java yang tinggi. Lain halnya

dengan yang menggunakan teknologi lama atau komputer yang sudah

berumur tua lebih. Namun apapun kelemahan yang dimiliki Java, faktanya

adalah Java merupakan bahasa pemrograman yang populer dan digunakan di

seluruh dunia saat ini.

2.5Android

Android adalah sistem operasi untuk telepon seluler yang berbasis

Linux. Android menyediakan platform terbuka bagi para pengembang untuk

menciptakan aplikasi mereka sendiri dan untuk digunakan oleh bermacam

peranti bergerak (mobile device). Hal ini memungkinkan para pengembang

menulis kode terkelola (managed code) dalam bahasa pemrograman Java,

mengontrol peranti via perpustakaan Java yang dikembangkan Google.

Android merupakan subset perangkat lunak untuk perangkat mobile yang

meliputi sistem operasi, middleware, dan aplikasi inti yang di release oleh

Google. Sedangkan Android SDK (Software Development Kit) menyediakan

Tools dan API yang diperlukan untuk Aplikasi Android nantinya tidak akan

(24)

sebuah virtual machine yang khusus dirancang untuk digunakan pada sistem

embedded mengembangkan aplikasi pada platform Android dengan

menggunakan bahasa pemograman Java.[4]

Android memiliki berbagai fitur seperti :

a. Framework Aplikasi yang mendukung penggantian komponen dan

reusable

b. Mesin virtual Dalvik dioptimalkan untuk perangkat mobile

c. Integrated browser berdasarkan engine open source WebKit

d. Grafts yang dioptimalkan dan didukung oleh library grafis 2D,

grafis 3D berdasarkan spesifikasi OpenGL

e. SQLite untuk penyimpanan data

f. Media support yang mendukung audio, video dan berbagai format

gambar (MPEG4,MP3, AAC, AMR, JPG,PNG,GIF)

g. GSM, Bluetooth, EDGE, 3G dan WiFi (hardware dependent)

h. Kamera, GPS, Kompas dan Accelerometer

i. Lingkungan Development yang lengkap dan kaya termasuk

perangkat emulator, tools untuk debugging, serta plugin untuk

Eclipse IDE.

Selain itu menggunakan Android sebagai Operasi Sistemnya memiliki

biaya lisensi lebih murah dan sifatnya yang semi open source. Tidak hanya

itu, Android tentunya akan support dengan berbagai layanan dari Google.

2.5.1 Karakteristik Android

Andorid merupakan subset perangkat lunak untuk perangkat mobile

yang meliputi sistem operasi, middleware, dan aplikasi init yuang di-release

oleh Google. Pada tulisan sebelumnya, kita mengenal SDK (Software

Development Kit). SDK adalah suatu tools dan API yang diperlukan untuk

mengembangkan aplikasi pada platform atau linkungan Android.

Pengembangan aplikasi Android menggunaka bahasa pemrograman Java.

Seperti kita ketahui, SDK ini dikembangkan oleh OHA (Open Handsate

(25)

T-Mobile, dan NVIDIA. SDK dapat kita gunakan pada beberapa IDE

(Integrated Development and Environment) – software untuk membuat suatu

program – akan tetapi, pada tulisan selanjutnya, saya akan menggunakan

Eclipse karena OHA secara resmi membuat plugin untuk IDE Eclipse.

2.5.2 Arsitektur Android

Arsitektur Android menunjukkan komponen-komponen utama yang

terdapat pada sistem operasi Android. Berikut ini arsitektur Android:

Gambar 2.3 Arsitektur Android

1. Linux Kernel

Android bukan Linux, akan tetapi Android dibangun diatas Linux

Kernel, yaitu versi 2.6 sehingga kehandalannya bisa dipercaya.

Untuk inti sistem service Linux yang digunakan seperti

keamanan, manajemen memori, proses manajemen, network, dan

driver model. Seperti yang terlihat digambar (Gambar II.3), Linux

Kernel menyediakan Driver Layar, Kamera, Keypad, WiFi, Flash

(26)

mengatur aplikasi dan keamanan. Kernel juga bertindak sebagai

lapisan abstrak antara hardware dan software stack-nya.

2. Libraries

Android menyertakan libraries C/C++ yang digunakan

oleh berbagai komponen dari sistem Android. Kemampuan ini

disediakan kepada Developer aplikasi melalui Framework

Aplikasi Android. Beberapa inti libraries tercantum dibawah ini:

a. System C Library – Variasi dari implementasi BSD-berasal

pelaksana sistem standar C library (libc), sesuai untuk

perangkat embedded berbasis Linux.

b. Media Libraries PacketVideo berdasarkan OpenCORE;

library medukung pemutaran rekaman dan populer banyak

format audio dan video, serta file gambar, termasuk

MPEG4, H.264, MP3, AAC, AMR, JPG, dan PNG.

c. Surface Manager – mengelola akses ke subsistem layar,

lapisan komposit 2D dan grafis 3D dari beberapa aplikasi.

d. LibWebCore – mesin web modern yang powerfull yang

baik browser Android embedded web.

e. 3D Libraries – sebuah pelaksana berdasarkan openGL ES

1,0 API; perpustakaan baik menggunakan perangkat keras

akselerasi 3D (apabila tersedia) atau yang disertakan, sangat

optimal 3D software rasterizer.

f. FreeType – bitmap dan vektor font rendering.

g. SQLite – mesin database yang kuat dan ringan, dan

penghubung tersedia untuk semua aplikasi

3. Android Runtime

Android terdiri dari satu set core libraries yang

menyediakan sebagian besar fungsi yang sama dengan yang

(27)

aplikasi menjalankan prosesnya sendiri dalam Android, dengan

masing-masing instan dari mesin virtual Dalvik (Dalvik VM).

Dalvik dirancang agar perangkat dapat menjalankan multiple

VMs secara efisien. Mesin Virtual Dalvik mengeksekusi file

dalam Dalvik executable (.dex), sebuah format yang dioptimalkan

untuk memori yang kecil.

4. Framework Aplikasi

Pengembang memiliki akses penuh menuju API

framework yang sama dengan yang digunakan oleh aplikasi inti.

Arsitektur aplikasi dirancang agar komponen dapat digunakan

kembali (reuse) dengan mudah. Setiap aplikasi dapat

memanfaatkan kemampuan ini (sesuai dengan batasan keamanan

yang didefinisikan oleh framework). Mekanisme yang sama

memungkinkan komponen untuk diganti oleh pengguna.

Semua aplikasi merupakan rangkaian set layanan dan

sistem, termasuk:

a. Views yang kaya dan extensible yang dapat digunakan

untuk membangun aplikasi, termasuk list, grids, kotak teks,

tombol, dan bahkan sebuah embedded web.

b. Content Provider yang memungkinkan aplikasi untuk

mengakses data (seperti dari daftar kontak telepon) atau

membagi data tersebut.

c. Resource Manager, yang menyediakan akses ke kode

nonsumber lokal seperti string, gambar, dan tata letak file.

d. Notifications Manager yang memungkinkan semua aplikasi

menampilkan alert yang bisa dikostumisasi di dalam status

bar.

e. Activity Manager yang mengelola siklus hidup aplikasi dan

menyediakan navigasi umum backstack.

(28)

Android telah menyertakan aplikasi inti seperti email

client, SMS, kalender, peta, browser, kontak, dan lainnya. Semua

aplikasi tersebut ditulis dengan menggunakan bahasa

pemrograman Java. Pada layer inilah developer atau kita

menempatkan aplikasi yang dibuat. Yang istimewa adalah pada

Android semua aplikasi baik aplikasi inti (native) maupun

aplikasi pihak ketiga berjalan pada layer aplikasi dengan

menggunakan library API yang sama. Ini berarti semua aplikasi

yang dibuat untuk Android akan memiliki akses yang setara

dalam mengakses seluruh kemampuan handset, tanpa

membedakan apakah itu merupakan aplikasi inti atau aplikasi

pihak ketiga. Dalam kata lain dengan platform Android ini,

Programmer atau Developer secara penuh akan bisa

mengkostumisasi perangkat Androidnya.[4]

2.5.3 Perkembangan Android

Android telah banyak melakukan perkembangan, berikut adalah

perkembangan dari android:

a. Android versi 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.

b. Android versi 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

(29)

A2DP, kemampuan terhubung secara otomatis ke headset

Bluetooth, animasi layar, dan keyboard pada layar yang dapat

disesuaikan dengan sistem.

c. Android versi 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; CDMA / EVDO, 802.1x, VPN,

Gestures, dan Text-to-speech engine; kemampuan dial kontak;

teknologi text to change speech (tidak tersedia pada semua

ponsel; pengadaan resolusi VWGA.

d. Android versi 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.

Untuk bergerak cepat dalam persaingan perangkat generasi

berikut, Google melakukan investasi dengan mengadakan

kompetisi aplikasi mobile terbaik (killer apps - aplikasi

unggulan). Kompetisi ini berhadiah $25,000 bagi setiap

pengembang aplikasi terpilih. Kompetisi diadakan selama dua

tahap yang tiap tahapnya dipilih 50 aplikasi terbaik.

e. Android versi 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

(30)

engine yang dipakai Google Chrome yang mempercepat

kemampuan rendering pada browser, pemasangan aplikasi dalam

SD Card, kemampuan WiFi Hotspot portabel, dan kemampuan

auto update dalam aplikasi Android Market.

f. Android versi 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.

g. Android versi 3.0/3.1 (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. Perangkat tablet dengan platform Android 3.0

akan segera hadir di Indonesia. Perangkat tersebut bernama Eee

Pad Transformer produksi dari Asus. Rencana masuk pasar

Indonesia pada Mei 2011.

h. Android versi 4.0 (ICS :Ice Cream Sandwich)

Diumumkan pada tanggal 19 Oktober 2011, membawa

fitur Honeycomb untuk smartphone dan menambahkan fitur baru

termasuk membuka kunci dengan pengenalan wajah, jaringan

data pemantauan penggunaan dan kontrol, terpadu kontak

(31)

secara offline, dan berbagi informasi dengan menggunakan

NFC.[4]

2.5.4 Kelebihan Android

Sudah banyak platform untuk perangkat selular saat ini, termasuk

didalamnya Symbian, iPhone, Windows Mobile, BlackBerry, Java

Mobile Edition, Linux Mobile (LiM), dan banyak lagi. Namun ada

beberapa hal yang menjadi kelebihan Android. Walaupun beberapa

fitur-fitur yang ada telah muncul sebelumnya pada platform lain, Android

adalah yang pertama menggabungkan hal seperti berikut:

1. Keterbukaan, Bebas pengembangan tanpa dikenakan biaya

terhadap system karena berbasiskan Linux dan open source.

Pembuat perangkat menyukai hal ini karena dapat membangun

platform yang sesuai yang diinginkan tanpa harus membayar

royality. Sementara pengembang software menyukai karena

android dapat digunakan diperangkat manapun dan tanpa terikat

oleh vendor manapun.

2. Arsitektur komponen dasar android terinspirasi dari teknologi

internet Mashup. Bagian dalam sebuah aplikasi dapat digunakan

oleh aplikasi lainnya, bahkan dapat diganti dengan komponen lain

yang sesuai dengan aplikasi yang dikembangkan.

3. Banyak dukungan service, kemudahan dalam menggunakan

berbagai macam layanan pada aplikasi seperti penggunaan

layanan pencarian lokasi, database SQL, browser dan penggunaan

peta. Semua itu sudah tertanam pada android sehingga

memudahkan dalam pengembangan aplikasi.

4. Siklus hidup aplikasi diatur secara otomatis, setiap program

terjaga antara satu sama lain oleh berbagai lapisan keamanan,

sehingga kerja system menjadi lebih stabil. Pengguna tak perlu

kawatir dalam menggunakan aplikasi pada perangkat yang

(32)

5. Dukungan grafis dan suarat terbaik, dengan adanya dukungan 2D

grafis dan animasi yang diilhami oleh Flash menyatu dalam 3D

menggunakan OpenGL memungkinkan membuat aplikasi

maupun game yang berbeda.

6. Portabilitas aplikasi, aplikasi dapat digunakan pada perangkat

yang ada saat ini maupun yang akan datang. Semua program

ditulis dengan menggunakan bahas pemrograman Java dan

dieksekusi oleh mesin virtual Dalvik, sehingga kode program

portabel antara ARM, X86, dan arsitektur lainnya. Sama halnya

dengan dukungan masukan seperti penggunaan Keyboard, layar

sentuh, trackball dan resolusi layar semua dapat disesuaikan

dengan program.

2.5.5 Kekurangan Android

Tak bisa dipungkiri disamping kelebihan tentu saja ada kekurangan

dari sistem operasi ini.

1. Koneksi Internet yang terus menerus – Yups, kebanyakan ponsel

berbasis system ini memerlukan koneksi internet yang simultan alias

terus menerus aktif.Koneksi internet GPRS selalu aktif setiap waktu, itu

artinya Anda harus siap berlangganan paket GPRS yang sesuai dengan

kebutuhan.

2. Iklan – Aplikasi di Ponsel Android memang bisa didapatkan dengan

mudah dan gratis, namun konsekuensinya di setiap Aplikasi tersebut,

akan selalu Iklan yang terpampang, entah itu bagian atas atau bawah

aplikasi.

2.6Eclipse

Eclipse adalah sebuah IDE (Integrated Development Environment)

untuk mengembangkan perangkat lunak dan dapat dijalankan di semua

platform (platform-independent). Berikut ini adalah sifat dari Eclipse:[6]

1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft

(33)

2. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman

Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis

bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP,

dan lain sebagainya.

3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse

pun bisa digunakan untuk aktivitas dalam siklus pengembangan

perangkat lunak, seperti dokumentasi, test perangkat lunak,

pengembangan web, dan lain sebagainya.

4. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan

gratis dan open source, yang berarti setiap orang boleh melihat kode

pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse

yang membuatnya populer adalah kemampuannya untuk dapat

dikembangkan oleh pengguna dengan komponen yang dinamakan

plug-in.[3]

2.6.1 Arsitektur Eclipse

Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel,

yang mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse

sebenarnya adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan

basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini

adalah komponen yang membentuk RCP:

a. Core platform

b. OSGi

c. SWT (Standard Widget Toolkit)

d. JFace

e. Eclipse Workbench

Secara standar Eclipse selalu dilengkapi dengan JDT (Java

Development Tools), plug-in yang membuat Eclipse kompatibel untuk

mengembangkan program Java, dan PDE (Plug-in Development

Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-in

(34)

Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas

(extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik[4]. Jadi,

Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat

digunakan untuk berbagai macam keperluan, cukup dengan menginstal

plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++

terdapat plug-in CDT (C/C++ Development Tools).

Selain itu, pengembangan secara visual bukan hal yang tidak

mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat diagram

UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai

dengan keinginannya.

2.6.2 Android SDK

Android SDK adalah tools API (Application Programming

Interface) yang diperlukan untuk mulai mengembangkan aplikasi pada

platform android menggunakan bahasa pemrograman Java. Android

merupakan subset perangkat lunak untuk ponsel yang meliputi sistem

operasi, middleware dan aplikasi kunci yang di release oleh Google. Saat ini

disediakan Android SDK (Software Development Kit) sebagai alat bantu dan

API untuk mulai mengembangkan aplikasi pada platform android

menggunakan bahasa pemrograman Java. Sebagai platform aplikasi-netral,

android member anda kesempatan unutk membuat aplikasi yang kita

butuhkan yang bukan merupakan aplikasi bawaan Hadphone/Smartphone.

Beberapa fitur-fitur android yang paling penting adalah:[4]

a.Framework : aplikasi yang mendukung pengganti komponen dan

reusable.

b.Dalvik Virtual Machine dioptimalkan untuk perangkat mobile

c.Integrated Browser verdasarkan engine open source WebKit.

d.Grafis yang dioptimalkan dan didukung oleh libraries grafis 2D,

grafis 3Dberdasarkan spesifikasi opengl ES 1,0 (Opsional Ekselerasi

hardware)

(35)

f. Media Support yang mendukung audio, video, dan gambar (MPEG4,

H.264, MP3, AAC, AMR, JPG, PING, GIF), GSM Telephony

(tergantung Hardware)

g.Bluetooth, EDGE, 3G, dan WiFi (tergantung hardware)

h.Kamera, GPS, Kompas, dan Accelerometer (tergantung hardware)

i. Lingkungan Development yang lengkap dan termasuk pernagkat

emulator, tools untuk debugging, profil dan kinerja memori, dan

plugin untuk IDE Eclipse.

2.6.3 Android Development Tools (ADT)

Android Development Tools (ADT) adalah plugin untuk Eclipse

Intergrated Development Environment (IDE) yang dirancang untuk

memberikan lingkungan yang terpadu di mana untuk membangun aplikasi

Android. ADT memperluas kemampuan Eclipse untuk membiarkan para

developer lebih cepat dalam membuat proyek baru Android, membuat

aplikasi UI, menambahkan komponen berdasarkan Android Framework API,

debug aplikasi dalam pengunaan Android SDK, dan membuat file APK untuk

mendistribusikan aplikasi[4]

2.7Tools-Tools yang digunakan

2.7.1 Konsep Perancangan Berorientasi Objek

Teknologi objek menganalogikan sistem aplikasi seperti kehidupan

yang didominasi oleh objek. Didalam membangun sistem berorientasi objek

akan mendaji lebih baik apabila langkah awalnya didahului dengan proses

analisis dan perancangan yang berorientasi objek. Tujuannya adalah

mempermudah programmer didalam mendesain program dalam bentuk

objek-objek dan hubungan antara objek-objek tersebut untuk kemudian dimodelkan dalam

sistem nyata.

Suatu perusahaan software yaitu Rational Software, telah membentuk

(36)

Modelling Language (UML) sebagai bahasa standar dalam Objak Oriented

Analysist Design (OOAD).[5]

2.7.1.1 Unified Modelling Language

UML (Unified Modelling Language) adalah salah satu alat bantu yang

sangat handal di dunia pengembangan sistem yang berorientasi obyek. Hal ini

disebabkan UML menyediakan bahasa pemodelan visual yang

memungkinkan bagi pengembang sistem untuk membuat cetak biru atas visi

mereka dalam bentuk yang baku, mudah dimengerti serta dilengkapi dengan

mekanisme yang efektif untuk berbagi (sharing) dan mengkomunikasikan

rancangan mereka dengan yang lain.

UML merupakan kesatuan dari bahasa pemodelan yang

dikembangkan oleh Booch, Object Modeling Technique (OMT) dan Object

Oriented Software Engineering (OOSE). Metode Booch dari Grady Booch

sangat terkenal dengan nama metode Design Object Oriented. Metode ini

menjadikan proses analisis dan design ke dalam empat tahapan iterative,

yaitu: identifikasi kelas-kelas dan obyek-obyek, identifikasi semantic dari

hubungan obyek dan kelas tersebut, erincian interface dan implementasi.

Keunggulan metode Booch adalah pada detil dan kayanya dengan notasi dan

elemen. Pemodelan OMT yang dikembangkan oleh Rumbaugh didasarkan

pada analisis terstruktur pemodelan entity-relationship.

2.7.1.2 Use Case Diagram

Use Case adalah deskripsi fungsi dari sebuah sistem dari perspektif

pengguna. Use Case bekerja dengan cara mendeskripsikan tipikal interaksi

antara user (pengguna) sebuah sistem dengan sistemnya sendiri melalui

sebuah cerita bagaimana sebuah sistem dipakai. Urutan langkah-langkah yang

menerangkan antara pengguna dan sistem disebut scenario. Setiap scenario

mendeskripsikan urutan kejadian. Setiap urutan diinisialisasi oleh orang,

sistem yang lain, perangkat keras atau urutan waktu. Dengan demikian secara

singkat bisa dikatakan use case adalah serangkaian scenario yang

(37)

2.7.1.3 Sequence Diagram

Sequence diagram digunakan untuk menggambarkan perilaku pada

sebuah skenario. Diagram ini menunjukkan sejumlah contoh obyek dan

message yang diletakkan diantara obyek-obyek ini di dalam use case.

Sequence diagram menambahkan dimensi waktu pada interaksi diantara

obyek. Pada diagram ini participant diletakkan di atas dan waktu ditunjukkan

dari atas ke bawah. Life line participant diurutkan dari setiap participant.

Kotak kecil pada lifeline menyatakan activation, yaitu menjalankan salah satu

operation dari participant. State bisa ditambahkan dengan menambahkannya

sepanjang life line.

2.7.1.4 Activity Diagram

Activity diagram seperti sebuah flow chart. Activity diagram

menunjukkan tahapan, pengambilan keputusan dan percabangan. Diagram ini

sangat berguna untuk menunjukkan operation sebuah obyek dan proses

bisnis. Kelebihan activity diagram dibandingkan flowchart adalah

kemampuannya dalam menampilkan aktivitas parallel.

2.7.1.5 Class Diagram

Kotak adalah notasi UML untuk class. Nama, attribute, operation dan

responsibility dari class ada pada kotak tersebut. Stereotype bisa

dipergunakan untuk mengorganisasikan daftar attribute dan operation. Dalam

beberapa kasus, kadangkala hanya perlu ditampilkan sebagain saja dari

attribute dan operation.

Tipe attribute dan nilai default bisa dimunculkan sebagaimana pada

operation. Untuk mengurangi ambiguitas pada pendeskripsian class,

constraint bisa ditambahkan. Bahkan kalau perlu bisa ditambahkan attribute

notes ke dalam kotak tersebut.[5]

2.8Pengenalan Teorema Trigonometri

Trigonometri (dari bahasa yunani trigonon = tiga sudut dan metro =

(38)

segitiga dan fungsi trigonometrik seperti sinus, cosinus, dan tange.

Trigonometri memiliki hubungan dengan geometri, meskipun ada

ketidaksetujuan tentang apa hubungannya. bagi beberapa orang, trigonometri

adalah bagian dari geometri.

Matematikawan Yunani Hipparchus sekitar 150 SM menyusun tabel

trigonometri untuk menyelesaikan segitiga. Matematikawan Yunani lainnya,

Ptolemy sekitar tahun 100 mengembangkan penghitungan trigonometri lebih

lanjut. Matematikawan SilesiaBartholemaeus Pitiskus menerbitkan sebuah

karya yang berpengaruh tentang trigonometri pada 1595 dan

memperkenalkan kata ini ke dalam bahasa Inggris dan Perancis.

Ada banyak aplikasi trigonometri. Terutama adalah teknik triangulasi

yang digunakan dalam astronomi untuk menghitung jarak ke bintang-bintang

terdekat, dalam geografi untuk menghitung antara titik tertentu, dan dalam

sistem navigasi satelit. Bidang lainnya yang menggunakan trigonometri

termasuk astronomi (dan termasuk navigasi, di laut, udara, dan angkasa), teori

musik, akustik, optik, analisis pasar finansial, elektronik, teori probabilitas,

statistika, biologi, pencitraan medis/medical imaging (CAT scan dan

ultrasound), farmasi, kimia, teori angka (dan termasuk kriptologi),

seismologi, meteorologi, oseanografi, berbagai cabang dalam ilmu fisika,

survei darat dan geodesi, arsitektur, fonetika, ekonomi, teknik listrik, teknik

mekanik, teknik sipil, grafik komputer, kartografi, kristalografi.

Trigonometri terdiri dari sinus (sin), cosinus (cos), tangens ( tan),

cotangens (cot), secan (sec) dan cosecan (cosec). Trigonometri merupakan

nilai perbandingan yang didefinisikan pada koordinat kartesius atau segitiga

(39)

Tabel 2.2 Sudut-sudut Trigonometri

1. Gambar 2.4 memperlihatkan simulasi pada saat pengguna melakukan

pengambilan sudut atas pada objek, pada saat pengambilan sudut,

posel tidak boleh bergeser agar nilai yang diambil akurat. Berikut

rumus mencari alpha setalah mendapatkan nilai koordinat kemiringan

ponsel pada titik atas objek.

= acos⁡( � �

� � 2+� � 2+� � 2) (2.1)

Gambar 2.4 Simulasi Pengambilan Sudut Atas Objek

2. Gambar 2.5 memperlihatkan simulasi pada saat pengguna melakukan

pengambilan sudut bawah pada objek, pada saat pengambilan sudut,

posel tidak boleh bergerak agar nilai yang diambil akurat. Berikut

rumus mencari beta setalah mendapatkan nilai koordinat kemiringan

(40)

= acos⁡( �� ℎ

�� ℎ2+�� 2+�� 2) (2.2)

Gambar 2.5 Simulasi Pengambilan Sudut Bawah Objek

3. Setelah mendapatkan nilai alpha dan beta, maka dapat dicari tinggi

atas dan tinggi bawah dengan memasukan jarak objek secara manual

( ). Berikut rumus untuk mencari

Tinggi atas = tan ( )∗

Tinggi bawah = tan ( )∗

4. Gambar 2.6 Simulasi setelah mendapatkan tinggi atas dan tinggi

bawah. Berikut rumus yang diterapkan untuk mancari tinggi objek.

(Tinggi objek = tinggi atas + tinggi bawah)

Gambar 2.6 Simulasi Untuk Mencari Tinggi Objek

2.9Pengukuran Kesalahan Peramalan MAD

Sebuah notasi matematika dikembangkan untuk menunjukkan periode

waktuyang lebih spesifik karena metode kuantitatif peramalan sering kali

memperlihatkandata runtun waktu. Huruf Y akan digunakan untuk

menotasikan sebuah variabel runtun waktu meskipun ada lebih dari satu

(41)

ditunjukkan sebagai tanda. Oleh karena itu, Ytmenunjukkan nilai dari runtun

waktu pada periode waktu t.

Notasi matematika juga harus dikembangkan untuk membedakan

antarasebuah nilai nyata dari runtun waktu dan nilai ramalan. � akan

diletakkan di atassebuah nilai untuk mengindikasi bahwa hal tersebut sedang

diramal. Nilai ramalanuntuk Yt adalah Ŷt . Ketepatan dari teknik peramalan

sering kali dinilai denganmembandingkan deret asli Y1 , Y2 , … dengan deret

nilai ramalan Ŷ1 ,Ŷ2 ,…[7]

NOTASI DASAR PERAMALAN

�� = ��−Ŷt (2.3)

Notasi peramalan dapat diringkas sebagai berikut:

Yt : nilai data time series pada periode t

Ŷt : nilai ramalan dari Ŷt

��= ��−Ŷ�: sisa atau kesalahan ramalan.

Beberapa metode lebih ditentukan untuk meringkas kesalahan (error)

yangdihasilkan oleh fakta (keterangan) pada teknik peramalan. Sebagian

besar daripengukuran ini melibatkan rata-rata beberapa fungsi dari perbedaan

antara nilai aktualdan nilai peramalannya. Perbedaan antara nilai observasi

dan nilai ramalan ini seringdimaksud sebagai residual.

Persamaan di bawah ini digunakan untuk menghitung error atau sisa

untuktiap periode peramalan.

Satu metode untuk mengevaluasi metode pengukuran tinggi objek

menggunakan jumlah kesalahan-kesalahan yang absolute. The Mean Absolut

Deviation (MAD) mengukur ketepatan tinggi objek dengan merata- rata

kesalahan dugaan (nilai absolute masing-masing kesalahan). MAD paling

berguna ketika orang yang menganalisa ingin mengukur kesalahan dalam

mengukur tinggi objek dalam unit yang sama sebagai deret asli.[7]

(42)

2.10 Perancangan Kuesioner

Perancangan kuesioner dilakukan sebelum melakukan pengumpulan

data dengan tujuan untuk mendapatkan kuesioner yang baik. Kuesioner

yang digunakan dalam penelitian ini adalah kuesioner yang mempunyai

bentuk terstruktur langsung, dimana alternative jawaban responden telah

disusun sedemikian rupa sehingga responden dan memberikan sekumpulan

alternatif yang sifatnya mutually exclusive yaitu hanya satu alternatif yang

dapat dipilih dan mutually exhhastive yaitu kumpulan alternatif yang

diberikan sudah mencakup semua kemungkinan sesuai dengan responden

pada pertanyaan yang diajukan. Kuesioner yang dpergunakan pada

penelitian ini terdiri dari dua jenis skor pengukuran yaitu : [8]

1. Skor kuesioner untuk data umum

Pengukuran data umum dalam penelitian ini menggunakan skala

norminal, dimana angka yang diberikan kepada objek mempunyai arti

sebagai label saja, dan tidak menunjukkan tingkatan maupun urutan antara

kategori-katagori dalam ukuran itu.

Tabel 2. 3 Skor Kuesioner

Ketegori Jawaban Bobot

Sangat Setuju 5

Setuju 4

Kurang Setuju 3

Tidak Setuju 2

Sangat Tidak Setuju 1

2. Perhitungankuesioner

Data dianalisis dengan menghitung rata-rata jawaban berdasarkan

scoring setiap jawaban dari responden kemudian dijumlahkan lalu

digambarkan secara kontinum, perhitungan dapat dilakukan secara manual

menggunakan penskoran skala likert yaitu :

Jumlah skor = Jumlah responden x Skor bobot (2.5)

(43)

33

untuk mendapatkan aplikasi yang baik dan bersesuaian dengan kegunaan dan

tujuannya. Tahap awal dari analisis adalah menganalisis kebutuhan-kebutuhan

sistem mulai dari kebutuhan pengguna, kebutuhan non fungsional, dan

kebutuhan fungsional. Sedangkan untuk tahap perancangan aplikasi yaitu

perancangan sistem, dan perancangan antarmuka.

3.1 Analisis Sistem

Analisis sistem merupakan kegiatan penguraian suatu sistem

informasiyang utuh dan nyata ke dalam bagian-bagian atau

komponen-komponen komputer yang bertujuan untuk mengidentifikasi serta mengevaluasi

masalah-masalah yangmuncul, hambatan-hambatan yang akan mungkin terjadi

dan kebutuhan-kebutuhanyang diharapkan sehingga mengarah kepada solusi

untuk perbaikanmaupun pengembangan ke arah yang lebih baik dan sesuai

dengan kebutuhanserta perkembangan teknologi. Adapun tahapan-tahapan yang

ada pada analisa sistem ini meliputi: analisis masalah, analisis metode, analisis

kebutuhan sistem.

3.1.1 Analisis Masalah

Analisis masalah dilakukan dengan menguraikan masalah-masalah yang

terjadi sehingga permasalahan ini dapat diketahui melalui hasil dari membaca

buku dan referensi melalui website. Berikut ini adalah hasil analisis masalah

yang didapat:

1. Keterbatasan alat ukur dan kondisi yang digunakan pada objek

yang tinggi seperti menara dan gedung, sehingga menyulitkan

pada saat pengukuran.

2. Pengukuran ketinggian hanya bisa dilakukan oleh ahli, sehingga

tidak sembarang orang dapat melakukan pengukuran dengan

(44)

3.1.2 Analisis Metode

Analisis metode digunakan untuk mengetahui alur proses dari sebuah

metode yang digunakan dapat diterapkan ke dalam aplikasi yang dibangun.

Pembangunan aplikasi ini menggunakan metode Trigonometri dengan

memanfaatkan accelerometer pada sistem operasi android untuk mempermudah

dalam perhitungan tinggi objek.

3.1.2.1Analisis Sistem yang akan dibangun

Sistem yang akan dibangun adalah sistem aplikasi pengukuran tinggi

objek. Aplikasi ini dapat mengukur tinggian objek dari yang paling rendah

sampai yang paling tinggi dengan memanfaatkan sensor accelerometer yang

terdapat pada sistem operasi android untuk mencari nilai koordinat kemiringan

ponsel, adapun gambaran umum tentang sistem yang akan dibanguna dapat

dilihat pada gambar dibawah ini

Gambar 3.1 Analisi Sistem yang akan dibangun

Berikut penjelasan alur proses sistem yang akan dibangun:

1. Pengguna mengarahkan titik fokus untuk mencari titik koordinat

kemiringan posel dengan memanfaatkan sensor accelerometer yang

terdapat pada sistem operasi android.

2. Sistem mencari titik koordinat kemiringan ponsel

3. Setelah mendapatkan nilai koordinat kemiringan pengguna dapat

mengambil dengan mengklik capture yang terdapat pada aplikasi

(45)

5. Pengguna dapat memasukkan jarak posel dengan jaral objek yang

akan dicari tingginya

6. Pengguna dapat pengklik perhitungan untuk mencari tinggi

objekSistem memproses perhitungan dan menampilkan hasil nilai

tinggi objek

3.1.2.2 Analisis Accelerometer

Accelerometer modern tidak lain adalah MEMS (micro electro

mechanical system) berskala kecil. Accelerometer adalah suatu alat untuk

mengukur percepatan, mendeteksi dan mengukur getaran, atau untuk mengukur

percepatan garvitasi(inklinasi).

Pengukuran bisa secara analog maupun digital. Accelerometer dapat

digunakan untuk mengukur percepatan baik statis maupun dinamis.

Accelerometer akan mengalami percepatan dalam kisara dari -1g sampai +1g

(9.8m/s), dan hinggan kemiringan 180°.

Pada smartphone accelerometer merupakan sensor yang bisa

membaca pergerakan sehingga dapat mengubah tampilan layar dari posisi

landscape ke portrait atau sebaliknya dengan cukup memiringkan badan

ponsel secara otomatis, berikut nilai-nilai kemiringan sensor accelerometer

(46)
(47)

Z = 0.00 Z = 0.00 Z = 0.00 Z = 0.00

3.1.2.3 Analisis Metode Trigonometri

Objek yangdijadikan ilustrasi adalah tinggi pintu 2.4m yang diukur

dengan alat meteran, dan akan dibandingkan dengan metode trigonometri

yang terdapat pada aplikasi pengukuran tinggi objek dengan memanfaatkan

(48)

Analisi metode trigonometri pada aplikasi pengukuran tinggi objek

dengan memanfaatkan accelerometer pada sistem operasi android, untuk

mendapatkan tinggi objek pengguna harus mencari koordinat (x,y,z)

kemiringan ponsel dengan memanfaatkan sensor accelerometer yang terdapat

pada ponsel dan pengguna memasukkan jarak ponsel dengan objek r = 1 m

Setelah mendapatkan nilai koordinat kemiringan titik atas dan titik

bawah maka dapat dicari alpha dan beta tinggi objek terlebih dahulu dengan

rumus sebagai berikut

1. Mencari Nilai Alpha

= acos ��

�� 2 + �� 2 + �� 2

= acos 5.29

5.292 + 0.382+ (7.782)

= acos 0.561

= 55.818

2. Mencari Nilai Beta

= acos �� �� �

�� �� �2 + �� �� �2 + �� �� �2

= acos 7.36

7.362 + (0.112) + 6.862

= acos 0.731

(49)

Setelah itu dapat dimasukkan jarak objek dengan ponsel secara manual

dengan jarak r = 1

Setelah mendapatkan nilai alpha dan beta makan akan dicari nilai tinggi

atas dan nilai tinggi bawah dengan menggunakan rumus sebagai berikut,

3. Tinggi Atas

dijemlahkan untuk mengetahui tinggi objek tersebut dengan rumur sebagai

berikut

Tinggi objek = tinggi atas + tinggi bawah

Tinggi objek = 1.4724 + 0.9321 = 2.4045 (m)

3.1.3 Analisis Kebutuhan Sistem

Kebutuhan sistem yang diperlukan dan yang digunakan dalam

pembuatan sistem ini terdiri dari beberapa bagian, yaitu: kebutuhan fungsional

dan kebutuhan non fungsional.

Tabel 3.1 Kebutuhan Fungsional

Nomor Keterangan

SKPL-F-01 Sistem dapat menghasilkan kemiringan ponsel dengan memanfaatkan sensor accelerometer SKPL-F-02 Sistem dapat menghasilkan tinggi objek dari

hasil kemiringan ponsel

Tabel 3.2 Kebutuhan Non-Fungsional

Nomor Keterangan

SKPL-NF-01 Sistem dibangun dalam bentuk aplikasi mobile SKPL-NF-02 Sistem dapat dijalankan pada ponsel android

minimal versi 2.1 (froyo)

SKPL-NF-03 Pada ponselharus memiliki kamera belakang SKPL-NF-04 Ponselharus memiliki sensor accelerometer

Gambar

Tabel 2.2 Sudut-sudut Trigonometri
Gambar 2.5 Simulasi Pengambilan Sudut Bawah Objek
Tabel 2. 3 Skor Kuesioner
Gambar 3.2 Use Case Diagram
+7

Referensi

Dokumen terkait

Tujuan dari skripsi ini adalah pembuatan aplikasi game avoid the last menggunakan algoritma minimax berbasis sistem operasi android, untuk mengetahui kemampuan

Hasil Pengukuran Usability menunjukkan keseluruhan atribut memiliki usability oleh user, rata-rata diatas nilai 3, sehingga dapat dikatakan bahwa system operasi

Pembuatan aplikasi location based service objek wisata di Kota Depok dan Bogor berbasis Android menggunakan metode haversine formula yang mengirimkan

Judul Skripsi : Perancangan dan Pembuatan Aplikasi Objek Wisata di Kabupaten Kudus Berbasis Lokasi Menggunakan Platform Android.. Pembimbing I : Eko Darmanto,

Pada aplikasi ini perangkat keras yang digunakan adalah smartphone dengan sistem operasi android versi 2.3 (Gingerbread) untuk sarana penerapan aplikasi enkripsi dan dekripsi

WiFi yang digunakan sebagai media transfer data pada Aplikasi Mobile, mampu menjadi media untuk digunakan dalam layanan komunikasi suara melalui bantuan server

Maka akan dibangun sebuah aplikasi media sosial untuk penyebaran informasi keadaan sekitar dengan memanfaatkan gps dan geofencing berbasis android” sebagai aplikasi

2 173 H a l a m a n PEMBANGUNAN APLIKASI INTELLIGENT MARKETPLACE PROPERTY MEMANFAATKAN API CLARIFAI DAN API UCLASSIFY BERBASIS ANDROID RANGGA GELAR GUNTARA, GUNAWAN Program