• Tidak ada hasil yang ditemukan

Materi 1 Pengenalan Object oriented Analyst And Design

N/A
N/A
Protected

Academic year: 2019

Membagikan "Materi 1 Pengenalan Object oriented Analyst And Design"

Copied!
41
0
0

Teks penuh

(1)

OBJECT ORIENTED

ANALYST AND DESIGN

Defri Kurniawan

(2)

Content

Pengenalan Analisis dan Desain Berorientasi ObjekPerbedaan Kelas dan Objek

Konsep Analisis dan Desain Berorientasi Objek

Keuntungan dan Kerugian Pengembangan Berorientasi

(3)
(4)

What’s Object Oriented? [1]

Object Oriented Paradigm saat ini merupakan pendekatan yang populer dalam menganalisa, desain, mengembangkan aplikasi khususnya pada skala besar

Object Oriented?

Suatu perspektif yang melihat element-elemen yang diberikan oleh suatu situasi dengan cara memecahnya ke dalam objek-objek dan

(5)

What’s is Object Oriented Development? [1]

Pandangan Tradisional program komputer:

Membuat code dari eksekusi suatu formMenjalankan sebagai urutan operasi

Baik sebagai pengenalan pemrograman, namun tidak untuk pengembangan sistem yang besar

(6)

What’s is Object Oriented Development? [1]

Pengembangan berorientasi objek

memungkinkan pengembang aplikasi untuk

menentukan

behaviour

dengan

memberikan

method

terhadap objek yang

(7)

What’s is Object Oriented Development?

OOAD merupakan cara baru dalam memikirkan suatu masalah dengan menggunakan model yang dibuat menurut konsep sekitar dunia nyata

Pada dasarnya terdiri dari 2 :

OOA (Object Oriented Analysis)OOD(Object Oriented Design)

Sedangkan OOP berkaitan dengan meralisasikan OOD

(8)

Object Oriented Analyst Vs Design

OOA Mempelajari domain permasalahan bisnis untuk merekomendasikan perbaikan dan

menentukan kebutuhan sistem untuk menyelesaikan permasalahan

OOD Menentukan solusi teknis atau

rancangan/computer-based dimana solusi ini berdasarkan kebutuhan sistem yang telah

(9)

Why OOAD?

Memudahkan pemanfaatan ulang code dan arsitektur

Lebih mencerminkan dunia nyataKestabilan

Perubahan kecil dalam requirement tidak berarti

perubahan yang signifikan dalam sistem yang sedang dikembangkan

(10)

When should we use 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

(11)

Benefit and Drawbacks of OO Development

Benefit / Keuntungan

Objek sering kali mencerminkan entitas dalam sistem

aplikasi, ini yang membuat designer gampang membuat kelas

Membantu meningkatkan produktivitas, karena

kemampuan re-use software yang ada

Lebih mudah untuk mengakomodasi perubahan,

fleksibel. Contoh: meskipun ada perubahan requirement

(12)

Benefit and Drawbacks of OO Development

Drawbacks / Kerugian

Pada sistem yang kompleks, dengan banyaknya objects

creation dan destruction serta objek yang berinteraksi dengan cara yang kompleks, mengakibatkan poor

memory access times

Susahnya mempelajari dan menggunakan OO

