BAB II
LANDASAN TEORI
2.1. Perangkat Lunak
Menurut Pressman 2002:10, definisi perangkat lunak ada 3, yaitu : 1.
Perintah program komputer yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang diinginkan.
2. Struktur data yang memungkinkan program memanipulasi informasi secara
proporsional. 3.
Dokumen yang menggambarkan operasi dan kegunaan program.
2.1.1. Pengertian Rekayasa Perangkat Lunak
Saat ini rekayasa perangkat lunak telah berkembang dengan cepat seiring dengan pengembang perangkat lunak yang ada, yang secara
berkelanjutan terus berusaha mengembangkan teknologi yang dapat membuat perangkat lunak tersebut untuk bergerak lebih cepat, mudah, dan murah
untuk dikembangkan. Rekayasa
perangkat lunak
adalah sebuah
disiplin yang
mengintegrasikan proses, metode, dan alat-alat bantu bagi perkembangan proses perangkat lunak komputer. Pressman, 2002:59
2.1.2. Model Rekayasa Perangkat Lunak
Ada beberapa pilihan model rekayasa perangkat lunak, salah satunya adalah model Waterfall. Pemberian nama Waterfall dikarenakan adanya
tahapan demi tahapan yang harus dilalui, dimana tahapan selanjutnya baru bisa dilakukan apabila tahapan sebelumnya sudah selesai dan tiap-tiap
tahapan ini harus berjalan secara berurutan. Pressman, 2001:28-30 Menurut Pressman 2005:79 model ini bisa juga disebut dengan
classic life cycle. Model ini membutuhkan pendekatan sistematis dan sekuensial dalam pengembangan perangkat lunak, dimulai dari tingkat sistem
dan kemajuan melalui analisis, desain, coding, testing dan pemeliharaan.
Gambar 2.1. Tahapan Waterfall Sumber : Pressman, 2005:79
Menurut Pressman 2005:79-83, pemodelan ini menyangkut aktivitas berikut :
1. Rekayasa dan Pemodelan SystemInformation Engineering and
Modeling . Karena perangkat lunak adalah bagian dari sistem yang lebih
besar, pekerjaan dimulai dari pembentukan kebutuhan-kebutuhan dari semua elemen sistem dan mengalokasikan suatu subset ke dalam
pembentukan perangkat lunak. Hal ini penting, ketika perangkat lunak harus berkomunikasi dengan hardware, orang dan basis data. Rekayasa
dan pemodelan sistem menekankan pada pengumpulan kebutuhan pada level sistem dengan sedikit perancangan dan analisis. Tahap ini juga
kadang disebut dengan Project Definition. 2.
Analisis Kebutuhan Software Requirements Analysis. Proses pengumpulan kebutuhan diintensifkan ke perangkat lunak. Harus dapat
dibentuk domain informasi, fungsi yang dibutuhkan, kinerja dan antarmuka. Hasilnya harus didokumentasikan dan di-review ke
pelanggan. 3.
Design Desain. Proses desain mengubah kebutuhan-kebutuhan menjadi bentuk karakteristik yang dimengerti perangkat lunak sebelum dimulai
penulisan program. Desain ini harus didokumentasikan dengan baik dan menjadi bagian konfigurasi perangkat lunak.
4. Coding Penulisan Program. Desain tadi harus diubah menjadi bentuk
yang dimengerti oleh komputer. Maka dilakukan langkah penulisan program. Jika desainnya detil, maka coding dapat dicapai secara mekanis.
5. Testing Pengujian. Setelah kode program selesai dibuat, dan program
dapat berjalan, testing dapat dimulai. Testing difokuskan pada logika internal dari perangkat lunak, fungsi eksternal, dan mencari segala
kemungkinan kesalahan. Dan memeriksa apakah sesuai dengan hasil yang diinginkan.
6. SupportMaintenance Pemeliharaan. Perangkat lunak setelah diberikan
pada pelanggan, mungkin dapat ditemui error ketika dijalankan di lingkungan pelanggan. Atau mungkin pelanggan meminta penambahan
fungsi, hal ini menyebabkan faktor maintenance pemeliharaan ini menjadi penting dalam penggunaan model ini. Pemeliharaan ini dapat
berpengaruh pada semua langkah yang dilakukan sebelumnya.
2.2. Interaksi Manusia dan Komputer