pertemuan_1

download pertemuan_1

of 39

Transcript of pertemuan_1

  • Analisis dan Desain BerorientasiObyekPERTEMUAN 1

  • Mata Kuliah : Analisa dan DesainBerorientasi ObyekKode Mata Kuliah : TKD167SKS : 3Semester : 5Sifat Mata Kuliah : wajibPrasyarat : ADSI

  • Tujuan Umum :Mahasiswa mampu menganalisa dan mendesain sistem yang berbasiskan pada prinsip-prinsip obyek.

  • Tujuan KhususMahasiswa dapat menjelaskan latar belakang perlunya metode berorientasi objek (OOA)Mahasiswa dapat menjelaskan konsep objekMahasiswa dapat menjelaskan model dan penggunaan metode berorientasi objek dalam pengembangan sistemMahasiswa dapat menjelaskan model Objek.Mahasiswa dapat menjelaskan objek dan classMahasiswa dapat menjelaskan siklus sistem (OODLC) Object Development life CycleMahasiswa dapat menjelaskan requirement ModelMahasiswa mengeti class, hierarchies dan agregasiMahasiswa dapat membuat diagram-diagram UMLMahasiswa dapat mengimplementasiksan konsep untuk mendesain sistem yang berorientasi objek

  • CatatanKontrak Kuliah :UTS : 25 %UAS : 35%TUGAS 1: CARI JURNAL, PRESENTASI (30 %)TUGAS 2 : MANDIRIQUIS : 10%Koordinator Kelas : dora (085646805727)

  • Sub Pokok Bahasan Pertemuan 1Pengertian ADBOTeknologi ObyekKonsep Berorientasi Obyek- Abstraksi- Inheritance- Polymorphism- encapsulation- Asosiasi- Agregasi

  • Pengertian ADBOAnalisa:Mempelajari domain permasalahan bisnis untuk merekomendasikan perbaikan dan menentukan kebutuhan system untuk menyelesaikan permasalahan.

    Desain :Menentukan solusi teknis/computer-based dimana solusi ini berdasarkan kebutuhan system yang telah diidentifikasi pada proses analisis.

    Analisa dan Desain Berorientasi Object :Memahami domain permasalahan dan merumuskan solusinya dengan menggunakan pendekatan object(benda, konsep, atau entitas)Memudahkan pemanfaatan ulang code dan arsitekturLebih mencerminkan dunia nyata (lebih tepat dalam menggambarkan entitas perusahaan, dekomposisi berdasarkan pembagian yang natural, lebih mudah untuk dipahami dan dirawat)Kestabilan (perubahan kecil dalam requirement tidak berarti perubahan yang signifikan dalam system yang sedang dikembangkan) Lebih mudah disesuaikan dengan perubahan

  • Metode AnalisisBiasanya analisa sistem dimulai dengan adanya dokumen permintaan (requirement) yang diperoleh dari semua pihak yang berkepentingan. (Mis: klien, developer, pakar, dll)Dokumen permintaan memiliki 2 fungsi:1. memformulasikan kebutuhan klien2. membuat suatu daftar tugas

  • Ada beberapa pendekatan yang biasa digunakan dalam menganalisa suatu sistem, yaitu:1. Functional Decomposition2. Data Flow Approach3. Object Oriented

  • Function DecompositionFunctional Decomposition = function + sub-functions + functions interfacesFunctional decomposition hanya menghasilkan suatu spesifikasi fungsional yang memetakan subyek secara tidak langsung.Functional decomposition sulit dilakukan karena sifat sistem yang mudah berubah. Oleh sebab itu sistem analist harus dapat menentukan fungsi-fungsi yang memiliki potensi untuk berubah.

  • Data Flow ApproachData Flow Approach = data (& control) flows + data (& control) transformation + data (& control) stores + terminators + process specs (mini-specs) + data dictionary

  • Data Flow ApproachStrategi: Mengikuti alir data yang terjadi dalam sistem.Yang menjadi masalah adalah, manusia tidak terbiasa berpikir dengan cara tersebut dalam memecahkan permasalahan (Metode pengorganisasian).

  • OO- Object Oriented Object Oriented = classes and objects+ inheritance+ communication with messages

  • Structured vs Object-OrientedStructuredPendekatan masalah berorientasi pada aksi atau dataObject-OrientedPendekatan masalah berorientasi pada aksi dan data

  • Faktor Pendorong OOKonsep pendekatan OO yang sudah cukup matang.Fokus : pengkodean desain analysisDekomposisi: pemrograman terstruktur desain terstrukur analysis terstruktur : Kemajuan teknologi yang memungkinkan pembuatan sistem berorientasi obyek Assembler, Pascal, ALGOL, c++, javaSifat dari sistem/program yang dibuat banyak berubahSistem sekarang yang domain-oriented.abstraksi prosedural vs. abstraksi data

  • 1. Teknologi Obyek2. Konsep Berorientasi Obyek- Abstraksi- Inheritance- Polymorphism- encapsulation- Asosiasi- Agregasi

  • Kompetensi Mahasiswa mampu menjelaskan teknologi obyek Mahasiswa mampu mendefinisikan konsep berorientasi obyek. Mahasiswa mampu menjelaskan abstraksi Mahasiswa mampu menjelaskan inheritance Mahasiswa mampu menjelaskan polymorphism Mahasiswa mampu menjelaskan encapsulation Mahasiswa mampu menjelaskan asosiasi Mahasiswa mampu menjelaskan agregasi

  • Teknologi ObjekTeknologi perangkat lunak yang mendefinisikan sistem dalam hal obyek yang mengkonsolidasikan data dan tingkah laku (ke dalam obyek).Obyek menjadi dapat digunakan kembali dan komponen yang dapat diperluas untuk developer perangkat Lunak

  • ObjekObyek sesuatu yang dapat dilihat, disentuh atau dirasakan dan digunakan pengguna serta akan disimpan data dan perilakunya. Bisa berupa:Orang, tempat, benda atau kejadianPegawai, pelanggan, guru, dosen, mahasiswa, murid.Gudang, kantor, bangunan, ruangan.Kendaraan, produk, konputer, video.Atribut data yang menyatakan sifat dari obyek

  • Tingkah lakuTingkah laku (behavior) hal-hal yang dapat dikerjakan obyek dan merupakan fungsi yang dikenakan pada data (atribut) dari obyek tersebut.Dalam paradigma OO, perilaku obyek disebut metode, operasi, atau layanan (method,operation, or service).

  • Pemrograman BerorientasiObyek (PBO)C++JavaVisual Basic .netDelphidll..

  • Ide dasar PBOMengkombinasikan data dan fungsi/atribut untuk mengakses data menjadi sebuah kesatuan unit.

  • Memahami istilah dalam OOP / PBOObyek : komponen di dalam sebuah programProperty : karakteristik yang dimiliki obyekMethod : aksi yang dapat dilakukan oleh obyekEvent : kejadian yang dapat di alami oleh obyek

  • abstraksiPrinsip untuk merepresentasikan dunia nvata yang kompleks menjadi satu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan.Secara sederhana dikatakan membuang atribut obyek dan operasi yang hanya sampai pada yang benarbenar diperlukan.

  • Contoh AbstraksiProgram mesin cuci tidak butuh serial numberProgram transaksi laundry butuh serial numberObyek sama-sama mesin cuci

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

  • Pewarisan (contd)

  • Generalisasi,Supertype, dan SubtypeGeneralisasi/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)

  • PolimorphismArti : mempunyai banyak bentuk Merupakan suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda.

  • ContohPolimorphism pada C++ dapat dikenakan pada fungsi atau operator dan di kenal dengan overloading.Berikut fungsi dengan nama gambar :gambar(x,y); Menggambar titikgambar(x1,y1,x2,y2); Menggambar garisgambar(x,y,5); Menggambar lingkaran

  • encapsulationAdalah pembungkusan/pengemasan data dan fungsi dalam wadah bernama obyek.atau...Menyembunyikan operasi-operasi dari dunia luar dan dari obyek-obyek lain

  • Contoh EncapsulationTelevisi :- Tampak luar hanya layar dan beberapatombol operasi- Di dalam terkandung kompleksitas rangkaian elektronika

  • AsosiasionMerupakan relasi atau hubungan obyek satu dengan lainnya.Sebuah obyek dapat berelasi dengan obyek yang lain

  • AgregasiAgregasi 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 utuhDalam UML 2.0 notasi agregasi sudah tidak dipakai lagi

  • Contoh Agregasi

  • Contoh Agregasi

  • tugasBuat ringkasan materi berikut dan presentasikan minggu depan :Model dan permodelanDefinisi modelPre ModellingModel pada Pengembangan SistemBeberapa contoh metode pemodelan awalPermodelan bisnis