Jumat, 16 Desember 2011

Perbandingan Metodologi Terstruktur dengan Metodologi Berorientasi Objek






KATA PENGANTAR

Puji syukur saya panjatkan kepada Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan hidayah-Nya sehingga kami dapat menyelesaikan makalah kami yang berjudul “Perbandingan Metodologi Rancangan Terstruktur, Notasi mode Informasi dan Orientasi Objek” sesuai dengan yang kami harapkan.
Dalam penyusunan makalah ini masih banyak terdapat kekurangan seperti kata pepatah “tak ada gading yang tak retak” tak ada pekerjaan yang sempurna, untuk itu kami mohon kritik dan saran yang membangun demi perbaikan makalah ini. Semoga dengan disusunnya makalah ini dapat bermanfaat bagi kita semua.

                                                                                    Jakarta, 22 Oktober 2011

                                                                                                Penyusun 









Daftar isi                                                                                Page
·          Kata pengantar .......................................................                    2
·          Daftar isi ................................................................            3
·          Bab I
Pendahuluan .........................................................            4-5
·          Bab II
Isi ...........................................................................             6-11
·          Bab III
Penutup..................................................................             12
·          Referensi ...............................................................             13














BAB I
Pendahuluan

1.                Pengertian Pemrograman Berorientasi Objek
Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan, memproses data, dan mengirim pesan ke objek lainnya. (wikipeda.co.id)

2.       Pengertian Pemrograman Terstruktur

 Pemrograman Terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program.Selain pengertian diatas Pemrograman Terstruktur adalah suatu aktifitas pemrograman dengan memperhatikan urutan langkah-langkah perintah secara sistematis, logis , dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami.

 Prinsip dari pemrograman terstruktur adalah Jika suatu proses telah sampai pada suatu titik / langkah tertentu , maka proses selanjutnya tidak boleh mengeksekusi langkah sebelumnya / kembali lagi ke baris sebelumnya, kecuali pada langkah – langkah untuk proses berulang (Loop).
Dilihat dari pengertian di atas, pemrograman terstruktur memilki beberapa sifat – sifat seperti :
a. Memuat teknik pemecahan masalah yang logis dan sistematis
b. Memuat algoritma yang efisien, efektif dan sederhana
c. Program disusun dengan logika yang mudah dipahami
d. Tidak menggunakan perintah GOTO
e. Biaya pengujian program relatif rendah
f. Memiliki dokumentasi yang baik
g. Biaya perawatan dan dokumentasi yang dibutuhkan relatif rendah
 berdasarkan penjelasan diatas, sangat jelas sekali bahwa pemrograman tersktruktur unggul dalam melakukan pemrograman sederhana karena lebih efisien dan lebih murah dalam hal perawatannya tetapi permodelan ini lebih susah untuk dipahami oleh orang – orang selain pembuat program itu sendiri (contohnya ketika dlakukan tracing program ).

 Sementara itu pemrograman berorientasi objek memliki beberapa keuntungan seperti :
1.)maintenance; program lebih mudah dibaca dan dipahami, dan pemrograman berorientasi obyek mengontrol kerumitan program hanya dengan mengijinkan rincian yang dibutuhkan untuk programmer.
2.)pengubahan program (berupa penambahan atau penghapusan fitur tertentu); perubahan yang dilakukan antara lain menyangkut penambahan dan penghapusan dalam suatu database program misalnya.
3.)dapat digunakannya obyek-obyek sesering yang diinginkan, kita dapat menyimpan obyek-obyek yang yang dirancang dengan baik ke dalam sebuah tolkit rutin yang bermanfaat yang dapat disisipkan kedalam kode yang baru dengan sedikit perubahan atau tanpa perubahan pada kode tersebut.
Jadi, sangat jelas sekal bahwa pemrograman berorientasi objek sangat cocok sekali digunakan dalam kasus pembuatan software yang rumit dan kompleks karena memberikan berbagai kemudahan kepada pemrogram seperti yang telah disebutkan diatas. permodelan yang mana yang lebh bagus? itu tergantung dari kebutuhan dan dari sudut pandang mana anda melihatnya. Yang perlu anda ingat adalah tujuan dari pemodelan itu sendiri, yang mana agar pada akhir proyek sistem dapat diperoleh sistem informasi yang memenuhi kebutuhan pemakai, tepat waktu dan sesuai anggaran, serta mudah digunakan, dimengerti dan dipelihara.



















