Aplikasi M-Petani berbasis android pada Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat

(1)

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.

Solusi yang ditawarkan yaitu pembangunan aplikasi mobile yang akan menjembatani kegiatan pendistribusian informasi, mempermudah melakukan


(2)

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


(3)

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

Observasi dilakukan secara langsung kepada Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat secara langsung dengan melihat bagaimana proses penyampaian informasi kepada petani.


(4)

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


(5)

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

Tahap pemeliharaan ini perangkat lunak sudah diserahkan kepada pengguna. Pada tahap ini dilakukan evaluasi terhadap sistem yang baru untuk mengetahui apakah sistem telah memenuhi tujuan yang ingin


(6)

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.


(7)

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

Bab ini berisi kesimpulan dari pembahasan aplikasi yang dibuat dan saran untuk pengembangan aplikasi ke depan.


(8)

(9)

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 :


(10)

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.

6. Dalam pelaksanaan tugasnya dibantu oleh beberapa orang menurut kebutuhan.


(11)

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.

j. Melaksanakan penyiapan bahan pembinaan kelembagaan dan ketatalaksanaan di lingkungan Dinas.


(12)

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.

b. Pelaksanaa urusan rumah dan perlengkapan Dinas.


(13)

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

Subdinas produksi Holtikultura (Ilmu tentang perkebunan mencakup:padi, jagung, kacang tanah, ubi jalar, kentang, kubis, tomat, cabe merah, bawang merah,


(14)

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;

1. Seksi pengelolaan pasca panen. 2. Seksi pemasaran.


(15)

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 (Java Script 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 Pemrograman JavaScript, Standar ECMA-262 Edisi ke-3 – Desember 1999.JSON merupakan format teks yang tidak bergantung pada bahasa pemrograman apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C termasuk C, C++, C#, Java, JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data.[3]


(16)

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]


(17)

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]


(18)

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]


(19)

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]


(20)

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

Android menyertakan libraries C/C++ yang digunakan oleh berbagai komponen dari sistem Android.Kemampuan ini disediakan kepada Developer


(21)

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

Android terdiri dari satu set core libraries yang menyediakan sebagian besar fungsi yang sama dengan yang terdapat pada core libraries bahasa pemrograman Java.Setiap aplikasi menjalankan prosesnya sendiri dalam Android, dengan masing-masing instan dari mesin virtual Dalvik (Dalvik VM).Dalvik dirancang agar perangkat dapat menjalankan multiple VMs secara efisien. Mesin Virtual Dalvik mengeksekusi file dalam Dalvik executable (.dex), sebuah format yang dioptimalkan untuk memori yang kecil. Dalvik VM berbasis, berjalan, dan dikompilasi oleh compiler bahasa Java yang telah ditransformasikan ke dalam .dex format oleh tool “dx” yang telah disertakan.Dalvik VM bergantung pada


(22)

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).

Pada perkembangan teknik pemrograman berorientasi objek, munculah sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yang dibangun dengan menggunakan teknik pemrograman berorientasi objek, yaitu

Unified Modeling Language (UML). UML muncul karena adanya kebutuhan

pemodelan visual untuk menspesifikasikan, menggambarkan, membangun, dan dokumentasi dari sistem perangkat lunak. UML merupakan bahasa visual untuk


(23)

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

Pada UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan dalam 3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat dilihat pada gambar dibawah.[2][5]


(24)

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

Use Case atau diagram Use Case merupakan pemodelan untuk kelakuan

(behavior) sistem informasi yang akan dibuat. Use Case mendeskripsikan sebuah

interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara kasar, Use Case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. [5]

UML 2.3 Diagram

Structure Diagrams Class Diagram Object Diagram Component Diagram Composite Structure Diagram Package Diagram Deployment Diagram Behavior Diagrams

Use Case Diagram

Activity Diagram State Machine Diagram Intraction Diagrams Sequence Diagram Communication Diagram Timing Diagram Interaction Overview Diagram


