PENGEMBANGAN SISTEM INFORMASI GEOSPASIAL BERBASIS MOBILE PADA PERLINDUNGAN TENAGA KERJA INDONESIA (Studi Kasus: BNP2TKI)
Skripsi Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Sistem Informasi Disusun Oleh: Azis Senoaji Prasetyotomo 1110093000024
PROGRAM STUDI SISTEM INFORMASI FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA
PENGEMBANGAN SISTEM INFORMASI GEOSPASIAL BERBASIS MOBILE PADA PERLINDUNGAN TENAGA KERJA INDONESIA (Studi Kasus: BNP2TKI)
Skripsi Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Sistem Informasi
Oleh: AZIS SENOAJI PRASETYOTOMO 1110093000024
PROGRAM STUDI SISTEM INFORMASI FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA ii
LEMBAR PENGESAHAN
iii
LEMBAR PENGESAHAN UJIAN
iv
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.
Depok, September 2014
Azis Senoaji Prasetyotomo 1110093000024
v
ABSTRAK
AZIS SENOAJI PRASETYOTOMO, Pengembangan Sistem Informasi Geospasial Berbasis Mobile pada Perlindungan Tenaga Kerja Indonesia (Studi Kasus : BNP2TKI) dibawah bimbingan ZAINUL ARHAM dan ERI RUSTAMAJI Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia (BNP2TKI) adalah lembaga pemerintah non-departemen yang berada di bawah dan bertanggung jawab kepada Presiden. BNP2TKI memiliki fungsi pelaksanaan kebijakan penempatan dan perlindungan TKI yang merupakan penyumbang devisa negara terbesar ketiga. Salah satu tugas dari BNP2TKI dalam bidang perlindungan TKI adalah menekan angka TKI bermasalah agar tren untuk menjadi TKI tidak menurun. Permasalahan TKI mencakup penyanderaan, masalah masa kontrak kerja, masalah upah yang tidak dibayarkan dan permasalahan-permasalahan lainnya. Peraturan Presiden nomor 81 tahun 2006 menjelaskan bahwa perlindungan TKI yang dilakukan oleh BNP2TKI meliputi masa pra-pemberangkatan, penempatan, dan pemulangan. Sebagai upaya peningkatan kualitas dari perlindungan TKI yang dilakukan BNP2TKI, penulis mengembangkan sebuah sistem informasi geospasial yang memungkinkan pemerintah untuk memonitor keberadaan dan status masingmasing TKI dan juga bagi TKI menjadi sebuah bentuk perlindungan digital. Sistem dengan fungsi tersebut dibuat dalam versi mobile dengan platform IOS yang dimaksudkan untuk meningkatkan fleksibilitas. Pengembangan sistem ini dibuat dengan menggunakan metode Object Oriented Analysis and Design (OOAD) yang terdiri dari fase inception, elaboration, construction dan transition. Sistem ini dirancang menggunakan Framework Cocoa pada bahasa pemrograman ObjectiveC dengan pola MVC Programming dan didukung oleh teknologi PHP-JSON sebagai API encoder untuk database MySQL. Pengujian sistem dilakukan dengan metode pengujian Black Box. Hasil akhir dari pengembangan sistem ini adalah Pemerintah dapat melakukan pemantauan keberadaan dan status TKI secara near real time, dan TKI memiliki perangkat mobile untuk mengirim lokasi secara otomatis, mengirim sinyal S.O.S, pengingat masa kontrak, dan mendapat rute menuju kedubes RI. Kata Kunci: Perlindungan TKI, Sistem Informasi Geospasial, OOAD, MVC Programming, Framework Cocoa, Objective-C, PHP-JSON, API V Bab + xx hal + 173 hal + 17 Lampiran + 16 Tabel + 58 Gambar Daftar Pustaka: 36 (1998 – 2014)
vi
KATA PENGANTAR
Assalamu’alaikum Wr. Wb. Puji syukur penulis panjatkan kehadirat Allah SWT, karena hanya dengan Ridha-Nya penulis dapat menyelesaikan skripsi yang berjudul Pengembangan Sistem Informasi Geospasial pada Perlindungan Tenaga Kerja Indonesia (Studi Kasus: BNP2TKI). Terima kasih penulis ucapkan kepada seluruh pihak yang telah membantu baik moril dan materil dalam menyelesaikan penulisan skripsi ini, terutama kepada: 1. Bapak Dr. Agus Salim, M.Si selaku Dekan Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta. 2. Bapak Zulfiandri, MMSI selaku Ketua Program Studi Sistem Informasi di Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah Jakarta dan Ibu Nia Kumaladewi, MMSI selaku sekretaris Program Studi Sistem Informasi di Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah Jakarta. 3. Bapak Zainul Arham, M.Si selaku dosen pembimbing I yang telah memberikan bimbingan, bantuan, dan dukungan secara moral maupun teknis dalam menyelesaikan skripsi ini. 4. Bapak Eri Rustamaji, MBA selaku dosen pembimbing II yang telah memberikan bimbingan, bantuan, dan dukungan secara moral maupun teknis dalam menyelesaikan skripsi ini.
vii
5. Bapak Drs. H. Mirwanto Manuwiyoto, MM. selaku Mantan Sekretaris Direktorat Jenderal P2KT Departemen Tenaga Kerja dan Transmigrasi yang telah memberikan begitu banyak masukan serta dukungan dalam mencarikan tempat penelitian. 6. Bapak Ir. Agusdin Subiantoro, selaku Deputi bidang penempatan BNP2TKI dan Bapak Drs. Muhammad Syafrie selaku Deputi bidang perlindungan yang telah memberikan izin untuk melakukan penelitian serta memberikan waktunya untuk diwawancarai oleh saya. Serta Mas Wira, yang telah menyediakan data-data yang penulis butuhkan selama masa penulisan skripsi serta semua pihak yang terlibat di BNP2TKI yang telah banyak membantu penulis selama masa penulisan skripsi. 7. Orang tua penulis yang telah memberikan doa, dukungan moral dan materi serta cinta untuk menyelesaikan skripsi ini. Serta adikku tersayang yang telah senantiasa memberikan bantuan yang sanggup dilakukan setiap kali penulis membutuhkan. 8. Teman-teman Almamater SI angkatan 2010 yang selalu memberikan dukungan moril dan hiburan kepada penulis, setiap kali penulis menghadapi masa-masa sulit selama mengerjakan skripsi.
Pada kesempatan ini saya ingin mohon maaf yang sebesar-besarnya kepada semua pihak apabila sewaktu menjalankan penelitian ini ada hal-hal yang kurang berkenan dari saya.
viii
Akhir kata penulis berharap agar skripsi ini dapat bermanfaat bagi penelitian selanjutnya dan semua yang membaca.
Depok, 9 September 2014
Azis Senoaji Prasetyotomo 1110093000024
ix
DAFTAR ISI HALAMAN SAMPUL ............................................................................................ i HALAMAN JUDUL............................................................................................... ii LEMBAR PENGESAHAN ................................................................................... iii LEMBAR PENGESAHAN UJIAN ....................................................................... iv LEMBAR PERNYATAAN .....................................................................................v ABSTRAK ............................................................................................................. vi KATA PENGANTAR .......................................................................................... vii DAFTAR ISI ............................................................................................................x DAFTAR TABEL ................................................................................................ xiv DAFTAR GAMBAR .............................................................................................xv DAFTAR SIMBOL............................................................................................ xviii BAB I .......................................................................................................................1 1.1
Latar Belakang ......................................................................................... 1
1.2
Identifikasi Masalah ................................................................................. 7
1.3
Tujuan Penelitian ...................................................................................... 9
1.4
Manfaat Penelitian .................................................................................... 9
1.4.1
Manfaat Bagi TKI ............................................................................. 9
1.4.2
Manfaat Bagi BNP2TKI ................................................................. 10
x
1.4.3
Manfaat Bagi Masyarakat ............................................................... 10
1.4.4
Manfaat Bagi Penulis ...................................................................... 10
1.4.5
Manfaat bagi UIN Syarif Hidayatullah ........................................... 10
1.5
Metodologi Penelitian ............................................................................ 11
1.6
Sistematika Penulisan ............................................................................. 11
BAB II ....................................................................................................................13 2.1
Konsep Dasar Sistem Informasi ............................................................. 13
2.1.1
Pengertian Sistem ............................................................................ 13
2.1.2
Karakteristik Sistem ........................................................................ 14
2.1.3
Klasifikasi Sistem ........................................................................... 17
2.1.4
Pengertian Informasi ....................................................................... 19
2.1.5
Kualitas dan Nilai Informasi ........................................................... 19
2.1.6
Pengertian Sistem Informasi ........................................................... 20
2.1.7
Komponen Sistem Informasi .......................................................... 21
2.1.8
Sistem Informasi pada teknologi mobile ......................................... 23
2.2
Konsep Dasar Sistem Informasi Geospasial .......................................... 23
2.2.1
Pengertian Sistem Informasi Geospasial ......................................... 23
2.2.2
Sistem Informasi Geospasial pada perangkat mobile...................... 24
2.3
Metode .................................................................................................... 25
2.3.1
Metode Pengumpulan Data ............................................................. 25
xi
2.3.2
Metode Object Oriented Analysis and Design ................................ 28
2.3.3
Pengujian Sistem ............................................................................. 36
2.3.4
Tools ................................................................................................ 39
2.4
Konsep Tenaga Kerja Indonesia ............................................................. 59
2.4.1
Pengertian Tenaga Kerja Indonesia ................................................ 59
2.4.2
Konsep Penempatan dan Perlindungan Tenaga Kerja Indonesia .... 61
2.5
Platform IOS........................................................................................... 63
BAB III ..................................................................................................................66 3.1
Tempat dan Waktu Penelitian ................................................................ 66
3.2
Data dan Perangkat Penelitian ................................................................ 66
3.2.1
Data Penelitian ................................................................................ 66
3.2.2
Perangkat Penelitian ........................................................................ 67
3.3
Metode Penelitian ................................................................................... 68
3.3.1
Metode Pengumpulan Data ............................................................. 68
3.3.2
Metode Pengembangan Sistem ....................................................... 70
3.3.3
Alasan Menggunakan Metode OOAD ............................................ 74
3.4
Kerangka Berpikir .................................................................................. 76
BAB IV ..................................................................................................................78 4.1
Gambaran Umum BNP2TKI .................................................................. 78
4.1.1
Latar Belakang dibentuknya BNP2TKI .......................................... 78
xii
4.1.2
Visi dan Misi BNP2TKI ................................................................. 79
4.1.3
Fungsi BNP2TKI ............................................................................ 79
4.1.4
Tugas BNP2TKI ............................................................................. 80
4.1.5
Struktur Organisasi BNP2TKI ........................................................ 81
4.2
Pengumpulan Data ................................................................................. 84
4.2.1
Observasi ......................................................................................... 84
4.2.2
Wawancara ...................................................................................... 84
4.2.3
Angket atau Kuesioner .................................................................... 85
4.2.4
Studi Pustaka ................................................................................... 86
4.3
Pengembangan Sistem ............................................................................ 88
4.3.1
Inception .......................................................................................... 88
4.3.2
Elaboration ................................................................................... 108
4.3.3
Construction .................................................................................. 125
4.3.4
Transition ...................................................................................... 157
BAB V..................................................................................................................167 3.1
Kesimpulan ........................................................................................... 167
3.2
Saran ..................................................................................................... 168
DAFTAR PUSTAKA ..........................................................................................170 LAMPIRAN .........................................................................................................173
xiii
DAFTAR TABEL TABEL 3.1 Perbandingan Metode Pengembangan Sistem ...................................75 TABEL 4.1 Pencocokan System Requirements fungsional terhadap aktor.............91 TABEL 4.2 Use case kirim koordinat secara otomatis ...........................................97 TABEL 4.3 Use case kirim sinyal S.O.S ................................................................98 TABEL 4.4 Use case lihat rute menuju kedubes RI ...............................................99 TABEL 4.5 Use case lihat masa kontrak ..............................................................100 TABEL 4.6 Use case log in ..................................................................................101 TABEL 4.7 Use case manajemen data clientApp .................................................102 TABEL 4.8 Use case manajerial data identitas TKI .............................................103 TABEL 4.9 Use case log out ................................................................................104 TABEL 4.10 Use case lihat lokasi TKI ................................................................105 TABEL 4.11 Use case lihat rute menuju lokasi TKI ............................................106 TABEL 4.12 Definisi Data ...................................................................................129 TABEL 4.13 Pengujian pada tampilan adminApp ................................................160 TABEL 4.14 Pengujian pada tampilan serverApp ................................................161 TABEL 4.15 Pengujian pada tampilan clientApp .................................................162
xiv
DAFTAR GAMBAR GAMBAR 1.1 Grafik Jumlah Pengiriman TKI ke Luar Negeri ..............................1 GAMBAR 1.2 Grafik Jumlah TKI yang bermasalah...............................................2 GAMBAR 1.3 Grafik indeks OS mobile dilihat dari kemudahannya .....................5 GAMBAR 2.1 Karakteristik Sistem ......................................................................17 GAMBAR 2.2 Tahapan dan Aktivitas Proses Makro ............................................32 GAMBAR 2.3 Proses Mikro pada Proses Makro ..................................................33 GAMBAR 2.4 Aktivitas Proses Mikro ..................................................................34 GAMBAR 2.5 Tahapan Keseluruhan OOAD ........................................................36 GAMBAR 2.6 Contoh Context Diagram ..............................................................40 GAMBAR 2.7 Contoh Use Case Diagram ............................................................42 GAMBAR 2.8 Contoh Activity Diagram ...............................................................43 GAMBAR 2.9 Contoh Class Diagram ..................................................................44 GAMBAR 2.10 Contoh Sequence Diagram ..........................................................45 GAMBAR 2.11 Contoh Deployment Diagram ......................................................46 GAMBAR 2.12 Contoh MVC Pattern ...................................................................50 GAMBAR 3.1 Kerangka Berpikir .........................................................................77 GAMBAR 4.1 Struktur Organisasi BNP2TKI ......................................................81 GAMBAR 4.2 Context Diagram dari SIGEPTKI .................................................89 GAMBAR 4.3 Mission Use Case Diagram awal SIGEPTKI................................93 xv
GAMBAR 4.4 Mission Use Case Diagram dari keseluruhan SIGEPTKI ............94 GAMBAR 4.5 Use Case Diagram dari SIGEPTKI ..............................................96 GAMBAR 4.6 Activity Diagram untuk use case Log in......................................107 GAMBAR 4.7 Activity Diagram untuk use case manajemen data clientApp .....109 GAMBAR 4.8 Activity Diagram untuk use case manajemen data identitastki ...111 GAMBAR 4.9 Activity Diagram untuk use case log out .....................................113 GAMBAR 4.10 Activity Diagram untuk use case lihat lokasi TKI.....................114 GAMBAR 4.11 Activity Diagram untuk use case lihat rute menuju lokasi TKI 115 GAMBAR 4.12 Activity Diagram untuk use case kirim koordinat .....................116 GAMBAR 4.13 Activity Diagram untuk use case kirim sinyal S.O.S ................118 GAMBAR 4.14 Activity Diagram untuk use case lihat rute menuju kedubes.....119 GAMBAR 4.15 Activity Diagram untuk use case lihat masa kontrak ................120 GAMBAR 4.16 System Architecture dari SIGEPTKI .........................................121 GAMBAR 4.17 Deployment Diagram dari SIGEPTKI ......................................123 GAMBAR 4.18 Class Diagram awal dari SIGEPTKI ........................................124 GAMBAR 4.19 Class Diagram SIGEPTKI ........................................................127 GAMBAR 4.20 Struktur Database ......................................................................128 GAMBAR 4.21 Sequence Diagram Login ..........................................................134 GAMBAR 4.22 Sequence Diagram add identitas TKI .......................................135 GAMBAR 4.23 Sequence Diagram edit identitas TKI .......................................136
xvi
GAMBAR 4.24 Sequence Diagram delete identitas TKI ....................................137 GAMBAR 4.25 Sequence Diagram add clientApp .............................................138 GAMBAR 4.26 Sequence Diagram edit clientApp .............................................140 GAMBAR 4.27 Sequence Diagram log out ........................................................141 GAMBAR 4.28 Sequence Diagram delete clientApp ..........................................142 GAMBAR 4.29 Sequence Diagram monitoring dan rute menuju lokasi TKII ...143 GAMBAR 4.30 Sequence Diagram kirim koordinat lokasi TKI ........................144 GAMBAR 4.31 Sequence Diagram kirim sinyal S.O.S ......................................145 GAMBAR 4.32 Sequence Diagram menampilkan rute menuju kedubes............147 GAMBAR 4.33 Sequence Diagram menampilkan masa kontrak kerja ..............148 GAMBAR 4.34 Storyboard adminApp ...............................................................149 GAMBAR 4.35 Storyboard serverApp ...............................................................150 GAMBAR 4.36 Storyboard clientApp ................................................................151 GAMBAR 4.37 Model MVC untuk membangun adminApp ..............................152 GAMBAR 4.38 Model MVC untuk membangun serverApp ..............................153 GAMBAR 4.39 Model MVC untuk membangun clientApp ...............................154 GAMBAR 4.40 Prototype clientApp ...................................................................155 GAMBAR 4.41 Prototype adminApp ..................................................................157 GAMBAR 4.42 Prototype serverApp ..................................................................158
xvii
DAFTAR SIMBOL Diagram UML (Unified Modeling Language) Nama Diagram
Simbol
Nama
Actor
Context Diagram System
Participant
Mission Use Cases Diagram
Packet System
Use Case Diagram
Use case
Include Initital Note Activity Diagram Final Note
xviii
Decission Note
Activity
Fork
Deployment Diagram
Node Name
Class
Class Diagram
Interface
Object Lifeline
Sequence Diagram Actor Lifeline
Message
xix
Return Messasge Self Message (Sumber: OOAD with Application, 2007)
MVC Pattern
Menyatakan unsur wajib ada Menyatakan unsur wajib ada dengan jumlah tidak tentu Menyatakan unsur yang tidak harus ada Menyatakan hubungan secara kontekstual secara langsung
MVC Pattern
(Sumber: Avenue Pengembangan GIS, 2004)
xx
BAB I PENDAHULUAN
1.1 Latar Belakang Pendapatan Negara yang dihasilkan dari devisa TKI pada tahun 2007 – 2013 rata-rata 6.5 miliar dolar AS (Kementrian Tenaga Kerja dan Transmigrasi, 2014:8), menempati peringkat ke 3 penyumbang devisa terbesar di Indonesia pada tahun 2013 setelah sektor minyak dan gas bumi, dan minyak kelapa sawit (Kementrian Keuangan, 2014: 1-3). Jumlah tersebut sangat mempengaruhi perkembangan perekonomian makro Indonesia.
512.168 235.170 276.998
494.609
586.802 376.686
214.825 279.784
2008
124.684
2007
103.188
200.000
148.600
300.000
210.116
451.120
575.804
528.984
632.172
Jumlah TKI Wanita
400.000 152.887
ORANG
500.000
496.131
600.000
Jumlah TKI Pria 644.731
700.000
543.859
800.000
696.746
Jumlah TKI
2012
2013
100.000 0 2009
2010
2011
TAHUN
Gambar 1.1
Grafik Jumlah Pengiriman TKI ke Luar Negeri Tahun 2007 - 2013 (BNP2TKI, 2014: 11)
60
2
Sedangkan tren jumlah Tenaga Kerja Indonesia dari tahun 2007 sampai dengan 2013 mengalami penurunan rata-rata sebesar 5% sebagaimana yang diperlihatkan pada Gambar 1.1. Hal ini merupakan dampak dari banyaknya permasalahan yang terjadi pada TKI yang sedang bekerja di luar negeri yang mempengaruhi minat warga Indonesia untuk menjadi TKI.
Permasalahan dari TKI, mencakup masa kontrak habis tetapi masih tetap bekerja, mendapati majikan yang jahat, permasalahan dengan gaji atau upah sampai dengan penyanderaan. Sebagaimana pada Gambar 1.2, jumlah TKI bermasalah dari tahun 2007 – 2013 terjadi penurunan rata-rata 29%. Jumlah TKI bermasalah
Jumlah TKI Pria Bermasala
18.977
3.769 2.733 1036
14945 8.940 2.034 6906
10.000
4.032
8.435
13.287
23241
31.676
31082
31195
20.000
29294
30.000
23.332
ORANG
40.000
44.369
46.626
50.000
17.332
60.000
54.527
Jumlah TKI Wanita Bermasalah
2012
2013
0 2007
2008
2009
2010
2011
TAHUN
Gambar 1.2 Jumlah Tenaga Kerja Indonesia yang bermasalah dari tahun 2010 – 2013 (BNP2TKI, 2014: 31)
3
Berdasarkan Peraturan Presiden Nomor 81 Tahun 2006 tentang Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indoneisa, BNP2TKI memiliki Deputi Bidang Perlindungan yang bertugas untuk merumuskan, mengoordinasikan, melaksanakan dan mengawasi pelaksanaan kebijakan teknis perlindungan Tenaga Kerja Indonesia yang meliputi standarisasi, sosialisasi dan pelaksanaan perlindungan mulai dari pra-pemberangkatan selama penempatan, sampai dengan pemulangan. Perihal perlindungan selama pra-pemberangkatan, penempatan, dan pemulangan juga tertulis lebih rinci pada Peraturan Menteri Ketenagakerjaan dan Transmigrasi Nomor: PER-18/MEN/IX/2007. Pada peraturan menteri tersebut dituliskan bahwa perlindungan TKI selama pra-pemberangkatan adalah memastikan kesiapan dari TKI tersebut sebelum penempatan dengan cara sosialisasi dan memastikan perihal asuransi. Perlindungan pada masa penempatan adalah perlindungan pada saat TKI bekerja di luar negeri. Sedangkan perlindungan pada masa pemulangan adalah memastikan TKI yang sudah habis masa kontraknya dipulangkan tepat waktu dan menjamin keselamatan TKI tersebut hingga kembali ke agen masing-masing. Belakangan ini Sistem Informasi Geospasial sering diterapkan pada pemantauan obyek-obyek tertentu seperti dalam bidang perikanan dan perlindungan satwa. Peneliti akan menerapkan Sistem Informasi Geospasial pada perlindungan TKI yang bekerja di luar negeri dengan cara setiap individu memiliki perangkat GPS (Global Potitioning System) tertentu dan kemudian mengirimkan data posisi dengan periode waktu tertentu.
4
Diperlukan perangkat GPS yang kecil supaya dapat dibawa kemanapun TKI itu pergi. Perkembangan teknologi smartphone yang semakin canggih mengakibatkan perangkat GPS stand alone kini tidak lagi diperlukan jika seseorang sudah memiliki smartphone. Sehingga setiap TKI hanya perlu menggenggam smartphone yang berfungsi selain untuk kebutuhan komunikasi juga sebagai pengirim titik koordinat kepada sistem monitoring. Teknologi GPS yang tertanam pada smartphone sudah cukup akurat dalam memberikan petunjuk angka koordinat suatu posisi. Rata-rata pendidikan terakhir Tenaga Kerja Indonesia yang dikirim ke luar negeri dari tahun 2007 – 2013 adalah lulusan SD 31.26%, lulusan SMP 37,4%, lulusan SMA 24.37%, lulusan Diploma 5.66%, lulusan Sarjana 1.24%, lulusan Pasca Sarjana 0.17% (sumber : BNP2TKI). Sehingga sebagian besar TKI adalah lulusan SMA kebawah, maka diperlukan Sistem Operasi mobile yang mudah digunakan. Dari penelitian yang dilakukan oleh Pfieffer Report, Tahun 2013, didapatkan nilai indeks sistem Operasi dilihat dari kemudahannya dalam dioperasikan menyatakan bahwa sistem operasi yang paling mudah digunakan adalah sistem operasi IOS 7 dan IOS 6 sebagaimana pada Gambar 1.3. Dari hasil penelitian tersebut, penulis memilih sistem operasi IOS sebagai wadah untuk menjalankan sistem.
5
80
73,25
70
70 57,25
Satuan Indeks
60
56 47
50 40 30 20 10 0 IOS 7
IOS 6
Android
Windows Phone 8
Blackberry 10
Sistem operasi
Gambar 1.3 Grafik Nilai Indeks Sistem Operasi Kemudahannya (Pfeiffer Report, 2013: 7)
Mobile
Dilihat
dari
Dibandingkan dengan penelitian – penelitian sebelumnya tentang sistem informasi geospasial monitoring obyek tertentu dengan judul “Aplikasi SIG web untuk monitoring dan manajemen kualitas pendidikan sekolah menengah atas di kota Solo Jawa Tengah” (Priyono, 2013: 1), “Aplikasi sistem informasi geografi tingkat pencemaran industri di kabupaten gresik”, (Triono, et al, 2008: 1 -2) dan “Applying internet geographic information system for water quality monitoring”, (Jankowsky, 2007: 1 - 2) sistem yang akan dikembangkan oleh penulis sangatlah berbeda karena 3 jurnal tersebut fokus terhadap pengamatan kualitas dari suatu obyek pada area-area tertentu, sedangkan yang penulis buat adalah monitoring keberadaan dan status obyek. Begitu juga dengan penelitian lain dengan judul “Geospatial video monitoring of nearshore benthic habitats of western biscayne bay (florida) using
6
the shallow-water positioning system”, (Lirman, et al, 2008) memanfaatkan kamera sebagai alat untuk memantau keberadaan dan status obyek dan “Application of GIS to biodiversity monitoring”, (Department of Enviromental Sciences, 2003) dan “Aplikasi sistem informasi geografis pengindraan jauh untuk monitoring area sawah dengan data multitemporal”, (Muharram, et al, 2013) yang melakukan monitoring terhadap kumpulan obyek yaitu flora dan fauna menggunakan pengindraan jarak jauh. Dilihat dari latar belakang diatas, ada dorongan untuk membuat Sistem Informasi Geospasial yang terkait dengan pengawasan keberadaan lokasi dan status TKI berbasis mobile dengan pendekatan Framework Cocoa pada Objective-C yang merupakan Framework untuk mengembangkan sistem pada iOS atau Apple device. Oleh karena itu, skripsi berjudul “Pengembangan Sistem Informasi Geospasial Berbasis Mobile pada Perlindungan Tenaga Kerja Indonesia (Studi Kasus: BNP2TKI) layak dijadikan penelitian.
7
1.2 Identifikasi Masalah Berdasarkan latar belakang yang telah dipaparkan diatas, maka didapat identifikasi masalah sebagai berikut: 1. Belum adanya location based services untuk keberadaan dan status TKI di luar negeri pada BNP2TKI sehingga pemantauan keberadaan TKI hanya bisa sampai lokasi terakhir penempatan kerja. 2. Tidak ada pemberitahuan awal kepada TKI jika masa kontraknya akan berakhir untuk menghindari adanya masalah jika masa kontrak berakhir namun TKI tersebut lupa atau tidak mengetahuinya. 3. Belum ada bentuk perlindungan digital yang dipegang oleh TKI seperti pengingat masa kontrak kerja, petunjuk arah menuju Kantor Kedutaan Indonesia, dan pengirim sinyal pemberitahuan bahwa TKI tersebut sedang dalam bahaya.
1.3 Rumusan Masalah Berdasarkan Identifikasi Masalah yang telah dipaparkan diatas, maka dapat dirumuskan beberapa masalah, sebagai berikut: 1. Bagaimana analisis dan pengembangan sistem informasi geospasial berbasis IOS yang dapat memonitor keberadaan dan status Tenaga Kerja Indonesia yang sedang bekerja di luar negeri secara near real time. 2. Bagaimana memanfaatkan teknologi pada smartphone dengan sistem operasi iOS untuk menyediakan perlindungan digital bagi TKI.
8
1.1 Batasan Masalah Berdasarkan rumusan masalah diatas, maka batasan masalah dari penelitian ini adalah: 1. Analisis dan pengembangan sistem dilakukan di Deputi Perlindungan pada Badan Nasional Penempatan dan Perlindungan TKI. 2. SIGEPTKI merupakan Sistem Informasi Geospasial yang dapat memonitor keberadaan dan status TKI sebagai bentuk perlindungan digital yang disediakan oleh pemerintah. Sistem ini dapat mengirimkan keberadaan near real time TKI, pemberitahuan masa kontrak kerja, menyediakan rute menuju kedubes RI, dan mengirimkan sinyal S.O.S (Save Our Soul) ke Kedubes RI di negara TKI tersebut bekerja. 3. Metode pengembangan sistem yang digunakan adalah Object Oriented Analysis and Design (OOAD) sampai pada level implementasi prototype (transition). Tools yang digunakan dalam pengembangan sistem adalah Objective-C ver. 2.0 , JSON ver. 6.0, dan MySQL ver. 5.6.21. 4. Pengujian prototype dari sistem yang sudah dibangun dijalankan di perangkat dengan sistem Operasi IOS 7, yaitu iPad retina display sebagai server dan iPhone 4s sebagai client.
9
1.4 Tujuan Penelitian Tujuan Umum: Mengembangkan Sistem Informasi Geospasial berbasis mobile pada perlindungan TKI di BNP2TKI Tujuan Khusus: 1. Mengembangkan sistem monitoring keberadaan dan status dari setiap TKI yang bekerja di luar negeri secara near real time 2. Mengembangkan sistem penyedia lokasi dan rute menuju kantor Kedutaan Indonesia kepada TKI 3. Mengembangkan sistem pengingat masa kontrak bekerja masingmasing TKI 4. Mengembangkan sistem pengirim sinyal S.O.S (Save Our Soul) dari TKI menuju Kedubes RI setempat
1.5 Manfaat Penelitian 1.5.1
Manfaat Bagi TKI 1. Mendapatkan Informasi mengenai masa visa atau kontrak dan pengingat sehingga diharapkan tidak ada lagi masalah tentang masa kontrak bekerja. 2. Memberikan petunjuk arah menuju kedutaan Indonesia di negara masing-masing TKI bekerja.
10
1.5.2
Manfaat Bagi BNP2TKI 1. Meningkatkan jaminan perlindungan terhadap Tenaga Kerja Indonesia yang bekerja di luar negeri seperti yang dituliskan pada UU No. 39 Tahun 2004 dan Perpres RI No. 81 Tahun 2006 2. Memudahkan BNP2TKI untuk melacak lokasi TKI yang sedang mengalami masalah.
1.5.3
Manfaat Bagi Masyarakat 1. Meningkatkan kepercayaan masyarakat akan kinerja pemerintah khususnya dalam bidang jaminan perlindungan TKI di luar negeri.
1.5.4
Manfaat Bagi Penulis 1. Memberikan pemahaman menyeluruh mengenai penerapan Sistem Informasi Geospasial berbasis mobile dengan metodologi Object Oriented Analysis and Design. 2. Mendapat
pengalaman
terhadap
tahapan
penelitian
dalam
pengembangan Sistem Informasi Geospasial berbasis mobile dengan pendekatan Cocoa pada Objective-C.
1.5.5
Manfaat bagi UIN Syarif Hidayatullah 1. Penelitian ini dapat menjadi salah satu referensi bagi penelitian berikutnya dalam pengembangan Sistem Informasi Geospasial berbasis mobile pada monitoring suatu obyek.
11
1.6 Metodologi Penelitian Metodologi penelitian didalam penelitian ini menggunakan beberapa metode
yang
bertujuan
mempermudah
dalam
pengembangan
aplikasi,
yaitu
pengumpulan
metode
melakukan data
analisis dan
dan
metode
pengembangan sistem. Metode pengumpulan data dilakukan dengan cara observasi, wawancara, dan studi pustaka serta metode pengembangan sistem yang digunakan dalam penelitian ini yaitu Object Oriented Analysis and Design (OOAD).
1.7 Sistematika Penulisan Secara garis besar, penulisan ini dibagi menjadi lima (5) bab. Adapun isi dari masing-masing bab adalah sebagai berikut: BAB 1. PENDAHULUAN Bab ini mengemukakan latar belakang dibuatnya penulisan ini, rumusan masalah, batasan masalah, tujuan dan manfaat penelitian, metodologi penelitian, dan sistematika penulisan yang masing-masing dijelaskan pada tiap bab. BAB 2. LANDASAN TEORI Bab ini menguraikan tentang pengertian dan teori-teori yang digunakan sebagai landasan atau dasar dari penelitian ini. BAB 3. METODOLOGI PENELITIAN Bab ini menguraikan tentang metode penelitian yang mencakup kerangka berpikir, metode pengumpulan data, dan metode pengembangan sistem yang digunakan dalam mengembangkan sistem informasi geospasial
12
monitoring TKI berbasis mobile dengan pendekatan Framework Cocoa pada Objective-C. BAB 4. HASIL PENELITIAN DAN ANALISIS Bab ini menguraikan tentang hasil penelitian, analisis dan pengujian tentang sistem informasi geospasial monitoring TKI berbasis mobile dengan pendekatan Framework Cocoa pada Objective-C. BAB 5. KESIMPULAN DAN SARAN Bab ini berisi kesimpulan dari uraian yang sudah diterangkan pada bab-bab sebelumnya, dan juga berisi saran-saran perbaikan terhadap sistem yang dihasilkan.
BAB II LANDASAN TEORI
2.1 Konsep Dasar Sistem Informasi 2.1.1
Pengertian Sistem Sistem adalah sekumpulan atau bagian-bagian yang mempunyai kaitan satu
sama lain, yang bersama-sama beraksi menurut pola tertentu terhadap masukan dengan tujuan menghasilkan keluaran. “Sistem adalah kumpulan dari elemenelemen yang berinteraksi untuk mencapai suatu tujuan tertentu” (Jogiyanto, 2005 : 34). Sistem secara luas dapat didefinisikan sebagai sekumpulan elemen-elemen yang saling berhubungan dan saling bergantungan untuk mencapai suatu tujuan. McLeod berpendapat sistem adalah sekelompok elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan. Begitu pula Robert G Murdick mendefinisikan sistem sebagai seperangkat elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan bersama (Ladjamudin, 2005 : 3). Terdapat dua kelompok pendekatan di dalam mendefinisikan sistem yaitu yang menekankan pada prosedurnya dan yang menekankan pada komponen atau elemennya. a. Pendekatan
sistem
yang
lebih
menekankan
pada
prosedur
mendefinisikan sistem sebagai suatu jaringan kerja dari prosedur-
60
14
prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau menyelesaikan suatu sasaran tertentu. b. Pendekatan sistem yang lebih menekankan pada komponen atau elemennya mendefinisikan sistem sebagai berikut : 1) Sistem sebagai bagian-bagian yang saling berkaitan yang beroperasi bersama untuk mencapai beberapa sasaran atau maksud. 2) Sistem sebagai suatu komponen atau variabel yang terorganisir, saling berinteraksi, saling bergantung, satu sama lain dan terpadu. 3) Sistem adalah sekelompok elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan. 4) Sistem sebagai seperangkat elemen-elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan bersama.
2.1.2
Karakteristik Sistem Sebuah sistem memiliki suatu karakterisrik atau sifat- sifat tertentu yang
merincikan bahwa itu adalah suatu sistem. Adapun karakter dari sistem itu adalah (Jogiyanto, 2005 : 3-6) : a. Komponen Sistem (Components) Suatu sistem terdiri dari komponen-komponen yang saling berinteraksi, saling bekerjasama membentuk satu kesatuan. Komponen-komponen tersebut dapat berupa suatu subsystem atau bagian dari setiap sistem, tidak peduli seberapa kecil sistem tersebut. Setiap subsystem memiliki sifat-sifat dari sistem yang menjalankan suatu fungsi tertentu dan
15
mempengaruhi proses sistem secara keseluruhan. Suatu sistem dapat memiliki sebuah sistem yang lebih besar yang disebut Supra System.
b. Batasan Sistem (Boundary) Ruang lingkup sistem merupakan daerah yang membatasi antara sistem dengan sistem lainnya atau sistem dengan lingkungan luarnya. Batasan sistem ini memungkinkan suatu sistem dipandang sebagai satu kesatuan yang tidak dapat dipisahkan. c. Lingkungan Luar Sistem (Environment) Lingkungan luar dari suatu sistem adalah apapun yang mempengaruhi operasi sistem. Lingkungan luar sistem dapat bersifat menguntungkan dan dapat juga merugikan sistem tersebut. Lingkungan luar yang menguntungkan merupakan energi dari sistem sehingga harus dijaga dan dipelihara, sedangkan lingkungan yang merugikan harus ditahan dan dikendalikan karena dapat mengganggu kelangsungan hidup dari sistem. d. Penghubung Sistem (Interface) Penghubung sistem merupakan media yang menghubungkan sistem dengan subsystem lainnya. Keluran dari suatu subsystem akan menjadi masukan bagi subsystem lainnya melalui penghubung ini sehingga terjadi suatu integrasi sistem yang membentuk kesatuan.
16
e. Masukan Sistem (Input) Masukan adalah energi yang dimasukkan ke dalam sistem. Masukan ini dapat berupa masukan perawatan (maintenance input) atau masukan sinyal (signal input). Maintenance input adalah energi yang dimasukkan agar sistem tersebut dapat beroperasi. Sedangkan signal input adalah energi yang diproses untuk mendapat keluaran. f. Pengolahan (Process) Suatu sistem harus mempunyai bagian pengolah yang akan merubah masukan menjadi keluaran. g. Keluaran Sistem (Output) Keluaran adalah hasil dari energi yang telah diolah kemudian diklasifikasikan menjadi keluaran yang berguna atau sisa pembuangan. Keluaran dapat merupakan masukan bagi subsystem yang lain atau bagi supra system. h. Sasaran Sistem (Objective) Sasaran dari suatu sistem sangat menentukan masukan yang dibutuhkan dan keluaran yang dihasilkan. Jika sistem tidak memiliki sasaran maka operasi tidak akan berguna. Karakteristik sistem dapat digambarkan sebagai berikut :
17
Gambar 2.1 Karakteristik Sistem (Jogiyanto 2005 : 6)
2.1.3
Klasifikasi Sistem Selain karakteristik yang telah dijelaskan di atas sistem juga dapat
diklasifikasikan yang dilihat dari beberapa sudut pandang, diantaranya adalah sebagai berikut (Jogiyanto, 2005 : 6) : a. Sistem Abstrak dan Sistem Fisik Sistem abstrak (abstract system) adalah sistem yang berupa pemikiran atau ide-ide yang tidak tampak secara fisik, misalnya sistem teologi yaitu sistem yang berupa pemikiran manusia dengan Tuhan. Sedangkan sistem fisik (physical system) adalah sistem yang ada secara fisik, misalnya sistem komputer, sistem produksi dan lain sebagainya.
18
b. Sistem Alamiah dan Sistem Buatan Manusia Sistem alamiah (natural system) adalah sistem yang terjadi melalui proses alam, tidak dibuat oleh manusia. Sedangkan sistem buatan manusia adalah sistem yang dirancang oleh manusia. Sistem buatan manusia melibatkan interaksi antara dengan mesin yang disebut humanmachine system atau ada yang menyebut man-machine system. c. Sistem Determinasi dan Sistem Probabilitas Sistem determinasi (deterministic system) adalah sistem yang beroperasi dengan tingkah laku yang dapat diprediksi, misalnya sistem komputer. Sistem ini dapat dipastikan berdasarkan program-program yang dijalankan. Sedangkan sistem probabilitas (probabilistic system) adalah sistem yang masa depannya tidak dapat diprediksi karena mengandung unsur probabilistik. d. Sistem Tertutup dan Sistem Terbuka Sistem tertutup (closed system) adalah sistem yang tidak berhubungan dan tidak terpengaruh oleh lingkungan luar. Sistem ini bekerja secara otomatis tanpa campur tangan pihak luar. Sedangkan sistem terbuka (open system) sistem yang berhubungan dan dipengaruhi oleh sistem luar. Sistem ini menerima masukan dan menghasilkan keluaran untuk subsystem lain.
19
2.1.4
Pengertian Informasi Informasi adalah rangkaian data yang mempunyai sifat sementara,
tergantung dengan waktu, mampu memberi kejutan atau surprise pada yang menerimanya. Informasi adalah data yang telah diolah menjadi bentuk yang lebih berarti bagi penerimanya dan bermanfaat dalam mengambil keputusan saat ini atau mendatang. “Informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya” (Jogiyanto, 2005 : 8). Raymond McLeod mendefinisikan informasi sebagai data yang diolah menjadi bentuk yang lebih berarti bagi penerimanya. Alat pengolahan informasi dapat meliputi elemen komputer, elemen non komputer atau kombinasinya (Ladjamudin, 2005 : 9).
2.1.5
Kualitas dan Nilai Informasi Kualitas sistem informasi tergantung pada (Jogiyanto, 2005 : 10) : a. Akurat, informasi harus bebas dari kesalahan-kesalahan dan tidak menyesatkan. Akurat juga berarti informasi harus jelas menceritakan maksudnya. b. Tepat waktu, informasi yang diterima tidak boleh terlambat. Informasi yang telah usang tidak mempunyai nilai tinggi, karena informasi merupakan
landasan
di
dalam
pengambilan
keputusan.
Bila
pengambilan keputusan lambat maka akan berakibat fatal bagi organisasi tersebut.
20
c. Relevan, informasi tersebut mempunyai manfaat untuk pemakainya. Relevansi informasi untuk tiap-tiap orang satu dengan yang lainnya berbeda. Nilai dari informasi ditentukan oleh dua hal, yaitu manfaat dan biaya mendapatkannya. Suatu informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya untuk mendapatkannya. Akan tetapi perlu diperhatikan bahwa informasi yang digunakan di dalam suatu sistem informasi umumnya digunakan untuk beberapa kegunaan. Sehingga tidak memungkinkan dan sulit untuk menghubungkan suatu bagian informasi pada suatu masalah tertentu dengan biaya untuk memperolehnya. Hal itu disebabkan karena sebagian besar informasi dinikmati tidak hanya oleh satu pihak di dalam perusahaan.
2.1.6
Pengertian Sistem Informasi Sistem informasi adalah sistem di dalam suatu organisasi, yang
mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan (Jogiyanto, 2005 : 11). Sementara menurut Robet A. Letch dan K. Roscoe Davis, sistem informasi adalah suatu sistem di dalam organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasai dan menyediakan pihak luar tertentu dengan laporan-laporan yang ditentukan. Sistem informasi dapat didefinisikan sebagai berikut (Ladjamudin, 2005 : 13).
21
a. Suatu sistem yang dibuat oleh manusia yang terdiri dari komponenkomponen dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi. b. Sekumpulan prosedur organisasi yang pada saat dilaksanakan akan memberikan informasi bagi pengambil keputusan dan/atau untuk mengendalikan organisasi. c. Suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi, mendukung operasi, bersifat manajerial, dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan
2.1.7
Komponen Sistem Informasi Sistem informasi dapat terdiri dari komponen-komponen yang disebut
dengan istilah blok bangunan (building block), yaitu blok masukan (input block), blok model (model block), blok dasar data (database block) dan blok kendali (control block). Sebagai suatu sistem, keenam blok tersebut masing-masing saling berinteraksi satu dengan yang lainnya membentuk satu kesatuan untuk mencapai sasarannya (Jogiyanto, 2005 : 42). a. Blok Masukan Merupakan input yang mewakili data yang masuk kedalam sistem informasi yang dapat berupa dokumen-dokumen dasar.
22
b. Blok Model Blok ini terdiri dari kombinasi prosedur, logika, dan model matematik yang akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan. c. Blok Keluaran Merupakan keluaran yang merupakan informasi yang berkualitas dan dokumentasi yang berguna. d. Blok Teknologi Teknologi merupakan “kotak alat” (toolbox) dalam sistem informasi. Teknologi digunakan untuk menerima input, menjalankan model, menyimpan, dan mengakses data, menghasilkan dan mengirimkan keluaran dan membantu pengendalian dari sistem secara keseluruhan. e. Blok Basis Data Basis data merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. f. Blok Kendali Untuk upaya sistem informasi dapat berjalan sesuai dengan yang diinginkan, maka perlu diterapkan pengendalian-pengendalian di dalamnya
23
2.1.8
Sistem Informasi pada teknologi mobile Sistem Informasi tidak hanya terbatas pada teknologi komputer, namun
Sistem Informasi saat ini banyak menggunakan teknologi mobile. Transaksi bisnis kerap terjadi melalui teknologi mobile seperti smartphone, tablet, iPad dan perangkat mobile lainnya. Sistem Informasi pada teknologi mobile lebih mudah digunakan oleh enduser karena sisi praktis yang tidak perlu menggunakan perangkat PC atau laptop. Menurut Pernici & Barbara (2006: 22), SI pada mobile biasanya memiliki database yang terpisah dan diletakkan secara online. Transaksi bisnis pada teknologi mobile dilakukan berdasarkan konsep client-server. Perangkat mobile berperang sebagai client dan webservice berperan sebagai server. Komunikasi dan pertukaran data berlangsung melalui internet. Popularitas SI pada mobile didukung oleh teknologi perangkat mobile yang semakin canggih dan koneksi internet yang semakin mudah didapat.
2.2 Konsep Dasar Sistem Informasi Geospasial 2.2.1
Pengertian Sistem Informasi Geospasial Menurut UU No. 4 Tahun 2011 tentang Informasi Spasial pasal 1 – 4
menjelaskan bahwa spasial adalah aspek keruangan suatu obyek atau kejadian yang mencakup lokasi, letak, dan posisinya. Geospasial atau ruang kebumian adalah aspek keruangan yang menunjukkan lokasi, letak, dan posisi suatu obyek atau
24
kejadian yang berada di bawah, pada, atau di atas permukaan bumi yang dinyatakan dalam sistem koordinat tertentu. Gesospasial memiliki unsur data geospasial, yaitu data tentang lokasi geografis, dimensi atau ukuran, dan/atau karakteristik obyek alam dan/atau buatan manusia yang berada di bawah, pada, atau di atas permukaan bumi. Informasi Geospasial yang selanjutnya disingkat adalah data geospasial yang sudah diolah sehingga dapat digunakan sebagai alat bantu dalam perumusan kebijakan, pengambilan keputusan, dan/atau pelaksanaan kegiatan yang berhubungan dengan ruang kebumian. Dari seluruh penjelasan tentang apa itu geospasial, maka dapat disimpulkan bahwa Sistem Informasi Geospasial adalah sistem komputerisasi yang dapat menampilkan informasi geospasial serta melakukan transaksi data geospasial secara otomatis. 2.2.2
Sistem Informasi Geospasial pada perangkat mobile Menurut Wang (2009: 1), geospasial erat kaitannya dengan teknologi GPS
(Global Positioning System), GPS merupakan alat untuk mengetahui posisi berdasarkan koordinat dengan bantuan satelit. Sistem Informasi Geospasial belakangan ini sangat didukung oleh kecanggihan perangkat mobile terutama smartphone karena disetiap smartphone sudah ditanamkan teknologi GPS. Teknologi GPS
yang telah tertanam pada smartphone memungkinkan
pengembangan Sistem Informasi Geospasial berbasis mobile dilakukan pada dengan berbagai manipulasi fitur. Dengan software dan paket data yang tepat dari
25
provider telekomunikasi, maka smartphone yang dilengkapi dengan fitur GPS mampu bekerja untuk memberikan informasi lokasi Pada penelitian yang dilakukan oleh Wang (2009: 3 - 6), menyatakan bahwa cara kerja GPS Receiver hampir sama dengan sinyal telepon, yaitu dengan menggunakan gelombang radio. Namun, tidak layaknya sinyal seluler yang menggunakan tower, GPS ini menggunakan 30 satelit yg saat ini berada di orbit bumi. Saat ini GPS hanya menggunakan 27 satelit, dan 3 satelit lainnya digunakan untuk backup apabila terjadi kerusakan satelit. Oleh karena itulah GPS lebih akurat dalam menunjukkan lokasi karena tidak terhalang oleh beberapa faktor penghalang seperti tower seluler. 2.3 Metode 2.3.1
Metode Pengumpulan Data Metode pengumpulan data adalah suatu proses atau cara yang digunakan
untuk mendapatkan data-data yang dibutuhkan dalam penelitian. Pada penelitian ini, peneliti membutuhkan data-data pendukung untuk membangun sistem informasi geospasial berbasis mobile. Menurut Nazir (1998: 7), metode pengumpulan data adalah prosedur yang sistematis dan standar untuk memperoleh data yang diperlukan. 2.3.1.1 Observasi Menurut Supardi (2006:88), “Metode observasi merupakan metode pengumpul data yang dilakukan dengan cara mengamati dan mencatat secara sistematik gejala-gejala yang diselidiki”
26
Observasi yang berarti pengamatan bertujuan untuk mendapatkan data tentang suatu masalah, sehingga diperoleh pemahaman atau sebagai alat recheckingin atau pembuktian terhadap informasi / keterangan yang diperoleh sebelumnya.Sebagai metode ilmiah observasi biasa diartikan sebagai pengamatan dan pencatatan fenomena-fenomena yang diselidiki secara sistematik.
2.3.1.2 Wawancara Menurut Sugiono (2009:317) : “Wawancara adalah pertemuan dua orang untuk bertukar informasi dan ide melalui tanya jawab sehingga dapat dikonstruksikan makna dalam suatu topik tertentu dan dengan wawancara, peneliti akan mengetahui hal-hal yang lebih mendalam tentang partisipan dalam menginterprestasikan situasi dan fenomena yang terjadi yang tidak mungkin bisa ditemukan melalui observasi”. Walaupun wawancara adalah proses percakapan yang berbentuk tanya jawab dengan tatap muka, wawancara adalah suatu proses pengumpulan data untuk suatu penelitian. Beberapa hal dapat membedakan wawancara dengan percakapan sehari-hari adalah antara lain: •
Pewawancara dan responden biasanya belum saling kenal-mengenal sebelumnya.
•
Responden selalu menjawab pertanyaan.
•
Pewawancara selalu bertanya.
27
•
Pewawancara tidak menjuruskan pertanyaan kepada suatu jawaban, tetapi harus selalu bersifat netral.
•
Pertanyaan yang ditanyakan mengikuti panduan yang telah dibuat sebelumnya. Pertanyaan panduan ini dinamakan interview guide.
Wawancara merupakan metode pengumpulan data dengan jalan tanya jawab sepihak yang dilakukan secara sistematis dan berlandaskan kepada tujuan penelitian. Tanya jawab ‘sepihak’ berarti bahwa pengumpul data yang aktif bertanya, sermentara pihak yang ditanya aktif memberikan jawaban atau tanggapan. Dari definisi itu, kita juga dapat mengetahuibahwa Tanya jawab dilakukan secara sistematis, telah terencana, dan mengacu pada tujuan penelitian yang dilakukan.
2.3.1.3 Angket atau Kuesioner Angket atau kuesioner adalah teknik pengumpulan data melalui formulirformulir yang berisi pertanyaan-pertanyaan yang diajukan secara tertulis pada seseorang atau sekumpulan orang untuk mendapatkan jawaban atau tanggapan dan informasi yang diperlukan oleh peneliti (Mardalis, 2008: 66)
2.3.1.4 Studi Pustaka Menurut Nazir (1998: 112) “Studi kepustakaan merupakan langkah yang penting dimana setelah seorang peneliti menetapkan topik penelitian, langkah selanjutnya adalah melakukan kajian yang berkaitan dengan teori yang berkaitan dengan topik penelitian.
28
Dalam pencarian teori, peneliti akan mengumpulkan informasi sebanyak-banyaknya dari kepustakaan yang berhubungan. Sumber-sumber kepustakaan dapat diperoleh dari : buku, jurnal, majalah, hasil-hasil penelitian (tesis dan disertasi), dan sumber-sumber lainnya yang sesuai (internet, koran dll)”.
2.3.2
Metode Object Oriented Analysis and Design
2.3.2.1 Konsep Object Oriented Analysis and Design (OOAD) Metodologi Booch’s Object Oriented Analysis & Design, selanjutnya disingkat OOAD, merupakan penggabungan 3 (tiga) pendekatan, yaitu: Object Oriented Design (OOD), Object Oriented Analysis (OOA) dan Object Oriented Programming (OOP). OOA merupakan metode analisis yang memeriksa kebutuhan (requirement) berdasarkan prespektif pengumpulan obyek-obyek dan kelas-kelas dalam sebuah domain problem, sedangkan OOD merupakan sebuah metode mendesain yang mencakup proses pendekompoisisan obyek dan digambarkan dalam notasi sehingga bisa menggambarkan static dan dynamic model sistem baik secara logical dan/atau physical (Booch, et al, 2007: 42). Berdasarkan pengertian ini, ada 2 (dua) hal penting yang harus ditekankan dalam OOD, yaitu: 1.
OOD menggunakan teknik object oriented decomposition
2.
Menggunakan notasi yang berbeda untuk menggambarkan model logical struktur obyek dan kelas, dan model physical dari arsitektur
29
modul dan proses dalam sebuah aspek sistem baik statis maupun dinamis.
OOP merupakan sebuah metode untuk mengimplementasikan program yang diorganisasikan sebagai kumpulan obyek dimana tiap-tiap obyek merupakan instan dari sebuah kelas dan kelas merupakan salah satu dari kumpulan kelas yang saling berhubungan secara hirarki menggunakan inheritance relationship (Booch, et al, 2007: 41). Berdasarkan pengertian ini, ada 3 (tiga) hal penting yang harus ditekankan dalam OOP, yaitu: 1. OOP menggunakan obyek sebagai dasar dalam membangun program, bukan algoritma. 2. Obyek merupakan instan dari sebuah kelas 3. Setiap kelas dihubungkan menggunakan inheritance relationship atau yang kita kenal dengan istilah pewarisan, sehingga bahasa pemograman yang tidak mendukung inheritance tidak bisa mengimplementasikan OOP. Hubungan antara OOA, OOD dan OOP adalah: hasil pemodelan atau pengumpulan obyek dari OOA akan digunakan oleh OOD dan hasil dari OOD akan digunakan sebagai blueprint untuk membangun sistem dengan menggunakan OOP..
30
2.3.2.2 Proses Dalam OOAD 1. Macro Process Proses makro merupakan penjelasan keseluruhan proses dari siklus hidup pengembangan sistem yang menyediakan sebuah kerangka kerja untuk proses mikro, proses mikro itu sendiri terdapat pada tahap analisis dan desain. Tahapan dalam proses makro adalah sebagai berikut: a. Requirement Pada tahap requirement menjelaskan tentang bagaimana membuat dan menjaga sebuah perjanjian kerjasama dengan customer dan stakeholder mengenai apa yang harus dilakukan pada pembuatan sistem, misalnya kebutuhan-kebutuhan dari suatu sistem seperti fungsi-fungsi apa saja yang akan digunakan oleh sistem, fitur-fitur apa saja yang akan dipakai dalam pembuatan sistem, siapa saja user yang terlibat atau yang memakai sistem tersebut dan lain sebagainya. Selain itu, tahapan ini juga mendefinisikan batasan-batasan dari suatu sistem yang akan dibuat. b. Analysis and Design Tahapan ini menjelaskan bagaimana mengkonversi kebutuhankebutuhan sistem yang telah dibuat sebelumnya menjadi sebuah bentuk rancangan sistem. Yang mana rancangan tersebut disajikan sebagai spesifikasi
dari
implementasi
sistem
dalam
memilih
lingkungan
penerapannya. Selain itu, tahapan analisis dan desain juga mencakup dalam mengembangkan sebuah arsitektur/bentuk rancangan yang kokoh untuk
31
sebuah sistem dan menetapkan mekanisme umum yang harus digunakan oleh elemen-elemen yang berbeda dari sistem. c. Implementation Setelah membuat suatu kebutuhan sistem, menganalisis dan merancang sistem yang akan dibuat. Kemudian pada tahap ini dilakukan implementasi unit sistem dan menggabungkan rancangan dengan sistem, maksudnya adalah mengimplementasikan rancangan tersebut dalam sebuah sistem atau program dalam bentuk coding program. Selain itu juga menghasilkan sebuah sistem yang sudah dapat dijalankan. d. Test Tes/pengujian dilakukan untuk meyakinkan bahwa sistem telah sesuai dengan kebutuhan-kebutuhan yang telah dibuat sebelumnya (kebutuhan-kebutuhan tersebut adalah menerapkan yang sewajarnya). Memvalidasi fungsi sistem yang telah konkrit kemudian didemonstrasikan bahwa produk software tersebut sesuai dengan kebutuhan dan rancangan yang telah dibuat sebelumnya. e. Deployment Meyakinkan
bahwa
produk
software
tersebut
(termasuk
implementasi dan pengujian) telah tersedia untuk end user atau sudah dapat digunakan oleh pengguna akhir. Proses makro memiliki aktivitas-aktivitas pendukung di dalam pembuatan software-nya yang mencakup Project Management, Configuration and Change Management dan Environment. Penjelasan mengenai aktivitas pendukung tersebut adalah sebagai berikut:
32
1.
Project Managemment Project Manajement dilakukan untuk mengelola proyek pengembangan software, meliputi perencanaan, staffing dan monitoring proyek serta mengatur resiko yang mungkin terjadi.
2.
Configuration and Change Management Mengidentifikasi konfigurasi setiap item, mengontrol perubahan pada setiap item dan mengatur konfigurasi pada setiap item.
3.
Environment Menyediakan sebuah lingkungan pengembangan software, meliputi proses keduanya (project management, configuration dan change management) dan alat-alat yang mendukung tim pengembang software. Jadi pada environment, perusahaan menyediakan sebuah lingkungan untuk pengembangan sebuah software serta menyediakan alat-alat apa saja yang dibutuhkan oleh pengembang software dalam mengerjakan proyeknya.
Gambar 2.2 adalah Gambaran dari setiap tahapan dalam proses makro
Gambar 2.2 Tahapan dan Aktivitas Proses Makro (Booch, et al: 2007: 263)
33
2. Micro Process Pada proses mikro ini, meliputi proses analysis and design (proses mikro) dengan melihat aktivitas apa yang dilaksanakan dan mengerjakan produk apa yang dihasilkan. Proses mikro merupakan bagian dari proses makro seperti yang terdapat pada Gambar 2.3.
Gambar 2.3 Proses Mikro pada Proses Makro (Booch, et al, 2007: 273)
Pada analisis terfokus pada behavior (perilaku) bukan form (bentuk). Dalam analisis mencari model dunia dengan mengidentifikasi unsur-unsur yang membentuk kosa kata yang berasal dari problem domain dan mendeskripsikan roles, responsibilities dan collaborations. Sedangkan pada desain diciptakan unsurunsur yang menyediakan behavior dari unsur analisis yang diperlukan (Booch, et al, 2007: 272 – 276). Produk utama dari proses mikro ialah: 1.
Architecture description, menjelaskan arsitektur sistem, termasuk deskripsi mekanisme umum. Uraian tersebut meliputi arsitektural aspek penting dari analisis/desain model.
2.
Analysis/design model, mencakup analisis dan elemen desain solusi perangkat lunak dan organisasi mereka, serta realisasi yang
34
menjelaskan bagaimana kebutuhan perilaku sistem yang diwujudkan dalam hal elemen-elemen. Di dalam proses mikro terdiri dari 4 aktivitas seperti yang tergambar pada Gambar 2.4, aktivitas-aktivitas yang terdapat pada proses mikro ialah: a. Identify the elements Menemukan elemen-elemen yang akan dikerjakan. b. Define the collaborations between the elements Mendeskripsikan bagaimana mengidentifikasi kerjasama antara elemen untuk menyediakan kebutuhan tingkah laku sistem. c. Define the relationships between the element Mendefinisikan hubungan antar elemen untuk mendukung kerjasama antar elemen. d. Define the semantics of the elements Membangun behavior dan attributes dari pengidentifikasian elemen. Menyiapkan elemen untuk level abstraksi selanjutnya.
Gambar 2.4 Aktivitas Proses Mikro (Booch, et al, 2007: 283)
35
2.3.2.3 Aktivitas Utama dalam Object Oriented Analysis and Design (OOAD) Pada metodologi OOAD dalam pengembangan sistem (Booch et al, 2007: 281-301), Metodologi OOAD memiliki 4 aktivitas utama yaitu Inception, Elaboration, Construction, dan Transition. Aktifitas OOAD secara keseluruhan digambarkan pada Gambar 2.5. 1. Inception Tahapan Inception (awal) pada pengembangan sistem dengan metode OOAD ini ialah tahap membangun arsitektur sistem yang benarbenar memprioritaskan system requirements, tanpa melihat sisi secara teknis (pemrograman, database, dsb.). Pada tahap membangun arsitektur Sistem ini, difokuskan pada perancangan elemen-elemen dan subsistem dan mengalokasikan fungsi-fungsi untuk elemen dan subsistem supaya memenuhi sistem requirements. 2. Elaboration Secara singkat tahap elaboration adalah tahap perincian sistem. Pada tahap ini, adalah merincikan setiap tahapan yang sudah dibuat pada tahap inception sebagai bentuk peralihan dari pendekatan sistem arsitektur yang berfokus hanya pada system requirement dan bagaimana sistem itu beroperasi ke pendekatan sistem arsitektur secara teknis. 3. Construction Tahap Construction adalah tahapan paling bawah (low-level) dari penggambaran sistem. Pada tahap ini, sistem yang akan dibuat dideskripsikan secara lebih rinci dengan pendekatan ke sisi teknis
36
pemrogramannya. Perancangan database, fitur-fitur sistem, interface dan seluruh deskripsi teknis mengenai sistem dijelaskan pada fase ini. 4. Transition Pada tahap akhir adalah tahap dimana sistem sudah siap untuk digunakan oleh user. Tahap ini menampilkan hasil dari uji coba sistem.
Gambar 2.5 Tahapan keseluruhan OOAD (Booch, et al. 2007: 263)
2.3.3
Pengujian Sistem Pengujian adalah proses pemeriksaan/evaluasi sistem atau komponen
sistem secara manual atau otomatis untuk memverifikasi apakah sistem memenuhi kebutuhan-kebutuhan yang dispesifikasikan/mengidentifikasi perbedaan antara hasil yang diharapkan dengan hasil yang terjadi (Pressman, 2010: 526). Terdapat 2 jenis pengujian sistem yaitu Black Box Testing dan White Box Testing.
37
2.3.4.1 White Box Testing Menurut Pressman (2010: 533), White-Box Testing adalah metode desain test case yang menggunakan struktur kontrol desain prosedural untuk memperoleh test case. Dengan menggunakan metode pengujian ini akan didaptkan test cases: 1. Memberikan jaminan bahwa semua jalur independen pada suatu modul telah digunakan paling tidak satu kali 2. Menggunakan semua keputusan logis pada sisi true dan false 3. Mengekseskusi semua looping pada batasan tertentu 4. Dan menggunakan struktur data internal yang menjamin validitasnya 2.3.4.2 Black Box Testing Menurut Pressman (2010: 551), Black-Box Testing adalah metode pengujian yang berfokus pada persyaratan fungsional perangkat lunak. Pengujian ini berusaha menemukan kesalahan dalam kategori sebagai berikut : 1. Fungsi – fungsi yang tidak benar atau hilang, 2. Kesalahan interface, 3. Kesalahan dalam struktur data atau akses database eksternal, 4. Kesalahan kinerja 2.3.4.3 Alasan menggunakan Black Box Testing Pada Black Box Testing kita mencoba beragam masukan dan memeriksa keluaran yang dihasilkan. Kita dapat mempelajari apa yang dilakukan kotak, tetapi tidak mengetahui sama sekali mengenai cara konversi dilakukan. Teknik ini juga dapat digunakan untuk pengujian berbasis skenario, dimana isi dalam sistem
38
mungkin tidak tersedia untuk diinspeksi melainkan masukan dan keluaran yang diidentifikasikan dengan use case dan informasi analis yang lain (Pressman, 2010 : 547). Dalam skripsi ini peneliti melakukan pengujian sistem menggunakan metode Black Box Testing atau Pengujian Kotak Hitam karena, 1. Black Box Testing memungkinkan penulis untuk memiliki sebagian besar
tingkat
pengujian,
yang
sebagian
besarnya
dapat
diimplementasikan dengan Black Box Testing 2. Black Box Testing bukan merupakan alternatif dari pengujian White Box Testing.
Sebaliknya,
Black
Box
Testing
adalah
pendekatan
komplementer yang mungkin untuk mengungkap kelas yang berbeda dari kesalahan daripada metode White Box Testing. 3. Untuk tingkat pengujian yang dapat dilakukan baik dengan White Box Testing, Black Box Testing memerlukan lebih sedikit sumber dibandingkan dengan yang dibutuhkan oleh White Box Testing pada paket software yang sama. Hal itu dikarenakan karakter White Box Testing membatasi penggunaanya untuk modul software yang sangat berisiko tinggi untuk gagal, yang sangat penting untuk mengidentifikasi dan mengoreksi sebanyak mungkin kesalahan software.
39
2.3.4
Tools
2.3.4.1 Unified Modelling Language (UML) Diagram UML UML menawarkan sembilan diagram yang dikelompokkan menjadi lima perspektif berbeda untuk memodelkan suatu sistem. Diagram UML menyajikan perspektif yang berbeda mengenai sistem informasi. Bagian berikut menjelaskan berbagai diagram UML beserta pengertiannya (Whitten & Bentley, 2005 : 417419). a. Context Diagram Context Diagram merupakan tingkatan tertinggi dalam diagram aliran data dan hanya memuat satu proses, menunjukkan sistem secara keseluruhan. Proses tersebut diberi nomor nol. Semua entitas eksternal yang ditunjukkan pada diagram konteks berikut aliran data-aliran data utama menuju dan dari sistem. Diagram tersebut tidak memuat penyimpanan data dan tampak sederhana untuk diciptakan, begitu entitas-entitas eksternal serta aliran data-aliran data menuju dan dari sistem diketahui menganalisis dari wawancara dengan user dan sebagai hasil analisis dokumen.
40
Gambar 2.6 Contoh Context Diagram (Booch, et al, 2007: 160) b. Use Case Diagram Use case diagram adalah diagram yang menggambarkan interaksi antara sistem dengan sistem eksternal dan pengguna. Dengan kata lain, secara grafis menggambarkan siapa yang akan menggunakan sistem dan dengan cara apa pengguna mengharapkan untuk berinteraksi dengan sistem. Sebagaimana pada contoh use case diagram pada Gambar 2.6 sebuah use case diagram melukiskan (Whitten & Bentley, 2005 : 257260) : 1) Actor Actor merupakan istilah yang digunakan untuk menggambarkan pengguna aplikasi atau apapun yang berinteraksi dengan sistem
41
untuk mengolah informasi. Actor bisa berupa orang, hardware, atau sistem informasi lain yang berinteraksi dengan use case 2) Use case Use case menggambarkan fungsi sistem dari perspektif user eksternal dengan cara yang mereka pahami. Use case dibuat berdasarkan proses-proses yang dilakukan untuk kepentingan actor untuk menggambarkan apa yang dikerjakan oleh aplikasi, bukan bagaimana aplikasi mengerjakannya (logical). 3) Relationship Relationship dilukiskan sebagai garis lurus antara dua simbol pada use-case diagram. Makna dari relationship berbeda, tergantung pada bagaimana garis lurus digambarkan dan apa jenis simbol yang dihubungkan. Berikut ini adalah perbedaan relationship pada usecase diagram : a) Association Association merupakan relationship antara actor dengan use case digambarkan sebagai sebuah garis lurus tanpa putus antara actor dan use case. b) Extends Extends digunakan untuk menggambarkan hubungan antar use case yang menunjukkan bahwa satu use case merupakan fungsionalitas dari use case yang lain jika kondisi atau syarat tertentu dipenuhi.
42
c) Uses (includes) Hubungan uses menggambarkan bahwa satu use case seluruhnya meliputi fungsionalitas dari use case lainnya. d) Depends on Hubungan depends on sangat membantu untuk mengetahui use case mana yang memiliki ketergantungan pada use case lainnya yang bertujuan untuk menentukan urutan dalam pengembangan use case. e) Inheritance Hubungan inheritance terjadi ketika dua atau lebih actor menggunakan use case yang sama. Setiap use case pada use case diagram dijelaskan secara detail pada documenting abstract and extension use-case narratives. (Whitten & Bentley, 2005: 250).
Gambar 2.7 Contoh Use Case Diagram (Booch, et al, 2007: 178)
43
c. Use Case Narrative Deskripsi tekstual kegiatan bisnis dan bagaimana pengguna akan berinteraksi dengan sistem dalam menyelesaikan suatu tugas. Berbeda dengan use case diagram, use case desain sistem menggunakan sebuah narasi dari pandangan pengguna sistem, use case desain sistem lebih bersifat percakapan (dialog). d. Activity Diagram Secara grafis digunakan untuk menggambarkan rangkaian aliran aktivitas baik proses bisnis atau use case. Diagram ini juga dapat digunakan untuk memodelkan action yang akan dilakukan saat sebuah operasi di eksekusi, dan memodelkan hasil dari action tersebut.
Gambar 2.8 Contoh Activity Diagram (Booch, et al, 2007: 189)
44
e. Class Diagram Diagram ini menunjukkan kelas obyek yang menyusun sistem juga hubungan antara kelas tersebut. Class diagram mendeskripsikan jenisjenis obyek dalam sistem dan berbagai macam hubungan dan interaksi diantara mereka.
Gambar 2.9 Contoh Class Diagram (Booch, et al, 2007: 199)
f. Sequence Diagram Secara grafis menggambarkan bagaimana obyek berinteraksi dengan satu sama lain melalui pesan pada eksekusi sebuah use case atau operasi. Diagram ini mengilustrasikan bagaimana pesan terkirim dan diterima diantara obyek.
45
Gambar 2.10 Contoh Sequence Diagram (Booch, et al, 2007: 211)
g. Deployment Diagram Diagram ini mendeskripsikan arsitektur fisik dalam istilah “node” untuk hardware dan software dalam sistem. Diagram ini menggambarkan konfigurasi komponnen-komponen software run-time, prosesor, dan peralatan yang membentuk arsitektur sistem.
46
Gambar 2.11 Contoh Deployment Diagram (Booch, et al, 2007: 171)
2.3.4.2 Objective-C Dennis Ritchie dari AT&T Bell Laboratories merintis bahasa pemrograman C di awal 1970an. Namun, bahasa pemrograman ini tidak mendapatkan popularitas sampai akhir tahun 1970an. Hal ini dikarenakan tidak tersedianya C compiler secara komersil diluar Bell Laboratories. Awal popularitas Bahasa pemrograman C berkesinambungan dengan populernya sistem operasi UNIX, yang hampir seluruhnya ditulis dalam bahasa C.
47
Brad J.Cox adalah orang yang merancang bahasa Objective-C di awal tahun 1980an. Objective-C berasal dari bahasa yang disebut Smalltalk-80, yang ditambahkan sebagai ekstensi kedalam bahasa pemrograman C untuk membentuk bahasa pemrograman baru yang memungkinkan kita menambahkan dan memanipulasi obyek. Bahasa hasil ekstensi itulah yang disebut Objective-C. NeXT Software mempatenkan bahasa Objective-C pada tahun 1988 dan mengembangkan libraries-nya. Pada tahun 1992, Bahasa Objective-C ditambahkan untuk pengembangan Sistem Operasi GNU milik Free Software Foundation (FSF). Hak cipta untuk produk FSF dipegang oleh FSF. Hak cipta tersebut dibawah naungan GNU Public License (Kochan, 2013: 1 – 2).
2.3.4.3 Framework Cocoa on Objective-C Pada tanggal 20 Desember tahun 1996, Apple Computer mengumumkan bahwa Next Software dan NEXTEP menjadi fondasi utama untuk sistem operasi OS X milik Apple berikutnya. Development environment tersebut dinamakan Cocoa. Dengan menggabungkan bahasa Objective-C dengan Project Builder dan Interface Builder, Apple membuat development environment yang sangat kuat untuk pengembangan aplikasi berbasis Mac OS X. Pada tahun 2007, Apple merilis update untuk bahasa Objective C dan menamakannya sebagai Objective-C 2.0. Ketika iPhone diluncurkan pada tahun 2007, banyak developer aplikasi yang tertarik untuk mengembangkan aplikasi untuk revolutionary device tersebut. Pada awalnya, Apple tidak begitu terbuka kepada pengembangan aplikasi dari pihak ketiga. Pengembang pihak ketiga hanya diizinkan untuk mengembangkan
48
aplikasi untuk iPhone hanya berbasis Web. Karena banyak keterbatasan pada aplikasi yang hanya bisa berjalan pada web browser dari iPhone sangat mengecewakan para pengembang pihak ketiga, Apple pada akhirnya mengizinkan pengembang Aplikasi pihak ketiga untuk mengembangkan Aplikasi native. Native Application adalah aplikasi yang di-install pada device (Kochan, 2013: 1 – 3). 2.3.4.4 MVC Programming Objective-C Apple (2012, 43 – 44) menjelaskan secara sederhana konsep MVC terdiri dari tiga bagian yaitu bagian Model, bagian View dan bagian Controller. Didalam website dinamis setidaknya terdiri dari 3 hal yang paling pokok, yaitu basis data, logika aplikasi dan cara menampilkan halaman website. 3 hal tersebut direpresentasikan dengan MVC yaitu model untuk basis data, view untuk cara menampilkan halaman website dan controller untuk logika aplikasi. 1. Model Merepresantiskan struktur data dari website yang bisa berupa basis data maupun data lain, misalnya dalam bentuk file teks atau file xml. Biasanya didalam model akan berisi class dan fungsi untuk mengambil, melakukan update dan menghapus data website. Karena sebuah website biasanya menggunakan basis data dalam menyimpan data maka bagian Model biasanya akan berhubungan dengan perintah-perintah query SQL. Model bisa dibilang khusus digunakan untuk melakukan koneksi ke basis data oleh karena itu logika-logika pemrograman yang berada didalam model juga harus yang berhubungan dengan basis data. Misalnya saja pemilihan kondisi tetapi untuk memilih melakukan query yang mana.
49
2. View Merupakan informasi yang ditampilkan kepada pengunjung website. Sebisa mungkin didalam View tidak berisi logika-logika kode tetapi hanya berisi variabel-variabel yang berisi data yang siap ditampilkan. View bisa dibilang adalah halaman website yang dibuat menggunakan HTML dengan bantuan CSS atau JavaScript. Didalam view jangan pernah ada kode untuk melakukan koneksi ke basis data. View hanya dikhususkan untuk menampilkan data-data hasil dari model dan controller. 3. Controller Controller merupakan penghubung antara Model dan View. Didalam Controller inilah terdapat class dan fungsi-fungsi yang memproses permintaan dari View kedalam struktur data didalam Model. Controller juga tidak boleh berisi kode untuk mengakses basis data. Tugas controller adalah menyediakan berbagai variabel yang akan ditampilkan di view, memanggil model untuk melakukan akses ke basis data, menyediakan penanganan error, mengerjakan proses logika dari aplikasi serta melakukan validasi atau cek terhadap input.
Contoh pemodelan MVC Programming sebagaimana pada Gambar 2.7 menjelaskan tentang lukisan. Lukisan sebagai bentuk atau wujud yang terlihat (view) memiliki unsur pelukis sebagai controller membentuk lukisan tersebut. Hubungan antara controller dengan model adalah hubungan antara control dengan data, maka dapat diartikan pelukis dapat melukis dengan menggunakan canvas dan
50
cat air dengan menggunakan unsur yang wajib ada yaitu air dengan jumlah yang tidak tentu. Pelukis dapat melukis dengan obyek lukisan atau tanpa obyek lukisan (khayalan pelukis).
Gambar 2.12 Contoh MVC Pattern (Apple, 2012: 50)
2.3.4.5 Java Script Object Notation (JSON) Berdasarkan ECMA International (2013: ii), JSON (JavaScript Object Notation) adalah format pertukaran data yang ringan, mudah dibaca dan ditulis oleh manusia, serta mudah diterjemahkan dan dibuat (generate) oleh komputer. Format ini dibuat berdasarkan bagian dari Bahasa Pemprograman JavaScript, Standar ECMA-262 Edisi ke-3 - Desember 1999. JSON merupakan format teks yang tidak bergantung pada bahasa pemprograman apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C termasuk C, C++, C#, Java,
51
JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data. JSON terbuat dari dua struktur: 1. Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan sebagai obyek (object), rekaman (record), struktur (struct), kamus (dictionary), tabel hash (hash table), daftar berkunci (keyed list), atau associative array. 2. Daftar nilai terurutkan (an ordered list of values). Pada kebanyakan bahasa, hal ini dinyatakan sebagai larik (array), vektor (vector), daftar (list), atau urutan (sequence). Struktur-struktur data ini disebut sebagai struktur data universal. Pada dasarnya, semua bahasa pemprograman moderen mendukung struktur data ini dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian karena format data mudah dipertukarkan dengan bahasa-bahasa pemprograman yang juga berdasarkan pada struktur data ini.
2.3.4.6 Hypertext Preprocessor (PHP) Menurut Pratama (2010: 9), pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama Form Interpreted (FI), yang wujudnya berupa sekumpulan skrip yang digunakan untuk mengolah data formulir dari web.
52
Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan menamakannya PHP/FI. Dengan perilisan kode sumber ini menjadi sumber terbuka, maka banyak pemrogram yang tertarik untuk ikut mengembangkan PHP. Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini, interpreter PHP sudah diimplementasikan dalam program C. Dalam rilis ini disertakan juga modulmodul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan. Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada Juni 1998, perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis tersebut sebagai PHP 3.0 dan singkatan PHP diubah menjadi akronim berulang PHP: Hypertext Preprocessing. Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi obyek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi obyek.
53
2.3.4.7 PHP-JSON Web Service Web Services adalah sebuah layanan yang disediakan sebuah sistem untuk meningkatkan kolaborasi antar sistem. Webservice disediakan oleh suatu sistem, misalkan sebuah website yang menyediakan layanan kepada sistem yang lain. (Pratama, 2010: 67). Komunikasi antar sistem tersebut menggunakan sebuah format yang bersifat universal, sehingga walaupun sistem yang berhubungan adalah berbeda platform, sistem operasi maupun berbeda bahasa pemrograman akan tetap bisa saling komunikasi. Isi webservice berupa data atau informasi yang diminta oleh client dalam bentuk sebuah format yang bersifat universal (JSON atau XML). Sedangkan Yang dibutuhkan Untuk membuat sebuah webservice adalah sebuah webserver seperti Apache atau lightpd, apabila ada pemrosesan data maka diperlukan sebuah bahasa pemrograman atau server side scripting yang kemudian mengubah hasil pengelolahan data tersebut menjadi format JSON atau XML Sebuah sistem dapat menyediakan Webservice dengan menggunakan bahasa pemrograman apa saja seperti PHP/Java/Ruby/ C/Phtyon/Basic yang penting webservice tersebut dapat diakses melalui protokol HTTP. Sedangkan client atau pemakai webservice tersebut dapat menggunakan bahasa pemrograman apa saja seperti PHP/Javascript/ Java/Ruby/C/Phtyon atau apa saja dan tidak harus sama dengan bahasa pemrograman yang dipakai oleh penyedia Webservice. Yang penting client tersebut dapat melakukan request HTTP
54
dan dapat melakukan parsing format JSON atau XML. PHP dipilih karena sebuah Server Side Scripting yang populer untuk membuat website menjadi dinamis dan memilik fitur untuk mengubah data menjadi format JSON.
2.3.4.8 Database Management System (DBMS) 1. Pengertian DBMS Basis Data (Database) terdiri dari 2 kata, yaitu basis dan data. Basis dapat diartikan sebagai markas atau gudang. Tempat bersarang/berkumpul. Sedangkan data adalah representasi fakta dunia nyata yang mewakili suatu obyek seperti manusia (pegawai, siswa) barang, hewan dan sebagainya, yang direkam dalam bentuk angka, huruf, simbol, teks, Gambar bunyi atau kombinasinya. Basis Data sendiri didefinisikan dalam jumlah sudut pandang seperti: a. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. b. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redundansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan. c. Kumpulan/file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis. Basis data dan lemari arsip sesungguhnya memiliki prinsip kerja dan tujuan yang sama. Prinsip utamanya adalah pengaturan data/arsip. Dan tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan data/arsip.
55
Database Management System (DBMS) adalah software khusus yang disediakan untuk membuat, mengakses, mengontrol dan mengelola database. Inti dari DBMS adalah database engine. Database engine merespon commandcommand khusus untuk membuat database dan membuat, membaca, meng-update serta menghapus record di dalam database. Relational Database Management System (RDBMS) adalah database yang mengimplementasikan data sebagai bagian dari dua dimensi tabel yang terhubung melalui foreign key (Whitten & Bentley, 2005 : 524).
2. Arsitektur DBMS Arsitektur basis data dimaksudkan untuk membuat abstraksi terhadap basis data. Tujuannya agar DBMS dapat diakses secara efisien tanpa mengharuskan pemakai mengetahui detail tentang cara data disimpan dan dipelihara (Ramon & Pauline, 2010 : 53). Ada tiga level dalam arsitektur basis data : a. Level Eksternal Level eksternal yang menyatakan lapisan pandangan atau subskema adalah level yang berhubungan secara langsung dengan pemakai. Pada level ini, pemakai cukup mengenal struktur data yang sederhana dalam basis data supaya bias mengakses basis data. Pemakai tidak perlu mengetahui detail tentang atribut data (misalnya ukuran data). Dengan menggunakan pandangan (view), pemakai dapat melihat data dengan bentuk yang berbeda dengan keadaan aslinya.
56
b. Level Konseptual Level konseptual (yang menyatakan skema konseptual) menjabarkan data apa yang tersimpan dalam basis data dan juga menjabarkan hubungan-hubungan antar data. Level ini biasa dipakai administrator basis data. c. Level Internal Level internal (yang menyatakan skema internal) adalah level yang berhubungan secara langsung dengan basis data danmenjabarkan bagaimana data disimpan dalam basis data. Level ini berurusan langsung dengan hal yang antara lai sebagai berikut: 1) Alokasi ruang penyimpanan data 2) Deskripsi rekaman dalam penyimpanan 3) Konversi data dan teknik enkripsi data 2.3.4.9 MySQL MySQL merupakan sistem manajemen database. Database merupakan struktur penyimpanna data. Untuk menambah, mengakses dan memproses data yang disimpan dalam database komputer, diperlukan sistem manajemen database seperti MySQL Server (Ramon & Pauline, 2010 : 181). MySQL adalah Relation Database Management System (RDBMS) yang didistribusikan secara gratis di bawah lisensi GPL (General Public License). MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Languange). Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan database server lainnya dalam query data. Hal ini terbukti untuk
57
query yang dilakukan oleh single user, kecepatan query MySQL bisa sepuluh kali lebih cepat dari PostgreSQL dan lima kali lebih cepat dibandingkan Interbase (Prasetyo, 2003 : 1-4). Berikut ini beberapa keistimewaan yang dimiliki oleh MySQL : a. Portability MySQL dapat berjalan stabil pada berbagai sistem operasi diantaranya adalah seperti Windows, Linux, FreeBSD, Mac OS X Server, Solaris, Amiga, HP-UX dan masih banyak lagi. b. Open Source MySQL didistribusikan secara open source (gratis), dibawah lisensi GPL sehingga anda dapat menggunakannya secara Cuma-cuma tanpa dipngut biaya sepeser pun. c. Multiuser MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan
tanpa
mengalami
masalah
atau
konflik.
Hal
ini
memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan. d. Performance Tuning MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
58
e. Column Types MySQL memiliki ragam tipe kolom yang sangat kompleks, seperti signed/unsigned integer, float, double, char, varchar, text, blob, date, time, datetime, timestamp, year, set serta enum. f. Command and Functions MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam query. g. Security MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta password terenkripsi. h. Scalability dan Limits MySQL mampu menangani database dalam skala besar, dengan jumlah records lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu, batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya. i. Connectivity MySQL dapat melakukan koneksi dengan client menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT). j. Lokalisation MySQL dapat mendeteksi pesan kesalahan (error code) pada client dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya.
59
k. Interface MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface). l. Clients dan Tools MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertakan petunjuk online. m. Struktur tabel MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER
TABLE,
dibandingkan
basis
data
lainnya
semacam
PostgreSQL ataupun Oracle.
2.4
Konsep Tenaga Kerja Indonesia
2.4.1
Pengertian Tenaga Kerja Indonesia Ada beberapa pendapat mengenai pengertian Tenaga Kerja Indonesia.
Menurut Pasal 1 bagian (1) Undang-Undang Nomor 39 Tahun 2004 tentang Penempatan dan Perlindungan Tenaga Kerja Indonesia di Luar Negeri, TKI adalah setiap warga negara Indonesia yang memenuhi syarat untuk bekerja di luar negeri dalam hubungan kerja untuk jangka waktu tertentu dengan menerima upah. Sedangkan menurut buku pedoman pengawasam perusahaan jasa tenaga kerja Indonesia adalah warga negara Indonesia baik laki-laki maupun perempuan yang melakukan kegiatan di bidang perekonomian, sosial, keilmuan, kesenian, dan
60
olahraga profesional serta mengikuti pelatihan kerja di luar negeri baik di darat, laut maupun udara dalam jangka waktu tertentu berdasarkan perjanjian kerja yaitu suatu perjanjian antara pekerja dan pengusaha secara lisan dan atau tertulis baik untuk waktu tertentu maupun untuk waktu tidak tertentu yang memuat syarat-syarat kerja, hak dan kewajiban para pihak. Dengan adanya perjanjian kerja ini TKI akan lebih terlindungi apabila nantinya dikemudian hari pihak majikan atau pihak perusahaan tmpat TKI bekerja “wanprestasi”maka TKI dapat menentukan sesuai perjanjian kerja yang telah dibuat sebelumnya. Sementara itu dalam Pasal 1 Kep. Manakertran RI No Kep 104A/Men/2002 tentang penempatan TKI keluar negeri disebutkan bahwa TKI adalah baik laki-laki maupun perempuan yang bekerja di luar negeri dalam jangka waktu tertentu berdasarkan perjanjian kerja melalui prosedur penempatan TKI. Prosedur penempatan TKI ini harus benar-benar diperhatikan oleh calon TKI yang ingin bekerja ke luar negeri tetapi tidak melalui prosedur yang benar dan sah maka TKI tersebut nantinya akan menghadapi masalah di negara tempat ia bekerja karena CTKI tersebut dikatakan TKI ilegal karena datang ke negata tujuan tidak melalui prosedur penempatan TKI yang benar. Berdasarkan beberapa pengertian TKI tersebut, maka dapat dikemukakan bahwa TKI adalah setiap warga negara Indonesia yang memenuhi syarat untuk bekerja di luar negeri dalam jangka waktu tertentu berdasarkan perjanjian kerja melalui prosedur penempatan TKI dengan menerima upah.
61
2.4.2
Konsep Penempatan dan Perlindungan Tenaga Kerja Indonesia Menurut UU No.39 Tahun 2004 tentang penempatan dan perlindungan
tenaga kerja indonesia disebutkan bahwa pemerintah bertanggung jawab atas perlindungan tenaga kerja Indonesia mulai dari keberangkatan, penempatan, pada saat bekerja hingga pemulangan. Perlindungan tersebut termasuk didalamnya perlindungan hukum dan hakhak sebagai warga negara Indonesia, sehingga pemerintah membentuk Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia (BNP2TKI) dengan tugas dan fungsi umum sebagai badan non-departemen yang menjamin penempatan serta perlindungan TKI. Permasalahan yang sering terjadi pada TKI yang sedang bekerja di luar negeri antara lain adalah penyanderaan oleh majikan, kekerasan oleh majikan, dan permasalahan kontrak kerja habis namun TKI tersebut masih harus bekerja. 2.5
Konsep Tenaga Kerja Dalam Islam Tenaga kerja adalah segala usaha dan ikhtiar yang dilakukan oleh anggota
badan atau pikiran untuk mendapat imbalan yang pantas. Tenaga kerja sebagai faktor produksi mempunyai arti yang besar. Karena semua kekayaan alam tidak berguna bila tidak dieksploitasi oleh manusia dan diolah oleh buruh. Alam telah memberikan kekayaan yang tidak terhitung, tetapi tanpa usaha manusia semua akan tersimpan. Banyak Negara di Asia Timur, Timur Tengah, Afrika dan Amerika Selatan yang kaya akan sumber alam tapi karena mereka belum mampu menggalinya maka mereka tetap miskin dan terbelakang, oleh karena itu disamping
62
adanya sumber alam juga harus ada rakyat yang bekerja sungguh-sungguh, tekun dan bijaksana agar mampu mengambil sumber alam untuk kepentingannya. Al Qur’an telah memberi penekanan yang lebih terhadap tenaga manusia. Ini dapat dilihat dari petikan surat An Najm: “Dan bahwasanya seorang manusia tiada memperoleh selain apa yang diusahakannya.(An Najm: 39) Semakin bersungguh-sungguh dia bekerja semakin banyak harta yang diperolehnya “Untuk lelaki ada bagian dari usaha yang dikerjakannya dan untuk wanita ada bagian pula dari usaha yang dikerjakannya. (An Nisa’:32) Siapa yang bekerja keras akan mendapat ganjaranmasing-masing yang sewajarnya. Prinsip tersebut belaku bagi individu dan juga Negara. Al Qur’an menunjukkan prinsip asas tersebutdalam surat Al Anfaal: “Demikian itu karena sesungguhnya Allah sekali-kali tidak akan mengubah suatu nikmat yang telah dianugerahkan terhadap suatu kaum hingga kaumitu merubah apa yng ada pada mereka sendiri dan sesungguhnyaAllah Maha Mendengar LagiM aha Mengetahui”. Al Anfaal:53) Tidak ada kehidupan yang penuh dengan “kebahagiaan dan karunia” tanpa kerja keras. Manusia hendaknya bersungguh-sungguh untuk mencapai kehidupan yang gembira dan bahagia: “Sesungguhnya sesudah kesulitan itu ada kemudahan” (Al Insyirah:6)
63
Ayat tersebut menyatakan sutu hukum alam yang meyakini suatu kesukaran itu disusul dengan kebahagiaan dan kemudahan. (Zaenudin, 2012: 35 – 36) 2.6
Platform IOS IOS (sebelumnya iPhone OS) adalah sistem operasi perangkat bergerak
yang dikembangkan dan didistribusikan oleh Apple Inc. Sistem operasi ini pertama diluncurkan tahun 2007 untuk iPhone dan iPod Touch, dan telah dikembangkan untuk mendukung perangkat Apple lainnya seperti iPad dan Apple TV. Tidak seperti Windows Phone (Windows CE) Microsoft dan Android Google, Apple tidak melisensikan iOS untuk diinstal di perangkat keras non-Apple. Pada 12 September 2012, App Store Apple berisi lebih dari 700.000 aplikasi iOS, yang secara kolektif telah diunduh lebih dari 30 miliar kali. Sistem Operasi ini memiliki pangsa pasar 14,9% untuk unit sistem operasi perangkat bergerak telepon cerdas yang dijual pada kuartal ketiga 2012, terbanyak setelah Android Google. Pada bulan Juni 2012, iOS mencakup 65% konsumsi data web perangkat bergerak (termasuk di iPod Touch dan iPad). Pada pertengahan 2012, terdapat 410 juta perangkat bergerak yang diaktifkan. Menurut Apple pada tanggal 12 September 2012, 400 juta perangkat bergerak iOS telah dijual sepanjang bulan Juni 2012 (Walter 2011: 569). Antarmuka pengguna iOS didasarkan pada konsep manipulasi langsung menggunakan gerakan multisentuh. Elemen kontrol antarmukanya meliputi slider, switch, dan tombol. Interaksi dengan Sistem Operasi ini mencakup gerakan seperti geser, sentuh, jepit, dan jepit buka, masing-masing memiliki arti tersendiri dalam konteks sistem operasi iOS dan antarmuka multisentuhnya. Akselerometer internalnya dipakai oleh sejumlah aplikasi agar bisa merespon terhadap
64
pengguncangan alat (misalnya membatalkan tindakan) atau memutarnya dalam tiga dimensi (misalnya beralih dari mode potret ke lanskap). iOS diturunkan dari OS X, yang memiliki fondasi Darwin dan karena itu iOS merupakan sistem operasi Unix. iOS adalah versi bergerak dari sistem operasi OS X yang dipakai di komputer-komputer Apple. Di iOS, ada empat lapisan abstraksi, yaitu Core OS, Core Services, Media, dan Cocoa Touch. Versi terbaru sistem operasi ini (iOS 7) menyisihkan 1,5 s.d. 2 GB memori perangkat bergerak untuk partisi sistem dengan memakai 800 MB partisi (tergantung model) untuk iOS-nya saja Tampilan utama (yang dikenal sebagai "SpringBoard") menampilkan ikonikon dan sebuah dok dimana mereka bisa mengatur aplikasi yang sering digunakan. Tampilan utama akan tampil ketika mereka membuka tampilan layar tertutup atau dengan menekan tombol "Home" ketika berada di sebuah aplikasi. Latar belakang dapat dikostumisasi dengan cara lain, yaitu Jailbreak. Tampilan utama punya baris untuk menampilkan data, kekuatan sinyal, bluetooth, baterai. Sisanya layar dikhususkan untuk aplikasi yang terinstal. Bila passcode yang dibuat dan pengguna masuk pada perangkat, kode akses harus dimasukkan pada tampilan layar terkunci sebelum diberikan akses masuk ke tampilan utama. Sejak iOS 3.0, fungsi pencarian Spotlight telah diberikan pada tampilan utama paling kiri yang digunakan untuk mencari media (musik, video, podcast, dll.), aplikasi, surel, kontak, pesan, pengingat, kejadian di kalender, dan lainnya yang berkaitan. Aplikasi pihak ketiga tidak dapat dicari di Spotlight. Pada iOS 7,
65
fitur ini dapat diakses dengan menggesekan turun pada tampilan utama (kecuali untuk ujung atas dan bawah untuk membuka pusat notifikasi dan kontrol). Pada iOS 3.2 atau terbaru dengan perangkat yang didukung, pengguna dapat menggunakan gambar sebagai latar belakang tampilan utama. Fitur ini hanya tersedia pada generasi ketiga atau terbaru – iPhone 3GS dan terbaru, iPod Touch generasi ketiga dan terbaru, dan semua model iPad.
BAB III METODOLOGI PENELITIAN
3.1 Tempat dan Waktu Penelitian Tempat Penelitian
:
Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia (BNP2TKI)
Alamat
:
Jl. MT. Haryono Kav. 52, Jakarta Selatan
Waktu
:
21 Agustus – 14 September 2014
3.2 Data dan Perangkat Penelitian 3.2.1
Data Penelitian Data yang digunakan dalam pengembangan Sistem Informasi Geospasial
pada Perlindungan Tenaga Kerja Indonesia. 1. Data Identitas Tenaga Kerja Indonesia yang sudah siap diberangkatkan (BNP2TKI, 2014: 1-2). 2. Data Koordinat lokasi kedutaan Besar Indonesia di masing-masing Negara yang memiliki hubungan bilateral dengan Indonesia. (Google Maps, 2014).
60
67
3.2.2
Perangkat Penelitian Hardware yang dibutuhkan dalam Pengembangan Sistem Informasi
Geospasial pada Perlindungan Tenaga Kerja Indonesia adalah perangkat Macbook untuk merancang aplikasi, iPad dan iPhone sebagai wadah untuk menjalankan Aplikasi. Rincian dan spesifikasi dari setiap hardware adalah sebagai berikut: 1. Macbook Pro MD101 (mid. 2012) dengan spesifikasi :
2.5GHz dual-core Intel Core i5 processor (Turbo Boost up to 3.1GHz) 3MB L3 cache
4GB of 1600MHz DDR3 memory
512GB solid-state drive
VGA Intel HD Graphics 4000, 2GB
2. iPad Retina Display dengan spesifikasi:
Processor Dual-core A6X with quad-core graphics
Resolusi layar 2048 x 1536 pixels, 264 pixels per inch (ppi)
3. iPhone 4s Retina Display Tahun 2012 dengan spesifikasi:
Processor A5 Chip
Resolusi layar 960 x 640 pixels, 326 pixels per inc (ppi)
68
3.3 Metode Penelitian 3.3.1
Metode Pengumpulan Data
3.3.1.1 Observasi Observasi yang dilakukan peneliti ialah dengan melihat langsung sistem perlindungan yang tersedia pada Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia di Jl MT Haryono Kav 52, Jakarta pada tanggal 20 Agustus – 6 September 2014. Sistem perlindungan TKI kususnya pada monitoring keberadaan masih berdasarkan informasi statis yaitu mengetahui keberadaan terakir TKI berdasarkan lokasi penempatannya. Bentuk perlindungan yang menjadi pegangan TKI pun belum berupa perlindungan digital, hanya sebatas buku panduan hasil sosialisasi.
3.3.1.2 Wawancara Wawancara dilakukan untuk mendapatkan data tentang regulasi terkait dan masalah praktis apa saja yang sering ditemui yang berkaitan dengan perlindungan TKI. Wawancara tersebut dilakukan pada tanggal 28 Agustus 2014 pada Bapak Drs Muhammad Syafrie selaku Deputi bidang Perlindungan. Wawancara kedua dilakukan untuk mendapatkan informasi mengenai kegiatan yang dilakukan oleh BNP2TKI untuk para calon TKI pada tahap prakeberangkatan sebagai bahan untuk menentukan system requirement. Wawancara tersebut dilakukan pada tanggal 29 Agustus 2014 pada Bapak Ir Agusdin Subiantoro selaku Deputi bidang penempatan.
69
Kuesioner juga dilakukan untuk mendapatkan informasi dari TKI sebagai end-user dari Sistem SIGEPTKI ini. Kuesioner dilakukan pada TKI yang mengunjungi BNP2TKI dan dengan kriteria TKI dengan Negara Tujuan ke Malaysia dan Arab yang merupakan 2 Negara paling banyak terjadi masalah TKI.
3.3.1.3 Angket atau Kuesioner Angket atau kuesioner adalah teknik pengumpulan data melalui formulirformulir yang berisi pertanyaan-pertanyaan yang diajukan secara tertulis pada seseorang atau sekumpulan orang untuk mendapatkan jawaban atau tanggapan dan informasi yang diperlukan oleh peneliti (Mardalis: 2008: 66) Penelitian ini menggunakan angket atau kuesioner, daftar pertanyaannya dibuat secara berstruktur dengan bentuk pertanyaan pilihan berganda (multiple choice questions). Metode ini digunakan untuk memperoleh data tentang persepsi TKI tentang penempatan dan kebutuhan akan perlindungan TKI.
3.3.1.4 Studi Pustaka Studi pustaka dilakukan pada standar pengembangan sistem pada IOS yang tertulis pada Objective-C reference dari Apple developer program menggunakan Framework Cocoa pada Objective-C. Sebagai acuan regulasi juga dilakukan studi pustaka pada UU No. 39 Tahun 2004 tentang penempatan dan perlindungan TKI dan Perpres No. 81 Tahun 2006 tentang BNP2TKI.
70
Studi Pustaka juga dilakukan pada beberapa penelitian atau jurnal sejenis tentang Sistem Informasi Geospasial. Pertama, jika dibandingkan dengan jurnal tentang sistem informasi geospasial monitoring obyek tertentu dengan judul “Aplikasi SIG web untuk monitoring dan manajemen kualitas pendidikan sekolah menengah atas di kota Solo Jawa Tengah” (Priyono, 2013: 1), “Aplikasi sistem informasi geografi tingkat pencemaran industri di kabupaten gresik” (Triono, et al, 2008: 1 -2), dan “Applying internet geographic information system for water quality monitoring (Jankowsky, 2007: 1 - 2)” dengan sistem yang dikembangkan oleh penulis memiliki kesamaan yaitu memiliki fungsi monitoring suatu obyek tertentu beserta statusnya. Begitu juga dengan penelitian “Geospatial video monitoring of nearshore benthic habitats of western biscayne bay (florida) using the shallow-water positioning system” (Lirman, et al, 2008), “Application of GIS to biodiversity monitoring” (Department of Enviromental Sciences, 2003), dan “Aplikasi sistem informasi geografis pengindraan jauh untuk monitoring area sawah dengan data multitemporal” (Muharram, et al, 2013) yang melakukan monitoring near real time terhadap obyek tertentu.
3.3.2
Metode Pengembangan Sistem Untuk menyelesaikan penelitian ini, metode pengembangan yang dilakukan
ialah dengan menggunakan perancangan berbasis obyek OOAD dengan pendekatan Booch, et al (2007: 281 - 301), tahapan-tahapan yang dilaluinya yaitu:
71
3.3.2.1 Inception Pada Tahapan Inception ini adalah tahap awal dalam pengembangan sistem yang difokuskan sistem seperti apa yang akan dibuat. Tahap Inception ini memiliki beberapa proses diantaranya yaitu : 1. Determine System Requirements Tahapan ini adalah tahap menentukan kebutuhan-kebutuhan sistem, apa tujuan sistem ini dibuat dan fungsi apa saja yang terdapat pada sistem ini. Untuk menentukan kebutuhan-kebutuhan sistem perlu diketahui yaitu : a. Profil Instansi terkait Profil yang dimaksud adalah profil dari BNP2TKI mencakup latar belakang dibentuknya BNP2TKI, Visi dan misi BNP2TKI, struktur organisasi serta Tugas Pokok BNP2TKI. b. Visi Sistem Untuk mengetahui sistem apa yang akan dibuat secara garis besar, maka diperlukan visi dari sistem tersebut. c. System requirement fungsional Menentukan fungsi-fungsi apa saja yang terdapat pada sistem yang akan dibuat.
2. Define Boundary System Tahapan ini adalah mendefinisikan batasan dari sistem yang akan dibuat. Batasan tersebut bisa digambarkan melalui context diagram.
72
3. Determine Mission Use Cases Ini adalah tahap menentukan aktor-aktor yang terlibat dalam sistem ini dan hubungannya dengan sistem. Dalam diagram ini akan dapat diketahui tujuan dari masing-masing aktor menggunakan sistem yang akan dibuat.
4. Define System Use Cases Disini ialah ketika seluruh aktor telah dijelaskan apa tujuannya menggunakan sistem yang akan dibuat dan kemudian mendefinisikan apa saja yang dapat dilakukan oleh masing-masing aktor pada sistem yang akan dibuat.
3.3.2.2 Elaboration Pada tahap ini, seperti yang telah dijelaskan pada BAB sebelumnya ialah tahapan dimana pendekatan secara sistemis sistem menuju ke penjabaran yang lebih rinci menuju ke pendekatan secara teknis. Tahap elaboration pada pembuatan sistem ini dapat dipecah menjadi 2 tahapan yaitu: 1. Analisis Fungsional Sistem Analisis fungsional sistem adalah menjabarkan secara rinci setiap fungsi-fungsi pada sistem yang sudah dijelaskan pada tahap Inception. Perincian fungsi-fungsi tersebut dapat dituliskan dalam bentuk activity diagram.
73
2. Membangun Arsitektur Sistem Setelah merincikan setiap fungsi dalam sistem, pada tahap ini penelitan telah hampir memasuki tahap pendekatan pengembangan sistem secara teknis. Pada tahap ini, sistem arsitektur harus dideskripsikan. Setelah itu, perlu didefinisikan persebaran secara fisik sistem yang akan dibuat dengan bantuan deployment diagram.
3.3.2.3 Construction Tahap ini sudah memasuki tahap pembangunan sistem tersebut secara teknis. Output yang dihasilkan dari tahap construction adalah sistem yang sudah siap pakai. Untuk mencapai output tersebut, ada beberapa langkah yang harus ditempuh yaitu : 1. Analisis Data Pada tahap ini, perlu diketahui data-data apa saja yang diperlukan untuk membangun sistem yang sesuai dengan system requirement yang telah didefinisikan diatas. Setelah data-data yang dibutuhkan telah diketahui, langkah selanjutnya adalah menganalisisnya dengan data-data yang tersedia. Setelah data-data tersebut dianalisis maka dapat dibangun class diagram dan struktur database sistem. 2. Mendeskripsikan Skenario Sistem Mendeskripsikan skenario sistem adalah mendeskripsikan prilaku pada setiap skenario yang ada dari setiap fungsi sistem. Hal tersebut dapat dilakukan dengan bantuan sequence diagram.
74
3. Membangun User Interface Setelah seluruh segi fungsional dan struktur dari sistem telah dijelaskan, maka perlu adanya user interface sebagai interaksi sistem terhadap aktor-aktor. Storyboard adalah form yang disusun secara berurutan sesuai dengan fungsi-fungsi sistem. Dengan storyboard maka penjelasan mengenai user interface akan lebih mudah dipahami. 4. MVC Programming
Tahap ini adalah tahap akhir dari pembangunan sistem yaitu tahap programming (coding). Pada metodologi ini, tahap pemrograman dilakukan berdasarkan orientasi obyek sehingga menggunakan pola Model View Controller (MVC) Programming. Untuk mendeskripsikan MVC Programming maka pada tahap ini dibuat MVC Pattern diagram dari setiap fungsi berdasarkan class diagram dan sequence diagram. Pada tahap inilah Pemrograman dengan orientasi obyek dilakukan. 3.3.2.4 Transition Tahap transisi adalah tahap dimana implementasi sistem dilakukan dan diuji. Untuk mengetahui keberhasilan sistem, maka pada tahap inilah dilakukan uji coba sistem dengan bantuan Black Box Testing.
3.3.3
Alasan Menggunakan Metode OOAD Perbaruan Sistem Operasi smartphone sangat cepat dan memaksa developer
untuk terus melakukan pembaruan terhadap sistemnya. Maka dari itu, diperlukan
75
sistem dengan reusability tinggi. Berdasarkan Booch, et al (2007: 42), Metode OOAD menaikkan tingkat reusability sebuah perangkat lunak sehingga perangkat lunak bersifat dinamis dan dapat dengan mudah diperbaharui. Hal ini yang mendasari penulis memilih OOAD sebagai metode dalam mengembangkan SIGEPTKI. Tabel 3.1 Perbandingan Metode Pengembangan Sistem Nama Metode
Metode OOAD
Metode SDLC (System Development Life Cycle)
Metode Spiral
Kelebihan
Kekurangan
1. Relasi obyek dengan entitas (thing) umumnya dapat di mapping dengan baik seperti kondisi pada dunia nyata dan keterkaitan dalam sistem. 2. Mendukung reusability tinggi
1. Pada OOAD tidak mudah untuk mendefinisikan class dan obyek yang dibutuhkan sistem 2. Sering kali pemrogramamberorientasi obyek digunakanuntuk melakukan anlisisis terhadap fungsional siste,sementara metode OOAD tidak berbasis pada fungsional sistem. 1. SDLC berorientasi utama pada proses, sehingga mengabaikan kebutuhan non-fungsional. 2. Sering kali pemrogramam berorientasi obyek digunakanuntuk melakukan anlisisis terhadap fungsional siste,sementara metode OOAD tidak berbasis pada fungsional sistem.
1. SDLC merupakan pendekatan visual, ini membuat metode ini mudah dimengerti oleh pengguna atau programmer. 2. SDLC relatif simpel dan mudah dimengerti serta sudah lama digunakan sehingga metode ini memang sudah matang dan layak. 1. Metode spiral dapat digunakan pada
1. Terlalu banyak memikirkan risiko 2. Masih jarang digunakan
76
2.
1.
Metode Iterasi
2.
3.
pengembangan sistem berskala besar Sangat cocok pada mekanisme menanggulangi risiko Dapat mengakomodasi jika terjadi perubahan pada tahapan pengembangan yang telah dilaksanakan Dapat disesuaikan agar sistem dapat dipakai selama masa hidup komputer Cocok dalam pengembangan sistem dan perangkat lunak berskala besar
3. Metode ini lambat dan mahal karena setiap tahapan yang dilalui harus mengikutsertakan pemesan 1. Hanya berlaku pada shortLifetime System 2. Suatu pekerjaan tidak terlihat sedang berada ditahapan mana dari metode ini 3. Memerlukan alat ukur kemajuan secara reguler 4. Perubahan yang sering terjadi dapat mengubah struktur sistem
(Sumber: http://www.academia.edu/4844015/Metode_pengembangan_perangkat_lunak, 2014)
3.4 Kerangka Berpikir Kerangka berpikir adalah serangkaian konsep dan kejelasan hubungan antar konsep yang dirumuskan oleh peneliti berdasarkan tinjauan pustaka (teori dan hasilhasil penelitian terdahulu) dan digunakan sebagai dasar untuk menjawab pertanyaan-pertanyaan dari penelitian yang diangkat. Kerangka berpikir pada suatu penelitian perlu dikemukakan apabila dalam penelitian tersebut berkenaan dengan dua atau lebih variabel. Dalam melakukan penelitian ini, kerangka berpikir digunakan oleh peneliti dalam mengembangkan sistem mobile commerce berbasis smartphone dengan melakukan tahapan-tahapan berdasarkan teori yang didapatkan. Tahapan-tahapan tersebut tertuang dalam kerangka berpikir penelitian ini yang dapat dilihat pada Gambar 3.1.
77
Gambar 3.1 Kerangka Berpikir
BAB IV HASIL DAN PEMBAHASAN
4.1 Gambaran Umum BNP2TKI 4.1.1
Latar Belakang dibentuknya BNP2TKI Menurut Peraturan Presiden Nomor 81 Tahun 2006 tentang Badan
Penempatan dan Perlindungan TKI dituliskan bahwa dalam rangka mewujudkan tujuan penempatan dan perlindungan Tenaga Kerja Indonesia di luar negeri sebagaimana dimaksud dalam Undang-Undang Nomor 39 Tahun 2004 tentang Penempatan dan Perlindungan Tenaga Kerja Indonesia di Luar Negeri, perlu membentuk Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia sebagai lembaga pemerintah untuk melaksanakan kebijakan di bidang penempatan dan perlindungan Tenaga Kerja Indonesia secara terkoordinasi dan terintegrasi. Dalam pelaksanaan penempatan dan perlindungan Tenaga Kerja Indonesia di luar negeri merupakan tanggung jawab bersama dan melibatkan instansi pemerintah terkait yaitu Kementrian Tenaga Kerja dan Transmigrasi, sehingga Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia dalam melaksanakan kebijakan penempatan dan perlindungan Tenaga Kerja Indonesia beranggotakan wakil-wakil Kementrian Tenaga Kerja dan Transmigrasi.
60
79
4.1.2
Visi dan Misi BNP2TKI
a. Visi BNP2TKI
Terwujudnya TKI yang berkualitas dan bermartabat
b. Misi BNP2TKI
Mengisi Peluang Kerja dan Menyiapkan Tenaga Kerja Kompeten Untuk Pasar Kerja Luar Negeri
Meningkatkan Kualitas Pelayanan Penempatan Tenaga Kerja Indonesia
Meningkatkan Kualitas Perlindungan dan Pemberdayaan Tenaga Kerja Indonesia
Meningkatkan Kualitas Pelayanan Penempatan dan Perlindungan Tenaga Kerja Indonesia
4.1.3
Fungsi BNP2TKI Berdasarkan Peraturan Presiden No. 81 Tahun 2006 tentang Badan Nasional
Penempatan dan Perlindungan Tenaga Kerja Indonesia, fungsi dari BNP2TKI antara lain sebagai berikut: b. BNP2TKI yang beranggotakan wakil-wakil instansi Pemerintah terkait mempunyai fungsi pelaksanaan kebijakan di bidang penempatan dan perlindungan Tenaga Kerja Indonesia di luar negeri secara terkoordinasi dan terintegrasi. c. Bidang tugas masing-masing Instansi terkait meliputi bidang ketenagakerjaan,
keimigrasian,
hubungan
luar
negeri,
80
administrasi kependudukan, kesehatan, kepolisian, dan bidang lain yang dianggap perlu.
4.1.4
Tugas BNP2TKI Berdasarkan Peraturan Presiden No. 81 Tahun 2006 tentang Badan Nasional
Penempatan dan Perlindungan Tenaga Kerja Indonesia, tugas dari BNP2TKI antara lain sebagai berikut: a. melakukan penempatan atas dasar perjanjian secara tertulis antara Pemerintah dengan Pemerintah negara Pengguna Tenaga Kerja Indonesia atau Pengguna berbadan hukum di negara tujuan penempatan. b. memberikan
pelayanan,
mengkoordinasikan,
dan
melakukan
pengawasan mengenai : 1. Dokumen 2. Pembekalan akhir pemberangkatan (PAP) 3. Penyelesaian masalah 4. Sumber-sumber pembiayaan 5. Pemberangkatan sampai pemulangan 6. Peningkatan kualitas calon Tenaga Kerja Indonesia 7. Informasi 8. Kualitas pelaksana penempatan Tenaga Kerja Indonesia 9. Peningkatan keluarganya.
kesejahteraan
Tenaga
Kerja
Indonesia
dan
81
4.1.5
Struktur Organisasi BNP2TKI Berdasarkan
Peraturan
Kepala Badan Nasional
Penempatan dan
Perlindungan Tenaga Kerja Indonesia Nomor PER.10/KA/IV/2012 tentang Organisasi dan Tata Kerja Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia. Struktur Organisasi BNP2TKI digambarkan pada Gambar 4.1 Dengan Tugas Pokok masing-masing Bagian berdasarkan Peraturan Presiden No.81 Tahun 2006 sebagai berikut:
Kapala BNP2TKI Memimpin BNP2TKI dalam menjalankan tugas umumnya yaitu dalam bidang penempatan dan perlindungan tenaga kerja indonesia.
Sekretariat Utama Sekretariat Utama mempunyai tugas mengkoordinasikan serta melaksanakan pembinaan dan pemberian dukungan administrasi, perencanaan, anggaran, kepegawaian, umum, hukum, hubungan masyarakat, penelitian dan pengembangan, dan informasi di lingkungan BNP2TKI
82
Kepala BNP2TKI Sekretariat Utama Inspektorat Pusat Litbang dan Informasi
Deputi Bidang Kerjasama Luar Negeri dan Promosi
Deputi Bidang Penempatan
Deputi Bidan Perlindungan
BP3TKI
Gambar 4.1 Struktur Organisasi BNP2TKI (Lampiran PER.10/KA/IV/2012 BNP2TKI Tahun 2012)
Inspektorat Inspektorat adalah unsur pengawasan di lingkungan BNP2TKI yang berada di bawah dan bertanggung jawab kepada Kepala BNP2TKI. Inspektorat mempunyai tugas melaksanakan pengawasan fungsional atas pelaksanaan tugas di lingkungan BNP2TKI.
Pusat Litbang dan Informasi Pusat litbang dan informasi dipimpin oleh Kapus Litfo. Bagian ini berfungsi sebagai pusat penyedia kebutuhan teknologi untuk menunjang operasional BNP2TKI.
Deputi Bidang Kerjasama Luar Negeri dan Promosi Deputi Bidang Kerja Sama Luar Negeri dan Promosi mempunyai tugas:
83
1. Menyiapkan bahan teknis di bidang penempatan dan perlindungan tenaga kerja Indonesia untuk kerja sama bilateral, regional dan multilateral, di tingkat Pertemuan Pejabat Tinggi, Menteri dan Kepala Negara/Pemerintahan, serta melakukan promosi Tenaga Kerja Indonesia. 2. Merumuskan, mengkoordinasikan, melaksanakan, dan mengawasi pelaksanaan
kebijakan
teknis
di
bidang
penempatan
dan
perlindungan tenaga kerja Indonesia untuk kerja sama bilateral, regional dan multilateral di tingkat Pertemuan Pejabat Tinggi, Menteri dan Kepala Negara/Pemerintahan, serta melakukan promosi Tenaga Kerja Indonesia.
Deputi Bidang Penempatan Deputi Bidang Penempatan mempunyai tugas : 1. Melakukan penempatan atas dasar perjanjian secara tertulis antara Pemerintah dengan Pemerintah negara Pengguna Tenaga Kerja Indonesia dan/atau Pengguna berbadan hukum di negara tujuan penempatan atau negara tujuan yang mempunyai peraturan perundang-undangan yang melindungi tenaga kerja asing. 2. Merumuskan, mengkoordinasikan, melaksanakan, dan mengawasi pelaksanaan kebijakan teknis penempatan Tenaga Kerja Indonesia di luar negeri meliputi penyuluhan, perekrutan, dan penyiapan penempatan.
Deputi Bidang Perlindungan
84
Deputi
Bidang
Perlindungan
mempunyai
tugas
merumuskan,
mengkoordinasikan, melaksanakan dan mengawasi pelaksanaan kebijakan teknis perlindungan Tenaga Kerja Indonesia yang meliputi standardisasi, sosialisasi dan pelaksanaan perlindungan mulai dari prapemberangkatan selama penempatan, sampai dengan pemulangan.
4.2 Pengumpulan Data 4.2.1
Observasi Observasi dilakukan untuk mengetahui standar dari bagaimana kegiatan
perlindungan terhadap Tenaga Kerja Indonesia yang dilakukan oleh BNP2TKI. Kegiatan observasi yang dilakukan dimulai dari mengamati kegiatan perlindungan yang dilakukan oleh BNP2TKI mulai dari pra-penempatan, masa penempatan hingga pemulangan. Hasil dari kegiatan observasi memberikan hasil bahwa kegiatan yang berkaitan dengan perlindungan telah sesuai dengan Standar dari Peraturan Kepala BNP2TKI Nomor SE 03/KA/VIII/2009. Peraturan Kepala BNP2TKI tersebut menjelaskan Standar operasional prosedur BNP2TKI beserta job description dari setiap individu pelaksana.
4.2.2
Wawancara Kegiatan wawancara dilakukan untuk mendapatkan data berkaitan dengan
kendala yang sering dialami berkaitan dengan perlindungan TKI, mengetahui
85
kegiatan perlindungan yang telah dijalankan oleh BNP2TKI, dan memperoleh informasi mengenai peraturan dan undang-undang mana saja yang terkait dengan kegiatan Perlindungan Tenaga Kerja Indonesia. Wawancara dilakukan pada 2 narasumber yaitu Bapak Ir Agusdin Subiantoro selaku Deputi bidang penempatan dan Drs Muhammad Syafrie selaku Deputi bidang Perlindungan. Wawancara dilakukan secara langsung oleh penulis berdasarkan poin-poin kuesioner yang berkaitan dengan kepentingan penulis sebagaimana hasil dari wawancara tersebut dapat dilihat pada lampiran 4 dan 5.
4.2.3
Angket atau Kuesioner Selain mewawancarai 2 narasumber terkait, Penulis juga melakukan
kuesioner terhadap 27 TKI dengan negara tujuan yang paling sering terjadi permasalahan TKI yaitu Malaysia dan Arab. Kuesioner terdiri dari 10 rangkaian pertanyaan terkait dengan penempatan dan perlindungan TKI. Dari 27 responden, 18 diantaranya adalah TKI yang ditempatkan di Malaysia dan 9 responden adalah TKI yang ditempatkan di Arab. Berdasarkan jawaban dari seluruh responden terkait bidang pengajuan TKI, dapat disimpulkan bahwa 88% responden menyatakan bahwa dalam memperoleh informasi kriteria menjadi TKI adalah mudah, sedangkan untuk memenuhi kriteria tersebut 81% menyatakan cukup mudah. Perihal Penempatan, 70% Responden menyatakan bahwa Negara tujuan tidak selalu sesuai dengan keinginan. 88% Responden menyatakan bahwa Negara
86
tujuan sesuai dengan Agama dan 92% responden menyatakan bahwa Negara tujuan disesuaikan dengan profesi dari TKI tersebut. Perlindungan adalah bidang yang sangat terkait dengan pengembangan sistem SIGEPTKI, yang memiliki hubungan dengan system requirement nya. Dilihat dari jawaban responden mengenai sistem perlindungan yang sedang dijalankan oleh Pemerintah, 88% menyatakan bahwa sistem tersebut cukup sesuai dengan harapan mereka. 70% menyatakan bahwa kedubes RI perlu mengetahui lokasi terakhir TKI setiap 24 Jam, 88% responden menyatakan sangat perlu pengingat masa kontrak kerja, 82% responden menyatakan sangat perlu petunjuk arah digital menuju Kedubes RI setempat, dan 100% responden menyatakan sangat memerlukan sistem yang dapat mengirimkan sinyal S.O.S kepada Kedubes RI setempat.
4.2.4
Studi Pustaka Studi pustaka, sebagaimana dilakukan untuk mendapatkan referensi tertulis
dan memiliki integritas untuk memperkuat argumen-argumen penulis dalam melakukan penelitian. Pada tahap ini dihasilkan standarisasi dalam pengembangan sistem menggunakan Framework Cocoa pada Objective-C yang digunakan sebagai landasan mengembangkan keseluruhan sistem. Regulasi UU No. 39 tahun 2004 tentang penempatan dan perlindungan TKI, mendeskripsikan tugas pemerintah terkait perlindungan TKI yaitu menjamin hakhak masing-masing TKI menjadi landasan pengembangan fitur monitoring dan rute lokasi TKI, mengirim koordinat TKI secara otomatis, pengingat masa kontrak TKI,
87
dan kirim sinyal S.O.S. Serta pada regulasi Perpres No. 81 Tahun 2006 tentang BNP2TKI, yang mewajibkan pemerintah mencatat seluruh data tentang perlindungan TKI menjadi landasan regulasi pengembangan fitur manajerial data.
88
4.3 Pengembangan Sistem 4.3.1
Inception Tahap inception ini adalah tahap menentukan dan mendefinisikan sistem
yang akan dikembangkan hanya berdasarkan pada kebutuhan-kebutuhan sistem (system requirement). Pada tahapan ini, pendekatan teknis dalam pembuatan sistem belum dipikirkan.
4.3.1.1 Determine System Requirements Untuk dapat menentukan kebutuhan sistem atau needed analysis SIGEPTKI, maka langkah pertama yang harus dilakukan adalah menentukan visi dari sistem kemudian menentukan system requirements. 1.
Menentukan Visi Sistem Untuk dapat menentukan Visi dari SIGEPTKI, maka kita perlu ketahui apa
saja cakupan dari kata istilah “perlindungan” berdasarkan peraturan yang ada. Melihat dari visi, misi dan Job Description masing-masing bagian dari BNP2TKI, perlindungan tersebut mencakup standarisasi sistem perlindungan, sosialisasi atau pembekalan
terkait
perlindungan
terhadap
TKI
sebelum
melakukan
pemberangkatan, dan melaksanakan perlindungan itu sendiri dari mulai prapemberangkatan, selama penempatan, hingga pemulangan. Jadi sistem yang dibuat harus sebagai representasi dari bentuk perlindungan terhadap masing-masing TKI dari mulai pra-pemberangkatan, masa penempatan, hingga pemulangan. Pada masa pra-pemberangkatan diperlukan perlindungan
89
kepada TKI berupa sosialisasi berupa bahasa, tata krama dan adat istiadat setiap negara yang akan dituju oleh TKI. Bentuk perlindungan selama masa penempatan adalah bagaimana pemerintah dalam hal ini kususnya BNP2TKI dapat memantau setiap TKI yang sedang bekerja di luar negeri dan dapat merespon cepat jika TKI tersebut mengalami masalah. Yang terakhir, Perlindungan pada masa pemulangan ialah perlindungan terhadap TKI ketika masa kontrak kerjanya habis kemudian dipulangkan sampai ke agen TKI di daerah masing-masing. Dari analisis diatas maka didapatkan visi dari SIGEPTKI adalah :
Menyediakan bentuk perlindungan digital dalam genggaman masingmasing TKI yang sedang bekerja di luar negeri.
Memungkinkan pemerintah untuk melakukan monitoring keberadaan near real time dan status masing-masing TKI yang sedang bekerja di luar negeri.
2.
Menentukan System Requirements secara fungsional Tahap ini adalah tahap untuk menentukan kebutuhan-kebutuhan fungsional
Sistem untuk mencapai visi yang sudah disebutkan pada bagian sebelumnya. Adapun kebutuhan-kebutuhan fungsional SIGEPTKI adalah :
Mengirimkan lokasi TKI secara otomatis dan periodik.
Mengirimkan sinyal S.O.S dari TKI.
Menyediakan petunjuk arah menuju kedutaan besar Indonesia di masing-masing negara.
Menyediakan pengingat masa kontrak kerja terhadap TKI.
90
Menyediakan pemetaan keberadaan masing-masing TKI secara near real time.
Menyediakan petunjuk arah menuju lokasi near real time masingmasing TKI.
Manajerial data.
4.3.1.2 Define Boundary System Mendefinisikan batasan pada SIGEPTKI yaitu mendefinisikan lingkungan dari Sistem ini. Lingkungan Sistem dapat digambarkan oleh context diagram pada Gambar 4.2
Gambar 4.2 Context Diagram dari SIGEPTKI
91
Context diagram diatas telah dengan jelas menjelaskan lingkungan dari SIGEPTKI, dimana terdapat 3 aktor yang sangat berkaitan dengan sistem yaitu TKI, Operator dan Admin untuk dapat mengoperasikan fungsi-fungsi sebagaimana dijelaskan pada kebutuhan-kebutuhan fungsi sistem. Selain itu, terdapat juga aktor eksternal yang mempengaruhi sistem yang dituliskan pada context diagram tersebut yaitu Komunikasi Eksternal. Komunikasi Eksternal merujuk ke penyedia layanan jaringan komunikasi. Penyedia layanan jaringan komunikasi merupakan faktor eksternal penting untuk berlangsungnya sistem, karena tanpa adanya jaringan komunikasi maka sistem tidak akan bisa dioperasikan karena sistem ini sangat bergantung pada sinyal GPS dan Internet.
4.3.1.3 Determine Mission Use Cases Aktivitas ini adalah menentukan tujuan dari setiap aktor yang terlibat langsung terhadap sistem. Untuk dapat mendeskripsikan penentuan tujuan menggunakan sistem dari setiap aktor, maka perlu dibuat Mission Use Cases Diagram. Masing-masing aktor memiliki kepentingan yang berbeda kaitannya dalam penggunaan sistem ini, maka perlu dipisahkan sesuai keperluan masing-masing. Operator disini adalah pihak pemerintah. Kembali pada bagian sebelumnya tentang system requirement, pada bagian ini dilakukan pencocokan fungsi kepada aktoraktor yang terlibat. Selain perlu diketahuinya tentang deskripsi dari setiap aktor,
92
juga diperlukan pencocokan kebutuhan-kebutuhan fungsional sistem terhadap aktor. Hal tersebut dapat dilihat pada tabel 4.1. Tabel 4.1 Pencocokan System Requirements fungsional terhadap aktor Aktor
Deskripsi
System Requirements fungsional Mengirimkan lokasi TKI secara otomatis dan periodik.
Warga
Indonesia
yang Mengirimkan sinyal S.O.S dari
bekerja di luar Negeri. TKI TKI. TKI
adalah
orang
yang Menyediakan petunjuk arah
membutuhkan
menuju kedutaan besar Indonesia
perlindungan.
di masing-masing negara. Menyediakan pengingat masa kontrak kerja terhadap TKI.
Aktor yang mengawasi Menyediakan pemetaan dan
memberikan keberadaan masing-masing TKI
perlindungan
terhadap secara near real time.
TKI,
hal
dalam
ini
Operator operator erat
kaitannya Menyediakan petunjuk arah
dengan pihak pemerintah menuju lokasi near real time terdapat pada kedubes RI masing-masing TKI. di setiap negara Pihak pemerintah yang Manajerial data
Admin berada di Indonesia,
93
dalam hal ini admin adalah BNP2TKI karena setiap TKI yang dikirimkan harus tercatat pada BNP2TKI
Hasil dari pencocokan system requirement fungsional terhadap aktor, maka paket sistem yang akan dibuat dapat dipisah sesuai kebutuhan. Penulis membuat penamaan terhadap paket sistem yang digunakan oleh Admin atau pihak pemerintah pada bagian manajerial data adalah adminApp, Operator atau pihak pemerintah dalam pengawasan adalah serverApp dan yang digunakan oleh TKI adalah clientApp. Dengan pemisahan paket sistem ini, maka dapat digambarkan mission use cases berdasarkan paket sistem seperti pada Gambar 4.3.
94
Gambar 4.3 Mission Use Cases diagram berdasarkan paket sistem dari SIGEPTKI
Setelah didapat paket sistem mission use cases dari Sistem ini, maka perlu dilakukan perincian dari setiap paket sistem. Mission use cases mendeskripsikan
95
tujuan secara rinci dari setiap aktor yang berkaitan dengan sistem. Maka didapatkan mission use cases dari SIGEPTKI adalah seperti pada Gambar 4.4
Gambar 4.4 Mission Use Cases Diagram dari keseluruhan SIGEPTKI
96
4.3.1.4 Define System Use Cases Tahap mendefinisikan use cases adalah tahap untuk mendefinisikan apa saja yang dilakukan oleh setiap aktor terhadap sistem dari setiap mission use case. Pendefinisian dapat dilihat pada tabel 4.2
Tabel 4.1 Pendefinisian use case dari setiap mission use case. Aktor
Mission Use Case
Use Case
Mengirim Lokasi Secara Kirim koordinat Otomatis Mengirim sinyal S.O.S TKI
Kirim sinyal S.O.S
Menerima petunjuk arah Lihat petunjuk arah menuju kedubes RI Menerima pengingat Lihat masa kontrak masa kontrak kerja Log in Input data clientApp
Admin
Manajerial Data
Manajemen data clientApp Log out
Melihat Lokasi TKI Operator
Lihat lokasi TKI
Menerima petunjuk arah Lihat petunjuk arah menuju lokasi TKI
97
Karena sebagai admin memiliki tujuan yaitu manajerial data, maka untuk menjaga keamanan data diperlukan fasilitas log in dan log out. Dari pendefinisian diatas maka dapat digambarkan use cases diagram pada Gambar 4.5.
Gambar 4.5 Use Cases Diagram dari SIGEPTKI
Untuk mengetahui spesifikasi dari fungsi yang dilakukan di use cases diagram maka perlu dibuat spesifikasi use case. Spesifikasi dari setiap use case pada use cases diagram SIGEPTKI dijelaskan oleh tabel-tabel berikut ini.
98
Tabel 4.2 Use case kirim koordinat secara otomatis Use case name Kirim koordinat secara otomatis Brief description
Use case ini adalah kegiatan sistem mengetahui posisi nya, yang kemudian dikirimkan ke server dalam bentuk koordinat.
Actor
TKI
Precondition
Kegiatan ini dilakukan secara periodik setiap jam 8 pagi waktu setempat.
Main flow
Use
case
ini
melakukan
pengiriman informasi lokasi dari TKI
secara
otomatis
dan
berulang-ulang setiap jam 8 pagi waktu setempat Alternative flow
Jika pada jam 8 pagi use case ini tidak
bisa
dijalankan
secara
otomatis karena gangguan, maka use case ini akan mengulang proses nya di keesokan harinya Post condition
Jika use case berhasil dilakukan maka
akan
ada
pesan
pemberitahuan berhasil pada TKI
99
Tabel 4.3 Use case kirim sinyal S.O.S Use case name Kirim sinyal S.O.S Brief description
Use case ini adalah kegiatan mengirimkan
semacam
sinyal
bahwa si pengguna sedang dalam bahaya, dan mengirimkan lokasi terakhir dari pengguna Actor
TKI
Precondition
TKI membuka aplikasi clientApp kemudian masuk ke halaman kirim signal S.O.S
Main flow
Pada saat TKI memasuki halaman kirim
sinyal
S.O.S
mengaktifkannya, sistem
akan
dan
kemudian meminta
TKI
memasukan kata sandi untuk mengaktifkannya. Alternative flow
Jika
kata
sandi
salah
maka
kegiatan kirim sinyal S.O.S tidak akan
berfungsi
dan
akan
menampilkan pesan gagal. Post condition
Saat proses ini berhasil dilakukan, maka pihak pemerintah akan
100
mendapatkan
tanda
dari
si
pengirim sinyal bahwa si pengirim sinyal
sedang
sehingga
dalam
bahaya,
pemerintah
dapat
melakukan
tindakan
secepat
mungkin
Tabel 4.4 Use case lihat rute menuju kedubes RI Use case name Lihat petunjuk arah Brief description
Use case ini adalah kegiatan dimana
sistem
menyediakan
ini
petunjuk
akan arah
kepada TKI menuju kedubes RI di negara tempat TKI tersebut bekerja Actor
TKI
Precondition
TKI membuka aplikasi clientApp
Main flow
Pada saat TKI masuk ke rute menuju kedubes RI, maka sistem akan mengambil data lokasi kedubes
RI di
negara
TKI
101
tersebut bekerja dan memberikan petunjuk arah menuju kedubes Alternative flow
Jika sinyal GPS dan internet tidak ada, maka akan menampilkan pesan gagal
Post condition
Ketika
petunjuk
arah
sudah
diberikan, maka sistem navigasi akan menuntuk TKI menuju lokasi tujuan yaitu kedubes RI
Tabel 4.5 Use case lihat masa kontrak Use case name Lihat masa kontrak Brief description
Use case ini adalah kegiatan sistem sebagai pengingat masa kontrak TKI
Actor
TKI
Precondition
TKI membuka aplikasi clientApp
Main flow
Pada saat aplikasi dibuka, maka akan ada pesan pertama yang muncul yaitu menampilkan masa kontrak TKI.
102
Alternative flow
Jika terjadi gangguan internet, maka akan menampilkan pesan gagal
menampilkan informasi
kontrak Post condition
Ketika masa kontrak TKI sudah ditampilkan, TKI dapat menutup kotak pesan tersebut dan mulai menggunakan sistem clientApp
Tabel 4.6 Use case log in Use case name Brief description
Log in Use case ini adalah kegiatan untuk mengamankan
data-data
clientApp dan identitas TKI pada sistem adminApp Actor
Admin
Precondition
Admin
membuka
aplikasi
serverApp Main flow
Pada saat aplikasi dibuka, maka akan muncul halaman log in
Alternative flow
Jika
pada
saat
memasukan
username dan password terjadi
103
ketidak
cocokan,
maka
akan
menampilkan pesan gagal Post condition
Jika username dan password cocok,
maka
operator
mengoperasikan
dapat aplikasi
adminApp
Tabel 4.7 Use case manajemen data clientApp Use case name Manajemen data clientApp Brief description
Use case ini adalah kegiatan untuk melakukan add, edit, dan delete pada data clientApp
Actor
Admin
Precondition
Operator
membuka
aplikasi
adminApp kemudian masuk ke halaman manajemen data Main flow
Pada saat masuk ke halaman manajemen data kemudian pilih add data clientApp. Sistem akan menampilkan clientApp
form
pengisian
104
Alternative flow
Aktor dapat memiliki pilihan untuk
edit
dan
delete
data
clientApp. Post condition
Jika data clientApp baru sudah berhasil dimasukan maka, data baru tersebut akan terekam di database.
Tabel 4.8 Use case manajerial data identitas TKI Use case name Manajemen data identitas TKI Brief description
Use case ini adalah kegiatan untuk melakukan add, edit, dan delete pada data identitas TKI
Actor
Admin
Precondition
Operator
membuka
aplikasi
adminApp kemudian masuk ke halaman manajemen data Main flow
Pada saat masuk ke halaman manajemen data kemudian pilih add data identitas TKI. Sistem akan menampilkan form pengisian clientApp
105
Alternative flow
Aktor dapat memiliki pilihan untuk
edit
dan
delete
data
clientApp.
Tabel 4.9 Use case logout Use case name Brief description
Log out Use case ini adalah kegiatan menutup aplikasi dan menghapus historis
dari
username
dan
password untuk login dengan maksud data,
menjamin sehingga
keamanan
untuk
mengoperasikan
dapat sistem
adminApp lagi, perlu memasukan username dan password lagi. Actor
Admin
Precondition
Operator menekan perintah log out pada sistem.
Main flow
Setelah
perintah
log
out
dilakukan, maka sistem akan menampilkan
pesan
meyakinkan perintah.
untuk
106
Post condition
Jika perintah sudah dibenarkan, maka sistem akan menampilkan halaman login dengan kolom username dan password dalam keadaan kosong.
Tabel 4.10 Use case Lihat lokasi TKI Use case name Lihat lokasi TKI Brief description
Use case ini adalah kegiatan untuk mengetahui posisi setiap TKI yang sedang bekerja di luar negeri
Actor
Operator
Precondition
Operator
membuka
aplikasi
serverApp kemudian masuk ke halaman monitoring TKI Main flow
Pada saat masuk ke halaman monitoring TKI, maka sistem akan menampilkan peta dan titik sebagai representasi lokasi TKI
Post condition
Setiap titik terdapat informasi mengenai status dari TKI tersebut
107
Tabel 4.11 Use case lihat rute menuju lokasi TKI Use case name Lihat rute menuju lokasi TKI Brief description
Use case ini adalah kegiatan sistem
untuk
menyediakan
petunjuk arah menuju lokasi TKI yang diinginkan Actor
Operator
Precondition
Operator
membuka
aplikasi
serverApp kemudian masuk ke halaman monitoring TKI Main flow
Pada saat masuk ke halaman monitoring TKI, kemudian pilih salah satu lokasi TKI yang akan dituju,
kemudian
masukan
perintah petunjuk arah. Setelah itu
petunjuk
arah
akan
arah
sudah
ditampilkan Post condition
Ketika
petunjuk
diberikan, maka sistem navigasi akan menuntuk Operator menuju lokasi terakhir dari TKI yang dituju.
108
4.3.2
Elaboration Pada tahap ini, adalah dimulainya tahap perincian sistem dan tahap memulai
pengembangan sistem melalui pendekatan teknis, tidak lagi hanya melihat dari apa yang dapat dilakukan sistem tetapi juga melihat bagaimana cara sistem itu bekerja. 4.3.2.1 Analisis Fungsional Sistem Tahap ini adalah tahap mendefinisikan dan membuat detail dari setiap fungsi-fungsi sistem yang telah ditentukan pada tahap inception. Fungsi-fungsi sistem sudah terdefinisikan pada use cases diagram, sehingga yang dilakukan pada tahap ini adalah merincikan setiap use case yang ada dengan bantuan activity diagram. 1. Activity Diagram untuk Log in
Gambar 4.6 Activity Diagram untuk use case Log in
109
Gambar 4.6 menjelaskan activitas dari use case log in yang dilakukan pada adminApp. Proses awal yang dilakukan adalah menjalankan aplikasi adminApp, kemudian akan muncul halaman log in. Di halaman tersebut terdapat dua field yang wajib di isi yaitu username dan password supaya dapat mengoperasikan sistem adminApp. Setelah username dan password dimasukan, maka sistem akan memverifikasi dengan data yang ada pada database, apakah username dan password tersebut cocok. Jika username dan password tidak cocok dengan data yang ada, maka sistem akan menampilkan pesan peringatan bahwa login gagal dan sistem akan tetap menampilkan halaman log in. Jika username dan password benar, maka akan adminApp dapat dioperasikan.
2. Activity Diagram manajemen data clientApp Aktivitas yang dilakukan pada Gambar 4.7 adalah aktivitas untuk manajemen data clientApp supaya yang dapat dimonitor oleh serverApp yang dilakukan pada adminApp. Untuk dapat menambahkan data clientApp pada database, maka seorang admin perlu melakukan log in terlebih dahulu. Setelah berhasil, admin masuk ke halaman , yang manajemen data kemudian memilih add, edit, atau hapus data clientApp untuk melakukan kegiatan manajemen data clientApp.
110
Gambar 4.7 Activity Diagram untuk use case manajemen data clientApp
111
Pada form add, sistem akan menampilkan formulir tentang data clientApp yang perlu diisi oleh admin. Jika seluruh data sudah diisi dan lolos dari kontrol error data maka data tersebut sudah masuk kedalam database. Dan sejak saat itu, device yang sudah didaftarkan, bisa dimonitor keberadaannya oleh serverApp. Sedangkan form edit dan delete sistem akan menampilkan list clientApp untuk kemudian seorang admin dapat memilih data mana yang akan di edit atau di hapus.
3. Activity Diagram manajemen data identitas TKI Aktivitas ini manajemen data yang digambarkan pada Gambar 4.8 dibawah ini menjelaskan secara rinci apa itu manajemen data identitas TKI. Manajemen data identitas TKI adalah kegiatan add, edit dan delte data identitas TKI pada database. Aktivitas yang dilakukan adalah seperti biasa, Admin perlu log in untuk dapat mengoperasikan adminApp, kemudian masuk ke halaman manajemen data. Disitu Admin akan disajikan oleh pilihan add, edit, atau delete. Pada form add, sistem akan menampilkan formulir tentang data clientApp yang perlu diisi oleh admin. Jika seluruh data sudah diisi dan lolos dari kontrol error data maka data tersebut sudah masuk kedalam database. Sedangkan form edit dan delete sistem akan menampilkan list clientApp untuk kemudian seorang admin dapat memilih data mana yang akan di edit atau di hapus.
112
Gambar 4.8 Activity Diagram untuk usecase manajemen data identitas TKI
113
4. Activity Diagram log out Aktivitas pada yang ditunjukkan pada Gambar 4.9 adalah aktivitas dimana Admin keluar dari sistem adminApp dan untuk menjaga keamanan data, maka aktivitas log out ini nantinya akan menghapus historis tentang username dan password pada device. Sehingga jika ingin mengoperasikan serverApp lagi, operator harus log in kembali. Aktivitas ini dimulai dari memilih perintah log out pada adminApp, kemudian sistem akan menampilkan pesan konfirmasi apakah admin benar-benar akan keluar dari sistem ini. Jika pilihannya ya, maka sistem akan menampilkan halaman log in dengan kolom username dan password dibuat kosong, jika pilihannya batal, maka sistem akan kembali ke halam awal
114
. Gambar 4.9 Activity Diagram untuk usecase log out
5. Activity Diagram lihat lokasi TKI Pada aktivitas di Gambar 4.10, operator dapat melihat pemetaan lokasi near real time dari masing-masing TKI. Aktivitas yang dilakukan adalah setelah operator melakukan log in dan berhasil, pilih menu monitoring keberadaan TKI. Dengan begitu sistem akan menerima data clientApp paling terkini dari database dan menampilkannya dalam bentuk pemetaan dengan titik sebagai simbol lokasi TKI.
115
Gambar 4.10 Activity Diagram untuk usecase lihat lokasi TKI
6. Activity Diagram lihat rute menuju lokasi TKI Aktivitas
pada
bagian
ini,
maksudnya
adalah
sistem
menyediakan fasilitas petunjuk arah menuju lokasi terakir TKI tertentu yang di inginkan. Untuk mendapatkan fasilitas tersebut, maka aktivitas yang dilakukan operator adalah login, kemudian masuk ke halaman monitoring TKI lalu pilih titik mana atau TKI mana yang akan dituju. Setelah itu masukan perintah tampilkan petunjuk arah. Dengan begitu sistem akan menampilkan petunjuk arah menuju lokasi near real time TKI yang dipilih. Aktivitas ini digambarkan sebagai diagram pada Gambar 4.11
116
Gambar 4.11 Activity Diagram untuk usecase lihat rute menuju lokasi TKI 7. Activity Diagram kirim koordinat secara otomatis Aktivitas dari Gambar 4.12 adalah aktivitas mengirimkan titik koordinat lokasi TKI secara otomatis. Sistem akan bekerja secara otomatis ketika waktu setempat telah menunjukan pukul 08:00. Pada waktu tersebut, tanpa diperintah oleh user (TKI), sistem akan memeriksa konektivitas internet dan GPS dan kemudian menangkap lokasi dirinya sendiri. Setelah koordinat didapat, sistem akan
117
mengirimkan secara otomatis ke webservice yang kemudian disimpan dalam database sebagai lokasi baru dari TKI mana yang mengirimkan lokasi tersebut
Gambar 4.12 Activity Diagram untuk usecase kirim koordinat
118
8. Activity Diagram Kirim Sinyal S.O.S Aktivitas pada Gambar 4.13 menggambarkan bagaimana jika seorang TKI benar-benar terancam bahaya dan perlu mengirimkan sinya bahwa TKI tersebut sedang dalam bahaya kepada pemerintah. Aktivitas tersebut dimulai dengan memasukan perintah sinyal S.O.S pada clientApp, kemudian sistem akan memeriksa koneksi internet. Jika tidak terdapat koneksi internet maka sistem tidak dapat mengirimkan sinyal S.O.S dan akan menampilkan pesan gagal. Tetapi jika sistem memiliki koneksi internet maka, sistem akan melanjutkan kepada verifikasi pengguna, apakah yang mengirimkan sinyal S.O.S ini adalah benar si TKI pengguna clientApp tersebut ataukah orang lain dengan cara sistem meminta TKI memasukkan nama ibu kandung. Mengapa ibu kandung ? Dalam buku Sistem keamanan bank, ibu kandung adalah salah satu bentuk sandi keamanan dalam transaksinya untuk memastikan kebenaran dari seseorang.
119
Gambar 4.13 Activity Diagram untuk usecase kirim sinyal S.O.S
9. Activity Diagram lihat rute menuju kedubes RI Aktivitas pada Gambar 4.14 dibawah, adalah aktivitas untuk mendapatkan petunjuk arah menuju kedutaan besar di negara TKI tersebut bekerja. Aktivitas tersebut dimulai dari perintah pengguna untuk mendapatkan petunjuk arah menuju kedubes RI, kemudian sistem
120
akan memeriksa koneksi internet. Jika tidak ada koneksi internet maka akan muncul pesan gagal dan sistem tidak menampilkan petunjuk arah. Namun, jika koneksi internet tersebut tersedia maka sistem akan menghubungi web service untuk memanggil data TKI dan mencari tahu lokasi TKI yang bersangkutan. Setelah mendapatkan lokasi TKI, sistem akan kembali menghubungi web service untuk mendapatkan data lokasi kedubes di negara yang bersangkutan. Aktivitas terakhir ialah, sistem akan menampilkan petunjuk arah menuju kedubes RI tersebut.
Gambar 4.14 Activity Diagram untuk usecase lihat rute menuju kedubes RI
121
10. Activity Diagram lihat masa kontrak
Gambar 4.15 Activity Diagram untuk usecase lihat masa kontrak
Pada Gambar 4.15 menunjukan aktivitas bagaimana sistem memperlihatkan masa kontrak kerja sebagai bentuk pengingat pada TKI. Aktivitas ini dimulai setiap kali TKI membuka aplikasi ini, maka sistem akan secara otomatis menghubungi web service untuk mendapatkan data tentang TKI yang bersangkutan dan kemudian menampilkan masa kontrak kerja.
122
4.3.2.2 Membangun Sistem Arsitektur Aktivitas ini adalah tahap membangun arsitektur dengan pendekatan teknis. Disini, pendefinisian telah difokuskan kepada bagaimana cara kerja SIGEPTKI secara teknisnya. Gambar 4.16 Menggambarkan skema sistem arsitektur pada SIGEPTKI. Dapat dilihat bahwa terdapat 2 paket sistem utama yaitu clientApp sebagai sistem yang dipegang oleh TKI dan serverApp, sistem yang dipegang oleh pihak pemerintah, dalam kaitannya dengan penelitian ini disebut operator.
Gambar 4.16 System Architecture dari SIGEPTKI.
123
Pada skema tersebut dijelaskan juga bahwa basis data sistem tersebut berada terpisah dari kedua paket sistem. Database disediakan secara online, dan hanya dapat diakses melalui koneksi internet. Selain membutuhkan koneksi internet, sistem ini juga membutuhkan sinyal GPS, sehingga dengan kata lain faktor eksternal dari lingkungan SIGEPTKI ini sangat berpengaruh terhadap operasi sistem. Web Service pada sistem ini adalah penyedia encoder data sebagai perantara sekaligus penerjemah data yang dikirim dari perangkat mobile menuju database. Tanpa adanya web service, paket sistem clientApp dan serverApp tidak akan bisa berkomunikasi dengan database. Setelah sistem arsitektur dari SIGEPTKI ini didefinisikan, langkah selanjutnya adalah menentukan teknologi dalam pengembangannya dengan cara membuat deployment diagram. Gambar 4.17 memperlihatkan deployment diagram dari SIGEPTKI.
124
Gambar 4.17
Deployment Diagram dari SIGEPTKI
Dalam deployment diagram diatas, dijelaskan bahwa perangkat mobile yang digunakan sebagai clientApp adalah iPhone, dan perangkat mobile yang digunakan sebagai serverApp dan adminApp adalah iPad. Ketiga Aplikasi tersebut merupakan aplikasi native (aplikasi yang di instal kedalam sistem operasi dari sebuah device). Web service terdiri dari 2 teknologi yaitu encoder PHP-JSON dan sistem basis data dengan teknologi MySQL
125
4.3.3
Construction Tahap construction ini adalah tahap untuk merancang aplikasi tersebut.
Secara garis besar, hal pertama yang harus dilakukan untuk merancang aplikasi adalah menganalisis data. Setelah data dianalisis, selanjutnya mendeskripsikan setiap skenario dari sistem dan membangun user interface supaya sesuai dengan skenario yang telah dibuat. Setelah ketiga hal tersebut telah didapatkan hasilnya, maka tahap terakhir adalah tahap pemrogramman (coding).
4.3.3.1 Struktur Sistem Untuk mendefinisikan struktur sistem, disini perlu dibuat class diagram sebagai penggambaran struktur statis dari sebuah sistem. Sebagaimana pada Gambar 4.18 yang menggambarkan struktur class diagram awal dari sistem ini baru menentukan method dari masing-masing kelas dan belum mendefinisikan datanya.
126
Gambar 4.18
Class Diagram awal dari SIGEPTKI
Pada class diagram tersebut dapat terlihat bahwa user interface dari sistem ada tiga yaitu, serverApp interface. adminApp interface dan clientApp interface. ServerApp interface memiliki fungsi untuk memonitor data clientApp yang berisi didalamnya data identitas TKI. Sedangkan pada adminApp memiliki fungsi penuh untuk melakukan manipulasi data dari clientApp dan identitas TKI, dari mulai add data, edit, find dan delete. Pada clientApp memiliki fungsi mengubah beberapa data yang terdapat pada kelas clientApp. Untuk mendefinisikan data-data apa saja yang akan dimasukkan dalam sistem, maka dapat dilihat dari kelas identitas TKI, clientApp, kedubes_ri, dan admin. Pertama pada kelas identitas TKI, kelas ini adalah kelas yang mendefinisikan biodata dari TKI. Berdasarkan data yang penulis dapatkan dari penelitian di BNP2TKI, setiap TKI memiliki data-data diantaranya adalah id_tki,
127
no_ktp, nama dan lain-lain yang telah dijelaskan pada bagian sebelumnya. Kelas clientApp dibentuk untuk menampung data koordinat TKI, dan data SOS Signal. Kelas admin yang ada pada class diagram tersebut hanya kelas sebagai kontrol keamanan dari pengguna serverApp. Tidak ada pembedaan hak akses terhadap pengoperasian serverApp. Asalkan seorang pengguna mengetahui kombinasi username dan password yang terdaftar, maka pengguna tersebut dapat mengoperasikan seluruh fungsi pada serverApp. Kelas kedubes_ri berfungsi sebagai penyedia data nama negara untuk di isikan pada field negara_tujuan pada kelas identitas_tki sebagai control data mengenai fungsi rute menuju kedubes RI di setiap negara untuk keperluan pembuatan rute menuju kedubes RI. Maka, dari analisis data tersebut, dapat didefinisikan class diagram secara utuh dari SIGEPTKI sebagaimana pada Gambar 4.19.
128
Gambar 4.19 Class Diagram SIGEPTKI
129
Setelah mendefinisikan class diagram secara keseluruhan, maka dapat dibuat struktur database berdasarkan class diagram dan data-data yang didapatkan dari BNP2TKI seperti pada Gambar 4.20
Gambar 4.20 Struktur Database
130
Seperti yang digambarkan pada Class Diagram, field id_tki merupakan foreign key dari tabel clientApp merefer ke tabel identitas_tki. Definisi dari data dari struktur database diatas dapat dilihat pada Tabel 4.12 Tabel 4.14 Definisi Data No.
Nama Field
Tipe Data
Keterangan Sebagai primary key dari tabel
1.
id_admin
varchar(3) admin Berisi username dari aktor
2.
username
varchar(15) admin Berisi passsword dari aktor
3.
password
varchar(13) admin Sebagai primary key dari tabel
4.
id_kedubes
varchar(3) kedubes_ri Nama negara dimana kedubes
5.
negara_kedubes
varchar(25) yang dimaksud berada
6.
lat_kedubes
float
Nilai latitude dari kedubes
7.
long_kedubes
float
Nilai longitude dari kedubes Berisi nomor seri dari
8.
serial_number
varchar(12)
perangkat iPhone dan dijadikan sebagai primary key
131
sekaligus sebagai angka unik dari masing-masing perangkat supaya tidak diperlukan akun Sebagai primary key dari tabel 9.
id_tki
varchar(8) identitas_tki Nilai latitude terakhir yang
10.
latitude
float dikirim dari aplikasi clientApp Nilai longitude terakhir yang
11.
longitude
float dikirim dari aplikasi clientApp Waktu (jam) ketika aplikasi clientApp terakhir kali
12.
jam_akhir_posisi
time mengirimkan mengirimkan koordinat Waktu (tanggal) ketika aplikasi clientApp terakhir kali
13.
tgl_akhir_posisi
date mengirimkan mengirimkan koordinat Berisi informasi yang
14.
sos_signal
tinyint(1) menyatakan apakah sinyal
132
S.O.S dari seorang TKI sedang aktif atau tidak Berisi informasi tanggal 15.
sos_date
date
pengiriman sinyal S.O.S dari TKI
16.
no_ktp
varchar(17)
Nomor KTP dari TKI
17.
nama
varchar(35)
Nama TKI
18.
tempat_lahir
varchar(30)
Tempat Lahir TKI
19.
tanggal_lahir
date
Tanggal Lahir TKI
20.
jenis_kelamin
varchar(11)
Jenis Kelamin TKI
21.
agama
varchar(15)
Agama yang dianut TKI Pendidikan terakhir TKI
22.
pendidikan
varchar(20)
sebelum TKI berangkat ke luar negeri
23.
status
varchar(13)
Status TKI berdasarkan KTP
24.
alamat_tki
varchar(100)
Alamat tempat tinggal TKI
25.
kota_tki
varchar(30)
Kota tempat tinggal TKI
133
26.
nama_ayah
varchar(25)
Nama Ayah TKI
27.
nama_ibu
varchar(25)
Nama Ibu TKI
28.
alamat_ortu
varchar(100)
Alamat tempat tinggal dari orang tua TKI Kota tempat tinggal orang tua 29.
kota_ortu
varchar(30) TKI
30.
no_paspor
varchar(9)
31.
tanggal_paspor
date
Nomor Paspor TKI Tanggal diterbitkannya paspor TKI
32.
no_visa
varchar(19)
33.
negara_tujuan
varchar(28)
Nomor Visa TKI Negara tujuan bekerja dari TKI Nama Penyelenggara
34.
pptkis
varchar(35)
Penempatan Tenaga Kerja Indonesia Swasta
35.
nama_agensi
varchar(35)
Nama Agensi dari TKI Nama Majikan atau bos dari
36.
pengguna_tki
varchar(35) TKI
134
Alamat majikan atau bos dari 37.
alamat_pengguna_tki varchar(100) TKI
38.
jabatan
varchar(35)
39.
no_ktkln
varchar(17)
Jabatan atau profesi TKI Nomor Kartu Tanda Kerja Luar Negeri Tanggal diterbitkannya
40.
tanggal_terbit_ktktln
date KTKLN Tanggal berakhirnya KTKLN atau jatuh tempo dimana
41.
tanggal_habis_ktkln
date seorang TKI harus berhenti bekerja dan dipulangkan
135
4.3.3.2 Mendeskripsikan Skenario Sistem Untuk mendeskripsikan setiap interaksi pada setiap skenario dalam SIGEPTKI, dapat digambarkan dengan sequence diagram. 1. Sequence Diagram login
Gambar 4.21
Sequence Diagram login
Sequence diagram yang digambarkan pada Gambar 4.21 adalah sequence diagram untuk proses log in. Pertama admin harus login sistem, kemudian sistem akan memunculkan form login dan meminta admin menginput username dan password. Jika username dan password yang dimasukkan tidak valid, maka sistem secara otomatis mengharuskan admin untuk melakukan input data username dan password kembali. Jika username dan password yang di input benar, maka sistem akan menampilkan halaman utama adminApp.
136
2. Sequence Diagram add data identitas TKI
Gambar 4.22 Sequence Diagram add identitas TKI Sequence diagram yang digambarkan pada Gambar 4.22 merupakan sequence diagram untuk proses add data identitas TKI. Tahapan yang dilakukan oleh admin untuk add data adalah melakukan log in terlebih dahulu, kemudian masuk ke halaman manajemen data dan pilih add data identitas TKI. Sistem akan otomatis membaca field negara_kedubes pada tabel kedubes_ri yang kemudian akan dibuatkan list negara sebagai pencegahan terhadap salah memasukan data negara_tujuan pada tabel identitas_tki, yang merupakan field penting sebagai
137
parameter pada fungsi rute menuju kedubes RI. Setelah itu sistem akan menampilkan form identitas TKI Setelah form dilengkapi, sistem akan mengirimkannya ke tabel identitas_tki, jika data berhasil disimpan maka sistem akan menampilkan pesan berhasil. Jika gagal maka sistem akan menampilkan pesan gagal dan jika terjadi kesalahan pada input data, maka sistem akan menampilkan pesan bahwa terdapat kesalahan pada penginputan data.
3. Sequence Diagram edit data identitas TKI Sequence diagram pada Gambar 4.23 merupakan sequence diagram untuk proses edit data identitas TKI. Pertama Admin harus melakukan login kemudian masuk ke halaman manajemen data. Setelah itu, admin memilih perintah edit identitas TKI yang kemudian sistem akan menampilkan list identitas TKI. Admin memilih identitas TKI mana yang akan dilakukan perubahan data. Setelah melakukan perubahan data, sistem akan mengirimkannya ke tabel identitas_tki, jika data berhasil disimpan maka sistem akan menampilkan pesan berhasil. Jika gagal maka sistem akan menampilkan pesan gagal dan jika terjadi kesalahan pada input data, maka sistem akan menampilkan pesan bahwa terdapat kesalahan pada penginputan data.
138
Gambar 4.23
Sequence Diagram edit identitas TKI
139
4. Sequence Diagram delete data identitas TKI
Gambar 4.24 Sequence Diagram delete identitas TKI Sequence diagram pada Gambar 4.24 merupakan sequence diagram untuk proses delete data identitas TKI. Pertama Admin harus melakukan login kemudian masuk ke halaman manajemen data. Setelah itu, admin memilih perintah delete identitas TKI yang kemudian sistem akan menampilkan list identitas TKI. Admin memilih identitas TKI mana yang akan dihapus. Setelah melakukan perintah delete, sistem akan memeriksa apakah data identitas TKI tersebut sudah terhubung dengan clientApp, jika sudah terhubung, maka field id_tki yang dipilih untuk dihapus dan berada di tabel clientapp akan
140
dihapus dan begitu juga data terpilih pada tabel identitas_tki, jika data berhasil dihapus maka sistem akan menampilkan pesan berhasil. Jika gagal maka sistem akan menampilkan pesan gagal.
5. Sequence Diagram add data clientApp
Gambar 4.25 Sequence Diagram add clientApp Sequence diagram yang digambarkan pada Gambar 4.25 merupakan sequence diagram untuk proses add data clientApp. Tahapan yang dilakukan oleh admin untuk add data clientApp adalah melakukan log in terlebih dahulu, kemudian masuk ke halaman manajemen data dan pilih add data clientApp. Sistem secara otomatis akan menerima data seluruh field id_tki pada tabel identitas_tki sebagai
141
kontrol error dalam pengisian field id_tki pada tabel clientApp. Kemudian sistem akan menampilkan form clientApp Setelah form dilengkapi, sistem akan mengirimkannya ke tabel clientapp, jika data berhasil disimpan maka sistem akan menampilkan pesan berhasil. Jika gagal maka sistem akan menampilkan pesan gagal dan jika terjadi kesalahan pada input data, maka sistem akan menampilkan pesan bahwa terdapat kesalahan pada penginputan data.
6. Sequence Diagram edit data clientApp Sequence diagram pada Gambar 4.26 dibawah, merupakan sequence diagram untuk proses edit data clientApp. Pertama Admin harus melakukan login kemudian masuk ke halaman manajemen data. Setelah itu, admin memilih perintah edit clientApp yang kemudian sistem akan menampilkan list clientApp. Admin memilih data clientApp mana yang akan dilakukan perubahan data. Setelah melakukan perubahan data, sistem akan mengirimkannya ke tabel clientapp, jika data berhasil disimpan maka sistem akan menampilkan pesan berhasil. Jika gagal maka sistem akan menampilkan pesan gagal dan jika terjadi kesalahan pada input data, maka sistem akan menampilkan pesan bahwa terdapat kesalahan pada penginputan data.
142
Gambar 4.26
Sequence Diagram edit clientApp
143
7. Sequence Diagram log out
Gambar 4.27
Sequence Diagram Log out
Sequence diagram pada Gambar 4.27 merupakan sequence diagram untuk proses logout pada aplikasi adminApp. Pertama Admin harus memasukan perintah logout kemudian Sistem akan menampilkan pesan verifikasi. Jika admin memverifikasi nya maka seluruh history akan dihapus dan kembali ke halaman login. Jika dibatalkan maka akan tampil pesan batal logout.
144
8. Sequence Diagram delete data clientApp
Gambar 4.28 Sequence Diagram delete identitas TKI Sequence diagram pada Gambar 4.28 merupakan sequence diagram untuk proses delete data clientApp. Pertama Admin harus melakukan login kemudian masuk ke halaman manajemen data. Setelah itu, admin memilih perintah delete clientApp yang kemudian sistem akan menampilkan list clientApp. Admin memilih clientApp mana yang akan dihapus.
145
Setelah melakukan perintah delete, jika data berhasil dihapus maka sistem akan menampilkan pesan berhasil. Jika gagal maka sistem akan menampilkan pesan gagal.
9. Sequence Diagram monitoring dan rute menuju lokasi TKI
Gambar 4.29 Sequence Diagram monitoring dan rute menuju lokasi TKI Sequence diagram pada Gambar 4.29 merupakan sequence diagram untuk proses monitoring lokasi TKI melalui pemetaan dan rute menuju lokasi tersebut. Untuk mendapatkan rute menuju lokasi TKI, pertama operator harus melakukan log in kemudian masuk ke halaman monitoring TKI. Setelah itu sistem akan mengambil data clientApp dari database untuk ditampilkan dalam bentuk pemetaan. Pada tahap ini operator sudah dapat melihat lokasi para TKI yang sedang bekerja di luar negeri.
146
Setelah proses tersebut, operator dapat memilih lokasi mana yang akan dipilih untuk dituju. Setelah memilih clientApp, sistem akan secara otomatis membuatkan rute untuk mencapai ke lokasi tersebut.
10. Sequence Diagram kirim koordinat lokasi TKI secara otomatis
Gambar 4.30 Sequence Diagram kirim koordinat lokasi TKI Sequene Diagram pada Gambar 4.30 merupakan sequence diagram untuk proses mengirimkan koordinat lokasi TKI secara otomatis dan periodik. Pertama, indikator supaya sistem memulai proses mengirimkan koordinat lokasi TKI adalah ketika waktu memasuki pukul 08:00 waktu setempat. Setelah pukul 08:00 tiba, sistem akan secara otomatis menerima sinyal GPS untuk mengetahui koordinat lokasi device. Jika terjadi kegagalan dalam penerimaan
147
sinyal GPS maka sistem akan menampilkan pesan gagal mengirim lokasi pada halaman utama, dan jika berhasil maka sistem akan menampilkan pesan berhasil mengirim lokasi pada halaman utama juga.
11. Sequence Diagram kirim sinyal S.O.S
Gambar 4.31 Sequence Diagram kirim sinyal S.O.S Sequence Diagram pada Gambar 4.31 merupakan sequence diagram untuk proses mengirim sinyal S.O.S dari clientApp. Pertama, TKI atau pengguna memasukan perintah untuk mengirim sinyal S.O.S yang kemudian akan di respon
148
kolom kosong oleh sistem. Kolom tersebut diisi dengan nama ibu kandung sebagai kontrol prosesnya. Jika nama ibu kandung yang dimasukkan salah, maka sistem akan menampilkan pesan bahwa nama ibu kandung yang dimasukkan salah. Jika benar maka sistem akan memeriksa koneksi internet. Jika tidak ada koneksi internet, maka sistem akan mengirimkan pesan bahwa sinyal S.O.S gagal dikirimkan. Namun, jika sistem sudah terkoneksi internet tetapi tidak dapat menerima sinyal GPS, maka sistem akan menampilkan pesan bahwa telah berhasil mengirim sinyal S.O.S tetapi tanpa mengirimkan lokasi terbaru. Dan jika seluruh koneksi tersedia maka sistem akan menyimpan data ke database tentang sinyal S.O.S dan koordinat lokasi terbaru dan sistem akan menampilkan pesan pada pengguna bahwa sinyal S.O.S beserta lokasi terbaru telah berhasil dikirim.
12. Sequence Diagram menampilkan rute menuju kedubes RI Sequence diagram pada Gambar 4.32 merupakan sequence diagram untuk proses menampilkan petunjuk arah menuju kedubes RI di negara tempat TKI tersebut bekerja. Pertama TKI harus masuk ke halaman utama aplikasi clientApp, kemudian masukan perintah tampilkan rute menuju kedutaan besar RI. Sistem akan mencari informasi mengenai negara tempat TKI tersebut bekerja dengan mengakses database. Kemudian setelah data didapat, sistem akan kembali mengakses database untuk mendapatkan data tentang lokasi kedubes RI. Setelah sistem mendapatkan lokasi kedubes RI pada negara tempat TKI bekerja, sistem akan menentukan rute menuju lokasi tersebut dan menampilkannya pada pengguna.
149
Gambar 4.32 Sequence Diagram menampilkan petunjuk arah menuju kedubes RI
13. Sequence Diagram menampilkan masa kontrak Sequence diagram pada Gambar 4.32 merupakan sequence diagram untuk proses menampilkan petunjuk arah menuju kedubes RI di negara tempat TKI tersebut bekerja. Pertama TKI harus masuk ke halaman utama aplikasi clientApp, kemudian masukan perintah tampilkan rute menuju kedutaan besar RI. Sistem akan mencari informasi mengenai negara tempat TKI tersebut bekerja dengan mengakses database. Kemudian setelah data didapat, sistem akan kembali mengakses database untuk mendapatkan data tentang lokasi kedubes RI. Setelah sistem mendapatkan lokasi kedubes RI pada negara tempat TKI bekerja, sistem akan menentukan rute menuju lokasi tersebut dan menampilkannya pada pengguna.
150
Gambar 4.33 Sequence Diagram menampilkan masa kontrak kerja Sequence Diagram pada Gambar 4.33 merupakan sequence diagram untuk proses menampilkan masa kontrak kerja kepada TKI. Proses nya adalah ketika TKI membuka aplikasi maka sistem akan secara otomatis mengambil data tanggal expired KTKLN dari TKI tersebut dan kemudian menampilkannya kepada TKI tersebut.
4.3.3.3 Membangun Interface Pada pengembangan SIGEPTKI ini menggunakan pendekatan Framework Cocoa pada Objective-C. Menurut Keur, et al. 2014, pembangunan interface pada pemrograman dengan pendekatan Framework Cocoa pada Objective-C adalah
151
menggunakan storyboard. Seperti yang sudah dijelaskan pada Bab 2 tentang storyboard, Gambar 4.34 merupakan storyboard dari adminApp, Gambar 4.35 merupakan storyboard dari serverApp dan Gambar 4.36 merupakan storyboard dari clientApp
Gambar 4.34 Storyboard adminApp
152
Gambar 4.35
Storyboard serverApp
Gambar 4.36 Storyboard clientApp
153
4.3.3.4 MVC Programming MVC merupakan sebuah metode untuk membuat sebuah aplikasi dengan memisahkan data (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). Penulis menggunakan pola MVC Programming dikarenakan menurut James, et al 2013 Untuk dapat mendapatkan pemrosesan yang efisien dalam pemrograman mobile, maka MVC Programming adalah pilihan pola pemrograman yang tepat. Pola MVC Programming biasa digambarkan dengan class diagram, pada bagian sebelumnya telah ditentukan bagaimana class diagram untuk sistem ini, maka pada bagian MVC Programming, penulis hanya tinggal mengadaptasi dari class diagram yang sudah dibuat menjadi Pola MVC pada Sistem ini dibagi menjadi 2 yaitu pola MVC pada pembangunan serverApp dan pola MVC pada pembangunan clientApp. Sebagaimana yang terdapat pada Gambar 4.31 adalah pola MVC pada pembangunan serverApp
154
Gambar 4.37 Model MVC untuk membangun adminApp Pada Gambar 4.37 dapat diambil kesimpulan bahwa dalam membangun aplikasi adminApp, maka akan dibuat kelas utama dalam pemrogramannya yaitu kelas control_login, control_logout, dan control_data_tki. Kelas utama itu dibuat dalam bahasa pemrograman Objective-C, seperti yang telah dijelaskan pada deployment diagram pada bagian sebelumnya. Model pada pola MVC pembangunan aplikasi adminApp terdiri dari 4 kelas pada model yaitu tabel admin, kedubes_ri, tabel identitas_tki dan tabel clientapp. Untuk kelas admin dan kedubes_ri, kegiatan pada controller hanya sebatas melihat data, tidak memiliki operasi untuk mengubah kedua kelas tersebut. Sedangkan untuk kelas identitas_tki dan clientApp, aplikasi adminApp memiliki akses penuh pada kelas tersebut. Kelas-kelas yang terdapat pada model akan menjadi tabel pada database.
155
Database yang digunakan adalah MySQL dan sebagai penghubungnya adalah menggunakan bahasa PHP, karena Sistem ini menaruh databasenya secara cloud seperti yang sudah digambarkan pada deployment diagram juga. Selain PHP sebagai penghubung, karena Model ini terkait dengan perintah manajerial data, maka sebagai encoder datanya digunakan bahasa pemrograman JSON. Proses pembangunan View dapat dilakukan dengan bantuan skema user interface yang telah didefinisikan dengan storyboard pada bagian sebelumnya dengan bahasa pemrogramman Objective-C. MVC Programming untuk aplikasi serverApp, adalah sebagaimana pada Gambar 4.38, yaitu terdiri dari dua kelas utama dalam controller nya yaitu kelas monitoring_tki dan kelas route_generator_tki. Sedangkan pada Model nya sama masih sama dengan adminApp, hanya saja pada serverApp tidak mengakses kelas admin dan kedubes_ri.
Gambar 4.38 Pola MVC untuk membangun serverApp
156
Berikutnya, dalam pembangunan aplikasi clientApp sebagaimana model mvc nya pada Gambar 4.39 dijelaskan bahwa
Gambar 4.39 Pola MVC untuk membangun clientApp Pada Gambar 4.39 menjelaskan terdapat 4 kelas utama untuk merancang aplikasi clientApp di bagian controller, yaitu kirim_koordinat_secara_otomatis, menampilkan_masa_kontrak, control_data_sos_signal, dan route_generator_dubes Untuk Model pada pembangunan clientApp, ternyata memiliki kesamaan dalam pembangunan serverApp dan adminApp. Hal tersebut menandakan adanya integrasi atau transaksi antara clientApp dengan serverApp. Maksud dari pernyataan tersebut yaitu kelas dari bagian Model yang sama tidak perlu dibuat ulang.
157
4.3.4
Transition
4.3.4.1 Prototype Aplikasi Prototype ClientApp
Gambar 4.40 Prototype clientApp
158
Pada clientApp sebagaimana pada Gambar 4.40 terdapat 3 tabbar, yaitu tab home, tab S.O.S, dan kedubes. Tab home sebagaimana pada Gambar 4.40, menampilkan masa kontrak TKI, Tab S.O.S menampilkan textfield nama Ibu Kandung TKI untuk dapat mengirimkan sinyal S.O.S dan tab kedubes menampilkan peta lokasi kedubes RI tempat TKI tersebut bekerja yang kemudian terdapat tombol get direction to Indonesia Embassy untuk mendapatkan rute menuju Kantor Kedutaan RI. Pada adminApp sebagaimana pada Gambar 4.41 terdapat 4 tabbar, yaitu tab add idTki, tab listTki, tab addclientApp, dan tab listClientApp. Pada tab addTKI berisi beberapa textfield guna memasukan data TKI, begitu juga pada tab addclientApp berisi form untuk menambahkan data clientApp atau device-nya. Pada tab listTki menampilkan tableView untuk menampilkan daftar TKI, yang ditampilkan hanya ID TKI dan Nama nya saja. Kemudian jika admin swipe maka akan tampil tombol hapus untuk menghapus salah satu data TKI dan jika di tap maka dapat meng-edit identitas TKI. Begitu juga pada tab listClientApp, akan ditampilkan daftar clientApp dengan menampilkan hanya serial_iphone dan ID TKI yang telah didaftarkan. Jika admin swipe maka akan tampil tombol hapus untuk menghapus salah satu data clientApp dan jika di tap maka dapat meng-edit data clientApp.
159
Gambar 4.41 Prototype adminApp
160
Pada prototype serverApp sebagaimana pada Gambar 4.42 langsung menuju halaman utama yang menampilkan peta berisikan poin-poin lokasi TKI. Jika ada TKI yang mengirimkan sinyal S.O.S, maka poin tersebut akan berubah menampilkan tanda “+”. Saat di klik salah satu poin tersebut akan menampilkan serial_iphone, dan jika di klik sekali lagi akan tampil ke halaman berikutnya menampilkan data TKI. Untuk mendapatkan rute operator hanya tinggal mengklik get direction.
Gambar 4.42 Prototype serverApp
161
4.3.4.2 Pengujian Sistem Pada tahap ini juga dilakukan pengujian sistem. Pengujian sistem ini merupakan pengujian yang dilakukan terhadap sistem secara keseluruhan (Whitten & Bentley, 2005: 501). Dalam tahap ini memastikan bahwa sistem telah selesai dirancang dan diuji secara keseluruhan. Dalam pengujian SIGEPTKI ini menggunakan metode Black Box. Pengujian Black Box dilakukan tanpa memahami internal behavior. Berikut hasil hasil dari pengujian sistem yang dilakukan 1. Pengujian pada tampilan halaman adminApp Tabel 4.13 Pengujian pada tampilan adminApp No.
Rancangan Proses
Hasil yang diharapkan
Admin melakukan
Form login telah
login
disediakan
Hasil
Keterangan
Sesuai
1.
Jika Admin salah memasukan Nilai input 2.
username dan
Tampil alert
Sesuai tidak valid
password pada saat login Tampil halaman tab 3.
Admin sukses login
Sesuai add new TKI
Tab bar Controller
Terdapat 4 tab bar
adminApp
yaitu add new TKI, list
Sesuai
4.
162
TKI, add new clientApp, dan list clientApp. Tampil form terkait 5.
Tab add new TKI
Sesuai dengan data TKI Tampil list ID TKI
6.
Tab list TKI
Sesuai beserta Nama TKI Tampil Halaman edit data TKI berisikan
Klik salah satu list form data TKI yang
7.
Sesuai
TKI telah terisi dengan data yang sudah ada. Data yang lama dapat 8.
Edit data TKI
Sesuai diubah dan disimpan Terdapat
Jika terjadi 9.
kesalahan dalam penulisan
kesalahan Tampil alert
Sesuai
dalam pengisian form.
163
Data TKI yang dipilih 10.
Menghapus data TKI
Sesuai dapat terhapus
Tab add new
Tampil form terkait
clientApp
dengan data clientApp
Sesuai
11.
Tampil list ID 12.
Tab list clientApp
clientApp beserta ID
Sesuai
TKI Tampil Halaman edit data clientApp Klik salah satu list
berisikan form data
clientApp
clientApp yang telah
Sesuai
13.
terisi dengan data yang sudah ada. Terdapat kesalahan Data yang lama dapat 14.
Edit data clientApp
Sesuai
dalam
diubah dan disimpan pengisian form.
164
Jika terjadi 15.
kesalahan dalam
Tampil alert
Sesuai
penulisan Data clientApp yang 16.
Menghapus data TKI
Sesuai dipilih dapat terhapus
Admin melakukan
Akan tampil halaman
log out
login
Sesuai
17.
2.
Pengujian pada tampilan halaman serverApp
Tabel 4.14 Pengujian pada tampilan serverApp No.
Rancangan Proses
1.
Membuka aplikasi
Hasil yang diharapkan
Hasil
Tampil halaman Sesuai monitoring TKI Tampilkan keberadaan Memilih negara TKI yang berada di
2.
Sesuai
untuk dimonitor negara terpilih
3.
Jika ada TKI yang
Akan tampil pin TKI
mengirim sinyal
yang berbeda dengan
S.O.S
yang lainnya
Sesuai
Keterangan
165
Lokasi TKI ditampilkan Memilih salah satu beserta status dan
4.
Sesuai
lokasi TKI identitasnya Memilih get
Tampil rute menuju
direction
lokasi TKI yang dipilih
Sesuai
5.
3. Pengujian pada tampilan halaman serverApp Tabel 4.15 Pengujian pada tampilan clientApp No.
Rancangan Proses
Hasil yang diharapkan
TKI membuka
Tampil Tab bar masa
aplikasi
kontrak
Tab bar masa
Tampil masa kontrak
kontrak
kerja dalam satuan hari
Hasil
Sesuai
1.
Sesuai
2.
Tampil halaman kirim 3.
Tab bar sinyal S.O.S
Sesuai sinyal S.O.S
Klik kirim sinyal
Tampil field nama ibu
S.O.S
kandung
Sesuai
4.
Keterangan
166
Tampil pesan berhasil TKI memasukan mengirimkan sinyal
5.
Sesuai
nama ibu kandung S.O.S Jika TKI salah 6.
memasukan nama
Nama ibu Tampil alert
Sesuai
ibu kandung
tidak sesuai Tampil Halaman
Tab bar rute menuju
kedubes beserta lokasi
kedubes
Kedubes RI negara
Sesuai
7.
TKI tersebut bekerja Tampil rute menuju 8.
Klik get direction
kandung
kedubes RI negara TKI Sesuai tersebut bekerja
BAB V PENUTUP
3.1 Kesimpulan Dari pembahasan yang sudah diuraikan, dapat disimpulkan bahwa: 1.
Sistem informasi geospasial berbasis mobile pada perlindungan TKI dikembangkan hanya menggunakan data identitas TKI yang didapat dari BNP2TKI dan koordinat lokasi Kedubes Indonesia di masingmasing negara yang didapat dari google map (http://maps.google.com). Sistem ini dinamai SIGEPTKI dan terbagi menjadi 3 aplikasi native, yaitu clientApp yang digunakan oleh TKI, serverApp yang digunakan oleh orang yang bertugas untuk mengawasi keberadaan dan status TKI (operator) dan adminApp yang digunakan oleh admin untuk memanipulasi data. Aplikasi SIGEPTKI dirancang menggunakan tools Xcode dengan Framework Cocoa pada Objective-C dari sisi aplikasi native-nya sedangkan dari sisi web service menggunakan PHP-JSON sebagai bahasa pengembangan API (Application Programming Interface) dan MySQL sebagai database sistem.
2.
SIGEPTKI memanfaatkan teknologi GPS yang tertanam pada device smartphone untuk mendapatkan koordinat lokasi dan kemudian mengirimkannya ke web service secara otomatis setiap jam 8 pagi dan setiap TKI tersebut membuka aplikasi clientApp. Kemudian serverApp 60
168
akan menerima secara real time data koordinat lokasi TKI tersebut karena setiap aplikasi native terhubung ke database yang berada di web service. 3.
SIGEPTKI menggunakan fasilitas Apple Map sehingga mampu menyediakan rute dan petunjuk arah dari lokasi TKI menuju Kantor Kedubes RI setempat dan dari lokasi operator menuju lokasi near real time TKI.
4.
SIGEPTKI mampu menampilkan masa kontrak kerja dari seorang TKI walaupun aplikasi tersebut sedang tidak dibuka oleh TKI dengan fasilitas Notifikasi.
5.
SIGEPTKI melalui aplikasi clientApp mampu mengirimkan sinyal S.O.S (sinyal bahaya) ke serverApp secara real time.
3.2 Saran Pembangunan Sistem Informasi Geospasial berbasis mobile pada Perlindungan Tenaga Kerja Indonesia masih memiliki kekurangan, dan keterbatasan, oleh karena itu ada beberapa hal yang perlu dikembangkan agar sistem yang dibangun menjadi lebih baik antara lain: 1. Sebaiknya Sistem Informasi Geospasial ini memiliki algoritma yang dapat menganalisis keterkaitan antara keberadaan TKI dengan Kedubes RI. Misalnya, jika terjadi kasus seorang TKI tiba-tiba mengalami perpindahan lokasi negara diakibatkan satu dan lain hal, maka sistem
169
harus menyediakan rute menuju Kedubes RI dimana TKI tersebut berada, bukan berdasarkan dimana TKI tersebut seharusnya bekerja. 2. Sebaiknya web service menggunakan teknologi OAuth untuk mengamankan API-nya karena sistem ini adalah Sistem pemerintahan yang cakupannya global. 3. Setiap device iPhone yang dipinjamkan ke TKI, sebaiknya diberikan karakteristik supaya menandakan bahwa device tersebut adalah milik pemerintah Indonesia dan tidak dapat diperjual belikan. 4. Sebaiknya database yang digunakan adalah database yang sanggup menampung big data, seperti oracle. 5. Adanya
pengembangan
fitur-fitur
perlindungan mobile digital bagi TKI.
lainnya
berkaitan
dengan
DAFTAR PUSTAKA
Apple Developer Modul,, 2012. Concepts in Objective-C Programming. Apple.Inc, California Ladjamudin Al-Bahra bin., 2003. Analisis dan Desain Sistem Informasi, Penerbit Graha Ilmu, Yogyakarta Arikunto, S., 2006 Metodelogi penelitian. Bina Aksara, Yogyakarta Muharram Arifin & Hindayani Hepi, 2012 Aplikasi Sistem Informasi Geografis dan Penginderaan Jauh untuk Monitoring Area Sawah dengan Data Multitemporal (Studi Kasus: Area Sawah Kabupaten Sidoarjo). FTSSukolilo. BNP2TKI., 2014. Data Penempatan dan Perlindungan TKI, Jakarta BNP2TKI., 2014. Data Identitas TKI, Jakarta Booch Grady, R. A. Maksimchuk, M. W. Engle, B. J. Young, J. A. Houtson., 2007. Object-Oriented Analysis and Design With Applications. Addison-Wesley, New Jersey. Budiyanto Eko., 2006. Avenue untuk Pengembangan Sistem Informasi Geografis. Penerbit Andi, Yogyakarta Buscanek James., 2014. Learn IOS 7 App Development. Apress, California. Choi Simon, P. Wang, E. Delgado, S.H. Ryu, 2007. Monitoring Small Area Growth with GIS: An Application to the City of Los Angeles. Paper presented at the 2007 ESRI International User Conference, San Diego, California, June 1822, 2007. DOC #127919 v7 Dwi Prasetyo Didik, 2003.Tip dan Trik Kolaborasi PHP dan MySQL PT.ElexMedia Komputindo, Jakarta. ECHMA International, 2013. Standard ECHMA-404: The JSON Data Interchange Format. Ruo du Rhone, Geneva Isaacson Walter, 2011 Steve Jobs. Simmon & Schuster, New York I.C Onuigbo & K.U Orisakwe, 2013. Application of Geographic Information System and Remote Sensing in Road Monitoring in Mina and Environs, Nigeria. IOSR Journal Of Environmental Science, Toxicology And Food Technology (IOSR-JESTFT) e-ISSN: 2319-2402,p- ISSN: 2319-2399. Volume 3, Issue 6
60
171
Jakowsky Piotr, M.H.Tsou, R.D. Wright, 2007. Applying Internet Geographic Information System for Water Quality Monitoring. Geography Compass 1/6 :1315–1337, 10.1111/j.1749-8198.2007.00065.x Jogiyanto, H.M., 2005. Analisis & Desain Sistem Informasi, Andi, Yogyakarta. Kadir, Abdul. Pengenalan Sistem Informasi, Andi, Yogyakarta. Kementrian Keuangan, 2014. Infografis Kementrian Keuangan Tahun 2014. Jakarta Kementrian Tenaga Kerja dan Transmigrasi, 2014. Data TKI Tahun 2014. Jakarta Keur Christian, A. Hillegass, J. Conway. 2014. IOS Programming: The Big Nerd Ranch Guide. Big Nerd Ranch, Atlanta Kochan G. Stephen., 2014. Programming in Objective-C (sixth edition). AddisonWesley, New Jersey Krikorian, H. F., 2003. Introduction to Object-Oriented Engineering, Part 1. IT Professional, p.40. Mata-Toledo Ramon & Cushman K. Pauline, 2010. Schaum’s Outline Dasar-Dasar Database Relational. Erlangga, Jakarta Nazir. (1998). Metode Penelitian Rineka Cipta, Jakarta Pfeifer Report, 2013. How iOS7 Stacks Up: Smartphone OS User Experience Shootout, Pfeifer Report, Malakoff Pratama Antonius Nugraha, 2010. CodeIgniter: Cara Mudah Membangun Aplikasi PHP. Mediakita, Jakarta Pressman, R.S. (2010), Software Engineering : a practitioner’s approach, McGraw-Hill, New York Priyono & Andriyani, 2012. Aplikasi SIG Web untuk Monitoring dan Manajemen Kualitas Pendidikan Sekolah Menengah Atas di Kota Solo Jawa Tengah. Universitas Muhammadiyah Surakarta. Salem B, 2003, Application of GIS to Biodiversity Monitoring, Journal of Arid Environments 54: 91–114. Sugiono, 2009. Metode Penelitian Pendekatan Kuantitatif, Kualitatif dan R & D. Alfa Beta., Bandung Supardi, M.d, (2006). Metodologi Penelitian. Yayasan Cerdas Press, Mataram Triyono Joko & Wahyudi Kunjung, 2008, Aplikasi Sistem Informasi Geografi Tingkat Pencemaran Industri di Kabupaten Gresik. Jurnal Teknologi Vol. 1 No 1
172
Undang-Undang Republik Indonesia No. 39 Tahun 2004 Tentang Penempatan dan Perlindungan Tenaga Kerja Indonesia di Luar Negeri. Peraturan Presiden Republik Indonesia No. 81 Tahun 2006 Tentang Badan Nasional Penempatan dan Perlindungan Tenaga Kerja Indonesia. Whitten Jeffrey & Bentley Lonnie, 2005. Systems Analysis and Design Methods. McGraw-Hill, New York Zaenudin, 2012. Tugas Dalam Hidup. Gramedia. Jakarta
LAMPIRAN
60
Lampiran 1 Hasil Wawancara Dengan Deputi Bidang Penempatan
Responden
: Ir.. Agusdin Subiantoro M, MA
Jabatan
: Deputi Bidang Penempatan
Tanggal
: 24 Agustus 2014
Tempat
: BNP2TKI
Tujuan
: Mengetahui Cakupan Kegiatan Penempatan TKI
Kutipan Wawancara :
Tanya
: Apa Tugas BNP2TKI secara umum pada bidang penempatan ?
Jawab
: Mengawasi dan mengatur kebijakan Teknis tentang penempatan TKI, karena orang kalau mau daftar jadi TKI, daftarnya ke Pelaksana Swasta bukan ke BNP2TKI langsung
Tanya
: Pelaksana Penempatan Swasta itu cakupannya apa ?
Jawab
: Begini, Jadi PPTKIS itu yang berada di level paling bawah, istilahnya frontline. PPTKIS langsung turun menangani TKI, pendaftaran, pendataan, penempatan dan sebagainya. Dan seluruh kegiatan PPTKIS itu dibawah pengawasan BNP2TKI khususnya pada deputi ini ya di bidang Penempatan.
Tanya
: Oh jadi BNP2TKI Cuma mengawasi kegiatan PPTKIS saja ?
Jawab
: Tidak juga, Seluruh data yang dikumpulkan oleh PPTKIS disortir di BNP2TKI dan dari seluruh data serta pengajuan Negara Tujuan, layaknya Keberangkatan haji, TKI juga
memiliki Kuota per negara. Makanya kita yang sortir dan kita kasih jatah Negara ke PPTKIS-PPTKIS. Tanya
: Jadi BNP2TKI punya seluruh data Penempatan TKI ya pak ?
Jawab
: BNP2TKI memiliki Seluruh data TKI, dari KTP, Paspor, Visa dan sebagainya yang terkait dengan Ketenagakerjaan Luar Negeri dan mengeluarkan KTKLN (Kartu Tanda Kerja Luar Negeri) sebagai tanda bahwa orang tersebut telah terdaftar di BNP2TKI.
Lampiran 2 Hasil Wawancara Dengan Deputi Bidang Perlindungan
Responden
: Drs Muhammad Syafrie
Jabatan
: Deputi Bidang Perlindungan
Tanggal
: 22 Agustus 2014
Tempat
: BNP2TKI
Tujuan
: Mengetahui Cakupan Kegiatan Perlindungan TKI
Kutipan Wawancara :
Tanya
: Apa Tugas BNP2TKI secara umum pada bidang perlindungan ?
Jawab
: Merumuskan, mengkoordinasikan, dan mengawasi pelaksanaan kebijakan teknis Perlindungan TKI.
Tanya
: Perlindungan TKI dilakukan itu dari kapan sampai kapan ?
Jawab
: Perlindungan TKI dilakukan dari masa pra-pemberangkatan, masa penempatan kerja hingga pemulangan sampai di agen pptkis masing-masing.
Tanya
: Biasanya masa yang mana yang paling sering terjadi masalah ?
Jawab
: Biasanya sih di masa penempatan kerja dan berdampak ke pemulangan. Kalau TKI itu sudah habis masa KTKLN tapi masih tetap bekerja kan jd masalahnya merambat ke pemulangan dong. Makanya akar masalahnya sebenarnya ya di masa penempatan kerja itu. Banyak TKI yang gaji nya belum dibayar ketika masa KTKLN nya sudah mau habis. Makanya dia ga
pulang dulu sampai dibayar. Eh ketika masa KTKLN nya habis, majikannya lapor polisi deh biar si TKI itu ditangkep. Tanya
: Oh jadi itu masalah paling sering ya pak ?
Jawab
: Ya, itu sering dan ada juga yang tidak beruntung mendapat majikan yang jahat, jadi disiksa tuh kaya yang suka kamu tonton di berita-berita.
Tanya
: Memang nya ga bisa ya pak kita datangi rumah majikannya itu buat jemput TKI nya.?
Jawab
: Sebenarnya bisa, namun terkadang kalau di Arab dan Singapore itu
majikannya
melacaknya.
pindah-pindah
rumah
jadi
kita
susah
Lampiran 3 Hasil Wawancara Dengan Deputi Bidang Penempatan
Terkait Pengajuan TKI 1. Mudah dalam memperoleh informasi tentang kriteria menjadi TKI
□ Sangat Mudah □ Mudah 88% 12%
□ Cukup Mudah □ Tidak Mudah 0% 0%
2. Mudah untuk mementuhi kriteria sebagi TKI
□ Sangat Mudah □ Mudah 0% 12%
□ Cukup Mudah □ Tidak Mudah 81% 7%
Terkait Penempatan TKI 3. Apakah Negara tujuan selalu sesuai dengan yang anda inginkan
□ Sangat Sesuai 0%
□ Sesuai 12%
□ Cukup Sesuai 18%
□ Tidak Sesuai 70%
4. Apakah Negara tujuan sesuai dengan agama TKI
□ Sangat Sesuai 0%
□ Sesuai 88%
□ Cukup Sesuai 0%
□ Tidak Sesuai 12%
5. Apakah Negara tujuan selalu sesuai dengan profesi TKI
□ Sangat Sesuai 0%
□ Sesuai 92%
□ Cukup Sesuai 8%
□ Tidak Sesuai 0%
Terkait Perlindungan TKI 6. Apakah perlindungan TKI yang telah diberikan oleh pemerintah telah sesuai dengan apa yang diharapkan oleh anda?
□ Sangat Sesuai 0%
□ Sesuai 0%
□ Cukup Sesuai 88%
□ Tidak Sesuai 12%
7. Apakah Kedubes RI setempat perlu mengetahui lokasi terakhir TKI setiap 24 jam?
□ Sangat Perlu 12%
□ Perlu 70%
□ Cukup Perlu 18%
□ Tidak Perlu 0%
8. Apakah TKI memerlukan pengingat masa kontrak kerjanya?
□ Sangat Perlu 88%
□ Perlu 0%
□ Cukup Perlu 12%
□ Tidak Perlu 0%
9. Apakah TKI memerlukan petunjuk arah secara digital menuju Kedubes RI setempat?
□ Sangat Perlu 82%
□ Perlu 0%
□ Cukup Perlu 18%
□ Tidak Perlu 0%
10. Apakah sinyal S.O.S untuk Kedubes RI setempat diperlukan sebagai penanda bahwa TKI yang bersangkutan sedang mengalami sesuatu yang tidak diinginkan?
□ Sangat Perlu 100%
□ Perlu 0%
□ Cukup Perlu 0%
□ Tidak Perlu 0%
Lampiran 4 Data Identitas TKI berdasarkan BNP2TKI
Lampiran 5 Data Statistik Tahun 2006 - 2014 dari BNP2TKI
Lampiran 6 UU No. 39 Tahun 2004 Tentang Penempatan dan Perlindungan TKI
Lampiran 7 Perpres No. 81 Tahun 2006 tentang Badan Nasional Penempatan dan Perlindungan TKI
Lampiran 8 Peraturan Kepala BNP2TKI No. SE03/KA/VIII/2009
Lampiran 9 Sample Source Code pada halaman awal serverApp
Pada file Brain.h // // // // // // //
Brain.h MonitoringTKIServer Created by Azis Senoaji Prasetyotomo on 9/2/14. Copyright (c) 2014 ASP.inc. All rights reserved.
#import
@interface Brain : NSObject + (NSArray *)getClientAppArray; + (void)setClientAppArray:(NSArray *)newClientAppArray; + (NSArray *)getIdentitasTkiArray; + (void)setIdentitasTkiArray:(NSArray *)newIdentitasTkiArray; + (NSArray *)getTkiArray; + (void)setTkiArray:(NSArray *)newTkiArray; + (NSArray *)getVisaArray; + (void)setVisaArray:(NSArray *)newVisaArray; + (NSString *)getLatitudeTki; + (void)setLatitudeTki:(NSString *)newLatitudeTki; + (NSString *)getLongitudeTki; + (void)setLongitudeTki:(NSString *)newLongitudeTki; + (NSString *)getIdTki; + (void)setIdTki:(NSString *)newIdTki; @end
Pada file Brain.h // // // // // // //
Brain.m MonitoringTKIServer Created by Azis Senoaji Prasetyotomo on 9/2/14. Copyright (c) 2014 ASP.inc. All rights reserved.
#import "Brain.h" @implementation Brain
static static static static static static static
NSArray *clientAppArray; NSArray *identitasTKIArray; NSArray *tkiArray; NSArray *visaArray; NSString *latitudeTki; NSString *longitudeTki; NSString *idTki;
+ (NSArray *)getClientAppArray { return clientAppArray; } + (void)setClientAppArray:(NSArray *)newClientAppArray { if (clientAppArray !=newClientAppArray) { clientAppArray = [newClientAppArray copy]; } } + (NSArray *)getIdentitasTkiArray { return identitasTKIArray; } + (void)setIdentitasTkiArray:(NSArray *)newIdentitasTkiArray { if (identitasTKIArray != newIdentitasTkiArray) { identitasTKIArray = [newIdentitasTkiArray copy]; } } + (NSArray *)getTkiArray { return tkiArray; } + (void)setTkiArray:(NSArray *)newTkiArray { if (tkiArray != newTkiArray) { tkiArray = [newTkiArray copy]; } } + (NSArray *)getVisaArray { return visaArray; } + (void)setVisaArray:(NSArray *)newVisaArray
{ if (visaArray != newVisaArray) { visaArray = [newVisaArray copy]; } } + (NSString *)getLatitudeTki { return latitudeTki; } + (void)setLatitudeTki:(NSString *)newLatitudeTki { if (latitudeTki != newLatitudeTki) { latitudeTki = [newLatitudeTki copy]; } } + (NSString *)getLongitudeTki { return longitudeTki; } + (void)setLongitudeTki:(NSString *)newLongitudeTki { if (longitudeTki != newLongitudeTki) { longitudeTki = [newLongitudeTki copy]; } } + (NSString *)getIdTki { return idTki; } + (void)setIdTki:(NSString *)newIdTki { if (idTki != newIdTki) { idTki = [newIdTki copy]; } } @end
Pada file MonitoringViewController.h // //
MonitoringViewController.h
// // // // //
MonitoringTKIServer Created by Azis Senoaji Prasetyotomo on 9/2/14. Copyright (c) 2014 ASP.inc. All rights reserved.
#import #import <MapKit/MapKit.h> #define METERS_PER_MILE 1609.344 @interface MonitoringViewController : UIViewController <MKMapViewDelegate> { MKMapView *clientAppMap; NSArray *clientAppArray; NSString *titleTapped; NSString *subtitleTapped; NSString *latTapped; NSString *longTapped; } @property (strong, nonatomic) IBOutlet MKMapView *clientAppMap; - (void)addAnnotation; - (void)fletchDataClientApp; @end
Pada file MonitoringViewController.m // // // // // // //
MonitoringViewController.m MonitoringTKIServer Created by Azis Senoaji Prasetyotomo on 9/2/14. Copyright (c) 2014 ASP.inc. All rights reserved.
#import "MonitoringViewController.h" #import "Brain.h" #import "Annotation.h" @interface MonitoringViewController () @end @implementation MonitoringViewController @synthesize clientAppMap;
int totalPins; - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self) { } return self; } - (void)viewWillAppear:(BOOL)animated { // 1 NSNumber *lat = [NSNumber numberWithFloat:1.364194]; NSNumber *lon = [NSNumber numberWithFloat:103.822407]; CLLocationCoordinate2D zoomLocation; zoomLocation.latitude = lat.doubleValue; zoomLocation.longitude= lon.doubleValue; // 2 MKCoordinateRegion viewRegion = MKCoordinateRegionMakeWithDistance(zoomLocation, 100*METERS_PER_MILE, 100*METERS_PER_MILE); // 3 MKCoordinateRegion adjustedRegion = [clientAppMap regionThatFits:viewRegion]; // 4 [clientAppMap setRegion:adjustedRegion animated:YES]; } - (void)viewDidLoad { [super viewDidLoad]; [self fletchDataClientApp]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; } - (void)fletchDataClientApp { dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIO RITY_DEFAULT, 0), ^{
NSData *data1 = [NSData dataWithContentsOfURL: [NSURL URLWithString:@"http://berita7as.com/bnp2tki/clientapp.php"] ]; NSError *error; clientAppArray = [NSJSONSerialization JSONObjectWithData:data1 options:kNilOptions error:&error]; dispatch_async(dispatch_get_main_queue(), ^{ NSLog(@"%@", clientAppArray); [Brain setClientAppArray:clientAppArray]; [self addAnnotation]; }); }); } - (void)addAnnotation { for (id<MKAnnotation> annotation in clientAppMap.annotations) { [clientAppMap removeAnnotation:annotation]; } NSArray *AS = [Brain getClientAppArray]; totalPins = [AS count]; NSLog(@"total pins = %d",totalPins); for (int i = 0; i
if (id_tkiString == nil || id_tkiString == (id)[NSNull null]) { NSLog(@"nilai nya nil"); } else { NSLog(@"latitude tidak nil"); CLLocationCoordinate2D coordinate; coordinate.latitude = latitude.doubleValue; coordinate.longitude = longitude.doubleValue; NSString *sosSatatus = [[AS objectAtIndex:i]valueForKey:@"sos_signal"]; if ([sosSatatus isEqualToString:@"1"]) { Annotation *annotation = [[Annotation alloc]init]; annotation.coordinate = coordinate; annotation.title = id_tkiString; annotation.catagory = @"1"; [clientAppMap addAnnotation:annotation]; } else { Annotation *annotation = [[Annotation alloc]init]; annotation.coordinate = coordinate; annotation.title = id_tkiString; annotation.catagory = @"0"; [clientAppMap addAnnotation:annotation]; }
}
} }
-(MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {
MKAnnotationView *annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"loc"]; annotationView.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure]; annotationView.canShowCallout = YES; Annotation *myAnn = (Annotation *)annotation; NSLog(@"myAnn.catMapId %@",myAnn.catagory); NSString *imageName = nil; NSString *katagori = myAnn.catagory; if ([katagori isEqualToString:@"1"]) { imageName = @"firstaid.png"; annotationView.image = [UIImage imageNamed:imageName]; } else { imageName = @"default.png"; } return annotationView; } - (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control { Annotation *annotationTapped = (Annotation *)view.annotation; [self performSegueWithIdentifier:@"detailTKI" sender:view]; titleTapped = [NSString stringWithFormat:@"%@", annotationTapped.title]; NSLog(@"annotation tapped = %@", titleTapped); [Brain setIdTki:titleTapped]; latTapped = [NSString stringWithFormat:@"%f", annotationTapped.coordinate.latitude]; longTapped = [NSString stringWithFormat:@"%f", annotationTapped.coordinate.longitude]; NSLog(@"yg d tap %@, %@", latTapped, longTapped); [Brain setLatitudeTki:latTapped]; [Brain setLongitudeTki:longTapped]; } @end
Lampiran 10 Buku Manual Pengoperasian SIGEPTKI
BUKU MANUAL PENGOPERASIAN SIGEPTKI SIGEPTKI Ver. 1.0
Petunjuk Penggunaan Aplikasi AdminApp SIGEPTKI
1. Log in Aplikasi Deskripsi : 1. Digunakan supaya admin dapat masuk dan menggunakan aplikasi Langkah-langkah : 1. Buka Aplikasi adminApp, kemudian masukan username dan password 2. Tap tombol log in
2. Tambah data clientApp Deskripsi: 1. Digunakan untuk menambahkan clientApp atau device iphone baru. 2. Mendaftarkan serial number dari perangkat iPhone ke dalam database. Langkah-langkah: 1. Tap tabbar addClientApp 2. Masukkan Serial Number perangkat iPhone pada kolom yang tersedia 3. Tap tombol Enter.
Field Serial Number
Tombol Enter
Tabbar addClientApp
3. Edit & Hapus data clientApp Deskripsi 1. Digunakan untuk mengubah data atribut pada clientApp atau menghapus salah satu data clientApp 2. Biasanya digunakan untuk mengubah integrasi antara identitas TKI dengan clientApp.dan merubah status sinyal S.O.S Langkah-langkah 1. Tap tabbar listClientApp. Akan tampil tampilan list serial number iPhone 2. Pilih salah satu yang akan di edit
Daftar Serial Number
Tabbar listClientApp
3. Akan muncul halaman untuk mengubah data sesuai field-field yang tersedia.
4. Untuk mengubah ID TKI cukup tap tombol select ID TKI maka akan muncul daftar ID TKI yang telah didaftarkan. 5. Untuk menghapus data clientApp tersebut, tap Delete clientApp
Tombol untuk menghapus
4. Tambah data identitas TKI Deskripsi: 1. Digunakan untuk menambahkan TKI baru beserta identitasnya Langkah-langkah: 1. Tap tabbar addIdentitasTKI 2. Penuhi seluruh field yang tersedia 3. Tap tombol Enter.
5. Edit & Hapus data identitas TKI Deskripsi 1. Digunakan untuk mengubah data atribut pada identitas TKI atau menghapus salah satu data identitas TKI Langkah-langkah 1. Tap tabbar listIdentitasTKI. Akan tampil tampilan list ID TKI beserta nama TKI nya 2. Pilih salah satu yang akan di edit atau di Hapus kemudian akan muncul halaman serupa pada clientApp
Petunjuk Penggunaan Aplikasi serverApp SIGEPTKI
1. Monitoring Keberadaan & Status TKI Deskripsi: 1. Digunakan untuk mengetahui lokasi near real time dari masing-masing TKI 2. Menampilkan informasi identitas TKI dan status sinyal S.O.S Langkah-langkah: 1. Buka Aplikasi serverApp maka akan muncul halaman monitoring berisikan tampilan peta dengan pin-pin sebagai representasi dari lokasi TKI 2. Pin bertanda ‘+’, menandakan bahwa TKI tersebut mengirim sinyal S.O.S 3. Jika tombol pilih negara di-tap, maka akan tampil pilihan untuk hanya menampilkan lokasi-lokasi TKI dari negara tertentu. 4. Untuk mendapatkan informasi lebih lanjut tentang TKI tertentu, cukup dengan men-tap salah satu Pin pada Peta
Pin TKI
Pin TKI dengan SOS status Aktif
5. Jika Poin di-tap maka akan muncul tampilan identitas TKI
2. Mendapatkan rute menuju lokasi TKI Deskripsi: 1. Digunakan untuk mendapatkan rute dan petunjuk arah menuju lokasi menuju salah satu lokasi TKI yang dipilih Langkah-langkah: 1. Pada tampilan identitas TKI, tap tombol Get Direction maka akan muncul tampilan rute.
Petunjuk Penggunaan Aplikasi clientApp SIGEPTKI
1. Mengirim sinyal S.O.S Deskripsi: 1. Digunakan jika TKI dalam keadaan yang urgent 2. Mengirimkan sinyal kepada pemerintah bahwa TKI yang bersangkutan dalam keadaan berbahaya. Langkah-langkah: 1. Tap pada tabbar sinyal S.O.S 2. Lengkapi field kosong yang disediakan lalu tekan tombol “Kirim Sinyal S.O.S”
2. Mendapatkan rute menuju kedubes RI Deskripsi 1. Digunakan untuk mendapatkan rute dan petunjuk arah menuju lokasi kedubes RI dilihat dari Negara Tujuan TKI yang telah terdaftar pada BNP2TKI. Langkah-langkah 1. Tap tabbar kedubes RI 2. Tap Tombol Get Direction. Maka akan muncul tampilan petunjuk arah
Lampiran 11 Surat Penunjukan Dosen Pembimbing
Lampiran 12 Surat Permohonan Riset
Lampiran 13 Surat Persetujuan Pelaksanaan Riset
Lampiran 14 Form Perbaikan Sidang Skripsi
Lampiran 15 Form Perbaikan Sidang Skripsi
Lampiran 16 Form Perbaikan Sidang Skripsi
Lampiran 17 Form Perbaikan Sidang Skripsi