Perangkat Lunak (PL) atau software adalah suatu benda yang dapat kita lihat dan kita gunakan di dalam komputer atau perangkat-perangkat sejenisnya. Berarti Rekayasa Perangkat Lunak (software engineering) adalah ilmu yang mempelajari bagaimana mengutak-atik perangkat lunak yang ada di dalam komputer tersebut, mulai dari membuatnya, menggunakannya hingga memeliharanya. Untuk memahami ilmu RPL, khususnya dalam membuat sebuah PL, dapat kita analogikan seperti saat kita membuat sebuah gedung. Yups, Pembangunan PL dan Pembangunan Gedung.
Apa saja yang ada dalam pembangunan sebuah gedung?
Mulai dari ketua proyeknya, arsitek gedung, orang teknik sipil, teknik material, hingga tukang bangunan atau kulinya. Pengguna gedung tersebut juga termasuk di dalamnya.
Sama halnya di dalam pembangunan PL. Di sini juga ada ketua proyek pembangunan perangkat lunak (Project Leader), ia memimpin keseluruhan dari pelaksanaan pembangunan perangkat lunak. Dalam RPL juga ada arsiteknya perangkat lunak (Analyst), ia menganalisis, bagaimana seharusnya PL-nya nanti. Ia juga yang berkonsultasi dengan para pengguna (User) PL seperti apa sih yang mereka inginkan. Setelah ditentukan kebutuhan penggunanya, maka ada lagi arsitek perangkat lunak (Designer) yang akan membuat gambar rancangan dari PL yang akan dibangun, untuk nanti diserahkan kepada orang teknik sipilnya perangkat lunak.
Selanjutnya ada teknik sipilnya perangkat lunak, ia akan mengolah rancangan yang diperoleh dari arsitek untuk menentukan spesifikasi dari PL yang akan diimplementasikan agar pembangunan PL dapat berjalan dengan baik namun tetap sesuai dengan kebutuhan pengguna. Bekerja sama dengan orang teknik materialnya perangkat lunak, mereka menentukan pula material-material apa saja, teknologi apa saja yang akan digunakan. Setelah analisis dan perancangan perangkat lunak ini memperoleh hasil, rancangan dan spesifikasi ini diserahkan kepada tukang bangunan atau kulinya perangkat lunak.
Sang tukang bangunan perangkat lunak (Programmer) akan menyusun PL mulai dari pondasinya, kerangkanya, menyusun bata per batanya serta memoles tampilan PL hingga jadilah sebuah gedung perangkat lunak yang tidak hanya cantik, tapi juga bermanfaat dan nyaman digunakan. Menguji apakah PL sudah terlihat menarik, berguna dan mudah digunakan adalah tugas dari pegawai kelayakan bangunan perangkat lunak pada tahap pengujian (Tester). Penguna perangkat lunak juga harus dilibatkan karena ia yang akan menggunakan perangkat lunak ini.
Itu dia (kasaran) beberapa tahapan yang perlu dilakukan dalam pembangunan perangkat lunak selain kemudian ada tahapan pemeliharaan agar perangkat lunak dapat digunakan dalam jangka waktu yang lama. Oleh karena itu kita perlu mempelajari ilmu RPL agar kita dapat membuat PL yang tidak hanya benar namun juga baik prosesnya sehingga menghasilkan PL yang baik pula produknya. InsyaAllah.