(25)

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>


(26)

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 sendiri atau perlakuan khusus dan merupakan pola berhubungan

base-parent use case. Digambarkan dengan garis berpanah tertutup dari base


(27)

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.

Penomoran pesan berdasarkan urutan interaksi pesan. Penggambaran letak pesan harus berurutan, pesan yang lebih atas dari lainnya adalah pesan yang berjalan terlebih dahulu.


(28)

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.

Dalam mendefinisikan metode yang ada di dalam kelas perlu memperhatikan apa yang disebut dengan cohesion dan coupling. Cohesion adalah ukuran seberapa dekat keterkaitan instruksi di dalam sebuah metode terkait satu sama lain


(29)

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

Hubungan antar-class dimana sebuah class memiliki ketergantungan pada class lainnya tetapi tidak sebaliknya.


(30)

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

Karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnya yang melibatkan objek tersebut


(31)

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.

Dalam rekayasa perangkat lunak, konsep pendekatan berorientasi objek dapat diterapkan pada tahap analisis, perancangan, pemrograman, dan pengujian


(32)

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.

Secara teknis, sebuah kelas saat program dieksekusi maka akan dibuat sebuah objek. Objek dilihat darisegi teknis adalah elemen pada saat runtime yang akan diciptakan, dimanipulasi, dan dihancurkan saat eksekusi sehinga sebuah objek hanya ada saat sebuah program dieksekusi. Jika masih dalam bentuk


(33)

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)

Mekanisme yang memungkinkan satu objek mewarisi sebagian atau seluruh definisi dan objek lain sebagai bagian dan dirinya.


(34)

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

Database dapat diartikan sebagai kumpulan data yang terdiri atas satu atau lebih tabel yang terintegrasi satu sama lain, di mana setiap pemakai (user) diberi wewenang (otorisasi) untuk dapat mengakses (mengubah, menghapus, menganalisis, menambah, memperbaiki) data dalam tabel-tabel tersebut.


(35)

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

Skala likert merupakan skala yang menyatakan tingkat persetujuan individu terhadap suatu pernyataan. Skala ini sering digunakan dalam berbagai penelitian yang menggunakan pendekatan survei, dimana kuesioner dijadikan sebagai alat untuk memperoleh data.Ada beberapa tingkat Skala Likert yang sering digunakan dalam penelitian, diantaranya adalah 5-level, 7-level dan 9-level[8][9].


(36)

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

Apabila data yang diperoleh melalui jawaban kuesioner telah terkumpul, maka angka dalam bentuk skala liker yang dipilih responden (pada setiap pertanyaan kuesioner) selanjutnya dikalkulasi. Perhitungan ini menggunakan teknik statistik sehingga dapat dianalisis lebih lanjut.


(37)

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

Sistem yang berjalan pada saat ini adalah sistem yang konvensional.Kegiatan Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat bagian bidang Sumber Daya seperti penyampaian informasi kepada setiap petani dilakukan dengan cara yang konvensional, yaitu dengan cara tenaga penyuluh langsung datang ketempat petani untuk memberikan informasi kepada petani,petani yang akan melakukan permohonan benih tanaman akan mengisi form permohonan benih tanaman yang di ambil di kantor Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat dan mengisi semua data yang dengan benar,setelah mengisi form dengan benar maka form permohonan tersebut di kembalikan kepada Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat di bagian bidang Sumber daya dan akan diproses,serta petani yang akan menyampaikan keluhan atau masalah yang dialami terlebih dahulu mendatangi


(38)

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

Flowmap diagram merupakan diagram yang memodelkan aliran kerja

atau workflow dari urutan aktifitas dalam suatu proses. Flowmap diagram sistem yang berjalan terdiri dari flowmap diagram penyebaran informasi, flowmap


(39)

1 Flowmap diagrampenyebaran informasi

Flowmap Diagram penyebaran informasi menjelaskan alur kerja sistem

penyebaran informasi pada sistem yang sedang berjalan.


(40)

