SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
Pemrograman Berorientasi
        Obyek
       Class Diagram
     anton@ukdw.ac.id
What is UML ?
• Sebuah bahasa pemodelan terstandar untuk
  bahasa pemrograman berorientasi obyek

• UML merupakan perpaduan dari tiga
  paradigma pemodelan sistem object oriented:
  – OMT (James Rumbaugh)
  – OOSE (Ivan Jacobson)
  – Booch (Grady Booch)
What is UML ?
• UML bukan alat untuk membuat software,
  UML membantu membuat model dari
  software yang akan dibuat

• UML berupa gambar, berisi notasi-notasi
  untuk membuat software blueprints
  (rancangan)
• Digunakan juga untuk mendokumentasikan
Why is UML Important
• UML untuk membuat software blueprints bagi
  analysts, designers dan programmers

• UML merupakan bahasa “universal” untuk pihak-
  pihak yang terlibat dalam pembuatan suatu
  software

• Pada OO, modelling merupakan bagian yang
  sangat penting. UML membantu proses
  modelling tersebut
What is UML goals ?
• Menyediakan seperangkat notasi dan tools
  untuk melakukan pemodelan software dengan
  sederhana dan mudah digunakan

• UML bersifat independen dari bahasa
  pemrograman tertentu, UML bukan bahasa
  pemrograman, UML hanya berupa notasi
  untuk pemodelan software
Who is need UML ?
• Semua pihak yang terlibat dalam pembuatan
  software

• System Analysts, Programmers, Business
  Designer, dsb

• UML berupa notasi-notasi yang berupa gambar
  sehingga mudah untuk dipelajari, selain itu UML
  juga tidak terkait pada bahasa pemrograman
  tertentu
UML Diagrams
• Tipe diagram pada UML dibagi menjadi 2 kategori :

• Structure Diagrams
  Diagram yang menggambarkan aspek statis dari system
  yang kita buat
  - Contoh: Class Diagram

• Behavior Diagrams
  Diagram yang menggambarkan aspek dinamis dari
  system yang kita buat
  - Contoh: Activity Diagram, Sequence Diagram
Diagrams in the UML
•   Class diagram
•   Object diagram
•   Use case diagram
•   Sequence diagram
•   Collaboration diagram
•   Statechart diagram
•   Activity diagram
•   Component diagram
•   Deployment diagram
Class Diagram
Apa yang ada pada class diagram
  Class dan interface beserta atribut dan method-
  nya
  Relasi yang terjadi antar objek
  Constraint terhadap objek-objek yang saling
  berhubungan
  Inheritance untuk organisasi class yang lebih baik
Class Diagram
• A class diagram consists of three
  sections:
  – The upper part holds the name of the class
  – The middle part contains the attributes of
    the class
  – The bottom part gives the methods or
    operations the class can take or undertake
Tools
• Free Solution:

•   Dia (Gnome)
•   IBM Rational Modeler
•   Kivio (KDE)
•   Netbeans
•   Umbrello UML Modeller (KDE)
•   StarUML
•   ArgoUML
Tools
• Proprietary Solution :

•   Microsoft Visio
•   Rational Software Architects
•   Enterprise Architects
•   Poseidon for UML
Structural Modeling: Core Elements
Construct Description                               Syntax
class     a description of a set of objects
          that share the same attributes,
          operations, methods, relationships
          and semantics.
interface a named set of operations that
                                                        «interface»
          characterize the behavior of an
          element.
component a modular, replaceable and
          significant part of a system that
          packages implementation and
          exposes a set of interfaces.
node      a run-time physical object that
          represents a computational
          resource.

                               Reference: OMG tutorial on UML by Cris Kobryn
Structural Modeling: Core Elements
                                    (cont’d)

Construct       Description                                 Syntax
constraint¹     a semantic condition or restriction.
                                                               {constraint}




¹ An extension mechanism useful for specifying structural elements.




                                         Reference: OMG tutorial on UML by Cris Kobryn
Structural Modeling:
                   Core Relationships
Construct       Description                                  Syntax
association    a relationship between two or more
               classifiers that involves connections
               among their instances.
aggregation    A special form of association that
               specifies a whole-part relationship
               between the aggregate (whole) and
               the component part.
generalization a taxonomic relationship between a
               more general and a more specific
               element.
