i
SubDin Kehewanan Dinas Pertanian dan Kelautan Kabupaten Kulon Progo
Skripsi
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika
FAKULTAS TEKNIK
Disusun oleh :
RADEN DARU MURTI TRI WINARSA 005314040
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
SubDin Kehewanan Dinas Pertanian dan Kelautan Kabupaten Kulon Progo
A Thesis
Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree
In Informatics Engineering
By:
RADEN DARU MURTI TRI WINARSA 005314040
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF ENGINEERING
SANATA DHARMA UNIVERSITY
v
Skripsi ini kupersembahkan untuk:
Tuhan Bapa dan Sahabatku, Jesus Christ. Terimakasih Jesus untuk cinta dan kasihmu, untuk penyertaanMu dalam setiap kehidupanku, sungguh Tuhan, aku tahu Engkau selalu besertaku. Terimakaih Engkau telah memampukan aku untuk mengerjakan segala sesuatu, menunjukkan jalan yang terbaik bagiku. Terimkasih untuk berkatMu yang melimpah dalam hidupku, dan aku tahu masa depanku dalam rancanganMu. Aku bersyukur…
Bapak dan Ibuku terkasih : R. Suparjono dan Endang Sri Purwati yang selalu mendukung dan mengajariku dengan kasihmu. Aku bangga menjadi puteramu, karena doa dan semangatmu aku jadi seperti sekarang ini. Maaf aku terlambat, tapi aku sekarang sudah selesai…
Mas Wiwin, Mas Krisna terimakasih buat dukungan dan pengalaman yang telah aku terima dari kalian. Itu semua membuatku sabar dan bertekun untuk dapat melakukan semua ini. Novi… adikku terkasih, terimakasih untuk dukungan dan ceriamu. Aku belajar banyak dari kehidupanmu, yang membuatku sadar bahwa Tuhan selalu beserta kita, menopang dan memampukan kita. Keep fire in Jesus!
vi
“Engkau hamba-Ku, Aku telah memilih engkau dan tidak menolak engkau”;
janganlah takut, sebab Aku menyertai engkau, janganlah bimbang, sebab Aku ini Allahmu;
Aku akan meneguhkan, bahkan akan menolong engkau;
Aku akan memegang engkau dengan tangan kanan-Ku yang membawa kemenangan.
( Yesaya 41:9b-10 )
Berdoa dan Berusaha, lakukan yang terbaik,
vii
tidak memuat karya atau bagian orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.
Yogyakarta, 26 Juli 2007 Penulis
viii
membantu petugas inseminasi (inseminator) dalam mengelola dan membuat laporan bulanan serta memberikan informasi perkembangan ternak sapi hasil inseminasi buatan bagi SubDin Kehewanan Dinas Pertanian dan Kelautan Kabupaten Kulon Progo. Penginputan data oleh inseminator yang dilakukan tiap hari ini memungkinkan diperoleh informasi perkembangan peternakan sapi yang lebih cepat dan penyampian laporan bulanan tepat waktu.
Sistem ini dikembangkan dengan menggunakan PHP dan MySQL. Dengan menggunakan PHP dan MySQL dapat dilakukan pengolahan data di server yang kemudian hasilnya dapat diperoleh pengguna lewat browser dalam bentuk HTML. PHP dapat membangun suatu web yang dinamis, interaktif, dan menarik seperti yang dibutuhkan dalam sistem ini.
ix
the development of artificial insemination produce of the livestock for SubDin Kehewanan DInas Pertanian dan Kelautan Kabupaten Kulon Progo. The input of the data by inseminator in everyday, enable to receive the information of cow livestock quickly and also conveying the report on time.
This system is developed by using PHP and MySQL. PHP and MySQL process the data in the server afterwards, the users can get the result via browser in HTML form. PHP can builds a web which are dynamic, interactive, and interesting as used in this system.
x
karena pada akhirnya skripsi yang mengambil judul : “Sistem Informasi Inseminasi Sapi Berbasis Intranet” ini dapat diselesaikan dengan sebaik – baiknya untuk memperoleh gelar sarjana dan merupakan penerapan dari berbagai ilmu pengetahuan yang diperoleh selama mengikuti perkuliahan di Jurusan Teknik Informatika, Fakultas Teknik Informatika, Fakultas Teknik, Universitas Sanata Dharma Yogyakarta.
Begitu besar bantuan yang telah diterima penulis hingga akhirnya skripsi ini dapat diselesaikan dengan baik, untuk itu pada kesempatan ini, penulis sangat ingin mengucapkan terimakasih yang sebesar – besarnya kepada:
1. Rm.Ir.Greg.Heliarko, S.J., S.S., B.S.T., M.A., M.Sc., selaku Dekan Fakultas Teknik Universitas Sanata Dharma Yogyakarta.
2. Ibu A.M.Polina, S.Kom., M.Sc., selaku Ketua Jurusan TeknikInformatika Fakultas Teknik Universitas Sanata Dharma Yogyakarta dan Pembimbing Tunggal, yang telah memberikan waktu untuk memberikan bimbingan.
3. Para Dosen dan Karyawan Fakultas Teknik Universitas Sanata Dharma yang telah membantu dalam banyak hal dan mau bersahabat dengan para mahasiswa.
xi
yang membuatku tetap semangat menjalani kehidupan ini.
7. Saudara – saudaraku seperjuangan, Mas Thomas,Anjar, Aris dan Ratna. 8. Rekan – rekan Citraweb, All of my Bos, Valens, Iwan, Novan. Terimakasih
untuk pengertian, support dan izinnya sehingga saya dapat menyelesaikan skripsi ini. Ronald dan Adi, thanks for your lesson.
9. Teman – temanku senasib seperjuangan, Joe-A, Danang, Candra, Gundul, Dewa, Lukas, Gina, Ratna, Vina. Perjuangan kita belum selesai, tetap semangat!
Akhir kata, semoga apa yang dibuat dan dihasilkan dari skripsi ini, walaupun ini belumlah sempurna, dapat digunakan dan dikembangkan sebaik – baiknya.
Yogyakarta, 26 Juli 2007
xii
2.3.1 Inseminasi Buatan ________________________ 31
2.3.2 Prosedur laporan ________________________ 32
xiii
4.1 Lingkungan implementasi 61
4.1.1 Lingkungan perangkat lunak 61
4.1.2 Lingkungan perangkat keras 62
4.2 Implementasi basis data 62
4.3 Implementasai program ________________________ 63
4.3.1 Prosedur login dan logout __________________ 63
4.3.2 Prosedur untuk administrator ____________ 64
4.3.3 Prosedur untuk inseminator ____________ 80
4.3.4 Prosedur untuk user umum __________________ 89
BAB V EVALUASI HASIL IMPLEMENTASI 5.1 Analisa Hasil dan manfaat 90
5.1.1 Bagi administrator ________________________ 90
5.1.2 Bagi inseminator ________________________ 91
5.2 Kelebihan dan kekurangan sistem 92
5.2.1 Kelebihan ______________________________ 92
5.2.2 Kekurangan ______________________________ 92
BAB VI PENUTUP 6.1 Kesimpulan 93
6.2 Saran 94 Daftar Pustaka
xiv
Gb 2-1 Karakteristik suatu sistem 9
Gb.2-2 Siklus informasi 10
Gb.2-3 Blok sistem informasi yang berintegrasi 12
Gb.2-4 Arsitekstur three-tier 14
Gb.2-5 Cara kerja PHP 16
Gb 3-1 Proses inseminasi buatan 6
Gb 3-2 Context diagram sistem 42
Gb 3-3 Diagram berjenjang sistem 43
Gb 3-4 Overview diagram sistem 44
Gb 3-5 Use case diagram sistem 45
Gb 3-6 E-R diagram sistem 46
Gb 3-7 Relasi antar tabel 47
Gb 3-8 Halamann utama 52
Gb 3-9 Halaman index administrator 53
Gb 3-10 Halaman inseminator 54
Gb 3-11 Managemen berita 55
Gb 3-12 Halaman laporan 55
Gb 3-13 Index inseminator 56
Gb 3-14 halaman edit inseminator 57
Gb 3-15 Halaman data peternak 57
Gb 3-16 Halaman data ternak 58
Gb 3-17 Halaman inseminasi 58
Gb 3-18 Halaman pemeriksaan kebuntingan 59
Gb 3-19 Halaman laporan 59
Gb 3-20 Laporan inseminasi buatan 60
Gb 3-21 Laporan pemeriksaan kebuntingan 60
Gb 4-1 Login 63
Gb 4-13 Menu laporan inseminasi 78
xv
Gb 4-19 Input peternak 84
Gb 4-20 Lihat data ternak 85
Gb 4-21 Input inseminasi 85
Gb 4-22 Input pemeriksaan kebuntingan 86
Gb 4-23 Laporan inseminasi dan kebuntingan 87
Gb 4-24 Laporan inseminasi 87
xvi
Tabel 3.2 Struktur table untuk table semen 48
Tabel 3.3 Struktur table untuk table inseminator 48 Tabel 3.4 Struktur table untuk table inseminasi 49
Tabel 3.5 Struktur table untuk table sapi 49
Tabel 3.6 Struktur table untuk table peternak 50 Tabel 3.7 Struktur table untuk table kebuntingan 50
Tabel 3.8 Struktur table untuk table ULIB 51
Tabel 3.9 Struktur table untuk table berita 51
1
1.1.Latar Belakang
PPIB (Paguyuban Petugas Inseminasi Buatan) ini merupakan organisasi dibawah naungan Dinas Pertanian dan Kelautan Sub Dinas Kehewanan Kulon Progo. Petugas Inseminasi (Inseminator) merupakan Pegawai Negeri Sipil dan swasta yang telah memiliki SIMI (Surat Izin Melakukan Inseminasi Buatan) di lingkungan Sub Dinas Peternakan Kulon Progo. PPIB ini bertujuan untuk memberikan pelayanan inseminasi buatan ternak sapi di wilayah Kulon Progo.
Masalah-masalah yang akan dibahas dalam Tugas Akhir ini dapat dirumuskan sebagai berikut:
1. Bagaimana sistem yang baru dapat membantu petugas inseminator dalam menata data, membuat dan menyampaikan laporan yang real time tentang kegiatan Inseminasi Buatan di wilayahnya masing – masing sehingga dapat menjadi acuan bagi Sub Din Kehewanan Kulon Progo dalam memantau kondisi peternakan di wilayahnya?
1.3.Batasan Masalah
Dalam pembuatan tugas akhir ini agar tidak terlalu meluas pada hal-hal yang tidak diinginkan, maka berikut ini di jabarkan beberapa batasan-batasan, sebagai berikut:
1. Studi kasus yang dilakukan dalam pengerjaan tugas akhir ini hanya terbatas pada ternak sapi hasil inseminasi buatan dalam wilayah kerja PPIB kabupaten Kulon Progo.
2. Sistem keamanan tidak di bahas dalam pengerjaan tugas akhir ini. 3. Program yang digunakan dalam pengerjaan tugas akhir ini
menggunakan PHP dan MySql untuk source code dan database-nya.
1.4.Tujuan dan Manfaat
menyampaikan laporan yang real time tentang kegiatan inseminasi buatan di wilayahnya masing – masing.
2. Membantu Dinas Pertanian dan Kelautan SubDin Peternakan dalam memantau perkembangan ternak sapi di wilayah kulon Progo.
1.5.Metodologi Penelitian
Metodologi penelitian yang digunakan dalam Tugas Akhir ini adalah studi kasus dengan metodologi pengembangan sistem secara terstruktur. Adapun tahap-tahap yang dilakukan adalah sebagai berikut:
1. Wawancara
Pada tahap ini dilakukan wawancara dengan petugas – petugas inseminator, Pembina PPIB dari SubDin Kehewanan Kulon Progo dan peternak sapi.
2. Studi pustaka
Tahap ini dilakukan untuk mempelajari dan memilih teknik pembuatan sistem yang akan digunakan dalam penyusunan tugas akhir ini.
3. Analisa sistem
Setelah dianalisis, kemudian dirancanglah sebuah sistem yang baru sesuai dengan kebutuhannya.
5. Implementasi sistem
Pada tahap ini dilakukan pembuatan program berdasarkan perancangan yang telah dilakukan.
6. Pengujian sistem
Program yang telah dibuat kemudian diuji untuk mengetahui apakah masih terdapat kesalahan dan kekurangan di dalamnya.
1.6.Sistematika Penulisan
Sistematika penulisan yang dilakukan dalam Tugas Akhir ini adalah sebagai berikut:
BAB I PENDAHULUAN
Pada bab ini dijelaskan tentang latar belakang dari penulisan, memberikan batasan dalam perancangan sistem serta mengetahui tujuan dan manfaat sistem informasi ternak sapi berbasis web.
BAB II LANDASAN TEORI
informasi secara keseluruhan.
BAB III ANALISIS DAN DESAIN SISTEM
Pada bab ini dijelaskan tentang analisis terhadap sistem yang lama dan sistem yang baru, dan juga desain dari sistem yang baru.
BAB IV IMPLEMENTASI SISTEM
Pada bab ini dijelaskan tentang implementasi programing berdasarkan pada analisis dan desain sistem yang telah ditentukan sebelumnya.
BAB V EVALUASI HASIL IMPLEMENTASI
Pada bab ini dibahas tentang evaluasi dari hasil pengimplementasian program, termasuk di dalamnya manfaat yang diberikan, dan kelebihan serta kekurangan dari program aplikasi yang telah dibuat.
BAB VI PENUTUP
6
LANDASAN TEORI
2.1 SISTEM INFORMSI
2.1.1.Konsep Dasar Sistem
Sistem dapat didefinisikan dengan menggunakan dua pendekatan (Charter dan Agtrisari, 2003), yaitu pertama, yang menekankan pada prosedur dan kedua, yang menekankan pada komponennya. Pada pendekatan pertama, sistem didefinisikan sebagai suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran atau tujuan tertentu. Jerry Fitz Gerald, Ardra F. Fitz Gerald dan Warren D. Stalling, Jr. mendefinisikan prosedur sebagai suatu urutan-urutan yang tepat dari tahapan-tahapan instruksi yang menerangkan apa (what) yang harus dikerjakan, siapa (who) yang mengerjakan, kapan (when) dikerjakan dan bagaimana (how) mengerjakannya. Sedangkan pada pendekatan kedua, sistem didiefinisikan sebagai kumpulan dari elemen-elemen yang berinteraksi untuk mencapai tujuan tertentu.
1. Komponen Sistem
Komponen – komonen sistem atau elemen – elemen sistem dapat berupa suatu susistem atau bagian – bagian dari sistem. Setiap susbsistem mempunyai sifat – sifat dari sistem untuk menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan. Komponen dari sistem ini dapat juga berupa sub sistem atau bagian dari sistem.
2. Batasan sistem
Batasan sistem (boundary) merupakan daerah yang membatasi antara suatu sistem dengan sistem yang lainnya atau dengan lingkungan luarnya.
3. Lingkungan Luar Sistem
Lingkungan luar ( environment ) dari suatu sistem adalah apapun di luar batas dari sistem yang mempengarui operasi sistem. Lingkungan luar sistem ini dapat memberikan kontribusi positif atau dapat juga negatif.
4. Penghubung Sistem
Penghubung sistem (interface) merupakan media penghubung antara subsistem dengan subsistem lainnya. Keluaran dari satu subsistem dapat menjadi masukan untuk subsistem yang lain dengan melalui penghubung. Dengan penghubung satu subsistem dapat berinteraksi dengan subsistem yang lainnya membentuk satu kesatuan.
Masukan sistem adalah energi yang dimasukkan ke dalam sistem. Masukan dapat berupa masukan perawatan (maintenanceinput) dan masukan sinyal (signal input). Masukan perawatan adalah energi yang dimasukkan supaya sistem tersebut dapat beroperasi. Masukan sinyal adalah energi yang diproses untuk didapatkan keluaran.
6. Keluaran sistem
Keluaran sistem merupakan hasil dari energi yang diolah dan diklasifikasikan menjadi keluaran yang beruna. Keluaran ini dapat menjadi masukkan untuk subsistem yang lainnya.
7. Pengolahan sistem
Pengolahan pada suatu sistem menjadi bagian yang akan mengubah masukkan menjadi keluaran.
8. Sasaran sistem
Sasaran sistem merupakan tujuan yang hendak dicapai oleh suatu sistem. Jika suatu sistem tidak memiliki sasaran, maka operasi pada sistem tidak akan ada gunanya. Sasaran ini akan sangat menentukan masukkan yang dibutuhkan sistem dan keluaran yang harus dihasilkan. Suatu sistem dikatakan berhasil jika sasaran atau tujuan telah tercapai.
Gambar 2.1. Karakteristik suatu sistem
2.1.2.Konsep Dasar Informasi
Menurut Robert N. Anthony dan John Dearden (Jogiyanto, 2001), informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya. Data adalah kenyataan yang menggambarkan suatu kejadian-kejadian dari kesatuan nyata. Kejadian nyata adalah sesuatu yang terjadi pada saat tertentu. Sedangkan kesatuan nyata adalah berupa suatu objek nyata, seperti tempat, benda dan orang yang benar-benar ada.
Data akan ditangkap sebagai input, diproses kembali lewat suatu model dan seterusnya membentuknya suatu siklus. Oleh John Burch (jogiyanto,2001), siklus ini disebut dengan siklus informasi (information
Input Prose Outp
Lingkungan l
Penghubun g/ Batasan sistem
Sub Sistem
Sub Sistem
Sub Sistem Sub
cycle). Siklus ini disebut juga dengan siklus pengolahan data (data processing cycles).
Gambar 2.2. Siklus informasi
Dari gambar tersebut, dapat dijelaskan bahwa data merupakan bentuk yang mentah dan tidak dapat bercerita banyak. Data diolah melalui suatu model untuk menghasilkan informasi, yang kemudian diterima oleh penerima. Informasi tersebut oleh penerima digunakan sebagai masukkan untuk mengambil keputusan dan melakukan tindakan-tindakan yang sesuai dengan keputusan tersebut. Dari tindakan-tindakan ini akan dihasilkan pula data-data yang kemudian ditangkap dan menjadi masukkan untuk diolah kembali.
Menurut John Burch dan Gary Grudnitski (Jogiyanto,2001), kualitas dari informasi tergantung pada 3 (tiga) hal, yaitu :
Proses (model)
Output (Informatio
Penerima
Keputusan Tindakan Hasil
Tindakan Data
(ditangkap) Input (data)
1) Akurat (accurate)
Bebas dari kesalahan dan tidak bias atau menyesatkan. Jelas mencerminkan maksudnya.
2) Tepat pada waktunya (timeliness)
Tidak boleh terlambat, informasi yang sudah usang tidak akan mempunyai nilai lagi.
3) Relevan (relevance)
Mempunyai manfaat untuk pemakainya.
Nilai dari informasi (value of information) ditentukan dari dua hal, yaitu : manfaat dan biaya mendapatkannya. Sutau informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya. Namun informasi tidak dapat persis ditaksir keuntungannya dengan suatu nilai uang, tetapi dapat ditaksir dari nilai efektivitasnya.
2.1.3.Konsep Dasar Sistem Informasi
Sistem informasi didefinisikan oleh Robert A. Leitch dan K. Roscoe Davis sebagai berikut :
Sistem informasi adalah suatu sistem didalam suatu organisasi yang
mempertemukan kebutuhan pengolahan transaksi harian, mendukung
operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi
dan menyediakan pihak tertentu dengan laporan-laporan yang
John Burch dan Gary Grudnitski mengemukakan bahwa sistem informasi terdiri dari komponen – komponen yang disebut dengan istilah blok bangunan (building block).blok bangunan tampak pada gambar dibawah ini :
Gambar 2.3. Blok sistem informasi yang berintegrasi
1) Blok masukan (input block)
Input mewakili data yang masuk kedalam sistem informasi. Termasuk metode-metode dan media untuk menangkap data yang akan dimasukkan, yang dapat berupa dokumen-dokumen dasar.
2) Blok model (model block)
Terdiri dari kombinasi porsedur, logika dan model matematik yang akan memanipulasi data input dan data yang tersimpan dibasis data dengan cara yang sudah tertentu untuk mengahasilkan keluaran yang diinginkan.
pemakai pemakai
pemakai pemakai
pemakai pemakai
input
teknologi Basis
3) Blok keluaran (output block)
Merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem.
4) Block teknologi (technology block)
Digunakan untyk menerima input, menjalankan model, menyimpan dan mengakse data, manghasilkan dan mengirimkan keluaran dan membantu pengendalian dari sistem secara keseluruhan.
5) Blok basis data (database block)
Data perlu disimpan didlam basisdata untuk keperluan penyediaan informasi lebih lanjut. Organsasi basis data yang baik berguna untuk efisiensi kapasitas penyimpannya. Basis data diakses dengan mengunakan DBMS (Database Management System)
6) Blok kendali (controls block)
Beberapa pengendalian perlu dirancang dan diterapkan untuk meyakinkan bahwa hal-hal yang dapat merusak sistem dapat dicegah, atau jika sudah terlanjur terjadi kesalahan dapat langsung dicegah. Sebagai suatu sistem ke enam blok tersebut masing-masinng saling berinteraksi satu dengan yang lainnya membentuk satu kesatuan untuk mencapai sasarannya.
2.1.4. Sistem Informasi Berbasis Web
mendukung operasi, bersifat managerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan – laporan yang diperlukan dengan interaksi secara langsung dan beroperasi pada sebuah browser aplikasi dan teknilogi internet (Whitten, 2005).
2.1.5. Three-Tier technology
Aplikasi database web dibangun dilingkungan model three-tier architecture. Aplikasi three-tier technology meliputi tiga layer (lapisan), yaitu client tier, middle tier, dan database tier. Arsitektur dari teknologi three-tier ini dapat dilihat seperti gambar 2.4 berikut:
Client tier
middle tier
Database tier
Gambar 2.4 Arsitektur Three-tier
internet
Scripting
engine scripts
2.2 PHP DAN MYSQL
2.2.1 PHP
PHP adalah salah satu bahasa pemrograman untuk membuat web dengan teknologi server-side ( server-side technologies ). PHP digunakan untuk membuat halaman web yang dinamis dan interaktif.
PHP dibangun sekitar tahun 1994 oleh Rasmus Lerdoff. PHP versi 3 ditulis ulang oleh Zeev Suraski dan Andi Gutmans pada tahun 1998. PHP bekerja hampir sama seperti JSP, ASP dan CGI. Skrip diawali dengan tag
a. Cara kerja PHP
w eb server
client
Gambar 2.5 Cara kerja PHP
Saat ada permintaan suatu halaman dari browser klien, server web akan melakukan 3 langkah:
• membaca permintaan browser.
• mencari halaman html yang diminta di server.
• mengeksekusi perintah PHP sehingga halaman html termodifikasi • mengirim halaman html yang diminta ke browser klien melalui
media internet atau intranet.
Setelah halaman html diterima oleh klien, browser klien akan menerjemahkan halaman html tersebut ke bentuk web.
b. Penulisan PHP
Tata cara penulisan php:
c. Variabel
Seperti semua bahasa pemrograman, PHP dapat menyimpan data ke dalam suatu variabel, lalu untuk mengakses data tersebut, dilakukan dengan cara memanggil variabel tersebut. Sintaks dasar PHP mirip dengan sintak bahasa C sehingga bersifat case sensitif.
PHP juga menyediakan sintaks pengisian variabel dengan metode
assign by reference.
• Variabel Lokal dan Global
Konsep variabel lokal dan global pada PHP agak berbeda sedikit dengan bahasa C. Perhatikan dua buah latihan berikut.
Pada PHP juga dikenal variabel statis. Variabel statis dikenal didalam fungsi lokal. Salah satu penggunaanya adalah penggunaan dalam fungsi rekursif.
d. Tipe Data
PHP mempunyai 6 tipe data. Empat tipe skalar:
• boolean • integer
• floating-point number (float) • string
Dua tipe gabungan: • array
e. Operator
Operator di PHP sama dengan operator di C. Arithmetic Operators
Example Name Result
$a + $b Addition Sum of $a and $b. $a - $b Subtraction Difference of $a and $b. $a * $b Multiplication Product of $a and $b. $a / $b Division Quotient of $a and $b.
$a % $b Modulus Remainder of $a divided by $b. Comparison Operators
Example Name Result
$a = = $b Equal TRUE if $a is equal to $b.
$a = = = $b Identical TRUE if $a is equal to $b, and they are of the same type. (PHP 4 only)
$a != $b Not equal TRUE if $a is not equal to $b.
$a <> $b Not equal TRUE if $a is not equal to $b.
$a !== $b Not identical TRUE if $a is not equal to $b, or they are not of the same type. (PHP 4 only) $a < $b Less than TRUE if $a is strictly less than $b.
$a > $b Greater than TRUE if $a is strictly greater than $b.
$a <= $b Less than or
equal to TRUE if $a is less than or equal to $b. $a >= $b Greater than
or equal to TRUE if $a is greater than or equal to $b.
f. Struktur Kendali: If ….. dan If ….. then …… else ……
Struktur kendali di PHP hampir sama dengan struktur kendali di C. I f ( parameter logika)
Statement benar
Else
g. Form HTML (GET dan POST)
Saat sebuah form dikirim/submit ke sebuah skrip PHP, variabel dari form tersebut akan dapat dibaca oleh skrip PHP tersebut. Jika konfigurasi variabel global PHP di-on-kan maka variabel form tersebut akan terletak dalam array variabel $HTTP_POST_VARS, $HTTP_GET_VARS, dan/atau $HTTP_POST_FILES,tergantung dari
sumber variabel tersebut. Perhatikan contoh di bawah ini! Contoh 1. Simple form variable
<form action="foo.php" method="post">
Name: <input type="text" name="username"><br> <input type="submit">
</form>
Saat form tersebut dikirimkan, nilai dari masukan text akan berada di variabel $HTTP_POST_VARS['username']. Jika konfigurasi
register_globals di-on-kan, maka variabel $username akan dapat diakses secara global. PHP juga dapat menerima variabel array form.
Perhatikan contoh berikut.
Contoh 2. More complex form variables
<form action="array.php" method="post">
Name: <input type="text" name="personal[name]"><br> Email: <input type="text" name="personal[email]"><br>
Beer: <br>
<select multiple name="beer[]"> <option value="warthog">Warthog <option value="guinness">Guinness
<option value="stuttgarter">Stuttgarter Schwabenbräu
<input type="submit"> </form>
h. Array / Larik
Array atau larik di PHP mirip dengan larik di bahasa C. Indeks larik dimulai dari indeks 0. Untuk menginisialisasi larik, ada beberapa cara yang dapat dilakukan. Perhatikan contoh di bawah ini:
$b[] = 'a'; $b[] = 'b'; $b[] = 'c';
Array diatas akan setara dengan inisialisasi array seperti di bawah ini:
$b[0] = 'a';
$b[1] = 'b';
$b[2] = 'c';
2.2.2 MySQL
MySQL adalah multi user database yang menggunakan bahasa
Structured Query Language (SQL). MySQL dalam operasi client-server
melibatkan server daemon MySQL disisi server dan berbagai macam program serta library yang berjalan disisi client. MySQL mampu untuk menangani data yang cukup besar. Perusahaan yang mengembangkan MySQL yaitu TcX, mengaku mampu menyimpan data lebih dari 40
database, 10.000 tabel dan sekitar 7 juta baris, totalnya kurang lebih 100
Gigabytes data. Informasi selengkapnya tentang MySQL dapat dilihat di www.mysql.com.
SQL adalah bahasa standar yang digunakan untuk mengakses server
diadopsi dan digunakan sebagai standar industri. Dengan menggunakan SQL,
proses akses database menjadi lebih user-friendly dibandingkan dengan
menggunakan dBASE atau Clipper yang masih menggunakan perintah-perintah
pemrograman.
a. Database, tabel, baris, dan kolom
Dalam konteks bahasa SQL, pada umumnya informasi tersimpan dalam
tabel-tabel yang secara logik merupakan struktur dua dimensi yang terdiri
atas baris-baris data yang berada dalam satu atau lebih kolom. Baris pada
tabel sering disebut sebagai instance dari data, sedangkan kolom sering
disebut sebagai attributes atau field. Keseluruhan tabel itu dihimpun dalam
satu kesatuan yang disebut database.
kolom 1 kolom 2 . . . kolom m
b. Tipe Data pada MySQL
Berikut ini tabel tipe data yang dapat digunakan untuk field-field tabel pada
database MySQL.
Tabel Tipe Data pada MySQL
Tipe Data Keterangan Ukuran
TINYINT[(M)]
[UNSIGNED]
[ZEROFILL]
Integer yang sangat kecil.
Signed range –128 – 127
Unsigned range 0 –255.
SMALLINT[(M)]
[UNSIGNED]
[ZEROFILL]
Integer yang kecil.
Signed range –32768 – 32767
Unsigned range 0 –65535.
2
MEDIUMINT[(M)]
[UNSIGNED]
[ZEROFILL]
Integer dengan ukuran sedang.
Signed range –8388608 –8388607
Unsigned range 0 – 16777215.
3
INT[(M)]
[UNSIGNED]
[ZEROFILL]
Data numeris yang tidak memiliki komponen desimal
atau disebut juga bilangan bulat. Signed range –
2147483648 – 2147483647
Unsigned range 0 – 4294967295.
4
BIGINT[(M)]
[UNSIGNED]
[ZEROFILL]
Integer dengan ukuran yang besar.
Signed range –9223372036854775808 –
9223372036854775807
Unsigned range 0 – 18446744073709551615.
8
FLOAT(Precision) Bilangan pecahan. FLOAT (4) adalah single precision
dan FLOAT (8) adalah double precision (lihat juga
DOUBLE).
Range –3.402823466E+38F – -1.175494351E-38, 0,
-1.175494351E-38 – 3.402823466E+38F.
4
FLOAT[(M,D)] Bilangan floating point/pecahan kecil. Tidak boleh
unsigned.
Range –3.402823466E+38F – -1.175494351E-38, 0,
-1.175494351E-38 – 3.402823466E+38F.
4
DOUBLE
PRECISION[[M,D]]
Bilangan floating point/pecahan normal atau bilangan
real.Tidak boleh unsigned 8
REAL[(M,D)]
DECIMAL[(M,D)]
Sama seperti DOUBLE. Tidak boleh unsigned. Range
sama seperti DOUBLE. Berkelakuan seperti CHAR. 8
M+D
NUMERIC[(M,D)] Sama seperti DECIMAL. M+D
TIMESTAMP[(M)] Timestamp/tanda waktu otomatis. Berisi waktu pada
saat tabel diakses, dalam UNIX time. 4
DATE Untuk menyimpan informasi tanggal.
Format : ‘YY-MM-DD’, ‘YYYY-MM-DD’, dan
‘YYMMDD’.
Range 0000-00-00 to 9999-12-31.
4
TIME Untuk menyimpan informasi waktu.
Format : ‘HH:MM:SS, ‘HHMMSS’, ‘HHMM’, ‘HH’ 3
DATETIME Untuk menyimpan informasi tanggal dan waktu.
Format : “YYYY-MM-DD HH:MM:SS”.
Range ‘0000-01-01 00:00:00’ – ‘9999-12-31
23:59:59’.
YEAR Informasi tahun. 1
CHAR(M)[binary] String dengan panjang tetap, selalu tersimpan sesuai
dengan panjang yang ditentukan. Range 1 – 255
karakter. Seluruh space akhiran dibuang saat
di-retriev. Di-sortir dan dibandingkan secara case
insentive kecuali jika diberikan binary keyword.
M
VARCHAR(M)
[binary]
String dengan panjang variable, tersimpan sesuai
dengan panjangnya saat itu. Range 1 – 255 karakter.
Seluruh space akhiran dibuang saat di-retriev.
Di-sortir dan dibandingkan secara case insentive kecuali
jika diberikan binary keyword
L+1
TINYBLOB
TINYTEXT
Teks dengan ukuran yang pendek.
Dengan panjang maksimum 255 karakter L+1
BLOB
TEXT
Deretan karakter yang panjang. Biasa dipakai sebagai
pengganti format data text karena keterbatasan ukuran
format text. Dengan panjang maksimum 65535
karakter
L+2
MEDIUMBLOB
MEDIUMTEXT
Teks dengan ukuran yang sedang. Dengan panjang
maksimum 16777216 karakter L+3
LONGBLOB
LONGTEXT
Teks dengan ukuran yang panjang.
Dengan panjang maksimum 4294967295 karakter L+4
ENUM Objek string yang hanya boleh mempunyai satu nilai
dari nilai yang dimungkinkan (atau NULL). 1 / 2
SET Objek string yang dapat mempunyai lebih dari satu
nilai dari nilai yang dimungkinkan (atau NULL). 1 - 8
c. Mengoneksikan User dengan Server
Untuk mengoneksikan user dengan server, kita dapat melakukan dengan menggunakan aplikasi telnet. Cara penggunaannya menngunakan apliksi DOS-Command:
C:> telnet 172.21.206.2
Jika sukses maka kita akan terhubung dengan server dan harus memberikan nama user
Red Hat Linux release 8.0 (Psyche)
Kernel 2.4.18-14 on an i686
d. Menjalankan MySQL
Sebelum kita dapat menjalankan MySQL terlebih dahulu kita pastikan apakah daemon MySQL sudah di-start apa belum. Untuk menjalankan MySQL gunakan perintah berikut:
# MYSQL -U user -P # password :
user disini adalah nama user kita pada MySQL, setelah di-enter maka kita
diminta untuk memasukan password-nya. Jika berhasil maka akan tampil
promt mysql
Welcome to the MySQL monitor. Command end with ; or \g.
Your MySQL connection id is 403 to server version 3.22.10-beta
Type ‘help’ for help.
mysql>
Catatan:
Anda telah dibuatkan user MySQL, hubungi administrator basis data MySQL.
Anda juga sudah dibuatkan database sendiri sendiri.
e. Membuat Database
Untuk membuat database gunakan perintah berikut ini :
mysql>CREATE DATABASE nama_database;
f. Membuka Database
Untuk membuka suatu database gunakan perintah berikut ini :
mysql>USE nama_database
g. Membuat Tabel
Setelah database terbuat dan kita telah membukanya, kita seharusnya
membuat tabel yang akan menyimpan data yang kita butuhkan. Setiap perintah
SQL pada MySQL harus diakhiri dengan titik koma (;). Ketikkan perintah
berikut untuk membuat tabel.
mysql>CREATE TABLE nama_tabel
mysql>(
mysql>nama_field1 tipe_data1,
mysql>nama_field2 tipe_data2,
. . .
h. Insert Query
Untuk mengisi data pada suatu tabel, kita gunakan perintah INSERT. Sintaks
penulisannya adalah sebagai berikut :
mysql>INSERT INTO nama_tabel (field1, field2, ... ) VALUES
(nilai_field1,
nilai_field2, ... );
i. Select Query
Perintah ini digunakan untuk melihat data dari satu atau beberapa tabel.
Sintaks penulisannya adalah sebagai berikut :
mysql>SELECT (fieldx, fieldx, ... ) FROM nama_tabel;
Untuk melihat semua kolom/field pada suatu tabel, sintaks penulisannya
adalah sebagai berikut :
mysql>SELECT * FROM nama_tabel;
j. Menyaring Hasil Select Query dengan WHERE
Kita dapat membatasi hasil select query dengan keyword WHERE sehingga
record-record yang dikeluarkan hanyalah record yang sesuai dengan kriteria
yang diinginkan. Sintaks penulisannya adalah sebagi berikut :
mysql>SELECT (fieldx, fieldx, ... ) FROM nama_tabel WHERE
kriteria;
k. Operator yang digunakan dalam kriteria WHERE
Operator Equality dan Inequality
Operator Keterangan
= Operan kiri sama dengan operan kanan <> atau != Operan kiri tidak sama dengan operan kanan > Operan kiri lebih besar dari operan kanan
>= Operan kiri lebih besar atau sama dengan dari operan kanan
< Operan kiri lebih kecil dari operan kanan
Operator Logic
Operator Keterangan
And Operator logika ‘dan’ Or Operator logika ‘atau’ l. Mensortir Data
Hasil query dapat disortir sesuai dengan kebutuhan dengan keyword ORDER BY. Sintaks penulisannya adalah sebagai berikut :
mysql>SELECT (fieldx, fieldx, ... ) FROM nama_tabel ORDER BY
kriteria;
Untuk mensortir dengan urutan terbalik, gunakan keyword tambahan DESC. Sintaks penulisannya adalah sebagai berikut :
mysql>SELECT (fieldx, fieldx, ... ) FROM nama_tabel ORDER BY
kriteria DESC;
m. Delete Query
Berfungsi untuk menghapus suatu record dengan kriteria tertentu. Sintaks penulisannya adalah sebagai berikut :
mysql>DELETE FROM nama_tabel WHERE kriteria;
Untuk menghapus seluruh record pada suatu tabel, gunakan perintah DELETE tanpa menentukan kriterianya.
mysql>DELETE FROM nama_tabel WHERE kriteria;
n. Update Query
Berfungsi untuk memodifikasi nilai kolom/field dari suatu record. Sintaks penulisannya adalah sebagai berikut :
mysql>UPDATE nama_tabel SET nama_field1=nilai_baru1,
nama_field2=nilai_baru2,
... WHERE kriteria;
Untuk memodifikasi nilai suatu kolom/field secara keseluruhan gunakan
perintah UPDATE tanpa menentukan kriterianya.
2.2.3 PHPMyAdmin
Aplikasi ini berguna untuk mengadministrasi basisdata MySQL berbasis web. Cara penggunaanya, sbb:
• Jalankan internet ekplorer. Panggil http://nama server/~MyAdmin. • Berikan username dan password sebagai user MySQL.
• Tambahkan tabel baru. Gunakan fungsi-fungsi yang ada pada menu.
a. Koneksi PHP Dengan MySQL
Pada bagian ini akan dibahas tentang langkah-langkah yang diperlukan untuk
melakukan akses ke basis data MySQL. Tapi sebagai catatan, PHP harus
memiliki ekstensi koneksi ke basis data MySQL agar dapat menggunakan
fungsi-fungsi koneksi ke basis data MySQL.
b. Membuka koneksi ke basis data MySQL
Sebelum mampu mengakses basis data server, terlebih dahulu kita harus
membuka koneksi ke basis data. Untuk koneksi ke MySQL server, digunakan
perintah :
<?
$hostname = "localhost";
$username = "";
$password = "";
if (!$mysql_link = mysql_connect($hostname, $username,
$password))
{
echo mysql_error();
exit;
}
Setelah itu variabel $mysql_link akan berisi referensi yang akan digunakan
untuk proses akses basis data selanjutnya.
c. Query ke basis data MySQL
Setelah koneksi sukses dilakukan, sekarang tinggal melakkukan query ke
basis data untuk membaca data, menyisipkan, memperbaharui, dan
sebagainya pada satu atau beberapa tabel dengan menggunakan bahasa SQL.
Gunakan perintah berikut untuk mengirimkan query (yang dalam contoh ini
disimpan dalam variabel $myquery) ke server :
<?
$database=”test”;
If(!mysql_select_db($database, $mysql_link))
{
echo mysql_error();
exit;
}
$myquery = "SELECT * FROM nama_tabel";
if (!$mysql_result = mysql_query($myquery, $mysql_link))
{
echo mysql_error();
exit;
}
?>
Setelah proses diatas sukses, variabel $mysql_result akan berisi identifier ke
hasil query yang siap digunakan oleh fungsi selanjutnya, misalnya
mysql_fetch_row(), mysql_fetch_array(), dan sebagainya.
d. Menampilkan isi Tabel
Setelah melakukan query, perlu dilakukan proses untuk menampilkan hasil
dalam bentuk format tabel HTML. Misalkan hasil query yang dilakukan
memiliki tiga buah field.
<table>
<tr>
<td>field 1
<td>field 2
<td>field 3
<?
while ($row = mysql_fetch_row($mysql_result))
(
echo “<tr>”;
echo “<td>$row[0]”;
echo “<td>$row[1]”;
echo “<td>$row[2]”;
}
?>
<table>
e. Menambah record ke basis data MySQL
Untuk menyisipkan record ke suatu tabel, gunakan perintah berikut ini:
<?
$myquery = "INSERT INTO nama_tabel(field1, field2,
field3)";
$myquery .= "VALUES ($field1, $field2, $field3)";
if (!$mysql_result = mysql_query($myquery, $mysql_link))
{
echo mysql_error();
exit;
}
?>
Pada contoh diatas kita menyisipkan record ke tabel nama_tabel field1, field2
dan field3 dengan nilai variabel $field1, $field2 dan $field3. Biasanya
f. Menghapus record ke basis data MySQL
Untuk menghapusrecord ke suatu tabel, gunakan perintah berikut ini:
<?
$myquery = "DELETE FROM nama_tabel";
$myquery .= "WHERE kriteria";
if (!$mysql_result = mysql_query($myquery, $mysql_link))
{
echo mysql_error();
exit;
}
?>
Pada contoh diatas kita akan menghapus record dari tabel nama_tabel dengan
kriteria dijabarkan dalam variabel kriteria. Biasanya variabel ini adalah
variabel eksternal, misalnya dari form HTML.
g. Mengubah record ke basis data MySQL
Untuk menyisipkan record ke suatu tabel, gunakan perintah berikut ini:
<?
$myquery = " UPDATE nama_tabel SET field1=$field1, ";
$myquery .= " field2=$field2, field3=$field3";
$myquery .= " WHERE kriteria";
if (!$mysql_result = mysql_query($myquery, $mysql_link))
{
echo mysql_error();
exit;
}
?>
Pada contoh diatas kita akan mengubah record ke tabel nama_tabel field1,
field2 dan field3 dengan nilai variabel $field1, $field2 dan $field3 dan kriteria
dijabarkan dalam variabel kriteria. Biasanya variabel ini adalah variabel
2.3 Paguyuban Petugas Inseminasi Buatan (PPIB)
Paguyuban Petugas Inseminasi Buatan (PPIB) merupakan suatu lembaga berbentuk koperasi yang didirikan oleh petugas – petugas inseminator. Koperasi ini bertujuan untuk memberikan pelayanan inseminasi buatan di wilayah kabupaten Kulon Progo.
Sebelum berbentuk koperasi, lembaga ini merupakan salah satu devisi Dinas Pertanian dan Kelautan SubDin Kehewanan kabupaten Kulon Progo. Petugas inseminasi (inseminator) masih dari lingkungan PNS subdin kehewanan. Oleh karena beberapa hal, devisi ini berubah menjadi koperasi dan di tangani oleh swasta. Namun demikian, untuk semua kegiatan yang dilakukan harus dilaporkan ke subdin kehewanan secara berkala. Inseminator yang bertugas d tambah dari swasta yang telah di sertifikasi dan mempunyai izin melakukan insemnasi buatan (SIMI). Surat izin (SIMI) ini mempunyai jangka waktu dan harus diperbarui setiap 3 (tiga) tahun sekali.
Selain melaksanakan inseminasi buatan, inseminator juga berkewajiban membantu devisi Balai Penyuluhan Pertanian (BPP) untuk memberikan penyuluhan kepada peternak ataupun kelompok tani.
2.3.1 Inseminasi Buatan
Pelaksanaan inseminasi yang baik dilakukan dalam jangka waktu 8 – 12 jam dari tanda – tanda awal berahi. Keberhasilan inseminasi di pengaruhi oleh beberapa hal :
1. ketepatan deteksi berahi.
2. deposisi semen dalam organ reproduksi betina. 3. kualitas semen.
4. kondisi organ reproduksi betina.
Untuk ketepatan deteksi berahi sangat tergantung pada informasi peternak, oleh sebab itu pemberian informasi ini sangat penting bagi peternak.
Deposisi semen dalam organ reproduksi betina dapat dilakukan dengan alat inseminasi gun oleh petugas yang telah terlatih.
Dalam menjaga kualitas semen agar tetap dalam konisi yang baik harus diperhatikan tempat penyimpanan yang berupa container dan nitrogen cair untuk menjaga suhu yang dibutuhkan (-196°C). Semen beku yang akan digunakan harus dicairkan kembali (thawing) dengan cara memasukkan semen dalam air hangat 37-38°C selama 15-30 detik.
2.3.2 Prosedur Laporan
34
BAB III
ANALISIS DAN DESAIN SISTEM
3.1. Analisis Sistem
Pada bagian ini akan dijabarkan kondisi sistem yang ada saat ini. Mulai dari permohonan inseminasi hingga pembuatan laporan oleh inseminator. Berdasarkan hal tersebut, kemudian akan di jabarkan kebutuhan sistem yang baru, yang sesuai dengan kebutuhan untuk memperbaiki sistem yang lama. Untuk analisis dari sistem yang akan dikebangkan akan dijabarkan kemudian.
3.1.1. Analisis Sistem saat ini
Hingga saat ini belum dikembangkan sebuah sistem informasi untuk mengolah data – data kegiatan inseminasi buatan. Setiap permohonan inseminasi hingga pelaporannya hanya dikelola oleh tiap – tiap inseminator secara manual.
Secara umum pelaksanaan inseminasi buatan di wilayah Kulon Progo terdiri dari 3 (tiga) proses :
1. Permohonan inseminasi
peternak mengajukan permohonan inseminasi langsung ke petugas inseminasi sesuai dengan yang dikehedaki. Selama ini permohonan diajukan dengan datang langsung ke inseminator, SMS maupun telepon dengan memberikan data nama dan alamat.
2. Pelaksanaan inseminasi
Tiap inseminator membeli sejumlah semen beku dan beberapa liter N2 cair dari kantor PPIB sebagai stock pribadi. Jika PPIB kehabisan stock, maka untuk sementara membelinya dari sesama inseminator. Setelah perlengkapan terpenuhi Inseminator melakukan inseminasi dengan mendatangi peternak dan merekam pelaksanaan dalam buku untuk laporan bulanan.
3. Pembuatan laporan
Untuk lebih jelasnya tapak pada flowchart di bawah ini:
Gambar 3.1 Proses Inseminasi Buatan
Hal – hal yang di kemukakan di atas merupakan hasil wawancara dengan inseminator dan pegawai terkait. Mereka memang belum menganggap serius, karena yang terpenting bagi mereka adalah setiap ada permohonan inseminasi buatan langsung segera di tangani. Namun perkembangan teknologi informasi saat ini menuntut hal yang sebaliknya, karena informasi dan layanan langsung pada konsumen akan saling mendukung efektifitas dan kualitas layanan kepada pelanggan. Untuk itu
Start
Peternak mengjukan permohonan
inseminasi
Inseminator cek stok
pribadi Pembelian semen
di PPIB
Inseminator melaksanakan Inseminasi buatan
Penyimpanan data
selesai
diperlukanlah sebuah sistem yang dapat memberikan informasi yang tepat, cepat dan sesuai dengan kenyataan yang ada di lapangan, sehingga akan membantu dalam pengambilan keputusan manajemen.
3.1.2. Analisis Sistem yang akan Dikembangkan
Sistem yang akan dikembangkan ini diharapkan dapat mengatasi permasalahan-permasalahan ataupun kekurangan dari sistem yang telah ada saat ini dalam hal penyimpanan dan pengelolaan data, pembuatan laporan bulanan oleh inseminator dan penyampaian informasi ke masyarakat (berbasis web) sehingga kontrol dan pengambilan kebijakan oleh Dinas Pertanian dan Kelautan SubDin Kehewanan kabupaten kulon Progo dapat lebih baik.
Prosedur kerja dari sistem yang baru ini sebagai berikut :
1. Pengolahan data inseminator yang berupa nama, alamat, no telepon, no SIMI, dan Unit Lokasi Inseminasi Buatan di tentukan oleh administrator..
3. Peng-update-an kegiatan inseminasi buatan dilakukan oleh inseminator yang terdiri dari tanggal pelaksanaan inseminasi, data peternak, dan data sapi
4. Pembuatan laporan yang di generate secara otomatis dari inputan data kegiatan selama sebulan oleh inseminator. Laporan ini juga dapat diakses oleh administrator.
5. informasi – informasi kegiatan inseminasi yang berupa berita, informasi petugas inseminator, peternakan, dapat di akses secara umum dengan ketentuan hanya melihat data, tidak mengubahnya.
3.1.3. Analisis Kebutuhan Sistem
Seperti yang telah dijelaskan di atas bahwa sistem yang akan di bangun diharapkan mampu memberikan informasi yang baik untuk digunakan bagi peternak, inseminator maupun kepala bagian inseminasi buatan dalam mengambil keputusan.
1. sistem mampu menjaga keamanan data, sehingga apa yang di simpan sesuai dengan kenyataan dilapangan untuk digunakan sebagai data laporan bulanan.
3. sistem yang baru dapat memberikan kemudahan bagi inseminator untuk mengelola data kegiatan inseminasi sehingga mempermudah dalam pembuatan laporan.
4. sistem yang baru dapat digunakan sebagai acuan oleh pihak menajemen dalam mengambil kebijakan untuk kemajuan peternakan sapi, khususnya hasil inseminasi buatan di kabupaten kulon progo.
5. sistem dapat memberikan kemudahan bagi pengguna, inseminator maupun administrator karena bersifat user friendly.
3.1.3.1. Kebutuhan Perangkat Lunak.
Kebutuhan minimum yang dibutuhkan dalam sistem yang baru adalah sebagai berikut :
1. pada komputer server menggunakan sistem operasi windows XP dengan Apache server sebagai web server, sedangkan untuk mesin basis datanya menggunakan Mysql.
3.1.3.2. Kebutuhan Perangkat Keras
Kebutuhan minimum akan perangkat keras dalam sistem yang baru ini antara lain :
a. Pada komputer server:
- Prosesor : setara pentium III 800 Ghz
- RAM : 128 Mb
- Harddisk : 20 Gb - Kartu jaringan 10/100
b. Pada komputer client:
- Prosesor : setara pentium III 533 Mhz
- RAM : 128 Mb
- Harddisk : 20 Gb - Kartu jaringan 10/100
3.1.3.3. Kebutuhan Pemakai
Dalam sistem ini user dibagi menjadi 3 (tiga) kelompok, yaitu administrator, inseminator, dan umum. Untuk hak akses tiap – tiap user ditentukan sebagai berikut :
1. administrator :
admnistrator mempunyai hak akses penuh untuk mengupdate data inseminator dan penetuan unit lokasi inseminasi buatan bagi inseminator, mengupdate berita(informasi) tentang kegiatan inseminasi buatan, dan melihat laporan inseminator.
2. inseminator :
inseminator berhak untuk mengupdate data pribadinya, menginputkan data peternak dan ternak, menginputkan data pelaksanaan iniseminasi, pemeriksaan kebuntingan, membuat laporan, dan melihat berita (informasi).
3. umum :
3.1.4. Diagram Arus Data (DAD)
Diagram arus data dari sistem ini akan dijabarkan sebagai berikut:
1. Masukkan dan Keluaran Sistem
Masukkan dan keluaran dari sistem ini dapat dilihat pada Tabel 3.1 berikut ini:
Tabel 3.1. Masukkan dan keluaran sistem
Kode Entity Masukkan Keluaran
A Administrator Login user dan password, data inseminator, berita
Laporan kegiatan inseminasi B Inseminator Login user dan password, data
peternak, data ternak, data pelaksanaan inseminasi, data kebuntingan
Laporan kegiatan inseminasi
C Umum Informasi kegiatan
inseminasi
2. Context Diagram
Berdasarkan masukkan dan keluaran dari sistem di atas, maka dapat digambarkan conteks diagram dari sistem ini sebagai berikut:
0
Sistem informasi ternak sapi Administrator
Umum
Petugas
Login user dan password, data inseminator, data peternak,
data ternak, berita, stock
Login user dan password, data pelaksanaan inseminasi, data kebuntingan, data kelahiran
Laporan kegiatn inseminasi
Laporan kegiatn inseminasi
Insformasi kegiatan inseminasi
3. Diagram Berjenjang
Diagram berjenjang dari sistem ini dapat digambarkan sebagai berikut:
2P Update inseminator,peternak,
dan ternak
0
Sistem informasi ternak sapi
Informasi kegiatan inseminasi buatan Laporan kegiatan
inseminasi
7P
Logoot
Gambar 3.3. Diagram bejenjang sistem
4. Overview diagram
administrator
inseminator
1P
Login
Username & passwords Username & passwords
1P
ternak dan berita
Data inseminator
Informasi kegiatan inseminasi buatan
Data semen beku D8
5P
Cek kebuntingan
6P
Laporan Kegiatan Inseminasi inseminasi buatan
5. Usecase diagram
Gambar 3.5. Usecase Diagram sistem
3.2. Desain Sistem
Pengembangan sistem yang baru meliputi desain basis data, desain arsitektur, dan desain user interface.
3.2.1. Desain Basis Data
Basis Data memegang peranan peting dalam sistem ini untuk menyimpan data stock, inseinator, maupun peternak serta kegiata inseminasi yang digunakan untuk laporan.
3.2.1.1. Conceptual Database Design
Inseminator
Nama No_telp
Alamat tanggal
Kode_semen
Gambar 3.6. E-R Diagram sistems 3.2.1.2. Logical Database Design
Gambar 3.7. Gambar Relasi antar tabel ** kode_ulib
insemiasi * no_reg tanggal inseminasi ke inseminator
sebelunya ** simi
** kode_semen ** kode_sapi
sapi
* kode_sapi Jenis_sapi umur
jenis_kelamin ** id_peternak ** kode_ulib peternak
* id_peternak nama
* kode_semen Jenis_sapi nama
ulib
* kode_ulib ulib
kategori * no isi berita
3.2.1.3. Physikal Database Design
Desain dari basis data yang akan digunakan dalam sistem tampak sebagai berikut:
1. Tabel semen
Tabel ini untuk menyimpan data semen yang merupakan dari inseminator dengan primary key kode_semen.
Tabel 3.2. Strutur tabel untuk tabel semen
No Nama field Type Panjang Keterangan
1 Kode_semen Char 15 Primary key
2 Jenis_sapi Char 8 Jenis sapi
3 Nama Char 10 Nama sapi
2. Tabel inseminator
Tabel ini berisi data – data tentang petugas inseminasi (inseminator) dengan primary key SIMI.
Tabel 3.3. Struktur tabel untuk tabel inseminator No Nama field Type Panjang Keterangan
1 SIMI Char 20 Primary key
2 Nama Char 20 Nama inseminator
3 Alamat Char 50 Alamat inseminator 4 No_telp text No telepon inseminator 5 Kode_ulib int 2 Kode unit lokasi
3. Tabel Inseminasi
Tabel ini menyipan data – data tentang kegiatan inseminasi yang dilakukan dengan primary key No_reg yang merupakan nomer kegiatan inseminasi.
Tabel 3.4. Struktur tabel untuk tabel Inseminasi No Nama field Type Panjang Keterangan 1 No_Reg Char 10 Primary key
2 SIMI Char 20 Scondary key
3 Kode_sapi Char 10 Scondary key 4 Kode_semen Char 15 Scondary key
5 Tanggal Date Tanggal pelaksanaan
6 Inseminasi ke Int 2 Urutan inseminasi ke- 7 Inseminator_
sebelumnya
Char 20 Inseminator yang telah melakukan inseminasi sebelumnya, tapi belum berhasil
4. Tabel Sapi
Tabel ini berisi data – data tentang kondisi sapi dengan primary key kode_sapi.
Tabel 3.5. Struktur tabel untuk tabel sapi
No Nama field Type Panjang Keterangan 1 Kode_sapi Char 10 Primary key
2 Jenis_sapi Char 10 Jenis sapi
3 Umur Int 2 Usia sapi
4 Jenis_kelamin Char 6 Jenis kelamin
5 Id_peternak Char 8 Secondary key
5. Tabel Peternak
Tabel ini berisi data – data peternak, dengan Id_peternak sebagai primary key dan Kode_sapi sebagai scondary key.
Tabel 3.6. Struktur tabel untuk tabel peternak
No Nama field Type Panjang Keterangan 1 Id_peternak Char 8 Primary key
2 Kode_sapi Char 10 Scondary key
3 Nama Char 20 Usia sapi
4 Alamat Char 50 Alamat peternak
6. Tabel kebuntingan
Tabel ini berisi data – data yang diperoleh dari pemeriksaan kebuntingan.
Tabel 3.7. Struktur tabel untuk tabel kebuntingan No Nama field Type Panjang Keterangan
1 No_reg Char 5 Primary key
2 SIMI Char 20 Scondary key
3 Kode_sapi Char 10 Scondary key
4 Tanggal Date Tanggal periksa
7. Tabel ulib
Tabel ini berisi data ulib
Table 3.8. Struktur tabel untuk tabel ulib
No Nama field Type Panjang Keterangan
1 Kode_ulib int 2 Primary key
2 ulib Char 20 Unit lokasi inseminasi
buatan
8. Tabel berita
Tabel ini berisi data berita
Table 3.9. Struktur tabel untuk tabel berita
No Nama field Type Panjang Keterangan
1 No_berita Int 10 Primary key
2 Judul Char 100 Judul berita
3 Kategori Char 100 Kategori berita
4 Isi_berita Text Isi berita
5 gambar Char 100 gambar
9. Tabel kategori
Tabel ini berisi data kategori
Table 3.10. Struktur tabel untuk tabel kategori
No Nama field Type Panjang Keterangan
1 No Int 10 Primary key
3.2.2. Desain Arsitektur
Sistem ini merupakan golongan Server-Side Processing. Skrip akan dieksekusi oleh server sebelum halaman tersebut dikirim ke browser klien. Untuk cara kerjanya di ulas pada BAB II.
.
3.2.3. Desain User Interface
Untuk desain interface dalam sistem ini tampak sebagai berikut:
1. halaman index ( halaman utama). Halaman ini berisi login user, menu ,dan berita. Login user berfungsi untuk menentukan hak akses user. Menu berisi menu – menu informasi inseminator, informasi ternak dan informasi kegiatan inseminasi. Home berisi tentang informasi PPIB.
Header
Home Berita inseminator Berita ternak sapi Kegiatan inseminasi Gallery foto
Login
Kategori berita
Isi
2. login administrator. Dengan login administrator, user memiliki hak akses tertinggi dengan menu – menu sebagai berikut :
Header
Home
Home
inseminator
inseminator
Managemen berita
Managemen berita
Data semen
Laporan
Laporan
Selamat datang administrator
logout
logout
Gambar 3.9. halaman index administrator
Menu utama user administrator tampak seperti di atas, untuk detail menu – menu yang terdapat dalam login administrator sebagai berikut : a. Home
Header
Data inseminator
Tambah data inseminator
Home inseminator Managemen berita Laporan logout
Gambar 3.10. halaman inseminator
Halaman di atas merupakan halaman edit inseminator yang hanya dapat diakses oleh administrator. Halaman ini dapat digunakan untuk menambah data inseminator dan meng- edit data inseminator serta menghapus data yang ditampilkan beserta data inseminator. Data inseminator yang ditampilkan berupa :
a. Kode SIMI : kode Surat Izin Melakukan Inseminasi b. Nama : Nama inseminator
c. Alamat : Alamat Inseminator d. No_telp : No telp Inseminator
Header
Kategori
Berita
Tambah
Tambah
Home inseminator Managemen berita Laporan logout
Gambar 3.11 halaman managemen berita
Dalam halaman ini inseminator dapat menambah, mengedit dan menghapus kategori serta menambah, mengedit dan menghapus berita. Untuk mengedit dan menghapus ditampilkan beserta data berita / kategori dalam sebuah tabel.
.
Header
Laporan inseminator
Home inseminator Managemen berita Laporan logout
Bulan juli 2007
No Simi Nama Inseminasi Kebuntingan
Halaman laporan berisi laporan bulanan dari tiap2 inseminator secara otomatis dari hasil masukan data tiap pelaksanaan inseminasi. Lihat laporan stock untuk melihat laporan penggunaan stock dan lihat laporan inseminator untuk melihat laporan inseminator.
3. login inseminator
dalam halaman login inseminator terdapat menu data inseminator yang hampir sama login administrator yaitu mengakses halaman data inseminator. Perbedaannya adalah dalam login inseminator tidak dapat menentukan Unit Lokasi Inseminasi Buatan (ULIB) Halaman utama inseminator tampak seperti gambar berikut ini :
Header
Edit inseminator
Edit inseminator
Data peternak
Data peternak
Data ternak
Data ternak
Laporan
Laporan
Logout
Logout
Inseminasi
Inseminasi
Kebuntingan
Kebuntingan
Selamat datang inseminator
Header
Edit inseminator Data peternak Data ternak Inseminasi Kebuntingan Laporan Logout
Simi
Nama
Password
Alamat
No. Telp
Gambar 3.14 halaman Edit inseminator
Halaman ini digunakan untuk mengedit data inseminator sesuai dengan login usernya.
Header
Edit inseminator Data peternak Data ternak Inseminasi Kebuntingan Laporan Logout
Daftar peternak
Data peternak
Tambah data kembali
Gambar 3.15 halaman data peternak
Sebelum muncul data peternak masing – masing Unit Lokasi Inseminasi Buatan, terlebih dahulu akan ditampilkan link nama – nama unit.
Header
Edit inseminator Data peternak Data ternak Inseminasi Kebuntingan Laporan Logout
Daftar ternak
Data ternak
Tambah data kembali
Gambar 3.16 halaman data ternak
Dari halaman ini user inseminator dapat melihat, mengedit dan menghapus data ternak
Header
Edit inseminator Data peternak Data ternakInseminasi Kebuntingan Laporan Logout
Input Inseminasi
No. Reg SIMI Kode Sapi Kode Semen
Pemeriksaan tgl bln thn Inseminasi Ke
Inseminator Sebelumnya Kode ulib
Gambar 3. 17 Halaman Inseminasi
Header
Edit inseminator Data peternak Data ternakInseminasi Kebuntingan Laporan Logout
Input cek kebuntingan
No. Reg SIMI Kode Sapi
Pemeriksaan tgl bln thn Hasil
Update
Gambar 3.18 Halaman Pemeriksaan Kebuntingan
Halaman ini untuk menginputkan data kebuntingan dari hasil pemeriksaan untuk pembuatan laporan
Header
Edit inseminator Data peternak Data ternakInseminasi Kebuntingan Laporan Logout
Update
Laporan inseminasi
laporan kebuntingan
bulan tahun
bulan tahun
. Gambar 4. 19 Halaman laporan
Header
Edit inseminator Data peternak Data ternak Inseminasi Kebuntingan Laporan Logout
Laporan Kegiatan Inseminasi Buatan
bulan : Nama Inseminator :
Data kegiatan inseminasi
kembali
Gambar 3.20 Laporan inseminasi buatan
Halaman laporan kegiatan inseminasi sesuai login user dan bulan yang dikehendaki.
Header
Edit inseminator Data peternak Data ternak Inseminasi Kebuntingan Laporan Logout
Laporan Pemeriksaan Kebuntingan
bulan : Nama Inseminator :
Data kegiatan pemeriksaan kebuntingan
kembali
Gambar 3.21 Laporan Pemeriksaan kebuntingan
61
BAB IV
IMPLEMENTASI
Dalam bab IV ini, merupakan tahap pengkodean dari hasil perancangan. Pada bab sebelumnya telah dijelaskan mengenai perancangan yang digunakan di dalam pembuatan program sistem infrormasi ternak sapi berbasis web yang mengambil study kasus di PPIB Sato manunggal Kabupaten kulon progo. Dalam bab ini juga akan dijelaskan mengenai implementasi beserta hasil analisanya.
4.1 Lingkungan Implementasi
Sistem yang telah dirancang didukung oleh perangkat-perangkat yang merupakan bagian dari lingkungan implementasi. Lingkungan perangkat-perangkat pendukung itu antara lain, lingkungan perangkat-perangkat-lunak dan lingkungan perangkat-keras.
4.1.1 Lingkungan Perangkat-lunak
Perangkat-lunak yang digunakan di dalam sistem ini adalah sebagai berikut:
a. Untuk komputer Server:
• Sistem Operasi : Windows XP Profesional • Server API : Apache 2.0
b. Untuk komputer Client:
• Sistem Operasi : Windows 2000 Profesional • Browser : Mozila Firefox, IE v6 4.1.2 Lingkungan Perangkat keras
Lingkungan perangkat keras yang sesuai dengan sistem ini adalah: a. Untuk komputer Server:
• Processor : AMD Duron 950 MHz
• Memori minimal : 128 Mb • Harddisk minimal : 20 GB
• Kartu jaringan : LAN Card 10/100 b. Untuk komputer Client:
• Processor : AMD Duron 950 MHz
• Memori minimal : 128 Mb • Harddisk minimal : 20 GB
• Kartu jaringan : LAN Card 10/100 c. Perangkat masukan berupa keyboard dan mouse
d. Perangkat keluaran berupa monitor SVGA dengan resolusi minimal 800 X 600.
4.2 Implementasi Basis Data
<?php
mysql_connect("localhost","root",""); mysql_select_db("ppib");
?>
Perintah php ini disimpan dengan nama koneksi.php yang akan dipanggil oleh setiap program yang memerlukan data dari server.
Mysql_conect(“localhost”,”root”,””); adalah perintah untuk melakukan koneksi ke komputer host dengan user root dan password[kosong].
Mysql_select_db(“ppib”);merupakan perintah untuk memilih database ppib.
4.3 Implementasi Program
Program sistem informasi ini secara umum dapat dikelompokkan dalam beberapa prosedur sesuai dengan penggunanya. Untuk mengakses bagian administrator dan user, maka terlebih dahulu harus melakukan login dengan list sebagai berikut:
4.3.1 Prosedur Login dan logout
$perintah="SELECT * FROM inseminator WHERE nama='$nama'"; $hasil=mysql_query($perintah);
$row=mysql_fetch_array($hasil); if($row[password]==$password) { $namauser=$row[nama]; $passuser=$row[password]; $session_simi=$row[simi]; $session_ulib=$row[kode_ulib]; $login='cek';
session_start();
session_register("namauser"); session_register("passuser"); session_register("session_simi"); session_register("login"); session_register("session_ulib");
if($namauser=='daru' AND $passuser=='daru') {header("location:admin_index.php");} else