BAB II
ISI
Metodologi yang umumnya digunakan dalam pembangunan sistem berbasis komputer dalam dunia bisnis dan industri saat ini adalah metode analisis dan design 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.
Disamping itu, akhir-akhir ini bahasa pemrograman object-oriented (OO) mliai poplier dan banyak digunakan pada organisasi bisnis maupun institusi pendidikan. Seiring dengan trend sebuah metodologi dibangun untuk membantu programmer dalam mengunakan bahasa pemrograman berorientasi obyek. Metodologi ini dikenal dengan object-oriented analysis and design (OOAD).
Metode OOAD melakukan pendekatan terhadap masalah dari perspektif obyek, tidak pada perspektif fungsional seperti pada pemrograman tersrtuktur. Akhir-akhir ini penggunakan OOAD meningkat dibandingkan dengan pengunaan metode pengembangan software dengan metode tradisional. Sebagai metode baru dan sophisticated bahasa pemrograman berorientasi obyek diciptakan, hal tersebut untuk memenuhi peningkatan kebutuhan akan pendekatan berorientasi obyek pada aplikasi bisnis.
v  Konsep Dasar Pendekatan Berorientasi Objek

Pendekatan berorientasi objek merupakan suatu teknik atau cara pendekatandalam melihat permasalahan dan sistem (sistem perangkat lunak. System informasi, atau sistem lainnva). Pendekatan berorientasi objek akan memandang sistem yang akan dikembangkan sebagai suatu kumpulan objek yang berkorespondensi dengan objek-objek dunia nvata. Ada banvak cara
untuk mengabstraksikan dan memodelkan objek-objek tersebut, mulai dan abstraksi objek, kelas, hubungan antar kelas sampai abstraksi sistem. Saat mengabstraksikan dan memodelkan objek mi, data dan proses-proses yang dipunyai oleh objek akan dienkapsulasi (dibungkus) menjadi satu kesatuan.

Dalam rekayasa perangkat lunak, konsep pendekatan berorientasi objek dapat diterapkan pada tahap analisis, perancangan, pemrograman, dan pengujianperangkat lunak. Ada berbagai teknik yang dapat digunakan pada masing-masing tahap tersebut, dengan aturan dan alat bantu pemodelan tertentu.Sistem berorientasi objek merupakan sebuah sistem yang dibangun denganberdasarkan metode berorientasi objek adalah sebuah sistem yangkomponennva dibungkus (dienkapsulasi) menjadi kelompok data dan fungsi.Setiap komponen dalam sistem tersebut dapat mewarisi atribut dan sifat dankomponen lainnya. dan dapat berinteraksi satu sama lain.

o   Metodologi Berorientasi Objek

Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat lunak yang mengorganisasikan perangkat lunak sebagai kumpulan objek yang berisi data dan operasi yang diberlakukan terhadapnva. Metodologiberorientasi objek merupakan suatu cara bagaimana sistem perangkat lunak dibangun melalui pendekatan objek secara sistematis. Metode berorientasiobjek didasarkan pada penerapan prinsip-prinsip pengelolaan kompleksitas.Metode berorientasi objek meliputi rangkaian aktivitas analisis berorientasi
objek. perancangan berorientasi objek, pemrograman berorientasi objek. danpengujian berorientasi objek.
Pada saat ini, metode berorientasi objek banyak dipilih karena metodologi lama banyak menimbulkan masalah seperti adanya kesulitan pada saatmentransformasi hasil dari satu tahap pengembangan ke tahap berikutnya, misalnya pada metode pendekatan terstruktur, jenis aplikasi yang dikembangkan saat ini berbeda dengan masa lalu. Aplikasi yang dikembangkan pada saat ini sangat beragam (aplikasi bisnis., dan sebagainva)dengan platform yang berbeda-beda, sehingga menimbulkan tuntutankebutuhan metodologi pengembangan yang dapat mengakomodasi ke semua  jenis aplikasi tersebut.


Keuntungan menggunakan metodologi berorientasi objek adalah sebagaiberikut:meningkatkan produktivitaskarena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnva yang melibatkan objek  tersebut (reusable)kecepatan pengembangan karena sistem yang dibangun dengan baik dan benar pada saat analisisdan perancangan akan menyebabkan berkurangnva kesalahan pada saat pengkodeankemudahan pemeliharaankarena dengan model objek, pola-pola yang cenderung tetap danstabil dapat dipisahkan dan pola-pola yang mungkin sering berubah-ubahadanya konsistensi karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan maupun pengkodean.meningkatkan kualitas perangkat lunak  karena  pendekatan pengembangan lebih dekat dengan dunia nyatadan adanya konsistensi pada saat pengembangannva, perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai serta mempunyai sedikit kesalahan
Bahasa pemrograman yang mendukung  antara lain:
1. Visual Foxpro
2. Java
3. C++
4. Pascal (bahasa pemrograman)
5. Visual Basic.NET
6. SIMULA
7. Smalltalk
8. Ruby
9. Python
10. PHP
11. C#
12. Delphi
13. Eiffel
14. Perl



o   Sekilas Pendekatan terstruktur

