6
BAB II LANDASAN TEORI 2.1 Teori Umum Teori umum berlaku bagi semua waktu, semua tempat, dan semua keadaan serta semua permasalahan dalam teori yang dinyatakan. Teori ini merupakan penjelasan secara universal. 2.1.1 Interaksi Manusia dan Komputer (IMK) 2.1.1.1 Pengertian IMK Menurut Shneiderman dan Plaisant (2010) Interaksi manusia dan komputer merupakan ilmu yang berkaitan pada perancangan, evaluasi dan implementasi yang menjelaskan cara komunikasi antara komputer dan manusia atau user. 2.1.1.2 Karakteristik Perangkat Lunak Pada
perancangan
antarmuka
dalam
aplikasi
yang
dikembangkan sebaiknya pengembang mengelompokan pengguna kedalam beberapa kategori karateristik user seperti yang dikemukakan oleh Shneidermen dan Plaisant (2010). Berdasarkan teorinya user dikelompokkan kedalam 3 kategori yaitu; 1. Novice atau First-time users Novice atau First-time users atau dengan kata lain pemula dalam menjalankan program. Pada kategori ini sebaiknya pengembang memperhatikan aspek kemudahan penggunaan program dan memberikan umpan balik atau message box berupa pesan kesalahan dengan bahasa yang mudah dimengerti. 2. Knowledgable intermittent users Pada kategori ini, user memiliki pengetahuan yang cukup luas tentang system. Baik dalam hal penggunaan menu yang ada maupun struktur menu dari suatu program
6 http://digilib.mercubuana.ac.id/
Universitas Mercu Buana
7
3. Expert frequent users Tipe pengguna ini mengerti tentang cara kerja suatu system atau program, dapat dengan cepat mempelajari juga menggunakan program dengan memanfaatkan command-line ,shortcut dan marco. 2.1.1.3 Lima Faktor Manusia Terukur Lima faktor manusia terukur oleh Shneiderman dan Plaisant (2010) : 1. Waktu Belajar Merancang
antarmuka
pengguna.Sehingga
yang
penggunaan
mudah
aplikasi
untuk mudah
dimengerti 2. Kecepatan Kinerja Mengurangi kompleksitas proses dalam aplikasi yang bertujuan untuk meningkatkan kinerja proses pada aplikasi. 3. Tingkatan Kesalahan Meminimalisir tingkat kesalahan yang mungkin terjadi dalam
proses
penggunaan dan memberikan
penanganan kepada pengguna. 4. Daya Ingat Membuat tampilan agar pengguna dapat dengan mudah mengingat, dengan tujuan agar pengguna tidak membutuhkan waktu lama untuk mempelajari penggunaan aplikasi. 5. Kepuasan subjektif Hal ini dapat dicapai dengan melakukan interview dan survey kepada beberapa pengguna untuk mendapat tingkat kepuasan.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
8
2.1.1.4 Delapan Aturan Emas Sebagai
pedoman
dalam
perancangan
aplikasi,
pengembang menggunakan 8 aturan emas yang dikemukakan oleh Shneiderman dan Plaisant (2010). 8 Aturan menjadi landasan perancangan dalam hal interaksi manusia dan computer. Berikut penjelasan 8 aturan emas; 1.
Konsistensi Konsistensi urutan tindakan pada program, dalam
hal ini yaitu ; tampilan, jenis tulisan, istilah-istilah yang digunakan pada prompt, menu. 2.
Memenuhi kegunaan yang universal Kenali kebutuhan dari macam-macam pengguna
dan membuat desain yang dapat berubah sesuai kebutuhan konten. 3.
Memberikan umpan balik yang informatif Memberikan umpan balik pada saat operator
melakukan operasi. Umpan balik sebaiknya dibagi dikelompokan berdasarkan pada tingkat kepentingan dari suatu operasi. 4.
Merancang dialog untuk menghasilkann suatu penutupan Mengorganisir urutan tindakan menjadi beberapa
bagian seperti bagian awal, bagian tengah dan bagian akhir. Memberikan umpan balik yang sesuai dengan hasil dari suatu operasi, agar pengguna mengetahui hasil pengoperasian
dan
dapat
melanjutkan
ketahapan
selanjutnya. 5.
Memberikan penanganan kesalahan Pada pembuatan aplikasi, sistem dibuat agar
pengguna tidak melakukan kesalahan yang fatal. Apabila terjadi kesalahan system dapat memberikan mekanisme penanganan, sehingga pengguna dapat mengatasinya.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
9
6.
Mudah kembali ke tindakan sebelumnya Fitur ini meringankan pengguna ketika pengguna
mengetahui terdapat kesalahan. Sehingga dapat kembali ke tindakan sebelum kesalahan itu terjadi. 7.
Mendukung tempat pengendalian internal Menjadikan pengguna sebagai pengontrol system
bukan
sebaliknya,
dengan
cara
merancang
sistem
sedekemian rupa, sehingga pengguna dapat dengan leluasa menggunakan sistem. 8.
Mengurangi beban ingatan jangka pendek Ingatan manusia memiliki keterbatasan, oleh
karena itu perancang harus mempertimbangkan dalam membuat tampilan yang sederhana contohnya yaitu memberikan tampilan halaman yang berisikin dari beberapa menu yang disatukan. 2.1.2 Piranti Lunak 2.1.2.1 Definisi Piranti lunak Definisi piranti lunak, Menurut Pressman (2010) : a. Intruksi (program komputer) yang menghasilkan fungsi dan performance pada saat dijalankan. b. Struktur data yang memungkinkan para program untuk memanipulasi informasi. c. Informasi deskriptif dalam hardcopy dan bentuk-bentuk virtual yang menggambarkan operasi dan penggunaan program. Tiga karakteristik piranti lunak yaitu: a. Piranti lunak dikembangkan atau dibuat. b. Piranti lunak tidak dapat “habis”. c. Piranti lunak dirancang bukan berdasarkan perakitan.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
10
2.1.3 Global Positioning System Menurut Yulianto (2010), Global Positioning System (GPS) adalah suatu sistem navigasi satelit yang berfungsi untuk menentukan lokasi, kecepatan, dan arah, melalui signal yang diterima lebih dari 24-32 satelit yang pengukuran jarak (distance/range) antara satelit dan receiver dari transmisi signal radio. Sebuah GPS receiver memerlukan empat atau lebih satelit untuk menghasilkan jarak mereka, dan menggunakan informasi ini untuk menyimpulkan lokasi mereka. Operasi ini disebut triangulation. Satelit-satelit GPS mentransmisikan signal radio ke bumi yang mengandung informasi tentang satelit, contohnya lokasi dan waktu saat itu, menginformasikan pengguna secara tepat di mana satelit berada dalam orbit mereka sementara GPS receiver secara pasif menerima signal satelit tersebut. Semua satelit-satelit GPS menyinkronisasi operasi-operasi agar signal-signal yang berulang ini ditransmisikan pada waktu yang bersamaan. 2.1.4 GoogleMaps API Menurut Wardhana, Iriani dan Hendry pada tahun 2012, Google Maps Api merupakan salah satu fitur keluaran Google yang diberikan pada setiap penggunanya secara gratis, sehingga setiap orang diberi kesempatan untuk menggunakan dan mengembangkan teknologi tersebut secara bebas, juga memberikan pula fasilitas - fasilitas ke dunia dalam memanfaatkan Google Maps. Fasilitasfasilitas
tersebut diistilahkan
dengan nama Google Maps API. Beberapa daftar API yang tersedia yaitu -
Maps JavaScript API Memasang Gmaps melalui Javascript.
-
Maps API for flash Memasang Gmaps melalui flash.
-
Google Earth API Memasang Google Earth ke dalam webpage.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
11
-
Static Maps API Memasang Gmaps ke webpage atau mobile device.
-
Webservices Request informasi geografis via http dengan return format json/xml.
-
Maps Data API Update informasi geografis melalui Google Data API Google Maps API merupakan sebuah library javascript, dengan mempelajari HTML dan javascript, serta koneksi internet. Google Maps API dapat dibangun dan dirancang aplikasi peta digital yang handal dan powerful. Sampai saat ini Google
Maps
API sudah
sampai
versi
3.0,
dengan
perkembangan tiap versinya diharapkan selalu memiliki kinerja yang semakin meningkat dibandingkan dengan versiversi terdahulunya. 2.1.5 Unified Modelling Language (UML) Menurut Whitten dan Bentley (2007), UML adalah pemodelan Konvensi yang digunakan untuk menentukan atau menggambarkan sebuah sistem perangkat lunak dalam objek. Sampai saat ini UML telah mengalami pembaharuan yaitu UML 2.0. Menurut Whitten dan Bentley (2007) UML 2.0 digolongkan menjadi tiga jenis diagram yaitu ;
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
12
Table 2.1 Unified Modelling Language Requirment analysis
Logical design phase
Physical
phase Use-case diagram
Activity Diagram
Sequence Diagram
Sequence Diagram
Class Diagram
Class Diagram
State
Machine
Diagram Communication Diagram Component Diagram Deployement Diagram
2.1.5.1 Use-Case Diagram Menurut Whitten dan Bentley (2007), pengertian usecase diagram adalah diagram yang menjelaskan fungsi sistem dari sudut pandang user dan interaksi antara keduanya. Use case diagram digambarkan dengan aktor yang dihubungkan tanda panah, tanda panah ini menunjukan interaksi terhadap use case. Use case dilambangkan dengan elips , pada symbol ini berisi kata kerja yang dapat diletakan diatas, dibawah atau didalam simbol tersebut.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
13
Gambar 2.1 Contoh Diagram Model Use-Case (Sumber: System dan Analysis and Design Method - Whitten dan Bentley, 2007) 1. Pelaku (Actor) adalah semua yang berinteraksi dengan sistem untuk pertukaran informasi.
Gambar 2.2 Simbol Aktor 2. Hubungan (Relationship) digambarkan dengan sebuah garis antara dua symbol pada use case diagram. Pengertian hubungan berbeda-beda dapat dilihat dengan bagaimana garis tersebut digambar dan tipe simbol apa yang digunakan untuk menghubungkan. Beberapa perbedaan dalam tipe hubungan use case diagram, yaitu sebagai berikut:
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
14
1) Gabungan (Association): Interaksi antara actor dengan use case, kapanpun terjadi interaksi antara keduanya.
Gambar 2.3 Contoh Hubungan Asosiasi (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007) 2) Extend: use case yang terdiri dari langkah yang diekstraksi dari use case yang lebih kompleks untuk menyederhanakan masalah orisinil dan karena itu memperluas fungsinya.
Gambar 2.4 Contoh Hubungan Extension (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007) 3) Uses: satu atau lebih use case yang melakukan berbagai langkah fungsionalitas yang identik.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
15
Gambar 2.5 Contoh Hubungan Uses (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007) 4) Depends On: use case mana yang memiliki ketergantungan pada use case lain untuk menetapkan rangkaian use case yang perlu dikembangkan.
Gambar 2.6 Contoh Hubungan Depends On (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007) 5) Inheritance: ketika dua atau lebih pelaku berbagi kelakuan umum, dengan kata lain mereka melakukan aksi terhadap use case yang sama.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
16
Gambar 2.7 Contoh Hubungan Inheritance (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007) 2.1.5.2 Class Diagram Menurut Whitten dan Bentley (2007), class diagram menggambarkan struktur class yang ada dalam system tersebut. Diagram ini menunjukkan objek yang terdapat pada suatu system serta relasi antara objek-objek tersebut. Class Digambarkan sebagai sebuah kotak yang terbagi atas tiga bagian. Bagian atas adalah bagian nama dari class. Bagian tengah mendefinisikan atribut class. Bagian akhir mendefinisikan method dari sebuah class. Berikut ini hubungan antara setiap class diagram menurut Whitten dan Bentley (2007); 1. Multiplicity Multiplicity adalah istilah untuk menunjukan banyaknya hubungan antar class.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
17
Table 2.2 Class Diagram Multiplicity Multilicity
Notasi Multiplicity
Penjelasan
One
1
Zero to one
0…1
0 atau 1
Zero to many
0…*
0 atau lebih
One to many
1…*
Antara 1 sampai banyak
M to N
m…n
Range antar m sampai n
Hanya satu
2.Visibility Istilah metode akses pada setiap class yang didefinisikan dengan visibility. UML 2.0 menyediakan tiga tingkat dari visibility, yaitu: 1. Public : ditandai dengan simbol “+” 2. Protected : ditandai dengan simbol “#” 3. Private : ditandai dengan simbol “-„ 3. Association Association menunjukan sebuah hubungan dua class atau lebih dan dilambangkan oleh sebuah garis pada umumnya. Pada association juga menjelaskan tentang multiplycity. Dalam hubungan association default nya adalah bersifat bidirectional sebagai contoh pada class customer dan order class, class customer harus mengetahui tentang order class begitupun sebaliknya. 4. Agregration Hubungan antar class yang bisa berdiri sendiri walaupun merupakan bagian dari class yang lain.
Gambar 2.8 Contoh Agregation (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007)
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
18
5.Compositions Sebuah class yang tidak bisa berdiri sendiri karena merupakan bagian dari class yang lain.
Gambar 2.9 Contoh Compositions (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007)
Gambar 2.10 Contoh Class Diagram (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007)
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
19
2.1.5.3 Activity Diagram Menurut Whitten dan Bentley 2007, Activity diagram adalah
sebuah
diagram
yang
dapat
digunakan
untuk
mendeskripsikan secara grafis aliran kerja dari sebuah proses bisnis, langkah-langkah dari sebuah use case, atau logika dari sebuah perilaku objek (object behavior/method). Activity diagram adalah representasi grafis dari aliran kerja (workflow) atas aktivitas-aktivitas yang bertahap dan aksi-aksi di dalam sebuah sistem. Diagram ini juga mendukung proses seleksi, pengulangan (iterasi), dan konkurensi. Activity diagram sejenis dengan state diagram/statechart diagram. Diagram ini mendeskripsikan/menggambarkan kumpulan aktivitas dengan menunjukkan sekuensial dari aktivitas yang dilakukan. Diagram ini juga bisa menunjukkan aktivitas yang bersifat kondisional atau paralel. Berikut notasi yang digunakan pada activity diagram:
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
20
Tabel 2.3 Simbol pada Activity Diagram No
Simbol
1
Initial node
Gambar
Keterangan Lingkaran hitam penuh sebagai awal dari proses.
2
Action
Action
Symbol berbentuk elips yang menunjukkan aktivitas yang terjadi pada system.
3
Flow
Untuk menunjuk ke proses selanjutnya. Dilengkapi dengan syarat atau kata jia berasal dari decision
4
Decision
Menunjukkan proses yang dapat dipilih
5
Merge
Menyatukan flow yang sebelumnya terpisah oleh decision
6
Fork dan join
Sysmbol yang menunjukan akan terjadi proses 2 arah. Fork menotasikan akan adanya 2 proses yang berjalan bersamaan. Join menotasikan akhir proses yang berjalan bersamaan sebelumnya.
7
Activity
Menunjukkan akhir proses
Final
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
21
Gambar 2.11 Contoh Activity Diagram (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007) 2.1.5.4 Sequence Diagram Sequence Diagram adalah diagram yang menggambarkan interaksi antara actor dan system untuk skenario use case. Berikut ini adalah penjelasan dari notasi-notasi diagram yaitu :
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
22
Tabel 2.4 Element pada activity diagram No
Nama
1
Actor
2
Interface class
Simbol
Deskripsi Symbol untuk mewakili user
<
>
Suatu indikasi yabg untuk penamaan code,
class
agar
interface
tidak
terjadi
kebingungan terhadap jenis class 3
Controller class
<>
Setiap
uses
case
dapat
mempunyai satu atau lebih pengatur class. Disampaikan seperti interface class 4
Entity class
:
Identifikasi waktu pada saat system aktif dalam hubungan
5
Message
Berfungsi
menyampaikan
pesan dari setiap method 6
Activation Bars
Suatu
indikasi
menunjukan
berapa
yang lama
waktu object digunakan 7
8
Renturn
Menyampaikan balasan dari
message
inputan
Self-call
Objek
yang
memanggil
method-nya sendiri 9
Frame
Menandakan diagram seleksi,
yang
area
pada
melakukan
pengulangan,
dan
suatu pilihan khusus
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
23
Gambar 2.12 Contoh Sequence diagram (Sumber:System dan Analysis and Design Method- Whitten dan Bentley, 2007) 2.1.6 Rapid Application Development Rapid application development (RAD) adalah model proses pembangunan piranti lunak yang tergolong dalam teknik bertingkat. RAD mengutamakan pada siklus pembangunan pendek,singkat dan cepat. RAD merupakan metode iterative (berulang) dalam mengembangkan sistem dimana working model (model bekerja) sistem yang dikontruksikan di awal tahap pengembangan dengan tujuan menetapkan kebutuhan pengguna. Metode RAD menurut Shelly dan Rosenblatt (2011) dibagi menjadi empat fase dalam pengembangan sistemnya. Empat fase tersebut sebagai berikut: 1. Requirment planning phase Menggabungkan elemen dari sistem perencanaan dan tahap analisis sistem dari Siklus Hidup Pengembangan Sistem (SLDC). Pengguna, manager, dan anggota staf IT membahas dan menyepakati kebutuhan bisnis, lingkup proyek , kendala , dan persyaratan sistem.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
24
2. User Design Phase Pada tahap ini pengguna berinteraksi dengan analis sistem dan mengembangkan model prototipe yang mewakili proses semua sistem,
input,
dan
ouput.
Kelompok
RAD
biasanya
menggunakan kombinasi Joint Application Development (JAD) teknik dan alat-alat CASE untuk menerjemahkan kebutuhan pengguna ke dalam model kerja. Desain pengguna adalah
proses
interaktif
yang berkesinambungan
yang
memungkinkan pengguna untuk memahami, memodifikasi, dan akhirnya menyetujui model kerja dari sistem yang memenuhi kebutuhan mereka. 3. Contruction Phase Berfokus pada pemrograman dan pengembangan aplikasi, coding, unit-integrasi dan pengujian sistem. Pengguna ikut berperan dan menyarankan untuk perubahan dan perbaikan. 4. Custover Tahap ini merupakan tahap akhir dalam RAD dimana menyerupai tugas akhir dalam tahap implementasi SDLC, termasuk konversi data, pengujian, changeover ke system dan pelatihan pengguna 2.1.7 Model Proses Waterfall Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut dengan “Classic Life Cycle” atau model waterfall. Model ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai didalam Software Engineering (SE). Sekuensial linier mengusulkan sebuah pendekatan kepada pengembangan perangkat lunak yang sistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
25
Dimodelkan
setelah
siklus
rekayasa
konvensional,
model
sekuensial linier melingkupi aktivitas-aktivitas sebagai berikut (Pressman, 2002): 1. Rekayasa dan pemodelan system atau informasi Pengumpulan kebutuhan pada tingkat sistem dengan sejumlah kecil analisis serta desain tingkat puncak. 2. Analisis kebutuhan perangkat lunak Proses
pengumpulan
kebutuhan
diintensifkan
dan
difokuskan, khususnya pada perangkat lunak, untuk memahami sifat program yang dibangun, perekayasa perangkat lunak (analis) harus memahami domain informasi, tingkah laku, unjuk kerja dan antarmuka (interface) yang diperlukan. 3. Desain Desain perangkat lunak sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda; struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosedural. 4. Generasi kode Desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca. Langkah pembuatan kode melakukan tugas ini. 5. Pengujian Proses pengujian berfokus pada logika internal perangkat lunak, memastikan bahwa semua pernyataan sudah diuji dan pada eksternal fungsional, yaitu mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan. 6. Pemeliharaan Pemeliharaan perangkat lunak mengaplikasikan lagi setiap fase program sebelumnya dan tidak membuat yang baru lagi.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
26
Fase-fase dalam Waterfall Model menurut referensi Pressman (Pressman, 2002) :
Gambar 2.13 Waterfall Model Pressman (Sumber: Software Engineering : A Practitioner’s Approach, 2010) Fase-fase dalam Waterfall Model menurut referensi Sommerville (Sommerville, 2001) :
Gambar 2.14 Waterfall Model Sommerville (Sumber: Ian Sommerville. Software Engineering. Addison-Wesley, 2001)
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
27
2.1.8 Travel agent 2.1.8.1 Definisi Travel agent Travel agent merupakan usaha yang bergerak di bidang jasa yang memiliki tujuan untuk menyiapkan suatu perjalanan bagi seseorang
yang
merencanakan
untuk
mengadakannya
(Nyoman,1994). 2.1.8.2 Fungsi Travel Agent Menurut Anneahira fungsi utama travel agent umumnya bertindak sebagai perusahaan agen perjalanan yang menjual produk penjualan dan jasa atas nama para pemasok. Hal ini menjadikan travel agent tidak seperti bisnis retail lainnya. 2.1.9
Black Box Testing Pengujian black box merupakan pendekatan komplementer dari
teknik white box, karena pengujian black box diharapkan mampu mengungkap kelas kesalahan yang lebih luas dibandingkan teknik white box. Pengujian black box berfokus pada pengujian persyaratan fungsional perangkat lunak, untuk mendapatkan serangkaian kondisi input yang sesuai dengan persyaratan fungsional suatu program. Pengujian black box adalah pengujian aspek fundamental sistem tanpa memperhatikan struktur logika internal perangkat lunak. Metode ini digunakan untuk mengetahui apakah perangkat lunak berfungsi dengan benar. Pengujian black box merupakan metode perancangan data uji yang didasarkan pada spesifikasi perangkat lunak. Data uji dibangkitkan, dieksekusi pada perangkat lunak dan kemudian keluaran dari perangkat lunak dicek apakah telah sesuai dengan yang diharapkan. Pengujian black box berusaha menemukan kesalahan dalam kategori : 1. Kelas input apa yang akan membuat kasus pengujian menjadi lebih baik Universitas Mercu Buana http://digilib.mercubuana.ac.id/
28
2. Apakah system akan sangat sensitive terhadap harga input tertentu 3. Bagaimana batasan dari suatu data diisolasi 4. Kecepatan data apa dan volume data apa yang akan ditoleransi oleh system 5. Apa pengaruh kombinasi tertentu dari data terhadap system operasi.
2.2 Teori Khusus Teori khusus merupakan teori yang berkaitan dengan sejumlah fakta – fakta yang yang bersifat partikular. Teori ini menjelaskan fakta partikular dan menghubungkannya dengan yang lainnya 2.2.1 Location Based-Service 2.2.1.1 Definisi Location Based-Service Location Based-Service adalah service yang berfungsi untuk metncari dengan teknologi Global Positioning Service(GPS) dan Google’s cell-based location. Map dan layanan berbasis lokasi menggunakan lintang dan bujur untuk menentukan lokasi geografis namun sebagai user kita membutuhkan alamat atau posisi realtime kita bukan nilai lintang dan bujur. Android menyediakan geocoder yang mendukung forward dan reverse geocoding. Menggunakan geocoder, anda dapat mengkonversi nilai lintang bujur menjadi alamat dunia nyata atau sebaliknya. Location based service atau layanan berbasis lokasi adalah isilah umum yang digunakan untuk menemukan lokasi perangkat kita gunakan. Dua unsur utama LBS adalah a. Location Manager (API Maps) Menyediakan tools/resource untuk LBS, Application Programming Interface (API) Maps menyediakan fasilitas untuk menampilkan, memanipulasi peta berserta fitur-fitur lainnya seperti tampilan satelit, Universitas Mercu Buana http://digilib.mercubuana.ac.id/
29
street (jalan) maupun gabungannya. Paket ini berada pada com.google.android.maps. b. Location Providers (API Location) Menyediakan digunakan
teknologi
oleh
pencarian
device/perangkat.
lokasi API
yang
location
berhubungan dengan data GPS dan data lokasi realtime. API Location berada pada paket android yaitu dalam paket android.location. Dengan Location Manager kita dapat menentukan lokasi kita saat ini, Track gerakan/perpindahan, serta kedekatan dengan lokasi
tertentu
dengan
mendeteksi
perpindahan.(Safaat,2011) 2.2.2 Android Android adalah sistem operasi berbasis linux untuk telepon seluler seperti telepon pintar dan komputer tablet. Sebagai aplikasi terbuka, Android adalah platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri yang biasa dipakai oleh bermacam piranti bergerak.(Wahana Komputer,2012) 2.2.2.1 Sejarah Android Awalnya, Google Inc membeli Android Inc, pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android lebih lanjut, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan piranti keras, piranti lunak , dan telekomunikasi termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile dan Nvidia. Pada saat perilisan perdana Android, 5 November 2007 Android bersama Open Handset Alliance menyatakan mendukung perkembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode-kode Android dibawah lisensi Apache
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
30
(salah satu jenis lisensi open source), sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Didunia ini terdapat dua jenis distributor system operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Service (GMS) dan kedua adalah yang benarbenar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD). 2.2.2.2 Jenis-jenis Android Android memiliki sejumlah pembaharuan semenjak rilis aslinya. Pembaharuan ini dilakukan untuk memperbaiki bug dan menambahkan fitur-fitur baru. Berikut jenis-jenis android sampai saat ini: 1. Android Versi 1.1 Google merilis Android versi 1.1 pada tanggal 9 maret 2009. Android versi ini dilengkapi dengan tampilan yang lebih cantik pada aplikasi, penambahan fitur pada jam alarm, voice search , pengiriman pesan dengan Gmail dan pemberitahuan email. 2. Android Versi 1.5 (Cupcake) Google kembali merilis perangkat smartphone menggunakan
Android
dan
SDK(Software
Development Kit) versi 1.5(Cupcake) pada pertengahan Mei 2009. Fitur-fitur yang ditambahkan seperti kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke youtube dan gambar ke picasa secara langsung dari telepon. 3. Android Versi 1.6 (Donut) Dirilis pada bulan September di tahun yang sama dengan versi 1.5 . Disini ada fitur baru yang antara lain proses pencarian yang lebih baik disbanding
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
31
sebelummnya, adanya indicator baterai dan control apple VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna memilih foto yang akan dihapus. Fitur kamera, camcorder dan galeri juga diintegrasikan. Dukungan ke standar telekomunikasi yang lain, seperti CDMA/EVDO, 802. 1x, VPN, Gesture dan Text-tospeech engine. Juga ada kemampuan dial kontak dan teknologi text to change speech, serta dukungan terhadap resolusi VWGA. 4. Android Versi 2.0/2.1 (Éclair) Pada tanggal 3 desember 2009, Open Handset Alliance kembali meluncurkan ponsel Android dengan versi 2.0/2.1 (Éclair), perubahan yang dilakukan adalah optimasi hardware, adanya Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan penuh terhadap standar HTML5, daftar kontak diperbarui serta adanya dukungan flash untuk kamera 3,2 MP, digital Zoom dan Bluetooth 2.1. 5. Android Versi 2.2 (Froyo) Pada tanggal 20 Mei 2010, Android versi 2.2 (froyo)
diluncurkan.
Perubahan-perubahan
dibandingkan versi-versi sebelumnnya antara lain dukungan Adobe Flash 10.1, memiliki kecepatan kinerja, integrasi JavaScript engine versi 8 yang dipakai
Google
Chrome
sehingga
mempercepat
kemampuan rendering browser. 6. Android Versi 2.3 (Gingerbread) Pada tanggal 6 desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan pada versi ini antara lain peningkatan kemampuan permainan (gaming),
peningkatan
fungsi
copy
paste,
user
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
32
interface didesain ulang, dukungan format video VP8 dan Web, efek audio baru, serta dukungan kemampuan Near Field Communication (NFC) diperangkat ponsel. 7. Android Versi 3.0/3.1 (Honeycomb) Android Honeycomb dirancang khusus untuk bisa
mengakomodasi
tablet.
Android
versi
ini
mendukung ukuran layar yang lebih besar. User interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb mendukung multi prosesor
dan
juga
akselerasi
perangkat
keras
(hardware) untuk grafis. 8. Android versi 4.0 (Ice Cream Sandwich) Versi android ini diumumkan pada tanggal 19 oktober 2011, dengan fitur baru termasuk bias membuka kunci dengan pengenalan wajah, jaringan data control pemantauan pengguna, integrasi dengan social network, perangkat tambahan fotografi, bias mencari email secara offline dan berbagi informasi dengan menggunakan NFC. 9. Android Versi 4.4 (Kitkat) Versi ini diklaim lebih ramah terhadap perangkat dengan spesifikasi seadanya. Bahkan perangkat dengan RAM 512 MB masih bisa menjalankan OS versi ini dengan mulus. Berbeda dengan Jelly Bean yang minimal harus memiliki RAM diatas 756 MB agar dapat berjalan dengan mulus. 10. Android Versi 5.0 (Lolipop) Dirilis pada tanggal 15 Oktober 2014, versi OS ini mengusung perubahan besar dari segi UI yang nampak lebih flat dengan konsep material design. Versi Android ini sudah mendukung arsitektur 64-bit sehingga sudah memungkinkan untuk penggunaan
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
33
RAM diatas
3 GB
pada hardware perangkat.
Penggunaan prosesor 64-bit pun makin banyak diadopsi oleh para vendor, mulai dari penerapan pada perangkat flagship hingga perangkat kelas menengah kebawah 2.2.3 Android Studio Android Studio adalah sebuah open source community, proyek yang berfokus pada pembangunan sebuah platform pengembangan terbuka yang terdisi dari frameworks yang dapat diperpanjang, tools dan runtimes untuk membangun, menyebarkan, dan pengelolahan perangkat lunak. Sebelum Google menjadikan Android Studio sebagai IDE resmi untuk mengembangkan aplikasi Android, Eclipse merupakan IDE resmi yang didukung oleh google melalui plugin Android Development Tools (ADT). Semenjak IntelliJ IDEA dipilih sebagai IDE resmi untuk dijadikan Android Studio, Google telah menghentikan pengembangan ADT di Eclipse. Meskipun sudah tidak lagi mengembangkan ADT untuk Eclipse secara resmi, Google tetap memberikan dukungan bantuan bagi pengembangannya. likasi ataupun aplikasi berbasis web. Android Studio memang memiliki beragam fitur-fitur yang luar biasa. Namun dengan besarnya memori yang dibutuhkan oleh Android Studio untuk berjalan dengan lancar membuat fitur-fitur tersebut menjadi kurang terasa manfaatnya bagi mereka yang menggunakan spesifikasi komputer yang standar. 2.2.4 SQL Server SQL Server adalah salah satu produk Relational Database Management System (RDBMS) populer saat ini. Fungsi utamanya adalah sebagai database server yang mengatur semua proses penyimpanan data dan transaksi suatu aplikasi.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
34
Dalam DBMS seperti MS SQL Server biasanya tersedia paket bahasa yang digunakan untuk mengorganisasi basis data yang ada, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML).
Data Definition Language (DDL) Data Definition Language (DDL) adalah satu paket bahasa DBMS yang berguna untuk melakukan spesifikasi terhadap skema basis data. Hasil kompilasi dari DDL adalah satu set tabel yang disimpan dalam file khusus yang disebut Data Directory/Dictionary. Secara umum perintah perintah dalam DDL berhubungan dengan operasi-operasi dasar seperti membuat basis data baru, menghapus basis data, membuat tabel baru, menghapus tabel, membuat indeks, mengubah struktur tabel. Contoh perintah DDL misalnya, Create Table, Create Index, Alter, dan Drop Database
Data Manipulation Language (DML) Data Manipulation Language (DML) adalah satu paket DBMS yang memperbolehkan pemakai untuk mengakses atau memanipulasi data sebagaimana yang telah diorganisasikan sebelumnya dalam model data yang tepat. Dengan DML dapat dilakukan kegiatan : -
Mengambil informasi yang tersimpan dalam basis data.
-
Menyisipkan informasi baru dalam basis data.
-
Menghapus informasi dari tabel. Terdapat dua tipe DML yaitu prosedural dan non
prosedural. Prosedural DML membutuhkan pemakai untuk menspesifikasikan data apa yang dibutuhkan dan bagaimana cara
mendapatkannya,
sedang
non
prosedural
DML
membutuhkan pemakai untuk menspesifikasikan data apa yang dibutuhkan tanpa tahu bagaimana cara mendapatkannya.
Universitas Mercu Buana http://digilib.mercubuana.ac.id/
35
2.2.5 Visual Studio Microsoft Visual Studio merupakan sebuah perangkat lunak lengkap (suite) yang dapat digunakan untuk melakukan pengembangan aplikasi, baik itu aplikasi bisnis, aplikasi personal, ataupun komponen aplikasinya, dalam bentuk aplikasi console, aplikasi Windows, ataupun aplikasi Web. Visual Studio mencakup kompiler, SDK, Integrated Development Environment (IDE), dan dokumentasi (umumnya berupa MSDN Library). Kompiler yang dimasukkan ke dalam paket Visual Studio antara lain Visual C++, Visual C#, Visual Basic, Visual Basic .NET, Visual InterDev, Visual J++, Visual J#, Visual FoxPro, dan Visual SourceSafe. Microsoft Visual Studio dapat digunakan untuk mengembangkan aplikasi dalam native code (dalam bentuk bahasa mesin yang berjalan di atas Windows) ataupun managed code (dalam bentuk Microsoft Intermediate Language di atas .NET Framework). Selain itu, Visual Studio juga dapat digunakan untuk mengembangkan aplikasi Silverlight, aplikasi Windows Mobile (yang berjalan di atas .NET Compact Framework).
Universitas Mercu Buana http://digilib.mercubuana.ac.id/