PERANCANGAN APLIKASI PENCARIAN KHASIAT TANAMAN OBAT...
Transcript of PERANCANGAN APLIKASI PENCARIAN KHASIAT TANAMAN OBAT...
PPERANCTANAM
CANGANMAN OB
N APLIKBAT INT
KASI PEERAKT
ENCARIAIF BERB
AN KHABASIS m
ASIAT mobile
Disu
PROF
OGRAM FAKULT
UNIV
Adi Sofiyusun Olehyan Octan
h: nanda
STUDI TTAS SAI
TEKNIK
VERSITAJA
INS dan TK INFOR
AS ISLAAKARTA
2010
TEKNORMATIKKA
AM NEGRLOGI RI
A
PERANCAANGAN APL
IN
LIKASI PEN
NTERAKTI
NCARIAN K
IF BERBAS
KHASIAT T
IS mobile
TANAMANN OBAT
Disu
P
Sebagai S
Universita
PROGRAMFAKU
UN
Adi Sofiusun Olehiyan Octan
: nanda
Skripsi alah Satu Sy
Sarjana Tyarat untuk M
Fakultas Saas Islam Neg
M STUDI ULTAS SANIVERSIT
JA
i
eknik InformMemperolehh Gelar matika
ains dan Tek
geri Syarif Hknologi idayatullah JJakarta
TEKNIK AINS dan T
INFORMA
TAS ISLAMTEKNOLO
ATIKA
M NEGRIOGI
AKARTA2010
ii
PERANCANGAN APLIKASI PENCARIAN KHASIAT TANAMAN OBAT
INTERAKTIF BERBASIS mobile
Skripsi
Sebagai Salah Satu Syarat untuk Memperoleh Gelar
Sarjana Komputer
Pada Fakultas Sains dan Teknologi UIN Jakarta
Oleh:
ADI SOFIYAN OCTANANDA
106091002873
Di Bawah Bimbingan
Pembimbing 1
Arini, M.T
NIP. 1976 0131 200901 2 001
Pembimbing 2
Elsi Rahajeng, M.T
Mengetahui,
Ketua Jurusan Teknik Informatika,
Yusuf Durachman, M.Sc, MIT
NIP. 19710522 200604 1 002
PENGESAHAN UJIAN Skripsi yang berjudul “Perancangan aplikasi pencarían khasiat tanaman obat interaktif berbasis mobile”, telah diuji dan dinyatakan lulus dalam Sidang Munaqosah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta, pada hari Senin tanggal 20 desember 2010. Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar strata satu (S1) Program Studi Teknik Informatika.
Jakarta, September 2010
Tim Penguji,
Penguji I
Ir. Bakri La Katjong, M.T M.Kom NIP. 470 035 764
Penguji II
Zainul Arham, M.Si NIP. 150 411 259
Tim Pembimbing,
Pembimbing I
Arini, MT NIP. 19760131 200901 2 001
Pembimbing II
Elsy Rahajeng, M.T
Mengetahui,
Dekan Fakultas Sains Dan Teknologi
DR. Syopiansyah Jaya Putra, M.Sis NIP. 19680117 200112 1 001
Ketua Program Studi Teknik Informatika
Yusuf Durachman M.Sc, MIT NIP. 19710522 200604 1 002
iii
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR
HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI
SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU
LEMBAGA MANAPUN.
Jakarta, 09 Desember 2010
Adi Sofiyan Octananda 106091002873
iv
ABSTRAK ADI SOFIYAN OCTANANDA, Perancangan aplikasi pencarian khasiat tanaman obat interaktif berbasis mobile, dibimbing oleh ARINI dan ELSY RAHAJENG Indonesia memiliki keragaman dalam hal tanaman obat. Menurut balai Litbang tanaman obat, terdapat 745 jenis tanaman obat yang terdapat di Indonesia. Namun akses yang secara cepat tepat dan akurat dalam pencarian obat masih terbatas pada buku dan halaman web. Melihat permasalahan yang terjadi saat ini, maka diperlukan perancangan sistem yang ada sehingga informasi mengenai data khasiat tanaman obat dapat diakses dengan mudah, cepat, dimanapun, dan kapanpun, salah satunya yang menggunakan platform mobile. Dalam penelitian ini metode pengembangan aplikasi yang peneliti gunakan adalah Incremental Process Models. Pada akhirnya, aplikasi ini dapat memberikan kemudahan dalam pencarian khasiat tanaman obat. Untuk ke depannya, aplikasi ini dapat dikembangkan lagi misalnya dengan menambahkan fitur yang memungkinkan pengguna untuk memasukkan data khasiat tanaman obat yang baru ke dalam aplikasi
Kata Kunci : Pencarian, khasiat tanaman obat, interaktif, mobile Jumlah Halaman : 94 halaman Jumlah Daftar Pustaka : 17 sumber
v
KATA PENGANTAR
Bismillahirrahmannirrahiim………
Segala puji dan syukur peneliti panjatkan kepada Allah SWT, Yang Maha
Kuasa dan telah memberikan berkah dan anugerah-Nya kepada peneliti sehingga
peneliti mampu menyelesaikan skripsi ini dengan sebaik-baiknya. Shalawat serta
salam tak lupa juga peneliti haturkan kepada junjungan kita Nabi Besar Muhammad
SAW.
Skripsi ini dibuat sebagai salah satu syarat kelulusan dalam menempuh
pendidikan Strata-1 di Universitas Islam Negri Syarif Hidayatullah Jakarta.
Selanjutnya, peneliti berharap agar skripsi ini dapat berguna bagi semua pihak yang
membutuhkan, terutama bagi junior yang membutuhkan referensi untuk
pengembangan aplikasi selanjutnya.
Pada kesempatan ini, peneliti mengucapkan terima kasih kepada pihak-pihak
yang telah membantu peneliti menyelesaikan skripsi ini :
1. Bapak Dr. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains dan
Teknologi.
2. Bapak Yusuf Durrachman, M.Sc, MIT selaku ketua Program Studi Teknik
Informatika.
3. Ibu Arini, M.T selaku dosen pembimbing pertama dan Ibu Elsy Rahajeng,
M.Kom selaku dosen pembimbing kedua yang telah rela meluangkan
waktunya untuk membimbing peneliti.
vi
4. Bapak dan Ibu penguji yang memberikan kritik dan saran pada skripsi ini.
5. Dosen-Dosen Fakultas Sains dan Teknologi yang telah mengajarkan kepada
peneliti berbagai macam ilmu yang dapat peneliti terapkan dalam penelitian
skripsi ini.
6. Kedua orang tua peneliti, yang telah memberikan dukungan moril, semangat
dan materiil sehingga memperlancar proses penyusunan skripsi ini.
7. Teman-Teman seperjuangan TI UIN 2006.
Peneliti menyadari masih terdapat banyak kekurangan dalam penelitian ini,
baik penelitian maupun aplikasinya sendiri. Oleh karena itu peneliti mengharapkan
saran dan kritik yang dapat membangun skripsi ini lebih baik lagi.
Jakarta, 09 Desember 2010
Peneliti
vii
DAFTAR ISI
Halaman Judul ................................................................................................. i
Lembar Persetujuan Pembimbing ................................................................. ii
Lembar Pengesahan Ujian .............................................................................. iii
Halaman Pernyataan ....................................................................................... iv
Abstrak .............................................................................................................. v
Kata Pengantar ................................................................................................ vi
Daftar Isi ........................................................................................................... viii
Daftar Tabel ...................................................................................................... xiii
Daftar Gambar ................................................................................................. xiv
Daftar Lampiran .............................................................................................. xvi
Daftar simbol .................................................................................................... xvii
BAB I PENDAHULUAN
1.1 Latar Belakang ....................................................................................... 1
1.2 Perumusan Masalah ............................................................................... 3
1.3 Batasan Masalah .................................................................................... 3
1.4 Tujuan Penelitian .................................................................................... 4
1.5 Kegunaan Penelitian .............................................................................. 4
1.5.1 Bagi Mahasiswa .............................................................................. 4
viii
1.5.2 Bagi Pengguna ................................................................................ 4
1.5.3 Bagi Universitas .............................................................................. 5
1.6 Metode Penelitian .................................................................................. 5
1.6.1 Metodologi Pegumpulan Data ...................................................... 5
1.6.2 Metodologi Pengembangan Sistem ............................................... 6
1.7 Sistematika Penulisan ............................................................................ 7
BAB II LANDASAN TEORI
2.1 Perancangan ........................................................................................... 9
2.2 Data ........................................................................................................ 9
2.3 Aplikasi ................................................................................................... 10
2.4 Interaktif ................................................................................................. 11
2.5 Tanaman Obat ........................................................................................ 11
2.6 Basis Data .............................................................................................. 11
2.7 Sistem Manajemen Basis Data ............................................................... 13
2.8 Multimedia ............................................................................................. 14
2.8.1 Elemen Multimedia ....................................................................... 15
2.8.1.1 Teks ................................................................................... 15
2.8.1.2 Gambar .............................................................................. 16
2.8.1.3 Animasi ............................................................................. 16
2.8.1.4 Suara .................................................................................. 16
2.8.1.5 Video ................................................................................. 18
ix
2.9 Teknologi mobile ................................................................................... 19
2.9.1 Generasi Pertama (1G) .................................................................. 19
2.9.2 Generasi Kedua (2G) .................................................................... 19
2.9.3 Generasi 2.5 (2.5G) ....................................................................... 20
2.9.4 Generasi Ketiga (3G) ..................................................................... 20
2.10 Incremental Process Models ................................................................ 21
2.10.1 Komunikasi ................................................................................. 23
2.10.2 Perencanaan ................................................................................. 23
2.10.3 Modeling ..................................................................................... 24
2.10.4 Konstruksi ................................................................................... 24
2.11.5 Deployment .......................................................................................... 25
2.11 Simple Pattern Matching ...................................................................... 26
2.12 Unified Modelling Language ............................................................... 26
2.12.1 Use Case Diagram ....................................................................... 29
2.12.2 Activity Diagram ......................................................................... 30
2.12.3 Sequence Diagram ...................................................................... 31
2.12.4 Deployment Diagram .................................................................. 34
2.13 Adobe Flash Lite ................................................................................. 35
2.14 PHP ...................................................................................................... 38
2.15 MySql ................................................................................................... 39
x
BAB III METODE PENELITIAN
3.1 Metodologi Pengumpulan Data .............................................................. 42
3.1.1 Studi Pustaka ................................................................................. 42
3.1.2 Studi Literatur ................................................................................ 42
3.1.3 Studi Kelayakan ............................................................................. 43
3.2 Metode Pengembangan Aplikasi ............................................................ 45
3.2.1 Komunikasi .................................................................................... 45
3.2.2 Perencanaan ................................................................................... 45
3.2.3 Pemodelan ..................................................................................... 47
3.2.4 Konstruksi ..................................................................................... 47
3.2.5 Penyebaran .................................................................................... 48
3.3 Kerangka Berpikir .................................................................................. 49
BAB IV HASIL dan PEMBAHASAN
4.1 Pengembangan Aplikasi .......................................................................... 50
4.1.1 Modeling ...................................................................................... 50
4.1.1.1 Use Case Diagram .............................................................. 51
4.1.1.2 Activity Diagram ................................................................ 54
4.1.1.3 Sequence Diagram ............................................................. 59
4.1.1.4 Deployment Diagram ......................................................... 63
4.1.1.5 Perancangan basis data ....................................................... 64
4.1.1.6 Analisis Sistem ................................................................... 67
xi
4.1.1.6.1 Analisis Perlengkapan sistem ................................ 67
4.1.1.6.2 Analisis User ......................................................... 68
4.1.1.7 Aljabar Relasional Aplikasi ................................................. 69
4.1.2 Desain .......................................................................................... 70
4.1.2.1 Tampilan aplikasi pada ponsel ........................................... 70
4.1.2.2 Tampilan aplikasi pada web ............................................... 75
4.1.3 Konstruksi ................................................................................... 79
4.1.3.1 Coding ................................................................................. 80
4.1.3.2 Pengujian Black-box .......................................................... 81
4.2 Studi Kelayakan ................................................................................ 84
BAB V PENUTUP
5.1 Kesimpulan ............................................................................................. 91
5.2 Saran ........................................................................................................ 92
Daftar Pustaka .................................................................................................. 93
Lampiran
xii
DAFTAR TABEL
Halaman
Tabel 2.1 Konsepsi Dasar UML ........................................................................ 28
Tabel 4.1 Tabel Use Case Diagram ..................................................................... 52
Tabel 4.2 Tabel Tanaman ................................................................................... 64
Tabel 4.3 Tabel Feedback .................................................................................. 65
Tabel 4.4 Tabel Admin ...................................................................................... 65
Tabel 4.5 Tabel Modul ....................................................................................... 66
Tabel 4.6 Hasil Pengujian dengan Blackbox Testing ........................................ 81
Tabel 4.7 Studi Kelayakan ................................................................................. 84
xiii
DAFTAR GAMBAR
Gambar 2.1 Incremental Process Model .......................................................... 22
Gambar 2.6 Contoh Use Case Diagram ........................................................... 30
Gambar 2.7 Contoh Activity Diagram ............................................................. 31
Gambar 2.8 Contoh Sequence Diagram ........................................................... 33
Gambar 2.9 Contoh Deployment Diagram ...................................................... 34
Gambar 3.1 Kerangka Berpikir ........................................................................ 49
Gambar 4.1 UseCase diagram aplikasi ............................................................. 51
Gambar 4.2 Activity Diagram untuk aplikasi mobile tanaman obat ................. 54
Gambar 4.3 Activity Diagram modul Tanaman obat ........................................ 56
Gambar 4.4 Activity Diagram modul feedback ................................................ 57
Gambar 4.5 Activity Diagram modul admin ..................................................... 58
Gambar 4.6 Sequence Diagram untuk aplikasi ponsel ...................................... 59
Gambar 4.7 Sequence Diagram untuk modul tanaman obat ............................. 60
Gambar 4.8 Sequence Diagram untuk modul feedback .................................... 61
Gambar 4.9 Sequence Diagram untuk modul admin ......................................... 62
Gambar 4.10 Deployment Diagram untuk aplikasi tanaman obat di ponsel ....... 63
Gambar 4.11 Deployment Diagram untuk aplikasi administrator khasiat tanaman
obat di web ................................................................................... 63
Gambar 4.12 halaman menu utama pada ponsel ................................................. 69
Gambar 4.13 halaman menu tanaman obat pada ponsel ..................................... 71
xiv
Gambar 4.14 halaman cari tanaman obat pada ponsel ........................................ 71
Gambar 4.15 halaman cari nama penyakit pada ponsel ...................................... 72
Gambar 4.16 halaman cari nama penyakit pada ponsel ...................................... 73
Gambar 4.17 halaman cari nama penyakit pada ponsel ...................................... 73
Gambar 4.18 halaman cari nama penyakit pada ponsel ...................................... 74
Gambar 4.19 halaman about pada ponsel ........................................................... 74
Gambar 4.20 halaman bantuan pada ponsel. ....................................................... 75
Gambar 4.21 halaman login pada web ................................................................ 76
Gambar 4.22 Menu Utama .................................................................................. 76
Gambar 4.23 halaman tanaman pada web........................................................... 77
Gambar 4.24 halaman tambah tanaman obat baru pada web .............................. 78
Gambar 4.25 halaman ubah tanaman pada web ................................................. 78
Gambar 4.26 admin pada web ............................................................................. 79
Gambar 4.27 ubah admin pada web .................................................................... 79
Gambar 4.28 feedback pada web ........................................................................ 80
xv
DAFTAR LAMPIRAN
Halaman
Lampiran 1. coding ..................................................................................... A - 21
xvi
DAFTAR SIMBOL
Simbol Use Case Diagram
Simbol Nama Fungsi
Actor User di luar sistem
Use case Sebuah spesifikasi perilaku suatu entitas dalam interaksi dengan agen di luar
Subject Boundary Classifier yang sifatnya dideskripsikan dengan use case
Communication path Penjelasan tentang sambungan antara class instances
Generalization Hubungan antara lebih spesifik dan deskripsi yang lebih umum, digunakan untuk inheritance dan deklarasi tipe polimorfik
Extend menghubungkan sebuah
perluasan use case ke use case dasar
include menghubungkan use case
dasar ke use case tambahan
(Rumbaugh, et al, 2006: 48-49, 695, 351, 388, 627)
xvii
Simbol Activity Diagram
Simbol Nama Fungsi
Action atau activity perilaku spesifikasi yang menggambarkan sekuensial serta langkah-langkah prosedur komputasi.
Fork atau join Node dengan satu input dan beberapa output atau sebaliknya
Intial node Menunjukkan
tempat dimana eksekusi program dimulai ketika sebuah activity dipanggil
Activity final node menyebabkan
penghentian eksekusi paksa semua flow dalam activity dan berakhirnya pelaksanaan activity
Flow Mendeskripsikan
sumber dan target dari berbagai jenis informasi
Accept time action Suatu aksi yang dilakukan dalam waktu tertentu
Branch atau merge Situasi dimana
flow input aksi dapat menuju satu atau beberapa kemungkinan flow output atau sebaliknya
xviii
Pin Merepresentasikan koneksi untuk nilai input atau output suatu aksi
Object node Merepresentasikan adanya suatu objek yang diproduksi oleh aksi
(Rumbaugh, et al, 2006: 698, 169, 385, 448, 412, 178, 383, 155, 601, 669, 219, 469,
540, 507, 361, 443, 367 )
Simbol Sequencial Diagram
Simbol Nama Fungsi
LifeLine Partisipasi individu dalam interaksi
Boundary LifeLine
Jenis penghubung yang didefinisikan sebagai stereotip Batas.
Control LifeLine Jenis penghubung yang didefinisikan sebagai stereotip Kontrol.
Entity LifeLine Sebuah jenis penghubung yang didefinisikan sebagai stereotip entitas.
asynchronous message
Komunikasi antar lifeline
synchronous call Tipe message
xix
r
DM
s(
C
S
RM
return messa
Duration Message
stop (destruction)
Create Mess
Self Messag
Recursive Message
yantipe
age TipeyanakheksekempemTipebergwakpesa
) Penobje
sage Modobje
ge JenimerpelaopermemgarisamJeniyanseca
g merupakane operasi calle message g merupakanir dari ekusi dan
mbali kepadamanggilnya e pesan yanggantung padktu panggilanan
nghapusan ek
del penciptaek.
is pesan yanrupakan aksanaan atarasi manggil dalais hidup yang
ma. is pesan diri g dijalankanara rekursif.
n l
n
a
g a n
aan
g
au
am g
n
xx
ACF
LF
F
A
C
Alternative Combined Fragment
Loop CombiFragment
Frame
Actor
Continuatio
Sebgabualtermenalterinte
ined SebyanmenperufraginteSebmemperiberfpenpertinfo
Aktmenperadimpenmanperaekstsubjberiden
on Menkelacaba
buah fragmenungan rnatif netapkan rnatif fragm
eraksi.
buah fragmeng ndefinisikan ulangan gmen eraksi. buah unit yanmpunyai ilaku untuk fokus pada gamatan tukaran ormasi
tor nentukan an yang
mainkan oleh gguna nusia, angkat kerasternal, atau jek lain yanginteraksi gan subjek.ndefinisikananjutan dari ang Alternat
n
men
n
ng
s
g
n
tve
xxi
ComFraberb
(
Simbol
(Rumbaugh,
Simbol D
(Rumba
xxii
et al, 2006:
Deployment
NaDevice Nod
Artifact
Association
Execution Environme
augh, et al, 2
mbined agment yang beda
700, 701, 31
t Diagram
ama de
n
ent Node
2006: 110)
19)
Fsumber dafisik dengkemampupemrosesmengekseArtefak adinformasidigunakandihasilkanpengembaperangkatSebuah asmenetapksemantik terjadi ant
Sebuah exenvironmnode yanglingkungauntuk tipetertentu ksebagai symengekse
Fungsi aya komputagan uan an untuk ekusi artefakdalah i yang n atau n oleh prosesangan t lunak. sosiasi yang
kan hubunganyang dapat tar instansi
xecution ent adalah g menawarkan eksekusi e komponen
komponen yarat untuk ekusi artefak
asi
k
s
n
kan
k
BAB I
PENDAHULUAN
1.1 Latar Belakang
Berbagai macam perkembangan yang terjadi di segala bidang kehidupan
manusia semakin mempermudah manusia dalam melakukan aktivitasnya sehari-hari.
Seiring itu pula, perkembangan dunia teknologi informasi pun semakin hari semakin
cepat perubahannya. Setiap hari, inovasi-inovasi terus diciptakan oleh para pakar
maupun peneliti di bidangnya.
Salah satunya yang menarik adalah, didalam bidang mobile. Mobile, yang
berarti bergerak, telah menjadi topik yang sangat populer saat ini. Perkembangan
dunia mobile pun semakin mendekati kemampuan komputer. Pengembangan
aplikasinya pun semakin luas. Pada saat ini, pengembangan aplikasi mobile tidak
hanya menggunakan bahasa pemrograman JAVA, namun juga menggunakan
ActionScript yang digunakan dalam aplikasi multimedia Adobe Flash.
Meskipun pengembangan aplikasi ponsel dengan menggunakan Adobe Flash
masih terbilang jarang, namun pengembangan apikasi dengan menggunakan Adobe
Flash mulai dilirik, dikarenakan pengembangan dan juga pengujian terhadap aplikasi
yang relatif cepat. Meskipun begitu, Adobe Flash belum menyokong semua device
seperti JAVA, dikarenakan pengembangan ini masih terbilang baru.
Selain perkembangan di bidang teknologi informasi, perkembangan teknologi di
bidang kesehatan pun semakin maju. Ditemukannya berbagai pengobatan dan alat-
1
alat yang semakin canggih, berbagai penyakit yang sebelumnya belum bisa
disembuhkan, pada saat ini pun mulai dapat disembuhkan.
Namun, tentunya berbagai pengobatan modern zaman sekarang pun memiliki
banyak efek samping yang tidak diinginkan. Hal ini dapat disebabkan oleh
ketidakcocokan antara penderita dengan obatnya, ataupun kandungan obat itu sendiri
yang memiliki efek samping apabila digunakan dalam jangka waktu yang panjang.
Oleh karena itu, dicarilah solusi yang memiliki konsep kembali ke alam, seperti
penggunaan tanaman obat.
Tanaman obat memiliki kemampuan menyembuhkan penyakit tanpa efek
samping. Selain itu, harga dari tanaman obat ini relatif murah dibandingkan obat-
obatan konvensional. Hal inilah yang menjadi keunggulan dari tanaman herbal.
Namun, sangat disayangkan karena masyarakat kurang mengetahui tentang tanaman
obat, dikarenakan rendahnya minat masyarakat dalam mencari info tentang kegunaan
tanaman herbal.
Oleh karena itu, dibutuhkanlah sebuah sarana yang menarik masyarakat untuk
mencari info tentang kegunaan tanaman obat untuk kesehatan, diantaranya dengan
merancang aplikasi mobile yang interaktif agar pengguna dapat mengetahui kegunaan
dan khasiat tanaman obat dalam mengobati penyakit. Penggunaan platform mobile
digunakan karena penetrasi pasar dalam bidang ponsel yang jauh lebih besar
dibandingkan komputer.
2
1.2 Rumusan Masalah
Pokok masalah yang ingin dibahas dalam penelitian ini adalah :
1. Bagaimana membuat aplikasi yang dapat digunakan untuk mencari khasiat
tanaman obat berbasis mobile.
2. Apakah aplikasi ini dapat memberikan pengetahuan secara umum
mengenai kegunaan tanaman obat, serta mampu melakukan pencarian data
tanaman obat.
3. apakah administrator dapat memanajemen konten aplikasi secara
keseluruhan..
1.3 Batasan Masalah
Berdasarkan rumusan masalah di atas, permasalahan dibatasi pada:
1. Membuat aplikasi untuk menampilkan data khasiat tanaman obat yang
terhubung ke server. Dalam aplikasi tersebut juga terdapat bagian
feedback dari pengguna untuk pengembangan aplikasi selanjutnya.
Aplikasi ini hanya mendukung ponsel dengan dukungan aplikasi Flash
Lite 2.0.
2. Pengguna dapat mencari konten tanaman obat berdasarkan nama tanaman
dan penyakit.
3. Tidak membahas proses bisnis yang terjadi di dalam sistem
4. Membuat halaman administrasi untuk mengatur konten dan manajemen
pengguna.
5. Aplikasi ditampilkan dalam media ponsel dan website.
3
1.4 Tujuan Penelitian
Penelitian ini bertujuan untuk:
1. Memberi pengetahuan kepada masyarakat tentang kegunaan tanaman
obat.
2. Menciptakan aplikasi yang mudah digunakan, dan dapat menjangkau
masyarakat luas.
3. Merancang bentuk tata ruang yang efektif dan menarik yang sesuai
dengan ukuran layar ponsel.
4. Merancang aplikasi yang seimbang antara performa dan tampilan.
1.5 Kegunaan Penelitian
Penelitian ini berguna untuk:
1.5.1. Bagi Mahasiswa:
1. Menerapkan ilmu-ilmu yang diperoleh selama kuliah.
2. Memahami pembuatan multimedia interaktif.
3. Membandingkan teori-teori yang ada dengan masalah yang sebenarnya.
4. Untuk memenuhi salah satu syarat kelulusan strata satu (S1), Program
Studi Teknik Informatika Fakultas Sains dan Teknologi UIN Syarif
Hidayatullah Jakarta.
1.5.2. Bagi Pengguna:
Dapat mengetahui khasiat tanaman obat dan cara penggunaanya untuk
pengobatan penyakit.
4
1.5.3. Bagi Universitas :
1 Mengetahui kemampuan mahasiswa dalam menguasai materi pelajaran
yang diperoleh dibangku kuliah.
2 Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan
sebagai bahan evaluasi.
3 Memberikan gambaran tentang kesiapan mahasiswa dalam menghadapi
dunia kerja yang sebenarnya.
1.6 Metode Penelitian
Peneliti menggunakan beberapa metode pada saat mengumpulkan data dan
informasi yang diperlukan sebagai bahan penyusunan laporan. Metode yang
digunakan adalah:
1.6.1. Metode Pengumpulan Data
1. Metode Studi Pustaka
Pengumpulan data dan informasi dengan cara membaca buku-buku
referensi yang dapat dijadikan acuan pembahasan dalam masalah ini.
2. Studi Literatur
Studi literatur untuk membandingkan antara penelitian ini dengan
penelitian lain yang telah dilakukan.
3. Studi Kelayakan
Studi kelayakan adalah untuk menilai kelayakan sebuah aplikasi
berdasarkan standar kelayakan tertentu.
5
1.6.2. Metode Pengembangan Sistem
Metode pengembangan sistem yang dipakai dalam penelitian skripsi ini
adalah metode Incremental Process Model. Metode ini berfokus pada
penyampaian produk operasional pada setiap increment. Increment awal
adalah versi stripped-down dari produk akhir, tetapi produk tersebut
memberikan kemampuan yang melayani pengguna dan juga menyediakan
platform untuk evaluasi oleh pengguna.
Menurut Pressman (2010 : 15) Pemodelan ini menyangkut aktivitas
berikut:
1. Komunikasi. Sebelum pekerjaan teknis dapat dimulai, sangat penting
untuk berkomunikasi dan berkolaborasi dengan pelanggan (dan
stakeholders lainnya). Tujuannya adalah untuk memahami tujuan proyek
pelanggan dan untuk mengumpulkan persyaratan yang membantu
mendefinisikan fitur dan fungsi perangkat lunak.
2. Perencanaan. Menetapkan rencana proyek software dengan
menggambarkan tugas-tugas teknis yang akan dilakukan, risiko yang
mungkin, sumber daya yang akan dibutuhkan, produk yang harus
dihasilkan, dan jadwal kerja.
3. Modeling. Membuat sketsa diperlukan untuk memahami gambaran besar.
Jika diperlukan, Anda dapat membuat sketsa menjadi lebih besar dan lebih
detail dalam upaya untuk lebih memahami masalah dan bagaimana Anda
akan menyelesaikannya. Seorang insinyur perangkat lunak menciptakan
6
model-model untuk lebih memahami persyaratan perangkat lunak dan
desain yang akan mencapai persyaratan tersebut.
4. Konstruksi. Kegiatan ini mengkombinasikan kode generasi (baik manual
atau otomatis) dan pengujian yang dibutuhkan untuk menemukan
kesalahan dalam kode.
5. Deployment. Perangkat lunak diserahkan kepada pelanggan yang
mengevaluasi produk yang dikirimkan dan memberikan umpan balik
berdasarkan penilaian.
1.7 Sistematika Penulisan
Dalam penelitian ini pembahasan terbagi dalam lima bab yang secara singkat
akan diuraikan sebagai berikut:
BAB 1 PENDAHULUAN
Dalam bab ini membahas mengenai latar belakang, rumusan masalah,
batasan masalah, tujuan dan manfaat penelitian, metode penelitian dan
sistematika penulisan yang merupakan gambaran menyeluruh dari skripsi
ini.
BAB 2 LANDASAN TEORI
Dalam bab ini membahas mengenai berbagai teori yang mendasari analisis
permasalahan dan berhubungan dengan topik yang dibahas.
BAB 3 METODE PENELITIAN
7
Bab ini akan diuraikan metode-metode yang digunakan peneliti dalam
penulisan yaitu metode pengumpulan data dan metode pengembangan
sistem.
BAB 4 HASIL DAN PEMBAHASAN
Bab ini akan menguraikan rancangan yang diusulkan berupa perancangan
database, storyboard, flowchat, interface, dan struktur navigasi.
BAB 5 PENUTUP
Bab ini memguraikan tentang kesimpulan dari hasil penelitian yang didapat
dan juga saran yang dapat digunakan untuk pengembangan sistem ini kearah
yang lebih baik lagi di masa yang akan datang.
8
BAB II
LANDASAN TEORI
2.1 Perancangan
Dalam kamus besar Bahasa Indonesia, Perancangan adalah proses, cara,
perbuatan mengatur segala sesuatu (sebelum bertindak, mengerjakan, atau
melakukan sesuatu) .
2.2 Data
Menurut Hariyanto (2008:193), Data adalah rekaman mengenai fenomena
atau fakta yang ada atau terjadi. Data pada pokoknya adalah refleksi fakta yang
ada. Data mengenai fakta-fakta penting organisasi harus direkam dan dikelola
dengan baik sehingga dapat dipakai atau diakses secara efisien sehingga efektif
mendukung operasi dan pengendalian organisasi. Data merupakan sumber daya
penting pada manajemen modern. Untuk itu, organisasi perlu melakukan penataan
dan manajemen data yang baik agar data yang dimiliki organisasi dapat berdaya
guna secara maksimal.
Menurut O’leary dan O’leary (2005:15), data adalah fakta mentah dan
belum diproses, termasuk dalam data adalah teks, nomor, gambar, dan suara. Data
yang telah diproses akan menjadi informasi. Ketika disimpan secara elektronik
dalam arsip, data dapat digunakan langsung sebagai masukan untuk sistem
informasi.
9
2.3 Aplikasi
Aplikasi adalah penggunaan atau penerapan suatu konsep yang menjadi pokok
pembahasan. Aplikasi dapat diartikan juga sebagai program komputer yang dibuat
untuk menolong manusia dalam melaksanakan tugas tertentu. Aplikasi software yang
dirancang untuk penggunaan praktisi khusus, klasifikasi luas ini dapat dibagi menjadi
2 (dua) yaitu:
a. Aplikasi software spesialis, program dengan dokumentasi tergabung
yang dirancang untuk menjalankan tugas tertentu.
b. Aplikasi paket, suatu program dengan dokumentasi tergabung yang
dirancang untuk jenis masalah tertentu. (sumber: http://storage.jak-
stik.ac.id)
Aplikasi, dalam ilmu komputer, adalah sebuah program komputer yang
dirancang untuk membantu orang-orang yang melakukan jenis pekerjaan tertentu.
Sebuah aplikasi berbeda dari sebuah sistem operasi (yang menjalankan komputer),
sebuah utilitas (yang melakukan pemeliharaan atau untuk tujuan tugas umum), dan
bahasa pemrograman (yang membuat program komputer). Tergantung pada pekerjaan
yang sudah dirancang, aplikasi dapat memanipulasi teks, angka, grafik, atau
gabungannya. Beberapa paket aplikasi menawarkan kemampuan komputasi yang baik
dengan fokus pada satu tugas, seperti pengolah kata. Paket aplikasi lainnya adalah
perangkat lunak yang terintegrasi, menawarkan kemampuan komputasi yang kurang
10
tapi di dalamnya terdapat beberapa aplikasi, seperti pengolah kata, spreadsheet, dan
program database (Microsoft Encarta, 2009).
2.4 Interaktif
Menurut Kamus Besar Bahasa Indonesia, interaktif adalah bersifat saling
melakukan aksi; antar-hubungan; saling aktif; berkaitan dengan dialog antara
komputer dan terminal atau antara komputer dan Komputer.
2.5 Tanaman Obat
Menurut Kamus Besar Bahasa Indonesia, tanaman adalah tumbuhan yang biasa
ditanam oleh orang; hasil tanaman; yang ditanam. Sedangkan obat adalah bahan
untuk mengurangi, menghilangkan penyakit, atau menyembuhkan seseorang dari
penyakit.
Jadi secara umum pengertian tanaman obat adalah tanaman yang memiliki
khasiat obat dan digunakan sebagai obat dalam penyembuhan maupun pencegahan
penyakit. Pengertian berkhasiat obat adalah mengandung zat aktif yang berfungsi
mengobati penyakit tertentu atau jika tidak mengandung zat aktif tertentu tapi
mengandung efek resultan / sinergi dari berbagai zat yang berfungsi mengobati.
2.6 Basis Data (Basis data)
Menurut Ramakhrisnan dan Gehrke (3:2000), Basis data adalah sekumpulan
data. umumnya, mendeskripsikan aktifitas antara satu atau lebih organisasi yang
terkait. Sebagai contoh, basis data untuk universitas mengandung beberapa hal seperti
dibawah ini:
11
a. Entitas, seperti mahasiswa, fakultas, mata kuliah, dan ruang kelas.
b. Hubungan diantara entitas, seperti mahasiswa mendaftar untuk mata
kuliah, dosen pengajar mata kuliah, dan penggunaan ruangan untuk mata
kuliah.
Menurut Williams dan Sawyer (2003:322), basis data adalah sekumpulan data
yang saling berkaitan. Menurut Hariyanto (2008:196), Secara umum, operasi-operasi
dasar yang biasa dilakukan pemakai terhadap basis data (diasumsikan pada basis data
relasional) hanya ada 4:
a. Menambah informasi, pada basis data relasional, dilakukan dengan
menambah baris di tabel (dapat dipandang sebagai operasi C-create).
b. Mengekstrak informasi, pada basis data relasional, dilakukan dengan
mengekstrak baris-baris yang berasal dari satu atau beberapa tabel
(dapat dipandang sebagai operasi R-read).
c. Memodifikasi data yang tersimpan, pada basis data relasional, dilakukan
dengan memodifikasi satu atau beberapa baris. (dapat dipandang sebagai
operasi U-Update).
d. Menghapus data tertentu, pada basis data relasional dilakukan dengan
menghapus baris tertentu di tabel (dapat dipandang sebagai operasi D-
Delete)
12
2.7 Sistem Manajemen basis data
Menurut Williams dan Sawyer (2003:322), sistem manajemen basis data adalah
program yang mengatur dan mengolah struktur basis data dan akses ke data yang
terdapat di basis data.
Menurut Sumathi dan Esakkirajan (2007:4), tujuan utama dari sistem
manajemen basis data adalah
a. Ketersediaan data, mengacu pada ketersediaan data untuk digunakan
oleh pengguna secara luas dengan format tertentu dan memiliki makna
dengan harga yang murah agar pengguna dapat mengakses data dengan
mudah
b. Integritas data, mengacu pada kebenaran data didalam basis data.
Dengan kata lain, data tersebut dapat dipercaya kebenarannya
c. Keamanan data, mengacu pada hanya pengguna yang memiliki
kewenangan tertentu yang dapat mengakses data. Keamanan data dapat
dilakukan dengan memasangkan kata sandi.
d. Inependensi Data, DBMS memungkinkan pengguna untuk menyimpan,
mengakses, dan menggunakan data dengan cara yang efisien. DBMS
menyediakan “abstract view” dari bagaimana data disimpan di dalam
basis data. Untuk menyimpan data secara efisien, struktur data yang
rumit digunakan untuk merepresentasikan data. Sistem
13
menyembunyikan beberapa detail tertentu tentang bagaimana data
disimpan dan diatur.
2.8 Multimedia
Menurut O’Leary dan O’Leary (2005:99), multimedia adalah integrasi dari
berbagai macam media ke dalam satu presentasi. Media yang dimaksud diantaranya
berupa video, musik, suara, gambar, dan teks. Multimedia yang efektif adalah yang
memasukkan interaktivitas ke dalam presentasinya. Interaktivitas memungkinkan
pengguna untuk memilih informasi yang ingin dilihat, mengontrol laju dan aliran
informasi, merespon dan menerima umpan balik.
Menurut Vaughan (2008: 2) multimedia adalah kombinasi antara bentuk
manipulasi dari teks, foto, seni grafis, suara, animasi, dan elemen video. Ketika
pengguna akhir diizinkan untuk mengontrol apa dan kapan unsur-unsur yang
disampaikan, disebut multimedia interaktif. Pemberian terstruktur dari unsur-unsur
terkait di mana pengguna dapat melakukan navigasi, multimedia interaktif menjadi
hypermedia.
Menurut Vaughan (2008: 2-3) perangkat lunak, pesan, dan konten yang
disajikan pada komputer, layar televisi, PDA (Personal Digital Assistant) atau ponsel
bersama merupakan sebuah proyek multimedia. Proyek mungkin juga berupa
halaman atau situs di World Wide Web, di mana Anda dapat menggabungkan unsur-
unsur multimedia ke dalam dokumen dengan HTML (Hypertext Markup Language)
atau DHTML (Dynamic Hypertext Markup Language) atau XML (eXtensible Markup
14
Language) dan manggunakan file yang dibuat dengan program seperti Adobe Flash,
LiveMotion, atau Quicktime milik Apple dengan menginstal plug-in ke aplikasi web
browser.
Menurut Vaughan (2008: 3) sebuah proyek tidak perlu interaktif untuk disebut
sebagai multimedia. Pengguna dapat duduk santai dan menonton film atau
televisi. Dalam kasus seperti ini, proyek ini disebut sebagai proyek linier dimana
penyajian multimedia dimulai dari awal dan berjalan sampai akhir. Bila pengguna
diberikan kontrol navigasi dan dapat mengembara melalui konten, proyek multimedia
ini disebut proyek nonlinier dan user interactive, dan merupakan gerbang informasi
personal yang kuat. GUI (Graphical User Interface) lebih dari sekadar grafis pada
layar. GUI juga sering memberikan aturan atau struktur untuk input
pengguna. Perangkat keras dan perangkat lunak yang mengatur batas dari apa yang
bisa terjadi di sini adalah platform multimedia.
2.8.1. Elemen dalam multimedia
Menurut Darudiato, Agustini, Yanti dan Sujanto (2006: 228) untuk membuat
aplikasi multimedia, diperlukan penggabungan dari beberapa elemen, yaitu:
2.8.1.1. Teks
Menurut Sutopo (2003: 8) (dalam Juhaeri, 2009: 2), Hampir
semua orang yang biasa menggunakan komputer sudah terbiasa
dengan teks. Teks merupakan dasar dari pengolahan kata dan
informasi berbasis multimedia. Dalam kenyataannya multimedia
15
menyajikan informasi kepada audiens dengan cepat, karena tidak
diperlukan membaca secara rinci dan teliti.
2.8.1.2. Gambar
Gambar adalah tiruan barang (orang, binatang, atau tumbuhan)
yang dibuat dengan coretan pensil pada kertas atau media lain
(KBBI, 2002: 329).
Menurut Sutopo (2003: 9) (dalam Juhaeri, 2009: 2), secara umum
image atau grafik berarti still image seperti foto dan gambar.
Manusia sangat berorientasi pada visual dan gambar merupakan
sarana yang sangat baik untuk menyajikan informasi.
2.8.1.3. Animasi
Menurut Sutopo (2002: 2) (dalam Juhaeri, 2009: 2), animasi
adalah pembentukan gerakan dari berbagai media atau objek yang
divariasikan dengan gerakan transisi, efek-efek, juga suara yang
selaras dengan gerakan animasi tersebut atau animasi merupakan
penayangan frame-frame gambar secara cepat untuk menghasilkan
kesan gerakan.
2.8.1.4. Suara
Suara adalah fenomena fisik yang merangsang indera
pendengaran. Manusia mendengar setiap kali terjadi getaran
16
frekuensi dari 15 hertz sampai sekitar 20.000 hertz. hertz (Hz)
adalah satuan frekuensi getaran atau setara dengan satu siklus per
detik.Getaran tersebut mencapai telinga bagian dalam melalui udara
(Microsoft Encarta, 2009).
Menurut Sutopo (2003 : 13) (dalam Juhaeri, 2009: 2),
penyajian audio atau suara merupakan cara lain untuk lebih
memperjelas pengertian suatu informasi. Contohnya, narasi
merupakan kelengkapan dari penjelasan yang dilihat melalui video.
Suara dapat lebih menjelaskan karakteristik suatu gambar, misalnya
musik dan suara efek (sound effect).
Menurut Vaughan (2006 : 107), MIDI (Musical Instrument
Digital Interface) adalah salah satu standar komunikasi yang
dikembangkan pada awal 1980 untuk instrumen musik elektronik
dan komputer. MIDI mengizinkan synthetizer musik dan suara dari
pemanufaktur berbeda untuk saling berkomunikasi dengan
mengirimkan pesan melalui kabel yang dihubungkan ke perangkat.
MIDI menyediakan protokol untuk melewatkan deskripsi detail dari
skor musik, seperti not dan instrumen apa saja yang memainkan not
tersebut. Diantaranya beberapa kelebihan dari MIDI adalah:
1. File MIDI lebih padat dibanding file audio digital, dan
ukuran MIDI tidak tergantung pada kualitas pemutaran.
17
Secara umum, file MIDI 200-1000 kalo lebih kecil
daripada file audio digital berkualitas CD. Karena file
MIDI kecil, maka tidak memerlukan RAM, ruang disk, dan
sumber daya CPU yang besar untuk memainkannya.
2. Karena kecil, file MIDI dapat dimuat ke dalam halaman
Web lebih cepat dimainkan dibanding ekuivalen digitalnya
3. Dalam beberapa kasus, jika sumber file MIDI yang
digunakan memiliki kualitas tinggi, file MIDI akan terlihat
lebih bagus dibanding file Audio Digital.
4. Anda dapat mengubah panjang file MIDI tanpa mengubah
pitch musiknya tanpa mendegradasi kualitas suaranya.
Sedangkan kekurangan file MIDI adalah:
1. Karena data MIDI tidak merepresentasikan suara namun
instrumen musik, anda hanya dapat merasa yakin bahwa
pemutarnya akan akurat jika pemutar MIDI identik dengan
perangkat yang digunakan untuk produksi
2. MIDI tidak dapat dengan mudah digunakan untuk memutar
dialog lisan.
2.8.1.5. Video
Video adalah rekaman gambar hidup atau program televisi
untuk ditayangkan melalui pesawat televisi (KBBI, 2003:1261).
18
Menurut Suyanto (2003: 279) (dalam Juhaeri, 2009: 2), video
merupakan elemen multimedia paling kompleks karena
penyampaian informasi yang lebih komunikatif dibandingkan
gambar biasa. Walaupun terdiri dari elemen-elemen yang sama
seperti grafik, suara dan teks, namun bentuk video berbeda dengan
animasi. Perbedaan terletak pada penyajiannya. Dalam video,
informasi disajikan dalam kesatuan utuh dari objek yang
dimodifikasi sehingga terlihat saling mendukung penggambaran
yang seakan terlihat hidup.
2.9 Teknologi mobile
Menurut Sharon, mobile device adalah ponsel, telepon seluler, komunikasi
genggam yang terhubung dengan jaringan nirkabel, yang memungkinkan pengguna
untuk membuat panggilan, mengirim pesan teks, dan menjalankan aplikasinya.
Menurut Sharon perkembangan teknologi mobile terdapat beberapa generasi
atau hanya disingkat (G), yaitu:
2.9.1. Generasi pertama (1G)
Generasi pertama dari ponsel dan bertipe analog (analog devices).
Menggunakan sinyal analog untuk mentransimisikan data. memiliki
keterbatasan dalam mentransmisikan datanya.
2.9.2. Generasi kedua (2G)
Merupakan pengembangan dari generasi pertama. Pada generasi kedua
ini, ponsel bertipe digital. Fitur yang dimiliki adalah Voice + SMS +
19
Circuit switched data. Pada generasi ini, menggunakan sistem standar
GSM, iDEN, CDMA, TDMA.
2.9.3. Generasi 2.5 (2.5G)
Pengembangan dari teknologi sebelumnya. Penambahan fitur adalah
GPRS, HSCSD, WiDEN. Selain itu, ada pula penambahan berupa
teknologi transfer data seperti EDGE, CDMA2000 1x-RTT.
2.9.4. Generasi ketiga (3G)
Merupakan generasi ketiga dari teknologi mobile. memiliki fitur
Broadband data + voice+ streaming video. Pada generasi ini
menggunakan sistem standar W-CDMA (UMTS, FOMA), 1xEVDO)
2.9.5. Generasi keempat (4G)
Menggunakan akses data broadband kecepatan tinggi, dan visual-
centric information. Mentransmisikan data 100mbps ketika bergerak dan
1Gbps ketika diam.
Menurut Elron, Janousek, Joos (2009: 3) perangkat mobile mengalami sebuah
revolusi yang menarik hari ini karena peningkatan cepat dalam jaringan pelanggan
serta bertambahnya desainer yang berpengalaman, yang hasil dalam antarmuka
pengguna yang lebih baik dan inovasi perangkat keras seperti layar sentuh. Seperti
perubahan perangkat mobile, harapan konsumen perangkat mobile mereka
meningkat juga. Di tengah semua perubahan ini, Adobe Open Source Project
mengubah Flash Player dari model lisensi menjadi model open source untuk
20
bersaing dengan teknologi ponsel. Pengumuman ketersediaan Adobe Flash 10 dan
Adobe Integrated Runtime (AIR) untuk perangkat mobile membuka kemungkinan
baru untuk pengembang mobile.
2.10. Incremental Process Models
Menurut Pressman (2010: 41) model incremental menggabungkan elemen-
elemen linear dan proses paralel alir. Model incremental menggunakan urutan linier.
Setiap urutan linier menghasilkan penyampaian "increment" dari perangkat lunak
dengan cara yang mirip dengan peningkatan yang dihasilkan oleh proses aliran
evolusi. Sebagai contoh, perangkat lunak pengolah kata yang dikembangkan dengan
menggunakan paradigma increment mungkin akan memberikan manajemen dasar,
mengedit, dan fungsi produksi dokumen dalam increment pertama; kemampuan lebih
baik untuk mengedit dan produksi dokumen pada increment kedua; memeriksa ejaan
dan tata bahasa pada increment ketiga dan kemampuan tata letak halaman yang lebih
baik pada increment selanjutnya. Perlu dicatat bahwa proses aliran untuk setiap
kenaikan dapat memasukkan paradigma prototyping.
21
m
f
S
b
p
p
b
a
m
u
Menu
mengemban
fitur tambah
Setelah dig
berikutnya.
pelanggan d
pada setiap
berfokus pa
awal adalah
memberikan
untuk evalu
G
urut Pressm
ngkan produk
han belum
gunakan da
Rencana un
dengan adany
increment, s
ada penyamp
h versi str
n kemampua
asi oleh pen
ambar 2.1 I (Sumbe
man (2010: 4
k inti. Artin
dikembangk
an dievalua
ntuk modifi
ya fitur tamb
sampai prod
paian produ
ripped-down
an yang mel
ngguna. Pen
22
Incremental r: Pressman,
41-42) Increm
nya, kebutuh
kan. Produk
asi, rencan
ikasi produk
bahan dan fu
duk selesai d
uk operasion
n dari pro
layani pengg
ngembangan
Process Mo, 2010: 42)
ment pertam
han dasar di
k intinya di
a dikemba
k inti dibua
ungsionalitas
diproduksi. M
nal pada set
oduk akhir,
guna dan ju
incrementa
odels
ma sering dig
ikembangka
gunakan ole
angkan untu
at untuk leb
s. Proses ini
Model prose
tiap increme
tetapi pro
uga menyedi
l terutama b
gunakan unt
an tapi bany
eh pelangga
uk increme
bih memenu
terus diulan
es incremen
ent. Increme
oduk terseb
iakan platfor
berguna keti
tuk
yak
an.
ent
uhi
ngi
tal
ent
but
rm
ika
staf tidak tersedia untuk implementasi lengkap dengan tenggat waktu yang telah
ditetapkan untuk proyek. Awal increment dapat diimplementasikan dengan lebih
sedikit orang. Jika produk inti diterima dengan baik, maka staf dapat ditambahkan
untuk mengimplementasikan peningkatan berikutnya. Selain itu, penambahan dapat
direncanakan untuk mengelola risiko teknis. Sebagai contoh, sebuah sistem utama
mungkin memerlukan ketersediaan hardware yang baru dalam pengembangan dan
jadwal penyelesaian produk yang tidak pasti. Sangatlah mungkin untuk
merencanakan increment awal dengan cara yang menghindari penggunaan
menggunakan hardware yang baru, sehingga memungkinkan fungsi yang tidak
lengkap untuk yang diberikan kepada pengguna akhir tanpa penundaan berlebihan.
Menurut Pressman (2010: 15) Pemodelan ini menyangkut aktivitas berikut:
2.10.1. Komunikasi
Sebelum pekerjaan teknis dapat dimulai, sangat penting untuk berkomunikasi dan
berkolaborasi dengan pelanggan (dan stakeholders lainnya). Tujuannya adalah untuk
memahami tujuan proyek pelanggan dan untuk mengumpulkan persyaratan yang
membantu mendefinisikan fitur dan fungsi perangkat lunak.
2.10.2. Perencanaan
Menetapkan rencana proyek software dengan menggambarkan tugas-tugas
teknis yang akan dilakukan, risiko yang mungkin, sumber daya yang akan
dibutuhkan, produk yang harus dihasilkan dan jadwal kerja.
23
2.10.3. Modeling
Pembuatan sketsa diperlukan untuk memahami gambaran besar. Jika
diperlukan, dapat membuat sketsa menjadi lebih besar dan lebih detail dalam upaya
untuk lebih memahami masalah dan bagaimana menyelesaikannya. Seorang insinyur
perangkat lunak menciptakan model-model untuk lebih memahami persyaratan
perangkat lunak dan desain yang akan mencapai persyaratan tersebut.
2.10.4. Konstruksi
Menurut Pressman (2010: 111) kegiatan konstruksi meliputi serangkaian
pengkodean dan pengujian yang mengarah ke pekerjaan rekayasa perangkat lunak,
mungkin coding penciptaan langsung dari bahasa pemrograman source code
(misalnya Java), pembangkitan otomatis dari source code menggunakan representasi
desain tingkat menengah dari komponen yang akan dibangun, atau pembangkitan
otomatis dari executable menggunakan bahasa "pemrograman generasi keempat"
(misalnya Visual C + +). Fokus awal pengujian adalah pada tingkat komponen,
biasanya disebut unit testing. Tingkatan lain dalam pengujian termasuk pengujian
integrasi (yang dilakukan ketika sistem dibangun), pengujian validasi yang menilai
apakah persyaratan telah dipenuhi untuk sistem yang lengkap (atau software
increment), dan tes penerimaan yang dilakukan oleh pelanggan dalam upaya untuk
melaksanakan semua fitur dan fungsi yang diperlukan.
Menurut Pressman (2010: 112) jika pengujian berhasil dilakukan, pengujian
ini akan menemukan kesalahan dalam perangkat lunak. Keuntungan lainnya,
24
pengujian menunjukkan bahwa fungsi perangkat lunak muncul untuk dapat bekerja
sesuai dengan spesifikasi, dan bahwa persyaratan kinerja dan perilaku tampaknya
telah dipenuhi. Selain itu, data yang dikumpulkan sebagai pengujian dilakukan
memberikan indikasi yang baik pada keandalan perangkat lunak dan beberapa
indikasi kualitas perangkat lunak secara keseluruhan. Tetapi pengujian tidak bisa
menunjukkan adanya kesalahan dan cacat. Ini hanya dapat menunjukkan kesalahan
dan cacat yang terjadi pada perangkat lunak.
2.10.5. Deployment
Menurut Pressman (2010: 113-114) kegiatan pengembangan meliputi tiga
tindakan: pengiriman, dukungan, dan umpan balik. Karena model proses perangkat
lunak modern adalah evolusi atau bertahap di alam, penyebaran terjadi tidak hanya
sekali, tapi beberapa kali selama perangkat lunak bergerak ke arah penyelesaian.
Setiap siklus pengiriman menyediakan pengguna dan pelanggan increment
operasional perangkat lunak yang menyediakan fungsi dan fitur yang dapat
digunakan. Setiap siklus dukungan menyediakan dokumentasi dan bantuan manusia
untuk semua fungsi dan fitur yang diperkenalkan selama seluruh siklus
dikembangkan. Setiap umpan balik pada siklus menyediakan tim perangkat lunak
dengan panduan penting bahwa hasil harus dilakukan modifikasi pada fungsi, fitur,
dan pendekatan yang diambil untuk increment berikutnya. Perangkat lunak yang
dikirimkan memberikan manfaat bagi pengguna akhir, tapi juga memberikan umpan
balik yang berguna untuk tim perangkat lunak. Ketika suatu increment mulai
25
digunakan, pengguna akhir harus didorong untuk mengomentari fitur dan fungsi,
kemudahan penggunaan, kehandalan dan karakteristik lain yang sesuai.
2.11 Simple Pattern Matching
Menurut Jhonson, M (a simple pattern-matching algorithm for recovering empty
nodes and their antecedents : 2009). Secara garis besar, algoritma ini dapat
dikategorikan sebagai contoh dari pendekatan the Memory-Based Learning, dimana
kedua pola ekstraksi dan pencocokkan pola melibatkan kunjungan rekursif ke semua
sub-pohon dari pohon yang bersangkutan. Hal ini juga dapat dianggap sebagai jenis
transformasi pohon, jadi keseluruhan arsitektur sistem (termasuk parser) adalah
contoh dari transform-detransform.
Algoritma ini memiliki 2 fase. Fase pertama dari algoritma mengekstrak pola dari
pohon di training corpus. Pada fase kedua, menggunakan hasil ekstraksi pola untuk
dimasukkan ke dalam node kosong dan mengindex pendahulu mereka di pohon yang
tidak memiliki node kosong. Sebelum pohon digunakan di fase training and
insertion, mereka melewati langkah praproses, yang melabelkan ulang node
preterminal yang mendominasi kata kerja bantu dan transisi.
2.12 Unified Modelling Language (UML)
Unified Modeling Language (UML) adalah bahasa pemodelan visual untuk
tujuan umum yang digunakan untuk menentukan, memvisualisasi, membangun, dan
mendokumentasikan artefak dari perangkat lunak sistem. UML digunakan untuk
memahami, mendesain, menjelajah, mengonfigurasi, memelihara dan mengontrol
26
informasi tentang sistem tersebut. UML dimaksudkan untuk digunakan dengan semua
metode pengembangan, tahapan-tahapan siklus hidup, domain-domain aplikasi dan
media. Pemodelan bahasa ini dimaksudkan untuk menyatukan pengalaman masa lalu
tentang teknik pemodelan dan untuk memasukkan praktik-praktik terbaik perangkat
lunak saat ini menjadi pendekatan standar.
Spesifikasi UML tidak mendefinisikan proses standar tetapi dimaksudkan
untuk menjadi berguna dengan proses pengembangan berulang. Hal ini dimaksudkan
untuk mendukung proses pengembangan dengan object oriented. UML menyimpan
informasi tentang struktur statis dan perilaku dinamis suatu sistem. Sebuah sistem
dimodelkan sebagai koleksi benda-benda diskrit yang berinteraksi untuk melakukan
kerja yang pada akhirnya bermanfaat. Struktur statis mendefinisikan jenis-jenis objek
penting untuk sistem dan pelaksanaannya, serta sebagai hubungan antara objek-objek.
Perilaku dinamis mendefinisikan sejarah obyek dari waktu ke waktu dan komunikasi
antara objek-objek untuk mencapai tujuan (Rumbaugh, et al., 2006: 3).
UML bukanlah bahasa pemrograman. UML dapat digunakan untuk menulis
program, tetapi tidak memiliki kemudahan sintak dan semantik yang mana
kebanyakan bahasa pemrograman menyediakan untuk memudahkan tugas
pemrograman. Beberapa tools dapat menyediakan generator kode dari UML ke dalam
berbagai bahasa pemrograman, serta membangun reverse engineered model dari
program yang ada. UML adalah bahasa pemodelan untuk tujuan umum. Untuk
domain khusus, seperti tata letak GUI, desain sirkuit VLSI, atau kecerdasan buatan
berbasis aturan, sebuah alat yang lebih khusus dengan bahasa khusus yang lebih
27
tepat. UML merupakan bahasa pemodelan diskrit. Hal ini tidak dimaksudkan untuk
model sistem kontinyu seperti yang ditemukan di bidang teknik dan fisika. UML
dimaksudkan untuk menjadi tujuan universal bahasa pemodelan untuk sistem diskrit
seperti yang terbuat dari perangkat lunak, firmware atau logika digital (Rumbaugh, et
al., 2006: 4).
Tabel 2.1 UML Views and Diagrams
Major Area View Diagrams Main Concepts Structural static view class diagram association, class,
dependency, generalization, interface, realization,
design view internal structure connector, interface, part, port, provided interface, role required interface
collaboration diagram connector, collaboration, collaboration use, role
component diagram
component, dependency, port, provided interface, realization, required interface, subsystem
use case view use case diagram actor, association, extend, include, use case, use case generalization
Dynamic
state machine view
state machine diagram
completion transition, do activity, effect, event, region, state, transition, trigger
activity view activity diagram Action, activity, control flow, control node, data flow, exception, exception region, fork, join, object node, pin
interaction view
sequence diagram occurrence specification, execution specification, interaction, interaction
28
fragment, interaction operand, lifeline, message, signal
communication diagram
collaboration, guard condition, message, role, sequence number
Physical deployment view
deployment diagram artifact, dependency, manifestation, node
Model Management
model management view
package diagram import, model, package,
profile package diagram constraint, profile, stereotype, tagged value
(Sumber: Rumbaugh, et al., 2006: 26)
2.12.1 Use Case Diagram
Use case diagram menggambarkan fungsionalitas yang diharapkan dari
sebuah sistem. Dalam pembuatan Use Case Diagram, yang ditekankan adalah
“apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case
merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case
merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create
sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah
entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan
pekerjaan-pekerjaan tertentu.
Sebuah use case dapat meng-include fungsionalitas use case lain
sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use
case yang di-include akan dipanggil setiap kali use case yang meng-include
29
dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu
use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara
menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-
extend use case lain dengan behaviour-nya sendiri. Sementara hubungan
generalisasi antar use case menunjukkan bahwa use case yang satu merupakan
spesialisasi dari yang lain (Dharwiyanti & Wahono, 2003: 4).
Gambar 2.2 Contoh Use Case Diagram (Sumber: Rumbaugh, et al., 2006: 695)
2.12.2 Activity Diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem
yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang
mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat
menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.
Activity diagram merupakan state diagram khusus, di mana sebagian besar
state adalah action dan sebagian besar transisi di-trigger oleh selesainya state
sebelumnya (internal processing). Oleh karena itu activity diagram tidak
30
menggambarkan behaviour internal sebuah sistem (dan interaksi antar
subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-
jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan
oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan,
sementara use case menggambarkan bagaimana aktor menggunakan sistem
untuk melakukan aktivitas (Dharwiyanti & Wahono, 2003: 7).
Gambar 2.3 Contoh Activity Diagram (Sumber: Rumbaugh, et al., 2006: 699)
31
2.12.3 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan
di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message
yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi
vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence
diagram biasa digunakan untuk menggambarkan skenario atau rangkaian
langkah-langkah yang dilakukan sebagai tanggapan dari sebuah event untuk
menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas
tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output
apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline
vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek
lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi
operasi/metode dari class. Activation bar menunjukkan lamanya eksekusi
sebuah proses, biasanya diawali dengan diterimanya sebuah message
(Dharwiyanti & Wahono, 2003: 8).
Hal pertama yang dapat diperhatikan dalam sequence diagram adalah
sequence diagram mengindikasikan perbedaan tentang bagaimana partisipan
berinteraksi. Ini adalah salah satu keunggulan diagram interaksi, mereka tidak
begitu baik untuk menunjukkan detail dari algoritma, seperti loops, dan
keadaan kondisional, tetapi mereka memperjelas proses-proses yang dilakukan
oleh masing-masing partisipan (Fowler, 2004:55)
32
Gambar 2.4 Contoh Sequence Diagram (Sumber: Rumbaugh, et al., 2006: 700)
33
2.12.4 Deployment Diagram
Deployment diagram menggambarkan detail bagaimana komponen di-
deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada
mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada
lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal. Sebuah
node adalah server, workstation, atau piranti keras lain yang digunakan untuk
men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node
(misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini
(Dharwiyanti & Wahono, 2003: 10).
Gambar 2.5 Contoh Deployment Diagram (Sumber: Rumbaugh, et al., 2006: 701)
34
2.13 Adobe Flash Lite
Menurut Elron, Janousek, Joos (2009: 12) Adobe Flash Lite adalah versi yang
dioptimalkan Flash Player yang didukung oleh beberapa hal berikut, perangkat
mobile umum:
• Sistem operasi Symbian
• Sistem operasi Windows Mobile
• Binary Runtime Environment Wireless (BREW) platform
Selain itu, perangkat mobile yang sudah mendukung Flash Lite, termasuk
Chumby, BenQ, China Mobile, iRiver, KDDI, Kodak, LG, Motorola, Nokia, NTT
DoCoMo, Samsung, Sony Ericsson, dan Verizon Wireless.
Flash Lite memberikan kelebihan luar biasa hal ini memungkinkan akses ke
sekitar 80 persen dari ponsel di seluruh dunia. Dengan menggunakan platform Flash
Lite, mereka tidak tergantung pada sistem operasi API dan dapat memanfaatkan
“write once, run anywhere” pengembangan praktis, karena aplikasi dapat dengan
mudah melakukan porting ke sistem operasi yang berbeda, seringkali dengan tidak
ada perubahan, daripada mengembangkan aplikasi baru untuk setiap sistem operasi.
Menurut Elron, Janousek, Joos (2009: 13) arsitektur Flash Lite adalah versi
Flash yang dioptimalkan dan termasuk komponen berikut:
1. Device API: Flash Lite memiliki akses ke beberapa layanan ponsel seperti
SMS, tingkat baterai, dan lain-lain dengan memanfaatkan fungsi
fscommand() dan fscommand2().
35
2. Network: HTTP dan HTTPS panggilan dapat dibuat untuk mengambil data,
menggunakan getURL() dan e-mail, menggunakan mailto.API lainnya,
seperti loadMovieNum(), loadVariables(), dan loadVariablesNum(), dapat
digunakan untuk mengambil data dan media pada saat runtime. SWX dan
XML keduanya didukung dengan Flash Lite 2 dan 3.
3. Drawing API: API ini memungkinkan penciptaan dinamis atau statistik dari
vektor grafis dan animasi.
4. Dynamic Data: data eksternal XML dapat dimuat dan diuraikan secara
langsung, serta menggunakan proxy bila diperlukan.
5. Persistent data: Anda dapat menyimpan objek-objek yang lokal atau mobile
di direktori sistem ponsel.
Adobe Flash Lite Player adalah runtime environment ringan yang
teroptimalisasi untuk ponsel, dan embedded portable device lainnya. Pemutarnya,
memungkinkan alat-alat non-PC ini untuk memainkan konten Flash Lite.
Berikut adalah beberapa kelebihan dari Adobe Flash Lite:
1. Friendly development environment, Adobe Creative Suite dan Device
Central menyediakan lingkungan yang baik untuk pengembangan perangkat
lunak mobile yang cepat dan pengujian interaktif yang luas antar target
device dan platform.
2. Vector support, selain mendukung Bitmap, Flash Lite memberikan
pengolahan gambar vector yang memungkinkan untuk scaling, rotasi,
dan transformasi.
36
3. Content portability, Flash lite adalah salah satu runtime mobile terbaik
untuk migrasi dari konten desktop ke dalam konten mobile dengan
sedikit perubahan.
4. Small file size, karena SWF adalah format biner, maka ukuran konten
dari flash lite sangatlah kecil, yang ideal untuk penggunaan pada
perangkat mobile dimana memory adalah komoditas yang sangat
berharga dalam perangkat mobile.
Sedangkan, beberapa kekurangan dari Adobe Flash Lite adalah:
a. Learning the tools, untuk pengembang baru, membutuhkan beberapa waktu
untuk mempelajari IDE, timeline dan konteks seperti movieClips, button.
Namun, memepelajari actionScript lebih mudah daripada mempelajari
bahasa pemrograman native (Symbian C++, Objective-C), dan memiliki
kemiripan dengan bahasa pemrograman Web javaScript.
b. Fragmentation, fragmentasi perangkat masih menjadi kendala diantara
platform flash Lite. Versi flash lite yang berbeda dapat menjadi kendala,
diantaranya kemampuan dari dari tiap versi yang berbeda, juga dukungan
actionScript yang berbeda di tiap versinya.
c. Developer adoption rate, Flash lite di adopsi oleh OEM dan data provider.
Di awal evolusinya, hanya terdapat sedikit pengembang dikarenakan
terbatasnya distribusi untuk menghasilkan keuntungan dari penjualan konten
Flash lite. Hal ini berubah di tahun 2008, setelah Adobe mengubah fokusnya
37
dari menjual Flash lite runtime kepada OEM ke membantu pengembang
untuk mengembangkan kontennya ke dalam jutaan perangkat yang telah
terpasang pemutar Flash Lite.
2.14 PHP
Menurut Dodit(2008: 5) PHP merupakan kependekan dari kata hypertext
preprocessor. PHP merupakan perangkat lunak open source yang diatur dalam
general purpose (GPL). PHP tergolong sebagai bahasa pemrograman yang berbasis
server (server side script). Ini berarti bahwa setiap skrip PHP diletakkan di server dan
diterjemahkan oleh web server terlebih dahulu, kemudian hasilnya dikirim ke klien.
Menurut Kasiman (2006: 15) beberapa kelebihan dari PHP adalah:
a. PHP difokuskan pada pembuatan skrip server side yang dapat
menghasilkan web dinamis.
b. PHP dapat digunakan pada semua sistem operasi, diantaranya Linux,
UNIX, Windows, Mac-OS, dll.
c. PHP juga mendukung banyak web server seperti apache, Microsoft
Internet Information Server, Netscape, dll.
d. PHP tidak terbatas pada hasil keluaran HTML, PHP juga memiliki
kemampuan untuk mengolah gambar, PDF, Flash Movie.
e. PHP mendukung banyak basis data, seperti MySql, Oracle, UNIX
DBM, dll.
38
2.15 MySql
Menurut Lans, Van der (2007:3), MySql adalah server basis data relasional
yang mendukung bahasa basis data SQL (structured query language). SQL adalah
basis data yang diformulasikan untuk memproses pernyataan dari server basis data.
Dalam hal ini, server basis data adalah MySql.
Menurut Sheldon dan Moes (2005:8) MySQL memungkinkan untuk
mengakses dan memanipulasi data dalam basis data, melindungi data dari korupsi dan
inkonsistensi, dan mempertahankan metadata yang diperlukan untuk mendefinisikan
data yang disimpan. Fitur yang dimiliki oleh MySQL adalah:
a. Skalabilitas
MySQL dapat menangani basis data besar yang telah ditunjukkan oleh
pelaksanaannya di organisasi seperti Yahoo!, Cox Communications, Google,
Cisco, Texas Instruments, UPS, Sabre Holdings, HP, dan Associated Press.
Bahkan NASA dan Biro Sensus Amerika Serikat telah menggunakan MySQL.
Menurut dokumentasi produk MySQL, beberapa basis data yang digunakan
oleh MySQL AB, perusahaan yang membuat MySQL, mengandung 50 juta
catatan, dan beberapa pengguna melaporkan bahwa basis data MySQL
mereka mengandung 60.000 tabel dan 5 miliar baris.
39
b. Portabilitas
MySQL berjalan pada berbagai macam sistem operasi, termasuk Unix, Linux,
Windows, QS / 2, Solaris, dan MacOS. MySQL juga dapat berjalan pada
arsitektur yang berbeda, mulai dari PC low-end hingga mainframe high-end.
c. Konektivitas
MySQL mendukung sepenuhnya jaringan TCP / IP socket, Unix socket, dan
lainnya. Selain itu, MySQL dapat diakses dari mana saja di Internet, dan
beberapa pengguna dapat mengakses basis data MySQL secara bersamaan.
MySQL juga menyediakan bermacam-macam Application Programming
Interface (APIs) untuk mendukung konektivitas dari aplikasi yang ditulis
dalam bahasa seperti C, C + +, perl, PHP, Java, dan Python.
d. Keamanan
MySQL mencakup sistem yang kuat untuk mengontrol akses ke data. Sistem
ini menggunakan host berbasis struktur yang mengendalikan siapa yang dapat
mengakses informasi spesifik dan tingkat akses informasi tersebut. MySQL
juga mendukung Secure Socket Layer (SSL) protokol untuk memungkinkan
koneksi terenkripsi.
e. Kecepatan
MySQL dikembangkan dengan kecepatan dalam proses data. Jumlah waktu
yang diperlukan sebuah MySQL basis data untuk menanggapi permintaan
untuk data secepat atau lebih cepat dari RDBMSs komersial lain. Situs
40
MySQLWeb (www.mysql.com) memberikan hasil tes benchmark banyak
yang menunjukkan hasil kecepatan menerima data dengan MySQL.
f. Mudah digunakan
MySQL mudah untuk menginstal dan menerapkannya. Seorang pengguna
dapat memiliki instalasi MySQL dan berjalan dalam beberapa menit setelah
mengunduh file. Bahkan pada tingkat administrasi, MySQL relatif mudah
untuk dioptimalkan, terutama dibandingkan dengan produk RDBMS lainnya.
g. Open-source code
MySQLAB membuat source code MySQL tersedia untuk semua orang untuk
diunduh dan digunakan. Open-source memungkinkan khalayak global untuk
berpartisipasi dalam review, pengujian, dan pengembangan kode.
41
BAB III
METODOLOGI PENELITIAN
3.1. Metode Pengumpulan Data
3.1.1 Studi Pustaka
Peneliti melakukan studi pustaka untuk mendapatkan informasi dan data dari
berbagai sumber seperti buku, artikel, dan internet. Perincian mengenai
sumber studi pustaka dapat dilihat di daftar pustaka.
3.1.2 Studi literatur
Peneliti menggunakan studi literatur untuk menentukan penelitian skripsi ini.
Berikut adalah penelitian yang telah dilakukan dan berkaitan dengan
penelitian skripsi ini.
Tabel 3.1 Studi Literatur
Nama penulis Judul penelitian Kelebihan Kekurangan
Galih Prasetya
Utama
Perancangan Sistem
Informasi Tanaman Obat
berbasis jaringan
Komputer
Mampu
menyediakan
informasi tanaman
secara lengkap
seputar definisi,
klasifikasi, kategori,
dan konfirmasi
seputar
Tidak
teroptimalisasi
untuk
penggunaan pada
perangkat ponsel.
---------------------
Pengguna tidak
dapat
42
tanaman obat. memberikan
umpan balik
untuk perbaikan
sistem
selanjutnya
Adi sofiyan
octananda
(peneliti)
Perancangan
pencarian aplikasi
khasiat tanaman obat
berbasis mobile
Mampu
menyediakan
informasi tanaman
obat melalui
platform mobile
yang terhubung
secara online
Hanya dapat
digunakan oleh
ponsel yang
sudah
mendukung flash
player 2.0 keatas
3.1.3. Studi Kelayakan
Menurut pressman, standar kualitas dari sebuah perangkat lunak dapat
ditentukan dengan berbagai cara, diantaranya mengacu kepada standar ISO
9126. Menurut standar ini, terdapat 6 faktor untuk penilaian sebuah perangkat
lunak. Diantaranya adalah:
1. Functionality
Adalah suatu set dari kemampuan sebuah perangkat lunak untuk
berjalan sesuai dengan fungsinya dan propertinya masing-masing.
Fungsi tersebut telah memenuhi tingkat kebutuhan tertentu, yang di
43
indikasikan dengan dengan sub atribut berikut: Suitability, Accuracy,
Interoperability, Security, Functionality, Compliance.
2. Reliability
Adalah waktu yang diperlukan untuk sebuah perangkat lunak untuk
mempertahankan performa dalam kondisi tertentu dalam waktu
tertentu. Di indikasikan dengan sub-atribut seperti: maturity, fault-
tolerance, recoverability, reliability compliance.
3. Usability
Adalah tingkat dimana dikatakan sebuah perangkat lunak tersebut
mudah digunakan. Seperti yang di indikasikan dengan atribut seperti:
understandability, learnability, operability.
4. Efficiency
Tingkat dimana sebuah perangkat lunak menggunakan resource-nya
secara optimal, di indikasikan dengan beberapa atribut seperti: time
behavior, resource behavior.
5. Maintainability
Kemudahan dalam sebuah perangkat lunak untuk diperbaiki, yang di
indikasikan dengan beberapa atribut seperti: analyzability,
changeability, stability, testability.
6. Portability
Kemudahan sebuah perangkat lunak untuk dapat berpindah dari
lingkungan satu ke lingkungan lain seperti di indikasikan dengan
44
beberapa atribut seperti: adaptability, installability, conformance,
replaceability.
3.2. Metode Pengembangan Aplikasi
Dalam pengembangan aplikasi mobile khasiat tanaman obat interaktif berbasis
multimedia, peneliti menggunakan metode incremental process model.
3.2.1 Komunikasi (Communication)
Tahapan ini merupakan aktivitas komunikasi dengan klien. Pada tahap
ini, peneliti melakukan komunikasi dengan dosen pembimbing untuk
rencana pembuatan aplikasi.
3.2.2 Perencanaan (Planing)
Tahap perencanaan merupakan aktivitas yang meliputi manajemen dan
pelaksanaan teknis, manajemen resiko, sumber daya yang dibutuhkan,
produk yang dihasilkan. Peneliti akan melakukan beberapa hal yang
diperlukan, yaitu:
1. Manajemen dan pelaksanaan teknis
Peneliti dalam hal ini, mengerjakan proyek perangkat lunak ini
sendiri, oleh karena itu, semua proses pengembangan harus
dilakukan oleh peneliti. Tugas teknis yang harus dilakukan peneliti
adalah:
- Pembuatan system requirement aplikasi.
45
- Pembuatan modeling aplikasi dengan menggunakan UML serta
pembuatan desain aplikasi.
- Coding dan Testing aplikasi.
- Deploying aplikasi yang telah dikembangkan, yaitu melakukan
upload aplikasi ke server.
2. Manajemen Resiko
Resiko yang mungkin dalam pengembangan aplikasi ini adalah:
a. Terjadinya down pada server yang mengakibatkan database
tidak dapat diakses oleh aplikasi. Hal ini menyebabkan aplikasi
tidak dapat berjalan sesuai yang diharapkan. Solusi yang dapat
dilakukan adalah mencari hosting yang memiliki tingkat
kestabilan yang baik sehingga database dapat di akses secara
terus menerus.
3. Sumber Daya
Sumber daya yang digunakan peneliti untuk mengembangkan
aplikasi ini adalah:
a. Komputer
Komputer yang digunakan peneliti adalah sebagai berikut:
Intel Pentium dual-core processor 1.73Ghz, memori 2GB,
Hard disk 120GB, VGA Mobile Intel Graphic Media
Accelerator X3100
46
b. Ponsel
Ponsel yang dapat digunakan untuk menjalankan aplikasi ini
adalah Nokia tipe 6300 dengan sistem operasi symbian dan
memiliki flash player versi 2.0.
c. Broadband Internet Connection.
4. Produk Akhir
Produk akhir yang dibuat berupa aplikasi yang dapat menampilkan
khasiat tanaman obat dan pengguna dapat memberikan umpan
balik untuk pengembangan aplikasi selanjutnya. Untuk
administrator, terdapat halaman khusus untuk mengakses feedback
dari pengguna, menambah data baru, maupun mengubah data yang
terdapat di basis data, dan juga manajemen pengguna.
3.2.3 Pemodelan (Modeling)
Pada tahap ini, peneliti melakukan beberapa hal yang berkaitan dengan
hal pemodelan, seperti perancangan usecase diagram, perancangan
layout, dan juga activity diagram.
3.2.4 Konstruksi (Construction)
Pada tahap ini, peneliti melakukan pengkodean dan
mengkonstruksikan sebuah aplikasi menggunakan perangkat lunak
yang telah ditentukan. Pada tahap ini juga dilakukan uji coba terhadap
aplikasi. Uji coba dilakukan dengan metode Black box.
47
3.2.5 Penyebaran (Deployment)
Kegiatan pengembangan meliputi tiga tindakan: pengiriman, dukungan, dan
umpan balik. Karena model proses perangkat lunak modern adalah evolusi
atau bertahap di alam, penyebaran terjadi tidak hanya sekali, tapi beberapa
kali selama perangkat lunak bergerak ke arah penyelesaian. Setiap siklus
pengiriman menyediakan pengguna dan pelanggan increment operasional
perangkat lunak yang menyediakan fungsi dan fitur yang dapat digunakan.
Setiap siklus dukungan menyediakan dokumentasi dan bantuan manusia
untuk semua fungsi dan fitur yang diperkenalkan selama seluruh siklus
dikembangkan. Setiap umpan balik pada siklus menyediakan tim perangkat
lunak dengan panduan penting bahwa hasil harus dilakukan modifikasi pada
fungsi, fitur, dan pendekatan yang diambil untuk increment berikutnya.
Perangkat lunak yang dikirimkan memberikan manfaat bagi pengguna akhir,
tapi juga memberikan umpan balik yang berguna untuk tim perangkat lunak.
Ketika suatu increment mulai digunakan, pengguna akhir harus didorong
untuk mengomentari fitur dan fungsi, kemudahan penggunaan, kehandalan,
dan karakteristik lain yang sesuai.
48
3.3.Kerangka berpikir
Dalam melakukan penelitian ini, peneliti melakukan tahapan-tahapan kegiatan
dengan mengikuti rencana kegiatan yang tertuang dalam kerangka berpikir meliputi
metode pengumpulan data dan metode pengembangan sistem
Studi Literatur dan studi pustaka
Gambar 3.1 Kerangka Berpikir
49
BAB IV
HASIL dan PEMBAHASAN
Dalam bab ini akan dipaparkan pembahasan atas identifikasi masalah yang
mengacu pada tujuan penelitian dan berlandaskan teori yang telah dipaparkan dalam
bab II. Pembahasan ini dilakukan untuk merancang bentuk dan isi Aplikasi Khasiat
Tanaman Obat.
4.1. Pengembangan Aplikasi
Metode pengembangan sistem yang dipakai dalam penelitian skripsi ini adalah
metode Incremental Process Model. Metode ini berfokus pada penyampaian produk
operasional pada setiap increment. Increment awal adalah versi stripped-down dari
produk akhir, tetapi produk tersebut memberikan kemampuan yang melayani
pengguna dan juga menyediakan platform untuk evaluasi oleh pengguna. Berikut
adalah pembahasan tahapan-tahapan lanjutan yang digunakan untuk pengembangan
Aplikasi Pencarian Khasiat Tanaman Obat ini.
4.1.1 Modeling
Pemodelan yang dibutuhkan peneliti dalam membangun aplikasi khasiat
tanaman obat, beberapa tahapannya yaitu:
50
4.1.1.1. Use Case Diagram
Peneliti merencanakan urutan kegiatan yang dilakukan actor dan sistem
untuk mencapai suatu tujuan tertentu. Walaupun menjelaskan kegiatan namun use
case hanya menjelaskan apa yang dilakukan actor dan sistem, bukan bagaimana actor
dan sistem melakukan kegiatan.
Gambar 4.1 UseCase diagram aplikasi khasiat tanaman obat.
51
Tabel 4.1 Usecase diagram aplikasi tanaman obat
No Requirment Actor Use case
1 Melakukan pencarian data tanaman
obat berdasarkan nama tanaman
maupun nama penyakit
User Search data
2 Melihat data tanaman obat baik khasiat
tanaman obat maupun gambar tanaman
obat melalui ponsel
User Lihat data
3 Memberi feedback melalui ponsel
dengan mengetikkan feedback di
bagian feedback
user Beri feedback
4 Melakukan penambahan data khasiat
tanaman obat dengan mengisi nama
tanaman, nama latin, kegunaan, dan
gambar tanaman obat
Admin Tambah data
5 Melakukan penghapusan data tanaman
obat
Admin Hapus data
52
6 Melakukan perubahan data tanaman
obat dengan mengganti nama tanaman,
nama latin, kegunaan, dan gambar
tanaman obat.
Admin Edit data
7 Melihat umpan balik dari pengguna
yang sudah terdaftar
Admin
Lihat feedback
8 Melakukan perubahan data admin
dengan mengganti username, password
yang baru
Admin Edit admin
53
4.1.1.2. Activity Diagram Aplikasi Khasiat Tanaman Obat
Adapun activity diagram aplikasi khasiat tanaman obat adalah sebagai
berikut.
54
Gambar 4.2 Activity Diagram untuk aplikasi mobile tanaman obat
55
Gambar 4.3 Activity Diagram modul Tanaman obat
56
Gambar 4.4 Activity Diagram modul feedback
57
Gambar 4.5 Activity Diagram modul admin
58
4.1.1.3. Sequence Diagram Aplikasi Khasiat Tanaman Obat
Adapun Sequence diagram sistem yang diajukan seperti pada gambar
dibawah ini.
Gambar 4.6 Sequence Diagram untuk aplikasi ponsel
59
Gambar 4.7 Sequence Diagram untuk modul tanaman obat
60
Gambar 4.8 Sequence Diagram untuk modul feedback
61
Gambar 4.9 Sequence Diagram untuk modul admin
62
4.1.1.4. Deployment Diagram Aplikasi Khasiat Tanaman Obat
Adapun Deployment diagram sistem yang diajukan seperti pada gambar
dibawah ini.
Gambar 4.10 Deployment Diagram untuk aplikasi tanaman obat di ponsel
Gambar 4.11 Deployment Diagram untuk aplikasi administrator khasiat
tanaman obat di web
63
4.1.1.5. Perancangan Basis Data
Berikut adalah perancangan basis data yang digunakan dalam sistem ini.
1. Tabel Tanaman
Yaitu tabel yang digunakan untuk menyimpan data tanaman obat. Tabel
ini terdiri dari 7 field, yaitu id_tanaman, nama_tanaman, id_admin,
id_latin, fungsi, pengolahan, gambar.
Tabel 4.2 tabel tanaman
Nama field Tipe Panjang Keterangan
Id_tanaman Int 5 Nomor tanaman
Nama_tanaman Varchar 50 Nama tanaman
Id_latin Varchar 50 Nama latin tanaman obat
Fungsi Varchar 30 Fungsi/kegunaan dari
tanaman obat
Pengolahan Text - Cara mengolah tanaman
obat
gambar Varchar 100 Nama gambar dari
tanaman obat
64
2. Tabel feedback
Yaitu tabel yang digunakan untuk menyimpan data umpan balik dari
user. Tabel ini memiliki 3 field, yaitu no_feedback, id_user, feedback.
Tabel 4.3 tabel feedback
Nama field Tipe Panjang Keterangan
No_feedback Int 5 Nomor feedback
Id_user Varchar 50 Username yang memberi
feedback
feedback text - Isi feedback
3. Tabel Admin
Yaitu tabel yang digunakan untuk menyimpan data admin. Tabel ini
memiliki 2 field, yaitu id_admin dan password
Tabel 4.4 tabel Admin
Nama field Tipe Panjang Keterangan
Id_admin varchar 50 Username untuk admin
password varchar 50 Password admin
65
4. Tabel modul
Yaitu tabel yang digunakan untuk menyimpan data modul yang
digunakan dalam halaman web. Tabel ini memiliki 4 field, yaitu
id_modul, nama_modul, link, urutan.
Tabel 4.5 tabel modul
Nama field Tipe Panjang Keterangan
Id_modul Int 5 Nomor modul
Nama_modul Varchar 50 Nama modul
Link Varchar 100 Berisi Link untuk tiap
modul. Link ini akan
ditampilkan dalam url
setiap membuka modul
yang bersangkutan.
urutan int 5 Urutan tiap modul dalam
web, berurutan dari atas
ke bawah
66
4.1.1.6. Analisis sistem
Proses analisis dalam penelitian ini mencakup analisis perlengkapan sistem
dan analisis user.
4.1.1.6.1. Analisis perlengkapan sistem
1. Perangkat lunak
Aplikasi ini merupakan suatu aplikasi untuk menampilkan data
tanaman obat beserta dengan khasiat serta cara meramunya yang di
impementasikan ke ponsel. Selain itu, terdapat pula aplikasi yang di
implementasikan di web server untuk memanajemen sistem.
Berdasarkan kebutuhan sistem secara umum, perangkat lunak yang
akan dibangun harus memenuhi kebutuhan sebagai berikut:
− Harus bisa memutar flash lite minimal versi 2.0
− Dapat berkomunikasi dengan server
Berdasarkan pertimbangan tersebut diatas, peneliti menggunakan
program Flash Lite dan PHP yang memiliki kemudahan dalam
pengaplikasian program tersebut.
2. Perangkat Keras
Perangkat keras yang digunakan peneliti dalam pembangunan sistem
ini adalah:
a. Personal Computer (PC)
67
Dalam pengembangan aplikasi ini dibutuhkan komputer yang
spesifikasi minimal sebagai berikut:
- Prosesor Intel Pentium dual-core processor 1.7 GHz
- Harddisk 120 GB
- RAM 2 GB DDR2
b. Handphone (HP) Dalam pengembangan aplikasi ini dibutuhkan handphone yang
spesifikasi minimal sebagai berikut:
- Symbian OS S40 3rd Edition
‐ Flash Lite 2.0 atau versi terbaru
4.1.1.6.2 Analisis User
User yang dapat terlibat dalam pengoperasian aplikasi ini baik mengakses
ataupun mengiput data-data ke dalam aplikasi ini. Adapun user yang terlibat dalam
sistem ini adalah sebagi berikut:
1. User
Berhak untuk melihat konten aplikasi, dan memberikan umpan balik.
2. Admin
Sebagai pengendali sistem secara langsung pada komputer. Bekerja
dan menjalankan serta aktifitas sistem serta melakukan manajemen
sistem.
68
4.1.1.7 Aljabar Relasional Aplikasi
π*(σfungsi = ‘%$flashname%’ (tanaman))
atau
σfungsi = ‘%$flashname%’ (tanaman)
Merupakan operasi query untuk mencari tanaman obat yang didasarkan
pada kegunaan penanganan penyakit tertentu yang di cari oleh user. Sebagai contoh
data, tersedia sebanyak 30 data penyakit. Data tersebut dapat ditambah atau
dilengkapi oleh admin.
π*(σnama_tanaman = ‘%$flashname%’ (tanaman))
atau
σnama_tanaman = ‘%$flashname%’ (tanaman)
Merupakan operasi query untuk mencari tanaman obat yang didasarkan
pada nama tanaman obat tertentu yang di cari oleh user. Sebagai contoh data, tersedia
sebanyak 30 data tanaman. Data tersebut dapat ditambah atau dilengkapi oleh admin.
69
4
i
y
d
4.1.2 Des
Sesu
interface de
yang nantiny
dijalankan le
sain
uai dengan
esign. Yang
ya akan digu
ewat web br
fungsi dar
pertama ada
unakan oleh
owser yang
ri aplikasi y
alah aplikas
h user, serta
digunakan o
yang peneli
i yang berja
yang berjala
oleh admin.
iti buat ter
alan pada pl
an pada platf
rdapat 2 jen
latform pons
tform PC ya
nis
sel
ang
44.1.2.1. T
A
d
Tampilan A
Aplikasi ini
dengan syara
Aplikasi pad
merupakan
at memiliki k
a Ponsel
aplikasi ya
kemampuan
ang terpasan
untuk memu
ng pada pon
utar Flash L
nsel penggun
ite 2.0
na,
aa. Menu uta
Gambar
utama in
tanaman
keluar ap
ama
4.12 beriku
ni terdapat
obat, feedb
plikasi.
ut ini adalah
empat bua
back, bantua
h interface
ah tombol,
an dan abou
menu utama
masing-ma
ut dan right
a. Pada me
asing berlab
softkey unt
nu
bel
tuk
Gammbar 4.12 hallaman menuu utama padaa ponsel
70
bb. Menu tan
Gambar 4
menampi
naman obat
4.13 berikut
ilkan data tan
adalah interf
naman obat,
rface yang b
, beserta keg
erfungsi unt
gunaanya.
tuk
c
Gambar
c. Menu car
Gambar
memasuk
Gamba
r 4.13 halam
ri nama tumb
4.14 beri
kkan pencari
r 4.14 halam
71
an menu tan
buhan
kut adalah
ian tentang t
man cari tana
naman obat p
h interface
anaman oba
aman obat pa
pada ponsel
yang ber
at.
rfungsi unttuk
ada ponsel
dd. Menu has
Gambar 4
nama pen
sil pencarian
4.15 adalah i
nyakit.
n nama tumb
interface yan
buhan
ng berfungsii sebagai hassil pencariann
Gambar 4.15 halamaan cari namaa penyakit paada ponsel
ee. Menu car
Gambar 4
pencarian
ri penyembu
4.16 adalah
n berdasarka
uhan penyaki
interface ya
an nama peny
it
ang berfung
yakit
gsi sebagai mmasukan unttuk
72
f
Gambar
f. Menu has
Gambar 4
nama pen
Gambar
4.16 halama
sil pencarian
4.17 adalah
nyakit
4.17 halama
73
an cari nama
n penyakit
interface ya
an cari nama
a penyakit pa
ang berfung
a penyakit pa
ada ponsel
gsi sebagai h
hasil pencariian
ada ponsel
gg. Menu fee
Gambar
memberik
edback
4.18 adalah
kan umpan b
h interface y
balik kepada
yang digunak
a admin.
kan oleh peengguna unttuk
h
Gam
h. Menu abo
Gambar
developer
G
mbar 4.18 ha
out
4.19 adala
rnya.
Gambar 4.1
74
alaman cari n
ah interface
nama penyakkit pada ponsel
e yang berrisi tentang aplikasi ddan
19 halaman aabout pada pponsel
i. Menu ban
Gambar
berkaitan
.
ntuan
4.20 adala
n dengan pen
ah interface
nggunaan ap
4
p
4.1.2.2. Ta
Ap
pengguna.
a.
Gam
ampilan apl
plikasi ini di
Login page
Gambar 4.2
akses ke ap
administra
mbar 4.20 h
likasi pada w
igunakan ole
e
21 adalah in
plikasi. Pada
tor.
75
halaman ban
web
eh administr
nterface yan
a hal ini, yan
yang beris
likasi
si tentang info-info yaang
ntuan pada poonsel.
rator untuk mmemanajemen konten ddan
ng bertujuan
ng memiliki
sebagai pen
hak akses t
nyeleksi unt
ersebut adal
tuk
lah
b. Home page
Gambar 4.2
dalam aplik
Gambar 4.
e
22 adalah in
kasi web.
Gamb
76
.21 halaman
nterface yang
bar 4.22 Me
login pada w
g berfungsi s
enu Utama
web
sebagai halaaman pembu
uka
c. Halaman d
Gambar 4.
memanajem
administra
menambah
ata tanaman
.23, 4.24, d
men konten/
tor dapat
h, maupun m
n obat
dan 4.25 ad
/isi dari ap
mengelola
merubah data.
dalah interfa
plikasi khasi
a data de
.
ace yang be
iat tanaman
ngan cara
erfungsi unt
n obat. Disi
menghapu
tuk
ni,
us,
Gambar 4.23 halaman tan web naman pada
77
Gambar 4
Gam
4.24 halaman
mbar 4.25 h
78
n tambah tan
halaman ubah
naman obat bbaru pada wweb
ada web h tanaman p
d. Admin pag
Gambar 4
memanajem
dan mengh
ge
4.26 dan
men data adm
hapusnya.
Gamba
Gambar 4
79
4.27 adala
min. Pada ha
ah interface
alaman ini, a
e yang be
admin dapat
ar 4.26 admi
4.27 ubah ad
in pada web
dmin pada w
erguna unt
t merubah da
tuk
ata
web
e. Feedback page
Gambar 4.28 adalah interface yang berfungsi untuk melihat umpan balik
dari pengguna aplikasi khasiat tanaman obat di ponsel. Admin dapat
menghapus data feedback.
Gambar 4.28 feedback pada web
4.1.3. Konstruksi
4.1.3.1. Coding
Pada tahap ini, dilakukan coding terhadap aplikasi yang akan di buat. Pada
aplikasi di ponsel, digunakan bahasa pemrograman flash yaitu actionscript.
Coding pada aplikasi di ponsel di tujukan untuk menghubungkan antar frame,
80
menghubungkan antara flash dengan file PHP, menetapkan semua variable yang
digunakan, serta membuat custom list untuk daftar tanaman obat yang sudah di
muat datanya ke dalam aplikasi. Sedangkan pada aplikasi web untuk
administrator, digunakan bahasa pemrograman PHP.
Aplikasi flash, disini berfungsi sebagai user interface yang berfungsi
menampilkan data dari PHP. Setiap data hasil pemrosesan dari PHP, baik berupa
pencarian data, maupun query tertentu dari basis data dimasukkan ke dalam flash
dalam bentuk variabel. Pada fitur pencarian data, digunakan operator
perbandingan string. Operator ini menggunakan metode algoritma simple pattern
matching. Jenis dari operator yang digunakan adalah LIKE, dimana operator ini
akan mencari pola yang cocok dari basis data dengan yang masukkan pengguna.
Selanjutnya digunakan wildcard (%) untuk mencocokkan semua number character,
bahkan karakter kosong (zero character).
4.1.3.2. Pengujian aplikasi dengan Blackbox Testing
Tabel berikut merupakan tabel hasil pengujian pada aplikasi.
Tabel 4.6 hasil pengujian dengan black box testing
No Rancangan proses Hasil yang diharapkan Hasil
1 Membuka aplikasi khasiat tanaman obat di ponsel
Masuk ke halaman utama aplikasi khasiat tanaman obat
sukses
2 Menekan right softkeys untuk keluar aplikasi
Keluar aplikasi Sukses
81
3 Menekan tombol navigasi (atas,
bawah, kiri, kanan) untuk memilih
menu
Menu yang akan dipilih terpilih dan muncul info mengenai menu yang di seleksi
Sukses
4 Menekan enter untuk memilih
menu
Memasuki menu yang dipilih Sukses
5 Memuat data tanaman obat
Data tanaman obat termuat ke aplikasi
sukses
6 Menekan tombol navigasi (atas bawah) untuk melihat konten
Dapat melihat Data tanaman obat yang terseleksi
sukses
7 Menekan tombol enter untuk melihat
gambar tanaman obat
Gambar muncul dan info peramuan di sembunyikan. Tombol navigasi di non aktifkan
sukses
8 Menekan tombol 1 untuk menutup
gambar
Gambar tertuup, info peramuan di tampilkan, tombol navigasi di aktifkan
sukses
9 Menekan tombol left softkeys untuk kembali ke menu
utama
Kembali ke menu utama sukses
10 Memasukkan teks pencarian nama
penyakit ke input text
Dapat melakukan pengetikan pada text input
sukses
11 Menekan tombol search untuk
memulai pencarian
Apabila data ditemukan, maka akan pindah ke halaman hasil, apabila tidak ditemukan akan muncul pesan
sukses
12 Hasil pencarian termuat ke aplikasi
Muncul hasil pencarian yang diinginkan
sukses
13 Memasukkan teks ke teks umpan balik
Dapat melakukan pengetikan pada text input
sukses
14 Menekan tombol submit pada menu
feedback
Apabila sukses, muncul pesan sukses, begitu pula sebaliknya
sukses
15 Membuka menu bantuan
Menu bantuan terbuka sukses
82
16 Membuka menu about
Menu about terbuka sukses
17 Login ke dalam web administrator
Apabila suskes akan menuju halaman utama, apabila gagal akan muncul status
sukses
18 Membuka menu tanaman obat
Menu tanaman obat terbuka sukses
19 Klik tambah data Membuka form tambah data tanaman obat
sukses
20 Melakukan pengisian data baru
Data tanaman obat bertambah sukses
21 Klik edit tanaman obat
Membuka form edit tanaman obat
sukses
22 Mengubah data tanaman obat
Data tanamana obat berubah sesuai masukan
sukses
23 Klik hapus Muncul notifikasi untuk menghapus data
sukses
24 Pilih hapus data tanaman obat
Data tanaman yang dipilih terhapus
sukses
25 Pilih menu admin Menu admin terbuka sukses
26 Klik edit data admin
Membuka form edit admin sukses
27 Melakukan perubahan data
admin
Data admin berubah sesuai dengan masukan
sukses
28 Pilih menu feedback
Menu feedback terbuka sukses
29 Klik hapus Muncul notifikasi untuk menghapus data
sukses
30 Pilih hapus data feedback
Data feedback yang dipilih terhapus
sukses
31 Klik next pada menu feedback untuk melihat
paging selanjutnya
Paging selanjutnya terbuka sukses
32 Klik last untuk membuka paging
terakhir
Paging terakhir terbuka sukses
33 Klik angka paging untuk membuka halaman paging
Paging halaman yang bersangkutan terbuka
sukses
83
yang bersangkutan 34 Klik previous untuk
membuka halaman paging sebelumnya
Paging sebelumnya terbuka sukses
35 Klik logut Logout dari aplikasi sukses
4.2 Studi Kelayakan
Berikut adalah studi kelayakan yang dilakukan oleh peneliti berdasarkan
hasil testing dari aplikasi ini didasarkan kepada standar ISO 9126
Tabel 4.7 Studi Kelayakan
No Faktor Sub atribut Studi kelayakan
1
Functionality
Suitability Terdapat fungsi-fungsi khusus yang
mengatur tugas tertentu. Dalam hal ini
ada fungsi yang mengatur behavior
tombol, memuat data ke dalam
aplikasi, fungsi pencarian, dll.
Accuracy Berfungsinya aplikasi sesuai dengan
fungsi yang diinginkan. Dalam hal ini,
semua fungsi yang dibuat telah
memenuhi fungsi yang diinginkan
Interoperability Kemampuan untuk bertukar data
lewat format yang sama, kemampuan
84
untuk membaca dan menulis file
format yang sama, dan menggunakan
protokol yang sama. Dalam hal ini,
aplikasi ini tidak mengeluarkan output
yang dapat disimpan di dalam device
pengguna dan tidak membaca/menulis
file baru.
Security Kemampuan untuk mencegah akses
tidak sah. Dalam hal ini, aplikasi pada
ponsel tidak dikenakan fitur login.
Namun pada administrator dikenakan
autentikasi pengguna.
Compliance Kemampuan untuk tunduk dan patuh
dibawah peraturan perindustrian atau
pemerintah. Dalam hal ini, aplikasi ini
tunduk dan patuh di bawah peraturan
yang berlaku.
2 reliability Maturity Subkarakteristik yang berfokus pada
tingkat kegagalan perangkat lunak.
Dalam hal ini, kegagalan pada
85
perangkat lunak hanya terjadi kepada
device yang belum mendukung
kemampuan pemutar Flash versi 2.x,
dan juga gangguan dari web server
Fault Tolerance Kemampuan untuk bertahan dari
kesalahan. Dalam hal ini, apabila
aplikasi di gunakan pada resolusi yang
lebih besar dari 240x320, maka
otomatis akan menyesuaikan diri
dengan ukuran resolusi layar yang
baru.
recoverability Kemampuan untuk bangkit dari
kegagalan untuk kembali berjalan
secara optimal. Dalam hal ini, apabila
terjadi kegagalan dalam komunikasi
data dengan server, maka diperluka
restart.
3 Usability Understandability Kemudahan penggunaan aplikasi oleh
pengguna. Dalam hal ini disediakan
teks bantuan untuk memberi tahu
86
fungsi tiap-tiap tombol, juga ada menu
bantuan untuk pengguna baru.
Learnability Usaha untuk memahami penggunaan
aplikasi. Dalam hal ini, tidak
diperlukan pengetahuan khusus untuk
menjalankan apikasi
operability Kemampuan untuk beropearasi di
lingkungan yang diberikan. Dalam hal
ini, penggunaan aplikasi hanya
ditujukan untuk device yang
mendukung pemutar Flash versi 2.0
keatas.
4 efficiency Time Behavior Menghitung waktu respon dari proses
yang dilakukan. Dalam hal ini, waktu
respon untuk memproses data dan
menampilkannya cukup baik.
Resource
behavior
Menghitung resource yang digunakan.
Dalam hal ini, setelah dilakukan
pengetesan memory yang digunakan,
aplikasi ini hanya menggunakan 30%-
50% dari resource device yang
87
memiliki 2MB RAM
5 maintainability Analyzability Kemampuan untuk menganalisa akar
masalah yang terdapat dalam
kegagalan perangkat lunak. Dalam hal
ini, apabila terdapat kegagalan akan
muncul pesan kegagalan.
Changeability Mengkarakterkan usaha yang
dibutuhkan untuk merubah sistem.
Dalam hal ini, untuk merubah sistem,
tidak diperlukan usaha yang cukup
besar, dikarenakan aplikasi ini masih
dalam skala kecil
Stability Mengkarakterkan dampak negatif dari
perubahan sistem yang terjadi. Dalam
hal ini, apabila terjadi kegagalan
dalam perubahan sistem, maka akan
muncul pesan kesalahan beserta
penjelasan kesalahannya
Testability Mengkarakterkan usaha yang
diperlukan untuk menguji perubahan
sistem. Dalam hal ini, pengujian dapat
88
dilakukan langsung pada device
maupun pada emulator
6 Portability Adaptability Kemampuan untuk beradaptasi pada
lingkungan yang baru. Dalam hal ini,
aplikasi akan beradaptasi dengan baik
dan menyesuaikan diri dengan ukuran
resolusi device yang diberikan
Installability Kemampuan untuk dengan cepat
meng-install ke device. Dalam hal ini,
tidak diperlukan pemasangan yang
rumit, cukup di taruh di device dan
jalankan.
Conformance Serupa dengan kepatuhan dalam
fungsionalitas, tapi karakteristik ini
berkaitan dengan portabilitas. Dalam
hal ini, basis data dari versi ini dapat
di export ke berbagai versi yang
mendukung basis data SQL
Replaceability Mengkarakterkan aspek plug and play
dari komponen perangkat lunak, yang
bagaimana mudahnya untuk
89
melakukan pertukaran komponen
perangkat lunak yang diberikan dalam
lingkungan tertentu. Dalam hal ini,
komponen perangkat lunak tidak
terpisah dengan perangkat lunak
utama.
90
BAB V
PENUTUP
5.1. Kesimpulan
Berdasarkan pembahasan pengembangan aplikasi pencarian data khasiat
tanaman obat secara keseluruhan dapat ditarik kesimpulan sebagai berikut:
1. Aplikasi pencarian khasiat tanaman obat berbasis mobile dapat dibuat
menggunakan incremental process model dan Adobe Flash CS4
dengan device yang mendukung flash player versi 2.0.
2. Aplikasi ini dapat memberi pengetahuan secara umum mengenai
kegunaan tanaman obat kepada masyarakat. Pengguna dapat mencari
kegunaan tanaman obat yang diinginkan, maupun sekedar melihat data
tanaman obat yang sudah tersedia.
3. Administrator dapat mengatur konten aplikasi mobile melalui halaman
administrasi berbasis web. Disini, administrator dapat menambah,
merubah, maupun menghapus konten, feedback.
91
5.2. Saran
Berdasarkan analisa yang dilakukan peneliti, maka saran yang dapat
peneliti terhadap pengembangan aplikasi ini, antara lain:
1. Pengembangan aplikasi pencarian khasiat tanaman obat kedepannya
mampu menambahkan fitur upload data dari pengguna, sehingga
pengguna dapat berkontribusi dengan menambahkan data baru. Selain
itu, perlu dipertimbangkan mengenai nilai komersil dari aplikasi.
2. Aplikasi yang digunakan untuk handphone merupakan aplikasi yang
dapat digunakan pada handphone yang lebih umum, misalnya
handphone yang mendukung Java.
92
DAFTAR PUSTAKA
"Application." Microsoft® Encarta® 2009 [DVD]. Redmond, WA: Microsoft
Corporation, 2008.
Aplikasi, http://storage.jak-
stik.ac.id/students/full%20paper/penulisan%20ilmiah/30403128/BAB%20II.pdf
diakses 29 april 2010
Elrom, Elad, Janousek, Scott & Joos, Thomas. 2009, AdvancED Flash on Devices
Mobile Development with Flash Lite and Flash 10, Berkeley: Friends of ED.
Gehrke, Johannes & Ramakrishnan, Raghu. 2003. Database Management System, 3rd
International Edition, New York: McGraw-Hill.
Hariana, Arief. 2009. 812 resep untuk mengobati 236 penyakit, Bogor: Penebar
Swadaya.
Hariyanto, Bambang. 2008. Dasar Ilmu Informatika dan Ilmu Komputer Disertai
Aksi-Aksi Praktis. Yogyakarta: Graha Ilmu.
O’leary Timothy J, O’leary Linda I. 2005. Computing essentials introductory edition.
New York: McGraw-Hill
Paranginangin, Kasiman. 2006. Aplikasi Web dengan PHP dan MySql. Yogyakarta:
Andi
93
94
Pressman, Roger S.. 2010, Software Engineering: A Practitioner's Approach, 7th
International edition. New York: McGraw-Hill.
Rumbaugh, James, Jacobson, Ivar, & Brooch, Grady. 2006, The Unified Modeling
Language Reference Manual, 2nd Edition, Westford: Pearson Education, Inc.
Sharon. Intro Into Mobile. http://uberthings.com/mobile/intro_to_mobile.pdf. diakses
29 april 2010
Sheldon, Robert and Geoff Moes. 2005. Beginning SQL. Indianapolis: Wiley
Publishing, Inc
Suprianto Dodit. 2008, Buku Pintar Pemrograman PHP, Bandung: Oase Media
Tim Redaksi Kamus Bahasa Indonesia. 2008. Kamus Besar Bahasa Indonesia.
Jakarta: Pusat Bahasa
Van der Lans, Rick F. 2007. SQL for MySql Developer. Boston: Pearson Education,
Inc.
Vaughan, Tay. 2008, Multimedia: Making it Work, 7th Edition. New York: McGraw-
Hill Osborne Media
Williams, Bryan & Stacey Sawyer. 2003. Using Information Technology: A Practical
Introduction to Computers and Communications. New York: McGraww-Hill
DAFTAR LAMPIRAN A-21
Frame “main menu” stop(); //Set Global script fscommand2("FullScreen", "true"); fscommand2("SetSoftkeys", "menu", "quit"); _focusrect = false; var menuListener:Object = new Object(); menuListener.onKeyDown = function() { if (Key.getCode() == ExtendedKey.SOFT1) { // Handle left soft keypress event. gotoAndStop("mainMenu"); } if (Key.getCode() == ExtendedKey.SOFT2) { fscommand2("Quit"); } if (Key.getCode() == Key.DOWN) { mytext.scroll++; } if (Key.getCode() == Key.UP) { mytext.scroll--; } }; // Create Selection listener object var focusListener:Object = new Object(); focusListener.onSetFocus = function(oldFocus, newFocus) { // Make sure focus has actually changed: if (oldFocus !== newFocus) { // Toggle selection indicator for two text fields: newFocus.borderColor = 0xFF0000; newFocus.border if (oldFocus != undefined) { oldFocus.borderColor = 0x000000; } } }; // Add listener to Selection object Selection.addListener(focusListener); Key.addListener(menuListener); trace (user);
herbal_btn.onRelease = function(){ gotoAndPlay("menuTumbuhan"); } herbal_btn.onRollOver = function(){ menuInfo.text = ("untuk melihat konten tanaman herbal") } feed_btn.onRelease = function(){ gotoAndPlay("menuFeedback"); } feed_btn.onRollOver = function(){ menuInfo.text = ("untuk mengisi feedback") } help_btn.onRelease = function(){ gotoAndPlay("bantuan"); } help_btn.onRollOver = function(){ menuInfo.text = ("untuk melihat menu bantuan") } about_btn.onRelease = function(){ gotoAndPlay("about"); } about_btn.onRollOver = function(){ menuInfo.text = ("untuk melihat menu tentang pembuat")} Frame “menu feedback” stop(); trace(user); Key.addListener(menuListener); url = "http://localhost/skripsi/feedback.php"; phpFeedProcess = new LoadVars(); varFeedSender = new LoadVars(); submit_btn.onRelease = function() { if ((user_ti.text != "") && (user_ti.text != " ")) { display.text = ("sedang mengirim feedback"); varFeedSender.userName = user_ti.text;
varFeedSender.konten = feedback_txt.text;
varFeedSender.sendAndLoad(url,phpFeedProcess,"POST"); phpFeedProcess.onLoad = function(success:Boolean) { if (success) { display.text =phpFeedProcess.result; } else { display.text = "gagal terkirim."; } }; } else { display.text = ("masukkan nama anda!"); stop();} Frame “Bantuan” stop(); Key.addListener(menuListener); Key.addListener(keyListener); var keyListener:Object = new Object(); keyListener.onKeyDown = function() { var keyCode = Key.getCode(); if (keyCode == Key.DOWN) { mytext.scroll++; } else if (keyCode == Key.UP) { mytext.scroll--; } }; Frame “Menu Tumbuhan” stop(); selection.setFocus(daftar_btn); daftar_btn.onRollOver = function() { menuInfo.text = "untuk melihat daftar tumbuhan obat"; }; daftar_btn.onRelease = function() { gotoAndPlay("listTumbuhan");
}; cari_btn.onRollOver = function() { menuInfo.text = "untuk mencari pengobatan penyakit"; }; cari_btn.onRelease = function() { gotoAndPlay("searchPenyakit"); }; cari2_btn.onRollOver = function() { menuInfo.text = "untuk mencari tanaman obat"; }; cari2_btn.onRelease = function() { gotoAndPlay("searchTanaman"); }; Frame “List Tumbuhan” stop(); var select_lv:LoadVars = new LoadVars(); var filepath:String; var arrayTanaman:Array = new Array(); var arrayPengolahan:Array = new Array(); var arrayGambar:Array = new Array(); var arrayIlmiah:Array = new Array(); var arrayFungsi:Array = new Array(); var arrayNomor:Array = new Array(); var listArray:Array = new Array(); var listArray2:Array = new Array(); var listArray3:Array = new Array(); var listArray4:Array = new Array(); var listArray5:Array = new Array(); var listArray6:Array = new Array(); var loading:Boolean = true; var viewImage:Boolean = false; var arrayIndex:Number; // track which item from listArray is shown in the first list item movie clip var firstVisibleListItem:Number = 0; // list item that currently has focus var listItemWithFocus:Number = 0; if (_url.indexOf("http") != 0) { filepath = "http://localhost/"; } else { filepath = "/scripts/"; }
// constants. TOTAL_LIST_ITEM_CLIPS may be changed // in initializeList(). MAX_VALUE_OF_FIRST_LIST_ITEM // is set in inititalizeList(); var TOTAL_LIST_ITEM_CLIPS:Number = 2; var MAX_VALUE_OF_FIRST_LIST_ITEM:Number; select_lv.onLoad = function(ok:Boolean) { getDataLoaded(); if (ok) { for (var i:Number = 0; i<this.n; i++) { arrayTanaman.push({nama_tanaman:this["nama_tanaman"+i]}); arrayPengolahan.push({pengolahan:this["pengolahan"+i]}); arrayGambar.push({gambar:this["gambar"+i]}); arrayIlmiah.push({id_latin:this["id_latin"+i]}); arrayFungsi.push({fungsi:this["fungsi"+i]}); arrayNomor.push({id_tanaman:this["id_tanaman"+i]}); } for (var j:Number = 0; j<arrayTanaman.length; j++) { var namaTanaman = arrayTanaman[j].nama_tanaman; if (!namaTanaman) { namaTanaman = " "; } var pengolahanTanaman = arrayPengolahan[j].pengolahan;
if (!pengolahanTanaman) { pengolahanTanaman = " "; } var gambarTanaman = arrayGambar[j].gambar; if (!gambarTanaman) { gambarTanaman = " "; } var namaIlmiah = arrayIlmiah[j].id_latin; if (!namaIlmiah) { namaIlmiah = " "; } var fungsiTanaman = arrayFungsi[j].fungsi; if (!fungsiTanaman){ fungsiTanaman = " "; } var idTanaman = arrayNomor[j].id_tanaman; if (!idTanaman){ idTanaman = " "; } listArray.push(namaTanaman); listArray2.push(pengolahanTanaman); listArray3.push(gambarTanaman); listArray4.push(namaIlmiah); listArray5.push(fungsiTanaman); listArray6.push(idTanaman); } if (listArray.length<TOTAL_LIST_ITEM_CLIPS) { TOTAL_LIST_ITEM_CLIPS = listArray.length;
} MAX_VALUE_OF_FIRST_LIST_ITEM = listArray.length-TOTAL_LIST_ITEM_CLIPS; populateList(); setListFocus(); trace (listArray5[0]); jumlah_data.text = this.n; infoLabel.loadInfo = listArray2[0]; infoLabel2.infoFungsi = listArray5[0]; arrayIndex=0; container._visible = false; infoLabel._visible = true; } }; // iterate through all of the list item movie clips inside the list and // assign the required value from the data source to the list item's text field function populateList() { var i:Number = 0; while (i<TOTAL_LIST_ITEM_CLIPS) { var targetMovieClip:MovieClip = list["listItem"+i]; var dataToAssign:String = listArray[firstVisibleListItem+i]; var dataToAssign2:String = listArray4[firstVisibleListItem+i]; var dataToAssign3:String = listArray6[firstVisibleListItem+i]; targetMovieClip.listTextField.text = dataToAssign; targetMovieClip.listTextField2.text = dataToAssign2; targetMovieClip.listTextField3.text = dataToAssign3; i++; } } function setListFocus() {
var targetMovieClip:MovieClip = list["listItem"+listItemWithFocus]; targetMovieClip.gotoAndStop("on"); } function clearListFocus() { var targetMovieClip:MovieClip = list["listItem"+listItemWithFocus]; targetMovieClip.gotoAndStop("off"); } function getDataLoaded() { now = Math.round(select_lv.getBytesLoaded()/select_lv.getBytesTotal()*100); infoByte = (now+"%"); loading = false; } select_lv.sendAndLoad(filepath+"test3.php",select_lv,"GET"); Key.addListener(menuListener) Frame “searchPenyakit” stop(); selection.setFocus(search_ti) var firstVisibleListItem:Number = 0; // list item that currently has focus var listItemWithFocus:Number = 0; // constants. TOTAL_LIST_ITEM_CLIPS may be changed // in initializeList(). MAX_VALUE_OF_FIRST_LIST_ITEM // is set in inititalizeList(); var TOTAL_LIST_ITEM_CLIPS:Number = 1;
var MAX_VALUE_OF_FIRST_LIST_ITEM:Number = 0; var k:Number; function populateList() { k = 0; while (k<TOTAL_LIST_ITEM_CLIPS) { var targetMovieClip:MovieClip = list["listItem"+k]; var dataToAssign:String = listArray[firstVisibleListItem+k]; var dataToAssign2:String = listArray4[firstVisibleListItem+k]; targetMovieClip.listTextField.text = dataToAssign; targetMovieClip.listTextField2.text = dataToAssign2; k = k+1; } } function setListFocus() { var targetMovieClip:MovieClip = list["listItem"+listItemWithFocus]; targetMovieClip.gotoAndStop("on"); } function clearListFocus() { var targetMovieClip:MovieClip = list["listItem"+listItemWithFocus]; targetMovieClip.gotoAndStop("off"); } selection.setFocus = search_ti; url = "http://localhost/skripsi/search.php"; php_process2 = new LoadVars(); varSender2 = new LoadVars(); search_btn.onRelease = function() { if ((search_ti.text != "")&&(search_ti.text != " ")) { display.text = ("sedang memuat data"); varSender2.cari = search_ti.text; search_tx = search_ti.text;
varSender2.sendAndLoad(url,php_process2,"POST"); php_process2.onLoad = function(success:Boolean) { if (success) { valReturn = php_process2.returnVal; trace("tipeof"+typeof (php_process2)); trace("return"+php_process2.returnVal); trace("return_i "+php_process2.jumlah); if (valReturn == "ok") { gotoAndPlay(57); } else { display.text = "data tidak ditemukan"; } } else { display.text = "error connecting to server"; } }; } else { display.text = "harap isi kolom pencarian"; } }; Key.addListener(menuListener);
Frame 57 stop(); var imageView:Boolean = false; var dataIndex:Number = 0; var tumbuhanArray:Array = new Array(); var ilmiahArray:Array = new Array(); var fungsiArray:Array = new Array(); var pengolahanArray:Array = new Array(); var gambarArray:Array = new Array(); var listArray:Array = new Array(); var listArray2:Array = new Array(); var listArray3:Array = new Array(); var listArray4:Array = new Array(); var listArray5:Array = new Array(); var arrayIndex:Number; for (var i:Number = 0; i<php_process2.jumlah; i++) { tumbuhanArray.push({nama_tanaman:php_process2["nama_tanaman"+i]}); pengolahanArray.push({pengolahan:php_process2["pengolahan"+i]}); gambarArray.push({gambar:php_process2["gambar"+i]}); ilmiahArray.push({id_latin:php_process2["id_latin"+i]}); fungsiArray.push({fungsi:php_process2["fungsi"+i]}); } for (var j:Number = 0; j<php_process2.jumlah; j++) { var namaTanaman = tumbuhanArray[j].nama_tanaman; if (!namaTanaman) { namaTanaman = " "; } var pengolahanTanaman = pengolahanArray[j].pengolahan; if (!pengolahanTanaman) { pengolahanTanaman = " "; } var gambarTanaman = gambarArray[j].gambar;
if (!gambarTanaman) { gambarTanaman = " "; } var namaIlmiah = ilmiahArray[j].id_latin; if (!namaIlmiah) { namaIlmiah = " "; } var fungsiTanaman = fungsiArray[j].fungsi; if (!fungsiTanaman) { fungsiTanaman = " "; } listArray.push(namaTanaman); listArray2.push(pengolahanTanaman); listArray3.push(gambarTanaman); listArray4.push(namaIlmiah); listArray5.push(fungsiTanaman); } if (listArray.length<TOTAL_LIST_ITEM_CLIPS) { TOTAL_LIST_ITEM_CLIPS = listArray.length; } MAX_VALUE_OF_FIRST_LIST_ITEM = listArray.length-TOTAL_LIST_ITEM_CLIPS; populateList(); setListFocus(); arrayIndex = 0; loadInfo.fungsi_dt = listArray5[0]; loadInfo2.pengolahan_dt = listArray2[0]; hasil.text = php_process2.jumlah; gambar_mc = php_process2.gambar0; container._visible = false; mod_admin.php <?php switch($_GET[act]){ // Tampil data admin default: echo "<h2>Admin</h2>
<table> <tr><th>no</th><th>username</th><th>aksi</th></tr> <p> </p>"; if ($_SESSION[leveluser]=='superadmin'){ echo "<input type=button value='Tambah Admin' onclick=location.href='?module=admin&act=tambahadmin'>"; $tampil = mysql_query("SELECT * FROM admin ORDER BY id_admin"); } else{ $tampil=mysql_query("SELECT * FROM admin WHERE id_admin='$_SESSION[namauser]' ORDER BY id_admin"); } $no=1; while ($r=mysql_fetch_array($tampil)){ echo "<tr><td>$no</td> <td>$r[id_admin]</td> <td><a href=?module=admin&act=editadmin&id=$r[id_admin]>Edit</a> </td></tr>"; $no++; } echo "</table> <p> </p>"; break; case "tambahadmin": echo "<h2>Tambah Admin</h2> <form method=POST action='./aksi.php?module=admin&act=input'> <table> <tr><td>Username</td> <td> : <input type=text name='id_admin'></td></tr> <tr><td>Password</td> <td> : <input type=password name='password'></td></tr> <tr><td colspan=2><input type=submit value=Simpan> <input type=button value=Batal onclick=self.history.back()></td></tr>
</table></form><br><br>"; break; case "editadmin": $edit=mysql_query("SELECT * FROM admin WHERE id_admin='$_GET[id]'"); $r=mysql_fetch_array($edit); echo "<h2>Edit Admin</h2> <form method=POST action=./aksi.php?module=admin&act=update> <input type=hidden name=id value='$r[id_admin]'> <table> <tr><td>Username</td> <td> : <input type=text name='id_admin' value='$r[id_admin]'></td></tr> <tr><td>Password</td> <td> : <input type=text name='password'> *) </td></tr> <tr><td colspan=2>*) Apabila password tidak diubah, dikosongkan saja.</td></tr> <tr><td colspan=2><input type=submit value=Update> <input type=button value=Batal onclick=self.history.back()></td></tr> </table></form>"; break; } ?> Mod_feedback.php <?php switch($_GET[act]){ // Tampil Berita default: echo "<h2>Feedback</h2> <table> <tr><th>no</th><th>user</th><th>feedback</th><th>aksi</th></tr>"; $p = new Paging; $batas = 5; $posisi = $p->cariPosisi($batas); $tampil = mysql_query("SELECT * FROM feedback ORDER BY id_user DESC limit $posisi,$batas"); $no = $posisi+1;
while($r=mysql_fetch_array($tampil)){ echo "<tr><td>$no</td> <td>$r[id_user]</td> <td>$r[feedback]</td> <td><a href=./aksi.php?module=berita&act=hapus&id=$r[id_user]\" onClick=\"return confirm('Apakah Anda benar-benar akan menghapus $r[feedback]?')\">Hapus</a></td> </tr>"; $no++; } echo "</table> <p> </p> <p> </p> <p> </p> <p> </p>"; $jmldata = mysql_num_rows(mysql_query("SELECT * FROM feedback")); $jmlhalaman = $p->jumlahHalaman($jmldata, $batas); $linkHalaman = $p->navHalaman($_GET[halaman], $jmlhalaman); echo "<div id=paging>$linkHalaman</div><br>"; break; } ?> Mod_tanaman.php <?php switch($_GET[act]){ // Tampil tanaman
default: echo "<h2>Tanaman</h2> <input type=button value='Tambah Data' onclick=location.href='?module=tanaman&act=tambahtanaman'> <table> <tr><th>no</th><th>tanaman</th<th>aksi</th></tr>"; $tampil = mysql_query("SELECT * FROM tanaman ORDER BY id_tanaman"); $no = 1; while($r=mysql_fetch_array($tampil)){ echo "<tr><td>$no</td> <td>$r[nama_tanaman]</td> <td><a href=?module=tanaman&act=edittanaman&id=$r[id_tanaman]>Edit</a> | <a href=./aksi.php?module=tanaman&act=hapus&id=$r[id_tanaman]\" onClick=\"return confirm('Apakah Anda benar-benar akan menghapus $r[nama_tanaman]?')\">Hapus</a></td> </tr>"; $no++; } echo "</table> <p> </p>"; break; case "tambahtanaman": $akhir = mysql_query("SELECT * FROM tanaman ORDER BY id_tanaman DESC LIMIT 1"); $s = mysql_fetch_array($akhir); $t =(int)$s[id_tanaman]; $u = $t+1; echo "<h2>Tambah tanaman obat baru</h2> <form method=POST action='./aksi.php?module=tanaman&act=input' enctype='multipart/form-data'> <table> <tr><td>nomor tanaman</td> <td> : <select
name='nomor'><option value=$u selected>$u</option></select></td></tr> <tr><td>nama tanaman</td> <td> : <input type=text name='tanaman' size=60></td></tr> <tr><td>nama ilmiah</td> <td> : <input type=text name='ilmiah' size=60></td></tr> <tr><td>kegunaan</td> <td> : <input type=text name='kegunaan' size=60></td></tr> <tr><td>pengolahan</td><td> : <textarea name='peramuan' cols=80 rows=18></textarea></td></tr> <tr><td>Gambar</td> <td> : <input type=file name='fupload' size=40> </p>gambar haruslah memiliki resolusi 240x145 diberi nama tanaman(id-1)</td></tr> <tr><td colspan=2><input type=submit value=Simpan> <input type=button value=Batal onclick=self.history.back()></td></tr> </table></form>"; break; case "edittanaman": $edit = mysql_query("SELECT * FROM tanaman WHERE id_tanaman='$_GET[id]'"); $r = mysql_fetch_array($edit); echo "<h2>Edit Tanaman</h2> <form method=POST enctype='multipart/form-data' action=./aksi.php?module=tanaman&act=update> <input type=hidden name=id value=$r[id_tanaman]> <table> <tr><td>nomor tanaman</td><td>: <input type=text name='nomor' size=3 value='$r[id_tanaman]'></select></td></tr> <tr><td>nama tanaman</td> <td> : <input type=text name='tanaman' size=40 value='$r[nama_tanaman]'></td></tr> <tr><td>nama ilmiah</td> <td> : <input type=text name='ilmiah' size=60 value='$r[id_latin]'></td></tr>
<tr><td>kegunaan</td> <td> : <input type=text name='kegunaan' size=60 value='$r[fungsi]'></td></tr> <tr><td>pengolahan</td><td> : <textarea name='peramuan' cols=80 rows=18 value='$r[pengolahan]'>$r[pengolahan]</textarea></td></tr> <tr><td>Gambar</td><td> : <img src='../skripsi/foto_tanaman/$r[gambar]'></td></tr> <tr><td>Ganti Gambar</td> <td> : <input type=file name='fupload' size=30> *)</td></tr> <tr><td colspan=2>*) Apabila gambar tidak diubah, dikosongkan saja, gambar haruslah memiliki resolusi 240x145.</td></tr> <tr><td colspan=2><input type=submit value=Update> <input type=button value=Batal onclick=self.history.back()></td></tr> </table></form>"; break; } ?> Index.php <html> <head> <title>:: TOGA - Halaman Administrator ::</title> <link href="../skripsi/config/adminstyle.css" rel="stylesheet" type="text/css" /> <style type="text/css"> <!-- .style1 {color: #006600} --> </style> </head> <body> <div id="header"> <div id="content"> <h2 class="style1">Login</h2> <form method="POST" action="cek_login.php"> <table> <tr><td>Username</td><td> : <input type="text" name="username"></td></tr>
<tr><td>Password</td><td> : <input type="password" name="password"></td></tr> <tr><td colspan="2"><input type="submit" value="Login"></td></tr> </table> </form> <p> </p> </div> <div id="footer">Administrator login page </div> </div> </body> </html> Aksi.php <?php session_start(); include "../skripsi/config/koneksi.php"; $module=$_GET[module]; $act=$_GET[act]; // Menghapus data if (isset($module) AND $act=='hapus'){ mysql_query("DELETE FROM ".$module." WHERE id_".$module."='$_GET[id]'");
header('location:media.php?module='.$module); } // Input admin elseif ($module=='admin' AND $act=='input'){ $pass=md5($_POST[password]); mysql_query("INSERT INTO admin(id_admin, password) VALUES('$_POST[id_admin]', '$pass')"); header('location:media.php?module='.$module); } //update Admin elseif($module=='admin' AND $act=='update'){ // Apabila password tidak diubah if (empty($_POST[password])) { mysql_query("UPDATE admin SET id_admin = '$_POST[id_admin]' WHERE id_admin = '$_POST[id]'"); } // Apabila password diubah else{ $pass=md5($_POST[password]); mysql_query("UPDATE admin SET id_admin = '$_POST[id_admin]', password = '$pass' WHERE id_admin = '$_POST[id]'"); } header('location:media.php?module='.$module); } // Update user elseif ($module=='user' AND $act=='update'){ // Apabila password tidak diubah if (empty($_POST[password])) { mysql_query("UPDATE user SET id_user = '$_POST[id_user]', email = '$_POST[email]'
WHERE id_user = '$_POST[id]'"); } // Apabila password diubah else{ $pass=md5($_POST[password]); mysql_query("UPDATE user SET id_user = '$_POST[id_user]', password = '$pass', email = '$_POST[email]' WHERE id_user = '$_POST[id]'"); } header('location:media.php?module='.$module); } //tambah data tanaman elseif ($module=='tanaman' AND $act=='input'){ $lokasi_file =$_FILES['fupload']['tmp_name']; $nama_file =$_FILES['fupload']['name']; $tipe_file =$_FILES['fupload']['type']; //apabila ada gambar yg di upload if (!empty($lokasi_file)){ //memeriksa tipe file if ($tipe_file != "image/jpeg" AND $tipe_file != "image/pjpeg"){ echo "Gagal menyimpan data !!! <br> Tipe file <b>$nama_file</b> : $tipe_file <br> Tipe file yang diperbolehkan adalah : <b>JPG/JPEG</b>.<br>"; echo "<a href=javascript:history.go(-1)>Ulangi Lagi</a>"; } else{ move_uploaded_file($lokasi_file,".../skripsi/foto_tanaman/$nama_file"); mysql_query("INSERT INTO tanaman(id_tanaman, nama_tanaman,
id_admin, id_latin, fungsi, pengolahan, gambar) VALUES ('$_POST[nomor]', '$_POST[tanaman]', '$_SESSION[namauser]', '$_POST[ilmiah]', '$_POST[kegunaan]', '$_POST[peramuan]', '$nama_file')"); } header('location:media.php?module='.$module); } //apabila tidak gambar ada yang di upload else { mysql_query("INSERT INTO tanaman(id_tanaman, nama_tanaman,
id_admin, id_latin, fungsi, pengolahan) VALUES ('$_POST[nomor]', '$_POST[tanaman]', '$_SESSION[namauser]', '$_POST[ilmiah]', '$_POST[kegunaan]', '$_POST[peramuan]')"); header('location:media.php?module='.$module); } } //edit data tanaman elseif ($module=='tanaman' AND $act=='update'){ $lokasi_file =$_FILES['fupload']['tmp_name']; $nama_file =$_FILES['fupload']['name']; $tipe_file =$_FILES['fupload']['type']; //apabila tidak ada gambar yang diganti if (empty($lokasi_file)){ mysql_query("UPDATE tanaman SET id_tanaman ='$_POST[nomor]',
nama_tanaman='$_POST[tanaman]', id_latin ='$_POST[ilmiah]', fungsi ='$_POST[kegunaan]', pengolahan ='$_POST[peramuan]' WHERE id_tanaman ='$_POST[id]'"); header('location:media.php?module='.$module); } //apabila gambar diganti else{ //memeriksa tipe file if ($tipe_file != "image/jpeg" AND $tipe_file != "image/pjpeg"){ echo "Gagal menyimpan data !!! <br> Tipe file <b>$nama_file</b> : $tipe_file <br> Tipe file yang diperbolehkan adalah : <b>JPG/JPEG</b>.<br>"; echo "<a href=javascript:history.go(-1)>Ulangi Lagi</a>"; } else { move_uploaded_file($lokasi_file,"../skripsi/foto_tanaman/$nama_file"); mysql_query("UPDATE tanaman SET id_tanaman ='$_POST[nomor]', nama_tanaman='$_POST[tanaman]', id_latin ='$_POST[ilmiah]', fungsi ='$_POST[kegunaan]', pengolahan ='$_POST[peramuan]', gambar ='$nama_file'
where id_tanaman ='$_POST[id]'"); } header('location:media.php?module='.$module); } }?> Search2.php <? $username="root"; $password="091088"; $database="skripsi"; $duplicated = false; $flashName = $_POST['cari']; mysql_connect("localhost",$username,$password) or die("Could not connect to database"); mysql_select_db($database) or die ("Could not select database"); $i = 0; $data = mysql_query("SELECT * FROM `tanaman` WHERE `nama_tanaman` LIKE '%$flashName%'"); $found = mysql_num_rows($data); if ($found > 0){ while ($row = mysql_fetch_array( $data )){ echo "nama_tanaman$i=$row[nama_tanaman]&id_latin$i=$row[id_latin]&fungsi$i=$row[fungsi]&pengolahan$i=$row[pengolahan]&gambar$i=$row[gambar]&jumlah=$found&"; $i++;} $nilai = "ok"; echo "returnVal=".$nilai; } else { $nilai = "notOK"; echo "returnVal=".$nilai;} ?> <? $username="root"; $password="091088"; $database="skripsi"; $duplicated = false; $flashName = $_POST['cari']; mysql_connect("localhost",$username,$password) or die("Could not connect to database"); mysql_select_db($database) or die ("Could not select database"); $i = 0;
$data = mysql_query("SELECT * FROM `tanaman` WHERE `fungsi` LIKE '%$flashName%'"); $found = mysql_num_rows($data); if ($found > 0){ while ($row = mysql_fetch_array( $data )){ echo "nama_tanaman$i=$row[nama_tanaman]&id_latin$i=$row[id_latin]&fungsi$i=$row[fungsi]&pengolahan$i=$row[pengolahan]&gambar$i=$row[gambar]&jumlah=$found&"; $i++; } $nilai = "ok"; echo "returnVal=".$nilai; } else { $nilai = "notOK"; echo "returnVal=".$nilai; } ?> Content.php <?php include "../skripsi/config/koneksi.php"; include "../skripsi/config/fungsi_combobox.php"; include "../skripsi/config/class_paging.php"; // Bagian Home if ($_GET[module]=='home'){ echo "<h2>Selamat Datang</h2> <p>Hai <b>$_SESSION[namauser]</b>, silahkan klik menu pilihan yang berada di sebelah kiri untuk mengelola konten</p> <p> </p> <p> </p> <p> </p> <p> </p>"; } // Bagian User elseif ($_GET[module]=='user'){ include "../skripsi/modul/mod_user.php"; } // Bagian Tanaman elseif ($_GET[module]=='tanaman'){ include ".../skripsi/modul/mod_tanaman.php"; }
// Bagian feedback elseif ($_GET[module]=='feedback'){ include "../skripsi/modul/mod_feedback.php"; } // Bagian Admin elseif ($_GET[module]=='admin'){
include "../skripsi/modul/mod_admin.php"; } // Apabila modul tidak ditemukan else{ echo "<p><b>MODUL BELUM ADA</b></p>"; } ?>