PERBEDAAN SSAD DAN OOAD
Pengertian dan Konsep SSAD DAN OOAD
I. Analisis dan Desain Berorientasi
Objek (Object Oriented Analysis and Design(OOAD)) adalah suatu pendekatan
rekayasa perangkat lunak dari sebuah sistem yang terdiri dari sekelompok objek
yang saling berinteraksi, dan setiap objek itu mewakili beberapa entitas. Yang
ditandai dengan adanya sebuah kelas, elemen data dan perilaku dari objek
tersebut.
Konsep OOAD mencakup analisis dan
desain sebuah sistem dengan pendekatan objek, yaitu analisis berorientasi objek
(OOA) dan desain berorientasi objek (OOD). OOA
adalah metode yang memeriksa syarat 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.
1. Karakteristik Object
Ada 2 karakteristik dari objek :
a. Objek/Object
● Objek adalah benda secara fisik dan
konseptual yang ada di sekitar kita. Sebuah objek memiliki keadaan sesaat yang
disebut state.
● Objek dapat kongkrit, seperti halnya
arsip dalam sistem, atau konseptual seperti kebijakan penjadwalan dalam
multiprocessing pada sistem operasi.
● Dua objek dapat berbeda walaupun
bila semua nilai atributnya identik.
Gambar 1. Macam-macam Objek
a. Kelas/Class
Kelas merupakan gambaran sekumpulan
Objek yang terbagi dalam atribut, operasi, metode, hubungan, dan makna yang
sama.
● Suatu kegiatan mengumpulkan data
(atribut) dan perilaku (operasi) yang mempunyai struktur data sama ke dalam
satu grup.
● Kelas Objek merupakan wadah bagi
Objek. Dapat digunakan untuk menciptakan Objek.
● Objek mewakili fakta/keterangan dari
sebuah kelas.
Gambar
2. Kelas dan Objek
Istilah-istilah Objek
● Atribut: Data item yang menegaskan
Objek.
● Operasi: Fungsi di dalam kelas yang
dikombinasikan ke bentuk tingkah laku kelas.
● Metode: Pelaksanaan prosedur (badan
dari kode yang mengeksekusi respon terhadap permintaan objek lain di dalam
sistem).
1. Karakteristik Metodologi
Berorientasi Object
Metodologi pengembangan sistem
berorientasi objek mempunyai tiga karakteristik utama :
a.
Encapsulation (Pengkapsulan)
● Encapsulation
merupakan dasar untuk pembatasan ruang lingkup program terhadap data yang
diproses.
● Data
dan prosedur atau fungsi dikemas bersama-sama dalam suatu objek, sehingga
prosedur atau fungsi lain dari luar tidak dapat mengaksesnya.
● Data
terlindung dari prosedur atau objek lain, kecuali prosedur yang berada dalam
objek itu sendiri.
b.
Inheritance (Pewarisan)
● Inheritance
adalah teknik yang menyatakan bahwa anak dari objek akan mewarisi data/atribut
dan metode dari induknya langsung.
●
Atribut
dan metode dari objek dari objek induk diturunkan kepada anak objek, demikian
seterusnya.
● Inheritance
mempunyai arti bahwa atribut dan operasi yang dimiliki bersama di anatara kelas
yang mempunyai hubungan secara hirarki.
● Suatu
kelas dapat ditentukan secara umum, kemudian ditentukan spesifik menjadi
subkelas. Setiap subkelas mempunyai hubungan atau mewarisi semua sifat yang dimiliki
oleh kelas induknya, dan ditambah dengan sifat unik yang dimilikinya.
●
Kelas
Objek dapat didefinisikan atribut dan service dari kelas Objek lainnya.
●
Inheritance
menggambarkan generalisasi sebuah kelas.
c.
Polymorphism (Polimorfisme)
● Polimorfisme
yaitu konsep yang menyatakan bahwa seuatu yang sama dapat mempunyai bentuk dan
perilaku berbeda.
●
Polimorfisme
mempunyai arti bahwa operasi yang sama mungkin mempunyai perbedaan dalam kelas
yang berbeda.
●
Kemampuan
objek-objek yang berbeda untuk melakukan metode yang pantas dalam merespon
message yang sama.
● Seleksi
dari metode yang sesuai bergantung pada kelas yang seharusnya menciptakan
Objek.
I. 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
1. 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).
2. 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.
3. 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
4. Optimasi
dari perancangan (Design Heuristic). Metodologi Perancangan Terstruktur
1. 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.
2. Metodologi
berorientasi data : Metodologi ini menekankan pada karakteristik data yang akan
diproses.
3. Prescriptive
methodologies : Metodologi ini merupakan metodologi yang dikembangkan oleh
sistem house dan pabrik-pabrik perangkat lunak dan tersedia secara komersial
dalam paket-paket program.
A.
Kelebihan dan Kekurangan
Kelebihan
-
OOAD
1. Dibandingkan dengan metode SSAD,
OOAD lebih mudah digunakan dalam pembangunan system.
2. Dibandingkan dengan SSAD, waktu
pengembangan, level organisasi, ketangguhan dan penggunaan kembali (re-use)
kode program lebih tinggi dibandingkan dengan metode OOAD.
3. Tidak ada pemisahan antara fase
desain dan analisi, sehingga meningkatkan komunikasi antara user dan developer
dari awal hingga akhir pembangunan system.
4. Analis dan programmer tidak dibatasi
dengan batasan implementasi system.
5. Relasi obyek dengan entitas (thing)
umumnya dapat di-mapping dengan baik seperti kondisi pada dunia nyata dan
keterkaitan dalam system. Hal ini memudahkan dalam memahami desain.
6. Memungkinkan adanya perubahan dan
kepercayaan diri yang tinggi terhadap kebenaran software yang membantu untuk
mengurangi resiko pada pembangunan system yang kompleks.
7. Encapsulasi data dan method,
memungkinkan penggunaan kembali pada proyek lain, hal ini akan memperingan
proses desain, pemrograman dan reduksi harga.
8. OOAD memungkinkan adanya
standarisasi obyek yang akan memudahkan memahami desain dan mengurangi resiko
pelaksanaan proyek.
9. Dekomposisi obyek, memungkinkan
seorang analis untuk memecah masalah menjadi pecahan-pecahan masalah dan
bagian-bagian yang di-manage secara terpisah. Kode program dapat dikerjakan
bersama-sama. Metode ini memungkinkan pembangunan software dengan cepat,
sehingga dapat segera masuk ke pasaran dan kompetitif. System yang dihasilkan
sangat fleksibel dan mudah dalam memelihara.
-
SSAD
1. Milestone diperlihatkan dengan jelas
yang memudahkan dalam manajemen proyek
2. SSAD merupakan pendekatan visul, ini
membuat metode ini mudah dimengerti oleh pengguna atau programmer
3. Penggunaan analisis grafis dan tool
seperti DFD menjadikan SSAD bagus untuk digunakan
4. SSAD merupakan metode yang diketahui
secara umum pada berbagai industri
5. SSAD sudah diterapkan begitu lama
sehingga metode ini sudah matang dan layak untuk digunakan
6. SSAD memungkinkan untuk melakukan
validasi antara berbagai kebutuhan
7. SSAD relative simple dan mudah
dimengerti
Kekurangan
-
OOAD
1. Pada awal desain OOAD, system
mungkin akan sangat simple.
2. Pada OOAD lebih focus pada coding
dibandingkan dengan SSAD.
3. Pada OOAD tidak menekankan pada
kinerja team seperti pada SSAD.
4. Pada OOAD tidak mudah untuk
mendefinisikan class dan obyek yang dibutuhkan system.
5. Seringkali pemrograman berorientasi
obyek digunakan untuk melakukan analisis terhadap fungsional site, sementara
metode OOAD tidak berbasis pada fungsional system.
6. 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.
7. Metodologi pengembangan system denga
OOAD menggunakan konsep re-use. Re-use merupakan salah satu keuntungan utama
yang menjadi alasan digunakannya OOAD. Namun demikian, tanpa prosedur yang
emplisit terhadap re-use, akan sangat sulit untuk menerapkan konsep ini pada
skala besar.
-
SSAD
1. SSAD berorientasi utama pada proses,
sehingga mengabaikan kebutuhan non-fungsional
2. Sedikit sekali manajemen langsung
terkait dengan SSAD
3. Prinsip dasar SSAD merupakan
pengembangan non-iterative (waterfall), akan tetapi kebutuhan akan berubah pada
setiap proses
4. Interaksi antara analisis atau pengguna tidak
komprehensif, karena system telah didefinisikan dari awal, sehingga tidak
adaptif terhadap perubahan
5. Selain dengan menggunakan desain
logic dan DFD, tidak cukup tool yang digunakan untuk mengkomunikasikan dengan
pengguna, sehingga sangat sulit bagi pengguna untik melakukan evaluasi.
6. Pada SAAd sulit sekali untuk
memutuskan ketika ingin menghentikan dekomposisi dan memulai membuat system
7. SSAD tidak selalu memenuhi kebutuhan
pengguna
UML adalah sekumpulan alat yang digunakan untuk melakukan abstraksi terhadap sebuah sistem atau perangkat lunak berbasis objek. UML merupakan singkatan dari Unified Modeling Language. UML juga menjadi salah satu cara untuk mempermudah pengembangan aplikasi yang berkelanjutan. Aplikasi atau sistem yang tidak terdokumentasi biasanya dapat menghambat pengembangan karena developer harus melakukan penelusuran dan mempelajari kode program. UML juga dapat menjadi alat bantu untuk transfer ilmu tentang sistem atau aplikasi yang akan dikembangkan dari satu developer ke developer lainya. Tidak hanya antar developer terhadap orang bisnis dan siapapun dapat memahami sebuah sistem dengan adanya UML.
UML diciptakan oleh Object Management Group yang diawali dengan versi 1.0 pada Januari 1997. Dalam pengembangan berorientasi objek ada beberapa prinsip yang harus dikenal:
- Object
- Class
- Abstraction
- Encapsulation
- Inheritance
- Polymorphism
https://www.codepolitan.com/mengenal-diagram-uml-unified-modeling-language
http://teknikinformatikanews.blogspot.co.id/2016/03/ooad-ssad.html
Komentar
Posting Komentar