Rabu, 13 Juni 2012

Analisa dan perancangan berbasis objek, Perbedaan berbasis objek dengan terstruktur


PreTest OO

Analisa dan perancangan berorientasi objek adalah cara baru dalam memikirkan suatu masalah dengan menggunakan model yang dibuat menurut konsep sekitar dunia nyata. Dasar pembuatan adalah objek, yang merupakan kombinasi antara struktur data dan perilaku dalam satu entitas. Model berorientasi objek bermanfaat untuk memahami masalah, komunikasi dengan ahli aplikasi, pemodelan suatu organisasi, menyiapkan dokumentasi serta perancangan program dan basis data. Pertama-tama suatu model analisis dibuat untuk menggambarkan aspek dasar dari domain aplikasi, dimana model tersebut berisi objek yang terdapat dalam domain aplikasi termasuk deskripsi dari keterangan objek dan perilakunya.

Sejarah 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 system
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.

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.

Terdapat tujuh macam tujuan dan keuntungan dari Analisis Berorientasi Objek, yaitu :
1. Pewarisan dapat memberikan identifikasi sesuatu yang umum pada atribut dan metoda
2. Penggambaran yang konsisten dari sistem, pada tahap analisis dan desain
3. Hasil analisis dapat digunakan kembali
4. Mengurangi jarak antara aktivitas analisis yang berbeda dengan membuat atribut dan    metode menjadi satu kesatuan
5. Menangani lebih banyak problem domain. Analisis Berorientasi Objek memberikan kemudahan untuk memahami inti permasalahan
6. Menangani lebih banyak problem domain. Analisis Berorientasi Objek memberikan kemudahan untuk memahami inti permasalahan
7. Menjaga stabilitas atas perubahan kebutuhan pada sistem yang sama

PostTest OO

METODE TERSTRUKTUR

Perancangan Terstruktur (Structured Analisys and Design / SSAD) Metode ini diperkenalkan pada tahun 1970, yang merupakan hasil turunan dari pemrograman terstruktur. Metode pengembangan dengan metode terstruktur ini terus diperbaiki sampai akhirnya dapat digunakan dalam dunia nyata. Perancangan ini bertujuan untuk membuat model SOLUSI terhadap PROBLEM yang sudah dimodelkan secara lengkap pada tahap analisis terstruktur.

Kelebihan
· Milestone diperlihatkan dengan jelas yang memudahkan dalam manajemen proyek

· SSAD merupakan pendekatan visual, ini membuat metode ini mudah dimengerti oleh pengguna atau programmer.

· Penggunaan analisis grafis dan tool seperti DFD menjadikan SSAD menjadikan bagus untuk digunakan.

· SSAD merupakan metode yang diketahui secara umum pada berbagai industry.

· SSAD sudah diterapkan begitu lama sehingga metode ini sudah matang dan layak untuk digunakan.

· SSAD memungkinkan untuk melakukan validasi antara berbagai kebutuhan

· SSAD relatif simpel dan mudah dimengerti.

Kekurangan
· SSAD berorientasi utama pada proses, sehingga mengabaikan kebutuhan non-fungsional.

· Sedikit sekali manajemen langsung terkait dengan SSAD

· Prinsip dasar SSAD merupakan pengembangan non-iterative (waterfall), akan tetapi kebutuhan akan berubah pada setiap proses.

· Interaksi antara analisis atau pengguna tidak komprehensif, karena sistem telah didefinisikan dari awal, sehingga tidak adaptif terhadap perubahan (kebutuhan-kebutuhan baru).

· Selain dengan menggunakan desain logic dan DFD, tidak cukup tool yang digunakan untuk mengkomunikasikan dengan pengguna, sehingga sangat sliit bagi pengguna untuk melakukan evaluasi.

· Pada SAAD sliit sekali untuk memutuskan ketika ingin menghentikan dekomposisi dan mliai membuat sistem.
· SSAD tidak selalu memenuhi kebutuhan pengguna.

· SSAD tidak dapat memenuhi kebutuhan terkait bahasa pemrograman berorientasi obyek, karena metode ini memang didesain untuk mendukung bahasa pemrograman terstruktur, tidak berorientasi pada obyek (Jadalowen, 2002).

