Anda di halaman 1dari 36

BAB 1

PERANGKAT LUNAK DAN


REKAYASA PERANGKAT LUNAK

Ery Muchyar H
P2700212431

Karakteristik Perangkat Lunak

Perangkat
lunak
dikembangkan
atau
direkayasa;
bukan
diproduksi
dalam
konteks manufaktur.
Perangkat
lunak
tidak
mengalami
kelelahan.
Meskipun
industri
terus
beralih
ke
konstruksi berbasis komponen, sebagian
besar perangkat lunak masih dapat dibuat
berdasarkan spesifikasi yang diminta
pengguna.

Defenisi Perangkat Lunak

Instruksi-instruksi
(program
komputer)
yang ketika dijalankan menyediakan fiturfitur, fungsi-fungsi, dan kinerja yang
dikehendaki.
Struktur
data
yang
memungkinkan
program-program memanipulasi informasi.
Informasi deskriptif pada salinan cetak dan
bentuk-bentuk
maya
yang
menggambarkan
pengoperasian
dan
penggunaan program-program.

Ranah Aplikasi Perangkat Lunak

Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak
Perangkat lunak
Aplikasi web.
Perangkat lunak

system.
aplikasi.
rekayasa/ilmiah.
yang tertanam.
lini produk.
kecerdasan buatan.

Perangkat Lunak Warisan

Perangkat
lunak
warisan
telah
dikembangkan puluhan tahun yang lalu dan
ttelah dimodifikasi terus agar memenuhi
perubahan bisnis dan platform komputasi
saat ini. Pengembangan sistem semacam
itu memusingkan bagi organisasi-organisasi
besar yang mendapati sistem tersebut
teramat mahal untuk dirawat namun
demikian mungkin memiliki mafaat untuk
lebih dikembangkan lagi.

Karakteristik Khas dari Aplikasiaplikasi Web

Kepadatan jaringan.
Keserampakan.
Jumlah pengguna yang tidak dapat diprediksi.
Kinerja.
Ketersediaan.
Digerakkan oleh data.
Peka terhadap isi.
Evolusi yang berkesinambungan.
Kesegaran.
Keamanan.
Estetika.

Rekayasa Perangkat Lunak

Rekayasa perangkat lunak adalah pembuatan


dan penggunaan prinsip-prinsip penting
rekayasa supaya pengguna bisa memperoleh
perangkat lunak secara murah yang dapat
diandalkan dan bekerja secara efisien pada
mesin-mesin yang sesungguhnya.
Rekayasa
perangkat
lunak
adalah
dokumentasi yang dilakukan secara detail
dari awal perencanaan pembuatan perangkat
lunak hingga proses penggunaan oleh user.

Proses Perangkat Lunak

Suatu proses sesungguhnya yang merupakan


sekumpulan aktivitas, aksi dan tugas yang
dijalankan ketika suatu produk kerja harus
dibuat.
Kerangka kerja proses yang umum bagi
rekayasa perangkat lunak, yaitu:
1.Komunikasi.
2.Pemodelan.
3.Konstruksi.
4.Penyerahan perangkat lunak ke
pelanggan/pengguna.

Adapun kegiatan-kegiatan penyangga


proses perangkat lunak pada umumnya
sebagai berikut:
Penelusuran
dan
kendali
proyek
perangkat lunak.
Manajemen risiko.
Penjamin kualitas perangkat lunak.
Ulasan/tinjauan teknis.
Pengukuran.
Manajemen konfigurasi perangkat lunak.
Persiapan produk kerja dan produksi.

Praktik Rekayasa Perangkat Lunak

Esensi Praktik
George Poyla [pol45] dengan bukunya yang
berjudul How to Solve It, dia membuat
gamabaran garis besar esensi pemecahan
masalah dan selanjutnya menghasilkan
esensi praktik sekaya perangkat lunak:
Pahami permasalahannya.
Rancang solusinya.
Laksanakan rancangannya.
Periksa ketepatan hasilnya.

Prinsip-prinsip Umum
Davis Hooker [Hoo96] telah menyatakan tujuh
prinsip yang menekankan pada praktik
rekayasa perangkat lunak yaitu:
Alasan keberadaan perangkat lunak
Tetap sederhana
Pertahankan visi
Apa yang anda buat, akan digunakan oleh
konsumen/pelanggan
Membuka diri terhadap masa depan
Rancanglah selangkah ke depan sehingga
dapat dipergunakan kembali
Pikirlah.

