Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Desain Berorientasi Obyek dan UML

Presentasi serupa


Presentasi berjudul: "Desain Berorientasi Obyek dan UML"— Transcript presentasi:

1 Desain Berorientasi Obyek dan UML

2 Konsep OO Penyembunyian Informasi - menggunakan enkapsulasi untuk membatasi visibilitas eksternal OO mengenkapsulasi data, menyediakan akses dan visibilitas terbatas Penyembunyian Informasi dapat disediakan tanpa OO - adalah sebuah konsep lama

3 Konsep OO ... Retensi state- fungsi dan prosedur tidak mempertahankan state; objek mengetahui kondisi lampaunya (sebelumnya) dan mempertahankan state Identitas - setiap objek dapat diidentifikasi dan diperlakukan sebagai entitas yang berbeda Perilaku – state dan layanan secara bersama-sama menentukan perilaku objek, atau bagaimana sebuah objek merespon

4 Konsep OO .. Pesan - melalui mana obj pengirim menyampaikan permintaan ke obj sasaran Untuk melakukan permintaan O1 harus memiliki - penanganan untuk O2, nama dari operasi (metode), info pada operasi yang diperlukan O2 Format umum O2.metode (argumen)

5 Konsep OO .. Kelas - kelas adalah stensil dari mana objek diciptakan, mendefinisikan struktur dan layanan. Kelas memiliki: antarmuka yang mendefinisikan bagian mana dari sebuah objek dapat diakses dari luar tubuh yang mengimplementasikan operasi variabel instance untuk menahan state objek Objek dan kelas yang berbeda; kelas tipe, objek adalah sebuah instance State dan identitas adalah benda

6 Hubungan antara objek-objek
Sebuah objek memiliki kemampuan tertentu - objek berinteraksi dengan obyek lain untuk layanan lain yg diperlukannya Beberapa cara yang berbeda untuk interaksi: Objek Pemasok adalah global untuk klien Obj Pemasok adalah parameter untuk beberapa operasi klien Obj Pemasok merupakan bagian dari obj klien Obj Pemasok secara lokal dinyatakan dalam operasi Hubungan dapat berupa agregasi (seluruh bagian hubungan), atau hanya hubungan server-klien

7 Pewarisan Pewarisan adalah unik untuk OO dan tidak ada dalam bahasa-bahasa berorientasi fungsi / model Pewarisan oleh kelas B dari kelas A adalah fasilitas dimana B secara implisit mendapatkan atribut dan operasi A sebagai bagian dari dirinya sendiri Pewarisan atribut dan metode dari A yang digunakan kembali oleh B Ketika B mewarisi dari A, B adalah subkelas atau kelas turunan dan A adalah kelas dasar atau superclass

8 Pewarisan .. Subkelas B umumnya memiliki bagian yang diturunkan (diwariskan dari A) dan bagian tambahan (baru) Oleh karena itu, B perlu menetapkan hanya bagian tambahan Menciptakan sebuah hubungan "adalah" - objek tipe B juga objek tipe A

9 Pewarisan ...

10 Pewarisan ... Hubungan pewarisan antara kelas membentuk hirarki kelas
Dalam model, hirarki harus mewakili hubungan alami dalam ranah/domain masalah Dalam hirarki, semua fitur yang umum dapat terakumulasi dalam superclass Sebuah kelas yang ada dapat menjadi spesialisasi dari kelas umum yang ada - juga disebut hubungan generalisasi-spesialisasi

11

12 Pewarisan ... Pewarisan ketat - subkelas mengambil semua fitur dari kelas induk Hanya menambahkan fitur untuk mengkhususkannya Non-ketat: ketika beberapa fitur telah didefinisikan ulang Pewarisan ketat mendukung hubungan "adalah" sepenuhnyadan memiliki lebih sedikit efek samping

13 Pewarisan ... Pewarisan tunggal - subkelas mewarisi hanya dari satu superclass hirarki kelasnya berupa pohon Pewarisan berganda- kelas mewarisi dari lebih dari satu kelas Dapat menyebabkan konflik runtime pewarisan berulang - kelas mewarisi dari kelas, tetapi dari dua jalur terpisah

14 Pewarisan dan Polimorfisme
Pewarisan menyebabkan polimorfisme, yaitu suatu objek dapat berasal dari berbagai jenis Sebuah objek tipe B juga merupakan objek tipe A Oleh karena sebuah objek memiliki jenis statis dan tipe dinamis Implikasi pada pemeriksaan jenis Juga membawa ikatan dinamis operasi yang memungkinkan penulisan kode umum di mana operasi melakukan hal yang berbeda tergantung pada jenis

15 Unified Modeling Language (UML) dan Pemodelan
UML adalah sebuah notasi grafis yang berguna untuk analisis dan desain berorientasi objek Memungkinkan mewakili berbagai aspek dari sistem Berbagai notasi digunakan untuk membangun model yang berbeda untuk sistem metodologi OOAD menggunakan UML untuk mewakili model yang diciptakan

