LAPORAN PRAKTIK KE-1
Paradigma Analisis dan Desain Berorientasi Objek dan
Terstruktur
(OOAD & SSAD)
Disusun oleh :
Hanif Satriya (145410026)
Alfin Dwi Yakzhan
(175410032)
Fransisco S. B. Thorion
(175410020)
Muhammad Fadhil Jamaluddin (175410023)
Saffinah Indah Asri
(175410022)
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AKAKOM YOGYAKARTA
2018
A.
Pengertian dan Konsep SSAD dan OOAD
Terdapat dua
paradigma utama dalam metode analisis dan perancangan perangkat lunak yaitu:
§
Object Oriented Analylis and
Design (OOAD).
§
Structure System analysis and
Design (SSAD) atau juga disebut dengan pendekata Konvensional.
Object Oriented Analylis and Design (OOAD)
·
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.
·
Karakteristik Object
Ada 2 karakteristik dari objek :
a. Objek/Object
1. Objek adalah benda secara fisik dan konseptual yang
ada di sekitar kita. Sebuah objek memiliki keadaan sesaat yang disebut state.
2. Objek dapat kongkrit, seperti halnya arsip dalam
sistem, atau konseptual seperti kebijakan penjadwalan dalam multiprocessing
pada sistem operasi.
3. Dua objek dapat berbeda walaupun bila semua nilai
atributnya identik.
Gambar 1. Macam-macam 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).
b. Kelas/Class
Kelas merupakan gambaran sekumpulan Objek yang terbagi dalam atribut,
operasi, metode, hubungan, dan makna yang sama.
1. Suatu kegiatan mengumpulkan data (atribut) dan
perilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup.
2. Kelas Objek merupakan wadah bagi Objek. Dapat
digunakan untuk menciptakan Objek.
3. Objek mewakili fakta/keterangan dari sebuah kelas.
Gambar 2. Kelas dan Objek
|
c. Karakteristik Metodologi Berorientasi Objek
Metodologi pengembangan sistem berorientasi objek mempunyai tiga
karakteristik utama :
1.
Pengkapsulan (Encapsulation)
·
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.
2.
Pewarisan
(Inheritance)
·
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.
·
Inheritance
menggambarkan generalisasi sebuah kelas.
3.
Polomorfisme
(Polymorphism)
·
Polimorfisme
yaitu konsep yang menyatakan bahwa sesuatu yang sama dapat mempunyai bentuk dan
perilaku 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.
Structure 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
5. 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.
6. Metodologi berorientasi data : Metodologi ini
menekankan pada karakteristik data yang akan diproses.
7. Prescriptive methodologies : Metodologi ini merupakan metodologi yang
dikembangkan oleh sistem house dan pabrik-pabrik perangkat lunak dan tersedia secara
komersial dalam paket-paket program.
B. Kelebihan Dan Kekurangan Model
Perancangan SSAD dan OOAD
1. Structure System analysis and Design (SSAD)
a. 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.
b. 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 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).
2. Object Oriented Analylis and Design (OOAD)
a. 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.
c. 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).
C.
Permodelan
Perancangan SSAD dan OOAD
a. Pemodelan SSAD:
Data Flow Diagram (DFD) adalah suatu
diagram yang menggunakan notasi-notasi untuk menggambarkan arus dari data
sistem, yang penggunaannya sangat membantu untuk memahami sistem secara logika,
tersruktur dan jelas.
Didalam DFD terdapat 3 level, yaitu
:
1.
Diagram Konteks : menggambarkan satu
lingkaran besar yang dapat mewakili seluruh proses yang terdapat di dalam suatu
sistem. Merupakan tingkatan tertinggi dalam DFD dan biasanya diberi nomor 0
(nol). Semua entitas eksternal yang ditunjukkan pada diagram konteks berikut
aliran-aliran data utama menuju dan dari sistem. Diagram ini sama sekali tidak
memuat penyimpanan data dan tampak sederhana untuk diciptakan.
2.
Diagram Nol (diagram level-1) :
merupakan satu lingkaran besar yang mewakili lingkaran-lingkaran kecil yang ada
di dalamnya. Merupakan pemecahan dari diagram Konteks ke diagram Nol. di dalam
diagram ini memuat penyimpanan data. 3.
3.
Diagram Rinci : merupakan diagram
yang menguraikan proses apa yang ada dalam diagram Nol.
Komponen
Data Flow Diagram
Contoh
Diagram Konteks
b.
Pemodelan OOAD
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.
Dalam
UML sendiri terdapat beberapa diagram yang wajib dikuasai yaitu:
Structural Diagram
·
Class Diagram, diagram ini terdiri dari class, interface, association,
dan collaboration. Diagram ini menggambarkan objek - objek yang ada di
sistem.
·
Object Diagram, diagram ini menggambarkan hasil instansi dari class
diagram. Diagram ini digunakan untuk membuat prototype
·
Component Diagram, diagram ini menggambarkan kumpulan komponen dan hubungan
antar komponen. Komponen terdiri dari class, interface, atau collaboration
·
Deployment Diagram, diagram ini menggambarkan kumpulan node dan
hubungan antar node. Node adalah entitas fisik dimana komponen
di-deploy. Entitas fisik ini dapat berupa server atau perangkat
keras lainnya.
Behavioral Diagram
·
Use case Diagram, diagram ini menggambarkan kumpulan use case,
aktor, dan hubungan mereka. Use case adalah hubungan antara
fungsionalitas sistem dengan aktor internal/eksternal dari sistem.
·
Sequence Diagram, diagram ini menggambarkan interaksi yang menjelaskan
bagaimana pesan mengalir dari objek ke objek lainnya.
·
Collaboration Diagram, diagram ini merupakan bentuk lain dari sequence
diagram. Diagram ini menggambarkan struktur organisasi dari sistem dengan
pesan yang diterima dan dikirim.
·
Statechart Diagram, diagram ini menggambarkan bagaimana sistem dapat
bereaksi terhadap suatu kejadian dari dalam atau luar. Kejadian (event)
ini bertanggung jawab terhadap perubahan keadaan sistem.
·
Activity Diagram, menggambarkan aliran kontrol sistem. Diagram ini
digunakan untuk melihat bagaimana sistem bekerja ketika dieksekusi.
Contoh
Use Case Diagram
DAFTAR PUSTAKA
20/09/2018
20:15
·
https://marlina9826.blogspot.com/2018/05/perbedaan-dan-persamaan-serta-kelebihan.html 23/09/2018 23:12
24/09/2018 21:18
·
http://darmastuti.staff.gunadarma.ac.id 24/09/2018 21:21
Tidak ada komentar:
Posting Komentar