Anda di halaman 1dari 11

SISTEM BERORIENTASI OBJEK (SBO) DAN UML

(Unified Modeling Language)








MAKALAH
PEMODELAN SISTEM BERBASIS OBJEK





Diajukan untuk memenuhi mata kuliah PSBO pada program Diploma Tiga (D .III)



1.Frasstio Agustin (12118397)
2.M. Angga Mulya (18110236)
3.Yozhua (12119583)
4.Egy Satrio (12119027)
5.Reza Okta Permana (12119758)





Jurusan Manajemen Informatika
Akademi Manajemen Informatika dan Komputer Bina Sarana Informatika
(Dewi Sartika)
2013




KATA PENGANTAR

Puji syukur kehadirat Tuhan Yang Maha Kuasa. karena atas rahmatNya penulis dapat menyelesaikan makalah
ini tepat waktu. Makalah ini disusun untuk dapat melengkapi nilai mata kuliah PSBO. Makalah ini memuat
berbagai macam informasi mengenai Sistem Berorientasi Objek dan UML.
Dalam pembuatan makalah ini penulis mengucapkan terimakasih banyak kepada:
1) Bapak Ade Christiam selaku dosen pembimbing yang telah memberikan pengarahan kepada penulis
dalam menyelesaikan makalah ini.
2) Rekan-rekan penulis yang sudah membantu.
Penulis menyadari bahwa isi makalah ini masih mempunyai banyak kekurangan, untuk itu dengan segala
kerendahan hati, penulis mengharapkan banyak kritik dan saran dari pembaca untuk perbaikan makalah ini.
Semoga isi dari makalah ini dapat menambah wawasan serta menjadi bahan untuk introspeksi diri bagi
pembaca.



Penulis
Jakarta, Desember 2013
DAFTAR ISI

Kata pengantar.
Daftar isi..
BAB I PENDAHULUAN.
1.1 Latar Belakang..
1.2 Tujuan
1.3 Rumusan Masalah
BAB II PEMBAHASAN MASALAH
2.1 Deskripsi SBO dan UML..
2.2 Karakteristik Objek dan Kelas Objek.
2.3 Karakteristik Metode Berorientasi Objek..
2.4 Diagram UML
2.5 Hubungan/Relationship.
2.6 Langkah-langkah Penggunaan UML
2.7 Tools yang Mendukung UML .
2.8 Contoh Kasus.
BAB III PENUTUP.
3.1 Kesimpulan
3.2 Saran.
Daftar Pustaka
Lampiran









BAB I
PENDAHULUAN

1.1 Latar Belakang
Saat ini piranti lunak semakin luas dan besar lingkupnya, sehingga tidak bisa lagi dibuat asal-asalan. Piranti
lunak saat ini seharusnya dirancang dengan memperhatikan hal-hal seperti scalability, security, dan eksekusi
yang robust walaupun dalam kondisi yang sulit. Selain itu arsitekturnya harus didefinisikan dengan jelas,
agar bug mudah ditemukan dan diperbaiki, bahkan oleh orang lain selain programmer aslinya. Keuntungan lain
dari perencanaan arsitektur yang matang adalah dimungkinkannya penggunaan kembali modul atau komponen
untuk aplikasi piranti lunak lain yang membutuhkan fungsionalitas yang sama.
Pemodelan (modeling) adalah proses merancang piranti lunak sebelum melakukan pengkodean (coding). Model
piranti lunak dapat dianalogikan seperti pembuatan blueprint pada pembangunan gedung. Membuat model dari
sebuah sistem yang kompleks sangatlah penting karena kita tidak dapat memahami sistem semacam itu secara
menyeluruh. Semakin komplek sebuah sistem, semakin penting pula penggunaan teknik pemodelan yang baik.
Dengan menggunakan model, diharapkan pengembangan piranti lunak dapat memenuhi semua kebutuhan
pengguna dengan lengkap dan tepat, termasuk faktor-faktor seperti scalability, robustness, security, dan
sebagainya. Untuk itulah penulis membuat makalah ini agar pembaca dapat memahami lebih dalam tentang
sistem berorientasi objek khususnya dalam hal pemrograman.

1.2 Tujuan
Tujuan penulis melakukan penelitian adalah sebagai berikut:
1) Agar pembaca dapat memahami pengertian OOS (Objet Oriented System) atau Sistem Berorientasi Objek
(SBO) dan juga UML (Unified Modeling Language)
2) Agar pembaca dapat mengetahui bagaimana mengaplikasikan konsep SBO secara langsung.

