📝 Sesi 08 dari 16

UJIAN TENGAH SEMESTER S11409 — Keandalan Perangkat Lunak & QA Cerdas

Evaluasi pemahaman komprehensif materi Sesi 1–7. Ujian dirancang untuk mengukur pemahaman konseptual, kemampuan analitis, dan penerapan praktis.

35%
Bobot UTS dari nilai akhir
100
Poin total soal
90'
Durasi pengerjaan
S1–S7
Cakupan materi
📋 Informasi Ujian

Ketentuan & Format Ujian

📌 Ketentuan Umum

  • Ujian bersifat close-book — tidak boleh membuka buku atau catatan
  • Boleh menggunakan kalkulator non-programmable
  • Lembar rumus akan disediakan dosen saat ujian
  • Dilarang menggunakan smartphone atau laptop
  • Tulis nama, NIM, dan kelas di setiap lembar jawaban

📊 Struktur Soal

A. Pilihan Ganda 20 soal × 1 poin = 20 poin
B. Isian Singkat 10 soal × 2 poin = 20 poin
C. Hitungan / Analisis 3 soal × 15 poin = 45 poin
D. Esai Aplikatif 1 soal × 15 poin = 15 poin
TOTAL 100 POIN
📚 Cakupan Materi UTS

Ringkasan Materi Sesi 1 – 7

Sesi 1
Pengantar Keandalan & QA
~14%
Sesi 2
Metrik & Pengukuran
~18%
Sesi 3
Model Keandalan (SRGM)
~18%
Sesi 4
Strategi QA & Proses
~12%
Sesi 5
Teknik Testing Lanjut
~17%
Sesi 6
Defect & RCA
~14%
Sesi 7
Pengantar AI/ML QA
~7%
Sesi 1 — Pengantar Keandalan & QA
Konsep fundamental yang mendasari semua materi berikutnya
~14% UTS
reliabilityfaulterror failureIEEE 610.12ISO 25010 race condition
Sesi 2 — Metrik & Pengukuran Keandalan
Formula dan perhitungan — bagian yang paling banyak keluar di soal hitungan!
~18% UTS ⭐
MTTFMTBFMTTR λ failure rateavailabilitySLA 99.9% DREcyclomatic complexity
Sesi 3 — Model Keandalan Software (SRGM)
Model prediksi keandalan — pahami nama, asumsi, dan kapan digunakan
~18% UTS ⭐
SRGMNHPPJelinski-Moranda Goel-Okumotoμ(t)infinite bug pool
Sesi 4 — Proses & Strategi QA
Framework, proses, dan strategi pengujian modern
~12% UTS
Rule of TenCMMITDD BDDshift-leftCI/CDRBT
Sesi 5 — Teknik Pengujian Lanjut & Automasi
EP, BVA, Decision Table, Coverage — teknik yang sering diujikan dengan kasus nyata
~17% UTS ⭐
EPBVAdecision table branch coveragepytestoff-by-one
Sesi 6 — Analisis Defect & Root Cause Analysis
Siklus hidup bug, klasifikasi, dan teknik mencari akar masalah
~14% UTS
5 WhysfishboneFTA ODCPareto 80/20severity vs priority
Sesi 7 — Pengantar QA Cerdas: AI/ML
Landscape AI dalam QA — konseptual, tidak ada hitungan kompleks
~7% UTS
supervised learningNLP self-healing testmodel driftTF-IDF
🧮 Rumus & Formula Penting

Lembar Referensi Formula UTS

Formula berikut akan tersedia pada lembar soal ujian. Pastikan Anda memahami kapan dan bagaimana menerapkannya, bukan sekadar menghafalnya.

MTTF (Mean Time to Failure)
MTTF = Total Uptime / Jumlah Kegagalan
Waktu rata-rata sistem bekerja sebelum gagal. Satuan: jam, hari.
MTBF (Mean Time Between Failures)
MTBF = MTTF + MTTR
Jarak rata-rata antar kegagalan. Untuk sistem yang bisa diperbaiki.
MTTR (Mean Time to Repair)
MTTR = Total Waktu Perbaikan / Jumlah Kegagalan
Waktu rata-rata yang dibutuhkan untuk memperbaiki sebuah kegagalan.
Availability
A = MTTF / (MTTF + MTTR) × 100%
Persentase waktu sistem tersedia. A = 99.9% → Three Nines.
Failure Rate (λ)
λ = 1 / MTTF = Jumlah Kegagalan / Total Uptime
Laju kegagalan per satuan waktu. Satuan: failures/hour.
Defect Density
DD = Jumlah Defect / KLOC (Kilo Lines of Code)
Jumlah bug per 1.000 baris kode. Standar industri: <1 bug/KLOC.
DRE (Defect Removal Efficiency)
DRE = (D_pre / (D_pre + D_post)) × 100%
D_pre = bug ditemukan sebelum rilis; D_post = setelah rilis. Target: >95%.
Cyclomatic Complexity
V(G) = E − N + 2P
E=edge, N=node, P=connected components. ≤10 = mudah diuji.
Goel-Okumoto NHPP
μ(t) = a(1 − e^(−bt))
a = total bug yang diharapkan; b = bug detection rate. t = waktu testing.
Jelinski-Moranda
λᵢ = φ × (N₀ − (i − 1))
φ = per-fault hazard rate; N₀ = initial number of faults; i = fault number.
📝 Soal Latihan UTS

