Rancang Bangun Prototype Aplikasi Portal Berita Pada Kementerian Pertanian Republik Indonesia Berbasis Android

Embed Size (px)

DESCRIPTION

a

Citation preview

  • LAPORAN PRAKTEK KERJA LAPANGAN

    RANCANG BANGUN PROTOTYPE APLIKASI PORTAL BERITA PADA

    KEMENTERIAN PERTANIAN REPUBLIK INDONESIA

    BERBASIS ANDROID

    Oleh:

    Nimas Ayu Mailani

    1111091000053

    PROGRAM SARJANA (S1) KOMPUTER

    PROGRAM STUDI TEKNIK INFORMATIKA

    FAKULTAS SAINS DAN TEKNOLOGI

    UNIVERSITAS NEGERI SYARIF HIDAYATULLAH

    JAKARTA

    2015 M/ 1436 H

  • iii

    KATA PENGANTAR

    Puji dan syukur penulis panjatkan kehadirat Allah SWT atas limpahan

    rahmat dan karunia Nya sehingga penulis dapat menyelesaikan laporan hasil

    Praktik Kerja Lapangan dengan judul Rancang Bangun Prototype Aplikasi

    Portal Berita Pada Kementerian Pertanian Republik Indonesia Berbasis

    Android. Laporan PKL ini disusun sebagai salah satu syarat mahasiswa/i Teknik

    Informatika dalam menyelesaikan program studi Strata I (S1) di Universitas Islam

    Negeri Syarif Hidayatullah Jakarta.

    Pada kesempatan kali ini, penulis mengucapkan terimakasih kepada pihak -

    pihak yang telah membantu penulis selama pelaksanaan dan penulisan Laporan

    PKL, yaitu diantaranya:

    1. Orangtua serta seluruh anggota keluarga yang telah memberi dukungan

    dan bantuan berupa moriil maupun materiil.

    2. Bapak Dr. Agus Salim, M. Si selaku Dekan Fakultas Sains dan

    Teknologi.

    3. Ibu Arini, MT dan Bapak Feri Fahrianto, M.Sc, selaku Ketua dan

    Sekretaris Program Studi Teknik Informatika.

    4. Ibu Nenny Anggraini, S. Kom, MT selaku Dosen Pembimbing PKL

    yang telah membimbing penulis dalam pelaksanaan kegiatan.

    5. Pak Andry Polos, S. Kom, MT selaku Pembimbing Lapangan yang

    telah mengarahkan penulis selama pelaksanaan kegiatan di

    Kementerian Pertanian RI.

  • iv

    6. Seluruh Civitas Kementerian Pertanian beserta pihak pihak terkait

    yang telah membantu penulis dalam memperoleh informasi.

    7. Seluruh teman teman TI B 2011 yang telah memberi dukungan,

    semangat dan sebagai tempat bertukar pikiran.

    8. Seluruh pihak yang telah membantu baik secara moriil maupun materiil

    yang tidak dapat penulis sebutkan satu persatu.

    Penulisan laporan PKL ini masih jauh dari kesempurnaan, karena itu penulis

    menerima saran dan kritik yang membangun demi meningkatkan kualitas penulis

    di masa mendatang.

    Semoga laporan PKL ini membawa manfaat, khususnya bagi penulis sendiri

    dan umumnya untuk pengembangan ilmu.

    Jakarta, Juni 2015

    Penulis

    Nimas Ayu Mailani

  • v

    DAFTAR ISI

    HALAMAN PENGESAHAN............................................ Error! Bookmark not defined.

    KATA PENGANTAR ....................................................................................................... iii

    DAFTAR ISI ....................................................................................................................... v

    DAFTAR GAMBAR ......................................................................................................... vi

    DAFTAR BAGAN ........................................................................................................... vii

    DAFTAR TABEL ............................................................................................................ viii

    DAFTAR LAMPIRAN ...................................................................................................... ix

    BAB I PENDAHULUAN ................................................................................................... 2

    1.1. Latar Belakang .................................................................................................... 2

    1.2. Rumusan Masalah ............................................................................................... 3

    1.3. Batasan Masalah ................................................................................................. 4

    1.4. Tujuan ................................................................................................................. 4

    1.5. Manfaat ............................................................................................................... 5

    1.6. Waktu dan Tempat .............................................................................................. 6

    1.7. Peserta ................................................................................................................. 7

    1.8. Sistematika Penulisan ......................................................................................... 7

    BAB II LANDASAN TEORI DAN GAMBARAN UMUM ............................................. 9

    2.1. Landasan Teori .................................................................................................... 9

    2.2. Sejarah Instansi Kementerian Pertanian RI....................................................... 20

    2.3. Visi dan Misi Kementerian Pertanian RI .......................................................... 21

    BAB III PELAKSANAAN PRAKTIK KERJA LAPANGAN ........................................ 24

    3.1. Metodologi Penelitian ....................................................................................... 24

    3.2. Identifikasi Prototype ........................................................................................ 28

    3.3. Pembuatan Prototype ........................................................................................ 31

    3.4. Pengujian dan Evaluasi Prototype .................................................................... 32

    3.5. Perubahan Prototype ......................................................................................... 40

    3.6. Transformasi Prototype Skala Besar ................................................................. 41

    BAB IV PENUTUP .......................................................................................................... 42

    4.1. Kesimpulan ....................................................................................................... 42

    4.2. Saran ................................................................................................................. 42

    DAFTAR PUSTAKA ....................................................................................................... 44

    LAMPIRAN ...................................................................................................................... 46

  • vi

    DAFTAR GAMBAR

    Gambar 2.1. Tahapan prototyping model .................................................. 13

    Gambar 2.2. Struktur penulisan aplikasi Java ........................................... 16

  • vii

    DAFTAR BAGAN

    Bagan 2.1. Struktur organisasi Kementerian Pertanian RI ........................ 23

    Bagan 3.1. Alur pengembangan sistem ..................................................... 27

    Bagan 3.2. Use case diagram sistem aplikasi portal berita ........................ 30

    Bagan 3.3. Activity diagram sistem aplikasi portal berita ......................... 31

  • viii

    DAFTAR TABEL

    Tabel 3.1. Unit testing LoadData ............................................................... 33

    Tabel 3.2. Unit testing onCreate ................................................................ 38

  • ix

    DAFTAR LAMPIRAN

    Lampiran 1. Daftar Directory Project Eclipse .......................................... 47

    Lampiran 2. Source Code Json PHP .......................................................... 48

    Lampiran 3. Source Code Berita ............................................................... 49

    Lampiran 4. Surat Permohonan PKL ......................................................... 56

    Lampiran 5. Surat Keterangan Menyelesaikan PKL ................................. 57

    Lampiran 6. Surat Permohonan Bimbingan PKL ...................................... 58

    Lampiran 7. Penilaian PKL Pembimbing Lapangan ................................. 59

    Lampiran 8. Penilaian PKL Pembimbing Bidang Penulisan Laporan ...... 60

    Lampiran 9. Rekap Penilaian PKL Mahasiswa ......................................... 61

  • 2

    BAB I

    PENDAHULUAN

    1.1. Latar Belakang

    Telepon genggam merupakan satu dari banyak produk kemajuan

    teknologi. Pada kuartal pertama tahun 2014, pengguna ponsel bertambah 120

    juta orang dan 65% ponsel yang terjual adalah smartphone. Riset ini didukung

    oleh Yahoo! dan Mindshare (IFT Online, 2013) yang melakukan riset serupa

    dengan ruang lingkup Indonesia. Riset yang dilakukan oleh Yahoo dan

    Mindshare mengungkapkan bahwa pada pertengahan tahun 2013 terdapat 41,3

    juta orang di Indonesia memiliki smartphone dimana 39% adalah anak muda

    dengan kisaran usia 16 tahun hingga 21 tahun. Kisaran usia dibawah 30 tahun

    merupakan usia adaptif dalam menghadapi perkembangan teknologi. Nielsen

    On Device Meter (Kompasiana Tekno, 2014) mencatat tahun 2013 pengguna

    smartphone meningkat dari tahun 2012 yang mencapai 19% dan dalam satu

    hari pengguna smartphone di Indonesia menghabiskan 140 menit untuk

    mengoperasikan smartphone miliknya. Riset ini membuktikan bahwa

    masyarakat Indonesia banyak berinteraksi dengan smartphone baik saat

    bekerja maupun di waktu senggangnya

    Kementerian Pertanian Republik Indonesia merupakan salah satu

    instansi pemerintah Indonesia yang berdiri pada tanggal 1 Januari 1905

    berdasarkan Surat Keputusan Gubernur Jenderal Hindia Belanda tanggal 23

  • 3

    September 1904 No.28 Staatsblaad 982 yang didasarkan pada Surat Keputusan

    Raja Belanda No.28 tanggal 28 Juli 1904 (Staatsblaad No.380) (Wikipedia, n.d.)

    Kementerian Pertanian RI, melakukan pengabdiannya dengan turun

    langsung di tengah masyarakat sebagai jembatan penghubung antara

    pemerintah Republik Indonesia dengan masyarakatnya. Salah satu bentuk

    pengabdiannya dengan memberikan berbagai informasi di bidang Pertanian

    atau agrikultur, sehingga masyarakat dapat mengetahui secara transparan

    kinerja Kementerian Pertanian dan informasi informasi terkait pertanian.

    Informasi informasi tersebut dapat diakses melalui laman website resmi

    Kementerian Pertanian RI. Namun, hal ini masih kurang optimal dimana

    tampilan website tidak responsif dengan berbagai macam ukuran layar,

    sehingga pengunjung website kurang nyaman dalam mengakses informasi.

    Merujuk pada kekurangan website Kementerian Pertanian RI dan hasil

    riset yang didapat dari berbagai instansi, penulis memutuskan untuk

    mengoptimalkan penyampaian informasi dengan membuat prototype aplikasi

    portal berita pada platform Android dengan judul Rancang Bangun Prototype

    Aplikasi Portal Berita pada Kementerian Pertanian Republik Indonesia

    Berbasis Android.

    1.2. Rumusan Masalah

    Berdasarkan latar belakang tersebut, maka rumusan masalah yang akan

    dibahas dalam Praktik Kerja Lapangan (PKL) ini adalah:

  • 4

    Bagaimana membangun prototype aplikasi portal berita Kementerian Pertanian

    RI berbasis android sehingga memudahkan masyarakat dalam mengakses

    informasi?

    1.3. Batasan Masalah

    Dalam Praktik Kerja Lapangan (PKL) ini penulis membatasi

    permasalahan dengan batasan sebagai berikut:

    Aplikasi yang dibangun hanya menampilkan berita sesuai dengan database

    berita pada website Kementerian Pertanian RI.

    Database yang digunakan aplikasi terdapat dalam localhost dan

    menggunakan web server XAMPP.

    Aplikasi yang dibangun berbasis android dan belum dapat diakses secara

    online (masih berjalan di emulator android).

    Aplikasi dibangun menggunakan bahasa pemrograman Java dengan tools

    Eclipse.

    Metodologi pengembangan sistem menggunakan model Prototyping.

    1.4. Tujuan

    Tujuan dari Praktik Kerja Lapangan (PKL) dan penulisan laporan PKL

    adalah sebagai berikut:

    1.4.1. Tujuan Umum PKL

    Memenuhi salah satu syarat untuk menyelesaikan studi strata

    satu Program Studi Teknik Informatika, Fakultas Sains dan

  • 5

    Teknologi, Universitas Islam Negeri Syarif Hidayatullah

    Jakarta.

    Mendapatkan pengalaman bekerja secara langsung di instansi

    atau perusahaan resmi.

    Menerapkan ilmu akademisi yang telah didapat selama masa

    perkuliahan dalam dunia kerja.

    1.4.2. Tujuan Khusus PKL

    Memudahkan masyarakat dalam mendapatkan berita berita

    terkait pertanian dari website Kementerian Pertanian Republik

    Indonesia.

    1.4.3. Tujuan Penulisan Laporan PKL

    Membuat dokumentasi dari hasil Praktik Kerja Lapangan (PKL)

    dan sebagai bukti telah melaksanakan PKL.

    1.5. Manfaat

    Manfaat yang diharapkan penulis dari pelaksanaan dan penulisan

    laporan kegiatan Praktik Kerja Lapangan (PKL) adalah sebagai berikut:

    1.5.1. Bagi Mahasiswa

    Dapat menerapkan ilmu ilmu yang telah didapat selama masa

    perkuliahan.

    Mempersiapkan mahasiswa untuk memasuki dunia kerja dan

    melatih profesionalisme dalam lingkungan kerja.

    Memperluas relasi kerja dengan instansi yang terkait.

  • 6

    1.5.2. Bagi Instansi atau Perusahaan

    Mendapatkan akses langsung informasi Sumber Daya Manusia

    (mahasiswa) yang siap memasuki dunia kerja dan kompeten.

    Mendapatkan solusi atas suatu masalah tertentu sesuai dengan

    kemampuan mahasiswa.

    1.5.3. Bagi Universitas

    Mengetahui kemampuan mahasiswa dalam menguasai ilmu

    yang telah didapatkan selama masa perkuliahan.

    Membangun hubungan kemitraan dengan instansi atau

    perusahaan terkait.

    1.6. Waktu dan Tempat

    Pelaksanaan Praktik Kerja Lapangan (PKL) telah dilaksanakan pada:

    Instansi : Kementerian Pertanian Republik Indonesia

    Alamat : Jalan Harsono RM No. 3, Jakarta Selatan 12550

    Telepon : (+62 21) 7822638, 7816384

    Waktu PKL : 1 November 2014 s.d. 4 Januari 2015

    Materi : Membuat aplikasi atau program dasar yaitu

    membangun aplikasi pengembangan software

    sesuai kebutuhan tempat PKL dengan

    mengembangkan aplikasi portal berita berbasis

    Android pada Kementerian Pertanian RI.

  • 7

    1.7. Peserta

    Peserta Praktik Kerja Lapangan (PKL) di Kementerian Pertanian RI

    pada Sub Bidang Aplikasi Multimedia Pusat Data dan Sistem Informasi

    Pertanian adalah :

    1.8. Sistematika Penulisan

    Sistematika Penulisan laporan PKL sebagai berikut:

    BAB I PENDAHULUAN

    Nama NIM Tugas

    Nimas Ayu Mailani

    (Penulis)

    1111091000053 Rancang Bangun Prototype

    Aplikasi Portal Berita pada

    Kementerian Pertanian RI

    Berbasis Android

    Faza Faridah 1111091000082 Rancang Bangun Aplikasi

    Forum Konsultasi

    Kementerian Pertanian RI

    Menggunakan PHP dan

    Framework Bootstrap

  • 8

    Pada bab ini diuraikan latar belakang dan permasalahan institusi

    perusahaan, rumusan masalah, batasan masalah, tujuan, manfaat, waktu dan

    tempat pelaksanaan PKL, peserta, dan sistematika penulisan.

    BAB II LANDASAN TEORI DAN GAMBARAN UMUM

    Pada bab ini diuraikan studi pustaka yang menunjang, sistem yang

    digunakan, serta gambaran umum Kementerian Pertanian Republik Indonesia.

    BAB III PELAKSANAAN PRAKTIK KERJA LAPANGAN

    Pada bab ini diuraikan hasil pelaksanaan PKL, yaitu analisa,

    rancangan, implementasi aplikasi berdasarkan metode penelitian dan

    pengembangan sistem yang digunakan, serta pengujian sistem aplikasi.

    BAB IV PENUTUP

    Pada bab ini diuraikan mengenai kesimpulan dari hasil yang didapat

    dari pelaksanaan PKL serta saran yang dapat digunakan untuk sistem aplikasi

    selanjutnya.

  • 9

    BAB II

    LANDASAN TEORI DAN GAMBARAN UMUM

    2.1. Landasan Teori

    2.1.1. Rancang Bangun

    Rancang Bangun adalah tahap dari setelah analisis dari

    siklus pengembangan sistem yang merupakan pendefinisian dari

    kebutuhan - kebutuhan fungsional, serta menggambarkan bagaimana

    suatu sistem dibentuk yang dapat berupa penggambaran, perencanaan

    dan pembuatan sketsa atau pengaturan dari beberapa elemen yang

    terpisah ke dalam satu kesatuan yang utuh dan berfungsi, termasuk

    menyangkut mengkonfigurasikan dari komponen komponen

    perangkat keras dan perangkat lunak dari suatu sistem (Jogiyanto,

    2005).

    2.1.2. Aplikasi

    Arti aplikasi menurut Simarmata (Solihin, 2014) adalah

    program komputer yang dibuat untuk menolong manusia dalam

    melaksanakan tugas tertentu. Definisi lain dari aplikasi yaitu software

    yang berfungsi untuk melaukan berbagai bentuk pekerjaan atau tugas

    tugas tertentu seperti penerapan, penggunaan dan penambahan data

    (Supriyanto, 2013).

    2.1.3. Portal Berita

  • 10

    Prof. Mitchel V. Charnley menyatakan bahwa berita adalah

    laporan tercepat mengenai fakta atau opini yang mengandung hal yang

    menarik minat atau penting, atau kedua duanya, bagi sejumlah besar

    penduduk (Jamanti, 2014). Sehingga Jamanti mendefinisikan berita

    adalah laporan tercepat mengenai fakta dan opini yang mengandung

    nilai berita dan yang sudah disajikan melalui media massa periodic

    untuk sejumlah besar masyarakat (Jamanti, 2014).

    Menurut Pavlik (Gumilang, 2010), News Portal (Portal

    Berita) adalah salah satu bentuk Konvergensi New Media ; yang terdiri

    atas faktor, karakteristik, dan dampak dari New Media itu sendiri.

    Faktor faktor konvergensi media yaitu adanya penggabungan proses

    proses komputer, telekomunikasi, dan media dalam lingkungan

    digital.

    2.1.4. Android

    Android sebuah Operating System (OS) atau Sistem Operasi

    berbasis Linux yang diciptakan untuk telepon seluler (Kusumaningati,

    2012). Menurut Kurniawan (2014: 17) Android merupakan sebuah

    platform pertama yang betul betul terbuka dan komprehensif untuk

    perangkat mobile, semua perangkat lunak yang ada difungsikan

    sebagai menjalankan sebuah device mobile tanpa memikirkan kendala

    kepemilikan yang menghambat inovasi pada teknologi mobile.

  • 11

    Android merupakan subset perangkat lunak untuk perangkat

    mobile yang meliputi sistem operasi, middleware dan aplikasi inti

    yang dirilis oleh Google. Sedangkan android SDK (Software

    Development Kit) menyediakan Tools dan API yang diperlukan untuk

    mengembangkan aplikasi pada platform android dengan

    menggunakan bahasa pemrograman Java.

    2.1.5. Model Prototyping

    Definisi prototyping menurut Howard yang dikutip oleh

    (Aunur R. Mulyanto, 2008), prototyping adalah salah satu pendekatan

    dalam rekayasa perangkat lunak yang secara langsung

    mendemonstrasikan bagaimana sebuah perangkat lunak atau

    komponen komponen perangkat lunak akan bekerja dalam

    lingkungannya sebelum tahapan konstruksi aktual dilakukan.

    Faktor kritis untuk kesuksesan pendekatan prototipe adalah

    perubahan cepat di dalam perancangan dan pembangunan prototipe

    (Simarmata, 2010). Pendekatan prototipe sangat sesuai untuk proyek

    kecil atau pada tingkat subsistem.

    Terdapat dua pendekatan pengembangan perangkat

    keras/lunak dalam model prototipe:

    Rapid Throwaway Prototyping

    Pendekatan pengembangan perangkat keras/lunak ini

    dipopulerkan oleh Goman dan Scoot (1981) yang saat ini telah

  • 12

    digunakan secara luas oleh industri, terutama di dalam

    pengembangan aplikasi. Pada pendekatan ini, prototipe quick

    and dirty dibangun, diverifikasi oleh konsumen, dan dibuang

    hingga prototipe yang diinginkan tercapai pada saat proyek

    berskala besar dimulai.

    Prototipe Evolusioner

    Menurut Hough (Simarmata, 2010) prototipe dibangun

    berdasarkan pada kebutuhan dan pemahaman secara umum.

    Prototipe kemudian diubah dan dievolusikan daripada dibuang.

    Prototipe yang dibuang digunakan dengan aspek sistem yang

    dimengerti secara luas dan dibangun atas kekuatan tim

    pengembang, kadang kadang diacu sebagai chunking pada

    pengembangan aplikasi.

    Harris (Aunur R. Mulyanto, 2008) membagi prototyping

    dalam enam tahapan seperti pada gambar 2.1.

  • 13

    Gambar 2.1. Tahapan prototyping model (Harris, 2003)

    (Sumber : Aunur R. Mulyanto)

    Tahap tahapan secara ringkas dijelaskan sebagai berikut

    (Aunur R. Mulyanto, 2008):

    Identifikasi kandidat prototyping. Kandidat dalam kasus ini

    meliputi user interface (menu, dialog, input dan output), file file

    transaksi utama, dan fungsi fungsi pemrosesan sederhana.

    Rancang bangun prototype dengan bantuan software seperti word

    processor, spreadsheet, database, pengolah grafik, dan software

    CASE (Computer-Aided System Engineering).

    Uji prototype untuk memastikan prototype dapat dengan mudah

    dijalankan untuk tujuan demonstrasi.

  • 14

    Siapkan prototype USD (Users System Diagram) untuk

    mengidentifikasi bagian bagian dari perangkat lunak yang di-

    prototype-kan.

    Evaluasi dengan pengguna untuk mengevaluasi prototype dan

    melakukan perubahan jika diperlukan.

    Transformasikan prototype menjadi perangkat lunak yang

    beroperasi penuh dengan melakukan penghilangan kode kode

    yang tidak dibutuhkan, penambah program program yang

    memang dibutuhkan dan perbaikan dan pengujian perangkat

    lunak secara berulang.

    2.1.6. UML (Unified Modelling Language)

    Menurut Fowler (Aunur R. Mulyanto 2008:24) UML adalah

    bahasa pemodelan standar atau kumpulan teknik teknik pemodelan

    untuk menspesifikasi, mem-visualisasi, meng-konstruksi dan

    mendokumentasi hasil kerja dalam pengembangan perangkat lunak.

    Mulyanto (2008:24) menerangkan bahwa UML lahir dari

    penggabungan banyak bahasa pemodelan grafis berorientasi obyek

    yang berkembang pesat pada akhir tahun 1980an dan awal 1990an.

    UML mendefinisikan notasi dan semantik. Notasi merupakan

    sekumpulan bentuk khusus yang memiliki makna tertentu untuk

    menggambarkan berbagai diagram piranti lunak dan semantik

    mendefinisikan bagaimana bentuk bentuk tersebut dapat

  • 15

    dikombinasikan. Ada beberapa jenis diagram yang disediakan dalam

    UML, antara lain adalah (Aunur R. Mulyanto, 2008):

    Use case diagram. Diagram ini berguna untuk

    menggambarkan interaksi antara pengguna dengan

    sebuah perangkat lunak.

    Activity diagram. Diagram ini berguna untuk

    menggambarkan prosedur prosedur perilaku perangkat

    lunak.

    Class diagram. Diagram ini berguna untuk

    menggambarkan class, fitur, dan hubungan hubungan

    yang terjadi. Pada diagram ini pendekatan berorientasi

    obyek memegang peranan yang sangat penting.

    Sequence diagram. Diagram ini berguna untuk

    menggambarkan interaksi antar obyek dengan penekanan

    pada urutan proses atau kejadian.

    State machine diagram. Diagram ini digunakan untuk

    menggambarkan bagaimana suatu kejadian mengubah

    obyek selama masa hidup obyek tersebut.

    Component system. Diagram ini berguna untuk

    menggambarkan struktur dan koneksi komponen.

    2.1.7. Java

    Sejarah Java berawal pada tahun 1991 ketika perusahaan Sun

    Microsystem memulai Green Project, yakni projek penelitian untuk

  • 16

    membuat bahasa yang akan digunakan pada chip chip embedded

    untuk device intelligent consumer electronic. Setelah berjalan

    beberapa lama, James Gosling, salah seorang anggota team, merasa

    kurang puas dengan beberapa karakteristik dari kedua bahasa tersebut

    (C dan C++) berusaha mengembangkan bahasa lain. Bahasa tersebut

    kemudian dinamakan Oak, diinspirasi ketia dia melihat pohon di

    seberang kaca ruang kantornya. Belakangan Oak beralih nama

    menjadi Java (Benny Hermawan, 2004).

    Menurut Purnomo (2006: 1) Java dikenal sebagai

    pemrograman tingkat tinggi yang berorientasi objek, atau lazim

    disebut dengan istilah Object Oriented Programming (OOP).

    Gambar 2.2. Struktur penulisan aplikasi Java

    (Sumber: Adi Purnomo)

  • 17

    Pemrograman Java memiliki karakteristik seperti (Wahana

    Komputer, 2010):

    Sederhana (simple)

    Pemrograman Java jika dibandingkan dengan pendahulunya

    seperti bahasa C++ relatif lebih sederhana.

    Berorientasi Objek (Object Oriented)

    Pemrograman Java menggunakan pendekatan berorientasi

    objek. Pemrograman berorientasi objek adalah perancangan

    atau metodologi perancangan program berdasarkan objek.

    Metode ini menggantikan metode prosedural yang telah lama

    digunakan, sehingga memiliki kelebihan seperti fleksibel,

    modular, recovery program melalui enkapsulasi data,

    inheritance, dan polymorphism.

    Terdistribusi (Distributed)

    Metode komputerisasi dengan menggunakan beberapa

    komputer yang dihubungkan dengan jaringan untuk mengelola

    tugas tertentu.

    Interpretasi (Interpreted)

    Memberikan kemudahan bagi pengembang dalam

    menerjemahkan kode bytecode ke dalam bahasa mesin dari

    komputer yang bersangkutan.

    Dapat diandalkan (Robust)

  • 18

    Pemrograman Java dapat mengantisipasi berbagai macam

    gangguan (bug) dan kesalahan umum lainnya yang sering

    ditemukan pada bahasa pemrograman lainnya.

    Aman (Secure)

    Pengembang aplikasi tidak perlu khawatir mengenai

    kerusakan yang mungkin terjadi, hal ini dikarenakan Java

    tidak menyediakan akses secara bebas ke sistem Anda secara

    langsung.

    Tidak bergantung (Architecture-Neutral)

    Program yang dihasilkan oleh Java tidak tergantung kepada

    arsitektur komputer tertentu.

    Netral (Portable)

    Pemrogaraman Java bersifat netral terhadap arsitektur

    komputer dan sistem operasi sehingga dapat dioperasikan pada

    mesin lainnya tanpa melakukan kompilasi ulang.

    2.1.8. PHP

    PHP merupakan script untuk pemrograman script web

    server-side, script yang membuat dokumen HTML secara on the fly,

    dokumen HTML yang dihasilkan dari suatu aplikasi bukan dokumen

    HTML yang dibuat dengan menggunakan editor teks atau editor

    HTML.

  • 19

    Dengan menggunakan PHP maka maintenance suatu situs

    web menjadi lebih mudah. Proses update data dapat dilakukan dengan

    menggunakan aplikasi yang dibuat dengan menggunakan script PHP.

    PHP secara resmi merupakan kependekan dari PHP:

    HyperTextProcessor, merupakan bahasa script server-side yang

    disisipkan pada HTML (Sidik, 2014).

    2.1.9. Database MySQL

    MySQL merupakan software database yang termasuk paling

    populer di lingkungan Linux, kepopuleran ini karena ditunjang karena

    performansi query dari databasenya yang saat itu bisa dikatakan

    paling cepat, dan jarang bermasalah.

    Berangkat dari software yang shareware MySQL populer,

    kini mulai versi 3.23 MySQL menjadi software open source yang

    berarti free. MySQL dapat digunakan untuk kepentingan komersial

    atau pun personal (non profit).

    MySQL telah tersedia juga di lingkungan Windows, software

    MySQL di lingkungan Windows dipasang pada direktori c:\mysql.

    C:\mysql\bin adalah direktori yang berisi daftar modul executable dari

    software MySQL.

    PHP untuk Windows secara default telah mendukung

    MySQL (Sidik, 2014).

  • 20

    2.2. Sejarah Instansi Kementerian Pertanian RI

    Kementerian Pertanian Republik Indonesia (RI) yang dahulu disebut

    sebagai Departemen Pertanian, didirikan pada tanggal 1 Januari 1905

    berdasarkan Surat Keputusan Gubernur Jenderal Hindia Belanda tanggal 23

    September 1904 No.20 Staatsblaad 982 yang didasarkan pada Surat Keputusan

    Raja Belanda No.28 tanggal 28 Juli 1904 (Staatsblaad No.380) (Wikipedia,

    n.d.).

    Pada masa penjajahan Belanda, urusan pertanian ditangani oleh

    Departement van Landouw (1905). Departement van Landouw, Nijverheid en

    hendel (1911) dan Departement van Ekonomische Zaken (1934). Sedangkan

    pada masa pendudukan Jepang, Gunsekanbu Sangyobu yang berperan dalam

    menangani urusan pertanian. Setelah proklamasi kemerdekaan terbentuknya

    kabinet kabinet yaitu (SEJARAH KEMENTERIAN PERTANIAN, n.d.):

    Penjajahan Belanda, 1800 1942

    Pendudukan Jepang, 1942 1945

    Awal Kemerdekaan, 1945 1959

    Ekonomi Terpimpin, 1960 1965

    Era Transisi, 1966 1968

    Pelita I, 1968 1973

    Pelita II, 1973 1978

    Pelita III, 1978 1983

    Pelita IV, 1983 1988

    Pelita V, 1988 1993

  • 21

    Pelita VI, 1993 1998

    Pelita VII, 1988

    Pemerintahan Transisi, 1988 1999

    Kabinet Persatuan, 1999 2001

    Kabinet Gotong Royong, 2001 2004

    Kabinet Indonesia Bersatu I, 2001 2004

    Kabinet Indonesia Bersatu II, 2009 sekarang

    2.3. Visi dan Misi Kementerian Pertanian RI

    2.3.1. Visi Kementerian Pertanian RI

    Visi Kementerian Pertanian RI adalah:

    Terwujudnya pertanian industrial unggul berkelanjutan yang erbasis

    sumberdaya lokal untuk meningkatkan kemandirian pangan, nilai

    tambah, daya saing, ekspor dan kesejahteraan petani.

    2.3.2. Misi Kementerian Pertanian RI

    Misi Kementerian Pertanian RI adalah:

    Mewujudkan sistem pertanian berkelanjutan yang efisien,

    berbasis iptek dan sumberdaya lokal, serta berwawasan

    lingkungan melalui pendekatan sistem agribisnis.

    Menciptakan keseimbangan ekosistem pertanian yang

    mendukung keberlanjutan peningkatan produksi dan

    produktivitas untuk meningkatkan kemandirian pangan.

  • 22

    Mengamankan plasma-nutfah dan meningkatkan

    pendayagunaannya untuk mendukung diserfikasi dan ketahanan

    pangan.

    Menjadikan petani yang kreatif, inovatif, dan mandiri serta

    mampu memanfaatkan iptek dan sumberdaya lokal untuk

    menghasilkan produk pertanian berdaya saing tinggi.

    Meningkatkan produk pangan segar dan olahan yang aman, sehat,

    utuh dan halal (ASUH) dikonsumsi.

    Meningkatkan produksi dan mutu produk pertanian sebagai

    bahan baku industri.

    Mewujudkan usaha pertanian yang terintegrasi secara vertikal

    dan horisontal guna menumbuhkan usaha ekonomi produktif dan

    menciptakan lapangan kerja di pedesaan.

    Mengembangkan industri hilir pertanian yang terintegrasi dengan

    sumberdaya lokal untuk memnuhi permintaan pasar domestik,

    regional dan internasional.

    Mendorong terwujudnya sistem kemitraan usaha dan

    perdagangan komoditas pertanian yang sehat, jujur dan

    berkeadilan.

    Meningkatkan kualitas kinerja dan pelayanan aparatur

    pemerintah bidang pertanian yang amanah dan profesional.

  • 23

    2.4. Struktur Organisasi Kementerian Pertanian RI

    Bagan 2.1. Struktur organisasi Kementerian Pertanian RI

    (Sumber: www.pertanian.go.id)

  • 24

    BAB III

    PELAKSANAAN PRAKTIK KERJA LAPANGAN

    3.1. Metodologi Penelitian

    3.1.1. Metode Pengumpulan Data

    Pembuatan aplikasi Portal Berita Berbasis Android

    menggunakan beberapa metodologi untuk mendapatkan informasi

    yang dibutuhkan sebagai dasar dan acuan dalam identifikasi awal,

    perancangan dan pengujian sistem. Metode yang penulis gunakan

    yaitu:

    Studi Pustaka

    Teknik pengumpulan data dengan melakukan studi

    terhadap literatur dan laporan laporan yang terkait sistem

    aplikasi yang akan dibuat. Selain itu data yang dibutuhkan juga

    didapat dari dokumen dokumen perusahaan atau instansi tempat

    penulis melaksanakan kegiatan PKL.

    Wawancara

    Pengambilan data melalui wawancara secara langsung

    dengan Pembimbing Lapangan selaku salah satu karyawan di

    bidang Pengembangan Sistem Informasi sub bidang Aplikasi

    Multimedia. Pertanyaan yang diajukan mengenai sistem aplikasi

    yang akan dibuat.

    3.1.2. Metode Pengembangan Sistem

  • 25

    Penulis menggunakan metode pengembangan sistem dengan

    pendekatan prototyping. Metode ini sesuai dengan cakupan proyek

    kecil dimana tidak terdapat banyak fitur dalam sistem aplikasi yang

    akan dibuat.

    Often, a customer defines a set of general objectives for

    software but does not identify detailed requirements for functions and

    features. In other cases, the developer may be unsure of the efficiency

    of an algorithm, the adaptability of an operating system, or the form

    that human-machine interaction should take. In these, and many other

    situations, a prototyping paradigm may offer the best approach.

    Seringkali, kustomer mendefinisikan tujuan perangkat lunak

    secara umum tetapi tidak menjelaskan secara rinci fungsi dan fitur

    yang dibutuhkan. Dalam kasus lain, pengembang merasa tidak yakin

    dengan keefisienan algoritma, kesesuaian dengan sistem operasi, atau

    bentuk interaksi manusia dan mesin yang harus diambil. Dalam hal

    ini, dan banyak situasi lain, model prototyping mungkin menawarkan

    pendekatan yang terbaik (Pressman, 2010).

    3.1.3. Alasan Penggunaan Model Prototyping

    Model pengembangan sistem memiliki banyak pendekatan

    yang dapat digunakan sesuai dengan kebutuhan pengembang dalam

    membuat sistem. Penulis menggunakan model prototyping dengan

    pertimbangan sebagai berikut:

  • 26

    Berdasarkan dokumen yang diberikan oleh instansi terkait,

    interaksi yang diperkirakan dapat terjadi sebatas interaksi antara

    pengguna aplikasi (pencari informasi mengenai pertanian) dan

    sistem aplikasi.

    Berdasarkan hasil wawancara yang telah dilakukan, instansi

    membutuhkan aplikasi portal berita berbasis android yang dapat

    mempermudah pengguna dalam mendapatkan informasi.

    Sehingga informasi mengenai pertanian tidak hanya dapat diakses

    melalui website. Selain itu, aplikasi ini diharapkan dapat selesai

    dalam jangka waktu yang pendek.

    Berdasarkan alasan di atas, maka penulis menyimpulkan

    bahwa proyek aplikasi yang akan dibuat termasuk dalam proyek kecil

    dan dibutuhkan waktu penyelesaian yang cukup singkat. Hal ini

    didukung oleh Aunur R. Mulyanto (2008: 21) yang menyatakan tahap

    tahap dalam prototyping boleh dikata merupakan tahap tahap yang

    dipercepat. Strategi utama dalam prototyping adalah kerjakan yang

    mudah terlebih dahulu dan sampaikan hasil kepada pengguna sesegera

    mungkin.

  • 27

    Pengumpulan Data

    Pengembangan

    Sistem

    3.1.4. Alur Pengembangan Sistem

    Bagan 3.1. Alur Pengembangan Sistem

  • 28

    3.2. Identifikasi Prototype

    3.2.1. System Requirement

    Sistem aplikasi yang dibuat untuk instansi Kementerian

    Pertanian Bidang Multimedia berbasis pada android mobile yang

    menampilkan berita berita dari database. Sehingga dibutuhkan

    ketentuan berikut dalam pembuatan aplikasi:

    1. Sisi Server

    Perangkat Keras:

    - Processor Intel(R) Core(TM) i5-3230M CPU @ 2.60GHz

    - RAM 4,00 GB

    - 64-bit Operating System

    Perangkat Lunak

    - Windows All Series

    - Web Server XAMPP

    - Database MySQL

    - Browser Support: Chrome, Mozilla Firefox, Internet

    Explorer

    2. Sisi Client

    Perangkat Keras

    - AndromaxU Limited Edition

    - RAM 1 GB

    - Display 4.5 inch, 540 x 960 pixels

  • 29

    Perangkat Lunak

    - Android versi Jelly Bean

    - Browser Support: Chrome, Mozilla Firefox, Internet

    Explorer

    3.2.2. UML Aplikasi

    Berdasarkan hasil wawancara dan studi pustaka yang telah

    dilakukan oleh penulis, maka didapat hasil analisa Use Case Diagram

    dan Activity Diagram dari aplikasi portal berita yang dapat dilihat

    pada diagram UML berikut:

    Use Case Diagram

    Use case diagram pada pada aplikasi portal berita

    merupakan tahapan proses yang dilakukan pengguna jika ingin

    mendapatkan berita mengenai pertanian dengan melihat berita

    secara lengkap dari salah satu daftar berita yang terdapat pada

    beranda. Aktor yang berinteraksi langsung dengan sistem yaitu

    pengguna aplikasi (user).

  • 30

    Bagan 3.2. Use case diagram sistem aplikasi portal berita

    Activity Diagram

    Bagan activity diagram menggambarkan alur aktifitas

    tahapan prposes pada sistem aplikasi portal berita sesuai dengan

    aktor yang terdapat pada bagan use case diagram. Berikut activity

    diagram dari sistem aplikasi portal berita:

  • 31

    Bagan 3.3. Activity diagram sistem aplikasi portal berita

    3.3. Pembuatan Prototype

    Pembuatan prototype merupakan tahap dimana pengembang mulai

    mengimplementasikan hasil identifikasi prototype ke dalam bahasa

    pemrograman yang digunakan. Seperti yang telah disinggung di sub bab

    sebelumnya, bahwa aplikasi hanya memiliki satu fungsi dan satu fitur, yaitu

    menampilkan berita berita yang diurutkan berdasarkan tanggal terbaru.

    Penggunaan model prototyping merupakan metode pengembangan

    sistem yang tepat untuk membangun sistem aplikasi yang tergolong

    sederhana dengan fungsi dan fitur yang tidak terbilang banyak.

  • 32

    Penulis menggunakan Eclipse dengan bahasa pemrograman Java dan

    bantuan alat grafis CorelDraw X7 untuk membuat tampilan antar muka

    aplikasi. Selain itu XAMPP digunakan sebagai sisi server dan MySQL

    sebagai database.

    3.4. Pengujian dan Evaluasi Prototype

    Penulis melakukan pengujian bersama dengan klien sehingga

    keinginan klien tersampaikan pada pengembang. Pada tahap ini, penulis

    sebagai pengembang aplikasi portal berita menggunanakan metode unit

    testing.

    Metode unit testing adalah metode pengujian perangkat lunak yang

    menguji bagian terkecil dari source code (method). Metode pengujian ini

    bertujuan untuk membuktikan apakah program aplikasi dapat berjalan sesuai

    dengan kebutuhan pengguna yang telah dianalisa sebelumnya (Achtar, 2015).

    Berikut merupakan scenario diagram dari pengujian aplikasi portal

    berita:

  • 33

    Tabel 3.1. Unit testing LoadData

    ID Method KP-01

    Nama Method /

    Class

    LoadData

    Source Code public class LoadData extends AsyncTask {

    @Override

    public void onPreExecute() {

    super.onPreExecute();

    arrayList2.clear();

    mProgressDialog = new ProgressDialog(Berita.this);

    mProgressDialog.setIndeterminate(false);

    mProgressDialog.show(); }

    protected String doInBackground(String... params) {

    try {

    result = JSONParser

    .getPage("http://10.0.2.2/berita/koneksi.php");

    } catch (ClientProtocolException e) {

    e.printStackTrace();

    } catch (IOException e) {

    e.printStackTrace(); }

    return result;

    }

    protected void onPostExecute(String result) {

    try {

    JSONArray arr = new JSONArray(result);

    for (int i = 0; i < 1; i++) {

  • 34

    JSONObject obj = arr.getJSONObject(0);

    judul = obj.getString("title");

    System.out.println("LOAD 1 "+judul);

    isi = obj.getString("content");

    tanggal = obj.getString("date");

    gambar = obj.getString("img");

    HashMap headline = new HashMap();

    headline.put(JUDUL, judul);

    headline.put(ISI, isi);

    headline.put(TANGGAL, tanggal);

    headline.put(GAMBAR, gambar);

    arrayList2.add(headline);}

    } catch (JSONException e) {

    e.printStackTrace(); }

    listView = (ListView) findViewById(R.id.listview1);

    adapter = new Headline(Berita.this, arrayList2) {

    };

    listView.setAdapter(adapter);

    listView.setOnItemClickListener(new OnItemClickListener() {

    @Override

    public void onItemClick(AdapterView arg0, View arg1,int arg2,

    long arg3) {

    // TODO Auto-generated method stub

    HashMap abc = new HashMap();

    abc = arrayList2.get(arg2);

    String gmbr = abc.get(Berita.GAMBAR);

  • 35

    System.out.println("GAMBAR;" + gmbr);

    Intent intent = new Intent(Berita.this,

    SingleItemBerita.class);

    intent.putExtra("judul", abc.get(Berita.JUDUL));

    intent.putExtra("isi", abc.get(Berita.ISI));

    intent.putExtra("tanggal", abc.get(Berita.TANGGAL));

    intent.putExtra("gambar", abc.get(Berita.GAMBAR));

    startActivity(intent); }

    });

    new LoadData2().execute();

    }

    }

    public class LoadData2 extends AsyncTask {

    @Override

    public void onPreExecute() {

    super.onPreExecute();

    arrayList.clear();}

    protected String doInBackground(String... params) {

    try {

    result2 = JSONParser

    .getPage("http://10.0.2.2/berita/koneksi.php");

    } catch (ClientProtocolException e) {

    e.printStackTrace();

    } catch (IOException e) {

    e.printStackTrace();

    }

  • 36

    System.out.println();

    return result2; }

    protected void onPostExecute(String result2) {

    try {

    JSONArray arr = new JSONArray(result2);

    for (int i = 1; i < arr.length(); i++) {

    JSONObject obj = arr.getJSONObject(i);

    String judul = obj.getString("title");

    System.out.println("LOAD 2"+judul);

    String isi = obj.getString("content");

    String tanggal = obj.getString("date");

    String gambar = obj.getString("img");

    HashMap map = new HashMap();

    map.put(JUDUL2, judul);

    map.put(ISI2, isi);

    map.put(TANGGAL2, tanggal);

    map.put(GAMBAR2, gambar);

    arrayList.add(map); }

    } catch (JSONException e) {

    e.printStackTrace(); }

    listView2 = (ListView) findViewById(R.id.listview);

    adapter2 = new ListViewAdapter(Berita.this, arrayList) {};

    listView2.setAdapter(adapter2);

    mProgressDialog.dismiss();

    listView2.setOnItemClickListener(new OnItemClickListener() {

    @Override

  • 37

    public void onItemClick(AdapterView arg0, View arg1,int arg2,

    long arg3) {

    // TODO Auto-generated method stub

    HashMap abc = new HashMap();

    abc = arrayList.get(arg2);

    String gmbr = abc.get(Berita.GAMBAR2);

    System.out.println("GAMBAR2;" + gmbr);

    Intent intent = new Intent(Berita.this, SingleItemBerita.class);

    intent.putExtra("judul", abc.get(Berita.JUDUL2));

    intent.putExtra("isi", abc.get(Berita.ISI2));

    intent.putExtra("tanggal", abc.get(Berita.TANGGAL2));

    intent.putExtra("gambar", abc.get(Berita.GAMBAR2));

    startActivity(intent);

    }

    });

    }

    }

    Deskripsi Pada tahapan ini, sistem aplikasi akan menampilkan daftar

    berita yang terdapat dalam database.

    Tahapan 1. Sebelum sistem menampilkan daftar berita, sistem akan

    memeriksa detail berita berupa tanggal, gambar dan judul

    berita pada database.

    2. Pengguna akan diberikan antarmuka daftar berita yang

    ditampilkan menggunakan listview.

  • 38

    Hasil yang

    diharapkan

    Pengguna dapat memilih berita sesuai dengan urutan tanggal

    diterbitkannya berita maupun judul dari berita itu sendiri.

    Hasil

    pengujian

    Pada tahap ini, hasil sesuai dengan harapan klien. Yaitu

    sistem menampilkan daftar berita yang dapat dipilih

    pengguna sesuai urutan tanggal terbitnya berita.

    Tabel 3.2. Unit testing onCreate

    ID Method KP-02

    Nama

    Method /

    Class

    onCreate

    Source

    Code

    public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.menu_berita_singleitem_view);

  • 39

    imageLoader = new ImageLoader(this);

    Intent i = getIntent();

    judul = i.getStringExtra("judul");

    tanggal = i.getStringExtra("tanggal");

    isi = i.getStringExtra("isi");

    gambar = i.getStringExtra("gambar");

    TextView txtjudul = (TextView) findViewById(R.id.judul);

    TextView txttanggal = (TextView) findViewById(R.id.tanggal);

    TextView txtisi = (TextView) findViewById(R.id.isi);

    ImageView imgberita = (ImageView) findViewById(R.id.gambar);

    txtjudul.setText(judul);

    txttanggal.setText(tanggal);

    txtisi.setText(isi);

    imageLoader.DisplayImage(gambar, imgberita);

    Toast.makeText(SingleItemBerita.this, "berhasil",

    Toast.LENGTH_LONG).show();

    }

    Deskripsi Pada tahapan ini, sistem aplikasi akan menampilkan detail berita.

    Tahapan 1. Sebelum sistem menampilkan detail berita, sistem akan

    memeriksa berita pada database.

    2. Sistem akan mengambil data berupa gambar, tanggal/waktu

    berita dan detail berita yang telah dipilih pengguna.

    3. Pengguna akan diberikan antarmuka berita.

  • 40

    Hasil yang

    diharapkan

    Pengguna dapat melihat atau membaca detail berita yang telah

    dipilih pada tampilan antarmuka listview berita.

    Hasil

    pengujian

    Pada tahap ini, hasil sesuai dengan harapan klien. Yaitu sistem

    menampilkan berita yang telah dipilih pengguna sesuai urutan

    tanggal terbitnya berita maupun judul berita.

    3.5. Perubahan Prototype

    Perubahan prototype merupakan langkah yang harus diambil jika pada

    tahap pengujian dan evaluasi prototype masih terdapat bugs atau tidak sesuai

    dengan keinginan klien.

    Dalam proses pembuatan aplikasi ini, penulis melakukan perubahan

    prototype sebanyak dua kali hingga sistem aplikasi sesuai dengan keinginan

    klien.

  • 41

    3.6. Transformasi Prototype Skala Besar

    Tahap terakhir ini dapat dilakukan oleh penulis jika prototype telah

    sesuai dengan keinginan klien. Sehingga penulis dapat memperbaiki tampilan

    antarmuka yang disesuaikan dengan skala aplikasi yang akan dibuat.

    Pengembang tidak lagi berkutat dengan prototype, tetapi dituntut untuk

    menyelesaikan aplikasi sesuai dengan waktu yang telah disepakati antara

    klien dan pengembang. Sehingga aplikasi dapat digunakan oleh pengguna.

  • 42

    BAB IV

    PENUTUP

    4.1. Kesimpulan

    Hasil akhir rancang bangun prototype aplikasi berita pada

    Kementerian Pertanian Republik Indonesia berbasis android, dapat

    disimpulkan sebagai berikut:

    Perancangan dan pembangunan prototype aplikasi portal berita pada

    instansi pemerintah (Kementerian Pertanian Republik Indonesia)

    menggunakan metode prototyping dengan tahap pembuatan identifikasi

    prototype, pembuatan prototype, pengujian dan evaluasi prototype,

    perubahan prototype, transformasi prototype skala besar.

    Pembuatan prototype aplikasi portal berita Kementerian Pertanian

    Republik Indonesia terintegrasi dengan database yang masih terdapat

    dalam localhost.

    4.2. Saran

    Dalam pembuatan prototype aplikasi berita pada Kementerian

    Pertanian Republik Indonesia berbasis android, penulis menyadari masih

    terdapat beberapa kekurangan yang dapat diperbaiki untuk penelitian dan

    pengembangan selanjutnya. Kekurangan tersebut antara lain:

    Aplikasi berita pada Kementerian Pertanian Republik Indonesia berbasis

    android masih belum dapat terintegrasi secara langsung dengan website

  • 43

    berita Kementerian Pertanian Republik Indonesia, sehingga diharapkan

    untuk pengembangan selanjutnya aplikasi dapat terintegrasi oleh website

    Kementerian Pertanian Republik Indonesia.

    Aplikasi berita pada Kementerian Pertanian Republik Indonesia hanya

    dapat berjalan pada platform android, sehingga diharapkan pada

    pengembangan selanjutnya dapat berjalan pada berbagai platform.

  • 44

    DAFTAR PUSTAKA

    Achtar, S. A. (2015). Rancang Bangun Aplikasi Toko Online Berbasis Platform Android

    Pada Studi Kasus CV.Raka Kencana. Jakarta.

    Aunur R. Mulyanto. (2008). 56 Rekayasa Perangkat Lunak Jilid 1 (1st ed.). Jakarta:

    Direktorat Pembinaan Sekolah Menengah Kejuruan, Departemen Pendidikan

    Nasional.

    Benny Hermawan. (2004). Menguasai Java 2 dan Object Oriented Programming (1st

    ed.). Yogyakarta: Andi Offset.

    Gumilang, L. F. G. (2010). PROSES KERJA REPORTER BERITA DETIKHOT

    SUBKANAL MUSIC DI DETIK.COM JAKARTA.

    IFT Online. (2013). Yahoo! Smartphone Jadi Media Massa Generasi Baru. Retrieved

    April 12, 2015, from http://www.ift.co.id/posts/yahoo-smartphone-jadi-media-

    massa-generasi-baru

    Jamanti, R. (2014). Pengaruh Berita Banjir di Koran Kaltim Terhadap Kesadaran

    Lingkungan Masyarakat Kelurahan Temindung Permai Samarinda. eJournal Ilmu

    Komunikasi, 2.

    Jogiyanto. (2005). Analisis dan Desain. Yogyakarta: Andi.

    Kompasiana Tekno. (2014). Jangan-jangan Smartphone Kita Masih Stupid? Retrieved

    April 12, 2014, from http://teknologi.kompasiana.com/gadget/2014/10/08/jangan-

    jangan-smartphone-kita-masih-stupid-678989.html

    Kusumaningati, I. F. (2012). Ngandroid: Hidup Menjadi Mudah dan Menyenangkan

    dengan Android. Jakarta: Gramedia.

    Pressman, R. S. (2010). Software Engineering: A Practitioners Approach (7th ed.). New York: McGraw-Hill.

    SEJARAH KEMENTERIAN PERTANIAN. (n.d.). Retrieved April 15, 2015, from

    http://www.pertanian.go.id/ap_pages/detil/7/2014/06/10/22/28/56/SEJARAH-

    KEMENTAN

    Sidik, B. (2014). Pemrograman Web Dengan PHP. Bandung: Informatika Bandung.

    Simarmata, J. (2010). Rekayasa Perangkat Lunak. (N. WK, Ed.). Yogyakarta: C.V. Andi.

    Solihin, M. (2014). Rancang Bangun Aplikasi Pengelolaan Informasi Pembinaan Anak

    Jalanan (Studi Kasus: Yayasan KPIM Jakarta).

  • 45

    Supriyanto, A. (2013). Pembuatan Aplikasi Notulen Rapat pada Smartphone Berbasis

    Android.

    Wahana Komputer. (2010). MySQL Database Server. Jakarta: Media Kita.

    Wikipedia. (n.d.). Kementerian Pertanian Republik Indonesia. Retrieved April 15, 2015,

    from http://id.wikipedia.org/wiki/Kementerian_Pertanian_Republik_Indonesia

  • 46

    LAMPIRAN

    Lampiran 1. Daftar Directory Project Eclipse

  • 47

    Lampiran 2. Source Code Json PHP

  • 48

    Lampiran 3. Source Code Berita

    package pkl.deptan.portalberitadeptan01;

    import java.io.IOException;

    import java.text.SimpleDateFormat;

    import java.util.ArrayList;

    import java.util.Calendar;

    import java.util.HashMap;

    import org.apache.http.client.ClientProtocolException;

    import org.json.JSONArray;

    import org.json.JSONException;

    import org.json.JSONObject;

    import android.R.string;

    import android.app.Activity;

    import android.app.ProgressDialog;

    import android.content.Intent;

    import android.os.AsyncTask;

    import android.os.Bundle;

    import android.view.LayoutInflater;

    import android.view.View;

    import android.view.ViewGroup;

    import android.widget.AdapterView;

    import android.widget.AdapterView.OnItemClickListener;

    import android.widget.ListView;

    import android.widget.TextView;

    public class Berita extends Activity {

    JSONObject jsonObject;

    JSONArray jsonArray;

    ListView listView, listView2;

    ListViewAdapter adapter2;

    Headline adapter;

    ProgressDialog mProgressDialog;

    public static String JUDUL = "judul";

    public static String ISI = "isi";

    public static String TANGGAL = "tanggal";

    public static String GAMBAR = "gambar";

    public static String JUDUL2 = "judul";

    public static String ISI2 = "isi";

    public static String TANGGAL2 = "tanggal";

    public static String GAMBAR2 = "gambar";

  • 49

    String result, result2;

    public static ArrayList arrayList =

    new ArrayList();

    public static ArrayList arrayList2

    = new ArrayList();

    String hari;

    String judul;

    String isi;

    String tanggal;

    String gambar;

    @Override

    public void onCreate(Bundle savedInstanceState) {

    // TODO Auto-generated method stub

    super.onCreate(savedInstanceState);

    setContentView(R.layout.menu_berita);

    Calendar cal = Calendar.getInstance();

    SimpleDateFormat sdf = new SimpleDateFormat("dd MMMM

    yyyy");

    String strdate = sdf.format(cal.getTime());

    TextView txtdate = (TextView)

    findViewById(R.id.tanggal);

    txtdate.setText(strdate);

    new LoadData().execute();

    }

  • 50

    public class LoadData extends AsyncTask {

    @Override

    public void onPreExecute() {

    super.onPreExecute();

    arrayList2.clear();

    mProgressDialog = new

    ProgressDialog(Berita.this);

    // mProgressDialog.setMessage("Loading...");

    mProgressDialog.setIndeterminate(false);

    mProgressDialog.show();

    }

    protected String doInBackground(String... params) {

    try {

    result = JSONParser

    .getPage("http://10.0.2.2/berita/koneksi.php");

    } catch (ClientProtocolException e) {

    e.printStackTrace();

    } catch (IOException e) {

    e.printStackTrace();

    }

    return result;

    }

  • 51

    protected void onPostExecute(String result) {

    try {

    JSONArray arr = new JSONArray(result);

    for (int i = 0; i < 1; i++) {

    JSONObject obj =

    arr.getJSONObject(0);

    judul = obj.getString("title");

    System.out.println("LOAD 1 " +

    judul);

    isi = obj.getString("content");

    tanggal = obj.getString("date");

    gambar = obj.getString("img");

    HashMap headline =

    new HashMap();

    headline.put(JUDUL, judul);

    headline.put(ISI, isi);

    headline.put(TANGGAL, tanggal);

    headline.put(GAMBAR, gambar);

    arrayList2.add(headline);

    }

    } catch (JSONException e) {

    e.printStackTrace();

    }

  • 52

    listView = (ListView) findViewById(R.id.listview1);

    adapter = new Headline(Berita.this, arrayList2) {

    };

    listView.setAdapter(adapter);

    listView.setOnItemClickListener(new

    OnItemClickListener() {

    @Override

    public void onItemClick(AdapterView arg0, View arg1,

    int arg2, long arg3) {

    // TODO Auto-generated method stub

    HashMap abc = new HashMap();

    abc = arrayList2.get(arg2);

    String gmbr = abc.get(Berita.GAMBAR);

    System.out.println("GAMBAR;" + gmbr);

    Intent intent = new Intent(Berita.this,

    SingleItemBerita.class);

    intent.putExtra("judul", abc.get(Berita.JUDUL));

    intent.putExtra("isi", abc.get(Berita.ISI));

    intent.putExtra("tanggal", abc.get(Berita.TANGGAL));

    intent.putExtra("gambar", abc.get(Berita.GAMBAR));

    startActivity(intent);

    }

    });

    new LoadData2().execute();

    }

    }

  • 53

    public class LoadData2 extends AsyncTask {

    @Override

    public void onPreExecute() {

    super.onPreExecute();

    arrayList.clear();

    }

    protected String doInBackground(String... params) {

    try {

    result2 = JSONParser

    .getPage("http://10.0.2.2/berita/koneksi.php");

    } catch (ClientProtocolException e) {

    e.printStackTrace();

    } catch (IOException e) {

    e.printStackTrace();

    }

    System.out.println();

    return result2;

    }

    protected void onPostExecute(String result2) {

    try {

    JSONArray arr = new JSONArray(result2);

    for (int i = 1; i < arr.length(); i++) {

    JSONObject obj = arr.getJSONObject(i);

    String judul = obj.getString("title");

    System.out.println("LOAD 2" + judul);

    String isi = obj.getString("content");

    String tanggal = obj.getString("date");

    String gambar = obj.getString("img");

  • 54

    HashMap map = new HashMap();

    map.put(JUDUL2, judul);

    map.put(ISI2, isi);

    map.put(TANGGAL2, tanggal);

    map.put(GAMBAR2, gambar);

    arrayList.add(map); }

    } catch (JSONException e) {

    e.printStackTrace();

    }

    listView2 = (ListView) findViewById(R.id.listview);

    adapter2 = new ListViewAdapter(Berita.this, arrayList) {};

    listView2.setAdapter(adapter2);

    mProgressDialog.dismiss();

    listView2.setOnItemClickListener(new OnItemClickListener() {

    @Override

    public void onItemClick(AdapterView arg0, View arg1,

    int arg2, long arg3) {

    // TODO Auto-generated method stub

    HashMap abc = new HashMap();

    abc = arrayList.get(arg2);

    String gmbr = abc.get(Berita.GAMBAR2);

    System.out.println("GAMBAR2;" + gmbr);

    Intent intent = new Intent(Berita.this,SingleItemBerita.class);

    intent.putExtra("judul", abc.get(Berita.JUDUL2));

    intent.putExtra("isi", abc.get(Berita.ISI2));

    intent.putExtra("tanggal", abc.get(Berita.TANGGAL2));

    intent.putExtra("gambar", abc.get(Berita.GAMBAR2));

    startActivity(intent); } });

    } }}

  • 55

  • 56

  • 57

  • 58

  • 59

  • 60

  • 61

  • 62