1.3 Rumusan Masalah
Masalah-masalah yang akan dibahas dalam makalah ini adalah sebagai berikut:
1) Apakah yang dimaksud SBO (Sistem Berorientasi Objek) dan UML?
2) Apa saja karakteristik Objek dan Kelas Objek?
3) Apa saja karakteristik Metodologi BO?
4) Apa saja diagram UML?
5) Apa saja hubungan UML?
6) Apa saja langkah-langkah penggunaan UML?
7) Apa saja tools yang mendukung UML?













BAB II
PEMBAHASAN MASALAH

2.1 Pengertian
Objek adalah kombinasi antara struktur data dan perilaku dalam satu entitas dan mempunyai nilai tertentu yang
membedakan entitas tersebut. Pengertian berorientasi objek berarti pengorganisasian perangkat lunak sebagai
kumpulan dari objek tertentu yang memiliki struktur data dan perilakunya. Konsep fundamental dalam analisis
sistem berorientasi objek adalah objek itu sendiri.
Unified Modeling Language (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 (OO). Definisi ini merupakan definisi yang sederhana. Pada
kenyataannya, pendapat orang orang tentang UML berbeda satu sama lain. Hal ini dikarenakan oleh
sejarahnya sendiri dan oleh perbedaan persepsi tentang apa yang membuat sebuah proses rancang bangun
perangkat lunak efektif. Fowler (2004,p1).
Unified Modeling Language(UML) merupakan strandar yang relatif terbuka yang dikontrol oleh Object
Management Group (OMG), sebuah konsorsium terbuka yang terdiri dari banyak perusahaan. OMG dibentuk
untuk membuat standar standar yang mendukung interoperabilitas, khusunya interoperabilitas sistem
berorientasi objek. OMG mungkin lebih dikenal dengan standar standar COBRA (Common Object
Request Broker Architecture). Fowler (2004,p1-2).

2.2 Karakteristik Objek dan Kelas Objek
Setiap objek mempunyai identitas yang dapat diukur dan memiliki nilai yang bertujuan untuk membedakan
entitas antara satu objek dengan objek lain. Pada objek terdapat sifat konkrit yang melekat pada identitas objek
tersebut yang berfungssi untuk membedakan setiap objek walaupun nilai atributnya hampir sama atau identik.
Objek yang terbagi dalam atribut, operasi, metode, hubungan, dan makna yang sama akan membentuk sebuah
kelas yang merupakan wadah bagi objek yang dapat digunakan untuk menciptakan objek, atau dengan kata lain
suatu kelas objek menggambarkan kumpulan dari objek yang mempunyai sifat (atribut), perilaku umum
(operasi), relasi umum dengan objek lain dan semantik umum. Fungsi kelas objek adalah mengumpulkan data
(atribut) dan perilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup.
Beberapa istilah yang berhubungan dengan objek antara lain :

Atribut
Atribut menggambarkan data yang dapat memberikan informasi mengenai kelas atau objek dimana atribut
tersebut berada.

1. Metode
Metode adalah subprogram yang tergabung dalam objek bersama sama dengan atribut. Metode dipergunakan
untuk pengaksesan terhadap data yang terdapat dalam objek tersebut. Sering juga disebut
sebagai procedure atau function.

2. Message
Message merupakan cara untuk berhubungan antara satu objek dengan objek lain dengan cara mengikirimkan
pesan oleh suatu objek kepada objek tertentu.

3. Operasi
Fungsi di dalam kelas yang dikombinasikan ke bentuk tingkah laku kelas suatu objek.


2.3 Metodologi Berorientasi Objek
Dalam dunia pemodelan, metodologi implementasi obyek walaupun terikat kaidah-kaidah standar, namun teknik
pemilihan obyek tidak terlepas pada subyektifitas software analyst & designer. Beberapa obyek akan diabaikan
dan beberapa obyek menjadi perhatian untuk diimplementasikan di dalam sistem. Hal ini sah-sah saja karena
kenyataan bahwa suatu permasalahan sudah tentu memiliki lebih
dari satu solusi. Ada 3 (tiga) teknik/konsep dasar dalam OOA/D, yaitu pemodulan (encapsulation), penurunan
(inheritance) dan polymorphism.

a. Pemodulan (Encapsulation)
Pada dunia nyata, seorang ibu rumah tangga menanak nasi dengan menggunakan rice cooker, ibu tersebut
menggunakannya hanya dengan menekan
tombol. Tanpa harus tahu bagaimana proses itu sebenarnya terjadi. Disini terdapat penyembunyian informasi
milik rice cooker, sehingga tidak perlu diketahui seorang ibu. Dengan demikian menanak nasi oleh si ibu
menjadi sesuatu yang menjadi dasar bagi konsep information hiding.

b. Penurunan (Inheritance)
Obyek-obyek memiliki banyak persamaan, namun ada sedikit perbedan. Contoh dengan beberapa buah mobil
yang mempunyai kegunaan yang berbeda-beda. Ada mobil bak terbuka seperti truk, bak tertutup seperti sedan
dan minibus. Walaupun demikian obyek-obyek ini memiliki kesamaan yaitu teridentifikasi sebagai obyek
mobil, obyek ini dapat dikatakan sebagai obyek induk (parent). Sedangkan minibus dikatakan sebagai obyek
anak (child), hal ini juga berarti semua operasi yang berlaku pada mobil berlaku juga pada minibus.

c. Polymorphism
Pada obyek mobil, walaupun minibus dan truk merupakan jenis obyek mobil yang sama, namun memiliki juga
perbedaan. Misalnya suara truk lebih keras dari pada minibus, hal ini juga berlaku pada obyek anak (child)
melakukan metoda yang sama dengan algoritma berbeda dari obyek induknya. Hal ini yang disebut
polymorphism, teknik atau konsep dasar lainnya adalah ruang lingkup / pembatasan. Artinya setiap obyek
mempunyai ruang lingkup kelas, atribut, dan metoda yang dibatasi.

d. Abstraksi
Prinsip untuk merepresentasikan dunia nvata yang kompleks menjadi satu bentuk model yang sederhana
dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan.

e. Reusabilily
Pemanfaatan kembali objek yang sudah didefinisikan untuk suatu permasalahan pada permasalahan lainnva
yang melibatkan objek tersebut.

f. Generalisasi dan Spesialisasi
Menunjukkan hubungan antara kelas dan objek yang umum dengan kelas dan objek yang khusus.

g. Komunikasi Antar Objek
Komunikasi antar objek dilakukan lewat pesan (message) yang dikirim dan satu objek ke objek lainnya.






2.4 Diagram UML
Diagram adalah yang menggambarkan permasalahan maupun solusi dari permasalahan suatu model. UML
mempunyai 9 diagram, yaitu:
1. Diagram Use Case, menggambarkan apa saja aktifitas yang dilakukan oleh suatu sistem dari sudut
pandang pengamatan luar.
Diagram Use Case berguna dalam tiga hal :
a.Menjelaskan fasilitas yang ada (requirements)
b. Komunikas dengan klien
c. Membuat test dari kasus kasus secara umum

2. Diagram Class, memberikan pandangan secara luas dari suatu sistem dengan menunjukan kelas
kelasnya dan hubungan mereka.
Diagram Class mempunyai 3 macam relationalships (hubungan), sebagai berikut :
a. Association, suatu hubungan antara bagian dari dua kelas yang terjadi jika salah satu bagian dari kelas
mengetahui kelas yang lain dalam melakukan suatu kegiatan..
b.Aggregation, hubungan association dimana salah satu kelasnya merupakan bagian dari suatu kumpulan dan
memiliki titik pusat yang mencakup keseluruhan bagian.
c.Generalization, hubungan turunan dengan mengasumsikan satu kelas merupakan suatu kelas super dari kelas
yang lain.

3. Diagram Package dan Object, merupakan kumpulan elemen elemen logika ML yang bertujuan
untuk mengelompokkan Diagramclass yang lebih kompleks.

4. Diagram Sequence, merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu
operasi itu dilakukanyang diatur berdasarkan waktu.

5. Diagram Collaboration juga merupakan diagram Interaction berfungsi membawa informasi yang
sama dengan diagram Sequence, tetapi lebih memusatkan atau memfokuskan pada kegiatan obyek dari
waktu informasi itu dikirimkan.

6. Diagram State Chart merupakan indikator yang menunjukan kemungkinan dari keadaan obyek dan
proses yang menyebabkan perubahan pada keadaannya.

7. Diagram Activity, menunjukkan bagaimana aktifitas aktifitas tersebut bergantung satu sama lain.
dan berfokus pada aktifitas aktifitas yang terjadi yang terkait dalam suatu proses tunggal.

8. Diagram Component adalah sebuah kode kode modul yang merupakan fisik sebenarnya dari
diagram Class.

9. Diagram Deployment menerangkan bahwa konfigurasi fisik software dan hardware.

2.5 Hubungan/Relationship
Ada 4 macam hubungan dalam penggunaan UML, yaitu:
Dependency, hubungan semantik antara dua objek yang mana sebuahobjek berubah mengakibatkan objek
satunya akan berubah pula.
Association, hubungan antar benda secara struktural yang terhubung diantara objek dalam kesatuan objek.
Generalizations, hubungan khusus dalam objek anak yang menggantikan objek induk dan memberikan
pengaruhnya dalam hal struktur dan tingkah lakunya kepada objek induk.
Realizations, hubungan semantik antarpengelompokkan yang menjamin adanya ikatan diantaranya yang
diwujudkan diantara interface dan kelas atau elements, serta antarause cases dan collaborations.




2.6 Langkah-langkah menggunakan UML
Berikut ini adalah tips pengembangan piranti lunak dengan menggunakan UML:
1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang
mungkin muncul.
2. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat fungsionalitas yang
harus disediakan oleh sistem. Kemudian perhalus use case diagram dan lengkapi dengan requirement,
constraints dan catatan-catatan lain.
3. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
4. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga harus disediakan
oleh sistem.
5. Berdasarkan use case diagram, mulailah membuat activity diagram.
6. Definisikan objek-objek level atas (package atau domain) dan buatlah sequencedan/atau collaboration
diagram untuk tiap alir pekerjaan. Jika sebuah use casememiliki kemungkinan alir normal dan error,
buatlah satu diagram untuk masing-masing alir.
7. Buatlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk
menjalankan skenario use case.
8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package ataudomain dipecah
menjadi hirarki class lengkap dengan atribut dan metodanya. Akan lebih baik jika untuk
setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain.
9. Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokanclass menjadi
komponen-komponen. Karena itu buatlah component diagram pada tahap ini. Juga, definisikan tes
integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan baik.
10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan danrequirement piranti lunak,
sistem operasi, jaringan, dan sebagainya. Petakan komponen ke dalam node.


Mulailah membangun sistem. Ada dua pendekatan yang dapat digunakan :
Pendekatan use case, dengan meng-assign setiap use case kepada tim pengembang tertentu untuk
mengembangkan unit code yang lengkap dengan tes.
Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim pengembang tertentu.
Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya. Model harus selalu sesuai
dengan code yang aktual.
Piranti lunak siap dirilis.

2.7 Tools yang mendukung UML
Saat ini banyak sekali tool pendesainan yang mendukung UML, baik itu tool komersial maupun opensource.
Beberapa diantaranya adalah:
Rational Rose (www.rational.com)
Together (www.togethersoft.com)
Object Domain (www.objectdomain.com)
Jvision (www.object-insight.com)
Objecteering (www.objecteering.com)
MagicDraw (www.nomagic.com/magicdrawuml)
Visual Object Modeller (www.visualobject.com)




2.8 Contoh Kasus

Adapun prosedur Proses pembuatan Daftar Data Pegawai dan Gaji pada sekolah X adalah sebagai berikut :
1. Proses Absensi
Pegawai melakukan absensi harian melalui form daftar hadir pegawai. Berdasarkan form daftar hadir pegawai
tersebut bagian Tata Usaha (TU) akan membuat Rekap Absen (RA) harian untuk diserahkan kepada
Administrasi.
2. Proses Pemberian Rekap Biodata Pegawai (RBP)
Pegawai memberikan data pribadi pegawai, data pendidikan, data keluarga yang dijadikan satu menjadi data
pegawai kepada bagian Tata Usaha yang kemudian diarsipkan menjadi Rekap Biodata Pegawai (RBP). Lalu
Rekap Biodata Pegawai (RBP) diserahkan kepada bagian administrasi untuk proses pengolahan Daftar Data
Pegawai Dan Gaji (DDPG).
3. Proses Pengolahan Daftar Data Pegawai dan Gaji (DDPG)
Setelah bagian administrasi menerima Rekap Biodata Pegawai (RBP) dan Rekap Absen (RA) akan mengolah
kedua data tersebut untuk dibuatkan menjadi Daftar Data Pegawai dan Gaji (DDPG) yang kemudian diserahkan
kepada Kepala Sekolah untuk ditanda tangani atau di Acc.


4. Proses Pembuatan Laporan
Daftar Data Pegawai dan Gaji (DDPG) yang sudah diterima dan ditanda tangani oleh Kepala Sekolah akan
diserahkan kembali kepada bagian Administrasi untuk dibuatkan Laporan Data Pegawai (LDP) dan Laporan
Gaji Pegawai (LGP).
Setelah bagian administrasi menerima Daftar Data Pegawai dan Gaji yang sudah di Acc akan membuatkan
Laporan Data Pegawai (LDP) dan Laporan Gaji Pegawai (LGP) yang nantinya akan diserakan kepada Kepala
Sekolah.selain itu bagian Administrasi akan membuatkan slip gaji untuk diserahkan kepada pegawai.
SOAL
1. Rancanglah Use Case diagram System dari kasus diatas!
2. Buat minimal 1 Activity diagram dari use case yg telah anda buat! (bukan use case Login)







Gambar Use Case Diagram system


Keterangan Aktor
1. Pegawai : pegawai dapat melakukan daftar hadir langsung pada sistem aplikasi
2. Staff TU : staff TU bertugas untuk melakukan rekap biodata pegawai, staff TU tidak perlu melakukan
rekap daftar hadir karena sistem sudah secara otomatis menghasilkan rekap daftar hadir
3. Bagian Administrasi : Bagian Administrasi dalam melakukan pengolahan data pegawai dan gaji (PDPG)
memerlukan data rekap daftar hadir dan biodata pegawai. Setelah PDPG telah mendapatkan
validasi/persetujuan dari kepala sekolah, bagisn administrasi baru dapat mencetak slip gaji pegawai. Selain
itu tugas bagian administrasi juga harus membuat laporan yakni Laporan data Pegawai (LDP) dan Laporan
gaji Pegawai (LGP)
4. Kepala Sekolah : kepala sekolah dapat mengakses aplikasi Pengolahan Data Pegawai dan Gaji untuk
melakukan proses validasi. Selain itu kepala sekolah juga dapat melihat Laporan Data Pegawai (LDP) dan
laporan Gaji Pegawai (LDG).
uc Use Case Model
Pegawai
Kepala Sekolah
Daftar Hadir
Pengolahan Data
& Gaj i Pegawai
Print Slip Gaj i
Staff T.U
Rekap Biodata
Pegawai
Laporan
Bagian Administrasi
Laporan Data
Pegawai
Laporan Gaj i
Pegawai
i ncl ude
i ncl ude
i ncl ude




Activity diagram
Use case : rekap biodata pegawai





BAB III
PENUTUP

3.1 Kesimpulan

Objek adalah model eksekusi. Sementara kelas adalah deskripsi statik dan objek yang mungkin lahir pada saat
eksekusi.
Pada saat eksekusi yang kita punva adalah objek, sementara dalam pemodelan (analisis dan perancangan) dan
teks program yang kita lihat adalah kelas.
Unified Modeling Language (UML) adalah bahasa pemodelan umum yang digunakan untuk melakukan
spesifikasi, visualisasi, konstruksi dan dokumentasi artifak dari software system. UML bukanlah sebuah standar
proses pengembangan dalam metode pengembangan sistem tertentu, namun pada umumnya UML dipakai dalam
memodelkan sistem yang dibangun berbasiskan objek. Dengan menggunakan UML kita dapat membuat model
untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem
operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun.
act Activity
Sistem Aplikasi Staff T.U
Sistem Aplikasi
Telah Dibuka
Petugas
Menginput Data
Pegawai
Sistem Menyimpan
Data Pegawai ke
Database
Sistem Otomatis
Menyimpan Rekap
Biodata Pegawai






3.2 Saran

UML adalah suatu bahasa perancangan modern yang paling umum dipakai pada saat ini, dimana
UML ini sering dikaitkan dengan bahasa pengembangan piranti lunak berbasis objek. Dengan menggunakan
UML sebagai bahasa perancangan maka kita dapat membuat suatu rancangan piranti lunak yang dimana bahasa
tersebut menyatukan berbagai praktik-praktik terbaik dalam permodelan, sehingga hasil rancangan kita dapat
dimengerti secara umum dan universal.
Dengan menggunakan UML, maka kita dapat berinteraksi lebih mudah dengan para perancang piranti lunak
yang lain, karena kita memakai bahasa perancangan UML yang bersifat universal, dan diketahui oleh hampir
semua perancang piranti lunak. Sehingga kita dapat saling bertukar pikiran atas rancangan yang kita buat
dengan perancang lain, dan menghilangkan gap dalam perbedaan bahasa permodelan.


Daftar Pustaka

wsilfi.staff.gunadarma.ac.id/Downloads/files//Pengenalan+UML.pdf
erwinharianto.files.wordpress.com/2009/06/totolan-erwin-uml.doc
http://id.wikipedia.org/wiki/UML
http://www.gangsir.com/download/4-
PendekatanPengembanganSistemBerorientasiObjekdanPenggunaanAlatalatPemodelan.pdf
http://www.scribd.com/doc/26601970/SISTEM-BERORIENTASI-OBJEK