principles serta nyaman dengan konsep ini, khususnya yang belum mengenal (terpaku dengan konsep

(13)
(14)

Class vs Object [2]

Perbedaan Class dengan Object

Sebuah class merupakan definisi abstract dari sebuah

object

Obyek merupakan hasil instansiasi dari class Obyek disebut juga dengan instance.

Example:

Class seperti cetakan kue, dimana kue yg dihasilkan dari cetakan kue itu adalah object

Warna kue bisa bermacam-macam meskipun berasal dari cetakan yang sama (object memiliki sifat

(15)

Class vs Object [2]

Perbedaan Class dengan Object

Class mendefinisikan struktur dan behaviour dari masing-masing object di dalam sebuah class

Class bertugas sebagai template untuk pembuatan Object

Class: konsep dan deskripsi dari sesuatu

(16)
(17)

Class vs Object [2]

Attribute (State):

Ban, Stir, Pedal Rem, Pedal Gas,

Warna, Tahun Produksi Behavior:

Cara Menghidupkan Mesin Cara Manjalankan Mobil Cara Memundurkan Mobil

Attribute

Variable(Member)

Behavior

(18)

Implementation of Class

(19)

Implementation of Class

(20)

Classes of Object

(21)

Attribute

Variable yang mengitari class, dengan nilai

datanya bisa ditentukan di object

Variable digunakan untuk menyimpan nilai yang nantinya akan digunakan pada program

Variable memiliki jenis (tipe), nama dan nilai

(22)

Method

Method merupakan hal-hal yang bisa dilakukan oleh

obyek dari suatu class

Method biasa dikaitkan dengan Behaviour / Perilaku Yang bisa dilakukan oleh method

– Merubah nilai atribut suatu obyek – Menerima informasi dari obyek lain

(23)

variable

kecepatan gir

tampilkan kecepatan

ubah gir

metho

d

Class

Sepeda

(24)

Object = Method + Variable yg Memiliki Nilai

instance variable

kecepatan = 10km/jam

gir = 3

tampilkan kecepatan ()

kecepatan = 10 km/jam

(25)
(26)

OBJECT ORIENTED

(27)

Key Concepts of Object-Oriented Design [1]

1. Central Role of Object 2. The Notion of A Class

3. Abstract specification of functionality 4. A Language To Define The System 5. Standard Solution

6. An Analysis Process To Model A System

(28)

Key Concepts of Object-Oriented Design [1]

1. Central Role of Object

Object sebagai inti dari desain perangkat lunak bukan proses

Proses rentan terhadap perubahan dan sebagian

sistem lama tidak dapat digunakan kembali (re-usable)

2. The Notion of A Class

(29)

Key Concepts of Object-Oriented Design [1]

3. Abstract Specification of Functionality

Dalam proses perancangan kita biasanya menentukan properti-properti dari object

Spesifikasi adalah abstrak bahwa hal itu tidak menempatkan

pembatasan pada bagaimana fungsi tersebut tercapai.

4. A Language To Define The System

Unified Modelling Language (UML) telah terpilih sebagai alat standar untuk menggambarkan

(30)

Key Concepts of Object-Oriented Design [1]

5. Standard Solution

Adanya struktur objek memfasilitasi

mendokumentasikan standar solution, disebut pola desain / design pattern.

6. An Analysis Process To Model A System

Object oriented menyediakan kita dengan cara

(31)

Key Concepts of Object-Oriented Design [1]

7. The Notions Of Extendability And Adaptability

Software memiliki fleksibilitas yang tidak biasanya ditemukan dalam perangkat keras,

memungkinkan kita untuk memodifikasi entitas yang ada dengan cara-cara kecil untuk membuat yang baru.

(32)

Other Related Concept

Tidak cukup hanya memahami konsep kunci perancangan berorientasi objek. Terdapat konsep terkait lain yang diperlukan untuk memahami object oriented:

Modular design and encapsulation

(33)

Modular Design And Encapsulation [1]

Modularity / modularitas mengacu pada gagasan menyusun sistem besar dengan mengembangkan sejumlah komponen yang berbeda secara independen dan kemudian mengintegrasikannya untuk menyediakan fungsionalitas yang diperlukan.

(34)

Modular Design And Encapsulation [1]

Encapsulation / enkapsulasi mengacu pada penyembunyian detail modul dari

implementasinya terhadap pihak external.

Mekanisme menyembunyikan suatu proses dan

data dalam sistem untuk menghindari

interferensi, dan menyederhanakan penggunaan proses itu sendiri

Class access level (public, protected, private) adalah

(35)

Cohesion And Coupling [1]

Salah satu konsep OOP yang cukup penting adalah low coupling dan high cohesion

Coupling berhubungan dengan seberapa besar ketergantungn class dengan class yang lain

(36)

Cohesion And Coupling [1]

Semakin spesifik (tinggi) suatu responsibility class, maka semakin rendah tingkat

ketergantungannya, begitu juga sebaliknya

Tujuan utama dari konsep ini adalah, fleksibilitas sebuah class, artinya class yang didesain dengan

(37)

Contoh Responsibility

(38)
(39)

Benefit and Drawbacks of OO Development

Benefit / Keuntungan

Objek sering kali mencerminkan entitas dalam sistem

aplikasi, ini yang membuat designer gampang membuat kelas

Membantu meningkatkan produktivitas, karena

kemampuan re-use software yang ada

Lebih mudah untuk mengakomodasi perubahan,

fleksibel. Contoh: meskipun ada perubahan requirement

(40)

Benefit and Drawbacks of OO Development

Drawbacks / Kerugian

Pada sistem yang kompleks, dengan banyaknya objects

creation dan destruction serta objek yang berinteraksi dengan cara yang kompleks, mengakibatkan poor

memory access times

Susahnya mempelajari dan menggunakan OO

principles serta nyaman dengan konsep ini, khususnya yang belum mengenal (terpaku dengan konsep

(41)

Referensi

Dokumen terkait

Berdasarkan hasil penelitian sikap konsumen jika bakery BReAD Unit yang ingin dibeli konsumen tidak tersedia mayoritas menjawab akan membeli produk bakery BReAD Unit lain

perbaikan yang telah disusun pada kegiatan refleksi siklus I, yang dapat diketahui dari adanya peningkatan skor hasil observasi guru. 2) Siswa lebih antusias mengikuti

Untuk menjalankan program Satuan Tugas Pendampingan Rencana Program Investasi Jangka Menengah (Satgas RPI2JM) Bidang Cipta Karya di Kabupaten Aceh Barat Daya sangat diperlukan

Majas dalam Novel Sang Pemimpi Karya Andrea dan Implementasinya dalam Pengayaan Materi Pembelajaran Sastra Di SMA; Ninin Yunita Kristanti, 070210482015; 2011: 100

Seseorang yang menggunakan pasta gigi yang mengandung fluor semestinya sudah cukup membantu untuk pencegahan terhadap terjadinya karies gigi, hanya saja perlu diperhatikan

dirinya sebagai “persona” dalam dan melalui kerja menjadi sekadar.. instrumen dan komoditas. Kedudukan manusia sebagai subjek kerja yang mempunyai martabat yang

Berdasarkan data sekunder yang diperoleh penulis melalui dokumentasi yaitu berupa laporan keuangan yang terdiri dari Neraca dan Laporan Laba Rugi tahun 2013,

Dari fenomena di atas menurut penulis ada sesuatu yang menarik untuk diteliti lebih lanjut banyaknya banyaknya jamaah yang mengikuti pengajian Ust adz H.Rahmat pengajian