SlideShare a Scribd company logo
1 of 36
Download to read offline
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

More Related Content

What's hot

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
 

What's hot (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
 

Similar to 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
 

Similar to 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
 

Recently uploaded

power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"baimmuhammad71
 
Stoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.pptStoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.pptannanurkhasanah2
 
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdfKanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdfAkhyar33
 
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfAksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfJarzaniIsmail
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxdpp11tya
 
MODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKA
MODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKAMODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKA
MODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKAAndiCoc
 
Modul Projek - Batik Ecoprint - Fase B.pdf
Modul Projek  - Batik Ecoprint - Fase B.pdfModul Projek  - Batik Ecoprint - Fase B.pdf
Modul Projek - Batik Ecoprint - Fase B.pdfanitanurhidayah51
 
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfAksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfEniNuraeni29
 
Membuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxMembuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxNurindahSetyawati1
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7IwanSumantri7
 
mengapa penguatan transisi PAUD SD penting.pdf
mengapa penguatan transisi PAUD SD penting.pdfmengapa penguatan transisi PAUD SD penting.pdf
mengapa penguatan transisi PAUD SD penting.pdfsaptari3
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDNurainiNuraini25
 
MATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITAS
MATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITASMATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITAS
MATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITASbilqisizzati
 
vIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxvIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxsyahrulutama16
 
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikaAtiAnggiSupriyati
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)MustahalMustahal
 
AKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMM
AKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMMAKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMM
AKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMMIGustiBagusGending
 
Materi Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptxMateri Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptxSaujiOji
 
Bab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptx
Bab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptxBab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptx
Bab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptxrizalhabib4
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSovyOktavianti
 

Recently uploaded (20)

power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"
 
Stoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.pptStoikiometri kelas 10 kurikulum Merdeka.ppt
Stoikiometri kelas 10 kurikulum Merdeka.ppt
 
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdfKanvas BAGJA prakarsa perubahan Ahyar.pdf
Kanvas BAGJA prakarsa perubahan Ahyar.pdf
 
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfAksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
 
MODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKA
MODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKAMODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKA
MODUL AJAR IPAS KELAS 6 KURIKULUM MERDEKA
 
Modul Projek - Batik Ecoprint - Fase B.pdf
Modul Projek  - Batik Ecoprint - Fase B.pdfModul Projek  - Batik Ecoprint - Fase B.pdf
Modul Projek - Batik Ecoprint - Fase B.pdf
 
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdfAksi Nyata PMM Topik Refleksi Diri (1).pdf
Aksi Nyata PMM Topik Refleksi Diri (1).pdf
 
Membuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxMembuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docx
 
CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7CAPACITY BUILDING Materi Saat di Lokakarya 7
CAPACITY BUILDING Materi Saat di Lokakarya 7
 
mengapa penguatan transisi PAUD SD penting.pdf
mengapa penguatan transisi PAUD SD penting.pdfmengapa penguatan transisi PAUD SD penting.pdf
mengapa penguatan transisi PAUD SD penting.pdf
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
 
MATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITAS
MATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITASMATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITAS
MATEMATIKA EKONOMI MATERI ANUITAS DAN NILAI ANUITAS
 
vIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsxvIDEO kelayakan berita untuk mahasiswa.ppsx
vIDEO kelayakan berita untuk mahasiswa.ppsx
 
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
 
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
Prakarsa Perubahan ATAP (Awal - Tantangan - Aksi - Perubahan)
 
AKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMM
AKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMMAKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMM
AKSI NYATA BERBAGI PRAKTIK BAIK MELALUI PMM
 
Materi Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptxMateri Sosialisasi US 2024 Sekolah Dasar pptx
Materi Sosialisasi US 2024 Sekolah Dasar pptx
 
Bab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptx
Bab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptxBab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptx
Bab 4 Persatuan dan Kesatuan di Lingkup Wilayah Kabupaten dan Kota.pptx
 
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptxSesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.pptx
Sesi 1_PPT Ruang Kolaborasi Modul 1.3 _ ke 1_PGP Angkatan 10.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.