Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pertemuan 7 Unified Modelling Language (UML) Tim Asisten Praktikum Rekayasa Perangkat Lunak 09/10 Departemen Ilmu komputer FMIPA, IPB.

Presentasi serupa


Presentasi berjudul: "Pertemuan 7 Unified Modelling Language (UML) Tim Asisten Praktikum Rekayasa Perangkat Lunak 09/10 Departemen Ilmu komputer FMIPA, IPB."— Transcript presentasi:

1 Pertemuan 7 Unified Modelling Language (UML) Tim Asisten Praktikum Rekayasa Perangkat Lunak 09/10 Departemen Ilmu komputer FMIPA, IPB

2 Apa itu UML ??? UML adalah keluarga notasi grafis yang didukung oleh meta‐model tunggal yang membantu pendeskripsian dan desain sistemperangkat lunak khususnya sistemyang dibangun menggunakan OOP

3 Mengapa perlu ‘model’ ??? Mengatur kompleksitas. Fasilitas komunikasi. Model :  Kemudahan dalam visualisasi seluruh sistem.  Membandingan segala kemungkinan yang ada  Perancangan

4 Mengapa UML ??? Menspesifikasi, memvisualisasi, dan mendokumentasikan model –model sistem perangkat lunak itu sendiri  Current and new systems  Structure dan design  Behavior dan interaction Notasi yang tidak ambigu dan konsisten Dokumentasi

5 UML 2.0 Structure diagram

6 UML 2.0 Behaviour diagram

7 Class Diagram Class diagram menjelaskan jenis‐jenis objek dalam sistem dan berbagai jenis hubungan statis yang terdapat di antara objek‐objek tersebut. Teknik pemodelan pokok yang berjalan hampir pada semua metode berorientasi objek Notasi terkaya dalam UML

8 Elemen penting dalam class diagram Class Attributes Operations  Relationships  Associations  Generalization  Dependency  Realization Constraint Rules and Notes

9 Classes Class merupakan deskripsi sekumpulan objek yang memiliki attributes, operations, relationships dan behavior yang sama.

10 Association Hubungan semantik antara dua atau lebih class yang menentukan koneksi antara instance ‐instance yang dimiliki class tersebut. Hubungan struktural → menerangkan bahwa objek‐objek dari suatu class terhubung dengan objek‐objek dari kelas lain (atau bisa juga kelas yang sama). Association antara dua class menandakan bahwa objek‐objek di suatu sisi pada association tersebut “mengenali” objek‐objek pada sisi lain association, dan dapat mengirimkan message.

11 Cont….

12

13

14 Cont…..

15 Aggregation Bentuk khusus association yang memodelkan hubungan whole‐part antara aggregate (the whole) dan bagian‐bagiannya. Object anggota dapat exist tanpa kelas yang melingkupinya. →Memodelkan hubungan “has”

16 Cont…. “ CPU merupakan bagian dari computer” “Sebuah car memiliki engine dan door sebagai bagiannya”

17 Aggregation vs Attribute Attribute : menggambarkan property of object. contoh : harga, berat, warna dari suatu laptop. Aggregation : menggambarkan assemblies of object. Contoh : CPU dan monitor merupakan bagian (penyusun) dari laptop.

18 Aggregation vs Association Apakah company merupakan agregasi dari employees ATAUKAH company merupakan bentuk asosiasi di antara employees ???

19 Composition Bentuk kuat dari aggregation. Hubungan “is a part of / is a” Objek anggota tidak dapat exist di luar kelas yang melingkupinya. Multiplicity pada whole harus 0 atau 1 Waktu hidup part bergantung pada whole Composite (whole) harus me‐manage pembuatan dan penghancuran part‐nya.

20 Cont….

21 Generalization Hubungan ‘is kind of’ Generalization menangkap similarities antara beberapa class dalam sebuah superclass.

22 Cont….

23 Realization Mengindikasikan bahwa suatu class mengimplementasikan behavior yang ditentukan oleh class lain (interface atau protocol)

24 Cont…. > Window toFront() toBack() Windows 95 Window toFront() toBack() Mac OS Window toFront() toBack() Methods tanpa implementasi Methods dengan implementasi

25 Contoh

26 When and how to use class diagram???

27 SEQUENCE DIAGRAM ???

28 Interaction Diagrams Sequence diagram termasuk salah satu interaction diagram. Interaction diagrams → menjelaskan dynamic behavior dari sistem berorientasi objek Serangkaian message dipertukarkan antar objek untuk mencapai tujuan Sering digunakan untuk memodelkan bagaimana use case direalisasikan melalui rangkaian/urutan (sequence) message antar objek

29 Kegunaan Interaction Diagrams Memodelkan interaksi antar objek Membantu untuk mengerti bagaimana sistem (use case) bekerja Memverifikasi bahwa use case description dapat didukung oleh class‐class yang ada Mengidentifiaksi operasi dan menugaskannya kepada class

30 Elemen Penting Sequence Diagram Object Message Return values Object creation Object destruction Control information

31 Object Penamaan object: myBirthdy  Syntax : [instanceName][:className]  Nama Class yang digunakan konsisten dengan class diagram Mencakup nama instance ketika object diacu dalam message atau ketika beberapa object dari tipe yang sama muncul pada diagram Life‐Line merepresentasikan “kehidupan” object selama interaksi honda : Car

32 Message Interaksi antara dua objek ditampilkan sebagai message yang dikirim dari satu objek ke yang lainnya Message direpresentasikan oleh tanda panah antara life‐line dua objek. Self‐called juga diperbolehkan Waktu yang dibutuhkan oleh objek penerima untuk memproses message dilambangkan oleh activation‐box Diberikan label nama message tersebut

33 Return Values Ditandai dengan tanda panah garis putus‐putus dengan label yang menandakan return value. Jangan memodelkan return value ketika sangat jelas apa yang di‐return, contoh : getTotal() Modelkan return value hanya ketika kita butuh untuk mengacu pada return value tersebut di tempat lain, contoh sebagai parameter yang di‐pass dalam message lain. Modelkan return value sebagai bagian dari metode invocation, contoh : ok = isValid()

34 Object Creation Objek dapat membuat objek lain melalui pesan >

35 Object Destruction Objek dapat menghancurkan objek lain melalui pesan > Objek dapat menghancurkan diri sendiri Hindari object destruction kecuali manajemen memori kritis

36 Control information Condition  syntax: ‘[‘ expression ’]’ message‐label  Pesan dikirim hanya jika kondisinya benar  Contoh : [OK]borrow(member) Iteration  Syntax : * [ ‘[‘ expression ‘]’ ] message‐label  Pesan dikirim beberapa kali untuk memungkinkan objek penerima yang banyak.  Contoh : *[untill full] insert()

37 Cont….

38 Contoh….

39 Cont….

40 Sequence Diagrams (1)

41

42 Tugas Selesaikan DPPL bab 1 – 3 Deadline : Dikumpul ke PJ -> Rilan Selasa, 16 November 16.00


Download ppt "Pertemuan 7 Unified Modelling Language (UML) Tim Asisten Praktikum Rekayasa Perangkat Lunak 09/10 Departemen Ilmu komputer FMIPA, IPB."

Presentasi serupa


Iklan oleh Google