Pengenalan Analisa Desain
Berorientasi Objek
1. Pengertian
Analisa Desain Berorientasi Objek
Analisa Desain Berorientasi Objek adalah metode analisis
yang memerikasa requirements dari sudut pandang kelas kelas dan objek yang
ditemui dalam ruang lingkup permasalahan yang mengarahkan arsitektur software
yang didasarkan pada manipulasi objek-objek system atau subsistem. Analisa
Desain Berorientasi Objek merupakan 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.
2. Konsep dasar
Object Oriented Analisis Design
Object Oriented Analisis Design
mencakup analisis dan desain sebuah sistem dengan pendekatan objek, yaiut
analisis berorientasi objek dan desain berorientasi objek. analisis
berorientasi objek 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 desain berorientasi objek adalah metode untuk mengarahkan arsitektur
software yang didasarkan pada manipulasi objek-objek sistem atau sub sistem.
Terdapat
beberapa konsep dalam Analisa Desain Berorientasi Objek, yaitu :
a. Kelas (Class)
kumpulan objek-objek dengan karakter yang sama. Sebuah kelas mempunyai
sifat(atribut),kelakuan (operasi/metode),hubungan (relationship) dan arti.
Suatu kelas dapat diturunkan dari kelas yang lain,dimana atribut dan
kelas semula dapat diwariskan ke kelas yang baru. Kelas adalah sebuah struktur
tertentu dalam pembuatan perangkat lunak. Kelas merupakan bentuk struktur pada
kode program yang menggunakan metodologi berorientasi objek.
b. Objek (Object)
Abstraksi dan sesuatu yang mewakili dunia nyata. Objek merupakan suatu entitas
yang mampu menyimpan informasi (status) dan mempunyai operasi (kelakuan) yang
dapat diterapkan.
c. Metode
(Method) operasi atau metode pada kelas hampir sama dengan fungsi atau prosedur
pada metodologi terstruktur. Operasi merupakan fungsi atau transformasi yang
dapat dilakukan terhadap objek atau dilakukan objek.
d. Atribut
variabel global yang dimiliki kelas. Atribut dapat berupa nilai atau elemen –
elemen data yang dimiliki oleh objek dalam kelas. Atribut dipunyai secara
individu oleh suatu objek misalnya berat,jenis.
e. Abstraksi
prinsip untuk merepresentasikan dunia nyata yang kompleks menjadi suatu bentuk
model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai
dengan masalah.
f. Enskapsulasi
pembungkusan atribut data dan layanan (operasi-operasi) yang dipunyai objek
untuk menyembunyikan implementasi dan objek sehingga objek lain tidak
mengetahui cara kerjanya.
g. Pewarisan
mekanisme yang memungkinkan satu objek mewarisi sebagian atau seluruh dan objek
lain sebagai bagian dari dirinya.
h. Antar muka
biasanya digunakan agar kelas yang lain tidak mengakses langsung ke suatu
kelas.
i. Reusability
pemanfaatan kembali objek yang sudah didefenisikan untuk suatu permasalahan
pada permasalahan lainnya yang melibatkan objek tersebut.
j. Generalisasi&
spesialisasi menunjukan hubungan antar kelas dan objek yang umum dengan kelas
dan objek yang khusus.
k. Komunikasi Antar Objek
dilakukan lewat pesan (message) yang dikirim dari satu objek ke objek lainnya.
l. Polimorfisme
kemampuan suatu objek untuk digunakan di banyak tujuan yang berbeda dengan nama
yang sama sehingga menghemat program.
m. Package sebuah kontainer
atau kemasan yang dapat digunakan untuk mengelompok kelas-kelas yang bernama
sama disimpan dalam package yang berbeda.
3.
Metedologi pengembangan sistem berbasis object
Metodologi adalah cara systematis
untuk mengerjakan analisys and design. Dengan metodologi, pihak yang membangun
system software dapat merencanakan dan mengulangi pekerjaan dilain waktu.
Metodologi juga menghilangkan perbedaan notasi untuk suatu hal yang sama karena
setiap oarng akan berbicara dalam bahasa yang sama. Metodologi yang paling
banyak dalam OOAD, yaitu: Object Modeling Technique (OMT) dari Rumbaugh, Object
Oriented Booch, Responsibility-Driven Design/ Class Responsibility
Calloboration (RDD/CRC) dari Wirf-Broock, Metodologi Coad/ Yourdan dan Jacobson
Object Oriented Software Enginering (OOSE).
a. Object Modeling
Technique (OMT) Dikembangkan oleh James Rumbaugh sebagai metode untuk
mengembangkan sistem berorientasi objek dan untuk mendukung pemograman
berorientasi objek .
b. Object Oriented Booch
Dikembangkan oleh Grady Booch terdiri dari diagram kelas,objek,transisi status,
interaksi, modul dan proses.
c. Class Resposibility
Calloboration (CRC) Merupakan bagian dari Object-Oriented
Programming,System,Languages And Application(OOPSLA). Dibuat untuk menjadi
kelas yang akan dianalisis.
d. Metodologi Coad/
Yourdan Menyediakan sebuah diagram kelas, pembuatannya dengan langkah - langkah
berkut : Mendefenisikan kelas dan objek, Mengidentifikasi struktur kelas
dan objek, Mendefenisikan subjek nama kelas, Mendefenisikan atribut,
Mendefenisikan operasi/layanan (service).
e. Object Oriented Software
Enginering (OOSE) Dikembangkan oleh Ivar Jacobson adalah metode disain
berorientasi objek yang melibatkan use case.
4. Teknik pemodelan yang ada
pada Analisa Desain Berorientasi Objek
a. Model
Objek : Menggambarkan struktur statis dari suatu objek dalam sistem dan
relasinya, berisi diagram objek. Diagram objek adalah graph dimana nodenya
adalah kelas yang mempunyai relasi antar kelas.
b. Model Dinamik
menggambarkan aspek dari sistem yang berubah setiap saat, dipergunakan untuk
menyatakan aspek kontrol dari system, berisi state diagram. State diagram
adalah graph dimana nodenya adalah state dan arc adalah tarnsisi antara state
yang disebabkan oleh event.
c. Model Fungsional: menggambrakan
transformasi nilai data di dalam system, berisi data flow diagram. DFD adalah
suatu graph dimana nodenya menyatakan proses dan arcnya adalah aliran data.
Definisi Unified Modeling Language (UML)
Unified Modeling
Language (UML) merupakan satu kumpulan konvensi pemodelan yang digunakan untuk
menentukan atau menggambarkan sebuah sistem software yangterkait dengan objek
(Whitten L. Jeffery et al, 2004). Sementara menurut Henderi (2007: 4) Unified
Modeling Language (UML) adalah sebuah bahasa pemodelan yang telah
menjadistandar dalam industri software untuk visualisasi, merancang, dan
mendokumentasikansistem perangkat lunak. Bahasa Pemodelan UML lebih cocok untuk
pembuatan perangkatlunak dalam bahasa pemrograman berorientasi objek (C++,
Java, VB.NET), namundemikian tetap dapat digunakan pada bahasa pemrograman
prosedural (Ziga Turck, 2007).
Unified Modeling
Language (UML) biasa digunakan untuk (Henderi, 2007 :11)
1. Menggambarkan batasan sistem
dan fungsi-fungsi sistem secara umum, dibuat denganuse case dan actor.
2. Menggambarkan kegiatan atau
proses bisnis yang dilaksanakan secara umum, dibuat dengan interaction
diagrams.
3.Menggambarkan representasi
struktur statik sebuah sistem dalam bentuk class diagrams
4. Membuat model behavior”yang
menggambarkan kebiasaan atau sifat sebuah sistem”dengan state transition
diagrams.
5.Menyatakan arsitektur implementasi
fisik menggunakan component and developmentdiagrams 6. Menyampaikan atau
memperluas fungsionality dengan stereotypes (Ziga Turck, 2007).
UML merupakan
salah satu alat bantu yang sangat handal dalam bidang pengembangan sistem
berorientasi objek karena UML menyediakan bahasa pemodelan visual yang
memungkinkan pengembang sistem membuat blue print atas visinya dalam bentuk
yang baku. UML berfungsi sebagai jembatan dalam mengkomunikasikan beberapa
aspek dalam sistem melalui sejumlah elemen grafis yang bisa dikombinasikan
menjadidiagram. UML mempunyai banyak diagram yang dapat mengakomodasi berbagai
sudut pandang dari suatu perangkat lunak yang akan dibangun. Diagram-diagram
tersebut digunakan untuk (Henderi et al, 2008:71):
1. Mengkomunikasikan
ide.
2. Melahirkan
ide-ide baru dan peluang-peluang baru
3. Menguji
ide dan membuat prediksi
4. Memahami struktur dan
relasi-relasinya
Konsep Pemodelan Menggunakan Unified
Modeling Language (UML)
Pemodelan menggunakan Unified Modeling
Language (UML) merupakan metode pemodelan berorientasi objek dan berbasis
visual. Karenanya pemodelan menggunakan UML merupakan pemodelan objek yang
fokus pada pendefinisian struktur statis dan modelsistem informasi yang dinamis
daripada mendefinisikan data dan model proses yangtujuannya adalah pengembangan
tradisional. UMLmenawarkan diagram yang dikelompokan menjadi lima perspektif
berbeda untuk memodelkan suatu sistem. Seperti satu set blue print yang
digunakan untuk membangun sebuah rumah.
Diagram Dasar dalam Unified Modeling
Language (UML)
Penjelasan :
1. Structure Diagram
kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari
sistem yang dimodelkan. Dalam Structure diagram terdapat beberapa jenis model
diagram lagi, yaitu :
a. Class
diagram menggambarkan struktur dan deskripsi class, package dan objek beserta
hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan
lain-lain. Class memiliki tiga area pokok adalah nama, atribut dan metode.
Atribut dan metode dapat memiliki salah satu sifat berikut : Private, tidak
dapat dipanggil dari luar class yang bersangkutan. Protected, hanya dapat
dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya
Public, dapat dipanggil oleh siapa saja
b. Object
Diagram Object diagram merupakan sebuah gambaran tentang objek-objek dalam
sebuah sistem pada satu titik waktu. Karena lebih menonjolkan perintah-perintah
29 daripada class, object diagram lebih sering disebut sebagai sebuah diagram
perintah.
c. Component
Diagram Component diagram menggambarkan struktur dan hubungan antar komponen
piranti lunak, termasuk ketergantungan (dependency) di antaranya. Komponen
piranti lunak adalah modul berisi code, baik berisi source code maupun binary
code, baik library maupun executable, baik yang muncul pada compile time, link
time , maupun run time.
d. Composite Structure Diagram
Diagram struktur komposit adalah diagram yang menunjukkan struktur internal
classifier, termasuk poin interaksinya ke bagian lain dari sistem. Hal ini
menunjukkan konfigurasi dan hubungan bagian, yang bersama-sama melakukan
perilaku classifie. Diagram struktur komposit merupakan jenis diagram struktur
statis dalam Unified Modeling Language (UML), yang menggambarkan struktur
internal kelas dan kolaborasi.
e. Package
Diagram Diagram objek melengkapi notasi grafik untuk pemodelan objek, kelas dan
relasinya dengan yang lain. Diagram objek bermanfaat untuk pemodelan abstrak
dan membuat perancangan program. Untuk mengatur pengorganisasian diagram Class
yang kompleks, dapat dilakukan pengelompokan kelas-kelas berupa package
(paket-paket). Package adalah kumpulan elemen-elemen logika UML.
f. Deployment Diagram
Deployment/physical diagram menggambarkan detail bagaimana komponen di-deploy
dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server
atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut,
spesifikasi server, dan hal-hal lain yang bersifat fisikal Sebuah node adalah
server, workstation, atau piranti keras lain yang digunakan untuk men- deploy
komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan
requirement dapat juga didefinisikan dalam diagram ini.
2. Behavior Diagram yaitu
kumpulan diagram yang dgunakan untuk menggambarkan kelakuan sistem atau
rangkaian perubahan pada sebuah sistem.
a. Use
Case Diagram Use case adalah abstraksi dari interaksi antara system dan actor.
Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah
system dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah system
dipakai.
b. Activity Diagram
Activity diagram memiliki pengertian yaitu lebih fokus kepada menggambarkan
proses bisnis dan urutan aktivitas dalam sebuah proses. Memiliki struktur
diagram yang mirip flowchart atau data flow diagram pada perancangan
terstruktur.
c. State Machine Diagram Statechart diagram
menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya)
suatu objek pada sistem sebagai akibat dari stimuli yang diterima.
3. Interaction Diagram
yaitu kumpulan diagram yang digunakan untuk menggambarkan interaksi sistem
dengan sistem lain maupun interaksi antar sub sistem pada suatu sistem.
a. Sequence Diagram
menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup
objek dan message yang dikirimkan dan diterima antar objek. Dalam
menggambarkan diagram ini harus diketahui objek-objek yang terlibat dalam
sebuah use case beserta metode- metode yang dimiliki kelas.
b. Communication Diagram
Merupakan penyederhanaan dari Diagram Kolaborasi. Menggambarkan interaksi antar
objek/bagian dalam bentuk urutan pengiriman pesan. Diagram ini
merepresentasikan informasi yang diperoleh dari diagram kelas. Dalam Diagram
ini yang dituliskan adalah operasi/metode yang dijalankan antar objek.
c. Timing Diagram
Timing Diagram adalah bentuk lain dari interaction diagram, dimana fokus
utamanya lebih ke waktu. Timing diagram sangat berdaya guna dalam menunjukkan
faktor pembatas waktu diantara perubahan state pada objek yang berbeda.
d. Interaction
Overview Diagram Bentuk Diagram Aktivitas yang setiap titik merepresentasikan
diagram interaksi. Notasi pada Interaction Overview Diagram sama dengan Diagram
Aktivitas.
No comments:
Post a Comment