Contoh Soal Tiap Bagian

Soal-soal berikut representatif terhadap format dan tingkat kesulitan UTS yang sebenarnya. Kerjakan secara mandiri sebelum melihat solusi.

BAGIAN A — PILIHAN GANDA (contoh 5 soal)
A-01 · Sesi 11 poin

Sebuah software memiliki cacat tersembunyi dalam kodenya yang belum teraktivasi. Menurut terminologi IEEE, kondisi ini disebut…

a) Failure    b) Error    c) Fault    d) Defect report

💡 Hint: Fault = cacat laten di kode; Error = state yang salah saat runtime; Failure = sistem gagal memenuhi spesifikasi.
A-02 · Sesi 21 poin

Sistem e-banking mengalami 4 kegagalan dalam 720 jam operasi. Total waktu perbaikan 8 jam. Berapakah nilai Availability sistem tersebut?

a) 97.78%    b) 98.35%    c) 98.89%    d) 99.17%

💡 MTTF = (720−8)/4 = 178h; MTTR = 8/4 = 2h; A = 178/(178+2) = 98.89%
A-03 · Sesi 31 poin

Model SRGM yang paling cocok untuk sistem dengan skenario "jumlah bug tidak diketahui dan bisa tidak terbatas" adalah…

a) Jelinski-Moranda    b) Goel-Okumoto    c) Musa Basic Execution Time    d) Musa-Okumoto Logarithmic

💡 Musa-Okumoto menggunakan asumsi "infinite bug pool" — cocok saat populasi bug tidak diketahui.
A-04 · Sesi 51 poin

Sebuah fungsi menerima nilai diskon antara 0% hingga 100%. Dengan BVA, nilai mana yang WAJIB diuji?

a) 0, 50, 100    b) -1, 0, 1, 99, 100, 101    c) 0, 25, 50, 75, 100    d) Semua nilai kelipatan 10

💡 BVA menguji: (min−1), min, (min+1), (max−1), max, (max+1)
A-05 · Sesi 61 poin

Bug pada fitur "ganti foto profil" yang menyebabkan foto tidak tersimpan. Bug ini severity LOW tapi ditetapkan Priority HIGH karena besok ada demo ke investor. Kondisi ini disebut…

a) Bug dengan severity yang salah dinilai    b) Normal — priority dan severity memang selalu berbeda    c) Severity rendah tapi priority tinggi karena faktor bisnis/konteks    d) Bug harus di-escalate menjadi severity HIGH

BAGIAN C — HITUNGAN & ANALISIS (contoh 2 soal)
C-01 · Sesi 2 — Reliability Metrics15 poin

Sistem SIAKAD ISTN mengalami kegagalan sebagai berikut selama 6 bulan operasi (720 jam/bulan × 6 = 4.320 jam total):

Kegagalan Waktu Terjadi (jam) Durasi Perbaikan (jam)
Kegagalan 13204
Kegagalan 29802
Kegagalan 32.1006
Kegagalan 43.7003

Hitung: (a) MTTF, (b) MTTR, (c) MTBF, (d) Availability, (e) apakah memenuhi SLA 99.5%? Jelaskan langkah perhitungan.

💡 Petunjuk: Total uptime = Total waktu − Total waktu perbaikan. MTTF = Uptime / jumlah kegagalan. MTTR = Total repair / jumlah kegagalan.
C-02 · Sesi 5 — EP & BVA15 poin

Form pendaftaran mata kuliah menerima input SKS yang diambil mahasiswa dengan aturan: nilai integer, minimum 12 SKS, maksimum 24 SKS, mahasiswa IPK ≥ 3.0 boleh ambil hingga 24 SKS, IPK < 3.0 maksimum 18 SKS.

(a) Identifikasi semua kelas ekuivalensi (EP) dengan dua skenario IPK tersebut.
(b) Tentukan nilai BVA lengkap untuk kedua skenario.
(c) Buat decision table untuk semua kombinasi kondisi.
(d) Hitung berapa minimum test case yang dibutuhkan.

BAGIAN D — ESAI APLIKATIF
D-01 · Integrasi Sesi 1–715 poin

Sebuah startup fintech bernama "DanaKita" baru meluncurkan aplikasi pinjaman online untuk UMKM. Dalam 3 bulan pertama, mereka mencatat 52 bug post-release, availability sistem hanya 97.2%, dan pelanggan mengeluh karena proses approval pinjaman sering error.

