library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang...

110
BAB 2 LANDASAN TEORI 2.1 Teori-teori Umum Teori – teori umum adalah teori yang mendasari untuk pengembangan aplikasi sistem pakar untuk mendeteksi penyakit tanaman dengan layanan berbasis lokasi seperti kecerdasan buatan, sistem informasi geografis, teori dasar rekayasa perangkat lunak, software development life cycle, bahasa pemrograman yang akan digunakan dalam pengembangan aplikasi seperti HTML, CSS, PHP, JAVA, teori mengenai database, MySQL, serta istilah framework, API dan SDK. 2.1.1 Kecerdasan Buatan Kecerdasan buatan adalah entitas kecerdasan ilmiah yang umumnya dapat melakukan perhitungan seperti mesin tetapi berpikir dan bertindak seperti layaknya manusia sehingga dapat mengambil keputusan, belajar dan memecahkan masalah yang rumit. (Russell & Norvig, 2010, p2) 9

Transcript of library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang...

Page 1: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

BAB 2

LANDASAN TEORI

2.1 Teori-teori Umum

Teori – teori umum adalah teori yang mendasari untuk pengembangan

aplikasi sistem pakar untuk mendeteksi penyakit tanaman dengan layanan

berbasis lokasi seperti kecerdasan buatan, sistem informasi geografis, teori dasar

rekayasa perangkat lunak, software development life cycle, bahasa pemrograman

yang akan digunakan dalam pengembangan aplikasi seperti HTML, CSS, PHP,

JAVA, teori mengenai database, MySQL, serta istilah framework, API dan

SDK.

2.1.1 Kecerdasan Buatan

Kecerdasan buatan adalah entitas kecerdasan ilmiah yang umumnya

dapat melakukan perhitungan seperti mesin tetapi berpikir dan bertindak seperti

layaknya manusia sehingga dapat mengambil keputusan, belajar dan

memecahkan masalah yang rumit. (Russell & Norvig, 2010, p2)

2.1.1.1 Sejarah

Menurut Jones (2008, p3), pada tahun 1950 adalah ide awal untuk

kecerdasan buatan (Artificial Intelligence) mulai terbentuk, salah satunya adalah

dengan membangun mesin cerdas. Pada saat itu, seorang ilmuwan Alan Turing

bertanya apakah mesin bisa berpikir. Alan Turing kemudian memperkenalkan

konsep mesin universal abstrak yang sederhana dan bisa memecahkan masalah

9

Page 2: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

10

matematika (albiet dengan beberapa kompleksitas). Hasil penelitian ini disebut

Tes Turing (Turing Test). Dalam tes Turing, jika mesin bisa mengelampaui

manusia dalam berpikir, maka tes kecerdasan dapat dinyatakan lulus.

Tes Turing diawali dengan berkomunikasi dengan agen lain melalui

keyboard. Pertanyaan diminta dari pengguna lain (pakar ahli) melalui teks

tertulis, dan tanggapan yang diberikan melalui terminal. Pengguna lain (pakar

ahli) yang cerdas dan berpengetahuan diperlukan untuk memiliki percakapan

cerdas, pengguna juga harus mampu mengurai dan memahami bahasa alami

sehingga menghasilkan respon berupa bahasa alami pula. Pertanyaan tersebut

melibatkan keterampilan penalaran (seperti pemecahan masalah).

Program kecerdasan buatan pertama kali ditulis untuk komputer disebut

"The Theorist Logic” pada tahun 1956 oleh Allen Newell, Herbert Simon, dan

JC Shaw untuk menemukan bukti sebuah persamaan. Hal yang paling unik

tentang program ini adalah bahwa ditemukan bukti yang lebih baik daripada

yang ada sebelumnya untuk persamaan yang diberikan. Kemudian pada tahun

1957, Herbert Simon dan Allen Newell mengembangkan General Problem

Solver (GPS) sebagai lanjutan pengembangan dari penelitian sebelumnya.

General Problem Solver (GPS) digunakan sebagai alat analisis untuk

memecahkan masalah, tetapi secara umum dibatasi untuk masalah permainan

berbentuk matematika kompleks.

Pada tahun 1970-an, kecerdasan buatan telah menghasilkan ketertarikan

yang cukup luas dan besar kepada komunitas riset. Salah satu sistem pakar

pertama yang menunjukkan aturan berbasis arsitektur disebut MYCIN, dan

dikembangkan oleh Ted Shortliffe mengikuti disertasinya pada temporary

Page 3: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

11

subject di Stanford University pada tahun 1974. MYCIN dioperasikan di bidang

diagnosa medis dan menunjukkan representasi pengetahuan dan inferensi.

Kemudian dalam dekade ini, disertasi lain yang dibuat oleh Bill

VanMelles di Stanford University dibangun pada arsitektur MYCIN dan

berfungsi sebagai model untuk kerangka sistem pakar yang masih digunakan

sampai sekarang. Tujuan dari sistem di era zaman ini adalah pengembangan

sistem pakar untuk menjawab pertanyaan cerdas. Untuk memahami pertanyaan

dinyatakan dalam bahasa alami, pertanyaan pertama harus dipecah menjadi

bagian fundamentalnya atau yang paling mendasar.

2.1.2 Sistem Informasi Geografis

Sistem informasi geografis adalah alat dengan basis komputerisasi yang

memungkinkan untuk mengolah data spasial dan non spasial untuk menjadi

sebuah informasi yang berkaitan dengan permukaan bumi serta digunakan untuk

analisis, manipulasi, pengumpulan, penyimpanan dan menampilkan data yang

digunakan untuk referensi pengambilan keputusan. (Heywood, Cornelius, &

Carver, 2006, p18)

2.1.2.1 Komponen

Menurut Heywood, Cornelius, dan Carver (2006, p19), sistem informasi

geografis memiliki beberapa komponen pembangun utama yaitu :

Page 4: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

12

1. Sistem Komputer dan Software

Sistem informasi geografis dapat berjalan di sistem komputer

personal hingga komputer dengan banyak pengguna dan dapat berjalan

pada program dengan bahasa pemrograman yang berbeda. Adapun

elemen yang dibutuhkan sebuah sistem komputer agar dapat

menjalankan sebuah sistem informasi geografis yaitu input atau output

devices, layar dengan resolusi tinggi, memori untuk menyimpan data dan

processor untuk menjalankan software.

2. Data Spasial

Sistem komputer dan software pada sistem informasi geografis

pada dasarnya digunakan untuk mengolah data spasial atau data

berkenaan dengan informasi geografis. Data spasial meliputi longitude

dan latitude, yaitu referensi geografis untuk tata letak sebuah lokasi pada

permukaan bumi, informasi detail tentang koneksi permukaan bumi

seperti jalan, menara cuaca penghubung data meteorologis dan yang

terakhir data non spasial seperti suhu, kecepatan angin dan arah.

3. Manajemen Data dan Prosedur Analisis

Manajemen data dibutuhkan untuk proses input data, konversi

data lama dengan yang baru, proses pengambilan dan menampilkan data

untuk kebutuhan analisis dalam referensi pengambilan keputusan.

Semuanya diatur dengan Database Management System (DBMS).

Page 5: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

13

2.1.3 Rekayasa Perangkat Lunak

2.1.3.1 Definisi

Pendekatan secara sistematis dan penggunaan prinsip rekayasa untuk

pengembangan, pengoperasian dan pemeliharaan sebuah perangkat lunak atau

software yang efisien dan ekonomis. (Pressman, 2010, p1)

2.1.3.2 Definisi Perangkat Lunak

Sebuah instruksi (program komputer) yang ketika dijalankan

menyediakan fitur, fungsi, dan kinerja yang diinginkan. Adapun beberapa jenis

perangkat lunak atau software menurut Pressman (2010, p7-p9) yaitu:

1. System Software

Program yang terdiri dari beberapa subprogram yang dikembangkan

untuk melayani program lainnya. System software terdiri dari compiler,

editor, dan utilitas manajemen file serta proses yang kompleks tetapi

memiliki informasi yang terstruktur dengan baik.

2. Application Software

Program untuk memecahkan kebutuhan bisnis yang spesifik seperti

memfasilitasi operasi bisnis atau manajemen serta membantu dalam

keputusan teknis.

Page 6: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

14

3. Engineering / Scientific Software

Program yang disusun dari beberapa jumlah algoritma untuk membantu

operasi di bidang sains atau teknik seperti computer aided design dan

interactive system simulator.

4. Embedded Software

Program atau sistem yang digunakan untuk mengontrol fitur dan fungsi

sebuah produk atau alat bagi pengguna akhir dan untuk sistem itu sendiri.

Program yang tertanam dapat melakukan fungsi terbatas misalnya

tombol cancel pada Anjungan Tunai Mandiri (ATM) untuk membatalkan

transaksi.

5. Product-line Software

Program yang dirancang untuk memberikan kemampuan khusus atau

spesifik kepada tiap-tiap penggunanya seperti word processor,

spreadsheet, grafik komputer, multimedia, hiburan, manajemen database,

dan aplikasi keuangan pribadi dan bisnis.

6. Web Application

Program yang terdiri dari satu file hypertext terkait yang menyajikan

informasi menggunakan teks dan grafis yang terbatas yang dijalankan

dalam jaringan komputer. Pada masa sekarang web application memiliki

banyak fungsi seperti keperluan komputasi, menyajikan konten kepada

pengguna bahkan terintegrasi dengan database berskala enterprise untuk

keperluan bisnis.

Page 7: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

15

7. Artificial Intelligence Software

Program yang memanfaatkan algoritma untuk memecahkan masalah

kompleks. Artificial intelligence software meliputi robotika, sistem

pakar, pengenalan pola (gambar dan suara), jaringan saraf tiruan,

membuktikan teorema dan games.

2.1.3.3 Proses Rekayasa Perangkat Lunak

Menurut Pressman (2010, p14-p15), rekayasa perangkat lunak memiliki

beberapa aktifitas utama dalam satu kali proses terjadinya yaitu :

1. Komunikasi

Sebelum melakukan semua pekerjaan teknis sangat penting untuk

berkomunikasi dan berkolaborasi dengan pelanggan atau pengguna

perangkat lunak. Tujuannya adalah untuk memahami tujuan proyek

perangkat lunak nantinya dan untuk mengumpulkan persyaratan yang

membantu menentukan fitur dan fungsi perangkat lunak.

2. Perencanaan

Sebuah perangkat lunak dalam pengembangannya pasti akan

melalui proses yang panjang dan rumit. Oleh sebab itu dibutuhkan

sebuah perencanaan yang baik seperti pembagian tugas, sumber daya,

biaya produksi dan jadwal kerja untuk membantu mengarahkan dalam

