PERANGKAT LUNAK
10
Di dalam suatu industri dikenal berbagai macam proses, demikian juga halnya dengan
industri perangkat lunak. Perbedaan proses yang digunakan akan menguraikan aktivitasaktivitas proses dalam cara-cara yang berlainan. Perusahaan yang berbeda menggunakan
proses yang berbeda untuk menghasilkan produk yang sama. Tipe produk yang berbeda
mungkin dihasilkan oleh sebuah perusahaan dengan menggunakan proses yang berbeda.
Namun beberapa proses lebih cocok dari lainnya untuk beberapa tipe aplikasi. Jika proses
yang salah digunakan akan mengurangi kualitas kegunaan produk yang dikembangkan.
11
Karena banyaknya variasi dalam model proses yang digunakan maka tidak mungkin
menghasilkan gambaran-gambaran yang reliabel untuk alokasi biaya dalam aktivitas-aktivitas
ini.
Modifikasi perangkat lunak biasanya lebih dari 60 % dari total biaya pembuatan
perangkat lunak. Presentasi ini terus bertambah karena lebih banyak perangkat lunak
dihasilkan dan dipelihara. Pembuatan perangkat lunak untuk suatu perubahan adalah penting.
Proses perangkat lunak komplek dan melibatkan banyak aktivitas.
Seperti produk, proses juga memiliki atribut dan karakteristik seperti :
Understandability, yaitu sejauh mana proses secara eksplisit ditentukan dan bagaimana
kemudahan definisi proses itu dimengerti.
Visibility, apakah aktivitas-aktivitas proses mencapai titik akhir dalam hasil yang jelas
sehingga kemajuan dari proses tersebut dapat terlihat nyata/jelas
Supportability, yaitu sejauh mana aktivitas proses dapat didukung oleh CASE
Acceptability, apakah proses yang telah ditentukan oleh insinyur dapat diterima dan
digunakan dan mampu bertanggung jawab selama pembuatan produk perangkat lunak
Reliability, apakah proses didesain sedimikian rupa sehingga kesalahan proses dapat
dihindari sebelum terjadi kesalahan pada produk.
Robustness, dapatkah proses terus berjalan walaupun terjadi masalah yang tak diduga
Contohnya, jika pengembangkan proses cepat dilakukan mungkin kita perlu mengurangi
visibility proses karena pembuatan proses yg nyata berarti pembuatan dokumen secara teratur.
Ini akan memperlambat proses.
12
Pemodelan dalam rekayasa perangkat lunak merupakan suatu hal yang dilakukan
ditahap awal dan akan mempengaruhi pekerjaan-pekerjaan selanjutnya dalam rekayasa
perangkat lunak tersebut.
1. Model Waterfall
Langkah-langkah yang penting dalam model ini adalah
13
sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai
kebutuhan baru ditemukan.
14
2. Model Spiral
Model spiral dibagi menjadi sejumlah aktivitas kerangka kerja, disebut juga wilayah
tugas, antara tiga sampai 6 wilayah tugas :
Komunikasi pelanggan
Tugas-tugas yang dibutuhkan untuk membangun komunikasi yang efektif antara
pengembang dan pelanggan
Perencanaan
Tugas-tugas yang dibutuhkan untuk mendefinisikan sumber-sumber daya, ketepatan
waktu dan proyek informasi lain yang berhubungan
Analisis resiko
Tugas-tugas yang dibutuhkan untuk memperkirakan resiko-resiko, baik manajemen
maupun teknis.
Perekayasaan
Tugas-tugas yang dibutuhkan untuk membangun satu atau lebih representasi aplikasi.
15
Evaluasi pelanggan
Tugas-tugas yang dibutuhkan untuk memperoleh umpan balik dari pelanggan dengan
didasarkan pada evaluasi representasi perangkat lunak, yang dibuat selama masa
perekayasaan dan diimplementasikan selama masa pemasangan.
Model spiral menjadi sebuah pendekatan yang realistis bagi perkembangan sistem dan
perangkat lunak skala besar. Karena perangkat lunak terus bekerja selama proses bergerak,
pengembang dan pemakai memahami dan bereaksi lebih baik terhadap resiko dari tiap tingkat
evolusi.
Perencanaanann
Analisis resiko
Komunikasi
pelanggan
Perekayasaan
Evaluasi pelanggan
Konstruksi dan
peluncuran
16
17
Business modeling
Masalah terbesar dalam usaha pengembangan bisnis adalah komunitas bisnis
dengan perekayasa perangkat lunak tidak saling berkomunikasi dengan baik. Hal ini
mengakibatkan output dari dunia bisnis tidak digunakan untuk input rekayasa software
dengan semestinya demikian pula sebaliknya. RUP mengatasi masalah ini dengan
menyediakan bahasa dan proses umum untuk kedua komunitas ini yang menunjukkan
bagaimana membuat dan memelihara perencanaan langsung antara model bisnis
dengan perangkat lunak.
Dalam bisnis modeling kita mendokumentasikan proses bisnis menggunakan
use case bisnis yang menjamin pengertian yang sama diantara pihak-pihak pengambil
keputusan mengenai proses bisnis apa yang dibutuhkan untuk mendukung
pengembangan organisasi.
Requirements
Requirements mendeskripsikan apa yang seharusnya dilakukan oleh sistem dan
memastikan bahwa pengembang dan pelanggan menyetujui deskripsi tersebut. Untuk
mencapai hal ini kadang kita harus memaksakan pemunculan, pengorganisasian dan
pendokumentasian permintaan; melacak dan mendokumentasikan penawaran serta
pengambilan keputusan.
18
Analisis dan desain menghasilkan model desain dan model analisis. Desain model
berlaku sebagai blueprint yang menggambarkan bagaimana source code disusun dan
ditulis.
Implementation
Tujuan implementasi adalah :
-
Test
Pengujian bertujuan untuk :
-
19
Environment
Menyediakan lingkungan pendukung bagi pengembangan program (meliputi
proses dan tool) yang dibutuhkan oleh team pengembang. Environment berfokus pada
aktivitas untuk mengkonfigurasi proses ke dalam proyek, panduan pendukung untuk
pengembangan proyek.
Deployment
Deployment mensukseskan peluncuran produk dan penyampaian perangkat
lunak ke pengguna akhir. Deployment meliputi:
-
20
pemakai yang dapat berakibat sistem tersebut walaupun dapat diterima tetapi para pemakai
enggan untuk menggunakannya atau bahkan para pemakai menolak untuk menggunakannya.
Pada saat RAD diimplementasikan, maka para pemakai bisa menjadi bagian dari
keseluruhan proses pengembangan system dengan bertindak sebagai pengambil keputusan
pada setiap tahapan pengembangan. RAD bisa menghasilkan suatu system dengan cepat
karena sistem yang dikembangkan dapat memenuhi keinginan dari para pemakai sehingga
dapat mengurangi waktu untuk pengembangan ulang setelah tahap implementasi.
Metode RAD mempunyai 3 tahapan utama seperti yang terlihat pada gambar dibawah
ini :
Tahapan-tahapan RAD :
1. Requirements planning ( rencana kebutuhan)
Pada tahap ini, user dan analyst melakukan semacam pertemuan untuk melakukan
identifikasi tujuan dari aplikasi atau system dan melakukan identifikasi kebutuhan
informasi untuk mencapai tujuan. Hal terpenting dalam tahap ini adalah adanya
keterlibatan dari kedua belah pihak, bukan hanya sekedar persetujuan akan proposal yang
sudah dibuat. Untuk lebih jauh lagi, keterlibatan user bukan hanya dari satu tingkatan pada
suatu organisasi, melainkan beberapa tingkatan organisasi sehingga informasi yang
dibutuhkan untuk masing-masing user dapat terpenuhi dengan baik.
2. Design workshop (proses desain)
Pada tahap ini adalah melakukan proses desain dan melakukan perbaikan-perbaikan
apabila masih terdapat ketidaksesuaian desain antara user dan analyst. Untuk tahap ini
maka keaktifan user yang terlibat sangat menentukan untuk mencapai tujuan, karena user
21
22