SKRIPSI
PENGEMBANGAN APLIKASI PENCARIAN DATA KORBAN BENCANA (SINRA) DI INDONESIA BERBASIS WEB
Oleh: Aditya Hadiwijaya 106091002874
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2010
PENGESAHAN UJIAN Skripsi yang berjudul “Pengembangan Aplikasi Pencarian Data Korban Bencana (Sinra) Di Indonesia Berbasis Web“, telah diuji dan dinyatakan lulus dalam Sidang Munaqosah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta, pada hari Selasa tanggal 30 November 2010. Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Program Teknik Informatika Jakarta, 30 November 2010 Tim Penguji, Penguji I
Penguji II
Herlino Nanang, MT NIP. 19731209 250501 1 002
Ria Hari Gusmita, M.Kom NIP. 19820817 200912 2 002
Tim Pembimbing, Pembimbing I
Pembimbing II
Qurrotul Aini, MT NIP. 19730325 200901 2 001
Fitri Mintarsih, M.Kom NIP. 19721223 200720 2 004
Mengetahui, Dekan Fakultas Sains Dan Teknologi
Ketua Program Studi Teknik Informatika
DR. Syopiansyah Jaya Putra, M.Sis NIP. 19680117 200112 1 001
Yusuf Durachman M.Sc, MIT NIP. 19710522 200604 1 002
iii
PENGEMBANGAN APLIKASI PENCARIAN DATA KORBAN BENCANA (SINRA) DI INDONESIA BERBASIS WEB
Skripsi Sebagai Salah Satu Syarat untuk Memperoleh Gelar Sarjana Komputer Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta Oleh: Aditya Hadiwijaya 106091002874
Menyetujui,
Pembimbing 1
Pembimbing 2
Qurrotul Aini, MT NIP. 198730325 200901 2 001
Fitri Mintarsih, M.Kom NIP. 19721223 200720 2 004
Mengetahui, Ketua Jurusan Teknik Informatika,
Yusuf Durachman, M.Sc, MIT NIP. 19710522 200604 1 002
ii
PERNYATAAN DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENARBENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.
Jakarta, 13 Oktober 2010
Aditya Hadiwijaya 106091002874
iv
ABSTRAK Aditya Hadiwijaya, Pengembangan Aplikasi Pencarian Data Korban Bencana di Aceh, dibimbing oleh Qurrotul Aini, M.T dan Fitri Mintarsih, M.Kom. Pelaksanaan pendataan korban bencana di Indonesia kurang ditanggapi dengan serius. Puncaknya adalah ketika terjadi tsunami di Aceh dimana ribuan orang kehilangan sanak saudara mereka. Sebagian dari mereka ada yang menemukan sanak saudara mereka setelah berbulan-bulan lamanya bahkan ada yang sampai bertahun-tahun. Semua cara ditempuh oleh para pencari korban bencana untuk menemukan sanak saudaranya. Suatu aplikasi yang terintegrasi diperlukan agar pendataan dan pencarian data korban bencana bisa lebih efektif dan efisien. Penelitian ini bertujuan untuk melihat, menganalisis, dan memecahkan masalah yang timbul pada pendataan serta pencarian data korban bencana bisa menjadi lebih efektif dan efisien. Analisa yang digunakan adalah dengan mewawancarai korban bencana tsunami Aceh serta bertanya langsung kepada Badan Nasional Penanggulangan Bencana yang bertanggung jawab terhadap bencana yang terjadi di Indonesia. Dalam penelitian ini metode pengembangan aplikasi yang peneliti gunakan adalah Incremental Process Models. Untuk ke depannya, aplikasi ini dapat dikembangkan lagi misalnya dengan menambahkan fasilitas online face recognition.
Kata Kunci : Pengembangan, Aplikasi, Data Korban Bencana, Aceh Jumlah Halaman : 109 halaman Jumlah Daftar Pustaka : 29 sumber
v
KATA PENGANTAR
Bismillahirrahmannirrahiim……… Segala puji dan syukur penulis panjatkan kepada Allah SWT, Yang Maha Kuasa dan telah memberikan berkah dan anugerah-Nya kepada penulis sehingga penulis mampu menyelesaikan skripsi ini dengan sebaik-baiknya. Shalawat serta salam tak lupa juga penulis haturkan kepada junjungan kita Nabi Besar Muhammad SAW. Skripsi ini penulis buat sebagai syarat kelulusan dalam menempuh pendidikan jenjang Strata-1 (S1) di Universitas Islam Negeri Syarif Hidayatullah Jakarta. Selain itu juga penulis berharap penelitian ini dapat dipergunakan dengan baik oleh semua pihak yang membutuhkan, sehingga perkembangan ilmu pengetahuan dan teknologi khususnya di Program Studi Teknik Informatika UIN Syarif Hidayatullah Jakarta dapat lebih maju dan lulusannya dapat bekerja secara kooperatif dengan semua elemen informatika dari seluruh dunia. Pada kesempatan ini, penulis mengucapkan terima kasih kepada pihakpihak yang telah membantu penulis menyelesaikan skripsi ini : 1. Bapak Dr. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains dan Teknologi. 2. Bapak Yusuf Durrachman, M.Sc, MIT selaku ketua Program Studi Teknik Informatika. 3. Ibu Qurrotul Aini, M.T selaku Pembimbing 1 serta Ibu Fitri Mintarsih, M.Kom. selaku Pembimbing 2 dan yang telah rela meluangkan waktunya
vi
untuk mendukung dan membimbing penulis dalam menyelesaikan skripsi ini. 4. Ibu Neulis Zuliasri sebagai Kepala Bidang Informasi dari Badan Nasional Penanggulangan Bencana yang telah bekerja sama dalam penyelesaian skripsi ini. 5. Seluruh warga forum kaskus.us dan acehforum.co.id serta milis Flex Indonesia yang telah meluangkan waktu untuk membantu penyelesaian skripsi ini. 6. Bapak dan Ibu penguji yang memberikan kritik dan saran pada skripsi ini. 7. Dosen-Dosen Fakultas Sains dan Teknologi yang telah mengajarkan kepada penulis berbagai macam ilmu yang dapat penulis terapkan dalam penulisan skripsi ini. 8. Kedua orang tua penulis, yang telah memberikan dukungan moril, semangat dan materiil sehingga memperlancar proses penyusunan skripsi ini. 9. Teman-Teman seperjuangan TI UIN 2006. Penulis menyadari masih terdapat banyak kekurangan dalam penelitian ini, baik penulisan maupun aplikasinya sendiri. Oleh karena itu penulis mengharapkan saran dan kritik yang dapat membangun skripsi ini lebih baik lagi. Jakarta, Oktober 2010
Penulis
vii
DAFTAR ISI
Halaman Judul ................................................................................................. i Lembar Persetujuan Pembimbing ................................................................. ii Lembar Pengesahan Ujian ............................................................................... iii Halaman Pernyataan ....................................................................................... iv Abstrak .............................................................................................................. v Kata Pengantar ................................................................................................ vi Daftar Isi ........................................................................................................... viii Daftar Tabel ...................................................................................................... xii Daftar Gambar ................................................................................................. xiii Daftar Simbol ................................................................................................... xv
BAB I PENDAHULUAN 1.1 Latar Belakang ....................................................................................... 1 1.2 Perumusan Masalah ............................................................................... 2 1.3 Batasan Masalah .................................................................................... 3 1.4 Tujuan Penulisan .................................................................................... 3 1.5 Manfaat Penulisan .................................................................................. 3 1.5.1 Bagi Mahasiswa .............................................................................. 3 1.5.2 Bagi Masyarakat ............................................................................. 4 1.5.3 Bagi Universitas .............................................................................. 4 1.6 Metode Penelitian .................................................................................. 4 1.6.1 Metodologi Pegumpulan Data ...................................................... 4
viii
1.6.2 Metodologi Pengembangan Sistem ............................................... 5 1.7 Sistematika Penulisan ............................................................................ 6
BAB II LANDASAN TEORI 2.1 Pengembangan ....................................................................................... 8 2.2 Aplikasi .................................................................................................. 8 2.3 Tsunami Aceh ........................................................................................ 9 2.4 Data ........................................................................................................ 10 2.5 Informasi ................................................................................................ 10 2.6 Sistem Informasi .................................................................................... 11 2.7 Database Management System .............................................................. 12 2.7.1 Data ............................................................................................. 13 2.7.2 Model Data .................................................................................. 15 2.7.3 Arsitektur Sistem Database ......................................................... 16 2.8 Multimedia ............................................................................................. 18 2.8.1 Elemen Multimedia ....................................................................... 19 2.8.2 Animasi ......................................................................................... 22 2.9 World Wide Web ................................................................................... 25 2.10 Sistem Informasi Geografis .................................................................. 26 2.11 Aplication Program Interface ............................................................... 28 2.12 Google Maps ........................................................................................ 29 2.13 MySql ................................................................................................... 30 2.14 PHP ...................................................................................................... 32 2.15 AMFPHP .............................................................................................. 34
ix
2.16 Perangkat Mobile ................................................................................. 36 2.17 Adobe Flash ......................................................................................... 38 2.18 Adobe Flash Lite .................................................................................. 39 2.19 Kuneri Lite ........................................................................................... 40 2.20 Flex ....................................................................................................... 42 2.21 Incremental Process Models ................................................................ 43 2.21.1 Komunikasi ................................................................................. 45 2.21.2 Perencanaan ................................................................................. 45 2.21.3 Modeling ..................................................................................... 46 2.21.4 Konstruksi ................................................................................... 46 2.21.5 Deployment ................................................................................. 47 2.22 Unified Modelling Language ............................................................... 48 2.23 Blackbox Testing ................................................................................. 56
BAB III METODE PENELITIAN 3.1 Metodologi Pengumpulan Data .............................................................. 58 3.1.1 Studi Lapangan .............................................................................. 58 3.1.2 Studi Pustaka ................................................................................. 58 3.2 Metode Pengembangan Aplikasi ............................................................ 59 3.2.1 Communication ............................................................................. 59 3.2.2 Planning ........................................................................................ 59 3.2.3 Modeling ....................................................................................... 62 3.2.4 Construction .................................................................................. 62 3.2.5 Deployment ................................................................................... 62
x
3.3 Kerangka Berpikir .................................................................................. 63
BAB IV HASIL DAN PEMBAHASAN 4.1 Gambaran Umum Provinsi Aceh ............................................................ 64 4.1.1 Lambang Provinsi Aceh .............................................................. 64 4.1.2 Visi Pmerintahan Aceh ............................................................... 65 4.1.3 Misi Pemerintahan Aceh ............................................................. 65 4.1.4 Struktur Organisasi Pemerintahan Propinsi Aceh ....................... 66 4.1.5 Daratan dan Sumber Daya .......................................................... 66 4.1.6 Populasi dan Kebudayaan ........................................................... 67 4.1.7 Sejarah ......................................................................................... 68 4.2 Pengembangan Aplikasi.......................................................................... 69 4.2.1 Modeling ...................................................................................... 70 4.2.2 Desain .......................................................................................... 92 4.2.3 Pengujian Aplikasi dengan Blackbox Testing ......................... 104
BAB 5 PENUTUP 5.1 Kesimpulan ............................................................................................. 108 5.2 Saran........................................................................................................ 109
Daftar Pustaka .................................................................................................. 110 Lampiran
xi
DAFTAR GAMBAR
Gambar 2.1 Peta Informasi Korban Tsunami Aceh Desember 2004 .................. 8 Gambar 2.2 Arsitektur Tiga Tingkatan ............................................................... 18 Gambar 2.3 Perbedaan Antara Bitmap/Raster dan Vector .................................. 22 Gambar 2.4 Cara Kerja Plugin Kuneri Lite ......................................................... 41 Gambar 2.5 Incremental Process Model ............................................................. 44 Gambar 2.6 Contoh Use Case Diagram .............................................................. 51 Gambar 2.7 Contoh Activity Diagram ................................................................ 52 Gambar 2.8 Contoh Sequence Diagram .............................................................. 54 Gambar 2.9 Contoh Deployment Diagram ......................................................... 55 Gambar 3.1 Kerangka Berpikir ........................................................................... 63 Gambar 4.1 Lambang Daerah Aceh..................................................................... 64 Gambar 4.2 Struktur Organisasi Pemerintahan Propinsi Aceh ........................... 66 Gambar 4.3 Use Case Diagram Sinra ................................................................. 71 Gambar 4.4 Activity Diagram Sinra Input Data dengan Handphone ................. 73 Gambar 4.5 Activity Diagram Sinra Tambah, Edit, dan Delete Data ................. 74 Gambar 4.6 Activity Diagram Sinra Tambah, Edit, dan Delete Instansi ............ 75 Gambar 4.7 Activity Diagram Sinra Tambah, Edit, dan Delete User ................. 76 Gambar 4.8 Activity Diagram Sinra Pencarian Data dengan Handphone .......... 77 Gambar 4.9 Activity Diagram Sinra Pencarian Data pada web .......................... 78 Gambar 4.10 Activity Diagram Sinra Pencarian Data pada web .......................... 79 Gambar 4.11 Sequencial Diagram Sinra Pencarian Data dengan Handphone .... 80 Gambar 4.12 Sequencial Diagram Register User dengan Handphone ................ 81
xiii
Gambar 4.13 Sequencial Diagram Input Data Melalui Handphone .................... 82 Gambar 4.14 Sequencial Diagram Data Management oleh Staff Melalui Web ... 83 Gambar 4.15 Sequencial Diagram Instansi Management oleh Staff Melalui Web 84 Gambar 4.16 Sequencial Diagram User Management oleh Admin Melalui Web 85 Gambar 4.17 Deployment Diagram Sinra Pencarian Data Korban pada Handphone ................................................................................................................................ 86 Gambar 4.18 Deployment Diagram Sinra Input Data Korban pada Handphone... 86 Gambar 4.19 Deployment Diagram Sinra Pencarian Data Korban pada Web ...... 87 Gambar 4.20 Halaman unduh Sinra ...................................................................... 92 Gambar 4.21 Form Pencarian Data Korban Sinra pada Handphone .................... 93 Gambar 4.22 Hasil Pencarian Data Korban Sinra pada Handphone...................... 93 Gambar 4.23 Login Page Sinra pada Handphone .................................................. 94 Gambar 4.24 Register Page Sinra pada Handphone ............................................. 95 Gambar 4.25 Input Page Sinra pada Handphone ................................................... 96 Gambar 4.26 Home Page Sinra pada Web ............................................................ 97 Gambar 4.27 Login Page Sinra pada Web ............................................................. 97 Gambar 4.28 Page Pencarian Bencana Sinra pada Web ........................................ 98 Gambar 4.29 Hasil Pencarian Data Korban Bencana Sinra pada Web ................. 99 Gambar 4.30 Halaman Peta Sinra pada Web ........................................................ 100 Gambar 4.31 Detail Page Sinra pada Web ............................................................ 101 Gambar 4.32 Page Tambah Data Sinra pada Web................................................. 102 Gambar 4.33 Page Instansi Sinra pada Web .......................................................... 103 Gambar 4.34 User Management Page Sinra pada Web ........................................ 104
xiv
DAFTAR TABEL
Halaman Tabel 2.1 Konsepsi Dasar UML ........................................................................ 49 Tabel 4.1 Tabel Use Case Diagram Sinra .......................................................... 71 Tabel 4.2 Tabel User .......................................................................................... 87 Tabel 4.5 Tabel Bencana .................................................................................... 88 Tabel 4.6 Tabel Instansi ..................................................................................... 89 Tabel 4.7 Hasil Pengujian dengan Blackbox Testing ...................................... 104
xii
BAB I PENDAHULUAN
1.1.
Latar Belakang Penanganan bencana di Indonesia saat ini masih kurang efektif, misalnya
saja masalah pencarian data korban bencana. Sebelum tahun 2009 data-data korban bencana masih ditulis manual dan data tersebut masih tersebar di berbagai organisasi,
misalnya
Palang
Merah
Indonesia
(PMI),
Badan
Nasional
Penanggulangan Bencana (BNPB), atau stasiun tv. Datanya pun hanya berupa jumlah korban yang selamat, luka-luka, atau meninggal yang bisa dilihat dari situs BNPB. Pada tahun 2004 terjadi tsunami yang meluluh lantakkan sebagian besar Aceh. Banyak para korban yang kehilangan sanak saudaranya. Pendataan terhadap korban bencana pun tidak jelas, karena data-data korban bencana yang masuk dan keluar dari tenda pengungsian tidak di-update terus menerus. Pencarian terhadap korban bencana menjadi sangat sulit dilakukan. Segala cara dilakukan untuk menemukan korban bencana mulai dari menyebarkan dan menempelkan brosur korban bencana yang hilang, bertanya ke orang-orang sekitar, sampai mendatangi stasiun tv untuk meminta siaran ulang peliputan di tenda pengungsi korban bencana. Berdasarkan data UNICEF terdapat lima ribu anak yang hilang terpisah dari keluarga mereka. Setelah tahun 2009 BPNB menetapkan bahwa setiap organisasi yang memiliki data korban bencana harus dikirim ke BPNB yang memberikan
1
2
informasi nama, umur, serta keadaan korban bencana tersebut. Data-datanya pun masih tersebar ke beberapa file dan belum dikumpulkan ke dalam satu database data korban bencana, sehingga pencarian data korban bencana menjadi tidak efektif karena harus membuka file tersebut satu per satu. Oleh karena itu dibutuhkan suatu aplikasi yang terintegrasi yang dapat melakukan input data korban bencana secara efektif dan efisien. Tetapi, aplikasi yang hanya bisa diakses melalui komputer saja kurang baik karena pemindahan komputer dari satu tempat ke tempat lain tidak efektif serta tidak memungkinkan untuk memasukkan foto korban bencana karena tidak semua korban bencana dalam kondisi sehat. Penggunaan laptop pun kurang efektif selain ukuran yang besar kondisi baterainya pun hanya bertahan sekitar tiga jam. Oleh karena itu dibutuhkan media lain yang lebih mudah untuk dibawa-bawa serta yang memiliki daya tahan baterai yang lebih lama. Dengan alasan inilah peneliti menggunakan dua media, yaitu ponsel dan komputer agar pendataan korban bencana dapat mejadi lebih efektif dan efisien. Berdasarkan masalah tersebut peneliti ingin mengembangkan sebuah aplikasi pencarian data korban bencana berbasis web, aplikasi ini dapat mempermudah pencarian data korban bencana dengan menggunakan internet. Adapun judul penelitian adalah ”Pengembangan Aplikasi Pencarian Data Korban Bencana di Indonesia Berbasis Web”
3
1.2.
Perumusan Masalah Pokok masalah yang hendak dibahas dalam penelitian ini adalah: 1. Pencarian data korban bencana saat ini sulit karena pendataan korban bencana masih dilakukan secara manual dan belum terintegrasi. 2. Pendataan korban bencana melalui komputer memiliki kesulitan proses pemindahan komputer ke tempat lain.
1.3.
Batasan Masalah Berdasarkan perumusan masalah di atas, permasalahan dibatasi pada
informasi data korban yaitu: 1. Lokasi bencana di Indonesia. 2. Membuat aplikasi untuk melakukan input dan pencarian data dari handphone ke server. Aplikasi ini hanya mendukung handphone dengan dukungan aplikasi Adobe Flashlite 2.1 atau versi lebih baru dengan sistem operasi Symbian S60 v3. 3. Aplikasi ditampilkan dalam media website dan handphone. 4. Konsep pencarian data menggunakan pattern matching.
1.4.
Tujuan Penelitian Tujuan dalam melakukan skripsi adalah: Mengembangkan aplikasi pencarian korban bencana di Indonesia berbasis web menggunakan handphone dan menampilkan gambar data korban
4
sesuai dengan pencarian sehingga pencarian data korban dapat dilakukan dengan efektif dan efisien.
1.5.
Manfaat Penelitian Manfaat yang didapatkan dalam melakukan penelitian ini adalah:
1.5.1. Bagi mahasiswa: 1. Menerapkan ilmu-ilmu yang diperoleh selama kuliah. 2. Membandingkan teori-teori yang ada dengan masalah sebenarnya. 3. Untuk memenuhi salah satu syarat kelulusan strata satu (S1), Program Studi Teknik Informatika Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta. 1.5.2. Bagi Masyarakat: Mempermudah pencarian kerabat, sahabat atau keluarga yang menjadi korban bencana di Indonesia. 1.5.3. Bagi Universitas: 1. Mengetahui kemampuan mahasiswa dalam menguasai materi ilmu yang telah diperoleh di bangku kuliah. 2. Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan sebagai bahan evaluasi.
5
1.6.
Metode Penelitian Peneliti menggunakan beberapa metode pada saat mengumpulkan data dan
informasi yang diperlukan sebagai bahan penyusunan laporan. Metode yang digunakan adalah: 1.6.1. Metode Pengumpulan Data 1. Studi Pustaka Pengumpulan data dan informasi dengan cara membaca buku-buku referensi yang dapat dijadikan acuan pembahasan dalam masalah ini. 2. Wawancara Pengumpulan data dan informasi dengan cara mengadakan tanya jawab dengan pihak terkait. 1.6.2. Metode Pengembangan Sistem Metode pengembangan sistem yang dipakai dalam penelitian skripsi ini adalah metode Incremental Process Model. Metode ini berfokus pada penyampaian produk operasional pada setiap increment. Increment awal adalah versi stripped-down dari produk akhir, tetapi produk tersebut memberikan kemampuan yang melayani pengguna dan juga menyediakan platform untuk evaluasi oleh pengguna. Menurut Pressman (2010: 15) Pemodelan ini menyangkut aktivitas berikut: 1. Komunikasi. Sebelum pekerjaan teknis dapat dimulai, sangat penting untuk berkomunikasi dan berkolaborasi dengan pelanggan (dan stakeholders lainnya). Tujuannya adalah untuk memahami tujuan
6
proyek pelanggan dan untuk mengumpulkan persyaratan yang membantu mendefinisikan fitur dan fungsi perangkat lunak. 2. Perencanaan.
Menetapkan
rencana
proyek
software
dengan
menggambarkan tugas-tugas teknis yang akan dilakukan, risiko yang mungkin, sumber daya yang akan dibutuhkan, produk yang harus dihasilkan dan jadwal kerja. 3. Modeling. Membuat sketsa diperlukan untuk memahami gambaran besar. Jika diperlukan, Anda dapat membuat sketsa menjadi lebih besar dan lebih detail dalam upaya untuk lebih memahami masalah dan bagaimana menyelesaikannya. 4. Konstruksi. Kegiatan ini mengkombinasikan kode generasi (baik manual atau otomatis) dan pengujian yang dibutuhkan untuk menemukan kesalahan dalam kode. 5. Deployment.
Software
diserahkan
kepada
pelanggan
yang
mengevaluasi produk yang dikirimkan dan memberikan umpan balik berdasarkan penilaian.
1.7.
Sistematika Penulisan Dalam penelitian ini pembahasan terbagi dalam lima bab yang secara
singkat akan diuraikan sebagai berikut: BAB 1 PENDAHULUAN Dalam bab ini membahas mengenai latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat penelitian, metode penelitian dan
7
sistematika penulisan yang merupakan gambaran menyeluruh dari skripsi ini. BAB 2 LANDASAN TEORI Bab ini menguraikan berbagai teori yang mendukung dan mendasari penulisan skripsi ini, yakni menjelaskan pengertian-pengertian dari pengembangan, aplikasi, data, informasi, sistem informasi, Database Management System, multimedia, World Wide Web, Sistem Informasi Geografis, metode pengembangan aplikasi dan perangkat lunak pendukung lainnya. BAB 3 METODE PENELITIAN Bab ini menguraikan metode-metode yang digunakan peneliti dalam penulisan yaitu metode pengumpulan data dan metode pengembangan aplikasi. BAB 4 PEMBAHASAN Bab ini akan menguraikan rancangan yang diusulkan berupa perancangan aplikasi dengan menggunakan use case diagram, activity diagram, sequence diagram, deployment diagram, perancangan layout dan pengujian aplikasi menggunakan black-box testing. BAB 5 PENUTUP Bab ini menguraikan tentang kesimpulan dari hasil penelitian yang didapat dan juga saran yang dapat digunakan untuk pengembangan aplikasi ini ke arah yang lebih baik di masa yang akan datang.
BAB II LANDASAN TEORI
2.1.
Pengembangan Pengembangan berarti proses, cara, perbuatan mengembangkan (KBBI,
2002: 538). Pengembangan adalah tindakan berkembang atau suatu keadaan yang dapat dikembangkan. Produk atau gagasan baru. Tahap baru dalam situasi yang berubah (http://www.askoxford.com).
2.2.
Aplikasi Aplikasi dalam ilmu komputer adalah sebuah program komputer yang
dirancang untuk membantu orang-orang yang melakukan jenis pekerjaan tertentu. Sebuah aplikasi berbeda dari sebuah sistem operasi (yang menjalankan komputer), sebuah utilitas (yang melakukan pemeliharaan atau untuk tujuan tugas umum), dan bahasa pemrograman (yang membuat program komputer). Tergantung pada pekerjaan yang sudah dirancang, aplikasi dapat memanipulasi teks, angka, grafik, atau gabungannya. Beberapa paket aplikasi menawarkan kemampuan komputasi yang baik dengan fokus pada satu tugas, seperti pengolah kata. Paket aplikasi lainnya adalah perangkat lunak yang terintegrasi, menawarkan kemampuan komputasi yang kurang tapi di dalamnya terdapat beberapa aplikasi, seperti pengolah kata, spreadsheet, dan program database (Microsoft Encarta, 2009).
8
9
2.3.
Tsunami Aceh Pada bulan Desember 2004, tsunami terburuk dalam sejarah manusia melanda
pantai Aceh. Gelombang besar hampir seluruhnya meratakan Banda Aceh. Wilayah ini merupakan salah satu yang rusak parah karena tsunami, yang juga melanda beberapa negara lain. Tsunami menewaskan sekitar 170.000 orang di Aceh dan membuat 500.000 orang kehilangan rumah mereka (Microsoft Encarta, 2009).
Gambar 2.1 Peta Informasi Korban Tsunami Aceh Desember 2004 (http://siteresources.worldbank.org)
10
2.4.
Data Menurut Witarto (2004: 8), data berarti informasi yang mewakili atribut
kualitatif atau kuantitatif dari suatu variabel atau himpunan variabel. Data biasanya hasil pengukuran dan dapat menjadi dasar grafik, gambar, atau pengamatan dari satu set variabel. Data sering dilihat sebagai tingkat terendah abstraksi dari informasi dan pengetahuan yang berasal. Data mentah mengacu pada suatu kumpulan angka, karakter, gambar atau output lain dari perangkat yang mengumpulkan informasi untuk mengubah besaran fisik menjadi simbolsimbol yang belum diproses. Menurut Witarto (2004: 8) manfaat data adalah sebagai satuan representasi yang
dapat
diingat,
direkam,
dan
dapat
diolah
menjadi
informasi.
Karakteristiknya, data bukanlah fakta. Namun representasi dari fakta. Kata sederhananya, data adalah catatan tentang fakta. Data yang baik adalah data yang sesuai dengan fakta.
2.5.
Informasi McFadden, dkk (dalam Kadir, 2003: 31) mendefinisikan informasi sebagai
data yang telah diproses sedemikian rupa sehingga meningkatkan pengetahuan seseorang yang menggunakan data tersebut. Shannon dan Weaver (dalam Kadir, 2003: 31) mendefinisikan informasi sebagai jumlah ketidakpastian yang dikurangi ketika sebuah pesan diterima. Artinya dengan adanya informasi, tingkat kepastian menjadi meningkat. Menurut Davis (dalam Kadir, 2003: 31), informasi adalah
11
data yang telah diolah menjadi sebuah bentuk yang berarti bagi penerimanya dan bermanfaat dalam pengambilan keputusan saat ini atau mendatang. Menurut Witarto (2004: 9) informasi adalah rangkaian data yang mempunyai sifat sementara, tergantung dengan waktu, mampun member kejutan kepada penerima. Intensitas dan lamanya kejutan dari informasi, disebut nilai iformasi. Informasi yang tidak mempunyai nilai, biasanya karena rangkaian data yang tidak lengkap atau kadaluarsa.Karakteristik dari informasi adalah informasi mengalami perubahan dari kondisi belum mengetahui menjadi kondisi mengetahui. Perubahan ini mengandung unsur tidak terduga. Informasi yang benar dan baru dapat juga dikatakan sebagai data yang telah diproses, yang mempunyai nilai tentang keputusan. Manfaat informasi adalah untuk mengurangi ketidakpastian. Hal ini sangat berguna untuk proses pengambilan keputusan.
2.6.
Sistem Informasi Menurut Witarto (2004: 19-20) sistem informasi merupakan sistem yang
berisi jaringan sistem, pengolahan data, yang dilengkapi dengan kanal-kanal komunikasi yang digunakan dalam sistem organisasi data. Elemen proses dari sistem informasi, antara lain mengumpulkan data, mengelola data yang tersimpan, dan menyebarkan informasi. Agar sistem informasi selalu handal dan berjalan dengan baik, diperlukan orang-orang yang bertugas untuk mengelola dan memelihara sumber daya dan layanan peralatan sistem informasi yang digunakan untuk mendukung proses di dalam organisasi. Keberadaan sistem informasi
12
diperlukan dalam organisasi untuk mendampingi proses-proses bisnis dari organisasi, contohnya proses penjualan di supermarket.
2.7.
Database Management System Menurut Mata-Toledo dan Cushman (2007: 1-2) sistem manajemen
database atau Database Management System (DBMS) merupakan suatu sistem software yang memungkinkan user untuk mendefinisikan, membuat, dan memelihara database maupun menyediakan akses yang terkontrol terhadap data. Sebuah database merupakan sekumpulan data yang berhubungan secara logika dan memiliki beberapa arti yang saling berpautan. Istilah database kerap kali digunakan sebagai acuan terhadap data itu sendiri, namun demikian, ada sejumlah komponen tambahan lainnya yang juga menjadi bagian dari suatu sistem manajemen database yang utuh. Hardware merupakan sistem komputer aktual yang digunakan untuk menyimpan dan mengakses database. Dalam sebuah organisasi berskala besar, hardware untuk sistem yang seperti ini terdiri dari jaringan (network) dengan sebuah server pusat dan beberapa program client yang berjalan di komputer desktop. Server adalah prosesor pusat yang secara fisik merupakan tempat penyimpanan database. Server biasanya memiliki sebuah prosesor yang begitu handal karena akan dipergunakan unutk mengelola operasi-operasi pengambilan data maupun berbagai manipulasi data aktual. Client merupakan programprogram yang berinteraksi dengan DBMS dan berjalan di komputer desktop personal untuk mengakses database dari sisi pandang user. DBMS beserta client-
13
nya juga dapat berada di dalam satu komputer tunggal. Dalam kasus seperti ini biasanya hanya terdapat satu user yang mengakses database pada satu waktu, sistem manajemen database personal atau single-user akan diakses oleh beberapa user pada waktu yang berbeda. Secara aktual, konfigurasi jaringan akan berbedabeda antara satu organisasi dengan organisasi lainnya. Software adalah DBMS yang aktual. Di dalam jaringan client/server, DBMS memungkinkan program-program pengelola data untuk berada di server atau program-program client berada di masing-masing desktop. Di dalam sistem single-user biasanya hanya ada satu bagian software yang menangani keseluruhan operasi. DBMS memungkinkan para user untuk berkomnikasi dengan database. Dengan kata lain, ini merupakan mediator antara database dengan user. Beberapa di antaranya diperbolehkan untuk mengubah bagian dari struktur database, beberapa yang lainnya diperbolehkan untuk mengubah data, sedagkan sisanya hanya diperbolehkan untuk melihat-lihat data. DBMS mengontrol akses dan membantu memlihara konsistensi data. Beberapa utility biasanya disertakan pula sebagai bagian dari DBMS ini. 2.7.1. Data Menurut Mata-Toledo dan Cushman (2007: 3) data adalah jantung dari DBMS. Ada dua jenis data. Pertama adalah kumpulan informasi yang diperlukan oleh oranisasi. Jenis data kedua, atau metadata, adalah informasi mengenai database. Informasi ini biasanya disimpan dalam sebuah kamus data (data dictionary) atau catalog. Kamus data menyertakan informasi berupa user, hak istimewa (privileges) dan struktur internal database.
14
Menurut Mata-Toledo dan Cushman (2007: 6-7) keuntungan menggunakan sebuah DBMS terbagi menjadi tiga kategori utama: a. pemeliharaan data yang tepat para user harus dapat mempercayai bahwa data senantiasa dalam keadaan akurat dan terkini. Inkonsistensi seharusnya dihindari dan redudansi pun seharusnya diminimalkan. Redudansi terjadi ketika informasi yang serupa disimpan di beberapa tempat. Inkonsistensi terjadi ketika data di suatu lokasi mengalami perubahan sedangkan di lokasi lainnya tidak. Kebanyakan sistem database menyediakan batasan integritas (integrity constrain) b. penyediaan akses terhadap data data biasanya dibagi pakai (shared) oleh beberapa user. Baik penyimpanan maupun akses terhadap data seharusnya dapat dilakukan dengan mudah dan cepat. Dukungan yang sama terhadap semua jenis transaksi, baik yang interaktif maupun berupa query program, harus disediakan oleh DBMS. Query interaktif tidak harus menunggu hingga program
aplikasi
selesai
dijalankan.
Tugas
DBMS
adalah
memungkinkan akses cepat unutk seluruh user yang membutuhkannya sambil tetap menjalankan prosedur-prosedur pemeliharaan database yang diperlukan. c. pemeliharaan keamanan data Database Administrator (DBA) biasanya adalah orang yang bertanggung jawab terhadap keamanan data. Akses yang tidak sah (unauthorized)
15
harusnya dicegah dan sejumlah tingkatan izin akes (permission) pun harus diberikan kepada user. Sejumlah tool telah disediakan bagi DBA untuk melaksanakan seluruh prosedur keamanan dan mempertemukan semua kepentingan bersilangan yang muncul ketika banyak user harus mengakses ke database yang sama. 2.7.2. Model data Menurut Mata-Toledo dan Cushman (2007: 8) model data adalah suatu cara untuk menjelaskan susunan
logis data beserta hubungan antar berbagai
bagiannya dan ke seluruh bagian. Model-model data yang berbeda telah digunakan selama bertahun-tahun. Pada tahun-tahun awal sering kali suatu sistem mentah (flat file system) atau file teks sederhana (simple text file) hadir dengan seluruh data berada dalam urutan yang sama, Nampak lebih mudah. Biasanya program aplikasi mengakses data secara berurutan (sequential) untuk melakukan proses batch. Tidak banyak akses interaktif yang tersedia. Model-model lainnya yang digunakan dalam mainframe besar adalah model hierarki (hierarchial) dan jaringan (network). Database hierarki disusun menggunakan sebuah model pohon (tree model), dengan satu akar dan beberapa tingkatan cabang. Setiap item hanya memiliki satu link yang menginduk padanya akses data dimulai dari akar dan menyusur ke bawah pohon hingga detail yang diinginkan berhasil ditemukan. Model network memuat banyak link di antara berbagai item data. Indeks yang saling berhubungan memungkinkan akses data dari berbagai arah. Pada tahun 1970, Dr. E. F. Codd mendeskripsikan bentuk model baru, yaitu model relasional (relational model) untuk sistem database. Sistem
16
manajemen database relasional (relational database management system), di mana seluruh data disimpan dalam tabel atau relasi, menjadi standar baru. Semua itu jauh lebih fleksibel dan mudah digunakan, dengan hamper seluruh item data dapat diakses lebih cepat daripada model-model yang lain. 2.7.3. Arsitektur Sistem Database Menurut Mata-Toledo dan Cushman (2007: 9) memahami suatu model abstrak dari sebuah data adalah penting dalam upaya mendeskripsikan arsitektur sistem database. Salah satu ciri utama database adalah data aktual terpisah dari program yang menggunakan data tersebut. Kenyataan ini penting untuk dipahami sepanjang bagian ini yang akan menjelaskan skema dan bahasa database dan kemudian mendeskripsikan arsitektur sistem database. 1. Skema dan Bahasa Menurut
Mata-Toledo
dan
Cushman
(2007:
9)
model
data
mendeskripsikan data dan hubungan-hubungannya di tingkat abstrak. Skema database digunakan untuk mendeskripsikan konsep organisasi sistem database. Organisasi ini ditentukan sebelum proses desain, biasanya menggunakan data definition language (DDL) yang disediakan oleh vendor software tertentu. Organisasi data dapat dideskripsikan dalam dua tingkatan, yaitu logis dan fisik. Organisasi fisik berhubungan dengan bagaimana data secara aktual tersimpan di dalam disk. Organisasi logis adalah konsep model data yang akan diimplementasikan. DDL memperbolehkan user untuk mendefinisikan organisasi data di tingkat logis. Software DBMS
17
tertentu kemudian mengambil alih organisasi fisik data melalui pemetaan dari logis ke fisik. 2. Arsitektur Tiga Tingkatan Menurut Mata-Toledo dan Cushman (2007: 10) metode yang diterima secara umum untuk menjelaskan arsitektur suatu sistem database disahkan oleh satu komite pada tahun 1975 dan dijelaskan secara lebih menyeluruh pada tahun 1978. Artisektur ini dikenal sebagai ANSI/SPARC,
sesuai
dengan
nama
Standards
Planning
and
Requirements Committee di American National Standards Institute. Menurut Mata-Toledo dan Cushman (2007: 10-11) Tiga tingkatan tersebut adalah internal, konseptual dan eksternal. a. Tingkatan internal menyangkut cara data disimpan ke dalam hardware secara fisik. Tingkatan ini dideskripsikan menggunakan byte aktual dan terminologi machine-level. Biasanya software DBMS yang menangani tingkatan ini. b. Tingkatan konseptual, yaitu definisi logika database, kadang diartikan sebagai tampilan komunitas. Model data dan diagram skema dalah penjelasa database dalam tingkatan konseptual. DBS dan asistennya mengurusi skema dan biasanya merekalah yang menggunakan DDL untuk mendefinisikan database. c. Tingkatan eksternal adalah tingkatan yang menyangkut user. Entah user itu adalah programmer aplikasi maupun end user, mereka
18
selalu memiliki pandangan, atau model bayangan, terhadap database dan isi yang terkandung di dalamnya.
Gambar 2.2 Arsitektur Tiga Tingkatan (Sumber: Ramakrishnan dan Gehrke, 2003: 13) 2.8.
Multimedia Menurut Vaughan (2008: 2) multimedia adalah kombinasi antara bentuk
manipulasi dari teks, foto, seni grafis, suara, animasi, dan elemen video. Ketika pengguna akhir diizinkan untuk mengontrol apa dan kapan unsur-unsur yang disampaikan, disebut multimedia interaktif. Pemberian terstruktur dari unsurunsur terkait di mana pengguna dapat melakukan navigasi, multimedia interaktif menjadi hypermedia. Menurut Vaughan (2008: 2-3) perangkat lunak, pesan, dan konten yang disajikan pada komputer, layar televisi, PDA (Personal Digital Assistant) atau ponsel bersama merupakan sebuah proyek multimedia. Proyek mungkin juga berupa halaman atau situs di World Wide Web, di mana Anda dapat menggabungkan unsur-unsur multimedia ke dalam dokumen dengan HTML (Hypertext Markup Language) atau DHTML (Dynamic Hypertext Markup
19
Language) atau XML (eXtensible Markup Language) dan manggunakan file yang dibuat dengan program seperti Adobe Flash, LiveMotion, atau Quicktime milik Apple dengan menginstal plug-in ke aplikasi web browser. Menurut Vaughan (2008: 3) sebuah proyek tidak perlu interaktif untuk disebut sebagai multimedia. Pengguna dapat duduk santai dan menonton film atau televisi. Dalam kasus seperti ini, proyek ini disebut sebagai proyek linier dimana penyajian multimedia dimulai dari awal dan berjalan sampai akhir. Bila pengguna diberikan kontrol navigasi dan dapat mengembara melalui konten, proyek multimedia ini disebut proyek nonlinier dan user interactive, dan merupakan gerbang informasi personal yang kuat. GUI (Graphical User Interface) lebih dari sekadar grafis pada layar. GUI juga sering memberikan aturan atau struktur untuk input pengguna. Perangkat keras dan perangkat lunak yang mengatur batas dari apa yang bisa terjadi di sini adalah platform multimedia. 2.8.1. Elemen Multimedia Menurut Darudiato, Agustini, Yanti dan Sujanto (2006: 228) untuk membuat aplikasi multimedia, diperlukan penggabungan dari beberapa elemen, yaitu: 1. Teks Menurut Sutopo (dalam Juhaeri, 2009: 2), Hampir semua orang yang biasa menggunakan komputer sudah terbiasa dengan teks. Teks merupakan dasar dari pengolahan kata dan informasi berbasis multimedia. Dalam kenyataannya multimedia menyajikan informasi kepada audiens dengan cepat, karena tidak diperlukan membaca secara rinci dan teliti.
20
Menurut Darudiato, Agustini, Yanti dan Sujanto (2006: 228) teks dibagi atas empat kategori: a. Printed text, yaitu teks yang tercetak di atas kertas. Printed text adalah elemen dasar untuk dokumen multimedia. b. Scanned text, yaitu printed text yang sudah diterjemahkan oleh sebuah scanner dalam bentuk yang dapat dibaca oleh komputer. c. Electronic text, yaitu teks dalam bentuk digital atau bentuk yang bisa dibaca dan dimengerti oleh komputer. d. Hypertext, yaitu teks yang terhubung (link). Tujuan utama penggunaannya adalah untuk menyimpan informasi tekstual dalam komputer dimana informasi tersebut disimpan dengan cara yang terstruktur dan saling terhubung satu dengan yang lainnya, sehingga pengguna dapat mencari dan mendapatkan informasi yang diinginkan dengan cepat. 2. Image Gambar adalah tiruan barang (orang, binatang, atau tumbuhan) yag dibuat dengan coretan pensil pada kertas atau media lain (KBBI, 2002: 329). Menurut Sutopo (dalam Juhaeri, 2009: 2), secara umum image atau grafik berarti still image seperti foto dan gambar. Manusia sangat berorientasi pada visual dan gambar merupakan sarana yang sangat baik untuk menyajikan informasi.
21
Dalam membuat sebuah gambar pada umumnya akan dibagi menjadi dua kelompok, yaitu: a. Vector Gambar vektor tidak disimpan dalam sebuah gambar, tetapi tersimpan dalam sebuah algoritma (serangkaian instruksi yang digunakan untuk membuat suatu gambar), yang menentukan bentuk kurva, garis, dan berbagai bangun dengan gambar. Ada tiga kelebihan vektor bila dibandingkan dengan bitmap, yaitu (http://mhs.stiki.ac.id/): − Bersifat scalable, artinya diperbesar atau diperkecil gambar, tanpa mengubah kualitasnya. − Memiliki ukuran file yang kecil, sehingga akan lebih mudah dan cepat di unduh di Internet. − Dapat diubah dalam berbagai tampilan tiga dimensi, tentunya dengan menggunakan software yang sesuai. b. Bitmap Gambar bitmap merupakan rekontruksi dari gambar asli. Gambar bitmap tersimpan sebagai rangkaian pixel (titik-titik) yang memenuhi bidang titik-titik di layar komputer. Kelemahan dari gambar bitmap adalah (http://mhs.stiki.ac.id/): − Resolusi bergantung pada gambar aslinya. − Ukuran file-nya relatif besar. − Bila dikompresi, kualitasnya akan turun.
22
Sedangkan kelebihannya adalah: − Pengolahannya minimal. − Lebih cepat untuk ditampilkan, karena gambar bitmap dapat ditransfer secara langsung dari file ke layar monitor.
Gambar 2.3 Perbedaan antara Bitmap/Raster dan Vector (Sumber: http://msdn.microsoft.com/en-us/library/ms748373.aspx) 3. Animasi Menurut
Sutopo
(dalam
Juhaeri,
2009:
2),
animasi
adalah
pembentukan gerakan dari berbagai media atau objek yang divariasikan dengan gerakan transisi, efek-efek, juga suara yang selaras dengan
23
gerakan animasi tersebut atau animasi merupakan penayangan frameframe gambar secara cepat untuk menghasilkan kesan gerakan. Menurut Darudiato, Agustini, Yanti dan Sujanto (2006: 229) animasi terdiri dari beberapa kategori, yaitu: a. Frame animation, yaitu animasi yang membuat objek-objek bergerak dengan menampilkan serentetan gambar yang disebut dengan frame, dimana objek-objek tersebut muncul di tempat yang berbeda-beda di dalam layar. b. Vector animation, yaitu animasi yang merupakan sebuah garis yang mempunyai arah, titik awal, dan panjang. Objek dibuat bergerak dengan merubah ketiga parameter tersebut. c. Computational animation, yaitu suatu animasi yang membuat objek bergerak dengan merubah koordinat posisi x dan posisi y dari objek tersebut. d. Morphing, merupakan perubahan dari suatu bentuk yang satu ke bentuk yang lain dengan menampilkan serentetan frame yang dapat membuat perubahan geraknya halus seakan-akan bentuk pertama merubah bentuknya sendiri ke bentuk yang lain. 4. Audio Suara
adalah
fenomena
fisik
yang
merangsang
indera
pendengaran. Manusia mendengar setiap kali terjadi getaran frekuensi dari 15 hertz sampai sekitar 20.000 hertz. Hertz (Hz) adalah satuan frekuensi
24
getaran atau setara dengan satu siklus per detik.Getaran tersebut mencapai telinga bagian dalam melalui udara (Microsoft Encarta, 2009). Menurut Sutopo (dalam Juhaeri, 2009: 2), penyajian audio atau suara merupakan cara lain untuk lebih memperjelas pengertian suatu informasi. Contohnya, narasi merupakan kelengkapan dari penjelasan yang dilihat melalui video. Suara dapat lebih menjelaskan karakteristik suatu gambar, misalnya musik dan suara efek (sound effect). Salah satu bentuk bunyi yang bias digunakan dalam produksi multimedia adalah Waveform Audio yang merupakan format fileaudio yang berbentuk digital. Kualitas produknya bergantung pada sampling rate (banyaknya sampel per detik). Waveform (wav) merupakan standar untuk Windows PC. 5. Video Video adalah rekaman gambar hidup atau program televisi untuk ditayangkan melalui pesawat televisi (KBBI, 2003: 1261). Menurut Suyanto (dalam Juhaeri, 2009: 2), video merupakan elemen multimedia paling kompleks karena penyampaian informasi yang lebih komunikatif dibandingkan gambar biasa. Walaupun terdiri dari elemenelemen yang sama seperti grafik, suara dan teks, namun bentuk video berbeda dengan animasi. Perbedaan terletak pada penyajiannya. Dalam video, informasi disajikan dalam kesatuan utuh dari objek yang dimodifikasi sehingga terlihat saling mendukung penggambaran yang seakan terlihat hidup.
25
2.9.
World Wide Web Menurut Greenlaw dan Hepp (2002: 142) World Wide Web (WWW), atau
Web, adalah sebuah aplikasi perangkat lunak yang membuat mudah dan mungkin bagi hampir semua orang untuk mempublikasikan dan menelusuri dokumen hypertext di Internet. Web dapat dianggap seperti mencakup semua informasi yang tersedia melalui browser web. Web telah berkembang besar karena kemudahan penggunaan dan daya tarik visual. Disebut "Web" karena interkoneksi antara dokumen menyerupai jaring laba-laba. Menurut Greenlaw dan Hepp (2002: 142-143) Bagaimana Internet berbeda dari WWW? Internet dapat dianggap sebagai kelompok jaringan komputer yang sangat besar. Informasi di web diangkut melalui Internet. Oleh karena itu web menggunakan Internet. Bahkan, web kini menjadi kekuatan pendorong di belakang Internet. Web menghasilkan permintaan terbesar dalam lalu lintas Internet, dan teknologi Internet yang baru sedang dikembangkan untuk memenuhi keinginan pengguna web. Menurut Greenlaw dan Hepp (2002: 143-144) Ide sentral dalam pengembangan web adalah Uniform Resource Locator (URL). URL adalah alamat web unik yang mengidentifikasi sebuah dokumen di web. Dokumen tersebut dapat berupa gambar, file HTML, program, atau file jenis lain. Alamat yang unik memungkinkan untuk membuat link ke dokumen web orang lain. Sifat nonlinier dari web merupakan salah satu atraksi utama. Karena orang di seluruh dunia
26
yang berpartisipasi di dalam web, seluruh sistem telah berkembang menjadi sesuatu yang jauh lebih besar daripada kontribusi individu.
2.10. Sistem Informasi Geografis Menurut Prahasta (2005: 1) terdapat dua jenis data yang dapat digunakan untuk merepresentasikan atau memodelkan fenomena-fenomena yang terdapat di dunia nyata. Jenis data pertama adalah merepresentasikan aspek-aspek keruangan dari fenomena yang bersangkutan. Jenis data ini disebut sebagai data-data posisi, koordinat, ruang atau spasial, sedangkan jenis data yang kedua adalah jenis data yang merepresentasikan aspek-aspek deskriptif dari fenomena yang dimodelkan. Aspek deskriptif ini mencakup item atau properties dari fenomena yang bersangkutan hingga dimensi waktunya. Jenis data ini disebut sebagai data atribut atau data non-spasial. Menurut Prahasta (2005: 4) Sistem Informasi Geografis (SIG) adalah suatu teknologi baru yang pada saat ini menjadi alat bantu (tools) yang sangat esensial dalam menyimpan, memanipulasi, menganalisis, dan menampilkan kembali kondisi-kondisi alam dengan bantuan data atribut dan spasial (grafis). Menurut Prahasa (2005: 4-5) alasan penggunaan SIG yang menyebabkan mengapa konsep-konsep SIG beserta aplikasi-aplikasinya menjadi menarik untuk digunakan adalah: 1. SIG sangat efektif di dalam membantu proses pembentukan, pengembangan, atau perbaikan peta mental yang telah dimiliki oleh
27
setiap orang yang menggunakannya dan selalu berdampingan dengan lingkungan fisik dunia nyata yang penuh dengan kesan-kesan visual 2. SIG dapat digunakan sebagai alat bantu utama yang interaktif, menarik, dan menantang di dalam usaha-usaha untuk meningkatkan pemahaman, pengertian, pembelajaran dan pendidikan mengenai ideide atau konsep-konsep ruang (spasial), kependudukan dan unsurunsur geografis yang terdapat di permukaan bumi berikut data-data atribut terkait yang menyertainya. 3. SIG menggunakan data baik spasial maupun atribut secara terintegrasi hingga sistemnya dapat menjawab baik pertanyaan spasial (berikut pemodelannya) maupun non-spasial. 4. SIG dapat memisahkan dengan tegas antara bentuk presentasi dengan data-datanya sehingga memiliki kemampuan-kemampuan untuk merubah presentasi dalam berbagai bentuk. 5. SIG memiliki kemampuan-kemampuan yang sangat baik dalam memvisualkan data spasial berikut atribut-atributnya. Memodifikasi warna,
bentuk
dan
ukuran
simbol
yang
diperlukan
untuk
merepresentasikan unsur-unsur permukaan bumi dapat dilakukan dengan mudah. 6. SIG memiliki kemampuan-kemampuan untuk menguraikan unsurunsur yang terdapat di permukaan bumi ke dalam bentu beberapa layer atau coverage data spasial.
28
7. Hampir semua operasi yang dimiliki oleh perangkat SIG dapat dilakukan secara interaktif dengan bantuan menu-menu dan help yang bersifat user friendly 8. SIG dapat menurunkan data-data secara otomatis tanpa keharusan untuk melakukan interpretasi secara manual. 9. Hampir semua aplikasi SIG dapat di-customize, dengan menggunakan perintah-perintah dalam bahasa skrip yang dimiliki oleh perangkat lunak SIG yang bersangkutan.
2.11. Application Program Interface Application Program Interface (API), dalam ilmu komputer, adalah satu set rutinitas yang digunakan oleh program aplikasi untuk meminta dan melaksanakan pelayanan tingkat rendah yang dilakukan oleh sistem operasi sebuah komputer. Sebuah program aplikasi melakukan dua jenis tugas, yaitu: yang berhubungan dengan pekerjaan yang dilakukan, seperti menerima input teks atau angka ke dokumen atau spreadsheet, dan yang berkaitan dengan tugas-tugas pemeliharaan, seperti mengelola file dan menampilkan informasi di layar. Tugas pemeliharaan dilakukan oleh sistem operasi komputer dan API menyediakan program dengan cara berkomunikasi dengan sistem. Pada komputer yang menjalankan antarmuka pengguna grafis seperti yang di Apple Macintosh, API juga membantu mengelola program aplikasi Windows, menu, ikon, dan seterusnya. Pada jaringan area lokal, API, seperti NetBIOS IBM, menyediakan
29
aplikasi dengan sarana untuk meminta jasa dari tingkat yang lebih rendah dari jaringan (Microsoft Encarta 2009).
2.12. Google Maps Google Maps adalah layanan aplikasi pemetaan web dan teknologi yang disediakan oleh Google secara gratis (untuk penggunaan non-komersial). Google Maps memiliki layanan berbasis peta, seperti situs Google Maps, Google Ride Finder, Google Transit, dan peta yang terdapat pada situs pihak ketiga melalui Google Maps API (http://www.blippr.com/). Menurut Pimpler (2009: 2) Google Maps menyediakan antarmuka, pemetaan yang sangat responsif dan intuitif dengan rinci dan data citra udara yang tertanam. Selain itu, peta kontrol dapat tertanam dalam Google Maps untuk memberikan pengguna kontrol penuh atas peta navigasi dan tampilan data jalan dan citra. Selain itu, pengguna juga dapat melakukan panning peta melalui pengguna-tombol panah pada keyboard serta menyeret peta menggunakan mouse. Google Maps menggabungkan kemampuan tersebut untuk menyediakan produk yang menarik, tapi pendorong utama di balik penerimaan cepat dari pengguna adalah kemampuan untuk menyesuaikan peta untuk sesuai dengan kebutuhan aplikasi spesifik. Sebagai contoh, agen real estat bisa mengembangkan aplikasi berbasis web yang memungkinkan pengguna akhir mencari properti perumahan yang hasilnya dapat ditampilkan pada aplikasi Google Maps. Kemampuan untuk menyesuaikan tampilan peta melalui penambahan data aplikasi spesifik membuat Google Maps diterima sebagai alat untuk melihat informasi geospasial.
30
2.13. MySql Menurut Sheldon dan Moes (2005: 8) MySQL memungkinkan untuk mengakses dan memanipulasi data dalam database, melindungi data dari korupsi dan inkonsistensi serta mempertahankan metadata yang diperlukan untuk mendefinisikan data yang disimpan. Fitur yang dimiliki oleh MySQL adalah: a. Skalabilitas MySQL dapat menangani database besar yang telah ditunjukkan oleh pelaksanaannya di organisasi seperti Yahoo!, Cox Communications, Google, Cisco, Texas Instruments, UPS, Sabre Holdings, HP, dan Associated Press. Bahkan NASA dan Biro Sensus Amerika Serikat telah menggunakan MySQL. Menurut dokumentasi produk MySQL, beberapa database yang digunakan oleh MySQL AB, perusahaan yang membuat MySQL, mengandung 50 juta catatan, dan beberapa pengguna melaporkan bahwa database MySQL mereka mengandung 60.000 tabel dan 5 miliar baris. b. Portabilitas MySQL berjalan pada berbagai macam sistem operasi, termasuk Unix, Linux, Windows, QS / 2, Solaris, dan MacOS. MySQL juga dapat berjalan pada arsitektur yang berbeda, mulai dari PC low-end hingga mainframe high-end.
31
c. Konektivitas MySQL mendukung sepenuhnya jaringan TCP / IP socket, Unix socket, dan lainnya. Selain itu, MySQL dapat diakses dari mana saja di Internet, dan beberapa pengguna dapat mengakses database MySQL secara bersamaan. MySQL juga menyediakan bermacam-macam Application Programming Interface (APIs) untuk mendukung konektivitas dari aplikasi yang ditulis dalam bahasa seperti C, C + +, perl, PHP, Java, dan Python. d. Keamanan MySQL mencakup sistem yang kuat untuk mengontrol akses ke data. Sistem ini menggunakan host berbasis struktur yang mengendalikan siapa yang dapat mengakses informasi spesifik dan tingkat akses informasi tersebut. MySQL juga mendukung Secure Socket Layer (SSL) protokol untuk memungkinkan koneksi terenkripsi. e. Kecepatan MySQL dikembangkan dengan kecepatan dalam proses data. Jumlah waktu yang diperlukan sebuah MySQL database untuk menanggapi permintaan untuk data secepat atau lebih cepat dari RDBMSs komersial lain. Situs MySQLWeb memberikan hasil tes benchmark banyak yang menunjukkan hasil kecepatan menerima data dengan MySQL.
32
f. Mudah digunakan MySQL mudah untuk menginstal dan menerapkannya. Seorang pengguna dapat memiliki instalasi MySQL dan berjalan dalam beberapa menit setelah mengunduh file. Bahkan pada tingkat administrasi, MySQL relatif mudah untuk dioptimalkan, terutama dibandingkan dengan produk RDBMS lainnya. g. Open-source code MySQLAB membuat source code MySQL tersedia untuk semua orang untuk diunduh dan digunakan. Open-source memungkinkan khalayak global
untuk
berpartisipasi
dalam
review,
pengujian,
dan
pengembangan kode.
2.14. PHP Menurut Vaswani (2005: 8) PHP adalah bahasa scripting yang digunakan untuk keperluan umum yang sangat cocok untuk pengembangan web dan dapat dimasukkan ke dalam HTML. Tujuan utama dari bahasa ini adalah untuk memungkinkan pengembang web untuk menulis halaman web yang dihasilkan secara dinamis dengan cepat. Bahasa ini dengan cepat menjadi pilihan populer untuk data-driven web application karena dukungan luas untuk sistem database yang berbeda. Biasanya, kode PHP "tertanam" di dalam dokumen HTML biasa, dan dijalankan oleh web server saat dokumen ini akan diminta melalui browser.
33
Fitur yang dimiliki oleh MySQL menurut Vaswani (2005:9-10) adalah: a. Kesederhanaan Karena PHP menggunakan sintaks yang konsisten dan logis, dan manual yang ditulis dengan jelas. PHP bahkan dapat mengakses library C dan mengambil keuntungan dari kode program yang ditulis untuk ini bahasa, dan PHP terkenal dengan fleksibilitas yang luar biasa memungkinkan programmer dalam menyelesaikan tugas-tugas tertentu. b. Portabel Saat ini, PHP tersedia untuk berbagai macam platform, termasuk UNIX, Microsoft Windows, Mac OS, dan OS/2. Selain itu, karena kode PHP diinterpretasikan dan tidak dikompilasi, skrip PHP yang ditulis pada salah satu platform biasanya bekerja pada platform lainnya. c. Kecepatan PHP berjalan lebih cepat daripada kebanyakan bahasa scripting lainnya. Dengan benchmark independen PHP lebih cepat dari bahasa alternatif seperti JSP, ASP.NET dan Perl. PHP melakukan peningkatan kinerja melalui penggunaan memori manajer yang dioptimalkan dan penggunaan object handler yang mengurangi penggunaan memori dan membantu aplikasi berjalan lebih cepat. d. Open Source Hal terbaik tentang PHP adalah open-source. Sumbernya secara bebas yang tersedia pada web dan pengembang dapat menginstal dan menggunakannya
34
tanpa membayar lisensi biaya atau investasi dalam perangkat keras atau perangkat lunak yang mahal. Menggunakan PHP dapat mengurangi biaya pengembangan dari suatu aplikasi perangkat lunak, tanpa mengorbankan kehandalan atau kinerja. e. Extensible Pengembang PHP membangun arsitektur extensible yang memungkinkan pengembang dapat dengan mudah menambahkan dukungan teknologi baru melalui ekstensi modular.
2.15. AMFPHP AMFPHP adalah open-source PHP gratis implementasi dari Action Message Format (AMF). AMF memungkinkan serialisasi biner dari Action Script (AS2,
AS3)
untuk
dikirim
ke
server.
AMFPHP
ditantang
dengan
mengimplementasikan seluruh AMF protokol untuk menjadi alternatif untuk Flex Data Services (AMF3) dan Flash Remoting (AMF0). AMFPHP memungkinkan aplikasi-aplikasi client dibangun dalam bahasa seperti Flash, Flex, dan AIR untuk berkomunikasi secara langsung dengan objek kelas PHP pada server. PHP developer dapat memanfaatkan pengalaman mereka dalam pengembangan serverside scripting dengan menghubungkannya ke sumber data seperti layanan web, database dan aplikasi bisnis dan mengembalikan data tersebut kepada klien. AMF memungkinkan untuk tipe data asli dan pemetaan obyek yang kompleks antara klien dan server. Mengaktifkan ActionScript dan PHP membuat pengembang
35
tidak perlu khawatir tentang pengubahan ekspresi antara dua bahasa (http://www.amfphp.org). AMFPHP merupakan solusi untuk permintaan data sederhana seperti populasi datagrid dari database Rich Internet Application (RIA) yang kompleks yang menggunakan Cairngorm, ARP, dan framework MVC lainnya. AMFPHP adalah salah satu yang protokol komunikasi client server tercepat yang tersedia untuk pengembang Flash Player karena komunikasi diubah ke dalam format biner, yang umumnya lebih baik daripada representasi yang lain, seperti XML (http://www.amfphp.org). AMFPHP adalah sebuah perlengkapan Remote Procedure Call untuk PHP.
AMFPHP
melancarkan
komunikasi
antara
PHP
dengan
(http://www.amfphp.org): a. Flash dan Flex dengan Remoting b. JavaScript dan Ajax dengan JSON c. XML klien dengan XML-RPC Server dan klien, misalnya php dan Flash, menggunakan pada cara yang umum ketika menggambarkan pemanggilan metode dan data yang kompleks. Klien menserialisasi permintaan dan mengirimkannya ke sebuah gateway, kemudian secara otomatis AMFPHP (http://www.amfphp.org): a. Melakukan deserialisasi permintaan b. Mencari remote class yang sesuai c. Merepresentasi suatu kelas d. Melakukan pemeriksaan keamanan
36
e. Memanggil metode remote menggunakan argumen yang ditentukan f. Menserialisasi data yang dikembalikan Amfphp dapat menserialisasi dan mendeserialiasi data kompleks. Selain obyek dan array, AMFPHP mendukung sumber daya dari koneksi database, yang berarti Anda dapat mengembalikan mysql_query dari metode remote dan AMFPHP akan tahu apa yang harus dilakukan. AMFPHP datang dengan layanan browser yang memungkinkan untuk menguji layanan sebelum membuat frontend (http://www.amfphp.org).
2.16. Perangkat Mobile Menurut Elron, Janousek, Joos (2009: 3) perangkat mobile mengalami sebuah revolusi yang menarik hari ini karena peningkatan cepat dalam jaringan pelanggan serta bertambahnya desainer yang berpengalaman, yang hasil dalam antarmuka pengguna yang lebih baik dan inovasi perangkat keras seperti layar sentuh. Seperti perubahan perangkat mobile, harapan konsumen perangkat mobile mereka meningkat juga. Di tengah semua perubahan ini, Adobe Open Source Project mengubah Flash Player dari model lisensi menjadi model open source untuk bersaing dengan teknologi ponsel. Pengumuman ketersediaan Adobe Flash 10 dan Adobe Integrated Runtime (AIR) untuk perangkat mobile membuka kemungkinan baru untuk pengembang mobile. Perangkat mobile memiliki banyak jenis dalam hal ukuran, desain dan layout, tetapi mereka memiliki kesamaan karakteristik yang sangat berbeda dari sistem desktop, yaitu: (http://poss.ipb.ac.id)
37
a. Ukuran yang kecil Perangkat
mobile
memiliki
ukuran
yang
kecil.
Konsumen
menginginkan perangkat yang terkecil untuk kenyamanan dan mobilitas mereka. b. Memory yang terbatas Perangkat mobile juga memiliki memory yang kecil, yaitu primary (RAM) dan secondary (disk). Pembatasan ini adalah salah satu faktor yang mempengaruhi penulisan program untuk berbagai jenis dari perangkat ini. Dengan pembatasan jumlah dari memory, pertimbanganpertimbangan khusus harus diambil untuk memelihara pemakaian dari sumber daya yang mahal ini. c. Daya proses yang terbatas Sistem mobile tidaklah setangguh rekan mereka yaitu desktop. Ukuran, teknologi dan biaya adalah beberapa faktor yang mempengaruhi status dari sumber daya ini, seperti harddisk dan RAM, ukuran yang pas dengan sebuah kemasan kecil. d. Mengkonsumsi daya yang rendah Perangkat mobile menghabiskan sedikit daya dibandingkan dengan mesin desktop. Perangkat ini harus menghemat daya karena mereka berjalan pada keadaan dimana daya yang disediakan dibatasi oleh baterai-baterai.
38
e. Kuat dan dapat diandalkan Karena perangkat mobile selalu dibawa kemana saja, mereka harus cukup kuat untuk menghadapi benturan-benturan, gerakan, dan sesekali tetesan-tetesan air. f. Konektivitas yang terbatas Perangkat mobile memiliki bandwith rendah, beberapa dari mereka bahkan tidak tersambung. Kebanyakan dari mereka menggunakan koneksi wireless. g. Masa hidup yang pendek Perangkat-perangkat konsumen ini menyala dalam hitungan detik kebanyakan dari mereka selalu menyala. Coba ambil kasus sebuah handphone, booting dalam hitungan detik dan kebanyakan orang tidak mematikan handphone bahkan ketika malam hari. PDA akan menyala jika tombol power ditekan.
2.17. Adobe Flash Adobe Flash adalah aplikasi berbayar yang dikembangkan oleh Adobe. Adobe Flash adalah software authoring yang paling maju untuk membuat konten interaktif untuk digital, web, dan mobile. Adobe Flash membantu membangun website interaktif, media pembelajaran, melakukan presentasi, media yang kaya iklan, game dan banyak lagi. Desainer dan pengembang yang bekerja pada
39
Macintosh dan Windows bergantung pada Adobe Flash dan Adobe Flash Player untuk
memastikan
konten
mereka
mencapai
masyarakat
luas.
(http://www.softpedia.com).
2.18. Adobe Flash Lite Menurut Elron, Janousek, Joos (2009: 12) Adobe Flash Lite adalah versi yang dioptimalkan Flash Player yang didukung oleh beberapa hal berikut, perangkat mobile umum: •
Sistem operasi Symbian
•
Sistem operasi Windows Mobile
•
Binary Runtime Environment Wireless (BREW) platform
Selain itu, perangkat mobile yang sudah mendukung Flash Lite, termasuk Chumby, BenQ, China Mobile, iRiver, KDDI, Kodak, LG, Motorola, Nokia, NTT DoCoMo, Samsung, Sony Ericsson, dan Verizon Wireless. Flash Lite memberikan kelebihan luar biasa hal ini memungkinkan akses ke sekitar 80 persen dari ponsel di seluruh dunia. Dengan menggunakan platform Flash Lite, mereka tidak tergantung pada sistem operasi API dan dapat memanfaatkan “write once, run anywhere” pengembangan praktis, karena aplikasi dapat dengan mudah melakukan porting ke sistem operasi yang berbeda, seringkali dengan tidak ada perubahan, daripada mengembangkan aplikasi baru untuk setiap sistem operasi. Menurut Elron, Janousek, Joos (2009: 13) arsitektur Flash Lite adalah versi Flash yang dioptimalkan dan termasuk komponen berikut:
40
1. Device API: Flash Lite memiliki akses ke beberapa layanan ponsel seperti SMS, tingkat baterai, dan lain-lain dengan memanfaatkan fungsi fscommand() dan fscommand2(). 2. Network: HTTP dan HTTPS panggilan dapat dibuat untuk mengambil data, menggunakan getURL() dan e-mail, menggunakan mailto.API lainnya,
seperti
loadMovieNum(),
loadVariables(),
dan
loadVariablesNum(), dapat digunakan untuk mengambil data dan media pada saat runtime. SWX dan XML keduanya didukung dengan Flash Lite 2 dan 3. 3. Drawing API: API ini memungkinkan penciptaan dinamis atau statistik dari vektor grafis dan animasi. 4. Dynamic Data: data eksternal XML dapat dimuat dan diuraikan secara langsung, serta menggunakan proxy bila diperlukan. 5. Persistent data: Anda dapat menyimpan objek-objek yang lokal atau mobile di direktori sistem ponsel.
2.19. Kuneri Lite KuneriLite adalah Rapid Application Development toolkit yang inovatif untuk memperluas kemampuan Adobe Flash Lite dan membuat aplikasi Symbian S60 menjadi lebih cepat, lebih mudah dan lebih murah. Flash Lite ini memungkinkan pengembang untuk melampaui penggunaan Flash Lite tanpa pengetahuan tentang pemrograman Symbian (http://wiki.kunerilite.net .
41
Gambar 2.4 Cara Kerja Plugin Kuneri Lite (Sumber: http://wiki.kunerilite.net) Plugin Kuneri Lite terdiri atas: •
Accelerometer plugin
•
Camera plugin
•
Connect plugin
•
Counters plugin
•
DTMF plugin
•
File plugin
•
GPS plugin
•
Recording plugin
•
Ringtone plugin
•
Rotate plugin
•
Simple protection plugin
•
System plugin
•
Timer plugin
•
Upload/Download plugin
42
2.20. Flex Flex adalah open source framework untuk membangun aplikasi web ekspresif yang sangat interaktif dan berkembang secara konsisten di semua browser utama, desktop dan sistem operasi (http://www.adobe.com). Flex menyediakan bahasa berbasis standar yang modern dan model pemrograman yang mendukung pola desain umum. MXML, sebuah bahasa berbasis XML-deklaratif, digunakan untuk menggambarkan tata letak user interface dan perilaku, serta berorientasi objek. ActionScript ® 3,0 adalah bahasa pemrograman yang digunakan. Flex berisi perpustakaan komponen dengan lebih dari 100 komponen, komponen user interface dikembangkan untuk membuat Rich Internet Application (RIA), serta debugger aplikasi interaktif untuk Flex (http://www.adobe.com/). RIA yang dibuat dengan Flex dapat berjalan di browser yang menggunakan Adobe Flash Player atau perangkat lunak di luar browser pada Adobe ® AIR, sistem runtime cross-operation, yang memungkinkan untuk dijalankan di semua browser utama dan pada desktop. Diinstal pada lebih dari 98% dari komputer yang terhubung internet, Flash Player adalah sebuah runtime klien kelas enterprise dengan grafis vektor yang mampu menangani aplikasi dataintensif pada saat menjalankan aplikasi desktop dengan cepat. Dengan memanfaatkan AIR, aplikasi Flex dapat memiliki akses ke data lokal dan sumber daya sistem (http://www.adobe.com/).
43
2.21. Incremental Process Models Menurut Pressman (2010: 41) model incremental menggabungkan elemen-elemen linear dan proses paralel alir. Model incremental menggunakan urutan linier. Setiap urutan linier menghasilkan penyampaian "increment" dari perangkat lunak dengan cara yang mirip dengan peningkatan yang dihasilkan oleh proses aliran evolusi. Sebagai contoh, perangkat lunak pengolah kata yang dikembangkan dengan menggunakan paradigma increment mungkin akan memberikan manajemen dasar, mengedit, dan fungsi produksi dokumen dalam increment pertama; kemampuan lebih baik untuk mengedit dan produksi dokumen pada increment kedua; memeriksa ejaan dan tata bahasa pada increment ketiga dan kemampuan tata letak halaman yang lebih baik pada increment selanjutnya. Perlu dicatat bahwa proses aliran untuk setiap kenaikan dapat memasukkan paradigma prototyping.
44
Gambar 2.5 Incremental Process Models (Sumber: Pressman, 2010: 42) Menurut Pressman (2010: 41-42) Increment pertama sering digunakan untuk mengembangkan produk inti. Artinya, kebutuhan dasar dikembangkan tapi banyak fitur tambahan belum dikembangkan. Produk intinya digunakan oleh pelanggan. Setelah digunakan dan dievaluasi, rencana dikembangkan untuk increment berikutnya. Rencana untuk modifikasi produk inti dibuat untuk lebih memenuhi pelanggan dengan adanya fitur tambahan dan fungsionalitas. Proses ini terus diulangi pada setiap increment, sampai produk selesai diproduksi. Model proses incremental berfokus pada penyampaian produk operasional pada setiap increment. Increment awal adalah versi stripped-down dari produk akhir, tetapi produk tersebut memberikan kemampuan yang melayani pengguna dan juga menyediakan platform untuk evaluasi oleh pengguna. Pengembangan incremental terutama berguna ketika staf tidak tersedia untuk implementasi lengkap dengan
45
tenggat waktu yang telah ditetapkan untuk proyek. Awal increment dapat diimplementasikan dengan lebih sedikit orang. Jika produk inti diterima dengan baik, maka staf dapat ditambahkan untuk mengimplementasikan peningkatan berikutnya. Selain itu, penambahan dapat direncanakan untuk mengelola risiko teknis. Sebagai contoh, sebuah sistem utama mungkin memerlukan ketersediaan hardware yang baru dalam pengembangan dan jadwal penyelesaian produk yang tidak pasti. Sangatlah mungkin untuk merencanakan increment awal dengan cara yang menghindari penggunaan menggunakan hardware yang baru, sehingga memungkinkan fungsi yang tidak lengkap untuk yang diberikan kepada pengguna akhir tanpa penundaan berlebihan. Menurut Pressman (2010: 15) Pemodelan ini menyangkut aktivitas berikut: 1.
Komunikasi Sebelum pekerjaan teknis dapat dimulai, sangat penting untuk
berkomunikasi dan berkolaborasi dengan pelanggan (dan stakeholders lainnya). Tujuannya adalah untuk memahami tujuan proyek pelanggan dan untuk mengumpulkan persyaratan yang membantu mendefinisikan fitur dan fungsi perangkat lunak. 2.
Perencanaan Menetapkan rencana proyek software dengan menggambarkan tugas-tugas
teknis yang akan dilakukan, risiko yang mungkin, sumber daya yang akan dibutuhkan, produk yang harus dihasilkan dan jadwal kerja.
46
3.
Modeling Pembuatan sketsa diperlukan untuk memahami gambaran besar. Jika
diperlukan, dapat membuat sketsa menjadi lebih besar dan lebih detail dalam upaya untuk lebih memahami masalah dan bagaimana menyelesaikannya. Seorang insinyur perangkat lunak menciptakan model-model untuk lebih memahami persyaratan perangkat lunak dan desain yang akan mencapai persyaratan tersebut. 4.
Konstruksi Menurut Pressman (2010: 111) kegiatan konstruksi meliputi serangkaian
pengkodean dan pengujian yang mengarah ke pekerjaan rekayasa perangkat lunak, mungkin coding penciptaan langsung dari bahasa pemrograman source code (misalnya Java), pembangkitan otomatis dari source code menggunakan representasi desain tingkat menengah dari komponen yang akan dibangun, atau pembangkitan otomatis dari executable menggunakan bahasa "pemrograman generasi keempat" (misalnya Visual C + +). Fokus awal pengujian adalah pada tingkat komponen, biasanya disebut unit testing. Tingkatan lain dalam pengujian termasuk pengujian integrasi (yang dilakukan ketika sistem dibangun), pengujian validasi yang menilai apakah persyaratan telah dipenuhi untuk sistem yang lengkap (atau software increment), dan tes penerimaan yang dilakukan oleh pelanggan dalam upaya untuk melaksanakan semua fitur dan fungsi yang diperlukan. Menurut Pressman (2010: 112) jika pengujian berhasil dilakukan, pengujian ini akan menemukan kesalahan dalam perangkat lunak. Keuntungan
47
lainnya, pengujian menunjukkan bahwa fungsi perangkat lunak muncul untuk dapat bekerja sesuai dengan spesifikasi, dan bahwa persyaratan kinerja dan perilaku tampaknya telah dipenuhi. Selain itu, data yang dikumpulkan sebagai pengujian dilakukan memberikan indikasi yang baik pada keandalan perangkat lunak dan beberapa indikasi kualitas perangkat lunak secara keseluruhan. Tetapi pengujian tidak bisa menunjukkan adanya kesalahan dan cacat. Ini hanya dapat menunjukkan kesalahan dan cacat yang terjadi pada perangkat lunak. 5.
Deployment Menurut Pressman (2010: 113-114) kegiatan pengembangan meliputi tiga
tindakan: pengiriman, dukungan, dan umpan balik. Karena model proses perangkat lunak modern adalah evolusi atau bertahap di alam, penyebaran terjadi tidak hanya sekali, tapi beberapa kali selama perangkat lunak bergerak ke arah penyelesaian. Setiap siklus pengiriman menyediakan pengguna dan pelanggan increment operasional perangkat lunak yang menyediakan fungsi dan fitur yang dapat digunakan. Setiap siklus dukungan menyediakan dokumentasi dan bantuan manusia untuk semua fungsi dan fitur yang diperkenalkan selama seluruh siklus dikembangkan. Setiap umpan balik pada siklus menyediakan tim perangkat lunak dengan panduan penting bahwa hasil harus dilakukan modifikasi pada fungsi, fitur, dan pendekatan yang diambil untuk increment berikutnya. Perangkat lunak yang dikirimkan memberikan manfaat bagi pengguna akhir, tapi juga memberikan umpan balik yang berguna untuk tim perangkat lunak. Ketika suatu increment mulai digunakan, pengguna akhir harus didorong untuk mengomentari fitur dan fungsi, kemudahan penggunaan, kehandalan dan karakteristik lain yang sesuai.
48
2.22. Unified Modeling Language Menurut Rumbaugh, Jacobson dan Booch (2006: 3) Unified Modeling Language (UML) adalah bahasa pemodelan visual untuk tujuan umum yang digunakan untuk menentukan, visualisasi, membangun, dan mendokumentasikan artefak dari perangkat lunak sistem. UML digunakan untuk memahami, desain, browsing, mengkonfigurasi, memelihara dan mengontrol informasi tentang sistem tersebut. UML
dimaksudkan
untuk
digunakan
dengan
perkembangan
semua metode, tahap siklus hidup, aplikasi domain dan media. Pemodelan bahasa ini dimaksudkan untuk menyatukan pengalaman masa lalu tentang teknik pemodelan dan perangkat lunak saat ini lalu menggabungkan praktik terbaik menjadi pendekatan standar. Spesifikasi UML tidak mendefinisikan proses standar tetapi dimaksudkan untuk menjadi berguna dengan proses pengembangan berulang. Hal ini dimaksudkan untuk mendukung pengembangan dengan proses object oriented. UML menyimpan informasi tentang struktur statik dan perilaku dinamis suatu sistem. Sebuah sistem dimodelkan sebagai koleksi benda-benda diskrit yang berinteraksi untuk melakukan kerja yang pada akhirnya bermanfaat. Struktur statis mendefinisikan jenis-jenis objek penting untuk sistem dan pelaksanaannya, serta sebagai hubungan antara objek-objek. Perilaku dinamis mendefinisikan sejarah obyek dari waktu ke waktu dan komunikasi antara objekobjek untuk mencapai tujuan. Menurut Rumbaugh, Jacobson dan Booch (2006, 4) UML bukanlah bahasa pemrograman. Beberapa tools dapat menyediakan generator kode dari
49
UML ke dalam berbagai bahasa pemrograman, serta membangun reverse engineered model dari program yang ada. UML adalah bahasa pemodelan untuk tujuan umum. Untuk domain khusus, seperti tata letak GUI, desain sirkuit VLSI, atau kecerdasan buatan berbasis aturan, sebuah alat yang lebih khusus dengan bahasa khusus lebih cocok. UML merupakan bahasa pemodelan diskrit. Hal ini tidak dimaksudkan untuk model sistem kontinyu seperti yang ditemukan di bidang teknik dan fisika. UML dimaksudkan untuk menjadi tujuan universal bahasa pemodelan untuk sistem diskrit seperti yang terbuat dari perangkat lunak, firmware atau logika digital. Tabel 2.1 Konsepsi Dasar UML Major Area Main Structural
Dynamic
View
Diagrams
Concepts
static view
class diagram
use case view
use case diagram
implementation view
component diagram
deployment
deployment
class, association, generalization, dependency, realization, interface use case, actor, association, extend, include, use case generalization component, interface, dependency, realization node, component,
view
diagram
dependency, location
state machine view activity view
statechart diagram
interaction view
sequence diagram
state, event, transition, action state, activity, completion transition, fork, join interaction, object, message, activation
activity diagram
50
collaboration diagram
model model management management view extensibility all
class diagram
all
collaboration, interaction, collaboration role, message package, subsystem, model constraint, stereotype, tagged values
(Sumber: Dharwiyanti dan Wahono, 2003: 3) 1. Use Case Diagram Menurut Dharwiyanti dan Wahono (2003: 4) use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Dalam pembuatan Use Case Diagram, yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat diinclude oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas
dapat
dihindari
dengan
cara
menarik
keluar
fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan
51
generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain.
Gambar 2.3 Contoh Use Case Diagram (Sumber: Rumbaugh, Jacobson dan Booch, 2006: 695)
2. Activity Diagram Menurut Dharwiyanti dan Wahono (2003: 7) Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak,
52
tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas.
Gambar 2.4 Contoh Activity Diagram (Sumber: Rumbaugh, Jacobson dan Booch, 2006: 699)
53
3. Sequence Diagram Menurut Dharwiyanti dan Wahono (2003: 8) Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masingmasing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/ metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message.
54
Gambar 2.5 Contoh Sequence Diagram (Sumber: Rumbaugh, Jacobson dan Booch, 2006: 700)
55
4. Deployment Diagram Menurut Dharwiyanti dan Wahono (2003: 10) deployment diagram menggambarkan detail bagaimana komponen di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal. Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan
untuk
men-deploy
komponen
dalam
lingkungan
sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.
Gambar 2.4 Contoh Deployment Diagram (Sumber: Rumbaugh, Jacobson dan Booch, 2006: 701)
56
2.23. Blackbox Testing Metode ujicoba blackbox memfokuskan pada keperluan fungsional dari software. Karena itu ujicoba blackbox memungkinkan pengembang software untuk membuat himpunan kondisi input yang akan melatih seluruh syarat-syarat fungsional suatu program. Ujicoba blackbox bukan merupakan alternatif dari ujicoba whitebox, tetapi merupakan pendekatan yang melengkapi untuk menemukan kesalahan lainnya, selain menggunakan metode whitebox. Ujicoba blackbox berusaha untuk menemukan kesalahan dalam beberapa kategori, di antaranya (http://ayuliana_st.staff.gunadarma.ac.id): 1. Fungsi-fungsi yang salah atau hilang 2. Kesalahan interface 3. Kesalahan dalam struktur data atau akses database eksternal 4. Kesalahan performa 5. kesalahan inisialisasi dan terminasi Tidak seperti metode whitebox yang dilaksanakan diawal proses, ujicoba blackbox diaplikasikan dibeberapa tahapan berikutnya. Karena ujicoba blackbox dengan sengaja mengabaikan struktur kontrol, sehingga perhatiannya difokuskan pada informasi domain. Ujicoba didesain untuk dapat menjawab pertanyaanpertanyaan berikut (http://ayuliana_st.staff.gunadarma.ac.id): 1. Bagaimana validitas fungsionalnya diuji? 2. Jenis input seperti apa yang akan menghasilkan kasus uji yang baik? 3. Apakah sistem secara khusus sensitif terhadap nilai input tertentu? 4. Bagaimana batasan-batasan kelas data diisolasi?
57
5. Berapa rasio data dan jumlah data yang dapat ditoleransi oleh sistem? 6. Apa akibat yang akan timbul dari kombinasi spesifik data pada operasi sistem? Dengan menghasilkan
mengaplikasikan sekumpulan
kasus
ujicoba uji
blackbox,
yang
diharapkan
memenuhi
kriteria
dapat berikut
(http://ayuliana_st.staff.gunadarma.ac.id): 1. kasus uji yang berkurang, jika jumlahnya lebih dari 1, maka jumlah dari ujikasus tambahan harus didesain untuk mencapai ujicoba yang cukup beralasan. 2. Kasus uji yang memberitahukan sesuatu tentang keberadaan atau tidaknya suatu jenis kesalahan, daripada kesalahan yang terhubung hanya dengan suatu ujicoba yang spesifik.
BAB III METODE PENELITIAN
3.1.
Metode Pengumpulan Data Metode pengumpulan data yang digunakan oleh peneliti adalah:
3.1.1.
Studi Lapangan Wawancara Wawancara dilakukan melalui media internet. Peneliti membuka discussion di forum dan melemparkan pertanyaan di forum tersebut. Forum tersebut adalah acehforum.co.id serta kaskus.us regional Aceh. Wawancara terdiri dari tiga pertanyaan yang berhubungan dengan cara pencarian korban bencana, satu pertanyaan mengenai Struktur Organisasi Pemerintahan Propinsi Aceh, serta satu pertanyaan untuk mendapatkan feedback dari pengembangan aplikasi. Daftar pertanyaan dan jawaban terdapat di Lampiran 2.
3.1.2. Studi Pustaka Pada tahapan pengumpulan data dengan cara studi pustaka, penulis mencari referensi-referensi yang relevan dengan objek yang akan diteliti. Pencarian referensi dilakukan di perpustakaan, toko buku, maupun secara online melalui internet. Setelah mendapatkan referensi-referensi yang relevan tersebut, peneliti lalu mencari informasi-informasi yang dibutuhkan dalam penelitian ini dari referensi-referensi tersebut. Informasi yang didapatkan digunakan dalam penyusunan landasan teori,
58
59
metode penelitian serta pengembangan aplikasinya secara langsung. Pustaka-pustaka yang dijadikan acuan dapat dilihat di Daftar Pustaka.
3.2.
Metode Pengembangan Aplikasi Dalam pengembangan aplikasi Pencarian Korban Bencana, peneliti
menggunakan metode incremental process models. Peneliti menggunakan metode ini karena metode ini cocok untuk pengembangan aplikasi yang tidak terlalu besar dan dalam waktu yang singkat. Adapun tahapan yang dilakukan adalah: 3.2.1. Communication Tahapan ini berupa aktivitas komunikasi dengan stakeholder atau client. Peneliti melakukan wawancara terhadap teman, saudara, atau kerabat yang melakukan pencarian terhadap korban bencana melalui forum di internet. Misalnya Romadhani salah seorang moderator acehforum.or.id yang tinggal di Banda Aceh. 3.2.2. Planning Tahapan ini berupa perencanaan proyek perangkat lunak dengan menggambarkan tugas-tugas teknis yang dilakukan, manajemen resiko, sumber daya yang dibutuhkan, produk yang harus dihasilkan dan jadwal kerja. Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang lengkap. Peneliti melakukan beberapa hal yang diperlukan yaitu:
60
1. Menggambarkan Tugas Teknis Peneliti mengerjakan proyek pengembangan aplikasi ini sendiri maka semua proses pengembangan aplikasi harus dilakukan oleh peneliti. Tugas teknis yang dilakukan antara lain: -
Pembuatan system requirement aplikasi.
-
Pembuatan modeling aplikasi dengan menggunakan UML serta pembuatan desain aplikasi.
-
Coding dan Testing aplikasi.
-
Deploying aplikasi yang telah dikembangkan, yaitu melakukan upload aplikasi ke server.
2. Manajemen Resiko Resiko yang mungkin ada dari pengembangan aplikasi ini adalah: a. Sulitnya mendapatkan data valid Sulitnya mendapatkan data valid pada korban bencana karena bencana pada lokasi penelitian sudah terjadi selama 67 bulan atau sekitar 5 tahun yang lalu sehingga tidak dapat melakukan input data yang sesuai dengan aplikasi, seperti memasukkan foto korban ke dalam database korban bencana.
61
3. Sumber Daya Sumber daya yang digunakan oleh peneliti untuk membuat aplikasi ini adalah: a. Komputer Komputer yang digunakan oleh peneliti mempunyai spesifikasi sebagai berikut: -
AMD Phenom II x3 720 3.2 Ghz
-
Memori 4GB
-
Harddisk 320GB
-
VGA Quadro FX 570
b. Telepon Seluler Telepon seluler yang digunakan untuk menjalankan aplikasi ini harus memiliki spesifikasi sebagai berikut: -
Symbian S60V3
-
Flash Lite 3.0
-
Kamera 2.0 MP
c. Broadband Internet Connection d. Flash Player 10 4. Produk Akhir Produk akhir yang dibuat adalah berupa aplikasi pencarian yang dapat dilakukan pada telepon seluler dan komputer. Pencarian pada telepon seluler hanya menampilkan data berupa string, sedangkan pada pencarian pada komputer menampilkan data berupa foto dan
62
terhubung dengan Google Map API untuk memberikan peta lokasi bencana. 3.2.3. Modeling Pada tahap ini peneliti akan melakukan beberapa hal yang diperlukan dalam tahap modeling melalui perancangan use case diagram UML, activity diagram UML, sequence diagram UML dan deployment diagram UML dan perancangan layout. 3.2.4. Construction Tahap berikutnya yang dilakukan adalah pemrograman atau coding. Tahap ini merupakan hasil transfer dari perancangan ke dalam bahasa pemrograman yang telah ditentukan. Kemudian apabila tahap ini telah selesai akan dilakukan testing atau pengujian program secara keseluruhan dari aplikasi yang telah dibuat. Adapun testing terhadap program dilakukan dengan metode black-box. 3.2.5. Deployment Pada tahap ini peneliti akan meng-upload aplikasi pada web hosting dan meminta pencari korban bencana untuk memberikan feedback dari aplikasi yang telah dibuat.
63
3.3.
Kerangka Berpikir Dalam melakukan penelitian ini, penulis melakukan tahapan-tahapan
kegiatan dengan mengikuti rencana kegiatan yang tertuang dalam kerangka berpikir meliputi metode pengumpulan data dan metode pengembangan sistem.
Gambar 3.1 Kerangka Berpikir
BAB IV HASIL DAN PEMBAHASAN
Dalam bab ini akan dipaparkan pembahasan atas identifikasi masalah yang mengacu pada tujuan penelitian dan berlandaskan teori yang telah dipaparkan dalam bab II. Pembahasan ini dilakukan untuk merancang bentuk dan isi Aplikasi Pencarian Korban Bencana.
4.1.
Gambaran Umum Provinsi Aceh Aceh, daerah khusus di Indonesia, terletak di ujung barat laut Pulau Sumatera.
Aceh berbatasan dengan Provinsi Sumatera Utara (Microsoft Encarta, 2009). 4.1.1. Lambang Provinsi Aceh
Gambar 4.1 Lambang Daerah Aceh (Sumber: http://acehpedia.org/) Lambang Aceh terkenal dengan PANCACITA atau Lima Cita, yaitu Keadilan, Kepahlawanan, Kemakmuran, Kerukunan dan Kesejahteraan. Lambang persegi lima yang menyerupai kopiah menunjukkan falsafah hidup rakyat dan pemerintahan provinsi Nanggroe Aceh Darussalam, di dalamnya terdapat dacing: melambangkan cita keadilan, rencong: cita kepahlawanan, padi (bahan pangan
64
65
pokok), kapas (bahan sandang utama), lada (kekayaan utama Aceh di masa lampau), dan cerobong pabrik (industrialisasi): cita kemakmuran, kubah mesjid: cita kerukunan, kitab dan kalam (ilmu pengetahuan): cita kesejahteraan. Warna Putih melambangkan kemurnian, Kuning sebagai Kejayaan, dan Hijau melambangkan Kesejahteraan dan Kemakmuran (sumber: http://acehpedia.org/). 4.1.2. Visi Pemerintahan Aceh Terwujudnya perubahan yang fundamental di Aceh dalam segala sektor kehidupan masyarakat Aceh dan pemerintahan, yang menjunjung tinggi asas transparansi dan akuntabilitas bagi terbentuknya suatu pemerintahan Aceh yang bebas dari praktik korupsi dan penyalahgunaan kekuasaan sehingga pada tahun 2015 Aceh akan tumbuh menjadi negeri makmur yang berkeadilan dan adil dalam kemakmuran (sumber: http://acehpedia.org/). 4.1.3. Misi Pemerintahan Aceh Kepemimpinan yang inspiratif dan intuitif 1. Membangun suatu mekanisme kontrol yang ketat agar para pemimpin dari level tertinggi (gubernur) sampai yang terendah (bupati/walikota dan camat), memperlihatkan keteladanan yang baik, hidup sederhana, menegakkan keadilan, taat pada hukum, tidak melakukan kkn dalam bentuk apapun, sehingga memberi contoh keteladanan bagi masyarakat (sumber: http://acehpedia.org/).
66
2. Pemimpin harus memiliki intuisi yang tinggi dalam menciptakan dan melaksanakan kebijakan agar selalu dalam koridor kepentingan rakyat. pemimpin dan pejabat negara adalah orang besar, namun kebesarannya bukan karena dia berpangkat tinggi, kaya raya atau berketurunan bangsawan tetapi karena dia dengan setia telah menjadi pelayan masyarakat (sumber: http://acehpedia.org/). 4.1.4. Struktur Organisasi Pemerintahan Propinsi Aceh
Gambar 4.2. Struktur Organisasi Pemerintahan Propinsi Aceh (Sumber : http://depdagri.go.id) 4.1.5. Daratan dan Sumber Daya Aceh terletak di utara khatulistiwa, menempati 55.392 km², atau sekitar 3 persen dari luas total Indonesia. Sebagian besar daerah ini terletak di Pulau Sumatera, tetapi mencakup beberapa pulau lepas pantai juga. Aceh didominasi oleh pegunungan
67
Gayo Pusat. puncak tertinggi adalah Gunung Leuser (3.404 m). Luas daratan pesisir memanjang sepanjang pantai timur laut sampai ke utara. Dataran juga membentang pada pinggiran pantai barat daya. Di bagian tengah daerah pegunungan hampir bertemu dengan laut. Sungai Alas berasal dari pegunungan Gayo Pusat dan bermuara di Samudera Hindia di ujung selatan Aceh. Danau terpenting adalah Danau Tawar, berlokasi di Aceh Tengah, 1.120 m di atas permukaan laut (Microsoft Encarta, 2009). Aceh memiliki iklim tropis, dengan musim kering berlangsung dari bulan Maret hingga Agustus. Suhu rata berkisar antara 23 ° sampai 32 ° C pada pantai dan dari 13 ° sampai 22 ° C (55 ° sampai 72 ° F) di pegunungan. Curah hujan berkisar antara
1.000
sampai
3.000
mm
(40-100
dalam)
per
tahun
(Microsoft
Encarta, 2009). 4.1.6. Populasi dan Kebudayaan Aceh memiliki jumlah penduduk 3.855.200 dengan sebagian besar orang yang tinggal di daerah pedesaan. Ibukotanya adalah Banda Aceh, terletak di ujung barat laut pulau. Lhokseumawe, di pantai timur laut, merupakan pusat industri dan pelabuhan utama. Sejak tahun 1969 pemerintah Indonesia telah mensponsori program transmigrasi untuk membawa orang ke Aceh dari daerah lain di Indonesia. penduduk baru, banyak dari mereka dari Jawa, sudah termasuk personil militer dan pegawai negeri sipil (Microsoft Encarta, 2009). Sebagian besar masyarakat Aceh termasuk dalam kelompok etnis Aceh. Suku Gayo dan Alas hidup di daerah dataran tinggi. Wilayah ini memiliki tradisi Islam
68
kuat, sekitar 96 persen penduduk beragama Islam. Bahasa Indonesia adalah bahasa resmi, namun banyak bahasa lain juga digunakan (Microsoft Encarta, 2009). Aceh adalah rumah bagi sejumlah situs budaya dan lembaga yang signifikan. Masjid Baiturrachman, di Banda Aceh, yang dibangun di lokasi sebuah masjid tua yang dihancurkan oleh Belanda pada abad ke-19. Museum Aceh, termasuk sebuah rumah tradisional Aceh yang dibangun tanpa paku. Sebuah pemakaman Kerkhoff dikenal sebagai kuburan berisi lebih dari 2.000 tentara Belanda tewas dalam perang Aceh (1873-1908). Taman Sari, sebuah taman di Banda Aceh, berisi Gunongan, bangunan resor fantastis dibangun dalam bentuk pegunungan yang tertutup salju oleh Sultan Iskandar Muda tahun 1600-an. Makam abad ke-17 Sultan Iskandar Thani juga di taman (Microsoft Encarta, 2009). 4.1.7. Sejarah Terletak di titik paling barat dari Malay Archipelago, Aceh adalah pelabuhan penting untuk pedagang India, Arab, dan pedagang Eropa yang menuju Hindia Timur selama sejarah perdagangan rempah-rempah. Sementara perdagangan rempahrempah telah terjadi sejak zaman prasejarah, pengembangan rute perdagangan rempah-rempah utama ini diprakarsai oleh pedagang Eropa mulai pada abad ke-12. Perluasan perdagangan terbesar terjadi selama abad 15 dan 16 (Microsoft Encarta, 2009). Awalnya Aceh adalah sebuah negara Hindu. Aceh menjadi basis Islam di Indonesia ketika kerajaan Islam pertama Peureulak didirikan di 804. Aceh kemudian
69
memainkan peranan penting sebagai pusat penyebaran Islam di seluruh Nusantara. Ketika Portugis ditangkap dekat Malaka (Melaka) tahun 1511, pedagang non-Eropa banyak berdagang ke Aceh, dan pelabuhan sebagai pusat perdagangan tumbuh (Microsoft Encarta, 2009). Aceh adalah sebuah kekuatan regional yang penting selama periode Portugis, Inggris, dan Belanda ekspansi kolonial dimulai pada abad ke-16, mempertahankan kemerdekaan dan perdagangan dengan Singapura dan Britania. Pada tahun 1824 Britania dan Belanda menandatangani perjanjian pengalihan harta Inggris di Malay Archipelago kepada Belanda. Pada tahun 1824 Aceh merdeka, tapi dicari oleh Belanda, yang menyatakan perang terhadap Aceh dan menyerang pada tahun 1873. Butuh waktu lebih dari 30 Tahun bagi Belanda untuk menguasai Aceh. Perlawanan terhadap kekuasaan Eropa berlanjut sampai abad ke-20, sampai Malay Archipelago diduduki oleh Jepang pada tahun 1942, selama Perang Dunia II. Setelah Jepang menyerah pada 1945, Indonesia mendeklarasikan kemerdekaannya. Aceh menjadi sebuah provinsi di Indonesia pada tahun 1949 (Microsoft Encarta, 2009).
4.2. Pengembangan Aplikasi Metode pengembangan sistem yang dipakai dalam penelitian skripsi ini adalah metode Incremental Process Model. Metode ini berfokus pada penyampaian produk operasional pada setiap increment. Increment awal adalah versi stripped-down dari produk akhir, tetapi produk tersebut memberikan kemampuan yang melayani
70
pengguna dan juga menyediakan platform untuk evaluasi oleh pengguna. Berikut adalah pembahasan tahapan-tahapan yang digunakan untuk pengembangan Aplikasi Pencarian Data Korban Bencana ini. 4.2.1. Modeling Pemodelan yang dibutuhkan oleh peneliti dalam membangun Aplikasi Pencarian Korban Bencana, beberapa tahapannya, yaitu: 1.
Use Case Diagram Peneliti merencanakan urutan kegiatan yang dilakukan actor dan sistem
untuk mencapai suatu tujuan tertentu. Walaupun menjelaskan kegiatan namun use case hanya menjelaskan apa yang dilakukan actor dan sistem, bukan bagaimana actor dan sistem melakukan kegiatan.
71
Gambar 4.3 Use Case Diagram Sinra (Sumber: data diolah) Tabel 4.1 Use Case Diagram Sinra No. Requirement 1 Melakukan pencarian korban melalui handphone dengan mengetikkan nama korban yang dicari 2 Melakukan pencarian korban melalui PC dengan mengetikkan nama, umur, atau lokasi korban yang dicari 3 Melakukan pendaftaran dengan mengetikkan username, password, nama, e-mail, telepon, dan alamat
Actor Use case Data Unregistered Cari User, User, Korban Staff, Admin Unregistered Cari User, User, Korban Staff, Admin Unregistered User
Register
Data
72
4 5
6 7
8
9 10
11
2.
Melakukan penginputan data korban Meng-edit data korban yang tidak sesuai atau salah pengetikkan Menghapus data korban jika ada data yang sama Melakukan penginputan data instansi
User, Staff, Input Admin Korban Staff, Admin Edit Korban
Data
Staff, Admin
Data
Staff, Admin
Delete Korban Input Instansi
Meng-edit data instansi yang Staff, Admin tidak sesuai atau salah pengetikkan Menghapus data instansi jika Staff, Admin ada data yang sama Meng-edit data user yang tidak Admin sesuai atau salah pengetikkan
Edit Instansi
Menghapus data user
Delete User
Admin
Data
Data
Data
Delete Data Instansi Edit Data User
Data
Activity Diagram Sinra Adapun Activity diagram system yang diajukan seperti pada Gambar
dibawah ini.
73
Gambar 4.4 Activity Diagram Sinra Input Data dengan Handphone
74
Gambar 4.5 Activity Diagram Sinra Tambah, Edit dan Delete Data
75
Gambar 4.6 Activity Diagram Sinra Tambah, Edit dan Delete Instansi
76
Gambar 4.7 Activity Diagram Sinra Tambah, Edit dan Delete User
77
Gambar 4.8 Activity Diagram Sinra Pencarian Data dengan Handphone
78
Gambar 4.9 Activity Diagram Sinra Pencarian Data pada web
79
Gambar 4.10 Activity Diagram Sinra Pencarian Data pada web
80
3. Sequence Diagram Sinra Adapun Sequence diagram system yang diajukan seperti pada gambar dibawah ini.
Gambar 4.11 Sequence Diagram Sinra Pencarian Data dengan Handphone
81
Gambar 4.12 Sequence Diagram Register User dengan Handphone
82
Gambar 4.13 Sequence Diagram Input Data Melalui Handphone
83
Gambar 4.14 Sequence Diagram Data Management oleh Staff Melalui Web
84
Gambar 4.15 Sequence Diagram Instansi Management oleh Staff Melalui Web
85
Gambar 4.16 Sequence Diagram User Management oleh Admin Melalui Web
86
4.
Deployment Diagram Sinra Adapun Deployment diagram system yang diajukan seperti pada gambar
dibawah ini.
Gambar 4.17 Deployment Diagram Sinra Pencarian Data Korban pada Handphone
Gambar 4.18 Deployment Diagram Sinra Input Data Korban pada Handphone
87
Gambar 4.19 Deployment Diagram Sinra Pencarian Data Korban pada Web 5.
Perancangan Basis Data Perancangan basis data merupakan salah satu bagian terpenting dalam
proses pengembangan sistem. Perancangan basis data yang kompak dan efisien dalam penggunaan ruang penyimpanan, cepat dalam pengaksesan dan mudah dalam pemanipulasian data (tambah, simpan, hapus serta update). 1. Tabel User Tabel user digunakan untuk menampung data user, tabel ini terdiri dari 9 field, yaitu id, username, password, nama, phone, e-mail, alamat, jabatan dan instansi. Tabel 4.2 Tabel User Nama Field id user pass nama email phone alamat jabatan instansi
Tipe Int Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar
Panjang 6 10 20 50 20 20 100 10 100
Keterangan Id user Username Password Nama user E-mail user Nomor telepon user Alamat user Jabatan user: admin, staff, user Tempat bekerja user
88
2. Tabel Data Tabel data korban digunakan untuk menampung data korban, tabel ini terdiri dari 6 field, yaitu id, jenis, tgl, prov, kab, kec, desa, foto, nama, umur, lokasi, tgldtmkn, keterangan, ciri_fisik, cirilain dan pengirim. Tabel 4.3 Tabel Data Nama Field id jenis tgl prov kab kec desa foto nama jk umur lokasi
Tipe Int Varchar date Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar
tgldtmkn
date
keterangan ciri_fisik
Varchar Mediumtext
cirilain
Mediumtext
pengirim
Varchar
Panjang 6 50 50 50 50 50 80 20 1 7 80
255
100
Keterangan Id data korban bencana Jneis Bencana Tanggal kejadian becana
Foto korban bencana Nama korban bencana Jenis kelamin korban bencana Umur korban bencana Lokasi ditemukannya korban bencana Tanggal ditemukannya korban bencana Keadaan korban bencana Ciri fisik korban bencana, misalnya warna kulit Ciri lain korban bencana, misalnya pakaian terakhir yang dipakai Pengirim data korban bencana
89
3. Tabel Instansi Tabel instansi digunakan untuk menampung data kontak yang dapat dihubungi oleh pencari, tabel ini terdiri dari 6 field, yaitu id, nama, phone, alamat, cpname, cpphone. Tabel 4.4 Tabel Instansi Nama Field id nama phone alamat cpname cpphone
6.
Tipe Int Varchar date Varchar Varchar Varchar
Panjang 6 50 20 100 50 20
Keterangan Id data instansi Nama instansi Nomor telephone instansi Alamat instansi Nama contact person instansi Telephone contact person instansi
Analisis Sistem Proses analisis dalam penelitian ini mencakup analisis perlengkapan sistem
dan analisis user. a.
Analisis Perlengkapan Sistem 1. Perangkat Lunak Aplikasi ini merupakan suatu aplikasi yang dapat melakukan pencarian dari handphone dan komputer. Handphone sebagai perangkat untuk melakukan peng-input-an data serta pencarian. Sedangkan komputer digunakan untuk melakukan pencarian dengan data yang lebih detail. Berdasarkan kebutuhan sistem secara umum, perangkat lunak yang akan dibangun harus memenuhi kebutuhan sebagai berikut:
90
−
Harus dapat menghubungkan aplikasi dengan sistem operasi Symbian S60 3rd Edition untuk mengakses kamera pada handphone.
−
Dapat melakukan komunikasi dengan server.
−
Dapat menampilkan Google Maps dalam program utama.
Berdasarkan pertimbangan tersebut diatas, peneliti menggunakan program Flash Lite dan Flex Builder yang memiliki kemudahan dalam pengaplikasian program tersebut. Untuk mendukung tujuannya, dilibatkan suatu 3rd party program, yaitu Kuneri Lite. Kuneri Lite adalah program compiler untuk memudahkan komunikasi dengan sistem operasi Symbian S60 3rd Edition sehingga dapat menggunakan kamera pada handphone. 2. Perangkat Keras Perangkat keras yang digunakan peneliti dalam pembangunan sistem ini adalah: a. Personal Computer (PC) Dalam pengembangan aplikasi ini dibutuhkan komputer yang spesifikasi minimal sebagai berikut: - Prosesor Phenom II x3 2.8 GHz - Harddisk 320 GB - RAM 4 GB DDR2
91
b. Handphone (HP) Dalam pengembangan aplikasi ini dibutuhkan handphone yang spesifikasi minimal sebagai berikut: - Symbian OS S60 3rd Edition Flash Lite 2.1 atau versi terbaru b.
Analisis User User yang dapat terlibat dalam pengoperasian aplikasi ini baik mengakses
ataupun mengiput data-data ke dalam aplikasi ini. Adapun user yang terlibat dalam sistem ini adalah sebagi berikut: 1. Masyarakat Umum (Unregistered User) Berhak untuk melakukan pencarian korban melalui komputer dan handphone serta melakukan registrasi untuk menjadi user. 2. User Berhak untuk melakukan input data pencarian korban bencana. 3. Staff Berhak untuk melakukan peng-edit-an data korban bencana serta data instansi. 4. Admin Sebagai pengendali sistem secara langnsung pada komputer. Bekerja dan menjalankan serta aktifitas sistem serta melakukan peng-edit-an data user.
92
4.2.2. Desain Sesuai dengan fungsi dari aplikasi yang peneliti buat terdapat 3 jenis interface design Sinra, yaitu Sinra untuk pencarian data korban dengan handphone, Sinra untuk input data korban dengan handphone, serta Sinra pada web. Pada layar inilah user melakukan interaksi dengan aplikasi. 1. Halaman unduh apikasi pencarian data korban Halaman ini adalah halaman awal untuk mengunduh aplikasi melalu handphone.
Gambar 4.20 Halaman unduh apikasi pencarian data korban 2. Sinra untuk pencarian data korban dengan handphone Aplikasi ini berguna untuk melakukan pencarian data korban melalui handphone. Query yang ada pada aplikasi ini adalah jenis bencana, tanggal kejadian,
93
provinsi, kabupaten, kecamatan, desa, nama, umur dan ciri fisik. Hasil pencarian yang ditampilkan adalah nama, jenis bencana, tanggal kejadian, umur, lokasi penemuan, keterangan dan cirri fisik.
Gambar 4.21 Form Pencarian Data Korban Sinra pada Handphone
Gambar 4.22 Hasil Pencarian Data Korban Sinra pada Handphone
94
3. Sinra untuk input data korban dengan handphone Aplikasi ini digunakan sebagai input data utama pada Sinra. Syarat untuk dapat menjalankan aplikasi ini adalah Syarat untuk dapat menjalankan aplikasi ini adalah Symbian S60 3rd Edition serta Flash Lite 2.1. a. Login Page Form ini berfungsi untuk menyeleksi apakah yang bersangkutan memiliki hak akses terhadap aplikasi atau tidak, form ini terdiri dari dua buah text input untuk login, serta tiga buah tombol untuk operasi submit, register dan quit.
Gambar 4.23 Login Page Sinra pada handphone b. Register Page Form ini berfungsi untuk melakukan pendaftaran Sinra. Form ini terdiri dari 6 buah text input, serta tiga buah tombol untuk operasi submit,
95
tombol back untuk kembali ke halaman login serta tombol untuk melakukan operasi quit..
Gambar 4.24 Register Page Sinra pada Handphone
c. Input Page Form ini berfungsi untuk melakukan input data korban bencana. Form ini terdiri dari empat text input, satu buah frame untuk menampilkan gambar, serta tiga tombol untuk mengambil gambar dari kamera handphone, tombol untuk melakukan operasi submit serta tombol untuk melakukan operasi quit.
96
Gambar 4.25 Input Page Sinra pada Handphone 4. Sinra pada web Aplikasi ini digunakan sebagai pencarian data korban dengan informasi yang lebih lengkap. Query dapat dipilih melalui aplikasi ini. Query tersebut adalah nama, umur, dan lokasi. Hasil pencarian menampilkan foto, nama, umur, lokasi, dan keterangan korban bencana. Aplikasi ini juga terhubung dengan GoogleMaps sehingga pencari dapat langsung melihat letak lokasi korban pada peta. a. Home Page Halaman ini bertujuan untuk menginformasikan tentang aplikasi dan developer-nya.
97
Gambar 4.26 Home Page Sinra pada Web b. Login Page Halaman ini bertujuan untuk menyeleksi pengguna. Hanya admin dan staff yang dapat melakukan login.
Gambar 4.27 Login Page Sinra pada Web c. Search Page Pada halaman inilah pencari dapat melakukan pencarian korban bencana. Pencarian dimulai dari pencarian bencana. Setelah pencari
98
memilih bencana yang ada maka pencarian data korban bencana dapat langsung dilakukan.
Gambar 4.28 Page Pencarian Bencana Sinra pada Web
Setelah itu maka akan muncul halaman yang menampilkan pencarian korban bencana.
99
Gambar 4.29 Hasil Pencarian Data Korban Bencana Sinra pada Web d. Halaman Peta Halaman peta ini berguna untuk mempermudah pencarian lokasi korban bencana dengan menggunakan GoogleMaps.
100
Gambar 4.30 Halaman Peta Sinra pada Web
e. Detail Page Halaman ini bertujuan untuk melihat data yang ada pada tabel di search page dengan lebih jelas. Gambar yang ditampilkan pun lebih besar. Apabila user melakukan login sebagai admin atau staff maka detail page akan menampilkan dua tombol, yaitu tombol update dan tombol delete.
101
Gambar 4.31 Detail Page Sinra pada Web dengan User sebagai Admin atau Staff f. Halaman Tambah Data Halaman ini bertujuan untuk melakukan penambahan data melalui web. Halaman ini hanya bisa diakses oleh user yang melakukan login sebagai admin atau staff.
102
Gambar 4.32 Page Tambah Data Sinra dengan User sebagai Admin atau Staff g. Page Instansi Halaman ini berguna untuk melakukan manajemen instansi. Halaman ini bisa diakses oleh staff dan admin. Pada halaman ini bisa dilakukan pencarian terhadap instansi berdasarkan pada nama instansi, alamat, dan contact person. Selain itu dapat juga melakukan operasi tambah, update dan delete.
103
Gambar 4.33 Page Instansi Sinra dengan User sebagai Admin atau Staff h. User Management Page Halaman ini berguna untuk melakukan manajemen user. Halaman ini hanya bisa diakses oleh admin. Pada halaman ini bisa dilakukan pencarian terhadap user berdasarkan pada username, nama, dan instansi. Selain itu dapat juga melakukan operasi tambah, update dan delete.
104
Gambar 4.34 User Management Page Sinra pada Web dengan User sebagai Admin 4.3.
Pengujian Aplikasi dengan Blackbox Testing Tabel 4.5 merupakan tabel hasil pengujian dari aplikasi. Tabel 4.5 Hasil pengujian aplikasi dengan blackbox testing
No. 1.
2.
3. 4.
5.
Rancangan Proses
Hasil Yang Diharapkan
Mengunduh Sinra Aplikasi dapat diunduh untuk mencari data korban melalui handphone Melakukan pencarian Menampilkan data yang dicari data korban melalui handphone sesuai dengan data yang dicari Menekan tombol Menghapus semua form data Hapus pencarian korban bencana Menekan tombol x Menampilkan halaman tentang pada kanan atas pembuat aplikasi aplikasi Menekan tombol Menampilkan halaman tentang
Hasil Sesuai
Sesuai
Sesuai Sesuai
Sesuai
Keterangan
105
6.
7. 8.
Tutup pada Sinra melalui handphone Menekan tombol Kembali pada Sinra melalui handphone Mekenan tombol Keluar Mengunduh Sinra untuk melakukan input data korban melalui handphone
pembuat aplikasi Menampilkan halaman Sesuai pencarian data korban bencana Keluar dari Sinra
Sesuai
Aplikasi dapat diunduh
Sesuai
9.
Login pada Sinra melalui handphone
Apabila benar membuka halaman form input dan bila salah menginformasikan kesalahan pengguna
Sesuai
10.
Melakukan registrasi Sinra melalui handphone
Menampilkan informasi yang menyatakan bahwa registrasi berhasil dilakukan atau username telah terpakai
Sesuai
11.
Memasukkan data korban pada Sinra melalui handphone
12.
Mengambil gambar dengan kamera pada Sinra melalui handphone
13.
Menekan tombol Submit pada Sinra melalui handphone
14.
Menekan tombol register pada handphone untuk melakukan registrasi
Menampilkan informasi yang Sesuai menyatakan bahwa data telah sukses dimasukkan atau server sedang error Dapat mengambil gambar melalui kamera handphone dan menampilkan gambar yang telah diambil
Sesuai
Memasukkan data yang telah Sesuai ada pada form input ke server dan meminta feedback dari server Menampilkan halaman register Sesuai
106
15.
data Menekan tombol x pada Sinra melalui handphone
Menampilkan halaman tentang Sesuai pembuat aplikasi
16.
Menekan tombol quit pada Sinra melalui handphone
Keluar dari Sinra
Sesuai
17.
Melakukan tes pada menu Sinra Melakukan pencarian data korban bencana berdasarkan jenis bencana, tempat, dan tanggal
Menampilkan halaman yang sesuai Menampilkan list hasil pencarian yang sesuai dengan yang dicari
Sesuai
19.
Melakukan klik pada list hasil pencarian yang telah dicari
Sesuai Menampilkan halaman pencarian data korban bencana berdasarkan nama, umur, ciri fisik, dan ciri lain serta menampilkan jumlah korban pada tempat dah tanggal bersangkutan
20.
Melakukan pencarian berdasarkan nama, umur, ciri fisik, dan ciri lain Klik pada list data korban bencana Klik kontak pada halaman detail
Menampilkan list data korban bencana berdasarkan pencarian
18.
21. 22.
23.
Klik lokasi pada
Sesuai
Sesuai
Menampilkan data korban Sesuai bencana secara lebih lengkap Menampilkan contact person Sesuai sesuai dengan instansi yang menginputkan data korban bencana tersebut apabila tidak ada data instansi yang diinputkan maka secara default akan menampilkan kontak dari BNPB Menampilkan lokasi Sesuai
107
24.
25.
26.
27. 28. 29. 30. 31. 32. 33. 34.
halaman pencarian dari data korban bencana yang telah dicari Melakukan login pada Sinra
penemuan korban bencana pada Google Maps
Ketika benar maka akan Sesuai muncul menu lain dan ketika salah maka akan meminta user untuk login ulang Melakukan input data Apabila ada data yang tidak Sesuai korban bencana terisi maka text input akan berubah menjadi merah dan ketika drag k text input tersebut akan menginformasikain text input tersebut dibutuhkan Melakukan edit Data korban berhasil ter-edit Sesuai terhadap data korban bencana Menghapus data Data korban bencana terhapus Sesuai korban bencana Menambahkan data Data instansi bertambah Sesuai instansi Melakukan edit data Data instansi berhasil ter-edit Sesuai instansi Menghapus data Data instansi berhasil terhapus Sesuai instansi Menambahkan data Data user berhasil Sesuai ditambahkan user Melakukan edit data Data user berhasil ter-edit Sesuai user Menghapus data user Data user berhasil terhapus Sesuai Menkan tombol log Kembali ke halaman utama Sesuai out log out
BAB V PENUTUP
5.1. Kesimpulan Berdasarkan pembahasan pengembangan aplikasi pencarian data korban bencana di Indonesia berbasis web secara keseluruhan dapat ditarik kesimpulan sebagai berikut: 1. Aplikasi ini diharapkan dapat mempercepat pencarian data korban bencana serta mengintegrasikan seluruh data korban bencana yang tersebar di berbagai tempat. 2. Kesulitan dalam penginputan data dengan komputer yang memakan tempat serta kurang efektif dapat disiasati dengan menggunakan ponsel.
5.2. Saran Berdasarkan analisis yang dilakukan peneliti, maka saran yang dapat peneliti terhadap pengembangan aplikasi ini, antara lain: 1. Pengembangan aplikasi pencarian data korban bencana ke depan disarankan ditambah fasilitas lain seperti fasilitas pencarian dengan menggunakan face recognition. 2. Aplikasi yang digunakan untuk handphone sebaiknya aplikasi yang dapat digunakan pada sebagian besar handphone atau bahkan seluruh handphone. 3. Aplikasi diimplementasikan pada lokasi terjadinya bencana.
108
DAFTAR PUSTAKA
Elrom, Elad, Janousek, Scott & Joos, Thomas. 2009, AdvancED Flash on Devices Mobile Development with Flash Lite and Flash 10, Berkeley: Friends of ED. Gehrke, Johannes & Ramakrishnan, Raghu. 2003. Database Management System, 3rd International Edition, New York: McGraw-Hill. Greenlaw, Raymon & Hepp, Ellen. 2002. In-line/On-line Fundamentals of the Internet and the World Wide Web, 2nd Edition, New York: McGraw-Hill. Kadir, Abdul. 2003, Pengenalan Sistem Informasi, Yogyakarta: Andi. Pimpler, Eric. 2009, Mashup Mania with Google Maps, San Antonio: Geospatial Training Services, LLC. Rumbaugh, James, Jacobson, Ivar, & Brooch, Grady. 2006, The Unified Modeling Language Reference Manual, 2nd Edition, Westford: Pearson Education, Inc. Sheldon, Robert & Moes, Geoff. 2005, Beginning MySQL, Indiana: Wiley Inc. Pressman, Roger S.. 2010, Software Engineering: A Practitioner's Approach, 7th International edition. New York: McGraw-Hill. Vaswani ,Vikram. 2005, How to Do Everything with PHP & MySQL, New York: McGraw-Hill Osborne Media. Vaughan, Tay. 2008, Multimedia: Making it Work, 7th Edition. New York: McGraw-Hill Osborne Media. Witarto. 2004, Memahami Sistem Informasi Pendekatan Praktis Rekayasa Sistem Informasi Melalui Kasus-Kasus Sistem Informasi Di Sekitar Kita, Bandung: Informatika.
109
110
"Application." Microsoft® Encarta® 2009 [DVD]. Redmond, WA: Microsoft Corporation, 2008. "Application Program Interface." Microsoft® Encarta® 2009 [DVD]. Redmond, WA: Microsoft Corporation, 2008. Ayuliana.
Blackbox
Testing,
http://ayuliana_st.staff.gunadarma.ac.id/Downloads/files/12482/Pertemuan+ 06+-++_BlackBox+Testing_.pdf, 29 Mei 2010. Dharwiyanti , Sri & Wahono, Romi Satria. Pengantar Unified Modeling Language (UML), http://standy-oei.web.ugm.ac.id/ppl/MateriSuplemenUml.pdf, 29 April 2010. Darudiato, Suparto, Agustini, Heni, Yanti, Marta Dwi, & Sujanto, Ditha. Analisis Dan Perancangan Aplikasi Perangkat Ajar Berbasis Multimedia Dengan Studi Kasus: Mata Kuliah Analisa & Perancangan Sistem Informasi, http://yudiagusta.files.wordpress.com/2009/11/227-234-snsi06-37-analisisdan-perancangan-aplikasi-perangkat-ajar-berbasis-multimedia.pdf, 24 Mei 2010. Gan,
Samuel
Hady.
HANDOUT
1
–
Multimedia,
http://mhs.stiki.ac.id/mee/handout%20multimedia/Multimedia-1.doc,
10
Juni 2010. Holub,
Allen
I.
Allen
Holub's
UML
http://www.holub.com/goodies/uml/, 2 Juni 2010. Aceh, http://acehpedia.org/Aceh, 27 April 2010.
Quick
Reference,
111
Adobe
Flash
CS5
Professional
11.0.0.485,
http://www.softpedia.com/get/Internet/WEB-Design/Flash/AdobeFlash.shtml, 25 Mei 2010. Banda
Aceh
Preparation
For
Disasters,
http://siteresources.worldbank.org/PHILIPPINESEXTN/Resources/08_band a_aceh.pdf, 28 Mei 2010. Daerah
Tingkat
II
Provinsi
Nanggroe
Aceh
Darussalam,
http://virtualaceh.com/aceh_dati.php, 27 April 2010. Flex framework, http://www.adobe.com/products/flex/overview/, 29 April 2010. Google Maps, http://www.blippr.com/apps/337264-Google-Maps, 28 April 2010. KuneriLite
Introduction,
http://wiki.kunerilite.net/index.php?title=KuneriLite_Introduction,
5
Mei
2010. Lambang Daerah & Visi-Misi, http://virtualaceh.com/aceh_lambang.php, 27 April 2010. Pengenalan UML, http://standy-oei.web.ugm.ac.id/ppl/PengenalanUML.pdf, 29 April 2010. Sequence
Diagram,
http://resource.visual-
paradigm.com/uml_diagrams/sequence_diagram/sequence_diagram_notatio n.html 2 Juni 2010 WPF
Graphics
Rendering
Overview,
us/library/ms748373.aspx, 10 Juni 2010.
http://msdn.microsoft.com/en-
Simbol Use Case Diagram Simbol
Nama Actor Use case
Subject Boundary
Communication path
Generalization
Extend
include
Fungsi User di luar sistem Sebuah spesifikasi perilaku suatu entitas dalam interaksi dengan agen di luar Classifier yang sifatnya dideskripsikan dengan use case
Penjelasan tentang sambungan antara class instances Hubungan antara lebih spesifik dan deskripsi yang lebih umum, digunakan untuk inheritance dan deklarasi tipe polimorfik menghubungkan sebuah perluasan use case ke use case dasar menghubungkan use case dasar ke use case tambahan
(Sumber: Rumbaugh, Jacobson, Booch, 2006: 48-49, 695, 351, 388, 627)
xv
Simbol Activity Diagram Simbol
Nama Action atau activity
Fork atau join
Intial node
Activity final node
Flow
Accept action
Send signal action
xvi
Fungsi perilaku spesifikasi yang menggambarkan sekuensial serta langkah-langkah prosedur komputasi. Node dengan satu input dan beberapa output atau sebaliknya Menunjukkan tempat dimana eksekusi program dimulai ketika sebuah activity dipanggil menyebabkan penghentian eksekusi paksa semua flow dalam activity dan berakhirnya pelaksanaan activity Mendeskripsikan sumber dan target dari berbagai jenis informasi Suatu aksi yang melakukan eksekusi sampai suatu jenis kejadian tertentu dikenal oleh objek pelaksana Spesifikasi dari blok informasi yang dikomunikasikan dengan asynchronous antar objek
Accept time action Branch atau merge
Pin
Object node
Exception handler
Interruptible activity region Expansion region
Sub-activity
Suatu aksi yang dilakukan dalam waktu tertentu Situasi dimana flow input aksi dapat menuju satu atau beberapa kemungkinan flow output atau sebaliknya Merepresentasikan koneksi untuk nilai input atau output suatu aksi Merepresentasikan adanya suatu objek yang diproduksi oleh aksi Kontol yang melakukan asumsi jika ada pengecualian dari suatu kejadian yang terjadi Suatu daerah yang dapat dilakukan proses interupsi Suatu daerah yang mengeksekusi satu dari setiap elemen yang diinput Activity diagram utama terlalu kompleks sehingga dituhkan activity diagram tersendiri untuk proses tertentu
(Sumber: http://www.holub.com/ dan Rumbaugh, Jacobson, Booch, 2006: 698, 169, 385, 448, 412, 178, 383, 155, 601, 669, 219, 469, 540, 507, 361, 443, 367 )
xvii
Simbol Sequencial Diagram Simbol
Nama LifeLine
Fungsi Partisipasi individu dalam interaksi
Boundary LifeLine
Jenis penghubung yang didefinisikan sebagai stereotip Batas. Jenis penghubung yang didefinisikan sebagai stereotip Kontrol. Sebuah jenis penghubung yang didefinisikan sebagai stereotip entitas. Komunikasi antar lifeline Tipe message yang merupakan tipe operasi call Tipe message yang merupakan akhir dari eksekusi dan kembali kepada pemanggilnya Tipe pesan yang bergantung pada waktu panggilan pesan
Control LifeLine
Entity LifeLine
asynchronous message synchronous call
return message
Duration Message
stop (destruction)
xviii
Penghapusan objek
Create Message
Model penciptaan objek.
Self Message
Jenis pesan yang merupakan pelaksanaan atau operasi memanggil dalam garis hidup yang sama.
Recursive Message
Jenis pesan diri yang dijalankan secara rekursif.
Found Message
Jenis pesan mana terjadinya peristiwa penerima dikenal.
Jenis pesan mana terjadinya peristiwa pengiriman dikenal. Sebuah fragmen Alternative Combined Fragment gabungan alternatif menetapkan alternatif fragmen interaksi. Lost Message
xix
Loop Combined Fragment
Interaction Use
Frame
Actor
Concurrent
xx
Sebuah fragmen yang mendefinisikan perulangan fragmen interaksi. Sebuah cara singkat untuk menyalin isi dari interaksi yang dirujuk. Sebuah unit yang mempunyai perilaku untuk berfokus pada pengamatan pertukaran informasi
Aktor menentukan peran yang dimainkan oleh pengguna manusia, perangkat keras eksternal, atau subjek lain yang berinteraksi dengan subjek. Membuat timeline eksesuki baru bersamaan
Continuation
Gate
Note
Mendefinisikan kelanjutan dari cabang Alternatve Combined Fragment yang berbeda Titik sambungan antara pesan internal dan eksternal dari Frame Sebuah notasi tekstual yang dapat melekat pada elemen (s).
Anchor
Sebuah konektor antara elemen dan catatan.
Constraint
kendala adalah suatu kondisi atau pembatasan, yang dapat disajikan dalam kedua bahasa natual atau bahasa mesin yang dapat dibaca.
(Sumber: http://resource.visual-paradigm.com/ dan Rumbaugh, Jacobson, Booch, 2006: 700, 701, 319)
xxi
Simbol Deployment Diagram Simbol
Nama Device Node
Fungsi sumber daya komputasi fisik dengan kemampuan pemrosesan untuk mengeksekusi artefak
Artifact
Artefak adalah informasi yang digunakan atau dihasilkan oleh proses pengembangan perangkat lunak. Sebuah asosiasi yang menetapkan hubungan semantik yang dapat terjadi antar instansi
Association
Execution Environment Node
Sebuah execution environment adalah node yang menawarkan lingkungan eksekusi untuk tipe komponen tertentu komponen sebagai syarat untuk mengeksekusi artefak
(Sumber : http://www.visual-paradigm.com)
xxii
PENGEMBANGAN APLIKASI PENCARIAN DATA KORBAN BENCANA (SINRA) DI INDONESIA BERBASIS WEB
PENGEMBANGAN APLIKASI PENCARIAN DATA KORBAN BENCANA (SINRA) DI INDONESIA BERBASIS WEB
Aditya Hadiwijaya Program Studi Teknik Informatika, FST UIN Syarif Hidayatullah Jakarta, Indonesia
[email protected] Abstrak Implementation of data collection on disaster victims in Indonesia less taken seriously.The climax is when the tsunami in Aceh, where thousands of people losing their relatives. Some of them were finding their relatives after months old and some even for years. All the way pursued by disaster victims seekers to find their relatives. An integrated application is required for data collection and data searching disaster victims can be more effective and efficient. This study aims to look at, analyze, and solve problems that arise in data collection and the search for victims of disasters could become more effective and efficient. Analysis was used to interview victims of the tsunami disaster in Aceh and to ask the National Disaster Management Agency is responsible for disasters in Indonesia. In this research, application development methods that researchers use is Incremental Process Models. For the future, these applications can be developed for example by adding the online facilities face recognition.
1. Preliminary 1.1. Background
Disaster management in Indonesia is still not effective, such as data search problems disaster victims. Before the year 2009 data disaster victims are still written manually and the data is still scattered in various organizations, such as the Indonesian Red Cross (PMI), National Disaster Management Agency (BNPB), or the tv station. Even more data is only a number of survivors, injured, or dies that can be seen from the site BNPB. In 2004 a devastating tsunami hit most of Aceh. Many of the victims who lost their relatives. Documenting disaster victims was not clear, because the data disaster victims in and out of refugee camps not updated continuously. The search for victims of the disaster becomes very difficult. Any way to find victims of disasters made by starting from spreading and attach brochures of disaster victims lost, ask people around, to come to television stations to request rebroadcast coverage of the disaster victims in refugee camps. Based on UNICEF data there are five thousand missing children separated from their families. After the year 2009 BPNB stipulates that any organization that has a data disaster victims must
1
be sent to BPNB which provides information on the name, age, and the state of disaster victims. Data is still scattered to some ¬ file and has not collected data into a database of disaster victims, so that the search data disaster victims become ineffective because they have to open these files one by one. Therefore, it needs an integrated application that can perform data input on disaster victims effectively and efficiently. However, applications can only be accessed through the computer just is not good because of the transfer of computers from one place to another is not effective and not allowed to enter the Figure because not all victims of disaster victims in a healthy condition. The use of laptops was less effective than the large size of any condition of the batteries only lasted about three hours.Therefore, it needs other media that are easier to carry and which has a battery life longer. For this reason, researchers use two media, mobile phones and computers for data collection on disaster victims to becoming more effective and efficient. Based on these problems the researchers want to develop a search application web-based disaster victims, the application can facilitate the search for victims of disaster data by using the internet. The research title is "Data Search Application Development Disaster Victims in Indonesia Web-Based".
Jurnal Masyarakat Informatika, Volume XX, Nomor XX, ISSN 0000 - 0000
Aditya Hadiwijaya
1.2. Problem Formulation Based on the background of the problem, the authors formulate the formulation of the problem to be solved in this research is how to perform data integration of disaster victims so that disaster victims data search can be done easily and how the entry and search data can be done with other media that is more compact shape. 1.3. Limitation Problem In developing this offering data search application, the authors restrict the problem in the disaster area who are in Indonesia, the use of media applications on the computer and phone, phone support is only on phones that have Symbian OS S60 3rd Edition, as well as the concept of using a pattern matching search. 1.4. Goal The purpose of this research is to facilitate the search for victims of data disasters in Indonesia to become more effective and efficient. 1.5. Benefits The author did this research for the benefit of authors, the National Disaster Management Agency, and the people of Indonesia.
application packages offer a good computing skills with a focus on one task, like word processing. Other application packages are integrated software, offer less computing power but in it there are some applications, like word processing, spreadsheets and database programs (Microsoft Encarta, 2009). 2.3. Concept Searching MySQL provides standard SQL pattern matching and pattern matching based on extended regular expressions similar to those used by Unix utilities such as vi, grep, and sed. SQL pattern matching allows you to use "_" to match a single character and "%" to conform with an arbitrary number of characters (including zero characters). In MySQL, SQL patterns are case-insensitive by default. Some examples are shown here. You do not use = or <> when you use SQL patterns; use the LIKE or NOT LIKE comparison operators instead 2.4. Understanding Web-Based Applications Web-based applications (web based applications) are applications that can run directly through a web browser can use the internet or intranet and is not dependent on the operating system used. 3. Research Methods
2. Platform Theory 3.1. Data Collection Method 2.1. Understanding Development Data collection method used in this study are: The development means the process, ways, works to develop (KBBI, 2002: 538). Development is the act of developing or a situation that can be developed. Products or new ideas. New phase in the changed circumstances (http://www.askoxford.com). 2.2. Understanding Applications Applications in computer science is a computer program designed to help people who do certain jobs. A different application of an operating system (which runs a computer), a utility (which perform maintenance or for the purpose of general duties), and programming language (which makes a computer program). Depending on the work that has been designed, an application can manipulate text, numbers, graphics, or a combination thereof. Some
a. Observation Interviews were conducted via the Internet. Researchers open the discussion on the forums and throw questions at the forum. The forum is acehforum.co.id and regional kaskus.us Aceh. Interviews consisted of three questions related to how to search the victims of disasters, one question regarding the Organizational Structure Governance of Aceh Province, and one question to get feedback from application development. b. Library Studies At the stage of collecting data by literature study, the authors find references relevant to the object to be studied. Search for references made in the library, bookstore, or online via the
2
Aditya Hadiwijaya
internet. After obtaining the relevant references, the researchers then look for the information required in the study of these references. The information obtained is used in preparing the foundation of theory, research methods and application development directly. 3.2. Systems Development Method Method of system development that writer used in this research is an incremental process models.
program of the application has been made. The testing of the program is done with black-box method. e. Deployment At this stage, researchers will upload to the web application hosting and disaster victims ask searchers to provide feedback from applications that have been made. 4. Research Results and Discussion
In developing search applications for Disaster Victims, researchers using the method of incremental process models. Researchers using this method because this method is suitable for application development that is not too big and in a short time. The steps being taken are:
4.1. Modeling Modeling is needed by researchers in building Application Search Disaster Victims, several stages, namely: a.
Usecase Diagram
a. Communication This stage of communication activities with stakeholders or clients. Researchers conducted interviews with friends, relatives, or relatives who searches for victims of disasters through the forum on the internet. For example, moderators acehforum.or.id Romadhani one who lives in Banda Aceh. b. Planning This stage of communication activities with stakeholders or clients. Researchers conducted interviews with friends, relatives, or relatives who searches for victims of disasters through the forum on the internet. For example, moderators acehforum.or.id Romadhani one who lives in Banda Aceh. c. Modeling At this stage, researchers will do certain things required in the modeling phase through the design of UML use case diagrams, UML activity diagrams, UML sequence diagrams and UML deployment diagrams and design layouts.
Figure 1. Use Case Diagram Sinra N o. 1
Actor
Searching victims vi a phone by typing the name of victims who soug ht
2
Searching victims vi a a PC by typing the name, age, or locatio n of victims who soug ht
Unregist ered User, User, Staff, Admin Unregist ered User, User, Staff, Admin
3
Register by typing
Unregist
d. Construction The next phase is done is programming or coding. This stage is the result of the transfer of design into a programming language that has been determined. Then, when this stage has been completed will be testing or testing of the overall
Requirement
Use case Searc h victi ms data Searc h victi ms data
Regi
3
Aditya Hadiwijaya
in your username, password, name, e-mail, phone and address Perform victim data entry
ered User
ster
User, Staff, Admin
5
edit data that does not match the victim or any input
Staff, Admin
6
Deleting data victims if there are similar data
Staff, Admin
7
Perform Data entry agency
Staff, Admin
8
edit data that does not match the victim or any input
Staff, Admin
9
Deleting data agency if there are similar data
on
Staff, Admin
1 0
edit user data that does not match the victim or any input Delete user data
Admin
Input victi ms data Edit victi ms data Delet e victi ms data Input agen cy data Edit agen cy data Delet e agen cy data Edit user data
4
1 1
on
Admin
b.
Activity Diagram
Figure 2. Activity Diagram Sinra Input Data on handpbone
Delet e user data
Figure 3 Activity Diagram Sinra Add, Edit and Delete Data
4
Aditya Hadiwijaya
Figure 6. Activity Diagram Sinra Searcg Data on handphone
Figure 4. Activity Diagram Sinra Add, Edit and Delete Instansi
Figure 7. Activity Diagram Sinra Search Data on web
Figure 5. Activity Diagram Sinra Add, Edit dan Delete User
5
Aditya Hadiwijaya
Figure 11. Sequence Diagram Input Data on Handphone
Figure 8. Activity Diagram Sinra Search Data on web c.
Sequencial Diagram
Figure 9. Sequence Diagram Sinra Search Data on Handphone
Figure 12. Sequence Diagram Data Management on Web
Figure 10. Sequence Diagram Register User on Handphone
6
Aditya Hadiwijaya
Figure 15. Deployment Diagram Sinra Search Victims Data on Handphone
Figure 16. Deployment Diagram Sinra Input Data Korban on Handphone
Figure 17. Deployment Diagram Sinra Search Victim Data on Web e. Figure 13. Sequence Diagram Instansi Management on Web
Database Design
Database design is one of the most important part in the process of system development. Database design in a compact and efficient in the use of storage space,quick and easy access in data manipulation (add, save, delete and update). The design of the proposed database is as follows: i. User Table User table is used to accommodate the data user, this table consists of 9 fields, namelyid, username, password, name, phone, e-mail, address, title and agency. Field Name
Figure 14. Sequence Diagram User Management on Web d.
Deployment Diagram
Type
Length
Information Id user Username Password User name E-mail user User phone number Alamat user Jabatan user: admin, staff, user User agency
id user pass nama email phone
Int Varchar Varchar Varchar Varchar Varchar
6 10 20 50 20 20
alamat jabatan
Varchar Varchar
100 10
instansi
Varchar
100
7
Aditya Hadiwijaya
ii. Table Data
iii. Table Agencies
Table data is used to accommodate victims of casualty data, this table consists of 6fields, namely id, type, date, prov, district, district, village, photograph, name, age,location, tgldtmkn, description, ciri_fisik, cirilain and sender.
Table institution used to hold contact data that can be contacted by the search, this table consists of 6 fields, namely the id, name, phone, address, cpname, cpphone.
Nama Field id jenis
Tipe Int Varchar
tgl
date
prov kab kec desa foto
Varchar Varchar Varchar Varchar Varchar
50 50 50 50 80
nama
Varchar
20
jk umur lokasi
Varchar Varchar Varchar
1 7 80
tgldtmk n keterang an
date
ciri_fisi k
Mediu mtext
cirilain
Mediu mtext
pengiri m
Varchar
Varchar
Panjan g 6 50
255
100
Keteranga n Id victims Types of disaster Date of incident
Victims picture Victims name Victims sex Victims age The location of discovery Date of discovery State of disaster fictims Victims physical caracteristic s Victims other caracteristic s Sender data disaster victims
Nama Field
Tipe
Panjang
Keterangan Id agency Agency name Agency phone number Agency address Agency contact person name Agency Contact person phone number
id nama
Int Varchar
6 50
phone
date
20
alamat
Varchar
100
cpname
Varchar
50
cpphone
Varchar
20
f. Analysis System The process of analysis in this study include an analysis of equipment and analysis systems user. i. Analysis System Equipment This application is an application that can perform searches from mobile phones and computers. Mobile as a device to petfotm ¬-input of data and search. While the computer is used to perform a search with more detailed data. Based on the general system requirements, software to be constructed must meet the following requirements: must be able to connect the application with the operating system Symbian S60 3rd Edition to access the camera on mobile phones, can communicate with the server, and can display Google Maps in the main program. ii. User Analysis Users who may be involved in the operation of these applications either access or mengiput data into this application. As for users who are involved in this system are as follows:
8
Aditya Hadiwijaya
− Public (Unregistered User) Reserves the right to conduct a search of victims through computers and mobile phones as well as register for a user. − User Entitled to input search data disaster victims. − Staff Entitled to petfotm-edit of data disaster victims as well as agency data. − Admin As a control system langnsung on the computer. Working and running as well as system activities and perform lawyer-edit of user data. 4.2. Design In accordance with the functions of the applications that researchers make, there are 3 types of interface design Sinra, namely Sinra to search for victims of data with mobile phones, Sinra to input data with a mobile phone offering, and Sinra on the web. On this screen the user to interact with the application. a. Application download page offering data search This page is the start page to download the application through mobile phones.
Figure 18. Application download page offering data search
b. Sinra to search for victims of data with mobile phones
This application allows you to perform searches via mobile data offering. Queries on this application is the type of disaster, the date of the incident, the provincial, district, subdistrict, village, name, age and physical characteristics. The search results are displayed is the name, type of disaster, the date of occurrence, age, location discovery, description and physical characteristics.
9
Aditya Hadiwijaya
This form serves to select whether the party concerned has the right of access to the application or not, this form consists of two input text for login, as well as three buttons for the operation submit, register, and quit.
Figure 19. Victim Data Search Form Sinra on mobile Figure 21. Login Page Sinra on mobile phones
d. Register Page Sinra on mobile phones This form serves to register Sinra. This form consists of 6 units text input, and three buttons to submit the operation, a back button to return to the login page and buttons to perform operations quit.
Figure 20. Victim Data Search Results Sinra on mobile phone
c. Login
Page Sinra
on mobile phones
This application is used as the primary data input on Sinra. Terms to be able to run this application is the requirement to be able to run this application is Symbian S60 3rd Edition and Flash Lite 2.1.
Figure 22. Register Page Sinra on mobile phones
10
Aditya Hadiwijaya
e. Input Page Sinra on mobile phones
h. Search Page Sinra on the web
This form serves to input data disaster victims. This form consists of four text inputs, one frame to display Figure s as well as three buttons to take Figure s from a camera phone, the buttons to perform operations submit and quit buttons to perform the operation.
On this page seekers can search the disaster victims. Search starts from disaster search. After the search select the disasters that have affected the data search can be done immediately.
Figure 23. Input Page Sinra on mobile phones
Figure 26. Page Sinra Disaster Search on Web After that the page will appear that displays the results of disaster victims.
f. Home Page Sinra on the web This page aims to inform about the application and its developers.
Figure 27. Search Results Data on the Web Sinra Disaster Victims Figure
24. Home
Page
Sinra
on
Web
g. Login Page Sinra on the web This page was aiming to select users. Only admins and staff who can perform the login.
i. Sinra map on your web page Page map is useful to facilitate the search for the location of disaster victims by using GoogleMaps.
Figure 25. Login Sinra on Web Page
Figure 28. Sinra Map on Web Page
11
Aditya Hadiwijaya
j. Detail Page Sinra on the web This page aims to look at existing data in the table on the search page more clearly.Images displayed even greater. When a user logs in as admin or staff of the detail page will display two buttons, namely the update button and the delete button.
Figure 31. The Agency Sinra with User as Admin or Staff m. User Management Page on the web Sinra This page allows you to perform user management. This page can only be accessed by the admin. On this page can be done the search for the user based on username, name, and agency. Moreover, it can also perform the operation add, update and delete. Figure 29. Detail Page Sinra on Web with User as Admin or Staff
k. Add a page on the web Sinra Data This page is intended to perform additional data via the web. This page can only be accessed by a user who logs in as admin or staff.
Figure 32. User Management Page Sinra on the Web with User as Admin 5. Cover 5.1. Conclusion Based on data search application development discussion of disaster victims as a whole can be deduced as follows: Figure 30. Page Add Sinra Data with User as Admin or Staff l. Page Sinra Agencies on the web This page is useful to management agencies. This page can be accessed by staff and admin. On this page can be done the search for the agency based on agency name, address, and contact person. Moreover, it can also perform the operation add, update and delete.
a. This application is expected to speed up the search data disaster victims as well as integrating all the data becana victims scattered in various places. Unfortunately in this peneliatian this application can not be implemented in a state of disaster. b. Difficulties in the input data with a computer that takes place and less effective to disiasati by using a mobile phone.
12
Aditya Hadiwijaya
5.2. Suggestion Based on the analysis conducted by researchers, then the suggestions for the development of these applications, among others: a. The development of search applications in the future disaster victims data suggested plus other facilities such as the search by using face recognition. b. Applications used for mobile phones is an application that can be used on cell phones that are more common, such as mobile phones that support Java or Brew. 6. Bibliography [1] Rumbaugh, James, Jacobson, Ivar, & Brooch, Grady. 2006, The Unified Modeling Language Reference Manual, 2nd Edition, Westford: Pearson Education, Inc. [2] Pressman, Roger S.. 2010, Software Engineering: A Practitioner's Approach, 7th International edition. New York: McGraw-Hill.
[3] "Application." Microsoft® Encarta® 2009 [DVD]. Redmond, WA: Microsoft Corporation, 2008. [4] Ayuliana. Blackbox Testing, http://ayuliana_st.staff.gunadarma.ac. id/Downloads/files/12482/Pertemuan +06+-++_BlackBox+Testing_.pdf, 29 Mei 2010. [5] Dharwiyanti , Sri & Wahono, Romi Satria. Pengantar Unified Modeling Language (UML), http://standyoei.web.ugm.ac.id/ppl/MateriSuplem enUml.pdf, 29 April 2010. [6] Pengenalan UML, http://standyoei.web.ugm.ac.id/ppl/PengenalanU ML.pdf, 29 April 2010.
13
PENGEMBANGAN APLIKASI PENCARIAN DATA KORBAN BENCANA (SINRA) DI INDONESIA BERBASIS WEB
PENGEMBANGAN APLIKASI PENCARIAN DATA KORBAN BENCANA (SINRA) DI INDONESIA BERBASIS WEB
Aditya Hadiwijaya Program Studi Teknik Informatika, FST UIN Syarif Hidayatullah Jakarta, Indonesia
[email protected] Abstrak Pelaksanaan pendataan korban bencana di Indonesia kurang ditanggapi dengan serius. Puncaknya adalah ketika terjadi tsunami di Aceh dimana ribuan orang kehilangan sanak saudara mereka. Sebagian dari mereka ada yang menemukan sanak saudara mereka setelah berbulan-bulan lamanya bahkan ada yang sampai bertahun-tahun. Semua cara ditempuh oleh para pencari korban bencana untuk menemukan sanak saudaranya. Suatu aplikasi yang terintegrasi diperlukan agar pendataan dan pencarian data korban bencana bisa lebih efektif dan efisien. Penelitian ini bertujuan untuk melihat, menganalisis, dan memecahkan masalah yang timbul pada pendataan serta pencarian data korban bencana bisa menjadi lebih efektif dan efisien. Analisa yang digunakan adalah dengan mewawancarai korban bencana tsunami Aceh serta bertanya langsung kepada Badan Nasional Penanggulangan Bencana yang bertanggung jawab terhadap bencana yang terjadi di Indonesia. Dalam penelitian ini metode pengembangan aplikasi yang peneliti gunakan adalah Incremental Process Models. Untuk ke depannya, aplikasi ini dapat dikembangkan lagi misalnya dengan menambahkan fasilitas online face recognition. 1.
Pendahuluan
1.1.
Latar Belakang
Penanganan bencana di Indonesia saat ini masih kurang efektif, misalnya saja masalah pencarian data korban bencana. Sebelum tahun 2009 data-data korban bencana masih ditulis manual dan data tersebut masih tersebar di berbagai organisasi, misalnya Palang Merah Indonesia (PMI), Badan Nasional Penanggulangan Bencana (BNPB), atau stasiun tv. Datanya pun hanya berupa jumlah korban yang selamat, luka-luka, atau meninggal yang bisa dilihat dari situs BNPB. Pada tahun 2004 terjadi tsunami yang meluluh lantakkan sebagian besar Aceh. Banyak para korban yang kelihalan sanak saudaranya. Pendataan terhadap korban bencana pun tidak jelas, karena data-data korban bencana yang masuk dan keluar dari tenda pengungsian tidak di-update terus menerus. Pencarian terhadap korban bencana menjadi sangat sulit dilakukan. Segala cara dilakukan oleh menemukan korban bencana mulai dari menyebarkan dan menempelkan
1
brosur korban bencan ayang hilang, bertanya ke orang-orang sekitar, sampai mendatangi stasiun tv untuk meminta siaran ulang peliputan di tenda pengungsi korban bencana. Berdasarkan data UNICEF terdapat lima ribu anak yang hilang terpisah dari keluarga mereka. Setelah tahun 2009 BPNB menetapkan bahwa setiap organisasi yang memiliki data korban bencana harus dikirim ke BPNB yang memberikan informasi nama, umur, serta keadaan korban bencana tersebut. Datadatanya pun masih tersebar ke beberapa file dan belum dikumpulkan ke dalam satu database data korban bencana, sehingga pencarian data korban bencana menjadi tidak efektif karena harus membuka file tersebut satu per satu. Oleh karena itu dibutuhkan suatu aplikasi yang terintegrasi yang dapat melakukan pemasukukan data korban bencana secara efektif dan efisien. Tetapi, aplikasi yang hanya bisa diakses melalui komputer saja kurang baik karena pemindahan komputer dari satu tempat ke tempat lain tidak efektif serta
Jurnal Masyarakat Informatika, Volume XX, Nomor XX, ISSN 0000 - 0000
Aditya Hadiwijaya
tidak memungkinkan untuk memasukkan foto korban bencana karena tidak semua korban bencana dalam kondisi sehat. Penggunaan laptop pun kurang efektif selain ukuran yang besar kondisi baterenya pun hanya bertahan sekitar tiga jam. Oleh karena itu dibutuhkan media lain yang lebih mudah untuk dibawabawa serta yang memiliki daya tahan baterai yang lebih lama. Dengan alasan inilah peneliti menggunakan dua media, yaitu ponsel dan komputer agar pendataan korban bencana dapat mejadi lebih efektif dan efisien. Berdasarkan masalah tersebut peneliti ingin mengembangkan sebuah aplikasi pencarian korban bencana berbasis web, aplikasi ini dapat mempermudah pencarian data korban bencana dengan menggunakan internet. Adapun judul penelitian adalah ”Pengembangan Aplikasi Pencarian Data Korban Bencana di Indonesia Berbasis Web” 1.2.
Rumusan Masalah
Berdasarkan latar belakang masalah, penulis merumuskan bahwa rumusan masalah yang akan diselesaikan dalam penelitian ini adalah bagaimana melakukan pengintegrasian data korban bencana sehingga pencarian data korban bencana dapat dilakukan dengan mudah dan bagaimana pemasukan dan pencarian data dapat dilakukan dengan media lain yang lebih ringkas bentuknya. 1.3.
Batasan Masalah
Dalam pengembangan aplikasi pencarian data korban ini, penulis membatasi permasalahannya pada lokasi bencana yang berada di Indonesia, media penggunaan aplikasi pada komputer serta ponsel, dukungan ponsel hanya pada ponsel yang memiliki sistem operasi symbian s60 3rd Edition, serta konsep pencarian menggunakan pattern matching. 1.4.
yang terjadi di indonesia sehingga menjadi lebih efektif dan efisien. 1.5.
Manfaat
Penulis melakukan penelitian ini agar bermanfaat bagi penulis, Badan Penanggulanan Bencana Nasional, serta masyarakat Indonesia. 2.
Landasan Teori
2.1.
Pengertian Pengembangan
Pengembangan berarti proses, cara, perbuatan mengembangkan (KBBI, 2002: 538). Pengembangan adalah tindakan berkembang atau suatu keadaan yang dapat dikembangkan. Produk atau gagasan baru. Tahap baru dalam situasi yang berubah (http://www.askoxford.com). 2.2.
Pengertian Aplikasi
Aplikasi dalam ilmu komputer adalah sebuah program komputer yang dirancang untuk membantu orang-orang yang melakukan jenis pekerjaan tertentu. Sebuah aplikasi berbeda dari sebuah sistem operasi (yang menjalankan komputer), sebuah utilitas (yang melakukan pemeliharaan atau untuk tujuan tugas umum), dan bahasa pemrograman (yang membuat program komputer). Tergantung pada pekerjaan yang sudah dirancang, aplikasi dapat memanipulasi teks, angka, grafik, atau gabungannya. Beberapa paket aplikasi menawarkan kemampuan komputasi yang baik dengan fokus pada satu tugas, seperti pengolah kata. Paket aplikasi lainnya adalah perangkat lunak yang terintegrasi, menawarkan kemampuan komputasi yang kurang tapi di dalamnya terdapat beberapa aplikasi, seperti pengolah kata, spreadsheet, dan program database (Microsoft Encarta, 2009).
Tujuan 2.3.
Tujuan penelitian ini adalah untuk mempermudah pencarian data korban bencana
Konsep Pencarian
MySQL menyediakan SQL pencocokan pola standar serta bentuk pola pencocokan
2
Aditya Hadiwijaya
berdasarkan ekspresi regular diperpanjang sama dengan yang digunakan oleh utilitas Unix seperti vi, grep, dan sed. Pencocokan pola SQL memungkinkan Anda untuk menggunakan " _ "untuk menyesuaikan karakter tunggal dan"% "agar sesuai dengan jumlah yang sewenang-wenang karakter (termasuk nol karakter). Di MySQL, pola SQL adalah case-insensitive secara default. Beberapa contoh yang ditampilkan di sini. Anda tidak menggunakan =atau <> bila Anda menggunakan pola SQL; menggunakan LIKE atau NOT LIKE operator perbandingan sebagai gantinya 2.4.
Pengertian Aplikasi Berbasis Web
Aplikasi berbasis web (web based application) adalah aplikasi yang dapat dijalankan langsung melalui web browser bisa menggunakan internet ataupun intranet dan tidak tergantung pada sistem operasi yang digunakan. 3.
Metode Penelitian
3.1.
Metode Pengumpulan Data
Metode pengumpulan data digunakan dalam penelitian ini adalah: a.
3.2.
Metode Pengembangan Sistem
Metode pengembangan sistem yang penulis gunakan dalam penelitian ini adalah metode incremental process models. Dalam pengembangan aplikasi Pencarian Korban Bencana, peneliti menggunakan metode incremental process models. Peneliti menggunakan metode ini karena metode ini cocok untuk pengembangan aplikasi yang tidak terlalu besar dan dalam waktu yang singkat.
yang
Observasi
Wawancara dilakukan melalui media internet. Peneliti membuka discussion di forum dan melemparkan pertanyaan di forum tersebut. Forum tersebut adalah acehforum.co.id serta kaskus.us regional Aceh. Wawancara terdiri dari tiga pertanyaan yang berhubungan dengan cara pencarian korban bencana, satu pertanyaan mengenai Struktur Organisasi Pemerintahan Propinsi Aceh, serta satu pertanyaan untuk mendapatkan feedback dari pengembangan aplikasi. b.
referensi yang relevan dengan objek yang akan diteliti. Pencarian referensi dilakukan di perpustakaan, toko buku, maupun secara online melalui internet. Setelah mendapatkan referensi-referensi yang relevan tersebut, peneliti lalu mencari informasi-informasi yang dibutuhkan dalam penelitian ini dari referensireferensi tersebut. Informasi yang didapatkan digunakan dalam penyusunan landasan teori, metode penelitian serta pengembangan aplikasinya secara langsung.
Studi Pustaka
Pada tahapan pengumpulan data dengan cara studi pustaka, penulis mencari referensi-
a.
Communication
Tahapan ini berupa aktivitas komunikasi dengan stakeholder atau client. Peneliti melakukan wawancara terhadap teman, saudara, atau kerabat yang melakukan pencarian terhadap korban bencana melalui
3
Aditya Hadiwijaya
forum di internet. Misalnya Romadhani salah seorang moderator acehforum.or.id yang tinggal di Banda Aceh. b.
a.
Usecase Diagram
Planning
Tahapan ini berupa aktivitas komunikasi dengan stakeholder atau client. Peneliti melakukan wawancara terhadap teman, saudara, atau kerabat yang melakukan pencarian terhadap korban bencana melalui forum di internet. Misalnya Romadhani salah seorang moderator acehforum.or.id yang tinggal di Banda Aceh. c.
Modeling
Pada tahap ini peneliti akan melakukan beberapa hal yang diperlukan dalam tahap modeling melalui perancangan use case diagram UML, activity diagram UML, sequence diagram UML dan deployment diagram UML dan perancangan layout. d.
Construction
Tahap berikutnya yang dilakukan adalah pemrograman atau coding. Tahap ini merupakan hasil transfer dari perancangan ke dalam bahasa pemrograman yang telah ditentukan. Kemudian apabila tahap ini telah selesai akan dilakukan testing atau pengujian program secara keseluruhan dari aplikasi yang telah dibuat. Adapun testing terhadap program dilakukan dengan metode black-box. e.
Gambar 1. Use Case Diagram Sinra No . 1
2
Deployment
Pada tahap ini peneliti akan mengupload aplikasi pada web hosting dan meminta pencari korban bencana untuk memberikan feedback dari aplikasi yang telah dibuat. 4.
Hasil Penelitian dan Pembahasan
4.1.
Modeling
Pemodelan yang dibutuhkan oleh peneliti dalam membangun Aplikasi Pencarian Korban Bencana, beberapa tahapannya, yaitu:
3
Requiremen t Melakukan pencarian korban melalui handphone dengan mengetikkan nama korban yang dicari Melakukan pencarian korban melalui PC dengan mengetikkan nama, umur, atau lokasi korban yang dicari Melakukan pendaftaran dengan mengetikkan username, password, nama, email,
Actor Unregistere d User, User, Staff, Admin
Use case Cari Data Korban
Unregistere d User, User, Staff, Admin
Cari Data Korban
Unregistere d User
Registe r
4
Aditya Hadiwijaya
4
5
6
7
8
9
10
11
b.
telepon, dan alamat Melakukan penginputan data korban Meng-edit data korban yang tidak sesuai atau salah pengetikkan Menghapus data korban jika ada data yang sama Melakukan penginputan data instansi Meng-edit data instansi yang tidak sesuai atau salah pengetikkan Menghapus data instansi jika ada data yang sama Meng-edit data user yang tidak sesuai atau salah pengetikkan Menghapus data user
User, Staff, Admin Staff, Admin
Input Data Korban Edit Data Korban
Staff, Admin
Delete Data Korban
Staff, Admin
Input Data Instansi Edit Data Instansi
Staff, Admin
Staff, Admin
Delete Data Instansi
Admin
Edit Data User
Admin
Delete Data User
Gambar 2. Activity Diagram Sinra Input Data dengan ponsel
Activity Diagram
Gambar 3 Activity Diagram Sinra Tambah, Edit dan Delete Data
5
Aditya Hadiwijaya
Gambar 6. Activity Diagram Sinra Pencarian Data dengan ponsel
Gambar 4. Activity Diagram Sinra Tambah, Edit dan Delete Instansi
Gambar 7. Activity Diagram Sinra Pencarian Data pada web
Gambar 5. Activity Diagram Sinra Tambah, Edit dan Delete User
6
Aditya Hadiwijaya
Gambar 11. Sequence Diagram Input Data Melalui Handphone
Gambar 8. Activity Diagram Sinra Pencarian Data pada web c.
Sequencial Diagram
Gambar 9. Sequence Diagram Sinra Pencarian Data dengan Handphone
Gambar 12. Sequence Diagram Data Management oleh Staff Melalui Web
Gambar 10. Sequence Diagram Register User dengan Handphone
7
Aditya Hadiwijaya
d.
Deployment Diagram
Gambar 15. Deployment Diagram Sinra Pencarian Data Korban pada Handphone
Gambar 16. Deployment Diagram Sinra Input Data Korban pada Handphone Gambar 13. Sequence Diagram Instansi Management oleh Staff Melalui Web Gambar 17. Deployment Diagram Sinra Pencarian Data Korban pada Web e.
Perancangan Basis Data
Perancangan basis data merupakan salah satu bagian terpenting dalam proses pengembangan sistem. Perancangan basis data yang kompak dan efisien dalam penggunaan ruang penyimpanan, cepat dalam pengaksesan dan mudah dalam pemanipulasian data (tambah, simpan, hapus serta update). Rancangan basis data yang diajukan adalah sebagai berikut: i.
Gambar 14. Sequence Diagram User Management oleh Admin Melalui Web
Tabel User
Tabel user digunakan untuk menampung data user, tabel ini terdiri dari 9 field, yaitu id, username, password, nama, phone, e-mail, alamat, jabatan dan instansi. Nama Field id user pass
Tipe Int Varchar Varchar
Panjang
Keterangan
6 10 20
Id user Username Password
8
Aditya Hadiwijaya
nama email phone
Varchar Varchar Varchar
50 20 20
alamat jabatan
Varchar Varchar
100 10
instansi
Varchar
100
ii.
Nama user E-mail user Nomor telepon user Alamat user Jabatan user: admin, staff, user Tempat bekerja user
tgldtmk n
date
keterang an
Varchar
ciri_fisi k
Mediu mtext
cirilain
Mediu mtext
pengiri m
Varchar
255
Tabel Data
Tabel data korban digunakan untuk menampung data korban, tabel ini terdiri dari 6 field, yaitu id, jenis, tgl, prov, kab, kec, desa, foto, nama, umur, lokasi, tgldtmkn, keterangan, ciri_fisik, cirilain dan pengirim. Nama Field id
Tipe Int
Panjan g 6
jenis
Varchar
50
tgl
date
prov kab kec desa foto
Varchar Varchar Varchar Varchar Varchar
50 50 50 50 80
nama
Varchar
20
jk
Varchar
1
umur
Varchar
7
lokasi
Varchar
80
Keteranga n Id data korban bencana Jneis Bencana Tanggal kejadian becana
Foto korban bencana Nama korban bencana Jenis kelamin korban bencana Umur korban bencana Lokasi ditemukann ya korban bencana
iii.
100
Tanggal ditemukann ya korban bencana Keadaan korban bencana Ciri fisik korban bencana, misalnya warna kulit Ciri lain korban bencana, misalnya pakaian terakhir yang dipakai Pengirim data korban bencana
Tabel Instansi
Tabel instansi digunakan untuk menampung data kontak yang dapat dihubungi oleh pencari, tabel ini terdiri dari 6 field, yaitu id, nama, phone, alamat, cpname, cpphone. Nama Field id nama phone
alamat cpname
cpphon e
Tipe Int
Panjan g 6
Varcha r date
50
Varcha r Varcha r
100
Varcha r
20
20
50
Keteranga n Id data instansi Nama instansi Nomor telephone instansi Alamat instansi Nama contact person instansi Telephone contact person instansi
9
Aditya Hadiwijaya
f.
Analisis Sistem
−
Proses analisis dalam penelitian ini mencakup analisis perlengkapan sistem dan analisis user. i.
Sebagai pengendali sistem secara langnsung pada komputer. Bekerja dan menjalankan serta aktifitas sistem serta melakukan peng-edit-an data user.
Analisis Perlengkapan Sistem 4.2.
Aplikasi ini merupakan suatu aplikasi yang dapat melakukan pencarian dari handphone dan komputer. Handphone sebagai perangkat untuk melakukan peng-input-an data serta pencarian. Sedangkan komputer digunakan untuk melakukan pencarian dengan data yang lebih detail. Berdasarkan kebutuhan sistem secara umum, perangkat lunak yang akan dibangun harus memenuhi kebutuhan sebagai berikut: harus dapat menghubungkan aplikasi dengan sistem operasi Symbian S60 3rd Edition untuk mengakses kamera pada handphone, dapat melakukan komunikasi dengan server, dan dapat menampilkan Google Maps dalam program utama.
ii.
Admin
Desain
Sesuai dengan fungsi dari aplikasi yang peneliti buat terdapat 3 jenis interface design Sinra, yaitu Sinra untuk pencarian data korban dengan handphone, Sinra untuk input data korban dengan handphone, serta Sinra pada web. Pada layar inilah user melakukan interaksi dengan aplikasi. a.
Halaman unduh apikasi pencarian data korban
Halaman ini adalah halaman awal untuk mengunduh aplikasi melalu handphone.
Analisis User
User yang dapat terlibat dalam pengoperasian aplikasi ini baik mengakses ataupun mengiput data-data ke dalam aplikasi ini. Adapun user yang terlibat dalam sistem ini adalah sebagi berikut: − Masyarakat User)
Umum
(Unregistered
Berhak untuk melakukan pencarian korban melalui komputer dan handphone serta melakukan registrasi untuk menjadi user. −
User
Berhak untuk melakukan input data pencarian korban bencana. −
Gambar 18. Halaman unduh apikasi pencarian data korban
Staff
Berhak untuk melakukan peng-edit-an data korban bencana serta data instansi.
10
Aditya Hadiwijaya
b.
Sinra untuk pencarian data korban dengan handphone
Aplikasi ini berguna untuk melakukan pencarian data korban melalui handphone. Query yang ada pada aplikasi ini adalah jenis bencana, tanggal kejadian, provinsi, kabupaten, kecamatan, desa, nama, umur dan ciri fisik. Hasil pencarian yang ditampilkan adalah nama, jenis bencana, tanggal kejadian, umur, lokasi penemuan, keterangan dan ciri fisik.
Gambar 20. Hasil Pencarian Data Korban Sinra pada ponsel c.
Login Page Sinra pada ponsel
Aplikasi ini digunakan sebagai input data utama pada Sinra. Syarat untuk dapat menjalankan aplikasi ini adalah Syarat untuk dapat menjalankan aplikasi ini adalah Symbian S60 3rd Edition serta Flash Lite 2.1.
Gambar 19. Form Pencarian Data Korban Sinra pada ponsel
Form ini berfungsi untuk menyeleksi apakah yang bersangkutan memiliki hak akses terhadap aplikasi atau tidak, form ini terdiri dari dua buah text input untuk login, serta tiga buah tombol untuk operasi submit, register dan quit.
11
Aditya Hadiwijaya
tombol untuk melakukan operasi submit serta tombol untuk melakukan operasi quit.
Gambar 23. Input Page Sinra pada ponsel f.
Gambar 21. Login Page Sinra pada ponsel d.
Home Page Sinra pada web
Halaman ini bertujuan untuk menginformasikan tentang aplikasi dan developer-nya.
Register Page Sinra pada ponsel
Form ini berfungsi untuk melakukan pendaftaran Sinra. Form ini terdiri dari 6 buah text input, serta tiga buah tombol untuk operasi submit, tombol back untuk kembali ke halaman login serta tombol untuk melakukan operasi quit.
Gambar 24. Home Page Sinra pada Web g.
Login Page Sinra pada web
Halaman ini bertujuan untuk menyeleksi pengguna. Hanya admin dan staff yang dapat melakukan login.
Gambar 25. Login Page Sinra pada Web Gambar 22. Register Page Sinra pada ponsel h. e.
Search Page Sinra pada web
Input Page Sinra pada ponsel
Form ini berfungsi untuk melakukan input data korban bencana. Form ini terdiri dari empat text input, satu buah frame untuk menampilkan gambar, serta tiga tombol untuk mengambil gambar dari kamera handphone,
Pada halaman inilah pencari dapat melakukan pencarian korban bencana. Pencarian dimulai dari pencarian bencana. Setelah pencari memilih bencana yang ada maka pencarian data korban bencana dapat langsung dilakukan.
12
Aditya Hadiwijaya
j.
Detail Page Sinra pada web
Halaman ini bertujuan untuk melihat data yang ada pada tabel di search page dengan lebih jelas. Gambar yang ditampilkan pun lebih besar. Apabila user melakukan login sebagai admin atau staff maka detail page akan menampilkan dua tombol, yaitu tombol update dan tombol delete. Gambar 26. Page Pencarian Bencana Sinra pada Web Setelah itu maka akan muncul halaman yang menampilkan pencarian korban bencana.
Gambar 29. Detail Page Sinra pada Web dengan User sebagai Admin atau Staff k.
Gambar 27. Hasil Pencarian Data Korban Bencana Sinra pada Web i.
Halaman Peta Sinra pada web
Halaman Tambah Data Sinra pada web
Halaman ini bertujuan untuk melakukan penambahan data melalui web. Halaman ini hanya bisa diakses oleh user yang melakukan login sebagai admin atau staff.
Halaman peta ini berguna untuk mempermudah pencarian lokasi korban bencana dengan menggunakan GoogleMaps.
Gambar 30. Page Tambah Data Sinra dengan User sebagai Admin atau Staff Gambar 28. Halaman Peta Sinra pada Web
l.
Page Instansi Sinra pada web
Halaman ini berguna untuk melakukan manajemen instansi. Halaman ini bisa diakses
13
Aditya Hadiwijaya
oleh staff dan admin. Pada halaman ini bisa dilakukan pencarian terhadap instansi berdasarkan pada nama instansi, alamat, dan contact person. Selain itu dapat juga melakukan operasi tambah, update dan delete.
Gambar 31. Page Instansi Sinra dengan User sebagai Admin atau Staff m.
User Management Page Sinra pada web
Halaman ini berguna untuk melakukan manajemen user. Halaman ini hanya bisa diakses oleh admin. Pada halaman ini bisa dilakukan pencarian terhadap user berdasarkan pada username, nama, dan instansi. Selain itu dapat juga melakukan operasi tambah, update dan delete.
Gambar 32. User Management Page Sinra pada Web dengan User sebagai Admin 5.
Penutup
5.1.
Kesimpulan
Berdasarkan pembahasan pengembangan aplikasi pencarian data korban bencana secara keseluruhan dapat ditarik kesimpulan sebagai berikut:
a.
Aplikasi ini diharapkan dapat mempercepat pencarian data korban bencana serta mengintegrasikan seluruh data korban becana yang tersebar di berbagai tempat. Sayangnya dalam peneliatian ini aplikasi ini belum dapat diimplementasikan pada keadaan bencana.
b.
Kesulitan dalam penginputan data dengan komputer yang memakan tempat serta kurang efektif dapat disiasati dengan menggunakan ponsel.
5.2.
Saran
Berdasarkan analisis yang dilakukan peneliti, maka saran yang dapat peneliti terhadap pengembangan aplikasi ini, antara lain: a.
Pengembangan aplikasi pencarian data korban bencana ke depan disarankan ditambah fasilitas lain seperti fasilitas pencarian dengan menggunakan face recognition.
b.
Aplikasi yang digunakan untuk handphone merupakan aplikasi yang dapat digunakan pada handphone yang lebih umum, misalnya handphone yang mendukung Java atau Brew.
6.
Daftar Pustaka [1] Rumbaugh, James, Jacobson, Ivar, & Brooch, Grady. 2006, The Unified Modeling Language Reference Manual, 2nd Edition, Westford: Pearson Education, Inc. [2] Pressman, Roger S.. 2010, Software Engineering: A Practitioner's Approach, 7th International edition. New York: McGraw-Hill.
14
Aditya Hadiwijaya
[3] "Application." Microsoft® Encarta® 2009 [DVD]. Redmond, WA: Microsoft Corporation, 2008. [4] Ayuliana. Blackbox Testing, http://ayuliana_st.staff.gunadarma.a c.id/Downloads/files/12482/Pertem uan+06+++_BlackBox+Testing_.pdf, 29 Mei 2010. [5] Dharwiyanti , Sri & Wahono, Romi Satria. Pengantar Unified Modeling Language (UML), http://standyoei.web.ugm.ac.id/ppl/MateriSuple menUml.pdf, 29 April 2010. [6] Pengenalan UML, http://standyoei.web.ugm.ac.id/ppl/Pengenalan UML.pdf, 29 April 2010.
15
LAMPIRAN I WAWANCARA Waktu
:
20 Mei 2010
Responden
:
sHinOsuke (Fadli Idris)
Jabatan URL
: :
Super Moderator http://www.acehforum.or.id/showthread.php?52303-HELPSkripsi-TentangTsunami&p=283315&viewfull=1#post283315
Pertanyaan : 1. Apakah anda menghadapi kesulitan dalam mencari korban bencana? 2. Apa yang anda lakukan waktu mencari korban bencana? (apakah mencari dari posko ke posko atau meminta bantuan stasiun tv) 3. Menurut anda sebaiknya bagaimana untuk mempermudah pencarian korban bencana Jawaban 1. Sangat Susah. 2. Mencari dari satu posko ke posko yang lain termasuk juga mendatangi stasiun tv. 3. Adanya aplikasi online yang terpusat dengan fasiltas search. Waktu
:
21 Mei 2010
Responden
:
vazaika
Jabatan URL
: :
invisibleman http://www.acehforum.or.id/showthread.php?52303-HELPSkripsi-TentangTsunami&p=283393&viewfull=1#post283393
Pertanyaan : 1. Apakah anda menghadapi kesulitan dalam mencari korban bencana? 2. Apa yang anda lakukan waktu mencari korban bencana? (apakah mencari dari posko ke posko atau meminta bantuan stasiun tv) 3. Menurut anda sebaiknya bagaimana untuk mempermudah pencarian korban bencana Jawaban 1. pastinya 2. mencari secara manual, coba tanya2 ke orang sekitar mana tau pernh ngeliat. 3. adanya aplikasi online yang terpusat, bisa mempermudah mencari.
Waktu
:
21 Mei 2010
Responden
:
Planet81
Jabatan URL
: :
Moderator http://www.acehforum.or.id/showthread.php?52303-HELPSkripsi-TentangTsunami&p=283403&viewfull=1#post283403
Pertanyaan : 1. Apakah anda menghadapi kesulitan dalam mencari korban bencana? 2. Apa yang anda lakukan waktu mencari korban bencana? (apakah mencari dari posko ke posko atau meminta bantuan stasiun tv) 3. Menurut anda sebaiknya bagaimana untuk mempermudah pencarian korban bencana Jawaban 1. Pastinya 2. Mencari secara manual. Maksud secara manual adalah: a. Membolak balik tumpukan mayat dari hari ke hari, coba mengenali dari wajahnya. b. Bertanya dari posko ke posko, mungkin masih hidup c. Tanya kepada teman-teman2 yang mungkin kenal, atau yang pernah melihatnya d. Pokoknya segala cara ditempuh, walau tidak menuju ke orang yang dicari, paling tidak bisa menemukan petunjuk untuk pencarian lebih lanjut 3. Adanya aplikasi online yang terpusat, bisa mempermudah mencari.
Waktu
: 19 April 2010
Responden : botakedan® Jabatan URL
: kaskuser : http://www.kaskus.us/showpost.php?p=198695129&postcount=2
Pertanyaan : 1. Apakah anda menghadapi kesulitan dalam mencari korban bencana? 2. Apa yang anda lakukan waktu mencari korban bencana? (apakah mencari dari posko ke posko atau meminta bantuan stasiun tv) 3. Menurut anda sebaiknya bagaimana untuk mempermudah pencarian korban bencana Jawaban Kebetulan keluarga saya semua selamat, jadi tidak sempat melakukan pencarian. ada sedikit pengamatan dari proses pencarian yang paling menjadi kendala adalah... pendataan penduduk yang tidak UPDATE. tidak hanya pendatang yang tidak mendaftar, tapi juga adanya penambahan anggota keluarga yang tidak didaftar. Waktu
: 20 April 2010
Responden : d0d0llll Jabatan URL
: kaskus addict : http://www.kaskus.us/showpost.php?p=199484958&postcount=9
Pertanyaan : 1. Apakah anda menghadapi kesulitan dalam mencari korban bencana? 2. Apa yang anda lakukan waktu mencari korban bencana? (apakah mencari dari posko ke posko atau meminta bantuan stasiun tv) 3. Menurut anda sebaiknya bagaimana untuk mempermudah pencarian korban bencana Jawaban 1. Tidak ketemu malah gan 2. Mencari ke posko kampung, rumah sodara, sebar pengumuman 3. Segera di buat posko di kampung gan, sebelum bencana yg tau keadaan kita kan tetangga sekitar.
Waktu
:
20 April 2010
Responden
:
onik
Jabatan URL
: :
Reg. Leader Aceh http://www.kaskus.us/ (via personal message)
Pertanyaan : Bagaimana bagan sistem pemerintahan di provinsi Aceh? Jawaban Data diolah sesuai dengan gambar 4.2. Struktur Organisasi Pemerintahan Propinsi Aceh.
Waktu
:
20 Mei 2010
Responden
:
vazaika
Jabatan URL
: :
invisibleman http://www.acehforum.or.id/ (via private message)
Pertanyaan : Saya menta tolong untuk memberikan saran dan opinin untuk aplikasi pencarian korban bencana yang sedang saya kembangkan. Jawaban wah uda mantap tu, tinggal datangnya di lengkapin aja om mungkin yang perlu di tambahin detail keterangannya, biar keliatan kalo itu web ntuk pencarian korban tsunami.
Waktu
:
20 Mei 2010
Responden
:
Neulis Zuliasri
Pertanyaan Menurut ibu apa yang kurang dari aplikasi ini sehingga bisa menjadi lebih baik serta nantinya dapat di implementasikan Jawaban (langsung kepada inti dan dengan saduran) 1. Halaman utama di adakan sehingga pengunjung mengetahui ini aplikasi untuk apa serta siapa pembuat aplikasi ini. 2. Pencarian tidak hanya nama dan umur saja tapi juga ditampilkan jenis bencana tanggal kejadian, lokasi bencana yang terdiri dari provinsi, kabupaten atau kota, kecamatan dan desa. Karena untuk data yang kecil pencarian berdasarkan nama dan umur bisa dilakukan tapi kalau data sampai ribuan akan sulit untuk melakukan pencarian data. 3. Tambahkan jumlah total korban yang ada pada bencana tersebut. 4. Tambahkan contact person sehingga pencari bisa langsung menghubungi contact person tersebut.
Waktu
:
15 Juni 2010
Responden
:
Neulis Zuliasri
Pertanyaan Setelah aplikasi ini diperbaiki dari pertemuan yang lalu apa yang kurang dari aplikasi ini?
Jawaban (langsung kepada inti dan dengan saduran) 1. Tampilkan jenis kelamin korban bencana. 2. Tanggal disesuaikan dengan format dd-mm-yyyy. 3. Foto yang tidak ada disesuaikan berdasarkan jenis kelamin karena foto yang tidak ada ini menampilkan foto pria saja. 4. Lokasi ditemukan jadikan beberapa baris tidak satu baris saja sehingga tidak terpotong lokasinya. 5. Tampilkan informasi bantuan kepada pengguna.
Main.mxml <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="librar://ns.adobe.com/flex/halo" minWidth="1024" minHeight="600" creationComplete="init();" backgroundColor="#FFFFFF" xmlns:maps="com.google.maps.*" xmlns:mx2="library://ns.adobe.com/flex/mx" xmlns:components="components.* " xmlns:components1="components.*"> <s:layout> <s:BasicLayout/>
import spark.effects.Scale3D; private var geocoder:ClientGeocoder; private var googlemap:Map; [Bindable] private var dc:ArrayCollection; [Bindable] private var ac:ArrayCollection; [Bindable] private var bencanaAC:ArrayCollection; [Bindable] private var instansiAC:ArrayCollection; [Bindable] private var suksesLogin:String=""; [Bindable] private var Instansi:String=""; [Bindable] private var data:dataVO; [Bindable] private var userData:userVO; private var switchExpression:int; private var imagePath:String; private var loader:URLLoader; private var bali:ArrayList = new ArrayList (["Jembrana","Tabanan","Badung","Gianyar","Klungkung ","Bangli","Karangasem","Buleleng","Denpasar"]); private var bangka:ArrayList = new ArrayList (["Bangka","Belitung","Bangka Selatan","Bangka Tengah","Bangka Barat","Bangka Belitung","Pangkal Pinang"]); private var banten:ArrayList = new ArrayList (["Pandeglang","Lebak","Tangerang","Serang","Tangera ng","Cilegon","Serang","Tangerang Selatan"]); private var bengkulu:ArrayList = new ArrayList (["Bengkulu Selatan","Rejang Lebong","Bengkulu Utara","Kaur","Seluma","Muko Muko","Lebong","Kepahiang","Bengkulu Tengah","Bengkulu"]); private var diy:ArrayList = new ArrayList (["Kulon Progo","Bantul","Gunung Kidul","Sleman","Yogyakarta"]);
private var jakarta:ArrayList = new ArrayList (["Adm. Kep. Seribu "," Jakarta Pusat "," Jakarta Utara "," Jakarta Barat "," Jakarta Selatan "," Jakarta Timur"]); private var gorontalo:ArrayList = new ArrayList (["Gorontalo","Boalemo","Bone Bolango","Pahuwato","Gorontalo Utara","Gorontalo"]); private var jambi:ArrayList = new ArrayList (["Kerinci","Merangin","Sorolangun","Batang Hari","Muaro Jambi","Tanjung Jabung Barat","Tanjung Jabung Timur","Bungo","Tebo","Jambi","Sungai Penuh"]); private var jaBar:ArrayList = new ArrayList (["Bogor","Sukabumi","Cianjur","Bandung","Garut","Ta sikmalaya","Ciamis","Kuningan","Cirebon","Majalengka ","Sumedang","Indramayu","Subang","Purwakarta","Kara wang","Bekasi","Bandung Barat “,”. Bogor","Sukabumi","Bandung","Cirebon","Bekasi","Depo k","Cimahi","Tasikmalaya","Banjar"]); private var jaTeng:ArrayList = new ArrayList (["Cilacap","Banyumas","Purbalingga","Banjarnegara", "Kebumen","Purworejo","Wonosobo","Magelang","Boyolal i","Klaten","Sukoharjo","Wonogiri","Karanganyar","Sr agen","Grobogan","Blora","Rembang","Pati","Kudus","J epara","Demak","Semarang","Temanggung","Kendal","Bat ang","Pekalongan","Pemalang","Tegal","Brebes","Salat iga","Semarang","Pekalongan","Tegal"]); private var jaTim:ArrayList = new ArrayList (["Pacitan","Ponorogo","Trenggalek","Tulungagung","B litar","Kediri","Malang","Lumajang","Jember","Banyuw angi","Bondowoso","Situbondo","Probolinggo","Pasurua n","Sidoarjo","Mojokerto","Jombang","Nganjuk","Madiu n","Magetan","Ngawi","Bojonegoro","Tuban","Lamongan" ,"Gresik","Bangkalan","Sampang","Pamekasan","Sumenep ","Kediri","Probolinggo","Pasuruan","Mojokerto","Mad iun","Surabaya","Batu"]); private var kalBar:ArrayList = new ArrayList (["Sambas","Pontianak","Sanggau","Ketapang","Sintang ","Kapuas Hulu","Bengkayang","Landak","Sekadau","Melawai","Kay ong Utara","Kubu Raya","Pontianak","Singkawang"]);
private var kalSel:ArrayList = new ArrayList (["Tanah Laut","“,”Baru","Banjar","Barito Kuala","Tapin","Hulu Sungai Selatan","Hulu Sungai Tengah","Hulu Sungai Utara","Tabalong","Tanah Bumbu","Balangan","Banjarmasin","Banjarbaru"]); private var kalTeng:ArrayList = new ArrayList (["Waringin Barat","“,”Waringin Timur","Kapuas","Barito Selatan","Barito Utara","Katingan","Seruyan","Sukamara","Lamandau","G unung Mas","Pulang Pisau","Murung Raya","Barito Timur","Palangkaraya"]); private var kalTim:ArrayList = new ArrayList (["Paser","Kutai Kertanegara","Berau","Bulungan","Nunukan","Malinau", "Kutai Barat","Kutai Timur","Penajam Paser Utara","Tana Tidung","Balikpapan","Samarinda","Tarakan","Bontang" ]); private var kepRiau:ArrayList = new ArrayList (["Bintan","Karimun","Natuna","Lingga","Kepulauan Anambas","Batam","Tanjung Pinang"]); private var Lampung:ArrayList = new ArrayList (["Lampung Selatan","Lampung Tengah","Lampung Utara","Lampung Barat","Tulang Bawang","Tanggamus","Lampung Timur","Way Kanan","Pesawaran","Pringsewu","Mesuji","Tulang Bawang Barat","Bandar Lampung","Metro"]); private var Maluku:ArrayList = new ArrayList (["Maluku Tengah","Maluku Tenggara","Maluku Tenggara Barat","Buru","Seram Bagian Timur","Seram Bagian Barat","Kepulauan Aru","Maluku Barat Daya","Buru Selatan","Ambon","Tual"]); private var MalukuUtara:ArrayList = new ArrayList (["Halmahera Barat","Halmahera Tengah","Halmahera Utara","Halmahera Selatan","Kepulauan Sula","Halmahera Timur","Pulau Morotai","Ternate","Tidore Kepulauan"]); private var ntb:ArrayList = new ArrayList (["Lombok Barat","Lombok Tengah","Lombok Timur","Sumbawa","Dompu “,”Bima","Sumbawa Barat","Lombok Utara","Mataram","Bima"]);
private var ntt:ArrayList = new ArrayList (["Kupang","Timor Tengah Selatan","Timor Tengah Utara","Belu","Alor","Flores Timur","Sikka","Ende","Ngada","Manggarai","Sumba Timur","Sumba Barat","Lembata","Rote Ndao","Manggarai Barat “,”Nagekeo","Sumba Tengah","Sumba Barat Daya","Manggarai Timur","Sabu Raijua","Kupang"]); private var papua:ArrayList = new ArrayList (["Merauke","Jayawijaya","Jayapura","Nabire","Kepula uan Yapen","Biak Numfor","Puncak Jaya","Paniai","Mimika","Keerom","Pegunungan Bintang","Yahukimo","Tolikara","Waropen","Boven Digoel","Mappi","Asmat","Supiori","Mamberamo Raya","Membramo Tengah","Yalimo","Lanny Jaya","Nduga","Puncak","Dogiyai","Intan Jaya","Deiyai","Jayapura","Sarmi"]); private var papuaBarat:ArrayList = new ArrayList (["Sorong","Manokwari","Fak Fak","Sorong Selatan","Raja Ampat","Teluk Bentuni","Teluk Wondama","Kaimana","Tambrauw","Sorong"," Maybrat"]); private var aceh:ArrayList = new ArrayList (["Aceh Selatan","Aceh Tenggara","Aceh Timur","Aceh Tengah","Aceh Barat","Aceh Besar","Pidie","Aceh Utara","Simeulue","Aceh Singkil","Bireuen","Aceh Barat Daya","Gayo Lues","Aceh Jaya","Nagan Raya","Aceh Tamiang","Bener Meriah","Pidie Jaya","Banda Aceh","Sabang","Lhokseumawe","Langsa","Subulussalam" ]); private var riau:ArrayList = new ArrayList (["Kampar","Indragiri Hulu","Bengkalis","Indragiri Hilir","Pelalawan","Rokan Hulu","Rokan Hilir","Siak","Kuantan Singingi","Kepulauan Meranti","Pekan Baru","Dumai"]); private var sulBar:ArrayList = new ArrayList (["Mamuju Uatar","Mamuju","Mamasa","Polewali Mandar","Majene"]); private var sulSel:ArrayList = new ArrayList (["Kepulauan Selayar","Bulukumba","Bantaeng","Jeneponto","Takalar
","Gowa","Sinjai","Bone","Maros","Pangkajene Kep.","Barru","Soppeng","Wajo","Sidenreng Rappang","Pinrang","Enrekang","Luwu","Tana Toraja","Polewali Mamasa","Majene","Mamuju","Luwu Utara","Mamasa","Luwu Timur","Mamuju Utara","Toraja Utara","Makasar","Pare Pare","Palopo"]); private var SulTeng:ArrayList = new ArrayList (["Banggai","Poso","Donggala","Toli Toli","Buol","Morowali","Banggai Kepulauan","Parigi Moutong","Tojo Una Una","Sigi","Palu"]); private var SulTg:ArrayList = new ArrayList (["Kolaka","Konawe","Muna","Buton","Konawe Selatan","Bombana","Wakatobi","Kolaka Utara","Konawe Utara","Buton Utara","Kendari","Bau Bau"]); private var SulUt:ArrayList = new ArrayList (["Bolaang Mongondow","Minahasa","Kepulauan Sangihe","Kepulauan Talaud","Minahasa Selatan","Minahasa Utara","Minahasa Tenggara","Bolmong Utara","Kep. Sitaro","Bolmong Timur","Bolmong Utara Selatan","Manado","Bitung","Tomohon","“,”Mobagu"]); private var sumBar:ArrayList = new ArrayList (["Pesisir Selatan","Solok","Sw.Lunto/Sijunjung","Tanah Datar","Padang Pariaman","Agam","Lima Puluh Kota“,” Pasaman","Kepulauan Mentawai","Dharmasraya","Solok Selatan","Pasaman Barat","Padang","Solok","Sawahlunto","Padang Panjang","Bukittinggi","Payakumbuh","Pariaman"]); private var sumSel:ArrayList = new ArrayList (["Ogan Komering Ulu","Ogan Komering Ilir","Muara Enim","Lahat","Musi Rawas","Musi Banyuasin","Banyuasin","Oku Timur","Oku Selatan","Ogan Ilir","Empat Lawang","Palembang","Pagar Alam","Lubuk Linggau","Prabumulih"]); private var sumUt:ArrayList = new ArrayList (["Tapanuli Tengah","Tapanuli Utara","Tapanuli Selatan","Nias","Langkat","Karo","Deli Serdang","Simalungun","Asahan","Labuhan Batu","Dairi","Toba Samosir","Mandailing
Natal","Nias Selatan","Pakpak Bharat","Humbang Hasundutan","Samosir","Serdang Bedagai","Batubara","Padang Lawas Utara","Padang Lawas","Labuhanbatu Selatan","Labuhanbatu Utara","Nias Utara","Medan","Pematang Siantar","Sibolga","Tanjung Balai","Binjai","Tebing Tinggi","Padang Sidempuan","Gunung Sitoli"]); private var bencanaList:ArrayList = new ArrayList (["Gempa Bumi","Tsunami","Gempa Bumi dan Tsunami","Letusan Gurung Api","Tanah Longsor","Banjir dan Tanah Longsor","Banjir","Kekeringan","Angin Topan","Gelombang Pasang/Abrasi","Kecelakaan Industri","Kecelakaan Transportasi","Kebakaran Hutan dan Lahan","Kebakaran","Konflik/Kerusuhan Sosial","Aksi Teror","Sabotase","KLB","Hama Tanaman"]); private var provinsiList:ArrayList = new ArrayList (["Aceh","Bali","BangkaBelitung","Banten","Bengkulu","DI Yogyakarta","DKI Jakarta","Gorontalo","Jambi","Jawa Barat","Jawa Tengah","Jawa Timur","Kalimantan Barat","Kalimantan Selatan","Kalimantan Tengah","Kaliimantan Timur","Kepulauan Riau","Lampung","Maluku","Maluku Utara","Nusa Tenggara Barat","Nusa Tenggara Timur","Papua","Papua Barat","Riau","Sulawesi Barat","Sulawesi Selatan","Sulawesi Tengah","Sulawesi Tenggara","Sulawesi Utara","Sumatera Barat","Sumatera Selatan","Sumatera Utara"]) private var dari:String; private var sampai:String; protected function provinsiEnter(e:Event):void{ switch(provinsi.selectedItem){ case "Bali": kabupaten.dataProvider=bali ; break; case "Bangka-Belitung":
kabupaten.dataProvider=bangka ; break; case "Banten": kabupaten.dataProvider=banten ; break; case "Bengkulu": kabupaten.dataProvider=bengkulu ; break; case "DI Yogyakarta": kabupaten.dataProvider=diy ; break; case "DKI Jakarta": kabupaten.dataProvider=jakarta ; break; case "Gorontalo": kabupaten.dataProvider=gorontalo ; break; case "Jambi": kabupaten.dataProvider=jambi ; break; case "Jawa Barat": kabupaten.dataProvider=jaBar ; break; case "Jawa Tengah": kabupaten.dataProvider=jaTeng ; break; case "Jawa Timur": kabupaten.dataProvider=jaTim ; break; case "Kalimantan Barat": kabupaten.dataProvider=kalBar ; break; case "Kalimantan Selatan": kabupaten.dataProvider=kalSel ; break; case "Kalimantan Tengah": kabupaten.dataProvider=kalTeng ; break; case "Kaliimantan Timur": kabupaten.dataProvider=kalTim ; break;
case "Kepulauan Riau": kabupaten.dataProvider=kepRiau ; break; case "Lampung": kabupaten.dataProvider=Lampung ; break; case "Maluku": kabupaten.dataProvider=Maluku ; break; case "Maluku Utara": kabupaten.dataProvider=MalukuUtara ; break; case "Nusa Tenggara Barat": kabupaten.dataProvider=ntb ; break; case "Nusa Tenggara Timur": kabupaten.dataProvider=ntt ; break; case "Papua": kabupaten.dataProvider=papua ; break; case "Papua Barat": kabupaten.dataProvider=papuaBarat ; break; case "Aceh": kabupaten.dataProvider=aceh ; break; case "Riau": kabupaten.dataProvider=riau ; break; case "Sulawesi Barat": kabupaten.dataProvider=sulBar ; break; case "Sulawesi Selatan": kabupaten.dataProvider=sulSel ; break; case "Sulawesi Tengah": kabupaten.dataProvider=SulTeng ; break; case "Sulawesi Tenggara": kabupaten.dataProvider=SulTg ;
break; case "Sulawesi Utara": kabupaten.dataProvider=SulUt ; break; case "Sumatera Barat": kabupaten.dataProvider=sumBar ; break; case "Sumatera Selatan": kabupaten.dataProvider=sumSel ; break; case "Sumatera Utara": kabupaten.dataProvider=sumUt ; break; } } private function init():void{ nama_txt.editable=false; umur_txt.editable=false; lokasi_txt.editable=false; keterangan_txt.editable=false; fisik_txt.editable=false; bencanaDetail.enabled=false; tgl_edit.editable=false; provinsiDetail.enabled=false; kab_edit.editable=false; kec_edit.editable=false; desa_edit.editable=false; tgldtmkn_txt.editable=false; jk_txt.editable=false; pengirim_edit.editable=false; lain_txt.editable=false; bencana.dataProvider=bencanaList; provinsi.dataProvider=provinsiList; bencanaDetail.dataProvider=bencanaList; provinsiDetail.dataProvider=provinsiList; addJenis.dataProvider=bencanaList; addProv.dataProvider=provinsiList; }
/* Google Handler */ // Google Maps API when ready public function mapAPIReady (e:MapEvent):void{ mapapi.enableScrollWheelZoom(); mapapi.enableContinuousZoom(); mapapi.addControl(new ZoomControl()); mapapi.addControl(new MapTypeControl()); mapapi.setSize(new Point(mapapi.width, mapapi.height)); mapapi.height=380; mapapi.horizontalCenter=0; mapapi.width=850; geocoder = new ClientGeocoder; geocoder.addEventListener(GeocodingEvent.GEOCODING_S UCCESS, geocodingSuccess); geocoder.addEventListener(GeocodingEvent.GEOCODING_F AILURE, geocodingFailure); } //geocoding success handler private function geocodingSuccess (e:GeocodingEvent) :void{ var placemarks:Array = e.response.placemarks; mapapi.setCenter(placemarks[0].point, 13); var marker:Marker = new Marker(placemarks[0].point); marker.setOptions(options); mapapi.addOverlay(marker); var options:MarkerOptions = new MarkerOptions({ tooltip: placemarks }); } //geocoding fault handler private function geocodingFailure (e:GeocodingEvent):void{ Alert.show("alamat tidak ditemukan pada peta: "+e.name); } //all fault handler
private function faultHandler(e:FaultEvent):void{ Alert.show("gagal terhubung dengan server " + e.fault); } /* Data Handler */ // search data success handler private function resultHandler (e:ResultEvent):void{ ac = new ArrayCollection(ArrayUtil.toArray(e.result)); } //add data success handler private function addHandler (e:ResultEvent):void{ if (e.result.toString() == "true"){ Alert.show("data telah ditambah"); } else { Alert.show("data gagal ditambah"); } } //delete data success handler private function deleteHandler (e:ResultEvent):void{ if (e.result.toString() == "true"){ Alert.show("data telah dihapus"); } else { Alert.show("data gagal dihapus"); } } //update data success handler private function updateHandler (e:ResultEvent):void{ if (e.result.toString() == "true"){ Alert.show("data telah diupdate"); } else { Alert.show("data gagal diupdate"); } } //search data success handler
protected function searchBencanaHandler(e:ResultEvent):void{ bencanaAC = new ArrayCollection(ArrayUtil.toArray(e.result)); Tweener.addTween(bencanaPanel, {time:0.5, height:400, transition:"easeOutQuart"}); Tweener.addTween(bencanaDG, {time:0.1, x:10}); Tweener.addTween(bencanaDG, {delay:0.5, time:0.5, alpha:1, transition:"easeOutQuart"}); help.text="Klik Pada Tanggal dan Jenis Bencana yang Anda Cari"; } //total data success handler protected function totalDataHandler(e:ResultEvent):void{ viewStack.selectedIndex=2; total_txt.text=e.result.toString(); } //dataGrid data change handler private function changeHandler (e:Event):void{ viewStack.selectedIndex=4; image_detail.source = "assets/" + e.target.selectedItem.foto; bencanaDetail.selectedItem=e.target.selectedItem.jen is; tgl_edit.text=e.target.selectedItem.tgl; provinsiDetail.selectedItem=e.target.selectedItem.pr ov; kab_edit.text=e.target.selectedItem.kab; kec_edit.text=e.target.selectedItem.kec; desa_edit.text=e.target.selectedItem.desa; nama_txt.text = e.target.selectedItem.nama; jk_txt.text= e.target.selectedItem.jk; umur_txt.text = e.target.selectedItem.umur; tgldtmkn_txt.text = e.target.selectedItem.tgldtmkn; lokasi_txt.text = e.target.selectedItem.lokasi; keterangan_txt.text = e.target.selectedItem.keterangan;
fisik_txt.text = e.target.selectedItem.ciri_fisik; lain_txt.text= e.target.selectedItem.cirilain; pengirim_edit.text = e.target.selectedItem.pengirim; help.text="Klik Pada Tombol Contact untuk Melihat Informasi Contact Person yang Dapat Dihubungi"; } //search button handler in Pencarian ViewStack private function clickHandler (e:Event):void{ myService.searchData(jenis_txt.text, tgl_txt.text, prov_txt.text, kab_txt.text, kec_txt.text, desa_txt.text, nama.text, umur.text, ciri_fisik.text, cirilain.text); Tweener.addTween(dataGrid, {time:1, alpha:1}); help.text="Klik Data Korban Bencana yang Sesuai Dengan yang Anda Cari atau Klik Lokasi Ditemukan Untuk Melihat Peta"; } // lokasi penemuan click handler public function link_clickHandler (e:MouseEvent):void{ var linkButton:LinkButton = e.target as LinkButton; viewStack.selectedIndex=3; geocoder.geocode(linkButton.data.lokasi); help.text="Scroll Mouse Untuk Zoom In atau Zoom Uut serta Drag Mouse untuk Menggeser Peta"; } //tambah click handler in Tambah Data ViewStack public function tambahDataButton (e:Event):void{ var updateDataValidator:Array = Validator.validateAll([tglTambahValidator, tgldtmknTambahValidator, umurTambahValidator]); if (updateDataValidator.length == 0){ myService.addData(addJenis.selectedItem, addTgl.text, addProv.selectedItem, addKab.text, addKec.text, addDesa.text, addNama.text, addJk.text, addUmur.text, addTgldtmkn.text, addLokasi.text,
addKeterangan.text, addFisik.text, addLain.text, Instansi); addNama.text=""; addJk.text=""; addUmur.text=""; addTgldtmkn.text=""; addLokasi.text=""; addKeterangan.text=""; addFisik.text=""; addLain.text=""; } } //delete data korban click handler public function Delete(e:Event):void{ myService.deleteData(dataGrid.selectedItem.id.toStri ng()); image_detail.source = ""; bencanaDetail.selectedIndex=-1; tgl_edit.text=""; provinsiDetail.selectedIndex=-1; kab_edit.text=""; kec_edit.text=""; desa_edit.text=""; nama_txt.text = ""; jk_txt.text=""; umur_txt.text = ""; tgldtmkn_txt.text =""; lokasi_txt.text = ""; keterangan_txt.text = ""; fisik_txt.text= ""; lain_txt.text=""; pengirim_edit.text= "";
} //update data korban click handler public function Update(e:Event):void{ var updateDataValidator:Array = Validator.validateAll([tglUpdateValidator, tgldtmknUpdateValidator, umurUpdateValidator]);
if (updateDataValidator.length == 0){ myService.updateData(dataGrid.selectedItem.id.toStri ng(), bencanaDetail.selectedItem, tgl_edit.text, provinsiDetail.selectedItem, kab_edit.text, kec_edit.text, desa_edit.text, nama_txt.text, jk_txt.text, umur_txt.text, tgldtmkn_txt.text, lokasi_txt.text, keterangan_txt.text, fisik_txt.text, lain_txt.text, pengirim_edit.text); } } //ioError data handler protected function image_detail_ioErrorHandler(event:IOErrorEvent):void { image_detail.load("assets/noPhoto.jpg"); }
//search bencana click handler protected function bencanaClick (e:Event):void{ dari = thn.text+"-"+bln.text+"-"+tgl.text; sampai = thnA.text+"-"+blnA.text+"-"+tglA.text; var mydate:Date = new Date(); var formater:DateFormatter = new DateFormatter(); formater.formatString="YYYY-MM-DD"; var date:String = formater.format(mydate); if (sampai == "--"){ sampai=date; } myService.searchBencana(bencana.selectedItem, dari, sampai, provinsi.selectedItem, kabupaten.selectedItem, kecamatan.text, desa.text); } //reset search bencana click handler protected function bencanaReset(e:Event):void{ bencana.selectedIndex= -1; provinsi.selectedIndex= -1;
kabupaten.selectedIndex= -1; kecamatan.text=""; desa.text=""; thn.text=""; bln.text=""; tgl.text=""; thnA.text=""; blnA.text=""; tgl.text=""; Tweener.addTween(bencanaDG, {time:0.5, alpha:0, transition:"easeOutQuart"}); Tweener.addTween(bencanaPanel, {delay:0.5, time:0.5, height:260, transition:"easeOutQuart"}); Tweener.addTween(bencanaDG, {delay:1, time:0.1, x:9999}); } //search bencana datagrid change handler protected function bencanaChange (e:Event):void{ myService.totalData(e.target.selectedItem.jenis,e.ta rget.selectedItem.tgl, e.target.selectedItem.prov, e.target.selectedItem.kab, e.target.selectedItem.kec, e.target.selectedItem.desa); jenis_txt.text=e.target.selectedItem.jenis; tgl_txt.text=e.target.selectedItem.tgl; prov_txt.text=e.target.selectedItem.prov; kab_txt.text=e.target.selectedItem.kab; kec_txt.text=e.target.selectedItem.kec; desa_txt.text=e.target.selectedItem.desa; bencanaReset(e); help.text="Isi Form Pencarian Sesuai Dengan Data Korban yang Ingin Anda Cari" } protected function contactDataClick (e:Event):void{ myService.searchInstansi(pengirim_edit.text,"","" ); }
/* User Handler */ //tambah user protected function addUserHandler (e:ResultEvent):void{
if (e.result.toString() == "true"){ Alert.show("data user telah ditambah"); } else { Alert.show("data user gagal ditambah"); } } //login handler public function submitHandler (e:Event):void{ myService.logginInstansi(user.text, pass.text); myService.loggingIn(user.text, pass.text); } //login succes handler returning instansi value protected function loginInstansi(e:ResultEvent):void{ Instansi = e.result.toString(); } //login success handler private function loginHandler(e:ResultEvent):void{ suksesLogin = e.result.toString(); if (suksesLogin == "admin"){ loginButton(); login.enabled=false; login.label=""; loginSpacer.text=""; logout.enabled=true; logout.label="Logout"; logoutSpacer.text="|"; tambahLink.label="Tambah Data"; tambahLink.enabled=true; tambahSpacer.text="|"; instansiLink.label="Instansi"; instansiLink.enabled=true; instansiSpacer.text="|"; userLink.label="User Management"; userLink.enabled=true; userSpacer.text="|" ; updateDataButton.alpha=1;
updateDataButton.enabled=true; deleteDataButton.alpha=1; deleteDataButton.enabled=true; nama_txt.editable=true; umur_txt.editable=true; lokasi_txt.editable=true; keterangan_txt.editable=true; fisik_txt.editable=true; bencanaDetail.enabled=true; tgl_edit.editable=true; provinsiDetail.enabled=true; kab_edit.editable=true; kec_edit.editable=true; desa_edit.editable=true; tgldtmkn_txt.editable=true; jk_txt.editable=true; pengirim_edit.editable=true; lain_txt.editable=true; } else if (suksesLogin == "staff"){ loginButton(); login.enabled=false; login.label=""; loginSpacer.text=""; logout.enabled=true; logout.label="Logout"; logoutSpacer.text="|"; tambahLink.label="Tambah Data"; tambahLink.enabled=true; tambahSpacer.text="|"; instansiLink.label="Instansi"; instansiLink.enabled=true; instansiSpacer.text="|"; updateDataButton.alpha=1; updateDataButton.enabled=true; deleteDataButton.alpha=1; deleteDataButton.enabled=true; nama_txt.editable=true; umur_txt.editable=true; lokasi_txt.editable=true; keterangan_txt.editable=true; fisik_txt.editable=true;
bencanaDetail.enabled=true; tgl_edit.editable=true; provinsiDetail.enabled=true; kab_edit.editable=true; kec_edit.editable=true; desa_edit.editable=true; tgldtmkn_txt.editable=true; jk_txt.editable=true; pengirim_edit.editable=true; lain_txt.editable=true; } else { Tweener.addTween(loginPanel, {time:0.1, horizontalCenter:20}); Tweener.addTween(loginPanel, {delay:0.1, time:0.1, horizontalCenter:-20}); Tweener.addTween(loginPanel, {delay:0.2, time:0.1, horizontalCenter:20}); Tweener.addTween(loginPanel, {delay:0.3, time:0.1, horizontalCenter:-20}); status.text="wrong username or password"; } } //search user success handler public function searchUserHandler(e:ResultEvent):void{ dc = new ArrayCollection(ArrayUtil.toArray(e.result)); } //delete user data success handler private function deleteUserHandler (e:ResultEvent):void{ if (e.result.toString() == "true"){ myService.searchUser(findUser.text, findNama.text, findInstansi.text); Alert.show("data user telah dihapus"); } else { Alert.show("data user gagal dihapus"); }
} //update user data success handler private function updateUserHandler (e:ResultEvent):void{ if (e.result.toString() == "true"){ myService.searchUser(findUser.text, findNama.text, findInstansi.text); Alert.show("data user telah diupdate"); } else { Alert.show("data user gagal diupdate"); }
protected function deleteUserButton (e:MouseEvent):void{ myService.deleteUser(userDataGrid.selectedItem.id.to String()); } protected function tambahUserButton (e:Event):void{ myService.addUser(addUser.text, addPass.text, addNamaUser.text, addPhoneUser.text, addEmail.text, addInstansi.text, addAlamatUser.text, addJabatan.selectedItem); }
} // login button function after click submit public function loginButton ():void{ viewStack.selectedIndex=0; } //search user data click handler private function cariUser(e:Event):void{ myService.searchUser(findUser.text, findNama.text, findInstansi.text); } //update user data click handler private function updateUserButton (e:MouseEvent):void{ myService.updateUser(userDataGrid.selectedItem.id.to String(), userDataGrid.selectedItem.nama, userDataGrid.selectedItem.phone, userDataGrid.selectedItem.email,userDataGrid.selecte dItem.instansi, userDataGrid.selectedItem.alamat, userDataGrid.selectedItem.jabatan); } //delete user data click handler
/* Instansi Handler */ private var namaInstansi:String; private var phoneInstansi:String; private var alamatInstansi:String; private var cpnamaInstansi:String; private var cpphoneInstansi:String; protected function addInstansiHandler (e:ResultEvent):void{ if (e.result.toString() == "true"){ myService.searchInstansi(findInstansiName.text, findAlamat.text, findCP.text); Alert.show("data instansi telah ditambah"); } else { Alert.show("data instansi gagal ditambah"); } } protected function searchInstansiHandler (e:ResultEvent):void{ instansiAC=new ArrayCollection(ArrayUtil.toArray(e.result)); } protected function updateInstansiHandler (e:ResultEvent):void{
if (e.result.toString() == "true"){ Alert.show("data instansi telah diupdate"); } else { Alert.show("data instansi gagal diupdate"); } } protected function deleteInstansiHandler (e:ResultEvent):void{ if (e.result.toString() == "true"){ Alert.show("data instansi telah dihapus"); } else { Alert.show("data instansi gagal dihapus"); } } protected function cariInstansi (e:Event):void{ myService.searchInstansi(findInstansiName.text, findAlamat.text, findCP.text); } protected function deleteInstansiButton (e:Event):void{ myService.deleteInstansi(instansiDataGrid.selectedIt em.id.toString()); } protected function tambahInstansiButton (e:Event):void{ myService.addInstansi(addInstansiNama.text, addInstansiPhone.text, addInstansiAlamat.text, addCP.text, addCPPhone.text); } protected function updateInstansiButton (e:Event):void{ myService.updateInstansi(instansiDataGrid.selectedIt em.id, instansiDataGrid.selectedItem.nama, instansiDataGrid.selectedItem.phone, instansiDataGrid.selectedItem.alamat, instansiDataGrid.selectedItem.cpname, instansiDataGrid.selectedItem.cpphone); }
protected function contactNamaHandler (e:ResultEvent):void{ namaInstansi=e.result.toString(); } protected function contactPhoneHandler (e:ResultEvent):void{ phoneInstansi=e.result.toString(); } protected function contactAlamatHandler (e:ResultEvent):void{ alamatInstansi=e.result.toString(); } protected function contactcpNamaHandler (e:ResultEvent):void{ cpnamaInstansi=e.result.toString(); } protected function contactcpPhoneHandler (e:ResultEvent):void{ cpphoneInstansi=e.result.toString(); var contact:String = namaInstansi+phoneInstansi+alamatInstansi+cpnamaInst ansi+cpphoneInstansi; PopUpManager.addPopUp(panel, this, true); createPanel(); PopUpManager.centerPopUp(panel); } protected function contactButtonHandler (e:Event):void{ myService.contactNama(pengirim_edit.text); myService.contactPhone(pengirim_edit.text); myService.contactAlamat(pengirim_edit.text); myService.contactcpNama(pengirim_edit.text); myService.contactcpPhone(pengirim_edit.text); } /* Effect Handler */ //ViewStack hide effect protected function efekout (e:Event):void{
Tweener.addTween(viewStack, {time:1, scaleX:0.7, scaleY:0.7, transition:"easeOutQuad"}); } //ViewStack show effect protected function efekin (e:Event):void{ Tweener.addTween(viewStack, {time:1, scaleX:1, scaleY:1, transition:"easeOutQuad"}); } /* Pop Up Panel */ protected function createPanel():void{ labelNamab.text=namaInstansi; labelPhoneb.text=phoneInstansi; labelAlamatb.text=alamatInstansi; cpnameb.text= cpnamaInstansi; cpphoneb.text= cpphoneInstansi; } protected function closePopUp(e:Event):void{ PopUpManager.removePopUp(panel); }
]]> <s:TitleWindow id="panel" width="100%" height="100%" close="closePopUp(event)" > <mx2:VBox paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10"> <mx2:Canvas id="canvas" horizontalCenter="0" verticalCenter="0"> <s:Label id="labelNamaa" text="Nama Instansi: "/> <s:Label id="labelNamab" x="100"/>
<s:Label id="labelPhonea" y="30" text="Telephone: "/> <s:Label id="labelPhoneb" x="100" y="30" /> <s:Label id="labelAlamata" y="60" text="Alamat: "/> <s:Label id="labelAlamatb" x="100" y="60"/> <s:Label text="Contact Person" y="90" /> <s:Label id="cpnamea" y="120" text="Nama"/> <s:Label id="cpnameb" x="100" y="120"/> <s:Label id="cpphonea" y="150" text="Telephone"/> <s:Label id="cpphoneb" x="100" y="150"/> <s:Button id="button" label="OK" horizontalCenter="0" y="190" click="closePopUp(event)" /> <s:RemoteObject id="myService" destination="amfphp" source="sinra.php.sinra" showBusyCursor="true" fault="faultHandler(event)" endpoint="http://localhost/amfphp/gateway.php"> <s:method name="logginInstansi" result="loginInstansi(event)" fault="faultHandler(event)" /> <s:method name="loggingIn" result="loginHandler(event)" fault="faultHandler(event)" /> <s:method name="searchData" result="resultHandler(event)" fault="faultHandler(event)" /> <s:method name="addData" result="addHandler(event)" fault="faultHandler(event)" /> <s:method name="deleteData" result="deleteHandler(event)" fault="faultHandler(event)" /> <s:method name="updateData" result="updateHandler(event)" fault="faultHandler(event)" /> <s:method name="searchUser" result="searchUserHandler(event)" fault="faultHandler(event)" />
<s:method name="updateUser" result="updateUserHandler(event)" fault="faultHandler(event)" /> <s:method name="deleteUser" result="deleteUserHandler(event)" fault="faultHandler(event)" /> <s:method name="searchBencana" result="searchBencanaHandler(event)" fault="faultHandler(event)"/> <s:method name="totalData" result="totalDataHandler(event)" fault="faultHandler(event)" /> <s:method name="addUser" result="addUserHandler(event)" fault="faultHandler(event)" /> <s:method name="searchInstansi" result="searchInstansiHandler(event)" fault="faultHandler(event)" /> <s:method name="addInstansi" result="addInstansiHandler(event)" fault="faultHandler(event)" /> <s:method name="updateInstansi" result="updateInstansiHandler(event)" fault="faultHandler(event)" /> <s:method name="deleteInstansi" result="deleteInstansiHandler(event)" fault="faultHandler(event)" /> <s:method name="contactNama" result="contactNamaHandler(event)" fault="faultHandler(event)" /> <s:method name="contactPhone" result="contactPhoneHandler(event)" fault="faultHandler(event)" /> <s:method name="contactAlamat" result="contactAlamatHandler(event)" fault="faultHandler(event)" /> <s:method name="contactcpNama" result="contactcpNamaHandler(event)" fault="faultHandler(event)" />
<s:method name="contactcpPhone" result="contactcpPhoneHandler(event)" fault="faultHandler(event)" /> <s:Fade id="fadeout" alphaTo="0" duration="500" effectStart="efekout(event)"/> <s:Fade id="fadein" alphaTo="1" duration="500" effectStart="efekin(event)" /> <mx2:WipeUp id="wup" /> <mx2:WipeDown id="wdn" /> <mx2:StringValidator id="namaUpdateValidator" required="true" source="{nama_txt}" property="text" triggerEvent="" /> <mx2:NumberValidator id="umurUpdateValidator" allowNegative="false" required="false" source="{umur_txt}" property="text" maxValue="200" exceedsMaxError="umur melebihi angka maksimal 200" triggerEvent="" /> <mx2:StringValidator id="lokasiUpdateValidator" required="true" source="{lokasi_txt}" property="text" triggerEvent="" /> <mx2:StringValidator id="ketUpdateValidator" required="true" source="{keterangan_txt}" property="text" triggerEvent="" /> <mx2:DateValidator id="tglUpdateValidator" required="true" source="{tgl_edit}" inputFormat="DDMM-YYYY" property="text" /> <mx2:DateValidator id="tgldtmknUpdateValidator" required="false" source="{tgldtmkn_txt}" inputFormat="DD-MM-YYYY" property="text" /> <mx2:StringValidator id="namaTambahValidator" required="true" source="{addNama}" property="text" triggerEvent="" /> <mx2:NumberValidator id="umurTambahValidator" allowNegative="false" required="false" source="{addUmur}" property="text" maxValue="200" exceedsMaxError="umur melebihi angka maksimal 200" triggerEvent="" />
<mx2:StringValidator id="lokasiTambahValidator" required="true" source="{addLokasi}" property="text" triggerEvent="" /> <mx2:StringValidator id="ketTambahValidator" required="true" source="{addKeterangan}" property="text" triggerEvent="" /> <mx2:DateValidator id="tglTambahValidator" required="true" source="{addTgl}" inputFormat="DDMM-YYYY" formatError="tes" property="text" /> <mx2:DateValidator id="tgldtmknTambahValidator" required="false" source="{addTgldtmkn}" inputFormat="DD-MM-YYYY" formatError="tes" property="text" /> <mx2:NumberValidator id="tglValidator" required="true" allowNegative="false" minValue="1" maxValue="31" source="{tgl}" /> <mx2:ApplicationControlBar dock="true" height="32" minWidth="775" horizontalCenter="0"> <mx2:HBox width="950" horizontalCenter="0" horizontalAlign="left" > <mx2:LinkButton paddingLeft="10" label="Beranda" click="viewStack.selectedIndex=10; help.text='Klik Tombol Next atau Pencarian'; bantuanTitle.alpha=1; bantuan.alpha=1;" /> <s:Label text="|" fontSize="20" /> <mx2:LinkButton label="Pencarian" click="viewStack.selectedIndex=0; dataGrid.alpha=0; help.text='Isi Form Sesuai Dengan Data Bencana yang Ingin Anda Cari'; bantuanTitle.alpha=1; bantuan.alpha=1;" /> <s:Label text="|" fontSize="20" /> <mx2:LinkButton label="Peta" click="viewStack.selectedIndex=3; help.text='Scroll Mouse Untuk Zoom In atau Zoom Out serta Drag Mouse Untuk Menggeser Peta'; bantuanTitle.alpha=1;
bantuan.alpha=1;" /> <s:Label text="|" fontSize="20" /> <mx2:LinkButton label="Detail" click="viewStack.selectedIndex=4; help.text='Klik Pada Tombol Contact Untuk Melihat Informasi Contact Person yang Dapat Dihubungi'; bantuanTitle.alpha=1; bantuan.alpha=1;" /> <s:Label id="loginSpacer" text="|" fontSize="20" /> <mx2:LinkButton id="login" label="Login" click="viewStack.selectedIndex=1; bantuanTitle.alpha=0; bantuan.alpha=0;"/> <s:Label id="tambahSpacer" text="" fontSize="20" /> <mx2:LinkButton id="tambahLink" label="" enabled="false" click="viewStack.selectedIndex=5;" /> <s:Label id="instansiSpacer" text="" fontSize="20" /> <mx2:LinkButton id="instansiLink" enabled="false" label="" click="viewStack.selectedIndex=8;" /> <s:Label id="userSpacer" text="" fontSize="20" /> <mx2:LinkButton id="userLink" enabled="false" label="" click="viewStack.selectedIndex=6;" /> <s:Label id="logoutSpacer" text="" fontSize="20" /> <mx2:LinkButton id="logout" enabled="false" label="" click=' var ref:URLRequest = new URLRequest("javascript:location.reload(true)"); navigateToURL(ref, "_self"); '/> <mx2:ApplicationControlBar alpha="1" id="bantuanTitle" y="540" horizontalCenter="-360"> <s:Label text="Bantuan" fontSize="14" fontWeight="bold" /> <mx2:ApplicationControlBar alpha="1" id="bantuan" y="570" horizontalCenter="0" width="800" >
<s:Label id="help" text="Klik Tombol Next atau Pencarian" fontSize="12" /> <mx2:ViewStack id="viewStack" horizontalCenter="0" y="50" width="950" height="425" creationPolicy="all" selectedIndex="11" > <mx2:Canvas hideEffect="{fadeout}" showEffect="{fadein}" alpha="0"> <s:Panel id="bencanaPanel" width="925" height="260" horizontalCenter="0" > <mx2:Canvas horizontalCenter="0"> <s:Label text="Jenis Bencana" x="10" y="10" fontWeight="bold" /> <s:List id="bencana" x="10" y="22" width="190" > <s:layout> <s:VerticalLayout gap="0" horizontalAlign="contentJustify" requestedRowCount="5" /> <s:Label x="210" y="10" text="Propinsi" fontWeight="bold" /> <s:List id="provinsi" x="210" y="22" width="150" change="provinsiEnter (event);"> <s:layout> <s:VerticalLayout gap="0" horizontalAlign="contentJustify" requestedRowCount="5" /> <s:Label text="Kabupaten" y="10" x="370" fontWeight="bold" /> <s:List id="kabupaten" y="22" x="370" width="175" > <s:layout> <s:VerticalLayout gap="0" horizontalAlign="contentJustify" requestedRowCount="5" />
<s:Label text="Kecamatan" x="10" y="155" fontWeight="bold" /> <s:TextInput id="kecamatan" x="80" y="150" /> <s:Label text="Desa/Dusun" x="250" y="155" fontWeight="bold" /> <s:TextInput id="desa" x="325" y="150" /> <s:Label text="Rentang Tanggal (DD MM YYYY):" x="10" y="180" fontWeight="bold" /> <s:Label text="Dari" x="10" y="200" /> <s:TextInput id="tgl" width="25" x="40" y="195" maxChars="2" /> <s:TextInput id="bln" width="25" x="70" y="195" maxChars="2" /> <s:TextInput id="thn" width="50" x="100" y="195" maxChars="4" /> <s:Label text="Sampai" x="160" y="200" /> <s:TextInput id="tglA" width="25" x="210" y="195" maxChars="2" /> <s:TextInput id="blnA" width="25" x="240" y="195" maxChars="2" /> <s:TextInput id="thnA" width="50" x="270" y="195" maxChars="4" /> <s:Button id="bencana_btn" label="Cari" x="480" y="195" click="bencanaClick(event)" /> <s:Button id="bencana_rst" label="Hapus" x="400" y="195" click="bencanaReset(event)" /> <mx2:DataGrid id="bencanaDG" dataProvider="{bencanaAC}" width="900" height="130" y="225" x="-9999" alpha="0" change="bencanaChange(event)" > <mx2:columns> <mx2:DataGridColumn headerText="Jenis Bencana" dataField="jenis" /> <mx2:DataGridColumn headerText="Tanggal Kejadian" dataField="tgl" /> <mx2:DataGridColumn headerText="Provinsi" dataField="prov" />
<mx2:DataGridColumn headerText="Kabupaten" dataField="kab" /> <mx2:DataGridColumn headerText="Kecamatan" dataField="kec" /> <mx2:DataGridColumn headerText="Desa" dataField="desa" /> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel id="loginPanel" y="50" horizontalCenter="0" width="300" height="160" title="Login" textAlign="center"> <s:Label text="Username" x="10" y="10" /> <s:TextInput id="user" width="200" x="90" y="5" enter="submitHandler(event)"/> <s:Label text="Password" x="10" y="45"/> <s:TextInput id="pass" displayAsPassword="true" width="200" x="90" y="40" enter="submitHandler(event)" /> <s:Label id="status" fontWeight="bold" color="#FF1818" text="" y="75" horizontalCenter="0" textAlign="center"/> <s:Button x="190" y="100" label="OK" width="100" click="submitHandler(event)"/> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <mx2:ApplicationControlBar horizontalCenter="0" id="searchPanel" width="800" height="30" y="0" fillColors="[0xcccccc,0xeeeeee]" fillAlphas="[1,1]" horizontalAlign="center" >
<s:Label text="Nama :" /> <s:TextInput id="nama" width="100" enter="clickHandler(event)"/> <s:Label text="Umur :"/> <s:TextInput id="umur" width="100" enter="clickHandler(event)"/> <s:Label text="Ciri Fisik :" /> <s:TextInput id="ciri_fisik" width="100" enter="clickHandler(event)"/> <s:Label text="Ciri Lain :" /> <s:TextInput id="cirilain" width="100" enter="clickHandler(event)"/> <s:Button id="searchBtn" label="Cari" width="100" click="clickHandler(event)"/> <s:Panel horizontalCenter="0" title="Data" width="925" height="360" alpha="1" y="40" > <mx2:VBox horizontalCenter="0" horizontalAlign="center" horizontalScrollPolicy="off" height="100%" width="900" > <mx2:HBox paddingTop="5" fontSize="14" fontWeight="bold" > <s:Label text="Jenis Bencana: " /> <s:Label id="jenis_txt" /> <s:Label text="Tanggal Kejadian: " /> <s:Label id="tgl_txt" /> <s:Label text="Total Korban: " /> <s:Label id="total_txt" /> <mx2:HBox y="40" fontSize="14" fontWeight="bold" > <s:Label text="Provinsi: " /> <s:Label id="prov_txt" /> <s:Label text="Kabupaten: " /> <s:Label id="kab_txt" /> <s:Label text="Kecamatan: " /> <s:Label id="kec_txt" /> <s:Label text="Desa/Dusun: " /> <s:Label id="desa_txt" />
<mx2:DataGrid id="dataGrid" alpha="0" dataProvider="{ac}" allowMultipleSelection="true" width="900" height="280" change="changeHandler(event)" > <mx2:columns> <mx2:DataGridColumn headerText="ID" dataField="id" visible="false"/> <mx2:DataGridColumn dataField="jenis" visible="false" /> <mx2:DataGridColumn dataField="tgldtmkn" headerText="Tgl Ditemukan" width="90" /> <mx2:DataGridColumn dataField="prov" visible="false" /> <mx2:DataGridColumn dataField="kab" visible="false" /> <mx2:DataGridColumn dataField="kec" visible="false" /> <mx2:DataGridColumn dataField="desa" visible="false" /> <mx2:DataGridColumn headerText="Nama" dataField="nama"> <mx2:itemRenderer>
<mx2:VBox horizontalAlign="center">
<mx2:Image id="gambar" source="assets/{data.foto}" width="100" height="75" ioError="gambar_ioErrorHandler(event)" /> <s:Label text="{data.nama}"/> <mx2:DataGridColumn headerText="Jenis Kel" dataField="jk" width="70" /> <mx2:DataGridColumn id="linkLokasi" headerText="Lokasi Ditemukan" dataField="lokasi" width="170" > <mx2:itemRenderer>
<mx2:DataGridColumn headerText="Umur" dataField="umur" width="50" > <mx2:itemRenderer>
<mx2:VBox verticalAlign="middle" horizontalAlign="center" > <s:Label text="{data.umur}" />
<mx2:DataGridColumn headerText="keterangan" dataField="keterangan" width="90" > <mx2:itemRenderer>
<mx2:VBox verticalAlign="middle" horizontalAlign="center" > <s:TextArea text="{data.keterangan}" width="90" height="100" borderAlpha="0" contentBackgroundAlpha="0" /> <mx2:DataGridColumn headerText="Ciri Fisik" dataField="ciri_fisik" width="100" > <mx2:itemRenderer>
<mx2:VBox verticalAlign="middle" horizontalAlign="center" > <s:TextArea text="{data.ciri_fisik}" width="98" height="100" borderAlpha="0" contentBackgroundAlpha="0" /> <mx2:DataGridColumn headerText="Ciri Lain" dataField="cirilain" width="100" > <mx2:itemRenderer>
<mx2:VBox verticalAlign="middle" horizontalAlign="center" > <s:TextArea text="{data.cirilain}" width="98" height="100" borderAlpha="0" contentBackgroundAlpha="0" />
<mx2:DataGridColumn headerText="Pengirim Data" dataField="pengirim" width="85"> <mx2:itemRenderer>
<mx2:VBox verticalAlign="middle" horizontalAlign="center" > <s:TextArea text="{data.pengirim}" width="80" height="100" borderAlpha="0" contentBackgroundAlpha="0" /> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel title="Peta" width="925" height="420" horizontalCenter="0" > <maps:Map key="ABQIAAAAfJkg1B0hFHjhYDvNA-JwhxQ2ZfZmTrTPQIqE-qrSmbWaqG-3RQWNUUHmqez33fZqdQjTXB3VzAeQ" id="mapapi" mapevent_mapready="mapAPIReady(event)" /> <s:Button label="Clear Markers" x="510" y="10" click="mapapi.clearOverlays();" /> <s:Button label="Back" x="45" y="10" click="viewStack.selectedIndex=2; help.text='Isi Form Sesuai Dengan Data Bencana yang Ingin Anda Cari';" />
<mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel horizontalCenter="0" title="Detail Data" width="825" height="420" > <mx2:HBox horizontalScrollPolicy="off" verticalScrollPolicy="off" width="900"> <mx2:Canvas > <s:Label text="Jenis Bencana " x="10" y="30" /> <s:ComboBox width="190" id="bencanaDetail" x="110" y="25" /> <s:Label text="Tanggal Kejadian" x="10" y="60" /> <s:TextInput width="170" id="tgl_edit" x="110" y="55" /> <mx2:Image x="5" y="100" id="image_detail" height="320" width="240" ioError="image_detail_ioErrorHandler(event)"/> <mx2:Canvas> <s:Label text="Provinsi" x="5" y="30" /> <s:ComboBox id="provinsiDetail" x="120" y="25" /> <s:Label text="Kabupaten" x="275" y="30" /> <s:TextInput id="kab_edit" x="360" y="25" /> <s:Label text="Kecamatan" x="5" y="60" /> <s:TextInput id="kec_edit" x="120" y="55" /> <s:Label text="Desa/Dusun" x="275" y="60" /> <s:TextInput id="desa_edit" x="360" y="55" /> <s:Label text="Nama" x="5" y="90" /> <s:TextInput id="nama_txt" text="" x="120" y="85"/> <s:Label text="Umur" x="275" y="90" /> <s:TextInput id="umur_txt" text="" x="360" y="85" /> <s:Label text="Jenis Kelamin" x="5" y="120" /> <s:TextInput id="jk_txt" text="" x="120" y="115"/> <s:Label text="Tgl Penemuan" x="275" y="120" /> <s:TextInput id="tgldtmkn_txt" text="" x="360" y="115" /> <s:Label text="Keterangan" x="5" y="150" /> <s:TextInput id="keterangan_txt" text="" x="120" y="145" enter="Update(event)" />
<s:Label text="Pengirim Data" x="275" y="150" /> <s:TextInput id="pengirim_edit" x="360" y="145" /> <s:Label text="Lokasi Penemuan" x="5" y="180" /> <s:TextInput id="lokasi_txt" width="370" text="" x="120" y="175" /> <s:Label text="Ciri Fisik" x="5" y="210" /> <s:TextArea id="fisik_txt" text="" x="120" y="205" height="60" width="370" /> <s:Label text="Ciri Lain" x="5" y="280" /> <s:TextArea id="lain_txt" text="" x="120" y="275" height="60" width="370" /> <s:Button id="ac3back" label="Back" x="100" y="355" click="viewStack.selectedIndex=2; dataGrid.selectedIndex=-1; help.text='Isi Form Sesuai Dengan Data Bencana yang Ingin Anda Cari';" /> <s:Button id="updateDataButton" enabled="false" alpha="0" label="Update" click="Update(event)" x="190" y="355" /> <s:Button id="deleteDataButton" enabled="false" alpha="0" label="Delete" click="Delete(event)" x="280" y="355" /> <s:Button label="Contact" id="contactDataButton" click="contactButtonHandler(event)" x="10" y="355" /> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel id="formTambah" title="Tambah Data" width="710" height="420" horizontalCenter="0" > <mx2:Canvas> <s:Label text="Jenis Bencana" x="10" y="30" /> <s:ComboBox width="190" id="addJenis" x="120" y="25" /> <s:Label text="Tanggal Kejadian" x="10" y="60" />
<s:TextInput id="addTgl" x="120" y="55" enter="tambahDataButton(event)" /> <s:Label text="Provinsi" x="10" y="90" /> <s:ComboBox id="addProv" x="120" y="85" /> <s:Label text="Kabupaten" x="10" y="120" /> <s:TextInput id="addKab" x="120" y="115" enter="tambahDataButton(event)" /> <s:Label text="Kecamatan" x="10" y="150" /> <s:TextInput id="addKec" x="120" y="145" enter="tambahDataButton(event)" /> <s:Label text="Desa/Dusun" x="10" y="180" /> <s:TextInput id="addDesa" x="120" y="175" enter="tambahDataButton(event)"/> <s:Label text="Nama" x="10" y="210" /> <s:TextInput id="addNama" text="" x="120" y="205" enter="tambahDataButton(event)" /> <s:Label text="Jenis Kelamin" x="10" y="240" /> <s:TextInput id="addJk" text="" x="120" y="235" enter="tambahDataButton(event)" /> <s:Label text="Umur" x="320" y="30" /> <s:TextInput id="addUmur" text="" width="250" x="430" y="25" enter="tambahDataButton(event)" /> <s:Label text="Tanggal Ditemukan" x="320" y="60" /> <s:TextInput id="addTgldtmkn" x="430" y="55" width="250" enter="tambahDataButton(event);" /> <s:Label text="Lokasi" x="320" y="90" /> <s:TextInput id="addLokasi" text="" width="250" x="430" y="85" enter="tambahDataButton(event)" /> <s:Label text="Keterangan" x="320" y="120" /> <s:TextInput id="addKeterangan" text="" x="430" y="115" width="250" enter="tambahDataButton(event)" /> <s:Label text="Ciri Fisik" x="320" y="150" /> <s:TextArea id="addFisik" text="" x="430" y="145" height="100" width="250" /> <s:Label text="Ciri Lain" x="320" y="250" /> <s:TextArea id="addLain" text="" x="430" y="255" height="100" width="250" /> <s:Button id="tambah" label="Tambah" click="tambahDataButton(event)" x="10" y="355" />
<mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel horizontalCenter="0" title="User Management" width="925" height="400" > <mx2:HBox horizontalCenter="0" y="3"> <s:Label text="User: " paddingTop="5" /> <s:TextInput id="findUser" width="80" enter="cariUser(event)"/> <s:Label text="Nama: " paddingTop="5" /> <s:TextInput id="findNama" width="80" /> <s:Label text="Instansi: " paddingTop="5" /> <s:TextInput id="findInstansi" width="80" /> <s:Button id="searchUserButton" x="435" label="Cari" width="100" click="cariUser(event)"/> <mx2:VBox horizontalAlign="center" horizontalCenter="0" horizontalScrollPolicy="off" height="320" width="900" x="-6" y="30"> <mx2:DataGrid horizontalCenter="0" id="userDataGrid" dataProvider="{dc}" allowMultipleSelection="true" width="900" height="280" editable="true" > <mx2:columns> <mx2:DataGridColumn headerText="ID" dataField="id" visible="false"/> <mx2:DataGridColumn headerText="Username" dataField="user" editable="false" /> <mx2:DataGridColumn headerText="Nama" dataField="nama" /> <mx2:DataGridColumn headerText="Telephone" dataField="phone" /> <mx2:DataGridColumn headerText="E-mail" dataField="email" /> <mx2:DataGridColumn headerText="Alamat" dataField="alamat" />
<mx2:DataGridColumn headerText="Jabatan" dataField="jabatan"/> <mx2:DataGridColumn headerText="Instansi" dataField="instansi" /> <mx2:HBox verticalCenter="0"> <s:Button id="tambahUser" visible="true" label="Tambah" click="viewStack.selectedIndex=7;" /> <s:Button id="updateUser" visible="true" label="Update" click="updateUserButton(event)" /> <s:Button id="deleteUser" visible="true" label="Delete" click="deleteUserButton(event)" /> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel title="Add User" horizontalCenter="0" width="280" height="400" > <s:Label text="Username: " y="15" x="10" /> <s:TextInput id="addUser" y="10" x="110" /> <s:Label text="Password: " y="45" x="10" /> <s:TextInput id="addPass" y="40" x="110" /> <s:Label text="Nama Lengkap: " y="75" x="10" /> <s:TextInput id="addNamaUser" y="70" x="110" /> <s:Label text="E-Mail: " y="105" x="10" /> <s:TextInput id="addEmail" y="100" x="110" /> <s:Label text="Telephone: " y="135" x="10" /> <s:TextInput id="addPhoneUser" y="130" x="110" /> <s:Label text="Alamat: " y="165" x="10" /> <s:TextInput id="addAlamatUser" y="160" x="110" /> <s:Label text="Jabatan: " y="195" x="10" /> <s:ComboBox id="addJabatan" y="190" x="110" > <s:ArrayList>
admin
staff user <s:Label text="Instansi: " y="225" x="10" /> <s:TextInput id="addInstansi" y="220" x="110" /> <s:Button y="270" x="10" label="Back" click="viewStack.selectedIndex=6" /> <s:Button y="270" x="190" label="Tambah" click="tambahUserButton(event)" /> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel horizontalCenter="0" title="Instansi" width="925" height="400" > <mx2:HBox horizontalCenter="0" y="3"> <s:Label text="Instansi: " paddingTop="5" /> <s:TextInput id="findInstansiName" width="80" enter="cariUser(event)"/> <s:Label text="Alamat: " paddingTop="5" /> <s:TextInput id="findAlamat" width="80" /> <s:Label text="Contact Person: " paddingTop="5" /> <s:TextInput id="findCP" width="80" /> <s:Button id="searchInstansiButton" x="435" label="Cari" width="100" click="cariInstansi(event)"/> <mx2:VBox horizontalAlign="center" horizontalCenter="0" horizontalScrollPolicy="off" height="320" width="900" x="-6" y="30"> <mx2:DataGrid horizontalCenter="0" id="instansiDataGrid" dataProvider="{instansiAC}" allowMultipleSelection="true" width="900" height="280" editable="true" > <mx2:columns>
<mx2:DataGridColumn headerText="ID" dataField="id" visible="false"/> <mx2:DataGridColumn headerText="Instansi" dataField="nama" /> <mx2:DataGridColumn headerText="Telephone" dataField="phone" /> <mx2:DataGridColumn headerText="Alamat" dataField="alamat" /> <mx2:DataGridColumn headerText="Contact Person (CP)" dataField="cpname" /> <mx2:DataGridColumn headerText="Telephone CP" dataField="cpphone"/> <mx2:HBox verticalCenter="0"> <s:Button id="tambahInstansi" visible="true" label="Tambah" click="viewStack.selectedIndex=9;" /> <s:Button id="updateInstansi" visible="true" label="Update" click="updateInstansiButton(event)" /> <s:Button id="deleteInstansi" visible="true" label="Delete" click="deleteInstansiButton(event)" /> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" alpha="0"> <s:Panel title="Add Instansi" horizontalCenter="0" width="290" height="400" > <s:Label text="Nama Instansi: " y="15" x="10" /> <s:TextInput id="addInstansiNama" y="10" x="140" /> <s:Label text="Telephone: " y="45" x="10" /> <s:TextInput id="addInstansiPhone" y="40" x="140" /> <s:Label text="Alamat: " y="75" x="10" />
<s:TextInput id="addInstansiAlamat" y="70" x="140" /> <s:Label text="Contact Person (CP): " y="105" x="10" /> <s:TextInput id="addCP" y="100" x="140" /> <s:Label text="Telephone CP: " y="135" x="10" /> <s:TextInput id="addCPPhone" y="130" x="140" /> <s:Button y="270" x="10" label="Back" click="viewStack.selectedIndex=8" /> <s:Button y="270" x="200" label="Tambah" click="tambahInstansiButton(event);" /> <mx2:Canvas showEffect="{fadein}" hideEffect="{fadeout}" > <mx2:VBox horizontalCenter="0" horizontalAlign="center"> <mx2:SWFLoader scaleY="0.9" scaleX="0.9" source="assets/animasi.swf" /> <s:Button label="Next" click="viewStack.selectedIndex=0;help.text='Isi Form Sesuai Dengan Data Bencana yang Ingin Anda Cari';" />
SCRIPT LENGKAPNYA DAPAT DILIHAT DI CD APLIKASI