bab 2 tinjauan pustaka 2.1. layanan berbasis...
TRANSCRIPT
8
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.
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 yang mampu
menyebabkan kesalahan.
6. Skill-based. Kesalahan yang didasari oleh kurangnya kecekatan.
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 operasi-
operasi 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.
Ya
Tidak
Keputusan
Simbol ini menggambarkan keputusan yang harus dibuat
dalam proses pengolahan data. Keputusan yang dibuat ditulis
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