Generalization, Include, dan Extend


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:





5 komentar:

Diberdayakan oleh Blogger.

Copyright © / riffStudio

Template by : Urang-kurai / powered by :blogger