Professional Documents
Culture Documents
MATERI
“REKAYASA
PERANGKAT
LUNAK”
DOSEN : Wawan Hermawansyah, S.Kom., MM.Si., IT-Il
Rekayasa Perangkat Lunak adalah disiplin ilmu yang membahas semua aspek
produksi perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna,
menentukan spesifikasi dari kebutuhan pengguna, desain, pengkodean, pengujian,
sampai pemeliharaan sistem setelah digunakan.
Perangkat Lunak adalah sekelompok item atau objek yang membentuk konfigurasi
dimana di dalamnya termasuk:
Program : sekumpulan instruksi yang ketika dieksekusi akan memberi fungsi dan
hasil yang diinginkan.
Data : sekumpulan data yang memungkinkan program memanipulasi informasi.
Dokumen : sekumpulan dokumen yang menggambarkan operasi dan penggunaan
program.
Cara atau strategi bagaimana perangkat lunak dibuat sedemikian rupa sehingga
produk perangkat lunak tersebut dapat diwujudkan.
1) Waterfall Model
Waterfall model pertama kali diperkenalkan oleh Winston Royce tahun 1970.
Waterfall Model merupakan model klasik yang sederhana dengan aliran sistem yang
linier.
Output dari setiap tahap merupakan input bagi tahap berikutnya.
Model ini telah diperoleh dari proses rekayasa lainnya dan menawarkan cara
pembuatan rekayasa perangkat lunak secara lebih nyata. Model ini melibatkan tim
SQA (Software Quantity Assurance) dengan 5 tahapan, dimana setiap tahapan selalu
dilakukan verifikasi atau testing.
2) Incremental Model
Incremental model adalah model pengembangan sistem pada software engineering
berdasarkan requirement software yang dipecah menjadi beberapa fungsi atau bagian
sehingga model pengembangannya secara bertahap. dilain pihak ada mengartikan
model incremental sebagai perbaikan dari model waterfall dan sebagai standar
pendekatan topdown. Layaknya Model Waterfall, model ini pun juga memiliki
tahapan tahapan untuk perancangan perangkat lunaknya, yaitu:
Requirement , Requirment adalah proses tahapan awal yang dilakukan pada
incremental model adalah penentuan kebutuhan atau analisis kebutuhan.
Specification, Specification adalah proses spesifikasi dimana menggunakan
analisis kebutuhan sebagai acuannya.
Architecture Design, adalah tahap selanjutnya, perancangan software yang
terbuka agar dapat diterapkan sistem pembangunan per-bagian pada tahapan
selanjutnya.
Code setelah melakukan proses desain selanjutnya ada pengkodean.
Test merupakan tahap pengujian dalam model ini.
3) Prototyping Model
Prototyping perangkat lunak (software prototyping) atau siklus hidup menggunakan
protoyping (life cycle using prototyping) adalah salah satu metode siklus hidup sistem
yang didasarkan pada konsep model bekerja (working model). Tujuannya adalah
mengembangkan model menjadi sistem final. Artinya sistem akan dikembangkan
lebih cepat daripada metode tradisional dan biayanya menjadi lebih rendah. Ada
banyak cara untuk memprotoyping, begitu pula dengan penggunaannya. Ciri khas dari
metodologi adalah pengembang sistem (system developer), klien, dan pengguna dapat
melihat dan melakukan eksperimen dengan bagian dari sistem komputer dari sejak
awal proses pengembangan.
4) Spiral Model
Model spiral (spiral model) adalah model proses software yang evolusioner yang
merangkai sifat iteratif dari prototipe dengan cara kontrol dan aspek sistematis dari
model sekuensial linier. Model ini berpotensi untuk pengembangan versi pertambahan
software secara cepat. Di dalam model spiral, software dikembangkan di dalam suatu
deretan pertambahan. Selama awal iterasi, rilis inkremental bisa merupakan sebuah
model atau prototipe kertas. Selama iterasi berikutnya, sedikit demi sedikit dihasilkan
versi sistem rekayasa yang lebih lengkap.
Model spiral dibagi menjadi sejumlah aktifitas kerangka kerja, disebut juga wilayah
tugas, di antara tiga sampai enam wilayah tugas. Tahap-tahap model tersebut dapat
dijelaskan secara ringkas sebagai berikut.
1. Tahap Liason: pada tahap ini membangun komunikasi yang efektif di antara
pengembangan dan pelanggan.
2. Tahap Planning (perencanaan): pada tahap ini ditentukan sumber-sumber informasi,
batas waktu dan informasi-informasi yang dapat menjelaskan proyek.
3. Tahap Analisis Resiko: mendefinisikan resiko, menentukan apa saja yang menjadi
resiko baik teknis maupun manajemen.
4. Tahap Rekayasa (engineering): pembuatan prototipe atau pembangunan satu atau
lebih representasi dari aplikasi tersebut
5.Tahap Konstruksi dan Pelepasan (release): pada tahap ini dilakukan pembangunan
perangkat lunak yang dimaksud, diuji, diinstal dan diberikan sokongan-sokongan
tambahan untuk keberhasilan proyek.
6. Tahap Evaluasi: Pelanggan/pemakai/pengguna biasanya memberikan masukan
berdasarkan hasil yang didapat dari tahap engineering dan instalasi.
2) Berorientasi Data
Sudut pandang pengembangan adalah struktur data dari dokumen masukan/keluaran
yang digunakan dalam sistem .
Prinsip pengembangan:
1) Mengidentifikasi entitas atau item-item yang menjadi objek informasi berikut
operasi-operasinya.
2) Menyatakan struktur informasi secara hirarki dengan menggunakan konstruksi
sequence, selectiondan repetition.
3) Memetakan hirarki struktur informasi menjadi struktur program.
4) Berorientasi Objek
Dekomposisi persoalan menjadi objek-objek yang
berkorespondensi dengan dunia nyata.
Objek:
• Dosen
• Mahasiswa
• Kuliah
• Nilai
9. Alat Bantu Pengembangan Perangkat Lunak
Perangkat bantu atau kakas otomatis dan semi-otomatis yang akan digunakan untuk
mendukung proses dan metode.
Bentuk-bentuk alat bantu pengembangan:
1) Diagram-diagram untuk memodelkan hasil setiap tahap pengembangan.
2) Perangkat lunak untuk membantu pelaksanaan analisis, perancangan, pembuatan
program, atau pengelolaan proyek.
3) Bahasa pemrogramanuntuk penulisan program.
2) Event Model
5) Business Modeling