Analisis Desain Berorientasi Objek dan Terstruktur
(OOAD & SSAD)
A. Pengertian dan Konsep
Pengertian
dan Konsep OOAD
§
Menurut peterdraw ,Analisis dan disain 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.
§
Menurut richmondtraytor, Analisis dan perancangan berbasis objek
adalah suatu metode yang memeriksa kebutuhan dari sudut pandang class-class dan
object-object yang ditemui dalam ruang lingkup permasalahan dan mengarahkan
arsitektur software yang didasarkan pada manipulasi object-object sistem atau
subsistem.
§
Hendra Divayana, Analisis
dan disain 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.
Pengertian
“berorientasi objek” berarti bahwa kita mengorganisasi perangkat lunak sebagai
kumpulan dari objek tertentu yang memiliki struktur data dan perilakunya.
Konsep OOAD mencakup analisis dan desain sebuah sistem dengan pendekatan objek,
yaiut analisis berorientasi objek (OOA) dan desain berorientasi objek (OOD).
OOA adalah metode analisis yang memerika requirement (syarat/keperluan) yang
harus dipenuhi sebuah sistem) dari sudut pandang kelas-kelas dan objek-objek
yang ditemui dalam ruang lingkup perusahaan. Sedangkan OOD adalah metode untuk
mengarahkan arsitektur software yang didasarkan pada manipulasi objek-objek
sistem atau subsistem.
OOA (Object Oriented Analysis)
OOA
mempelajari permasalahan dengan menspesifikasikannya atau mengobservasi
permasalahn tersebut dengan menggunakan metode berorientasi objek. Biasanya
analisa sistem dimulai dengan adanya dokumen permintaan (requirement) yang
diperoleh dari semua pihak yang berkepentingan. (Misal: klien,developer, pakar,
dan lain-lain).
Dokumen permintaan memiliki 2 fungsi
yaitu : memformulasikan kebutuhan klien dan membuat suatu daftar tugas.
Analisis berorientasi obyek (OOA) melihat pada domain masalah, dengan tujuan
untuk memproduksi sebuah model konseptual informasi yang ada di daerah yang
sedang dianalisis. Model analisis tidak mempertimbangkan kendala-kendala
pelaksanaan apapun yang mungkin ada, seperti konkurensi, distribusi, ketekunan,
atau bagaimana sistem harus dibangun. Kendala pelaksanaan ditangani selama
desain berorientasi objek (OOD).
Sumber-sumber
untuk analisis dapat persyaratan tertulis pernyataan, dokumen visi yang formal,
wawancara dengan stakeholder atau pihak yang berkepentingan lainnya. Sebuah
sistem dapat dibagi menjadi beberapa domain, yang mewakili bisnis yang berbeda,
teknologi, atau bidang yang diminati, masing-masing dianalisis secara terpisah.
Hasil
analisis berorientasi objek adalah deskripsi dari apa sistem secara fungsional
diperlukan untuk melakukan, dalam bentuk sebuah model konseptual. Itu biasanya
akan disajikan sebagai seperangkat menggunakan kasus, satu atau lebih UML
diagram kelas, dan sejumlah diagram interaksi. Tujuan dari analisis
berorientasi objek adalah untuk mengembangkan model yang menggambarkan
perangkat lunak komputer karena bekerja untuk memenuhi seperangkat persyaratan
yang ditentukan pelanggan.
UML (Unified
Modeling Language) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk
memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah
sistem pengembangan software berbasis OO (Object-Oriented). UML sendiri juga
memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep
bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema
database, dan komponen-komponen yang diperlukan dalam sistem software. Unified
Model Language (UML) adalah bahasa universal untuk :
1. Memvisualisasikan grafis model yang
tepat.
2. Menetapkan model yang tepat,
lengkap, dan tidak ambigu untuk mengampil semua keputusan penting dalam
analisis, desain dan implementasi.
3. Membangun model yang dapat
dihubungkan langsung dengan bahasa pemrograman.
4. Mendokumentasikan semua informasi yang dikumpulkan
oleh tim sehingga memungkinkan untuk berbagi informasi.
Tujuan
dari OOA adalah menentukan semua kelas dan hubungan
serta tingkah laku yang berkaitan dengan object secara relevan dengan masalah
yang akan dipecahkan.
OOD(ObjectOrientedDesign)
OOD mengubah model konseptual yang dihasilkan dalam analisis berorientasi objek memperhitungkan kendala yang dipaksakan oleh arsitektur yang dipilih dan setiap non-fungsional – teknologi atau lingkungan – kendala, seperti transaksi throughput, response time, run – waktu platform, lingkungan pengembangan, atau bahasa pemrograman.
OOD mengubah model konseptual yang dihasilkan dalam analisis berorientasi objek memperhitungkan kendala yang dipaksakan oleh arsitektur yang dipilih dan setiap non-fungsional – teknologi atau lingkungan – kendala, seperti transaksi throughput, response time, run – waktu platform, lingkungan pengembangan, atau bahasa pemrograman.
Tujuan Perancangan
·
Secara umum,
tujuan perancangan adalah menghasilkan suatu model atau penggambaran dari suatu
entitias yang akan dibangun kemudian.
·
Dalam konteks perancangan berorientasi objek (OOD), tujuan
perancangan adalah menurunkan objek-objek dari setiap kelas dan bagaimana
mengimplementasikan hubungan, perilaku dan komunikasi antar objek-objek
tersebut
Konsep
Metode Berorientasi Objek
Objek-objek
adalah suatu gabungan antara sebuah data dan sebuah aspek logik yang
menggambarkan sebuah entitas dunia nyata.
1.
Kelas dikatakan
sebagai suatu kumpulan objek yang memiliki struktur dan perilaku yang sama.
contoh sepeda adalah suatu kelas, maka sepeda wimcycle,sepeda polygon dikatakan
suatu objek.
2.
Atribut bertugas
sebagai untuk menggambarkan keadaan suatu objek, contoh sebuah sepeda memiliki
atribut bentuk,ukuran,warna,harga.
3.
Metode adalah
suatu fungsi atau prosedur yang didefinisikan untuk dapat mengakses keadaan
internal suatu objek dari suatu kelas. contoh nya kelas Pegawai memiliki metode
Hitung Gaji. Metode sebenarnya merupakan antarmuka yang disediakan untuk dapat
memanfaatkan perilaku objek tersebut.
4.
Message merupakan
cara untuk berhubungan antara satu objek dengan objek lain, Dua objek yang
berbeda dapat melakukan sebuah operasi yang berbeda dengan message yang sama.
Konsep ini dikenal dengan nama Polymorphism.
5.
Enkapsulasi memadukan
karakteristik unit di dalam suatu objek (data dan metode). Konsep ini bertujuan
untuk menyembunyikan informasi dan karakteristik objek.
6.
Hirarki
Kelas ,sistem berorientasi objek mengorganisasi kelas ke dalam hirarki
subclass-superclass. Perbedaan karakteristik dan perilaku digunakan sebagai
dasar penilaian untuk membedakan antara kelas dan sub kelas.
Analisis dan Desain Terstruktur (Structured System Analysis and Design (SSAD))
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.
Melalui
SSAD, permasalahan yang komplek di organisasi dapat dipecahkan dan hasil dari
sistem akan mudah untuk dipelihara, fleksibel, lebih memuaskan pemakainya,
mempunyai dokumentasi yang baik, tepat waktu, sesuai dengan anggaran biaya
pengembangan, dapat meningkatkan produktivitas dan kualitasnya akan lebih baik
(bebas kesalahan).
Elemen Perancangan Terstruktur
· Modul
merupakan sebuah instruksi atau sekumpulan instruksi program yang terdiri dari
: input(masukan), output(keluaran), fungsi, mekanisme dan data internal. Contoh
: Foxpro / Pascal (Procedure, function), COBOL (Program, section,paragraph),
FORTRAN (subroutine).
·
Bagan
terstruktur (Structured Chart) : Menggambarkan partisi sistem ke dalam :
modul-modul, organisasi, dan komunikasi. Keuntungannya ; Menggunakan gambar,
Dapat dipartisi, Fleksibel, Input sangat berguna pada implementasi, Membantu
pemeliharaan (maintenance) dan modifikasi.
· Strategi
Perancangan : Mentransformasikan hasil analisis (DFD) menjadi Bagan
Terstruktur, untuk diimplementasi. DFD memperlihatkan aliran data dan informasi
dari sistem. Jika dalam suatu DFD aliran datanya ditentukan oleh suatu data
item, misalnya ‘T’ yang mempunyai nilai/ karakteristik tertentu, kemudian nilai
ini akan mempengaruhi atau menentukan arah aliran data (men-trigger arah), maka
titik proses dimana terjadi percabangan arah aliran data tsb disebut titik
pusat transaksi
· Optimasi
dari perancangan (Design Heuristic). Metodologi Perancangan Terstruktur
· Metodologi
pemecahan fungsional : Metodologi ini menekankan pada pemecahan sistem ke dalam
subsistem-subsistem yang lebih kecil, sehingga akan lebih mudah untuk dipahami,
dirancang, dan diterapkan.
· Metodologi
berorientasi data : Metodologi ini menekankan pada karakteristik data yang akan
diproses.
· Prescriptive methodologies :
Metodologi ini merupakan metodologi yang dikembangkan oleh sistem house dan
pabrik-pabrik perangkat lunak dan tersedia secara komersial dalam paket-paket
program.( http://teknikinformatikanews.blogspot.co.id/2016/03/ooad-ssad.html)
B. Kelebihan
dan Kekurangan
Kelebihan SSAD
·
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.
Kelebihan OOAD
·
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 SSAD
·
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 sulit bagi pengguna untuk
melakukan evaluasi.
·
Pada SAAD
sulit 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).
Kekurangan OOAD
·
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
- OOAD adalah suatu pendekatan
dari sebuah sistem yang berorientasi pada objek, semua paradigma
atau fungsi dibungkus dalam objek.
- SSAD merupakan pendekatan
sistem yang semua objeknya dapat berinteraksi dengan objek lainnya.
DAFTAR PUSTAKA
- http://supriliwa.wordpress.com/2010/05/07/perbandingan-metode-terstruktrur-dan-obyek-oriented-pada-pengambangan-sistem-informasi/
- http://eziekim.wordpress.com/2011/11/08/perbedaan-antara-perancangan-terstruktur-dan-berorientasi-objek/
- · http://teknikinformatikanews.blogspot.co.id/2016/03/ooad-ssad.html
- · http://adefirman52.blogspot.co.id/2016/11/konsep-ooad-object-oriented-analysis.html
- · PeterDraw,
https://peterdraw.wordpress.com/2011/10/30/konsep-ooad-object-oriented-analysis-design/,
Diakses Pada Tanggal 18 November 2016
- · Nurul Fitria Dara,
http://nfdara.blogspot.co.id/2015/04/analisa-dan-desain-dengan-menggunakan.html
, Diakses Pada Tanggal 18 November 2016
- http://rasakankemarahanku.blogspot.co.id/2017/09/makalah-adbo-mengenai-ooad-dan-ssad.html
Tidak ada komentar:
Posting Komentar