2 Flowmap diagrampenyampaiankeluhan

Flowmap diagram penyampaian keluham menjelaskan alur kerja sistem

yang sedang berjalan saat ini di Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat.


(41)

3. Flowmap diagrampermohonan benih tanaman baru

Flowmap permohonan benih menjelaskan alur kerja sistem permohonan

benih pada sistem yang sedang berjalan.


(42)

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

Aplikasi front end merupakan aplikasi yang berfungsi sebagai antar muka antara pengguna dan sistem. Front end digunakan untuk menampilkan informasi pertanian, memberikan layanan permohonan benih baru, sarana untuk penyampaian keluhan/masalah secara cepat kepada tenaga penyuluh.Pengguna aplikasi front end adalah seluruh masyarakat petani yang ada di Jawa Barat dengan hak akses dapat menggunakan seluruh fitur yang ada di dalam aplikasi front end .Aplikasi front end me-request data informasi pertanian, data harga, dan data media yang ada didalam database server, request diproses oleh web service


(43)

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

Aplikasi back end merupakan pengolah data yang diimplementasikan pada sistem berbasis web. Back end terdiri dari web admin, web service dan database server. Pengguna atau pengelola aplikasi back end adalah bagian IT Dinas Pertanian yaitu sebagai admin yang memiliki hak akses untuk meng-update


(44)

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

Data mengalir melalui internet, data yang disediakan untuk aplikasi front end


(45)

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

Web service memudahkan beberapa aplikasi atau komponennya untuk saling

berhubungan dengan aplikasi lain dalam sebuah organisasi maupun diluar organisasi dengan menggunakan standar yang tidak terikat platform (

platform-neutral) dan tidak terikat akan bahasa pemrograman yang digunakan (

language-neutral). Web service ini berfungsi untuk menghubungkan aplikasi front end dan

aplikasi back end. Cara kerja web service ini yaitu dengan mengambil data dari database server dan kemudian mengkonversikan data tersebut kedalam format


(46)

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

Analisis kebutuhan non fungsional menggambarkan kebutuhan sistem yang menitik-beratkan pada perilaku yang dimiliki oleh system sebagai bahan analisis kekurangan dan kebutuhan yang harus dipenuhi dalam perancangan sistem yang akan diterapkan, diantaranya adalah analisis kebutuhan perangkat keras, analisis kebutuhan perangkat lunak, dan analisis pengguna sistem (user).


(47)

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

2 Ram 512 MB

3 Hardisk 80 Gb

4 Mouse Standar

5 Keyboard Standar

6 monitor Standar

7 Network Interface Card 10 Mbit/s

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


(48)

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


(49)

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

Jawab

Tingkat Pendidikan

Tingkat Keterampilan 1 Seksi

Kelembagaan dan

Pengelolaan Sumberdaya

Mengolah data tentang pertanian,data tenagan penyuluh Minimal Strata I

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


(50)

-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

Use Case diagram merupakan konstruksi untuk mendeskripsikan hubungan yang terjadi antar aktor dengan aktivitas yang terdapat pada sistem, use

case menjelaskan proses apa saja yang ada dalam sistem dan bagaimana

hubungannya dengan aktor. Use case diagram aplikasi M-Petani merupakan gabungan dari use case aplikasi front end dan use case aplikasi back end. Use


(51)

(52)

(53)

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

4 Melihat Berita Proses untuk melihat kumpulan berita yang di sajikan

5 Melihat Info Harga Proses untuk melihat daftar harga setiap jenis pangan

6 Melihat Info Hama Proses untuk melihat info hama yang menyerang tanaman

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

17 Mengelola Keluhan Membaca Keluhan dari petani dan memproses untuk mengambil tindakan terhadap keluhan petani tersebut


(54)

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


(55)

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


(56)

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 Kondisi Akhir Tampilan Halaman Utama Aplikasi


(57)

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 Kondisi Akhir Menampilkan Halaman Utama Aplikasi


(58)

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


(59)

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


(60)

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


(61)

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


(62)

Tabel 3-24 Skenario Use Case Mengelola Pengumuman Use Case Mengelola pengumuman

Dekripsi Mengelola pengumuman yang sudah lama dan mengisi yang baru jika ada

Aktor Admin IT

Kondisi Awal Halaman Utama Admin Skenario Normal

Aksi Aktor Reaksi Sistem 1. Memilih Pengumuman

2. Menampilkan seluruh pengumuman Kondisi Akhir Menampilkan seluruh list pengumuman

Skenario Tambah Pengumuman 1. Memilih Button Tambah

Pengumuman

2. Menampilkan Form Tambah Pengumuman 3. Mengisi form pengumuman

dan menakan button simpan

4. Mengecek data sudah benar (jika data kurang valid maka kembali ke no.2) Menampilkan List Pengumuman

Kondisi Akhir Manampilkan Seluruh data pengumuman Skenario Edit Pengumuman

1. Memilih Icon Edit

2. Menampilkan Form untuk edit pengumuman 3. Mengedit pengumuman dan

menekan button Update untuk menyimpan

4. Mengecek data sudah benar (jika data kurang valid maka kembali ke no.2) dan menampilkan seluruh pengumuman

Tabel 3-25 Skenario Use Case Mengelola Info Hama Use Case Mengelola Hama

Dekripsi Mengelola hama yang sudah lama dan mengisi yang baru jika ada

Aktor Admin IT

Kondisi Awal Halaman Utama Admin Skenario Normal


(63)

1. Memilih Kelola Hama

2. Menampilkan seluruh info hama Kondisi Akhir Menampilkan seluruh list info hama

Skenario Tambah Info Hama 1. Memilih Button Tambah Info

Hama

2. MEnampilkan Form tambah info hama 3. Mengisi info hama baru dan

menekan button simpan.

4. Mengecek data sudah benar (jika data tidak valid kembali ke no.2)

Skenario Akhir Menampilkan Informasi Hama Skenario Edit Info Hama

1. Memilih Icon Edit untuk mengedit info hama

2. Menampilkan form untuk edit info 3. Mengedit info hama dan

menekan button update untuk menyimpannya.

4. Mengecek data sudah benar (jika data kurang valid maka kembali ke no.2) dan menampilkan seluruh data info hama

Tabel 3-26 Skenario Use Case Mengelola Info Harga Use Case Mengelola Harga

Dekripsi Mengelola Info Harga yang sudah lama dan mengisi yang baru jika ada

Aktor Admin IT

Kondisi Awal Halaman Utama Admin Skenario Normal

Aksi Aktor Reaksi Sistem 1. Memilih Kelola Harga

2. Menampilkan seluruh info harga Kondisi Akhir Menampilkan seluruh list info harga

Skenario Tambah Info Harga 1. Memilih Button Tambah

Info Harga

2. Menampilkan form tambah info harga 3. Mengisi data untuk info

harga

4. Mengecek apakah data sudah terisi semua,dan menampilkan data info harga .


(64)

Skenario Edit Info Hama 1. Memilih icon edit hama

2. Menampilkan form untuk edit 3. Mengedit data info hama

dan menklik button update untuk menyimpan

4. Mengecek apakah semua data sudah terisi dan menyimpan ke database

Kondisi Akhir Menampilkan List Info Hama

3.1.6.4 Activity Diagram

Activity diagram menggambarkan berbagai aluir aktivitas dalam sistem

yang sedang dirancang, bagaimana masing-masing alur berawal dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses parallel

yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, dimana sebagian besar state adalah tindakan dan dan sebagian besar transisi trigger oleh selesainya state sebelumnya. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana actor menggunakan sistem untuk melakukan aktivitas.


(65)

1. Activity Diagram Daftar

Activity diagram Daftar memodelkan aliran kerja atau workflow dari urutan

proses pengolahan Daftar.


(66)

2. Activity Diagram Info Hama

