SEJARAH PERKEMBANGAN 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.
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.
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.
elama
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
praktek 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.
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
|
I. METODE REKAYASA PERANGKAT LUNAK
Pada rekayasa perangkat
lunak, banyak model yang telah dikembangkan untuk membantu proses
pengembangan perangkat lunak. Model-model ini pada umumnya mengacu pada
model proses pengembangan sistem yang disebut System
Development Life Cycle (SDLC) seperti terlihat pada Gambar
berikut ini.
- Kebutuhan
terhadap definisi masalah yang jelas. Input
utama dari setiap model pengembangan perangkat lunak adalah
pendefinisian masalah yang jelas. Semakin
jelas akan semakin baik karena akan memudahkan dalam penyelesaian
masalah. Oleh karena itu pemahaman masalah
seperti dijelaskan pada Bab 1, merupakan bagian penting dari model
pengembangan perangkat lunak.
- Tahapan-tahapan pengembangan yang teratur. Meskipun model-model pengembangan perangkat
lunak memiliki pola yang berbeda-beda, biasanya model-model
tersebut mengikuti pola umum analysis – design –
coding – testing - maintenance
- Stakeholder berperan sangat penting dalam
keseluruhan tahapan pengembangan. Stakeholder
dalam rekayasa perangkat lunak dapat berupa pengguna, pemilik,
pengembang, pemrogram dan orang-orang yang terlibat dalam rekayasa
perangkat lunak tersebut.
- Dokumentasi merupakan bagian penting dari
pengembangan perangkat lunak. Masing-masing
tahapan dalam model biasanya menghasilkan sejumlah tulisan,
diagram, gambar atau bentuk-bentuk lain yang harus didokumentasi
dan merupakan bagian tak terpisahkan dari perangkat lunak yang
dihasilkan.
- Keluaran dari proses pengembangan perangkat lunak harus bernilai ekonomis. Nilai dari sebuah perangkat lunak sebenarnya agak susah di-rupiah-kan. Namun efek dari penggunaan perangkat lunak yang telah dikembangkan haruslah memberi nilai tambah bagi organisasi. Hal ini dapat berupa penurunan biaya operasi, efisiensi penggunaan sumberdaya, peningkatan keuntungan organisasi, peningkatan “image” organisasi dan lain-lain
assalamulaikum
ReplyDelete