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.
Komentar
Posting Komentar