dependency     a relationship between two modeling
               elements, in which a change to one
               modeling element (the independent
               element) will affect the other modeling
               element (the dependent element).

                                   Reference: OMG tutorial on UML by Cris Kobryn
Structural Modeling:
                Core Relationships (cont’d)

Construct     Description                                Syntax
realization   a relationship between a specification
              and its implementation.




                                  Reference: OMG tutorial on UML by Cris Kobryn
Class Diagrams
• Notasi class digambarkan dengan kotak seperti
  contoh berikut:
Class Diagrams




• Modifier akses dilambangkan dengan 3 macam
  notasi:
  – (+)   public
  – (-)   private
  – (#)   protected
Class Diagrams
Notasi dari atribut
  visibility name: type multiplicity = default {property-string}
Contoh
  - name: String [1] = "Untitled" {readOnly}
  + berarti public, - berarti private, # berarti protected
  “Untitled” adalah nilai yang diberikan secara default
  jika tidak ditentukan saat objek dibuat
  {readOnly} adalah properti tambahan dari atribut,
  dimana disini berarti tidak bisa dimodifikasi
Class Diagrams
  Notasi dari operations
     visibility name (parameter-list) : return-type {property-string}
  Parameter pada parameter-list dinotasikan seperti pada
  atribut
     direction name: type = default value
     direction bisa berupa: in, out, atau inout
  Contoh
     + balanceOn (in date: Date) : Money
• Bagaimana dengan constructor?
  – Sama dengan methods
     • visibility name_constructor([parameter-list])
Atribut dan Method
Class Diagrams
• Contoh: Buatlah class diagram dari program java
  di bawah ini:
 class Anjing {
    public Anjing() {
      System.out.println("Anjing tercipta");
    }
    public String bersuara() {
      System.out.println("Guk guk guk");
    }
    public void makan(String makanan) {
      System.out.println("Sedang makan "+makanan);
    }
 }
Class Diagrams
• Bagaimana kalau class tersebut merupakan
  abstract class?
• Bagaimana dengan abstract methods?
• Bagaimana kalau ada beberapa kelas
  dimasukkan dalam satu package?
• Bagaimana dengan interface?
Class Diagrams Example
Class Diagrams
• Bagaimana kalau ada hubungan antar class
  seperti inheritance, agrregation, composition,
  dsb.?
• Inheritance:
Generalization
Class Diagrams
• Association:
Class Diagrams
• Composition:
Class Diagrams
• Whole-part (aggregation):
Composition
'has a' or 'contains a' relationship (whole-part)
  Kampus memiliki fakultas CS atau kampus terdiri
  dari fakultas CS (salah satunya)
  Jika tidak ada fakultas, tidak mungkin ada kampus
Aggregation
Sebuah ruangan memiliki meja dan kursi
Tanpa kehadiran ruang, meja dan kursi bisa
tetap ada
Class diagram Example
Class diagram Example
NEXT
• Exception Handling in Java

Weitere ähnliche Inhalte

Was ist angesagt?

Tugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-Commerce
Tugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-CommerceTugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-Commerce
Tugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-CommerceSamsul Arifin
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)rizki adam kurniawan
 
[RPL2] Class Diagram dan Relasinya (2)
[RPL2] Class Diagram dan Relasinya (2)[RPL2] Class Diagram dan Relasinya (2)
[RPL2] Class Diagram dan Relasinya (2)rizki adam kurniawan
 
Pertemuan 10a-apbo-pemetaan-uml-ke-dalam-java
Pertemuan 10a-apbo-pemetaan-uml-ke-dalam-javaPertemuan 10a-apbo-pemetaan-uml-ke-dalam-java
Pertemuan 10a-apbo-pemetaan-uml-ke-dalam-javaAbi Bobon
 
Bab 5 diagram uml dan prosess modeling 2010
Bab 5 diagram uml dan prosess modeling 2010Bab 5 diagram uml dan prosess modeling 2010
Bab 5 diagram uml dan prosess modeling 2010donasiilmu
 
Pertemuan 9b-apbo-diagram-klass-dan-relasi
Pertemuan 9b-apbo-diagram-klass-dan-relasiPertemuan 9b-apbo-diagram-klass-dan-relasi
Pertemuan 9b-apbo-diagram-klass-dan-relasiAbi Bobon
 
Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454alvinyosua
 
Tugas3 0916-[agung saputro]-[1111511505]
Tugas3 0916-[agung saputro]-[1111511505]Tugas3 0916-[agung saputro]-[1111511505]
Tugas3 0916-[agung saputro]-[1111511505]Agung Saputro
 
