Objeck Oriented Rekayasa Perangkat Lunak poltektelkom

Politeknik Telkom Rekayasa Perangkat Lunak Object Oriented Concept and Principles 155 Perbedaan antara metoda analisis dan perancangan sistem konvensional dengan berorientasi objek OOAD Sistem Konvensional Fokus pada Proses Input-Process-Output; Data terpisah dari Prosedur; Dekomposisi Fungsional. Sistem Berorientasi Objek Fokus pada Domain Objek, tidak pada prosedur; Data dan Prosedur disimpan dalam Objek; Dekomposisi Data Tiga tahap dasar dalam pengembangan sistem: 1. Analisis : investigasi memahami permasalahan what – Conceptual Model, System Requirements. 2. Perancangan : mengorganisasikan atau menstrukturkan permasalahan untuk memenuhi persyaratan how. System Design, Detailed Design 3. Pemodelan : memahami struktur dan perilaku. 4. Implementasi : membuat solusi pemecahan masalah dapat dilaksanakan. Coding – Testing Konsep Objek Obyek dalam „software analysis design‟ adalah sesuatu berupa konsep concept, benda thing, dan sesuatu yang embedakannya dengan lingkungannya. Secara sederhana obyek adalah mobil, manusia, alarm dan lainlainnya. Tapi obyek dapat pula merupakan sesuatu yang abstrak yang hidup didalam system seperti tabel, database, event, system messages. Objek object Objek adalah benda secara fisik dan konseptual yang ada di sekitar kita. Beberapa contoh objek, misalnya hardware, software, dokumen, manusia, konsep, dan lainnya. Untuk kepentingan pemodelan, misalnya seorang eksekutif akan melihat karyawan, gedung, divisi, dokumen, keuntungan perusahaan sebagai sebuah objek. Sedangkan seorang teknisi mobil, akan melihat ban, pintu, mesin, kecepatan tertentu dan banyaknya bahan baker sebagai sebuah objek. Politeknik Telkom Rekayasa Perangkat Lunak 156 Object Oriented Concept and Principles Contoh lainnya adalah seorang software engineer akan memandang tumpukan, antrian intruksi, window, check box sebagai sebuah objek. Sebuah objek mempunyai keadaan sesaat yang disebut state. State dari sebuah objek adalah kondisi dari objek itu atau himpunan keadaan yang menggambarkan objek tersebut. Sebagai contoh, state dari rekening tabungan, dapat memuat saldo yang berjalan, state dari sebuah jam adalah catatan saat itu; sedangkan state dari sebuah bohlam lampu adalah suatu keadaan “nyala” atau “mati”. State dinyatakan dengan nilai dari atribut objeknya. Gambar 9.1 : Object Obyek dikenali dari keadaannya dan juga operasinya. Sebagai contoh sebuah mobil dikenali dari warnanya, bentuknya, sedangkan manusia dari suaranya. Ciri ciri ini yang akan membedakan obyek tersebut dari obyek lainnya. Atribut: adalah nilai internal suatu objek yang mencerminkan antara lain karakteristik objek, kondisi sesaat, koneksi dengan objek lain dan identitas. Perubahan state dicerminkan oleh perilaku behaviour objek tersebut. Politeknik Telkom Rekayasa Perangkat Lunak Object Oriented Concept and Principles 157 Gambar 9.2 : Atribute • Behavior mendifinisikan bagaimana suatu objek bertindak dan bereaksi, dan berhubungan dengan fungsi diterapkan pada suatu atribut. • Behavior objek disebut metoda atau operasi pelayanan service. Behaviour atau perilaku sebuah objek mendefinisikan bagaimana sebuah objek bertindakberaksi dan memberi reaksi. Behaviour ditentukan oleh himpunan semua atau beberapa operasi yang dapat dilakukan oleh objek itu sendiri. Behaviour dari sebuah objek dicerminkan oleh interface, service dan method dari objek tersebut. Interface adalah pintu untuk mengakses service dari objek. Service adalah fungsi yang dapat dikerjakan oleh sebuah objek. Method adalah mekanisme internal objek yang mencerminkan perilakubehaviour objek tersebut. Gambar 9.3 : Behavior Politeknik Telkom Rekayasa Perangkat Lunak 158 Object Oriented Concept and Principles Anatomi suatu Obyek Objek adalah sekumpulan atribut data bersama dengan gabungan metoda fungsi yang digunakan untuk mengoperasikan atribut tersebut. Obyek = Atribut + Metoda Dunia luar berkomunikasi ke obyek dengan mengirimkan pesan message. Gambar 9.4 : Kelas Kelas Class Class adalah definisi umum pola, template, atau cetak biru dari himpunan objek yang sejenis. Kelas menetapkan spesifikasi perilaku behaviour dan atribut-atribut dari objek tersebut. Class adalah abstraksi dari entitas dalam dunia nyata. Sedangkan objek adalah contoh “instances” dari sebuah kelas. Misalnya, atribut dari kelas binatang adalah berkaki empat dan mempunyai ekor. Perilakunya adalah makan dan tidur. Sedangkan contoh instance untuk kelas binatang ini adalah kucing, gajah, dan kuda. Kotak Hitam Black Boxes Sebuah objek adalah kotak hitam black-boxes. Konsep ini menjadi dasar untuk implementasi objek. Dalam operasi OO, hanya para developer programmer, desainer, analis yang dapat memahami detail dari prosesproses yang ada didalam kotak hitam tersebut, sedangkan para pemakai user tidak perlu mengetahui apa yang dilakukan, Politeknik Telkom Rekayasa Perangkat Lunak Object Oriented Concept and Principles 159 tetapi yang penting mereka dapat menggunakan objek untuk memproses kebutuhan mereka. Gambar 9.5 :Prinsip dasar Orientasi Objek Abstraksi adalah menemukan serta memodelkan fakta-fakta dari suatu object yang penting dari suatu aplikasi Politeknik Telkom Rekayasa Perangkat Lunak 160 Object Oriented Concept and Principles Gambar 9.6 : Abstraksi Encapsulation Pengkapsulan • Pengkapsulan berarti mengemas beberapa item bersama-sama menjadi satu unit yang tertutup dalam rangka menyembunyikan struktur internal suatu obyek dari lingkungandunia luar. • Pengapsulan seringkali dianggap sebagai “penyembunyian informasi”. • Setiap kelas hanya menampakkan interface yang diperlukan untuk berkomunikasi dengan dunia luar melalui message dan menyembunyikan encapsulating implementasi aktual didalam kelas. • Kita hanya membutuhkan pemahamam tentang interface methode, tidak perlu paham tentang internalnya implementation. Politeknik Telkom Rekayasa Perangkat Lunak Object Oriented Concept and Principles 161 Modularity adalah Memecah sesuatu yang kompleks menjadi bagian-bagian yang terkelola. Gambar 9.7 : Modularity Hierarchy adalahTingkat-tingkat abstraksi Gambar 9.8 : Hierarchy Politeknik Telkom Rekayasa Perangkat Lunak 162 Object Oriented Concept and Principles 9.1.1 Karakteristik Sistem Berorientasi Karakteristik atau sifat-sifat yang dipunyai sebuah system berorientasi objek adalah: Abstraksi Prinsip untuk merepresentasikan dunia nyata yang kompleks menjadi suatu bentuk model yang sederhana dengan mengabaikan aspek- aspek lain yang tidak sesuai dengan permasalahan. Enkapsulasi Pembungkusan atribut data dan layanan operasi-operasi yang dipunyai objek, untuk menyembunyikan implementasi dari objek sehingga objek lain tidak mengetahui cara kerjanya. Pewarisan Inheritance Mekanisme yang memungkinkan satu onjek baca:kelas mewaris sebagian atau seluruh definisi dari objek lain sebagian bagian dari dirinya. Reuseablity Pemanfaatan kembali objek yang sudah didefinisikan untuk suatu permasalahan lainnya yang melibatkan objek tersebut. Generalisasi dan Spesialisasi Menunjukan hubungan antara kelas dan objek yang umum dengan kelas dan objek khusus. Komunikasi Antar Objek Komunikasi antar objek dilakukan lewat pesan message yang dikirim dari satu objek ke objek lainya. Polymorphism Kemampuan suatu objek untuk digunakan di banyak tujuan yang berbeda dengan nama yang sama sehingga menghemat baris program.

9.2 Perkembangan metode Object Oriented Analysis and Design

OOAD Konsep objek telah dikenal sejak lebih dari tiga puluh tahun yang lalu Oesterich, p.5. 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. Politeknik Telkom Rekayasa Perangkat Lunak Object Oriented Concept and Principles 163 Gambar 9.6: Perkembangan Bahasa Pemrograman Di awal tahun 1990, metode OO yang dikenalkan oleh Grady Booch dan James Rumbaugh menjadi amat populer, Rumbaugh menekankan pengembangan berorientasi objek berdasarkan pendekatan terstruktur, sementara Booch menerapkan metode objek pada bidang teknik dan bisnis. Selanjutnya pada tahun 1995 muncul gagasan Booch dan Rumbaugh untuk menggabungkan metode mereka dengan membakukan notasi symbol yang digunakan dalam menggambarkan komponen sebuah aplikasi dan selanjutnya disebut Unified Method UM. Kemudian Ivar Jacobson bergabung bersama mereka untuk menyempurnakan metode objek ini, dengan menyusun konsep Use- Case. Munculnya metode yang dibuat oleh Booch, Rumbaugh dan Jacobsonketiganya sering disebut pendekar metode objek