sistem informasi pengkajian stok ikan (studi kasus … · analisis spesifikasi program tanpa...
TRANSCRIPT
SISTEM INFORMASI PENGKAJIAN STOK IKAN (STUDI
KASUS : IKAN KURISI Nemipterus japonicus, Bloch 1791
DI PERAIRAN SELAT SUNDA YANG DIDARATKAN
DI PPP LABUAN, PANDEGLANG, BANTEN)
PRECIA ANITA ANDANSARI
SKRIPSI
DEPARTEMEN MANAJEMEN SUMBERDAYA PERAIRAN
FAKULTAS PERIKANAN DAN ILMU KELAUTAN
INSTITUT PERTANIAN BOGOR
BOGOR
2012
ii
PERNYATAAN MENGENAI SKRIPSI
DAN SUMBER INFORMASI
Dengan ini menyatakan bahwa skripsi saya yang berjudul:
“Sistem Informasi Pengkajian Stok Ikan (Studi Kasus : Ikan Kurisi Nemipterus
japonicus, Bloch 1791 di Perairan Selat Sunda yang Didaratkan Di PPP
Labuan, Pandeglang, Banten)”
adalah benar merupakan hasil karya sendiri. Sumber informasi yang berasal atau
dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah
disebutkan dalam teks dan dicantumkan dalam bentuk daftar pustaka di bagian akhir
skripsi ini.
Bogor, Agustus 2012
Precia Anita A.
C24080029
iii
RINGKASAN
Precia Anita Andansari. C24080029. Sistem Informasi Pengkajian Stok Ikan
(Studi Kasus : Ikan Kurisi Nemipterus japonicus, Bloch 1791 di Perairan Selat
Sunda yang Didaratkan Di PPP Labuan, Pandeglang, Banten). Di bawah
Bimbingan Rahmat kurnia dan Achmad Fahrudin
Pengelolaan perikanan membutuhkan suatu informasi yang mendasar agar
pengambilan keputusan dalam pengelolaan efektif dan efisien. Salah satu informasi
yang dibutuhkan yaitu mengenai aspek biologi (pengkajian stok ikan). Namun saat
ini masih minimnya sistem informasi mengenai perikanan terutama mengenai aspek
biologi (pengkajian stok ikan) akan berakibat pada kesalahan dalam perencanaan
pengelolaan perikanan (Tangke 2010). Oleh karena itu diperlukannya sistem
informasi mengenai aspek biologi (pengkajian stok ikan) untuk dapat mengurangi
masalah tersebut. Tujuan penelitian ini adalah untuk mengembangkan suatu program
informasi CIAFISH (Calculation, Information, and Analysis of Fisheries) mengenai
pengkajian stok ikan.
Program ini dirancang sebagai aplikasi perangkat lunak (software) berbasis
Windows dan desktop yang dikembangkan menggunakan Microsoft Visual Studio
2010 dengan bahasa pemrograman C#, XML sebagai DBMS (Database
Managament System) dan Microsoft Expression Blend 4 sebagai perangkat lunak
untuk desain tampilan. Data hasil penelitian Rahayu 2012 yang berjudul kajian stok
sumberdaya Ikan Kurisi (Nemipterus japonicus, Bloch 1791) di Perairan Selat
Sunda yang didaratkan di PPP Labuan, Pandeglang, Banten) dan data dari Dinas
Kelautan dan Perikanan Provinsi Banten yang digunakan dalam uji coba program
CIAFISH. Program CIAFISH bertujuan untuk mengetahui parameter hubungan
panjang berat, sebaran frekuensi panjang, nilai K, L∞, dan t0, mortalitas, laju
eksploitasi dan model surplus produksi (MSY, Fmsy, dan TAC). Untuk pengolahan
data hubungan panjang berat menggunakan analisis hubungan panjang berat
𝑤 = 𝑎𝐿𝑏 , sebaran frekuensi panjang dengan membuat diagram batang dari selang
kelas panjang (sumbu x) dan frekuensi panjang (sumbu y), nilai K, L∞. t0 dengan
menggunakakan model Ford Walford, mortalitas penangkapan dengan
menggunakan estimasi nilai Z model Beverton and Holt, serta surplus produksi
dengan menggunakan analisis Schaefer dan Fox.
Tahap dalam pengembangan sistem ini mengikuti siklus pengembangan
sistem model Waterfall (Stair & George 2010) yaitu tahap investigasi, analisis,
desain, implementasi, uji coba dan perawatan. Tahap investigasi merupakan tahap
pengembangan sistem dimana masalah dan peluang diidentifikasi dan
dipertimbangkan (Stair & George 2010). Tahap analisis dengan merancang
komponen sistem (masukan, proses dan keluaran). Tahap ini dilakukan dengan
menyusun algoritma dan diagram alir. Tahap desain terdiri dari sistem masukan,
proses, keluaran , tampilan pengguna dan menunjukkan bagaimana komponen saling
berhubungan (Stair & George 2010). Tahap implementasi dimana sistem yang telah
dirancang diimplementasikan kedalam bahasa pemrograman. Tahap uji coba dan
perawatan dilakukan untuk mengetahui apakah program sudah berjalan dengan baik
dan sesuai tidak dengan apa yang diharapkan. Pengujian pada program ini dilakukan
iv
dengan pengujian kotak hitam (black box). Pengujian kotak hitam didasarkan pada
analisis spesifikasi program tanpa mengacu pada internal program. Perawatan
dilakukan ketika sistem informasi sudah dioperasikan. Pada tahapan ini dilakukan
proses pemantauan, evaluasi dan perubahan (perbaikan) bila diperlukan. Program
CIAFISH memiliki desain interface terdiri dari lima menu utama yaitu form
pertumbuhan, model surplus produksi, bantuan, deskripsi aplikasi dan tentang
pengembang.
Hasil uji coba program menunjukkan program CIAFISH memiliki
Keunggulan yaitu kemudahan dalam menyimpan dan mengelola data, penulusuran
informasi dilakukan dengan cepat dan mudah, tampilan program yang interaktif,
informatif serta user friendly. Kekurangannya adalah belum tersedianya sarana
untuk mencetak laporan berdasarkan informasi yang ditampilkan ke mesin pencetak
(printer). Pengembangan program CIAFISH sebagai media analisis aspek
pengkajian stok ikan yang memberikan informasi secara terpadu dan dapat dijadikan
acuan dalam pengelolaan perikanan. Pengembangan program CIAFISH secara terus
menerus sangat diharapkan guna menyempurnakan program ini.
SISTEM INFORMASI PENGKAJIAN STOK IKAN (STUDI
KASUS : IKAN KURISI Nemipterus japonicus, Bloch 1791
DI PERAIRAN SELAT SUNDA YANG DIDARATKAN
DI PPP LABUAN, PANDEGLANG, BANTEN)
PRECIA ANITA ANDANSARI
C24080029
Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Perikanan pada Fakultas Perikanan dan Ilmu Kelautan
DEPARTEMEN MANAJEMEN SUMBERDAYA PERAIRAN
FAKULTAS PERIKANAN DAN ILMU KELAUTAN
INSTITUT PERTANIAN BOGOR
BOGOR
2012
PENGESAHAN SKRIPSI
Judul Skripsi : Sistem Informasi Pengkajian Stok Ikan (Studi Kasus : Ikan
Kurisi Nemipterus japonicus, Bloch 1791 di Perairan Selat
Sunda yang Didaratkan Di PPP Labuan, Pandeglang,
Banten)
Nama Mahasiswa : Precia Anita Andansari
Nomor Induk : C24080029
Program Studi : Manajemen Sumberdaya Perairan
Menyetujui:
Tanggal Lulus : 25 Juli 2012
Mengetahui,
Ketua Departemen
Manajemen Sumberdaya Perairan
Dr. Ir. Yusli Wardiatno, M. Sc
NIP. 19660728 199103 1 002
Pembimbing I,
Dr. Ir. Rahmat Kurnia, M. Si
NIP. 19680928 199302 1 001
Pembimbing II,
Dr. Ir. Achmad Fachrudin, M.Si
NIP. 1964032 198903 1 003
vii
PRAKATA
Puji syukur penulis panjatkan kepada Tuhan Yang Maha Esa karena berkat
rahmat yang diberikan-NYA penulis dapat menyelesaikan skripsi yang berjudul
“Sistem Informasi Pengkajian Stok Ikan (Studi Kasus : Ikan Kurisi Nemipterus
japonicus, Bloch 1791 di Perairan Selat Sunda yang Didaratkan Di PPP
Labuan, Pandeglang, Banten)”. Skripsi ini merupakan salah satu syarat untuk
memperoleh gelar sarjana pada Fakultas Perikanan dan Ilmu Kelautan, Institut
Pertanian Bogor.
Pada kesempatan ini penulis ingin mengucapkan terima kasih yang sebesar-
besarnya kepada semua pihak yang memberikan masukan dan arahan kepada penulis
dalam menyelesaikan skripsi ini. Penulis menyadari bahwa skripsi ini masih terdapat
kekurangan. Namun demikian, penulis mengharapkan bahwa hasil penelitian ini
dapat bermanfaat untuk berbagai pihak.
Bogor, Agustus 2012
Penulis
viii
UCAPAN TERIMA KASIH
Pada kesempatan ini penulis mengucapkan terima kasih kepada:
1. Dr. Ir. Rahmat Kurnia, M.Si selaku dosen pembimbing I dan pembimbing
akademik yang banyak memberikan bimbingan serta masukan dan arahan
selama penulis menempuh pendidikan di Departemen Manajemen
Sumberdaya Perairan hingga pelaksanaan penelitian dan penyusunan skripsi.
2. Dr. Ir. Achmad Fachrudin, M.Si selaku dosen pembimbing II yang telah
banyak memberikan bimbingan, masukan, dan saran selama pelaksanaan
penelitian dan penyusunan skripsi.
3. Dr. Ir M. Mukhlis Kamal M.Sc dan Ir. Agustinus M. Samosir M.Phil selaku
dosen penguji tamu dan Ketua Komisi Pendidikan S1 yang telah
memberikan masukan dan saran yang sangat berarti untuk penulis.
4. Seluruh dosen MSP yang telah memberikan ilmu, pengalaman dan saran
selama perkuliahan.
5. Seluruh staf Tata Usaha MSP serta seluruh civitas MSP atas bantuan dan
dukungan yang telah diberikan kepada penulis.
6. Keluarga tercinta; Papah (Sugiyanto), Ibu (Endang Asri B.), Kakak (Krisna)
atas doa, kasih sayang, semangat, perhatian, kesabaran dan dukungan baik
moril maupun materiil kepada penulis selama ini.
7. Abdul Qifli Sangadji dan Oki Maulana yang telah membimbing dalam
pembuatan program CIAFISH.
8. Bapak Masudin Sangadji atas saran dan dukungannya.
9. Teman seperjuangan penelitian tim Labuan: Eni, Doni, Ayu, Ria, Rena, Yuli,
Jaun, Rizal, Tilana, Elfrida, Rina, Icha, Rani, Ami, Dila, dan Hilda.
10. Teman-teman MSP 45 : Eni Mega, Rani Nuraisah, Gita Rahmawati dan
teman-teman lain yang tidak bisa disebutkan satu per satu.
11. De Bungsu : Nimas U. Wening M, Indah MP, Dea U.
12. Teman-teman kost Harmoni-2 : Sausan, Ebi, Anggi, Dini, Ai, Tira, Ismi
13. Keluarga Besar HISPAN1C, CENTURY, BEM FPIK Kabinet Penakluk
Samudera dan Kabinet Ekspansi Biru : Asep, Udoh, Aldilla dan Jihan, Ka
Topik dan Casti H
ix
RIWAYAT HIDUP
Penulis dilahirkan di Tangerang pada tanggal 25
Februari 1990 dari pasangan Bapak Sugiyanto dan Ibu Endang
Asri Bunyani. Penulis merupakan putri kedua dari dua
bersaudara. Penulis memulai pendidikannya di Taman Kanak-
Kanak Fajar (1996), SDN Jombang 1 (2002), SMP Negeri 3
Ciputat (2005), SMA Negeri 1 Ciputat (2008). Ditahun 2008
penulis melanjutkan pendidikannya di Institut Pertanian Bogor melalui jalur USMI
(Undangan Seleksi Masuk IPB) pada program sarjana Manajemen Sumberdaya
Perairan, Fakultas Perikanan dan Ilmu Kelautan, Institut Pertanian Bogor.
Semasa di IPB penulis aktif berorganisasi di Century (Center of
entrepreneurship for youth) sebagai sekertaris divisi Promotion and Marketing
tahun 2009-2010, BEM-C sebagai sekertaris divisi BEST (2009-2010) dan sekertaris
umum (2010-2011). Penulis juga pernah menjadi Asisten Luar Biasa untuk Mata
Kuliah Ikhtiologi (2009-2010) dan Metode Penarikan Contoh (2010-2011).
Untuk menyelesaikan sudi di Fakultas Perikanan dan Ilmu Kelautan, penulis
menyusun skripsi yang berjudul “Sistem Pengkajian Stok Ikan (Studi Kasus :
Ikan Kurisi Nemipterus japonicus, Bloch 1791 di Perairan Selat Sunda yang
Didaratkan Di PPP Labuan, Pandeglang, Banten)”.
x
DAFTAR ISI
Halaman
DAFTAR TABEL .......................................................................................... xii
DAFTAR GAMBAR ...................................................................................... xiii
DAFTAR LAMPIRAN .................................................................................. xiv
1. PENDAHULUAN ................................................................................... 1 1.1 Latar Belakang ................................................................................ 1 1.2 Perumusan Masalah ......................................................................... 2 1.3 Tujuan .............................................................................................. 3 1.4 Manfaat ............................................................................................ 4
2 TINJAUAN PUSTAKA .......................................................................... 5 2.1 Kondisi PPP Labuan, Banten .......................................................... 5 2.2 Sumberdaya Ikan ............................................................................ 5 2.3 Ikan Kurisi (Nemipterus japonicus) ................................................ 6 2.4 Sebaran Frekuensi Panjang ............................................................. 8 2.5 Pertumbuhan .................................................................................... 8
2.6 Hubungan Panjang-Berat ................................................................ 9 2.7 Nilai L∞, K, dan t0 ........................................................................... 9 2.8 Mortalitas dan Laju Eksploitasi ....................................................... 10 2.9 Model Surplus Produksi .................................................................. 11 2.10 Sistem Informasi Perikanan ............................................................. 11 2.11 Sistem Penunjang Keputusan .......................................................... 13 2.12 Pengembangan Sistem ..................................................................... 15 2.13 Microsoft .NET Framework ............................................................ 17 2.14 Bahasa Pemrograman C# ................................................................ 17 2.15 Basis Data ........................................................................................ 17
2.16 XML ............................................................................................... 18
3. METODOLOGI ...................................................................................... 19 3.1 Waktu dan Lokasi Penelitian ........................................................... 19 3.2 Alat dan Bahan ................................................................................ 19 3.3 Pengumpulan Data .......................................................................... 19
3.4 Rancangan Penelitian ...................................................................... 20 3.4.1 Tahap Investigasi ................................................................. 20 3.4.2 Tahap Analisa ...................................................................... 20 3.4.3 Tahap Desain ....................................................................... 24 3.3.4 Tahap Implementasi ............................................................ 24
3.3.5 Tahap Uji Coba dan Perawatan ........................................... 25
4. HASIL DAN PEMBAHASAN ............................................................... 26 4.1 Hasil Pengembangan Sistem ........................................................... 26
4.1.1 Tahap Investigasi ................................................................. 26 4.1.2 Tahap Analisis ..................................................................... 28
xi
4.1.3 Tahap Desain ....................................................................... 30 4.1.4 Tahap Implementasi ............................................................ 34 4.1.5 Tahap Uji Coba dan Perawatan ........................................... 34 4.2 CIAFISH (Calculation, Information, and Analysis of Fisheries) ... 35 4.3 Pengkajian Stok Ikan Kurisi ............................................................ 49 4.4 Rencana Pengelolaan Perikanan Stok Ikan Kurisi .......................... 59
5. KESIMPULAN DAN SARAN .................................................................. 60 5.1 Kesimpulan ...................................................................................... 60 5.2 Saran ................................................................................................ 60
DAFTAR PUSTAKA ..................................................................................... 61
LAMPIRAN .................................................................................................... 66
xii
DAFTAR TABEL
Halaman
1. Analisa sistem ........................................................................................... 21
2. Tahap investigasi dari CIAFISH ............................................................... 27
3. Tabel Pertumbuhan ................................................................................... 33
4. Tabel Model Surplus Produksi ................................................................. 33
5. Perbandingan Informasi Hasil Olahan Hubungan Panjang dan ............... 50
6 . Perbandingan nilai b di berbagai lokasi ................................................... 52
7. Perbandingan Informasi Hasil Olahan Sebaran Frekuensi Panjang Ikan
Kurisi Nemipterus japonicus oleh Rahayu 2012 Menggunakan Ms.
Excel dengan CIAFISH ............................................................................ 53
8. Perbandingan Informasi Hasil Olahan Nilai K, L∞, t0 Ikan Kurisi
Nemipterus japonicus oleh Rahayu 2012 Menggunakan FiSAT dan
Ms.Excel dengan CIAFISH ...................................................................... 54
9. Perbandingan Informasi Hasil Olahan Nilai Mortalitas dan Laju
Eksploitasi Ikan Kurisi Nemipterus japonicus oleh Rahayu 2012
menggunakan Ms.Excel dengan CIAFISH. .............................................. 55
10. Perbandingan Informasi Hasil Olahan Model Surplus Produksi Ikan
Kurisi Nemipterus japonicus oleh Rahayu 2012 menggunakan
Ms.Excel dengan CIAFISH. ..................................................................... 56
xiii
DAFTAR GAMBAR
Halaman
1. Kerangka pemikiran ............................................................................... 3
2. Ikan Kurisi Nemipterus japonicus ............................................................ 7
3. Siklus Pengembangan Sistem dalam Model Waterfall ............................. 16
4. Skema perancangan sistem analisa dan informasi akan aspek
pertumbuhan, laju mortalitas, dan model surplus produksi ...................... 29
5. Diagram alir input, proses, dan output dari form pertumbuhan dan
model surplus produksi ............................................................................. 30
6. Skema desain menu dengan sub menu sistem .......................................... 32
7. Tampilan Awal Program ........................................................................... 36
8. Tampilan saat new file .............................................................................. 37
10. Tampilan Form Pertumbuhan ................................................................... 38
11 a. Tampilan form input ............................................................................... 39
11 b. Tampilan data dari form input yang dimasukkan ke Tabel .................... 39
12. Tampilan Untuk Mengubah Data ............................................................. 40
13. Tampilan ketika Data di Hapus ................................................................ 40
14 a. Tampilan Tabel T .................................................................................... 41
14 b. Tampilan Informasi Hubungan Panjang Berat ....................................... 42
15a Tampilan Informasi Sebaran Frekuensi Panjang ...................................... 43
15b. Tampilan Informasi nilai K, L∞, t0, mortalitas tangkapan, dan laju
eksploitasi ................................................................................................. 43
16. Tampilan Saran Pengelolaan .................................................................... 44
17. Tampilan untuk simpan data ..................................................................... 44
18. Tampilan Form Model Surplus Produksi ................................................. 45
19. Tampilan informasi fmsy, MSY, TAC, R2 ................................................. 46
20. Tampilan Saran Pengelolaan dari Model Surplus Produksi ..................... 46
21. Tampilan Menu Bantuan .......................................................................... 47
22. Tampilan Menu Deskripsi Aplikasi .......................................................... 47
23. Tampilan Menu Tentang Pengembang ..................................................... 48
xiv
DAFTAR LAMPIRAN
Halaman
1. Alat dan bahan yang digunakan selama melakukan penelitian ................ 67
2. Struktur Basis Data Pertumbuhan dan Model Surplus Produksi .............. 68
3. Listing Program CIAFISH ....................................................................... 69
1. PENDAHULUAN
1.1 Latar Belakang
Indonesia mempunyai perairan laut seluas 5,8 juta km2 dan mencapai
hampir 70 persen dari total luas wilayahnya (KADIN Indonesia 2011). Wilayah
laut yang luas ini menyimpan banyak potensi sumber daya perikanan yang
merupakan komoditas perikanan laut primadona untuk dimanfatkan. Salah satu
daerah di Indonesia yang memiliki potensi dalam hal perikanan tangkap yaitu
Kabupaten Pandeglang, Provinsi Banten, yang terletak di ujung bagian barat
Pulau Jawa dan berhadapan langsung dengan Selat Sunda dan Samudera Hindia.
Laut Jawa dan Selat Sunda termasuk ke dalam Wilayah Pengelolaan Perikanan
(WPP) Utara Jawa dan Selat Sunda dengan potensi lestari sebesar 847,515 ribu
ton pertahun (Rakhmania 2008).
Salah satu Pelabuhan Perikanan Pantai (PPP) di Kabupaten Pandeglang
yaitu PPP Labuan yang terletak di lokasi strategis dengan daerah-daerah
penangkapan ikan yang potensial di perairan Selat Sunda dan Samudera Hindia,
serta kedekatannya dengan pasar-pasar penting terutama Daerah Khusus Ibu kota
(DKI) Jakarta. Salah satu jenis ikan yang didaratkan di PPP Labuan ialah ikan
kurisi dari famili Nemipteridae. Ikan tersebut menempati urutan ketiga terbanyak
dari hasil tangkap ikan demersal yang didaratkan di PPP Labuan Banten yaitu
sebesar 14 % (Ditjen-Tangkap KKP 2010 in Rahayu 2012).
Pemanfaatan akan potensi sumberdaya laut tersebut harus didasari pada
prinsip pengelolaan sumberdaya alam yaitu bagaimana memanfaatkan
sumberdaya tersebut dengan memperhatikan kelestariannya agar tetap terjaga
sehingga dapat dimanfaatkan secara terus menerus dan dapat dinikmati oleh
generasi yang akan datang. Pengelolaan perikanan membutuhkan suatu analisis
dan informasi mendasar, terencana dengan benar dan terstruktur agar pengambilan
keputusan dalam pengelolaan tersebut lebih efektif dan efisien.
Menurut Widodo & Suadi 2006 bahwa dalam perumusan program
pengelolaan perikanan dibutuhkan suatu informasi salah satunya yaitu informasi
mengenai aspek biologi dari setiap perikanan. Aspek biologi perikanan dalam hal
ini berkisar tentang ilmu pengkajian stok dari spesies tertentu yang sedang dikaji.
2
Aspek biologi sering digunakan dalam penyusunan model pengelolaan perikanan
karena dapat menggambarkan karakteristik dari stok ikan.
Seiring dengan perkembangan teknologi yang semakin maju, namun
masih minimnya analisis dan informasi perikanan memungkinkan terjadinya
kesalahan dalam perencanaan pengelolaan perikanan. Penulis berinisiatif untuk
mengembangkan sebuah sistem informasi yang mendasar mengenai pengkajian
stok ikan secara terpadu. Program ini bernama CIAFISH (Calculation,
Information, and Analysis of Fisheries). Hasil rancangan ini nantinya akan
memudahkan dalam analisis pengkajian stok ikan.
1.2 Perumusan Masalah
Sistem analisis dan informasi yang ada saat ini masih minim dan belum
tertata dengan rapi. Hal ini diperkuat oleh pernyataan Tangke 2010 bahwa
Tantangan dalam pengembangan usaha perikanan di Indonesia adalah lemahnya
sistem basis data dan sistem informasi perikanan yang berpengaruh terhadap
akurasi dan ketepatan waktunya, kelemahan ini dapat mengakibatkan salah
perencanaan akan berakibat pada kegagalan usaha. Salah satunya yaitu sistem
analisis dan informasi akan pengkajian stok ikan yang masih minim dan belum
terpadu. Microsoft Excel dan FiSAT merupakan salah satu contoh sistem analisis
dan informasi akan pengkajian stok ikan yang umum digunakan. Namun sistem
tersebut memiliki kekurangan dalam penggunaannya.
Penggunaan Microsoft Excel mengharuskan pengguna memahami secara
baik akan rumus pengkajian stok ikan. Hal ini akan menyulitkan bagi pengguna
yang kurang teliti dan tidak begitu memahami akan rumus pengkajian stok ikan.
Hal tersebut akan mempengaruhi proses dalam menghasilkan informasi
pengkajian stok ikan yang menjadi salah satu dasar pertimbangan dalam
pengelolaan perikanan. Sehingga akan memungkinkan terjadinya kesalahan dalam
perencanaan pengelolaan perikanan. Penggunaan FiSAT membutuhkan waktu
lama untuk memahami cara penggunaannya. Sehingga dapat dikatakan bahwa
sistem tersebut kurang user friendly. Selain itu belum terpadunya sistem analisis
dan informasi pengkajian stok ikan menjadikan tidak efisien dalam memperoleh
3
informasi akan pengkajian stok ikan yang menjadi dasar pertimbangan
pengelolaan perikanan. Berikut Gambar 1 disajikan kerangka pemikiran dari
penelitian ini.
Perencanaan pengelolaan
perikanan membutuhkan sistem
analisis dan informasi yang
mendasar akan pengkajian stok
ikan
Masih minimnya sistem analisis
dan informasi mengenai
pengkajian stok ikan secara
terpadu
Diperlukannya sistem analisis
dan informasi akan pengkajian
stok ikan secara efisien dan
terpadu
1. Pertumbuhan
(hubungan panjang dan
berat, sebaran frekuensi
panjang, nilai K, L∞, t0)
2. Mortalitas
3. Laju eksploitasi
4. Model surplus produksi
instansi terkait
perikananmasyarakat umum akademisi
Sistem yang ada kurang user
friendly dan belum terpadu
Gambar 1. Kerangka pemikiran
1.3 Tujuan
Penelitian ini bertujuan untuk mengembangkan sebuah sistem analisis dan
informasi biologi yang terpadu akan hubungan panjang berat, sebaran frekuensi
panjang, nilai K, L∞, t0, nilai mortalitas, laju eksploitasi dan model surplus
produksi.
4
1.4 Manfaat
Manfaat yang didapat dengan dikembangkannya program CIAFISH
(Calculation, Information, and Analysis of Fisheries) adalah sebagai berikut:
a. Memudahkan dalam analisis pengkajian stok ikan
b. Aplikasi ini dapat digunakan oleh instansi terkait perikanan, akademisi,
maupun peneliti
c. Informasi dari analisis pengkajian stok ikan tersebut dapat digunakan
sebagai dasar penunjang keputusan dalam pengelolaan perikanan
2 TINJAUAN PUSTAKA
2.1 Kondisi PPP Labuan, Banten
Letak Geografis Provinsi Banten berada antara 5o7'50" – 7
o1'11" LS dan
105o1'11" – 106
o'7’12" BT, dengan luas wilayah 9.160,70 Km
2. Wilayah terluas
adalah Kabupaten Pandeglang dengan luas 3.746,90 Km2.
Di bagian Utara,
wilayah Provinsi Banten berbatasan dengan Laut Jawa. Batas sebelah Barat
adalah Selat Sunda, sebelah Timur adalah Samudera Hindia dan batas sebelah
Timur adalah Provinsi Jawa Barat. Provinsi Banten dikelilingi oleh laut, oleh
karena itu memiliki sumber daya laut yang potensial. Salah satunya yaitu berada
di daerah Labuan, Kabupaten Pandeglang, Banten (www.bantenprov.go.id).
Pelabuhan Perikanan Pantai (PPP) Labuan berada di sebelah Utara
Kabupaten Pandeglang, dan terletak di Desa Teluk, Kecamatan Labuan
(Anonymous 2000 in Rakhmania 2008). Volume produksi hasil tangkapan
didaratkan di PPP Labuan pada tahun 2005 adalah 2.150,2 ton yang merupakan
produksi PPP terbesar dibanding PPP-PPP lainnya di Kabupaten Pandeglang;
yaitu sekitar 71,4% dari jumlah volume produksi hasil tangkapan Kabupaten
Pandeglang. Nilai produksi PPP ini juga tertinggi diantara PPP-PPP lainnya pada
tahun yang sama yaitu sebesar Rp 13.336,8 juta atau sekitar 82,3% dari jumlah
nilai produksi hasil tangkapan kabupaten ini (Rakhmania 2008).
2.2 Sumberdaya Ikan
Sumberdaya adalah sesuatu yang berguna dan bernilai pada kondisi kita
menemukannya. Secara umum sumberdaya alam dikelompokkan menjadi tiga
bagian yaitu (1) sumberdaya alam yang tidak dapat diperbaharui dengan
contohnya adalah barang-barang tambang (minyak bumi dan batu bara), (2)
sumberdaya alam mengalir dengan contohnya adalah energi matahari dan
gelombang laut, dan (3) sumberdaya alam yang dapat diperbaharui dengan
contohnya adalah hutan dan ikan (Randal 1987 in Ruslan 2005).
Ikan termasuk kelompok ketiga sebagai sumberdaya alam yang dapat
diperbaharui. Sifat kelompok ini apabila telah dipanen masih akan tumbuh
6
kembali dalam waktu dan dengan kecepatan tertentu. Sifatnya dapat diperbaharui.
Tetapi juga punya batas, apabila eksploitasi melebihi batas maksimum, maka
perkembangan dan pertumbuhan akan terganggu dan akan mengakibatkan
kepunahan. Jadi dalam usaha eksploitasi diperlukan manajemen yang bijaksana
(Muzakir 2008).
Potensi sumberdaya perikanan terdiri dari sumberdaya perikanan tangkap,
budidaya pantai (tambak), budidaya laut, dan bioteknologi kelautan (Dahuri 2001
in Tangke 2010). Potensi perikanan laut sesungguhnya merupakan asset yang
sangat besar bagi pertumbuhan ekonomi Indonesia namun masih belum banyak
yang digarap secara optimal karena informasinya belum ditempatkan dalam suatu
sistem basis data yang terpadu sehingga menyulitkan dalam pencariannya
(Tangke 2010).
Salah satu sifat sumberdaya ikan adalah sangat dinamis yang dapat
berubah dengan cepat sesuai dengan ruang dan waktu dan dengan kondisi lautan
yang sangat luas, maka untuk pengelolaan sumberdaya ikan diperlukan informasi
yang lebih spesifik baik secara temporal maupun secara spasial. Masih banyak
informasi mengenai sumberdaya perikanan yang belum tersedia misalnya dimana
ikan berada, kapan, jenis apa saja, berapa banyak, daerah mana yang belum
dimanfaatkan, bagaimana pengaruh kondisi oseanografi terhadap sumberdaya dan
sebagainya (Tangke 2010).
2.3 Ikan Kurisi (Nemipterus japonicus)
Klasifikasi ikan kurisi menurut FAO (2001) in Rahayu (2012) adalah
sebagai berikut :
Filum : Chordata
Sub filum : Vertebrata
Super kelas : Osteichthyes
Kelas : Actinopterygii
Sub Kelas : Actinopterygii
Super ordo : Acanthopterygii
Ordo : Perciformes
Sub ordeo : Percoidei
7
Family : Nemipteridae
Genus : Nemipterus
Spesies : Nemipterus japonicus (Bloch 1791)
Nama Internasional : Japanese threadfine bream
Nama Indonesia : Kurisi
Ciri-ciri umum ikan kurisi menurut Russel 1990 in Fitriyanti 2000 antara
lain sirip dada sangat panjang yaitu 1,0-1,3 kali panjang kepala dan hampir
mencapai sirip dubur, sirip perut cukup panjang dan hampir mencapai anus. Sirip
ekor menyerupai garpu dengan bagian cuping sirip ekor lebih panjang dari bagian
bawah dan membentuk filamen yang cukup panjang. Terdapat 4-5 gigi taring
yang kecil pada bagian anterior rahang atas. Warna ikan pada bagian atas merah
muda dan keperakan dibawahnya, bagian atas kepala di belakang mata berwarna
keemasan, serta mempunyai 11-12 garis berwarna kuning di sepanjang tubuh
yang dimulai dari belakang kepala sampai dasar sirip ekor. Berikut Gambar 2
disajikan gambar ikan kurisi (Nemipterus japonicus).
Gambar 2. Ikan Kurisi Nemipterus japonicus
Sumber : www.fishbase.org
Ikan kurisi merupakan ikan demersal, namun ada juga yang hidup di dasar
dan kolom air pada saat matahari terbenam. Ikan kurisi merupakan hewan
karnivora. Makanan ikan ini terdiri dari ikan kecil, crustacea, molusca (terutama
cephalopoda), polychaeta dan echinodermata (De Bruin et al. In Fitriyanti 2000).
Berdasarkan penelitian yang terdahulu dapat diketahui bahwa pola pertumbuhan
ikan kurisi adalah alometrik negatif dengan b = 2.664 (Raeisi et al. 2012). Untuk
8
ukuran pertama kali matang gonad ikan kurisi Nemipterus japonicus menurut
Kizhakudan (2008) sebesar 141 mm.
2.4 Sebaran Frekuensi Panjang
Metode pendugaan pertumbuhan berdasarkan data frekuensi panjang
sering digunakan jika metode lain seperti metode penentuan umur tidak dapat
dilakukan (Sparre and Venema 1999). Menurut Pauly 1983 in Sinaga 2010 bahwa
hasil dari pengukuran panjang ikan yang dijadikan contoh dan analisa dengan
benar dapat menduga parameter pertumbuhan yang digunakan dalam pendugaan
stok spesies tunggal. Parameter pertumbuhan tersebut diantaranya kelompok
ukuran ikan yang penentuannya didasarkan pada frekuensi panjang individu
dalam suatu spesies dengan kelompok umur yang sama akan bervariasi mengikuti
sebaran normal (Effendie 2005) dan untuk melihat komposisi tangkapan.
Setelah komposisi umur diketahui melalui analisis frekuensi panjang, maka
parameter pertumbuhan, mortalitas penangkapan dan laju eksplotasi dapat
ditentukan dengan metode-metode estimasi yang sesuai (Syakila 2009). Boer
1996 bahwa penggunaan histogram frekuensi panjang sering dianggap teknik
yang paling sederhana diterapkan untuk mengetahui tingkatan stok ikan, tetapi
yang perlu dicatat bahwa struktur data panjang sangat bervariasi tergantung
letaknya baik secara geografis, habitat, maupun tingkah laku. Selain itu dapat
disebabkan oleh beberapa kemungkinan seperti perbedaan lokasi pengambilan
ikan contoh, keterwakilan ikan contoh yang diambil dan kemungkinan tekanan
penangkapan yang tinggi terhadap ikan (Syakila 2009)
2.5 Pertumbuhan
Pertumbuhan suatu individu merupakan pertambahan ukuran panjang atau
berat dalam suatu waktu (Effendie 2005). Sedangkan menurut Affandi 2002
bahwa pengertian pertumbuhan populasi merupakan proses perubahan jumlah
individu atau biomasa pada periode waktu tertentu. Secara umum pertumbuhan
ikan dipengaruhi oleh faktor internal dan faktor eksternal. Faktor internal pada
umumnya faktor yang sukar dikontrol diantaranya yaitu keturunan (genetik), jenis
9
kelamin, umur, parasit dan penyakit. Namun faktor eksternal yang mempengaruhi
pertumbuhan diantaranya makanan dan suhu perairan (Effendie 2005).
Pentingnya pendugaan pertumbuhan dalam dinamika populasi yaitu laju
pertumbuhan mempengaruhi kapan ikan pertama kali bertelur (kematangan),
rekruitment, komposisi umur stok dan mortalitas (Aziz 1989). Effendie 2005
mengatakan pola pertumbuhan ikan terdiri atas isometrik dan allometrik.
Isometrik adalah pertumbuhan pada ikan yang terjadi terus menerus dimana
penambahan berat proporsional terhadap perubahan panjang. Sedangkan
allometrik adalah pertambahan berat tidak proposional terhadap perubahan
panjang.
2.6 Hubungan Panjang-Berat
Analisis hubungan panjang dengan berat bertujuan untuk mengetahui pola
pertumbuhan ikan di alam yang selanjutnya akan berguna bagi kegiatan
pengelolaan perikanan (Ricker 1975 in Effendie 2005). Dari pola pertumbuhan
akan dihasilkan nilai regresi antara panjang dengan berat serta akan didapatkan
nilai a dan b. Apabila nilai b=3 disebut pola pertumbuhan isometrik yaitu
pertumbuhan panjang dengan berat sebanding. Ketika b <3 ditafsirkan bahwa
pertambahan beratnya tidak secepat pertambahan panjang (pola pertumbuhan
allometrik negatif) dan sebaliknya b> 3 ditafsirkan bahwa pertambahan beratnya
lebih cepat dibandingkan pertambahan panjangnya yang disebut pola
pertumbuhan allometrik positif (Effendie 2005). Raesi et al. 2012 mengatakan
bahwa nilai b dapat menggambarkan bentuk tubuh.
2.7 Nilai L∞, K, dan t0
Persamaan pertumbuhan Von Bertalanffy 1938 in Aziz 1989 adalah satu
dari kebanyakan model yang digunakan secara luas untuk menduga panjang atau
berat ikan pada titik waktu mendatang. Model ini menjelaskan perubahan panjang
(Lt) sepanjang waktu sebagai suatu fungsi dari panjang maksimum (L∞) dan
koefisien pertumbuhan (K). Metode Ford Walford dapat digunakan untuk
menduga panjang maksimum (L∞) ikan dan koefisien pertumbuhan (K) dari
10
persamaan Von Bartalanffy (Aziz 1989). L∞ yaitu nilai rata-rata panjang ikan
yang sangat tua. Koefisien pertumbuhan (K) didefinisikan sebagai parameter
yang menyatakan kecepatan kurva pertumbuhan dalam mencapai panjang
asimtotiknya (L∞) dari pola pertumbuhan ikan. Jadi semakin tinggi nilai koefisien
pertumbuhan, maka ikan semakin cepat mencapai panjang asimtotik dan beberapa
spesies kebanyakan diantaranya berumur pendek. Sebaliknya ikan yang memiliki
nilai koefisien pertumbuhan rendah maka umurnya semakin tinggi karena lama
untuk mencapai nilai panjang asimtotiknya (Spare & Venema 1999).
2.8 Mortalitas dan Laju Eksploitasi
Laju mortalitas total (Z) adalah penjumlahan laju mortalitas alami (M) dan
laju mortalitas penagkapan (F). Mortalitas alami yaitu mortalitas yang terjadi
karena berbagai sebab selain penangkapan seperti pemangsaan, penyakit, stres
pemijahan, kelaparan dan usia tua (Sparre & Venema 1999).
Nilai laju mortalitas alami berkaitan dengan nilai parameter pertumbuhan
Von Bartalanffy yaitu K dan L∞. Ikan yang pertumbuhannya cepat (nilai k tinggi)
mempunyai nilai “M” tinggi dan sebaliknya. Nilai “M” berkaitan dengan L∞
karena pemangsa ikan besar lebih sedikit dari ikan kecil. Sedangkan mortalitas
penangkapan yaitu mortalitas yang terjadi akibat adanya aktivitas penangkapan.
Tingginya laju mortalitas penangkapan dan menurunnya laju mortalitas alami juga
dapat menunjukkan dugaan terjadi growth overfishing yaitu sedikitnya jumlah
ikan tua di alam (Sparre dan Venema 1999).
Laju eksploitasi (E) merupakan jumlah ikan yang ditangkap dibandingkan
dengan jumlah total ikan yang mati karena semua faktor baik alami maupun
penangkapan (Pauly 1984 in Sinaga 2010). Menurut Pauly 1984 in Sinaga 2010
bahwa menduga stok yang dieksploitasi optimum, laju eksploitasi (E) sama
dengan 0.5. Semakin tinggi tingkat eksploitasi di suatu daerah maka mortalitas
penangkapannya semakin besar (Lelono 2007 in Syakila 2009).
11
2.9 Model Surplus Produksi
Pengkajian stok mencakup suatu estimasi tentang jumlah atau kelimpahan
(abundance) dari sumberdaya. Selain itu, mencakup pula pendugaan terhadap laju
penurunan sumberdaya yang diakibatkan oleh penangkapan serta sebab-sebab
lainnya, dan mengenai berbagai tingkat laju penangkapan atau tingkat kelimpahan
stok yang dapat menjaga dirinya dalam jangka panjang (Widodo & Suadi 2006).
Pada prinsipnya kelestarian sumberdaya akan terjamin jika jumlah volume
ikan yang ditangkap sama dengan jumlah ikan akibat pertumbuhan populasi.
Konsep ini kemudian berkembang menjadi model pengelolaan perikanan tangkap
yang disebut model surplus produksi. Hal tersebut bertujuan untuk induk-induk
berkembang biak secara alamiah (Susilo 2009).
Model surplus produksi merupakan model-model stok tunggal yang
dikarakteristikkan tidak memerlukan data struktur umur namun menggunakan
hasil tangkapan dan upaya penangkapan (Aziz 1989). Tujuan penggunaan model
surplus produksi untuk meningkatkan upaya optimum ( effort MSY atau fmsy),
yaitu upaya yang menghasilkan suatu hasil tangkapan yang maksimum lestari
tanpa mempengaruhi stok secara jangka panjang atau yang sering disebut
Maximum Sustainable Yield/MSY serta jumlah tangkapan yang diperbolehkan
(JTB/TAC) (Sinaga 2011). Jumlah tangkapan yang diperbolehkan (JTB/TAC)
adalah 80% dari potensi maksimum lestarinya (MSY) (Susilo 2009).
2.10 Sistem Informasi Perikanan
Sistem dapat didefinisikan sebagai kesatuan elemen yang saling terkait
(Rochim 2002). Elemen-elemen tersebut saling berhubungan dan bekerja bersama
untuk mencapai tujuan bersama dengan menerima input/masukan serta
menghasilkan output/keluaran dalam proses yang terjadi (O’Brien 2008).
Komponen-komponen atau fungsi dasar dari sistem menurut O’Brien 2008
diantaranya : input/masukan, proses, output/keluaran.
Informasi memiliki arti data yang telah diolah/terorganisir sehingga
memiliki arti dan nilai bagi penerima informasi (Stair 1992). Informasi
12
merupakan hasil dari pengolahan data dalam suatu bentuk yang lebih berguna
bagi penerimanya dan menggambarkan suatu kejadian nyata yang digunakan
untuk pengambilan keputusan. Sumber dari informasi adalah data yang
merupakan bentuk yang masih mentah (belum dapat bercerita banyak) sehingga
perlu diolah lebih lanjut melalui suatu model. Data tersebut akan ditangkap
sebagai input/masukan (Andayati 2010). Pengertian dari sistem dan informasi
dapat digabungkan menjadi sekelompok elemen yang saling berhubungan, bekerja
bersama untuk mencapai tujuan bersama dengan menerima input/masukan berupa
data serta menghasilkan output/masukan berupa informasi dalam proses
transformasi yang teratur. Komponen sistem informasi menurut Stair 1992 dalam
bukunya Principle of Information Systems a Managerial Approach diantaranya :
hardware/perangkat keras, software/perangkat lunak, database, jaringan, prosedur
dan manusia.
Sistem informasi perikanan Indonesia pada dasarnya berfungsi sebagai
infrastruktur informasi yang dapat digunakan untuk memecahkan berbagai
permasalahan dan juga mengakomodir semua tujuan yang diharapkan. Sistem ini
diharapkan dapat memberikan informasi yang berbasis multimedia kepada
penggunanya (Tangke 2010).
Pembentukan sistem informsi perikanan memerlukan informasi perikanan.
Informasi perikanan yang diperlukan dikelompokkan dalam informasi perikanan
tangkap dan informasi perikanan budidaya. Informasi perikanan tangkap yang
diperlukan meliputi: (1) distribusi spasial dan temporal jenis-jenis sumberdaya
perikanan, (2) potensi lestari setiap jenis sumberdaya perikanan, (3) persyaratan
ekologis bagi kehidupan dan pertumbuhan setiap jenis sumberdaya perikanan, (4)
trophodynamics (transfer energi dan materi antar trophic level) dalam suatu
ekosistem perairan dimana sumberdaya perikanan yang dikelola hidup, (5)
dinamika populasi sumberdaya perikanan, (6) sejarah hidup dari sumberdaya
perikanan, (7) kualitas perairan dimana sumberdaya hidup, dan (8) tingkat
penangkapan/pemanfaatan terhadap sumberdaya perikanan, dalam bentuk upaya
tangkap secara berkala, (9) Jumlah armada penangkapan ikan dari berbagai
ukuran baik yang artisanal maupun modern secara spasial dan temporal serta
13
jumlah nelayan yang memang benar-benar melakukan kegiatan sebagai nelayan
(Soselisa 2001 in Tangke 2010).
Tantangan dalam pengembangan usaha perikanan di Indonesia adalah
lemahnya sistem basis data dan sistem informasi perikanan yang berpengaruh
terhadap akurasi dan ketepatan waktunya, kelemahan ini dapat mengakibatkan
salah perencanaan akan berakibat pada kegagalan usaha. Namun pada masa
sekarang dimana sumberdaya tersebut telah dimanfaatkan dan keadaan
lingkungan yang semakin memburuk ketepatan data dan timingnya menjadi
sangat menentukan. Tantangan lain adalah kualitas sumberdaya manusia, karena
untuk membangun suatu sistem informasi dibutuhkan sumberdaya manusia yang
berkualitas dan mampu menguasai teknologi sistem informasi serta
mengoperasikannya (Tangke 2010).
Salah satu permasalahan pembangunan perikanan Indonesia adalah
keterbatasan data dan informasi yang dapat dijadikan rujukan perencanaan dan
pengelolaan sumberdaya perikanan. Ketersediaan data dan informasi perikanan
yang akurat hingga saat ini masih dipandang sebagai hal yang tidak begitu penting
dan mendesak dalam pembangunan perikanan nasional. Hingga saat ini, belum
ada lembaga yang menangani penyediaan data dan informasi secara menyeluruh,
melainkan masih dilakukan oleh masing-masing instansi sesuai dengan
kebutuhan. Akibatnya sering terjadi perbedaan data dan informasi perikanan
(Tangke 2010).
2.11 Sistem Penunjang Keputusan
Sistem penunjang keputusan (SPK) atau Decision Support System adalah
sistem yang bertujuan untuk menyediakan informasi, membimbing, memberikan
prediksi, serta mengarahkan pengguna informasi agar dapat melakukan
pengambilan keputusan dengan lebih baik dan berbasis fakta (Kusumadewi &
Hermaduanti 2008). SPK yang baik harus mampu menggali informasi dari
database, melakukan analisis, serta memberikan interprestasi dalam bentuk yang
mudah dipahami dengan format yang mudah untuk digunakan (user friendly).
Menurut Turban 2001 in Trisnawarman & Erlysa 2007 tujuan dari
pembuatan sistem penunjang keputusan yaitu:
14
a. Membantu membuat keputusan untuk memecahkan masalah yang
sepenuhnya terstruktur dan tidak terstruktur
b. Mendukung penilaian manajer bukan mencoba menggantikannya. Komputer
dapat diterapkan dalam menyelesaikan masalah yang terstruktur. Untuk
masalah yang tidak terstruktur, pengguna bertanggung jawab untuk
menerapkan penilaian, dan melakukan analisis. Komputer dan manajer
bekerja sama sebagai tim pemecahan masalah
Suatu sistem penunjang keputusan (SPK) memiliki tiga subsistem sesuai yang
pernyataan oleh Ekasari dan Husnul 2007, yaitu:
a. Subsistem Manajemen Basis Data
Sumber data untuk SPK (Sistem penunjang keputusan) berasal dari luar dan
dari dalam (basis data), terutama untuk proses pengambilan keputusan pada level
manajemen puncak. Kemampuan yang dibutuhkan dari manajemen basis data
SPK adalah:
Mengkombinasikan berbagai variasi data melalui pengambilan dan
ekstraksi data
Menambahkan sumber data secara cepat dan mudah
Menggambarkan struktur data logikal sesuai dengan pengertian
pemakai sehingga pemakai mengetahui apa yang tersedia dan dapat
menentukan kebutuhan penambahan dan pengurangan
Mengelola berbagai variasi data.
b. Subsistem Manajemen Basis Model
Model-model yang banyak digunakan dalam proses pengambilan
keputusan dibagi dalam dua jenis, yaitu:
Model matematika, yang mempresentasikan sistem secara simbolik
dengan menggunakan rumus-rumus atau abstrak, selanjutnya akan
dijabarkan dalam operasi matriks, algoritma iteratif dan model-model
keputusan matematika lainnya.
Model informasi, yang mempresentasikan sistem dalam format grafik
atau tabel. Model informasi akan mendeskripsikan apa dan bagaimana
objek secara rinci (bentuk tabel atau daftar), merepresentasikan
15
hubungan antar objek (bentuk grafis), menunjukkan urutan tugas atau
proses yang dilakukan objek (peta proses operasi atau diagram alur)
c. Subsistem Penyelenggara Dialog
Komponen dialog suatu SPK (Sistem Penunjang Keputusan) adalah sarana
antarmuka/interface antara pemakai dengan SPK (Sistem Penunjang Keputusan).
Komponen dialog menyajikan output/keluaran SPK (Sistem penunjang
keputusan) pada pemakai dan mengumpulkan input/masukan ke dalam SPK
(Sistem Penunjang Keputusan). Beberapa jenis gaya dialog, diantaranya:
Dialog tanya jawab: sistem bertanya pemakai menjawab, seterusnya
hingga sistem menghasilkan jawaban yang diperlukan untuk mendukung
keputusan.
Dialog perintah: adalah perintah untuk menjalankan fungsi-fungsi SPK
(Sistem Penunjang Keputusan).
Dialog menu: pemakai memilih salah satu dari beberapa menu yang
disediakan.
Dialog form masukan/keluaran: sistem menyediakan form input
(masukan) untuk pemakai memasukkan data atau perintah dan form
output (keluaran) sebagai bentuk tanggapan dari sistem.
2.12 Pengembangan Sistem
Pengembangan sistem dapat berarti menyusun suatu sistem yang baru
untuk menggantikan sistem yang lama secara keseluruhan atau memperbaiki
sistem yang telah ada. Salah satu siklus pengembangan sistem yaitu systems
development life cycle (SDLC) dengan salah satu model yang sering digunakan
dalam mengembangkan sistem yaitu model Waterfall. Model Waterfall adalah
sebuah metode pengembangan software yang bersifat sekuensial dan sangat
populer untuk membangun atau mengembangkan sebuah software. Model
Waterfall ini terbagi menjadi 5 tahapan yang terdiri dari tahap investigasi,
analisis, desain, implementasi, uji coba dan perawatan (Stair & George 2010).
Model Waterfall tidak dapat dilaksanakan sebelum tahapan sebelumnya selesai,
16
sehingga harus dilaksanakan secara berurutan (Jumadi dan Widiadi 2009). Berikut
disajikan Gambar 3 siklus pengembangan sistem model waterfall.
Gambar 3. Siklus Pengembangan Sistem dalam Model Waterfall
Sumber : Stair & George 2010
Tahap investigasi yaitu tahap pengembangan sistem di mana masalah dan
peluang diidentifikasi dan dipertimbangkan. Tahap ini biasanya menjawab
pertanyaan dari “permasalahan apa yang ada dan apa solusinya”. Tahap analisis
yaitu pengembangan sistem yang menentukan apa yang harus dilakukan sistem
informasi untuk memecahkan masalah dengan mempelajari sistem dan proses
yang ada untuk mengidentifikasi kelemahan, kekuatan dan peluang untuk
diperbaiki. Tahap desain terdiri dari sistem input, output, dan tampilan pengguna;
spesifik perangkat keras, lunak, database, telekomunikasi, dan komponen
prosedur; dan menunjukkan bagaimana komponen saling berhubungan (Stair &
George 2010). Tahap uji coba dilakukan untuk mengetahui apakah program sudah
berjalan dengan baik dan sesuai dengan apa yang diharapkan. Tujuan pengujian
adalah untuk mengetahui cacat dan penyebabnya dari program tersebut sedini
mungkin (Jangra et al. 2011). Tahap perawatan dilakukan ketika sistem informasi
Tahap Investigasi
Tahap Desain
Tahap Uji Coba dan
Perawatan
Tahap Analisis
Tahap Implementasi
17
sudah dioperasikan. Pada tahapan ini dilakukan proses pemantauan, evaluasi dan
perubahan (perbaikan) bila diperlukan (Mulyanto 2008).
2.13 Microsoft .NET Framework
Microsoft .NET Framework merupakan komponen yang dapat
ditambahkan ke sistem operasi Microsoft Windows atau telah terintegrasi ke
dalam Windows. Kerangka kerja ini menyediakan sejumlah besar solusi-solusi
program untuk memenuhi kebutuhan-kebutuhan umum suatu program baru, dan
mengatur eksekusi program-program yang ditulis secara khusus untuk framework
ini (Nugraha 2009).
Sekumpulan bahasa yang mendukung pengembangan aplikasi dengan
.NET framework pada .NET framework telah ter-embed beberapa bahasa official
yang dikembangkan oleh Microsoft seperti C#, VB, J#, Managed C++, dan juga
Jscript.NET. Visual Studio .NET yang bukan merupakan bagian dari .NET
Framework, akan tetapi hanya berupa IDE (Integrated Development Environment)
yang membantu pengembang agar lebih mudah mengembangkan aplikasi (Abror
2011).
2.14 Bahasa Pemrograman C#
C# (dibaca: C sharp) merupakan sebuah bahasa pemrograman yang
berorientasi objek yang dikembangkan oleh Microsoft. Bahasa pemrograman ini
dibuat berbasiskan bahasa C++ yang telah dipengaruhi oleh aspek-aspek ataupun
fitur bahasa yang terdapat pada bahasa-bahasa pemrograman lainnya seperti Java,
Delphi, Visual Basic, dan lain-lain) dengan beberapa penyederhanaan (Abror
2011).
2.15 Basis Data
Database atau basis data merupakan himpunan kelompok data yang saling
berkaitan. Data tersebut diorganisasikan sedemikian rupa agar tidak terjadi
duplikasi yang tidak perlu, sehingga dapat diolah atau dieksplorasi secara cepat
18
dan mudah untuk menghasilkan informasi. Sistem atau perangkat lunak yang
secara khusus dibuat untuk memudahkan pemakai dalam mengelola basis data
disebut Database Management System (DBMS) (Sutedjo 2002 in Andayati 2010).
Perangkat lunak yang termasuk DBMS seperti MS. Access, MS. SQL, XML dan
masih banyak lagi.
2.16 XML
XML (extensible Markup Language) semacam database manajemen
sistem (DBMS) (Kumar et al. 2010). XML dikembangkan oleh World Wide Web
Consortium (W3C), dengan tujuan utamanya adalah untuk mengatasi sejumlah
keterbatasan yang terdapat pada Hyper Text Markup Language (HTML). HTML
hanya digunakan untuk mendiskripsikan web pages. Tetapi XML adalah language
yang digunakan untuk mendiskripsikan dan memanipulasi struktur dokumen, serta
menawarkan beberapa mekanisme untuk memanipulasi informasi yang bebas
platform (Dweib 2009).
XML berkonsentrasi pada struktur informasi, tetapi tidak berkonsentrasi
untuk menampilkan dokumen informasi (Widodo 2003). Keuntungan
menggunakan XML yaitu akses multi-user, pertukaran data dan dapat
diintegrasikan dengan database lain (Dweib 2009).
3. METODOLOGI
3.1 Waktu dan Lokasi Penelitian
Penelitian ini dilaksanakan di Laboratorium Model dan Simulasi,
Departemen Manajemen Sumberdaya Perairan, Institut Pertanian Bogor. Waktu
pelaksanaan dimulai dari bulan September 2011 hingga Juli 2012. Adapun
perincian jadwal pelaksanaan yaitu tahap investigasi (September – Oktober 2011),
analisis (November 2011), desain (Desember 2011-Januari 2012), implementasi
(Januari – April 2012) dan uji coba dan perawatan (Mei – Juli 2012).
3.2 Alat dan Bahan
Alat yang digunakan dalam penelitian ini terdiri dari perangkat keras dan
perangkat lunak. Perangkat keras yang digunakan berupa laptop. Perangkat lunak
yang digunakan dalam aplikasi sistem informasi ini adalah :
Windows 7, sebagai sistem operasi
Microsoft Visual Studio 2010 sebagai tool pengkodean
Notepad dan Microsoft Excel 2007, sebagai program basis data; dan
Microsoft Expresion Blend 4 sebagai tool desain
3.3 Pengumpulan Data
Data yang digunakan untuk simulasi program yaitu data dan informasi
pengamatan pengkajian stok ikan kurisi yang tertangkap di perairan Selat Sunda
dan didaratkan di PPP Labuan Banten oleh Rahayu (2012). Data yang diambil
berupa waktu sampling, panjang, berat dan jenis kelamin selama 8 bulan (Maret
2011- Oktober 2011). Data tersebut sebagai uji coba dalam proses hubungan
panjang berat, sebaran frekuensi panjang, nilai K, L∞, t0, mortalitas dan laju
eksploitasi.
Pengumpulan data dan informasi lainnya yaitu data sekunder berupa upaya
penangkapan (effort) dan produksi hasil tangkap (catch) ikan kurisi yang di
daratkan di Kabupaten Pandeglang selama 10 tahun (2000-2009) dari Dinas
Kelautan dan Perikanan Provinsi Banten. Data tersebut sebagai uji coba dalam
20
proses pendugaan nilai Fmsy, MSY, TAC untuk model Schaefer dan Fox.
Kemudian akan dibandingkan informasi pengkajian stok ikan kurisi olahan
Rahayu 2012 dengan program CIAFISH.
3.4 Rancangan Penelitian
Penelitian ini untuk mengembangkan sistem analisis dan informasi
mengenai pengkajian stok ikan sebagai penunjang keputusan dalam pengelolaan
perikanan. Model waterfall menjadi acuan dalam pengembangan sistem ini yaitu
dengan lima tahap (Gambar 3) :
3.4.1 Tahap Investigasi
Tahap pengembangan sistem di mana masalah dan peluang diidentifikasi
dan dipertimbangkan. Tahap ini biasanya menjawab pertanyaan dari
“permasalahan apa yang ada dan apa solusinya” (Stair & George 2010). Selain itu,
untuk menentukan ruang lingkup sistem yang akan dibuat sehingga memberikan
manfaat bagi penggunanya. Oleh karena itu sebelum dirancang perlu diketahui
apa yang menjadi kebutuhan para pengguna.
3.4.2 Tahap Analisa
Tahap perancangan sistem menggambarkan bagaimana suatu sistem
dibentuk yang menerangkan secara luas bagaimana setiap komponen perancangan
sistem (output, input dan proses) akan dirancang. Berikut disajikan perancangan
program pada Tabel 1.
21
Tabel 1. Analisa sistem
MASUKAN PROSES KELUARAN
Pertumbuhan
Hubungan
Panjang-
Berat
Panjang
Berat
Jenis Kelamin
Meregresikan dengan sumbu x = panjang dan sumbu
y = berat
𝑊 = aL𝑏
𝑌 = 𝑎 + 𝑏𝑥
Atau
log 𝑎 = log 𝑊. (𝐿𝑜𝑔 𝐿)2− log 𝐿 . (𝐿𝑜𝑔 𝐿 .𝐿𝑜𝑔 𝑊)
𝑁. (log 𝐿)2−( log 𝐿)2
𝑏 = log W − 𝑁.𝐿𝑜𝑔 𝑎
log 𝐿
𝑅2 =𝑆𝑋𝑌
𝑆𝑥 .𝑆𝑦
Jika b <3 maka pola
pertumbuhan
alometrik negatif
Jikan b > 3 maka pola
pertumbuhan
alometrik positif
Jika b = 3 maka pola
pertumbuhan isometri
R2
Sebaran
Frekuensi
Panjang
Panjang
Berat
Jenis Kelamin
Menentukan batas bawah kelas dan batas kelas atas
di setiap selang kelas. Batas atas didapatkan dengan
menambahkan lebar kelas pada limit bawah kelas
Menentukan frekuensi bagi masing-masing kelas
Membuat grafik batang dengan x= selang kelas
panjang dan y= frekuensi
Diagram sebaran
frekuensi panjang
22
Tabel 1. Analisa sistem (Lanjutan)
MASUKAN PROSES KELUARAN
Parameter
Pertumbuhan
(L∞, K dan
t0)
Panjang
𝑦 = a + bx
Mencari 𝑏 = 𝑥𝑦−
𝑥 . 𝑦
𝑁
𝑥2−( 𝑥)2
𝑁
Mencari a= 𝑦 − 𝑏𝑥
Mencari 𝐿∞ =𝑎
1−𝑏
Mencari 𝐾 = −𝐿𝑛 𝑏
Mencari Log (-t0) = 0,3922 – 0,2752 (Log L∞ ) – 1,038 (Log K)
Nilai L∞
Nilai K
Nilai t0
Laju
Mortalitas
Penangkapan
Koefisien
pertumbuhan (K)
Panjang maks (L∞)
Panjang rata-rata ikan
yang tertangkap (L’’)
Batas bawah dari
interval kelas pertama
Suhu (T)
Menentukan mortalitas total dengan menggunakan rumus estimasi nilai
Z model Beverton & Holt:
𝑍 = 𝐾𝐿∞−𝐿′′
𝐿′′−𝐿′ dengan ;
𝐿′′ = (
𝐶 ∗ (𝐿1 + 𝐿2)2
𝐶
Menentukan mortalitas alami dengan menggunakan rumus empiris
Pauly :
l𝑛(𝑀) = −0,0152 − 0,279 l𝑛 𝐿∞ + 0,6543 𝑙𝑛 𝐾 + 0,4634 𝑙𝑛(𝑇)
Menentukan mortalitas penangkapan dengan rumus:
𝐹 = 𝑍 − 𝑀
Nilai
mortalitas
23
Tabel 1. Analisa sistem (Lanjutan)
MASUKAN PROSES KELUARAN
Laju Eksploitasi Nilai mortalitas
penangkapan (F)
Nilai mortalitas
total (Z)
E =F
𝑍
Nilai laju
eksploitasi
Model Surplus
Produksi
Upaya (effort)
Hasil tangkap
(Catch)
Schaefer
Mencari CPUE dari
perhitungan 𝐶𝑎𝑡𝑐
𝐸𝑓𝑓𝑜𝑟𝑡
Meregresikan dengan variabel
x adalah Effort dan y adalah
CPUE kemudian didapat nilai
a dan b
mencari Fmsy=−𝑎
2𝑏
mencari MSY= -𝑎2
4𝑏
mencari TAC dari 80 % dari
MSY
𝑅2 =𝑆𝑋𝑌
𝑆𝑥 .𝑆𝑦
Fox
mengoperasikan Ln untuk
𝐶𝑎𝑡𝑐
𝐸𝑓𝑓𝑜𝑟𝑡
meregresikan dengan variabel
x adalah Effort dan y adalah
hasil operasi Ln CPUE
kemudian didapat nilai a dan b
mencari Fmsy=−1
𝑏
mencari 𝑚𝑠𝑦 = 𝐹𝑚𝑠𝑦. 𝑒 𝑎−1
mencari TAC dari 80 % dari
MSY
𝑅2 =𝑆𝑋𝑌
𝑆𝑥 .𝑆𝑦
Nilai dan grafik
dari :
MSY
Fmsy
TAC
R2
Schaefer
dan fox
24
3.4.3 Tahap Desain
Rincian desain terdiri dari sistem input, output, dan tampilan pengguna;
spesifik perangkat keras, lunak, database dan komponen prosedur; dan
menunjukkan bagaimana komponen saling berhubungan (Stair & George 2010).
3.4.3.1 Desain Tampilan
Pembuatan desain tampilan adalah merancang tampilan atau output hasil
eksekusi program dari rancangan sistem yang telah dikembangkan. Pembuatan
desain tampilan dibuat dengan tampilan menarik, mudah digunakan dan sesuai
kebutuhan sistem. Secara umum desain tampilan terdiri dari desain tampilan
masukan (input) dan keluaran (informasi/output).
Desain masukan bertujuan dalam penyediaan masukan data yang
kemudian untuk diolah menjadi suatu informasi yang berguna. Desain keluaran
bertujuan untuk menampilkan informasi sesuai dengan kebutuhan pengguna.
Komponen masukan dan keluaran pada program CIAFISH dapat terlihat pada
Tabel 1.
3.3.3.2 Desain Basis Data
Pembuatan desain basis data menggunakan alat penyimpanan data XML.
Langkah pembuatan database yaitu menentukkan kebutuhan data, menjelaskan
data, dan memasukkan data.
3.3.4 Tahap Implementasi
Program dirancang menggunakan Microsoft Visual Studio 2010 dengan
menggunakan bahasa pemrograman C#, Notepad sebagai perangkat lunak
pengolah basis data dan Microsoft Expression Blend 4 sebagai perangkat lunak
desain.
25
3.3.5 Tahap Uji Coba dan Perawatan
Tahap pengembangan sistem untuk meyakinkan bahwa sistem tersebut
sudah berjalan dengan baik dan sesuai dengan apa yang diharapkan. Pengujian
program dengan uji black box. Data hasil pengamatan pengkajian stok ikan oleh
Rahayu (2012) di Labuan Banten serta data sekunder dari Dinas Kelautan dan
Perikanan Provinsi Banten merupakan data yang digunakan dalam uji coba
program. Pengujian ini berguna untuk mengetahui keakuratan program dalam
memproses data menjadi sebuah informasi.
4. HASIL DAN PEMBAHASAN
4.1 Hasil Pengembangan Sistem
Sistem analisa dan informasi akan pengkajian stok ikan ini bernama
CIAFISH (Calculation, Information, and Analysis of Fisheries). Program
CIAFISH dirancang sebagai aplikasi perangkat lunak (software) berbasis
Windows dan desktop. Program CIAFISH bertujuan untuk mengetahui parameter
hubungan panjang berat, sebaran frekuensi panjang, nilai K, L∞, dan t0, nilai
mortalitas, laju eksploitasi dan model surplus produksi.
4.1.1 Tahap Investigasi
Tahap pengembangan sistem di mana masalah dan peluang diidentifikasi
dan dipertimbangkan (Stair & George 2010). Selain itu, untuk menentukan ruang
lingkup sistem yang akan dibuat sehingga memberikan manfaat bagi
penggunanya. Keluaran dari tahap investigasi yaitu dengan membandingkan
sistem yang ada sekarang dengan sistem yang akan dikembangkan. Sistem yang
ada sekarang dan umum digunakan dalam menganalisis atau mengolah data
pengkajian stok ikan yaitu dengan menggunakan Microsoft Excel dan program
FiSAT. Namun terdapat kelemahan dalam penggunaan sistem tersebut.
Penggunaan Microsoft Excel mengharuskan pengguna memahami secara baik
akan rumus pengkajian stok ikan. Hal ini akan menyulitkan bagi pengguna yang
kurang teliti dan tidak begitu memahami akan rumus pengkajian stok ikan. Hal
tersebut akan mempengaruhi proses dalam menghasilkan informasi pengkajian
stok ikan yang menjadi salah satu dasar pertimbangan dalam pengelolaan
perikanan. Sehingga akan memungkinkan terjadinya kesalahan dalam
perencanaan pengelolaan perikanan. Penggunaan FiSAT membutuhkan waktu
lama untuk memahami cara penggunaannya. Sehingga dapat dikatakan bahwa
sistem tersebut kurang user friendly. Selain itu belum terpadunya sistem analisis
dan informasi pengkajian stok ikan menjadikan tidak efisien dalam memperoleh
informasi akan pengkajian stok ikan yang menjadi dasar pertimbangan
pengelolaan perikanan.
27
Tahap investigasi akan kebutuhan sistem ini dilakukan dengan studi
pustaka dan menanyakan langsung ke kalangan akademisi tentang informasi-
informasi apa saja yang diperlukan dalam pengelolaaan suatu sumberdaya
perikanan. Program CIAFISH (Calculation, Information, and Analysis of
Fisheries) merupakan suatu sistem yang dirancang untuk dapat menghasilkan
informasi akan pengkajian stok dari sumberdaya perikanan. Informasi tersebut
berupa parameter hubungan panjang berat, sebaran frekuensi panjang, nilai K,
L∞, dan t0, nilai mortalitas, laju eksploitasi sumberdaya perikananan dan model
surplus produksi (MSY, Fmsy, TAC, R2 baik model schaefer maupun fox).
Pertumbuhan, mortalitas, laju eksploitasi dan ukuran stok adalah faktor utama
yang mempengaruhi hasil tangkapan dan bahan pertimbangan penting dalam
menentukan cara pengelolaan (Boer 2010). Pada Tabel 3 disajikan hasil analisa
kebutuhan pengguna dari program CIAFISH (Calculation, Information, and
Analysis of Fisheries).
Tabel 2. Tahap investigasi dari CIAFISH
Pelaku Sistem Kebutuhan Pengguna (user)
Akademisi,
peneliti dan
instansi terkait
perikanan
Pertumbuhan
Hubungan Panjang Berat
Sebaran Frekuensi Panjang
Parameter Pertumbuhan (K, L∞ dan t0)
R2
Nilai mortalitas
Nilai mortalitas total (Z), penangkapan (F), alami (M)
Laju eksploitasi
Nilai laju eksploitasi
Model Surplus Produksi
MSY, Fmsy, TAC, R2
Analisis hubungan panjang dengan berat bertujuan untuk mengetahui pola
pertumbuhan ikan di alam yang selanjutnya akan berguna bagi kegiatan
Schaefer dan fox
28
pengelolaan perikanan (Ricker 1975 in Effendie 2005). Analisis hubungan
panjang berat menggunakan rumus 𝑊 = 𝑎 × 𝑙𝑏 . Sebaran frekuensi panjang
berguna dalam penentuan kelompok umur ikan maka setelah itu parameter
pertumbuhan, mortalitas penangkapan dan laju eksplotasi dapat ditentukan dengan
metode-metode estimasi yang sesuai (Syakila 2009). Nilai K, L∞, dan t0 didapat
dari persamaan Von Bertalanffy. Model ini menjelaskan perubahan panjang (Lt)
sepanjang waktu sebagai suatu fungsi dari panjang maksimum (L∞) dan koefisien
pertumbuhan (K).
Metode Ford Walford dapat digunakan untuk menduga panjang
maksimum (L∞) ikan dan koefisien pertumbuhan (K) dari persamaan Von
Bartalanffy (Aziz 1989). Ikan yang pertumbuhannya cepat (nilai K tinggi)
mempunyai nilai mortalitas alami (M) tinggi dan sebaliknya. Sedangkan
mortalitas penangkapan yaitu mortalitas yang terjadi akibat adanya aktivitas
penangkapan (Sparre and Venema 1999). Laju eksplotasi (E) merupakan jumlah
ikan yang ditangkap dibandingkan dengan jumlah total ikan yang mati karena
semua faktor baik alami maupun penangkapan (Pauly 1984 in Sinaga 2010).
Data hasil tangkapan dan upaya penangkapan yang bersifat time series
kemudian dianalisis untuk mengetahui upaya (fmsy) yang menghasilkan suatu hasil
tangkapan yang maksimum lestari tanpa mempengaruhi stok secara jangka
panjang (Maximum Sustainable Yield/MSY) serta jumlah tangkapan yang
diperbolehkan (JTB/TAC) . Model ini disebut model surplus produksi yaitu model
Schaefer dan Fox.
4.1.2 Tahap Analisis
Tahap pengembangan sistem yang menentukan apa yang harus dilakukan
sistem informasi untuk memecahkan masalah dengan mempelajari sistem dan
proses yang ada (Stair & George 2010). Hasil utama dari tahap ini yaitu
perancangan secara rinci masukan (input), pengolahan (proses), dan informasi
keluaran (output) sesuai dari ruang lingkup yang dibuat. Tahap ini dilakukan
dengan menyusun algoritma dan diagram alir. Berikut Gambar 4 disajikan skema
perancangan sistem analisa dan informasi akan aspek pertumbuhan, mortalitas,
laju eksploitasi dan model surplus produksi.
29
Panjang
Berat
Jenis
Kelamin
Upaya
Penangkapan
/Effort
Hasil
Tangkapan/
Catch
Masukan
P
E
N
G
O
L
A
H
A
N
D
A
T
A
Keluaran
Parameter
Pertumbuhan
Nilai Mortalitas
Laju Eksploitasi
Model Surplus
Produksi (Schaefer
dan Fox)
Gambar 4. Skema perancangan sistem analisa dan informasi akan aspek
pertumbuhan, laju mortalitas, dan model surplus produksi
Algoritma adalah langkah-langkah dalam menyelesaikan masalah yang
ada. Penyusunan algoritma harus sistematis dan logis untuk mempermudah dalam
pengimplementasian. Terdapat tiga pertimbangan dalam pemilihan algoritma
yaitu kebenaran algoritma, hasil yang dicapai dan efisiensi. Adapun penyusunan
algoritma program CIAFISH ini dapat dilihat pada Tabel 1 bab metodologi.
Diagram alir digunakkan untuk menggambarkan algoritma dari program
tersebut. Berikut ini Gambar 5 disajikan diagram alir input, proses, dan output
dari form pertumbuhan dan model surplus produksi.
30
Mulai
Input Data
Apakah Data
Sudah Ada?
Pengolah Data
Tampilkan Informasi
Simpan Data
Selesai
Edit Data
Tidak
Ya
Gambar 5. Diagram alir input, proses, dan output dari form pertumbuhan dan model
surplus produksi
4.1.3 Tahap Desain
4.1.3.1 Desain Tampilan
Desain tampilan program ini menggunakan WPF. WPF (Windows
Presentation Foundation) adalah sistem tampilan grafis untuk windows, yang
dirancang untuk .NET. WPF direpresentasikan dengan menggunakan bahasa
XAML. Keunggulan menggunakan WPF memberikan pengalaman antarmuka
aplikasi yang lebih baik dibandingkan windows form (McDonald 2010).
Desain tampilan dibuat dengan memperhatikan tampilan yang menarik,
mudah dimengerti dan sesuai dengan kebutuhan sistem. Didalam tampilan
terdapat subsistem penyelenggara dialog yang memberi sarana antarmuka antara
31
pemakai dengan sistem penunjang keputusan. Komponen dialog menyajikan
output (keluaran) sistem penunjang keputusan pada pemakai dan mengumpulkan
input (masukan) ke dalam sistem penunjang keputusan. Gaya dialog yang
digunkan pada tampilan program CIAFISH (Calculation, Information, and
Analysis of Fisheries) yaiu dialog form masukan atau keluaran;sistem
menyediakan form input untuk pemakai memasukkan data atau perintah dan form
output sebagai bentuk tanggapan dari sistem (Ekasari & Husnul K 2007).
Secara umum desain tampilan program ini terdiri dari lima menu utama
yaitu form pertumbuhan, model surplus produksi, bantuan, deskripsi aplikasi dan
tentang pengembang. Menu utama adalah menu yang di desain sebagai jalur bagi
pengguna untuk dapat mengakses seluruh bagian dalam program (Kusnandar
2004). Desain menu “Form Pertumbuhan” dan “Form Model Surplus Produksi”
merupakan desain tampilan yang berfungsi sebagai tempat untuk memasukkan,
mengedit, menghapus data dari pengguna serta informasi dari hasil pengolahan
data.
Desain menu “Bantuan” berfungsi sebagai tempat pemberian informasi
akan tata cara penggunaan program. Menu “Bantuan” dilengkapi pula dengan
gambar serta langkah-langkah penggunannya sehingga memudahkan pengguna
pemula untuk menggunakan program ini. Desain menu “Deskripsi Aplikasi”
berfungsi sebagai tempat pemberian informasi akan deskripsi program secara
umum. Desain menu “Tentang Pengembang” berfungsi sebagai tempat pemberian
informasi akan pengembang dari program CIAFISH (Calculation, Information,
and Analysis of Fisheries). Menu “Tentang Pengembang” dilengkapi dengan
contact person pengembang program. Contact person berguna untuk
menghubungkan pengembang dengan pengguna yang membutuhkan informasi
lebih lanjut atau pengguna yang ingin memberikan kritik dan saran tentang
program ini. Berikut Gambar 6 disajikan skema desain menu.
32
Form Pertumbuhan
Form Model Surplus
Produksi
Bantuan
Deskripsi Aplikasi
Tentang pengembang
Hubungan panjang dan berat, sebaran frekuensi panjang, nilai
mortalitas dan laju eksploitasi
Fmsy, MSY, TAC Schaefer dan Fox
Panduan penggunaan
Deskripsi singkat aplikasi
Info pengembang
Gambar 6. Skema desain menu dengan sub menu sistem
4.1.3.2 Desain Basis Data
Data yang ada dibuat menjadi suatu himpunan kelompok data yang saling
berkaitan dan terorganisir agar tidak terjadi duplikasi sehingga dapat diolah atau
dieksplorasi secara cepat dan mudah untuk menghasilkan informasi atau sering
disebut dengan basis data (Sutedjo 2002 in Andayati 2010). Perangkat lunak yang
memudahkan pemakai dalam mengelola basis data, Database Management
System (DBMS), yang digunakan dalam program CIAFISH (Calculation,
Information, and Analysis of Fisheries) yaitu XML.
Basis data untuk pembuatan CIAFISH (Calculation, Information, and
Analysis of Fisheries) memiliki dua tabel (entitiy) yang masing-masing tidak
terhubung yaitu tabel pertumbuhan dan tabel model surplus produksi. Tabel
pertumbuhan berfungsi sebagai tabel penyimpan data dari masukkan (input) data
pada form pertumbuhan. Tabel pertumbuhan berisi data atau atribut yaitu Id,
nama peneliti, nama ikan, waktu, panjang, berat dan jenis kelamin. Atribut
tersebut yang kemudian akan diolah untuk memberikan informasi tentang
hubungan panjang berat, sebaran frekuensi panjang, parameter pertumbuhan,
mortalitas penangkapan dan laju eksploitasi. Berikut Tabel 5 disajikan entity
pertumbuhan beserta tipe data, dan keterangan dari atributnya.
33
Tabel 3. Tabel Pertumbuhan
No. Nama Kolom Tipe Data Keterangan
1 Id AutoNumber Kolom Kunci
2 Nama_peneliti Text Nama peneliti
3 Nama_ikan Text Nama ikan yang diteliti
4 Waktu Text Waktu penelitian
5 Panjang Number Panjang ikan
6 Berat Number Berat ikan
7 Jenis_kelamin Text Jenis kelamin ikan
Tabel model surplus produksi berfungsi sebagai tabel penyimpan data dari
masukkan (input) data pada form model surplus produksi. Tabel model surplus
produksi berisi data atau atribut yaitu Id, nama peneliti, nama ikan, tahun, catch,
dan effort. Atribut tersebut yang kemudian akan diolah untuk memberikan
informasi tentang upaya (fmsy) yang menghasilkan suatu hasil tangkapan yang
maksimum lestari tanpa mempengaruhi stok secara jangka panjang atau yang
sering disebut Maximum Sustainable Yield/MSY serta jumlah tangkapan yang
diperbolehkan (JTB/TAC) baik melalui model Schaefer maupun Fox. Berikut
Tabel 6 disajikan entity model surplus produksi beserta tipe data dan keterangan
dari atributnya.
Tabel 4. Tabel Model Surplus Produksi
No. Nama Kolom Tipe Data Keterangan
1 Id AutoNumber Kolom Kunci
2 Nama_peneliti Text Nama peneliti
3 Nama_ikan Text Nama ikan yang diteliti
4 Tahun Text Tahun sumber data
5 Catch Number Hasil tangkapan ikan
6 Effort Number Usaha penangkapan ikan
34
4.1.4 Tahap Implementasi
Tahap implementasi program dilakukan dengan menggunakan perangkat
lunak Microsoft Visual Studio 2010 dengan bahasa pemrograman C#, XML
sebagai perangkat lunak pengolah basis data dan Microsoft Expression blend 4
sebagai perangkat lunak desain tampilan. Bahasa pemrograman C# dipilih dalam
pembuatan program ini karena bahasa pemrograman yang memiliki fitur-fitur
yang powerfull dibanding dengan bahasa program lainnya. Pembuatan basis data
menggunakan XML. Keuntungan menggunakan XML yaitu ringan dalam
pemrosesan data dan tidak memerlukan memori yang banyak dalam
penyimpanan. Sedangkan menurut Dweib 2009 bahwa keuntungan menggunakan
XML yaitu dalam mewakili dan pertukaran data dan database relasional dalam
query, keamanan, akses multi-user, integritas data.
4.1.5 Tahap Uji Coba dan Perawatan
Tahap uji coba program dilakukan untuk mengetahui apakah program
sudah berjalan dengan baik dan sesuai dengan apa yang diharapkan. Tujuan
pengujian adalah untuk mengetahui cacat dan penyebabnya dari program tersebut
sedini mungkin (Jangra et al. 2011). Pengujian pada program ini dilakukan
dengan pengujian kotak hitam (black box). Pengujian kotak hitam didasarkan
pada analisis spesifikasi program tanpa mengacu pada internal program (Khan
2010). Tujuannya adalah untuk menguji seberapa baik komponen sesuai dengan
tujuan yang diharapkan dengan memastikan input (masukan) yang benar dan
output (keluaran) yang dihasilkan benar.
Proses uji coba dilakukan dengan menggunakan data hasil pengamatan
pengkajian stok ikan oleh Rahayu (2012) di Labuan Banten serta data sekunder
dari Dinas Kelautan dan Perikanan Provinsi Banten. Dari hasil uji coba, jika
ditemukan suatu kesalahan atau ketidakcocokan maka akan dijadikan sebagai
acuan untuk memperbaiki sistem. Tahap perawatan dilakukan ketika sistem
informasi sudah dioperasikan. Pada tahapan ini dilakukan dengan proses
35
pemantauan, evaluasi dan perubahan (perbaikan) bila diperlukan (Mulyanto
2008).
4.2 CIAFISH (Calculation, Information, and Analysis of Fisheries)
Program CIAFISH (Calculation, Information, and Analysis of Fisheries)
merupakan suatu sistem yang dirancang untuk dapat menghasilkan informasi akan
pengkajian stok dari sumberdaya perikanan. Informasi tersebut dibutuhkan dalam
perumusan program pengelolaan perikanan. Menurut (Kusumadewi &
Hermaduanti 2008) bahwa Suatu sistem penunjang keputusan (SPK) atau
Decision Support System adalah sistem yang bertujuan untuk menyediakan
informasi, memberikan prediksi, membimbing, serta mengarahkan agar dapat
melakukan pengambilan keputusan dengan lebih baik dan berbasis fakta. Program
CIAFISH (Calculation, Information, and Analysis of Fisheries) dapat dikatakan
sebagai sistem penunjang keputusan dalam pengelolaan perikanan.
Program CIAFISH (Calculation, Information, and Analysis of Fisheries)
memiliki desain interface ketika awal dijalankakan akan menampilkan tampilan
awal seperti pada Gambar 7 dengan lima menu utama yaitu form pertumbuhan,
model surplus produksi, bantuan, deskripsi aplikasi dan tentang pengembang.
Menu utama adalah menu yang didesain sebagai jalur bagi pengguna untuk dapat
mengakses seluruh bagian dalam program (Kusnandar 2004). Desain interface
dalam suatu program perlu dibuat menarik dan informatif namun tidak
menyimpang dari fungsi utama yang diharapkan.
36
Gambar 7. Tampilan Awal Program
Saat memulai program, pengguna yang belum memiliki data yang
disimpan sebelumnya dengan klik new file (Gambar 8). Sedangkan pengguna
yang telah memiliki data yang tersimpan menjadi sebuah file dapat membuka
kembali dengan klik tombol open lalu pilih open file pertumbuhan atau model
surplus (Gambar 9).
37
Gambar 8. Tampilan saat new file
Gambar 9. Tampilan saat open file
38
Menu Form pertumbuhan berguna sebagai tempat untuk memasukkan
(input), mengedit, menghapus data dan memberikan informasi mengenai
parameter hubungan panjang berat, sebaran frekuensi panjang, nilai K, L∞, dan t0,
nilai mortalitas dan laju eksploitasi sumberdaya perikananan. Berikut Gambar 10
disajikan tampilan form pertumbuhan.
Gambar 10. Tampilan Form Pertumbuhan
Gambar diatas memperlihatkan tampilan keseluruhan dari form
pertumbuhan. Data yang harus di masukkan oleh pengguna yaitu nama peneliti,
nama ikan, batas minimum, selang kelas, jumlah kelas, waktu, panjang, berat,
jenis kelamin, suhu, Nilai Lt, dan Ttabel. Nama peneliti dan nama ikan berguna
sebagai data identitas ikan yang telah diamati atau dimiliki oleh pengguna. Batas
minimum, selang dan jumlah kelas ditentukan oleh pengguna untuk memproses
data panjang sehingga menghasilkan informasi berupa grafik sebaran frekuensi
panjang. Nilai Lt diproses untuk menghasilkan nilai K, L∞ dan t0. Data suhu
diproses untuk menghasilkan mortalitas alami.
Data waktu, panjang, berat dan jenis kelamin dimasukkan pada form input
yang berada di sebelah kanan atas desain tampilan program. Data yang telah
dimasukkan pada form input akan disimpan kedalam suatu variabel yang
39
kemudian akan ditampilkan ke dalam tabel setelah klik buton “Tambah” (Gambar
11 a dan b).
Gambar 11 a. Tampilan form input
Gambar 11 b. Tampilan data dari form input yang dimasukkan ke Tabel
Pengubahan data yang telah dimasukkan dapat dilakukan dengan memilih
data yang akan diubah. Form ubah yang ada di sebelah kanan tabel secara
otomatis akan memunculkan nilai dan proses untuk mengubah data. Klik button
“save” setelah melakukan pengubahan (Gambar 12).
40
Gambar 12. Tampilan Untuk Mengubah Data
Button “Hapus” yang berada didalam tabel dengan ikon ( ) berguna
untuk menghapus data yang telah di masukkan. Klik button tersebut maka akan
muncul tampilan seperti pada Gambar 13.
Gambar 13. Tampilan ketika Data di Hapus
Datepicker waktu dan jenis kelamin berguna untuk menyaring data sesuai
pilihan waktu dan jenis kelamin yang dipilih oleh pengguna. Button “Refresh”
berguna untuk memunculkan kembali semua data setelah dilakukannya
penyaringan waktu dan jenis kelamin. Button “Proses” yang berada disebelah
41
button “Refresh” berguna untuk memerintahkan program untuk mengolah data
yang telah di masukkan/input menjadi sebuah informasi. Informasi tersebut
diantaranya parameter hubungan panjang berat dan sebaran frekuensi panjang.
Informasi hubungan panjang dan berat akan ditampilkan dalam bentuk
grafik, nilai log A, nilai b, jenis hubungan panjang berat ikan tersebut, R2, dan
pengujian hipotesis apabila nilai b≠3. Untuk proses pengujian hipotesis dengan
memasukan nilai Ttabel yang dapat diketahui dengan klik button “Tabel Ttab”
maka akan muncul tabel Ttab (Gambar14.a). Untuk mengetahui informasi
pengujian hipotesis dengan klik button “Uji T”. Berikut Gambar 14.b hasil olahan
data Rahayu 2012 yang diuji cobakan di program CIAFISH (Calculation,
Information, and Analysis of Fisheries).
Gambar 14 a. Tampilan Tabel T
42
Gambar 14 b. Tampilan Informasi Hubungan Panjang Berat dengan Uji Coba
Data Penelitian Rahayu 2012
Informasi sebaran frekuensi panjang ditampilkan dalam bentuk diagram
batang. Untuk informasi nilai K, L∞, t0, mortalitas tangkapan, dan laju eksploitasi
dengan memasukkan nilai Lt terlebih dahulu kemudian klik button “Proses” yang
terletak disebelah button “Tambah”. Berikut disajikan informasi sebaran
frekuensi panjang (Gambar 15a) dan informasi nilai K, L∞, t0, mortalitas
tangkapan, dan laju eksploitasi (Gambar 15b) dari pengolahan data dengan
menggunakan data hasil penelitian Rahayu 2012 yang diuji cobakan di program
CIAFISH (Calculation, Information, and Analysis of Fisheries).
43
Gambar 15a Tampilan Informasi Sebaran Frekuensi Panjang dengan Uji Coba
Data Hasil Pengamatan Rahayu 2012
Gambar 15b. Tampilan Informasi nilai K, L∞, t0, mortalitas tangkapan, dan laju
eksploitasi dengan Uji Coba Data Hasil Pengamatan Rahayu 2012
Berikut disajikan tampilan informasi alternatif atau skenario pengelolaan
(Gambar 16). Data tersebut apabila ingin disimpan dengan cara klik tombol save
(Gambar 17).
44
Gambar 16. Tampilan Saran Pengelolaan
Gambar 17. Tampilan untuk simpan data
Menu yang kedua yaitu form model surplus produksi. Sama halnya dengan
form pertumbuhan, form model surplus produksi berfungsi sebagai tempat
memasukkan, mengubah, menghapus data, dan memberikan informasi mengenai
upaya optimum (fmsy), Maximum Sustainable Yield/MSY serta jumlah tangkapan
yang diperbolehkan (JTB/TAC) baik melalui model Schaefer maupun Fox.
Berikut Gambar 18 disajikan tampilan form model surplus produksi.
45
Gambar 18. Tampilan Form Model Surplus Produksi
Proses untuk memasukkan, menghapus, ataupun mengubah data pada form
model surplus produksi sama halnya pada form pertumbuhan. Data hasil
tangkapan (catch) dan upaya penangkapan (effort) ikan kurisi yang didaratkan di
Kabupaten Pandeglang digunakan untuk uji coba program ini khususnya pada
form model surplus produksi. Informasi yang ditampilkan pada form model
surplus produksi berupa nilai fmsy, MSY, TAC, R2 dan grafik baik model Schaefer
maupun Fox. Berikut Gambar 19 disajikan hasil olahan data sekunder ikan kurisi
dan tampilan saran pengelolaan dari model surplus produksi (Gambar 20).
46
Gambar 19. Tampilan informasi fmsy, MSY, TAC, R2
Gambar 20. Tampilan Saran Pengelolaan dari Model Surplus Produksi
Pada pilihan menu bantuan akan ditampilakan mengenai tata cara
penggunaan program. Menu bantuan ini mempermudah pengguna awal untuk
menggunakan program ini. Menu “Bantuan” dilengkapi pula dengan gambar
sehingga memudahkan pengguna pemula untuk menggunakan program ini.
Berikut Gambar 21 disajikan tampilan menu bantuan.
47
Gambar 21. Tampilan Menu Bantuan
Pilihan menu “Deskripsi Aplikasi” berfungsi sebagai tempat pemberian
informasi akan deskripsi program secara umum. Berikut Gambar 22 disajikan
tampilan menu “Deskripsi Aplikasi”.
Gambar 22. Tampilan Menu Deskripsi Aplikasi
48
Pilihan menu “Tentang Pengembang” berfungsi sebagai tempat pemberian
informasi akan pengembang dari program CIAFISH (Calculation, Information,
and Analysis of Fisheries). Berikut Gambar 23 disajikan tampilan menu “Tentang
Pengembang”.
Gambar 23. Tampilan Menu Tentang Pengembang
Keunggulan dari program CIAFISH (Calculation, Information, and
Analysis of Fisheries) yaitu penggunaan relatif mudah, kemudahan dalam
menyimpan dan mengelola data, penulusuran informasi dapat dilakukan dengan
cepat dan mudah, tampilan program yang interaktif, informatif serta user friendly.
Kelemahan dari program CIAFISH (Calculation, Information, and Analysis of
Fisheries) yaitu belum tersedianya sarana untuk mencetak laporan berdasarkan
informasi yang ditampilkan ke mesin pencetak (printer).
Program CIAFISH (Calculation, Information, and Analysis of Fisheries)
diharapkan sebagai media yang dapat digunakan untuk mempermudah pengolahan
data dan analisis akan aspek dinamika dan pengkajian stok ikan, sehingga dapat
memberikan informasi yang dapat dijadikan acuan dalam pengelolaan perikanan.
Pengembangan program CIAFISH (Calculation, Information, and Analysis of
Fisheries) secara terus menerus sangat diharapkan guna menyempurnakan
program ini.
49
4.3 Pengkajian Stok Ikan Kurisi
Berikut Tabel 5 disajikan perbandingan informasi hasil olahan hubungan
panjang dan berat ikan kurisi Nemipterus japonicus oleh Rahayu 2012
menggunakan Ms. Excel dengan CIAFISH.
50
Tabel 5. Perbandingan Informasi Hasil Olahan Hubungan Panjang dan Berat Rahayu 2012 menggunakan Ms. Excel dan FiSAT dengan
CIAFISH
Rahayu 2012 CIAFISH
Hubungan
Panjang &
Berat
Total
b 1,827 1,827
Uji t Tolak H0 Tolak H0
R^2 56,80% 56,89%
Grafik
Sumber : Rahayu 2012
W = 0,005L1,827
R² = 0,568r = 0,75n = 514
0
50
100
150
200
250
0 100 200 300 400
Bo
bo
t (g
ram
)Panjang (mm)
51
Tabel 5. Perbandingan Informasi Hasil Olahan Hubungan Panjang dan Berat Rahayu 2012 menggunakan Ms. Excel dan FiSAT dengan
CIAFISH (Lanjutan)
Rahayu 2012 CIAFISH
Hubungan
Panjang &
Berat
Jantan
b 1,806 1,806
Uji t Tolak H0 Tolak H0
R^2 52,90% 52,93%
Grafik
Sumber : Rahayu 2012
Betina
b 1,834 1,840
Uji t Tolak H0 Tolak H0
R^2 64,30% 64,56%
Grafik
Sumber : Rahayu 2012
0
100
200
300
0 20 40
Bo
bo
t
Panjang (cm)
W = 0,341L1,834
R² = 0,643r= 0,801n= 182
0
50
100
150
200
250
0 10 20 30 40
Bo
bo
t
Panjang (cm)
52
Dari Tabel 5 dapat terlihat hasil dari kedua olahan sistem yang
menunjukkan nilai yang tidak begitu berbeda. Analisis hubungan panjang dan
berat ikan kurisi yang dilakukan oleh Rahayu 2012 dan CIAFISH didapat nilai
konstanta b yang menggambarkan pola pertumbuhan panjang ikan yaitu
allometrik negatif (pertumbuhan panjang ikan lebih cepat dari pada pertambahan
bobotnya (Effendie 2005) dengan nilai b < 3 yaitu 1,827 dan 1,827 untuk panjang
bobot total;1,834 dan 1,840 untuk panjang bobot ikan kurisi betina; dan 1,806 dan
1,806 untuk panjang bobot ikan kurisi jantan.
Pola pertumbuhan alometrik negatif pada ikan kurisi dapat terlihat dari
bentuk tubuh ikan kurisi yang pipih. Hal ini sesuai dengan pernyataan H. Raeisi et
al. 2012 bahwa nilai b dapat menggambarkan bentuk tubuh. Nilai R2
menjelasakan seberapa besar suatu perhitungan dapat menjelaskan keadaan
sebenarnya di alam. Untuk ikan betina dan jantan diperoleh nilai koefisien
determinasi (R2) sebesar 56,89%. Berikut disajikan perbandingan nilai b di lokasi
yang berbeda (Tabel 6).
Tabel 6 . Perbandingan nilai b ikan kurisi di berbagai lokasi
Sumber Lokasi
Tahun
Pengambilan
Data
Nilai b Pola
Pertumbuhan
Kizhakudan
et al. 2008 Gujarat 1998-2002
b = 2.777( Jantan)
b = 2.626 ( Betina)
Alometrik
negatif
B Pawar
2011
Mubai,
India
Januari 2005-
Mei 2006 b =3.0189
Alometrik
positif
Raesi et al.
2012
Persian
Gulf, Iran
April 2008-
December
2010
b = 2.664
Alometrik
negatif
Rahayu
2012
Labuan,
Banten
Maret -
Oktober 2011 b = 1,827
Alometrik
negatif
Dari ketiga lokasi, lokasi Mubai, India memiliki nilai b yang berbeda yaitu
b>3 (alometrik positif). Nilai b ini dapat dipengaruhi oleh faktor lingkungan,
53
seperti suhu, pasokan makanan, kondisi pemijahan dan faktor lainnya, seperti
jenis kelamin, usia, waktu dan daerah penangkapan (Ricker 1973 in Raesi et
al.2012). Berikut Tabel 7 disajikan perbandingan informasi hasil olahan sebaran
frekuensi panjang ikan kurisi Nemipterus japonicus oleh Rahayu 2012
menggunakan Ms. Excel dengan CIAFISH.
Tabel 7. Perbandingan Informasi Hasil Olahan Sebaran Frekuensi Panjang Ikan
Kurisi Nemipterus japonicus oleh Rahayu 2012 Menggunakan Ms. Excel
dengan CIAFISH
Rahayu 2012 CIAFISH
Sebaran
Frekuensi
Panjang
Sumber : Rahayu 2012
Dari hasil olahan data Sebaran frekuensi panjang dapat terlihat ukuran
panjang ikan sebesar 98-317 mm. Nilai panjang maksimum dari penelitian
Kizhakudan et al. 2008 di Gujarat, India didapat nilai maksimum ikan kurisi
sebesar 390 mm. Perbedaan ukuran panjang total ini dapat disebabkan oleh
beberapa kemungkinan seperti perbedaan lokasi pengambilan ikan contoh,
keterwakilan ikan contoh yang diambil dan kemungkinan tekanan penangkapan
yang tinggi terhadap ikan (Syakila 2009). Penggunaan histogram frekuensi
panjang sering dianggap teknik yang paling sederhana diterapkan untuk
mengetahui tingkatan stok ikan, tetapi yang perlu dicatat bahwa struktur data
panjang sangat bervariasi tergantung letaknya baik secara geografis, habitat,
maupun tingkah laku (Boer 1996). Berikut Tabel 8 disajikan perbandingan
0
10
20
30
40
50
98
-10
7
11
8-1
27
13
8-1
47
15
8-1
67
17
8-1
87
19
8-2
07
21
8-2
27
23
8-2
47
25
8-2
67
27
8-2
87
29
8-3
07
31
8-3
27
54
informasi hasil olahan nilai K, L∞, t0 ikan kurisi Nemipterus japonicus oleh
Rahayu 2012 menggunakan FiSAT dan Ms. Excel dengan CIAFISH.
Tabel 8. Perbandingan Informasi Hasil Olahan Nilai K, L∞, t0 Ikan Kurisi
Nemipterus japonicus oleh Rahayu 2012 Menggunakan FiSAT dan Ms.
Excel dengan CIAFISH
Rahayu 2012 CIAFISH
Nilai K,
L∞, t0
Betina
K 0,07 0,07
Linf 926,59 926,59
t0 -6,11 -6,02
Jantan
K 0,15 0,15
Linf 493,36 493,36
t0 -3,33 -3,28
Dari Tabel 8 dapat terlihat perbedaan hasil olahan Parameter pertumbuhan
(K, L∞, t0) oleh Rahayu 2012 Menggunakan FiSAT dan Ms. Excel dengan
CIAFISH. Dari perbandingan tersebut didapat nilai yang tidak begitu berbeda.
Dari olahan nilai K, L∞, t0 dengan mengunakan CIAFISH yang didapat dari
perhitungan dengan mengunakan metode Ford Walford dapat terlihat pada Tabel
8. Persamaan pertumbuhan von Bartalanffy yang terbentuk untuk ikan kurisi
betina yaitu Lt = 926,59 (1-e[-0,07(t+6,02)]
) dan untuk kurisi jantan Lt = 493,36 (1-e[-
0,15 (t+3,28)]).
Koefisien pertumbuhan (K) didefinisikan sebagai parameter yang
menyatakan kecepatan kurva pertumbuhan dalam mencapai panjang asimtotiknya
(L∞) dari pola pertumbuhan ikan. Jadi semakin tinggi nilai koefisien
pertumbuhan, maka ikan semakin cepat mencapai panjang asimtotik dan beberapa
spesies kebanyakan diantaranya berumur pendek. Sebaliknya ikan yang memiliki
nilai koefisien pertumbuhan rendah maka umurnya semakin tinggi karena lama
untuk mencapai nilai asimtotiknya (Spare & Venema 1999).
Penentuan laju mortalitas total (Z) pada program CIAFISH menggunakan
estimasi nilai Z Beverton & Holt. Untuk pendugaan laju mortalitas alami
menggunakan rumus empiris Pauly (Sparre & Venema 1999). Berikut Tabel 9
disajikan perbandingan informasi hasil olahan nilai mortalitas ikan kurisi
55
Nemipterus japonicus oleh Rahayu 2012 menggunakan Ms. Excel dengan
CIAFISH.
Tabel 9. Perbandingan Informasi Hasil Olahan Nilai Mortalitas dan Laju
Eksploitasi Ikan Kurisi Nemipterus japonicus oleh Rahayu 2012
menggunakan Ms. Excel dengan CIAFISH.
Rahayu 2012 CIAFISH
Nilai
Mortalitas
Betina
Mortalitas Total (Z) 1,1629 0,5811
Mortalitas Alami (M) 0,1077 0,1077
Mortalitas Penangkapan (F) 1,0552 0,4734
Nilai
Mortalitas
Jantan
Mortalitas Total (Z) 1,3128 0,5345
Mortalitas Alami (M) 0, 2102 0,2102
Mortalitas Penangkapan (F) 1,1026 0,3243
Laju
Eksploitasi Betina 0,9074 0,8147
Jantan 0,8399 0,6068
Dari Tabel 9 terlihat perbedaan hasil olahan Rahayu 2012 dengan
CIAFISH. Hal tersebut dikarenakan penggunaan model yang berbeda dalam
proses pendugaan mortalitas total (program CIAFISH yang menggunakan
estimasi nilai Z Beverton & Holt dan Rahayu 2012 menggunakan kurva
tangkapan yang dilinierkan berdasarkan data komposisi panjang) yang akan
mempengaruhi nilai mortalitas penangkapan dan laju eksploitasi.
Namun informasi tersebut memberikan kesimpulan yang sama bahwa
kematian ikan kurisi lebih disebabkan oleh aktivitas penangkapan. Dari hasil
olahan didapat nilai dugaan mortalitas penangkapan yang lebih besar yaitu 1,0552
untuk betina; 1,1026 untuk jantan (Rahayu 2012) dan 0,4734 untuk betina; 0,3243
untuk jantan menggunakan CIAFISH dibandingkan nilai dugaan mortalitas alami
yaitu 0,1077 betina dan 0,2102 jantan.
Faktor yang mempengaruhi laju mortalitas penangkapan yaitu jumlah alat
tangkap dan intensitas penangkapan (Sinaga 2010) sedangkan kematian alami
diantaranya pemangsaan, penyakit, stres pemijahan, kelaparan dan usia tua
(Sparre & Venema 1999). Tingginya laju mortalitas penangkapan dan
menurunnya laju mortalitas alami juga dapat menunjukkan dugaan terjadi growth
overfishing yaitu sedikitnya jumlah ikan tua di alam (Sparre dan Venema 1999)
karena ikan muda tidak diberikan kesempatan untuk tumbuh.
56
Nilai laju eksploitasi ikan kurisi yang didaratkan di PPP Labuan Banten
sebesar 0,8147 (betina) dan 0,6068 (jantan). Hal ini menunjukkan bahwa tingkat
pemanfaatan ikan kurisi yang didaratkan di PPP Labuan telah melewati tingkat
pemanfaatan optimumnya. Hal ini didasari pada pernyataan Pauly 1984 in Sinaga
2010 bahwa laju eksploitasi optimum adalah sebesar 0,5. Semakin tinggi tingkat
eksploitasi di suatu daerah maka mortalitas penangkapannya semakin besar
(Lelono 2007 in Syakila 2009). Selain itu, hal ini juga menjelaskan hasil analisis
parameter pertumbuhan yang telah dibahas sebelumnya bahwa tingginya tekanan
penangkapan mengakibatkan ukuran panjang maksimum ikan tertangkap saat ini
menjadi lebih kecil serta meningkatnya koefisien pertumbuhan yang berarti umur
ikan untuk mencapai panjang infinitif menjadi lebih pendek. Berikut Tabel 10
disajikan perbandingan informasi hasil olahan model surplus produksi ikan kurisi
Nemipterus japonicus oleh Rahayu 2012 menggunakan Ms. Excel dengan
CIAFISH.
Tabel 10. Perbandingan Informasi Hasil Olahan Model Surplus Produksi Ikan
Kurisi Nemipterus japonicus oleh Rahayu 2012 menggunakan Ms. Excel
dengan CIAFISH.
Rahayu 2012 CIAFISH
Model
Surplus
Produksi Schaefer
Fmsy 137 137
MSY 1.632,3 1.632,3
TAC 1.305,84 1.305,84
R^2 74,88% 74,88%
Grafik -
57
Tabel 10. Perbandingan Informasi Hasil Olahan Model Surplus Produksi Ikan Kurisi Nemipterus japonicus oleh Rahayu 2012
menggunakan Ms. Excel dengan CIAFISH (Lanjutan)
Rahayu 2012 CIAFISH
Model
Surplus
Produksi Fox
Fmsy 127 127
MSY 1.383,79 1.383,79
TAC 1.107,03 1.107,03
R^2 91,4% 91,4%
Grafik
Sumber : Rahayu 2012
Ln CPUE = -0,0070f +
3,3850
R² = 0,9140
0
1
2
3
4
- 100 200 300
Ln
CP
UE
(T
on
/Un
it)
Upaya (unit)
0
500
1000
1500
2000
0
11
6
23
2
34
8
46
4
58
0
69
6
81
2
92
8
10
44
11
60
12
76
13
92
Pro
du
ksi
(T
on
)
Upaya (Unit)
58
Dari Tabel 10 dapat terlihat hasil dari kedua olahan sistem yang
menunjukkan nilai yang tidak begitu berbeda. Dari hasil analisis model stok ikan
kurisi diketahui nilai koefisien determinasi (r2) hasil regresi antara upaya dengan
hasil tangkapan per upaya (CPUE) yaitu 91,4% (model Fox) lebih besar dari 74,9
% (model Schaefer). Model fox mempunyai nilai koefisien determinasi (r2) lebih
besar menunjukkan model tersebut mempunyai hubungan yang lebih dekat
dengan model yang sebenarnya (Walpole 1992) sehingga pengelolaan
sumberdaya ikan kurisi mengacu pada model fox.
Koefisien nilai hasil tangkap per satuan upaya (CPUE) dengan upaya
tangkap berkorelasi negatif, yakni semakin tinggi jumlah upaya alat tangkap maka
nilai CPUE semakin rendah. Model sumberdaya ikan kurisi mengikuti persamaan
Ln CPUE= -0,0078x + 3,385. Nilai upaya penangkapan optimum (fmsy ) sebesar
128 unit penangkapan per tahun dengan jumlah tangkapan maksimum lestari
(MSY) sebesar 1383,79 ton ikan/tahun dan jumlah tangkapan yang diperbolehkan
(TAC) sebesar 1107,03 ton ikan /tahun.
Dari perhitungan tersebut dapat disimpulkan bahwa penangkapan ikan
kurisi mengalamai upaya penangkapan yang melebihi upaya optimum (tahun
2000, 2001, 2002 dan 2009) serta tangkap lebih pada tahun 2005 yang diikuti
penurunan hasil tangkapan di tahun berikutnya yang merupakan salah satu tanda
bahwa sumberdaya ikan kurisi mengalami over fishing. Hal ini sesuai dengan
pernyataan Widodo & Suadi 2006 bahwa terdapat beberapa ciri yang dapat
menjadi patokan suatu perikanan sedang menuju kondisi upaya tangkap lebih
yaitu waktu melaut menjadi lebih panjang dari biasanya, lokasi penangkapan
menjadi lebih jauh dari biasanya, ukuran mata jaring menjadi lebih kecil dari
biasanya, yang kemudian diikuti produktivitas (hasil tangkapan per satuan upaya,
CPUE) yang menurun, ukuran ikan yang semakin kecil, dan biaya penangkapan
yang semakin meningkat.
Upaya tangkap lebih (overfishing) diartikan sebagai penerapan sejumlah
upaya penangkapan yang berlebihan terhadap suatu stok ikan. Upaya tangkap
lebih (overfishing) terbagi ke dalam dua pengertian yaitu growth overfishing dan
recruitment overfishing. Growth overfishing terjadi jika ikan ditangkap sebelum
mereka sempat tumbuh mencapai ukuran dimana peningkatan lebih lanjut dari
59
pertumbuhan akan mampu membuat seimbang dengan penyusutan stok yang
diakibatkan oleh mortalitas alami. Recruitment overfishing adalah pengurangan
melalui penangkapan terhadap suatu stok sedemikian rupa sehingga jumlah stok
induk tidak cukup banyak untuk memproduksi telur yang kemudian menghasilkan
rekrut terhadap stok yang sama (Widodo & Suadi 2006). Pada saat hasil
tangkapan menurun kemungkinan terjadi salah satu dari kondisi tersebut atau
terjadi keduanya secara bersamaan (Sparre & Venema 1999).
4.4 Rencana Pengelolaan Perikanan Stok Ikan Kurisi
Tujuan utama pengelolaan perikanan adalah untuk menjamin produksi
yang berkelanjutan dari waktu ke waktu dari berbagai stok ikan (resource
conservation), terutama melalui berbagai tindakan pengaturan (regulations) dan
pengkayaan (enhancement) yang meningkatkan kehidupan sosial nelayan dan
sukses ekonomi bagi industri yang didasarkan pada stok ikan (Widodo 2002).
Demi mencapai tujuan tersebut perlu dilakukan perumusan program
pengelolaan perikanan yang membutuhkan suatu informasi salah satunya yaitu
informasi mengenai aspek biologi dari setiap perikanan. Melalui program
CIAFISH akan memudahkan dalam proses menghasilkan informasi akan
pengkajian stok secara terpadu yang menjadi dasar pertimbangan dalam
pengelolaan perikanan. Sehingga dalam perencanaan pengelolaan perikanan dapat
dilakukan secara efektif dan efisien. Namun perlu ada pengembangan lebih lanjut
dari program CIAFISH karena program ini masih memiliki keterbatasan dan jauh
dari sempurna.
5. KESIMPULAN DAN SARAN
5.1 Kesimpulan
Program CIAFISH (Calculation, Information, and Analysis of Fisheries)
merupakan suatu sistem yang telah dirancang untuk dapat menghasilkan informasi
pengkajian stok sumberdaya perikanan. Program ini menggunakan data panjang,
berat, hasil tangkap, dan upaya penangkapan yang menghasilkan hubungan
panjang berat, sebaran frekuensi panjang, nilai K, L∞, t0, nilai mortalitas, laju
eksploitasi dan model surplus produksi, sehingga dapat mempermudah dalam
pengkajian stok ikan..
5.2 Saran
Program CIAFISH (Calculation, Information, and Analysis of Fisheries)
masih memerlukan pengembangan lebih lanjut guna dapat memenuhi kebutuhan-
kebtuhan dalam penunjang pengambilan keputusan pengelolaan perikanan.
Rekomendasi pengembangan lebih lanjut diantaranya :
a. Penyediaan sarana untuk pencetakkan tampilan informasi secara langsung
ke media pencetak atau printer
b. Menambahkan parameter-parameter lain yang bisa dijadikan sebagai acuan
dalam penunjang pengambilan keputusan pengelolaan perikanan
DAFTAR PUSTAKA
[KADIN INDONESIA] Kamar Dagang da Industri Indonesia. 2011. Indonesia
Minta TNI AL Perketat Pengawasan Wilayah Perairan
Abror K. 2011. Aplikasi Teks Editor dengan Menggunakan Bahsasa
Pemrograman C# [Tugas Akhir]. Jurusan Teknik Informatika. Fakultas
Teknologi Industri. Universitas Gunadarma
Affandi R. 2002. Fisiologi Hewan Air. Pekanbaru: Unri Press.
Andayati D. 2010.Sistem Penunjang Keputusan Pra-Seleksi Penerimaan Siswa
Baru (PSB) On-Line Yogyakarta. Jurnal Teknologi. 3(2):145-153
Aziz KA. 1989. Dinamika Populasi Ikan. Bogor: Institut Pertanian Bogor.115 hlm
B Pawar. 2011. Discrimination of Nemipterus japonicus (Bloch, 1791) Stock
From Maharashtra and Goa States of India. Indian Journal of Geo-Marine
Sciences. 40(3):471-475
Boer M. 1996. Pendugaan Koefisien Pertumbuhan (L∞, K, Dan t0) Berdasarkan
Data Frekuensi Panjang. Jurnal Ilmu-Ilmu Perairan dan Perikanan
Indonesia. 14 (1): 75-84
Boer M. 2010.Bahan Ajar untuk Mata Kuliah Pengkajian Stok Ikan. Departemen
Sumberdaya Perairan. Institut Pertanian Bogor
Dweib Ibrahim. 2009. MAXDOR:Mapping XML Document into Relation
Database. The Open Information System Journal. 3(109):108-122
Effendie M. 1979. Metode Biologi Perikanan. Yayasan Dewi Sri. Bogor. 112 hlm.
Effendie MI. 2005. Biologi Perikanan. Yogyakarta: Yayasan Pustaka Nusantara.
163 hlm.
62
Ekasari N & Husnul K. 2007. Perancangan Sistem Penunjang Keputusan untuk
Memantau Kualitas Lingkungan. LIPI P2 Informatika
Fauzi A. 2004.Ekonomi Sumber Daya Alam dan Lingkungan. Jakarta : PT
Gramedia Pustaka Utama
Fitriyanti R. 2000. Inventarisasi Parasit Metazoa Pada Ikan Kurisi (Nemipterus
japonicus Bloch, 1791), Ikan Swanggi (Priacanthus macracanthus Cuvier,
1829) dan Ikan Layang (Decapterus russeli Ruppel, 1830) dari Tempat
Pelelangan Ikan Pelabuhan Ratu, Jawa Barat [Skripsi]. Departemen
Budidaya Perairan. Fakultas Perikanan dan Ilmu Kelautan.Institut
Pertanian Bogor
Jangra A et al.. 2011. Exploring Testing Strategies. International Journal of
Information Technology and Knowledge Management. 4(1):297-299
Jumadi dan Widiadi S. 2009. Pengembangan Aplikasi Sistem Informasi Geografis
(Sig) Berbasis Web Untuk Manajemen Pemanfaatan Air Tanah
Menggunakan Php, Java Dan Mysql Spatial (Studi Kasus di Kabupaten
Banyumas). Forum Geografi. 23(2) : 123 – 138
Khan M. 2010. Different Forms of Software Testing Techniques for Finding
Errors. International Journal of Computer Science. 7(1)
Kizhakudan S et al.. 2008. Fishery Of Threadfin Breams Along Saurashtra Coast
(Gujarat), And Some Aspects Of Biology Of Nemipterus japonicus (Bloch,
1791) And N. Mesoprion (Bleeker, 1853). J.Mar, Biol. Ass. India.
50(1):43-51
Kumar R et al.. 2010. XML Secure Documents for a Secure e-Commerce
Architecture. Global Jurnal of Enterprise Information System. 2(1):35-45
Kusnandar E. 2004. Rancang Bangun Sistem Informasi Penunjang Keputusan
Pengelolaan Ekosistem Danau [Skripsi]. Departemen Manajemen
Sumberdaya Perairan. Fakultas Perikanan dan Ilmu Kelautan.Institut
Pertanian Bogor
63
Kusumadewi S & Hermaduanti N. 2008. Sistem Penunjang Keputusan Berbasis
Sms Untuk Menentukan Status Gizi Dengan Metode K-Nearest Neighbor
[abstrak].in : Seminar Nasional Aplikasi Teknologi Informasi 2008
(SNATI 2008); Yogyakarta, 21 Juni 2008
McDonald Matthew. 2010.Pro WPF in C# 2010.Apress:New York
Mulyanto A. 2008. Rekayasa Perangkat Lunak Jilid 1. Jakarta : Direktorat
Pembinaan Sekolah Menengah Kejuruan, Direktorat Jenderal Manajemen
Pendidikan Dasar dan Menengah, Departemen Pendidikan Nasional.
Muzakir. 2008.Kajian Ekonomi Pemanfaatan Sumberdaya Perikanan Tangkap Di
Kabupaten Agam Provinsi Sumatera Barat [tesis].Program Pascasarjana,
Institut Pertanian Bogor
Nugraha F. 2009. Aplikasi Tracking Menggunakan Handphone dan Pemantauan
Lokasi Menggunakan Webcam” [Laporan Tugas Akhir]. Program Studi
Teknik Telekomunikasi. Jurusan Teknik Elektro. Politeknnik Negeri
Jakarta.
O’Brien J. 2008. Introduction to Information System. McGraw-Hill Irwin,USA
Raesi H. Dkk. 2012. Length-Weights Relationships And Relative Weights Of Some
Demersal Fish Species From The Persian Gulf, Iran. African Journal of
Agricultural Research. 7(5): 741-746
Rahayu E. 2012. Kajian Stok Sumberdaya Ikan Kurisi (Nemipterus japonicus,
Bloch 1791) Di Perairan Selat Sunda Yang Didaratkan Di PPP Labuan,
Pandeglang, Banten [Skripsi]. Departemen Manajemen Sumberdaya
Perairan. Fakultas Perikanan dan Ilmu Kelautan.Institut Pertanian Bogor
Rakhmania F. 2008. Prospek Pendaratan Hasil Tangkapan di PPP Labuan
kabupaten Pandeglang-Banten [Skripsi]. Departemen Pemanfaatan
Sumberdaya Perikanan. Fakultas Perikanan dan Ilmu Kelautan.Institut
Pertanian Bogor
Rochim Taufik. 2002. Sistem Informasi. Penerbit ITB : Bandung.x+312h
64
Ruslan D. 2005. Model Analisis Ekonomi Dan Optimasi Pengusahaan
Sumberdaya Perikanan.Jurnal Sistem Teknik Industri. 6(3)
Sinaga P. 2010. Dinamika Stok dan Analisis Bio-Ekonomi Ikan Kembung Lelaki
(Rastreliger kanagurta) di TPI Blanakan, Subang, Jawa Barat [Skripsi].
Departemen Manajemen Sumberdaya Perairan. Fakultas Perikanan dan
Ilmu Kelautan.Institut Pertanian Bogor
Sparre and Venema. 1999. Introduksi Pengkajian Stok Ikan Tropis. Buku
I:manual. Diterjemahkan oleh Pusat Penelitian dan Pengembangan
Perikanan. Organisasi Pangan dan Pertanian PBB. Jakarta. Indonesia.
xiv+438 hlm
Stair Ralph M. 1992.Principle of Information Systems a Managerial
Approach.Boyd&Fraser publishing company. Boston, USA
Stair R & George R. 2010. Fundamentals of Information Systems5e
.Course
Technology Cengage Learning.USA, 342-343 hlm
Susilo S. 2009. Kondisi Stok Ikan Perairan Pantai Selatan Jawa Barat. Jurnal
Ilmu-ilmu Perairan dan Perikanan Indonesia. 16 (1): 39-46
Syakila S. 2009. Studi Dinamika Stok Ikan Tembang (Sardinella Fimbriata) Di
Perairan Teluk Palabuhanratu, Kabupaten Sukabumi, Provinsi Jawa Barat
[Skripsi]. Departemen Manajemen Sumberdaya Perairan. Fakultas
Perikanan dan Ilmu Kelautan.Institut Pertanian Bogor
Tangke U. 2010. Perencanaan Disain Pengelolaan Sumberdaya Perikanan
Berbasis Sistem Informasi Manajemen. Jurnal Ilmiah Agribisnis dan
Perikanan (Agrikan UMMU-Ternate). 3(2)
Trisnawarman D & Erlysa W. 2007.Sistem Penunjang Keputusan Pemilihan
Metode/Alat Kontrasepsi. Gematika Jurnal Manajemen Informatika. 9(1)
Walpole RE. 1992. Pengantar statistika, Edisi ke-3. Gramedia Pustaka Utama.
Jakarta. 515 hlm.
65
Widodo J. 2002. Pengantar Pengkajian Stok Ikan. Pusat Riset Perikanan Tangkap.
Badan Riset Kelautan dan Perikanan. Jakarta. 16 hlm
Widodo & Suadi. 2006. Pengelolaan sumberdaya perikanan laut. Gajah Mada
University Press. Yogyakarta. 252 hlm
Widodo A. 2003. Transformasi Dokumen XML. Jurnal Matematika dan
Komputer. 6(3): 128 – 136.
www.bantenprov.go.id. Pelabuhan Perikanan Labuan Kabupaten Pandeglang.
[terhubung berkala]. http://www.banten prov.go.id /dokumen/pelabuhan
%20perikanan %20labuan.pdf. [12 Juli 2012].
www.fishbase.org. Nemiterus japonicus. [terhubung berkala].
http://www.fishbase.org/summary/Nemipterus-japonicus.html [29 Juli
2012]
LAMPIRAN
67
Lampiran 1. Alat dan bahan yang digunakan selama melakukan penelitian
a. Perangkat keras laptop
b. Microsoft Visual Studio (perangkat
lunak tool pengkodean)
c. Bahasa
pemrograman C#
d. DBMS XML e. Micrososft Expression
Blend 4 (perangkat
lunak tool desain)
68
Lampiran 2. Struktur Basis Data Pertumbuhan dan Model Surplus Produksi
Tabel Pertumbuhan
No. Nama Kolom Tipe Data Keterangan
1 Id AutoNumber Kolom Kunci
2 Nama_peneliti Text Nama peneliti
3 Nama_ikan Text Nama ikan yang diteliti
4 Waktu Text Waktu penelitian
5 Panjang Numbert Panjang ikan
6 Berat Number Berat ikan
7 Jenis_kelamin Text Jenis kelamin ikan
Tabel Model Surplus Produksi
No. Nama Kolom Tipe Data Keterangan
1 Id AutoNumber Kolom Kunci
2 Nama_peneliti Text Nama peneliti
3 Nama_ikan Text Nama ikan yang diteliti
2 Tahun Text Tahun sumber data
3 Catch Number Hasil tangkapan ikan
4 Effort Number Usaha penangkapan ikan
Lampiran 3. Listing Program CIAFISH
1. Xaml Mainwindow
<ribbon:RibbonWindow x:Class="Skripsi.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/pres
entation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:ribbon="clr-
namespace:Microsoft.Windows.Controls.Ribbon;assembly=
RibbonControlsLibrary" Title="CIAFISH :: CALCULATION, INFORMATION
AND ANALYSIS OF FISHERIES" Icon="/Skripsi;component/Images/newLogo.png"
Background="White" x:Name="RibbonWindow"
Width="1000" Height="600"
WindowStartupLocation="CenterScreen">
<Window.CommandBindings>
<CommandBinding Command="NavigationCommands.GoToPage"
Executed="GoToPageExecuteHandler"
CanExecute="GoToPageCanExecuteHandler" /> </Window.CommandBindings>
<Grid x:Name="LayoutRoot"> <Grid.RowDefinitions> <RowDefinition
Height="Auto"/> <RowDefinition Height="*"/>
</Grid.RowDefinitions> <ribbon:Ribbon x:Name="Ribbon">
<ribbon:Ribbon.ApplicationMenu>
<ribbon:RibbonApplicationMenu SmallImageSource="Images\Icons\table.ico">
<ribbon:RibbonApplicationMenuItem Header="New File"
ImageSource="/Skripsi;component/Images/Icons/note.ico"
x:Name="newFile">
<ribbon:RibbonApplicationSplitMenuItem Header="New
File Pertumbuhan" ImageSource="/Skripsi;component/Images/Icons/table.ico">
</ribbon:RibbonApplicationSplitMenuItem>
<ribbon:RibbonApplicationSplitMenuItem Header="New File Model Surplus Produksi"
ImageSource="/Skripsi;component/Images/Icons/table.ico">
</ribbon:RibbonApplicationSplitMenuItem> </ribbon:RibbonApplicationMenuItem>
<ribbon:RibbonApplicationMenuItem
ImageSource="/Skripsi;component/Images/Icons/save.ico" Header="Save File">
<ribbon:RibbonApplicationSplitMenuItem Header="Save
file pertumbuhan" x:Name="saveFileP" Click="saveFileP_Click"
ImageSource="Images\Icons\save.ico"></ribbon:RibbonAp
plicationSplitMenuItem>
<ribbon:RibbonApplicationSplitMenuItem
Header="Save file model surplus" x:Name="saveFileM"
Click="saveFileM_Click" ImageSource="Images\Icons\save.ico"></ribbon:RibbonAp
plicationSplitMenuItem>
</ribbon:RibbonApplicationMenuItem> <ribbon:RibbonApplicationMenuItem
ImageSource="/Skripsi;component/Images/Icons/open.ico"
Header="Open File"> <ribbon:RibbonApplicationSplitMenuItem
Header="Open file pertumbuhan" x:Name="openFileP"
Click="openFileP_Click" ImageSource="Images\Icons\open.ico"></ribbon:RibbonAp
plicationSplitMenuItem> <ribbon:RibbonApplicationSplitMenuItem
Header="Open file model surplus" x:Name="openFileM"
Click="openFileM_Click"
ImageSource="Images\Icons\open.ico"></ribbon:RibbonAp
plicationSplitMenuItem>
</ribbon:RibbonApplicationMenuItem>
<ribbon:RibbonApplicationMenuItem
Header="Close"
x:Name="closeApps" Click="closeApps_Click"
ImageSource="Images\Icons\close.ico"/>
</ribbon:RibbonApplicationMenu> </ribbon:Ribbon.ApplicationMenu>
<ribbon:RibbonTab x:Name="HomeTab" Header="Home">
<ribbon:RibbonGroup x:Name="Pertumbuhan" Header="Pertumbuhan">
<ribbon:RibbonButton x:Name="btnFormPertumbuhan"
LargeImageSource="/Skripsi;component/Images/Icons/table
.ico"
Label="Form Pertumbuhan"
Command="NavigationCommands.GoToPage" CommandParameter="Page/PagePertumbuhan.xaml"
CommandTarget="{Binding ElementName=frmContent}"/>
</ribbon:RibbonGroup>
<ribbon:RibbonGroup Header="Surplus Produksi">
<ribbon:RibbonButton LargeImageSource="/Skripsi;component/Images/Icons/table
.ico" Label="Form Model Surplus"
Command="NavigationCommands.GoToPage" CommandParameter="Page/PageModelSurplusProduksi.xa
ml" CommandTarget="{Binding
ElementName=frmContent}"> </ribbon:RibbonButton>
</ribbon:RibbonGroup>
<ribbon:RibbonGroup x:Name="Bantuangroup"
Header="Bantuan">
<ribbon:RibbonButton x:Name="BtnHelp" LargeImageSource="/Skripsi;component/Images/Icons/help.
ico"
Command="NavigationCommands.GoToPage" CommandParameter="Page/PageBantuan.xaml"
CommandTarget="{Binding ElementName=frmContent}">
</ribbon:RibbonButton> </ribbon:RibbonGroup>
<ribbon:RibbonGroup x:Name="Informasi"
Header="Informasi"> <ribbon:RibbonButton x:Name="btnDeskripsi"
Label="Deskripsi Aplikasi"
LargeImageSource="/Skripsi;component/Images/Icons/note.ico"
Command="NavigationCommands.GoToPage"
CommandParameter="Page/PageDeskripsi.xaml"
CommandTarget="{Binding ElementName=frmContent}">
</ribbon:RibbonButton>
<ribbon:RibbonButton x:Name="btnTentangPembuat" Label="Tentang Pengembang"
LargeImageSource="/Skripsi;component/Images/Icons/Abo
ut.ico" Command="NavigationCommands.GoToPage"
CommandParameter="Page/PageTentang.xaml"
CommandTarget="{Binding ElementName=frmContent}"> </ribbon:RibbonButton>
</ribbon:RibbonGroup>
</ribbon:RibbonTab> </ribbon:Ribbon>
<ScrollViewer x:Name="scrView" HorizontalScrollBarVisibility="Auto"
VerticalScrollBarVisibility="Auto" Margin="0,136,0,0"
Grid.RowSpan="2">
<Frame NavigationUIVisibility="Hidden"
Name="frmContent" Grid.RowSpan="2"
Navigated="frmContent_Navigated" Grid.Column="1" />
70
Lampiran 3. Listing Program CIAFISH
(lanjutan)
</ScrollViewer>
</Grid>
</ribbon:RibbonWindow>
2. Mainwindow.xaml,cs
using System;
using System.Collections.Generic; using System.Globalization;
using System.Linq;
using System.Text; using System.Windows;
using System.Windows.Controls;
using System.Windows.Data; using System.Windows.Documents;
using System.Windows.Forms;
using System.Windows.Input; using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation; using System.Windows.Shapes;
using System.Xml;
using Microsoft.Windows.Controls.Ribbon; using MessageBox = System.Windows.MessageBox;
using Microsoft.Win32;
using System.Xml.Linq;
namespace Skripsi
{ /// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary> public partial class MainWindow : RibbonWindow
{ public MainWindow()
{
InitializeComponent(); this.Loaded += new
RoutedEventHandler(MainWindow_Loaded);
// Insert code required on object creation below this
point.
} void MainWindow_Loaded(object sender,
RoutedEventArgs e)
{ frmContent.NavigationService.Navigate(new
Uri("/Page/PageUtama.xaml", UriKind.Relative));
} private void GoToPageExecuteHandler(object sender,
ExecutedRoutedEventArgs e)
{ frmContent.NavigationService.Navigate(new Uri((string)e.Parameter, UriKind.Relative));
}
private void GoToPageCanExecuteHandler(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = true; }
private void frmContent_Navigated(object sender,
NavigationEventArgs e) {
}
private void closeApps_Click(object sender, RoutedEventArgs e)
{
if (MessageBox.Show("apakah anda ingin keluar dari aplikasi ?",
"konfirmasi", MessageBoxButton.YesNo) ==
MessageBoxResult.Yes) {
this.Close();
} else
{}
} private void saveFileP_Click(object sender,
RoutedEventArgs e)
{ Microsoft.Win32.SaveFileDialog save = new
Microsoft.Win32.SaveFileDialog();
save.Filter = "File (*.xml)|*.xml"; Nullable<bool> result = save.ShowDialog();
// Process open file dialog box results
if (result == true) { System.Xml.XmlTextWriter xmlwriter =
new System.Xml.XmlTextWriter(save.FileName, null);
xmlwriter.Formatting = Formatting.Indented; xmlwriter.Indentation = 1;
xmlwriter.IndentChar = '\t';
xmlwriter.WriteStartDocument(); xmlwriter.WriteComment("pertumbuhan " +
DateTime.Now);
xmlwriter.WriteStartElement("dataroot"); AddDataAnother(xmlwriter);
xmlwriter.WriteEndElement();
xmlwriter.Close(); }
}
public void AddDataAnother(XmlWriter xmlwriter)
{
foreach (Track item in DataAll.listDataPertumbuhan)
{ xmlwriter.WriteStartElement("pertumbuhan");
xmlwriter.WriteStartElement("ID"); xmlwriter.WriteString(item.ID.ToString(CultureInfo.Invaria
ntCulture.NumberFormat)); xmlwriter.WriteEndElement();
xmlwriter.WriteStartElement("Waktu"); xmlwriter.WriteString(item.Waktu);
xmlwriter.WriteEndElement()
xmlwriter.WriteStartElement("Nama_peneliti"); xmlwriter.WriteString(item.NamaPeneliti);
xmlwriter.WriteEndElement();
xmlwriter.WriteStartElement("Nama_ikan"); xmlwriter.WriteString(item.NamaIkan);
xmlwriter.WriteEndElement();
xmlwriter.WriteStartElement("Panjang"); xmlwriter.WriteString(item.Panjang.ToString(CultureInfo.In
variantCulture.NumberFormat));
xmlwriter.WriteEndElement(); xmlwriter.WriteStartElement("Berat");
xmlwriter.WriteString(item.Berat.ToString(CultureInfo.Inva
riantCulture.NumberFormat)); xmlwriter.WriteEndElement();
xmlwriter.WriteStartElement("Jenis_kelamin");
xmlwriter.WriteString(item.Jenis_Kelamin); xmlwriter.WriteEndElement();
} MessageBox.Show("Save Complete");
} private void saveFileM_Click(object sender,
RoutedEventArgs e)
{ Microsoft.Win32.SaveFileDialog save = new
Microsoft.Win32.SaveFileDialog();
save.Filter = "File (*.xml)|*.xml";
Nullable<bool> result = save.ShowDialog();
// Process open file dialog box results
if (result == true) {
71
Lampiran 3. Listing Program CIAFISH
(lanjutan)
System.Xml.XmlTextWriter xmlwriter = new
System.Xml.XmlTextWriter(save.FileName, null);
xmlwriter.Formatting = Formatting.Indented; xmlwriter.Indentation = 1;
xmlwriter.IndentChar = '\t';
xmlwriter.WriteStartDocument(); xmlwriter.WriteComment("surplusProduksi" +
DateTime.Now);
xmlwriter.WriteStartElement("dataroot"); AddDataAnother(xmlwriter);
xmlwriter.WriteEndElement(); xmlwriter.Close();
} }
public void AddDataAnotherMSP(XmlWriter
xmlwriter) {
foreach (TrackMSP item in
DataAll.listDataMSP) {
xmlwriter.WriteStartElement("surplusProduksi");
xmlwriter.WriteStartElement("ID"); xmlwriter.WriteString(item.ID.ToString(CultureInfo.Invaria
ntCulture.NumberFormat));
xmlwriter.WriteEndElement(); xmlwriter.WriteStartElement("Nama_peneliti");
xmlwriter.WriteString(item.NamaPeneliti);
xmlwriter.WriteEndElement(); xmlwriter.WriteStartElement("Nama_ikan");
xmlwriter.WriteString(item.NamaIkan);
xmlwriter.WriteEndElement(); xmlwriter.WriteStartElement("Tahun");
xmlwriter.WriteString(item.Tahun);
xmlwriter.WriteEndElement(); xmlwriter.WriteStartElement("Catch");
xmlwriter.WriteString(item.Catch.ToString(CultureInfo.InvariantCulture.NumberFormat));
xmlwriter.WriteEndElement();
xmlwriter.WriteStartElement("Effort");xmlwriter.WriteString(item.Effort.ToString(CultureInfo.InvariantCulture.Number
Format)); xmlwriter.WriteEndElement();
} }
private void openFileP_Click(object sender,
RoutedEventArgs e) {
// Create OpenFileDialo
string filename; Microsoft.Win32.OpenFileDialog dlg = new
Microsoft.Win32.OpenFileDialog();
// Set filter for file extension and default file extension
dlg.DefaultExt = ".xml";
dlg.Filter = "XML Format (CIAFISH) (.xml)|*.xml"; // Display OpenFileDialog by calling ShowDialog
method
Nullable<bool> result = dlg.ShowDialog(); // Get the selected file name and display in a
TextBox
if (result == true) {
// Open document
filename = dlg.FileName; XDocument doc = XDocument.Load(filename);
var data = from p in doc.Descendants("pertumbuhan")
let xElement = p.Element("ID") where xElement != null
let xElement3 = p.Element("Waktu")
where xElement3 != null let element = p.Element("Panjang")
where element != null
let xElement1 = p.Element("Berat") where xElement1 != null
let element1 = p.Element("TKG")
where element1 != null let xElement2 = p.Element("Jenis_kelamin")
where xElement2 != null
let element2 = p.Element("Nama_peneliti") where element2 != null
let element3 = p.Element("Nama_ikan")
where element3 != null select new Track()
{
ID = Convert.ToInt32(xElement.Value), NamaPeneliti = element2.Value,
NamaIkan = element3.Value,
Panjang = Double.Parse(element.Value, (CultureInfo.InvariantCulture.NumberFormat)),
Berat = Double.Parse(xElement1.Value,
(CultureInfo.InvariantCulture.NumberFormat)), Waktu = xElement3.Value,
waktuDate = Convert.ToDateTime(xElement3.Value),
Jenis_Kelamin = xElement2.Value };
DataAll.listDataPertumbuhan = data.ToList();
frmContent.NavigationService.Navigate(new Uri("/Page/PagePertumbuhan.xaml", UriKind.Relative));
}
} private void openFileM_Click(object sender,
RoutedEventArgs e)
{
// Create OpenFileDialo
string filename;
Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog();
// Set filter for file extension and default file
extension
dlg.DefaultExt = ".xml"; dlg.Filter = "XML Format (CIAFISH) (.xml)|*.xml";
// Display OpenFileDialog by calling ShowDialog method
Nullable<bool> result = dlg.ShowDialog();
// Get the selected file name and display in a TextBox
if (result == true)
{ // Open document
filename = dlg.FileName;
XDocument doc = XDocument.Load(filename); var dataMSP = from p in
doc.Descendants("surplusProduksi")
let xElement = p.Element("ID") where xElement != null
let xElement4 = p.Element("NamaPeneliti")
where xElement4 != null let xElement5 = p.Element("NamaIkan")
where xElement5 != null
let xElement3 = p.Element("Tahun") where xElement3 != null
let xElement2 = p.Element("Catch")
where xElement2 != null let xElement1 = p.Element("Effort")
where xElement1 != null
select new TrackMSP() {
ID = Convert.ToInt32(xElement.Value),
NamaPeneliti = xElement4.Value,
NamaIkan = xElement5.Value, Tahun = xElement3.Value, Catch
72
= Convert.ToDouble(xElement2.Value, (CultureInfo.InvariantCulture.NumberFormat)),
Effort = Convert.ToDouble(xElement1.Value,
(CultureInfo.InvariantCulture.NumberFormat)), };
taAll.listDataMSP = dataMSP.ToList();
frmContent.NavigationService.Navigate(new Uri("/Page/PageModelSurplusProduksi.xaml",
UriKind.Relative));
} }
}
}
3. XAML Form Pertumbuhan
<Page
x:Class="Skripsi.Page.PagePertumbuhan"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/20
08" xmlns:Grid="http://schemas.microsoft.com/wpf/2008/toolkit
"
mc:Ignorable="d" xmlns:chartingToolkit="clr-
namespace:System.Windows.Controls.DataVisualization.Ch
arting;assembly=System.Windows.Controls.DataVisualization.Toolkit" Title="PagePertumbuhan"
Loaded="Page_Loaded" Height="989" Width="1215">
<Page.Resources>
<SolidColorBrush x:Key="MyBrush" Color="Cyan"/>
<Style TargetType="Border" x:Key="PageBack">
<Setter Property="Background" Value="white"></Setter>
</Style> </Page.Resources>
<Grid>
<GroupBox HorizontalAlignment="Left" Margin="1,5,0,0" Name="groupBox1"
VerticalAlignment="Top" Header="Parameter" >
<Grid> <StackPanel Orientation="Horizontal">
<StackPanel Orientation="Vertical">
<TextBlock Height="23" HorizontalAlignment="Left" Name="textBlock1" Text="Nama Peneliti"
VerticalAlignment="Top" Width="75" />
<TextBlock Height="5"></TextBlock> <TextBlock Height="23" HorizontalAlignment="Left"
Name="textBlock2" Text="Nama Ikan"
VerticalAlignment="Top" Width="75" /> <TextBlock Height="5"></TextBlock>
<TextBlock Height="23" HorizontalAlignment="Left"
Name="textBlock5" Text="Batas Minimum" VerticalAlignment="Top" Width="97"
Grid.ColumnSpan="2" />
</StackPanel> <TextBlock Width="10"></TextBlock>
<StackPanel Orientation="Vertical">
<TextBox Height="22" HorizontalAlignment="Left" Name="txtpeneliti" VerticalAlignment="Top" Width="153"
/>
<TextBlock Height="5"></TextBlock> <TextBox Height="23" HorizontalAlignment="Left"
Name="txtikan" VerticalAlignment="Top" Width="153" />
<TextBlock Height="5"></TextBlock>
<TextBox Height="22" HorizontalAlignment="Left"
Name="textBoxBatasMinimum" VerticalAlignment="Top"
Width="153" /> </StackPanel>
<TextBlock Width="10"></TextBlock> <StackPanel Orientation="Vertical">
<TextBlock Height="23" HorizontalAlignment="Left"
Name="textBlock6" Text="Selang Kelas" VerticalAlignment="Top" Width="97" />
<TextBlock Height="5"></TextBlock>
<TextBlock Height="23" HorizontalAlignment="Left" Name="textBlock7" Text="Jumlah Kelas"
VerticalAlignment="Top" Width="130" />
<TextBlock Height="5"></TextBlock> <TextBlock Height="23" Name="textBlock3" Text="Suhu
(0C) " Width="130" />
</StackPanel> <TextBlock Width="10"></TextBlock>
<StackPanel Orientation="Vertical">
<TextBox Height="23" HorizontalAlignment="Left" Name="textBoxSelangKelas"
VerticalAlignment="Top" Width="153" />
<TextBlock Height="5"></TextBlock> <TextBox Height="23" HorizontalAlignment="Left"
Name="textBoxLamaPenelitian" VerticalAlignment="Top"
Width="153" /> <TextBlock Height="5"></TextBlock>
<TextBox Height="23" Name="textBoxT" Width="153" />
</StackPanel> <TextBlock Width="10"></TextBlock>
<TextBlock Background="gray" Width="3"></TextBlock>
<TextBlock Width="10"></TextBlock> <StackPanel Orientation="Vertical">
<TextBlock Height="23" Text="Waktu
(bulan/tanggal/tahun)"></TextBlock> <TextBlock Height="5"></TextBlock>
<TextBlock Height="23" Text="Panjang
(mm)"></TextBlock>
<TextBlock Height="5"></TextBlock>
<TextBlock Height="23" Text="Berat (gr)"></TextBlock>
</StackPanel> <TextBlock Width="10"></TextBlock>
<StackPanel Orientation="Vertical"> <DatePicker x:Name="DPWaktu" Height="25"
Margin="0,3,0,0" HorizontalAlignment="Left"
VerticalAlignment="Top" Width="115" SelectedDateChanged="DPWaktu_SelectedDateChanged"
/>
<TextBlock Height="5" ></TextBlock> <TextBox x:Name="txtPanjang" Width="115"></TextBox>
<TextBlock Height="5"></TextBlock>
<TextBox x:Name="txtBerat" Width="115"></TextBox> </StackPanel>
<TextBlock Width="20"></TextBlock>
<StackPanel Orientation="Vertical"> <TextBlock Height="23" Text="Jenis Kelamin"
Width="79"></TextBlock>
<TextBlock Height="5"></TextBlock> </StackPanel>
<TextBlock Width="10"></TextBlock>
<StackPanel HorizontalAlignment="Right" Orientation="Vertical">
<ComboBox Background="White" Height="23"
HorizontalAlignment="Left" Name="txtJenisKelamin" VerticalAlignment="Top" Width="115"
SelectionChanged="txtJenisKelamin_SelectionChanged">
<ComboBoxItem Content="Jantan"></ComboBoxItem> ComboBoxItem Content="Betina"></ComboBoxItem>
</ComboBox>
<TextBlock Height="5"></TextBlock> <TextBlock Width="5"></TextBlock>
<Button HorizontalAlignment="Right" Height="23"
Content="Tambah" Cursor="Hand" Width="100"
Background="white" Click="btnAdd_Click"
x:Name="btnAdd"></Button>
</StackPanel> </StackPanel>
73
Lampiran 3. Listing Program CIAFISH
(lanjutan)
</Grid>
</GroupBox>
<StackPanel Margin="0,130,0,0" Orientation="Vertical">
<StackPanel Height="30" Orientation="Horizontal"
Background="#32666161"> <TextBlock Width="10"></TextBlock>
<Button Margin="0,3,0,0" Content="Refresh"
Height="23" HorizontalAlignment="Right" Name="btnRefresh" VerticalAlignment="Top" Width="60"
Click="btnRefresh_Click" Background="White"
Cursor="Hand" /> <TextBlock Width="10"></TextBlock>
<Button Margin="0,3,0,0" Content="Proses"
Height="23" HorizontalAlignment="Right" Name="btnProses" VerticalAlignment="Top" Width="60"
Click="btnProses_Click_1" Background="White"
Cursor="Hand" /> <TextBlock Width="10"></TextBlock>
<DatePicker x:Name="DPFilter" Height="25"
Margin="0,3,0,0" HorizontalAlignment="Left" VerticalAlignment="Top" Width="115"
SelectedDateChanged="DPFilter_SelectedDateChanged" />
<TextBlock Width="10"></TextBlock>
<ComboBox Margin="0,3,0,0" Height="23"
HorizontalAlignment="Right" Name="comboBox1" VerticalAlignment="Top" Width="100"
SelectionChanged="comboBox1_SelectionChanged_1"
Background="White" Cursor="Hand"> <ComboBoxItem Content="Semua"
Name="cmbSemuaJK"/>
<ComboBoxItem Content="Jantan" Name="cmbJantan"/>
<ComboBoxItem Content="Betina" Name="cmbBetina"/>
</ComboBox>
<TextBlock Width="20"></TextBlock>
<TextBlock Width="20"></TextBlock>
<TextBox Height="23" Name="textBoxFilterJK" Width="120" Visibility="Hidden" />
</StackPanel>
<StackPanel Margin="10,10,0,0"
Orientation="Horizontal">
<Grid:DataGrid Height="850" Margin="0,-350,0,0" VerticalScrollBarVisibility="Auto"
x:Name="MyDataGrid" AutoGenerateColumns="False"
x:Uid="MyDataGrid" IsReadOnly="True" AlternatingRowBackground="Azure" RowHeight="30"
AlternationCount="2" ItemsSource="{Binding}"
FontSize="14" FontFamily="Calibri" SelectionChanged="MyDataGrid_SelectionChanged"
MouseRightButtonUp="MyDataGrid_MouseRightButtonUp
" Width="323"> <Grid:DataGrid.Columns>
<Grid:DataGridTextColumn Binding="{Binding
ID}" Header="No"/> <Grid:DataGridTextColumn Binding="{Binding
Waktu}" Header="Waktu"/>
<Grid:DataGridTextColumn Binding="{Binding Panjang}" Header="Panjang"/>
<Grid:DataGridTextColumn Binding="{Binding
Berat}" Header="Berat"/> <Grid:DataGridTextColumn Binding="{Binding
Jenis_Kelamin}" Header="Jenis Kelamin"/>
<Grid:DataGridTemplateColumn Header="Hapus">
<Grid:DataGridTemplateColumn.CellTemplate >
<DataTemplate> <Button Cursor="Hand"
Background="Transparent" BorderBrush="Transparent"
Click="btnDeleteRow_Click" x:Name="btnDeleteRow" > <StackPanel>
<Image
Source="/Skripsi;component/Images/Icons/close.ico" Width="10" Height="10"/>
</StackPanel>
</Button> </DataTemplate>
</Grid:DataGridTemplateColumn.CellTemplate>
</Grid:DataGridTemplateColumn> </Grid:DataGrid.Columns>
</Grid:DataGrid>
<TextBlock Width="10"/> <StackPanel Background="#81B7B4B4" Height="180"
Width="210" VerticalAlignment="Top"
Orientation="Vertical"> <StackPanel Orientation="Horizontal">
<TextBlock Width="10"/>
<TextBlock Width="80" Text="No"/> <TextBlock Width="10"/>
<TextBlock Height="20" Width="100"
x:Name="txtIDTemp"/> </StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Width="10"/> <TextBlock Width="80" Text="Berat"/>
<TextBlock Width="10"/>
<TextBox x:Name="txtBeratTemp"Width="100"/>
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Width="10"/><TextBlock Width="80" Text="Panjang"/><TextBlock Width="10"/><TextBox
x:Name="txtPanjangTemp" Width="100"/> </StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Width="10"/> <TextBlock Width="80" Text="Jenis Kelamin"/>
<TextBlock Width="10"/>
<ComboBox Background="White" Height="23" HorizontalAlignment="Left"
x:Name="cmbJenisKelaminTemp"
VerticalAlignment="Top" Width="100" SelectionChanged="txtJenisKelamin_SelectionChanged"><
ComboBoxItem Content="Jantan"/><ComboBoxItem
Content="Betina"/></ComboBox> </StackPanel><StackPanel Orientation="Horizontal"
Height="0"> <TextBlock Width="10"/>
</StackPanel> <StackPanel Orientation="Horizontal">
<TextBlock Width="10"/>
<TextBlock Width="80" Text="Waktu"/> <TextBlock Width="10"/>
<DatePicker x:Name="txtWaktutemp" Width="100"/>
</StackPanel> <TextBlock Height="10"/>
<StackPanel Orientation="Horizontal">
<Button Background="white" Cursor="Hand" Content="Save" Width="210" Height="30"
x:Name="btnSaveUpdate" Click="btnSaveUpdate_Click"/>
</StackPanel> </StackPanel>
<TextBlock Width="10"/> <StackPanel
Orientation="Vertical" >
<GroupBox Height="300"
HorizontalAlignment="Left" x:Name="groupBox3"
VerticalAlignment="Top" Width="640" >
74
Lampiran 3. Listing Program CIAFISH
(lanjutan)
<Grid> <StackPanel
Orientation="Vertical"><TextBlock Text="Hubungan
Panjang dan Berat" TextAlignment="Center" FontFamily="Segoe UI" FontSize="15"
Background="#32666161"/>
<StackPanel Orientation="Horizontal"> <Label Content="Log A" Height="28"
HorizontalAlignment="Left" x:Name="lblLogA"
VerticalAlignment="Top" /><TextBlock Width="5"/><TextBlock FontFamily="Segoe WP"
Background="#32666161" Margin="0,4,0,0" Height="22"
HorizontalAlignment="Left" x:Name="textBoxLogA" VerticalAlignment="Top" Width="100"
Foreground="#FF080606" />
<TextBlock Width="5"/> <Label Content="Nilai B"
Height="28" HorizontalAlignment="Left" x:Name="lblb"
VerticalAlignment="Top"/> <TextBlock Width="5"/
<TextBlock FontFamily="Segoe WP"
Background="#32666161" Margin="0,4,0,0" Height="22" HorizontalAlignment="Left" x:Name="textBoxB"
VerticalAlignment="Top" Width="100"
Grid.ColumnSpan="2" /><TextBlock Width="5"/> <TextBlock FontFamily="Segoe WP"
Background="#32666161" Margin="0,4,0,0"
Grid.ColumnSpan="2" Height="22" HorizontalAlignment="Left"
x:Name="textBoxPenentuanB" VerticalAlignment="Top"
Width="113" /><Label Content="Nilai R^2 (%)" Height="28" HorizontalAlignment="Left"
x:Name="lblRkuadrat" VerticalAlignment="Top"/>
<TextBlock Background="#32666161" Margin="0,4,0,0" Height="22" HorizontalAlignment="Left"
x:Name="textBoxRkuadrat" VerticalAlignment="Top" Width="100" Grid.ColumnSpan="2" />
</StackPanel>
<chartingToolkit:Chart Margin="30,-30,0,0" Height="283" HorizontalAlignment="Left"
x:Name="ChartHubPanjangBerat"
VerticalAlignment="Bottom" Width="594.5" BorderBrush="{x:Null}">
<chartingToolkit:LineSeries Title="Chart Line"
IndependentValueBinding="{Binding Key}" DependentValueBinding="{Binding Value}"/>
<chartingToolkit:ScatterSeries Title="Chart
Scatter" IndependentValueBinding="{Binding Key}" DependentValueBinding="{Binding Value}"/>
</chartingToolkit:Chart>
</StackPanel> </Grid>
</GroupBox>
<TextBlock Height="15"/> <GroupBox Width="621" ><Grid><StackPanel
Orientation="Vertical"><TextBlock Text="Sebaran
Frekuensi Panjang" TextAlignment="Center" FontFamily="Segoe UI" FontSize="15"
Background="#32666161"/>
<chartingToolkit:Chart Height="270" HorizontalAlignment="Left" x:Name="columnChart"
VerticalAlignment="Bottom" Width="609"
Foreground="Black" BorderBrush="{x:Null}"><chartingToolkit:ColumnSeries
DependentValuePath="Value" Title="Frekuensi Panjang"
IndependentValuePath="Key" ItemsSource="{Binding}" Loaded="ColumnSeries_Loaded" Margin="0,-19.5,-31.5,0"
/>
</chartingToolkit:Chart> </StackPanel>
</Grid>
</GroupBox>
<GroupBox Header="Nilai K, L∞, t0, Mortalitas dan Laju
Eksploitasi ">
<StackPanel Orientation="Horizontal">
<StackPanel Orientation="Vertical"> <Label Content="Nilai K"
x:Name="txtNilaiK" Height="26.5" Width="100"/>
<Label Content="Nilai L∞" x:Name="txtNilaiLinf" Height="27.5" Width="100"/>
<Label Content="Nilai t0" x:Name="txtNilaiT0"
Height="30" Width="100"/> </StackPanel>
<StackPanel Orientation="Vertical">
<TextBlock Background="#32666161" Margin="0,4,0,0" Height="22"
HorizontalAlignment="Left" x:Name="textBoxNilaiK"
VerticalAlignment="Top" Width="100" Grid.ColumnSpan="2"/>
<TextBlock Background="#32666161"
Margin="0,4,0,0" Height="22" HorizontalAlignment="Left" x:Name="textBoxNilaiLinf" VerticalAlignment="Top"
Width="100" Grid.ColumnSpan="2"/>
<TextBlock Background="#32666161" Margin="0,4,0,0" Height="22" HorizontalAlignment="Left"
x:Name="textBoxNilait0" VerticalAlignment="Top"
Width="100" Grid.ColumnSpan="2"/> </StackPanel>
<TextBlock Width="10"/>
<TextBlock Background="gray"
Width="3"/>
<TextBlock Width="10"/>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Vertical">
<Label Content="Nilai Mortalitas Alami" x:Name="txtNilaimortalitasAlami" Height="26.667"
Width="170"/>
<Label Content="Nilai Mortalitas Penangkapan" x:Name="txtNilaiMortalitasPenangkapan" Height="25.333"
Width="170"/>
<Label Content="Nilai Mortalitas Total" x:Name="txtNilaiMortalitasTotal" Height="26.667"
Width="170"/>
<Label Content="Nilai Laju Eksploitasi" x:Name="txtNilailajuEksploitasi" Height="30"
Width="170"/>
</StackPanel> <StackPanel Orientation="Vertical">
<TextBlock Background="#32666161" Margin="0,4,0,0"
Height="22" HorizontalAlignment="Left" x:Name="textBoxNilaiMortalitasAlami"
VerticalAlignment="Top" Width="100"
Grid.ColumnSpan="2"/> <TextBlock Background="#32666161" Margin="0,4,0,0"
Height="22" HorizontalAlignment="Left"
x:Name="textBoxNilaiMortalitasPenangkapan" VerticalAlignment="Top" Width="100"
Grid.ColumnSpan="2"/>
<TextBlock Background="#32666161" Margin="0,4,0,0" Height="22" HorizontalAlignment="Left"
x:Name="textBoxNilaiMortalitasTotal"
VerticalAlignment="Top" Width="100" Grid.ColumnSpan="2"/>
<TextBlock Background="#32666161" Margin="0,4,0,0"
Height="22" HorizontalAlignment="Left"
x:Name="textBoxNilailajuEksploitasi"
VerticalAlignment="Top" Width="100"
Grid.ColumnSpan="2"/> </StackPanel>
75
Lampiran 3. Listing Program CIAFISH
(lanjutan)
</StackPanel> </StackPanel>
</GroupBox>
</StackPanel> <Image Height="1198"
Source="pack://siteoforigin:,,,/Images/pen.png"
Stretch="Fill" Width="755"/> </StackPanel>
</StackPanel>
</Grid> </Page>
4. PagePertumbuhan.xaml.cs
using System;
using System.Collections.Generic;
using System.Globalization; using System.Linq;
using System.Text;
using System.Windows; using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents; using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging; using System.Windows.Navigation;
using System.Windows.Shapes;
using Microsoft.Windows.Controls.Primitives; using Skripsi.Entity;
using Skripsi.Config;
using System.Windows.Controls.DataVisualization.Charting;
using System.Xml.Linq; using System.Xml;
using System.Data;
namespace Skripsi.Page
{
/// <summary> /// Interaction logic for PagePertumbuhan.xaml
/// </summary>
/// public partial class PagePertumbuhan :
System.Windows.Controls.Page
{ private XmlWriter writer;
int IdBulan = 0;
int jenisK = 3; int[] Lt = new int [12];
private double[] X;
private double[] Y; private double[] Lgrafik;
private double[] Wgrafik;
string[] nilaiX = new string[30]; double[] nilaiRATA2 = new double[30];
double[] nilaiTIapSelang = new double[30];
private double NilaiJumlahSelang; int[] nilaiY = new int[30];
private bool status = true;
private int jumlahData; private string cmbJenisKelamin;
List<Track> _tempDataPertumbuhan = new List<Track>();
public PagePertumbuhan() {
InitializeComponent();
this.Loaded += new RoutedEventHandler(PagePertumbuhan_Loaded);
}
void PagePertumbuhan_Loaded(object sender, RoutedEventArgs e)
{
LoadData(); }
private void btnAdd_Click(object sender, RoutedEventArgs e)
{
try {
if (status == true) {
txtpeneliti.IsEnabled = false;
txtikan.IsEnabled = false; status = false;
AddItem();
LoadData(); MyDataGrid.ItemsSource = _tempDataPertumbuhan;
}
else {
AddItem();
LoadData(); MyDataGrid.ItemsSource = _tempDataPertumbuhan;
} }
catch (Exception)
{
MessageBox.Show("Input data not valid, please try
again..");
} }
public void LoadDataFilterAll(string tgl, string jk) {
if (tgl == string.Empty)
{ LoadDataFilterJK(jk);
}
else if (jk == string.Empty) {
LoadDataFilter(tgl);
} else if (jk != string.Empty && tgl != string.Empty)
{
LoadFilterJkTgl(tgl, jk); }
else
{ LoadData();
}
} public void LoadFilterJkTgl(string tgl, string jk)
{
var filter = from z in DataAll.listDataPertumbuhan where z.Waktu == tgl && z.Jenis_Kelamin
== jk
select new Track() {
ID = z.ID
NamaIkan = z.NamaIkan NamaPeneliti = z.NamaPeneliti,
Berat = z.Berat,
Waktu = z.Waktu,
Panjang = z.Panjang,
Jenis_Kelamin = z.Jenis_Kelamin
}; _tempDataPertumbuhan = filter.ToList();
76
Lampiran 3. Listing Program CIAFISH
(lanjutan)
MyDataGrid.ItemsSource = _tempDataPertumbuhan;
}
public void LoadDataFilter(string input) {
var filter = from z in DataAll.listDataPertumbuhan
where z.Waktu == input select new Track() {
ID = z.ID,
NamaIkan = z.NamaIkan, NamaPeneliti = z.NamaPeneliti,
Berat = z.Berat,
Waktu = z.Waktu, Panjang = z.Panjang,
Jenis_Kelamin = z.Jenis_Kelamin
}; _tempDataPertumbuhan = filter.ToList();
MyDataGrid.ItemsSource = _tempDataPertumbuhan;
} public void LoadDataFilterJK(string input)
{
var filter = from z in DataAll.listDataPertumbuhan where z.Jenis_Kelamin == input
select new Track()
{ ID = z.ID,
NamaIkan = z.NamaIkan,
NamaPeneliti = z.NamaPeneliti, Berat = z.Berat,
Waktu = z.Waktu,
Panjang = z.Panjang, Jenis_Kelamin = z.Jenis_Kelamin
};
_tempDataPertumbuhan = filter.ToList(); MyDataGrid.ItemsSource = _tempDataPertumbuhan;
} public void LoadData()
{
try {
List<KeyValuePair<string, int>> nilaiAwal = new
List<KeyValuePair<string, int>>(); nilaiAwal.Add(new KeyValuePair<string,
int>("Empty", 0)); columnChart.DataContext = nilaiAwal;
List<KeyValuePair<double, double>> nilaiAwal1 = new List<KeyValuePair<double, double>>();
nilaiAwal1.Add(new KeyValuePair<double,
double>(0, 0));
((LineSeries)ChartHubPanjangBerat.Series[0]).ItemsSource
= nilaiAwal1;
((ScatterSeries)ChartHubPanjangBerat.Series[1]).ItemsSour
ce = nilaiAwal1;
_tempDataPertumbuhan =
DataAll.listDataPertumbuhan; MyDataGrid.ItemsSource =
_tempDataPertumbuhan.OrderBy(x => x.waktuDate);
} catch(Exception)
{
} }
public void AddItem()
{ int jumlah = DataAll.listDataPertumbuhan.Count() +
1; DataAll.listDataPertumbuhan.Add(new
Track(jumlah, DPWaktu.Text, double.Parse(txtPanjang.Text), double.Parse(txtBerat.Text),
cmbJenisKelamin, txtpeneliti.Text, txtikan.Text ));
LoadDataFilterAll(DPFilter.Text, jenisKelamin); }
public void ProsesPjgdanBerat()
{ textBoxLogA.Text = logA().ToString("N4");
textBoxB.Text = bHubPnB().ToString("N4");
PenentuanB(); textBoxRkuadrat.Text = R2().ToString("N4");
}
private double[] nilaiLt; public void LoadNilaiLt()
{
string[] tanggalLt;
//cari jumlah bulan pada data
string bulanTemp = "0"; string tahunTemp = "0";
string bulanTempLt = "0";
string tahunTempLt = "0"; int jumlah = 0;
double max = 0;
double min = 0;
foreach (Track s in
_tempDataPertumbuhan.OrderBy(x=>x.waktuDate)) {
tahunTemp = s.Waktu.Split('/')[2];
if (s.Waktu.Split('/')[0] != bulanTemp && s.Waktu.Split('/')[2] == tahunTemp)
{
jumlah += 1;
}
bulanTemp = s.Waktu.Split('/')[0];
tahunTemp = s.Waktu.Split('/')[2]; }
int i = 0; nilaiLt = new double[jumlah];
tanggalLt = new string[jumlah];
double modus = 0; foreach (Track s in
_tempDataPertumbuhan.OrderBy(x => x.waktuDate))
{ tahunTemp = s.Waktu.Split('/')[2];
if (s.Waktu.Split('/')[0] != bulanTemp &&
s.Waktu.Split('/')[2] == tahunTemp) {
tanggalLt[i] = s.Waktu;
i++; }
bulanTemp = s.Waktu.Split('/')[0];
tahunTemp = s.Waktu.Split('/')[2]; }
for(int z=0; z<jumlah; z++)
{ bulanTempLt = tanggalLt[z].Split('/')[0];
tahunTempLt = tanggalLt[z].Split('/')[2];
var nilai = from p in _tempDataPertumbuhan where p.Waktu.Split('/')[0] == bulanTempLt &&
p.Waktu.Split('/')[2] == tahunTempLt
select p; max = nilai.First().Panjang;
min = nilai.First().Panjang;
double[] NilaiModus; NilaiModus = new double[nilai.Count()];
double[] Nmodus = new double[nilai.Count()];
int temp = 0;
foreach (var track in nilai)
{
NilaiModus[temp] = track.Panjang; if (max < track.Panjang)
77
Lampiran 3. Listing Program CIAFISH
(lanjutan)
{
max = track.Panjang;
} if (min > track.Panjang)
{
min = track.Panjang; }
temp++;
} double x;
double f = MostFreq(NilaiModus, out x);
nilaiLt[z] = x; MessageBox.Show(nilaiLt[z].ToString());
}
} //fungsi cari modus
public static int MostFreq(double[] _M, out double x)
{ //First I need to sort the array in ascending order
int Max_Freq, No_Freq, i;
double k; Array.Sort(_M);
k = _M[0];
Max_Freq = 0; i = 0; x = 0; while (i < _M.Length)
{
//No_Freq= the frequency of the current number No_Freq = 0;
//X here is the number which is appear in the array
Frequently while (k == _M[i])
{
No_Freq++; i++;
if (i == _M.Length) break;
}
if (No_Freq > Max_Freq) {
//so it will be printed the same
Max_Freq = No_Freq; x = k;
}
if (i < _M.Length) k = _M[i]; }
return (Max_Freq);
} public double loadNilaiLtBulan(double min, double
max)
{ return (min + max)/2;
}
public void Sebaran_frekuensi_panjang() {
//Mencari selang kelas (Batas Kelas Bawah (BKB)
dan Batas Kelas Atas (BKA)) try
{
double[] BKB = new double[30]; double[] BKA = new double[30];
int Batas_Minimum =
Convert.ToInt16(textBoxBatasMinimum.Text); int Selang_Kelas =
Convert.ToInt16(textBoxSelangKelas.Text);
int LamaPenelitian = Convert.ToInt16(textBoxLamaPenelitian.Text);
for (int p = 0; p < LamaPenelitian; p++)
{
BKB[p] = Batas_Minimum + p * Selang_Kelas; BKA[p] = Batas_Minimum + (p + 1) * Selang_Kelas;
nilaiX[p] = BKB[p] + " - " + BKA[p];
nilaiRATA2[p] = BKB[p] + BKA[p]/2; }
int[] freqPanjang = new int[30];
for (int i = 0; i < _tempDataPertumbuhan.Count; i++) {
for (int p = 0; p < LamaPenelitian; p++)
{ if (p == 0)
{
if ((_tempDataPertumbuhan[i].Panjang >= BKB[p]) && (_tempDataPertumbuhan[i].Panjang <=
BKA[p]))
freqPanjang[p]++; }
else
{ if ((_tempDataPertumbuhan[i].Panjang >
BKB[p]) && (_tempDataPertumbuhan[i].Panjang <=
BKA[p])) freqPanjang[p]++;
}
} }
for (int p = 0; p < LamaPenelitian; p++) {
//MessageBox.Show("Frekuensi Selang " + p +
" : " + freqPanjang[p]);
nilaiY[p] = freqPanjang[p];
}
double Nilai_tengah = 0;
Nilai_tengah = (BKB[0] + BKA[LamaPenelitian - 1]) / 2;
for (int i = 0; i < LamaPenelitian; i++)
{ nilaiTIapSelang[i] = nilaiY[i] * nilaiRATA2[i];
NilaiJumlahSelang += nilaiTIapSelang[i];
} }
catch
{ MessageBox.Show("silahkan Maskkan Data");
}
} private double Z()
{
double[] BKB = new double[30]; double L, Z;
L = NilaiJumlahSelang / _tempDataPertumbuhan.Count();
Z = K() * ((Linf() - L) / (L - BKB[0])); return Z;
}
private double M() {
double M, logM = 0;
double t; t = Convert.ToDouble(textBoxT.Text);
logM = -0.0066 - (-0.0279 * Math.Log10(Linf())) -
(0.6543 * Math.Log10(K())) + (0.4634 * Math.Log10(t)); M = Math.Pow(10, (Math.Log10(logM)));
return M;
}
private double F()
{
double F; F = Z() - M();
78
Lampiran 3. Listing Program CIAFISH
(lanjutan)
return F;
}
private double E() {
double E;
E = F() / Z(); return E;
}
public void LoadGrafSebaranFrekPanjang() {
List<KeyValuePair<string, int>>
nilaiSebaranFrekuensiPanjang = new List<KeyValuePair<string, int>>();
for (int p = 0; p < 30; p++) {
nilaiSebaranFrekuensiPanjang.Add(new
KeyValuePair<string, int>(nilaiX[p], nilaiY[p])); }
columnChart.DataContext =
nilaiSebaranFrekuensiPanjang; }
private double[] X_panjang;
public void grafikHubPnL1() {
X_panjang = new
double[_tempDataPertumbuhan.Count()]; Y = new double[_tempDataPertumbuhan.Count()];
int i = 0;
foreach (var item in _tempDataPertumbuhan) {
X_panjang[i] = item.Panjang;
Y[i] = item.Berat; i++;
} }
public void grafikHUBPNL2()
{
Wgrafik = new
double[_tempDataPertumbuhan.Count()]; for (int a = 0; a < _tempDataPertumbuhan.Count();
a++)
{ Wgrafik[a] = (agrafikPnL() * (Math.Pow(X_panjang[a],
bHubPnB())));
} }
public void LoadGrafHubPnL()
{ List<KeyValuePair<double,double>> HubunganPnL1=new List<KeyValuePair<double,
double>>();
for (int p= 0; p < _tempDataPertumbuhan.Count(); p++)
{
HubunganPnL1.Add(new KeyValuePair<double, double>(X_panjang[p], Y[p]));
//MessageBox.Show(X[p] + " - " + Y[p]);
} List<KeyValuePair<double, double>> HubunganPnL2 =
new List<KeyValuePair<double, double>>();
for (int K = 0; K < _tempDataPertumbuhan.Count(); K++)
{
HubunganPnL2.Add(new KeyValuePair<double, double>(X_panjang[K], Wgrafik[K]));
}
((LineSeries)ChartHubPanjangBerat.Series[0]).ItemsSource
= HubunganPnL2; ((ScatterSeries)ChartHubPanjangBerat.Series[1]).ItemsSour
ce = HubunganPnL1;
} public void ProsesAll()
{
//listPertumbuhan = pt.selectJenisKelamin(jenisK, IdBulan);
}
//Mencari Jumlah Log W public double Jumlah_Log_W()
{
double Jumlah_Log_W = 0;
for (int i = 0; i < _tempDataPertumbuhan.Count; i++)
Jumlah_Log_W = Jumlah_Log_W + Math.Log10(_tempDataPertumbuhan[i].Berat);
return Jumlah_Log_W;
} //Mencari Jumlah [(Log L)^2]
public double Jumlah_Kuadrat_Log_L()
{ double Jumlah_Kuadrat_Log_L = 0;
for (int i = 0; i < _tempDataPertumbuhan.Count; i++)
Jumlah_Kuadrat_Log_L = Jumlah_Kuadrat_Log_L +
(Math.Pow(Math.Log10(_tempDataPertumbuhan[i].Panjang
), 2)); return Jumlah_Kuadrat_Log_L;
}
//Mencari Jumlah Log L
public double Jumlah_Log_L()
{
double Jumlah_Log_L = 0;
//MessageBox.Show(_tempDataPertumbuhan.Count().ToStr
ing());
for (int i = 0; i < _tempDataPertumbuhan.Count; i++) Jumlah_Log_L = Jumlah_Log_L +
Math.Log10(_tempDataPertumbuhan[i].Panjang);
return Jumlah_Log_L; }
//Mencari Jumlah (Log L * Log W)
public double Jumlah_LogL_dikali_LogW() {
double Jumlah_LogL_dikali_LogW = 0;
for (int i = 0; i < _tempDataPertumbuhan.Count; i++ Jumlah_LogL_dikali_LogW = Jumlah_LogL_dikali_LogW
+ ((Math.Log10(_tempDataPertumbuhan[i].Panjang)) *
(Math.Log10(_tempDataPertumbuhan[i].Berat))); return Jumlah_LogL_dikali_LogW;
}
//Mencari (Jumlah Log L)^2 public double Jumlah_Log_L_Kuadrat()
{
double Jumlah_Log_L_Kuadrat = 0; Jumlah_Log_L_Kuadrat = Math.Pow(Jumlah_Log_L(), 2);
return Jumlah_Log_L_Kuadrat;
} //7. MENCARI LOG A//
public double logA()
{ double logA = 0;
double LogA1 = 0;
double LogA2 = 0;
LogA1 = (Jumlah_Log_W()* Jumlah_Kuadrat_Log_L()) -
(Jumlah_Log_L() * Jumlah_LogL_dikali_LogW());
LogA2 = (_tempDataPertumbuhan.Count() * Jumlah_Kuadrat_Log_L()) - (Jumlah_Log_L_Kuadrat());
79
Lampiran 3. Listing Program CIAFISH
(lanjutan)
logA = LogA1 / LogA2;
return logA;
} public double agrafikPnL()
{
double agrafikPnL = 0; agrafikPnL = Math.Pow(10, logA());
return agrafikPnL;
} //8. Mencari b HUBUNGAN PANJANG BERAT//
public double bHubPnB()
{ double bHubPnB = 0;
bHubPnB = (Jumlah_Log_W() -
(_tempDataPertumbuhan.Count ()* logA())) / (Jumlah_Log_L());
return bHubPnB;
} public void PenentuanB()
{
if (bHubPnB() == 3) textBoxPenentuanB.Text = "Isometrik";
else
if (bHubPnB() <= 3) textBoxPenentuanB.Text = "Allometrik Negatif";
else
if (bHubPnB() >= 3) textBoxPenentuanB.Text = "Allometrik Positif";
}
public double SX2() {
double SX2 = 0;
SX2 = (Convert.ToDouble(1) / (_tempDataPertumbuhan.Count() - Convert.ToDouble(1))) *
(Jumlah_Kuadrat_Log_L() - (Jumlah_Log_L_Kuadrat() / _tempDataPertumbuhan.Count()));
return SX2;
} public double SX()
{
double SX = 0; SX = Math.Sqrt(SX2());
return SX;
} public double Jumlah_Kuadrat_LogW()
{
double Jumlah_Kuadrat_LogW = 0; for (int i = 0; i < _tempDataPertumbuhan.Count;
i++)
Jumlah_Kuadrat_LogW = Jumlah_Kuadrat_LogW + (Math.Pow(Math.Log10(_tempDataPertumbuhan[i].Berat),2
));
return Jumlah_Kuadrat_LogW; }
public double Jumlah_LogW_Kuadrat()
{ double Jumlah_LogW_Kuadrat = 0;
Jumlah_LogW_Kuadrat =
Math.Pow(Jumlah_Log_W(), 2); return Jumlah_LogW_Kuadrat;
}
public double SY2() {
double SY2 = 0;
double SY_tahap1; double SY_tahap2;
SY_tahap1=(Convert.ToDouble(1) /
(_tempDataPertumbuhan.Count() - (Convert.ToDouble(1))));
SY_tahap2=Jumlah_LogW_Kuadrat() /
_tempDataPertumbuhan.Count(); SY2 = SY_tahap1 * (Jumlah_Kuadrat_LogW() -
SY_tahap2);
return SY2; MessageBox.Show(SY2.ToString());
}
public double SY() {
double SY = 0;
SY = Math.Sqrt(SY2()); return SY;
}
public double SXY() {
double SXY = 0;
SXY = (Convert.ToDouble(1) / (_tempDataPertumbuhan.Count() - Convert.ToDouble(1))) *
(Jumlah_LogL_dikali_LogW() - ((Jumlah_Log_L() *
Jumlah_Log_W()) / (_tempDataPertumbuhan.Count()))); return SXY;
}
public double R() {
double R = 0;
R = SXY() / (SX() * SY()); return R;
}
public double R2() {
double R2 = 0;
R2 = (Math.Pow(R(), 2))*100;
return R2;
}
// Grafik Hubungan Panjang Berat// // Grafik SCATER . X=> Panjang Y=> Berat
public void grafikscaterHPB() {
}
public void Data_Loaded() {
PertumbuhanDAOImpl pt = new
PertumbuhanDAOImpl(); MyDataGrid.ItemsSource = pt.selectAll();
} private void btnHapus_Click(object sender,
RoutedEventArgs e)
{ if (MyDataGrid.SelectedIndex == -1)
{
MessageBox.Show("Tidak ada data yang dipilih", "Tidak ada data", MessageBoxButton.OK,
MessageBoxImage.Warning);
} else
{
string a = MessageBox.Show("Yakin data akan di hapus?", "Delete", MessageBoxButton.OKCancel,
MessageBoxImage.Information).ToString();
if (a == "OK") {
Pertumbuhan p = MyDataGrid.SelectedItem as
Pertumbuhan; PertumbuhanDAOImpl kt = new
PertumbuhanDAOImpl();
kt.delete(p);
}
} }
80
Lampiran 3. Listing Program CIAFISH
(lanjutan)
private void btnTambah_Click(object sender,
RoutedEventArgs e)
{ WindowPertumbuhan wp = new
WindowPertumbuhan();
Application.Current.MainWindow = wp; wp.Title = "Tambah :: Pertumbuhan";
wp.txtpeneliti.Text = txtpeneliti.Text;
wp.txtikan.Text = txtikan.Text; wp.btn.Content = "Tambah";
wp.Show();
}
//HUBUNGAN PANJANG BERAT//
private void btnProses_Click_1(object sender, RoutedEventArgs e)
{
LoadNilaiLt(); ProsesPjgdanBerat();
Sebaran_frekuensi_panjang();
ParameterPertumbuhanDanMortalitas(); grafikHubPnL1();
grafikHUBPNL2();
LoadGrafSebaranFrekPanjang(); LoadGrafHubPnL();
}
//PARAMETER PERTUMBUHAN// //Mencari nilai Lt
//Jumlah panjang (L) => X
public double Jumlah_panjang_X() {
double Jumlah_panjang_X = 0;
for (int i = 0; i < nilaiLt.Count() - 1; i++) Jumlah_panjang_X = Jumlah_panjang_X +
(nilaiLt[i]); //MessageBox.Show("Jumlah_panjang_X:" +
Jumlah_panjang_X.ToString());
return Jumlah_panjang_X;
}
//Jumlah L+1 => Y public double Jumlah_L_plus1_Y()
{
double Jumlah_L_plus1_Y = 0; for (int i = 1; i < nilaiLt.Count(); i++)
Jumlah_L_plus1_Y = Jumlah_L_plus1_Y +
(nilaiLt[i]); return Jumlah_L_plus1_Y;
//MessageBox.Show(Jumlah_L_plus1_Y.ToString());
}
////Jumlah [(L)*(L+1)]
public double Jumlah_X_Kali_Y()
{
int k = 0; double Jumlah_X_Kali_Y = 0;
double Temp;
for (k = 0; k < nilaiLt.Count() - 1; k++) {
int j = k + 1;
Temp = 0; Temp = (nilaiLt[k] * nilaiLt[j]);
Jumlah_X_Kali_Y += Temp;
} return Jumlah_X_Kali_Y;
}
////Jumlah Kuadrat Panjang public double Jumlah_Kuadrat_panjang()
{
double Jumlah_Kuadrat_panjang = 0; for (int i = 0; i < nilaiLt.Count() - 1; i++)
Jumlah_Kuadrat_panjang =
Jumlah_Kuadrat_panjang + (Math.Pow(nilaiLt[i], 2));
return Jumlah_Kuadrat_panjang;
} ////Jumlah panjang yang dikuadratkan
public double Jumlah_panjang_dikuadratkan()
{ double Jumlah_panjang_dikuadratkan = 0;
Jumlah_panjang_dikuadratkan =
Math.Pow(Jumlah_panjang_X(), 2); return Jumlah_panjang_dikuadratkan;
}
////Rata2 X public double Rata2_X ()
{
double Rata2_X = 0; Rata2_X = Jumlah_panjang_X() / (nilaiLt.Count() -
(Convert.ToDouble(1)));
return Rata2_X;
}
//Rata2 Y public double Rata2_Y()
{ double Rata2_Y = 0;
Rata2_Y = Jumlah_L_plus1_Y() / (nilaiLt.Count() -
(Convert.ToDouble(1)));
return Rata2_Y;
}
////REGRESI 1 ==> B,a, Linf, K// ////BPP
public double BPP() {
double BPP1 = 0;
double BPP2 = 0; double BPP = 0;
BPP1 = (Jumlah_X_Kali_Y() - ((Jumlah_panjang_X() *
Jumlah_L_plus1_Y()) / nilaiLt.Count())); BPP2 = (Jumlah_Kuadrat_panjang() -
(Jumlah_panjang_dikuadratkan() / nilaiLt.Count()));
BPP = BPP1 / BPP2; return BPP;
}
////APP
public double APP() {
double APP = 0;
APP = Rata2_Y() - (Rata2_X() * BPP()); return APP;
}
////Linf public double Linf()
{
double Linf = 0; Linf = APP() / (Convert.ToDouble(1) - BPP());
return Linf;
}
///K
public double K() {
81
Lampiran 3. Listing Program CIAFISH
(lanjutan)
double K = 0;
K = (-(Math.Log(BPP())));
return K; }
//// t0 public double t0()
{
double logMinT0=0; double t0=0;
logMinT0= -0.3922-(0.2752*(Math.Log(Linf())))-
(1.038*(Math.Log(K()))); t0 = -(Math.Pow(10, (logMinT0)));
return t0; }
public void ParameterPertumbuhanDanMortalitas()
{ textBoxNilaiK.Text = K().ToString("N4");
textBoxNilaiLinf.Text = Linf().ToString("N4");
textBoxNilait0.Text = t0().ToString("N4"); textBoxNilaiMortalitasAlami.Text = M().ToString("N4");
textBoxNilaiMortalitasPenangkapan.Text =
F().ToString("N4"); textBoxNilaiMortalitasTotal.Text = Z().ToString("N4");
textBoxNilailajuEksploitasi.Text = E().ToString("N4");
} private void btnRefresh_Click(object sender,
RoutedEventArgs e)
{ LoadData();
}
private void textBoxB_TextChanged(object sender, TextChangedEventArgs e)
{ }
private void textBoxPenentuanB_TextChanged(object
sender, TextChangedEventArgs e) {
}
private string tanggal = string.Empty; private string jenisKelamin = string.Empty;
private void comboBox1_SelectionChanged_1(object
sender, SelectionChangedEventArgs e) {
if(comboBox1.SelectedIndex == 0)
{ _tempDataPertumbuhan =
DataAll.listDataPertumbuhan;
MyDataGrid.ItemsSource = DataAll.listDataPertumbuhan;
}
else if(comboBox1.SelectedIndex == 1) {
jenisKelamin = "JANTAN";
LoadDataFilterAll(tanggal, "JANTAN"); }
else if (comboBox1.SelectedIndex == 2)
{ jenisKelamin = "BETINA";
LoadDataFilterAll(tanggal, "BETINA");
} }
private void ColumnSeries_Loaded(object sender,
RoutedEventArgs e) {
} private void button1_Click(object sender,
RoutedEventArgs e)
{ ProsesPjgdanBerat();
LoadGrafSebaranFrekPanjang();
LoadGrafHubPnL(); }
private void Page_Loaded(object sender,
RoutedEventArgs e) {
}
private void comboBoxPilihtanggal_SelectionChanged(object sender,
SelectionChangedEventArgs e)
{ }
private void cmbPilihantanggal_Scroll(object sender,
System.Windows.Controls.Primitives.ScrollEventArgs e) {
}
private void cmbPilihantanggal_SelectionChanged(object sender,
SelectionChangedEventArgs e)
{ }
private void DPFilter_SelectedDateChanged(object
sender, SelectionChangedEventArgs e) {
tanggal = DPFilter.Text;
LoadDataFilterAll(DPFilter.Text, jenisKelamin); }
private void DPWaktu_SelectedDateChanged(object
sender, SelectionChangedEventArgs e)
{
}
private void txtJenisKelamin_SelectionChanged(object sender, SelectionChangedEventArgs e)
{ if(txtJenisKelamin.SelectedIndex == 0) {
cmbJenisKelamin = "JANTAN";
}
else if (txtJenisKelamin.SelectedIndex == 1)
{ cmbJenisKelamin = "BETINA";
}
{ }
}
public int cekJK(string Input) {
int nilai = 0;
if(Input == "BETINA") {
nilai = 1;
} else if (Input == "JANTAN")
{
nilai = 0; }
return nilai;
public string ambilJK (int input) {
string nilai ="";
if(input == 0) {
nilai = "JANTAN";
}
else if(input==1)
{
nilai = "BETINA"; }
82
Lampiran 3. Listing Program CIAFISH
(lanjutan)
return nilai;
}
private void MyDataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
//cxMenu = new ContextMenu(); //Track tedit = null;
foreach (Track item in MyDataGrid.SelectedItems) {
txtWaktutemp.Text = item.Waktu;
txtPanjangTemp.Text = item.Panjang.ToString(CultureInfo.InvariantCulture);
txtBeratTemp.Text =
item.Berat.ToString(CultureInfo.InstalledUICulture); txtIDTemp.Text =
item.ID.ToString(CultureInfo.InvariantCulture);
cmbJenisKelaminTemp.SelectedIndex = cekJK(item.Jenis_Kelamin);
//txtTKGTemp.Text =
item.Tkg.ToString(CultureInfo.InstalledUICulture); }
}
private void btnSaveUpdate_Click(object sender, RoutedEventArgs e)
{
foreach (Track item in DataAll.listDataPertumbuhan) {
if(item.ID == int.Parse(txtIDTemp.Text))
{ item.Berat = double.Parse(txtBeratTemp.Text);
item.Panjang =
double.Parse(txtPanjangTemp.Text); item.Waktu = txtWaktutemp.Text;
item.Jenis_Kelamin = ambilJK(cmbJenisKelaminTemp.SelectedIndex);
}
} MyDataGrid.ItemsSource =
DataAll.listDataPertumbuhan;
} private void btnDeleteRow_Click(object sender,
RoutedEventArgs e)
{ if (MessageBox.Show("Yakin data akan dihapus?",
"Delete", MessageBoxButton.YesNo) ==
MessageBoxResult.Yes) {
foreach (Track item in
MyDataGrid.SelectedItems) {
DataAll.listDataPertumbuhan.Remove(item);
} MyDataGrid.ItemsSource = DataAll.listDataPertumbuhan;
MyDataGrid.SelectedIndex = -1;
} else
{
} private void MyDataGrid_MouseRightButtonUp(object
sender, MouseButtonEventArgs e)
{ }
private void btnSaveAll_Click(object sender,
RoutedEventArgs e) {
}
} }
5. Xaml PageModelSurplusProduksi
<Page x:Class="Skripsi.Page.PageModelSurplusProduksi"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-
compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/20
08"
mc:Ignorable="d" xmlns:datavis="clr-
namespace:System.Windows.Controls.DataVisualization;ass
embly=System.Windows.Controls.DataVisualization.Toolkit"
xmlns:chartingToolkit="clr-
namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualizati
on.Toolkit"
xmlns:Grid="http://schemas.microsoft.com/wpf/2008/toolkit
" d:DesignWidth="1050"
Title="PageModelSurplusProduksi"
Height="848">
<Page.Resources> <SolidColorBrush x:Key="MyBrush" Color="Cyan"/>
<Style TargetType="Border" x:Key="PageBack"> <Setter Property="Background"
Value="white"></Setter>
</Style> </Page.Resources>
<Grid Margin="0,0,0,-134" > <GroupBox HorizontalAlignment="Left"
Margin="10,10,0,0" Name="groupBox1"
VerticalAlignment="Top" Header="Parameter" > <Grid>
<StackPanel Orientation="Horizontal">
<StackPanel Width="120" Orientation="Vertical">
<TextBlock Height="23"
HorizontalAlignment="Left" Name="textBlock1" Text="Nama Peneliti" VerticalAlignment="Top"
Width="75" />
<TextBlock Height="5"></TextBlock> <TextBlock Height="23"
HorizontalAlignment="Left" Name="textBlock2"
Text="Nama Ikan" VerticalAlignment="Top" Width="75" />
<TextBlock Height="5"></TextBlock>
<TextBlock Height="23" HorizontalAlignment="Left" Name="textBlock3"
Text="Upaya (F) Maksimum" VerticalAlignment="Top"
Width="120" />
</StackPanel>
<!--<TextBlock Width="10"></TextBlock>-->
<StackPanel Orientation="Vertical">
83
Lampiran 3. Listing Program CIAFISH
(lanjutan)
<TextBox Height="22"
HorizontalAlignment="Left" Name="txPeneliti"
VerticalAlignment="Top" Width="153" /> <TextBlock Height="5"></TextBlock>
<TextBox Height="23"
HorizontalAlignment="Left" Name="txtIkan" VerticalAlignment="Top" Width="153" />
<TextBlock Height="5"></TextBlock>
<TextBox Height="23" HorizontalAlignment="Left" Name="textboxFmax"
VerticalAlignment="Top" Width="153"
TextChanged="textboxFmax_TextChanged" /> </StackPanel>
<TextBlock Width="5"></TextBlock>
<StackPanel Orientation="Vertical"> <TextBlock Height="23"
HorizontalAlignment="Left" Name="txtTahun"
Text="Tahun" VerticalAlignment="Top" Width="150"/> <TextBlock Height="5"></TextBlock>
<TextBlock Height="23"
HorizontalAlignment="Left" Name="txtCatch" Text="Catch (ton ikan)" VerticalAlignment="Top" Width="153"/>
<TextBlock Height="5"></TextBlock>
<TextBlock Height="23" HorizontalAlignment="Left" Name="txtEffort"
Text="Effort (unit penangkapan)" VerticalAlignment="Top"
Width="153"/> </StackPanel>
<StackPanel Orientation="Vertical">
<TextBox Height="23" HorizontalAlignment="Left" Name="txtboxTahun"
VerticalAlignment="Top" Width="153" />
<TextBlock Height="5"></TextBlock> <TextBox Height="23"
HorizontalAlignment="Left" Name="txtboxCatch" VerticalAlignment="Top" Width="153" />
<TextBlock Height="5"></TextBlock>
<TextBox Height="23" HorizontalAlignment="Left" Name="txtboxEffort"
VerticalAlignment="Top" Width="153" />
</StackPanel> <TextBlock Width="5"></TextBlock>
<StackPanel Orientation="Vertical">
<Button Height="80"
HorizontalAlignment="Left" x:Name="btnTambah"
Content="Tambah" VerticalAlignment="Center" Width="100" Background="White"
Click="btnTambah_Click_1" />
</StackPanel> <TextBlock Width="5"></TextBlock>
</StackPanel>
</Grid> </GroupBox>
<StackPanel Margin="10,120,0,134"
Orientation="Vertical">
<StackPanel Height="30" Background="#32666161" Orientation="Horizontal">
<TextBlock Width="10"/>
<Button Margin="0,3,0,0" Content="Refresh" Height="23" HorizontalAlignment="Right"
x:Name="btnrefreshsurplus" VerticalAlignment="Top"
Width="60" Click="btnrefreshsurplus_Click" Background="White" />
<TextBlock Width="10"/>
<Button Margin="0,3,0,0" Content="Proses" Height="24" HorizontalAlignment="Right"
x:Name="btnprosessurplus" VerticalAlignment="Top"
Width="60" Click="btnprosessurplus_Click" Background="White" />
<TextBlock Width="10"/>
<!--<Button Margin="0,3,0,0" Height="23" HorizontalAlignment="Left" x:Name="btnLoadChart"
VerticalAlignment="Top" Width="80" Content="Load
Chart" Click="btnLoadChart_Click" Background="White" />-->
</StackPanel>
<TextBlock Width="5"/>
<StackPanel Margin="0,-10,0,0"
Orientation="Horizontal" Height="799.96" >
<Grid:DataGrid Width="214"
x:Name="MyDataGrid" x:Uid="MyDataGrid" VerticalScrollBarVisibility="Auto" IsReadOnly="True"
AlternatingRowBackground="Azure" RowHeight="30"
AlternationCount="2" ItemsSource="{Binding}" FontSize="14" FontFamily="Calibri"
SelectionChanged="MyDataGrid_SelectionChanged_1"
Height="794"> <Grid:DataGrid.Columns>
<Grid:DataGridTextColumn Binding="{Binding
ID}" Header="No"/>
<Grid:DataGridTextColumn Binding="{Binding
Tahun}" Header="Tahun"/>
<Grid:DataGridTextColumn Binding="{Binding
Catch}" Header="Catch"/>
<Grid:DataGridTextColumn Binding="{Binding
Effort}" Header="Effort"/>
<Grid:DataGridTemplateColumn
Header="Hapus">
<Grid:DataGridTemplateColumn.CellTemplate >
<DataTemplate>
<Button Cursor="Hand" Background="Transparent" BorderBrush="Transparent"
Click="btnDeleteRow_Click" x:Name="btnDeleteRow" >
<StackPanel>
<Image Source="/Skripsi;component/Images/Icons/close.ico"
Width="10" Height="10"/>
</StackPanel>
</Button>
</DataTemplate>
</Grid:DataGridTemplateColumn.CellTemplate>
</Grid:DataGridTemplateColumn> </Grid:DataGrid.Columns>
</Grid:DataGrid>
<TextBlock Width="15"/>
<StackPanel Orientation="Vertical"
Background="#81B7B4B4" Height="135" Width="194" VerticalAlignment="Top">
84
Lampiran 3. Listing Program CIAFISH
(lanjutan)
<StackPanel Orientation="Horizontal">
<TextBlock Width="10"/>
<TextBlock Width="80" Text="No"/>
<TextBlock Width="10"/>
<TextBox Height="20" Width="90" x:Name="txtIDTemp"/>
</StackPanel>
<StackPanel
Orientation="Horizontal">
<TextBlock Width="10"/> <TextBlock Width="80"
Text="Tahun"/>
<TextBlock Width="10"/> <TextBox
x:Name="txtTahuntemp" Width="90"/>
</StackPanel>
<StackPanel
Orientation="Horizontal"> <TextBlock Width="10"/>
<TextBlock Width="80"
Text="Catch"/> <TextBlock Width="10"/>
<TextBox
x:Name="txtCatchtemp" Width="90"/>
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock Width="10"/> <TextBlock Width="80"
Text="Effort"/>
<TextBlock Width="10"/> <TextBox Width="90"
x:Name="txtEfforttemp"/>
</StackPanel> <TextBlock Height="10"/>
<Button Background="White"
Cursor="Hand" Content="Save" Width="156" Height="30" x:Name="btnSaveUpdate"
Click="btnSaveUpdate_Click_1"/>
</StackPanel> <StackPanel Orientation="Vertical"
Height="800">
<StackPanel Orientation="Horizontal" >
<TextBlock Text="Model
Schaefer" TextAlignment="Center" FontFamily="Segoe UI" FontSize="15" Background="#32666161" Width="826"/>
</StackPanel>
<StackPanel Orientation="Vertical" > <StackPanel
Orientation="Vertical"/>
<TextBlock Width="900" Height="8"/>
<StackPanel
Orientation="Horizontal">
<Label
Content="Fmsy (unit penangkapan/tahun)" Height="28"
HorizontalAlignment="Left" x:Name="label6"
VerticalAlignment="Top" Width="180" />
<TextBlock Width="5"/>
<TextBlock Height="28" HorizontalAlignment="Left"
Background="#32666161" x:Name="textBoxFmsy"
VerticalAlignment="Top" Width="109" /> <TextBlock
Width="5"/>
<Label Content="MSY (ton ikan/tahun)" Height="28"
HorizontalAlignment="Left" x:Name="label5"
VerticalAlignment="Top" /> <TextBlock
Width="5"/>
<TextBlock Height="28" Background="#32666161"
HorizontalAlignment="Left" x:Name="textBoxMSY"
VerticalAlignment="Top" Width="109" /> <TextBlock
Width="5"/>
<Label Content="TAC (ton ikan/tahun)" Height="28"
HorizontalAlignment="Left" x:Name="label7"
VerticalAlignment="Top" /> <TextBlock
Width="5"/>
<TextBlock Height="28" Background="#32666161"
HorizontalAlignment="Left" x:Name="textBoxTAC"
VerticalAlignment="Top" Width="109" /> <Label
Content="R^2 (%)" Height="28"
HorizontalAlignment="Left" x:Name="label8" VerticalAlignment="Top" />
<TextBlock
Width="5"/>
<TextBlock
Height="28" Background="#32666161"
HorizontalAlignment="Left" x:Name="textBoxRKuadrat" VerticalAlignment="Top" Width="109" />
</StackPanel> <StackPanel Width="974"
Orientation="Horizontal">
<chartingToolkit:Chart Height="300"
HorizontalAlignment="Left"
x:Name="ChartSchaefer1" Title="Hubungan C/F
dengan F"
VerticalAlignment="Bottom" Width="350">
<chartingToolkit:Chart.LegendStyle>
<Style TargetType="{x:Type datavis:Legend}">
<Setter Property="Width" Value="0"
/>
</Style>
</chartingToolkit:Chart.LegendStyle>
<chartingToolkit:LineSeries DependentValuePath="Value"
IndependentValuePath="Key" ItemsSource="{Binding}" />
</chartingToolkit:Chart>
<chartingToolkit:Chart Height="300"
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Auto" HorizontalAlignment="Left"
85
Lampiran 3. Listing Program CIAFISH
(lanjutan)
x:Name="ChartSchaefer2" Title="Hubungan C
dengan F"
VerticalAlignment="Bottom" Width="500">
<chartingToolkit:Chart.LegendStyle>
<Style TargetType="{x:Type datavis:Legend}">
<Setter Property="Width" Value="0"
/>
</Style>
</chartingToolkit:Chart.LegendStyle>
<chartingToolkit:LineSeries
DependentValuePath="Value" Width="400"
IndependentValuePath="Key"
ItemsSource="{Binding}" />
</chartingToolkit:Chart>
</StackPanel> </StackPanel>
<StackPanel Orientation="Vertical" Margin="-166,0,-176,-147" Height="366.09" Width="981"
RenderTransformOrigin="0.5,0.5">
<StackPanel.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform AngleX="-0.418"/>
<RotateTransform/>
<TranslateTransform X="-0.993"/>
</TransformGroup>
</StackPanel.RenderTransform>
<TextBlock Text="Model
Fox" TextAlignment="Center" FontFamily="Segoe UI" FontSize="15" Background="#32666161" Width="978"/>
<TextBlock Height="8"/>
<StackPanel Orientation="Horizontal"> <Label
Content="Fmsy (unit penangkapan/tahun)" Height="28"
HorizontalAlignment="Left" x:Name="label9" VerticalAlignment="Top" IsEnabled="True" />
<TextBlock
Height="5"/> <TextBlock
Height="28" HorizontalAlignment="Left"
x:Name="textBoxFmsyFOX" Background="#32666161" VerticalAlignment="Top" Width="109" /><Label
Content="MSY (ton ikan/tahun)" Height="28"
HorizontalAlignment="Left" x:Name="label11" VerticalAlignment="Top" Width="130"/>
<TextBlock
Height="5"/> <TextBlock
Height="28" HorizontalAlignment="Left"
x:Name="textBoxMSYFOX" Background="#32666161" VerticalAlignment="Top" Width="109" /><TextBlock
Height="5"/>
<Label Content="TAC (ton ikan/tahun)" Height="28" HorizontalAlignment="Left" x:Name="label12"
VerticalAlignment="Top"/>
<TextBlock Height="5"/>
<TextBlock
Height="28" HorizontalAlignment="Left" x:Name="textBoxTACFOX" Background="#32666161"
VerticalAlignment="Top" Width="109" />
<TextBlock Height="5"/>
<Label
Content="R^2 (%)" Height="28" HorizontalAlignment="Left" x:Name="label13"
VerticalAlignment="Top" />
<TextBlock Height="5"/>
<TextBlock
Height="28" HorizontalAlignment="Left" x:Name="textBoxRKuadratFox" Background="#32666161"
VerticalAlignment="Top" Width="109" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<chartingToolkit:Chart Height="300"
HorizontalAlignment="Left"
x:Name="ChartFox1" Title="Hubungan Ln C/F
dengan F"
VerticalAlignment="Bottom" Width="350">
<chartingToolkit:Chart.LegendStyle>
<Style TargetType="{x:Type datavis:Legend}">
<Setter Property="Width" Value="0"
/>
</Style>
</chartingToolkit:Chart.LegendStyle>
<chartingToolkit:LineSeries DependentValuePath="Value"
IndependentValuePath="Key" ItemsSource="{Binding}" />
</chartingToolkit:Chart> <chartingToolkit:Chart
ScrollViewer.CanContentScroll="True"
ScrollViewer.HorizontalScrollBarVisibility="Auto" Height="300" HorizontalAlignment="Left"
x:Name="ChartFox2" Title="Hubungan C dengan F"
VerticalAlignment="Bottom" Width="500">
<chartingToolkit:Chart.LegendStyle>
<Style TargetType="{x:Type datavis:Legend}">
<Setter Property="Width" Value="0" />
</Style>
86
Lampiran 3. Listing Program CIAFISH
(lanjutan)
</chartingToolkit:Chart.LegendStyle>
<chartingToolkit:LineSeries DependentValuePath="Value"
IndependentValuePath="Key" ItemsSource="{Binding}" />
</chartingToolkit:Chart>
</StackPanel>
</StackPanel>
</StackPanel>
</StackPanel> </StackPanel>
</Grid>
</Page>
6. PageModelSUrplusProduksi.xaml.cs
using System; using System.Collections.Generic;
using System.Linq;
using System.Text; using System.Windows;
using System.Windows.Controls;
using System.Windows.Data; using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media; using System.Windows.Media.Imaging;
using System.Windows.Navigation; using System.Windows.Shapes;
using Microsoft.Windows.Controls.Primitives;
using Skripsi.Config; using Skripsi.Entity;
using System.Xml.Linq;
using System.Xml; using System.Globalization;
using System.Data;
using System.Windows.Controls.DataVisualization.Charting;
namespace Skripsi.Page {
/// <summary>
/// Interaction logic for Page1.xaml /// </summary>
public partial class PageModelSurplusProduksi :
System.Windows.Controls.Page {
private bool status = true; private int JumlahData;
public static List<TrackMSP> listDataMSP = new
List<TrackMSP>();
public PageModelSurplusProduksi()
{ InitializeComponent();
this.Loaded += new
RoutedEventHandler(PageMSP_Loaded); // showColumnChart();
//ChartSchaefer2.DataContext = new MyPointsCollection(5);
}
private void PageMSP_Loaded (object sender,
RoutedEventArgs e)
{
LoadDataMSP();
}
public void LoadDataMSP()
{ List<KeyValuePair<string, int>> nilaischaefer1 =
new List<KeyValuePair<string, int>>();
nilaischaefer1.Add(new KeyValuePair<string, int>("Empty", 0));
ChartSchaefer1.DataContext = nilaischaefer1;
ChartSchaefer2.DataContext = nilaischaefer1;
ChartFox1.DataContext = nilaischaefer1; ChartFox2.DataContext = nilaischaefer1;
listDataMSP = DataAll.listDataMSP; MyDataGrid.ItemsSource = DataAll.listDataMSP;
}
double nilaiA; double nilaiB;
double x1schaefer = 0;
////grafik 1
// private double Y_CperF; double[] Y_CperF;
double[] X_F;
//grafik 2
// private double X_Fschaefer; // private double Y_Cshaefer;
double [] X_Fschaefer = new double [1000];
double [] Y_Cshaefer = new double [1000];
//grafik 3
// private double[] Y_LnCperF; //private double[] X_F1fox;
double [] Y_LnCperF = new double [1000];
double [] X_F1fox = new double [1000];
//grafik 4
private double[] X_F2fox; private double[] Y_Cfox;
int nilaiMax; int C;
int Fmax;
// ModelSurplusProduksiIMPL pt = new
ModelSurplusProduksiIMPL();
//List<ModelSurplusProduksi> listModelSurplusProduksi = new
List<ModelSurplusProduksi> { };
public void ProsesAll()
{
try
{
//listModelSurplusProduksi = pt.selectAll();
87
Lampiran 3. Listing Program CIAFISH
(lanjutan)
C = listDataMSP.Count;
Fmax = Convert.ToInt16(textboxFmax.Text);
JumlahEffortCPUEY(); JumlahEffortTotal();
CPUESchafer();
JumlahEffortX2(); JumlahEffort2();
BSPSchefer();
Rata2CatchX(); Rata2CPUEY();
ASPSchafer();
JumlahCPUEY2(); JumlahCPUEdiKuadratkan();
SX_Kuadrat();
SX(); SY_Kuadrat();
SY();
SXY(); R_koefisienKorelasi();
R_Kuadrat();
FmsySchafer(); MsySchafer();
TacSchafer();
SY_KuadratFox(); SYFox();
Jumlah_LnCPUEKuadrat();
SXY1(); SXY2();
SXY3();
SXY4(); SXYFox();
Rkorelasi_Fox();
R2Fox(); Grafik_Schafer1(Fmax);
Grafik_Schafer2(Fmax); Grafik_Fox1(Fmax);
Grafik_Fox2(Fmax);
LoadChart(Fmax);
}
catch (Exception)
{ MessageBox.Show("Input data not valid, please
try again..");
}
}
private void UseDynamicGraphSize()
{
}
public double JumlahEffortCPUEY() {
double Jumlah_EffortX_Kali_CPUEY = 0;
for (int i = 0; i < listDataMSP.Count; i++)
Jumlah_EffortX_Kali_CPUEY = Jumlah_EffortX_Kali_CPUEY + ((listDataMSP[i].Effort) *
(((listDataMSP[i].Catch) / (listDataMSP[i].Effort))));
return Jumlah_EffortX_Kali_CPUEY; }
public double JumlahEffortTotal() {
double Jumlah_Effort_Total = 0; for (int i = 0; i < listDataMSP.Count; i++)
Jumlah_Effort_Total = Jumlah_Effort_Total +
(listDataMSP[i].Effort);
return Jumlah_Effort_Total;
}
public double CPUESchafer() {
// Tentukan [Catch/Effort]_Schaefer double CPUE_Schaefer = 0;
for (int i = 0; i < listDataMSP.Count; i++)
CPUE_Schaefer = CPUE_Schaefer + ((listDataMSP[i].Catch) / (listDataMSP[i].Effort));
return CPUE_Schaefer; }
//Jumlah Effort pangkat 2 terus dijumlahin public double JumlahEffortX2()
{
//Jumlah [(Effort_X)^2]
double JumlahEffortX2 = 0;
for (int i = 0; i < listDataMSP.Count; i++) JumlahEffortX2 = JumlahEffortX2 +
(Math.Pow(listDataMSP[i].Effort, 2));
//MessageBox.Show(Jumlah_Kuadrat_Effort_X.ToString());
return JumlahEffortX2; }
//Jumlah Effort Pangkat 2 public double JumlahEffort2()
{
// (Jumlah Effort^2) double JumlahEffort2 = 0;
JumlahEffort2 = Math.Pow(JumlahEffortTotal(), 2);
return JumlahEffort2; }
public double BSPSchefer() {
//Tentukan B_Schaefer
double BSP1 = 0; double BSP2 = 0;
double BSP_Schaefer = 0;
BSP1 = JumlahEffortCPUEY() - ((JumlahEffortTotal() * CPUESchafer()) / C);
BSP2 = JumlahEffortX2() - (JumlahEffort2() / C);
BSP_Schaefer = BSP1 / BSP2;
return BSP_Schaefer;
}
public double Rata2CatchX()
{
double Rata2_Catch_X = 0; Rata2_Catch_X = JumlahEffortTotal() / C;
88
Lampiran 3. Listing Program CIAFISH
(lanjutan)
return Rata2_Catch_X;
}
public double Rata2CPUEY()
{
//Rata2 CPUE_Y
double Rata2_CPUE_Y = 0;
Rata2_CPUE_Y = CPUESchafer() / C;
return Rata2_CPUE_Y;
}
public double ASPSchafer()
{ // Tentukan ASP_Schaefer
double ASP_Schaefer = 0;
ASP_Schaefer = Rata2CPUEY() - (BSPSchefer() * Rata2CatchX());
//nilaiA = ASP_Schaefer;
return ASP_Schaefer;
}
public double JumlahCPUEY2()
{ double JumlahCPUEY2 = 0;
for (int i=0;i<listDataMSP.Count;i++) {
double temp =
listDataMSP[i].Catch/listDataMSP[i].Effort; JumlahCPUEY2 = JumlahCPUEY2 +
Math.Pow(temp, 2); }
return JumlahCPUEY2;
}
public double JumlahCPUEdiKuadratkan() {
double JumlahCPUEdiKuadratkan = 0;
JumlahCPUEdiKuadratkan = Math.Pow(CPUESchafer(), 2);
return JumlahCPUEdiKuadratkan;
}
public double SX_Kuadrat()
{ double SX_Kuadrat = 0;
SX_Kuadrat= ((Convert.ToDouble(1))/(C-
(Convert.ToDouble(1))))*(JumlahEffortX2() - (JumlahEffort2() / C));
return SX_Kuadrat;
}
public double SX() {
double SX = 0;
SX = Math.Sqrt(SX_Kuadrat()); return SX;
}
public double SY_Kuadrat()
{
double SY_Kuadrat = 0; SY_Kuadrat = ((Convert.ToDouble(1)) / (C -
(Convert.ToDouble(1)))) * (JumlahCPUEY2() -
(JumlahCPUEdiKuadratkan() / C)); return SY_Kuadrat;
}
public double SY()
{
double SY = 0; SY = Math.Sqrt(SY_Kuadrat());
return SY;
}
public double SXY()
{ double SXY = 0;
SXY = ((Convert.ToDouble(1)) / (C -
(Convert.ToDouble(1)))) * (JumlahEffortCPUEY() - (((JumlahEffortTotal() * CPUESchafer())/C)));
return SXY;
}
public double R_koefisienKorelasi()
{
double R_koefisienKorelasi = 0; R_koefisienKorelasi = (SXY() / (SX() * SY()));
return R_koefisienKorelasi;
}
public double R_Kuadrat()
{
double R_Kuadrat = 0;
R_Kuadrat = (Math.Pow(R_koefisienKorelasi(),
2))*100; return R_Kuadrat;
}
public double FmsySchafer()
{ //Fmsy_Schaefer
double Fmsy_Schaefer = 0;
Fmsy_Schaefer = -(ASPSchafer()) / (2 * BSPSchefer());
return Fmsy_Schaefer;
}
public double MsySchafer() {
//MSY_Schaefer
double MSY_Schaefer = 0; MSY_Schaefer = -(Math.Pow(ASPSchafer(), 2)) / (4
* BSPSchefer());
return MSY_Schaefer; }
public double TacSchafer() {
//TAC_Schaefer
double TAC_Schaefer = 0; TAC_Schaefer = 0.8 * MsySchafer();
return TAC_Schaefer;
}
//Fox---------------------------------------------------
public double Jumlah_EffortX_dikali_LnCPUEY() {
89
Lampiran 3. Listing Program CIAFISH
(lanjutan)
//Jumlah Effort(X) dikali Ln(CPUE)
double Jumlah_EffortX_dikali_LnCPUEY = 0;
for (int i = 0; i < listDataMSP.Count; i++) Jumlah_EffortX_dikali_LnCPUEY =
Jumlah_EffortX_dikali_LnCPUEY +
((listDataMSP[i].Effort) * (Math.Log((listDataMSP[i].Catch) /
(listDataMSP[i].Effort))));
return Jumlah_EffortX_dikali_LnCPUEY;
}
public double Jumlah_LnCPUE_TotalY()
{ //Jumlah Ln CPUE
double Jumlah_LnCPUE_TotalY = 0; for (int i = 0; i < listDataMSP.Count; i++)
Jumlah_LnCPUE_TotalY =
Jumlah_LnCPUE_TotalY + (Math.Log((listDataMSP[i].Catch) /
(listDataMSP[i].Effort)));
return Jumlah_LnCPUE_TotalY; }
public double Jumlah_LnCPUETotal_dikuadratkan() {
double Jumlah_LnCPUETotal_dikuadratkan = 0;
Jumlah_LnCPUETotal_dikuadratkan = Math.Pow(Jumlah_LnCPUE_TotalY(), 2);
return Jumlah_LnCPUETotal_dikuadratkan;
}
public double Rata2_LnCPUE_Y() {
//Rata2 LnCPUE_Y
double Rata2_LnCPUE_Y = 0;
Rata2_LnCPUE_Y = Jumlah_LnCPUE_TotalY() / C;
return Rata2_LnCPUE_Y;
}
public double BSP_Fox()
{
//BSP FOX
double BSP1_Fox = 0; double BSP2_Fox = 0;
double BSP_Fox = 0;
BSP1_Fox = Jumlah_EffortX_dikali_LnCPUEY() - ((JumlahEffortTotal() * Jumlah_LnCPUE_TotalY()) / C);
BSP2_Fox = JumlahEffortX2() - (JumlahEffort2() /
C); BSP_Fox = BSP1_Fox / BSP2_Fox;
return BSP_Fox;
}
public double ASP_Fox()
{ //ASP FOX
double ASP_Fox = 0;
ASP_Fox = Rata2_LnCPUE_Y() - (BSP_Fox() * Rata2CatchX());
return ASP_Fox;
}
public double Fmsy_Fox()
{ //Fmsy
double Fmsy_Fox = 0;
Fmsy_Fox = -(1 / BSP_Fox()); return Fmsy_Fox;
}
public double MSY_Fox()
{
//MSY FOX double MSY_Fox = 0;
MSY_Fox = Fmsy_Fox() * (Math.Exp(ASP_Fox() -
1)); return MSY_Fox;
}
public double TAC_Fox()
{
//TAC Fox double TAC_Fox = 0;
TAC_Fox = 0.8 * MSY_Fox();
return TAC_Fox; }
public double Jumlah_LnCPUEKuadrat() {
double Jumlah_LnCPUEKuadrat = 0;
for (int i = 0; i < listDataMSP.Count; i++) {
double Ja = Math.Log(listDataMSP[i].Catch /
listDataMSP[i].Effort);
Jumlah_LnCPUEKuadrat =
Jumlah_LnCPUEKuadrat+Math.Pow(Ja, 2);
} return Jumlah_LnCPUEKuadrat;
}
public double SXY1()
{ double SXY1 = 0;
SXY1 = (Convert.ToDouble(1) / (C -
(Convert.ToDouble(1)))); return SXY1;
}
public double SXY2()
{
double SXY2 = 0; SXY2 = (Jumlah_LnCPUETotal_dikuadratkan() /
C);
return SXY2; }
public double SXY3()
{ double SXY3 = 0;
SXY3 = SXY1() * (Jumlah_LnCPUEKuadrat() -
SXY2()); return SXY3;
}
public double SXY4()
{
double SXY4 = SXY1() * SXY3(); return SXY4;
}
public double SY_KuadratFox()
{
double SY_KuadratFox = 0; double SY_kuadratfox1 = 0;
90
Lampiran 3. Listing Program CIAFISH
(lanjutan)
double SY_kuadratfox2 = 0;
SY_kuadratfox1=(Convert.ToDouble(1) /
(listDataMSP.Count() - (Convert.ToDouble(1)))); SY_kuadratfox2 =
Jumlah_LnCPUETotal_dikuadratkan()/listDataMSP.Count()
; SY_KuadratFox =
SY_kuadratfox1*(Jumlah_LnCPUEKuadrat()-
SY_kuadratfox2) ; return SY_KuadratFox;
}
public double SYFox()
{
double SYFox = 0; SYFox = Math.Sqrt(SY_KuadratFox());
return SYFox;
}
public double SXYFox()
{ double SXYFox = 0;
SXYFox = (Convert.ToDouble(1) / (C -
(Convert.ToDouble(1)))) * (Jumlah_EffortX_dikali_LnCPUEY() -
(((Convert.ToDouble(1)) / C) * (JumlahEffortTotal() *
Jumlah_LnCPUE_TotalY()))); return SXYFox;
}
public double Rkorelasi_Fox()
{
double Rkorelasi_Fox = 0; Rkorelasi_Fox = SXYFox() / (SX() * SYFox());
return Rkorelasi_Fox; }
public double R2Fox() {
double R2Fox = 0;
R2Fox = (Math.Pow(Rkorelasi_Fox(), 2))*100; return R2Fox;
}
//Grafik Hubungan C/f dengan F SCHAEFER public void Grafik_Schafer1(int Fmax)
{
//grafik 1 Y_CperF = new double[Fmax];
//double[] X_F = new double [nilaiMax];
for (int i = 0; i < Fmax; i++)
{
//X_F[i] = i; Y_CperF[i] = ASPSchafer() + (BSPSchefer() * i);
}
}
////Grafik Hubungan C dengan F SCHAEFER public void Grafik_Schafer2(int Fmax)
{
Y_Cshaefer = new double[Fmax]; for (int i = 0; i < Fmax; i++)
{
//X_Fschaefer[i] = i; Y_Cshaefer[i] = (ASPSchafer() * i) +
(BSPSchefer() * (Math.Pow(i, 2)));
} }
//// Grafik Hubungan Ln C/F dengan F FOX//
public void Grafik_Fox1(int Fmax)
{
for (int i = 0; i < Fmax; i++)
{ //X_F1fox[i] = i;
Y_LnCperF[i] = ASP_Fox() + (BSP_Fox() * i); }
}
// Grafik Hubungan C dengan F FOX
public void Grafik_Fox2(int Fmax) {
Y_Cfox = new double[Fmax]; for (int i = 1; i < Fmax; i++)
{
Y_Cfox[i] = i; Y_Cfox[i] = Math.Exp((ASP_Fox() + (BSP_Fox()
* i)));
} }
public void LoadChart(int Fmax)
{
//grafik Schafer1
//double[] Y_CperF = new double[1000]; //double[] X_F = new double[nilaiMax];
List<KeyValuePair<int, double>> nilaischaefer1 =
new List<KeyValuePair<int, double>>();
for (int i = 0; i < Fmax; i++) {
nilaischaefer1.Add(new KeyValuePair<int,
double>(i, Y_CperF[i])); }
// grafik Schafer2 List<KeyValuePair<int, double>> nilaischaefer2 =
new List<KeyValuePair<int, double>>();
for (int i = 0; i < Fmax; i++) {
nilaischaefer2.Add(new KeyValuePair<int,
double>(i, Y_Cshaefer[i])); }
List<KeyValuePair<int, double>> nilaifox1 = new List<KeyValuePair<int, double>>();
for (int i = 0; i < Fmax; i++)
{ nilaifox1.Add(new KeyValuePair<int, double>(i,
Y_LnCperF[i]));
}
List<KeyValuePair<int, double>> nilaifox2 = new
List<KeyValuePair<int, double>>(); for (int i = 1; i < Fmax; i++)
{
nilaifox2.Add(new KeyValuePair<int, double>(i,
Y_Cfox[i]));
}
91
Lampiran 3. Listing Program CIAFISH
(lanjutan)
ChartSchaefer1.DataContext = nilaischaefer1;
ChartSchaefer2.DataContext = nilaischaefer2;
ChartFox1.DataContext = nilaifox1; ChartFox2.DataContext = nilaifox2;
} private void btnprosessurplus_Click(object sender,
RoutedEventArgs e)
{ ProsesAll();
textBoxFmsy.Text = FmsySchafer().ToString("N0");
textBoxMSY.Text = MsySchafer().ToString("N4"); textBoxTAC.Text = TacSchafer().ToString("N4");
textBoxFmsyFOX.Text =
Fmsy_Fox().ToString("N0"); textBoxMSYFOX.Text =
MSY_Fox().ToString("N4");
textBoxTACFOX.Text = TAC_Fox().ToString("N4");
textBoxRKuadrat.Text =
R_Kuadrat().ToString("N4"); textBoxRKuadratFox.Text =
R2Fox().ToString("N4");
public int Count { get; set; }
private void btnDeleteRow_Click(object sender,
RoutedEventArgs e) {
if (MessageBox.Show("Yakin data akan dihapus?",
"Delete", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
foreach (TrackMSP item in MyDataGrid.SelectedItems)
{ DataAll.listDataMSP.Remove(item);
}
MyDataGrid.ItemsSource = DataAll.listDataMSP;
MyDataGrid.SelectedIndex = -1;
} else
{
} }
private void MyDataGrid_SelectionChanged_1(object
sender, SelectionChangedEventArgs e) {
foreach (TrackMSP item in
MyDataGrid.SelectedItems) {
txtIDTemp.Text = item.ID.ToString();
txtTahuntemp.Text = item.Tahun; txtCatchtemp.Text =
item.Catch.ToString(CultureInfo.InvariantCulture);
txtEfforttemp.Text = item.Effort.ToString(CultureInfo.InvariantCulture);
} }
private void btnSaveUpdate_Click_1(object sender,
RoutedEventArgs e) {
foreach (TrackMSP item in DataAll.listDataMSP) {
if (item.ID == int.Parse(txtIDTemp.Text))
{ item.Tahun = txtTahuntemp.Text;
item.Catch = double.Parse(txtCatchtemp.Text);
item.Effort = double.Parse(txtEfforttemp.Text); }
}
MyDataGrid.ItemsSource = DataAll.listDataMSP;
}
private void btnrefreshsurplus_Click(object sender,
RoutedEventArgs e)
{ LoadDataMSP();
}
private void btnTambah_Click_1(object sender,
RoutedEventArgs e)
{ if (status == true)
{
txPeneliti.IsEnabled = false; txtIkan.IsEnabled = false;
textboxFmax.IsEnabled = false;
status = false;
}
int TempJumlah = JumlahData + 1; LoadDataMSP();
}
private void textboxFmax_TextChanged(object sender,
TextChangedEventArgs e)
{
} }
}
7. Xaml PageDeskripsi
<Page x:Class="Skripsi.Page.PageDeskripsi" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/pres
entation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-
compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="650" d:DesignWidth="1050" Title="Page1">
<Grid>
<TextBlock TextAlignment="Justify" TextWraPPPng="Wrap" Height="307"
HorizontalAlignment="Left" Margin="12,189,0,0"
Name="textBlock1" Text="Program ini merupakan sebuah sistem
analisis dan informasi akan aspek pertumbuhan (hubungan
panjang berat, sebaran frekuensi panjang, nilai K, L∞, dan t0), nilai mortalitas penangkapan dan laju eksploitasi
sumberdaya perikananan dari pengukuran panjang dan berat
sehingga tingkat eksploitasi suatu sumberdaya perikanan dapat diketahui. Selain itu, sistem ini menganalisis data
sekunder tahunan dari hasil dan upaya tangkapan untuk
memberikan informasi mengenai upaya optimum (fmsy), Maximum Sustainable Yield/MSY serta jumlah tangkapan
yang diperbolehkan (JTB/TAC) baik melalui model
Schaefer maupun Fox. Analisis dan informasi mengenai
model surplus produksi berguna untuk mendukung
mengenai hasil analisis tingkat eksploitasi suatu sumberdaya
perikanan dari pengukuran panjang dan berat. Program sistem analisa dan informasi akan aspek pertumbuhan, laju
92
Lampiran 3. Listing Program CIAFISH
(lanjutan)
mortalitas, dan dinamika stok ikan akan memberikan
informasi mendasar yang menjadi salah satu aspek dalam
penunjang penetapan strategi pengelolaan perikanan. " VerticalAlignment="Top" Width="1008" FontSize="20"
/>
<TextBlock Height="56" Margin="248,68,0,0" TextWraPPPng="Wrap" FontSize="24"
TextAlignment="Center" HorizontalAlignment="Left"
VerticalAlignment="Top" Foreground="#FF3DBEE0" FontFamily="High Tower Text"><Run Language="id-id"
Text="CIAFISH"/><LineBreak/><Run Language="id-id"
Text="(Calculate, Information and Analysis of Fisheries)"/></TextBlock>
</Grid>
</Page>
8. Xaml PageBantuan
<Page
xmlns="http://schemas.microsoft.com/winfx/200
6/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/20
06/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/20
08" x:Class="Skripsi.Page.PageBantuan"
Title="Page"
FlowDirection="LeftToRight" Width="1020" Height="800"
WindowWidth="640" WindowHeight="480">
<Grid x:Name="LayoutRoot"> <TextBlock Height="74"
Margin="40,24,43,0" TextWraPPPng="Wrap" VerticalAlignment="Top" TextAlignment="Center"
FontSize="18.667"><Run Language="id-id"
Text="PANDUAN PENGGUNAAN "/><LineBreak/><Run Language="id-id" Text="CIAFISH"/><LineBreak/><Run
Language="id-id" Text="(Calculation, Information and
Analysis of Fisheries)"/></TextBlock> <Label Height="109.5" HorizontalAlignment="Left"
Margin="40,120,0,0" Name="label1"
VerticalAlignment="Top" Width="203"> <Label.Background>
<ImageBrush
ImageSource="/Skripsi;component/Images/tampilan%20awal1.png" />
</Label.Background>
</Label> <Label Height="123" HorizontalAlignment="Left"
Margin="42,249,0,0" Name="label2"
VerticalAlignment="Top" Width="200"> <Label.Background>
<ImageBrush
ImageSource="/Skripsi;component/Images/form%20pertumbuhan.png" />
</Label.Background>
</Label> <TextBlock Margin="274,120,0,557"
TextWraPPPng="Wrap" HorizontalAlignment="Left"
Width="234"><Run Language="id-id" Text="Tampilan awal saat program dijalankan."/><LineBreak/><Run
Language="id-id" Text="Terdapat 5 menu
:"/><LineBreak/><Run Language="id-id" Text="- Form pertumbuhan"/><LineBreak/><Run Language="id-id"
Text="- Form model surplus produksi"/><LineBreak/><Run
Language="id-id" Text="- Bantuan"/><LineBreak/><Run Language="id-id" Text="- Deskripsi
aplikasi"/><LineBreak/><Run Language="id-id" Text="-
Tentang pengembang"/><LineBreak/><Run Language="id-id"/></TextBlock>
<TextBlock Margin="274,243,18,0"
TextWraPPPng="Wrap" Height="148" VerticalAlignment="Top"><Run Language="id-id"
Text="Form Perumbuhan :"/><LineBreak/><Run
Language="id-id" Text="- Masukkan Nama peneliti, ikan, batas minimum kelas, selang kelas dan lama
penelitian"/><LineBreak/><Run Language="id-id" Text="-
Masukkan data waktu, panjang, berat, jenis kelamin dan TKG lalu klik "/><Run FontStyle="Italic" Language="id-id"
Text="button"/><Run Language="id-id" Text="
"Tambah" untuk memasukkan kedalam suatu daftar dan menambahkan data
berikutnya."/><LineBreak/><Run Language="id-id"
Text="- Untuk menghapus data yang terdapat pada tabel dengan klik "/><Run FontStyle="Italic" Language="id-id"
Text="button"/><Run Language="id-id" Text="
"hapus" di baris data yang akan dihapus"/><LineBreak/><Run Language="id-id" Text="-
Untuk mengubah data yang terdapat pada tabel dengan
memilih data yang akan diubah lalu secara otomoatis form ubah yang terdapat dsebalah kanan tabel akan menyediakan
data yang akan di ubah. setelah data di ubah lalu klik
"/><Run FontStyle="Italic" Language="id-id" Text="buton "/><Run Language="id-id"
Text=""save""/><LineBreak/><Run
Language="id-id" Text="- Untuk memproses data yang telah di input dengan klik "/><Run FontStyle="Italic"
Language="id-id" Text="button"/><Run Language="id-id"
Text=" "Proses""/><LineBreak/><Run
Language="id-id" Text="- Klik save dibagian kiri atas
program untuk menyimpan data dan informasi yang
dihasilkan"/><LineBreak/><Run Language="id-id"/></TextBlock>
<TextBlock HorizontalAlignment="Right" Margin="0,130,8,219" TextWraPPPng="Wrap"
Width="120"/>
<TextBlock Margin="274,391,18,259.667" TextWraPPPng="Wrap"><Run Language="id-id"
Text="Form Model Surplus Produksi
:"/><LineBreak/><Run Language="id-id" Text="- Masukkan Nama peneliti, ikan dan upaya
Maksimum"/><LineBreak/><Run Language="id-id"
Text="- Masukkan data tahun, "/><Run FontStyle="Italic" Language="id-id" Text="catch,"/><Run Language="id-id"
Text="dan "/><Run FontStyle="Italic" Language="id-id"
Text="effort "/><Run Language="id-id" Text="lalu klik "/><Run FontStyle="Italic" Language="id-id"
Text="button"/><Run Language="id-id" Text="
"Tambah" untuk memasukkan kedalam suatu daftar dan menambahkan data
berikutnya."/><LineBreak/><Run Language="id-id"
Text="- Untuk menghapus data yang terdapat pada tabel dengan klik "/><Run FontStyle="Italic" Language="id-id"
Text="button"/><Run Language="id-id" Text="
"hapus" di baris data yang akan dihapus"/><LineBreak/><Run Language="id-id" Text="-
Untuk mengubah data yang terdapat pada tabel dengan
memilih data yang akan diubah lalu secara otomoatis form ubah yang terdapat dsebalah kanan tabel akan menyediakan
data yang akan di ubah. setelah data di ubah lalu klik
"/><Run FontStyle="Italic" Language="id-id" Text="buton "/><Run Language="id-id"
Text=""save""/><LineBreak/><Run
Language="id-id" Text="- Untuk memproses data yang
telah di input dengan klik "/><Run FontStyle="Italic"
Language="id-id" Text="button"/><Run Language="id-id"
Text=" "Proses""/><LineBreak/><Run Language="id-id" Text="- Klik save dibagian kiri atas
93
Lampiran 3. Listing Program CIAFISH
(lanjutan)
program untuk menyimpan data dan informasi yang
dihasilkan"/></TextBlock>
<Label Height="138" HorizontalAlignment="Left" Margin="42,391,0,0" Name="label3"
VerticalAlignment="Top" Width="201">
<Label.Background> <ImageBrush
ImageSource="/Skripsi;component/Images/form%20msp.pn
g" /> </Label.Background>
</Label>
</Grid> </Page>
9. Xaml PageTentang
<Page x:Class="Skripsi.Page.PageTentang"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/pres
entation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-
compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/20
08"
mc:Ignorable="d" d:DesignHeight="500" d:DesignWidth="500"
Title="Page2">
<Grid> <Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="0*"/> </Grid.ColumnDefinitions>
<Label Content="Laboratorium Manajemen Sumberdaya Perairan
Bidang Kajian
Biomatematika, Biostatistika dan
Bioinformatika
Departemen Manajemen Sumberdaya Perairan
Fakultas Perikanan dan
Ilmu Kelautan
Institut Pertanian Bogor"
HorizontalAlignment="Left" Margin="102,12,0,385" Name="label1" FontSize="13" Width="375" />
<Label Content="" Height="82"
HorizontalAlignment="Left" Margin="12,20,0,0" Name="label6" VerticalAlignment="Top" Width="84">
<Label.Background>
<ImageBrush ImageSource="/Skripsi;component/Images/LOGO_IPB.GIF
" />
</Label.Background> </Label>
<TextBlock Margin="102,0,0,170"
TextWraPPPng="Wrap" TextAlignment="Left" FontWeight="Bold" HorizontalAlignment="Left"
VerticalAlignment="Bottom" AllowDrop="False"
Background="#FFA5DCDC" Height="91" Width="292"><TextBlock.BindingGroup><BindingGroup
/></TextBlock.BindingGroup><Run Text="Jika ada kritik
atau saran, silahkan menghubungi :"/><LineBreak/><Run Text="Precia Anita Andansari "/><LineBreak/><Run
Text="[email protected] "/><LineBreak/><Run
Text="[email protected] "/><LineBreak/><Run
Text="08388370892"/></TextBlock>
<TextBlock Height="44" Margin="49,172,58,0" TextWraPPPng="Wrap" VerticalAlignment="Top"
FontSize="16" TextAlignment="Center"><Run
FontFamily="High Tower Text" Language="id-id"
Text="CIAFISH"/><LineBreak/><Run FontFamily="High
Tower Text" Language="id-id" Text="(Calculate,
Information and Analysis of Fisheries)"/></TextBlock> </Grid>
</Page>