Object Oriented Analysis and Design -Pendahuluan- Nisa ul Hafidhoh

dokumen-dokumen yang mirip
INTRODUCTION OBJECT ORIENTED ANALYSIS & DESIGN

Teknik Informatika S1

Introduction Object Oriented Analysis & Design. Chapter I

Teknik Informatika S1

Pendahuluan Rekayasa Perangkat Lunak II. Alif Finandhita. Teknik Informatika UNIKOM

REKAYASA PERANGKAT LUNAK II

PertemuanI. Object Oriented

BAB III METODOLOGI PENELITIAN

Pengantar Analisis dan Desain Berbasis Obyek. Object Oriented Analysis and Design

Pengantar Analisis dan Desain Berbasis Obyek (Object Oriented Analysis and Design)

MEMAHAMI PENGGUNAAN UML

Pengenalan Obyek. Arna Fariza. Materi

Pemograman Berorientasi Objek

METODOLOGI BERORIENTASI OBJEK IIM ABDURROHIM, S.T.,M.T

Sistem Informasi OOAD dengan UML (1) Teknik Informatika UNIKOM

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

Teknik Informatika S1

Teknik Informatika S1

DASAR REKAYASA PERANGKAT LUNAK

Modul 9. Memahami dan menerapkan ERD (Entity Relationship Diagram) dan Normalisasi. Memahami Diagram EER (Enhanced Entity Relatioship Diagram)

REKAYASA PERANGKAT LUNAK LANJUT DESIGN ENGINEERING. Defri Kurniawan M.Kom

BAB 2 LANDASAN TEORI. Teori-teori yang menjadi dasar penulisan adalah sebagai berikut :

RENCANA PEMBELAJARAN SEMESTER (RPS)

VISUALISASI INDUSTRI BORDIR DI KABUPATEN KUDUS BERBASIS SISTEM INFORMASI GEOGRAFIS (SIG) MENGGUNAKAN TITIK BEARING DAN DISTANCE

Konsep Pemrograman Berorientasi Obyek

BAB II LANDASAN TEORI. Definisi sistem menurut Jogiyanto HM (1995 : 5) adalah sebagai berikut :

Unified Modelling Language (UML)

Object Oriented Analaysis Object Oriented Design

PENDAHULUAN. A. Berorientasi Objek. 1. Karakteristik dari Objek

Bahasa Pemograman II. Object Oriented Programming

Tujuan 04/07/ :01

Kebutuhan dan Spesifikasi Perangkat Lunak

Object Oriented Programming 1

Konsep Pemrograman Berorientasi Obyek. Maria Ulfah S Nurochman

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA SILABUS PENGEMBANGAN SISTEM BERORIENTASI OBJEK

UML UNIFIED MODELLING LANGUAGE

Disain System Berorientasi Objek (Unified Modeling Language) ( Studi Kasus : Sistem Informasi Manajemen Perpustakaan )

PEMODELAN BERORIENTASI OBYEK

TESTING DAN IMPLEMENTASI SISTEM. WAHYU PRATAMA, S.Kom., MMSI.

Unified Modelling Language UML

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA SILABUS REKAYASA PERANGKAT LUNAK

ANALYSIS MODELING CHAPTER 6

PEMROGRAMAN JAVA. Yoannita. Konsep Pemrograman Berorientasi Objek. Company LOGO

PERTEMUAN 11 KONSEP PEMROGRAMAN BERORIENTASI OBJEK

BAB I PENDAHULUAN 1.1 Latar Belakang

1. Penggunaan Pemodelan

1. Analisis Desain 2. UML Sebagai Tools OOA

BAB III METODOLOGI PENELITIAN

ABSTRAK. Kata kunci: diagram kelas, xml, java, kode sumber, sinkronisasi. v Universitas Kristen Maranatha

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

PEMETAAN MEREK DAN DESAIN INDUSTRI UMKM BERPOTENSI HKI DI KABUPATEN KUDUS BERBASIS SISTEM INFORMASI GEOGRAFIS MENGGUNAKAN GOOGLE MAP API

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

Jawaban Tugas Akhir Matrikulasi Semester Ganjil 2009/2010

KONSEP Pemrograman Berorientasi Objek KARMILASARI

Rekayasa Perangkat Lunak (Software Engineering)

DASAR PEMROGRAMAN. Konsep Pemrograman Berorientasi Objek. Yoannita

Metode Coad -Yourdon

