Pembahasan dan diskusi mengenai rekayasa perangkat lunak merupakan upaya untuk memperoleh perangkat lunak secara ekonomis yang reliabel dan bekerja secara efisien pada perangkat keras komputer. Dari segi pelanggan, rekayasa perangkat lunak dimaksudkan untuk memberikan kepuasan kepada pelanggan dan penyampaian produk tepat waktu.
Terdapat beberapa definisi rekayasa perangkat lunak, antara lain sebagai berikut :
- Salah satu bidang ilmu yang mendalami cara-cara pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen organisasi perangkat lunak.
- Aplikasi dari suatu pendekatan kuantifiabel, disiplin dan sistematis dalam pengembangan, operasi dan pemeliharaan sistem perangkat lunak.
- Studi tentang pedekatan-pendekatan dalam pengembangan, operasi dan pemeliharaan sistem perangkat lunak.
Rekayasa mencakup :
¤ analisis,
¤ desain,
¤ konstruksi,
¤ verifikasi,
¤ manajemen
¤ desain,
¤ konstruksi,
¤ verifikasi,
¤ manajemen
Secara umum
dalam rekayasa kita akan dihadapkan persoalan-persoalan berikut :
¤ Persoalan yang akan dipecahkan
¤ Karakteristik entitas persoalan untuk mencari solusi
¤ Pendekatan dalam menemukan kesalahan-kesalahan yang dibuat didalam desain dan konstruksi
¤ Menyangga hasil rekayasa selama proses adaptasi, selama proses koreksi, serta ketika diperlukan perbaikan
¤ Karakteristik entitas persoalan untuk mencari solusi
¤ Pendekatan dalam menemukan kesalahan-kesalahan yang dibuat didalam desain dan konstruksi
¤ Menyangga hasil rekayasa selama proses adaptasi, selama proses koreksi, serta ketika diperlukan perbaikan
Tedapat 3 fase umum dalam rekayasa perangkat lunak :
¤ Fase definisi
¤ Fase pengembangan
¤ Fase pemeliharaan
¤ Fase pengembangan
¤ Fase pemeliharaan
1.
Fase
Definisi
Berfokus pada “apa” (what); dimana pada
definisi ini pengembang perangkat lunak harus mengidentifikasi informasi apa
yang akan diproses, fungsi dan untuk kerja apa yang
dibutuhkan, tingkah laku sistem seperti apa yang
diharapkan, interface apa yang akan dibangun, batasan desain apa yang ada, dan
kriteria validasi apa yang dibutuhkan untuk mendefinisikan sistem yang sukses.
Kebutuhan (requirement) kunci dari sistem dan perangkat lunak yang
didefinisikan.
Metode yang diaplikasikan selama fase definisi berbeda, tergantung pada paradigma rekayasa perangkat lunak (atau kombinasi paradigma) yang diaplikasikan. Ada tiga tugas utama yang berada dalam bentuk yang sama; sistem atau rekayasa informasi, perencanaan proyek perangkat lunak, serta analisis kebutuhan.
Metode yang diaplikasikan selama fase definisi berbeda, tergantung pada paradigma rekayasa perangkat lunak (atau kombinasi paradigma) yang diaplikasikan. Ada tiga tugas utama yang berada dalam bentuk yang sama; sistem atau rekayasa informasi, perencanaan proyek perangkat lunak, serta analisis kebutuhan.
2.
Fase
Pengembangan
Berfokus pada how (bagaimana), yaitu
dimana selama masa pengembangan perangkat lunak, teknisi harus mendefinisikan
bagaimana data dikonstruksikan, bagaimana fungsi-fungsi diimplementasikan
sebagai sebuah arsitektur perangkat lunak, bagaimana detail prosedur akan diimplementasikan,
bagaimana interface ditandai (dikarakterisasi), bagaimana rancangan akan diterjemahkan
ke dalam bahasa pemrograman (atau bahasa non prosedural), serta bagaimana pengujian
akan dilakukan. Metode-metode yang diaplikasikan selama masa pengembangan
program akan bervariasi, tetapi ada tiga tugas teknis yang khusus yang harus
selalu ada; rancangan perangkat lunak, pemunculan kode,dan pengujian perangkat
lunak.
3. Fase
Pemeliharaan.
Berfokus pada perubahan (change), yang
dihubungkan dengan koreksi kesalahan,
penyesuaian yang dibutuhkan ketika lingkungan perangkat lunak berkembang, serta perubahan sehubungan dengan perkembangan yang disebabkan oleh perubahan kebutuhan pelanggan. Fase pemeliharaan mengaplikasikan lagi langkah-langkah pada fase definisi dan fase pengembangan, tetapi semuanya tetap tergantung pada konteks perangkat lunak yang ada.
penyesuaian yang dibutuhkan ketika lingkungan perangkat lunak berkembang, serta perubahan sehubungan dengan perkembangan yang disebabkan oleh perubahan kebutuhan pelanggan. Fase pemeliharaan mengaplikasikan lagi langkah-langkah pada fase definisi dan fase pengembangan, tetapi semuanya tetap tergantung pada konteks perangkat lunak yang ada.
Ada empat tipe perubahan yang terjadi
selama masa fase pengembangan, yaitu :
¤ Koreksi
¤ Adaptasi
¤ Perkembangan
¤ Pencegahan
A. Koreksi
Meskipun dengan jaminan kualitas yang terbaik, sepertinya
pelanggan akan tetap menemukan cacat pada perangkat lunak. Pemeliharaan
korektif (Corrective maintenance) mengubah perangkat lunak, membetulkan cacat
atau kerusakan.
B. Adaptasi
Dari waktu
ke waktu, lingkungan original (contohnya CPU, sistem operasi, aturan-aturan bisnis,
karakteristik produk eksternal) dimana perangkat lunak dikembangkan akan terus
berubah. Pemeliharaan adaptif (Adaptif maintenance) menghasilkan modifikasi
kepada perangkat lunak untuk mengakomodasi perubahan pada kebutuhan fungsional
original.
C. Perkembangan (Enhancement)
Ketika
perangkat lunak dipakai, pemakai/pelanggan akan mengenali fungsi-fungsi
tambahan yang memberi mereka keuntungan. Perfective maintenance memperluas
perangkat lunak sehingga melampaui kebutuhan fungsi originalnya.
D. Pencegahan
Keadaan
perangkat lunak semakin memburuk sehubungan dengan waktu, dan karena itu, preventive
maintenance yang sering juga disebut Rekayasa perangkat lunak, harus dilakukan
untuk memungkinkan perangkat lunak melayani kebutuhan para pemakainya. Pada
dasarnya preventive maintenance melakukan perubahan pada program komputer
sehingga bisa menjadi lebih mudah untuk dikoreksi,disesuaikan, dan
dikembangkan.
Sekarang, aging software plant memaksa banyak perusahaan untuk mengikuti strategi rekayasa perangkat lunak. Secara global, rekayasa perangkat lunak sering dianggap sebagai bagian dari perekayasaan ulang proses bisnis.
Sekarang, aging software plant memaksa banyak perusahaan untuk mengikuti strategi rekayasa perangkat lunak. Secara global, rekayasa perangkat lunak sering dianggap sebagai bagian dari perekayasaan ulang proses bisnis.
Fase dan langkah-langkah yang
berhubungan, seperti yang digambarkan pada padangan umum kita tentang rekayasa
perangkat lunak, harus diimbangi dengan sejumlah aktifitas pelindung, yang
meliputi :
1. kontrol dan pelacakan proyek
perangkat lunak.
2. Review teknis formal.
3. Jaminan kualitas perangkat lunak.
4. Manajemen konfigurasi perangkat lunak.
5. Penghasilan dan penyiapan dokumen.
6. Manajemen reusabilitas.
7. Pengukuran.
8. Manajemen resiko.
2. Review teknis formal.
3. Jaminan kualitas perangkat lunak.
4. Manajemen konfigurasi perangkat lunak.
5. Penghasilan dan penyiapan dokumen.
6. Manajemen reusabilitas.
7. Pengukuran.
8. Manajemen resiko.
No comments:
Post a Comment