Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Object oriented analyst and design
Defri Kurniawan
2
ANALISIS BERORIENTASI OBJECT
3
Analisis Terstruktur vs Berorientasi Object
Memperlihatkan bagaimana caranya mereka melakukan transformasi data saat objek-objek data mengalir di dalam sistem yang akan dikembangkan Analisis Berorientasi Objek Berfokus pada pendefinisian kelas-kelas dan cara bagaimana mereka saling bekerjasama satu dengan yang lainnya
4
Analisis Berorientasi Object
Pada Paradigma Analysis Design Berorientasi Object, Unified Modeling Language (UML) merupakan perkakas (tools) yang digunakan untuk melakukan pemodelan berorientasi objek
5
Analysis Design Paradigm and Diagrams
Data-oriented DFD Process-oriented Flowchart Object-oriented (data + process) UML
6
Konsep Komunikasi & Analisis
Spesifikasi-spesifikasi kebutuhan pengguna harus diperoleh melalui aktifitas-aktifitas komunikasi sebelum dilakukannya analisis Sasaran dari spesifikasi kebutuhan adalah untuk memahami berbagai hal yang para stakeholder inginkan dari perangkat lunak yang akan dikembangkan Analisis adalah tindakan yang terjadi saat kebutuhan-kebutuhan sudah didapatkan
7
Requirement Requirement adalah pernyataan yang mendefinisikan tujuan atau batasan sistem yang harus terpenuhi Perlu dipahami oleh tim pengembang dan divalidasi oleh para stakeholder dan pengguna (user) Sebagai kriteria penentuan lolos / gagal yang dapat diverifikasi oleh tim penguji Prioritas yang ditetapkan dalam kaitannya dengan persyaratan lain
8
Requirement Requirement dibagi menjadi 2 (dua):
Functional Requirement (persyaratan fungsional) “Functional requirements define what the system or application will do” Non-functional Requirement (persyaratan non fungsional) “A software requirement that describes not what the software will do, but how the software will do it, for example software performance requirements, software external interface requirements, design constraints, and software quality attributes” IEEE Definition
9
Non Functional Requirement
Persyaratan perangkat lunak yang menggambarkan bagaimana perangkat lunak akan melakukannya, misalnya, persyaratan kinerja perangkat lunak, persyaratan antarmuka eksternal perangkat lunak, dan atribut kualitas perangkat lunak. Persyaratan nonfungsional sulit untuk diuji oleh karena itu, mereka biasanya dievaluasi secara subyektif
10
Contoh Functional & Non Functional Requirement
Contoh Functional & Non Functional requirements dalam pengembangan Mobile Application: Functional Requirement: Cross platform compatible and works on most mobile browser Integrates a selected number of popular social networking sites in one place Communicates with social networking APIs User login and OAuth mechanisms to authorize Records and monitors social networking activity Stores the data locally Displays total statistics for the user
11
Contoh Functional & Non Functional Requirement
Non functional requirements Record statistics accurately Fast navigation Should be available to users to use anytime
12
Validasi Kebutuhan Setelah kebutuhan-kebutuhan didapatkan, perlu melakukan validasi terhadap kebutuhan-kebutuhan tsb. Daftar pertanyaan seperti ini, perlu kita fikirkan: Apakah kebutuhan-kebutuhan dinyatakan dengan jelas? Mungkinkah kebutuhan-kebutuhan itu mengalami salah penafsiran? Apakah sumber kebutuhan-kebutuhan (misalnya: orang, aturan, dokumentasi) telah diidentifikasi? Apakah pernyataan final tentang kebutuhan-kebutuhan telah diperiksa atau dilacak sumber aslinya?
13
Model Analisis Sasaran model analisis adalah untuk memberikan deskripsi dari ranah informasional, fungsional, dan perilaku yang dibutuhkan untuk sistem-sistem berbasis komputer. Pemodelan analisis berfokus pada “Apa”, bukan “Bagaimana”
14
Letak Model Analisis Deskripsi Sistem Model Analisis Model Perancangan Model Analisis sebagai jembatan Deskripsi Model dan Model Perancangan
15
Elemen-elemen Model Analisis
Secara umum, model-model analisis memiliki elemen-elemen spesifik seperti di bawah ini: Elemen berbasis skenario Elemen berbasis kelas Elemen berbasis aliran Elemen-elemen perilaku
16
Elemen-elemen Model Analisis
Bentuk representasi yang berbeda memberi pertimbangan kebutuhan-kebutuhan sistem/ perangkat lunak dari berbagai sudut pandang yang berbeda
17
Elemen-elemen Model Analisis
18
Elemen-elemen Model Analisis
Elemen-elemen berbasis skenario Memperlihakan bagaimana interaksi yang kelak akan terjadi antara pengguna dengan sistem/perangkat lunak Memperlihatkan sejumlah aktifitas berurutan yang terjadi saat perangkat lunak digunakan Elemen model berbasis kelas Memodelkan objek-objek yang akan dimanupulasi oleh sistem Memodelkan operasi-operasi yang akan diterapkan Memodelkan relasi yang terjadi antara objek satu dengan lainnya
19
Elemen-elemen Model Analisis
Elemen-elemen perilaku (behavior) Memperlihatkan bagaimana event-event eksternal melakukan perubahan pada keadaan (state) sistem atau kelas-kelas yang ada di dalamnya Elemen-elemen berorientasi aliran Memperlihatkan sistem/perangkat lunak yang bertindak sebagai pelaku transformasi informasi Memperlihatkan bagaimana objek-objek data ditransformasikan saat mereka mengalir melintasi berbagai fungsi yang dimiliki sistem
20
KarakteriStik Metodologi Berorientasi Objek
21
Karakteritik Metodologi Berorientasi Objek
Abstraksi (Abstraction) Pewarisan (Inheritance) Banyak Bentuk (Polymorphism) Pembungkusan (Encapsulation)
22
Object-Oriented Programming Abstraction Cara kita melihat suatu sistem dalam bentuk yang lebih sederhana, yaitu sebagai suatu kumpulan subsistem (object) yang saling berinteraksi. Mobil adalah kumpulan sistem pengapian, sistem kemudi, sistem pengereman Alat meng-abstraksikan sesuatu adalah class Object bersifat modularity. Object dapat ditulis dan dimaintain terpisah (independen) dari object lain
23
Object-Oriented Programming
24
Object-Oriented Programming
25
Encapsulation Enkapsulasi adalah menyembunyikan kompleksitas dari luar dan hanya membuka operasi-operasi yg diperlukan saja terhadap obyek-obyek lain Class access level (public, protected, privat) adalah implementasi dari konsep encapsulation Abstraction dan encapsulation saling berkomplemen: Abstraction fokus pada sudut pandang dari luar Encapsulation membatasi client dari melihat isi dari dalam sebuah object
26
Encapsulation Enkapsulasi data juga dapat dilakukan dengan cara:
Object-Oriented Programming Encapsulation Enkapsulasi data juga dapat dilakukan dengan cara: mendeklarasikan instance variable sebagai private mendeklarasikan method yang sifatnya public untuk mengakses variable tersebut
27
Contoh Encapsulation
28
Contoh Encapsulation Perbankan
Informasi / properties kelas rekening: no rekening, nama, alamat, dll Perilaku / method kelas 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
29
Inharitance (Pewarisan)
Mekanisme untuk menurunkan/mewariskan atribut (data) dan operasi (behavior) dari sebuah kelas ke kelas yang lain Kelas induk/dasar (super class) Kelas turunan (derived class/sub-class) Atribut dan operasi dari kelas induk menjadi bagian / anggota dari kelas turunan Kelas turunan bisa memiliki atribut dan operasi yang tidak ada pada kelas induk kelas turunan sebagai perluasan (extension)
30
Inharitance (Pewarisan)
Object-Oriented Programming Inharitance (Pewarisan) Suatu class dapat mewariskan atribut dan method kepada class lain (subclass), serta membentuk class hierarchy Penting untuk Reusability Java Keyword: extends
31
Class SepedaGunung Mewarisi Class Sepeda
Object-Oriented Programming Class SepedaGunung Mewarisi Class Sepeda public class SepedaGunung extends Sepeda{ private int sadel; void setSadel (int jumlah) { sadel = getGir() - jumlah; } int getSadel(){ return sadel; public class SepedaGunungBeraksi { public static void main(String[] args) { SepedaGunung sg=new SepedaGunung(); sg.setGir(3); System.out.println(sg.getGir()); sg.setSadel(1); System.out.println(sg.getSadel()); } SepedaGunung.java SepedaGunungBeraksi.java
32
Contoh Inheritance (Pewarisan)
33
Contoh Inheritance (Pewarisan)
34
Polymorphism (Banyak Bentuk)
Polimorfisme yaitu konsep yang menyatakan bahwa sesuatu yang sama dapat mempunyai bentuk dan perilaku berbeda. Kemampuan untuk memperlakukan object yang memiliki perilaku (bentuk) yang berbeda
35
Polymorphism (Banyak Bentuk)
Polimorfisme mempunyai arti bahwa operasi yang sama mungkin mempunyai perbedaan dalam kelas yang berbeda. Kemampuan objek-objek yang berbeda untuk melakukan metode yang pantas dalam merespon message yang sama. Implementasi konsep polymorphism: Overloading: Kemampuan untuk menggunakan nama yang sama untuk beberapa method yang berbeda parameter (tipe dan atau jumlah)
36
Contoh Polymorphism
37
Contoh Polymorphism
38
Polymorphism – Overloading
Object-Oriented Programming Polymorphism – Overloading class Lingkaran{ void gambarLingkaran(){ } void gambarLingkaran(int diameter){ ... void gambarLingkaran(int diameter, int x, int y){ ... void gambarLingkaran(int diameter, int x, int y, int warna, String namaLingkaran){ ...
39
TERIMA KASIH
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.