Activity diagram info hama memodelkan aliran kerja atau workflow dari

urutan proses pengolahan info hama.

3. Activity Diagram Info Harga

Activity diagram info harga memodelkan aliran kerja atau workflow dari

urutan proses pengolahan info harga.

Gambar 3-10 Activity Diagram Melihat Info Hama


(1)

156

DAFTAR PUSTAKA

1. Presman, R. S. 2010, Software Engineering: A Practitioner’s Approach (Seven Edition). New York : McGraw-Hill

2. Widodo, Prabowo Pudjo dan Herlawati. 2011,Menggunakan UML,Informatika Bandung,

3. www.json.org

4. Fowler, M. 2012, The Brief Guide The Standar Object Modeling Language. 5. A.Rosa dan M. Shalahuddin, 2011, Modul Pembelajaran Rekayasa

Perangkat Lunak (Terstruktur dan Berorientasi Objek), Bandung

6. Kasman, Akhmad Dharma. Kolaborasi Dasyat Android. Yogyakarta, 2013 7. Safaat, N. 2012, Android Pemrograman Aplikasi Mobile Smartphone dan

Tablet Pc Berbasis Android. Bandung

8. Siregar, Syofian. 2010, Statistika Deskriptif Untuk Penelitian 9. Sugiyono.2002, Statistika Untuk Penelitian. Bandung


(2)

DAFTAR RIWAYAT HIDUP

Nama : AMURISI NAZARA

TTL : LOLOMBOLI,21 JANUARI 1992

Kewarganegaraan : WNI

Alamat : DESA BANUAGEA

KEC.TUHEMBERUA

TLP : 0853-2287-4409

Email : [email protected]

Pendidikan :

1998-2004 : SDN 077279 SIOFABNUA

2004-2007 : SMP N 1 TUHEMBERUA

2007-2010 : SMA N 1. TUHEMBERUA


(3)

iii

KATA PEGANTAR

Puji syukur dan terima kasih kepada Tuhan Yang Maha Esa atas berkat dan rahmat yang diberikan sehingga penelitian tugas akhir yang ber-judul

”APLIKASI M-PETANI BERBASIS ANDROID PADA DINAS

PERTANIAN TANAMAN DAN PANGAN PROVINSI JAWA BARAT” dapat diselesaikan tepat pada waktunya.Pelaksanaan tugas akhir ini dilakukan sebagai syarat untuk menyelesaikan program studi Strata I Jurusan Teknik Informatika Fakultas Teknik dan Ilmu Komputer di Universitas Komputer Indonesia.

Penyusunan skripsi ini tidak akan terwujud tanpa dukungan dan bantuan dari berbagai pihak. Untuk itu, penulis menyampaikan terima kasih kepada:

1. Bapak Irfan Maliki, S.T., M.T. selaku dosen pembimbing yang telah mengarahkan dalam proses pengerjaan tugas akhir ini.

2. Bapak Iskandar Ikbal, S.T., M.Kom., selaku Dosen Wali yang telah banyak membantu selama proses perkuliahan berlangsung.

3. Bapak Mohamad Kurnia Selaku pembimbing di Dinas Pertanian Tanaman Pangan Provinsi Jawa Barat yang mengarahkan dalam proses pengerjaan tugas akhir ini.

4. Ayah, Ibu, dan saudara – saudari kandungku yang juga mendukung dan memberikan doa dalam masa studi hingga akhir studi sarjana ini.

5. Seluruh teman dan kerabat yang ikut membantu dan mendukung sehingga tugas akhir ini dapat diselesaikan tepat pada waktunya.

Demikian pengantar yang dapat penulis sampaikan,sekali lagi penulis ucapkan terima kasih yang besar kepada seluruh pihak yang telah membantu dalam pelaksanaan tugas akhir ini.Semoga tugas akhir ini dapat berguna dalam pengembangan ilmu pengetahuan dan pembangunan.

Bandung, Februari 2015


(4)

(5)

(6)