METODE BERORIENTASI OBJEK
Kelebihan
· Dibandingkan dengan metode SSAD, OOAD lebih mudah digunakan dalam pembangunan sistem

· Dibandingkan dengan SSAD, waktu pengembangan, level organisasi, ketangguhan,dan penggunaan kembali (reuse) kode program lebih tinggi dibandingkan dengan metode OOAD (Sommerville, 2000).

· Tidak ada pemisahan antara fase desain dan analisis, sehingga meningkatkan komunikasi antara user dan developer dari awal hingga akhir pembangunan sistem.

· Analis dan programmer tidak dibatasi dengan batasan implementasi sistem, jadi desain dapat diformliasikan yang dapat dikonfirmasi dengan berbagai lingkungan eksekusi.

· Relasi obyek dengan entitas (thing) umumnya dapat di mapping dengan baik seperti kondisi pada dunia nyata dan keterkaitan dalam sistem. Hal ini memudahkan dalam mehami desain (Sommerville, 2000).

· Memungkinkan adanya perubahan dan kepercayaan diri yang tinggi terhadap kebernaran software yang membantu untuk mengurangi resiko pada pembangunan sistem yang kompleks (Booch, 2007).

· Encapsliation data dan method, memungkinkan penggunaan kembali pada proyek lain, hal ini akan memperingan proses desain, pemrograman dan reduksi harga.

· OOAD memungkinkan adanya standarisasi obyek yang akan memudahkan memahami desain dan mengurangi resiko pelaksanaan proyek.

· Dekomposisi obyek, memungkinkan seorang analis untuk memecah masalah menjadi pecahan-pecahan masalah dan bagian-bagian yang dimanage secara terpisah. Kode program dapat dikerjakan bersama-sama. Metode ini memungkinkan pembangunan software dengan cepat, sehingga dapat segera masuk ke pasaran dan kompetitif. Sistem yang dihasilkan sangat fleksibel dan mudah dalam memelihara.

Kekurangan
· Pada awal desain OOAD, sistem mungkin akan sangat simple.

· Pada OOAD lebih fockus pada coding dibandingkan dengan SSAD.

· Pada OOAD tidak menekankan pada kinerja team seperti pada SSAD.

· Pada OOAD tidak mudah untuk mendefinisikan class dan obyek yang dibutuhkan sistem.

· Sering kali pemrogramam berorientasi obyek digunakan untuk melakukan anlisisis terhadap fungsional siste, sementara metode OOAD tidak berbasis pada fungsional sistem.

· OOAD merupakan jenis manajemen proyek yang tergolong baru, yang berbeda dengan metode analisis dengan metode terstruktur. Konsekuensinya adalah, team developer butuh waktu yang lebih lama untuk berpindah ke OOAD, karena mereka sudah menggunakan SSAD dalam waktu yang lama ( Hantos, 2005).

· Metodologi pengembangan sistem dengan OOAD menggunakan konsep reuse. Reuse merupakan salah satu keuntungan utama yang menjadi alasan digunakannya OOAD. Namun demikian, tanpa prosedur yang emplisit terhadap reuse, akan sangat sliit untuk menerapkan konsep ini pada skala besar (Hantos, 2005).

Kesimpulan yang bisa saya ambil adalah
Kalau ingin membuat yang sederhana dan dapat di mengerti oleh pengguna maupun programmer maka kita bisa menggunakan SSAD karena SSAD menggunakan pendekatan visual tetapi semua itu juga di lihat dari aspek biaya , tenaga ahli maupun yang lain nya.

Kalau ingin membuat yang lebih rumit dapat menggunakan OOAD  karena OOAD memiliki kelebihan Dekomposisi obyek, memungkinkan seorang analis untuk memecah masalah menjadi pecahan-pecahan masalah dan bagian-bagian yang dimanage secara terpisah. Kode program dapat dikerjakan bersama-sama. Metode ini memungkinkan pembangunan software dengan cepat, sehingga dapat segera masuk ke pasaran dan kompetitif. Sistem yang dihasilkan sangat fleksibel dan mudah dalam memelihara.

Sumber :
www.google.co.id

Tidak ada komentar:

Posting Komentar