BAB II LANDASAN TEORI 2.1 Analisis Kebutuhan Perangkat Lunak Analisis kebutuhan merupakan langkah awal untuk menentukan perangkat lunak yang dihasilkan. Analisis kebutuhan menjadi faktor yang sangat menentukan keberhasilan perangkat lunak itu sendiri. Jika pada tahap analisis kebutuhan terjadi kesalahan, maka perangkat lunak yang dihasilkan pun menjadi tidak berguna. Analisis kebutuhan yang baik belum tentu menghasilkan perangkat lunak yang baik pula. Namun jika pada tahap ini sudah terjadi kesalahan, maka sudah pasti akan menghasilkan perangkat lunak yang gagal. Adapun faktor utama yang harus dipenuhi dalam membuat analisis kebutuhan adalah sebagai berikut: 1. Komunikasi yang baik Membangun komunikasi yang baik dengan pengguna merupakan hal yang sangat diperlukan guna hasil dari perangkat lunak yang dikerjakan sesuai dengan apa yang diharapkan. Hal ini juga menjadi bantuan yang sangat penting guna menjadikan komunikasi yang terbuka dan lancar. 2. Mengetahui apa Dalam hal ini penulis harus mengetahui tentang apa yang akan dikerjakan oleh programmer. Kebutuhan dan batasan yang diinginkan pengguna harus ditentukan dan dinyatakan secara tegas.
3. Terbuka dengan langkah yang dilakukan. Bersikap terbuka selama proses pembuatan perangkat lunak akan sangat membantu. Hal ini sesuai dengan pilihan yang diminta oleh pengguna. Antara programmer dengan pengguna akan mudah didalam mengambil sebuah keputusan. 4. Gunakanlah istilah yang sederhana. Jangan gunakan istilah yang tidak dimengerti oleh pengguna terutama dalam proses analisis kebutuhan. Hal ini akan mengakibatkan komunikasi akan lebih sulit dan tentunya berdampak pada hasil perangkat lunak yang dibuat. 2.2 Software (Perangkat Lunak) Komputer hanyalah merupakan mesin yang tidak dapat melakukan apa-apa sekiranya tidak mendapatkan dukungan dari perangkat lunak. Perangkat lunak adalah program, dan program adalah sekumpulan instruksi yang disusun secara terstruktur oleh programmer. Dengan program inilah komputer dapat melakukan tindakan sesuai yang dikehendaki oleh pembuatnya. Program umumnya dibuat oleh vendor perangkat lunak (misalnya Microsoft & Sun Microsystem) ataupun perseorangan. Perangkat lunak pada dasarnya memiliki dua peran, di satu sisi berfungsi sebagai sebuah produk dan di sisi lain sebagai pengontrol pembuatan sebuah produk. Sebagai produk, perangkat lunak mengantarkan potensi perhitungan yang dibangun oleh perangkat lunak komputer. Sedangkan peran sebagai pengontrol yang dipakai untuk mengantarkan produk, perangkat lunak berlaku sebagai dasar untuk kontrol komputer (sistem operasi), komunikasi informasi (jaringan) dan pembuatan serta kontrol dari program-program lain (piranti dan lingkungan perangkat lunak).
Berdasarkan fungsinya, perangkat lunak dapat dibagi menjadi 3 kelompok besar, yaitu perangkat lunak sistem biasa juga disebut sebagai sistem operasi, bahasa pemrograman, dan perangkat lunak aplikasi. Dalam hal ini, perangkat lunak yang penulis buat adalah perangkat lunak aplikasi. Perangkat lunak aplikasi sejatinya adalah program yang didesain khusus untuk menyelesaikan masalah spesifik pengguna, seperti melakukan tugas mengetik dokumen, manipulasi foto, merancang bangunan ataupun menghitung zakat. 2.2.1 Karakteristik Perangkat Lunak Perangkat lunak memiliki beberapa karakteristik sebagai berikut: 1. Perangkat lunak tidak dapat rusak (wear out). Pada umumnya jika sebuah komponen perangkat keras rusak, maka dapat diganti dengan spare part sedangkan perangkat lunak tidak memiliki spare part. Perangkat lunak tidak rentan terhadap gangguan lingkungan yang menyebabkan menjadi rusak. Perawatan atau pemeliharaan perangkat lunak memiliki kompleksitas yang lebih tinggi dibandingkan perawatan perangkat keras. 2. Perangkat lunak dikembangkan atau direkayasa tidak dalam pengertian klasik. Fase pembuatan perangkat keras membuat masalah kualitas yang tidak ada pada perangkat lunak. 3. Sebagian besar perangkat lunak dibuat berdasarkan pesanan.
Pada perangkat lunak tidak memiliki katalog komponen, ini memungkinkan untuk memesan perangkat lunak yang off-the-self, tetapi hanya sebagai unit yang complete, bukan sebagai komponen yang dapat dipasang kembali ke dalam program yang baru. 2.2.2 Komponen Perangkat Lunak Komponen perangkat lunak dibuat dengan meletakkan struktur data perangkat lunak, atribut prosedur dan kebutuhan-kebutuhan yang terkait. Komponen utama rekayasa perangkat lunak yaitu teknologi, manajemen perancangan dan manusia. Selain itu, atribut yang dipakai merupakan ukuran kualitas perangkat lunak. Di antaranya adalah sebagai berikut: 1. Kegunaan, yaitu pemenuhan terhadap kebutuhan pengguna. 2. Keandalan, yaitu kemampuan melaksanakan fungsi yang diinginkan. 3. Kejelasan, yaitu penulisan program dilakukan secara jelas dan mudah dimengerti. 2.2.3 Pengembangan Perangkat Lunak Adapun proses pengembangan perangkat lunak sama seperti proses pengembangan keteknikan lainnya. Sebuah model mengenai proses pengembangan perangkat lunak diturunkan dari aktivitas rekayasa keteknikan yang diterima oleh manajemen proyek perangkat lunak karena menawarkan cara membuat proses pengembangan yang lebih baik.
Pengertian dan Analisis Kebutuhan Perancangan (Desain) Sistem dan Perangkat Lunak Implementasi dan Unit Testing Integrasi dan Sistem Testing Gambar 1.0 Model Pengembangan Perangkat Lunak 2.3 Software Penghitung Zakat Software Penghitung Zakat merupakan suatu alat yang mampu menghitung zakat berdasarkan jenisnya sesuai dengan mazhab yang dipakai yaitu mazhab Syafi i. Perangkat lunak ini dibuat berdasarkan perhitungan yang didasarkan pada Al-Quran dan Sunnah. 2.3.1 Pengertian Zakat Penulis mengenal zakat sebagai salah satu dari lima rukun Islam yang di dalam AlQuran seringkali dikaitkan dengan shalat. Zakat berasal dari bentuk kata yang berarti suci, baik, berkah, tumbuh, dan berkembang. Menurut terminologi syariat, zakat adalah nama bagi sejumlah harta tertentu yang telah mencapai syarat tertentu yang diwajibkan oleh Allah untuk dikeluarkan dan diberikan kepada yang berhak menerimanya dengan persyaratan tertentu pula.
Kaitan antara makna secara bahasa dan istilah ini berkaitan erat sekali, yaitu bahwa setiap harta yang sudah dikeluarkan zakatnya akan menjadi suci, bersih, baik, berkah, tumbuh dan berkembang. Seperti yang tertulis dalam surat At-Taubah: (103) sebagai berikut: "Ambillah zakat dari sebagian harta mereka, dengan zakat itu kamu membersihkan dan mensuci-kan mereka." (At-Taubah: 103) Pada dasarnya ada 2 macam zakat, yaitu zakat maal atau zakat atas harta kekayaan dan zakat fitri yaitu zakat untuk membersihkan diri yang dibayarkan pada bulan Ramadhan menjelang Idul Fitri. Secara rinci pembagian zakat berdasarkan jenisnya dapat dilihat pada Gambar 1.1 berikut ini: Fitrah Zakat Maal 1. Zakat Emas dan Perak 2. Zakat Pertanian 3. Zakat Perdagangan 4. Zakat Binatang Ternak 5. Zakat Barang Temuan 6. Zakat Profesi Gambar 1.1 Bagan Pembagian Zakat Berdasarkan Jenisnya
2.3.2 Penghitungan Zakat Penghitungan zakat disesuaikan dengan menggunakan mazhab Syafi i. Adapun sebelum memulai pembahasan mendalam dan terperinci mengenai setiap kategori aset wajib zakat, penulis akan memaparkan sejumlah tahapan ketentuan umum dalam menentukan dan menghitung aset wajib zakat pada Gambar 1.2 berikut ini: Menentukan dengan memilih dan memilah asset wajib zakat Menentukan kategori aset wajib zakat Menentukan dan menghitung total pengeluaran Menghitung sumber aset wajib zakat (total nilai asset wajib zakat-total pengeluaran) Mengacu besaran nisab sesuai dengan kategori Membandingkan sumber dengan nisab (jika sumber >= nisab maka wajib zakat) Mengacu besaran volume persentase zakat sesuai dengan kategori Menghitung jumlah zakat (sumber X persentase) Gambar 1.2 Tahapan Dalam Menentukan dan Menghitung Aset Wajib Zakat
Penghitungan zakat sesuai dengan jenisnya akan dijelaskan sebagai berikut: a. Zakat Fitrah Kadar zakat fitrah yang harus dibayar adalah satu sha' dari makanan pokok Negara se tempat, dan satu sha' untuk ukuran sekarang kira-kira 2,176 kg (ketentuan ini sesuai makanan pokok gandum) dibulatkan menjadi 2,5 kg atau Kadar nilai zakat disesuaikan dengan harga makanan pokok masingmasing negara. b. Zakat Maal Zakat Maal terdiri atas: 1. Zakat Emas dan Perak Nishab emas = 20 Mithqal = 85 gr emas murni Nishab perak = 200 dirham = 643 gr perak Syarat: berlakunya waktu 1 tahun dalam keadaan nishab. Jumlah zakatnya = 2,5% x (jumlah emas/perak) 2. Zakat Pertanian Nishab hasil pertanian: 5 wasaq = 653 kg. Syarat: harus dimiliki orang tertentu tanahnya. Jumlah zakatnya: a. 10% x Jumlah hasil pertanian (diairi oleh air hujan) b. 5% x Jumlah hasil pertanian (diairi dengan irigasi)
3. Zakat Perdagangan Nishabnya sama dengan emas dan perak atau jika diubah dalam bentuk uang maka harganya setara dengan harga emas 85 gr saat ini. Cara membayar zakat perdagangan yaitu dengan menentukan waktu tahunan untuk membayar zakat. Jumlah zakatnya: (Nilai barang dagangan + Keuntungan Hutang) x 2,5% 4. Zakat Binatang Ternak Yang dimaksud hewan disini adalah binatang yang dimanfaatkan manusia, seperti onta, sapi dan kambing. Adapun syarat umum zakat binatang: 1. Mencapai nishab. Nishab onta adalah 5 ekor, kambing 40 ekor dan sapi 30 ekor. Jika jumlah hewan yang dimiliki belum mencapai nishab, maka tidak wajib zakat. 2. Mencapai haul satu tahun Hijriyah (telah dimiliki selama setahun). 3. Merupakan binatang yang digembalakan. 4. Bukan merupakan hewan yang digunakan untuk bekerja, seperti untuk membajak sawah, membawa barang, dan memindahkan perniagaan. Karena hewan ini dikategorikan dalam kebutuhan dasar seperti pakaian.
Adapun untuk lebih jelasnya dapat dilihat pada Tabel 1.0 berikut ini: 1. Zakat Onta Tabel 1 Zakat Binatang Onta Jumlah Onta Jumlah Zakat 5-9 ekor 1 kambing 10-14 ekor 2 kambing 15-19 ekor 3 kambing 20-24 ekor 4 kambing 25-35 ekor 1 ekor onta betina usia satu tahun dan memasuki tahun ke dua 1 ekor onta betina usia dua tahun dan memasuki tahun ke tiga 1 ekor onta betina usia tiga tahun dan memasuki tahun ke empat 1 ekor onta betina usia empat tahun dan memasuki tahun ke lima 2 ekor onta betina usia dua tahun dan memasuki tahun ke tiga 2 ekor onta betina usia tiga tahun dan memasuki tahun ke empat 36-45 ekor 46-60 ekor 61-75 ekor 76-90 ekor 91-120 ekor Untuk jumlah onta di atas 120 ekor, pada setiap 40 ekor mengeluarkan zakat sebesar 1 ekor onta betina usia dua tahun dan memasuki tahun ke tiga dan pada setiap 50 ekor mengeluarkan zakat sebesar 1 ekor onta betina usia tiga tahun dan memasuki tahun ke empat.
2. Zakat Sapi Tabel 2 Zakat Binatang Sapi Jumlah sapi Jumlah zakat yang dikeluarkan 30-39 ekor 1 ekor sapi jantan yang telah genap berusia satu tahun dan memasuki tahun ke dua atau 1 ekor sapi betina yang telah genap berusia satu tahun dan memasuki tahun ke dua. 1 ekor sapi betina yang telah genap berusia dua tahun dan memasuki tahun ke tiga. 40-59 ekor 60-69 ekor 70-79 ekor 80 ekor 90 ekor 100 ekor 2 ekor sapi jantan yang telah genap berusia satu tahun dan memasuki tahun ke dua atau 2 ekor sapi betina yang telah genap berusia satu tahun dan memasuki tahun ke dua. 1 ekor sapi jantan yang telah genap berusia satu tahun dan memasuki tahun ke dua dan 1 ekor sapi betina yang telah genap berusia dua tahun dan memasuki tahun ke tiga. 2 ekor sapi betina yang telah genap berusia dua tahun dan memasuki tahun ke tiga. 3 ekor sapi jantan yang telah genap berusia satu tahun dan memasuki tahun ke dua 2 ekor sapi jantan yang telah genap berusia satu tahun dan memasuki tahun ke dua dan 1 ekor sapi betina yang telah genap berusia dua tahun dan memasuki tahun ke tiga. Untuk jumlah sapi di atas 100 ekor, setiap 30 ekor mengeluarkan zakat sebesar 1 ekor sapi betina yang telah genap berusia satu tahun dan memasuki tahun ke dua dan setiap 40 ekor mengeluarkan zakat sebesar 1 ekor sapi betina yang telah genap berusia dua tahun dan memasuki tahun ke tiga.
3. Zakat Kambing Tabel 3 Zakat Binatang Kambing Jumlah kambing Jumlah zakat yang dikeluarkan 40-120 1 ekor kambing 121-200 2 ekor kambing 201-399 3 ekor kambing 400-499 4 ekor kambing 500-599 5 ekor kambing 5. Zakat Barang Temuan Menurut para Ulama, yang dimaksud dengan barang temuan (rikaz) adalah harta pendaman jahiliyah, termasuk dalam kategori ini adalah barang yang ditemukan di atas permukaan bumi. Menurut mazhab Syafi i, zakat yang harus dikeluarkan dari rikaz sebesar 20% dan dalam rikaz tidak ada syarat nishab. 6. Zakat Profesi Zakat profesi nishabnya yaitu sebesar harga emas 85 gr saat ini. Jika penghasilan seseorang telah mencapai nishabnya, maka ia berkewajiban membayar zakat profesinya. Dalam zakat profesi, pembayaran zakatnya dikeluarkan setelah menerima gaji tentunya setelah dipotong hutang serta keperluan primer sehari-hari.
2.4 Microsoft Visual Basic 6.0 Visual Basic adalah salah satu bahasa pemrograman komputer. Bahasa pemrograman adalah perintah-perintah yang dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. Bahasa pemrograman Visual Basic, yang dikembangkan oleh Microsoft sejak tahun 1991, merupakan pengembangan dari pendahulunya yaitu bahasa pemrograman BASIC (Beginner s All-purpose Symbolic Instruction Code) yang dikembangkan pada era 1950-an. Visual Basic merupakan salah satu Development Tool yaitu alat bantu untuk membuat berbagai macam program komputer, khususnya yang menggunakan sistem operasi Windows. Visual Basic merupakan salah satu bahasa pemrograman komputer yang mendukung object (Object Oriented Programming = OOP). 2.4.1 Keunggulan Microsoft Visual Basic 6.0 Microsoft Visual Basic 6.0 merupakan pengembangan dari versi pertamanya pada tahun 1991. Keunggulan yang dimiliki Microsoft Visual Basic 6.0 adalah sebagai berikut: 1. Memiliki kompiler yang dapat menghasilkan output file executable (.exe). 2. Kemampuan membuat ActiveX dan fasilitas internet yang lebih banyak. 3. Memiliki beberapa tambahan sarana wizard yang lebih lengkap. 4. Membuat flat form pembuatan program yang diberi nama developer studio. 5. Penambahan control baru yang lebih canggih serta peningkatan kaidah struktur bahasa Microsoft Visual Basic 6.0.
2.4.2 Mengenal Integrated Development Environment (IDE) VB 6.0 Untuk dapat menggunakan fasilitas dalam Microsoft Visual Basic 6.0 dengan baik, akan sangat penting untuk mengetahui IDE (Integrated Development Environment) atau lingkungan kerja Microsoft Visual Basic 6.0 itu sendiri. Tampilan fasilitas-fasilitas atau IDE Microsoft Visual Basic 6.0 yang berisi komponenkomponen dapat dilihat pada Gambar 1.3 berikut ini: Gambar 1.3 Interface Microsoft Visual Basic 6.0