Rekayasa Perangkat Lunak (RPL) secara umum disepakati sebagai
terjemahan dari istilah Software Engineering. Istilah Software Engineering
mulai dipopulerkan pada tahun 1968 pada Software Engineering Conference yang
diselenggarakan oleh NATO. Sebagian orang mengartikan RPL hanya sebatas pada
bagaimana membuat program komputer. Padahal ada perbedaan yang mendasar antara
perangkat lunak (software) dan program komputer.
Perangkat lunak adalah seluruh
perintah yang digunakan untuk memproses informasi. Perangkat lunak dapat berupa
program atau prosedur. Program adalah kumpulan perintah yang dimengerti oleh
komputer sedangkan prosedur adalah perintah yang dibutuhkan oleh pengguna dalam
memproses informasi (O’Brien, 1999).
Pengertian RPL sendiri adalah
suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai
dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari
kebutuhan pengguna, disain, pengkodean, pengujian sampai pemeliharaan sistem
setelah digunakan. Dari pengertian ini jelaslah bahwa RPL tidak hanya
berhubungan dengan cara pembuatan program komputer. Pernyataan ”semua aspek
produksi” pada pengertian di atas, mempunyai arti semnua hal yang berhubungan
dengan proses produksi seperti manajemen proyek, penentuan personil, anggaran
biaya, metode, jadwal, kualitas sampai dengan pelatihan pengguna merupakan
bagian dari RPL.
Secara umum tujuan
RPL tidak berbeda dengan bidang rekayasa yang lain. Bidang rekayasa akan selalu
berusaha menghasilkan output yang kinerjanya tinggi, biaya rendah dan waktu
penyelesaian yang tepat. Secara lebih khusus kita dapat menyatakan tujuan RPL
adalah:
- memperoleh biaya produksi perangkat lunak yang rendah
- menghasilkan pereangkat lunak yang kinerjanya tinggi, andal dan tepat waktu
- menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform
- menghasilkan perangkat lunak yang biaya perawatannya rendah
-
software
Requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat
lunak
- software
desain mencakup proses penampilan arsitektur, komponen, antar muka, dan
karakteristik lain dari perangkat lunak
- software
construction berhubungan dengan detail pengembangan perangkat lunak, termasuk
algoritma, pengkodean, pengujian dan pencarian kesalahan
-
software
testing meliputi pengujian pada keseluruhan perilaku perangkat lunak
-
software
maintenance mencakup upaya-upaya perawatan ketika perangkat lunak telah
dioperasikan
-
software
configuration management berhubungan dengan usaha perubahan konfigurasi perangkat
lunak untuk memenuhi kebutuhan tertentu
-
software
engineering management berkaitan dengan pengelolaan dan pengukuran RPL,
termasuk perencanaan proyek perangkat lunak
-
software engineering tools and
methods mencakup kajian teoritis tentang alat bantu dan metode RPL
-
software engineering process
berhubungan dengan definisi, implementasi pengukuran, pengelolaan, perubahan
dan perbaikan proses RPL
-
software quality menitik
beratkan pada kualitas dan daur hidup perangkat lunak
Meskipun baru dicetuskan pada
tahun 1968, namun RPL telah memiliki sejarah yang cukup yang panjang. Dari sisi
disiplin ilmu, RPL masih reklatif muda dan akan terus berkembang.
Arah perkembangan yang saat
ini sedang dikembangkan antara lain meliputi :
Tahun
|
Kejadian
|
1940an
|
Komputer pertama yang membolehkan pengguna menulis kode program langsung
|
1950an
|
Generasi awal interpreter dan bahasa macro Generasi pertama compiler
|
1960an
|
Generasi kedua compiler Komputer mainframe mulai dikomersialkan Pengembangan
perangkat lunak pesanan
Konsep Software Engineering mulai digunakan
|
1970an
|
Perangkat pengembang perangkat lunak Perangkat minicomputer komersial
|
1980an
|
Perangkat Komputer Personal (PC) komersial Peningkatan permintaan perangkat lunak
|
1990an
|
Pemrograman berorientasi obyek (OOP) Agile Process dan Extreme Programming Peningkatan drastis kapasitas memori Peningkatan penggunaan internet
|
2000an
|
Platform interpreter modern (Java, .Net, PHP, dll) Outsourcing
|
Rekayasa Perangkat Lunak (PPT)
Rekayasa Perangkat Lunak (DOC)
Sumber : irfante06.blog.unsoed.ac.id/files/2009/06/tugas-1-rpl.doc