DAFTAR ISI HALAMAN JUDUL HALAMAN PENGESAHAN KATA PENGANTAR DAFTAR ISI DAFTAR GAMBAR DAFTAR TABEL ABSTRAK BAB I PENDAHULUAN

Pemrograman Lanjut. Class dan Object. Aryo Pinandito, ST, M.MT Team Teaching Pemrograman Lanjut

Class dan Objek. Ali Tarmuji ID YM: alitarmuji. T. Informka UAD 1

Konsep Pemrograman Berorientasi Obyek

SESI PERTAMA. 1.1 UML sebagai standarisasi. 1.2 UML, asal usul INFORMATION SYSTEM DESIGN USING UML YUDHO

Pemodelan Sistem Perangkat Lunak. Andronicus Riyono, M.T. Universitas Kristen Duta Wacana

Pemrograman Berorientasi

PENGANTAR RUP & UML. Pertemuan 2

BAB II DASAR TEORI Pengertian Framework

Pemrograman Web Berbasis Framework. Pertemuan 2 : OOP Dalam Pemrograman Web. Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

BAB II TINJAUAN PUSTAKA. definisi ringkas dan formal dari sistem Informasi.

VISUALISASI PRODUK BERPOTENSI HKI BERBASIS WEB GIS DI KABUPATEN KUDUS

Paradigma Pemrograman Berorientasi Objek

DAFTAR ISTILAH. Activity Diagram

Konsep Pemrograman Berorientasi Obyek. Pertemuan 1

Pemrograman Berorientasi Obyek. Konsep OOP

BAB 2 LANDASAN TEORI

SYLLABUS DAN PENDAHULUAN. Astrid Lestari Tungadi, S.Kom., M.TI.

PENERAPAN KONSEP SAAS (SOFTWARE AS A SERVICE) PADA APLIKASI PENGGAJIAN

Pemrograman Berbasis Objek 2. Java Programming Fery Updi,M.Kom

Analysis Modeling 4/10/2018. Focus on What not How. Kenapa Analisis Kebutuhan. Definisi Analisis Kebutuhan. Langkah-Langkah Analisis Kebutuhan

DIAGRAM SEQUENCE UML

PEMETAAN INDUSTRI BORDIR DI KABUPATEN KUDUS BERBASIS SISTEM INFORMASI GEOGRAFIS MENGGUNAKAN GOOGLE MAP API

BAB 2 LANDASAN TEORI. bersama-sama untuk mencapai tujuan tertentu. bersatu untuk mencapai tujuan yang sama.

MODUL 4 Unified Software Development Process (USDP)

Adam Hendra Brata Teknik Informatika FILKOM UB Semester Genap 2015/2016

BAB II LANDASAN TEORI

BAB III PERANCANGAN PROGRAM

MAKALAH ANALISIS & PERANCANGAN SISTEM II USE CASE DIAGRAM

Minggu 6 Prinsip & Konsep Desain

OBJECT ORIENTED PROGRAMMING

MODUL 5 PEMROGRAMAN VISUAL BASIC.NET DENGAN OOP (I)

MATERI PEMODELAN PERANGKAT LUNAK KELAS XI RPL

Pemrograman Web Berbasis Framework. Pertemuan 13 : Pengembangan Project (Bag. 1) Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

Bahasa Pemrograman I VB.Net. Oleh: Erik Perdana Ibrahim, S.Kom 2011

Perancangan Sistem Informasi Berorientasi Object

PRAKTIKUM OBJECT ORIENTED PROGRAMING

ABSTRAK. Kata kunci : Teknologi, Object Oriented, Perangkat Lunak, Layanan.

DAFTAR ISI. Abstraksi... Kata Pengantar... Daftar Isi... Daftar Tabel... Daftar Gambar... Daftar Lampiran... BAB I PENDAHULUAN...

PERANCANGAN BERORIENTASI OBJEK

PEMROGRAMAN BERORIENTASI OBJEK

BAB II. 2.1 Model Data High Level Data Model (Conceptual Data Model)

Yuli Purwati, M.Kom USE CASE DIAGRAM

Transkripsi:

Object Oriented Analysis and Design -Pendahuluan- Nisa ul Hafidhoh nisa@dsn.dinus.ac.id 08156114760

Agenda Kontrak Kuliah Silabus Referensi Materi Pendahuluan @NH2017 2

Kontrak Kuliah Penilaian: UTS 30% UAS 30% Tugas 40% Kehadiran >=75% Toleransi kehadiran 20 menit Dilarang melakukan plagiat pada tugas besar @NH2017 3

