Back to IF3250 Proyek Perangkat Lunak

Actor Generalization and Role Modeling

Questions/Cues

  • Mengapa generalisasi aktor diperlukan dalam pemodelan?
  • Bagaimana membedakan peran aktor yang tumpang tindih?
  • Kriteria apa yang menentukan perlu generalisasi aktor?
  • Teknik penamaan aktor yang efektif untuk generalisasi
  • Implikasi generalisasi pada desain sistem

Reference Points

  • SCENARIO BASED MODELING REVIEW (Slides 14-16, 19)

Konsep Generalisasi Aktor

Generalisasi aktor adalah teknik pemodelan untuk menyederhanakan representasi aktor-aktor yang memiliki karakteristik dan tanggung jawab serupa dalam sistem. Contohnya pada sistem akademik, mahasiswa S1, S2, dan S3 yang memiliki kemampuan berinteraksi serupa dengan use-case “Daftar Ulang” dapat digeneralisasi menjadi satu aktor “Mahasiswa”.

Proses ini mengurangi kompleksitas diagram dengan mengelompokkan aktor-aktor spesifik ke dalam kategori umum. Analoginya mirip pewarisan dalam pemrograman berorientasi objek dimana aktor spesifik (child) mewarisi sifat dari aktor umum (parent). Penting dicatat bahwa generalisasi hanya dilakukan ketika aktor-aktor tersebut memiliki tujuan dan perilaku interaksi yang sama terhadap use-case tertentu.

Identifikasi dan Pembatasan Peran

Identifikasi peran aktor dimulai dengan menentukan:

  1. Entitas eksternal yang berinteraksi dengan sistem
  2. Tanggung jawab spesifik masing-masing entitas
  3. Batasan wewenang dan kebutuhan informasi

Contoh dalam sistem perpustakaan kampus: meskipun dosen dan mahasiswa sama-sama dapat meminjam buku, dosen memiliki kuota pinjam lebih besar dan akses ke koleksi khusus. Jika perbedaan ini signifikan terhadap alur sistem, kedua peran harus dipisahkan meskipun memiliki beberapa kesamaan fungsional.

Teknik Pemodelan Peran Efektif

  1. Gunakan terminologi yang mencerminkan tanggung jawab bukan jabatan (misal: “Peminjam” bukan “Mahasiswa”)
  2. Definisikan hierarki peran untuk relasi generalisasi/spesialisasi
  3. Buat matriks tanggung jawab untuk mengidentifikasi overlap
  4. Dokumentasi batasan setiap peran dalam skenario

Contoh praktis: Pada sistem e-commerce, “Pembeli” dan “Penjual” merupakan peran terpisah meskipun satu user bisa memiliki kedua peran tersebut. Generalisasi tidak tepat karena tiap peran memiliki use-case yang berbeda secara fundamental.

Summary

Generalisasi aktor merupakan teknik optimasi model dengan mengelompokkan aktor-aktor spesifik yang memiliki tanggung jawab dan interaksi serupa ke dalam kategori umum. Proses identifikasi peran memerlukan analisis perbedaan fungsional, kebutuhan informasi, dan otoritas akses untuk menentukan batasan generalisasi yang tepat. Pemodelan peran efektif membutuhkan pemilihan terminologi semantik yang akurat dan dokumentasi batasan interaksi untuk menghindari ambiguitas dalam implementasi sistem.