16 Pemodelan Pemodelan digunakan dalam banyak disiplin ilmu - arsitektur, rancangbangun pesawat, ... Sebuah model adalah penyederhanaan dari realitas/kenyataan "Semua model yang salah, beberapa di antaranya berguna“ Sebuah model yang baik mencakup elemen-elemen yang memiliki efek luas dan menghilangkan elemen-elemen minor Sebuah model sistem bukan merupakan sistem!

17 Mengapa membangun model?
Model membantu kita memvisualisasikan sistem Membantu menentukan struktur sistem Memberikan kita template yang dapat memandu konstruksi Mendokumentasikan keputusan yang diambil dan alasannya

18 Pemodelan Setiap sistem yang kompleks membutuhkan beberapa model, yang mewakili aspek yg berbeda Model ini terkait namun dapat dipelajari secara terpisah Misalnya. Rencana arsitektur, rencana listrik, rencana pipa dari bangunan Model dapat berupa model struktural, atau perilaku

19 Gambar dalam UML Gambar use case Gambar desain Gambar proses
Gambar implementasi Gambar penyerahan Kita akan fokus terutama pada model untuk desain - diagram kelas, diagram interaksi, dll

20 Diagram Kelas Kelas adalah blok bangunan dasar dari sistem OO karena kelas adalah unit pelaksanaan juga Diagram Class adalah bagian utama dalam sebuah desain OO. Ini menentukan : Kelas dalam sistem Asosiasi antara kelas Subtipe, hubungan supertipe

21 Class Diagram ... Kelas itu sendiri direpresentasikan sebagai kotak dengan nama, atribut, dan metode Ada konvensi untuk penamaan Jika kelas adalah suatu interface, ini bisa ditentukan oleh stereotipe <<interface>> Properti attribut/metode dapat ditentukan oleh tag antara { }

22 Kelas - contoh

23 Generalisasi-Spesialisasi
Hubungan ini menyebabkan hirarki kelas Dapat ditangkap dalam diagram kelas Panah berasal dari subkelas ke superclass dengan kepala menyentuh Super Memungkinkan beberapa subkelas Jika spesialisasi ini dilakukan atas dasar beberapa diskriminator, panah dapat diberi label

24 Contoh - hirarki kelas

25 Asosiasi/agregasi Kelas memiliki hubungan-hubungan lainnya
Asosiasi: ketika objek dari sebuah kelas membutuhkan layanan dari objek lain Tampil dengan garis yang menghubungkan kelas Multiplisitas dapat diwakili Agregasi: ketika suatu objek terdiri dari objek-objek lain Menunjukkan hubungan bagian-seluruh Disimbolkan dengan berlian (diamond) menghubungkan kelas

26 Contoh – asosiasi/agregasi

27 Diagram Interaksi Diagram Kelas mewakili struktur statis dari sistem (kelas dan relasinya) Tidak memodellan perilaku sistem Gambar perilaku - menunjukkan bagaimana objek berinteraksi untuk melakukan tindakan (biasanya use case) Interaksi antara objek, bukan kelas Diagram Interaksi dalam dua gaya Diagram kolaborasi Diagram urutan Keduanya memiliki kekuatan yang setara

28 Diagram Urutan Objek yang berpartisipasi dalam interaksi ditampilkan di bagian atas Untuk setiap objek, batang vertikal mewakili garis hidupnya Pesan dari satu objek ke objek lain, diwakili sebagai anak panah yang berlabel Jika pesan dikirimkan di bawah beberapa kondisi, ia bisa ditetapkan dalam kurung Waktu meningkat ke bawah, urutan peristiwanya tergambar di sana

29 Contoh - diagram urutan

30 Diagram Kolaborasi Juga menunjukkan bagaimana objek berinteraksi
Alih-alih garis waktu, diagram ini lebih mirip seperti diagram state Pengurutan pesan ditangkap oleh penomorannya Setara dengan diagram urutan dalam kekuatan pemodelan

31 Contoh - diag kolaborasi

32 Diagram Lainnya Diagram kelas dan diagram interaksi merupakan yang paling umum digunakan selama desain Ada diagram lain yang digunakan untuk membangun berbagai jenis model yang berbeda

33 Diagram Lainnya Selain objek/kelas, dapat mewakili komponen, paket, subsistem Ini berguna untuk mengembangkan struktur arsitektur UML bisa diperluas - bisa memodelkan konsep baru tetapi yang serupa dengan menggunakan stereotip (dengan menambahkan <<name>>) Nilai yg ditandai dapat digunakan untuk menentukan sifat tambahan, misalnya private, readonly.. Catatan dapat ditambahkan

34 Simbol lainnya


Download ppt "Desain Berorientasi Obyek dan UML"

Presentasi serupa


Iklan oleh Google