proses pengerjaan dan pengembangan perangkat lunak.

Page 8: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

16

3. Model

Pembuatan model perangkat lunak sangat dibutuhkan untuk

membuat detail yang lebih jelas dalam upaya untuk lebih memahami

masalah dan bagaimana cara mengatasinya.

4. Konstruksi

Kegiatan menggabungkan code yang telah dibuat sebelumnya

(baik secara manual atau otomatis) dan pengujian yang diperlukan untuk

mengungkap kesalahan dalam code.

5. Deployment

Kegiatan dimana perangkat lunak yang telah selesai dibangun,

dikirimkan dan diimplementasikan kepada pelanggan yang nantinya

mengevaluasi produk yang disampaikan oleh pengembang dan

memberikan umpan balik berdasarkan hasil evaluasi.

2.1.4 Unified Modeling Language

Unified Modeling Language adalah sebuah gambaran berdasarkan objek

yang berorientasi pada analisis dan desain menggunakan model untuk membantu

dalam pengembangan perangkat lunak, pemahaman yang berkelanjutan, dan

memberikan cara komunikasi yang lebih baik dalam merepresentasikan alur

maksud dan tujuan. (Whitten & Bentley, 2008, p293)

Page 9: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

17

2.1.4.1 Diagram Unified Modeling Language

Adapun diagram-diagram yang menggunakan notasi Unified Modelling

Language (UML) dalam pengembangan perangkat lunak menurut Whitten dan

Bentley (2008, p185-p561) adalah sebagai berikut:

1. Use-Case Diagram

Diagram yang mendefinisikan urutan interaksi antara pelaku

(objek yang terlibat dalam sebuah sistem) dan sistem itu sendiri.

Pelaku/actor digambarkan sebagai objek berupa stick figure pada use-

case diagram, sedangkan batasan sistem digambarkan sebagai sebuah

kotak. Untuk pelaku yang bertindak sebagai sistem ditambah label

<<system>> (Whitten & Bentley, 2008, p185).

Gambar 2. 1 Contoh Use-Case Diagram (Whitten & Bentley, 2008)

Page 10: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

18

Selain itu terdapat pula pelaku yang bukan merupakan bagian dari

sistem utama tetapi bertindak sebagai pengatur waktu. Biasanya pelaku

tersebut diberi label “Time”. Tindakan atau kegiatan yang dilakukan atau

dikenakan kepada pelaku digambarkan dengan bentuk sebuah ellips.

Tindakan atau kegiatan yang dilakukan oleh pelaku tersebut merupakan

salah satu bagian rangkaian komponen dalam sistem sehingga dibutuhkan

batasan-batasan sistem.

Tabel 2. 1 Tabel Simbol pada Use-Case Diagram

Indikator Keterangan

Actor / Pelaku dalam Sebuah Sistem

System Boundaries / batasan-batasan sistem

Use Case / Tindakan atau kegiatan yang dilakukan

atau dikenakan kepada pelaku

Relationship / Hubungan antara objek atau pelaku

dalam sistem dengan use case

Time / Pengatur Waktu

Page 11: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

19

Bentuk yang menghubungkan para pelaku dengan tindakan atau

kegiatannya sangat berperan serta dalam mendefinisikan tujuan dari

sistem tersebut.

2. Class Diagram

Page 12: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

20

Diagram yang mengklasifikasikan objek dalam bentuk sebuah

class, kemudian digambarkan dalam objek yang berbentuk kotak, dan

dihubungkan dengan sebuah garis yang merepresentasikan sebuah bentuk

hubungan yang memiliki tujuan (relationship). Untuk pengembang

perangkat lunak, dibutuhkan simbol visibility, untuk membantu proses

pemindahan dari diagram ke kode program. (Whitten & Bentley, 2008,

p324)

Tabel 2.2 Tabel Simbol Visibility pada Class Diagram

Simbol Keterangan Kegunaan

# Protected Dapat mengakses class dan turunan

class dari class tertentu

+ Public Dapat diakses seluruh sistem

- Private Hanya dapat mengakses class itu sendiri

~ Package Dapat mengakses class yang hanya

terdapat pada package yang sama

Page 13: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

21

Gambar 2. 2 Contoh Class Diagram (Whitten & Bentley, 2008)

Page 14: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

22

Adapun 3 bentuk hubungan (relationship) dalam class diagram adalah

sebagai berikut :

Association yaitu bentuk hubungan statis antara dua atau lebih

class. Association memiliki bentuk berupa garis dengan

panah hitam kecil untuk menunjukan arah class yang dituju.

Pada setiap akhir garis biasanya terdapat label yang

menjelaskan banyaknya jumlah association di class yang

dituju. Banyaknya jumlah association menentukan berapa

banyak instansi dari satu class yang dapat berhubungan

dengan instansi dari class lain.

Tabel 2. 3 Tabel Indikator Relationship pada Class Diagram

Indikator Keterangan

0..1 Zero to One

1 One only

0..* Zero to Many/More

1..* One to Many/More

N Only n (Where n < 1)

* Many/More

0..n Zero to n (Where n < 1)

1..n One to n (Where n < 1)

