1 / 28

Class Diagram

Class Diagram. E. Haodudin Nurkifli Universitas Ahmad Dahlan Pertemuan. CLASS DIAGRAM. Sebuah class adalah merupakan sebuah kategori/kelompok benda-benda dialam atau kelompok dari benda-benda yang mempunyai atribute yang sama dan prilaku (behaviour) yang sama

celina
Download Presentation

Class Diagram

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Class Diagram E. Haodudin Nurkifli Universitas Ahmad Dahlan Pertemuan

  2. CLASS DIAGRAM • Sebuah class adalah merupakan sebuah kategori/kelompok benda-benda dialam atau kelompok dari benda-benda yang mempunyai atribute yang sama dan prilaku (behaviour) yang sama • Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. • Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). • Menggambarkan struktur dan deskripsi class, package dan object beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. • Class memiliki tiga area pokok : • Nama (dan stereotype) • Atribut • Metoda • Sifat Atribut serta Metoda : • Private(tidak dapat dipanggil dari luar class ) • Protected ( dapat dipanggil oleh class yang bersangkutan dan yang mewarisinya) • Public (dapat dipanggil oleh siapa saja)

  3. Class Diagram Class Diagram Format and sample class: Package::Class Person visibility attribute:Type= Default value - name:String - address:String visibility Operation (Parameter):Return Type +setAddress(address:String) +getAddress():String +setName(name:String) +getName():String Visibility + Public : Able to access from any classes # Protected : Able to access from same class and its inherited classes ˜Package : Able to access within same package - Private : Able to access from same class

  4. Relasi Antar Class • Assosiation • Dependency • Links • Generalization • Realization

  5. Relasi antar class Class Diagram Format and association: Class Name Class Name Navigability Role name Association name Role name Attributes Attributes 1 1..* Operations (Methods) Operations (Methods) Multiplicity Multiplicity Notation 1 : One and only one 0..* : None or more 1..* : One or more 0..1 : None or one

  6. Relasi Class - Assosiation • Hubungan statis antar class • nama relasi : has a (mempunyai) • Dibedakan menjadi dua macam hubungan khusus : • Aggregration • Composite

  7. Assosiation - Aggregation • hubungan yang menyatakan class dan bagian komponennya • Dinyatakan sebagai suatu bagian sebuah class yang utuh (the whole class) dan class componennya • Sebuah garis menghubungkan antara “whole class” dan ccomponen class dengan sebuah belah ketupat yang tertutup di ujung dekat whole class • Contoh : relasi class Komputer dengan komponenny

  8. CPU Box Keyboard Classcomputer- Aggregation

  9. Assosiation - composite • agrregration yg sangat kuat • Setiap komponen dalam relasi composite dapat memiliki hanya satu “whole class” • Simbol : belah ketupat yang diblok • Contoh : relasi meja dengan komponennya

  10. Class Diagram: Composit,Generalization The Class Diagram illustrates how the object classes of a use case are related. It consists of Class, Interface, and Relationship : Restaurant Employee Table 1 4 TableTop Leg Waiter(pelayan) Chef (kepala Tukang masak) • Chef is-a employee(Generalization) • Waiter is-a employee(Generalization) • Restaurant has-a table (Composition) • Restaurant has-a employee (Aggregation) • Table has-a Table Top & Leg (composite)

  11. Assosiation Type • Unary Assosiation (suatu class berhubungan dengan dirinya sendiri • Binary Assosiaton (dua buah class saling berhubungan • Ternary Assosiation : Tiga buah class saling berhubungan • n-ary Assosiation : banyak kelas saling berhubungan

  12. Class name Class name Class name Class name Class name Employee Assosiation name atribute atribute atribute atribute atribute Operations Operations Operations Operations Operations + manages Multiplicity Assosiation name Assosiation Type 1. Unary Assosiation 2. Benary Assosiation 2. Ternary Assosiation

  13. Class Diagram Association: Association name Work Company Person Name Direction Arrow Navigability: Navigability (Direction of association) has Order Order Item

  14. Multiplicity (kardinalitas) • Jumlah relasi dimana sebuah object mengambil bagian dalam assosiasi • Jumlah relasi diindikasikan dengan dua nilai : pertama minimum relasi dan maksimum

  15. Class Diagram Aggregation : Aggregation Indicator Multiplicity 1 1 Person Company Owner (pemilik) 1 Role 1..* Person Employee (pegawai) Company owner:Person employee[]:Person Detail of the class

  16. Class Diagram Composition : 1 1 Handle Car handle 1 1 1 Engine engine Car 4 handle:Handle engine[]:Enginetire[4]:Tire Tire tire Detail of the class

  17. Player Plays on Team Employee(pegawai) employer Plays on Player Team Employs (memperkerjakan)

  18. {ordered} servers Customer BankTeller HighSchoolStudent academic Choose {or} Choose Commercial Constrain assosiation • Terkadang sebuah assosiation antara dua class mengikuti sebuah rule sesuai batasannya (constraint) • BankTeller melayani customer tapi setiap customer di layani dalam suatu order • Untuk mengidikasikan sebuah konstraint dengan memberikan role name ordered yang ditulis diantara tanda {...} pada class customer

  19. Links Plays on GoldTeam:Team Budi:Player Plays on :Team :Player Assosiation Relasi class - Links • Link digunakan untuk merelasikan dua buah class secara spesifik • Merupakan assosiation yang sangat spesifik • Assosiation name ditulis dengan underline • Contoh untuk merelasikan siapa yang bermain dalam suatu tim khusus

  20. Employee Waiter(pelayan) Chef (kepala Tukang masak) Relasi Class - Generalization • Hubungan hirarkis antar class. • Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class. • Nama relasi : is a (adalah)

  21. System Form dispalyForm() Relasi Class - Dependency • Digunakan untuk menunjukkan sebagai tanda bahwa suatu operasi dari suatu class menggunakan class yang lain • Mesalnya : penggunaan menu untuk memilih form yang akan diisi

  22. Abstract classes • Sama dengan class biasa bedanya abstract class memiliki method yang kosong untuk didefinisikan oleh user sendiri • Tidak bisa dibuat obyeknya karena ada method yang kosong • Hanya dapat di turunkan (di-inherit-kan) ke subclass dan sub class tersebut akan mendefinisikan method yang kosong tersebut • Dalam class diagram nama dari abstract class di tulis dengan huruf miring atau dengan memberikan role / keyword “{abstract}” pada class name-nya • Contoh : Basketball model

  23. Interface • adalah suatu pengaturan operasi (set of operations) yang menetapkan beberapa aspek/pengarah dari suatu perilaku kelas. • Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu • menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run-time.

  24. Person <<interface>> Control knob Washing Machine Person Washing Machine Relasi Class - Realization • Hubungan antara sebuah class dengan suatu interface • Menggunakan simbol garis putus-putus dan segtiga tidak di blok Realization dependency UML 1.5 Symbol UML 2.0 symbol CotrolKnob

  25. Computer Mouse MousePort Interface & Ports • Port Digunakan untuk menghubungkan antara sebuah interface dengan sebuah class • Contoh : mouse adalah sebuah interface untuk sebuah computer (class) sedangkan mouseport adalah sebuah port yang menghubungkan mouse (interface) denga komputer (class) • Object mouse didefinisikan sebagi sebuah object yang memiliki event-event seperti : click(), move(), up(),down(),dan programmer yang akan menggunakan event mouse dalam programnyadiharuskan mendefinisikan seluruh behaviour(event) yang dimiliki mouse tersebut. Jika tidak ingin melakukan apa-apa ketika mouse digerakkan maka cukup mendeklarasikan ulang method kosong dari interface tersebut • UML 2.0 symbol

  26. CONTOH CLASS DIAGRAM

  27. Packege • Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package. • Kita juga dapat membuat diagram yang terdiri atas package.

More Related