Pertemuan 6
Class DiagramClass Diagram
Class Diagram mendeskripsikan jenis-jenis objek dalam
sistem dan berbagai macam hubungan statis yang terdapat
diantara mereka. Class diagram juga menunjukkan properti
dan operasi sebuah class dan batasan-batasan yang
terdapat dalam hubungan-hubungan objek tersebut. UML
menggunakan istilah fitur sebagai istilah umum yang
meliputi properti dan operasi sebuah class.Class DiagramProperti, Atribut dan Asosiasi
Properti mewakili fitur-fitur struktural dari sebuah class.
Properti merupakan sebuah konsep tunggal, tetapi tampak
seperti dua notasi yang sedikit berbeda : atribut dan
asosiasi. Meskipun tampak berbeda dalam sebuah
diagram tetapi sebenarnya adalah hal yang sama.
Notasi atribut mendeskripsikan properti dengan sebaris
teks didalam kotak class tersebut
Contoh:
-name : string [1] = “untitled” {read only}Properti, Atribut dan Asosiasi
Keterangan :
+/- = tanda visibility, + public / - private
name = atribut, bagaimana class tersebut mengacu pada
atribut
string = tipe dari atribut, menunjukkan sebuah batasan
tentang objek apa yang dapat diletakkan dalam atribut
tersebut
[1] = multiplicity
untitled = devault value, nilai objek yang baru dibuat jika
atribut tidak dispesifikasi selama pembuatannya
{property string}, memungkinkan untuk menunjuk properti
tambahan, misalnya read only yang berarti bahwa klien tidak
dapat mengubah properti tersebutProperti, Atribut dan Asosiasi
Asosiasi merupakan sebuah garis solid antara dua class,
ditarik dari class sumber ke class target. Nama properti
bergerak sampai tujuan akhir sebuah asosiasi bersama
dengan multiplicity. Tujuan akhir sebuah asosiasi
menghubungkan dengan class yang merupakan jenis
properti.
Properti dalam susunan atribut dapat digambarkan sebagai
berikut:Properti, Atribut dan Asosiasi
Contoh objek Barang
Barang
+KodeBrg : String
+NamaBrg : String
+HargaBrg : Long
+StokBrg : Int
-TambahData() : void
-HapusData() : void
-UbahData() : void
-HitungStok() : voidMultiplicity
Multiplicity merupakan indikasi tentang berapa banyak
objek yang akan mengisi properti. Multiplicity yang
sering digunakan adalah:
1
contoh: satu pesanan hanya bisa untuk seorang pelanggan
0..1
contoh: pelanggan perusahaan dapat memiliki seorang
sales rep
*
contoh: tidak ada jumlah maksimal / tidak terbatas berapa
jumlah pesanan yang dapat dibuat oleh pelanggan)Multiplicity
Indikator/Gambar Arti
0..1 Kosong atau satu
0..* Lebih dari sama dengan kosong
0..n Lebih dari sama dengan n, dimana n lebih dari 1
1 Hanya satu
1..* Lebih dari sama dengan satu
1..n Lebih dari sama dengan satu dimana n lebih dari satu
* Banyak atau Many
N Hanya N, dimana N lebih dari satu
n..* Lebih dari sama dengan N dimana N lebih dari satu
n..m Lebih dari sama dengan N dan kurang dari sama dengan M.
Dimana M dan N lebih dari satu.Multiplicity
Association multiplicity merupakan batasan pada user
dalam melakukan aktifitasnya. Beberapa macam istilah
yang mengacu pada multiplicity:
Optional
Menunjukkan sebuah batas bawah yang bernilai nol (0)
Mandatory
Menunjukkan sebuah batas bawah yang bernilai satu (1)
atau mungkin lebihMultiplicity
Association multiplicity merupakan batasan pada user
dalam melakukan aktifitasnya. Beberapa macam istilah
yang mengacu pada multiplicity:
Single-valued
Menunjukkan sebuah batas atas yang bernilai satu (1)
Multivalued
Menunjukkan sebuah batas atas yang bernilai lebih dari
satu (1) dan biasanya ditulis dengan tanda *Asosiasi Bidireksional
Asosiasi bidireksional adalah sepasang properti yang
saling berhubungan satu sama lain.
Sifat bidireksional ditunjukkan secara jelas dengan adanya
panah navigasi pada kedua ujung asosiasi.
Orang Mobil
pemilik
0..1 *Operasi
Operasi merupakan suatu kegiatan yang dimengerti
sebuah class untuk dilakukan. Operasi secara jelas
berhubungan dengan metode dalam sebuah class.
Istilah lain yang sering digunakan pada operasi adalah
metode tetapi sebenarnya tidak sama. Perbedaannya
adalah operasi adalah hal yang diharapkan pada
sebuah objek (deklarasi prosedur), sedangkan sebuah
metode adalah bentuk prosedur.
Dalam metode ada istilah getting dan setting. Metode
getting akan mengembalikan nilai dari sebuh bidang
(dan tidak melakukan hal lain selain itu) sedangkan
metode setting meletakkan nilai kedalam sebuah
bidang (dan tidak melakukan hal lain selain itu)Generalisasi
Contoh dari gambar class sebelumnya yang merupakan
generalisasi melibatkan pelanggan perorangan dan
pelanggan perusahaan. Keduanya mempunyai persamaan
dan perbedaan. Persamaan tersebut dapat dimasukkan
kedalam class pelanggan umum (supertype) dengan
pelanggan perorangan dan pelanggan perusahaan sebagai
subtype.
Dengan menggunakan perspektif perangkat lunak,
interpretasi tersebut sudah termasuk: pelanggan
perusahaan merupakan subclass dari pelanggan. Dalam
object oriented subclass mewarisi semua fitur superclass
dan dapat melakukan semua metode superclass.Generalisasi
Contoh Generalisasi – Class Diagram
PEGAWAI
NIK
NAMA
ALAMAT
TGLLAHIR
DOSEN
KDDOSEN
MULAINGAJAR
HONORPERJAM
KARY_HARIAN
UPAHHARIAN
JMLHARIKERJA
KARY_TETAP
GAJIBULANANCatatan dan Komentar
Catatan merupakan komentar didalam diagram. Catatan-
catatan dapat berdiri sendiri atau dihubungkan dengan
garis hubung dengan elemen yang dikomentari.Ketergantungan
Sebuah ketergantungan muncul antara dua elemen jika
perubahan definisi sebuah elemen dapat menyebabkan
perubahan pada elemen lainnya. Dalam class
ketergantungan muncul karena banyak hal, antara lain :
salah satu class mengirim pesan ke class lain, salah satu
class memiliki sebagian data, salah satu class menyebut
class lain sebagai parameter sebuah operasi. Jika sebuah
class mengubah antarmukanya, setiap pesan yang dikirim
ke class tersebut dapat menjadi tidak valid.
Ketergantungan di gambarkan dengan garis putus-putus. Ketergantungan
Banyak hubungan-hubungan UML menunjukkan
ketergantungan. Asosiasi dengan kemampuan navigasi
dari pesanan sampai ke pelanggan dalam gambar
sebelumnya, berarti pesanan tersebut tidak tergantung
pelanggan. Sebuah subclass tidak tergantung pada
superclass-nya tetapi tidak sebaliknya.
Kata kunci dalam ketergantungan dapat dijelaskan sebagai
berikut:
Kata Kunci Arti
<<call>> Sumber memanggil sebuah operasi pada target
<<create>> Sumber membuat perintah pada targetKetergantungan
Kata Kunci Arti
<<derive>> Sumber diambil dari target
<<instantiate>> Sumber merupakan perintah target
<<permit>> Target memungkinkan sumber untuk mengakses fitur private
target
<<realize>> Sumber merupakan implementasi sebuah spesifikasi atau
antarmuka yang ditentukan oleh target
<<refine>> Perbaikan menunjukkan sebuah hubungan antara tingkat
semantik yang berbeda, contohnya, sumber merupakan
sebuah class desain dan targetnya adalah class analisis
yang terkait
<<substitute>> Sumber merupakan pengganti dari target
<<trace>> Digunakan untuk mencari sesuatu seperti persyaratan class
atau bagaimana perubahan dalam sebuah model
berhubungan dengan perubahan di lain tempat
<<use>> Sumber membutuhkan target untuk implementasinyaKetergantungan
Contoh dependency
Mobil
+model : String
-pabrik : String
+BelokKanan() : void
+BelokKiri() : void
+JalanLurus() : void
Roda
-ukuran : int
<<use>>Class Diagram berdasarkan Contoh
Kasus (Acknowledgments Evi Lutfi Muktar)Studi Kasus
Class diagram dari rancangan sistem informasi
penyewaan pada Bendi Car yang diusulkan sebagai
berikut:
Pertemuan 5
Sequence DiagramSequence Diagram
• Sequence diagram menggambarkan interaksi antar
objek di dalam dan di sekitar sistem (termasuk
pengguna, display, dan sebagainya) berupa message
yang digambarkan terhadap waktu. Sequence diagram
terdiri atar dimensi vertikal (waktu) dan dimensi
horizontal (objek-objek yang terkait).
• Diagram ini secara khusus berasosiasi dengan use case
diagramSequence Diagram
• Sequence diagram biasa digunakan untuk
menggambarkan skenario atau rangkaian langkah-
langkah yang dilakukan sebagai respons dari sebuah
event untuk menghasilkan output tertentu. Diawali dari
apa yang men-trigger aktivitas tersebut, proses dan
perubahan apa saja yang terjadi secara internal dan
output apa yang dihasilkan.
• Memperlihatkan tahap demi tahap apa yang seharusnya
terjadi untuk menghasilkan sesuatu didalam use caseSimbol Sequence DiagramLooping, Syarat dan Like
Loop dan conditional menggunakan kerangka interaksi
(interaction frame), yaitu frame untuk memberi tanda pada
sequence diagram (lihat gambar pada slide berikutnya).
Umumnya frame terdiri dari beberapa region pada
sequence diagram, yang dibagi menjadi satu atau lebih
fragmen. Setiap frame mempunyai sebuah operator.
Sebuah fragmen mungkin mempunyai satu guard.
Operator Keterangan
alt Alternatif dari banyak fragmen. Hanya yang kondisinya
true yang akan dijalankan
opt Optional; fragmen akan dijalankan jika kondisi yang
mendukungnya trueLooping, Syarat dan Like
Operator Keterangan
par Paralel; setiap fragmen dijalankan secara paralel
loop Looping, fragmen mungkin dijalankan berulang kali dan
guard menunjukkan basis iterasi
region Critical region; fragmen hanya dapat mempunyai satu
thread untuk menjalankannya
neg Negatif; fragmen menunjukkan interaction yang salah
ref Reference; menunjukkan ke sebuah interaction yang
didefinisikan pada diagram yang lain
sd Sequence diagramContoh kasus Penggajian
(Acknowledgments Evi Lutfi Muktar)
SEQUENCE
DIAGRAM INPUT
DATA PEGAWAI Contoh kasus Penggajian
(Acknowledgments Evi Lutfi Muktar)Contoh kasus Penggajian
(Acknowledgments Evi Lutfi Muktar)
SEQUENCE
DIAGRAM
INPUT DATA
PENDIDIKAN Contoh kasus Penggajian
(Acknowledgments Evi Lutfi Muktar)Contoh kasus Penggajian
(Acknowledgments Evi Lutfi Muktar)
SEQUENCE
DIAGRAM
INPUT DATA
KELUARGAContoh kasus Penggajian
(Acknowledgments Evi Lutfi Muktar)Studi Kasus
PT. Bendi Car adalah sebuah perusahaan yang bergerak
dibidang penyewaan mobil Semua transaksi di perusahaan
masih dilakukan secara manual. Berikut ini adalah kegiatan
kegiatan yang dilakukan oleh petugas dalam melaksanakan
transaksi penyewaan mobil di dalam perusahaan.
1. Prosedure peminjaman
Penyewa mobil yang ingin melakukan peminjaman dapat melihat
harga penyewaan mobil pada daftar harga sewa mobil. Penyewa
dapat menggunakan jasa supir atau tidak sesuai dengan
kebutuhan penyewa sendiri. Setiap jenis kendaraan memiliki
harga sewa yang berbeda-beda begitu juga harga sewa jasa
sopir untuk daerah Jabodetabek dan diluar jabodetabek pun
berbeda. Setelah itu penyewa mengisi Formulir Penyewaan (FS)
disertai fotocopy identitas diri. Kemudian Formulir penyewaan
yang telah diisi beserta pembayaran dimuka diserahkan kepada
petugas kemudian petugas membuatkan kwitansi pembayaran
sebagai bukti pembayaran.Studi Kasus
2. Prosedure pengembalian
Pada saat pengembalian kendaraan oleh penyewa,
petugas membawa Formulir Pengembalian dan
memeriksa kondisi kendaraan apakah terdapat kerusakan
atau tidak. Bila ada (misalnya spion pecah, body penyok,
cat tergores, dll), maka diperhitungkan penggantiannya dan
dibebankan kepada penyewa. Bila tidak rusak/terlambat
maka tidak perlu mengisi Formulir pengembalian. Namun
Bila penyewa terlambat dalam pengembalian, maka jumlah
keterlambatan mobil dan sopir akan dibebankan kepada
penyewa. Setelah membayar kerusakan dan
keterlambatan, maka petugas membuatkan kwitansi
sebagai tanda bukti pembayaran dendaStudi Kasus
3. Prosedure laporan
Diakhir bulan petugas membuat laporan penyewaan
berikut denda atas kerusakan atau keterlambatan yang
terjadi dan laporan kendaraan. Laporan tersebut
diserahkan ke pemilik penyewaan Bendi car
Buatlah Sequence diagram dari sistem berjalan diatasStudi Kasus
6. Menu
UtamaStudi Kasus
6. Menu
Utama
Pertemuan 4
Usecase DiagramDeskripsi USE CASE
Sebuah use case adalah situasi dimana sistem
digunakan untuk memenuhi satu atau lebih kebutuhan
pemakai.
Use case merupakan awal yang sangat baik untuk
setiap fase pengembangan berbasis objek, design
testing, dan dokumentasi.
Use case menggambarkan kebutuhan sistem dari sudut
pandang di luar sistem.Deskripsi USE CASE
Use case menentukan nilai yang diberikan sistem
kepada pemakainya.
Use cases hanya menetapkan apa yang seharusnya
dikerjakan oleh sistem, yaitu kebutuhan fungsional
sistem.
Use case tidak untuk menentukan kebutuhan
nonfungsional, misalnya: sasaran kinerja, bahasa
pemrograman, dsb.USE CASE Diagram
Use case diagram terdiri dari
a. Use case
Use case class digunakan untuk memodelkan dan
menyatakan unit fungsi / layanan yang disediakan oleh
sistem (or bagian sistem: subsistem atau class) ke
pemakai.
Use case dapat dilingkupi dengan batasan sistem yang
diberi label nama sistem.USE CASE Diagram
Use case adalah sesuatu yang menyediakan hasil yang
dapat diukur ke pemakai atau sistem eksternal
Use case dibuat berdasar keperluan actor, merupakan
“apa” yang dikerjakan system, bukan “bagaimana”
system mengerjakannya
Use case diberi nama yang menyatakan apa hal yang
dicapai dari hasil interaksinya dengan actor.
Use case dinotasikan dengan gambar (horizontal
ellipse).USE CASE Diagram
Use case biasanya menggunakan kata kerja.
Nama use case boleh terdiri dari beberapa kata dan
tidak boleh ada 2 use case yang memiliki nama yang
sama
Use case class memiliki objek use case yang disebut
skenario. Skenario menyatakan urutan pesan dan
tindakan tunggal.
Simbol use case :USE CASE Diagram
Use case diagram terdiri dari
b. Actors
Actor menggambarkan orang, system atau external
entitas / stakeholder yang menyediakan atau menerima
informasi dari system
Actor menggambarkan sebuah tugas/peran dan
bukannya posisi sebuah jabatan
Actor memberi input atau menerima informasi dari
systemUSE CASE Diagram
Actor biasanya menggunakan Kata benda
Actor adalah eksternal terhadap sistem.
Tidak boleh ada komunikasi langsung antar actor
Indikasi <<system>> untuk sebuah actor yang merupakan
sebuah system
Adanya actor bernama “Time” yang mengindikasikan
scheduled events (suatu kejadian yang terjadi secara
periodik/bulanan)USE CASE Diagram
Letakkan actor utama anda pada pojok kiri atas dari
diagram
Actor berinteraksi dengan sistem.
Actor memanfaatkan fungsi yang disediakan sistem,
termasuk fungsi aplikasi dan pemeliharaan.
Actors bisa saja menyediakan fungsi ke sistem.
Actors bisa menerima informasi yang disediakan
sistem.USE CASE Diagram
Actors bisa menyediakan informasi ke sistem.
Simbol actor :USE CASE Diagram
Use case diagram terdiri dari
c. Association
• Associations bukan menggambarkan aliran
data/informasi
• Associations digunakan untuk menggambarkan
bagaimana actor terlibat dalam use case
• Ada 4 jenis relasi yang bisa timbul pada use case
diagram
1. Association antara actor dan use case
2. Association antara use case
3. Generalization/Inheritance antara use case
4. Generalization/Inheritance antara actorsUSE CASE Diagram
1. Association antara actor dan use case
Ujung panah pada association antara actor dan use case
mengindikasikan siapa/apa yang meminta interaksi dan
bukannya mengindikasikan aliran data
Sebaiknya gunakan Garis tanpa panah untuk association
antara actor dan use case
association antara actor dan use case yang menggunakan
panah terbuka untuk mengindikasikan bila actor berinteraksi
secara pasif dengan system andaUSE CASE Diagram
2. Association antara use case
<<include>> termasuk didalam use case lain (required)
/ (diharuskan)
– Pemanggilan use case oleh use case lain, contohnya adalah
pemanggilan sebuah fungsi program
– Tanda panah terbuka harus terarah ke sub use case
– Gambarkan association include secara horizontal
Register for courses
<<include>>
Logon validation
<<include>>
Maintain curriculumUSE CASE Diagram
3. Generalization/inheritance antara use case
Generalization/inheritance digambarkan dengan sebuah garis
berpanah tertutup pada salah satu ujungnya yang
menunjukkan lebih umum
Gambarkan generalization/inheritance antara use case
secara vertical dengan inheriting use case dibawah
base/parent use case
Generalization/inheritance dipakai ketika ada sebuah
keadaan yang lain sendiri/perlakuan khusus (single condition)
Buka
Rekening
Nasabah Buka
DepositoUSE CASE Diagram
4. Generalization/inheritance antara actor
Gambarkan generalization/inheritance antara actors secara
vertical dengan inheriting actor dibawah base/parent use
caseUSE CASE Diagram
Use case diagram terdiri dari
d. System boundary boxes (optional)
Untuk memperlihatkan batasan sistem dalam diagram
use case, Anda dapat menggambarkan sebuah kotak
yang melingkupi semua use case, namun actor tetap
berada di luar kotak
Biasanya digunakan apabila memberikan beberapa
alternative system yang dapat dijadikan pilihan.
System boundary boxes dalam penggunaannya
optionalUSE CASE Diagram
Use case diagram terdiri dari
d. System boundary boxes (optional)
System boundary boxes dalam penggunaannya
optionalContoh Use Case
Sebuah Sekolah Menengah Kejuruan mengelola
administrasi akademik yang berkaitan dengan Data yang
akan disimpan meliputi data member yang meliputi siswa,
guru, orang tua, alumni dan tamu, data mata pelajaran,
data absensi, data BP/BK, data nilai, data pembayaran dan
sampai cetak laporan, dengan rincian sebagai berikut :
• Pemberian hak akses kepada pengguna SAS terdiri dari
siswa, guru, orang tua, alumni dan tamu. Pengguna
harus melakukan login terlebih dahulu untuk dapat
mengakses SAS dengan memasukan username dan
password agar privasi masing-masing pengguna tetap
terjaga keamanannya.Contoh Use Case
• Administrator dapat menambah data administrator,
mengganti username dan password administrator.
• Administrator bertugas mengelola SAS seperti :
menambah administrator, melihat administrator, data
kelas, data pelajaran, data jurusan atau program,
semester dan tahun pelajaran.
• Pengunjung umum adalah pengunjung biasa (bukan
member) yang hanya dapat mengakses informasi profil,
melihat data guru, siswa dan alumni, serta tersedia
fasilitas seperti: agenda kegiatan, artikel, berita, buku
tamu, galeri foto, kontak sekolah dan peta sekolah.Contoh Use Case
• Siswa dapat merubah profil, merubah latar belakang,
mengirim dan menerima pesan, melihat data guru,
siswa, alumni, member, nilai, absensi dan pembayaran,
mengunduh materi pelajaran dan materi ujian, mengikuti
belajar online, melihat dan mengirim tugas, mengikuti tes
online, serta fasilitas forum diskusi.
• Guru dapat merubah profil, merubah latar belakang,
mengirim dan menerima pesan, melihat data guru,
siswa, alumni, member, nilai, absensi dan pembayaran,
mengunduh materi ajar dan materi ujian, menambah
materi pelajaran dan belajar online, melihat dan menilai
tugas, mengadakan dan tes online, serta fasilitas forum
diskusi.Contoh Use Case
• Alumni dapat dapat merubah profil, merubah latar
belakang, mengirim dan menerima pesan, melihat data
member dan group, informasi alumni, serta forum
diskusi.
• Orang tua merubah profil, merubah latar belakang,
mengirim dan menerima pesan, melihat data guru,
siswa, alumni, member, nilai, absensi dan pembayaran,
mengunduh materi pelajaran dan materi ujian, mengikuti
belajar online, melihat dan mengirim tugas, serta fasilitas
forum diskusi.Contoh Use CaseStudi Kasus
PT. Bendi Car adalah sebuah perusahaan yang bergerak
dibidang penyewaan mobil Semua transaksi di perusahaan
masih dilakukan secara manual. Berikut ini adalah kegiatan
kegiatan yang dilakukan oleh petugas dalam melaksanakan
transaksi penyewaan mobil di dalam perusahaan.
1. Prosedure peminjaman
Penyewa mobil yang ingin melakukan peminjaman dapat melihat
harga penyewaan mobil pada daftar harga sewa mobil. Penyewa
dapat menggunakan jasa supir atau tidak sesuai dengan
kebutuhan penyewa sendiri. Setiap jenis kendaraan memiliki
harga sewa yang berbeda-beda begitu juga harga sewa jasa
sopir untuk daerah Jabodetabek dan diluar jabodetabek pun
berbeda. Setelah itu penyewa mengisi Formulir Penyewaan (FS)
disertai fotocopy identitas diri. Kemudian Formulir penyewaan
yang telah diisi beserta pembayaran dimuka diserahkan kepada
petugas kemudian petugas membuatkan kwitansi pembayaran
sebagai bukti pembayaran.Studi KasusStudi KasusStudi KasusStudi KasusStudi Kasus
2. Prosedure pengembalian
Pada saat pengembalian kendaraan oleh penyewa,
petugas membawa Formulir Pengembalian dan
memeriksa kondisi kendaraan apakah terdapat kerusakan
atau tidak. Bila ada (misalnya spion pecah, body penyok,
cat tergores, dll), maka diperhitungkan penggantiannya dan
dibebankan kepada penyewa. Bila tidak rusak/terlambat
maka tidak perlu mengisi Formulir pengembalian. Namun
Bila penyewa terlambat dalam pengembalian, maka jumlah
keterlambatan mobil dan sopir akan dibebankan kepada
penyewa. Setelah membayar kerusakan dan
keterlambatan, maka petugas membuatkan kwitansi
sebagai tanda bukti pembayaran dendaStudi Kasus
3. Prosedure laporan
Diakhir bulan petugas membuat laporan penyewaan
berikut denda atas kerusakan atau keterlambatan yang
terjadi dan laporan kendaraan. Laporan tersebut
diserahkan ke pemilik penyewaan Bendi car
Buatlah Usecase dari sistem berjalan diatas
Pertemuan 3
Activity DiagramActivity Diagram
Teknik untuk menjelaskan business process, procedural
logic, dan work flow Bisa dipakai untuk menjelaskan use
case text dalam notasi grafis
Menggunakan notasi yang mirip flow chart, meskipun
terdapat sedikit perbedaan notasiActivity Diagram
Menggambarkan proses bisnis dan urutan aktivitas
dalam sebuah proses
Dipakai pada business modeling untuk memperlihatkan
urutan aktifitas proses bisnis
Struktur diagram ini mirip flowchart atau Data Flow
Diagram pada perancangan terstruktur
Sangat bermanfaat apabila kita membuat diagram ini
terlebih dahulu dalam memodelkan sebuah proses untuk
membantu memahami proses secara keseluruhan
Activity diagram dibuat berdasarkan sebuah atau
beberapa use case pada use case diagramSimbol Activity Diagram
Simbol Keterangan
Start Point
End Point
Activities
Fork (Percabangan)
Join (Penggabungan)
Decision
Swimlane
Sebuah cara untuk mengelompokkan activity
berdasarkan Actor (mengelompokkan activity
dalam sebuah urutan yang sama)
Contoh Activity Diagram
Penarikan
Uang dari
Account
Bank
Melalui ATMContoh Activity DiagramContoh Activity DiagramContoh Activity Diagram
Procedure Berjalan (Acknowledgments Evi Lutfi Muktar)
Proses pembuatan Daftar Data Pegawai dan Gaji pada SMP
PGRI 1 Depok adalah sebagai berkut :
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.Contoh Activity Diagram
Procedure Berjalan (Acknowledgments Evi Lutfi Muktar)
Proses pembuatan Daftar Data Pegawai dan Gaji pada SMP
PGRI 1 Depok adalah sebagai berkut :
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).Contoh Activity Diagram
Procedure Berjalan (Acknowledgments Evi Lutfi Muktar)
Proses pembuatan Daftar Data Pegawai dan Gaji pada SMP
PGRI 1 Depok adalah sebagai berkut :
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.Contoh Activity Diagram
Procedure Berjalan (Acknowledgments Evi Lutfi Muktar)
Proses pembuatan Daftar Data Pegawai dan Gaji pada SMP
PGRI 1 Depok adalah sebagai berkut :
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.Contoh Activity Diagram
Proses
AbsensiContoh Activity Diagram
Proses
Rekap
Biodata
PegawaiContoh Activity Diagram
Proses
Pengola
han
daftar
data
pegawaiContoh Activity Diagram
Proses
Pembuat
an
LaporanContoh Activity Diagram
Proses
Pembuat
an
LaporanContoh Activity Diagram
Procedure Berjalan (Acknowledgments Toeko triyanto)
Proses bisnis pelayanan pelanggan perubahan daya pada PT PLN
adalah sebagai berikut :
• Pendaftaran perubahan daya
Konsumen datang kekantor PT PLN(Persero) dengan membawa
fotocopy KTP dan kwitansi pembayaran rekening bulan terakhir
kemudian diserahkan dibagian pelayanan pelanggan. Pegawai
pelayanan pelanggan akan menginput berdasarkan data dari
konsumen, setelah diinput maka akan dicetak formulir pendaftaran
perubahan daya untuk kemudian ditandatangani oleh pelanggan.
Satu rangkap untuk pelanggan sebagai tanda bukti. Lainnya
disimpan oleh bagian pelayanan pelanggan untuk diteruskan ke
supervisor untuk proses persetujuanContoh Activity Diagram
Activity diagram pendaftaran perubahan daya
memberikan fotocopy ktp
dan rekening listrik
menerima formulir
pendaftaran
menyetujui formulir
pendaftaran
memberikan formulir
pendaftaran
menerima fotocopy ktp
dan rekening listrik
input pendaftaran
pelanggan
cetak formulir
pendaftaran
memberikan formulir
pendaftaran
menerima formulir
pendaftaran
memberikan formulir
pendaftaran
menerima formulir
pendaftaran
spv pelayanan pelayanan pelanggan pelangganContoh Activity Diagram
Procedure Berjalan (Acknowledgments Toeko triyanto)
Proses bisnis pelayanan pelanggan perubahan daya pada PT PLN
adalah sebagai berikut :
• Persetujuan perubahan daya
Rangkap formulir pendaftaran yang disimpan oleh bagian
pelayanan pelanggan kemudian dibuatkan surat jawaban
persetujuan yang kemudian ditandatangani oleh supervisor
pelayanan pelanggan dicetak menjadi dua rangkap, rangkap
pertama diberikan kepada pelanggan, sedangkan rangkap
yang kedua disimpan oleh bagian pelayanan pelangan
sebagai arsip.Contoh Activity Diagram
Activity diagram persetujuan perubahan daya
memberikan formulir
pendaftaran
menerima formulir
pendaftaran
membuat surat
persetujuan
menyetujui surat
persetujuan
memberikan surat
persetujuan
menerima surat
persetujuan
pelanggan spv pelayanan pelayanan pelangganStudi Kasus
1. Kasus sederhana diagram aktivitas untuk sistem Order.
Diagram diawali dengan start point status awal dan
kemudian melakukan aksi terima order. Kemudian
kegiatan isi order dan kirim faktur dapat dilakukan
secara paralel. Setelah kirim faktur dilakukan terima
pembayaran dan setelah isi order terdapat dua pilihan
jenis pengiriman yaitu pengiriman semalam (jenis kilat)
atau pengiriman biasa(jenis normal). Selanjutnya
diakhiri oleh aksi tutup order.
Buatlah diagram aktivitasnya sesuai dengan soal diatasStudi Kasus
Jawaban :Studi Kasus
2. Kasus pendaftaran siswa
Prosedur penerimaan siswa pada Madrasah abc saat ini masih
bersifat manual, adapun prosedurnya adalah sebagai berikut:
• Prosedur Pembelian Formulir
Dalam proses melakukan pendaftaran maka calon siswa
datang ke sekolah lalu menemui bagian pendaftaran dan
membeli formulir pendaftaran. Bagian pendaftaran mencatat
di buku pendaftaran.
• Prosedur Mengembalikan Formulir Pendaftaran
Setelah formulir diisi semuanya, calon siswa
mengembalikannya ke sekolah dan mendatangi bagian
pendaftaran. Bagian pendaftaran memberikan bukti
pendaftaran dan menyimpan.Studi Kasus
2. Kasus pendaftaran siswa
Prosedur penerimaan siswa pada Madrasah abc saat ini
masih bersifat manual, adapun prosedurnya adalah sebagai
berikut:
• Prosedur Pembayaran
Calon siswa membawa bukti nomor pendaftaran lalu
mendatangi bagian tata usaha untuk melakukan
pembayaran. Bagian tata usaha memberikan kwitansi dan
menyimpan bukti pembayaran itu.
• Prosedur Laporan Penerimaan Siswa Baru
Setelah jadwal penerimaan siswa baru ditutup, maka
bagian pendaftaran membuat laporan kepada Bagian
Waka UR Kesiswaan.
• Buatlah diagram aktivity dari sistem diatasStudi Kasus
3. Studi kasus pada koperasi
Koperasi Jaya adalah sebuah koperasi yang mengelola simpan
pinjam bagi para anggotanya, berikut ini adalah kegiatan yang
dilakukan oleh bagian Kredit dalam menangani pemberian
pinjaman bagi para anggotanya.
• Setiap kali bagian kredit akan memberikan pinjaman kepada
Anggota maka Anggota diharuskan mengisi Formulir
Permohonan Pinjaman yang berisi Nomor FPP, Tanggal
Permohonan, Nomor Anggota, Nama Anggota, Jumlah
Permohonan dan Keperluan. Yang kemudian oleh Bagian Kredit
dicatat dan disimpan kedalam Arsip FPP. Berdasarkan Arsip
FPP tersebut Bagian Kredit membuat Bukti Peminjaman yang
diberikan kepada Anggota yang berisi No. BP, tgl BP, Nomor
Anggota, Nama Anggota, Jumlah Realisasi, Lama Angsuran,
Jumlah Angsuran dan Bunga.Studi Kasus
3. Studi kasus pada koperasi
Koperasi Jaya adalah sebuah koperasi yang mengelola simpan
pinjam bagi para anggotanya, berikut ini adalah kegiatan yang
dilakukan oleh bagian Kredit dalam menangani pemberian
pinjaman bagi para anggotanya.
• Setiap Bulan Anggota diharuskan membayar Angsuran sejumlah
Angsuran yang disepakati pada saat Peminjaman yang
kemudian oleh bagian Kredit dicatat dan direkam kedalam Arsip
Angsuran. Berdasarkan Arsip Angsuran tersebut bagian Kredit
membuat Bukti Angsuran yang diberikan kepada Anggota yang
berisi No. BA, Tanggal BA, No. BP, Jumlah Angsur dan Bunga
• Pada akhir bulan Bagian Kredit selalu membuat Laporan
Peminjaman dan Laporan Angsuran yang diberikan Kepada
Ketua Koperasi.Studi Kasus
4. Kasus penyewaan mobil pada sebuah perusahaan
PT. Bendi Car adalah sebuah perusahaan yang bergerak
dibidang penyewaan mobil. Semua transaksi di perusahaan
masih dilakukan secara manual. Berikut ini adalah proses
bisnis sistem penyewaan mobil pada perusahaan Bendi Car :
1. Prosedur Peminjaman
2. Prosedur Pengembalian
3. Prosedur Pembuatan laporanStudi Kasus
4. Kasus penyewaan mobil pada sebuah perusahaan
PT. Bendi Car adalah sebuah perusahaan yang bergerak dibidang
penyewaan mobil. Semua transaksi di perusahaan masih dilakukan
secara manual. Berikut ini adalah proses bisnis sistem penyewaan mobil
pada perusahaan Bendi Car :
1. Prosedure peminjaman
Penyewa mobil yang ingin melakukan peminjaman dapat melihat harga
penyewaan mobil pada daftar harga sewa mobil. Penyewa dapat
menggunakan jasa supir atau tidak sesuai dengan kebutuhan penyewa
sendiri. Setiap jenis kendaraan memiliki harga sewa yang berbeda-beda
begitu juga harga sewa jasa sopir untuk daerah Jabodetabek dan diluar
jabodetabek pun berbeda. Setelah itu penyewa mengisi Formulir
Penyewaan (FS) disertai fotocopy identitas diri. Kemudian Formulir
penyewaan yang telah diisi beserta pelunasan pembayaran diserahkan
kepada petugas kemudian petugas membuatkan kwitansi pembayaran
sebagai bukti pembayaran.Studi Kasus
4. Kasus penyewaan mobil pada sebuah perusahaan
PT. Bendi Car adalah sebuah perusahaan yang bergerak dibidang
penyewaan mobil. Semua transaksi di perusahaan masih dilakukan
secara manual. Berikut ini adalah proses bisnis sistem penyewaan mobil
pada perusahaan Bendi Car :
2. Prosedure pengembalian
Pada saat pengembalian kendaraan oleh penyewa, petugas membawa
Formulir Pengembalian dan memeriksa kondisi kendaraan apakah
terdapat kerusakan atau tidak. Bila ada (misalnya spion pecah, body
penyok, cat tergores, dll), maka diperhitungkan penggantiannya dan
dibebankan kepada penyewa. Bila tidak rusak/terlambat maka tidak perlu
mengisi Formulir pengembalian. Namun Bila penyewa terlambat dalam
pengembalian, maka jumlah keterlambatan mobil dan sopir akan
dibebankan kepada penyewa. Setelah membayar kerusakan dan
keterlambatan, maka petugas membuatkan kwitansi sebagai tanda bukti
pembayaran dendaStudi Kasus
4. Kasus penyewaan mobil pada sebuah perusahaan
PT. Bendi Car adalah sebuah perusahaan yang bergerak dibidang
penyewaan mobil. Semua transaksi di perusahaan masih dilakukan
secara manual. Berikut ini adalah proses bisnis sistem penyewaan mobil
pada perusahaan Bendi Car :
3. Prosedure laporan
Diakhir bulan petugas membuat laporan penyewaan berikut denda atas
kerusakan atau keterlambatan yang terjadi dan laporan kendaraan.
Laporan tersebut diserahkan ke pemilik penyewaan Bendi car
• Buatlah diagram aktivity dari sistem diatas
Pertemuan 2
UMLUML (Unified Modeling Language)
UML (Unified Modeling Language) adalah metode
pemodelan (tools/model) secara visual sebagai
sarana untuk merancang dan atau membuat software
berorientasi objek dan memberikan standar penulisan
sebuah sistem untuk pengembangan sebuah software
yang dapat menyampaikan beberapa informasi untuk
proses implementasi pengembangan software.UML (Unified Modeling Language)
SEJARAH UML
• Pada Oktober 1994, Dr. James Rumbaugh bergabung
dengan Perusahaan Rational sotware, dimana Grady
Booch sudah bekerja disana sebelumnya. Grady Booch
mengembangkan Object Oriented Design (OOD) dan Dr.
James Rumbaugh mengembangkan Object Modeling
Technique (OMT). Duet Mereka pada Oktober 1995
menghasilkan Unified Method versi 0.8.UML (Unified Modeling Language)
• Musim gugur 1995 Dr. Ivar Jacobson ikut pula bergabung
dengan duet Rumbaugh-Booch, dengan memperkenalkan
tool use case. Trio tersebut pada bulan Juni 1996
menghasilkan Unified Modeling Language (UML) versi 0.9.
Sebelumnya Dr. Ivar Jacobson mengembangkan Object
Oriented Software Engineering (OOSE)
• Banyak perusahaan software merasakan bagaimana
pentingnya UML dalam tujuan strategis mereka, sehingga
beberapa perusahaan membentuk sebuah konsorsium yang
terdiri dari perusahaan-perusahaan seperti Microsoft,
Oracle, IBM, Hewlett-Packard, Intellicorp, I-Logix, DEC,
Digital Equipment Corp. texas instrumentUML (Unified Modeling Language) Konsep Dasar UML
Untuk dapat mememahami UML diperlukan pemahaman
entang konsep bahasa pemodelan dan tiga eleman utama
UML.Tiga elemen utama UML antara lain:
a. Benda / Things / Objek
Objek merupakan bagian paling statik dari sebuah model,
yang menjelaskan elemen–elemen lainnya dari sebuah
konsep. Bentuk dari beberapa objek :
1. Classes, sekelompok dari object yang mempunyai
atribute, operasi, dan hubungan yang semantikKonsep Dasar UML
2. Interfaces, antar-muka yang menghubungkan dan
melayani antarkelas dan atau elemen dan
mendefinisikan sebuah kelompok dari spesifikasi
pengoperasian.
3. Collaboration, interaksi dari sebuah kumpulan kelas–
kelas atau elemen–elemen yang bekerja secara
bersama–sama.
4. Use cases, pembentuk tingkah laku objek dalam sebuah
model serta di realisasikan oleh sebuah collaboration.
5. Nodes, bentuk fisik dari elemen–elemen yang ada pada
saat dijalankannya sebuah systemKonsep Dasar UML
b. Hubungan / Relationship
Ada 4 macam hubungan dalam penggunaan UML, yaitu :
1. Dependency, hubungan semantik antara dua objek yang
mana sebuah objek berubah mengakibatkan objek
satunya akan berubah pula.
2. Association, hubungan antar benda secara struktural
yang terhubung diantara objek dalam kesatuan objek.Konsep Dasar UML
3. Generalizations, hubungan khusus dalam objek anak
yang menggantikan objek induk dan memberikan
pengaruhnya dalam hal struktur dan tingkah lakunya
kepada objek induk
4. Realizations, hubungan semantik antarpengelompokkan
yang menjamin adanya ikatan diantaranya yang
diwujudkan diantara interface dan kelas atau elements,
serta antara use cases dan collaborations.Konsep Dasar UML
c. Bagan atau Diagrams
Diagram adalah yang menggambarkan permasalahan
maupun solusi dari permasalahan suatu model.
UML 1.0 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 umumKonsep Dasar UML
Contoh Usecase Diagram
Staff HRD
Entry Data Pegawai
Entry Data Jabatan
Staff PayRoll
Entry Data Lokasi Kerja
Entry Data DivisiKonsep Dasar UML
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..Konsep Dasar UML
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.Konsep Dasar UML
Cotoh Class Diagram
Class Buku terdiri dari :
– Atribut : judul, pengarang
– Method : ambilJenis(),
ambilHalaman();Konsep Dasar UML
3) Diagram Package dan Object, merupakan kumpulan
elemen–elemen logika UML yang bertujuan untuk
mengelompokkan Diagram class yang lebih kompleks.
4) Diagram Sequence, merupakan salah satu diagram
Interaction yang menjelaskan bagaimana suatu operasi
itu dilakukan yang diatur berdasarkan waktu.Konsep Dasar UML
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 dan bukan pada waktu
penyampaian message.
Tujuan: Membuat collaboration diagram, Membuat link
(relasi) antar obyek, Menambah message (pesan) pada
link, Memetakan message pada operasi, Buat
collaboration diagram dari sequence diagram dan
sebaliknyaKonsep Dasar UML
Contoh Collaboration DiagramKonsep Dasar UML
6) Statechart diagram menggambarkan transisi dan
perubahan keadaan (dari satu state ke state lainnya)
suatu objek pada sistem sebagai akibat dari stimuli yang
diterima. Pada umumnya statechart diagram
menggambarkan class tertentu (satu class dapat
memiliki lebih dari satu statechart diagram).
Diagram StateChart merupakan indikator yang
menunjukan kemungkinan dari keadaan obyek dan
proses yang menyebabkan perubahan pada
keadaannya.Konsep Dasar UML
Contoh State Chart DiagramKonsep Dasar UML
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.
Menggambarkan berbagai alir aktivitas dalam sistem
yang sedang dirancang, bagaimana masing-masing alir
berawal, decision yang mungkin terjadi, dan bagaimana
mereka berakhirKonsep Dasar UML
Contoh Activity Diagram
Start
Menyerahkan Absensi yang
sudah ditandatangani
Menyerahkan Rekap Lembur yang
sudah ditandatangani
Menerima Absensi dan Rekap Lembur
yang sidah ditandatangani
End
STAFF PAYROL PEGAWAIKonsep Dasar UML
8) Diagram Component adalah sebuah kode–kode modul
yang merupakan fisik sebenarnya dari diagram Class.
Component diagram menggambarkan struktur dan
hubungan antar komponen piranti lunak, termasuk
ketergantungan (dependency) di antaranya.Konsep Dasar UML
Contoh Component DiagramKonsep Dasar UML
9) Diagram Deployment menerangkan bahwa konfigurasi
fisik software dan hardware.
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 fisikalKonsep Dasar UML
Contoh Deployment DiagramKonsep Dasar UMLArtifact UML
Actor A
Use Case 1
Use Case 2
Actor B
user : »ç¿ëÀÚ
mainWnd : MainWnd
fileMgr : FileMgr
repository : Repository
document : Document
gFile : GrpFile
9: sortByName ( )
L 1: Doc view request ( )
2: fetchDoc( )
5: readDoc ( )
7: readFile ( )
3: create ( )
6: f illDocument ( )
4: create ( )
8: f illFile ( )
GrpFile
read( )
open( )
create( )
f illFile( )
rep
Repository
name : char * = 0
readDoc( )
readFile( )
(from Persistence)
FileMgr
fetchDoc( )
sortByName( )
DocumentList
add( )
delete( )
Document
name : int
docid : int
numField : int
get( )
open( )
close( )
read( )
sortFileList( )
create( )
f illDocument( )
fList
1
FileList
add( )
delete( )
1
File
read( )
read() f ill the
code..
UI
MFC
RogueWave
global
DocumentApp
Persistence
Window95
¹®¼-°ü¸®
Ŭ¶óÀ̾ðÆ®.EXE
Windows
NT
¹®¼-°ü¸® ¿£Áø.EXE
Windows
NT
Windows95
Solaris
ÀÀ¿ë¼-¹ö.EXE
Alpha
UNIX
IBM
Mainframe
µ¥ÀÌŸº£À̽º¼-¹ö
Windows95
¹®¼-°ü¸® ¾ÖÇø´
ºÐ»ê ȯ °æÀÇ Çϵå¿þ¾î¹× ³×Æ®¿÷À¸· ÎÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬° á ¸ðµ¨
- À©µµ¿ì 95 : Ŭ¶óÀ̾ðÆ®
- À©µµ¿ì NT: ÀÀ¿ë¼-¹ö
- À¯ ´Ð½º ¸Ó½Å: ÀÀ¿ë ¼-¹ö ¹× µ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö
- IBM ¸ÞÀÎÇÁ· ¹ÀÓ: µ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö
Document
FileManager
GraphicFile
File
Repository DocumentList
FileList
user
mainWnd fileMgr :
FileMgr
repository document :
Document
gFile
1: Doc view request ( )
2: fetchDoc( )
3: create ( )
4: create ( )
5: readDoc ( )
6: fillDocument ( )
7: readFile ( )
8: fillFile ( )
9: sortByName ( )
ƯÁ¤¹®¼-¿¡ ´ëÇÑ º¸±â¸¦
»ç¿ëÀÚ°¡ ¿äûÇÑ´Ù.
È-Àϰü¸®ÀÚ´Â Àоî¿Â
¹®¼-ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼-
°´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù.
È-¸é °´Ã¼´Â ÀоîµéÀÎ
°´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î
Á¤·ÄÀ» ½ÃÄÑ È-¸é¿¡
º¸¿©ÁØ´Ù.
Customer
name
addr
withdraw()
fetch()
send()
receive()
<<entity>>
Forward Engineering(Code Generation)
and
Reverse Engineering
Executable System
User Interface
Definition
Domain
Expert
Openning
Writing
Reading
Closing
add file [ numberOffile==MAX ] /
flag OFF
add file
close file
close file
Use Case 3
Source Code edit, compile, debug, link
Use-Case
Diagram Class Diagram
Collaboration Diagram
Sequence Diagram
Component
Diagram
State Diagram
Package
Diagram
Deployment
Diagram ClassMekanisme Umum Pemodelan UML
Mekanisme pembangunan model, menggunakan:
specification : penjelasan rinci dari suatu model/elemen model
adornments : notasi yang menyediakan representasi visual dari
aspek-aspek penting lain
common divisions :
pembedaan antara kelas & objek
pemisahan antara interface & implementation
extensibility mechanisms : untuk mengembangkan model yang
ada:
- Stereotypes : unsur pembangun baru
- tagged values : menambah properti dari unsur pembangun
baru
- constraints :batasan-batasan antar entitas dalam model
Pertemuan I
Object OrientedPendahuluan Pemodelan Sistem Berbasis
Objek
• Sejarah Object Oriented
Konsep awal programming (Basic) dengan kekuatan GOTO
statement, ini merupakan Non Procedural Language
Procedural Language / Bahasa pemograman terstruktur
menghilangkan kelemahan GOTO konsep non procedural
language
Contoh : Pascal, COBOL, FORTRAN, BASIC dll
Object Oriented Programming, mengarah pada konsep
object. Akhir tahun 1960 diperkenalkan pertama kali dengan
bahasa SIMULA. Tahun 1970 dikembangkan Smaltalk.
Bahasa pemrograman lainnya : Clipper 5.2 Java, Prolog dllPendahuluan Pemodelan Sistem Berbasis
Objek
Visual Object Oriented Programming, tahun 1991
diperkenalkan pertama kali dengan bahasa Visual Basic oleh
Microsoft
Bahasa pemograman lainnya : Visual C++, Visual Foxpro 3.0,
CORBA (Common Object Request Broker Architecture), dll
• Pengembangan berorientasi objek merupakan cara berpikir
baru tentang perangkat lunak berdasarkan abstraksi yang
terdapat dalam dunia nyata. Dalam konteks pengembangan
menunjuk pada bagian awal dari siklus hidup pengembangan
sistem, yaitu survei, analis, desain, implementasi dan
pemeliharaan sistem. Hal yang lebih penting dalam
pengembangan berorientasi objek adalah konsep
mengidentifikasi dan mengorganisasi domain aplikasi
dari pada penggunaan bahasa pemrograman, berorientasi
objek atau tidak.Konsep Pemodelan
Berorientasi objek dalam proses konseptual terpisah
dengan bahasa pemrograman sampai tahap terakhir.
Pengembangan berorientasi objek secara mendasar
merupakan cara berpikir baru dan bukan suatu teknik
pemrograman.
Dapat melayani sebagai media spesifikasi, analisa,
dokumentasi dan interface seperti halnya
pemrograman.
Bahkan sebagai alat pemrograman, dapat memiliki
berbagai sasaran, termasuk bahasa pemrograman dan
basis data sebaik dengan bahasa pemrograman
berorientasi obyek.Metodologi Object Oriented
• Fokus utama metodologi ini pada objek, dapat
digambarkan sebagai benda, orang, tempat dan
sebagainya yang memiliki atribut dan metode.
• Diperkenalkan tahun 1980 menggunakan perangkat
kerja dan teknik-teknik yang dibutuhkan dalam
pengembangan sistem, yaitu dynamic dan static object
oriented model, state transition diagram dan case
scenario.Model Object Oriented
Objek dan kelas
Objek didefinisikan sebagai konsep, abstraksi atau benda
dengan batasan dan arti untuk suatu masalah.
Semua objek mempunyai identitas yang berbeda dengan
lainnya.
Kadang-kadang objek berarti suatu barang, maka digunakan
istilah object instance, dan object class untuk menunjukkan
satu grup dari barang yang sama.
Sebuah objek merupakan sebuah entitas yang mencakup
data dan metode.
Kelas merupakan satu atau lebih objek dengan persamaan
atribut dan metode, sedangkan kelas-&-objek adalah kelas
dengan satu atau lebih objek di dalamnya.
Nama kelas adalah kata benda tunggal, atau kata sifat dan
kata benda.Model Object Oriented
Istilah-istilah Objek
• Atribut : Data item yang menegaskan Objek
• Operasi : Fungsi di dalam kelas yang
dikombinasikan bentuk tingkah laku kelas
• Metode : Pelaksanaan prosedur (badan dari
kode yang mengeksekusi respon terhadap
permintaan objek lain di dalam sistem).Struktur Objek dan Hirarki Kelas
1. Whole-Part Structure memperlihatkan hirarki dari suatu
kelas sebagai komponen dari kelas lain yang disebut
juga sub objek.
Contohnya, kelas Mobil adalah Whole dan
komponennya Mesin, Rangka, dll merupakan Part1,
Part 2, …, Partn.Struktur Objek dan Hirarki Kelas
2. Gen-Spec memperlihatkan kelas sebagai spesialisasi dari
kelas diatasnya
Kelas yang mempunyai sifat umum disebut Generalization,
Superclass atau Topclass.
Kelas yang mempunyai sifat khusus disebut Specialization.
Contohnya, kelas Mobil adalah Generalization, sedangkan
Sedan, Truk, Minibus, dll merupakan Specizlization1,
Specialization2, dstTahap-tahap metodologi berdasarkan
Sistem Development Life Cycle (SDLC),
dengan berorientasi objek dapat dijelaskan
sebagai berikut :
1. Analisa
Model analisa adalah abstraksi yang ringkas dan tepat dari apa
yang harus dilakukan oleh sistem, dan bagaimana melakukannya.
Objek dalam model harus merupakan konsep domain dari aplikasi,
bukan merupakan implementasi komputer seperti struktur data.
2. Design
Fokus object design adalah perencanaan struktur data dan
algoritma yang diperlukan untuk implementasi setiap kelas. Objek
domain aplikasi dan objek domain komputer dijelaskan dengan
menggunakan konsep dan notasi berorientasi objek yang samaTahap-tahap metodologi berdasarkan Sistem
Development Life Cycle (SDLC), dengan
berorientasi objek dapat dijelaskan sebagai
berikut :
3. Implementasi
Kelas, objek dan relasinya dikembangkan dalam tahap
object design, akhirnya diterjemahkan ke dalam bahasa
pemrograman, basis data, dan implementasi perangkat
keras.
Dalam tahap implementasi hal yang penting adalah
mengikuti penggunaan perangkat lunak yang baik.Object
Objek adalah kombinasi antara struktur data dan perilaku dalam
satu entitas dan mempunyai nilai tertentu yang membedakan
entitas. Bisa berupa:
• obyek konkrit : rumah, sekolah, dosen, mahasiswa, dll.
• obyek abstrak : mata kuliah, penjadwalan, dll.
Karakteristiknya adalah:
Memiliki Identity (identitas)
Memiliki klasisfikasi
Memiliki state (kondisi/keadaan)
State sebuah objek dinyatakan dalam attribute/properties
Memiliki behavior (perilaku/method)
Perilaku suatu objek dinyatakan dalam operation.
Perilaku suatu objek adalah mendefinisikan bagaimana objek
tersebut bertindak dan memberikan reaksi.CONTOH OBYEK
Atribut :
• Nomor Polisi
• Ban, Stir, Pedal Kopling/Gas/Rem,
• Warna, Tahun Produks
Behavior/Tingkah Laku :
• Cara Menghidupkan Mesin
• Cara Manjalankan Mobil
• Cara Memundurkan MobilObject : MobilKarakteristik Berorientasi Objek
Berorientasi objek mempunyai karakteristik sebagai berikut:
1. Encapsulation (pembungkusan)
• Pengkapsulan merupakan dasar untuk pembatasan ruang
lingkup program terhadap data yang diproses. Dengan
demikian objek atau prosedur dari luar tidak dapat
mengaksesnya. Data terlindung dari prosedur atau objek lain
kecuali prosedur yang berada dalam objek itu sendiri.
• Sebuah object yang terkapsulasi dapat dianggap sebagai
black box.
• Proses di dalamnya adalah tertutup bagi klien, yang hanya
memanggil metode yang menjadi interface.
• Dalam Java, dasar enkapsulasi adalah Class. Variabel atau
method sebuah class tidak dapat diakses dengan menjadikan
class tersebut private/protected.CONTOH ENKAPSULASI
Disini terjadi penyembunyian informasi tentang bagaimana
cara kerja pengecekan validitas kartu, kecocokan pin yang
dimasukkan, koneksi ke database server, dll, dimana hal-
hal tersebut tidak perlu diketahui oleh pengguna tentang
bagaimana cara kerjanya.Karakteristik Berorientasi Objek
2. Inheritance (pewarisan)
Inheritance (pewarisan) adalah teknik yang menyatakan bahwa
anak dari objek akan mewarisi data/atribut dan metode dari
induknya langsung. Bila inheritance dipergunakan, kita tidak
perlu membuat atribut dan metode lagi pada anaknya, karena
telah diwarisi oleh induknya. Inheritance mempunyai arti bahwa
atribut dan operasi yang dimiliki bersama di antara class yang
mempunyai hubungan secara hirarki.
• Sebuah class bisa mewariskan atribut dan method-nya ke class
yang lain
– Class yang mewarisi disebut superclass
– Class yang diberi warisan disebut subclass
– Sebuah subclass bisa mewariskan atau berlaku sebagai
superclass bagi class yang lain => disebut multilevel
inheritanceCONTOH INHERITANSIGENERALISASI
• Generalisasi adalah relasi antara beberapa subclass
dengan superclass di atasnya.
• Kelas yang lebih rendah mewarisi semua atribut yang
dimiliki oleh kelas yang lebih tinggi dan juga memiliki
atribut yang membedakannya dengan kelas-kelas lain
yang sederajat.GENERALISASIKarakteristik Berorientasi Objek
3. Polymorphisme
Polymorphisme yaitu aksi yang sama yang dapat
dilakukan terhadap beberapa objek. Polimorfisme
berarti bahwa operasi yang sama mungkin mempunyai
perbedaan dalam kelas yang berbeda.
• Polymorphism adalah kemampuan untuk tampil dalam
berbagai bentuk.
• Hal ini mengacu pada kemungkinan message yang
sama dikirimkan ke obyek-obyek lain pada class yang
berbeda, dan merespon secara berbeda.Contoh PolymorphismPerbedaan Object Oriented dengan Non
Object
1. Penggunaan alat
Metodologi non objek menggunakan beberapa alat untuk
menggambarkan model seperti data flow diagram, entity
relationship diagram dan structure chart.
Sedangkan metodologi berorientasi objek menggunakan
satu jenis model dari tahap analisa sampai implementasi,
yaitu diagram objek.Perbedaan Object Oriented dengan Non
Object
2. Data dan proses
Pada metodologi non objek, data dan proses dianggap
sebagai dua komponen yang berlainan
Sedangkan pada metodologi berorientasi objek, data dan
proses merupakan satu kesatuan, yaitu bagian dari objek.
3. Bahasa pemrograman
Metodologi non objek dipergunakan untuk melengkapi
pemrograman terstruktur pada bahasa generasi ketiga.
Sedangkan metodologi berorientasi objek dipergunakan
untuk pemrograman berorientasi objek dan bahasa
generasi keempat.
Tidak ada komentar:
Posting Komentar