Anda di halaman 1dari 32

PERTEMUAN 3

METODE FORMAL
Software Reliability dan Dependability

Oleh :
Novita Ranti Muntiari, S.Kom., M.kom

Universitas Harapan Bangsa


Materi Pembahasan
• Software Reliability (Keandalan)
• Software Dependability (Ketergantungan)
Software Reliability (Keandalan)

Adalah Probabilitas bahwa program bekerja tanpa


kegagalan untuk waktu tertentu dan biasanya dinyatakan
sebagai waktu rata-rata menuju kegagalan
Software Reliability (Keandalan)

• Tidak dapat didefinisikan


secara objektif
• Membutuhkan profil
operasional untuk definisinya
• Harus mempertimbangkan
konsekuensi kesalahan
Reliability (Keandalan)

Reliability adalah
• konsep yang luas dan salah satu metrik
yang digunakan untuk mengukur kualitas
• faktor kualitas berorientasi pengguna yang
berkaitan dengan operasi sistem.
• Sistem tanpa kesalahan dianggap sangat
andal.
• Konsep kunci dalam membahas reliabilitas
Software Reliability (Keandalan)

Konsep kunci dalam membahas reliabilitas terbagi menjadi 3 yaitu :


1. Kegagalan
2. Kesalahan
3. Waktu, ada 2 bentu yaktu yaitu :
• Waktu eksekusi ()
• Waktu kalender (T)
Faktor yang mempengaruhi Software Reliability
• Persepsi pengguna tentang keandalan perangkat lunak bergantung
pada dua kategori informasi.
• Jumlah kesalahan dalam suatu sistem dipengaruhi oleh hal-hal
berikut.
 Ukuran dan kompleksitas kode
 Karakteristik proses pengembangan yang digunakan
 Pendidikan, pengalaman, dan pelatihan personel pengembangan
 Lingkungan operasional
Applications of Software Reliability

• Perbandingan teknologi rekayasa perangkat lunak


• Mengukur kemajuan pengujian sistem
• Mengontrol sistem yang sedang beroperasi
• Wawasan yang lebih baik tentang proses
pengembangan perangkat lunak
Reliability dan Metode Formal

Penggunaan metode pengembangan formal menghasilkan sistem yang


lebih andal dibuktikan bahwa sistem tersebut sesuai dengan
spesifikasinya dan Pengembangan spesifikasi formal memaksa analisis
rinci dari sistem yang menemukan anomali dan kelalaian dalam
spesifikasi
Reliability metrics

Probability of failure on demand (POFOD) yaitu Probabilitas kegagalan


sesuai permintaan adalah ukuran kemungkinan bahwa sistem akan gagal
ketika permintaan layanan dibuat

POFOD = 0,001 berarti 1 dari 1000 permintaan layanan mengakibatkan


kegagalan
Reliability metrics

Rate of fault occurrence (ROCOF) yaitu Tingkat terjadinya


kesalahan adalah Frekuensi terjadinya perilaku tak terduga.

ROCOF 0,02 berarti 2 kemungkinan kegagalan


di setiap 100 unit waktu operasional
Reliability metrics

Mean time to failure yaitu Berarti waktu untuk gagal adalah


Ukuran waktu antara kegagalan yang diamati.

MTTF 500 berarti waktu antara kegagalan adalah 500 unit


waktu
Reliability metrics

Availability yaitu ketersedian adalah Mengukur seberapa besar


kemungkinan sistem tersedia untuk digunakan. Dan
Memperhitungkan waktu perbaikan/restart

Ketersediaan 0,998 berarti perangkat lunak tersedia untuk 998


dari 1000 unit waktu
Reliability metrics
 Mean Time Between Failures (MTBF) yaitu Waktu Rata-Rata Antara Kegagalan
 Dapat menggabungkan MTTF dan MTTR.
 Jika MTBF menunjukkan 300 jam menunjukkan bahwa setiap kegagalan terjadi setelah 300
jam
• Mean Time to Repair(MTTR) yaitu Rata-rata Waktu untuk Perbaikan
 Setelah kegagalan, waktu diperlukan untuk memperbaiki kesalahan.
 MTTR mengukur waktu rata-rata untuk melacak kesalahan yang menyebabkan kegagalan