n..m n to m ((Where both n and m < 1)

n..* N to ManyMore (Where n < 1)

Page 15: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

23

Composition adalah bentuk hierarki hubungan yang

bersifat keseluruhan. Composition diwakili dengan objek

berbentuk segi empat dengan warna hitam yang

merepresentasikan penuh atau keseluruhan. Aggregation

adalah bentuk hierarki hubungan yang bersifat sebagian.

Aggregation diwakili dengan objek berbentuk segi empat

berongga yang merepresentasikan sebagian.

Generalization / Specialization adalah hubungan yang

bersifat warisan (inheritance). Sebuah Generalization /

Specialization digambarkan sebagai panah yang

bergabung antara subclass (anak) dengan superclass

Gambar 2. 3 Contoh penerapan Association pada Aggregation dan Composition (Whitten & Bentley, 2008)

Page 16: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

24

(induk), dengan panah menyentuh kotak superclass dari

subclass.

Gambar 2. 4 Contoh Generalization dan Specialization (Whitten & Bentley, 2008)

Tiap relationship pada class diagram menghubungkan antar class

dengan class lainnya. Dalam pengembangannya, class diagram dapat

menghubungkan antara pengembang perangkat lunak dengan pengguna.

3. Sequence Diagram

Diagram untuk menggambarkan interaksi antara objek-objek

dalam urutan waktu. Sequence diagram adalah diagram dua dimensi di

mana objek-objek yang berpartisipasi dalam interaksi tersebut

digambarkan secara horizontal dan garis putus-putus pada dimensi

vertikal adalah gambaran untuk waktu. (Whitten & Bentley, 2008, p554)

Page 17: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

25

Tabel 2. 4 Tabel Simbol pada Sequence Diagram

Indikator Keterangan

Object Lifeline / garis waktu hidup

sebuah objek atau pelaku yang

berperan dalam sebuah sistem

Activation / Masa aktif sebuah pelaku

dalam sistem

Message(call) / Pesan yang dikirim ke

aktor atau objek lain

Message / Pesan yang dikirim ke aktor

atau objek lain secara sinkron

Message / Pesan yang dikirim ke aktor

atau objek lain secara asinkron

Message / Pesan yang dikirim ke aktor

yang bersifat respon dari sistem

Self Call / Pesan yang dikirim ke aktor

atau objek lain tersebut sendiri

Page 18: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

26

4. Activity Diagram

Diagram yang menggambarkan aliran kontrol dan urutan antar

kegiatan. Sebuah activity diagram menunjukkan urutan kegiatan,

keputusan, perulangan, dan kegiatan yang dilakukan bersamaan. Activity

diagram yang banyak digunakan dalam pemodelan alur kerja , misalnya

untuk aplikasi berorientasi layanan. (Whitten & Bentley, 2008, p309)

Gambar 2. 5 Contoh Sequence Diagram (Whitten & Bentley, 2008)

Page 19: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

27

Tabel 2. 5 Tabel Simbol pada Activity Diagram

Indikator Keterangan

Initial State / Kondisi Awal

Final State / Kondisi Akhir

Control Flow / Aliran Kegiatan

Transition

- Join (Menggabungkan 2 control

flow menjadi 1 arah)

- Fork (Membuat cabang dari 1

control flow menjadi beberapa

bagian)

State / Kondisi kegiatan

Decision / Pilihan Keputusan

Partition (Swimlane)/Pengklasifikasian

pelaku yang terlibat dalam sebuah

aktifitas atau kegiatan

Page 20: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

28

Page 21: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

29

2.1.5 Software Life Cycle

2.1.5.1 Definisi

Gambar 2. 6 Contoh Activity Diagram dengan Partition (Whitten & Bentley, 2008)

Page 22: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

30

Pendekatan bertahap untuk mengembangkan perangkat lunak dengan

kiriman spesifik dan tonggak dalam setiap fase. (Gomaa, 2011, p29)

2.1.5.2 Definisi Software Life Cycle Model

Abstraksi dari proses pengembangan perangkat lunak yang digunakan

dengan baik untuk tujuan perencanaan. (Gomaa, 2011, p29)

Menurut Ragunath et.al (2010), fungsi dari software life cycle model

adalah meningkatkan kontrol manajemen atas proyek yang dikerjakan dengan

membagi tugas yang kompleks menjadi beberapa bagian untuk dikelola dan

menentukan secara deskriptif atau preskriptif bagaimana sebuah perangkat lunak

itu harus dikembangkan.

2.1.5.3 Spiral Model

Spiral model adalah pendekatan yang dikembangkan oleh Boehm tahun

1988 untuk mengatasi masalah pada waterfall model. Spiral Model ini

dimaksudkan untuk mencakup model siklus hidup lainnya, seperti waterfall

model, incremental development model, dan throwaway prototyping. (Gomaa,

2011, p34)

Model spiral terdiri dari empat kuadran berikut yaitu :

Page 23: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

31

a. Tentukan tujuan, alternatif, dan kendala. Perencanaan rinci untuk siklus

mengidentifikasi tujuan dan pendekatan alternatif untuk mencapai tujuan

pengembangan perangkat lunak.

b. Menganalisis risiko. Rinci penilaian risiko proyek saat ini, rencana kegiatan

yang akan dilakukan untuk mengurangi risiko tersebut.

c. Mengembangkan produk. Bekerja pada pengembangan produk, seperti

persyaratan analisis, desain, atau coding.

d. Rencanakan siklus berikutnya. Menilai kemajuan yang dibuat pada siklus ini

dan mulai merencanakan untuk siklus berikutnya.

Setiap siklus model spiral beriterasi pada empat kuadran. Tujuan dari

spiral model adalah dihasilkan sebuah analisa risiko untuk menindaklanjuti

kemungkinan terjadi kesalahan pada pengembangan software. (Gomaa, 2011)

Menurut analisis Ragunath et.al (2010), keuntungan penggunaan spiral

model adalah tingginya jumlah analisis risiko sehingga membuat jumlah

kesalahan yang akan terjadi dalam pengembangan perangkat lunak dapat

Gambar 2. 7 Spiral Model (Gomaa, 2011)

Page 24: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

32

diperkecil, sangat baik untuk proyek perangkat lunak berskala besar yang

fokus dan kritis pada tujuan pengembangannya, serta perangkat lunak dapat

diproduksi pada awal siklus hidup.

Adapun kekurangan dari spiral model adalah mahal, membutuhkan

keahlian yang sangat spesifik, tingkat keberhasilan proyek sangat tergantung

pada tahap analisis resiko dan tidak dapat bekerja dengan baik untuk proyek

berskala kecil.

2.1.6 Database

Menurut Connolly dan Begg (2010, p65), database adalah sekumpulan

dari data bersama yang terkait secara logis dan deskripsinya, yang didesain

untuk memenuhi kebutuhan organisasi. Database biasanya memiliki ukuran,

baik kecil dengan struktur sederhana hingga besar dengan struktur yang

kompleks. Umumnya, database juga berbentuk sebuah file maupun kumpulan

dari beberapa file yang berisi sebuah data tentang informasi yang aktual.

Dalam database dikenal pula istilah relational database, yaitu

sekumpulan dari relasi yang telah dinormalisasi dengan nama relasi yang

berbeda. Basis data ini menghubungkan antara satu tabel dengan tabel lain

dalam satu basis data. Relational database selalu menggunakan field kunci untuk

mendefinisikan relasi antar tabel. Semakin banyak tabel yang ada, semakin

banyak relasi yang diperlukan untuk menghubungkan semua tabel. Sebuah tabel

tidak harus langsung berhubungan dengan setiap tabel lain, tetapi setiap tabel

dalam basis data terhubung satu sama lain (tidak ada tabel yang berdiri sendiri).

Page 25: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

33

Jadi tabel dapat berhubungan dengan setiap tabel lain dengan hubungan

langsung atau tidak langsung.

Berikut adalah objek-objek yang terdapat pada database:

1. Tabel, yaitu objek yang berisi tipe-tipe data.

2. Kolom, yaitu sebuah tabel berisi kolom untuk menampung data. Kolom

mempunyai tipe dan nama yang unik.

3. Tipe data, yaitu sebuah kolom mempunyai sebuah tipe data. Tipe data yang

dapat dipilih misalnya character, numeric, dan sebagainya.

4. Primary key, yaitu kata kunci utama yang menjamin data agar unik, hingga

dapat dibedakan dari data yang lain.

5. Foreign key, merupakan kolom-kolom yang mengacu pada primary key dari

tabel yang lain. Dengan kata lain, primary key dan foreign key digunakan

untuk menghubungkan sebuah tabel dengan tabel lain .

2.1.6.2 Database Management System (DBMS)

Menurut Connolly dan Begg (2010, p66), DBMS adalah suatu sistem

perangkat lunak yang memungkinkan pengguna untuk mendefinisikan,

menciptakan, memelihara dan mengontrol akses ke database.

Secara khusus, DBMS menyediakan fasilitas berikut :

a. Memungkinkan pengguna untuk menentukan database, biasanya melalui

Data Definition Language (DDL). DDL memungkinkan user untuk

menentukan tipe user dan struktur data mendorong data untuk disimpan

ke database.

Page 26: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

34

b. Memungkinkan pengguna untuk melakukan insert, update, delete dan

retrieve dari database, biasanya melalui Data Manipulation Language

(DM L) serta menyediakan akses terkontrol pada database.

. 2.1.6.3 Peran dan Ruang Lingkup Database

Adapun peran dan ruang lingkup database menurut Connolly dan Begg (2010,

p71-p73) yaitu:

1. Data dan Database Administrator

Orang yang bertanggung jawab atas pengelolaan sumber data

termasuk perencanaan, pengembangan dan pemeliharaan dengan standar,

kebijakan dan prosedur, serta desain konseptual/logis basis data.

Administrator data berkonsultasi dan memberikan saran kepada manajer,

untuk memastikan bahwa arah pengembangan database mendukung

tujuan perusahaan sepenuhnya.

2. Perancang Database

Ada dua macam perancang yaitu perancang basis data logis dan

perancangan basis data fisik. Perancangan basis data logik berhubungan

dengan identifikasi data, hubungan antara data satu dengan yang lain,

serta kendala-kendala di dalam data yang harus disimpan di dalam basis

data. Perancang basis data fisik menentukan bagaimana desain basis data

logis direalisasikan secara fisik. Perancang basis data fisik harus mampu

memilih strategi-strategi penyimpanan yang sesuai dan

memperhitungkan penggunaannya. Berbeda dengan perancang

konseptual/logis yang berkaitan tentang data apa saja yang diperlukan

(what), perancang basis data fisik berkaitan bagaimana metodenya (how).

Page 27: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

35

3. Pengembangan Aplikasi

Setelah database diimplementasikan, program aplikasi yang

menyediakan fungsi yang diperlukan untuk pengguna harus

diimplementasikan. Ini adalah tanggung jawab para pengembang

aplikasi. Biasanya, para pengembang aplikasi bekerja dari spesifikasi

yang dihasilkan oleh sistem analis.

4. Pengguna Akhir (End User)

End-user adalah ‘klien’ untuk basis data, yang telah dirancang

dan dilaksanakan, dan sedang dipertahankan untuk melayani kebutuhan

informasi mereka. End-user dapat diklasifikasikan menurut cara

pengguna menggunakan sistem :

a. Naive users: Pengguna mengakses melalui program khusus

yang ditulis untuk membuat operasi sesederhana mungkin.

b. Sophisticated users: Pengguna yang dapat menggunakan

bahasa tingkat tinggi seperti SQL untuk melakukan operasi

yang dibutuhkan.

2.1.6.4 Structured Query Language (SQL)

Menurut Connolly dan Begg (2010, p184), Structured Query Language

(SQL) merupakan bahasa yang dirancang untuk menggunakan relasi untuk

mengubah masukan menjadi keluaran yang diharapkan.

SQL dimaksudkan untuk memenuhi keputusan berikut:

1. Membuat database dan struktur relasi dengan melakukan tugas dasar

manajemen data, seperti pemasukan, modifikasi dan penghapusan

data dari relasi.

Page 28: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

36

2. Melakukan query sederhana dan kompleks.

Standar SQL memiliki dua komponen:

1. Data Definition Language (DDL) untuk menetapkan struktur

database dan mengontrol akses ke data.

Contoh : CREATE, ALTER.

2. Data Manipulation Language (DML) untuk mendapatkan kembali

(retrieve) dan memperbahurui data.

Contoh : INSERT, SELECT, UPDATE, DELETE.

.2.1.6.5 Fact-finding Techniques

Menurut Connolly dan Begg (2010, p341), fact-finding techniques adalah

proses formal menggunakan teknik seperti wawancara dan kuisioner untuk

mengumpulkan fakta tentang sistem, kebutuhan dan pilihan. Terdapat 5 teknik

yang digunakan dalam fact-finding techniques, yaitu:

1. Examining documentation

Dengan memeriksa dokumen dan laporan terkait yang

berhubungan dengan sistem saat ini.

2. Interviewing

Mengumpulkan informasi yang berhubungan dengan sistem yang

ada saat ini dengan melakukan wawancara secara langsung ke

perusahaan.

Page 29: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

37

3. Observing the organization in operation

Dengan mengamati secara langsung aktivitas kerja di perusahaan

untuk mempelajari mengenai sistem yang ada saat ini.

4. Research

Dengan mengumpulkan sumber-sumber penelitian yang berasal

dari referensi buku dan artikel-artikel yang berasal dari internet.

5. Questionnaire

Dengan membuat pertanyaan-pertanyaan yang berhubungan

dengan sistem basis data yang akan dibuat untuk dijawab oleh

responden yang ditunjuk untuk mengisi kuisioner tersebut

2.1.7 MySQL

Menurut Valade (2010, p12), MySQL adalah aplikasi database yang

cepat dan mudah menggunakan RDBMS (Relational Database Management

System) yang digunakan pada web application pada umumnya. Namun,

meskipun fitur MySQL kurang lengkap dibandingkan dengan pesaing komersial,

MySQL memiliki semua fitur yang dibutuhkan oleh mayoritas database

pengembang. Selain itu juga lebih mudah untuk diinstal, digunakan, dan selisih

harga pun sangat mendukung daripada pesaing komersial.

Page 30: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

38

2.1.7.1 Keuntungan

Keuntungan dari menggunakan MySQL menurut Valade (2010, p13) antara lain:

a. Cepat, murah, aman dan mudah digunakan.

b. Bisa dijalankan di berbagai macam platform atau operating system.

c. Dukungan teknis yang tersedia secara luas dari komunitas MySQL dari

seluruh dunia.

d. Mendukung database besar dengan struktur yang kompleks.

e. Dapat memodifikasi MySQL sehingga cocok dengan lingkungan

pengembangnya.

2.1.8 SQLite

Menurut Allen dan Owens (2010, p1), SQLite adalah database yang

prosesnya berdiri sendiri dan biasanya tertanam pada sebuah perangkat keras

atau mesin yang menjalankan fungsi mengelola data secara mandiri atau

Embedded Database. SQLite tidak memerlukan konfigurasi jaringan atau proses

administrasi seperti database pada umumnya yang memerlukan host untuk

menjalankannya, dalam arti lain, SQLite dapat mengurangi overhead pada

perangkat keras dan membuat waktu lebih efisien untuk mengurangi hal-hal

teknis seperti konfigurasi jaringan dan proses administrasi.

Page 31: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

39

2.1.8.1 Keuntungan

Keuntungan dari menggunakan SQLite menurut Allen dan Owens (2010,

p8-p10) antara lain:

a. Tidak memerlukan konfigurasi yang rumit

b. Portable dan kompatibel di beberapa sistem operasi seperti

Windows, Mac OS X, Linux, BSD dan sistem komersil berbasis UNIX

lainnya

c. Ringan dan tidak membutuhkan server database eksternal

d. Sederhana dan fleksibel

e. Gratis dan bebas royalti dalam pengembangannya.

2.1.9 Hypertext Preprosessor (PHP)

PHP singkatan dari Hypertext Preprocessor adalah bahasa

pemprograman yang dirancang khusus oleh Rasmus Lerdorf untuk membuat

suatu web dan ini merupakan alat untuk membuat halaman web yang dinamis.

PHP merupakan software open source yang disebarkan dan dilisensikan secara

gratis serta dapat didownload secara bebas dari situs resminya

http://www.php.net/. Pengembang dapat mengubah source code dan

mendistribusikannya secara bebas diedarkan secara gratis. (Valade, 2010, p15)

Page 32: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

40

Menurut Valade (2010, p15), sintaks dari bahasa PHP mirip dengan

sintaks bahasa pemrograman C, jadi jika pengembang memiliki pengalaman

dengan bahasa pemrograman C, tentu saja akan merasa nyaman ketika

mengembangkan perangkat lunak dengan bahasa pemrograman PHP. Bahasa

pemrograman PHP sebenarnya lebih sederhana daripada bahasa pemrograman

C karena tidak menggunakan beberapa konsep dari bahasa pemrograman bahasa

C yang sedikit lebih rumit tetap dirancang khusus untuk bahasa pemgrograman

tingkat tinggi. PHP memiliki kemampuan untuk berinteraksi dengan database.

2.1.10 Hypertext Markup Language (HTML)

Hypertext Markup Language adalah markup yang dikembangkan pada

1980-an dan awal 1990-an untuk menggambarkan halaman web. HTML kini

diabadikan dalam deskripsi standar banyak (spesifikasi) dari World Wide Web

Consortium (W3C). Spesifikasi HTML terakhir dilakukan pada tahun 1999.

XHTML merupakan versi pengembangan terbaru dari HTML yang didasarkan

pada Extensible Markup Language (XML). XHTML menggunakan sintaks yang

sangat teratur dan dapat diprediksi yang lebih mudah untuk perangkat lunak

yang menanganinya. (Tittel & Noble, 2011, p9)

Page 33: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

41

HTML memiliki beberapa komponen pembangun menurut Tittel dan Noble

(2011, p16-p18) yaitu :

1. Elemen

Mengidentifikasi bagian-bagian yang berbeda dari sebuah halaman

HTML dengan menggunakan tag.

2. Atribut

Informasi tentang sebuah bagian dari elemen.

3. Entitas

Berbentuk teks dalam karakater non ASCII seperti simbol copyright (©)

dan huruf beraksen (E). Entitas berasal dari Bahasa Markup Standar

Generik (SGML).

2.1.11 Cascading Style Sheet (CSS)

Kumpulan modul yang memberikan kontrol untuk format pada halaman

web, seperti font, warna untuk latar belakang, warna teks dan lain sebagainya.

CSS dapat mengatur tiap aspek pada halaman web, memberikan perubahan

secara menyeluruh pada halaman web dan membuat tampilan halaman web

terlihat lebih dinamis. (Tittel & Noble, 2011, p129)

Page 34: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

42

2.1.12 Web Server

Perangkat lunak yang berfungsi membuat sebuah halaman web dapat

diakses di seluruh dunia. Cara kerja sebuah web server adalah ketika seseorang

mengetik alamat sebuah web melalui browser, alamat tersebut akan dikirimkan

melalui sebuah pesan ke web server dan kemudian web server akan

mengirimkan file HTML agar dapat dibaca di browser. Web server merespon

dengan mengirimkan file sesuai yang diminta. Browser akan membaca file

HTML dan menampilkan halaman web. Selain itu, web server memproses file

ketika adanya aksi pada form HTML yang terdapat pada halaman web. (Tittel

& Noble, 2011, p14)

Beberapa komponen standar yang harus dipenuhi alamat sebuah halaman web

agar bisa diproses oleh web server menurut Tittel dan Noble (2011, p16) adalah

sebagai berikut :

1. Protokol:

Menentukan protokol browser berikut untuk meminta file. Contoh http://

2. Domain:

Penunjuk sebuah situs web pada umumnya (contoh : www.sun.com) di

mana sebuah halaman web tersebut berada.

3. Path:

Urutan nama folder dimana harus dinavigasikan untuk mendapatkan file

tertentu. Misalnya, untuk mendapatkan file dalam folder evangcentral

yang berada di folder pengembang harus mengakses

/developer/evangcentral/path.

Page 35: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

43

4. Filename

Menentukan mana file dalam jalur direktori yang akan diakses browser.

Contoh .php, .html dan lain sebagainya.

2.1.13 Java

Bahasa pemrograman dan platform komputasi pertama kali dirilis oleh

Sun Microsystems pada tahun 1995. Bahasa pemrograman Java mendukung

beberapa teknologi termasuk utilitas, permainan, dan aplikasi bisnis. Bahasa

pemrograman Java mendukung kecepatan pengembangan sebuah aplikasi,

keamanan, dan handal. Bahasa pemrograman Java merupakan bahasa yang

sangat multi-platform, dapat ditemui di laptop, pusat data, konsol game, super

computer ilmiah maupun dari ponsel hingga ke web. (Java, 2010).

2.1.13.1 Keuntungan

Dikutip dari website resmi Java (2010), bahasa pemrograman java

memiliki beberapa keuntungan untuk pengembang yaitu :

1. Mengembangkan perangkat lunak tidak hanya pada satu platform tetapi

dapat menjalankannya pada hampir semua platform lain (multi-

plaftform).

2. Mengembangkan perangkat lunak yang dapat dijalankan pada web

browser dan mengakses layanan web yang tersedia.

3. Mengembangkan aplikasi server-side untuk forum online, toko online,

chat, HTML form, dan aplikasi bisnis berskala besar.

Page 36: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

44

4. Dapat mengkombinasikan aplikasi atau layanan menggunakan bahasa

pemrograman Java untuk membuat aplikasi yang sesuai dengan

keinginan.

5. Dapat mengembangkan aplikasi yang efektif dan efisien untuk ponsel,

dengan spesifikasi hardware yang tidak kompleks sehingga

menghasilkan produk yang dapat dijual murah kepada konsumen.

2.1.14 Framework

Framework adalah seperangkat pustaka dari sebuah perangkat lunak

yang telah terintegrasi (seperti class, objek dan komponen-komponen) yang

berkolaborasi untuk menyediakan desain arsitektur dari sebuah aplikasi yang

dapat digunakan kembali untuk membangun aplikasi sejenis yang terkait.

(Sommerville, 2011, p431)

2.1.14.1 Jenis – Jenis Framework

Menurut Sommerville (2011, p32-p33), framework dibedakan menjadi

beberapa jenis yaitu :

1. System Infrastructur Framework adalah framework yang mendukung

pengembangan infrastruktur sistem seperti komunikasi, user interface,

dan compiler.

2. Middleware Integration Framework adalah framework yang terdiri dari

satu set standar dan kelas objek terkait yang mendukung komponen

komunikasi dan pertukaran informasi. Contoh: Microsoft NET.

Framework dan Enterprise Java Beans (EJB).

Page 37: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

45

3. Enterprise Application Framework adalah framework yang spesifik

pada domain aplikasi seperti telekomunikasi atau sistem keuangan.

Framework ini mendukung tujuan End-Development User.

4. Web Application Framework (WAF) adalah jenis framework yang

terbaru saat ini. Arsitektur WAF yang biasanya didasarkan pada

Model-Views-Controller (MVC) pattern. Web application framework

biasanya menyertakan satu atau lebih kerangka kerja khusus yang

mendukung fitur aplikasi secara spesifik.(Sommerville, 2011)

Web Application Framework memiliki fitur-fitur seperti:

- Security Web Application Framework (WAF), kelas untuk membantu

menerapkan otentikasi pengguna (login) dan kontrol akses untuk

memastikan bahwa pengguna hanya dapat mengakses fungsi yang

diizinkan dalam sistem.

- Dynamic Web Page, kelas disediakan untuk membantu menentukan

template halaman web sistem dan untuk mengisinya ini secara dinamis

dengan data spesifik dari sistem database.

- Database Support, fitur database yang terpisah, seperti MySQL.

Framework dapat memberikan kelas yang menyediakan antarmuka

abstrak ke beberapa database yang berbeda.

- Session Management, kelas untuk membuat dan mengelola sesi

(sejumlah tindakan terhadap sistem oleh pengguna) biasanya bagian

dari sebuah WAF.

Page 38: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

46

- User Interaction, web application framework sekarang memberikan

dukungan AJAX yang memungkinkan halaman web lebih interaktif

terhadap pengguna.

2.1.14.2 Model – Views – Controllers pattern

Model – Views – Controllers (MVC) pattern awalnya diusulkan pada

tahun 1980-an sebagai pendekatan untuk desain GUI yang memungkinkan

untuk presentasi beberapa obyek dan gaya yang terpisah antar function dengan

tujuan yang spesifik. Hal ini memungkinkan untuk pemisahan aplikasi inti

dengan user interface. Sebuah kerangka kerja MVC mendukung presentasi

data dengan cara yang berbeda dan memungkinkan interaksi dengan masing-

masing function. (Sommerville, 2011, p155)

2.1.14.3 Keuntungan dan Kerugian

Keuntungan menggunakan framework adalah dapat menggunakan

kembali source code yang telah dibuat sehingga aplikasi yang baru dapat dijamin

dan mengurangi beban programming dalam pembuatannya serta framework

membantu menciptakan latihan pemrograman yang lebih baik. Kekurangan

framework adalah memakan biaya dan waktu serta framework yang dibuat dapat

menjadi lebih kompleks. (Sommerville, 2011, p155)

Page 39: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

47

2.1.15 CodeIgniter

Sebuah open source web application framework yang dibangun dengan

bahasa pemrograman PHP. CodeIgniter memiliki fitur dan dokumentasi yang

lengkap. CodeIgniter menggunakan Model-Views-Controller (MVC) pattern

yang memudahkan dalam pengembangan web application. (Griffiths, 2010, p7)

Menurut Griffiths (2010, p7), CodeIgniter memiliki fitur Active Record

yang berfungsi ketika pengembang menulis query SQL yang kompleks, tetapi

tetap membuat hal tersebut mudah untuk dibaca. Active record juga

memungkinkan pengembang aplikasi dengan mudah mengubah database

driver.

Menurut Griffiths (2010, p7), contohnya adalah memungkinkan

pengembang untuk menulis script dengan bahasa pemrograman PHP dan masih

menggunakan DBMS seperti MySQL, tetapi memberikan pilihan untuk beralih

ke DBMS lain seperti Oracle tanpa harus menulis ulang query dalam aplikasi

yang sudah dibuat sebelumnya. CodeIgniter juga dilengkapi dengan sejumlah

pustaka yang sangat berguna kumpulan fungsi yang membantu pengembang

dalam membangun aplikasi. Hal ini membuat pengembang untuk fokus pada

bagian kecil dari aplikasi (bekerja dengan sistem modul).

Page 40: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

48

2.1.16 Application Programming Interface

Seperangkat dokumentasi dari metode pemrograman yang telah

dikembangkan oleh pengembang perangkat lunak sebelumnya yang

memungkinkan pengembang perangkat lunak lain untuk mengembangkan

program sejenis menggunakan dokumentasi dari metode pemrograman tersebut.

(Hemmer, 2008, p324)

2.1.17 Software Development Kit

Seperangkat alat pengembangan yang menyediakan fitur tertentu dari

sebuah perangkat lunak untuk digunakan kembali dalam program yang akan

dikembangkan nantinya. Software Development Kit (SDK) biasanya mencakup

Application Programming Interface (API). (Hemmer, 2008, p324)

Page 41: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

49

2.2 Teori-teori Khusus

2.2.1 Sistem Pakar

Sistem pakar adalah program komputer yang berasal dari Artificial

Intelligence (AI) yang dibangun dengan tujuan untuk memahami kecerdasan

dengan cara menunjukkan perilaku cerdas itu sendiri. Hal ini berkaitan dengan

konsep dan metode inferensi simbolik, atau penalaran, oleh komputer dan

bagaimana pengetahuan yang digunakan untuk membuat kesimpulan tersebut

direpresentasikan oleh mesin. Terdapat perbedaan antara algoritma perangkat

lunak konvensional dan sistem pakar. Algoritma konvensional memiliki hasil

yang jelas sedangkan sistem pakar dapat memberikan jawaban dengan tingkat

probabilitas tertentu. Sistem pakar biasanya berbasis pengetahuan umum yang

dapat didefinisikan sebagai sistem komputer yang menyimpan pengetahuan

dalam ruang lingkup solusi masalah. Seorang ahli pada dasarnya mengandalkan

pengalaman serta pengetahuannya. Hal ini adalah alasan mengapa masalah

perilaku pemecahan tidak dapat dilakukan dengan menggunakan algoritma

sederhana. Pengalaman dapat dianggap sebagai semacam pengetahuan khusus

diciptakan oleh interaksi yang kompleks peraturan dan keputusan. Sistem pakar

(Expert Systems) disebut juga sebagai Knowledge Based Rules. (Hemmer, 2008,

p9)

Sistem pakar dianggap sebagai perwujudan dalam pengetahuan komputer

berdasarkan komponen dari keterampilan pakar yang sedemikian rupa hingga

membentuk sebuah sistem yang dapat menawarkan solusi cerdas atau

mengambil keputusan tentang fungsi dari pengolahan data yang didapat.

Page 42: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

50

Karakteristik tambahan yang akan mempertimbangkan dasar adalah kemampuan

dari sistem pakar itu sendiri didapat dari permintaan untuk membenarkan

penalaran secara langsung sehingga dapat langsung diterapkan dalam sebuah

penyelidikan. (Kendall & Creen, 2007)

2.2.1.1 Model dan Konsep

Menurut Hemmer (2008, p10), pendekatan sebuah sistem pakar

diibaratkan sebuah model standar dalam ilmu manajemen pengetahuan berupa

piramida pengetahuan, yang pada dasarnya menggambarkan hubungan

kuantitatif dan logis antara data, informasi, pengetahuan, dan aksi.

1. Data

Data merupakan dasar dari piramida pengetahuan dan merupakan

hasil dari pengukuran, pengamatan, dan perhitungan yang biasanya

tersedia dalam jumlah besar. Pada dasarnya, dibutuhkan data tambahan

yang menjelaskan teknik pengukuran, parameter, kondisi, dan atribut,

seperti pengenal sampel data tambahan yang menggambarkan konteks

biasanya disebut sebagai Metadata.

2. Information

Data akan memasuki proses dimana mengubahnya menjadi

representasi yang berbeda, dianalis atau ditafsirkan. Dari proses tersebut

menghasilkan informasi. Sebagai contoh saja pada grafik data. Dapat

dilihat langkah menciptakan grafik dari data yang diukur sebagai

pendekatan pertama untuk membuat informasi dari sebuah data. Grafik

Page 43: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

51

dapat ditafsirkan jauh lebih efisien daripada hanya berupa titik-titik data

mentah saja.

3. Knowledge

Konsep pengetahuan adalah sedikit berbeda dari yang

sebelumnya. Pengetahuan adalah sesuatu yang dapat hasil dari informasi

penafsiran secara berkelanjutan dari informasi menyebabkan probabilitas

berhubungan dengan struktur entitas tertentu.

4. Action

Langkah terakhir dalam model dan konsep piramida pengetahuan

menerapkan pengetahuan untuk membuat keputusan dan akhirnya

mengambil tindakan tertentu dari hasil menerapkan pengetahuan

tersebut.

Gambar 2. 8 Piramida Pengetahuan Sistem Pakar (Hemmer, 2008)

Page 44: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

52

2.2.1.2 Struktur dan Elemen

Sistem pakar (Expert System) / Knowledge Base Rules memiliki empat

komponen utama menurut Hemmer (2008, p10-p29) yaitu knowledge base,

working memory, inference engine dan user interface.

1. Knowledge Base

Knowledge base / rule base merupakan inti dari sebuah program

sistem pakar. Knowledge base / rule base ini merupakan representasi

pengetahuan dari seorang pakar. Knowledge base / rule base tersusun

atas fakta berupa informasi tentang obyek dan rules yang merupakan

informasi tentang cara bagaimana membangkitkan fakta baru dari fakta

yang telah diketahui sebelumnya.

2. Working Memory

Working memory merupakan seperangkat fakta dalam ruang

lingkup. Unsur-unsur mencerminkan keadaan saat ini yang didapat dari

hasil jawaban atas pertanyaan yang diberikan oleh sistem pakar kepada

pengguna dan berkaitan dengan apa yang dibutuhkan oleh sistem. Dalam

sistem pakar, working memory biasanya berisi informasi tentang contoh

tertentu masalah yang sedang ditangani. Working memory adalah media

penyimpanan dalam sistem berbasis aturan dan membantu sistem fokus

pemecahan masalah tersebut.

Page 45: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

53

3. Inference Engine

Inference engine adalah alat untuk mendapatkan informasi baru

tentang masalah tertentu menggunakan aturan atau pola dalam

knowledge base dan pengetahuan akan situasi tertentu dalam working

memory.

Secara umum ada dua teknik utama yang digunakan dalam

inference engine untuk menguji aturan, yaitu penalaran maju (forward

chaining) dan penalaran mundur (backward chaining). (Sasikumar et al.,

2007)

a. Forward Chaining

Pada dasarnya menggunakan pola data driven, artinya sistem

dimulai dengan memberikan inisialisasi awal elemen dalam working

memory dan terus menerapkan aturan sampai tidak ada aturan yang dapat

diterapkan atau tujuan telah tercapai. Akibatnya, sistem ini bergerak

maju dari kondisi saat ini menuju goal state. Tugas-tugas untuk

perencanaan, desain dan sintesis pada umumnya paling cocok untuk

forward chaining.

Page 46: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

54

b. Backward Chaining

Backward chaining menggunakan pola goal driven. Backward

chaining memecah sebuah masalah menjadi sub-masalah dan pemecahan

masing-masing dari tiap masalah tersebut. Artinya, tujuan direduksi

menjadi sub-tujuan dan setiap sub-tujuan berkurang jauh, dan seterusnya,

sampai mereka dipecahkan secara langsung.

4. User Interface

Fungsi dari user interface adalah untuk menyajikan pertanyaan

dan informasi kepada operator dan untuk memasok respon operator

terhadap inference engine. Setiap nilai pengembangan alat untuk sistem

pakar dimasukkan oleh pengguna harus diterima dan diinterpretasikan

oleh user interface.

User interface menginformasikan pengguna segala bentuk hasil

proses dari sistem pakar, merepresentasikannya dan mengkonfirmasikan

kepada pengguna bahwa apabila terjadi kesalahan maka harus diperbaiki.

Gambar 2. 9 Hubungan Antar Elemen Sistem Pakar (Hemmer, 2008)

Page 47: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

55

2.2.2 Logika Fuzzy

Logika fuzzy adalah metode untuk penalaran dengan ekspresi logis

menggambarkan keanggotaan dalam fuzzy set (himpunan fuzzy). Teori himpunan

fuzzy merupakan sarana menentukan seberapa baik sebuah objek memenuhi

sebuah deskripsi benar atau salah tetapi tidak sepenuhnya memenuhi nilai atas

deskripsi tersebut. Sebagai contoh, perhatikan preposisi "Budi bertubuh tinggi."

Apakah benar jika Budi memiliki tinggi tubuh 150 cm? Kebanyakan orang yang

ditanyai pertanyaan tersebut, akan ragu-ragu untuk menjawab "Benar" atau

"Salah” dan lebih memilih untuk mengatakan "Kurang lebih". Jadi dapat diambil

kesimpulan, bahwa logika fuzzy menentukan bahwa nilai deskripsi kebenaran

suatu pernyataan dapat bernilai diantara 0 dan 1. (Russell & Norvig, 2010, p240)

2.2.2.1 Fuzzy Control dan Fuzzy Reasoning

Ada dua jenis logika fuzzy yaitu fuzzy control dan fuzzy reasoning. Dasar

fuzzy control dicirikan dengan mengubah input yang berupa angka diubah

menjadi linguistik (fuzzyfikasi). Sedangkan fuzzy reasoning adalah logika fuzzy

yang secara penalarannya tidak dapat dideskripsikan secara menyeluruh, dalam

artian menalar pemikiran manusia tetapi tanpa ukuran atau skala. (Siller &

Buckley, 2005, p5)

Page 48: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

56

2.2.2.2 Cara Kerja

Secara umum cara kerja logika fuzzy ada empat tahap (Sutojo, Mulyanto,

& Suhartono, 2010, p232-p233), yaitu:

1. Fuzzyfikasi

Proses untuk mengubah input sistem yang mempunyai nilai tegas

menjadi variabel linguistik menggunakan fungsi sistem yang berada di

dalam basis pengetahuan fuzzy.

2. Pembentukan basis pengetahuan fuzzy

Kumpulan peraturan-peraturan fuzzy dalam bentuk pernyataan.

3. Mesin inferensi

Proses untuk mengubah input menjadi output dengan cara mengikuti

aturan-aturan (IF-THEN Rules) yang telah ditetapkan pada basis

pengetahuan fuzzy.

4. Defuzzyfikasi

Proses mengubah output fuzzy yang di peroleh dari mesin inferensi

menjadi nilai tegas menggunakan fungsi yang sesuai dengan saat di

lakukan fuzzyfikasi.

Page 49: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

57

Gambar 2. 10 Diagram Cara Kerja Logika Fuzzy (Sutojo, Mulyanto, & Suhartono, 2010)

2.2.2.3 Decision Tree

Decision Tree atau pohon keputusan adalah struktur pohon yang

digunakan untuk menggambarkan suatu keadaan secara hierarkis. Pohon

keputusan biasanya terdiri dari beberapa node. Node yang terletak pada level

paling awal biasanya disebut node “akar”. Sedangkan percabangannya disebut

node “perantara”. (Sutojo, Mulyanto, & Suhartono, 2010, p37-38)

Gambar 2. 11 Denah Decision Tree atau Pohon Keputusan

Page 50: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

58

2.2.3 Layanan Berbasis Lokasi

Layanan berbasis lokasi adalah kelas umum dari layanan tingkat program

komputer yang di gunakan untuk menyertakan kontrol khusus untuk data lokasi

dan waktu sebagai fitur kontrol dalam program komputer. Layanan berbasis

lokasi memberikan pengguna sebuah layanan yang berasal dari lokasi geografis

pengguna mobile devices. (Schiller & Voilard, 2004, p10)

Menurut Schiller dan Voilard (2004), permintaan untuk lokasi bisa

berasal dari mobile devices atau entitas lain seperti penyedia aplikasi atau

jaringan operator untuk menyediakan nilai tambah bagi pengguna. Hal ini

dimungkinkan untuk secara otomatis memicu layanan berbasis lokasi ketika

mobile devices berada pada lokasi khusus.

2.2.3.1 Sejarah

Menurut Schiller dan Voilard (2004, p11-p13), pada tahun 1970,

Departemen Pertahanan AS telah mengoperasikan global positioning system

(GPS), infrastruktur satelit yang melayani posisi manusia dan objek. Awalnya,

GPS digunakan untuk tujuan militer, tetapi pemerintah AS memutuskan pada

tahun 1980 untuk membuat data positioning system dengan layanan bebas

tersedia untuk industri lain di seluruh dunia. (Jones, 2008) Sejak itu, banyak

industri yang mengambil kesempatan untuk mengakses data posisi melalui GPS

dan sekarang menggunakannya untuk meningkatkan produk dan layanan

mereka.

Misalnya, industri otomotif telah mengintegrasikan sistem navigasi

dalam mobil untuk beberapa waktu. Dalam sistem penentuan posisi tradisional,

Page 51: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

59

informasi lokasi yang biasanya telah diturunkan oleh perangkat dan dengan

bantuan sistem satelit (misalnya, penerima GPS). Namun, minat yang luas dalam

layanan berbasis lokasi / Location Based Service (LBS) dan teknologi yang

mendasari ketika jenis baru teknologi lokalisasi dan minat pasar baru di layanan

data dipicu oleh operator jaringan mobile.

Pada sekitar tahun 1997, jaringan seluler yang banyak digunakan di

Eropa, Asia, dan Amerika Serikat, dan pendapatan dari layanan telepon telah

terbukti menjadi signifikan untuk operator mobile. Namun, meskipun layanan

mobile voice terus menjadi generator pendapatan utama bagi Telcos,

pertumbuhan telepon seluler terbatas dan harga per menit menurun. Akibatnya,

operator mulai mencari-cari cara untuk menstabilkan bottom line mereka dan

menemukan daerah baru untuk pertumbuhan di masa depan. Salah satu cara

utama untuk meraup keuntungan tambahan dari jaringan mobile selain suara

adalah untuk menawarkan layanan data, banyak yang akan menjadi lokasi

peningkatan. Sekitar 15% dari pendapatan operator saat ini di Eropa Barat dan

20% di Asia sudah didasarkan pada layanan data. Sebagian besar pendapatan ini

berasal dari Short Message Services (SMS). Untuk mengembangkan bisnis data

lebih lanjut, operator perlu berinvestasi dalam teknologi baru, terutama di ponsel

selain sistem GPS, pesan (misalnya, MMS, IM, email) dan Mobile Internet

(Wireless Application Protocol [WAP]), dan mencari cara untuk

mengoptimalkan pengalaman pengguna dari domain ini. Layanan berbasis lokasi

adalah dimensi penting dalam data berbasiskan layanan terbaru.

Page 52: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

60

2.2.3.2 Komponen

Menurut Kushwaha (2011) layanan berbasis lokasi memiliki arsitektur

yang dibagi menjadi beberapa komponen pembangun yaitu :

1. Location Based Service (LBS) Application terdiri dari komponen

yang memiliki sejumlah sensor dan komponen pada server

berpotensi yang meliputi aplikasi data secara spesifik seperti

informasi penanda lokasi.

2. Location Based Service (LBS) Middleware memiliki fitur utama pada

layanan berbasis lokasi (seperti tracking location, GIS provider dan

location collection services) untuk menyediakan antarmuka yang

konsisten untuk LBS Application.

3. Tracking Location, komponen yang menyimpan jejak lokasi

pengguna. Ini merupakan komponen fundamental dalam generasi

Location Based Service (LBS) karena mengandung data yang

memungkinkan rute pengguna harus ditentukan dan berpotensi

diprediksi. Secara khusus, komponen ini biasanya akan memiliki

fungsi yaitu menyimpan catatan tentang lokasi pengguna saat ini dan

masa lalu, memberitahu komponen lain ketika pengguna tertentu telah

pindah dari lokasinya, atau ketika pengguna lain tersebut bergerak

masuk atau keluar dari suatu daerah. Ini mendukung pemberitahuan

berbasis lokasi yang dikirim ke pengguna, menentukan dimana

pengguna berada dalam lokasi yang ditetapkan (geocasting) dan

menghasilkan pola gerakan atau perpindahan lokasi dari pengguna.

Page 53: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

61

4. GIS Provider, komponen yang menyediakan fungsionalitas berupa

data Location Based Service (LBS) geospasial seperti informasi peta,

visualisasi peta dan layanan direktori.

5. Location Collection Services, komponen yang melakukan

pengumpulan lokasi untuk mendapatkan lintang dan bujur untuk

pengguna tertentu. Tergantung pada teknologi, komponen ini dapat

diakses melalui LBS Middleware (misalnya, jaringan triangulasi

selular melalui penyedia layanan) atau langsung (misalnya, melalui

penerima GPS di Smartphone).

Page 54: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

62

2.2.3.3 Kategori

Layanan berbasis lokasi dapat dikategorikan berdasarkan orientasi

aplikasinya menurut Schiller dan Voilard (2004, p13) yaitu:

1. Person Oriented Location Based Service (LBS) di mana layanan ini

berbasiskan pengguna. Dengan demikian, fokus penggunaan aplikasi

adalah untuk posisi seseorang. Biasanya, para pengguna yang

terlokasi secara baik dapat mengontrol layanan.

2. Device Oriented Location Based Service (LBS) dimana layanan

terdapat pada aplikasi eksternal kepada pengguna. Dalam device

oriented location based service, orang atau objek terletak biasanya

tidak mengendalikan layanan (misalnya Tracking System).

Selain itu layanan berbasis lokasi dapat dikategorikan berdasarkan

desain aplikasinya menurut Schiller dan Voilard (2004, p14) yaitu:

1. Push Services. Layanan berbasis lokasi dimana pengguna menerima

informasi sebagai akibat dari lokasinya atau keberadaannya tanpa harus aktif

Gambar 2. 12 Arsitektur dari Komponen Pembangun pada Layanan Berbasis Lokasi (Kushwaha, 2011)

Page 55: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

63

memintanya. Informasi dapat dikirim ke pengguna dengan persetujuan

terlebih dahulu atau tanpa persetujuan terlebih dahulu.

2. Pull Services. Layanan berbasis lokasi dimana pengguna aktif menggunakan

aplikasi dan dalam konteks ini, '' menarik'' informasi dari jaringan. Informasi

ini mungkin menjadi lokasi yang disempurnakan.

Page 56: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

64

2.2.4 Global Positioning System (GPS)

GPS adalah suatu kumpulan satelit yang memungkinkan penerima untuk

mendapatkan lokasi dimana penerima berada dalam kurun waktu 24 jam atau

sebuah teknik yang relatif baru tentang pengumpulan data lapangan yang telah

mendukung penemuan tertentu oleh pengguna sistem informasi geografis

dengan menggunakan sistem satelit navigasi. (Heywood, Cornelius, & Carver,

2006, p63)

2.2.4.1 Cara Kerja

Menurut Heywood, Cornelius dan Carver (2006, p64), GPS memerlukan

dua receiver, yang tetap di lokasi yang dikenal dengan istilah base station dan

lainnya di lokasi yang tidak diketahui yaitu roving receiver. Seorang pengguna

GPS dapat melihat posisi tepat dimana ia berada pada receiver. Jika kedua

receiver ditetapkan secara persis sama dan menggunakan satelit yang sama

untuk menghitung lokasi mereka, maka kesalahan posisi akan direkam oleh

kedua receiver. Untuk mendapatkan posisi yang sangat akurat, dapat diperoleh

untuk penerima keliling dengan mengurangi kesalahan posisi hitung pada base

station.

Untuk mengurangi hambatan – hambatan seperti konfigurasi yang tidak

tersedia dengan baik di daerah kutub dan jarak antara satelit dan receiver yang

terhalang oleh bangunan, jalan dan bagian tanah yang curam, maka sinyal GPS

akan ditambahkan sinyal geostationer dan groundstation yang didapat dari

satelit. Perkembangan terbaru dalam komunikasi portabel dan mobile telah

Page 57: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

65

membuka area baru aplikasi GPS untuk konsumen barang elektronik pribadi.

Hasil olahan dari data sistem informasi geografis yang ditampilkan oleh GPS

pada aplikasi mobile melalui jaringan tanpa kabel dan WAV yaitu berupa

layanan berbasis lokasi / location based service.

2.2.5 Android

Android adalah platform berupa sistem operasi yang opensource dan

komprehensif pertama untuk perangkat mobile, perangkat lunak untuk

menjalankan ponsel tetapi tanpa hambatan kepemilikan sehingga meningkatkan

inovasi dalam teknologi mobile. (Meier, 2010, p4)

2.2.5.1 Sejarah

Android sendiri dirilis oleh Open Handset Alliance pada bulan

November tahun 2007. Android sebenarnya dikembangkan menggunakan kernel

Linux 2.6 dan beberapa kelebihan pada Android adalah tidak adanya biaya untuk

persetujuan lisensi distribusi dan pelepasan, GSM, EDGE 3G untuk telepon, IPC

Messaging, Background Process and Application, Shared Process Data, kontrol

perangkat keras dan perangkat multimedia yang lengkap dan API untuk layanan

berbasis lokasi seperti GPS / Global Positioning System. (Meier, 2010, p9)

2.2.5.2 Struktur

Adapun struktur aplikasi dengan sistem operasi berbasis Android

menurut Meier (2010, p13-p14) adalah sebagai berikut :

Page 58: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

66

1. Application Layer

Android memiliki satu set aplikasi inti termasuk email client, program

SMS, kalender, peta, browser, kontak, dan lain-lain. Semua aplikasi yang

dibangun menggunakan Java. Setiap aplikasi bertujuan untuk melakukan tugas

yang spesifik.

2. Application Framework Layer

Lapisan berikutnya adalah application framework. Ini termasuk program-

program yang mengelola fungsi dasar telepon seperti alokasi sumber daya,

aplikasi telepon dan program yang dapat melacak lokasi fisik telepon.

Pengembang aplikasi memiliki akses penuh ke application framework pada

Android. Hal-hal ini memungkinkan pengembang untuk mengambil

keuntungan dari kemampuan pemrosesan Android dan fitur dukungan ketika

membangun sebuah aplikasi Android. Dapat disimpulkan bahwa application

framework layer pada Android sebagai alat dasar dimana pengembang dapat

membangun alat yang jauh lebih kompleks.

3. Library Layer

Lapisan berikutnya berisi pustaka / library pada Android. Pustaka ini

semua ditulis dalam bahasa pemrograman C atau C++, dikompilasi untuk

arsitektur perangkat keras tertentu yang digunakan oleh ponsel dan dipasang

oleh perusahan vendor ponsel.

4. Android Runtime Layer

Android Runtime Layer termasuk Dalvik Virtual Machine (DVM) dan

satu set pustaka inti bahasa pemrograman java. Dalvik Virtual Machine

Page 59: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

67

(DVM) dibuat pada perangkat agar dapat menjalankan mesin virtual secara

efisien dan mengeksekusi file dengan ekstensi.dex (Dalvik format executable)

dengan penggunaan memori yang kecil.

5. Kernel Linux

Lapisan ini mencakup program manajemen memori Android, pengaturan

keamanan, perangkat lunak untuk manajemen daya dan beberapa driver yang

digunakan untuk mengakses hardware, file sistem, jaringan dan komunikasi

antar proses.

Page 60: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

68

2.2.5.3 Keuntungan dalam Mengembangkan Aplikasi Berbasis Android

Beberapa fitur unik ditawarkan oleh Android, yang juga merupakan

keuntungan dalam mengembangkan aplikasi dengan sistem operasi berbasis

Android. Keuntungan menggunakan sistem operasi Android menurut Meier

(2010, p11) adalah sebagai berikut:

Gambar 2. 13 Struktur Aplikasi Sistem Operasi Android . (Meier, 2010)

Page 61: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

69

1. Aplikasi Google Maps

Aplikasi Google Maps for Mobile telah sangat populer, dan Android

menawarkan Google Maps sebagai kontrol yang dapat digunakan kembali dalam

aplikasi yang akan dibuat. Komponen Maps View memungkinkan pengembang

menampilkan, memanipulasi, dan menambahkan keterangan pada Google Maps

dalam pembuatan aplikasi oleh pengembang.

2. Background Services

Background services membiarkan pengembang membuat sebuah aplikasi

yang menggunakan model-event sementara aplikasi lain sedang berjalan atau

saat ponsel sedang tidak dalam keadaan aktif / idle. Background services

memberikan layanan notifikasi apabila aplikasi sudah selesai dijalankan ketika

sedang berjalan bersamaan baik berupa lampu LED yang menyala atau berupa

nada seperti ringtone.

3. Shared Data dan Interprocess Communication

Dengan menggunakan komponen berupa intent dan content provider,

Android memungkinkan aplikasi pengembang bertukar pesan, melakukan

pengolahan, dan berbagi data. Pengembang juga dapat menggunakan mekanisme

untuk memanfaatkan data dan fungsionalitas yang disediakan oleh aplikasi

Android asli. Untuk mengurangi resiko dari strategi terbuka, setiap proses

aplikasi, penyimpanan data, dan file pribadi kecuali secara eksplisit dibagi

dengan aplikasi lain melalui mekanisme izin keamanan.

4. Semua aplikasi diciptakan sama, Android tidak membedakan antara aplikasi

asli dan yang dikembangkan oleh pihak ketiga.

Page 62: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

70

Hal tersebut memberikan pengembang keleluasaan dalam mengubah

tampilan dan nuansa dari perangkat pengembang dengan membiarkan

pengembang sepenuhnya menggantikan setiap aplikasi asli dengan alternatif

pihak ketiga yang memiliki akses ke data dan hardware yang sama.

2.2.6 Google Maps

Google Maps adalah sistem pemetaan online yang dimiliki oleh Google

yang memanfaatkan fungsi-fungsi protokol, perintah, fungsi atau yang dikenal

dengan istilah Application Programming Interface (API) yang dapat digunakan

oleh pengembang saat membangun perangkat lunak untuk aplikasi tertentu.

(Svennerberg, 2010, p2)

2.2.6.1 Sejarah

Google Maps diperkenalkan dalam sebuah tulisan pada halaman blog

Google pada Februari 2005. Google Maps merevolusi peta jalan pada halaman

web dengan mengizinkan pengguna mengakses peta untuk navigasi. Penemuan

sistem peta terbaru yang digunakan membutuhkan server khusus yang

diperuntukan untuk peta dengan tidak mengurangi sisi interaktif dari aplikasi.

Google Maps pada awalnya dikembangkan oleh dua orang bersaudara

asal Denmark, Lars dan Jens Rasmussen. Lars dan Jens Rasmussen mendirikan

“Where 2 Technologies”, sebuah perusahaan yang didirikan untuk menciptakan

solusi pemetaan. Perusahaan ini diakuisisi oleh Google pada Oktober 2004.

Rasmussen bersaudara kemudian menciptakan Google Maps. Lars dan Jens

Page 63: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

71

Rasmussen juga orang-orang di belakang terciptanya teknologi yaitu Google

Wave. (Svennerberg, 2010, p2-p3)

2.2.7 Web Service

Sebuah sistem perangkat lunak yang dirancang untuk mendukung

interupsi antara mesin ke mesin interaksi melalui jaringan. Web service mewakili

paradigma arsitektur baru untuk aplikasi. Web service mengimplementasikan

kemampuan yang tersedia untuk aplikasi lain (atau bahkan web service lainnya)

melalui jaringan standar industri dan antarmuka aplikasi dan protokol. Sebuah

aplikasi dapat menggunakan web service hanya dengan menerapkannya ke

seluruh jaringan tanpa harus mengintegrasikannya. Dengan demikian, web

service merupakan blok pengembangan perangkat lunak yang dapat digunakan

kembali dengan mengakses alamat situs yang menyediakan akses web service

tersebut. ( Hollar & Murphy, 2006, p7)

2.2.7.1 Standar Umum

Berikut adalah standar umum untuk web service menurut Hollar dan

Murphy (2006, p7-p10):

1. Extensible Markup Language (XML)

Extensible Markup Language (XML) adalah standar untuk

data mark up yang didukung oleh World Wide Web Consortium, yang

telah ditandai sebagai format universal untuk dokumen terstruktur

dan data di web.

Page 64: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

72

2. Simple Object Access Protocol (SOAP)

Simple Object Access Protocol adalah standar untuk bertukar

pesan-pesan berbasis XML melalui jaringan komputer atau sebuah

jalan untuk program yang berjalan pada suatu sistem operasi (OS)

untuk berkomunikasi dengan program pada OS yang sama maupun

berbeda dengan menggunakan HTTP dan XML sebagai mekanisme

untuk pertukaran data.

3. Universal Description, Discovery and Integration (UDDI)

Universal Description, Discovery and Integration adalah

spesifikasi untuk registri informasi untuk layanan web. UDDI

mendefinisikan sarana untuk mempublikasikan dan, lebih penting lagi,

menemukan (atau mencari) informasi tentang layanan web, termasuk

file WSDL.

4. Web Service Description Language (WSDL)

Web Service Description Language mendefinisikan pesan-

pesan (baik abstrak maupun konkrit) yang dikirim menuju web

service, koleksi-koleksi digital dari pesan-pesan (port type,

antarmuka), bagaimana port type yang ditentukan dijadikan wire

protocol dimana service ditempatkan.

Gambar 2. 14 Standar Umum Web Service .(Hollar & Murphy, 2006)

Page 65: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

73

2.2.8 JavaScript Object Notation

Format pertukaran data yang ringan, mudah dibaca dan ditulis oleh

pengembang, serta mudah diterjemahkan dan dibuat oleh komputer. Format ini

dibuat berdasarkan bagian dari bahasa pemrograman Javascript. JavaScript

Object Notation (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 dan lain-lain. Oleh karena sifat-sifat tersebut, menjadikan JSON

ideal sebagai bahasa pertukaran data. (Crockford, 2006)

2.2.8.1 Struktur dan Format

Pada dasarnya, semua bahasa pemrograman terbaru mendukung struktur

data ini dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut

demikian karena format data mudah dipertukarkan dengan bahasa-bahasa

pemrograman yang juga berdasarkan pada struktur data ini. Adapun format

JSON (JavaScript Object Notation) menurut Crockford (2006):

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

Page 66: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

74

2. Larik (array) adalah kumpulan yang terurutkan. Larik

(array) dimulai dengan [ (kurung kotak buka) dan diakhiri

dengan ] (kurung kotak tutup). Setiap nilai dipisahkan

oleh, (koma).

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

4. String adalah kumpulan dari nol atau lebih dari satu 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. String sangat mirip dengan string C atau Java.

5. Mirip dengan angka di C atau Java, kecuali format oktal dan

heksadesimal tidak digunakan.

Page 67: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

75

2.2.9 Kopi

Jenis tumbuhan kayu cemara dikotil (berbiji dua) yang dimiliki family

Rubiaceae. Karena tumbuh di ketinggian yang relatif besar, umumnya tanaman

kopi berbentuk pohon. Kopi memiliki banyak varietas jenis yang tersebar

diseluruh dunia, tetapi hanya terdapat 2 jenis kopi yang menjadi varietas utama

untuk dikembangkan di masa sekarang yaitu Arabika dan Robusta. Coffea

arabica, yang dikenal sebagai kopi Arabika, menyumbang 75-80 persen dari

produksi dunia. Coffeacanephora, yang dikenal sebagai kopi robusta,

menyumbang sekitar 20 persen dan berbeda dari kopi Arabika dari segi rasa.

Sementara biji kopi Robusta lebih kuat daripada biji kopi Arabika, dengan

kandungan kafein yang lebih tinggi. Baik Robusta dan Arabika tanaman kopi

dapat tumbuh hingga ketinggian 10 meter. Namun negara-negara penghasil akan

mempertahankan tanaman kopi pada ketinggian yang wajar untuk

mempermudah proses panen. (CoffeeResearch.org, 2006)

2.2.9.1 Sejarah

Menurut International Coffee Organization (2007), penyebaran global

kopi mulai tumbuh di Afrika. Menurut legenda, pohon kopi berasal dari provinsi

Ethiopia dari Kaffa. Hal ini dicatat bahwa buah tanaman, yang dikenal sebagai

buah kopi, dimakan oleh budak yang diambil dari Sudan dan dibawa ke Yaman

serta Saudi melalui pelabuhan besar. Kopi dibudidayakan di Yaman pada abad

ke-15. Dalam upaya untuk mencegah budidaya di tempat lain, orang-orang Arab

menerapkan larangan ekspor biji kopi subur, tetapi akhirnya larangan ini tidak

Page 68: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

76

dipatuhi oleh orang-orang Belanda, yang lebih memilih membawa tanaman kopi

ke Belanda untuk ditanam di rumah kaca pada tahun 1616.

Pada tahun 1600-an Belanda mencoba menanam kopi di Malabar di India

pada tahun 1699 dan mengambil beberapa tanaman untuk dibawa ke Batavia di

pulau Jawa, yang sekarang dikenal dengan ibukota provinsi DKI Jakarta yang

berada di Negara Indonesia. Kopi merupakan komoditas penting dalam

perekonomian dunia. Kopi adalah salah satu produk utama yang paling memiliki

nilai jual tinggi kedua dalam perdagangan dunia setelah minyak sebagai sumber

devisa bagi negara produsen. Kopi sangat penting dalam bidang ekonomi dan

politik di negara-negara berkembang, karena banyak ekspor kopi untuk negara-

negara berkembang, menghasilkan lebih dari 50 persen pendapatan devisa dan

merupakan komoditas berjangka yang diperdagangkan di bursa komoditas

utama.

2.2.9.2 Tanaman Kopi di Indonesia

Menurut data statistik International Coffee Organization (2010), pada

tahun 2010 tercatat bahwa Indonesia memiliki 2 jenis komoditas utama kopi

yang diproduksi yaitu Arabika dan Robusta dengan tingkat produksi mencapai

9.129.000 karung per tahunnya. Tingkat konsumsi kopi di Indonesia juga relatif

tinggi yaitu mencapai 0,86 kg per kapita. Data statistik juga menunjukan bahwa

jumlah ekspor kopi arabika per tahun yaitu 792.327 per karung/60kg dan jumlah

ekspor kopi robusta per tahun yaitu 4.462.620 per karung/60kg sehingga didapat

total nilai pendapatan dari total ekspor kopi untuk semua komoditas yaitu 157

juta US dollar per tahunnya.

Page 69: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

77

2.2.9.3 Penyakit Penting pada Tanaman Kopi

Menurut data Direktorat Jenderal Bina Produksi Perkebunan (2002, p45-

p49), terdapat beberapa penyakit penting pada tanaman kopi yaitu :

1. Penyakit Karat Daun Kopi / Coffee Leaf Rust

Penyakit karat daun kopi disebabkan oleh H. vastatrix yang dapat

menyerang di pembibitan sampai tanaman dewasa. Gejala tanaman

terserang adalah daun yang sakit timbul bercak kuning kemudian

berubah menjadi coklat. Lalu, permukaan bercak pada sisi bawah daun

terdapat uredospora seperti tepung berwarna oranye atau jingga.

Pada serangan berat pohon tampak kekuningan, daunnya gugur

dan akhirnya pohon menjadi gundul. Penyebaran penyakit melalui

uredospora yang dapat dibentuk sepanjang tahun. Perkembangan

penyakit dipengaruhi oleh kelembaban. Spora yang telah matang dapat

disebarkan oleh angin dan untuk perkecambahannya diperlukan tetesan

air yang mengandung udara.

Pengendalian penyakit dengan memperkuat kebugaran tanaman

melalui pemupukan berimbang, pemangkasan dan pengaturan naungan

untuk mengurangi kelembaban kebun dan memberikan sinar matahari

yang cukup pada tanaman.

Page 70: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

78

Gambar 2. 15 Karat Daun pada Tanaman Kopi (Direktorat Jenderal Bina Produksi Perkebunan, 2002)

2. Penyakit Bercak Daun Kopi / Brown Eye Spot of Coffee

Penyakit ini disebabkan oleh jamur C. coffeicola yang dapat

muncul di pembibitan sampai tanaman dewasa serta menyerang buah

kopi. Daun yang sakit timbul bercak berwarna kuning yang tepinya

dikelilingi halo (lingkaran) berwarna kuning. Buah yang terserang timbul

bercak berwarna coklat, biasanya pada sisi yang lebih banyak menerima

cahaya matahari. Bercak ini membusuk dan dapat sampai ke biji

sehingga menurunkan kualitas.

Penyakit ini umumnya dijumpai di pertanaman yang kurang

mendapat pemeliharaan. Penyebaran penyakit dibantu oleh keadaan

lingkungan yang lembab dan pola tanam yang kurang baik. Penyebaran

penyakit melalui spora yang terbawa angin dan aliran air hujan serta alat-

alat pertanian. Pengendalian penyakit dengan sanitasi kebun dan

Page 71: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

79

membuang bagian-bagian yang sakit, kemudian membenamkannya di

dalam tanah.

Dapat juga dengan mengurangi kelembaban kebun dengan

pemangkasan, pengaturan naungan dan membuat parit drainase. Serta

melakukan pemupukan dan menghindari penggunaan bibit yang telah

terserang penyakit ini.

3. Nematoda

Pratylenchus coffeae dan Radopholus similis adalah jenis

nematoda endoparasit yang berpindah-pindah. Daur hidup P. coffeae

sekitar 45 hari dan R. similis sekitar 1 bulan. Tanaman kopi yang

terserang penyakit ini kelihatan kerdil, daun menguning dan gugur.

Pertumbuhan cabang-cabang primer terhambat sehingga menghasilkan

sedikit bunga, buah prematur dan banyak yang kosong. Bagian akar

serabut membusuk dan putus sehingga habis.

Gambar 2. 16 Bercak Daun Kopi (Direktorat Jenderal Bina Produksi Perkebunan, 2002)

Page 72: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

80

Pada serangan berat tanaman akhirnya mati. Nematoda parasit

dapat menyebar dari satu tempat ke tempat lain melalui aliran air atau

tanah yang terbawa pada alat-alat pertanian dan pekerja kebun.

Pengendalian dilakukan dengan memberikan pupuk kandang 12

kg/ pohon/tahun atau membongkar pohon kopi yang terserang berat.

Untuk mencegah penularannya perlu dibuat parit isolasi disekeliling

tanaman sakit (dalam 40 cm dan lebar 30 cm) pada jarak 60 cm dari

pangkal akar. Bisa juga dengan menanam jenis kopi yang tahan untuk

digunakan sebagai batang bawah, misalnya: kopi ekselsa, kopi robusta

klon BP 961.

Gambar 2. 17 Nematoda yang Menyerang Akar Tanaman Kopi (Kanan) (Direktorat Jenderal Bina Produksi Perkebunan, 2002)

4. Jamur Upas / Root Fungus

Jamur C. salmonicolor dapat menyerang batang, cabang, ranting

dan buah kopi. Infeksi jamur ini pertama kali terjadi pada sisi bagian

bawah cabang ataupun ranting. Serangan dimulai dengan adanya benang-

Page 73: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

81

benang jamur tipis seperti sutera, berbentuk sarang laba-laba.

Selanjutnya pada bagian tersebut terjadi nekrosis kemudian membusuk

sehingga warnanya menjadi coklat tua atau hitam.

Nekrosis pada buah bermula dari pangkal buah disekitar tangkai,

kemudian meluas keseluruh permukaan dan mencapai endosperma.

Jamur ini menyebar melalui tiupan angin atau percikan air. Keadaan

lembab dan kurang sinar matahari sangat membantu perkembangan

penyakit ini.

Cara pengendalian penyakit ini adalah batang dan cabang yang

terkena penyakit dipotong sampai 10 cm di bawah pangkal dari bagian

yang sakit lalu potongan-potongan ini dikumpulkan kemudian di bakar

atau memetik buah-buah yang sakit, dikumpulkan dan dibakar atau

dipendam. Bisa juga dengan pemangkasan pohon pelindung untuk

mengurangi kelembaban kebun sehingga sinar matahari dapat masuk ke

areal pertanaman kopi.

Gambar 2. 18 Jamur Upas yang Menyerang Buah Tanaman Kopi (Direktorat Jenderal Bina Produksi Perkebunan, 2002)

Page 74: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

82

5. Jamur Akar Coklat, Hitam dan Putih

Ada tiga jenis penyakit jamur akar pada tanaman kopi, yaitu

jamur akar coklat, jamur akar hitam dan jamur akar putih. Ketiganya

menular melalui kontak akar. Penyakit ini dapat terjadi pada berbagai

umur tanaman dan dapat mematikan tanaman. Gejala tanaman terserang

warna daun hijau kekuningan, kusam, layu dan menggantung. Seluruh

daun menguning kemudian layu secara serempak, akhirnya mengering di

cabang.

Gejala khas jamur akar coklat adalah akar tunggang tertutup oleh

kerak yang terdiri dari butir-butir tanah yang melekat kuat. Diantara

butir-butir tanah tampak adanya anyaman benang jamur coklat

kehitaman. Lalu, kayu akar yang sakit membusuk, kering dan lunak.

Gejala khas jamur akar hitam, pada pangkal batang dan permukaan kayu

akar terdapat titik-titik hitam.

Gambar 2. 19 Jamur Akar yang Menyerang Tanaman Kopi (Direktorat Jenderal Bina Produksi Perkebunan, 2002)

Page 75: library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1... · Web viewProgram yang dirancang untuk memberikan kemampuan khusus atau spesifik kepada tiap-tiap penggunanya

83

Jamur akar putih pada permukaan akar terdapat benang jamur

berwarna putih menjalar sepanjang akar dan pada ujungnya meluas

seperti bulu. Penyebaran dan perkembangan penyakit lebih cepat pada

tanah berpasir dan lembab.

Cara pengendalian penyakit ini adalah dengan membongkar

pohon terserang sampai keakarnya, lalu membakar. Lubang bekas

bongkaran dibiarkan terbuka selama + 1 tahun. Pohon sehat disekitar

pohon sakit dan pohon-pohon sisipan ditaburi Trichoderma 200 gr/pohon

dan pupuk kandang/pupuk organik. Diulang setiap 6 bulan sampai areal

tersebut bebas dari jamur akar.