BAB 2 LANDASAN TEORI
2.1 Teori-Teori Umum Untuk menganalisis dan merancang suatu aplikasi, diperlukan beberapa pertimbangan yang dilandasi berbagai landasan teori yang terkenal secara umum. Beberapa landasan teori umum tersebut diuraikan di bawah ini.
2.1.1 Pengertian Kendaraan Bermotor Kendaraan bermotor adalah setiap kendaraan yang digerakkan oleh peralatan mekanik berupa mesin selain kendaraan yang berjalan di atas rel (PP No. 44 Tahun 1993). Jenis-jenis kendaraan bermotor menurut Peraturan Pemerintah Republik Indonesia Nomor 44 Tahun 1993, yaitu: a. Sepeda motor adalah kendaraan bermotor beroda dua, atau tiga tanpa rumah-rumah baik dengan atau tanpa kereta samping. b. Mobil penumpang adalah kendaraan bermotor beroda empat yang dilengkapi sebanyak-banyaknya 8 (delapan) tempat duduk, tidak termasuk tempat duduk pengemudi, baik dengan maupun tanpa perlengkapan pengangkutan bagasi. c. Mobil bus adalah setiap kendaraan bermotor yang dilengkapi lebih dari 8 (delapan) tempat duduk tidak termasuk tempat duduk pengemudi, baik dengan maupun tanpa perlengkapan bagasi.
9
10
d. Mobil barang adalah setiap kendaraan bermotor selain dari yang termasuk dalam sepeda motor, mobil penumpang, dan mobil bus. e. Kendaraan khusus adalah kendaraan bermotor selain dari kendaraan bermotor untuk penumpang dan kendaraan bermotor untuk barang, yang penggunaannya untuk keperluan khusus atau mengangkut barang-barang khusus. f. Kendaraan umum adalah kendaraan bermotor yang disediakan untuk dipergunakan oleh umum dengan dipungut bayaran.
2.1.2 Pengertian Jalan Jalan adalah prasarana transportasi darat yang meliputi segala bagian jalan, termasuk bangunan pelengkap dan perlengkapannya yang diperuntukkan bagi lalu lintas, yang berada pada permukaan tanah, di bawah permukaan tanah dan/ atau air, serta di atas permukaan air, kecuali jalan kereta api, jalan lori, dan jalan kabel (PP No. 34 Tahun 2006). Kelas jalan dikelompokkan berdasarkan penggunaan jalan dan kelancaran lalu lintas dan angkutan jalan, serta spesifikasi penyedia prasana jalan. Kelas jalan berdasarkan spesifikasi penyedia prasana jalan dikelompokkan atas. 1. Jalan bebas hambatan meliputi pengendalian jalan masuk secara penuh, tidak ada persimpangan sebidang, dilengkapi pagar ruang milik jalan, dilengkapi dengan median, paling sedikit mempunyai 2 lajur setiap arah, lebar jalur paling sedikit 3,5 meter.
11
2. Jalan raya adalah jalan umum untuk lalu lintas secara menerus dengan pengendalian jalan masuk secara terbatas dan dilengkapi dengan median, paling sedikit 2 lajur setiap arah, lebar lajur paling sedikit 3,5 meter. 3. Jalan sedang adalah jalan umum dengan lalu lintas jarak sedang dengan pengendalian jalan masuk tidak dibatasi, paling sedikit 2 lajur untuk 2 arah dengan lebar jalur paling sedikit 7 meter. 4. Jalan kecil adalah jalan umum untuk melayani lalu lintas setempat, paling sedikit 2 lajur untuk 2 arah dengan lebar jalur paling sedikit 5,5 meter.
2.1.3 Layanan Kendaraan Bermotor Layanan adalah kegiatan yang diarahkan untuk memastikan bahwa produk ditangani atau diperbaiki untuk memperoleh kemampuan maksimal (Armistead, 1996). Layanan Kendaraan Bermotor adalah sesuatu yang diarahkan untuk memastikan produk kendaraan bermotor (sepeda motor, mobil, dan kendaraan jenis lainnya) ditangani atau diperbaiki untuk memperoleh kemampuan maksimal performa kendaraan bermotor tersebut. Macam-macam Layanan Kendaran Bermotor diantaranya: a. Tambal Ban Tambal menurut Kamus Besar Bahasa Indonesia adalah memperbaiki sesuatu (rumah, ban, dsb.) yang tidak menyeluruh (hanya bagian yang rusak). Sedangkan ban berarti benda bulat dari karet yang dipasang melingkar pada roda (sepeda, mobil, dsb).
12
Ban terdiri dari 3 macam, diantaranya: a. Ban dalam adalah ban yang berada di dalam lebih tipis, tempat udara dipompakan. b. Ban luar adalah ban yang berada di luar, tebal dan keras sebagai lapis penutup (pelindung) ban dalam. c. Ban tanpa tube Tubeless adalah ban yang dirancang tanpa menggunakan ban dalam. Yang memiliki tulang rusuk terus menerus dibentuk secara integral ke dalam manik ban sehingga mereka dipaksa oleh tekanan udara di dalam ban untuk menutup dengan flensa (bibir bagian terluar lingkar velg yang menahan duduknya ban pada tempatnya) dari velg roda logam. Tambal ban adalah kegiatan memperbaiki ban yang tidak menyeluruh hanya pada bagian ban yang bocor. Jenis-jenis tambal ban diantaranya yaitu: a. Tambal Ban Tip-Top Digunakan pada ban yang masih menggunakan ban dalam, dengan cara menempel bahan tambal ban tip-top kemudian dilakukan pengepresan agar merekat dengan ban dalam. b. Tambal Ban Bakar Memanasi dengan sejenis bahan karet dengan dilem, ditempel pada permukaan yang bocor, serta di-press dengan tujuan agar bahan karet tersebut menyatu dengan ban dalam.
13
c. Tambal Ban Cacing Khusus digunakan untuk ban tubeless, dengan cara membuat lubang yang lebih besar pada permukaan ban yang bocor, kemudian dengan campuran lem pada karet tambal ban cacing, dipaksakan untuk dimasukkan ke dalam lubang yang sudah diperbesar tersebut dengan kait, kemudian dicabut sehingga “karet cacing” tersebut tertinggal dan menutupi kebocoran.
b. Bengkel Merupakan bengkel umum yang berfungsi untuk membetulkan, memperbaiki, dan merawat kendaraan bermotor agar tetap memenuhi persyaratan teknis dan layak jalan (PP No. 44 Tahun 1993).
c. Stasiun Pengisian Bahan Bakar Umum (SPBU) Merupakan prasarana umum yang disediakan oleh PT. Pertamina untuk masyarakat luas guna memenuhi kebutuhan bahan bakar. Pada umumnya, SPBU menjual bahan bakar jenis Premium, Solar, Pertamax, dan Pertamax Plus (PT. Pertamina, 2009).
2.1.4 Waterfall Model Waterfall model sering disebut dengan “classic life cycle” karena model ini merupakan model klasik yang bersifat sistematis, berurutan dalam membangun software yang dimulai dengan communication, planing, modeling, construction,
14
dan deployment (Pressman, 2010, p39). Berikut penjelasan dari tahapan waterfall model adalah : 1.
Communication Pada tahap ini akan diberlakukan project initiation yaitu menganalisis permasalahan dan mencari solusi yang berpotensial untuk mengatasi permasalahan tersebut. Kemudian dilakukan requirements gathering yaitu mengumpulkan kebutuhan dari pihak-pihak yang terlibat.
2.
Planning Pada tahap ini akan dilakukan estimating mengenai kebutuhan yang diperlukan, kemudian scheduling untuk menentukan proses pengerjaan dan tracking.
3.
Modeling Pada tahap ini akan dilakukan analysis terhadap design yang akan diimplementasikan pada kebutuhan yang telah disebutkan diatas. Design dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap.
4.
Construction Pada tahap ini akan dilakukan penerjemahan pada design yang telah dibuat menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui proses coding. Setelah itu agar software terbebas dari error makan dilakukan testing secara keseluruhan.
5.
Deployment Setelah proses coding dan testing selesai maka dilakukan delivery yang menyediakan pengguna perkembangan operational software beserta fungsi dan fitur-fitur yang dapat digunakan, kemudia adanya support
15
(pendukung), dan feedback (respon). Selain itu, dilakukan juga pemeliharaan dan pengembangan agar sistem tersebut tetap berjalan dengan baik.
2.1.5 Interaksi Manusia dan Komputer (IMK)
Ada delapan aturan emas yang digunakan dalam merancang antarmuka (Shneiderman, 2010, p88-p89), yaitu :
1. Konsisten
Dalam merancang antarmuka aturan ini yang paling sering dilanggar, konsistensi harus dijaga dalam melakukan tugas yang serupa dan juga dalam tampilan (penggunaan istilah, urutan aksi, warna, layout, menu, bantuan, jenis huruf, kapitalisasi, dan lain-lain. Dengan tampilan yang konsisten akan membantu user untuk merasa tetap berada dalam aplikasi yang sama walaupun telah berpindah halaman.
2. Memenuhi kebutuhan universal
Ialah memahami kebutuhan user yang bermacam-macam dan membuat desain yang fleksibel yang mendukung perubahan dalam konten. Dan juga perbedaan Novice-Expert, kecacatan fisik, umur, serta beragam teknologi masing-masing merupakan syarat yang harus menjadi pertimbangan dalam desain.
3. Memberikan umpan balik yang informatif
16
Umpan balik (feedback) harus ada dalam setiap aksi user. Untuk aksi kecil yang sering dilakukan, tanggapan dibuat dengan sederhana. Sedangkan untuk aksi besar dan jarang dilakukan, respon dibuat lebih tegas dan informatif agar user dapat mengerti dengan jelas.
4. Dialog untuk keadaan akhir
Harus terdapat tanda dan disusun menjadi kategori awal, tengah, dan akhir. Kemudian terdapat penjelasan yang informatif pada setiap perpindahan proses.
5. Pencegahan kesalahan
Sistem harus dirancang sedemikian rupa agar user tidak dapat membuat kesalahan yang serius. Contohnya tidak memperbolehkan karakter alfabet pada kotak entry nomor. Interface harus dapat mendeteksi kesalahan dan memberikan instruksi yang mudah dimengerti, membangun, dan jelas untuk memperbaikinya, jika user membuat kesalahan.
6. Pembalikan aksi yang sederhana
Pada setiap aksi harus terdapat pembalikan aksi, sehingga user tidak takut melakukan kesalahan. Fitur ini dapat memperkecil kesalahan, karena user tahu bahwa aksi bisa dibatalkan. Pembalikan bisa saja atas satu aksi seperti saat memasukkan data, atau serangkaian aksi.
7. Mendukung pusat kendali internal
17
User yang telah terbiasa dengan suatu aplikasi, biasanya ingin memiliki kendali atas antarmuka dan tanggapan pada aksinya. Aksi antarmuka yang tidak seperti biasanya, tidak bisa atau sulit mendapatkan informasi yang dibutuhkan, dan ketidakmampuan sistem menghasilkan aksi yang diinginkan dapat menimbulkan ketidakpuasan user.
8. Mengurangi beban ingatan jangka pendek
Karena keterbatasan manusia dalam memproses informasi dalam jangka pendek, sehingga diusahakan agar tampilan dibuat sesederhana mungkin. Dan dibutuhkan tampilan yang ringan, penggabungan halaman-halaman, pengurangan frekuensi pergerakan antar jendela sehingga mengurangi beban ingatan jangka pendek.
2.1.6 Smartphone Merupakan sebuah device yang memungkinkan untuk melakukan sebuah komunikasi (telepon atau sms) juga di dalamnya terdapat fungsi PDA (Personal Digital Assistant) dan berkemampuan seperti layaknya komputer. Dalam perkembangan awal hanya ada Handphone dan PDA. Handphone pada umumnya digunakan untuk komunikasi seperti telepon, sedangkan PDA digunakan sebagai asisten pribadi dan organizer. PDA dapat menyimpan data contact, to-do-list sampai sinkronisasi antara komputer dan PDA. Perkembangan selanjutnya PDA mendapatkan kemampuan lain yaitu fitur wireless, sehingga mampu menerima dan mengirim e-mail melalui koneksi internet, dan seiring dengan itu Handphone mendapatkan penambahan fitur untuk mengirim pesan.
18
Pada akhirnya PDA menambahkan fungsi Handphone pada device-nya, sedangkan Handphone diberikan fitur PDA yang lebih banyak di dalamnya, sehingga hasilnya adalah Smartphone. Ciri utama sebuah Smartphone adalah memiliki sistem operasi yang di dalamnya memungkinkan untuk menjalankan berbagai aplikasi, misalnya Android, Windows Mobile, Sistem Operasi Blackberry, ataupun Symbian (Warta Warga Universitas Gunadarma, 2010).
2.2 Teori-Teori Khusus yang Berhubungan dengan Topik yang Dibahas 2.2.1 Sistem Informasi Geografis (SIG) 2.2.1.1 Definisi Sistem Informasi Geografis merupakan gabungan
tiga unsur
pokok, yaitu : sistem, infromasi, dan geografis. Dengan unsur-unsur tersebut, maka Sistem Informasi Geografis merupakan salah satu Sistem Informasi Geografis adalah sistem informasi yang digunakan untuk memasukkan, menyimpan, memanggil kembali, mengolah, menganalisis, dan menghasilkan data bereferensi geografis atau data geospatial, untuk mendukung keputusan dalam perencanaan dan pengelolaan penggunaan lahan (Wahyudi, 2008, p116). Berdasarkan definisi di atas dapat disimpulkan bahwa pengertian dari Sistem Informasi Geografis adalah suatu sistem informasi yang berfungsi untuk mengumpulkan, menyimpan, mengolah, menganalisis, men-transform, dan menghasilkan data bereferensi geografis atau data
19
geospatial dari dunia nyata untuk berbagai kebutuhan dan tujuan tertentu.
2.2.1.2 Komponen Sistem Informasi Geografis 1. Perangkat Keras ( Hardware ) Banyak sekali platform perangkat keras yang digunakan pada SIG mulai dari Personal Computer (PC), desktop, hingga multi user host yang dapat digunakan dalam suatu jaringan. Adapun perangkat keras yang sering digunakan SIG adalah : i. CPU Pusat proses data yang terhubung dengan media dengan ruang yang cukup besar dengan sejumlah perangkat lainnya. ii. Memory Sebuah komponen yang mampu menampung data dalam jumlah besar ketika aplikasi melakukan proses analisis. iii. Hard disk Sebuah komponen yang berguna menyediakan ruang untuk penyimpanan data. iv. Printer/ Plotter Digunakan untuk mencetak hasil data yang telah diolah. v. Scanner
20
Alat input data yang bertugas mendeteksi cahaya yang kemudian mengkonversikan peta kertas menjadi peta digital. vi. VDU (Virtual Display Unit) Merupakan layar monitor berwarna dengan kualitas baik dan resolusi tinggi yang digunakan untuk memudahkan user dalam mengontrol komputer dan perangkat–perangkat lain. 2.
Perangkat Lunak ( Software ) Perangkat lunak dalam SIG haruslah mampu menyediakan fungsi dan tool yang mampu melakukan penyimpanan data, analisis, dan menampilkan informasi geografi. Dengan demikian, elemen yang harus terdapat dalam komponen perangkat lunak SIG adalah: 1. Tool untuk melakukan input dan transformasi data geografi. 2. Sistem Manajemen Basis Data ( DBMS ). 3. Tool yang mendukung query geografis, analisa, dan visaulisasi. 4. Graphical User Interface ( GUI ) untuk memudahkan akses pada tool geografi.
21
Ada banyak perangkat lunak SIG yang dapat kita gunakan, diantaranya adalah Arc GIS, ArcInfo, ArcView, MapInfo, dan masih banyak lainnya. 3.
Data Di dalam Sistem Informasi Geografis ada 2 jenis data, yaitu : a. Data Spasial i. Titik Titik dapat mewakili objek – objek tertentu berdasarkan skala yang ditentukan, misalnya : letak bangunan, kota, dan lain – lain. ii. Garis Garis
adalah
bentuk
linear
yang
akan
menghubungkan paling sedikit dua titik dan digunakan untuk mempresentasikan objek – objek satu dimensi. Batas- batas polygon merupakan garis – garis, demikian pula dengan jalan, sungai, dan lain – lain. iii. Poligon Poligon digunakan untuk mempresentasikan objek – objek dua dimensi. Suatu danau, batas propinsi, batas kota, batas – batas persil tanah milik adalah tipe
–
tipe
entity
yang
pada
umumnya
dipresentasikan sebagai poligon. Suatu poligon
22
paling sedikit dibatasi oleh tiga garis yang saling terhubung diantara ketiga titik tersebut. b. Data Non – spasial ( Atribut ) Data atribut adalah data yang mendeskripsikan karateristik atau fenomena yang dikandung pada suatu objek data dalam peta dan tidak mempunyai hubungan dengan posisi geografi. Contoh : data atribut suatu universitas berupa mahasiswa, dosen, agama, jenis kelamin, NIM, dan yang lainnya. 4. Metode Diperlukan rancangan yang matang dengan menggunakan metodologi yang benar untuk menghasilkan SIG sesuai yang diinginkan. SIG yang baik memiliki keserasian antara rencana desain yang baik dan aturan dunia nyata, yaitu metode, model, dan implementasi akan berbeda – beda untuk setiap permasalahan. 5. Manusia Diperlukan SDM ( Sumber Daya Manusia ) yang berkualitas
agar
dapat
mendefinisikan,
menganalisa,
menoperasikan, serta menyimpulkan masalah, yang sedang dihadapi dalam pembuatan SIG. Karena tanpa adanya SDM, SIG tidak bermanfaat sama sekali. Ada beberapa tingkatan untuk para pemakai ( user ) dari tingkatan spesialis teknis
23
yang mendesain dan memelihara sistem sampai pada pengguna yang menggunakan SIG untuk membantu pekerjaan sehari – hari.
2.2.2
Android Menurut Susrini (2009, p99) Android adalah platform untuk sistem
operasi di perangkat mobile yang bersifat sumber terbuka, berbasis kernel Linux. Platform ini memungkinkan pengembang membuat program dalam bahasa pemrograman Java, pengaturan perangkat melalui Java Libraries Google. Platform ini mendukung sejumlah teknologi penghubung termasuk GSM/EDGE, CDMA, EV-DO, UMTS, Bluetooth, dan Wi-Fi. Android dibeli Google pada juli 2005 dari sebuah perusahaan kecil asal Palo Alto, California. Hal ini memunculkan spekulasi bahwa Google akan meluncurkan
telepon
seluler.
Spekulasi
tersebut
dipatahkan
dengan
diumumkannya Open Handset Alliance – aliansi 34 perusahaan perangkat lunak, perangkat keras, dan telekomunikasi seperti Google, HTC, Motorola, Qualcomm, T-Mobile, Sprint Nextel, dan NVIDIA, yang bertujuan mengembangkan standar terbuka untuk perangkat mobile. Aliansi ini lalu mengumumkan produk pertama mereka, Android. Pada Oktober 2008, telepon seluler pertama menjalankan Android adalah T-Mobile G1, dengan sistem operasi Android 1.0. Oktober 2008, jumlah anggota Open Handset Alliance bertambah dengan bergabungnya 14 anggota baru, yang terdiri dari beberapa perusahaan pembuat telepon seluler, operator telekomunikasi, sampai produsen chip. Sejumlah nama perusahaan
24
ternama yang turut bergabung di antaranya Sony Ericsson, ARM, Asustek, Garmin, Huawei Technologies, Toshiba, dan Vodafone. Infoworld
memberitakan,
High
Tech
Computer
(HTC)
tengah
mengembangkan telepon berbasis Android, bernama “Dream”. Samsung juga tengah menyiapkan telepon seluler berbasis Android untuk diluncurkan pada kuartal kedua 2009. Dengan fitur Google Map, G-Talk, G-Mail dan Google Search di dalamnya serta fitur layar sentuh, produk tersebut disiapkan Samsung sebagai pesaing Apple iPhone. Begitu juga Sony Ericsson (SE), mengaku tengah menyiapkan produk telepon berbasis Andorid yang memiliki lebih banyak fitur dari produk-produk yang sudah lebih dulu rilis. SE dan HTC akan sama-sama meluncurkan produknya pada tahun 2009. Sebagaimana telah disebutkan di atas, Android adalah sistem operasi yang berbasis linux atau open source. Dimana, sistem perangkat lunak Android sebenarnya merupakan sebuah stack atau tumpukan yang terdiri atas beberapa lapisan dari yang paling dekat dengan perangkat keras sampai yang berinteraksi langsung dengan pengguna. Jadi, dapat dikatakan bahwa Android bukan sekedar suatu framework yang berdiri di atas suatu sistem saja, tapi Android merupakan sistem itu sendiri yang tersusun atas berbagai lapisan perangkat lunak. Pada Gambar 2.1 berikut akan digambarkan arsitektur Android yang merupakan lapisan sistem perangkat lunak Android.
25
Gambar 2.1 Arsitektur Android (Sumber: Anonim. (2011). What is Android. Diperoleh 03-15-2011 dari http://developer.android.com/guide/basics/what-is-android.html)
Di bawah ini akan dijabarkan masing-masing lapisan pada arsitektur sistem operasi Android mulai dari yang paling dekat dengan perangkat keras.
Gambar 2.2 Lapisan Kernel Linux (Sumber: Anonim. (2011). What is Android. Diperoleh 03-15-2011 dari http://developer.android.com/guide/basics/what-is-android.html)
26
Lapisan kernel Linux ini adalah lapisan di mana inti dari sistem operasi Android itu berada. Berisi file-file sistem yang mengatur sistem processing, memory, resource, drivers, dan sistem-sistem operasi Android lainnya. Pada Gambar 2.2 di atas ditampilkan semua pustaka yang ada pada lapisan kernel Linux pada Android.
Gambar 2.3 Lapisan Libraries (Sumber: Anonim. (2011). What is Android. Diperoleh 03-15-2011 dari http://developer.android.com/guide/basics/what-is-android.html)
Lapisan Libraries ini adalah di mana fitur-fitur Android berada, biasanya para pembuat aplikasi mengakses libraries untuk menjalankan aplikasinya. Berjalan di atas kernel, lapisan ini meliputi berbagai library inti seperti Libc dan SSL, serta mendukung untuk pemutaran media audio, video dan grafis bersama dengan database lokal (SQLite). Pada Gambar 2.3 di atas ditampilkan semua pustaka yang ada pada lapisan Libraries pada Android. Di bawah lapisan Libraries ini terdapat lapisan Android Run Time, di mana lapisan ini yang membuat aplikasi Android dapat dijalankan dan dalam prosesnya menggunakan Implementasi Linux. Dalvik Virtual Machine (DVM)
27
merupakan mesin yang membentuk dasar kerangka aplikasi Android. Di dalam Android Run Time dibagi menjadi dua bagian yaitu, Core Libraries yang merupakan aplikasi Android dibangun dalam bahasa java, sementara Dalvik sebagai virtual mesinnya bukan Virtual Machine Java, sehingga diperlukan sebuah libraries yang berfungsi untuk menterjemahkan bahasa java/c yang ditangani oleh Core Libraries. Sedangkan, Dalvik Virtual Machine adalah virtual mesin berbasis register yang dioptimalkan untuk menjalankan fungsi-fungsi secara efisien, di mana merupakan pengembangan yang mampu membuat linux kernel untuk melakukan threading dan manajemen tingkat rendah. Berikut Gambar 2.4 yang menggambarkan lapisan Android Run Time.
Gambar 2.4 Lapisan Android Run Time (Sumber: Anonim. (2011). What is Android. Diperoleh 03-15-2011 dari http://developer.android.com/guide/basics/what-is-android.html)
Bagian Application Framework menyediakan banyak layanan lapisan atas dalam bentuk class Java. Berikut Gambar 2.5 yang menggambarkan lapisan Application Framework.
28
Gambar 2.5 Lapisan Application Framework (Sumber: Anonim. (2011). What is Android. Diperoleh 03-15-2011 dari http://developer.android.com/guide/basics/what-is-android.html)
Lapisan teratas dari perangkat lunak Android adalah lapisan Application. Seperti yang terlihat pada Gambar 2.6, terdapat beberapa aplikasi standar yang sudah disediakan oleh Android.
Gambar 2.6 Lapisan Application (Sumber: Anonim. (2011). What is Android. Diperoleh 03-15-2011 dari http://developer.android.com/guide/basics/what-is-android.html)
Dalam pembuatan aplikasi, diperlukan beberapa instalasi software yang mendukung yaitu:
a. Java Platform Standard Edition (Java SE) Banyak digunakan pada platform untuk pemrograman di Bahasa Java. Java platform ini digunakan untuk menyebarkan aplikasi portable untuk penggunaan umum. Dalam prakteknya, Java SE
29
terdiri dari virtual machine, yang mana harus digunakan untuk menjalankan program Java, bersama dengan satu paket library (package) diperlukan untuk memungkinkan penggunaan sistem file, jaringan, antarmuka grafis, dan sebagainya, dari dalam program-program tersebut (Wikipedia, 2011).
b. Android SDK (Software Development Kit) Menurut Safaat, 2011, Android SDK adalah tools API (Application Programming Interface) yang diperlukan untuk mulai
mengembangkan
aplikasi
pada
platform
Android
menggunakan bahasa pemrograman Java. Saat ini disediakan Android SDK sebagai alat bantu dan API untuk mulai mengembangkan aplikasi pada platform Android menggunakan bahasa pemrograman Java.
c. Eclipse Mengacu pada Wikipedia, 2011, Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). 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
30
adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.
d. ADT (Android Develompment Tool) Menurut Safaat, 2011, ADT adalah plug-in yang membuat Eclipse dapat membuat project berbasis Android. ADT harus di-install, karena sebagai penghubung antara Android SDK dengan IDE Eclipse yang akan digunakan sebagai tempat coding aplikasi Android nantinya.
2.2.2.1
Sejarah Android 2.2 (Froyo)
Pada bulan mei 2010 Android versi 2.2 Rev 1 diluncurkan. Android ini yang sekarang sangat banyak beredar dipasaran, salah satunya adalah di pakai di samsung FX tab yang sudah ada di pasaran (Safaat, 2011, p3). Fitur yang disediakan di android versi ini sudah kompleks di antaranya adalah:
a. Kerangka aplikasi memungkinkan pengguna dan penghapusan komponen yg tersedia b. Dalvik Virtual Machine di optimalkan untuk perangkat mobile c. Grafik: grafik di 2D dan grafik 3D berdasarkan libraries OpneGL. d. SQLite: untuk menyimpan data e. Mendukung media: audio,video, dan berbagai format gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
31
f. GSM,Bluetooth,EDGE,3G,dan Wifi(handware independent) g. kamera,Global positioning system(GPS),kompas, dan accelerometer(tergantung hardware) h. GSM,Bluetooth,EDGE,3G,dan Wifi(hardware independent)
2.2.3
Location Based Service (LBS) Menurut Safaat (2011, p226), Location Based Service (LBS) yaitu service
yang berfungsi untuk mencari dengan teknologi GPS dan Google’s cell-based location. Maps dan layanan berbasis lokasi menggunakan lintang dan bujur untuk menentukan lokasi geografis, namun sebagai user, dibutuhkan alamat atau posisi realtime, bukan nilai lintang dan bujur. Android menyediakan gecoder yang mendukung
forward
dan
reverse
geocoding.
Dengan
geocoder,
dapat
mengkonversi nilai lintang bujur menjadi alamat dunia nyata atau sebaliknya. LBS mempunyai dua unsur utama, yaitu: i.
Location Manager (API Maps) Menyediakan tools/source untuk LBS, Application Programming Interface (API) Maps menyediakan fasilitas untuk menampilkan, memanipulasi maps/peta beserta fitur-fitur lainnya seperti tampilan satelit, street (jalan), maupun gabungannya. Paket ini berada pada com.google.android.maps.
ii.
Location Providers (API Location) Menyediakan
teknologi
pencarian
lokasi
yang
digunakan
oleh
device/perangkat. API Location berhubungan dengan data GPS (Global
32
Positioning System) dan data lokasi realtime. API Location berapa pada paket Android yaitu dalam paket android.location. Dengan Location Manager, user dapat menentukan lokasi user saat ini, Track gerakan/perpindahan, serta kedekatan dengan lokasi tertentu dengan mendeteksi perpindahan.
2.2.4
Global Positioning System (GPS) GPS (Global Positioning System) adalah sistem satelit navigasi dan
penentuan posisi yang dimiliki dan dikelola oleh Amerika Serikat. Sistem ini didesain untuk memberikan posisi dan kecepatan tiga-dimensi serta informasi mengenai waktu, secara kontinyu di seluruh dunia tanpa bergantung waktu dan cuaca, bagi banyak orang secara simultan. Saat ini GPS sudah banyak digunakan orang di seluruh dunia dalam berbagai bidang aplikasi yang menuntut informasi tentang posisi, kecepatan, percepatan ataupun waktu yang teliti. GPS dapat memberikan informasi posisi dengan ketelitian bervariasi dari beberapa millimeter (orde nol) sampai dengan puluhan meter (K.K. Geodesi ITB, 2012). GPS Tracker atau GPS Tracking adalah suatu sistem yang menentukan posisi kendaraan, armada, maupun personal secara realtime. GPS tracking ini memanfaatkan teknologi GSM dan GPS untuk menentukan titik kordinat dan menterjemahkannya ke dalam bentuk peta seperti google maps atau lainnya (Apaitu GPS Tracker, n.d). Berikut adalah contoh gambar proses bagaimana GPS Tracker atau GPS Tracking berjalan.
33
Gambar 2.7 Skema proses GPS Tracker atau GPS Tracking (Sumber: Apa itu GPS Tracker. (n.d). Apa itu GPS Tracker. Diperoleh 03-152012 dari http://gpstracker.co.id.)
2.2.5
Web Server Web server adalah software yang menjadi tulang belakang dari world
wide web (www). Web server menunggu permintaan dari client yang menggunakan browser seperti Netscape Navigator, Internet Explorer, Mozilla, dan program browser lainnya. Jika ada permintaan dari browser, maka web server akan memproses permintaan itu kemudian memberikan hasil prosesnya berupa data yang diinginkan kembali ke browser. Data ini mempunyai format yang standar, disebut dengan format SGML (Standard Generalized Markup Language). Data yang berupa format ini kemudian akan ditampilkan oleh browser sesuai dengan kemampuan browser tersebut. Contohnya, bila data yang dikirim berupa
34
gambar, browser yang hanya mampu menampilkan teks (misalnya lynx) tidak akan mampu menampilkan gambar tersebut, dan jika ada akan menampilkan alternatifnya saja. Web server, untuk berkomunikasi dengan client-nya (web browser) mempunyai protokol sendiri, yaitu HTTP (hypertext transfer protocol). Dengan protokol ini, komunikasi antar web server dengan client-nya dapat saling dimengerti dan lebih seperti telah dijelaskan diatas, format data pada world wide web adalah SGML. Tapi para pengguna internet saat ini lebih banyak menggunakan format HTML (hypertext markup language) karena penggunaannya lebih sederhana dan mudah Kata HyperText mempunyai arti bahwa seorang pengguna internet dengan web browser-nya dapat membuka dan membaca dokumen-dokumen yang ada dalam komputernya atau bahkan jauh tempatnya sekalipun. Hal ini memberikan cita rasa dari suatu proses yang tridimensional, artinya pengguna internet dapat membaca dari satu dokumen ke dokumen yang lain hanya dengan mengklik beberapa bagian dari halaman-halaman dokumen (web) itu. Proses yang dimulai dari permintaan web client (browser), diterima web server, diproses, dan dikembalikan hasil prosesnya oleh web server ke web client lagi dilakukan secara transparan. Setiap orang dapat dengan mudah mengetahui apa yang terjadi pada tiap-tiap proses. Secara garis besarnya web server hanya memproses semua masukan yang diperolehnya dari web client-nya (Effendi, 2009).
35
2.2.6
PHP dan MySQL
2.2.6.1
Sejarah PHP dan MySQL Menurut Peraninangin (2006, p2), PHP diciptakan pertama kali oleh
Rasmus Lerdorf pada tahun 1994. Awalnya, PHP digunakan untuk mencatat jumlah serta untuk mengetahui siapa saja pengunjung pada homepagenya. Sebuah website yang dibuat hanya dengan tag-tag HTML bersifat statis. Dengan adanya PHP ini dapat dibuat suatu website yang dinamis bahkan interaktif. Sedangkan Menurut Haris ( 2003, p2), MySql dikembangkan oleh sebuah perusahaan Swedia yang bernama MySQL AB yang mempunyai tujuan untuk mengembangkan aplikasi web yang dimiliki kliennya. MySql merupakan database server dimana pemrosesan data terjadi di server dan client hanya mengirim data dan meminta data.
2.2.6.2
Keunggulan PHP Beberapa keunggulan penting PHP dibandingkan dengan bahasa
scripting lainnya adalah sebagai berikut: 1. PHP mendukung banyak sistem basis data, seperti MySQL, PostgreSQL, Oracle, Informix, Interbase, dan lain-lain. 2. PHP bersifat cross platform, artinya dapat dipakai di hampir semua web server seperti Apache, AOL Server, dan Microsoft Internet Information Service. Selain itu, PHP juga dapat dijalankan pada berbagai sistem operasi, seperti LINUX, UNIX, maupun di berbagai versi dari Microsoft Windows.
36
3. PHP adalah program yang bersifat open source sehingga siapapun dapat mengubah maupun menambahkan fungsi-fungsi baru secara bebas. Oleh karena itu, PHP memiliki siklus hidup yang sangat singkat (selalu up to date) mengikuti perkembangan teknologi internet.
2.2.7
Database Design
Perancangan suatu basis data terdiri dari tiga fase utama, yaitu perancangan
basis
data
konseptual
(Conceptual
Database
Design),
perancangan basis data logikal (Logical Database Design), dan perancangan basis data fisikal (Physical Database Design) (Connolly, 2010, p322).
2.2.7.1 Perancangan Basis Data Konseptual
Perancangan basis data konseptual adalah proses membangun sebuah model informasi yang digunakan di perusahaan, yang terlepas dari semua pertimbangan-pertimbangan fisik.
Langkah 1 : Perancangan Sistem Basis Data Konseptual.
Perancangan basis data konseptual secara keseluruhan terbebas dari penerapannya, secara Database Management System (DBMS) software, aplikasi program, programming language, hardware platform atau pertimbangan fisik lainnya.
Tahapan-tahapan yang dilakukan pada perancangan konseptual :
37
1. Identifikasi tipe entitas
Mendefinisikan objek-objek utama user yang merupakan tipetipe entitas untuk model tersebut. Salah satu metode untuk menentukan identitas adalah dengan memeriksa spesifikasi kebutuhan user dengan mengidentifikasikan kata benda. Contoh tipe entitas adalah user, news, dan reservation.
2. Identifikasi tipe relationship
Mengidentikasikan relasi-relasi penting yang ada diantara tipe entitas
yang
sudah
mengidentifikasikan
relasi,
diidentifikasikan. langkah
Setelah
selanjutnya
adalah
menentukan multiplicity setiap relasi. Batasan multiply digunakan untuk memeriksa dan memelihara kualitas data.
Adapun langkah-langkah dalam mengidentifikasi tipe relasi adalah sebagai berikut :
a. Gunakan Entity-Relationship (ER) Diagram
Hal yang sering terjadi adalah anda akan lebih cepat mengerti
suatu
perancangan
basis
data
yang
tervisualisasikan dibanding dengan perancangan basis dara yang dituliskan dalam bentuk tekstual. Anda dapat menggunakan Entity Relationship (ER) diagram untuk mempresentasikan entity dan bagaimana relasi antar
38
entity.
Anda
disarankan
menggunakan
Entity-
Relationship (ER) diagram untuk membantu anda membuat gambaran besar dari perancangan basis data yang sedang dikembangkan.
b. Tentukan Pembatas Multiplicity dari Tipe Relasi
Setelah anda mempunyai relasi antara entity maka langkah selanjutnya adalah dapat menentukan multiplicity setiap relasi. Jika memang ada suatu nilai yang spesifik dari suatu multiplicity maka akan lebih baik apabila didokumentasikan.
c. Memeriksa Fan dan Chasm Traps
Setelah mendefinisikan relasi yang dibutuhkan antar entity maka langkah berikutnya adalah dapat memeriksa fan dan chasm traps. Definisi dari fan traps adalah suatu model yang merepresentasikan suatu relasi antara entity. Tetapi
alur
relasinya
memperlihatkan
ambiguitas.
Definisi dari chasm traps adalah suatu model di mana ada hubungan antara entity yang satu dengan entity yang lain, tetapi tidak ada relasi antara kedua entity yang utama.
d. Memeriksa Setiap Entity Mempunyai Relasi Minimal Satu
39
Pada saat membuat Entity Relationship (ER) diagram, pastikan setiap entity mempunyai minimal satu relasi dengan entity yang lain. Jika memang ada entity yang sudah mempunyai minimal satu relasi dengan entity yang lain maka langkah berikutnya adalah perhatikan kamus datanya. Apabila memang sudah mempunyai relasi semua, maka berarti telah membuat setiap entity mempunyai relasi.
3. Menentukan dan menghubungkan atribut dengan entitas atau tipe relationship
Menentukan atribut-atribut yang terdapat dalam suatu entitas. Biasanya berupa kata benda atau frasa kata benda dari spesifikasi kebutuhan user. Ada 3 jenis atribut, yaitu : simple atau composite attribute, single atau multivalue atribute, dan derived attribute.
4. Menentukan atribut domain
Domain adalah kumpulan nilai-nilai yang diizinkan untuk satu atau lebih atribut. Sebuah model data yang baik menspesifikasikan
domain
untuk
setiap
atribut,
yaitu
kumpulan nilai-nilai yang diizinkan untuk atribut serta ukuran dan format atribut. Tahap ini bertujuan untuk menentukan batasan atribut di model data konseptual lokal.
40
5. Menentukan atribut candidate key dan primary key
Candidate key adalah kunci yang unik atau tidak mungkin kembar atau berbeda dengan yang lain, dapat dipakai untuk mengidentifikasi satu baris dalam tipe entitas, sedangkan primary key adalah candidate key yang dipilih sebagai kunci primer untuk mengidentifikasikan setiap entitas.
6. Mempertimbangkan
penggunaan
enchanced
modeling
concepts
Mempertimbangkan perlu tidaknya menggunakan konsep model specialization atau generalization, aggregation, dan composition.
Jika
memilih
pendekatan
specialization,
usahakan untuk memperhatikan perbedaan antara entitas dengan mendefinisikan satu atau lebih subclass dari sebuah entitas superclass. Jika memilih menggunakan pendekatan generalization, usahakan untuk mengidentifikasikan fitur-fitur umum antar entitas untuk mendefinisikan sebuah entitas superclass generalisasi. Pendekatan aggregation digunakan untuk mempresentasikan hubungan “mempunyai sesuatu” atau “bagian dari” antara tipe-tipe entitas, dimana yang satu mempresentasikan “keseluruhan” dan yang lain sebagai “bagiannya”. Pendekatan composition digunakan untuk mempresentasikan sebuah asosiasi antara tipe-tipe entitas
41
dimana terdapat kepemilikan yang kuat dan keterhubungan antara “keseluruhan” dan “bagiannya”.
7. Cek model untuk redudansi
Tahap ini bertujuan untuk memeriksa, apakah masih ada redudansi pada model. Ada dua aktivitas yang harus dilakukan, yaitu :
a. Memeriksa relasi one to one (1:1)
Sering
kali
kita
menemukan
dua
entitas
yang
merepresentasikan objek yang sama pada perusahaan. Untuk kejadian
ini
kedua entitas tersebut
harus
digabungkan. Jika primary key berbeda, pilih salah satu primary key dan biarkan yang lain menjadi alternate key.
b. Menghilangkan relasi yang redudansi
Data model yang baik sangat diharapkan untuk tidak memiliki relasi yang redudan. Suatu relasi dikatakan redudansi jika terdapat informasi yang sama yang diperbolehkan oleh relasi lain.
c. Validasi model konseptual lokal dengan transaksi user
Tahap ini bertujuan untuk memastikan bahwa model konseptual
mendukung
kebutuhan
transaksi
yang
42
diperlukan bagi view. Ada dua pendekatan yang dapat dilakukan pada tahap ini :
1. Mendeskripsikan transaksi
Memeriksa apakah semua informasi (entitas, relasi, dan atributnya) yang dibutuhkan oleh setiap transaksi telah
disediakan
oleh
model,
dengan
mendokumentasikan sebuah deskripsi dari kebutuhan transaksi.
2. Menggunakan jalur transaksi
Melakukan validasi model data terhadap transaksi yang dibutuhkan yang melibatkan diagram yang merepresentasikan
jalur
setiap
transaksi
dalam
diagram ER.
d. Review model data konseptual lokal dengan user
Pada langkah ini, user akan meninjau ulang data konseptual lokal. Jika terjadi anomali pada model data, maka
harus
dilakukan
perubahan
yang
mungkin
memerlukan pengulangan langkah-langkah sebelumnya. Proses ini akan terus diulang sampai model data benarbenar menjadi representasi aktual dari perusahaan.
43
2.2.7.2 Perancangan Basis Data Logikal
Tujuan
perancangan
basis
data
logikal
adalah
untuk
menerjemahkan konseptual data model ke logikal data model dari basis data yang meliputi perancangan relasi-relasi untuk kemudian melakukan validasi apakah sudah terstruktur dengan benar dan mampu mendukung keperluan transaksi (Connolly, 2010, p323).
Perancangan basis data logikal adalah suatu proses membangun sebuah model informasi yang digunakan di perusahaan berdasarkan sebuah model data spesifik. Tetapi terlepas dari DBMS dan pertimbangan fisik lain.
Tahapan yang dilakukan dalam perancangan basis data logikal adalah sebagai berikut :
Langkah 2: Membangun dan Memvalidasi Model Data Logikal untuk Setiap View
Tahap ini bertujuan untuk membangun model data logikal dari model data konseptual, yang telah didapatkan pada tahap sebelumnya, yang merepresentasikan view tertentu untuk menjamin agar strukturnya benar dan mendukung transaksi perusahaan.
1. Menurunkan relasi untuk model data logikal
44
Tahapan ini bertujuan untuk membentuk relasi dari model data logikal untuk merepresentasikan relasi antar entitas dengan atribut yang telah diidentifikasikan. Cara-cara yang dapat dilakukan untuk mendapatkan relasi dari data model yang ada adalah sebagai berikut : tipe entitas kuat, tipe entitas lemah, relasi binary one to one, relasi binary one to many, relasi rekursif, tipe relasi superclass/subclass, relasi binary many-yomany, tipe relasi kompleks, atribut multi-valued.
2. Validasi relasi-relasi menggunakan normalisasi
Normalisasi digunakan untuk meningkatkan model yang telah terbentuk agar duplikasi data yang tidak diperlukan dapat dihindari. Proses normalisasi terdiri dari UNF, 1NF, 2NF,3NF.
3. Validasi relasi-relasi dengan transaksi user
Memeriksa relasi yang telah mendukung transaksi bagi view, untuk sebelumnya apakah mendukung transaksi bagi view, untuk memastikan tidak ada kesalahan yang dibuat selama membuat relasi-relasi. Validasi transaksi seperti ini sudah dilakukan pada tahap 1., namun dilakukan kembali untuk memeriksa relasi-relasi yang diciptakan pada rencangan logikal.
4. Memeriksa Integrity Constraint
45
Integrity Constraint adalah batasan-batasan yang harus ditentukan untuk melindungi basis data agar tetap konsisten. Ada 5 tipe integrity constraint, yaitu :
a. Required data (Data atau nilai yang valid). b. Batasan domain atribut. c. Multiplicity. d. Integritas referensial, adalah jika foreign key berisi sebuah nilai yang nilainya harus menunjukkan baris yang ada pada relasi induknya. e. General Constraint.
5. Meninjau kembali model data logikal dengan user
Tahapan ini memastikan bahwa model data logikal lokal yang terbentuk merupakan representasi dari user view.
6. Menggabungkan model data logikal ke dalam model global (optional step)
Tahapan ini bertujuan untuk menggabungkan model data logikal ke dalam single global logical data model yang menampilkan semua user views dari basis data.
Langkah ini memiliki tiga tahapan, yaitu :
46
a. Menggabungkan model data logikal lokal ke dalam model global b. Validasi model data logikal global c. Memeriksa kembali model data logikal global dengan user
7. Memeriksa perkembangan di masa depan
Tujuan dari langkah ini adalah untuk menentukan apakah ada perubahan
yang
memperkirakan
berarti
di
apakah
masa
model
depan
dan
untuk
data
logikal
bisa
adalah
proses
untuk
mengakomodasi perubahan tersebut.
2.2.7.3 Perancangan Basis Data Fisikal
Perancangan
basis
data
fisikal
menghasilkan penjelasan dari pengimplementasian suatu basis data pada media penyimpanan kedua. Kemudian juga menjelaskan relasi dasar, pengaturan file, dan indeks yang digunakan untuk mencapai akses data yang efisian, integritas, constraint, serta ukuran keamanan (Connolly, 2010, p324).
Langkah 3 : Menerjemahkan Model Data Logikal Global untuk Target DBMS
Bertujuan untuk menghasilkan skema basis data relational dari model data logikal global yang dapat diimplemantasikan pada DBMS pilihan. Bagian pertama dari proses ini memerlukan
47
perbandingan informasi yang dikumpulkan selama perancangann sistem basis dara logikal, sedangkan bagian kedua dari proses ini menggunakan informasi tersebut untuk menghasilkan desain relasi dasar. Proses ini memerlukan pengetahuan yang mendalam mengenai fungsionalitas yang ditawarkan oleh DBMS pilihan.
1. Merancang relasi dasar
Menentukan bagaimana mempresentasikan beberapan derived data dalam model data logikal global ke dalam DBMS.
2. Merancang representasi dari derived data
Menentukan bagaimana mempresentasikan beberapa derived data dalam model data logikal global ke dalam DBMS.
3. Merancang general constraint
Perubahan terhadap data dapat dibatasi oleh general constraint yang mengatur transaksi dalam “dunia nyata”. Perancangan batasan ini tergantung pada pemilihan DBMS yang akan digunakan. Beberapa DBMS menyediakan fasilitas ini, namun ada
juga
yang
tidak
menyediakannya,
sehingga
untuk
menentukan batasan harus dilakukan pada program aplikasi.
48
Langkah 4 : Merancang Representasi Fisikal
Bertujuan untuk menentukan optimal organisasi file untuk menyimpan relasi dasar dan indeks yang dibutuhkan untuk mencapai hasil yang baik, yaitu dengan cara dimana relasi dan baris atau basis data akan dipegang di tempat penyimpanan akhir sekunder.
1. Menganalisis transaksi
Analisis transaksi berfungsi untuk memahami fungsi dari transaksi yang akan dijalankan pada basis data dan untuk menganalisis transaksi yang penting.
2. Memilih organisasi file yang akan digunakan
Bertujuan untuk menentukan organisasi file yang efisien untuk setiap relasi dasar. Ada lima tipe organisasi file, antara lain : heap, hash, indexed sequential access mode (ISAM), b-tree, dan cluster.
3. Memilih indeks yang digunakan
Memutuskan
apakah
dengan
menggunakan
meningkatkan peforma dari sistem.
indeks
akan
49
4. Memperkirakan disk space yang diperlukan
Memperkirakan disk storage yang diperlukan menggunakan sistem basis data. Disk storage yang dimaksud adalah secondary storage.
Langkah 5 : Mendesign User View
Mendesain user view yang telah diidentifikasi.
Langkah 6 : Mendesain Pengukuran Keamanan (Security)
Membatasi pengaksesan basis data oleh user yang tidak berhak dan menspesifikasikan basis data yang dapat diakses oleh user.
Langkah
7
:
Mempertimbangkan
Petunjuk
Controlled
Redudancy
Melakukan normalisasi agar dapat meningkatkan performa dari sistem dan menghilangkan redudansi.
Langkah 8 : Memonitor dan Memperbaiki Sistem Operasional.
Memonitor dan Meningkatkan performa dari sistem dengan memperbaiki desain yang tidak sesuai atau perubahan kebutuhan.
50
2.2.8
Unified Modeling Language (UML) UML adalah pemodelan yang digunakan untuk menggambarkan sebuah
sistem piranti lunak yang terkait dengan objek (Whitten, 2007, p371). UML terdiri dari beberapa tipe diagram antara lain :
1. Use Case Diagram
Use case diagram adalah diagram yang menggambarkan interaksi antara sistem, eksternal sistem, dan pengguna. Diagram ini menyediakan informasi mengenai siapa saja yang akan menggunakan sistem tersebut dan bagaimana cara untuk menggunakannya (Whitten, 2007, p246).
Gambar 2.8 Contoh Use Case Diagram
51
a. Use Cases
Use-case modeling mengidentifikasi serta mendeskripsikan fungsi dari sebuah sistem dengan menggunakan peralatan yang dinamakan use cases. Use cases juga mendeskripsikan fungsi sistem tersebut dilihat dari sisi perspektif pengguna luar yang dimengerti oleh mereka (Whitten, 2007, p246).
Gambar 2.9 Contoh symbol proses di dalam Use Case Diagram
a. Actors
Actors merupakan sesuatu yang berinteraksi dengan sistem untuk saling bertukar informasi. Actors tidak harus berupa manusia, tetapi dapat berupa suatu organisasi atau sistem informasi (Whitten, 2007, p247).
Gambar 2.10 Contoh symbol Actor di dalam Use Case Diagram
52
b. Relationships
Menurut Whitten (2007, p278), relationship digambarkan sebagai garis antara dua simbol pada use case diagram. Arti dari setiap relationship berbeda tergantung dari bagaimana garis tersebut ditarik dan jenis simbol yang terhubung. Berikut ini adalah jenis relationship yang ditemukan pada use case diagram, yaitu :
i.
Associations
Hubungan antara actor dan use case terjadi apabila use case tersebut mendeskripsikan interaksi antara kedua belah pihak. Hubungan ini ditunjukkan sebagai sebuah association. Association ditandai dengan tebal antara actor dan use case, association yang mempunyai mata panah di ujungnya menandakan bahwa use case telah diimitasi oleh actor di tabel lainya. Apabila association tidak memiliki mata panah di ujungnya menandakan interaksi antara use case dan external server. Association juga dapat diartikan sebagai lebih dari satu arah (bidirectional) atau satu arah (unirectional).
ii.
Extends
Hubungan yang terjadi antara extention use case dan use case yang berkembang dinamakan extends relationship. Sebuah use case diperbolehkan untuk mempunyai banyak extends relationship, tetapi extension use case hanya dapat dilakukan apabila bersama
53
dengan use case yang sedang berkembang. Extends relationship ditunjukkan dengan garis yang mempunyai mat apanah diujungnya (garis tebal atau garis putus-putus). Bermula dari extension use case dan menunjuk kepada use case yang berkembang.
iii.
Uses (or Includes)
Sebuah use case abstrak dapat digunakan oleh use case yang membutuhkan fungsionalitas dari use case abstrak tersebut. Hubungan antara use case abstrak dan use case tersebut dapat diartikan sebagai uses relationship. Uses relationship dapat ditunjukkan dengan garis yang mempunyai mata panah di ujungnya (garis tebal atau garis putus-putus). Bermula dari original use case dan menunjuk ke use case yang digunakan. Setiap garis mempunyai label dibawahnya.
iv.
Depends on
Dengan menggunakan bank sebagai contoh, use case pengambilan atau penarikan uang tidak dapat dilakukan sampai use case deposit telah selesai dilakukan terlebih dahulu, serta use case deposit juga tidak dapat dilakukan sebelum use case konfirmasi account bank dipastikan. Depends-on relationship ditunjukkan dengan garis yang mempunyai mata panah di ujungnya (garis tebal atau garis putusputus). Bermula dari satu use case dan menunjuk ke use case yang lain. Depends-on relationship mempunyai label dibawahnya.
54
v.
Inheritance
Ketika dua atau lebih actor mempunyai peraturan yang sama dalam kata lain dapat menginisiasi use case yang sama, ada baiknya untuk memperkirakan kemungkinan dari kesamaan peraturan ini dan menunjuknya sebagai abstract actor yang baru dengan tujuan untuk mengurangi redudansi komunikasi antar sistem.
2. Sequence Diagram
Sequence Diagram merupakan sebuah gambaran yang menjelaskan mengenai interaksi antara actor dengan sistem yang digunakan dalam skenario use case yang sedang berlangsung. Diagram ini menggambarkan bagaimana pesan dikirim dan diterima antar objek dan urutannya (Whitten, 2007, p394).
55
Gambar 3.11 Contoh Sequence Diagram
3. Activity Diagram
Activity Diagram menggambarkan aliran berurutan dari sebuah proses use case atau business process. Selain itu, dapat juga digunakan untuk logika model dengan sistem taitu, menggambarkan tindakan (action) yang akan dijalankan ketika suatu proses sedang berjalan dan beserta hasil dari proses yang dijalankan tersebut.
56
Gambar 2.12 Contoh Activity Diagram
Berikut ini merupakan komponen-komponen dalam activity diagram (Whitten, 2007, p391), yaitu :
a. Initial node
Bentuk lingkaran berisi penuh melambangkan awal dari suatu proses.
b. Actions
Bentuk persegi panjang yang mempunyai ujung lingkaran yang melambangkan tahap-tahap per individu. Sequance dari actions menunjukan total dari aktivitas yang dilihat dari diagram.
57
c. Flow
Panah pada diagram mengindikasikan kemajuan (progress) dari sebuah actions.
Kebanyakan
flow
tidak
membutuhkan
kata
untuk
mengidentifikasikan mereka kecuali kata tersebut keluar dari decision.
d. Decision
Bentuk wajib dengan satu flow yang masuk beserta dua atau lebih flow yang keluar. Flow yang keluar ditandai untuk mengindikasikan beberapa kondisi.
e. Merge
Bentuk wajib dengan dua atau lebih flow yang masuk beserta satu flow yang keluar. Kombinasi flow ini sebelumnya dipisahkan oleh decision. Proses akan berlanjut dengan adanya satu flow yang menuju ke merge.
f. Fork
Satu bar hitam dengan satu flow yang masuk beserta dua atau lebih flow yang keluar. Actions dengan flow pararel di bawah fork dapat terjadi dengan adanya urutan secara bersamaan.
58
g. Join
Satu bar hitam dengan dua atau lebih flow yang masuk beserta satu flow yang keluar, tercatat pada akhir dari proses secara bersamaan. Semua actions yang menuju join harus lengkap sebelum proses dapat berlanjut.
h. Activity final
Bentuk lingkaran berisi penuh yang berada di dalam lingkaran kosong, melambangkan akhir dari sebuah proses.
i. Subactivity indicator
Simbol seperti sisir terbalik yang berada pada actions mengindikasikan bahwa actions telah keluar menuju activity diagram yang lain. Hal ini dapat membantu activity diagram agar tidak menjadi terlalu kompleks.
j. Connector
Huruf yang berada di dalam lingkaran dan memberikan alat untuk mengarut kompleksitas. Flow yang menuju connector melompati flow yang keluar dari connector dengan huruf yang sama.