SISTEM INFORMASI PENGKAJIAN STOK IKAN (STUDI KASUS : … · Skripsi ini merupakan salah satu syarat...

107
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

Transcript of SISTEM INFORMASI PENGKAJIAN STOK IKAN (STUDI KASUS : … · Skripsi ini merupakan salah satu syarat...

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="

&quot;Tambah&quot; 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="

&quot;hapus&quot; 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="&quot;save&quot;"/><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=" &quot;Proses&quot;"/><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="

&quot;Tambah&quot; 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="

&quot;hapus&quot; 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="&quot;save&quot;"/><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=" &quot;Proses&quot;"/><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&#xd;&#xa;Bidang Kajian

Biomatematika, Biostatistika dan

Bioinformatika&#xd;&#xa;Departemen Manajemen Sumberdaya Perairan&#xd;&#xa;Fakultas Perikanan dan

Ilmu Kelautan&#xd;&#xa;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>