Tugas 3 rekayasa web
Tugas 3 rekayasa webTugas 3 rekayasa web
Tugas 3 rekayasa webmuslim rohadi
 
Tugas 3 rekweb laily fitria 1412510511
Tugas 3 rekweb laily fitria 1412510511Tugas 3 rekweb laily fitria 1412510511
Tugas 3 rekweb laily fitria 1412510511lailyfitria
 

Was ist angesagt? (19)

Bab III Class Diagram
Bab III Class DiagramBab III Class Diagram
Bab III Class Diagram
 
Tugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-Commerce
Tugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-CommerceTugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-Commerce
Tugas kelompok 2 (RekWeb) # Penjelasan UML & Flowchart Project E-Commerce
 
[RPL2] Package Diagram
[RPL2] Package Diagram[RPL2] Package Diagram
[RPL2] Package Diagram
 
Modul uml
Modul umlModul uml
Modul uml
 
Tugas umll
Tugas umllTugas umll
Tugas umll
 
[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)[RPL2] Class Diagram dan Konsep Object Oriented (1)
[RPL2] Class Diagram dan Konsep Object Oriented (1)
 
[RPL2] Class Diagram dan Relasinya (2)
[RPL2] Class Diagram dan Relasinya (2)[RPL2] Class Diagram dan Relasinya (2)
[RPL2] Class Diagram dan Relasinya (2)
 
Class diagram
Class diagramClass diagram
Class diagram
 
Pertemuan 10a-apbo-pemetaan-uml-ke-dalam-java
Pertemuan 10a-apbo-pemetaan-uml-ke-dalam-javaPertemuan 10a-apbo-pemetaan-uml-ke-dalam-java
Pertemuan 10a-apbo-pemetaan-uml-ke-dalam-java
 
[PBO] Pertemuan 6 - Abstrak
[PBO] Pertemuan 6 - Abstrak[PBO] Pertemuan 6 - Abstrak
[PBO] Pertemuan 6 - Abstrak
 
Uml
UmlUml
Uml
 
Bab 5 diagram uml dan prosess modeling 2010
Bab 5 diagram uml dan prosess modeling 2010Bab 5 diagram uml dan prosess modeling 2010
Bab 5 diagram uml dan prosess modeling 2010
 
Uml
UmlUml
Uml
 
Tugas 3
Tugas 3Tugas 3
Tugas 3
 
Pertemuan 9b-apbo-diagram-klass-dan-relasi
Pertemuan 9b-apbo-diagram-klass-dan-relasiPertemuan 9b-apbo-diagram-klass-dan-relasi
Pertemuan 9b-apbo-diagram-klass-dan-relasi
 
Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454Tugas 3 ki-0316-alvin yosua-1411510454
Tugas 3 ki-0316-alvin yosua-1411510454
 
Tugas3 0916-[agung saputro]-[1111511505]
Tugas3 0916-[agung saputro]-[1111511505]Tugas3 0916-[agung saputro]-[1111511505]
Tugas3 0916-[agung saputro]-[1111511505]
 
Tugas 3 rekayasa web
Tugas 3 rekayasa webTugas 3 rekayasa web
Tugas 3 rekayasa web
 
Tugas 3 rekweb laily fitria 1412510511
Tugas 3 rekweb laily fitria 1412510511Tugas 3 rekweb laily fitria 1412510511
Tugas 3 rekweb laily fitria 1412510511
 

Ähnlich wie Pbo10

Modul Unified modeling language (UML)
Modul Unified modeling language (UML)Modul Unified modeling language (UML)
Modul Unified modeling language (UML)Holong Nainggolan
 
UML (Unified Modeling Language) - Rekayasa Perangkat Lunak
UML (Unified Modeling Language) - Rekayasa Perangkat LunakUML (Unified Modeling Language) - Rekayasa Perangkat Lunak
UML (Unified Modeling Language) - Rekayasa Perangkat Lunakraissazivana
 
Tugas3-0916-oktonato glavikantara-1612510675
Tugas3-0916-oktonato glavikantara-1612510675Tugas3-0916-oktonato glavikantara-1612510675
Tugas3-0916-oktonato glavikantara-1612510675pika glavikantara
 
