Kamis, 10 Februari 2022

REKAYASA PERANGKAT LUNAK

Perangkat Lunak (Software) tidak sama dengan program komputer. Perangkat lunak tidak hanya mencakup program, tetapi juga semua dokumentasi dan konfigurasi data yang berhubungan, yang diperlukan untuk membuat agar program beroperasi dengan benar.
RPL adalah bagian dari rekayasa sistem yang meliputi pembangunan PL, infrasktruktur, kontrol, aplikasi dan database pada sistem.
Ada 4 kegiatan/aktivitas pada proses PL :
• Spesifikikasi Perangkat Lunak  Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.
• Pengembangan Perangkat Lunak  Perangkat lunak yang memenuhi spesifikasi harus di produksi
• Validasi Perangkat Lunak  Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak melakukan apa yang diinginkan oleh pelanggan.
• Evolusi Perangkat Lunak  Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan.
Model Proses Perangkat Lunak Merupakan deskripsi yang disederhanakan dari proses perangkat lunak ,Bisa mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran orang yang terlibat pada rekayasa perangkat lunak (Perekayasa PL).
Contoh Jenis Model Proses PL
 Model aliran kerja (workflow)  menunjukkan kegiatan pada proses bersama dengan input, output, dan ketergantungannya. Merepresentasikan pekerjaan manusia.
 Model aliran data (data flow)  merepresentasikan proses sebagai suatu set kegiatan yang melakukan transformasi data. Menunjukkan bagaimana input ke proses, misalnya spesifikasi ditransformasi menjadi output, misalnya menjadi desain.
 Model peran/aksi  merepresentasikan peran orang yang terlibat pada PL dan kegiatan yg menjadi tanggung jawab mereka.
Model atau paradigma umum pada proses PL
 Model air terjun (waterfall)  Mengambil kegiatan dasar seperti spesifikasi, pengembangan, validasi, dan evolusi dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian dan seterusnya.
Pengembangan evolusioner  Pendekatan ini berhimpitan dengan kegiatan spesifikasi, pengembangan, dan validasi. Sistem awal dikembangkan dengan cepat dari spesifikasi abstrak. Sistem ini kemudian di perbaiki dengan masukan dari pelanggan untuk menghasilkan sistem yang memuaskan kebutuhan pelanggan. By:artincomputer.blogspot.com
Pengembangan Sistem Formal  Pendekatan ini menghasilkan suatu sistem matematis yang formal dan mentransformasikan spesifikasi ini, dengan menggunakan metode matematik menjadi sebuah program.
Pengembangan berdasarkan pemakaian ulang (Reusable)  Teknik ini menganggap bahwa bagian-bagian sistem sudah ada. Proses pengembangan sistem terfokus pada pengintegrasian bagian-bagian sistem dan bukan pengembangannya dari awal.
MITOS DALAM PERANGKAT LUNAK
. MITOS MANAGEMENT seperti sering mengalami tekanan karena masalah pengaturan keuangan, menjaga jadwal agar tidak kacau, dan peningkatan kualitas. Mitos : Jika kita mentaati jadwal, kita dapat menambah lebih banyak lagi pemrogram dan mengejar ketinggalan (kadang-kadang disebut “Mongolian horde concept”). Kenyataan : Perkembangan perangkat lunak bukan merupakan proses mekanis seperti pemanufakturan. Semakin manusia bertambah, para personil yang sudah bekerja lebih lama harus menggunakan waktu untuk membimbing pendatang baru, sehingga akan mengurangi jumlah waktu yang digunakan dalam fase pengembangan produksi.  
MITOS CUSTOMER
Pelanggan mempercayai mitos tentang perangkat lunak karena manajer dan para pelaksana yang bertanggung-jawab atas masalah perangkat lunak hanya bekerja sedikit saja untuk memperbaiki kesalahan informasi. Mitos ini membawa ke arah pengharapan yang salah (oleh pelanggan) dan ketidak-puasan pengembang
Mitos: kebutuhan proyek berubah terus-menerus, tetapi perubahan tersebut dapat diakomodasi karena perangkat lunak bersifat fleksibel. Kenyataan: Memang benar bahwa kebutuhan-kebutuhan perangkat lunak selalu berubah. Tetapi pengaruh perubahan itu bervariasi sesuai waktu saat perangkat lunak dikenalkan. Perubahan-perubahan pada fungsi, unjuk kerja, atau karakteristik lain pada saat implementasi (kode dan tes) besar pengaruhnya terhadap biaya. Perubahan, ketika diminta setelah perangkat lunak diproduksi, dapat lebih mahal daripada bila perubahan yang sama dilakukan pada saat yang lebih awal.  
MITOS PRAKTISI
Seperti yang ditulis sebelumnya, selama masa awal perangkat lunak, pemrograman dilihat sebagai sebuah karya seni. Cara dan kebiasaan lama tetap sukar lenyap.
Mitos: Sekali kita menulis program, dan dapat membuatnya bekerja, pekerjaan kita akan terselesaikan.
Kenyataan: Data industri menunjukkan bahwa antara 50 sampai 70 dari semua usaha yang dilakukan pada sebuah program akan terus dilakukan sampai program diantar ke tangan konsumen untuk yang pertama kalinya.
Pengertian Software Process Sekumpulan aktifitas yang saling terkait untuk spesifikasi, desain, implementasi dan testing
- Pengertian Software Process Sekumpulan aktifitas yang saling terkait untuk spesifikasi, desain, implementasi dan testing sistem software
- Kegiatan-kegiatan mendasar yg umum bagi semua proses Perangkat Lunak :
Spesifikikasi Perangkat Lunak  Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan.
Pengembangan (Perancangan dan Implementasi) Perangkat Lunak  Perangkat lunak yang memenuhi spesifikasi harus di produksi
Validasi Perangkat Lunak  Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak bekerja sesuai dengan apa yang diinginkan oleh pelanggan.
Evolusi Perangkat Lunak  Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan
- Model-model Proses Perangkat Lunak
Model air terjun (waterfall)
Pengembangan Evolusioner
Model Pengembangan Sistem Formal
Model Pengembangan BerorientasiPemakaian Ulang (Re-Usable)