Teknik terstruktur, merupakan pendekatan formal untuk memecahkanmasalah-masalah dalam aktivitas bisnis menjadi bagian-bagian kecil yang dapat diatur dan berhubungan untuk kemudian dapat disatukan kembali menjadisatu kesatuan yang dapat dipergunakan untuk memecahkan masalah.Dalam hubungannya dengan pengembangan sistem informasi dan software aplikasi sistem informasi, pemrograman terstruktur adalah proses yangberorientasi kepada teknik yang digunakan untuk merancang dan menulis program secara jelas dan konsisten.

Desain terstruktur merupakan salah satu proses yang berorientasi teknik yang digunakan untuk memilah-milahprogram besar ke dalam hirarki modul-modul yang menghasilkan programkomputer yang lebih kecil agar mudah untuk diimplementasikan dandipelihara (diubah). Analisis Terstruktur Modern merupakan teknik yangberorientasi kepada proses yang paling populer dan banyak digunakan dewasaini. Pemodelan data merupakan suatu teknik yang berorientasi kepada datadengan menunjukkan sistem hanya datanya saja terlepas dari bagaimana data tersebut akan diproses atau digunakan untuk menghasilkan informasi.

Rekayasa Informasi merupakan perpaduan dari pemodelan data dan proses, juga memberikan penekanan baru terhadap pentingnya perencanaan sisteminformasi

Ciri-ciri utama teknik terstruktur adalah sebagai berikut:merancang berdasar modulmodularisasi adalah proses yang membagi suatu sistem menjadibeberapa modul yang dapat beroperasi secara independenbekerja dengan pendekatan top-down dimulai dari level atas (secara global) kemudian diuraikan sampai ke tingkat modul (rinci)dilakukan secara iterasidengan iterasi akan didapat hasil yang lebih baik, terlalu banyak iterasi juga akan menurunkan hasilnya dan menunjukkan bahwa tahap sebelumnya tidak dilakukan dengan baik kegiatan dilakukan secara paralelpengembangan subsistem-subsistem dapat dilakukan secara paralel,sehingga akan memperpendek waktu pengembangan system secara teknis














o   Perbandingan Pendekatan OO dan Terstruktur

Perbedaan yang paling dasar dari pendekatan terstruktur dan pendekatan OO( Object Oriented ) atau berorientasi objek adalah pada metode berorientasifungsi atau aliran data ( Data Flow Diagram(DFD)) (pendekatan terstruktur),dekomposisi permasalahan dilakukan berdasarkan fungsi atau proses secara hirarki, mulai dari konteks sampai proses-proses yang paling kecil, sementara pada metode berorientasi objek. dekomposisi permasalahan dilakukan berdasarkan objek-objek yang ada dalam sistem.

Dari perbandingan tersebut, didapatkan bahwa dua metodologi tersebut hanya memenuhi sebagian dari siklus hidup pengembangan sistem. Namun, pada dasarnya kedua metodologi tersebut bisa digunakan untuk melakukan analisa dan perancangan sebuah sistem

Berikut adalah Kelebihan dan Kekurangan Kedua Metode Tersebut
o   METODE 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).


o   METODE BERORIENTASI OBYEK
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 memcah 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).

o   PERBEDAAN DESAIN BERORIENTASI TERSTRUKTUR DENGAN DESIGN BERORIENTASI OBJEK
Banyak yang mengatakan bahwa desain berorientasi terstruktur merupakan kependekan dari desain berorientasi objek.
Berorientasi terstruktur
Berorientasi objek
Modul merupakan unit dari kode
software yang menjalankan
fungsi.
Modul merupakan objek yang
mengenkapsulasi atribut dan kode
program untuk berjalan.
















BAB III
KESIMPULAN


A.    Kesimpulan dan Saran
Berdasarkan karakteristiknya keunggulan pendekatan objek adalah dapat meningkatkan efisiensi aplikasi karena sifatnya yang dapat diwariskan (digunakan kembali untuk objek lainnya) khususnya untuk sistem yang besar dan kompleks, selain itu karena model yang dinamis model ini tepat untuk sistem yang real time.Selain itu dalam dunia pemrograman konsep objek ini telah digunakan secara luas terbukti dengan banyaknya bahasa pemrogram yang berbasis objek.
Keterbatasan pendekatan objek adalah kurangnya pengenalan mengenai pendekatan yang relatif baru dikalangan akuntansi, walaupun untuk kalangan IT hal ini tidaklah demikian. Pengenalan terhadap pengembangan sistem berorientasi objek tidak sepopuler pendekatan relasional. Untuk itu sebagai penutup makalah ini penulis menyarankan untuk memperkenalkan pendekatan objek dalam perkuliahan yang berhubungan  dengan Sistem Informasi .








REFERENSI


Tidak ada komentar:

Posting Komentar