Tugas 3 rekayasaweb
Tugas 3 rekayasawebTugas 3 rekayasaweb
Tugas 3 rekayasawebSugianto oo
 
Tugas 3 ku - 0316 - raden doni wijoyo - 1311511057
Tugas 3   ku - 0316 - raden doni wijoyo - 1311511057Tugas 3   ku - 0316 - raden doni wijoyo - 1311511057
Tugas 3 ku - 0316 - raden doni wijoyo - 1311511057Doni Wijoyo
 
Tugas 3 individu rekayasa web 0916
Tugas 3 individu rekayasa web 0916Tugas 3 individu rekayasa web 0916
Tugas 3 individu rekayasa web 0916rangga priyatna
 
Uml yusep wendy budiman
Uml yusep wendy budimanUml yusep wendy budiman
Uml yusep wendy budimanYusep Budiman
 
10. unified modeling language
10. unified modeling language10. unified modeling language
10. unified modeling languageStevenFernando9
 
Tugas 3 (individu) rekayasa web 0316
Tugas 3 (individu) rekayasa web 0316Tugas 3 (individu) rekayasa web 0316
Tugas 3 (individu) rekayasa web 0316septianarul
 
MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)Febry Mbah Man
 
diagram UML
diagram UMLdiagram UML
diagram UMLoky_put
 

Ähnlich wie Pbo10 (20)

Proposal.pptx
Proposal.pptxProposal.pptx
Proposal.pptx
 
Unified Modelling Language (UML)
Unified Modelling Language (UML)Unified Modelling Language (UML)
Unified Modelling Language (UML)
 
Tugas3 rekayasa web
Tugas3 rekayasa webTugas3 rekayasa web
Tugas3 rekayasa web
 
UML
UMLUML
UML
 
Modul Unified modeling language (UML)
Modul Unified modeling language (UML)Modul Unified modeling language (UML)
Modul Unified modeling language (UML)
 
UML (Unified Modeling Language) - Rekayasa Perangkat Lunak
UML (Unified Modeling Language) - Rekayasa Perangkat LunakUML (Unified Modeling Language) - Rekayasa Perangkat Lunak
UML (Unified Modeling Language) - Rekayasa Perangkat Lunak
 
Tugas3-0916-oktonato glavikantara-1612510675
Tugas3-0916-oktonato glavikantara-1612510675Tugas3-0916-oktonato glavikantara-1612510675
Tugas3-0916-oktonato glavikantara-1612510675
 
Tugas 3 rekayasaweb
Tugas 3 rekayasawebTugas 3 rekayasaweb
Tugas 3 rekayasaweb
 
Modul uml
Modul umlModul uml
Modul uml
 
Tugas 3 ku - 0316 - raden doni wijoyo - 1311511057
Tugas 3   ku - 0316 - raden doni wijoyo - 1311511057Tugas 3   ku - 0316 - raden doni wijoyo - 1311511057
Tugas 3 ku - 0316 - raden doni wijoyo - 1311511057
 
Uml
UmlUml
Uml
 
Tugas 3 individu rekayasa web 0916
Tugas 3 individu rekayasa web 0916Tugas 3 individu rekayasa web 0916
Tugas 3 individu rekayasa web 0916
 
TD-635-02-PSBO
TD-635-02-PSBOTD-635-02-PSBO
TD-635-02-PSBO
 
Uml yusep wendy budiman
Uml yusep wendy budimanUml yusep wendy budiman
Uml yusep wendy budiman
 
10. unified modeling language
10. unified modeling language10. unified modeling language
10. unified modeling language
 
Modul uml
Modul umlModul uml
Modul uml
 
Tugas 3 (individu) rekayasa web 0316
Tugas 3 (individu) rekayasa web 0316Tugas 3 (individu) rekayasa web 0316
Tugas 3 (individu) rekayasa web 0316
 
MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)
 
diagram UML
diagram UMLdiagram UML
diagram UML
 
Uml
UmlUml
Uml
 

Kürzlich hochgeladen

Diagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiDiagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiOviLarassaty1
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfWahyudinST
 
Modul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunModul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunnhsani2006
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdfWahyudinST
 
PPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptPPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptBennyKurniawan42
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfEmeldaSpd
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxFardanassegaf
 
Modul Ajar IPA Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPA Kelas 7 Fase D Kurikulum MerdekaModul Ajar IPA Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPA Kelas 7 Fase D Kurikulum MerdekaAbdiera
 
