1
BAB 1
PENDAHULUAN
1.1 Latar Belakang Masalah
Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat (DPTP JABAR) merupakan sebuah instansi yang bekerja untuk meningkatkan sumber daya manusia pertanian, mendukung ketahanan pangan, menambah nilai produk pertanian,meningkatkan sarana produksi serta mewujudkan kelestarian sumber daya alam melalui pembangunan pertanian yang berwawasan lingkungan,demi mewujudkan petani Jawa Barat yang mandiri,dinamis dan sejahtera.
Berdasarkan hasil wawancara dengan Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat,tentang kendala atau kekurangan yang mereka hadapi untuk mewujudkan petani Jawa Barat yang mandiri,dinamis dan sejahtera ialah kurangnya tenaga penyuluh yang akan menyampaikan informasi kepada setiap petani yang ada di Jawa Barat, sarana untuk menyampaikan keluhan petani yang di Jawa Barat masih dilakukan secara tatap muka dengan mendatangi kantor Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat,dan juga dalam melakukan permohonan benih tanaman masih dilakukan secara manual dengan datang Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat,serta penyebaran informasi kepada petani masih dilakukan dengan memberi dokumen kepada penyuluh yang ada dan tenaga penyuluh yang akan menyerahkan informasi kepada petani,dan juga memperlambat Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat dalam mengatasi semua keluhan atau kendala yang dihadapi petani.
Dalam Hal tersebut maka Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat mengalami kesulitan untuk memberikan informasi kepada petani,sulitnya petani menyampaikan keluhan kepada dinas karena masih dilakukan dengan tatap muka,sulitanya melakukan permohonan benih tanaman baru dan petani kesulitan untuk memperoleh informasi tentang cara mengatasi hama.
permohonan benih tanaman, mempermudah untuk mengirimkan keluhan kepadaDinas Pertanian Tanaman Pangan Provinsi Jawa Barat. Dipilihnya aplikasi mobile sebagai solusi karena dengan aplikasi mobile kegiatan pendistribusian informasi dapat dilakukan dengan cepat dan langsung pada petani yang ada di wilayah Jawa Barat, informasi akan cepat disampaikan dan mudah diakses dimana pun. Permohonan Benih Tanaman pun tidak lagi menggunakan cara yang konvensional, yaitu dengan mencetak banyak formulir. Dengan adanya aplikasi mobile juga, mempermudah setiap petani betukar pikiran dengan petani yang lain dan dapat juga mempercepat mengetahui masalah yang terjadi di petani sehingga akan lebih fleksibel karena dapat dilakukan kapan pun dan dimana pun. Aplikasi mobile yang dibangun adalah aplikasi mobile yang berbasiskan Android.
1.2 Rumusan Masalah
Berdasarkan uraian latar belakang masalah yang dikemukakan, maka dapat dirumuskan beberapa masalah sebagai berikut :
1. Sulitnya Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat memberikan atau menyampaikan informasi hama, berita pertanian, dan pengumuman kepada petani yang ada di Jawa Barat.
2. Sulitnya petani melakukan permohonan benih tanaman baru 3. Sulitnya petani menyampaikan keluhan.
4. Sulitnya Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat untuk mengetahui masalah atau keluhan petani yang ada di Jawa Barat.
1.3 Maksud danTujuan a. Maksud
Maksud dari penelitian ini adalah membangun aplikasi mobile yang mendukung dan mempermudah para petani memperoleh informasi,berita, dan kegiatan komunikasi dengan Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat.
b. Tujuan
1. Mempermudah Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat untuk menyalurkan informasi kepada setiap petani
2. Mempermudah petani untuk menyampaikan permohonan benih tanaman baru.
3. Mempermudah petani dalam menyampaikan keluhan yang dialami. 4. Mempermudah Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat
untuk memperoleh informasi keluhan yang dialami petani.
1.4 Batasan Masalah
1. Informasi yang ada di aplikasi ini hanya berlaku untuk daerah Jawa Barat 2. Kegiatan komunikasi hanya dapat menuliskan keluhan atau pertanyaan
kepada Dinas Pertanian Tanaman dan Pangan Provinsi Jawa Barat,dan Dinas Pertanian yang hanya bisa membalas keluhan yang dikirim.
3. Model pembangunan aplikasi ini menggunakan model beorientasi objek (OOP).
1.5 Metodologi Penelitian
Metode penelitian yang akan digunakan oleh penulis adalah penelitian deskriptif. Penelitian deskriptif adalah penelitian yang berusaha mendeskripsikan dan menginterprestasikan kondisi atau hubungan yang ada.
1.5.1 Metode Pengumpulan Data
1. Wawancara
Wawancara merupakan suatu cara pengumpulan data yang digunakan untuk memperoleh informasi langsung dari sumber, dalam hal ini sumbernya adalah Dinas Pertanian Dan Pangan Jawa Barat.
2. Observasi
1.5.2 Metode Pembangunan PerangkatLunak
Dalam pembangunan aplikasi M-PETANI ini menggunakan metode waterfall. Metode waterfall adalah metode yang digunakan dalam pendekatan sistematis dan sequensial melalui tahapan-tahapan yang ada untuk membangun sebuah aplikasi.
Metode waterfall menekankan pada sebuah keterurutan dalam proses pengembangan sebuah aplikasi. Dalam metode waterfall, satu fase harus selesai terlebih dahulu sebelum fase berikutnya dimulai. Suatu fase dapat dinyatakan selesai apabila output dari fase tersebut sesuai dengan kebutuhan yang didefinisikan pada fase sebelumnya. Metode ini merupakan metode yang tepat dalam membangun sebuah aplikasi yang tidak terlalu besar dan sumber daya manusia yang terlibat dalam jumlah yang terbatas.[1]
a. Analisis Kebutuhan
Tujuan dilakukan tahapan ini untuk memahami sistem yang sedang berjalan agar dapat mendefinisikan permasalahan sistem sehingga
selanjutnya dapat menentukan kebutuhan sistem secara garis besar sebagai persiapan ke tahapan perancangan.
Pada tahap ini proses yang dilakukan adalah menganalisis permasalahan dan menentukan kebutuhan fungsional yang akan membantu menyelesaikan permasalahan tersebut.
b. Desain Sistem / Perancangan
Tahapan perancangan ini diberikan gambaran umum yang jelas kepada pengguna dan rancang bangun yang lengkap tentang sistem yang akan dikembangkan kepada pihak-pihak yang terlibat dalam pengembangan sistem.
Tahap perancangan ini proses yang dilakukan yaitu membuat model perancangan sistem dengan menggunakan metode Berorientasi objek dimana didalamnya pembuatan use case,activity diagram,sequence diagram dan perancangan anter muka.
c. Coding / Penulisan Kode Program
Setelah tahap perancangan sistem selanjutnya dilakukan konversi rancangan sistem kedalam kode-kode bahasa pemrograman yang diinginkan. Tahap ini dilakukan pembuatan komponen-komponen sistem yang meliputi modul program antarmuka dan basis data.
Pada tahap ini proses yang dilakukan adalah membuat kode program aplikasi ini sesuai dengan desain yang telah dibuat.
d. Pengujian / Implementasi
Tahap pengujian ini dilakukan untuk mendapatkan serta memastikan bahwa perangkat lunak yang dihasilkan adalah valid dan sesuai dengan kebutuhan yang telah dideskripsikan.
Pada tahap ini proses yang dilakukan adalah mmelakukan pengujian menggunakan metode pengujian black box dan pengujian beta.
e. Maintenance / Pemeliharaan
dicapai. Hasil evaluasi ini dimungkinkan untuk melakukan perubahan-perubahan yang diperlukan terhadap sistem agar sistem senantiasa dapat digunakan dengan baik.
Pada tahap ini proses yang dilakukan adalah melakukan pemeliharaan sistem supaya tetap berfungsi dan dapat digunakan dengan baik.
1.6 Sistematika Penulisan
Sistematika penulisan laporan penelitian ini, disusun untuk memberikan gambaran umum tentang penelitian yang dilaksanakan . Sistematika penulisan Tugas Akhir ini adalah sebagai berikut:
BAB IPENDAHULUAN
Bab ini membahas tentang latar belakang masalah, rumusan masalah, maksud dan tujuan, batasan masalah, metode penelitian, dan sistematika penulisan.
BAB II TINJAUAN PUSTAKA
Bab ini merupakan tinjauan umum yang didalamnya menjelaskan tentang sejarah perusahaan atau organisasi, dalam hal ini Dinas Pertanian Bandung, profil Dinas Pertanian, tempat dan kedudukan Dinas Pertanian, dilanjutkan dengan teori-teori informatika umum seperti pengertian sistem, basis data, jaringan dan sebagainya. Hal ini digunakan untuk mengetahui gambaran tempat penelitian Tugas Akhir serta menjelaskan teori-teori yang berhubungan dengan masalah yang dibahas.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Bab ini berisi pemaparan analisis masalah, analisis sistem yang sedang berjalan, analisis kebutuhan data, analisis basis data, analisis jaringan, analisis kebutuhan nonfungsional, dan analisis kebutuhan fungsional. Hasil dari analisis tersebut digunakan untuk melakukan perancangan perangkat lunak yang terdiri dari perancangan struktur file, struktur menu, perancangan antarmuka, jaringan semantik, dan perancangan Objek.
Bab ini menjelaskan tentang implementasi dan pengujian dari perangkat lunak yang dibangun berdasarkan analisis dan perancangan perangkat lunak yang telah dilakukan. Hasil dari implementasi kemudian dilakukan pengujian perangkat lunak menggunakan metode blackbox yang terdiri dari pengujian alpha dan beta sehingga perangkat lunak yang dibangun sesuai dengan analisis dan perancangan yang telah dilakukan.
BAB V KESIMPULAN DAN SARAN
9
BAB 2
TINJAUAN PUSTAKA
2.1 Profil Dinas Pertanian Tanaman Pangan Prov.Jawa Barat
Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat (Diperta Prov.Jabar) merupakan sebuah instansi yang bekerja untuk meningkatkan sumber daya manusia pertanian, mendukung ketahanan pangan, menambah nilai produk pertanian,meningkatkan sarana produksi serta mewujudkan kelestarian sumber daya alam melalui pembangunan pertanian yang berwawasan lingkungan,demi mewujudkan petani Jawa Barat yang mandiri,dinamis dan sejahtera, dan instansi ini berada di Jl.Surapati No.71 Bandung.
2.2 Struktur Organisasi Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat
Adapun struktur organisasi dari Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat dapat dilihat pada gambar :
Deskripsi Jabatan:
Adapun Deskripsi Jabatan pegawai yang ada di Dinas Pertanian Tanaman Pangan, adalah sebagai berikut:
1. Kepala Dinas
Kepala Satuan Kerja Pemerintah Daerah (SKPD) selaku pejabat pengguna
anggaran atau pengguna barang mempunyai tugas pokok meminjam, mengkoordinasi dan mengendalikan pelaksanaan tugas pokok Dinas. Tugas pokok Kepala Dinas Pertanian Tanaman Pangan mempunyai fungsi:
a. Pengaturan dan koordinasi pelaksanaan kebijaksanaan teknik operasional di bidang pertanian tanaman pangan.
b. Fasilitas dan pengendalian pelaksanaan tugas-tugas di bidang pertanian tanaman pangan yang meliputi program, pengelolaan sumber daya pertania, pengembangan produksi padi, palawija, holtikultura, aneka tanaman serta pengelolaan hasil panen dan pemasaran.
c. Penyelenggaraan koordinasi dan kerjasama dalam rangka perencanaan tugas pokok dan fungsiDinas.
2. Sekretaris
Sekretaris mempunyai tugas dan tanggung jawab sebagai berikut:
1. Menyusun Rincian Objek Penerimaan (ROP), pedoman atau petunjuk pelaksanaan kegiatan.
2. Menyiapkan naskah Surat Keputusan-Surat Keputusan (SK-SK) pemimpin kegiatan suratdan ketatausahaan kegiatan.
3. Menyusun laporan proyek secara berkala. 4. Menyusun evaluasi kegiatan.
5. Meyimpan dokumen dan mengolah data proyek.
7. Membantu pemimpin dalam pengendalian dan monitoring pelaksanaan kegiatan.
8. Bertanggung jawab terhadap kegiatan.
3. Sub Bagian Kepegawaian dan Umum
Sub Bagian Kepegawaian mempunyai tugas, tanggung jawab serta fungsi sebagai berikut:
a. Sub bagian kepegawaian mempunyai tugas pokok melaksanakan pengelolaan administrasi kepegawaian, kelembagaan, dan ketatalaksanaan serta pendokumentasian peraturan perundang-undangan.
b. Melaksanakan penyiapan rencana kebutuhan pegawai, formasi dan penunjukan jabatan di lingkungan Dinas.
c. Melaksanakan penyiapan dan pengusulan pegawai yang akan pensiun, peninjauan masa kerja serta pemberian penghargaan.
d. Melaksanakan penyiapan bahan kenaikan pangkat, Daftar Penilaian Pelaksanaan Pekerjaan (DP 3), Daftar Urutan Kepangkatan (DUK) sumpah atau gaji pegawi, gaji berkala dan peningkatan kesejahteraan pegawai. e. Melaksanakan penyiapan bahan mutasi dan pemberhentian.
f. Melaksanakan penyiapan pegawai untuk mengikuti pendidikan pelatihan kepemimpinan teknis dan fungsional.
g. Melaksanakan penyiapan rencana pegawai yangakanmengikuti ujian Dinas dan ijin atau tugas belajar.
h. Melaksanakan penyiapan bahan pembinaan kepegawaian dan disiplin pegawai di lingkungan Dinas.
i. Melaksanakan penyajian bahan standar kompetensi pegawai, tenaga teknis dan fungsional.
k. Melaksanakan penyiapan bahan rancangan kelembagaan dan ketatalaksanaan dilingkungan Dinas.
l. Melaksanakan pelayanan sistem informasi dan manajemen kepegawaian.
m. Melaksanakan penyusunan bahan evaluasi dan laporan kegiatan Sub bagian kepegawaian.
4. Sub Bagian Keuangan
Sub Bagian Keuangan mempunyai tugas dan tanggungjawab serta mempunyai fungsi sebagai berikut:
1).Sub Bagian Keuangan mempunyai tugas pokok melaksanakan pengelolaan administrasi keuangan.
2). Dalam menyelenggarakan tugas pokok sebagaimana dimaksud yang mempunyai tugas:
a. Penyiapan bahan dan penyusunan rencana anggaran pendapatan dan rutin daerah.
b. Pelaksanaan teknis administrasi keuangan. 5. Sub Bagian Umum
Sub bagian umum mempunyai wewenang dan tanggung jawab serta fungsi sebagai berikut:
1. Sub bagian umum mempunyai tugas pokok melaksanakan pengelolaan rumah tangga, perlengkapan dan umum serta pepustakaan dan kearsipan. 2. Dalam menyelenggarakan tugas pokok sebagaimana di maksud
mempunyai fungsi:
a. Pelaksanaan urusan surat-menyurat, pengadaan, kearsipan, dan administrasi perjalanan Dinas.
6. Sub Bagian Sumber Daya
Subdinas Sumber Daya mempunyai tugas, tanggung jawab serta fungsi: 1. Subdinas Sumber Daya mempunyai tugas pokok menyelenggarakan
perumusan bahan kebijakan teknis di bidang pengembangan sumber daya pertanian tanaman pangan.
2. Untuk melaksanakan tugas pokok sebagaimana mestinya, subdinas sumber daya mempunyai fungsi:
a. Perumusan bahan fasilitas pedoman standarisasi supervisi dan fasilitasi penyelenggaraan pengelolaan sumber daya lahan dan tata guna air.
b. Perumusan bahan pengembangan sarana produksi dan mekanisme. c. Perumusan sumber daya manusia pertanian tanaman pangan. 7. Sub Produksi Tanaman Pangan
SubDinasproduksi tanaman pangan mempunyai tugas, tanggung jawab serta fungsi:
1. Subdinas produksi tanaman pangan mempunyai tugas pokok merumuskan bahan kebijakan operasional di bidang pengembangan teknologi dan produksi tanaman pangan serta perlindungannya.
2. Untuk melaksanakan tugas pokok subdinas produksi tanaman pangan mempunyai fungsi:
a. Perumusan bahan kebijakan operasional fasilitasi, pedoman, standarisasi, supervisi pengembangan tanaman pangan.
b. Perumusan bahan pengembangan teknologi produksi tanaman pangan. c. Perumusan bahan pengembangan perlindungan tanaman pangan.
8. Sub Produksi HoltiKultura
jeruk, strawberry) yang mempunyai tugas, tanggung jawab serta fungsi sebagai berikut:
1. Mempunyai tugas pokok merumuskan bahan kebijakan operasional di bidang pengembangan produksi sayuran, buah-buahan, dan aneka tanaman serta perlindungan tanaman Holtikultura.
2. Untuk melaksanakan tugas pokok sebagaimana dimaksud, subdinas ini mempunyai fungsi:
a. Perumusan bahan kebijakan operasional penyusunan pedoman pengembangan tanaman holtikultura.
b. Perumusan bahan standarisai dan fasilitasi pengembangan produksi tanaman holtikultura.
c. Perumusan bahan perlindungan tanaman holtikultura. 9. Sub Bagian Bidang Usaha
Seksibina usaha mempunyai tugas pokok melaksanakan penyusunan bahan kebijakan operasional kelembagaan usaha pertanian tanaman pangan.Tugas pokok seksi bina usaha pertanian tanaman pangan mempunyai fungsi:
a. Penyusunan bahan pedoman, standarisasi, superfisi, dan fasilitasi pengelolaan bina usaha pertanian tanaman pangan.
b. Penyusunan bahan pengembangan bina usaha pertanian tanaman pangan. Sub Bagian Bina Usaha membawahi beberapa seksi, yaitu;
2.3 Landasan Teori
Landasan teori merupakan penjelasan berbagai konsep dasar dan teori-teori yang berkaitan dalam pembangunan aplikasi M-Petani berbasis android.
2.3.1 Web Sevice
Webservice adalah sekumpulan aplikasi logic beserta objek-objek dan metode-metode yang dimilikinya yang terletak di suatu server yang terhubung ke internet sehingga dapat diakses menggunakan protocol HTTP dan SOAP (Simple Object Access Protocol). Dalam penggunaannya, web service dapat digunakan dari hanya untuk memeriksa data user yang login ke sebuah website ataupun untuk digunakan pada transaksi perbankan online yang rumit. Tujuan dari teknologi ini adalah untuk memudahkan beberapa aplikasi atau komponennya untuk saling berhubungan dengan aplikasi lain dalam sebuah organisasi maupun diluar organisasi menggunakan standar yang tidak terikat platform( platform-neutral) dan tidak terikat akan bahasa pemrograman yang digunakan (language-neutral).Hal tersebut dapat terjadi karena penggunaan XML standar yang didukung oleh banyak perusahaan besar di dunia, yang digunakan untuk bertukar data. Selain daripada itu, penggunaan SOAP menjadikan metode-metode dari objek-objek yang ada dalam sebuah web service dapat di akses dari aplikasi lain seperti halnya aplikasi tersebut mengakses metode lokal.
2.3.2 JSON
JSON terbuat dari dua struktur:
1. Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan sebagai objek (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. JSON menggunakan bentuk sebagai berikut:
1. Objek
Objek adalah sepasang nama/nilai yang tidak terurutkan.Objek dimulai dengan {(kurung kurawal buka) dan diakhiri dengan} (kurung kurawal tutup).Setiap nama diikuti dengan: (titik dua) dan setiap pasangan nama/nilai dipisahkan oleh , (koma). [3]
2. Larik
Larik adalah kumpulan nilai yang terurutkan.Larik dimulai dengan [(kurung kotak buka) dan diakhiridengan ] (kurung kotak tutup).Setiap nilai dipisahkan oleh, (koma). [3]
Gambar 2-3 Larik JSON
3. Nilai
Nilai (value) dapat berupa sebuah string dalam tanda kutip ganda, atau angka, atau true atau false atau null, atau sebuah objek atau sebuah larik Struktur-struktur tersebut dapat disusun bertingkat.[3]
4. String
String adalah kumpulan dari nol atau lebih karakter Unicode, yang dibungkus dengan tanda kutip ganda.Di dalam string dapat digunakan backslash escapes "\" untuk membentuk karakter khusus.Sebuah karakter mewakili karakter tunggal
pada string.
Gambar 2-5 String JSON
5. Angka
Angka adalah sangat mirip dengan angka di C atau Java ,kecualiformat oktal dan heksadesimal tidak digunakan. [3]
2.3.3 Android
Android adalah sistem operasi untuk telepon selular (mobile) seperti pada smartphone dan komputer tablet.[6] Sistem operasi Android berbasiskan Linux yang bersifat terbuka (opensource) bagi pengembang untuk menciptakan aplikasi maupun mengembangkan Android dengan tools yang disediakan yaitu Android SDK (Software Development Kit) dan API (Application Programming Interface) dengan menggunakan bahasa pemrograman Java. Dikembangkan Oleh Google Inc, HTC, Intel, Motorola, Qualcom, T-Mobile,dan Nvidia yang tergabung dalam Open Handset Alliance (OHA).Dengan tujuan mendukung sebuah standar terbuka pada perangkat seluler.Kode-kode yang dirilis oleh Google untuk Android berada dibawah license Apache, sebuah license perangkat lunak dan standar terbuka bagi perangkat seluler. [6]
Berikut adalah arsitektur android pada gambar 2-7: [7]
Deskripsi dari Arsitektur android:
1. Aplikasi
Android memilki satu set aplikasi inti yang terdiri dari email client, program SMS, kalender, peta, browser, kontak telepon, dan sebagainya.Semua aplikasi inti dibangun dengan menggunakan bahasa pemrograman Java.
2. Framework Aplikasi
Pengembang memiliki akses penuh menuju API framework yang sama dengan yang digunakan oleh aplikasi inti.Arsitektur aplikasi dirancang agar komponen dapat digunakan kembali (reuse) dengan mudah.Setiap aplikasi dapat memanfaatkan kemampuan ini (sesuai dengan batasan keamanan yang didefinisikan oleh framework).Mekanisme yang sama memungkinkan komponen untuk diganti oleh pengguna.
Semua aplikasi merupakan rangkaian set layanan dan sistem, termasuk:
a. Views yang kaya dan extensible yang dapat digunakan untuk membangun aplikasi, termasuk list, grids, kotak teks, tombol, dan bahkan sebuah embedded web.
b. Content Provider yang memungkinkan aplikasi untuk mengakses data (seperti dari daftar kontak telepon) atau membagi data tersebut.
c. Resource Manager, yang menyediakan akses ke kode nonsumber lokal seperti string, gambar, dan tata letak file.
d. Notifications Manager yang memungkinkan semua aplikasi menampilkan alert yang bisa dikostumisasi di dalam status bar.
e. Activity Manager yang mengelola siklus hidup aplikasi dan menyediakan navigasi umum backstack.
3. Libraries
aplikasi melalui Framework Aplikasi Android.Beberapa inti libraries tercantum dibawah ini:
System C Library – Variasi dari implementasi BSD-berasal pelaksana sistem standar C library (libc), sesuai untuk perangkat embedded berbasis Linux.
Media Libraries – Packet Video berdasarkan OpenCORE; library medukung pemutaran rekaman dan populer banyak format audio dan video, serta file gambar, termasuk MPEG4, H.264, MP3, AAC, AMR, JPG, dan PNG.
Surface Manager – mengelola akses ke subsistem layar, lapisan komposit 2D dan grafis 3D dari beberapa aplikasi.
LibWebCore – mesin web modern yang powerfull yang baik browser Android embedded web.
3D Libraries – sebuah pelaksana berdasarkan openGL ES 1,0 API; perpustakaan baik menggunakan perangkat keras akselerasi 3D (apabila tersedia) atau yang disertakan, sangat optimal 3D software rasterizer. FreeType – bitmap dan vektor font rendering.
SQLite – mesin database yang kuat dan ringan, dan penghubung tersedia untuk semua aplikasi.
4. Android Runtime
kernel Linux untuk berfungsi seperti threading dan manajemen memori tingkat rendahnya.
5. Kernel Linux
Pada layanan sistem inti Android bergantung pada Linux versi 2.6 seperti layanan keamanan, manjemen memori,manajemen proses, stack jaringan, dan model driver. Kernel bertindak sebagai lapisan abstrak antara perangkat keras dengan seluruh stack software.
2.3.4 Pengenalan UML
Pada perkembangan teknologi perangkat lunak, diperlukan adanya bahasa yang digunakan untuk memodelkan perangkat lunak yang akan dibuat dan perlu adanya standarisasi agar orang di berbagai negara dapat mengerti pemodelan perangkat lunak. Seperti yang kita ketahui bahwa menyatukan banyak kepala untuk menceritakan sebuah ide dengan tujuan untuk memahami, merupakan hal yang tidak mudah, oleh karena itu diperlukan sebuah bahasa pemodelan perangkat lunak yang dapat dimengerti oleh banyak orang.[9]
Banyak orang yang telah membuat bahasa pemodelan pembangunan perangkat lunak sesuai dengan teknologi pemrograman yang berkembang pada saat itu, misalnya yang sempat berkembang dan digunakan banyak pihak adalah Data Flow Diagram (DFD) untuk memodelkan perangkat lunak yang menggunakan pemrograman prosedural atau struktural, kemudian juga ada State Transition Diagram (STD) yang digunakan untuk memodelkan sistem real time (waktu nyata).
pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung.
UML hanya berfungsi untuk melakukan pemodelan. Jadi penggunaan UML tidak terbatas pada metodologi tertentu, meskipun pada kenyataannya UML paling banyak digunakan pada metodologi berorientasi objek.
Seperti yang kita ketahui di dunia sistem informasi yang tidak dapat dibakukan, semua tergantung kebutuhan, lingkungan dan konteksnya. Begitu juga dengan perkembangan penggunaan UML bergantung pada level abstraksi penggunaannya. Jadi, belum tentu pandangan yang berbeda dalam penggunaan UML adalah suatu yang salah, tapi perlu ditelaah dimanakah UML digunakan dan hal apa yang ingin digambarkan. Secara analogi jika dengan bahasa yang digunakan sehari-hari, belum tentu penyampaian bahasa dengan puisi adalahhal yang salah. Sistem informasi bukanlah ilmu pasti, maka jika ada banyak perbedaan dan interpretasi di dalam bidang sistem informasi merupakan hal yang sangat wajar.
2.2.4.1. Diagram UML
Gambar 2-8 Diagram UML
Berikut ini penjelasan singkat dari pembagian kategori tersebut:
1. Structure diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang dimodelkan.
2. Behavior diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi pada sebuah sistem.
3. Interaction diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan interaksi sistem dengan sistem lain maupun interaksi antarsubsistem pada suatu sistem.
1. Use Case Diagram
Syarat penamaan pada Use Case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada Use Case yaitu pendefinisian apa yang disebut aktor dan Use Case.
2. Aktor
Aktor adalah sesuatu (entitas) yang berhubungan dengan sistem dan berpartisipasi dalam use case. Aktor menggambarkan orang, sistem atau entitas eksternal yang secara khusus membangkitkan sistem dengan input atau masukan kejadian-kejadian, atau menerima sesuatu dari sistem. Aktor dilukiskan dengan peran yang mereka mainkan dalam use case, seperti Staff, Kurir dan lain-lain.[5]
Dalam use case diagram terdapat satu aktor pemulai atau initiator actor yang membangkitkan rangsangan awal terhadap sistem, dan mungkin sejumlah aktor lain yang berpartisipasi atau participating actor. Akan sangat berguna untuk mengetahui siapa aktor pemulai tersebut.
<nama actor>
Gambar 2-9 Aktor
3. Use Case
Use case yang dibuat berdasarkan keperluan aktor merupakan gambaran dari
“apa” yang dikerjakan oleh sistem, bukan “bagaimana” sistem mengerjakannya. Use case diberi nama yang menyatakan apa hal yang dicapai dari interaksinya dengan aktor.[5]
<nama use case>
4. Relationship
Relasi (relationship) digambarkan sebagai bentuk garis antara dua simbol dalam use case diagram. Relasi antara actor dan use case disebut juga dengan asosiasi (association). Asosiasi ini digunakan untuk menggambarkan bagaimana hubungan antara keduanya.[5]
Relasi-relasi yang terjadi pada use case diagram bisa antara actor dengan use case atau use case dengan use case.
<nama actor>
<nama use case>
Gambar 2-11 Relationship
Relasi antara use case dengan use case :
a. Include, pemanggilan use case oleh use case lain atau untuk
menggambarkan suatu use case termasuk di dalam use case lain (diharuskan). Contohnya adalah pemanggilan sebuah fungsi program. Digambarkan dengan garis lurus berpanah dengan tulisan <<include>>.
b. Extend, digunakan ketika hendak menggambarkan variasi pada kondisi
perilaku normal dan menggunakan lebih banyak kontrol form dan mendeklarasikan ekstension pada use case utama. Atau dengan kata lain adalah perluasan dari use case lain jika syarat atau kondisi terpenuhi. Digambarkan dengan garis berpanah dengan tulisan <<extend>>.
c. Generalization/Inheritance, dibuat ketika ada sebuah kejadian yang lain
5. Activity Diagram
Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem.[5]
Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut ini:
1. Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan
2. Urutan atau pengelompokan tampilan dari sistem/user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan 3. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan
sebuah pengujian yang perlu didefinisikan kasus ujinya
6. Sequence Diagram
Diagram sequence menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambarkan diagram sequence maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu.[5]
Banyaknya diagram sequence yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada diagram sequence sehingga semakin banyak use case yang didefinisikan maka diagram sequence yang harus dibuat juga semakin banyak.
7. Class Diagram
Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. Atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas. Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas.[5]
Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-fungsi sesuai dengan kebutuhan sistem. Susunan struktur kelas yang baik pada diagram kelas ebaiknya memiliki jenis-jenis kelas berikut:
1) Kelas Main
Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
2) Kelas yang menangani tampilan sistem
Kelas yang mendefinisikan dan mengatur tampilan ke pemakai.
3) Kelas yang diambil dari pendefinisian usecase
Kelas yang menangani fungsi-fungsi yang harus ada diambil dari pendefinisian use case.
4) Kelas yang diambil dari pendefinisian data
Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data.
Jenis-jenis kelas diatas juga dapat digabungkan satusama lain sesuai dengan pertimbangan yang dianggap baik asalkan fungsi-fungsi yang sebaiknya ada pada struktur kelas tetap ada. Susunan kelas juga dapat ditambahkan kelas utilitas seperti koneksi ke basis data, membaca file teks, dan lain sebagainya sesuai kebutuhan.
sedangkan coupling adalah ukuran seberapa dekat keterkaitan instruksi antara metode yang satu dengan metode yang lain dalam sebuah kelas. Sebagai aturan secara umum maka sebuah metode yang dibuat harus memiliki kadarchoesion yang kuat dan kadar coupling yang lemah.
Dalam class diagram terdapat beberapa relasi (hubungan antar class) yaitu:
1. Generalization dan Inheritence
Diperlukan untuk memperlihatkan hubungan pewarisan (inheritance) antar unsur dalam diagram kelas. Pewarisan memungkinkan suatu kelas mewarisi semua atribut, operasi, relasi, dari kelas yang berada dalam hirarki pewarisannya.
2. Associations
Hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui ekstensi class lain. Dalam notasi UML kita mengenal asosiasi 2 arah (bidirectional) dan 1 arah (undirectional).
3. Aggregation
Hubungan antar-class dimana class yang satu (part class) adalah bagian dari class lainnya (whole class).
4. Composition
Aggregation dengan ikatan yang lebih kuat. Di dalam composite aggregation, siklus hidup part class sangat bergantung pada whole classsehingga bila objek instance dari whole class dihapus maka objek instance dari part calss juga akan terhapus.
5. Depedency
6. Realization
Hubungan antar-class dimana sebuah class memiliki keharusan untuk mengikuti aturan yang ditetapkan class lainnya. Biasanya realization digunakan untk menspesifikasikan hubungan antara sebuah interface dengan class yang mengimplementasikan interface tersebut.
2.3.5 Pemograman Berorientasi Objek
Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat lunak yang mengorganisasikan perangkat lunak sebagai kumpulan objek yang berisi data dan operasi yang diberlakukan terhadapnya.[5] Metodologi berorientasi objek merupakan suatu cara bagaimana sistem perangkat lunak dibangun melalui pendekatan objek secara sistematis. Metode berorientas objek didasarkan pada penerapan prinsip-prinsip pengelolaan kompleksitas. Metode berorientasi objek meliputi rangkaian aktivitas analisis berorientasi objek, perancangan berorientasi objek, pemrograman berorientasi objek, dan pengujian berorientasi objek.
Pada saat ini, metode berorientasi objek banyak dipilih karena metodologi lama banyak menimbulkan masalah seperti adanya kesulitan pada saat mentransformasi hasil dari satu tahap pengembangan ke tahap berikutnya, misalnya pada metode pendekatan terstruktur, jenis aplikasi yang dikembangkan saat ini berbeda dengan masa lalu. Aplikasi yang dikembangkan pada saat ini beragam dengan platform yang berbeda-beda, sehingga menimbulkan tuntutan kebutuhan metodologi pengembangan yang dapat mengakomodasi ke semua jenis aplikasi tersebut.
Keuntungan menggunakan metodologi berorientasi objek adalah sebagai berikut:
1. Meningkatkan produktivitas
2. Kecepatan pengembangan
Karena sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan berkurangnya kesalahan pada saat pengkodean.
3. Kemudahan pemeliharaan
Karena dengan model objek, pola-pola yang cenderung tetap dan stabil dapat dipisahkan dan pola-pola yang mungkin sering berubah-ubah.
4. Adanya konsistensi
Karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan maupun pengkodean.
5. Meningkatkan kualitas perangkat lunak
Karena pendekatan pengembangan lebih dekat dengan dunia nyata dan adanya konsistensi pada saat pengembangannya, perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai serta mempunyai sedikit kesalahan.
2.2.5.1Konsep Dasar Berorientasi Objek
Pendekatan berorientasi objek merupakan suatu teknik atau cara pendekatan dalam melihat permasalahan dan sistem (sistem perangkat lunak, sistem informasi, atau sistem lainnya.[5] Pendekatan berorientasi objek akan memandang sistem yang akan dikembangkan sebagai suatu kumpulan objek yang berkorespondensi dengan objek-objek dunia nyata.
Ada banyak cara untuk mengabstraksikan dan memodelkan objek-objek tersebut, mulai dan abstraksi objek, kelas, hubungan antar kelas sampai abstraksi sistem. Saat mengabstraksikan dan memodelkan objek, data dan proses-proses yang dipunyai oleh objek akan dienkapsulasi (dibungkus) menjadi suatu kesatuan.
perangkat lunak. Ada berbagai teknik yang dapat digunakan pada masing-masing tahap tersebut, dengan aturan dan alat bantu pemodelan tertentu.
Sistem berorientasi objek merupakan sebuah sistem yang dibangun dengan berdasarkan metode berorientasi objek adalah sebuah sistem yang komponennya dibungkus (dienkapsulasi) menjadi kelompok data dan fungsi. Setiap komponen dalam sistem tersebut dapat mewarisi atribut dan sifat dan komponen lainnya, dan dapat berinteraksi satu sama lain.
Berikut ini adalah beberapa konsep dasar yang harus dipahami tentang metodologi berorientasi objek:
a. Kelas (Class)
Kelas adalah sekumpulan objek-objek dengan karakteristik yang sama. Kelas merupakan definisi statis dan himpunan objek yang sama yang mungkin lahir atau diciptakan dan kelas tersebut. Sebuah kelas akan mempunyai sifat (atribut), kelakuan (metode/operasi), hubungan (relationship) dan arti. Suatu kelas dapat diturunkan dan kelas yang lain, dimana atribut dan kelas semula dapat diwariskan ke kelas yang baru. Secara teknis kelas adalah sebuah struktur dalam pembuatan perangkat lunak. Kelas merupakan bentuk struktur pada kode program yang menggunakan metodologi berorientasi objek.
b. Objek (object)
Objek adalah abstraksi dari sesuatu yang mewakili dunia nyata benda, manusia, satu organisasi, tempat, kejadian, struktur, status, atau hal-hal lain yang bersifat abstrak. Objek merupakan suatu entitas yang mampu menyimpan informasi (status) dan mempunyai operasi (kelakuan) yang dapat diterapkan atau dapat berpengaruh pada status objeknya. Objek mempunyai siklus hidup yaitu diciptakan, dimanipulasi, dan dihancurkan.
kode, disebut sebagai kelas jadi pada saat runtime (saat sebuah program dieksekusi), yang kita punya adalah objek, di dalam teks program yang kita lihat hanyalah kelas.
c. Metode (method)
Operasi atau metode pada sebuah kelas hampir sama dengan fungsi atau prosedur pada metodologi struktural. Sebuah kelas boleh memiliki lebih dari satu metode atau operasi. Metode atau operasi yang berfungsi untuk memanipulasi objek itu sendiri. Operasi atau metode merupakan fungsi atau transformasi yang dapat dilakukan terhadap objek atau dilakukan oleh objek.
Metode atau operasi dapat berasal dari event, aktifitas atau aksi keadaan, fungsi, atau kelakuan dunia nyata. Contoh metode atau operasi misalnya Read, Write, Move, Copy, dan sebagainya.
d. Atribut (attribute)
Atribut dari sebuah kelas adalah variabel global yang dimiliki sebuah kelas. Atribut dapat berupa nilai atau elemen-elemen data yang dimiliki oleh objek dalam kelas objek. Atribut dipunyai secara individual oleh sebuah objek, misalnya berat, jenis, nama, dan sebagainya.
e. Abstraksi (abstraction)
Prinsip untuk merepresentasikan dunia nyata yang kompleks menjadi satu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan.
f. Enkapsulasi (encapsulation)
Pembungkusan atribut data dan layanan (operasi-operasi) yang dipunyai objek untuk menyembunyikan implementasi dan objek sehingga objek lain tidak mengetahui cara kerja-nya.
g. Pewarisan (inheritance)
h. Antarmuka (interface)
Antarmuka sangat mirip dengan kelas, tapi tanpa atribut kelas dan memiliki metode yang dideklarasikan tanpa isi. Deklarasi metode pada sebuah interface dapat diimplementasikan oleh kelas lain.
i. Reusability
Pemanfaatan kembali objek yang sudah didefinisikan untuk suatu permasalahan pada permasalahan lainnya yang melibatkan objek tersebut.
j. Generalisasi dan Spesialisasi
Menunjukkan hubungan antara kelas dan objek yang umum dengan kelas dan objek yang khusus. Misalnya kelas yang lebih umum (generalisasi) adalah kendaraan darat dan kelas khususnya (spesialisasi) adalah mobil, motor, dan kereta.
k. Komunikasi Antarobjek
Komunikasi antarobjek dilakukan lewat pesan (message) yang dikirim dari satu objek ke objek lainnya.
l. Polimorfisme (polymorphism)
Kemampuan suatu objek digunakan di banyak tujuan yang berbeda dengan nama yang sehingga menghemat baris program.
m. Package
Package adalah sebuah kontainer atau kemasan yang dapat digunakan untuk mengelompokkan kelas-kelas sehingga memungkinkan beberapa kelas yang bernama sama disimpan dalam package yang berbeda.
2.2.6 Database
1. Fungsi Database
Adapun fungsi database diantaranya adalah sebagai berikut:
1. salah satu komponen penting dalam sistem informasi, karena merupakan dasar dalam menentukan informasi.
2. Menentukan kualitas informasi. Informasi dapat dikatakan bernilai apabila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya.
3. Mengurangi duplikasi data (data redudancy).
4. Hubungan data dapat ditingkatkan (data relatability). 5. Mengurangi pemborosan tempat simpanan luar.
2. Kriteria Database
Dari penjelasan sebelumnya dapat disimpulkan bahwa basis data mempunyai beberapa kriteria penting, yaitu:
1. bersifat data oriented dan bukan program oriented
2. dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah basis datanya.
3. Dapat dikembangkan dengan mudah, baik volume maupun strukturnya.
4. Dapat memenuhi kebutuhan sistem-sistem baru secara mudah, dapat digunakan dengan cara-cara yang berbeda.
2.2.7 Skala Likert
Tabel 2-1 Skala Likert
No. Keterangan Skor Positif Skor Negatif
1 Sangat Setuju 5 1
2 Setuju 4 2
3 Ragu-ragu 3 3
4 Tidak Setuju 2 4
5 Sangat Tidak Setuju 1 5
37
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Masalah
Analisis masalah yang dilakukan adalah melihat dan mengidentifikasikan permasalahan atau kendala di dalam penelitian yang dilakukan. Masalah dapat didefinisikan sebagai suatu pertanyaan yang diinginkan untuk dipecahkan.Perlu ada analisis masalah melalui perumusan masalah yang sudah ditentukan sebelumnya. Dari hasil perumusan masalah, maka permasalahan yang terjadi adalah:
1. Dinas Pertanian Tanaman Pangan JaBar Mengalami kesulitan dalam memberikan informasi kepada petani secara real time.
2. Petani melakukan permohonan benih tanaman masih secara manual, dengan mendatangi kantor Dinas Pertanian Tanaman Pangan.
3. Dinas Pertanian terlambat menangani masalah petani karena proses penyampaian keluhan masih dilakukan secara tatap muka.
3.1.1 Analisis Sistem Yang Sedang Berjalan
kantor Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat untuk menyampaikan keluhan tersebut.
1. Proses Bisnis Yang Sedang Berjalan
Proses bisnis yang sedang berjalan adalah proses bisnis yang digunakan dalam pelaksanaan kegiatan peyuluhan pertanian sebelum dibuatnya aplikasi M-Petani. Proses bisnis yang sedang berjalan merupakan suatu proses yang diperlukan untuk dianalisis untuk mendapatkan proses bisnis yang baru setelah pengimplementasian sistem.
Tabel 3-1 Proses Bisnis yang sedang berjalan
NO Kegiatan Proses bisnis yang berjalan 1 Informasi Harga
Pangan ,informasi cara mengatasi Hama dll
Penyuluh dari dinas pertanian datang langsung kelapangan untuk menyampaikan infomasi tersebut kepada setiap petani.
2 Permohonan Benih Tanaman
Formulir yang dicetak untuk permohonan benih akan diberikan kepada petani untuk di isi da dikembalikan lagi ke dinas pertanian (bagian sumber daya)
3 Keluhan Petani datang Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat untuk menyampaikan keluhan
2. Alur Pendistribusian Data atau Informasi
Alur pendistribusian data atau informasi yang sedang berjalan saat ini adalah data yang didapat dari Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat yang akandiberikan kepada petani.
Pendistribusian data dimulai dari Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat melalui tenaga penyuluhan lalu ke petani .
3.1.2 Flowmap Diagram sistem yang sedang berjalan
1 Flowmap diagrampenyebaran informasi
Flowmap Diagram penyebaran informasi menjelaskan alur kerja sistem penyebaran informasi pada sistem yang sedang berjalan.
2 Flowmap diagrampenyampaiankeluhan
Flowmap diagram penyampaian keluham menjelaskan alur kerja sistem yang sedang berjalan saat ini di Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat.
3. Flowmap diagrampermohonan benih tanaman baru
Flowmap permohonan benih menjelaskan alur kerja sistem permohonan benih pada sistem yang sedang berjalan.
3.1.3 Deksripsi Sistem Usulan
Deskripsi sistem membahas tentang detail sistem yang akan dibangun, dimulai dari proses bisnis baru, pendistribusian data atau informasi yang baru, dan detail arsitektur sistem yang dibangun.
1. Proses Sistem yang Diusulkan
Proses sistem yang di buat adalah proses yang digunakan dalam menyampaikan informasi yang diimplementasikan dengan aplikasi mobile yang dibangun. Proses bisnis baru merupakan suatu proses yang diperlukan karena telah dibuatnya sistem yang baru dalam menyampaikan informasi.
Tabel 3-2 Proses bisnis yang diusulkan
NO Kegiatan Proses bisnis yang ditawarkan 1 Informasi Harga Pangan,
pertanian,informasi cara mengatasi Hama dll
Informasi disimpan kedalam sistem,kemudian akan ditampilkan kedalam aplikasi android
2 Permohonan Benih Tanaman
Pengisian formulir permohonan benih baru dapat dilakukan melalui aplikasi ini. 3 Penyampaian Keluhan Sarana untuk menyampaikan keluhan
dapat dilakukan melalui aplikasi ini, sehinggan mempermudah petani menyampaikan masalah yang dihadapi tanpa mendatangi penyuluh lagi.Dan juga mempercepat kerja para tenaga penyuluh.
2. Aplikasi Front End
dan data dijadikan JSON, lalu aplikasi front end mem-parsing data JSON yang telah di sediakan tersebut dan menampilkannya di aplikasi front end.
Gambar 3-4 Request Data JSON
3. Aplikasi Back End
informasi, mengelola data Permohonan benih, menerima pertanyaan – pertanyaan dari petani.
Pengelola yang kedua bagian bidang sumber daya Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat diberi hak akses untuk mengelola bagian sarana komunikasi antara petani yang lain dan dengan Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat.Bagian bidang sumber daya khususnya tenaga penyuluhan dapat menjawab langsung pertanyaan yang disampaikan oleh petani. Web admin digunakan untuk mengolah seluruh layanan aplikasi mulai dari mengirimkan informasi,mengelola data petani,dan menjawab pertanyaan.Web service sebagai fasilitas sistem yang digunakan untuk menyediakan layanan (dalam bentuk informasi) kepada sistem lain, sehingga sistem lain dapat berinteraksi dengan sistem ini melalui layanan-layanan (service) yang disediakan oleh suatu sistem yang menyediakan web service, dalam hal ini sistem back end aplikasi mobile M-Petani.Web service yang digunakan menggunakan PHP dan JSON. PHP yang menyediakan layanan web service yang akan memproses request kemudian menghasilkan JSON sebagai hasil dari pemrosesan request.Database Server yang digunakan pada aplikasi ini adalah MySQL.Data Informasi lokasi pertanian yang cocok, data petani pemohon benih , data petani yang sudah registrasi melalui aplikasi, dandata diskusi, yang tersimpan didalam database server di request kemudian diproses oleh web service yang disediakan oleh PHP dan kemudian menjadikan data tersebut dalam bentuk JSON.Data JSON yang dihasilkan tersebut yang disediakan untuk di-request oleh aplikasi front end.
4. Aliran Data
Gambar 3-5 Aliran Data
Penjelasan dari alur data sistem yang akan diusulkan adalah sebagai berikut: a. Aplikasi front end
Aplikasi front end dalam hal ini merupakan analisis fungsionalitas aplikasi untuk mengakses data dari database server melalui web service. Aplikasi front end ini dibangun diatas platform Android dan bekerja dengan cara mem-parsing data dari web service untuk diolah pada aplikasi front end. Data cuaca, data harga ikan, dan data lokasi yang kemudian diproses oleh web service dan dijadikan data dalam bentuk JSON di parsing dan kemudian ditampilkan di aplikasi front end. b. Web Service
pertukaran data dalam hal ini JSON. Data cuaca, data harga ikan, dan data lokasi ikan yang tersimpan didalam database server di request kemudian di proses oleh web service yang disediakan oleh PHP dan kemudian menjadikan data tersebut dalam bentuk JSON. Data JSON yang dihasilkan tersebut yang disediakan untuk di-request oleh aplikasi front end .
Gambar 3-6 Alur Request Data c. Protokol HTTP
Protokol HTTP merupakan protokol jaringan lapisan aplikasi yang digunakan untuk sistem informasi terdistribusi, kolaboratif, dan menggunakan hipermedia. Pada penelitian ini HTTP digunakan pada aplikasi mobile dan web administrator sebagai protokol yang dapat mendistribusikan data yang bersumber dari database server. Pendistribusian data cuaca, data harga ikan, data lokasi ikan dan data komunikasi dilakukan melalui protokol http. Data yang tersimpan didalam database server di request kemudian diproses oleh web service dan kemudian menjadikan data tersebut dalam bentuk JSON, proses pendistribusian data tersebut dilakukan melalui protokol http.
3.1.4 Analisis Kebutuhan Non-Fungsional
1. Analisis Kebutuhan Perangkat Keras
Analisis kebutuhan perangkat keras merupakan analisis kebutuhan yang harus dipenuhi dalam perancangan sistem.Analisis kebutuhan perangkat keras teridiri dari:
a. Perangkat keras aplikasi Back End
Kebutuhan perangkat keras minimal aplikasi back end dijelaskan di Tabel di bawah ini.
Tabel 3-3 Kebutuhan perangkat keras minimal aplikasi back end
NO Perangkat Keras Spesifikasi
1 Processor 2.0 GHz
b. Perangkat Keras Aplikasi Front End
Kebutuhan perangkat keras minimal aplikasi front end dijelaskan di Tabel di bawah ini.
Tabel 3-4 Kebutuhan perangkat keras minimal aplikasi front end
NO Perangkat Keras Spesifikasi
1 Layar Resolusi 240 x 320 pixels
2 Memori 100 MB
3 WLAN WiFi 802.11 b/g/n
4 Jaringan 3G UMTS
2. Analisis Kebutahan Perangkat Lunak
Analisis kebutuhan perangkat lunak merupakan analisis kebutuhan yang harus dipenuhi dalam perancangan sistem.Analisis kebutuhan perangkat lunak teridiri dari:
a. Perangkat Lunak Aplikasi Front End
Kebutuhanperangkat lunakminimal aplikasi front end dijelaskan pada Tabel di bawah ini:
Tabel 3-5 Kebutuhan perangkat lunak minimal aplikasi frot end
No Perangkat Lunak Spesifikasi
1 Sistem Operasi Mobile Android 2.2 ke atas
b. Perangkat Lunak Aplikasi Back End
Kebutuhan perangkat lunak minimal aplikasi back end dijelaskan pada tabel berikut:
Tabel 3-6 Kebutuhan perangkat lunak minimal aplikasi back end
NO Perangkat Keras Spesifikasi 1 Sistem Operasi Desktop Windows 7
2 Browser Mozila Firefox
3 SDK Android SDK Windows
4 ADT ADT v.10.0.0
5 JDK JDK v 1.6
3.1.5 Analisis dan Kebutuhan Pengguna
Analisis pengguna merupakan analisis yang dilakukan untuk pengguna yang nanti-nya akan menggunakan sistem, analisis ini meliputi siapa pengguna sistem dan hak akses pengguna terhadap sistem. Analisis pengguna aplikasi back end dan aplikasi front end dijelaskan pada tabel dibawah ini.
Tabel 3-7 Analisis Pengguna Sistem yang sedang berjalan
No. Tipe Tanggung
Bisa mengikuti petunjuk yang ada pada Dinas
Pertanian Tanaman
Pangan Provinsi Jawa Barat
2 Penyuluh Menyampaikan
informasi ke
petani.
Minimal SMA Bisa mengikuti petunjuk yang ada pada Dinas
Pertanian Tanaman
Pangan Provinsi Jawa Barat
Tabel 3-8 Analisis Pengguna Aplikasi Back End
No
1
Tipe Admin IT
Tanggung Jawab Mengolah data tentang pertanian dan web server
Hak Akses Meng-create berita baru, pengumuman, informasi hama, informasi harga, dan meng-update informasi setiap hari.
Tingkat Pendidikan Minimal Strata I
Tingkat Keterampilan Bisa mengikuti petunjuk yang ada pada sistem M-Petani. Pengalaman Min. mampu mengope rasikan web server.
Tabel 3-9 Analisis Pangguna Aplikasi Front End
No
1
Tipe Petani
Hak Akses Melihat informasi tentang berita pertanian, hama, harga, pengumuman dan menyampaikan keluhan serta
permohonan benih tanaman baru.
Tingkat Pendidikan Kelas 6 SD
Tingkat Keterampilan Bisa mengikuti petunjuk yang ada pada sistem M-Petani. Pengalaman Bisa mengoperasikan mobile berbasis android
3.1.6 Analisis Kebutuhan Fungsional
Analisis kebutuhan fungsional menggambarkan proses kegiatan yang akan diterapkan dalam sistem yang akan dibangun sehingga sistem dapat berjalan dengan baik.Analisis dimodelkan dengan menggunakan UML (Unified Modeling Language).Tahap-tahap pemodelan dalam analisis menggunakan UML antara lain use case diagram, use case scenario, activity diagram, sequence diagram, dan class diagram.
3.1.6.1Use Case Diagram M-Petani
3.1.6.2 Definisi Use Case
Definisi use case berfungsi untuk menjelaskan proses yang terdapat pada setiap Use Case. Definisinya dapat dilihat pada tabel:
Tabel 3-10 Definisi Use Case
No Use Case Deskripsi
1 Daftar Proses untuk memasukkan identitas pengguna 2 Login Front End Proses untuk masuk ke dalam sistem
3 Melihat Pengumuman
Proses untuk melihat kumpulan pengumuman yang di sajikan
7 Mengisi Formulir Permohonan
Proses dimana petani melakukan permohonan benih tanaman baru kepada dinas pertanian.
8 Menyampaikan Keluhan
Proses Melihat semua keluhan yang sudah dikirim petani
9 Menambah Keluhan Proses dimana petani menyampaikan keluhan atau masalah yang sedang dialami kepada Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat
USE CASE BACK END
10 Login Back End Proses untuk masuk kedalam sistem
11 Mengelola Berita Proses dimana Admin mengelola data tentang Berita
12 Mengelola Member Proses dimana Admin akan mengelola data member
13 Mengelola Info Harga
Proses dimana Admin mengelola data tentang Info Harga tanaman pangan
14 Mengolah Info Hama
Proses dimana bagianAdmin mengelola data tantang info hama
15 Mengolah Permohonan
Memproses permohonan petani yang melakukan permohonan benih tanaman baru.
16 Mengelola Pengumuman
Mengelola Pengumuman yang ingi disampaikan kepada petani
3.1.6.3 Skenario Use Case
Skenario use case merupakan deskripsi urutan langkah-langkah dalam proses bisnis baik yang dilakukan aktor terhadap sistem maupun yang dilakukan oleh sistem terhadap aktor. Di skenario use case terlihat aksi yang dilakukan oleh aktor dan aksi yang dilakukan oleh sistem. Skenario use case dijelaskan di setiap Tabel skenario yang menjelaskan masing-masing use case.
Tabel 3-11 Skenario Use Case Melihat berita
Use Case Melihat Berita
Deskripsi Berisi Informasi tentang pertanian
Aktor Petani
Kondisi Awal Menu Utama Aplikasi
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilih Informasi untuk melihat informasi tentang pertanian
2. Menampilkan List Menu informasi apa yang ingin di lihat
3. Memilih List Menu Informasi
4. Menampilkan informasi yang dipilih
Kondisi Akhir Tampilan informasi Berita
Tabel 3-12 Skenario Use Case Melihat Pengumuman
Use Case Melihat Pengumuman
Deskripsi Berisi tentang Pengumuman dari dinas pertanian
Aktor Petani
Kondisi Awal Menu Utama Aplikasi
Skenario Normal
1. Memilih Pengumuman untuk melihat pengumuman dari Tenaga penyuluh atau dari kantor dinas pertanian
2. Menampilkan list menu pengumuman apa yang ingin di lihat
3. Memilih List Menu Pengumuman
4. Menampilkan pengumuman yang dipilih
Kondisi Akhir Tampilan Informasi Pengumuman
Tabel 3-13 Skenario Use Case Melihat Info Hama
Use Case
Melihat Info Hama
Deskripsi Berisi tentang Informasi Hama dan Solusinya
Aktor Petani
Kondisi Awal Menu Utama Aplikasi
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilih Info Hama untuk melihat jenis hama yang menyerang tanamannya
2. Menampilkan list menu jenis hama apa yang ingin di lihat.
3. Memilih List Menu Jenis Hama
4. Menampilkan Info Hama yang dipilih
Kondisi Akhir Tampilan Info Hama
Tabel 3-14 Skenario Use Case Melihat Info Harga
Use Case Melihat Info Harga
Deskripsi Berisi tentang Informasi Harga pangan
Aktor Petani
Kondisi Awal Menu Utama Aplikasi
Aksi Aktor Reaksi Sistem 1. Memilih Info Harga untuk
melihat Jenis tanaman dan harganya berapa.
2. Menampilkan list menu jenis Harga apa yang ingin di lihat
3. Memilih List Menu Jenis Harga
4. Menampilkan Info Harga yang dipilih
Kondisi Akhir Tampilan Info Harga
Tabel 3-15 Skenario Use Case Mengisi Formulir Permohonan
Use Case Permohonan
Dekripsi Berisi formulir untuk melakukan permohonan
benih tanaman baru
Aktor Petani
Kondisi Awal Menu utama aplikasi
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilihmenu mengisi formuir
permohonan untuk
melakukanpermohonan benih.
2. Menampilkan form permohonan benih
tanaman untuk diisi 3. Mengisi form dengan data
diripemohon,kemudian pilih kirim untuk di proses
4. Mengecek apakah semua data sudah benar 5. Menyimpan data yang benar
6. Kembali ke Halaman Utama Aplikasi Skenario Alternatif
Aksi Aktor Reaksi Sistem
1. Mengisi form data diri
dengan yang salah
2. Mengecek kebenaran data yang diinputkan 3. Menampilkan koreksi kesalahan
4. Memperbaiki kesalahn
5. Memeriksa kembali kebenaran data yang diinput
6. Kembali kehalaman utama
Tabel 3-16 Skenario Use Case Menyampaikan keluhan
Use Case Melihat Keluhan
Dekripsi Berisi tentang keluhan-keluhan yang disampaikan petani
Aktor Petani
Kondisi Awal Menu utama aplikasi Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilih Menu Keluhan
2. Menampilkan halaman keluhan dan list keluhan yang sudah di input
Kondisi Akhir Menampilkan halaman keluhan
Tabel 3-17 Skenario Use Case Login Front End
Use Case
Login Front End
Dekripsi Form login yang berisi username dan password
petani,admin yang mau masuk ke sistem
Aktor Petani,Admin IT
Kondisi Awal Halaman login petani, admin IT
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Mengisi Username dan
Password
2. Memeriksa apakah username dan password benar
3. Melanjutkan ke halaman utama aplikasi Skenario Alternatif
Aksi Aktor Reaksi Sistem
1. Mengisi username dan
password yang salah
2. Memeriksa kebenaran username dan
password yang diinputkan
3. Menampilkan koreksi kesalahan login 4. Mengisi kembali username
dan password yang benar
5. Memeriksa kebenaran username dan
password yang diinputkan
6. Melanjutkan kehalaman utama aplikasi
Tabel 3-18 Skenario Use Case Daftar
Use Case Daftar
Deskripsi Memberi akun kepada petani untuk dapat mengakses aplikasi ini
Aktor Petani
Kondisi Awal Form Daftar
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Mengisi formulir dengan benar
2. Memeriksa apakah data sudah benar di isi. 3. Melanjutkan ke form login
Skenario Alternatif
Aksi Aktor Reaksi Sistem
1. Mengisi form pendaftaran dengan data yang salah
2. Memeriksa kebenaran data yang di inputkan
3. Menampilkan koreksi kesalah pendaftaran 4. Memperbaiki kesalahan
pendaftaran
5. Memeriksa kebenaran data yang diinputkan
6. Melanjutkan ke form login
Tabel 3-19 Skenario Use Case Menambah Keluhan
Use Case Menambah Keluhan
Dekripsi Proses mengirim atau menyamapaikan keluhan
kepada dinas pertanian
Aktor Petani
Kondisi Awal Halaman Utama Keluhan
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilih icon tambah keluhan
2. Menampilkan form tambah keluhan 3. Mengisi form keluhan dan
mengirim.
Menampilkan list keluhan
Tabel 3-20 Skenario Use Case Mengolah Member
Use Case Mengolah Member
Dekripsi Mengelola member petani yang sudah daftar dan
akun penyuluhan
Aktor Admin IT
Kondisi Awal Halaman Utama Admin
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilih Kelola member
2. Menampilkan seluruh nama member yang ada
Kondisi Akhir Menampilkan seluruh nama member yang ada
Tabel 3-21 Skenario Use Case Permohonan
Use Case Mengelola Permohonan
Dekripsi Mengolah Permohonan Benih Tanaman
untuk diproses
Aktor Admin IT
Kondisi Awal Halaman Utama Admin
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilih Mengolah Permohonan
2. Menampilkan Data Pemohon
Kondisi Akhir Menampilkan Data Pemohon
Tabel 3-22 Skenario Use Case Mengelola Berita
Use Case Mengelola Berita
Dekripsi Mengolah informasi yang akan disampaikan kepada
petani
Aktor Admin IT
Kondisi Awal Halaman Utama Admin
Skenario Normal Menampilkan Isi Informasi
Aksi Aktor Reaksi Sistem
1. Memilih Mengolah
Informasi
2. Menampilkan seluruh list informasi
Kondisi Akhir Menampilkan seluruh list informasi
Skenario Menambah Berita
1. Memilih Button tambah
berita
3. Mengisi Berita dan menekan tombol simpan berita
4. Mengecek data sudah benar (jika data kurang valid maka kembali ke no.2)
Kondisi Akhir Menampilkan seluruh list informasi
Skenario Edit Berita Berita 1. Memilih icon edit berita
2. Menampilkan form edit berita,
3. Mengedit berita dan
Menekan button update
untuk menyimpannya
4. Mengecek data sudah benar (jika data kurang valid maka kembali ke no.2)
Kondisi Akhir Menampilkan seluruh isi informasi
Tabel 3-23 Skenario Use Case Mengelola Keluhan
Use Case Mengelola Keluhan
Dekripsi Mengelola Keluhan yang disampaikan setiap
petani
Aktor Admin IT
Kondisi Awal Halaman Utama Admin
Skenario Normal
Aksi Aktor Reaksi Sistem
1. Memilih Keluhan
2. Menampilkan Keluhan yang sudah dikirim 3. Memilih salah satu keluhan
jika ingin membaca
4. Menampilkan keluhan yang diinputkan
Kondisi Akhir Menampilkan keluhan yang dipilih
Skenario Membaca keluhan 5. Memilih Button Baca
6. Menampilkan Keluhan Yang dipilih
7. Mencari solusi untuk
memacahkan keluhan petani,
dan menyuruh tenaga
penyuluh untuk mengecek kelapangan langsung