Sebagai QA Lead yang baru direkrut, tulis proposal perbaikan yang mencakup:
(a) Analisis metrik keandalan saat ini dan target yang realistis (gunakan formula)
(b) Root Cause Analysis menggunakan Fishbone atau 5 Whys
(c) Rekomendasi teknik pengujian yang harus diterapkan (EP, BVA, dll)
(d) Strategi jangka pendek (1 sprint) dan jangka menengah (3 bulan)
(e) Bagaimana AI/ML dapat membantu mempercepat perbaikan kualitas

💡 Ini soal open-ended. Dinilai dari kedalaman analisis, ketepatan penggunaan konsep, dan kreativitas solusi — bukan "jawaban tunggal yang benar".
📊 Rubrik Penilaian

Komponen & Bobot Nilai Akhir

KomponenBobotKeterangan
Kehadiran & Partisipasi10%Hadir minimal 75% pertemuan; aktif berdiskusi dan menjawab di kelas
Tugas Mingguan (Sesi 1–7)20%Kuis per sesi, tugas praktik Python, presentasi singkat
UTS (Sesi 8)35%Ujian tertulis komprehensif — 100 poin, 90 menit
Proyek Akhir (Sesi 15)20%Implementasi QA/AI pada sistem nyata — dikerjakan kelompok 2–3 orang
UAS (Sesi 16)15%Ujian akhir, mencakup semua materi Sesi 9–14 + integrasi

🏆 Konversi Nilai Akhir

Nilai AngkaHurufPredikatPoin Bobot (SKS)
85 – 100ASangat Memuaskan4.00
75 – 84B+Memuaskan3.50
65 – 74BBaik3.00
55 – 64C+Cukup Baik2.50
50 – 54CCukup2.00
40 – 49DKurang1.00
< 40ETidak Lulus0.00
💡 Tips & Strategi UTS

Persiapkan Diri Semaksimal Mungkin

Manajemen Waktu 90 Menit
Bagian A (PG) ~15 menit, Bagian B (isian) ~15 menit, Bagian C (hitungan) ~40 menit, Bagian D (esai) ~20 menit. Jangan terjebak terlalu lama di satu soal — lanjut dulu, kembali kemudian.
🧮
Soal Hitungan: Tulis Langkah
Meskipun jawaban akhir salah, nilai parsial diberikan untuk langkah perhitungan yang benar. Selalu tulis rumus dulu, substitusi nilai, baru hitung. Sertakan satuan (jam, %, failures/hour).
📌
Fokus Materi Berbobot Tinggi
Sesi 2 (Metrik), Sesi 3 (SRGM), dan Sesi 5 (Teknik Testing) menyumbang ~53% bobot UTS. Pastikan Anda sangat menguasai tiga sesi ini. Latih perhitungan MTTF/MTBF/Availability berulang kali.
🔗
Hubungkan Antar Konsep
Soal esai menilai kemampuan Anda mengintegrasikan konsep lintas sesi. Latih menjawab: "Bagaimana Goel-Okumoto membantu memutuskan kapan stop testing?" atau "Bagaimana Pareto mengarahkan pilihan EP?"
🎯
Gunakan Terminologi Teknis
Penguji akan memberi nilai lebih tinggi pada jawaban yang menggunakan istilah teknis yang tepat: "NHPP", "infinite bug pool", "equivalence class", "branch coverage", bukan sekadar "model matematis" atau "jenis testing".
📋
Review Kasus Nyata
Sesi 1 memiliki 3 kasus nyata (Therac-25, Knight Capital, CrowdStrike) yang sering dijadikan pertanyaan analitis. Pahami apa yang salah, konsep apa yang dilanggar, dan apa lesson learned-nya.
🐍
Pahami Konsep di Balik Kode
Jika ada soal kode Python, ujian menguji apakah Anda memahami apa yang dilakukan kode tersebut — bukan kemampuan menulis kode. Fokus pada: apa yang dihitung, mengapa, dan apa interpretasi hasilnya.
🌙
H-1 Ujian: Rest & Review Ringan
Sehari sebelum ujian, hanya review ringkasan dan formula — jangan belajar materi baru. Tidur cukup (7–8 jam) jauh lebih efektif dari begadang. Otak yang segar = kemampuan analitis yang lebih baik.

⚠️ Peringatan: Kecurangan dalam ujian (menyontek, membawa catatan tersembunyi, bekerja sama) akan mengakibatkan nilai 0 untuk mata kuliah ini dan dilaporkan ke jurusan sesuai peraturan akademik ISTN.

Semangat! Materi yang sudah dipelajari di Sesi 1–7 adalah fondasi yang solid. Mahasiswa yang aktif mengerjakan kuis dan tugas mingguan umumnya tidak kesulitan menghadapi UTS. Percayai proses belajar Anda!