BAB 2 TINJAUAN PUSTAKA
2.1.
Layanan Berbasis Lokasi Layanan Berbasis Lokasi (Location-Based Services / LBS) adalah layanan
informasi yang mengutilisasi kemampuan untuk menggunakan informasi lokasi dari perangkat bergerak dan dapat diakses dengan perangkat bergerak melalui jaringan telekomunikasi bergerak (Steiniger, et al., 2006). Seperti digambarkan pada Gambar 2.1, LBS terdiri dari beberapa komponen, antara lain. 1. Mobile Devices. Perangkat yang digunakan pengguna untuk mengakses informasi yang dibutuhkan. Hasil kalkulasi tersebut bisa berupa suara, gambar, teks, dan lainnya. 2. Communication Network. Komponen ini berupa jaringan telekomunikasi bergerak yang memindahkan data pengguna dan permintaan terhadap layanan dari perangkat bergerak ke penyedia layanan dan kemudian informasi yang diminta ke pengguna. 3. Positioning Component. Dalam pemrosesan layanan, posisi pengguna harus ditentukan. Posisi pengguna bisa didapatkan dengan menggunakan jaringan telekomunikasi bergerak, jaringan LAN nirkabel, atau dengan GPS, 4. Service and Content Provider. Penyedia layanan menyediakan sejumlah layanan berbeda kepada pengguna dan bertanggung jawab terhadap pemrosesan permintaan layanan. Contoh layanannya adalah kalkulasi posisi, pencarian rute, dan lainnya. 8
9
Gambar 2.1. Komponen LBS (Steiniger, et al., 2006)
Ada lima kegiatan yang didasari kebutuhan pengguna terhadap informasi geografis, yakni. 1. Mengetahui di mana dia berada (locating), 2. Mencari lokasi seseorang, suatu objek, atau kejadian (searching), 3. Menanyakan arah untuk mencapai suatu lokasi (navigating), 4. Menanyakan property dari suatu lokasi (identifying), 5. Mencari suatu kejadian pada atau sekitar suatu lokasi (checking).
2.2.
Rumus Phytagoras dan Haversine Pada penelitian ini, rumus yang digunakan untuk mencari jarak antara taksi
dengan pelanggan ada dua: rumus phytagoras dan rumus haversine.
10 Rumus phytagoras digunakan rumus pencarian jarak antara dua titik dengan menganggap bidang di antara dua titik tersebut sebagai permukaan datar. Rumus ini tertera pada Persamaan 1. Pi = 22/7 radius = 6371 km ratio = 2 * Pi * radius / 360 dLat = (lat2 - lat1) * ratio dLong = (long2 - long1) * ratio d = √(dLat²+ dLong²) Persamaan 1. Rumus Linear Rumus haversine adalah persamaan yang penting pada navigasi, memberikan jarak lingkaran besar antara dua titik pada permukaan bola (Bumi) berdasarkan bujur dan lintang. Penggunaan rumus ini mengasumsikan pengabaian efek ellipsoidal, cukup akurat untuk sebagian besar perhitungan, juga pengabaian ketinggian bukit dan kedalaman lembah di permukaan bumi, sehingga rumus ini cocok apabila digunakan di daerah perkotaan. Persamaan 2 berisi rumus haversine (Veness, 2009). R = Radius bumi (rata-rata radius = 6,371 kilometer) Δlat = lat2− lat1 Δlong = long2− long1 a = sin²(Δlat/2) + cos(lat1).cos(lat2).sin²(Δlong/2) c = 2.atan2(√a, √(1−a)) d = R.c Persamaan 2. Rumus Haversine
11 Catatan: sudut berada pada satuan radian untuk menggunakan fungsi trigonometri.
2.3.
Global Positioning System Global Positioning System (GPS) merupakan suatu kumpulan satelit dan sistem
kontrol yang memungkinkan sebuah penerima GPS untuk mendapatkan lokasinya di permukaan bumi 24 jam sehari (Heywood, et al., 2002). Setiap satelit ini mengelilingi bumi sekitar 12000 mil atau 19.300 km, mengelilingi bumi 2 kali setiap harinya. Orbit satelit-satelit ini diatur sedemikian rupa sehingga pada setiap saat, suatu tempat di bumi akan dijangkau minimal 4 satelit (Brain, et al., 2006). GPS digunakan untuk mendapatkan posisi pelanggan taksi (menggunakan perangkat BlackBerry dengan penerima GPS internal bawaan perangkat dengan error maksimum 10 meter) dan posisi taksi (menggunakan perangkat penerima GPS Garmin 18x USB yang memiliki error maksimum 15 meter).
2.4.
Web Service Web service adalah sebuah komponen aplikasi yang bisa diprogram dan diakses
lewat protokol web standar. Aspek-aspek dari web service adalah sebagai berikut (Peiris, et al., 2007). 1. Protokol standar: fungsionalitas ditunjukkan lewat antarmuka-antarmuka menggunakan satu dari beberapa protokol internet standar seperti HTTP, SMTP, FTP, dan sebagainya. Di sebagian besar kasus, protokol yang digunakan adalah HTTP.
12 2. Deskripsi layanan: web service perlu untuk mendeskripsikan antarmuka secara detail agar klien tahu bagaimana untuk “mengkonsumsi” fungsionalitas yang disediakan oleh layanan. Deskripsi ini biasanya disediakan lewat dokumen XML yang disebut dokumen WSDL (Web Services Description Language). 3. Menemukan layanan: pengguna perlu untuk mengetahui web service apa yang ada dan di mana untuk menemukannya agar klien dapat mengikat layanan dan menggunakan fungsionalitasnya. Satu cara agar pengguna dapat mengetahui apa saja layanan yang ada adalah dengan menghubungi rincian “halaman kuning” dari servis. Halaman kuning tersebut diimplementasikan lewat penyimpanan penemuan, deskripsi dan integrasi universal (Universal Discovery, Description, and Integration atau biasa disingkat UDDI, yang bisa berupa node UDDI publik atau pribadi).
Gambar 2.2 menunjukkan tumpukan protokol dasar untuk web service. Interaksi dengan layanan akan mengikuti arah top-down, yaitu dari service discovery ke messaging, dalam menjalankan metode dari servis.
13
Gambar 2.2. Tumpukan Protokol Pada Web Service (Peiris, et al., 2007).
Siklus hidup dari web service mempunyai delapan langkah, seperti yang ditunjukkan pada Gambar 2.3. 1. Klien terhubung ke internet dan menemukan direktori dari layanan yang akan digunakan. 2. Klien terhubung ke direktori dari layanan untuk menjalankan sebuah query. 3. Klien menjalankan query yang relevan terhadap direktori dari layanan untuk menemukan web service yang menawarkan fungsionalitas yang diinginkan. 4. Penyedia web service yang relevan dikontak untuk memastikan layanan masih valid dan tersedia. 5. Bahasa pendeskripsi dari web service yang relevan diterima dan diteruskan kepada klien. 6. Klien membuat instansi baru dari web service XML lewat kelas proxy.
14 7. Pada waktu berjalannya aplikasi klien, terjadi serialisasi argumen dari metode layanan kedalam pesan SOAP (Simple Object Access Protocol) dan mengirimkannya lewat jaringan ke web service. 8. Metode yang diminta dieksekusi, kemudian mengembalikan nilai termasuk semua parameter keluar.
Gambar 2.3. Siklus Hidup Web Service (Peiris, et al., 2007)
2.5.
BlackBerry BlackBerry merupakan perangkat bergerak pintar yang menggabungkan
sejumlah fungsi termasuk surat elektronik, penjelajahan web, pesan teks, pengelolaan jadwal,
dan
telepon
selular
ke
dalam
suatu
perangkat
portabel
(BusinessDictionary.com). BlackBerry dikembangkan oleh Research in Motion dan dianggap sebagai salah satu pemimpin dalam industri perangkat pintar. Pada penelitian ini, BlackBerry digunakan sebagai perangkat untuk memesan taksi karena mendukung teknologi Push dan beberapa seri BlackBerry terbaru
15 (BlackBerry 9000 Bold, BlackBerry 9500 Storm, dan BlackBerry 9300 Javelin) sudah memiliki penerima GPS internal.
2.5.1. Teknologi Push BlackBerry Teknologi push adalah metode komunikasi di internet yang berbeda dengan teknologi pull yang biasa digunakan, di mana pada teknologi ini, yang melakukan permintaan komunikasi adalah server, bukan klien. Pada konteks pengembangan aplikasi BlackBerry, teknologi ini merujuk pada kemampuan infrastruktur BlackBerry untuk mengirim data berdasarkan pada sebuah pemicu ke perangkat BlackBerry (Research in Motion, 2006). Salah satu fitur yang diunggulkan dari sebuah solusi berbasis BlackBerry adalah kemampuan untuk mengirimkan data secara proaktif atau “push” data ke perangkat BlackBerry. Teknologi push BlackBerry telah digunakan sejak lama untuk mengirimkan email atau mensinkronisasikan kalender. Teknologi push BlackBerry kini telah tersedia untuk kegunaan lain selain untuk solusi bisnis. Pengembang perangkat lunak untuk solusi BlackBerry bisa membuat aplikasi yang mampu mengirim data ke perangkat BlackBerry mana pun untuk menyediakan informasi yang pengguna butuhkan. Sebuah layanan push data terdiri dari tiga komponen, antara lain (Research in Motion, 2006). 1. Penyedia konten yang menyediakan data yang dapat dipakai pengguna. Data tersebut bisa berupa informasi saham, laporan pertandingan sepakbola, buletin berita, atau informasi perbankan. Ketika data baru sudah tersedia, penyedia konten bisa mengirimkan sebuah permintaan push menggunakan standar Push Application Protocol.
16 2. Aplikasi di perangkat BlackBerry. Penyedia konten juga harus membuat aplikasi berbasis Java yang bisa mengolah data yang terkirim melalui teknologi push BlackBerry. Aplikasi ini memiliki sebuah listener yang menunggu push data dari server secara tersembunyi. 3. Infrastruktur BlackBerry. Infrastruktur BlackBerry menyediakan middleware yang menerima permintaan untuk melakukan push data dari penyedia konten, dan mengirimkan data yang diberikan ke aplikasi tertentu pada perangkat BlackBerry yang dituju.
Teknologi push BlackBerry memiliki beberapa kelebihan, antara lain (Research in Motion, 2006). 1. Menyediakan informasi dengan instan Teknologi push BlackBerry merupakan metode yang paling efisien untuk mengirimkan data ke pengguna perangkat Blackberry. Dengan teknologi push BlackBerry, penyedia konten mampu mengirimkan data kapan pun tersedia. Sebagai tambahan, teknologi push BlackBerry mampu mengurangi efek buruk dari lambatnya jaringan. Karena jaringan nirkabel pada umumnya mempunyai lebar jalur data lebih kecil daripada jaringan kabel, data transfer menjadi lebih lambat ketika dilakukan melalui koneksi nirkabel. Karena teknologi push BlackBerry mengirimkan data di background tanpa campur tangan pengguna, pengguna merasa waktu yang dibutuhkan untuk menunggu data hanya sebentar.
2. Mengurangi beban jaringan dan server
17 Aplikasi yang menggunakan teknologi push BlackBerry lebih efisien dalam pengutilisasian jaringan. Pertama, aplikasi tidak harus melakukan polling secara berulang untuk meminta data baru. Walaupun permintaan dengan polling ini terbilang kecil dalam ukuran data, namun jika ada sangat banyak pengguna yang melakukan polling bersamaan (dan terus-menerus tentunya), maka jumlahnya akan sangat besar. Polling ini juga akan menambahkan beban kinerja server secara signifikan.
3. Menghemat energi baterai perangkat BlackBerry Penghematan baterai sudah dianggap sesuatu yang penting dalam pengembangan perangkat lunak untuk perangkat nirkabel bergerak. Dalam metode pull atau polling, aplikasi-aplikasi secara berulang melakukan polling ke server untuk mengecek apakah data baru telah tersedia. Aplikasi-aplikasi ini bisa menghabiskan energi di baterai dengan cepat. Penggunaan teknologi push BlackBerry mengurangi pemakaian energi baterai; dibandingkan dengan mengecek ketersediaan data terus-menerus, aplikasi yang menggunakan teknologi ini hanya menunggu kiriman data dari server di background.
4. Mengurangi kompleksitas pengembangan sistem Pengembang
perangkat
lunak
bisa
menggunakan
standar
Push
Application Protocol yang menggunakan XML untuk menentukan parameter permintaan push. Selain itu, mereka juga bisa menggunakan format HTTP biasa. Infrastruktur BlackBerry selanjutnya akan menangani proses pengiriman data
18 berdasarkan parameter yang tertera di permintaan tersebut. Pengembang tidak perlu tahu kompleksitas dibalik proses push tersebut.
Sebuah proses push digambarkan pada Gambar 2.4.
Gambar 2.4. Proses Push (Research in Motion, 2006)
1. Penyedia konten mengirimkan permintaan (request) push ke infrastruktur BlackBerry. Permintaan ini termasuk sebuah daftar dari perangkat-perangkat BlackBerry mana saja yang menjadi tujuan push. 2. Infrastruktur BlackBerry mengembalikan respon ke penyedia konten dan mendaftarkan permintaan pengiriman data ke daftar antrian push. Respon ini merupakan konfirmasi permintaan.
19 3. Infrastruktur BlackBerry melakukan push data ke perangkat BlackBerry yang telah ditentukan. 4. Setiap perangkat BlackBerry yang menerima push data mengembalikan respon ke infrastruktur BlackBerry. Respon ini merupakan konfirmasi penerimaan data. 5. Infrastruktur BlackBerry meneruskan konfirmasi penerimaan push data ke penyedia konten. 6. Penyedia konten mengirimkan notifikasi bahwa konfirmasi telah diterima.
Teknologi ini digunakan untuk mengirimkan data taksi ke pelanggan taksi yang sudah memesan taksi. Yang menjadi komponen penyedia konten untuk pengiriman data melalui teknologi push pada penelitian ini adalah subsistem aplikasi server.
2.6.
Basis Data Basis data adalah tempat penyimpanan data yang besar yang bisa digunakan
secara bersama-sama oleh satu maupun banyak pengguna. Selain data yang ada tidak akan berulang, semua data akan diintegrasi dengan jumlah duplikasi yang minimum (Connolly, et al., 2002). Penggunaan basis data menghilangkan kekurangan-kekurangan yang terdapat pada sistem penyimpanan berbasis file, antara lain pemisahan dan isolasi data, duplikasi data (yang menurunkan konsistensi data), ketergantungan data, ketergantungan terhadap suatu format file, dan query yang permanen dari program.
2.7.
Kesalahan Manusia Kesalahan manusia (human error) adalah perilaku yang secara keseluruhan
diharapkan untuk membuat hasil yang diinginkan, namun perilaku itu pada
20 kenyataannya tidak membuat hasil yang diinginkan itu. Faktor penyebabnya adalah segala hal yang menghasilkan kejadian yang membuat efek yang tidak diinginkan, atau segala hal yang memperburuk level kerusakan dari efek yang tidak diinginkan tersebut (Marguglio, 2009). Ben Marguglio pada bukunya yang berjudul Human Error Prevention menyatakan ada 7 faktor penyebab kesalahan manusia, antara lain. 1. Knowledge-based. Kesalahan yang didasari ketidaktahuan dari persyaratan, pengharapan atau kebutuhan. Sebuah kesalahan yang knowledge-based bisa terjadi ketika seseorang tidak menerima informasi dengan baik, baik karena memang tidak diberikan atau tidak diterima dengan baik. 2. Cognition-based. Kesalahan yang didasari ketidakmampuan untuk memroses pengetahuan yang dibutuhkan untuk memenuhi persyaratan atau kebutuhan. Sebuah kesalahan yang cognition-based bisa terjadi ketika seseorang tidak memroses informasi yang diterima (tidak mampu mengingat, memahami, menganalisa, atau mengaplikasi informasi tersebut) 3. Value-based. Kesalahan yang didasari ketidakinginan untuk menerima persyaratan, kebutuhan, atau pengharapan. 4. Reflexive-based. Kesalahan yang didasari ketidakmampuan untuk merespon terhadap stimulus. 5. Error-inducing condition-based. Kesalahan yang didasari oleh ketidakmampuan untuk
menghadapi
atau
menanggulangi
kondisi-kondisi
menyebabkan kesalahan. 6. Skill-based. Kesalahan yang didasari oleh kurangnya kecekatan.
yang
mampu
21 7. Lapse-based. Kesalahan yang didasari oleh kurangnya perhatian terhadap suatu subjek permasalahan.
2.8.
Teori Layanan Sebuah layanan adalah suatu produk yang intangible yang tidak akan ada hingga
diminta pelanggan. Layanan tidak bisa disimpan, diinventorikan, atau dilihat sebagai barang jadi. Jika sebuah layanan tidak dikonsumsi secara cepat setelah produksi, layanan tersebut akan menghilang (Daft, 2009). Kualitas sebuah layanan hanya bisa dirasa dan tidak bisa diukur dan dibandingkan secara langsung dengan cara yang sama seperti perbandingan produk. Salah satu karakteristik yang memengaruhi kualitas sebuah layanan adalah kecepatan respons atau daya tanggap. Sebuah layanan harus bisa segera disediakan ketika pelanggan menginginkan dan membutuhkannya (Daft, 2009). Menurut Armistead, sampai tingkat tertentu, semua organisasi dinilai dari kemampuannya menanggapi dengan cepat suatu kejadian, apakah itu kecepatan menyadari adanya kebutuhan pelanggan atau kemampuan mengadakan layanan yang sempurna dan lebih cepat dari pada pesaing. Prinsip yang harus dipegang dalam melayani pelanggan adalah pelanggan harus dapat menghubungi orang yang dapat melaksanakan keinginan pelanggan dengan cepat dan mudah. Masalah milik pelanggan yang sudah menelepon atau menulis surat dan tahu bahwa ia sedang melakukan kontak harus diambil secara cepat dan efisien. Dengan kata lain, pelanggan harus segera tahu bahwa mereka tidak lagi menghadapi masalah, karena masalah itu sudah ditanggulangi organisasi (Armistead, et al., 1996).
22 Salah satu karakteristik yang mendefinisikan sebuah layanan adalah pentingnya pemilihan tempat atau lokasi layanan. Karena layanan itu bersifat intangible, layanan harus ditempatkan di mana pelanggan ingin dilayani. Layanan-layanan yang ada dibaurkan dan diletakkan dekat secara geografis dengan pelanggan untuk mempercepat pelanggan mendapatkan layanan (Daft, 2009).
2.9.
Entity Relationship Diagram Entity relationship diagram (ERD) adalah model data yang menggunakan
beberapa notasi untuk menggambarkan data dalam konteks entitas dan hubungan yang dideskripsikan oleh data tersebut (Whitten L., et al., 2004).
Entitas Kelompok orang, tempat, objek, kejadian, atau konsep tentang apa yang kita perlukan untuk meng-capture dan menyimpan data. Entitas dapat digambarkan dengan sebuah kotak seperti pada Gambar 2.5.
Gambar 2.5. Simbol Entitas
Candidate Key Satu dari sekian banyak key yang menjadi calon sebagai primary key suatu entitas. Sering disebut candidate identifier.
23
Primary Key Candidate key yang paling umum digunakan untuk mendidentifikasi contoh entitas tunggal. Dilambangkan dengan PK pada suatu entitas.
Foreign Key Primary key suatu entitas yang digunakan dalam entitas lain untuk mengidentifikasi contoh hubungan. Dilambangkan dengan teks FK yang tertera di dalam entitas yang saling berhubungan.
Hubungan (Relationship) Asosiasi bisnis alami antara satu entitas atau lebih. Hubungan tersebut dapat menyatakan kejadian yang menghubungkan entitas atau hanya persamaan logika yang ada di antara entitas. Gambar 2.6 menggambarkan contoh hubungan antar entitas dengan skala kardinalitas yang ada.
Gambar 2.6. Hubungan Antar Entitas
2.10.
Unified Modeling Language Unified Modeling Language (UML) adalah sebuah perkakas untuk membantu
pengembang sistem mengetahui visi untuk sebuah sistem, dan mengkomunikasikan visi
24 tersebut ke orang-orang yang berhubungan dengan sistem dengan sekumpulan simbol dan diagram (Schmuller, 1999). UML ditemukan oleh Grady Booch, James Rumbaugh, dan Ivar Jacobson pada tahun 1990-an. UML lalu dikembangkan lagi oleh konsortium UML hingga akhirnya mencapai versi 1.0 pada tahun 1997. Kini, UML sudah menjadi sistem notasi yang umum dipakai pengembang sistem. UML terdiri dari beberapa elemen grafis yang bergabung dengan aturan tertentu untuk membentuk diagram-diagram. Tujuan dari diagram-diagram ini adalah untuk memberikan sudut pandang berbeda-beda terhadap sebuah sistem, dan sekumpulan sudut pandang yang berbeda disebut model. Sebuah model UML dari sebuah sistem bisa diibaratkan seperti model skala dari sebuah gedung dengan penjelasan terhadap gedung tersebut dari arsiteknya. Sebuah model UML hanya mendeskripsikan apa yang akan suatu sistem lakukan, bukan bagaimana cara mengimplementasikan sistem tersebut. Berikut ini adalah diagram-diagram yang tergabung dalam UML. •
Class Diagram
•
Object Diagram
•
Use Case Diagram
•
State Diagram
•
Sequence Diagram
•
Activity Diagram
•
Collaboration Diagram
•
Component Diagram
•
Deployment Diagram
25 Walaupun UML memiliki jumlah diagram yang banyak, namun tidak semuanya harus dibuat. Pada umumnya, model-model UML yang dibuat hanya memiliki subset dari seluruh diagram yang ada. Tujuan dari UML sebenarnya adalah menyediakan pemahaman yang cukup kepada orang-orang yang berhubungan dengan sistem. Penelitian ini pun hanya melibatkan beberapa diagram, antara lain use case diagram, sequence diagram, dan class diagram. Ketiga diagram ini akan dijelaskan di subbab berikut.
2.10.1. Use Case Diagram Use case adalah sebuah deskripsi dari perilaku sistem dari sudut pandang pengguna sistem. Use case berguna untuk memberikan pengguna sistem pemahaman terhadap apa saja yang mereka bisa lakukan di sistem yang akan dibangun. Use case adalah sebuah konsepsi yang membantu analis bekerja dengan pengguna sistem untuk menentukan kegunaan sistem. Use case diagram dibentuk dari skenario-skenario tentang kegunaan sistem yang dinotasikan dengan sebuah use case. Setiap skenario mendeskripsikan suatu rentetan kejadian atau kegiatan. Setiap rententan kejadian itu diinisiasi bisa oleh seorang pengguna sistem, sistem lain yang berhubungan, perangkat keras yang ada di sistem, atau waktu. Entitas-entitas yang menginisiasi rentetan kejadian ini dinamakan aktor. Aktor memiliki notasi stick figure seperti pada Gambar 2.7. Notasi aktor menggunakan sebuah use case digambarkan pada Gambar 2.8.
26
Gambar 2.7. Notasi Aktor Pada Use Case
Satu aturan dalam use case diagram: aktor selalu eksternal terhadap sistem, mereka tidak pernah menjadi bagian dari sistem yang dibangun. Sistem tidak pernah mempunyai kontrol atas suatu aktor.
Gambar 2.8. Notasi Aktor Yang Menggunakan Suatu Use Case
Dalam use case, seorang analis bisa menghilangkan duplikasi langkah-langkah yang digunakan dengan menggunakan (uses) sebuah use case baru. Metode penambahan ini berguna apabila terdapat langkah-langkah yang umum yang digunakan beberapa use case sekaligus. Pada use case diagram, notasi ini dilambangkan dengan panah dengan tulisan <<uses>> dari use case yang menggunakan ke use case yang digunakan, seperti pada Gambar 2.9.
27
Gambar 2.9. Notasi <<uses>> Pada Use Case Diagram
Selain penambahan (include), seorang analis juga bisa menggunakan kembali use case yang ada dengan memperpanjangnya (extend) seperti digambarkan pada Gambar 2.10. Perpanjangan use case ini digunakan apabila ada suatu use case yang memerlukan langkah-langkah tambahan yang isinya bukan inti pekerjaan dari use case tersebut.
Gambar 2.10. Notasi <<extends>> Pada Use Case Diagram
2.10.2. Sequence Diagram Sequence diagram digunakan terutama untuk menunjukkan interaksi antar objek dalam urutan sekuensial. Sequence diagram sangat berguna untuk mengkomunikasikan bagaimana objek-objek berinteraksi dalam suatu proses bisnis. Analis sistem umumnya menggunakan sequence diagram untuk memperjelas use case. (Bell, 2004)
28 Sequence diagram terdiri dari objek-objek yang direpresentasikan dengan dengan sebuah persegi yang memiliki nama. Objek-objek tersebut diletakkan di atas dan diurutkan dari kiri ke kanan. Dari setiap objek, ada garis putus-putus memanjang kebawah yang menggambarkan garis hidup suatu objek. Di atas garis hidup tersebut, mungkin
ada
kotak
kecil
memanjang
yang
dinamakan
aktivasi.
Aktivasi
merepresentasikan eksekusi dari operasi yang objek itu lakukan. Ketiga bagian dalam sequence diagram tersebut digambarkan pada Gambar 2.11.
object
Gambar 2.11. Objek, Garis Hidup, Dan Aktivasi Pada Sequence Diagram
Suatu objek dapat berkirim-terima pesan dengan objek lainnya. Pesan tersebut digambar sebagai sebuah panah dari garis hidup suatu objek ke objek lainnya. Ada empat jenis pesan yang bisa digunakan, yakni pesan sederhana (simple message), pesan sinkron (synchronous message), pesan asinkron (asynchronous message), dan pesan nilai pengembalian (return value). Keempat pesan tersebut dinotasikan dengan simbol panah seperti pada Gambar 2.12. Pesan sederhana digunakan untuk sekadar memindahkan kontrol
dari satu objek ke objek lainnya. Pesan sinkron digunakan
apabila suatu objek harus menunggu jawaban dari objek lain (yang dipanggil) untuk pesan tersebut sebelum melanjutkan proses lainnya. Pesan asinkron digunakan
29 digunakan apabila suatu objek tidak perlu menunggu jawaban dari objek lain sebelum melanjutkan proses lainnya.
Gambar 2.12. Simbol Pesan Pada Sequence Diagram
Sequence diagram merepresentasikan waktu dalam arah vertikal, dari atas ke bawah. Pesan yang lebih atas menandakan bahwa pesan tersebut terjadi lebih dahulu.
2.10.3. Class Diagram Class
diagram
merupakan
salah
satu
diagram
struktur
statis
yang
menggambarkan struktur dan hubungan antar kelas (Bell, 2004). Class diagram digunakan untuk mensimulasikan objek-objek dalam dunia nyata ke dalam sistem yang akan dibangun. Notasi UML untuk kelas pada class diagram adalah sebuah persegi yang dibagi menjadi tiga area seperti pada Gambar 2.13. Area yang teratas mengandung nama kelas, yang tengah mengandung atribut kelas, dan yang terbawah mengandung operasioperasi yang didukung kelas tersebut.
Gambar 2.13. Notasi Kelas Pada Class Diagram
30
Dalam sistem yang akan dibangun, kelas-kelas yang dibuat pasti akan terhubung secara konseptual. Hubungan ini dinamakan asosiasi. Analis bisa memvisualisasikan asosiasi tersebut dengan sebuah garis yang menghubungkan dua kelas seperti pada Gambar 2.14. Nama asosiasi harus ditulis di atas garis tersebut. Dalam class diagram juga dapat menggambarkan keanekaragaman (multiplicity) – jumlah objek dari suatu kelas yang berhubungan dengan sebuah objek dari kelas yang berasosiasi. Untuk menggambarkan keanekaragaman dalam asosiasi, tambahkan angka keanekaragaman di kedua ujung garis asosiasi.
Gambar 2.14. Contoh Asosiasi Pada Class Diagram
2.11.
Document Flow Diagram Menurut Mulyadi, document flow diagram atau diagram aliran dokumen adalah
suatu model yang menggambarkan aliran dokumen dan proses untuk mengolah dokumen dalam suatu proses. Daftar notasi document flow diagram terdapat di Tabel 1.1.
Tabel 1.1. Notasi Document Flow Diagram Simbol
Keterangan
31 Simbol
Keterangan Dokumen Simbol ini digunakan untuk menggambarkan semua jenis dokumen, yang merupakan formulir untuk merekam data terjadinya suatu transaksi. Keputusan Simbol ini menggambarkan keputusan yang harus dibuat
Ya
dalam proses pengolahan data. Keputusan yang dibuat ditulis Tidak
dalam simbol. Garis Alir Simbol ini menggambarkan arah proses pengolahan data.
Persimpangan Garis Alir Jika dua garis alir bersimpangan, untuk menunjukkan arah masing-masing
garis,
salah
satu
garis
dibuat
sedikit
melengkung tepat pada persimpangan kedua garis tersebut. Pertemuan Garis Alir Simbol ini digunakan jika dua garis alir bertemu dan salah satu garis mengikuti garis lainnya. Proses Simbol ini untuk menunjukkan tempat-tempat dalam sistem informasi yang mengolah atau mengubah data yang diterima menjadi data yang mengalir keluar. Nama pengolahan data
32 Simbol
Keterangan ditulis didalam simbol.
Mulai / Berakhir (terminal) Simbol ini untuk menggambarkan awal dan akhir suatu sistem akuntansi