Mitos-mitos Perangkat
Lunak
Mitos perangkat lunak keyakinan yang
keliru tentang perangkat lunak dan
keyakinan yang keliru tentang proses yang
digunakan untuk membangunnya dapat
ditelusuri sampai ke masa-masa komputasi
awal. Adapun sisa-sisa mitos tersebut
,yaitu:
Mitos manajemen
Mitos pelanggan
Mitos praktisi

BAB 2
Model-model Proses
Perangkat Lunak

Model Proses Generik


Kerangka kerja model generik untuk
rekayasa perangkat lunak ada 5, yaitu:
Komunikasi
Perencanaan
Pemodelan
Konstruksi
Penyerahan perangkat lunak ke
pelanggan/pengguna.

Mengidentfikasikan Aktivitas
Kerangka Kerja
Untuk membuat suatu perangkat lunak tim perangkat
lunak membutuhkan informasi yang lebih signifikan
sebelum melaksanakan salah satu bagian dari proses
perangkat lunak.
Yang harus dilakukan adalah:
Membuat kontak dengan pemesan melalui telepon
Membahas spesifikasi-spesifikasi kebutuhan dan
mencatatnya
Mengorganisasi catatan-catatan menjadi pernyataanpernyataan ringkas tertulis tentang spesifikasispesifikasi kebutuhan
Mengirimkannya kepemesan melalui surat elektronik
(email) untuk meminta persetujuan.

Mengidentifikasi Himpunan Pekerjaan


Identifikasi pekerjaan pada proyek perangkat lunak
tergantung pada besar kecilnya perangkat lunak yang hendak
dibuat. Sebagai contoh yang sederhana yaitu:
Membuat daftar para stekholder untuk proyek perangkat
lunak yang akan dilaksanakan.
Mengundang semua stekholder untuk menghadiri
pertemuan informal.
Betanya pada masing-masing stekholder untuk membuat
daftar fitur-fitur serta fungsi-fungsi yang mereka masingmasing inginkan.
Mendiskusikan spesifikasi kebutuhan dan mengembangkan
daftar spesifikasi kebutuhan yang bersifat final.
Melakukan prioritasisasi untuk masing-masing spesifikasi
kebutuhan.
Mencatat area-area ketidakpastian.

Pola-pola Proses
Ambler [Amb98] mengusulkan karekteristikkatekteristik suatu pola untuk mendiskripsikan polapola proses tersebut:
Nama Pola (tinjauan teknis)
Efektivitas.
Jenis
Konteks awal
Permasalahan
Solusi
Konteks hasil
Pola-pola yang berhubungan
Penggunaan yang diketahui dan contoh-contoh.

Penilaian dan Perbaikan Proses


Sejumlah pendekatan penilaian proses
perangkat lunak dan perbaikan yang
berbeda telah diusulkan dalam beberapa
dekade belakangan ini.
SCAMPI (StandI Assesment Method for
process Improfment)
CBA IPI (CMM-Based Appraisal for Internal
Process Improfment)
SPICE (ISO/IEC15504)
ISO 9001:2000

Model proses Preskriptif


Adapun beberapa modelnya yaitu:
Model Air Terjun
Model Proses Inkremental
Model Proses Evolusioner
Membuat prototipe (prototyping)
Model Spiral
Model-model Konkuren
Kata Terakhir pada proses-proses
Evolusioner

Model Proses yang Terkhususkan

Pengembangan Berbasis Komponen


Model pengembangan berbasis komponen memiliki
banyak karaktersistik yang dimiliki oleh model
spiral
Model Metode Formal
Model metode formal menggunakan sejumlah
aktivitas yang sesuai dengan spesifikasi formal
matematis dari suatu perangkat lunak komputer.
Pengembangan Perangkat Lunak Berorientasi
Aspek
Proses perangkat lunak berorientasi aspek pada
dasarnya belum matang.

Proses Terpadu
Proses terpadu memiliki bebarapa
tahapan yaitu:
Tahapan pengenalan (inspection)
Tahapan memastikan (elaboration)
Tahapan Konstruksi (contruction)
Tahapan Antara (transtition)
Tahapan Produksi (production)

Model Proses Personal dan Tim


1.Proses model personal yaitu:
. Perencanaa (planning)
. Perancangan

peringkat tinggi (high level

design)
. Tinjauan rancangan peringkat tinggi
(high level design review)
. Pengembangan (development)
. Postmortem
2.Model proses tim menggunakan tim untuk
proses pembuatan suatu perangkat lunak

