1945 - 1965: Awal
Istilah
software engineering digunakan pertama kali pada akhir
1950-an dan awal 1960-an. Saat itu, masih terdapat debat 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 perkembangan rekayasa perangkat lunak. Banyak yang menganggap
bahwa dua konferensi inilah yang menandai awal resmi profesi rekayasa
perangkat lunak. jangan pernah menganggap kalau software itu akn menjadi
yang terbaik karena itu adalah sebuah karya yang bersifat sementara.
1965 - 1985: krisis perangkat lunak
Pada tahun 1960-an hingga 1980-an, banyak masalah yang ditemukan para
praktisi pengembangan perangkat lunak. Banyak projek yang gagal, hingga
masa ini disebut sebagai
krisis perangkat lunak.
Kasus kegagalan pengembangan perangkat lunak terjadi mulai dari projek
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.
1985 - kini: tidak ada senjata pamungkas
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 object, perangkat pembantu
pengembangan perangkat lunak (
CASE tools), berbagai standar,
UML
hingga metode formal diagung-agungkan 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 praktik yang
sanggup mencapai 10 kali lipat perbaikan dalam produktivitas
pengembangan 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.
SEJARAH PERKEMBANGAN PERANGKAT LUNAK
1. PENGERTIAN
RPL secara umum disepakati dari terjemahan Software Engineering yang
mulai populer tahun 1968 pada Software Engineering Conference oleh NATO.
pengertian RPL sendiri yaitu disiplin ilmu yang membahas seluruh aspek
produksi perangkat lunak dari tahap analisa kebutuhan user, menentukan
spesifikasi kebutuhan user, disain pengkodean, pengujian, hingga
kepemeliharaan sistem setelah dipakai. jadi jelas RPL bukan hanya
pembuatan tapi juga semua aspek dalam pembuatan suatu software.
2. TUJUAN REKAYASA PERANGKAT LUNAK
- Memperoleh biaya produksi software yang rendah
- menghasilkan software berkinerja tinggi, handal dan tepat waktu
- menghasilkan software yang dapat bekerja pada berbagai platform
- menghasilkan software dengan biaya perawatan rendah
3. RUANG LINGKUP REKAYASA PERANGKAT LUNAK
(GB 1)
- Software requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak.
- Software design mencakup proses penentuan arsitektur, komponen, antarmuka, dan karakteristik lain dari perangkat lunak.
- Software construction berhubungan dengan detil 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 menitikberatkan pada kualitas dan daur hidup perangkat lunak.
4. RPL dan DISIPLIN ILMU KOMPUTER
Disiplin ilmu komputer lahir awal tahun 1940 yang merupakan integrasi
teori algoritma, logika matematika, dan ditemukannya penyimpanan program
secara elektronik pada komputer.
(GB 2: Klasifikasi disiplin Ilmu Komputem menurut ACM, Denning dan Wikipedia)
5. RPL DISIPLIN ILMU LAIN
(GB 3: Keterkaitan RPL dan ilmu lain)
- Bidang ilmu manajemen meliputi akutansi, finansial, pemasaran,
manajemen operasi, ekonomi, analisis kuantitatif, manajemen sumber daya
manusia, kebijakan dan strategi bisnis.
- Bidang ilmu matematika meliputi aljabar linier, kalkulus, peluang, statistik, analisis numerik dan matematika diskrit.
- Bidang ilmu manajemen proyek meliputi semua hal yang berkaitan dengan
proyek, seperti ruang lingkup proyek, anggaran, tenaga kerja, kualitas,
manajemen resiko, dan penjadwalan proyek.
- Bidang ilmu manajemen kualitas meliputi pengembangan sistem kualitas,
manajemen resiko dan keandalan, perbaikan kualitas, dan metode-metode
kuantitatif.
- Bidang ilmu ergonomika menyangkut hubungan (interaksi) antara manusia dengan komponen-komponen lain dalam sistem komputer.
- Bidang ilmu rekayasa sistem meliputi teori sistem, analisis biaya-keuntungan, pemodelan, simulasi, proses dan operasi bisnis.
6. PERKEMBANGAN REKAYASA PERANGKAT LUNAK (RPL)
- 1940an
Komputer pertama yang membolehkan pengguna menulis kode program langsung
- 1950an
Generasi awal interpreter dan bahasa macro
Generasi pertama compiler
Generasi kedua compiler
- 1960an
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
7. PROFESI DAN SERTIFIKASI
Profesi sebagai software engineer mungkin asing ditelinga anda termasuk
anda karena kerancuan istilah RPL tadi. sertifikasi kopetensi RPL
sampai sekarang masih menjadi perdebatan dalam industri software karena
menuntut hal yang spesifik untuk software tertentu. ACM (association
for computing machinery) pernah membuat sertifikasi untuk program
software engineer tahun 1980an tapi dihentikan karena kurang peminat.
IEEE sudah mengeluarkan lebih dari 500 sertifikat profesi RPL. di
Canada telah keluar sertifikat legal untuk RPL yang disebut ISP
(Information System Professional)
Saat ini, sertifikasi untuk RPL di Indonesia juga belum tersedia, namun
telah disusun Standar Kompetensi Kerja Nasional Indonesia untuk Bidang
Programmer Komputer. Meskipun belum memenuhi cakupan bidang RPL secara
keseluruhan, namun paling tidak dapat digunakan sebagai pendekatan
sertifikasi bidang RPL.
Tidak ada komentar:
Posting Komentar