BAB II LANDASAN TEORI 2.1
Sistem Informasi Geografis (SIG)
2.1.1
Pengertian SIG Sistem Informasi Geografis ( SIG ) merupakan komputer yang berbasis pada
sistem informasi yang digunakan untuk memberikan bentuk digital dan analisa terhadap permukaan geografi bumi. Definisi SIG selalu berubah karena SIG merupakan bidang kajian ilmu dan teknologi yang relatif masih baru. Beberapa definisi dari SIG adalah : Arronoff (1989), mendefinisikan SIG sebagai suatu sistem berbasis komputer yang memiliki kemampuan dalam menangani data bereferensi geografi yaitu pemasukan data, manajemen data (penyimpanan dan pemanggilan kembali), manipulasi dan analisis data, serta keluaran sebagai hasil akhir (output). Hasil akhir (output) dapat dijadikan acuan dalam pengambilan keputusan pada masalah yang berhubungan dengan geografi. Menurut Gistut (1994), SIG adalah sistem yang dapat mendukung pengambilan keputusan spasial dan mampu mengintegrasikan deskripsi-deskripsi lokasi dengan karakteristik-karakteristik fenomena yang ditemukan di lokasi tersebut. SIG yang lengkap mencakup metodologi dan teknologi yang diperlukan yaitu data spasial perangkat keras, perangkat lunak dan struktur organisasi. Kang-Tsung Chang (2002), mendefinisikan SIG sebagai : is an a computer system for capturing, storing, querying, analyzing, and displaying geographic data. Dari definisi tersebut dapat diambil kesimpulan bahwa SIG terdiri atas beberapa subsistem yaitu data input, data output, data management, data manipulasi dan analisis. (Prahasta, Eddy 2014)
Gambar 2.1 Ilustrasi Uraian Sub-sistem SIG
5 http://digilib.mercubuana.ac.id/
2.1.2 Komponen Sistem Informasi Geografis Untuk mengoperasikan SIG membutuhkan komponen – komponen SIG berupa perangkat keras (hardware), perangkat lunak (software), data, aplikasi dan manusia (brainware). Komponen - komponen SIG dapat ditunjukkan pada gambar 2.2
Gambar 2.2 Komponen-Komponen SIG (Eddy Prahasta, Konsep Dasar Sistem Informasi Geografis, 2014)
Keterangan : 1. Orang Orang yang menjalankan sistem meliputi mengoperasikan, mengembangkan bahkan memperoleh manfaat dari sistem. 2. Aplikasi Aplikasi merupakan kumpulan dari prosedur-prosedur yang digunakan untuk mengolah data menjadi informasi. 3. Data Data yang digunakan dalam SIG dapat berupa data spasial yang merupakan representasi fenomena permukaan bumi yang berupa peta, foto udara dan citra satelit. 4. Software
6 http://digilib.mercubuana.ac.id/
Perangkat lunak SIG adalah program komputer yang dibuat khusus dan memiliki kemampuan pengelolaan, penyimpanan, pemrosesan, analisis dan penayangan data spasial. 5. Hardware Perangkat keras ini berupa seperangkat komputer yang dapat mendukung pengoperasian perangkat lunak yang dipergunakan.
2.1.3
Data SIG Sistem informasi geografis bekerja dengan dua model, yaitu model raster dan
model vektor. 1. Model Raster Model raster adalah bentuk peta yang mengandung kumpulan-kumpulan dari potongan peta berupa grid yang dapat merepresentasikan gambar atau bentuk permukaan. Data raster terdiri dari nilai-nilai dalam bentuk digital yang mempresentasikan suatu gambar. Oleh karena itu dibutuhkan penandaan atau tag agar kumpulan gambar tersebut dapat diposisikan dengan tepat. 2. Model Vektor Pada model ini, suatu objek geografis direpresentasikan secara eksplisit dengan dicantumkannya koordinat objek. Terdapat tiga bentuk objek geografis, yaitu titik (point), garis (line), dan area (polygon). Data SIG pada umumnya dibagi menjadi empat kelompok, yaitu peta umum (mengenai jalan, jalan raya, batas wilayah, sungai danau, nama-nama tempat); data dan peta urusan perniagaan (mengenai demografi, layanan, telekomunikasi, iklan); data dan peta lingkungan (mengenai cuaca, lingkungan topografi, sumber daya alam); serta peta rujukan umum (rujukan peta-peta yang bersifat umum seperti peta dunia dan Negara). Pada tiap-tiap kelompok diatas, terdapat sumber yang beragam tempat data didapatkan. Menurut Dhani Gumelar dalam artikelnya mengenai data spasial, data pada peta dapat dihasilkan dari berbagai macam sumber, diantaranya adalah :
Citra Satelit; satelit dapat merekam kondisi atau gambaran dari permukaan bumi dengan menggunakan sensor/kamera.
Peta Analog; merupakan bentuk tradisional dari data spasial, dimana data ditampilkan dalam bentuk kertas atau film. Seiring dengan perkembangan teknologi, peta analog dapat disimpan dalam format digital dengan menggunakan alat scanner.
7 http://digilib.mercubuana.ac.id/
Foto Udara (Aerial Photography); serupa dengan citra satelit, namun pengambilan gambar dilakukan dari pesawat udara.
Data Tabular; berfungsi sebagai atribut bagi data spasial seperti data sensus penduduk, data sosial, dan data ekonomi.
Data Statistik; metode pengumpulan data periodik pada tempat pengamatan geografis. Misal data curah hujan.
Data Trackking; cara pengumpulan data dalam periode tertentu untuk tujuan pemantauan atau pengamatan perubahan, contoh: kebakaran hutan, gunung meletus, debit air sungai.
2.1.4
Perangkat dan Aplikasi SIG SIG dapat diterapkan pada berbagai macam peralatan atau perangkat. Contohnya
adalah menggunakan perangkat mobile, seperti Global Positioning System (GPS), yang merupakan suatu teknologi yang menggabungkan sistem informasi geografis dengan sistem navigasi yang menggunakan komunikasi satelit. Contoh aplikasi lainnya yang menggunakan perangkat mobile adalah dengan Personal Digital Assistant (PDA) dan smartphone. Pada perangkat ini, implementasi SIG dapat berupa program aplikasi GPS atau program aplikasi web based yang akan dijelaskan lebih lanjut. Untuk aplikasi SIG yang berbasis computer program-program yang ada cukup beragam, yaitu ESRI, mAPInfo, autodesk, dan mapserver. Sedangkan untuk aplikasi database terdapat beebrapa aplikasi yang dapat digunakan sebagai database seperti oracle Spatial, PostgreSQL, Informix, DB2, Imgres, dan MySQL. 2.1.5
SIG Berbasis Web Sistem Informasi Geografis telah berkembang dari segi keragaman aplikasi dan
juga media. Pengembangan aplikasi SIG kedepannya mengarah kepada aplikasi berbasis web yang dikenal dengan Web SIG. Hal ini disebabkan karena pengembangan aplikasi di lingkungan jaringan telah menunjukkan potensi yang besar dalam kaitannya dengan informasi geografis. Sebagai contoh adalah peta online interaktif sebuah kota, yang memudahkan pengguna dalam mencari informasi geografis terkini yang terdapat pada kota tersebut, tanpa mengenal batas lokasi geografis pengguna. Pada aplikasi SIG berbasis web, terdapat beberapa komponen yang saling berinteraksi. Komponen-komponen tersebut bias saja terdapat pada beberapa lokasi pada jaringan. Oleh karena itu pada SIG berbasis web, diperlukan adanya server. Arsitektur dari web SIG dapat dilihat pada gambar berikut.
8 http://digilib.mercubuana.ac.id/
SERVER
CLIENT
Web
Serve r
Browser (Plugin/Applet) Or Standalone
GIS Component
Spatial Database
Gambar 2.3 Arsitektur Global SIG Berbasis Web
Gambar diatas menunjukkan arsitektur minimum sebuah sistem Web SIG. Di sisi klien terdapat aplikasi dengan menggunakan web browser (Mozilla Firefox, Google Chrome, Opera, Internet Explorer) yang berkomunikasi dengan server sebagai penghubung dengan data yang tersedia (pada database). Komunikasi dilakukan dengan melalui web protocol seperti HTTP (Hyper Text Transfer Protocol). Komponen yang berhubungan dengan SIG yang tidak terdapat pada sisi klien dinamakan server side GIS component. Pada sisi lain, terdapat web server yang bertugas untuk merespons proses permintaan dari klien. Respons tersebut dapat berupa meneruskan permintaan klien ke komponen server side GIS lainnya. Untuk selanjutnya melakukan koneksi ke spatial database dan mengabulkan permintaan query dari klien. Hasil query tersebut dapat dikembalikan ke komponen server side GIS, untuk diteruskan ke web browser yang terdapat pada sisi klien. Dewasa ini terdapat banyak aplikasi web GIS pada jaringan internet. Hal ini dipengaruhi oleh makin berkembangnya web programming dan adanya peluang-peluang komersial yang dapat dimanfaatkan. Berikut adalah beberapa contoh web GIS atau peta online :
Yahoo Maps
Live Search Maps
Map Quest
Google Maps
Microsoft Virtual Earth
9 http://digilib.mercubuana.ac.id/
2.2
Geolocation API Geolocation API adalah suatu teknologi yang memungkinkan aplikasi untuk
mengidentifikasi lokasi geografis dari pengguna atau perangkat komputasi melalui berbagai mekanisme pengumpulan data. Berikut ini merupakan script dasar untuk menentukan lokasi pengguna. var initialLocation; var siberia = new google.maps.LatLng(60, 105); var newyork = new google.maps.LatLng(40.69847032728747, -73.9514422416687); var browserSupportFlag = new Boolean(); function initialize() { var myOptions = { zoom: 6, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById("map"), myOptions); // Try W3C Geolocation (Preferred) if(navigator.geolocation) { browserSupportFlag = true; navigator.geolocation.getCurrentPosition(function(position) { initialLocation = new google.maps.LatLng(position.coords.latitude,position.coords.longitude); map.setCenter(initialLocation); }, function() { handleNoGeolocation(browserSupportFlag); }); } // Browser doesn't support Geolocation else { browserSupportFlag = false; handleNoGeolocation(browserSupportFlag); } function handleNoGeolocation(errorFlag) { if (errorFlag == true) { alert("Geolocation service failed."); initialLocation = newyork; } else { alert("Your browser doesn't support geolocation. We've placed you in Siberia."); initialLocation = siberia; } map.setCenter(initialLocation); } }
Gambar 2.4 Script dasar untuk menentukan lokasi pengguna
Informasi lokasi geografis diperoleh melalui IP Address, koneksi jaringan wireless (Wi-Fi), menara BTS (Base Transceiver Station), atau melalui perangkat GPS (Global Positioning System) yang terintegrasi. Dengan teknologi Geolocation API sebuah aplikasi web dapat memperoleh informasi lokasi geografis pengguna secara real-time. Geolocation API saat ini telah di dukung oleh sebagian besar web browser pada komputer desktop maupun perangkat mobile.
10 http://digilib.mercubuana.ac.id/
2.3
Google Maps
2.3.1
Pengenalan Kerja Google Maps Google Maps adalah layanan mapping online yang disediakan oleh google.
Layanan ini dapat diakses melalui situs http://maps.google.com. Pada situs tersebut kita dapat melihat informasi geografis pada hampir semua wilayah di bumi. Layanan ini interaktif, karena di dalamnya peta dapat digeser sesuai keinginan pengguna, mengubah tingkat zoom, serta mengubah tampilan peta. Tampilan yang akan muncul pada situs Google Maps adalah sebagai berikut :
Gambar 2.5 Tampilan Google Maps
Fasilitas yang terdapat pada Google Maps antara lain adalah menjelajah peta; mencari lokasi tertentu, seperti hotel, tempat hiburan, lokasi bisnis; dan menghitung rute dalam berkendara. Tampilan zoom pada Google Maps dari yang paling rendah hingga yang paling tinggi dapat dilihat pada gambar 2.6 (tertinggi) dan gambar 2.7 (terendah).
11 http://digilib.mercubuana.ac.id/
Gambar 2.6 Tingkat zoom terendah
Gambar 2.7 Tingkat zoom tertinggi
Google Maps menyediakan beberapa mode pada tampilan petanya. Pada gambar berikut, dapat dilihat tampilan dengan mode map.
12 http://digilib.mercubuana.ac.id/
Gambar 2.8 Map View Google Maps
Mode map merupakan bentuk peta dasar, yang didalamnya terdapat informasi mengenai nama jalanan, sungai, danau, dan lain-lain. Namun untuk negara Indonesia fitur ini belum tersedia karena terbatasnya database. Selain itu juga terdapat beberapa mode lain, yaitu:
Sattelite: Menampilkan gambar muka bumi di seluruh lokasi di dunia yang diambil dari satelit atau pesawat udara.
Gambar 2.9 Sattelite View Google Maps
Terrain: Menampilkan citra topografi dari muka bumi.
13 http://digilib.mercubuana.ac.id/
Gambar 2.10 Terrain View Google Maps
Traffic: Menampilkan informasi mengenai keadaan lalu lintas dengan indicator warna merah, coklat, dan hijau.
Gambar 2.11 Map View – Traffic Google Maps
Street: Merupakan tampilan yang serupa dengan mode sattelite, namun dapat dilihat dari berbagai sudut (hingga 360o).
14 http://digilib.mercubuana.ac.id/
Gambar 2.12 Street View Google Maps
2.3.2
Cara Kerja Google Maps Google Maps dibuat dengan menggunakan kombinasi dari gambar peta,
database, serta obyek-obyek yang interaktif yang dibuat dengan bahasa pemrograman HTML, Javascript dan AJAX, dan beberapa bahasa pemrograman lainnya. Gambar-gambar peta yang muncul pada layar merupakan hasil komunikasi dari pengguna dengan database pada web server google untuk menampilkan gabungan dari potongan-potongan gambar yang diminta. Keseluruhan citra yang ada diintegrasikan ke dalam suatu database pada Google Server, yang nantinya akan dapat dipanggil sesuai kebutuhan permintaan. Gambar-gambar yang ditampilkan didapat dari berbagai sumber seperti NAVTEQ, TeleAtlas, MAPIT MSC Malaysia dan juga data satelit dari DigitalGlobe melalui satelit Quickbird dan MDA Federal. 2.3.3
Google Maps Application Programming Interface (API)
2.3.3.1 Definisi API Menurut Tulach (2009), “API atau Application Programming Interface bukan hanya satu set class dan method atau fungsi dan signature yang sederhana. Akan tetapi API, yang bertujuan utama untuk mengatasi “clueless” dalam membangun software yang berukuran besar, berawal dari sesuatu yang sederhana sampai ke yang kompleks dan merupakan perilaku komponen yang sulit dipahami. Secara sederhana dapat dipahami dengan membayangkan kekacauan yang akan timbul bila mengubah database atau skema XML. Perubahan ini dapat dipermudah dengan bantuan API.
15 http://digilib.mercubuana.ac.id/
Dari beberapa sumber yang didapat, dapat disimpulkan bahwa API adalah sekumpulan perintah, fungsi, class dan protokol yang memungkinkan suatu software berhubungan dengan software lainnya. Tujuan dari API adalah untuk menghilangkan “clueless” dari sistem dengan cara membuat blok besar yang terdiri dari software di seluruh dunia dan menggunakan kembali perintah, fungsi, class, atau protocol yang mereka atau API miliki. Dengan cara ini, programmer tidak perlu lagi membuang waktu untuk membuat dan menulis infrastruktur sehingga akan menghemat waktu kerja dan lebih efisien”. 2.3.3.2 Google Maps API Menurut Svennerberg (2010),“Google Maps API yang paling populer di internet. Pencatatan yang dilakukan pada bulan Mei 2010 ini menyatakan bahwa 43% mashup (aplikasi dan situs web yang menggabungkan dua atau lebih sumber data) menggunakan Google Maps API . Beberapa tujuan dari penggunaan Google Maps API adalah untuk melihat lokasi, mencari alamat, mendapatkan petunjuk mengemudi dan lain sebagainya. Hampir semua hal yang berhubungan dengan peta dapat memanfaatkan Google Maps. Google Maps API adalah satu set objek yang mewakili entitas program dari peta. Objek-objek ini adalah objek peta yang mewakili peta itu sendiri; The Marker Object, merupakan penanda lokasi pengguna di dalam peta; The Infowindow Object, akan menampilkan jendela popup ketika pengguna mengklik the marker object; dan masih banyak lagi. Objek-objek ini memberikan sifat dan metode mereka sendiri, yang memungkinkan pengguna untuk mengakses fungsi mereka dari dalam kode dan memanipulasi peta. Jadi Google Maps API merupakan alat untuk pemrograman peta. (Petroutsos, Evangelos 2014) Google Maps diperkenalkan pada Februari 2005 dan merupakan revolusi bagaimana peta di dalam web, yaitu dengan membiarkan user untuk menarik peta sehingga dapat menavigasinya. Solusi peta ini pada saat itu masih baru dan membutuhkan server khusus. Beberapa saat setelahnya, ada yang berhasil men-hack Google Maps untuk digunakan di dalam webnya sendiri. Hal ini membuat Google Maps mengambil kesimpulan bahwa mereka membutuhkan API dan pada Juni 2005, Google Maps API dirilis secara publik”. Bahasa pemrograman dari Google Maps yang hanya terdiri dari HTML dan Javascript, memungkinkan untuk menampilkan Google Maps di website lain. Kostumisasi dari aplikasi ini dimungkinkan dengan disediakannya client-side scripts dan server-side hooks.
16 http://digilib.mercubuana.ac.id/
Google Maps Application Programming Interface (API) merupakan suatu fitur aplikasi yang dikeluarkan oleh google untuk memfasilitasi pengguna yang ingin mengintegrasikan Google Maps ke dalam website masing-masing dengan menampilkan data point milik sendiri. Dengan menggunakan Google Maps API, Google Maps dapat diembed pada website eksternal. Agar aplikasi Google Maps dapat muncul di website tertentu, diperlukan adanya API key. API key merupakan kode unik yang digenerasikan oleh google untuk suatu website tertentu, agar server Google Maps dapat mengenali. Google Maps API telah menyediakan template dasar yang dapat digunakan oleh pengguna untuk dikembangkan lebih lanjut: <style type="text/css"> html, body, #map-canvas { height: 100%;margin: 0; padding: 0;} <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?key=API_KEY"> <script type="text/javascript"> function initialize() { var mapOptions = { center: { lat: -34.397, lng: 150.644}, zoom: 8 }; var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); } google.maps.event.addDomListener(window, 'load', initialize);
Perhatikan pada script yang menunjukkan titik koordinat center: { lat: -34.397, lng: 150.644} dimodifikasi menjadi var myLatlng = new google.maps.LatLng(arrKordinat.latitude[indexz], arrKordinat.longitude[indexz]);
Gambar 2.13 Template Dasar Google Maps API
Fungsi tersebut digunakan agar memberikan kemudahan bagi data koordinat yang dimasukkan oleh pengguna sehingga koordinat dapat bersifat dinamis. 2.4
Pemodelan Sistem
2.4.1
UML (Unified Modeling Language)
17 http://digilib.mercubuana.ac.id/
Pada perkembangan teknik pemograman berorientasi objek, muncul sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yang dibangun dengan menggunakan teknik pemrograman berorientasi objek, yaitu Unified Modeling Language (UML). UML muncul karena adanya kebutuhan pemodelan visual untuk menspesifikasikan, menggambarkan, membangun, dan dokumentasi dari sistem perangkat lunak. UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung. UML hanya berfungsi untuk melakukan pemodelan. Jadi, penggunaan UML tidak terbatas pada metodologi tertentu, meskipun pada kenyataannya UML paling banyak digunakan pada metodologi berorientasi objek. Pada UML 2.14 terdiri dari 13 macam diagram yang dikelompokan dalam 3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat dilihat pada gambar dibawah.
UML 2.3 Diagram
Structure Diagrams
Behavior Diagrams
Class Diagram
Use Case Diagram
Intraction Diagrams
Sequence Diagram
Object Diagram
Activity Diagram
Communication Diagram
Component Diagram
State Machine Diagram
Timing Diagram
Composite Structure Diagram
Interaction Overview Diagram
Package Diagram
Deployment Diagram
Gambar 2.14 Diagram UML (Rosa A.S. dan M. Shalahuddin, Rekayasa Perangkat Lunak, 2013)
2.4.2
Use Case Diagram Use case atau diagram use case merupakan pemodelan untuk kelakukan
(behavior) sistem informasi yang akan dibuat. Use case akan mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara
18 http://digilib.mercubuana.ac.id/
kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada didalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. Tabel 2.1 Simbol Use Case Diagram (Rosa A.S. dan M. Shalahuddin, Rekayasa Perangkat Lunak, 2013)
Simbol
Deskripsi
Use Case
Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar
Nama use case
pesan antar unit atau actor, biasanya dinyatakan dengan menggunakan kata kerja di awal-awal frase nama use case.
Aktor (actor)
Orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang
akan
dibuat
diluar
sistem
informasi yang akan dibuat itu sendiri Asosiasi (assosciation)
Komunikasi antara actor dan use case yang berpartisipasi pada use case atau use case memiliki interaksi dengan actor.
Ekstensi (extend)
Relasi use case tambahan ke sebuah use case yang ditambahkan dapat berdiri sendiri walau tanpa use case
<<extend>>
tambahan itu, mirip dengan prinsip inheritance
pada
pemrograman
berorientasi objek. Generalisasi (generalization)
Hubungan generalisasi dan spesialisasi (umum-khusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang umum dari lainnya.
Menggunakan (include/use)
Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau
19 http://digilib.mercubuana.ac.id/
sebagai syarat dijalankan use case ini
<
> <<uses>>
2.4.3
Activity Diagram Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja)
atau aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan actor, jadi aktivitas yang dapat dilakukan oleh sistem. Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut : 1. Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan. 2. Urutan atau pengelompokan tampilan dari sistem / user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan. 3. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya 4. Rancangan menu yang ditampilkan pada perangkat lunak Tabel 2.2 Simbol Activity Diagram (Rosa A.S. dan M. Shalahuddin, Rekayasa Perangkat Lunak, 2013)
Simbol
Deskripsi
Status awal
Status
awal
aktivitas
sistem,
sebuah diagram aktivitas memiliki sebuah status awal Aktivitas
Aktivitas yang dilakukan sistem, aktivitas biasanya diawali dengan
Activity
kata kerja
Percabangan (Decision)
Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu
Penggabungan (Join)
Asosiasi penggabungan dimana lebih
dari
satu
aktivitas
digabungkan menajdi satu
20 http://digilib.mercubuana.ac.id/
Status Akhir
Status
akhir
yang
dilakukan
sistem, sebuah diagram aktivitas memiliki sebuah status akhir Swimlane
Memisahkan
organisasi
bisnis
yang bertanggung jawab terhadap
Swimlane
aktivitas yang terjadi
Swimlane
Atau
2.4.4
Sequence Diagram Sequence diagram menggambarkan kelakukan objek pada use case dengan
mendeskripsikan waktu hidup object dan message yang dikirimkan dan diterima antar objek. Oleh karena itu, untuk menggambarkan sequence diagram maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Banyaknya sequence diagram yang harus digambar adalah, minimal sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada sequence diagram sehingga semakin banyak use case yang didefinisikan maka sequence diagram yang harus dibuat juga semakin banyak Tabel 2.3 Tabel Simbol Sequence Diagram (Rosa A.S. dan M. Shalahuddin, Rekayasa Perangkat Lunak, 2013)
Simbol Aktor
Deskripsi Orang, proses, atau sistem lain yang beriteraksi dengan sistem informasi yang akan dibuat diluar sistem
21 http://digilib.mercubuana.ac.id/
informasi yang akan dibuat itu sendiri. Jadi, walaupun symbol dari actor adalah gambar orang, tapi actor Actor
belum
Atau
biasnya
tentu
merupakan
dinyatakan
orang;
menggunakan
kata benda di awal frase nama aktor
Nama aktor
Tanpa waktu aktif Garis hidup (lifeline)
Menyatakan kehidupan suatu objek
Objek
Menyatakan objek yang berinteraksi
nama objek : nama kelas
Waktu aktif
pesan. Menyatakan objek dalam keadaan aktif dan berinteraksi, semua yang terhubung dengan waktu aktif ini adalah
sebuah
tahapan
yang
dilakukan didalamnya. Pesan tipe create <>
Menyatakan suatu objek membuat objek
yang
lain,
arah
panah
mengarah pada objek dibuat. Pesan tipe call 1:nama_metode ()
Pesan tipe send 1:masukan
Menyatakan suatu objek memanggil oprasi/metode yang ada pada objek lain atau dirinya sendiri. Menyatakan
bahwa
suatu
objek
ke
objek
mengirimkan data/masukan/informasi lainnya.
Pesan tipe return
Menyatakan suatu objek yang telah menjalankan metode
suatu
oprasi
menghasilkan
atau suatu
kembalian ke objek tertentu.
22 http://digilib.mercubuana.ac.id/
1:keluaran
Pesan tipe destroy «destroy»
Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada objek yang diakhiri, sebaiknya jika ada creae maka ada destroy.
2.4.5
Class Diagram Class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-
kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode. 1.
Atribut merupakan variable-variabel yang dimiliki oleh suatu kelas
2.
Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas. Tabel 2.4 Simbol Class Diagram (Rosa A.S. dan M. Shalahuddin, Rekayasa Perangkat Lunak, 2013)
Simbol
Deskripsi
Kelas
Kelas pada struktur sistem
Class name Attributes Operations
Antarmuka (interface)
Sama dengan konsep interface dalam pemrograman berorientasi
nama_interface
Asosiasi (Associtation)
objek Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity
Asosiasi association)
berarah
(Directed Relasi antar kelas dengan makna kelas yang satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity
23 http://digilib.mercubuana.ac.id/
Generalisasi
Relasi antar kelas dengan makna generalisasi-spesialisasi
(umum
khusus) Ketergantungan (Dependency)
Relasi antar kelas dengan makna ketergantungan antar kelas
Agregasi (Aggregationi)
Relasi antar kelas dengan makna semua-bagian (whole-part)
2.5
Prototyping Metode yang digunakan penulis dalam melakukan pengembangan sistem
penjadwalan ini yaitu menggunakan model prototyping. Menurut Rosa A.S, M. Shalahudin,
Rekayasa
Perangkat
Lunak,
2013,
sering
pelanggan
(Customer)
membayangkan kumpulan kebutuhan yang diinginkan tapi tidak terspesifikasikan secara detail dari segi masukan (input), proses, maupun keluaran (output). Di sisi lain seorang pengembang perangkat lunak harus menspesifikasikan sebuah kebutuhan secara detail dari segi teknis dimana pelanggan sering kurang mengerti mengenai hal teknis ini. Model prototyping dapat digunakan untuk menyambungkan ketidakpahaman pelanggan mengenai hal teknis dan memperjelas spesifikasi kebutuhan yang diinginkan pelanggan kepada pengembang perangkat lunak. Model prototyping (prototyping model) dimulai dari mengumpulkan kebutuhan pelanggan terhadap perangkat lunak yang akan dibuat. Lalu dibuatlah program prototype agar pelanggan lebih terbayang dengan apa yang sebenarnya diinginkan. Program prototype ini biasanya merupakan program yang belum jadi. Program ini biasanya menyediakan tampilan dengan simulasi alur perangkat lunak sehingga tampak seperti perangkat lunak yang sudah jadi. Program prototype ini dievaluasi oleh pelanggan atau user sampai ditemukan spesifikasi yang sesuai dengan keinginan pelanggan atau user. Berikut adalah gambar 2.15 dari model prototyping :
24 http://digilib.mercubuana.ac.id/
Gambar 2.15 Prototyping Model (Rosa A.S. dan M. Shalahuddin, Rekayasa Perangkat Lunak, 2013)
Mock-up adalah sesuatu yang digunakan sebagai model desain yang digunakan untuk mengajar, demonstrasi, evaluasi desain, promosi, atau keperluan lain. Sebuah mock-up disebut sebagai prototype perangkat lunak jika menyediakan atau mampu mendemonstrasikan sebagian besar fungsi sistem perangkat lunak dan memungkinkan pengujian desain sistem perangkat lunak. Iterasi terjadi pada pembuatan prototype sampai sesuai dengan keinginan pelanggan. Seiring dengan mengembangkan prototype maka sistem perangkat lunak yang sebenarnya dikembangkan juga sehingga sesuai dengan kebutuhan pelanggan (customer) atau user. Tahapan - tahapan yang dilakukan dalam perancangan dan implementasi ini adalah : 1.
Mendengarkan Permintaan Pelanggan Tahap
pertama
dari
metode
ini
adalah
mendengarkan
pelanggan
yaitu
mengumpulkan data – data mengenai kebutuhan sistem yang akan dibuat. 2.
Membangun/merevisi Mock-Up. Setelah mendapatkan kebutuhan yang dibutuhkan untuk membuat prototype, tahap
berikutnya yang dilakukan adalah membangun memperbaiki prototype tahap ini dilakukan dengan pembuatan sistem secara keseluruhan hingga selesai berdasarkan pada analisa kebutuhan yang sudah dilakukan sebelumnya. 3.
Pelanggan Melakukakn Uji Coba Mock-Up Tahap akhir dari model prototype ini adalah tahap pengujian (testing). Pengujian
dilakukan oleh pengguna dari sistem. Tahap pengujian dilakukan untuk mendapatkan tanggapan atas sistem yang telah dibuat.
25 http://digilib.mercubuana.ac.id/
Ketiga proses tersebut dilakukan secara berulang - ulang, hingga mendapatkan kepuasan dari pelanggan atas sistem yang telah dibuat. Proses yang dilakukan harus sesuai dengan urutan. 2.6
Responsive Web Design (RWD) RWD adalah sebuah metode atau pendekatan sistem web desain yang bertujuan
memberikan pengalaman berselancar yang optimal dalam berbagai perangkat, baik perangkat mobile maupun komputer. Dengan metode ini, web akan beradaptasi jika dibuka dari perangkat mobile berukuran kecil maupun perangkat komputer dengan ukuran monitor besar. Ukuran huruf, user interface, gambar dan tata letak akan menyesuaikan dengan lebar layar dan resolusi layar monitor yang tersedia. Hasilnya pengguna akan merasakan pengalaman mudah membaca, nyaman dan melihat informasi web tersebut sama dengan jika ia melihat melalui perangkat komputer meja.
Gambar 2.16 Metode RWD (Thoriq Firdaus, Responsive Web Design by Example, 2013)
2.7
Adobe Dreamweaver
2.7.1
Definisi Adobe Dreamweaver Menurut Sibero, (2011:384) Dreamweaver merupakan sebuah produk web
developer yang dikembangkan oleh Adobe system Inc, Dreamweaver dikembangkan oleh Macromedia Inc, yang kemudian sampai saat ini perkembangannya diteruskan oleh Adobe System Inc, Dreamweaver dikembangkan dan dirilis dengan kode nama Creative Suit (CS). Menurut Milician (2012:5), Dreamweaver CS3 is a powerful Hyper Text Markup Language (HTML) editor used by professionals, as well as beginners. (Dreamweaver CS3 adalah HyperTextMarkup Language (HTML) editor yang digunakan oleh profesional, serta pemula).
26 http://digilib.mercubuana.ac.id/
Berdasarkan definisi-definisi diatas, maka dapat disimpulkan dreamweaver adalah suatu aplikasi yang digunakan dalam membangun atau membuat sebuah web. Saat ini terdapat software dari kelompok Adobe yang belakangan banyak digunakanuntuk mendesain suatu web versi terbaru dari Adobe Dreamweaver CS3 memiliki beberapa kemampuan bukan hanya sebagai software untuk desain web saja tetapi juga menyunting kode serta pembuatan aplikasi web, antara lain JSP, PHP, ASP, XML, dan ColdFusion. 2.7.2
Ruang Kerja Adobe Dreamweaver Ruang Kerja atau Workspace adalah bagian keseluruhan tampilan Adobe
Dreamweaver. Ruang kerja Dreamweaver terdiri dari Welcome Screen, Menu, Insert Bar, Document Window, CSS Panel, Aplication Panel, Tag Inspector, Property Inspector, Result Panel, dan Files Panel. Masing-masing dari komponen tersebut memiliki fungsi dan aturan. Berikut di bawah ini penjelasannya:
Gambar 2.17 Ruang Kerja Adobe Dreamweaver CS6
(Alexander Sibero, Kitab Suci Web Programing, 2011) 2.8
PHP (Hypertext Preprocessor)
2.8.1
Definisi PHP (Hypertext Preprocessor) Menurut Sibero (2011:2), berpendapat bahwa “PHP adalah pemograman
interpreter yaitu proses penerjemahan baris kode mesin yang dimengerti komputer secara langsung pada saat baris kode dijalankan atau sering disebut suatu bahasa dengan hak
27 http://digilib.mercubuana.ac.id/
cipta terbuka yang juga dikenal dengan istilah open source yaitu pengguna dapat mengembangkan kode-kode fungsi PHP sesuai dengan kebutuhannya”. [8] Contoh source code program PHP yang digunakan untuk menghitung saldo bulanan nasabah bank :
Gambar 2.18 Source code PHP
Tampilan output dari source program diatas adalah sebagai berikut:
Gambar 2.19 Tampilan Output PHP
2.8.2
Keunggulan PHP (Hypertext Preprocessor) Menurut Winarno dan Zaki (2011:9), ada beberapa keunggulan PHP
dibandingkan bahasa pemograman lain, diantaranya:
Bahasa pemograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaannya.
Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi dan juga panduan yang banyak.
PHP merupakan bahasa open source yang dapat digunakan diberbagai mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta dapat menjalankan perintah-perintah sistem. [10] Jumlah pengguna PHP berdasarkan data statistik yang dirilis oleh w3tech.com
pada tahun 2014 adalah sebagai berikut:
28 http://digilib.mercubuana.ac.id/
Gambar 2.20 Data Statistik Pengguna PHP. (Sumber: www.mkhuda.com)
Dari data diatas pengguna PHP lebih unggul dibandingkan dengan pengguna bahasa pemograman lainnya. Aplikasi web terpopuler saat ini juga banyak menggunakan PHP. Contohnya: Facebook, WordPress, Joomla, Drupal, portal berita detik.com, kompas.com. 2.9
MySQL
2.9.1
Definisi MySQL Menurut Raharjo (2011:45), “SQL adalah bahasa standar yang digunakan untuk
mengakses data di dalam database relational. Setiap server database relational atau Database Management System (RDBMS) mendukung SQL untuk mengatur dan mngolah datanya”. (Raharjo, Budi 2011) 2.9.2
Kelebihan MySQL Menurut Saputra (2012:8) beberapa kelebihan yang dimiliki MySQL adalah
sebagai berikut:
Bersifat open source, yang memiliki kemampuan untuk dapat dikembangkan lagi.
Menggunakan bahasa SQL (Structure Query Language), yang merupakan standar bahasa dunia dalam pengolahan data.
Super performance dan realible, tidak bias diragukan, pemrosesan database-nya sangat cepat dan stabil.
Sangat mudah dipelajari (easy of use).
Memiliki dukungan support (group) pengguna MySQL.
Mampu lintas Platform, dapat berjalan di berbagai sistem operasi.
Multiuser, dimana MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami konflik.
29 http://digilib.mercubuana.ac.id/
Gambar 2.21 Logo MySQL
2.10
CSS (Cascading Style Sheet) CSS (Cascade Style Sheet) merupakan salah satu bahasa pemrograman web yang
bertujuan untuk membuat web menjadi lebih menarik dan terstruktur”. Pada CSS kita bisa merubah warna tabel, besar font, atau tata letak menu yang terkendali dari CSS sehingga semua jendela web yang berkaitan dengan perubahan tersebut secara otomatis dapat berubah, dengan CSS kita tidak perlu membuat style pada setiap file PHP, karena cukup dengan satu file CSS kita telah bisa mengontrol semua style yang kita inginkan pada setiap file PHP yang akan ditampilkan nanti di web browser. 2.11
JQuery JQuery adalah salah satu library atau framework JavaScript yang memungkinkan
kita untuk membuat program web pada suatu halaman web, tanpa harus secara eksplisit menambahkan event atau aksi atau pun properti pada halaman web tersebut, semuanya sudah dibuatkan oleh yang namanya JQuery. Kemudahan atau kenapa orang banyak menggunakan framework javascript ini adalah karena banyaknya plugin aplikasi yang siap jadi atau siap digunakan seperti: Drop Down Menu, Autocomplete, Tool Tips dan lain sebagainya. Plugin adalah semacam fungsi atau fitur tambahan yang digabungkan ke dalam sebuah JQuery mempercepat atau memudahkan dalam pembangunan sebuah website.
30 http://digilib.mercubuana.ac.id/