KISI-KISI Soal PAS Geografi Kelas XII.docx
KISI-KISI Soal PAS Geografi Kelas XII.docxKISI-KISI Soal PAS Geografi Kelas XII.docx
KISI-KISI Soal PAS Geografi Kelas XII.docxjohan effendi
 
Aksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptxAksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptxdonny761155
 
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdfJaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdfHendroGunawan8
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfNURAFIFAHBINTIJAMALU
 
(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaru(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaruSilvanaAyu
 
Silabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.docSilabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.docNurulAiniFirdasari1
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaSABDA
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimNodd Nittong
 
PLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukanPLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukanssuserc81826
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...Riyan Hidayatullah
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxLeniMawarti1
 
Elemen Jurnalistik Ilmu Komunikasii.pptx
Elemen Jurnalistik Ilmu Komunikasii.pptxElemen Jurnalistik Ilmu Komunikasii.pptx
Elemen Jurnalistik Ilmu Komunikasii.pptxGyaCahyaPratiwi
 

Kürzlich hochgeladen (20)

Diagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiDiagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran Berdifferensiasi
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdf
 
Modul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunModul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaun
 
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
5. HAK DAN KEWAJIBAN JEMAAH indonesia.pdf
 
PPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptPPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.ppt
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
 
Modul Ajar IPA Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPA Kelas 7 Fase D Kurikulum MerdekaModul Ajar IPA Kelas 7 Fase D Kurikulum Merdeka
Modul Ajar IPA Kelas 7 Fase D Kurikulum Merdeka
 
KISI-KISI Soal PAS Geografi Kelas XII.docx
KISI-KISI Soal PAS Geografi Kelas XII.docxKISI-KISI Soal PAS Geografi Kelas XII.docx
KISI-KISI Soal PAS Geografi Kelas XII.docx
 
Aksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptxAksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptx
 
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdfJaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdf
 
(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaru(NEW) Template Presentasi UGM yang terbaru
(NEW) Template Presentasi UGM yang terbaru
 
Silabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.docSilabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.doc
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
 
PLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukanPLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukan
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
 
Elemen Jurnalistik Ilmu Komunikasii.pptx
Elemen Jurnalistik Ilmu Komunikasii.pptxElemen Jurnalistik Ilmu Komunikasii.pptx
Elemen Jurnalistik Ilmu Komunikasii.pptx
 

Pbo10

  • 1. Pemrograman Berorientasi Obyek Class Diagram anton@ukdw.ac.id
  • 2.
  • 3. What is UML ? • Sebuah bahasa pemodelan terstandar untuk bahasa pemrograman berorientasi obyek • UML merupakan perpaduan dari tiga paradigma pemodelan sistem object oriented: – OMT (James Rumbaugh) – OOSE (Ivan Jacobson) – Booch (Grady Booch)
  • 4. What is UML ? • UML bukan alat untuk membuat software, UML membantu membuat model dari software yang akan dibuat • UML berupa gambar, berisi notasi-notasi untuk membuat software blueprints (rancangan) • Digunakan juga untuk mendokumentasikan
  • 5. Why is UML Important • UML untuk membuat software blueprints bagi analysts, designers dan programmers • UML merupakan bahasa “universal” untuk pihak- pihak yang terlibat dalam pembuatan suatu software • Pada OO, modelling merupakan bagian yang sangat penting. UML membantu proses modelling tersebut
  • 6. What is UML goals ? • Menyediakan seperangkat notasi dan tools untuk melakukan pemodelan software dengan sederhana dan mudah digunakan • UML bersifat independen dari bahasa pemrograman tertentu, UML bukan bahasa pemrograman, UML hanya berupa notasi untuk pemodelan software
  • 7. Who is need UML ? • Semua pihak yang terlibat dalam pembuatan software • System Analysts, Programmers, Business Designer, dsb • UML berupa notasi-notasi yang berupa gambar sehingga mudah untuk dipelajari, selain itu UML juga tidak terkait pada bahasa pemrograman tertentu
  • 8. UML Diagrams • Tipe diagram pada UML dibagi menjadi 2 kategori : • Structure Diagrams Diagram yang menggambarkan aspek statis dari system yang kita buat - Contoh: Class Diagram • Behavior Diagrams Diagram yang menggambarkan aspek dinamis dari system yang kita buat - Contoh: Activity Diagram, Sequence Diagram
  • 9. Diagrams in the UML • Class diagram • Object diagram • Use case diagram • Sequence diagram • Collaboration diagram • Statechart diagram • Activity diagram • Component diagram • Deployment diagram
  • 10. Class Diagram Apa yang ada pada class diagram Class dan interface beserta atribut dan method- nya Relasi yang terjadi antar objek Constraint terhadap objek-objek yang saling berhubungan Inheritance untuk organisasi class yang lebih baik
  • 11. Class Diagram • A class diagram consists of three sections: – The upper part holds the name of the class – The middle part contains the attributes of the class – The bottom part gives the methods or operations the class can take or undertake
  • 12. Tools • Free Solution: • Dia (Gnome) • IBM Rational Modeler • Kivio (KDE) • Netbeans • Umbrello UML Modeller (KDE) • StarUML • ArgoUML
  • 13. Tools • Proprietary Solution : • Microsoft Visio • Rational Software Architects • Enterprise Architects • Poseidon for UML
  • 14. Structural Modeling: Core Elements Construct Description Syntax class a description of a set of objects that share the same attributes, operations, methods, relationships and semantics. interface a named set of operations that «interface» characterize the behavior of an element. component a modular, replaceable and significant part of a system that packages implementation and exposes a set of interfaces. node a run-time physical object that represents a computational resource. Reference: OMG tutorial on UML by Cris Kobryn
  • 15. Structural Modeling: Core Elements (cont’d) Construct Description Syntax constraint¹ a semantic condition or restriction. {constraint} ¹ An extension mechanism useful for specifying structural elements. Reference: OMG tutorial on UML by Cris Kobryn
  • 16. Structural Modeling: Core Relationships Construct Description Syntax association a relationship between two or more classifiers that involves connections among their instances. aggregation A special form of association that specifies a whole-part relationship between the aggregate (whole) and the component part. generalization a taxonomic relationship between a more general and a more specific element. dependency a relationship between two modeling elements, in which a change to one modeling element (the independent element) will affect the other modeling element (the dependent element). Reference: OMG tutorial on UML by Cris Kobryn
  • 17. Structural Modeling: Core Relationships (cont’d) Construct Description Syntax realization a relationship between a specification and its implementation. Reference: OMG tutorial on UML by Cris Kobryn
  • 18. Class Diagrams • Notasi class digambarkan dengan kotak seperti contoh berikut:
  • 19. Class Diagrams • Modifier akses dilambangkan dengan 3 macam notasi: – (+) public – (-) private – (#) protected
  • 20. Class Diagrams Notasi dari atribut visibility name: type multiplicity = default {property-string} Contoh - name: String [1] = "Untitled" {readOnly} + berarti public, - berarti private, # berarti protected “Untitled” adalah nilai yang diberikan secara default jika tidak ditentukan saat objek dibuat {readOnly} adalah properti tambahan dari atribut, dimana disini berarti tidak bisa dimodifikasi
  • 21. Class Diagrams Notasi dari operations visibility name (parameter-list) : return-type {property-string} Parameter pada parameter-list dinotasikan seperti pada atribut direction name: type = default value direction bisa berupa: in, out, atau inout Contoh + balanceOn (in date: Date) : Money • Bagaimana dengan constructor? – Sama dengan methods • visibility name_constructor([parameter-list])
  • 23. Class Diagrams • Contoh: Buatlah class diagram dari program java di bawah ini: class Anjing { public Anjing() { System.out.println("Anjing tercipta"); } public String bersuara() { System.out.println("Guk guk guk"); } public void makan(String makanan) { System.out.println("Sedang makan "+makanan); } }
  • 24. Class Diagrams • Bagaimana kalau class tersebut merupakan abstract class? • Bagaimana dengan abstract methods? • Bagaimana kalau ada beberapa kelas dimasukkan dalam satu package? • Bagaimana dengan interface?
  • 26. Class Diagrams • Bagaimana kalau ada hubungan antar class seperti inheritance, agrregation, composition, dsb.? • Inheritance:
  • 31. Composition 'has a' or 'contains a' relationship (whole-part) Kampus memiliki fakultas CS atau kampus terdiri dari fakultas CS (salah satunya) Jika tidak ada fakultas, tidak mungkin ada kampus
  • 32. Aggregation Sebuah ruangan memiliki meja dan kursi Tanpa kehadiran ruang, meja dan kursi bisa tetap ada
  • 35.