Kamis, 22 Oktober 2009

Pengantar Object-Oriented

Metodologi Object-Oriented

Object-Oriented” (OO) mengandung arti mengorganisasikan perangkat lunak yang terdiri sekumpulan objek diskrit yang mempersatukan struktur data dan behavior. Secara umum ada empat askep sebagai karakteristik OO, yaitu : identity, classification, polymorphism and inheritance.

==Identity

Idendity mengandung arti data yang memiliki jumlah diskrit, membedakan entitas disebut object. Contoh : paragraph dalam dokumen, windows pada workstation

==Classification

Klasifikasi merupakan objek dengan kesamaan struktur data (attribute) dan behavior/prilaku (operation) dikelompokan menjadi sebuah calass. Paragrap dan window merupakan contoh dari class. Class adalah abstraksi yang menjelaskan propenrti penting untuk aplikasi.

==Polymorphism

Kebanyakrupaan (polymorphisme):

o pensubstitusian dinamis supertype oleh subtype

o pemanipulasian objek secara seragam dengan tipe yang berbeda-beda

contoh : operasi move memiliki prilaku yang berbeda pada class window dan bicycle class.

==Inheritance

Pewarisan (inherintance): pembentukan suatu hirarki atau jejaring akibat peng-umum-an atau pengkhususan (bergantung pada fokus perhatian).

Contoh penerapan inheritance : ScrollingWindow dan FixedWindows adalah subclass dari Window.

Object-Oriented Development

Pengembangan orientasi objek merupakan suatu cara baru tentang perangkat lunak yang berbasis abstakri yang terdapat pada dunia nyata. Prinsip abstraksi dan kemudian dilanjutkan penerapan dekomposisi merupakan ciri proses pengembangan perangkat lunak, yaitu :

  1. Abstraksi membantu dalam membuat pilihan yang tepat mengenai komponen-komponen pembentuk perangkat lunak
  2. Dekomposisi digunakan untuk memecah perangkat lunak menjadi komponen-komponen yang dapat dikombinasikan untuk menyelesaikan persoalan besar.

Abstraksi akan dibahas pada bagian berikutnya dalam diktat kuliah ini.

Langkah-langkah pengembangan perangkat lunak secara umum telah dibahas pada part one dalam diktat ini meliputi :

  1. Requiment analysis and definition
  2. System Design
  3. Program Design
  4. Write The Program
  5. Unit Testing
  6. Integration Testing
  7. System Testing
  8. System Delivery

Selanjutnya disebut Software Development Process.

Pengembangan perangkat lunak berorientasi objek memiliki kesamaan proses namun setiap tahapan memiliki pekerjaan pemodelan yang berbeda.

Banyak pada para ilmuwan, penulis buku/artikel mengusulkan bagaimana langkah-langka pengembangan perangkat lunak berorientasi objek dilaksanakan, berikut contoh-contoh metoda/metodologi yang ada :

Shlaer/Mellor

Coad/Yourdon

Object Modelling Techniques (Rumbaugh, et. al.)

Responsibility Driven Design (Wirfs-Brock, et. al.)

Objectory

OOAD Booch

Fusion (Coleman, et. al.)

Antara metoda/metodologi yang satu dengan yang lain memiliki kekhususan masing-masing dalam hal teknik dan notasi yang digunakan.

Kesamaan umum dari semua metode/metodologi berorientasi objek terletak pada

Cara pandang:

§ Static, menggambarkan keterkaitan lojik antar entitas pada sistem

§ Dynamic, menggambarkan hubungan yang terbentuk akibat dinamika sistem

Penggambaran umum:

§ Class diagram

§ Object diagram

· Snapshot views: menggambarkan peta hubungan antarobjek pada suatu saat tertentu

· Functional/Sequencing views: menggambarkan fungsi yang perlu diperankan oleh sistem

§ Subsystem view: menggambarkan pengabstraksian/pembagian sistem secara lojik

§ Implementation view berupa module/component: menggambarkan pemisahan sistem menjadi suatu konfigurasi fisik produk yang akan diluncurkan

Selanjutnya untuk menyeragamkan dalam hal notasi yang digunakan untuk melakukan pemodelan mereka (Rumbaugh, dkk) merumuskan suatu notasi/language yang dikenal dengan nama UML (Unified Modelling Language). UML akan dibahas pada bagian berikutnya.

1 komentar: