Anda di halaman 1dari 27

UNIFIED MODELING LANGUAGE

LANJUTAN

GERSON FEOH, S.KOM


STIKOM BALI
2009
Pemodelan Visual
Bangun rumaharsitek rancangan rumah(denah atau maket)
yang akan memandu kontraktor/pembangun rumah kita.
Bangun sistem informasi/perangkat lunak pemodelan visual
proses penggambaran informasi-informasi secara grafis dengan
notasi-notasi baku yang telah disepakati sebelumnya.
Fungsi pemodelan visual :
Tinjauan umum bagaimana arsitektur sistem secara keseluruhan.
Penelaahan bagaimana objek-objek dalam sistem saling mengirimkan
pesan (message) dan saling bekerjasama satu sama lain.
Menguji apakah sistem/perangkat lunak sudah berfungsi seperti yang
seharusnya.
Dokumentasi sistem/perangkat lunak untuk keperluan-keperluan
tertentu di masa yang akan datang.
Awal Notasi Pemodelan Visual
Notasi-notasi UML terbentuk dari :
Notasi Booch Graddy Booch
Notasi OMT (Object Modeling Technique) DR. James
Rumbaugh
Notasi OOSE (Object Oriented Software Engineering) Ivar
Jacobson.
Dimulai pada Oktober 1994, DR.Rumbaugh bergabung
dengan Booch di Rational Software Corporation.
Proyek pertama menggabungkan metoda Booch dan
OMT.
Jenis Diagram UML
UML Diagram Statis & Diagram Dinamis.
Diagram Statis :
Class Diagram
Object Diagram
Use Case Diagram
Component Diagram
Deployment Diagram
Diagram Dinamis :
Sequence Diagram
Collaboration Diagram
Statechart Diagram
Activity Diagram
DIAGRAM STATIS
Class Diagram
Diagram ini memperlihatkan himpunan kelas-kelas, antarmuka-antarmuka, kolaborasi-kolaborasi, serta relasi-relasi.
Diagram ini umum dijumpai pada pemodelan sistem berorientasi objek.
Meskipun bersifat statis, sering pula diagram kelas memuat kelas-kelas aktif.
Object Diagram
Diagram ini memperlihatkan objek-objek serta relasi-relasi antar object.
Diagram object memperlihatkan instansiasi statis dari segala sesuatu yang dijumpai pada diagram kelas.
Use Case Diagram
Diagram ini memperlihatkan himpunan use case dan aktor-aktor (suatu jenis khusus dari kelas).
Diagram ini terutama sangat penting untuk mengorganisasi dam memodelkan perilaku dari suatu sistem yang dibutuhkan serta
diharapkan pengguna.
Component Diagram
Diagram komponen ini memperlihatkan organisasi serta kebergantungan sistem/perangkat lunak pada komponen-komponen
yang telah ada sebelumnya.
Diagram ini berhubungan dengan diagram kelas dimana komponen secara tipikal dipetakan kedalam satu atau lebih kelas-kelas,
antarmuka-antarmuka (interfaces), serta kolaborasi-kolaborasi.
Deployment Diagram
Diagram ini memperlihatkan konfigurasi saat aplikasi dijalankan (saat run-time).
Diagram ini memuat simpul-simpul (node) beserta komponen-komponen yang ada didalamnya.
Deployment diagram berhubungan erat dengan diagram komponen dimana deployment diagram memuat satu atau lebih
komponen-komponen.
Diagram ini sangat berguna saat aplikasi kita berlaku sebagai aplikasi yang dijalankan pada banyak mesin (distibuted computing)
DIAGRAM DINAMIS
Sequence Diagram
Diagram urutan adalah diagram interaksi yang menekankan pada pengiriman pesan
(message) dalam suatu waktu tertentu.
Collaboration Diagram
Diagram kolaborasi adalah diagram interaksi yang menekankan organisasi struktural dari
object-object yang menerima serta mengirim pesan (message).
Statechart Diagram
Diagram state ini memperlihatkan state-state pada sistem; memuat state, transisi, event,
serta aktifitas.
Diagram ini terutama penting untuk memperlihatkan sifat dinamis dari antarmuka
(interface), kelas, kolaborasi, dan terutama penting pada pemodelan sistem-sitem yang
reaktif.
Activity Diagram
Diagram aktivitas ini adalah tipe khusus dari diagram state yang memperlihatkan aliran
dari suatu aktifitas ke aktifitas lainnya dalam suatu sistem
Diagram ini terutama penting dalam pemodelan fungsi-fungsi dalam suatu sistem dan
memberi tekanan pada aliran kendali antarobjek.
Contoh Hubungan Antar Diagram
Diagram kelas (class diagram) juga dapat (dan biasanya harus)
dibuat untuk melihat kelas-kelas yang terlibat dalam suatu
sistem dan bagaimana mereka saling berhubungan satu sama
lain.
Selanjutnya, diagram komponen dapat dikembangkan untuk
menggambarkan bagaimana kelas-kelas dipetakan menjadi
komponen-komponen implementasi.
Terakhir, deployment diagram dapat juga dikembangkan untuk
melihat penyebaran komponen-komponen dalam jaringan
komputer yang ada untuk sistem/perangkat lunak yang
sedang kita kembangkan.
Beberapa Fungsi Dokumentasi :
Para pengembang dapat menggunakan diagram use case untuk mendapatkan pemahaman yang
komprehensif tentang sistem dan lingkungan luar yang melingkupi sistem.
Para calon penggunan dan manajer proyek dapat menggunakan diagram use case untuk mendapatkan
pandangan peringkat paling atas tentang sistem dan untuk menentukan persetujuan tentang lingkup
proyek.
Manajer proyek dapat menggunakan diagram use case untuk membagi sistem secara keseluruhan
menjadi bagian-bagian yang dapat dikelola secara seksama.
Calon pengguna dan analis sistem dapat melihat diagram use case untuk dapat memahami
fungsionalitas sistem yang diharapkan.
Para penulis teknik dapat melihat diagram use case untuk menulis panduan-panduan (manual) dan
merancang pelatihan-pelatihan.
Analis sistem dan para pengembang dapat melihat Sequence Diagram dan Collaboration Diagram untuk
memahami bagaimana logika sistem berjalan, objek-objek yang terlibat dalam suatu sistem, serta
pesan-pesan (message) yang dikirimkan suatu objek ke objek-objek lainnya.
Para penguji dapat menggunakan diagram use case, Sequence Diagram, serta Collaboration Diagram
untuk mendapatkan informasi-informasi yang dibutuhkan bagi langkah-langkah pengujian sistem.
Beberapa Fungsi Dokumentasi :
Para pengembang dapat menggunakan diagram kelas (Class
Diagram) dan Statechart Diagram untuk mendapatkan rincian
sistem dan bagaimana objek-objek berhubungan dan bekerja.
Para pengembang juga dapat menggunakan Componen Diagram
serta Deployment Diagramuntuk melihat bagaimana berkas-
berkas yang dapat dieksekusi langsung (misalnya file .EXE
dan .COM), berkas-berkas DLL, atau komponen-komponen
lain akan dibuat, dan dibagian mana dalam jaringan komputer
komponen-komponen itu akan diletakkan.
Para pengembang juga dapat menggunakan model-model
UML untuk melacak kode-kode pemrograman.
Sekilas Pemodelan Bisnis
Pemodelan bisnis adalah studi tentang organisasi/perusahaan.
Selama proses pemodelan bisnis, kita melakukan pemeriksaan
struktur organisasi/perusahaan dan bagaimana mereka saling
berhubungan.
Kita juga melakukan pemeriksaan pada aliran-aliran kerja
(workflow) dalam perusahaan, bagaimana mereka bekerja,
seberapa efektif mereka, dsb.
Selain itu, kita juga harus melakukan pemeriksaan-pemeriksaan
pada entitas-entitas diluar sistem, entah itu individu-individu atau
perusahaan lain, yang berinteraksi dengan perusahaan yang kita
kembangkan sistem/perangkat lunaknya, serta mencari implikasi-
implikasi dari interaksi-interaksi yang terjadi itu.
Use Case
Diagram
Use Case dan Aktor
Perbedaan Use Case pada model bisnis dan model sistem:
Use Case :
Model bisnis : mendeskripsikan apa yang dikerjakan perusahaan.
Model sistem : mendeskripsikan sistem yang akan/sedang dikembangkan
dalam perusahaan.
Aktor :
Model bisnis : bersifat eksternal terhadap perusahaan.
Model sistem : bersifat eksternal terhadap sistem yang akan/sedang
dikembangkan.
Pekerja bisnis :
Model bisnis : bersifat internal dalam perusahaan.
Model sistem : tidak digunakan.
Aktor
Aktor adalah seseorang atau sesuatu yang berinteraksi dengan
sistem yang sedang kita kembangkan.
Aktor berada diluar lingkup sistem/perangkat lunak yang
sedang kita kembangkan (bersifat eksternal).
3 jenis aktor :
1. Para pengguna sistem/perangkat lunak.
2. Sistem/perangkat lunak lain yang berinteraksi dengan
sistem/perangkat lunak yang akan kita kembangkan.
3. Waktu.
Penjelasan Jenis Aktor 1
Orang-orang yang hadir secara fisik, atau para pengguna.
Mereka adalah aktor yang paling umum dan hadir disetiap
sistem/perangkat lunak (untuk mengembangkan sistem yang
tidak ada penggunannya?).
Ex :
Menik dalam sistem informasi akademis peran yang berbeda
staf pengajar dan mahasiswa S3.
Penjelasan Jenis Aktor 2
Merupakan sistem lain diluar sistem yang ada.
Ex :
Sistem Informasi Akademis (perangkat lunak yang akan kita
kembangkan)berinteraksi langsung Sistem Akuntansi
Universitas, Sistem Penyediaan Saran dan Prasarana, dsb.
Penjelasan Jenis Aktor 3
Waktu menjadi aktor ketika ia memicu event-event tertentu
bagi sistem/perangkat lunak yang kita kembangkan.
Ex :
Jika kita tinjau sistem operasi Windows, yang akan
memunculkan screen saver setelah komputer yang bersangkutan
tidak menerima aksi apa-apa dari penggunannya selama
beberapa waktu tertentu.
Dalam hal ini, waktu yang memicu pemunculan screen saver
dapat dianggap sebagai aktor untuk sistem.
Use Case
Use Case adalah peringkat tertinggi dari fungsionalitas yang
dimiliki sistem.
Use Case menggambarkan bagaimana seseorang akan
menggunakan/memanfaatkan sistem.
Ex : Sistem Pemesanan Layanan Penerbangan.
Identifikasi use case terlebih dahulu apa yang akan
sistem/perangkat lunak kerjakan untuk memberi suatu nilai tambah
pada lingkungannya?
Misalkan, sistem/perangkat lunak memungkinkan para pengguna:
membeli karcis,
mengubah pemesanan,
serta membatalkan pemesanan.
3 hal yang mungkin terjadi diatas adalah kandidat kuat use case yang
baik bagi sistem kita.
Use Case Lanjutan...
Keunggulan dari cara memandang sistem sebagai kumpulan aktor
dan use case adalah kemampuannya untuk memisahkan
implementasi sistem dari alasan mengapa sistem harus
ada.
Ia akan membantu kita untuk berfokus pada apa yang paling
penting, yaitu menentukan apa yang dibutuhkan serta apa
harapan pengguna terhadap sistem/perangkat lunak
yang sedang dikembangkan, dan tidak terlalu mempedulikan
bagaimana kelak ia akan diimplementasikan.
Dengan melihat pada use case, para pengguna dapat melihat
fungsionalitas apa yang akan disediakan oleh sistem dan
menyetujui (atau menolak) lingkup sistem sebelum proyek
berjalan lebih jauh dan akan menghabiskan waktu dan biaya.
Menemukan Use Case
Dapat dimulai dengan memperhatikan setiap dokumentasi yang
pengguna siapkan.
Ex :
Mulai dari pernyataan-pernyataan visi dan misi organisasi/perusahaan.
Bertanya pada diri sendiri, apa saja yang diharapkan oleh para
pengguna dari sistem/perangkat lunak yang kita kembangkan.
Apa yang akan pengguna kerjakan dengan sistem yang akan
dikembangkan?
Apa yang para pengguna butuhkan untuk memelihara informasi-
informasi ?
Apakah yang perlu sistem lakukan saat terjadi event tertentu yang
datang dari luar sistem ?
Proses Kerja Use Case Sistem dan
Use Case Bisnis
Use Case bisnis cenderung merupakan peringkat yang sangat
tinggi.
Dalam suatu use case bisnis biasanya bisa kita dapatkan satu
atau lebih use case sistem.
Setelah use case sistem dapat ditelusuri hingga use case bisnis,
langkah berikutnya adalah melacak kebutuhan ke use case
sistem.
Use case sistem mendeskripsikan fungsionalitas yang
disediakan oleh sistem.
Aliran Event
Aliran event : rincian-rincian spesifik yang digunakan untuk
mendeskripsikan apa yang akan sistem kerjakan untuk secara nyata
mengembangkan sistem/perangkat lunak tersebut.
Fungsi aliran event : mendokumentasikan aliran-aliran logika
dalam setiap use case.
Dokumen ini akan medeskripsikan secara rinci apa yang akan
pengguna lakukan dan apa yang sistem/perangkat lunak itu sendiri
akan lakukan untuk menanggapi tindakan-tindakan pengguna
padanya.
Sasaran aliran event : mendekripsikan apa yang akan sistem
kerjakan dan bukan pada bagaimana sistem akan melakukannya.
Rincian use case biasanya dideskripsikan dalam bentuk :
Aliran aliran primer
Aliran aliran alternatif
Cakupan Aliran-Aliran Event Primer
dan Aliran-Aliran alternatif
Bagaimana use case berawal ?
Berbagai lintasan normal (primer) dalam use case.
Setiap penyimpangan (deviasi) dari aliran normal dalam
use case (aliran-aliran alternatif).
Setiap aliran kesalahan (exception atau error).
Bagaimana use case berakhir.
Contoh Kasus : Use Case
Pembelian Tiket
Aliran Normal (Primer)
1. Use Case berawal saat penumpang memilih pilihan-pilihan
informasi penerbangan.
2. Sistem akan memunculkan promp untuk menentukan kota asal
penumpang serta kota lain yang menjadi tujuannya.
3. Pengguna memasukkan asalnya serta tujuannya beserta tanggal
penerbangannya.
4. Sistem akan menampilkan daftar penerbangan yang tersedia. Kasus
pertama muncul disini, yaitu K1: Penerbangan yang diharapkan
tidak tersedia.
5. Penumpang memilih penerbangan yang akan dipesan.
6. Sistem memunculkan jumlah uang yang harus dibayarkan
penumpang.
7. Sistem memunculkan prompt untuk jenis kartu kredit, nomor,
nama, serta tanggal kadaluarsa.
Contoh Kasus : Use Case
Pembelian Tiket
Aliran Normal (Primer)
8. Pengguna memasukkan jenis kartu kredit, nomor, nama,
serta tanggal kadaluarsa.
9. Sistem akan memunculkan informasi-informasi kartu kredit.
Disini akan muncul 3 kasus yang mungkin, yaitu: K2:
Rekening tidak sah, K3: Dana yang ada tidak
mencukupi serta K4: Sistem kredit tidak dapat diakses.
10. Sistem akan menghasilkan pemesanan kursi pesawat untuk
penumpang.
11. Sistem akan menghasilkan dan menampilkan kode kursi
penumpang.
12. Penumpang akan menerima tiket dan kode kursi.
13. Use Case berakhir.
Contoh Kasus : Use Case
Pembelian Tiket
Aliran-aliran alternatif :
K1: Penerbangan yang Diharapkan Tidak Tersedia
1. Sistem akan menampilkan pesan bahwa tidak ada penerbangan yang
tersedia untuk kota-kota asal dan kota-kota tujuan, tanggal pemberangkatan,
serta tanggal tiba.
2. Pengguna mengkonfirmasi pesan.
3. Aliran kembali ke aliran primer (langkah 2)
K2 : Rekening Tidak Sah
1. Sistem akan memunculkan bahwa kartu kredit yang dimiliki penumpang
tidak sah.
2. Aliran kembali ke aliran primer (langkah 8).
3. Jika sampai 3 kali aliran 2 tidak dapat berlangsung dengan baik, munculkan
pesan konfirmasi bahwa penumpang tidak dapat memesan tiket yang
diharapkannya.
4. Kembali ke aliran primer (langkah 2).
Contoh Kasus : Use Case
Pembelian Tiket
Aliran-aliran alternatif :
K3: Dana yang Ada Tidak Mencukupi
1. Sistem akan memunculkan pesan bahwa dana yang dimiliki penumpang
tidak mencukupi untuk melakukan transaksi pemesanan tiket.
2. Aliran kembali ke aliran primer (langkah 2).
K4: Sistem Kredit Tak Dapat Diakses.
1. Sistem akan menampilkan pesan bahwa sistem kredit tidak dapat
diakses.
2. Aliran kembali ke aliran primer (langkah 8).
3. Jika sampai 3 kali aliran 2 tidak dapat berlangsung dengan baik,
munculkan pesan konfirmasi bahwa penumpang tidak dapat memesan
tiket yang diharapkannya.
4. Kembali ke aliran primer (langkah 2).
Relasi
Fungsi relasi : menghubungkan Use Case dan aktor.
Relasi dalam model UML :
Relasi Asosiasi : relasi yang terjadi antara aktor dengan use case.
Asosiasi digambarkan dengan garis lurus dengan kepala panah disalah satu ujungnya.
Relasi Cakupan (include relationship) : memungkinkan suatu use case untuk menggunakan
fungsionalitas yang disediakan oleh use case lainnya.
Ex: jika dua atau lebih use case memiliki sejumlah besar fungsi yang identik, fungsionalitas-
fungsionalitas yang sama ini dapat dipisahkan menjadi use case tersendiri.
Masing-masing use case yang lain dapat memiliki include relationship dengan use case yang
baru.
Relasi Perluasan (extends relationship)
Memungkin suatu use case memiliki kemungkinan untuk memperluas fungsionalitas yang
disediakan use case yang lainnya.
Ini agak mirip dengan include relationship namun pada extend relationship tidak harus
terjadi apa yang diharapkan.
Relasi Generalisasi : memperlihatkan bahwa beberapa aktor atau use case memiliki sesuatu hal
yang bersifat umum.
Ex : Penumpang bisa dibedakan menjadi penumpang pribadi dan penumpang perusahaan
yang mungkin bisa dibedakan lagi menjadi perusahaan pribadi dan pemerintah.

Anda mungkin juga menyukai