Pemodelan Objek
Pemodelan Objek
BAB 2
LANDASAN TEORI
Objek merupakan sesuatu, sebuah entitas, sebuah benda, sesuatu yang dapat diangkat,
atau apapun yang dapat kamu bayangkan yang memiliki identitas masing-masing.
(ODocherty, 2005, hal:13). Ada beberapa objek yang hidup dan ada yang tidak.
Contoh objek dalam dunia nyata yaitu orang, nomor, kucing, dan mobil.
Objek adalah orang, tempat, benda, kejadian, atau konsep-konsep yang ada di
dunia nyata yang penting bagi suatu perangkat lunak. (Nugroho, 2005, hal:38). Objek
orang misalnya mahasiswa, dosen, ibu, ayah, dan sebagainya. Objek tempat misalnya
kampus, negara, jalan, kota, dan sebagainya. Objek benda misalnya mesin, buku,
mobil, komputer, dan sebagainya. Objek kejadian misalnya pembayaran, registrasi
kuliah, mengikuti kuliah, dan sebagainya.
Kelas didefinisikan sebagai kumpulan objek dengan atribut yang mirip, operasi
yang mirip, serta hubungan dengan objek yang lain dengan cara yang mirip.
(Nugroho, 2005).
Kelas Objek
Setiap objek memiliki identitas dan masing-masing dapat dibedakan. (Nugroho, 2005,
hal:38). Setiap objek memiliki atribut, misalnya sebuah mobil memiliki produsen,
jenis, warna, dan harga, sedangkan seekor kucing memiliki jenis kelamin, jenis, berat,
dan warna. Setiap objek juga memiliki operasi, misalnya mobil dapat bergerak dari
satu tempat ke tempat lain, sedangkan kucing dapat berlari, minum, dan makan.
Atribut adalah informasi-informasi yang dimiliki suatu objek dalam kelas. Dari
contoh di atas dapat ditambahkan, untuk objek Adi dan Ani dapat memiliki atribut
jenis kelamin, usia, berat badan, tinggi badan, dan lain-lain. Dari fakta-fakta ini dapat
dipahami bahwa nilai dari suatu atribut adalah karakteristik yang membedakan satu
objek dengan objek lainnya dalam kelas yang sama.
9
Instansiasi
Manusia (Manusia) (Manusia)
Manusia Lingkaran
-Nama -Warna
-Usia -Posisi
+Makan() -Jari-jari
+Berpindah_alamat() +Geser(in Delta : bool)
+Pilih(in Point : object) : bool
2.2 UML
UML adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang
membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang
dibangun menggunakan pemrograman berorientasi objek. (Fowler, 2005, hal: 1).
UML merupakan standar yang relatif terbuka yang dikontrol oleh Object Management
Group (OMG), yang terdiri dari banyak perusahaan. UML lahir dari penggabungan
banyak bahasa pemodelan grafis berorientasi objek antara lain metode Booch oleh
Graddy Booch, metode Object Modelling Technique (OMT) oleh DR. James
Rumbaugh, dan metode Object Oriented Software Engineering (OOSE) oleh Ivar
Jacobson.
Dengan UML, dapat dibuat model untuk perangkat lunak, dimana perangkat
lunak tersebut dapat berjalan pada perangkat keras, sistem operasi dan jaringan
apapun, serta ditulis dalam bahasa pemrograman apapun. Namun, karena UML juga
menggunakan kelas dan operasi dalam konsep dasarnya, maka UML lebih cocok
untuk pemodelan perangkat lunak dalam bahasa berorientasi objek seperti C++, Java,
C# atau VB.NET.
Analisis persyaratan meliputi usaha untuk mengetahui apa kemampuan sebuah sistem
yang diinginkan pengguna dan pelanggan dari sebuah pengembangan perangkat lunak.
Beberapa diagram yang digunakan dalam analisis persyaratan yaitu:
1. Use case diagram yang digunakan untuk menggambarkan bagaimana orang-orang
berinteraksi dengan sistem tersebut.
2. Activity diagram yang berfungsi menunjukkan aliran kerja organisasi tersebut
yang dapat menunjukkan bagaimana aktivitas interaksi antara perangkat lunak dan
manusia. Activity diagram dapat menunjukkan konteks use case dan juga rincian
bagaimana sebuah use case berjalan.
3. Class diagram yang diambil dari sudut pandang konseptual, dapat berfungsi untuk
membangun kosakata yang besar mengenai domain tersebut.
4. Package diagram untuk mengelompokkan kelas-kelas.
11
Teknik yang digunakan dalam pemodelan analisis dan desain sistem menggunakan
UML diantaranya:
1. Pengidentifikasian proses bisnis sistem yang terjadi di lapangan.
2. Pengidentifikasian fungsionalitas sistem dengan penggunaan use case diagram.
3. Pengidentifikasian skenario sistem berdasarkan use case diagram dengan
penggunaan activity diagram.
4. Pengidentifikasian kelas-kelas yang terdapat dalam sistem dengan penggunaan
class diagram.
5. Pengidentifikasian hubungan inheritance antara kelas.
6. Pengidentifikasian atribut-atribut yang dimiliki setiap kelas.
7. Pengelompokan kelas-kelas dalam package-package tertentu dengan penggunaan
package diagram.
8. Pada setiap use case, dilakukan pengidentifikasian operasi-operasi yang dimiliki
setiap kelas yang terlibat dalam use case tersebut.
9. Pengidentifikasian objek-objek, serta penggunaan sequence diagram untuk
mendeskripsikan aliran komunikasi antara objek-objek pada setiap use case.
10. Desain antarmuka sistem dan spesifikasi detail dari bagian-bagian antarmuka yang
berhubungan dengan fungsi sistem.
12
Teknik yang digunakan tidak terbatas pada teori yang diperoleh, namun
berdasarkan kebutuhan pada saat analisis dan desain sistem. Dalam pembangunan
suatu sistem, jenis diagram yang digunakan disesuaikan dengan kebutuhannya.
Use case diagram mendeskripsikan interaksi tipikal antara para pengguna sistem
dengan sistem itu sendiri, dengan memberi sebuah narasi tentang bagaimana sistem
tersebut digunakan. (Fowler, 2005). Use case diagram menampilkan aktor, use case,
dan hubungan diantara mereka yang dijabarkan sebagai berikut:
1. Aktor
Aktor adalah seseorang atau sesuatu yang berinteraksi dengan sistem yang sedang
dikembangkan. Aktor bersifat eksternal, yaitu berada di luar lingkup sistem yang
sedang dikembangkan. (Nugroho, 2005). Pengguna sistem merupakan aktor yang
umum di setiap sistem. Aktor disimbolkan dengan:
Aktor
Setiap use case diagram memiliki aktor utama yang meminta sistem untuk
memberi sebuah layanan. Aktor utama adalah aktor dengan tujuan yang akan
dipenuhi oleh use case diagram. Aktor selain aktor utama dikenal sebagai aktor
sekunder.
2. Use Case
Use case menggambarkan bagaimana seseorang akan mengunakan atau
memanfaatkan sistem. Use case dapat membantu untuk berfokus pada apa yang
penting, yaitu menentukan apa yang dibutuhkan serta harapan pengguna terhadap
sistem yang dikembangkan. Pengidentifikasian use case dapat dilakukan dengan
melakukan identifikasi pekerjaan-pekerjaan dan fungsi-fungsi apa yang dilakukan
aktor untuk sistem. Use case disimbolkan dengan:
Use case
3. Hubungan (relationship)
Aktor dan use case masing-masing tidak berdiri sendiri, melainkan saling
terhubung dengan apa yang dinamakan hubungan. Ada beberapa hubungan yang
dikenal dalam use case diagram, yaitu:
a. Hubungan asosiasi (association relationship)
Hubungan asosiasi merupakan hubungan yang biasa terjadi antara aktor dan
use case yang menggambarkan bahwa aktor melakukan apa yang dinyatakan
dalam use case. Hubungan disimbolkan dengan:
Use case
Aktor
<<incl ude>>
NewUseCase1 NewUseCase2
<<extend>>
NewUseCase1 NewUseCase2
atau use case menjadi aktor atau use case tunggal, kemudian bisa mewariskan
sifat-sifat umum tadi ke sejumlah aktor atau use case yang lain. Hubungan
generalisasi disimbolkan dengan:
Activity diagram secara sepintas mirip dengan diagram alir (flowchart) yang
memperlihatkan aliran kendali dari suatu activity ke activity lainnya. Activity diagram
juga dapat digunakan untuk memodelkan langkah-langkah dalam sebuah use case.
(Reed, 2001).
Mulai
X= X+1
keluar. Pada joining, aliran konkuren yang masuk akan saling menunggu satu
sama lain sebelum melanjutkan ke titik-titik selanjutnya. Forking dan joining
dilambangkan dengan:
19
2. Hubungan
Hubungan memiliki beberapa bentuk, yaitu:
a. Asosiasi
Asosiasi merupakan hubungan antara dua atau lebih kelas yang
menspesifikasikan hubungan antara bagian-bagian mereka. Hubungan antara
dua buah kelas mengindikasikan bahwa objek pada kelas yang satu
mengenali objek pada kelas yang lain dan dapat mengirimkan pesan kepada
objek tersebut. Asosiasi memiliki multiplisitas yang memberi petunjuk tentang
banyaknya instansi dari suatu kelas berhubungan dengan satu instansi kelas
yang lain pada satu waktu tertentu. Dalam UML, notasi-notasi multiplisitas
yang dapat digunakan yaitu:
c. Generalisasi
Generalisasi diperlukan untuk memperlihatkan hubungan pewarisan
(inheritance) antarunsur dalam class diagram. Pewarisan memungkinkan suatu
21
kelas mewarisi semua atau sebagian atribut, operasi, hubungan, serta semantik
dari kelas yang berada di atasnya dalam hierarki pewarisan.
d. Dependency
Dependency menghubungkan dua kelas atau lebih dimana jika terdapat
perubahan pada kelas yang satu, maka akan memaksa terjadinya perubahan
pada kelas yang lainnya walaupun tidak terdapat asosiasi yang jelas diantara
mereka.
e. Realisasi
Hubungan realisasi digunakan untuk memperlihatkan hubungan antara suatu
kelas dengan interface-nya, antara package dengan interface-nya, antara
komponen dengan interface-nya, atau antara use case dengan realisasi use case
yang bersangkutan.
4. Stereotype
Kelas mempunyai stereotype, yang menyediakan kemampuan untuk membuat
elemen pemodelan yang baru. Beberapa stereotype yang umum untuk suatu kelas
adalah : entiti, boundary, dan control.
pesan (message). Objek-objek yang berperan dalam aliran diperlihatkan pada kotak
empat persegi panjang yang melintas pada bagian atas diagram. Setiap objek memiliki
garis hidup (lifeline), yang digambarkan sebagai garis vertikal di bawah nama suatu
objek. Garis hidup dimulai pada saat objek terbentuk. Pesan-pesan digambarkan di
antara garis hidup yang dimiliki dua objek untuk memperlihatkan bagaimana objek-
objek itu saling berkomunikasi.
objek1:Class1 objek2:Class2
: Aktor
NewPackage
Processor
Device
Processor
Device