Generalization merupakan sebuah taxonomic
relationship antara class yang
lebih umum dengan class yang lebih
spesifik dengan mengekstraksi karateristik bersama dari dua atau lebih kelas,
dan menggabungkan mereka ke superclass umum. Karateristik bersama dapat menjadi
atribut asosiasi atau metode. Dengan kata lain class yang lebih spesifik
(subclass) atau “subclass is superclass”.
Dengan menggunakan notasi generalization ini konsep inheritance dari prinsip
hirarki dapat dimodelkan. Hubungan generalisasi digunakan di kelas penyebaran
komponen dan mengunakan diagram kasus. Untuk memenuhi semantik UML, elemen
model dalam hubungan generalisasi harus jenis yang sama, sebagai contoh
hubungan generalisasi dapat digunakan antara aktor atau antara kasus penggunaan
namun tidak dapat digunakan antara aktor dan use case.
Notasi Generalisasi
Pada gambar di bawah ini salah satu contoh
penggunaan generalisasi, terdapat piece kelas bagasi (1) dan piece of cargo (2)
sebagian berbagi atribut yang sama. Dari prespektif domain, dua kelas juga
sangat mirip. Selama generalisasi karateristik bersama (3) digabungkan dan
digunakan untuk membuat superclass baru pengangkutan (4). Piece of bagasi (5)
dan piece of cargoo (6) menjadi superclass dari pengangkutan kelas. Atribut bersama
(3) hanya tercatat dalam superclass, tetapi juga berlaku untk dua kelas
xubclass, meskipun mereka tidak terdaftar di sana:
Contoh
Generalisasi
Include
adalah keterhubungan antar usecase yang menunjukkan bahwa usecase asal secara
eksplisit memasukkan perilaku dari usecase lain yang ditunjukkan oleh usecase. Include
usecase tidak pernah berdiri sendiri, tetapi hanya erupkan bagian dari beberapa
usecase yang lebih besar yang diikiutinya. Keterhubungan usecase secara include
pada dasarnya merupakan sebuah contoh dari pendelegasian – sekumpulan dari
tanggung jawab sebuah sistem diambil dan ditangkap di dalam satu tempat
(include use case)-kemudian bagian
lainnya dari sistem (use case) tersebut. Dan include menggambarkan suatu
use-case seluruhnya meliputi kegunaan dari use-case lain sebagai bagian dari
proses dalam dirinya. Secara umum diasumsikan bahwa use-case yang di-include
dieksekusi secara normal. Sebuah use-case dapat di-include oleh lebih dari
use-case lain, sehingga duplikasi fungsional dapat dihindari.
Extend merupakan
hubungan usecase dengan menunjukkan bahwa use case yang ditunjukan merupakan
perluasan perilaku dariuse case asal. Use case asala dapat berdiri sendiri,
tetapi untuk kondisi tertentu perilaku use case ersebut dapat diperluas oleh
perilaku dari use case lain. Hubungan perluasan digunakan untuk memodelkan
bagian dari use case yang dapat dilihat oleh user sebagai perilaku yang dapat
dipilih dari sistem. Hubungan perluasan juga dapat digunakan untuk memodelkan
sub aliran yang terpisah –pisah yang hanya dapat dijalankan dalam kondisi
tertentu. Dan extend digunakan untuk menggambarkan hubungan antar use case ang
menunjukkan bahwa satu use case merupakan fungsionalitas dari use case yang
lain jika kondisi atau syarat tertentu dipenuhi.
Dan untuk lebih
lengkap berikut ini merupakan contoh use casepada sistem sistem rumah
sakit yang terdapat include dan extend
di dalamnya:
makjossss anjinggg bikin bingung
BalasHapusBener2 ente kopong abies bang panji
BalasHapusjos om
BalasHapusPowered by vicky prastyo 😂
BalasHapusBener kampret bikin bingung
BalasHapus