dan memperbaikinya.
Klasifikasi Kegagalan

1. Transient
2. Permanent
3. Recoverable
4. Unrecoverable
5. Non-corrupting
6. Corrupting
Pemodelan pertumbuhan Reliability

Model pertumbuhan adalah model matematis dari


perubahan keandalan sistem saat diuji dan kesalahan
dihilangkan
Equal-step reliability growth

Reliability
(RO COF)

t1 t2 t3 t4 t5
Time
Observed reliability growth

• Model langkah sama yang sederhana tetapi tidak mencerminkan


kenyataan
• Keandalan tidak selalu meningkat dengan perubahan karena
perubahan dapat menimbulkan kesalahan baru
• Tingkat pertumbuhan keandalan cenderung melambat seiring
waktu karena kesalahan yang sering terjadi ditemukan dan
dihapus dari perangkat lunak
• Model pertumbuhan acak mungkin lebih akurat
Random-step reliability growth
Note different
reliability
Reliability improvements Fault repair adds new fault
(RO COF) and decreases reliability
(increases ROCOF)

t1 t2 t3 t4 t5
Time
Pilihan model pertumbuhan

• Banyak model pertumbuhan keandalan yang berbeda telah diusulkan


• Tidak ada model pertumbuhan yang berlaku secara universal
• Keandalan harus diukur dan data yang diamati harus dipasang pada
beberapa model
• Model yang paling sesuai harus digunakan untuk prediksi reliability
Prediksi reliability
Reliability

= Measured reliability

Fitted reliability
model curve

Required
reliability

Estimated Time
time of reliability
achievement
Software Dependability
Dependability engineering
Berkaitan dengan teknik untuk meningkatkan ketergantungan sistem dan itu
melibatkan pengguna desain yang ketat dan proses pengembangan untuk
meminimalkan jumlah cacat dalam perangkat lunak
Dimensi dari Dependability
• Availability
kemampuan sistem untuk memberikan layanan saat diminta
• Reliability
kemampuan sistem untuk memberikan layanan yang ditentukan
• Safety
kemampuan sistem untuk beroperasi tanpa kegagalan bencana
• Security
kemampuan sistem untuk mempertahankan diriterhadap intrusi
Dependability

• Maintainability (Pemeliharaan)
Banyak kegagalan sistem kritis disebabkan
oleh kesalahan yang terjadi selama
pemeliharaan

• Survivability (Kelangsungan hidup)


Kemampuan sistem untuk memberikan
layanan setelah serangan yang disengaja
atau tidak disengaja
Dependability Costs
Cenderung meningkat secara
eksponensial karena peningkatan
tingkat ketergantungan diperlukan
Dependability dan Performance
1. Sistem yang tidak dapat dipercaya akan langsung ditolak pengguna
2. Biaya kegagalan sistem tinggi
3. Sulit membuat sistem yang dapat di andalkan
4. Mengkompensasi kinerja yang buruk
5. Sistem yang tidak dapat dipercaya dapat menyebabkan hilangnya informasi
Dependability Economics

lebih hemat biaya untuk membayar


kegagalan dari pada mencoba meningkatkan
ketergantungan
Dependability

Sistem yang dapat diandalkan umumnya


akan dikembangkan menggunakan proses
berulang yang didefinisikan secara eksplisit,
dan mungkin menggunakan redundancy
(kapasitas cadangan) dan diversity (tipe
berbeda) untuk mencapai Reliability.
Dependability
ada trade-off antara Dependability dan kinerja sistem, karena sistem
yang dapat diandalkan perlu melakukan pemeriksaan tambahan untuk
memantau system itu sendiri dan untuk memeriksa status yang salah
dan untuk memulihkan dari kesalahan sebelum terjadi kegagalan.
Ini pasti mengarah pada peningkatan biaya dalam desain dan
pengembangan Dependable system.
Tugas
------------------
Tugas / Quiz Tidak Ada

Quiz
------------------
Ada
Sekian dan Terimakasih...

Sampai jumpa di pertemuan berikutya


dengan materi
“Pendekatan metode Fomal”

novitaranti@uhb.ac.id

Anda mungkin juga menyukai