Rekayasa Perangkat Lunak
(Software Engineering)
RPL, atau
dalam bahasa
Inggris: Software Engineering atau SE)
adalah satu bidang profesi yang mendalami cara-cara pengembangan perangkat lunak termasuk
pembuatan, pemeliharaan, manajemen organisasi pengembanganan perangkat lunak
dan manajemen kualitas.
IEEE Computer
Society mendefinisikan
rekayasa perangkat lunak sebagai penerapan suatu pendekatan yang sistematis,
disiplin dan terkuantifikasi atas pengembangan, penggunaan dan pemeliharaan
perangkat lunak, serta studi atas pendekatan-pendekatan ini, yaitu penerapan
pendekatan engineering atas perangkat lunak.
rekayasa perangkat lunak adalah
pengubahan perangkat lunak itu sendiri guna mengembangkan, memelihara, dan
membangun kembali dengan menggunakan prinsip reakayasa untuk menghasilkan
perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk pengguna.
kriteria yang
dapat digunakan sebagai acuan dalam merekayasa perangkat lunak:
1. dapat terus
dirawat dan dipelihara(maintainability)
2. dapat
mengikuti perkembangan teknologi(dependability)
3. dapat
mengikuti keinginan pengguna(robust)
4. efektif dan
efisien dalam menggunakan energi dan penggunaannya
5. dapat
memenuhi kebutuhan yang diinginkan(usability)
Istilah software
engineering, pertama kali digunakan pada akhir tahun 1950-an dan sekitar
awal 1960-an. Pada tahun 1968, NATO menyelenggarakan
konferensi tentang software engineering di Jerman dan kemudian
dilanjutkan pada tahun 1969. Meski penggunaan kata software engineering masukan
konferensi tersebut menimbulkan debat tajam tentang aspek engineering dari
pengembangan perangkat
lunak, banyak pihak yang menganggap konferensi tersebutlah yang
menjadi awal tumbuhnya profesi rekayasa perangkat lunak
Rekayasa
Perangkat Lunak Di indonesia dijadikan disiplin ilmu yang dipelajari mulai
tingkat Sekolah
Menengah Kejuruan sampai tingkatan Perguruan Tinggi. Di
tingkat SMK, jurusan ini sudah memiliki kurikulum materi pelajaran sendiri yang
sudah ditentukan oleh Dinas Pendidikan. Rekayasa Perangkat Lunak Di tingkat SMK
biasanya mempelajari materi materi seperti Bahasa
Pemrograman, Desain Web, Pengetahuan tetang Undang
Undang HAKI dan ITE, dan sebagainya, tergantung dari sekolah dan kurikulum tiap
tahunnya.