Analisis dan Perancangan Berorientasi Objek
Pemrograman berorientasi objek pertama-tama dibicarakan pada akhir tahun 1960 menggunakan bahasa SIMULA. Pada tahun 1970, bahasa pemrograman Smaltalk dikembangkan oleh Xerox PARC. Pada saat itu sebagian lain dari dunia menggunakan COBOL dan FORTRAN dengan metode dekomposisi fungsional. Perubahan terjadi selama beberapa dekade sampai dikenalnya faktor utama, yaitu:- Konsep dasar berorientasi objek Konsep dasar pendekatan berorientasi objek mencapai kematangan. Pada umumnya, perhatian pada masalah coding telah berubah menjadi masalah analisa dan desain.- Teknologi dasar pembangunan sistem Gagasan tentang coding sangat dipengaruhi oleh bahasa pemrograman yang tersedia. Sangat sulit memikirkan pemrograman terstruktur bila yang tersedia adalah Assembler, tetapi lebih mudah bila menggunakan Pascal. Sama halnya akan sulit untuk membuat coding berorientasi objek bila bahasa pemrograman yang dipilih COBOL atau FORTRAN. Hal ini lebih mudah bila menggunakan Java, C++, Borland Pascal versi baru, Smalltalk dan Ada.- Kondisi sistem Sistem yang dibangun pada saat ini berbeda dengan sistem beberapa tahun yang lalu. Sistem sekarang lebih besar, kompleks dan juga dapat merupakan sistem yang interaktif. Sebagian besar code pada sistem yang modern memperhatikan user interface, seperti manipulasi window, icon, mouse, dan lain-lain. Pengalaman memperlihatkan bahwa pendekatan berorientasi objek merupakan cara yang lebih tepat untuk sistem berorientasi objek.- Penggunaan model Banyak organisasi mendapatkan bahwa sistem yang dibangun pada saat ini cenderung berorientasi data dari pada sistem yang dibangun sekitar tahun 1970 dan 1980. Kompleksitas fungsional kurang diperhatikan dari pada waktu sebelumnya, penggunaan model mendapatkan prioritas yang lebih besar. Analisis dan Perancangan Berbasis Objek (OOAD) adalah rekayasa pendekatan software yang model sistemnya sebagai sekelompok objek yang saling berinteraksi. Setiap objek terdiri dari beberapa entitas yang mempunyai kepentingan dalam sistem yang dimodelkan, dan ditandai oleh class-classnya, elemen data dan perilakunya. Berbagai model dapat dibuat untuk menunjukkan struktur yang bersifat statis, perilaku dinamis dan run-time penyebaran obyek yang berkolaborasi. Ada beberapa notasi yang berbeda untuk mewakili model ini, seperti Unified Modeling Language (UML). Analisis berorientasi objek (OOA) adalah teknik permodelan objek untuk menganalisis kebutuhan fungsional sistem. Desain berorientasi objek (OOD) menguraikan model analisis untuk menghasilkan spesifikasi implementasi. OOA berfokus pada apa yang sistem lakukan, OOD tentang bagaimana sistem melakukannya.Sistem Berorientasi Objek Sebuah sistem berorientasi objek terdiri dari objek. Perilaku sistem berasal dari kolaborasi dari objek tersebut. Kolaborasi antara objek melibatkan mereka mengirim pesan satu sama lain. Mengirim pesan berbeda dari memanggil fungsi jika benda sasaran menerima pesan, ia memutuskan sendiri apa yang akan dilakukan untuk melaksanakan layanan pesan itu. Pesan yang sama dapat diimplementasikan oleh fungsi yang berbeda, yang dipilih tergantung pada keadaan objek target. Pelaksanaan “Pengiriman pesan” bervariasi tergantung pada arsitektur sistem yang dimodelkan, dan lokasi dari objek yang dikomunikasikan dengan.Analisis Berorientasi Objek Analisis berorientasi objek (OOA) adalah proses menganalisis tugas, untuk mengembangkan sebuah model konseptual yang kemudian dapat digunakan untuk menyelesaikan tugas. Sebuah model OOA yang mempunyai ciri khas khusus akan menjelaskan perangkat lunak komputer yang dapat digunakan untuk memenuhi keperluan pengguna berdasarkan kriteria yang telah ditentukan. Selama fase analisis pemecahan masalah, analis mungkin mempertimbangkan pernyataan-persyaratan tertulis, dokumen visi formal atau wawancara dengan para pemangku kepentingan atau pihak berkepentingan lainnya. Tugas yang ditangani mungkin akan dibagi menjadi beberapa sub-tugas (atau domain), masing-masing mewakili bisnis yang berbeda, teknologi, atau daerah lain yang menarik. Setiap subtask akan dianalisis secara terpisah. Pelaksanaan kendala, (misalnya, konkurensi, distribusi, ketekunan, atau bagaimana sistem ini akan dibangun) tidak dipertimbangkan selama tahap analisis, melainkan, mereka ditangani selama desain berorientasi objek (OOD). Model konseptual yang dihasilkan dari OOA biasanya akan terdiri dari serangkaian kasus penggunaan, satu atau lebih UML diagram kelas, dan sejumlah diagram interaksi. Ini juga termasuk beberapa jenis antarmuka pengguna mock-up.Perancangan Berorientasi Objek
Selama perancangan berorientasi objek (OOD), pengembang mendapatkan masalah dalam pengimplementasian untuk model konseptual yang akan dihasilkan dalam analisis berorientasi objek. Kendala tersebut dapat mencakup tidak hanya pada masalah yang diberikan oleh arsitek yang dipilih, tetapi juga non-fungsional -teknologi atau lingkungan - masalah, seperti transaksi throughput, waktu respon, run-time platform, lingkungan pengembangan atau mereka yang melekat dalam bahasa pemrograman. Konsep dalam model analisis yang dipetakan ke kelas implementasi dan interface yang dihasilkan dalam solusi model domain, yaitu penjelasan rinci tentang bagaimana sistem ini akan dibangun.
A. Pengertian Dasar:
Analisis
• Penguraian suatu pokok atas berbagai bagiannya dan penelaahan bagian itu sendiri serta hubungan antar bagi an untuk memperoleh pengertian yang tepat dan pemahaman arti keseluruhan.
• Studi dari suatu permasalahan dengan cara memilah-milah permasalahan tersebut sehingga dapat dipahami dan dievaluasi, sebelum diambil tindakan-tindakan tertentu.
• Penguraian suatu pokok atas berbagai bagiannya dan penelaahan bagian itu sendiri serta hubungan antar bagi an untuk memperoleh pengertian yang tepat dan pemahaman arti keseluruhan.
• Studi dari suatu permasalahan dengan cara memilah-milah permasalahan tersebut sehingga dapat dipahami dan dievaluasi, sebelum diambil tindakan-tindakan tertentu.
Analisis Berorientasi Objek
• Investigasi masalah untuk menemukan (mengidentifikasikan) dan mendefinisikan objek-objek atau konsep-konsep yang ada di ruang masalah.
• Proses untuk menentukan objek-objek potensial yang ada dalam sistem dan mendeskripsikan karakterisitik dan hubungannya dalam sebuah notasi formal.
• Aplikasi konsep berorientasi objek untuk memodelkan permasalahan dan sistem, baik untuk lingkup perangkat lunak maupun non-perangkat lunak.
Tujuan Analisis
• Memahami permasalahan secara menyeluruh.
• Mengungkapkan apa yang harus dikerjakan oleh sistem untuk memenuhi kebutuhan pemakai.
• Mengetahui ruang lingkup produk (product space ) dan pemakai yang akan menggunakan produk tersebut.
Tahap Analisis
• Mempelajari permasalahan
• Menentukan kebutuhan pemakai
• Mengubah kebutuhan yang belum terstruktur menjadi model-model atau gambar-gambar dengan memanfaatkan metode dan teknik analisis tertentu.
• Mendokumentasikan hasil analisis, misalnya Software Requirement Specification (SRS).
B. Metode Analisis Berorientasi Objek:
Pengertian
• Cara kerja yang sistematis untuk mengerjakan tahap analisis berdasarkan pendekatan objek.
• Ada kumpulan aturan-aturan tertentu yang harus diikuti untuk menyelesaikan pekerjaan analisis tersebut.
• Mempunyai urut-urutan aktivitas, teknik, dan alat bantu ( tools ) tertentu untuk memodelkan (mendokumentasikan) hasil dari se tiap aktivitas.
• Ada beberapa metode yang dapat digunakan untuk melakukan analisis berorientasi objek, dan dianta ranya adalah sebagai berikut.
Metode Coad & Yourdan
• Diperkenalkan oleh Peter Coad dan Edward Yourdan pada tahun 1990.
• Disebut juga dengan nama Object Oriented Analysis (OOA), dan dipandang sebagai salah satu te knik yang mudah untuk dipelajari.
• Notasi model relatif sederhana karena didasarkan pada struktur fisik dunia nyata, dan petunjuk untuk mela kukan analisis cukup jelas.
• Tahap atau skema pelaksanaan:
- Identifikasi kelas dan objek
- Identifikasi struktur
• Struktur "generalization-specification”
• Struktur “whole-part” atau “a-part-of”
• Identifikasi subjek
• Definisikan atribut
- Atribut implisi objek
- Koneksi instan (instance connection )
• Definisikan layanan
- Layanan implisit objek
- Layanan yang berasosiasi dengan atribut
- Layanan yang berasosiasi dengan “message-connection”
Metode Rumbaugh
• Diperkenalkan oleh James Rumbaugh, Michael Blaha, William Premerlan, Frederick Eddy dan William Lorensen pada tahun 1991.
• Lebih dikenal dengan Object Modeling Technique (OMT) yang dapat digunakan baik untuk analisis maupun desain.
• Selain model-model fisik dari obje k, pendekatan analisis dilkukan juga untuk model-model dinamik dan model fungsional.
Metode Jacobson
• Diperkenalkan oleh Ivar Jacobson dengan nama Object Oriented Software Engineering (OOSE) pada tahun 1992.
• Merupakan versi yang juga sederhana dari metode berorientasi objek.
• Sudut pandang atau fokus analisis ditekankan pada “use case ”, yaitu deskripsi atau skenario yang menggambarkan bagaimana pemakai berinteraksi dengan produk atau sistem yang akan dikembangkan.
Metode Booch
• Diperkenalkan oleh Grady Booch pada tahun 1994.
• Meliputi proses pengembangan makro dan mikro, dengan anggapan bahwa analisis dan desain merupakan rangkaian kesatuan aktivitas yang tidak dipisahkan.
C. Metode Analisis Secara Umum
• Pada prinsipnya semua metode analisis berorientasi objek adalah sama, perbedaan hanya terletak pada s udut pandang dan teknis pelaksanaannya.
• Secara umum, metode analisis berorientasi objek mencakup representasi kelas dan hirarki kelas, model hubunga n objek, dan model perilaku objek.
• Tahap atau skema pelaksanaan analisis berorientasi objek :
- Tentukan kebutuhan pemakai untuk sistem berorientasi objek
- Identifikasi kelas dan objek
- Identifikasi atribut dan layanan untuk setiap objek
- Definisikan struktur dan hirarki
- Buat model hubungan objek
- Buat model perilaku objek
Menentukan Kebutuhan Pemakai untuk Sistem Berorientasi Objek
• Mengidentifikasikan proses-proses bisnis dan kebutuhan pemakai dan mengekspresikan dengan ‘use-case”.
• Sebenarnya bukan merupakan aktivitas analisis berorientasi objek, karena tidak membicarakan pembahasan tentang objek.
• Diperlukan karena dapat menjelaskan aktivitas-aktivitas apa saja yang harus dikerjakan oleh sistem, da n menjelaskan juga perilaku dari komponen-komponen sistem.
• Ada diagram tertentu yang dapat merepresentasikan model kebutuhan dari “use-case” yang diperoleh.
Identifikasi Kelas dan Objek
• Mengidentifikasi kelas-kelas dan objek-objek yang ada dalam lingkup aplikasi:
- eksplisit pada pernyataan masalah
- implisit pada lingkup aplikasi atau pengetahuan atas lingkup aplikasi
• Kelas dan objek dapat diidentifikasi dari:
- entitas eksternal yang memproduksi dan memakai informasi yang akan digunakan oleh sistem berbasis komputer
- sesuatu yang merupakan bagian dari wilayah informasi dari permasalahan
- kejadian, misalnya prosedur operasional, yang muncul dalam lingkup operasional sistem
- peran yang dimainkan oleh orang- orang yang berinteraksi dengan sistem
- unit organisasi yang relevan dengan aplikasi
- tempat yang menentukan ruang lin gkup masalah dan seluruh fungsi dari sitem
- struktur yang mendefinisikan kelas dari objek atau yang menghubungkan kelas-kelas objek.
• Abaikan kelas dan objek yang tidak tepat karena:
- redunden
- tidak relevan
- lebih tepat berupa atribut
- lebih tepat berupa operasi
- lebih tepat berupa peran
- lebih merupakan konstruksi implementasi.
Identifikasi Atribut dan Layanan
• Mengidentifikasi atribut dan layanan yang terkait untuk setiap atribut
tersebut.
• Atribut diidentifikasi dari elemen-elemen data yang dapat
menggambarkan (mencirikan) sebuah objek secara utuh.
• Layanan diidentifikasi dari perilaku spesifik yang dapat menunjukkan
peran dan tanggung jawab suatu objek.
• Abaikan atribut yang tidak tepat karena:
- berupa objek
- berupa qualifier
- berupa nama
- berupa identifier pada implementasi
- menyatakan status internal objek
- merupakan atribut yang sangat kecil (minor)
- bertentangan dengan atribut lain
Definisi Struktur dan Hirarki
• Mendefinisikan struktur dan hirarki dari objek yang akan
mengorganisasikan kelas objek.
• Mengatur dan menyederhanakan objek-objek menjadi kelas-kelas objek
melalui konsep agregasi dan pewarisan.
• Struktur dan hirarki yang mungkin didefinisikan: - Struktur “ generalization-specification”
Sumber : http://mamatbinmoncoy.blogspot.com/2012/06/analisis-dan-perancangan-berorientasi.html
Tidak ada komentar:
Posting Komentar