Silabus Introduction to OOAD Introduction to UML Requirement and Use Case Analysis Software Architecture Design Patterns Design Implementation Testing @NH2017 4

Referensi Brahma Dathan, Sarnath Ramnath Object- Oriented Analysis and Design (2011) Grady Brooch, Robert A Maksimchuk, Michael W. Engle, Robbi J. Young, Jim Conallen, Kelli A. Houston Object-Oriented Analysis and Design With Applications Third Edition (2007) @NH2017 5

Perkembangan Metode Analisis dan Desain (Pemodelan) Metode Konvensional (Process Oriented) Metode Terstruktur (Data Oriented) Metode Berorientasi Objek (Object Oriented) @NH2017 6

Metode Konvensional Fokus pada proses Kontrol Alur (urutan, keputusan, loop) Sistem Flow Chart Tidak berorientasi pada kebutuhan informasi @NH2017 7

Metode Terstruktur Berfokus pada aliran data Memperlihatkan bagaimana objek objek data melakukan transformasi saat mereka mengalir di dalam sistem yang dikembangkan Contoh : Data Flow Diagram, Entity Relationship Diagram @NH2017 8

Object oriented Paradigm? Object Oriented Paradigm merupakan pendekatan yang berfokus pada objek dalam menganalisa, mendesain, dan mengembangkan aplikasi khususnya berskala besar Objek Oriented sebagai perspektif melihat elemen elemen yang diberikan oleh suatu situasi dengan cara memecah ke dalam objek objek dan hubungan objek @NH2017 9

Object oriented Development OOAD adalah metode analisis yang memeriksa requirement dari sudut pandang kelas kelas dan objek yang ditemui dalam ruang lingkup permasalahan OOAD merupakan cara baru dalam memikirkan masalah dengan menggunakan model yang dibuat menurut konsep dunia nyata Terdiri dari : - Object-Oriented Analysis @NH2017 10 - Object-Oriented Design

Object - Oriented Analysis Object Oriented Analysis is a method of analysis that examines requirements from the perspective of the classes and object found in the vocabulary of the problem domain G. Brooch OOA mempelajari domain permasalahan bisnis dengan memberikan rekomendasi perbaikan sistem berdasarkan kebutuhan dalam menyelesaikan masalah @NH2017 11

Object Oriented Design Object Oriented Design is a method of design encompassing the process of object oriented decomposition and a notation for depicting both logical and physical as well as static and dynamic model of the system under design G. Brooch OOD menentukan solusi teknis atau rancangan / computer-based berdasarkan yang telah diidentifikasi pada proses analisis @NH2017 12

Object Oriented Programming Object-oriented programming is a method of implementation in which programs are organized as cooperative collection of objects, each of which represents an instance of some class, and whose classes are all members of hierarchy of classes united via inheritance relationships G. Brooch OOP merealisasikan OOD menggunakan OO programming language (Java atau C++) @NH2017 13

Perbedaan OOA dan OOD OOA fokus pada pemahaman masalah Penyempurnaan desain perilaku Functional requirement Small model OOD fokus pada pemahaman solusi Mendekati code nyata Non-functional requirement Large model @NH2017 14

Mengapa OOAD?? @NH2017 15

Keunggulan OOAD Memudahkan pemanfaatan ulang code dan arsitektur Lebih tepat dalam menggambarkan entitas, dekomposisi berdasarkan pembagian yang natural, lebih mudah untuk dipahami dan dirawat Kestabilan Perubahan kecil dalam requirement tidak berarti perubahan yang signifikan dalam sistem yang sedang dikembangkan Mudah disesuaikan dengan perubahan @NH2017 16

Dekomposisi Modul: Top-Down @NH2017 17

Dekomposisi Modul: OO @NH2017 18

Kapan menggunakan OOAD? Perangkat Lunak yang dibangun cukup kompleks Perangkat Lunak yang dibangun akan tumbuh makin kompleks di masa mendatang Perangkat Lunak dipergunakan kembali di masa mendatang (reusable) @NH2017 19

@NH2017 20

Konsep Perancangan OO Menggunakan Object sebagai sentral, bukan proses Menggunakan gagasan kelas Satu bahasa untuk mendefinisikan sistem (UML) Kemampuan beradaptasi dan perluasan @NH2017 21

Konsep Perancangan OO 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 Object berpusat pada struktur data dan method yang dapat dimodifikasi / disesuaikan dengan kebutuhan @NH2017 22

Konsep Perancangan OO 2. The Notation of Class Konsep kelas mengijinkan perancang software untuk melihat object sebagai jenis entitas yang berbeda Melihat sebagai object memungkinkan menggunakan mekanisme klasifikasi untuk mengkategorikan jenis, mendefinisikan hirarki, dan terlibat pada ide ide spesialisasi dan generalisasi @NH2017 23

Konsep Perancangan OO 3. A Language to define the system Unified Modeling Language (UML) telah terpilih sebagai alat standar untuk menggambarkan produk akhir dari kegiatan desain OO Dokumen dokumen yang dihasilkan dalam bahasa ini dapat dipahami secara universal, dapat digunakan sebagai blueprint oleh engineer lainnya @NH2017 24

Konsep Perancangan OO 4. The Notions of Extendability and Adaptability Software memiliki fleksibilitas yang tidak biasanya ditemukan dalam perangkat keras dan ini memungkinkan kita untuk memodifikasi entitas yang ada Inheritance memungkinkan menciptakan kelas baru dari keturunan kelas yang ada @NH2017 25

Cohesion & Coupling Selain konsep sebelumnya, salah satu konsep OOP yang cukup penting adalah low coupling and high cohesion Cohesion berhubungan dengan responsibility sebuah class Coupling berhubungan dengan seberapa besar ketergantungan class dengan class yang lain @NH2017 26

Cohesion & Coupling [2] Semakin spesifik sebuah responsibility class, maka akan semakin rendah tingkat ketergantungannya, begitu juga sebaliknya Tujuan utama dari konsep ini adalah fleksibilitas sebuah kelas, artinya class yang didesain dengan low coupling dan high cohesion, akan mudah dimodifikasi @NH2017 27

Object Oriented? Attribute : Ban, Stir, Pedal Rem, Pedal Gas, Warna, Tahun Produksi Attribute Variable Behavior Fungsi Behavior : Menghidupkan Mesin Menjalankan Mobil Memundurkan Mobil @NH2017 28

Konsep OO Class Objek Atribut Method @NH2017 29

Class Class merupakan definisi abstract dari sebuah object Class mendefinisikan struktur dan behavior dari masing masing object di dalam sebuah class Class bertugas sebagai template untuk pembuatan obyek Jadi obyek merupakan hasil instansiasi dari class Obyek, disebut instance @NH2017 30

Object Object adalah representasi dari sebuah entitas, baik fisik, konseptual maupun software Object memiliki status (state) dan tingkah laku (behavior). Status disebut juga atribut Pada OOP, state disimpan dalam variabel, dan behavior disimpan dalam method @NH2017 31

Contoh Employee Class dan Object @NH2017 33

Perbedaan Class dan Object Class Konsep dan deskripsi Mendeklarasikan method yang dapat digunakan oleh object Contoh : -Mobil Object Instance dari class Memiliki sifat independen dan dapat digunakan untuk memanggil method Contoh : -Mobilku - mobil warna merah @NH2017 34

Attribute Variable pada 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 Name, Age adalah attribute (variable) dari class Person @NH2017 35

Method Method merupakan hal hal yang bisa dilakukan oleh object dari suatu class yang dilakukan oleh method : - Merubah nilai atribut suatu obyek - Menerima informasi dari obyek lain - Mengirim informasi ke obyek lain untuk melakukan sesuatu @NH2017 36

Abstraction Encapsulation Modularity Hierarchy Prinsip OO Object Orientation @NH2017 37

Abstraksi Menekankan model apapun yang mencakup aspek yang paling penting atau membedakan sesuatu selain itu mengabaikan kurang penting atau pengalihan detail. Hasilnya menghilangkan perbedaan untuk menekankan kesamaan @NH2017 38

Enkapsulasi Menyembuyikan implementasi dari client Client berkomunikasi melalui interface Information Hiding @NH2017 39

Modularity Memecahkan sesuatu yang besar dan kompleks ke dalam satu set potongan yang lebih kecil dan lebih mudah dikelola Potongan-potongan ini kemudian dapat dikembangkan sendiri (selama interaksi dapat dipahami dengan baik) Order Processing System Order Fulfillment Order Entry Billing @NH2017

Hirarki Mengorganisir sesuatu menurut beberapa urutan tertentu atau peringkat menjadi struktur pohon Furnitur Meja Kursi Dipan Meja Makan Meja Kerja Kursi Kerja Bangku @NH2017 41

Tugas Buatlah contoh deskripsi OO Class Object Atribut Operasi Terapkan Prinsip OO @NH2017 42