Rekayasa perangkat lunak
Rekayasa perangkat lunak telah berkembang sejak pertama kali diciptakan
pada tahun 1940-an hingga kini. Fokus utama pengembangannya adalah untuk
mengembangkan praktik dan teknologi untuk meningkatkan produktivitas
para praktisi pengembang perangkat lunak dan kualitas aplikasi yang
dapat digunakan oleh pemakai.
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.
pengertian dan tujuan RPL
Pengertiaan dan Definisi
Menurut Wikipedia :
Rekayasa perangkat lunak adalah satu bidang profesi yang mendalami
cara-cara pengembangan perangkat lunak termasuk pembuatan,
pemeliharaan, manajemen organisasi pengembanganan perangkat lunak dan
manajemen kualitas.
Menurut IEEE Computer Society : 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.
Menurut IEEE Computer Society : 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.
Dari beberapa definisi dan
penjelasan diatas ada beberapa kategori dari suatu rekayasa perangkat lunak
yaitu :
1. Maintainability yang artinya
perangkat lunak dapat terus dirawat dan dipelihara.
Pengertian lain dari
maintainability adalah suatu usaha yang diperlukan untuk menemukan dan
memperbaiki kesalahan dalam perangkat lunak. maintanability diperlukan untuk
pemeliharaan perangkat lunak dimana setelah dikembangkan dan diimplementasikan
terdapat beberapa hal yang perlu diperbaiki berdasarkan hasil ujicoba maupun
evaluasi. Suatu perangkat lunak yang baik dikatakan maintainability dapat
dengan mudah direvisi apabila diperlukan.
2. Dependability yang artinya
perangkat lunak dapat mengikuti perkembangan teknologi.
Dependability maksudnya suatu
perangkat lunak dapat diandalkan dan mengikuti perkembangan, secara kasarnya
dependability itu maksudnya adalah kepercayaan konsumen terhadap suatu
perangkat lunak. Sebenarnya
dependability itu sendiri tergantung dari beberapa faktor diantaranya
availability (ketersediaan sistem pada setiap waktu diperlukan oleh sistem) ,
reliability (kecenderungan sistem gagal dalam melaksanakan perintah),
security(bagian dari sistem yang mencerminkan kemampuan untuk berjalan secara
normal tanpa menyebabkan resiko bagi pengguna) dan safety(berkaitan dengan
kehandalan sistem dalam menangkal ancaman dari luar sistem).
3. Robust yang artinya perangkat
lunak dapat mengikuti keinginan pengguna.
Maksud dari robust perangkat
lunak adalah kinerja atau hasil yang diharapkan meskipun dalam kondisi yang
tidak ideal seperti adanya gangguan yang tidak terkendali yang dapat
mempengaruhi kinerja perangkat lunak.
4. efektif dan efisien dalam
menggunakan energi dan penggunaannya
suatu perangkat lunak dikatakan
efektif dan efisien artinya pengguna tidak harus melakukan proses yang
berulang-ulang hanya untuk menghasilkan beberapa output yang diinginkan.
5. Usability yang artinya dapat
memenuhi kebutuhan yang diinginkan
Usability adalah tingkat kualitas
dari perangkat lunak yang mudah dipelajari, mudah digunakan dan mendorong
pengguna untuk menggunakan perangkat lunak sebagai alat bantu positif dalam
menyelesaikan tugas. Usability adalah suatu ukuran, dimana pengguna dapat
mengakses fungsionalitas dari sebuah perangkat lunak dengan efektif, efisien
dan memuaskan dalam mencapai tujuan tertentu
Tujuan Rekayasa Perangkat Lunak
Secara lebih khusus kita dapat menyatakan tujuan dan Rekaya Perangkat Lunak ini adalah:
- Memperoleh biaya produksi perangkat lunak yang rendah.
- Menghasilkan pereangkat lunak yang kinerjanya tinggi, andal dan tepat waktu
- Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis platform
- Menghasilkan perangkat lunak yang biaya perawatannya rendah
Kriteria Dalam Merekayasa Perangkat Lunak
- Dapat terus dirawat dan dipelihara (maintainability)
- Dapat mengikuti perkembangan teknologi (dependability)
- Dapat mengikuti keinginan pengguna (robust).
- Efektif dan efisien dalam menggunakan energi dan penggunaannya.
- Dapat memenuhi kebutuhan yang diinginkan (usability).
Ruang Lingkup Rekayasa Perangkat Lunak
- Software Requirements berhubungan dengan spesifikasi kebutuhan dan persyaratan perangkat lunak.
- Software desain mencakup proses penampilan arsitektur, komponen, antar muka, dan karakteristik lain dari perangkat lunak.
- Software construction berhubungan dengan detail 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.
Rekayasa Perangkat Lunak dan Disiplin Ilmu Lain
Cakupan ruang lingkup yang cukup luas, membuat RPL sangat terkait dengan
disiplin dengan bidang ilmu lain. tidak saja sub bidang dalam disiplin
ilmu komputer namun dengan beberapa disiplin ilmu lain diluar ilmu
komputer.
![]() |
Keterkaitan RPL dengan bidang ilmu lain |
- Bidang ilmu manajemen meliputi akuntansi, 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 keandalan, perbaikan kualitas, dan metode-metode kuantitatif.
Tidak ada komentar:
Posting Komentar