Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

ANALISIS & DESAIN BERORIENTASI OBJEK

Presentasi serupa


Presentasi berjudul: "ANALISIS & DESAIN BERORIENTASI OBJEK"— Transcript presentasi:

1 ANALISIS & DESAIN BERORIENTASI OBJEK
Konsep Dasar OOAD ANALISIS & DESAIN BERORIENTASI OBJEK

2 Pendahuluan Konsep objek telah dikenal sejak lebih dari tiga puluh tahun yang lalu. Diawali dengan penggunaan pemrograman berorientasi objek (OOP), lalu berkembang menjadi konsep perancangan berorientasi objek (OOD) dan selanjutnya metode analisis dan perancangan berorientasi objek (OOAD) di tahun 1990

3 Pengantar Analisa & Desain Berorientasi Objek
Tujuan OOAD: Untuk merubah analisa kebutuhan menjadi desain system Untuk mengembangkan arsitektur system yang kuat - Untuk menyesuaikan desain agar sesuai dengan lingkungan implementasi, dan mendesain untuk performance

4 Perbedaan Analisa dan Desain OO
Fokus pada pemahaman masalah Penyempurnaan desain Perilaku System structure Functional requirement Small model Desain Fokus pada pemahaman solusi Operation dan Attribute Performance Mendekati code nyata Object Lifecycle Non-functional requirement Large model

5 ALASAN MENGGUNAKAN OO Pengembangan perangkat lunak itu sulit karena “perangkat lunak mudah diimpikan” Kompleksitas pengembangan perangkat lunak yang terus bertumbuh membutuhkan dukungan konsep yang lebih handal, guna ulang (reusable) dan natural OO menawarkan tipe data abstrak, modularitas, pemodelan informasi, proses software untuk mengatasinya Walaupun demikian, OO bukan jaminan sukses pengembangan perangkat lunak

6 Kapan & dimana kita memakai OO?
Jika perangkat lunak (PL) yang dibangun cukup kompleks Jika PL yang dibangun diperkirakan akan tumbuh makin kompleks di masa mendatang Jika kita ingin membangun PL yang: Berdasar pada komponen yang telah pernah ada sebelumnya (daur ulang) Dapat dipergunakan kembali di masa mendatang (reusable) dan mungkin, kapanpun dan di manapun

7 Konsep OOAD Object Oriented Analysis Design (OOAD) adalah rekayasa perangkat lunak yang model pendekatan sistem sebagai kelompok interaksi objek. Beberapa entitas mewakili setiap obyek, yang menarik dalam sistem menjadi model dan kelas, elemen data, dan perilaku. Analisis berorientasi objek (OOA) berlaku objek modeling teknik untuk menganalisis fungsional persyaratan untuk sistem.

8 Konsep OOAD Secara singkat OOAD adalah metode analisis yang memeriksa requirements dari sudut pandang kelas-kelas dan objek yang ditemui dalam ruang lingkup permasalahan yang mengarahkan arsitektur software yang didasarkan pada manipulasi objek-objek sistem atau subsistem. Sekarang ini terdapat berbagai metodologi yang digunakan dalam object oriented analisys and design (OOAD).

9

10 Inheritance (Pewarisan)
Adalah konsep yang menyatakan bahwa metode atau atribut dalam kelas dapat diturunkan atau digunakan kembali oleh kelas lain.

11

12 Generalisasi,Supertype, dan Subtype
Generalisasi/spesialisasi – atribut dan perilaku yang sama untuk beberapa kelas dikelompokkan ke dalam kelas tersendiri yang disebut supertype. Supertype – entitas yang berisi atribut dan perilaku yang sama untuk satu atau lebih subtipe kelas. Juga disebut parent class. Subtype – kelas yang mewarisi (inherit) atribut dan perilaku dari kelas supertype serta mungkin juga berisi atribut dan perilaku lain yang khusus. Juga disebut kelas anak (child). Jika berada pada tingkat yang paling rendah dalam hirarki pewarisan, akan disebut kelas konkret (concrete)

13 Polimorphism Arti : mempunyai banyak bentuk Merupakan suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda.

14 Berikut fungsi dengan nama gambar :
Contoh Polimorphism pada C++ dapat dikenakan pada fungsi atau operator dan di kenal dengan overloading. Berikut fungsi dengan nama gambar : gambar(x,y); Menggambar titik gambar(x1,y1,x2,y2); Menggambar garis gambar(x,y,5); Menggambar lingkaran

15 encapsulation Adalah pembungkusan/pengemasan data dan fungsi dalam wadah bernama obyek. atau...Menyembunyikan operasi-operasi dari dunia luar dan dari obyek-obyek lain

16 Contoh Encapsulation Televisi : - Tampak luar hanya layar dan beberapa
tombol operasi - Di dalam terkandung kompleksitas rangkaian elektronika

