📋

Pentingnya Analisis dan Spesifikasi Kebutuhan

Sep 1, 2024

Catatan Kuliah: Analisis dan Spesifikasi Kebutuhan

Deskripsi Mata Kuliah

  • Mata kuliah ini mengenalkan konsep dasar analisis dan spesifikasi kebutuhan perangkat lunak.
  • Tahapan analisis dan penyusunan dokumen kebutuhan perangkat lunak.

Tujuan Pembelajaran Pertemuan Pertama

  • Memahami dasar-dasar analisis dan spesifikasi kebutuhan.
  • Dapat menjelaskan mengenai analisis dan spesifikasi kebutuhan.

Outline Pertemuan

  1. Apa itu Requirement Engineering?
  2. Kenapa Requirement Engineering Penting?
  3. Masalah Umum dalam Proyek
  4. Requirement Produk dan Proyek
  5. Terminologi
  6. Karakteristik Requirement yang Baik

Kenapa Requirement Engineering Penting?

  • Analogi: Proses pembuatan aplikasi berdasarkan kebutuhan pengguna.
  • Aplikasi harus dibuat sesuai dengan tujuan dan kebutuhan pengguna.
  • Menghindari asumsi yang tidak tepat dalam pengembangan aplikasi.

Apa itu Requirement?

  • Definisi: Spesifikasi yang harus ada dalam pengembangan perangkat lunak.
  • Requirement mencakup:
    • Perspektif pengguna terhadap perilaku sistem.
    • Perspektif developer terhadap karakter internal sistem.

Pentingnya Requirement

  • Dua Poin Penting:
    1. Menemukan requirement sejak awal memudahkan perbaikan jika terjadi kesalahan.
    2. Menghindari biaya dan waktu yang tinggi jika kesalahan ditemukan di tahap lanjut.

Masalah Umum dalam Pengembangan Aplikasi

  1. Insufficient User Involvement: Kurangnya komunikasi antara analis dan customer.
  2. Creeping User Requirement: Perubahan fitur yang tidak terduga dari customer.
  3. Ambiguous Requirement: Ketidakjelasan dalam komunikasi antara developer dan customer.
  4. Gold-plating: Developer menambahkan fitur yang tidak diminta oleh customer.
  5. Minimal Specification in Accurate Planning: Perencanaan yang tidak matang.
  6. Overlook User Class: Terlalu banyak peran pengguna yang dipertimbangkan tanpa fokus.

Requirement Produk dan Proyek

  • Produk Requirement: Kebutuhan sistem atau produk.
  • Project Requirement: Kebutuhan untuk menjalankan proyek (infrastruktur, lingkungan pengembangan, dll).

Proses Requirement Typikal

Well Established

  • Metode bertahap (contoh: Waterfall).
  • Setiap tahapan harus diselesaikan sebelum berpindah ke tahap berikutnya.
  • Tantangan: Waktu pengiriman yang lama dan sulitnya kolaborasi.

Agile Requirement

  • Proses dilakukan per fitur.
  • Fleksibilitas dalam pengembangan aplikasi.
  • Tantangan: Pekerjaan yang berulang dan dokumentasi informal.

Kesimpulan

  • Requirement sangat penting dalam pengembangan perangkat lunak.
  • Harus berdasarkan kebutuhan dan tujuan customer, bukan asumsi.
  • Dua jenis requirement: Well-established dan Agile, masing-masing memiliki keuntungan dan tantangan.

Terima kasih atas perhatian semua.