SEJARAH DAN DEFINISI RPL

Sejarah Rekayasa Perangkat Lunak

Rekayasa perangkat lunak telah berkembang sejak pertama kali diciptakan pada tahun 1940-an hingga kini. Fokus utama pengembangannya adalah untuk mengembangkan praktek dan teknologi untuk meningkatkan produktivitas para praktisi pengembang perangkat lunak dan kualitas aplikasi yang dapat digunakan oleh pemakai.

Istilah software engineering digunakan pertama kali pada akhir 1950-an dan awal 1960-an. Saat itu, masih terdapat perdebatan tajam mengenai aspek engineering dari pengembangan perangkat lunak. Pada tahun 1968 dan 1969, komite sains NATO mensponsori dua konferensi tentang rekayasa perangkat lunak, yang memberikan dampak kuat terhadap pengembangan rekayasa perangkat lunak. Banyak yang menganggap dua konferensi inilah yang menandai awal resmi profesi rekayasa perangkat lunak.

Pada tahun 1960-an hingga 1980-an, banyak masalah yang ditemukan para praktisi pengembangan perangkat lunak. Banyak project yang gagal, hingga masa ini disebut sebagai krisis perangkat lunak. Kasus kegagalan pengembangan perangkat lunak terjadi mulai dari project yang melebihi anggaran, hingga kasus yang mengakibatkan kerusakan fisik dan kematian. Salah satu kasus yang terkenal antara lain meledaknya roket Ariane akibat kegagalan perangkat lunak.

Selama bertahun-tahun, para peneliti memfokuskan usahanya untuk menemukan teknik jitu untuk memecahkan masalah krisis perangkat lunak. Berbagai teknik, metode, alat, proses diciptakan dan diklaim sebagai senjata pamungkas untuk memecahkan kasus ini. Mulai dari pemrograman terstruktur, pemrograman berorientasi objek, perangkat pembantu pengembangan perangkat lunak (CASE tools), berbagai standar, UML hingga metode formal dipakai sebagai senjata pamungkas untuk menghasilkan software yang benar, sesuai anggaran dan tepat waktu.

Pada tahun 1987, Fred Brooks menulis artikel No Silver Bullet, yang berproposisi bahwa tidak ada satu teknologi atau praktek yang sanggup mencapai 10 kali lipat perbaikan dalam produktivitas pengembanan perangkat lunak dalam tempo 10 tahun.

Sebagian berpendapat, No Silver Bullet berarti profesi rekayasa perangkat lunak dianggap telah gagal. Namun sebagian yang lain justru beranggapan, hal ini menandakan bahwa bidang profesi rekayasa perangkat lunak telah cukup matang, karena dalam bidang profesi lainnya pun tidak ada teknik pamungkas yang dapat digunakan dalam berbagai kondisi.

Pengertian Dasar Tentang Rekayasa Perangkat Lunak

Pengertian rekayasa perangkat lunak menurut “Institute of Electrical and Electronics Engineers (IEEE)” pada tahun 1990: Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system.

Maksudnya : Perangkat lunak merupakan kumpulan dari program, prosedur, dan dokumen data lain yang saling berhubungan yang merepresentasikan masalah di dunia nyata yang dikonfigurasikan dalam sebuah bentuk aplikasi yang harus dikerjakan komputer .

Definisi klasik RPL pada tahun 1969 : “The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.”

Maksudnya : Penciptaan dan penggunaan prinsip teknik untuk memperoleh perangkat lunak yang ekonomis, handal dan bekerja efisien pada komputer.

Definisi RPL menurut “Institute of Electrical and Electronics Engineers (IEEE)” pada tahun 1993 : Software Engineering: (1) The application of a systematic, disciplines, quantifiable approach to the development, operation, and maintenance of software; that is the application of engineering to software. (2) The study of approaches as in (1).

Maksudnya : (1) Rekayasa perangkat lunak adalah penerapan secara sistematis, disiplin, pendekatan terukur pada pengembangan, pengoperasian dan pemeliharaan software. (2) Penelitian pendekatan seperti dalam (1).

Dapat disimpulkan definisi rekayasa perangkat lunak (RPL) atau software engineering (SE) adalah suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Perangkat lunak yang dibuat harus mampu :

  • · Tepat waktu
  • · Tepat anggaran
  • · Meningkatkan kinerja
  • · Mengoperasikan prosedur sistem dengan benar

Terdapat perbedaan antara rekayasa sistem (RS) dengan rekayasa perangkat lunak (RPL). Jika RS berkaitan dengan semua aspek dalam pembangunan sistem berbasis komputer termasuk hardware, rekayasa PL dan proses. Sedangkan RPL adalah bagian dari rekayasa sistem yang meliputi pembangunan PL, infrasktruktur, kontrol, aplikasi dan database pada sistem.