17 Asosiasion Merupakan relasi atau hubungan obyek satu dengan lainnya.
Sebuah obyek dapat berelasi dengan obyek yang lain

18 Agregasi Agregasi – sebuah relasi yang menyatakan bahwa satu kelas “utuh (whole)” yang lebih besar memuat satu atau lebih kelas “bagian (part)” yang lebih kecil. Sebaliknya, kelas “bagian” adalah bagian dari kelas “utuh” Dalam UML 2.0 notasi agregasi sudah tidak dipakai lagi

19 Contoh Agregasi

20 Contoh Agregasi

21 Konsep class Mewakili sebuah benda atau barang ( kata benda) misalnya : mahasiswa, pelanggan, kendaraan Class Diagram Format and sample class: Package::Class visibility attribute:Type= Default value visibility Operation (Parameter):Return Type Person - name:String - address:String +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

22 Kelas Sekumpulan objek yang memiliki kemiripan dalam hal properti, atribut, prilaku, dan semantik. Proses klasifikasi dilakukan untuk membentuk kelompok dari beberapa objek yang memiliki kemiripan.

23 Kelas

24 Contoh Kelas di pemrograman PHP

25 Konsep Object Is Identical (because Object has own unique ID)
What is Object is that Object: Is Identical (because Object has own unique ID) Has Behavior (because Object has Method) Has State (because Object has instance parameter) Mobil Super class Kijang Parent class Kijang NX2001 Child class Kijang NX2001 N 12345 Object

26 Relationships of Object
There three types of relationship : Is-a (Generalization, Realization: Inheritance) Has-a (Association) Others (Association , Dependency) Association (Aggregation, Composition) Aggregation (One of associations) Composition (One of associations) Generalization Realization Dependency

27 Contoh Encapsulation Pada Perbankan
Informasi/properties objek rekening : No rekening, Nama , alamat dll Perilaku/method objek rekening : buka, tutup, penarikan, penyimpanan, ubah nama, ubah alamat dll Kita bungkus/encapsulate informasi dan perilaku tersebut pada objek rekening Sehingga perubahan-perubahan pada sistem perbankan yang berkaitan dengan rekening diimplementasikan sederhana pada objek rekening

28 Contoh Pewarisan Pada Perbankan
Objek Induk Rekening : Mempunyai karakteristik umum seperti no rekening, pemilik, tingkat suku bunga Objek Turunan (Mempunyai karakteristik yang unik dan mewarisi karakteristik umum dari objek induk) Rekening Deposito : atribut jatuh tempo dll Rekening Pinjaman : atribut batas kredit, cicilan minimum

29 Polymorphism Polymorphism (Banyak Bentuk) adalah suatu operasi yg mempunyai nama yg sama tetapi jika diberikan pada obyek yg berbeda akan mengakibatkan operasi yg berbeda pula.

30 4+1 Architecture Model Scenarios Logical view Development view
System & Environment Process view Physical view

31 Flow of Architecture Process
Logical view Development view Use Case System & Environment Process view Physical view

32 Use Case View Merupakan gambaran dari arsitektur sistem
Menggambarkan interaksi antar objek dan antar sistem Digunakan untuk mengidentifikasi elemen-elemen arsitektur Menggambarkan dan menvalidasi desain arsitektur Titik awal dari pengujian purwarupa (prototype) arsitektur

33 UML Diagram for Architecture Use Case View
Logical view Development view Use Case System & Environment Process view Use Case Diagram Physical view

34 Logical view Berkaitan dengan fungsional yang disediakan untuk end-user

35 UML Diagram for Architecture Logical View
Sequence Diagram Communication Diagram* Class Diagram Logical view Development view Use Case System & Environment Process view Physical view

36 Development View Biasa juga disebut sebagai Implementation View
Merupakan perspektif system dari mata seorang programmers Berkaitan dengan Software Management

37 UML Diagram for Architecture Development View
Component Diagram* Package Diagram Logical view Development view Use Case System & Environment Process view Physical view

38 Process View Memandang system dari aspek dinamis
Menjelaskan proses-proses dari system dan bagaimana komunikasi antar proses tersebut Fokus pada system saat dieksekusi

39 UML Diagram for Architecture Process View
Logical view Development view Use Case System & Environment Process view Physical view Activity Diagram*

40 Physical View Biasa juga disebut Deployment view
Sistem dari sudut pandang perekayasa system (system engineer) Berkaitan dengan topology dari komponen-komponen software pada physical layer dan komunikasi antar komponen

41 UML Diagram for Architecture Physical View
Logical view Development view Use Case System & Environment Process view Physical view Deployment Diagram*

42 Tool Yang Mendukung UML
Rational Rose ( Together ( Object Domain ( Jvision ( Objecteering ( MagicDraw ( Visual Object Modeller (


Download ppt "ANALISIS & DESAIN BERORIENTASI OBJEK"

Presentasi serupa


Iklan oleh Google