Apakah Perangkat Lunak itu ?
Perangkat Lunak adalah suatu aplikasi program komputer yang di dalamnya terdapat :
– Program itu sendiri,
– Konfigurasi yang digunakan,
– Dokumentasi yang menjelaskan struktur sistem,
– Dokumentasi yang menjelaskan bagaimana menggunakan sistem,
– Dan informasi tentang versi terbaru
Produk Perangkat Lunak dikembangkan sesuai dengan kebutuhan dari pemakai perangkat lunak tersebut.
Problem dalam Pembuatan Perangkat Lunak
– Tidak memiliki waktu yang cukup dalam mengumpulkan data pada proses pembuatan perangkat lunak.
– Ketidakpuasan user pada S/W yang dibuat
– Kualitas S/W terkadang meragukan.
– Sulit dalam pengelolaan S/W.
Apakah Rekayasa Perangkat Lunak?
– Rekayasa Perangkat Lunak adalah disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan.
Tujuan RPL
– Meningkatkan keakuratan, performance & efficiency produk secara keseluruhan dalam pengembangan.
– Menerapkan metodologi yang terdefinisi dengan baik untuk resolusi software.
– Rekayasa Perangkat Lunak berhubungan dengan masalah – masalah praktis untuk menghasilkan suatu perangkat lunak. Pendekatan dilakukan dengan model bisnis dan strategi bisnis suatu perangkat lunak.
Pengembangan Perangkat Lunak
– Perancangan Perangkat Lunak
– Pengkodean Perangkat Lunak
– Pengujian Perangkat Lunak
Sumber Perangkat Lunak
– Perangkat Lunak Komersial (Vendor)
– Perangkat Lunak In House / Customized Software
Perangkat Lunak Komersial (Vendor)
Kelebihan : Implementasi Cepat, Penghematan Biaya, Estimasi Biaya dan waktu, Reliabilitas.
Kekurangan : Kesesuaian Rancangan Sistem yang Tidak baik, Ketergantungan pada Vendor, Biaya Tidak Langsung dari Kerusakan SDLC
Penilaian : Kinerja Pengoperasian, Dokumentasi, Kemudahan pembelajaran, Kemudahan penggunaan (pengendalian dan penanganan kesalahan, dukungan)
Penyeleksian : Manfaat Terbesar & Biaya Termurah
Cara :
– Tentukan angka penilaian Total dan Biaya Total
– Tentukan bobot penilaian relatif untuk setiap faktor kinerja umum (Nilai dasar 100)
– Beri penilaian untuk setiap faktor kinerja (proposal, benchmark, penilaian terpublikasi) – (skala : 1 = jelek s/d 10 = sangat bagus)
– Hitung Skor (Bobot x Penilaian)
– Hitung Angka penilaian total (Jumlah Skor)
– Hitung biaya perangka penilaian (Harga : Total
penilaian)
Perangkat Lunak In House / Customized Software
Mengikuti SWDLS (Software Development Life Cycle)
– Rancangan (Design)
– Kode (Code)
– Uji (Test)
Rancangan (Design)
Bagan terstruktur, SE/Pseudocode, Tabel/pohon keputusan, Kamus data, Diagram W/O, Diagram JSD dsb.
Kode (Code)
3GL, 4GL, Pemrograman Object
Uji (Test)
White Box, Black Box
Macam-Macam Perangkat Lunak
Perangkat Lunak Berdasarkan Pemakai
– Generik: Perangkat lunak yang bisa digunakan secara umum
– Spesifik: Perangkat lunak yang dibuat berdasarkan pesanan
Perangkat Lunak Berdasarkan Fungsional
– Interfacing
– Operating System
– Perangkat Lunak Aplikasi
– CASE Tools
Pengorganisasian
* Proyek Pengembangan Perangkat Lunak
(Komunikasi, Integrasi, koordinasi)
*Pendekatan Organisasi
– Tim pengembangan program (program development team)
– Tim programmer kepala (chief programmer team)
– Tim pemrograman bersama (egoless programming team)
Kualitas Perangkat Lunak
* Dimensi Pemakai :
– Kinerja Pengoperasian Keseluruhan
– Kemudahan Pembelajaran
– Pengontrolan dan Penanganan Kesalahan
– Dukungan dari Pembuat dan Pemelihara
Dimensi Rancangan (MURRE ) :
– Maintainability
– Usability
– Reusability
– Realibility
– Extendability
* Dimensi Nilai Tambah (PDM) :
– Productivity
– Diferensiasi
– Management
Kualitas
– Jaminan Kualitas (quality Assurance)
adalah Proses merancang kualitas ke dalam sistem
– Pengendalian Kualitas (quality Control)
Proses yang memastikan bahwa kualitas sistem telah terpenuhi/tercapai.
Perancangan Perangkat Lunak
– Perancangan Terstruktur
– Perancangan Berorientasi Objek
Perancangan Terstruktur
Orientasi pada Proses dan Data
Alat yang digunakan : DFD, ERD, STD,Bagan Terstruktur, SE/Pseodocode, W/O
Karakteristik Rancangan:
– Modul disusun secara Hirarkis
– Menggunakan logika Call /Perform – based
– Menggunakan Alur Kendali(top to bottom / bottom to top)
– Repetisi dalam satu modul
– Konsep kendali standart(urut,seleksi,repetisi)
Perancangan Berorientasi Objek
Orientasi pada Obyek
Alat yang digunakan : DFD, ERD, STD,Bagan Terstruktur, SE/Pseodocode
Tahapan:
– Mendeskripsikan Obyek, Kelas, Atribut dan Daftar Operasi
– Memodelkan relasi antara Obyek dan Kelas
– Memodelkan Pewarisan
– Menggabungkan faktor MURRE
Pengkodean Perangkat Lunak
Bahasa Pemrograman Yang digunakan :
– 3GL atau 4GL
– Object Oriented Language (OOP)
Jenis Bahasa OOP :
Murni : Smalltalk, Eiffel
Hybrid : C++, Pascal, Cobol
Saat ini : Orientasi Pengembangan OOP pada sistem berbasis Grafik.
Contoh : Vbasic, Delphi, Vfoxpro
Pengujian Perangkat Lunak
Metode merancangtest case :
– White Box Testing
– Black Box Testing
Area Uji :
– Field, Record, File, Entry Data, Kendali, Arus Program
Kesalahan:
– Fatal (Crash,Logika, Hang)
– Serius(Output tidak Benar)
– Minor
Tahapan Pengujian
– Tahap Modul
– Tahap Intergrasi
– Pengujian Sistem (Pengujian Pemulihan, Pengujian Keamanan, Pengujian Stress)
– Pengujian Penerimaan (Pengujian Alfa, Pengujian Betha)
Skenario Pengujian
– Pengembangan test case dan strategi Pengujian
– Pelaksanaan test
– Pelaporan kesalahan yang terdeteksi
– Pengoreksian kesalahan
– Peramalan tingkat reliabilitas
Jenis Laporan Kesalahan
– Saran
– Kesalahan rancangan
– Kesalahan Pengcodean
– Kesalahan Dokumentasi
– Query
Referensi :