Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
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).
10
Inheritance (Pewarisan)
Adalah konsep yang menyatakan bahwa metode atau atribut dalam kelas dapat diturunkan atau digunakan kembali oleh kelas lain.
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 (
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.