BAB 3
Pengembangan Cepat

Apakah yang Dimaksud dengan


Kecepatan?
Ivar Jacobson mengatakan bahwa kecepatan telah menjadi
kata kunci saat ini ketika kita menggambarkan suatu proses
perangkat lunak modern. Setiap orang kelihatannya
memiliki kecepatannya masing-masing. Suatu tim cepat
adalah suatu tim yang cekatan yang mampu merespon
perubahan-perubahan dengan cepat dan tepat. Perubahanperubahan sangat berkaitan dengan pengembangan
rekayasa perangkat lunak. Perubahan dalam perangkat
lunak yang sedang dibuat, perubahan pada anggota tim,
perubahan karena teknologi baru, perubahan semua hal
yang mungkin berdampak pada produk yang mereka
bangun atau mungkin pula pada berdampak pada proyek
yang membuat produk.

Kecepatan dan Biaya Perubahan


Berikut ini adalah gambaran
Kecepatan dan Biaya Perubahan

Prinsip-prinsip Kecepatan

Perioritas utama memuaskan pelanggan


Memanfaatkan perubahan-perubahan untuk
mencapai keunggulan kompetitif terhadap pelanggan
Melakukan interaksi terhadap pelanggan secara rutin
Adanya kerjasama pelaku bisnis perangkat lunak
Memberi lingkungan, dukungan dan kepercayaan
pada anggota tim
Melakukan instuksi pengembangan secara langsung
kepada tim
Kinerja perangkat lunak adalah tolak ukur
pengembangan

Faktor Manusia
Beberapa ciri-ciri yang harus ada dalam
tim, yaitu:
Kompetensi
Fokus bersama
Kolaborasi
Kemampuan pengambilan keputusan
Kemampuan pemecahan masalah yang
kabur
Saling percaya dan menghormati
Pengorganisasian diri

Pemrograman Extrem (XP)

Skema Extreme Program

Proses Extreme Programming (XP)

Prencanaan (planning game)


Perancangan mengikuti prinsip tetap
sederhana
Pengkodean. Ini harus dilakukan oleh
pemrogram berpasangan.
Pengujian dengan falsafah refactoring
XP kemudian dilanjutkan dengan Uji
kelayakan XP.

Extreme Programming (XP) Industrial


ada enam praktik baru yang dirancang
untuk membantu memastikan proyek XP
bekerja dengan sukses, yaitu:
Penilaian persiapan
Komunitas proyek
Pelabelan proyek
Pengaturan yang diarahkan oleh penguji
Retrospektif
Pembelajaran yang berkelanjutan

Perdebatan di Seputar XP
Beberapa perdebatan di seputar XP, yaitu:
Validitas kebutuhan. Karena pelanggan adalah
anggota aktif dari tim XP, perubahan
kebutuhan dilakukan secar informal.
Kebutuhan pelanggan yang bertentangan.
Kebutuhan dinyatakan secara informal.
Kurangnya perancangan formal. XP kurang
menekankan pada kebutuhan akan
perancangan arsitektur dan dalam banyal
kasus, menunjukkan bahwa perancangan
yang beragam harus relatif informal.

Model Proses Cepat


Lainnya
Model ini digunakan diseluruh industri diantaranya:
Pengembangan perangkat lunak Adaptif (Adaptive
Software Development [ASD])
Pengembangan oleh banyak orang atau scrum
Metode pengembangan Sistem Dinamik (Dynamic
System Development [DSDM])
Kristal
Pengembangan Drive Fitur (Feature Drive Development
(FDD)
Pengembangan perangkat lunak yang Ringkas (Lean
Software Development [LSD])
Pemodelan cepat (Agile Modeling [AM])
Proses cepat terpadu (Agile Unified Process [AUP])

Diagram Perangkat Lunak Adaptif

Bagan Aktivitas Kerangka Kerja

Pemodelan Cepat
Hhal-hal yang menjadikan Agil Method
(AM) unik:
Model dengan Tujuan
Gunakan beberapa model
Perjalanan cahaya
Isi lebih penting daripada representasi
Mengenal model dan alat yang anda
gunakan untuk membuat model
Beradaptasi secara lokal.

Proses Terpadu Secara


Cepat
Literasi AUP mengacu pada kegiatan
berikut:
Pemodelan
Pelaksanaan
Pengujian
Pemasangan
Konfigurasi dan manajemen proyek
Lingkungan manajemen.

Anda mungkin juga menyukai