2011
Unified Modeling Language Metode Perancangan Program
Kelompok 10:
http://contoh.in
Andika Nugraha
(1401094756)
Alfred Mansel
(1401095506)
Daniel Sidarta
(1401096433)
Marcell Bonfilio
(1401094850)
Bina Nusantara University 12/20/2011
Pendahuluan
Unified Modeling Language (UML) adalah bahasa standar untuk menulis rancangan peranti lunak. UML dapat digunakan untuk memvisualisasikan, membuat spesifikasi, membangun, dan mendokumentasikan sistem peranti lunak. Di kehidupan nyata saat ini UML sangat berguna terutama dalam membangun sebuah sistem, di mana UML ini merupakan bahasa yang dapat menghubungkan pemikiran terutama rancangan yang diinginkan oleh client dengan desainernya. Namun, seiring berjalannya waktu UML juga terus dikembangkan oleh para desainer-desainer yang menguasai bidang ini dan beberapa desainer memiliki pemikiran yang berbeda dalam menerapkan UML. Akhirnya ada beberapa dasar teori UML yang memiliki perbedaan. Maka dalam makalah ini penulis ingin membahas mengenai diagram-diagram UML berdasarkan teori-teori dari perancang UML terkenal. Diagram yang akan dibahas pada makalah ini yaitu Class diagram, Use case diagram, Sequence diagram, Activity diagram, dan Collaboration diagram. Dalam makalah ini penulis menyajikan deskripsi masingmasing diagram per teori disertai contoh masing-masing diagram.
1 http://contoh.in
1. Teori Booch, Rumbaugh, & Jacobson a. Class Diagram Menurut teori Booch , class diagram menampilkan kumpulan kelas-kelas, antarmuka, dan kolaborasi dan hubungan mereka. Diagram ini adalah diagram yang paling umum ditemui pada pemodelan sistem berorientasi objek. Class diagram digunakan dalam melihat sudut pandang sistem secara statik. Class diagram yang memasukan kelas aktif menangani sudut pandang proses sistem secara statik. Contoh class diagram : Pelanggan -uang : int -pesanan : string 1
1
Outlet
1
1 1
Mesin kasir -uang : int -struk : string
Kasir
1
Dapur -stok makanan : string -stok minuman : string
Gambar 1.a.1: Class Diagram
2 http://contoh.in
b. Use Case Diagram Menurut teori Booch, use case diagram adalah kumpulan gambaran relasi antara use case dengan aktor. Diagram ini sangat penting untuk mengorganisasi suatu sistem. Use case diagram digunakan untuk melihat sudut pandang sistem secara statik. Diagram ini sangat penting dalam mengorganisasi dan pemodelan perilaku suatu sistem.
Actor
Gambar 1.b.1: Aktor
Aktor adalah segala sesuatu yang berinteraksi dengan use case. Aktor digambarkan menyerupai orang. Use Case
Gambar 1.b.2: Use case
Use case adalah deskripsi dari sekumpulan urutan tindakan. Use case digambarkan menggunakan elips.
Gambar 1.b.3: Communicate
Communicate adalah garis yang menghubungkan antara aktor dengan use case. «extends»
Gambar 1.b.4: Extend
Extend digunakan untuk menetapkan bahwa use case yang dituju memperpanjang perilaku dari sumber use case . <
>
3 http://contoh.in
Gambar 1.b.5: Include
Include digunakan untuk menetapkan bahwa use case awal secara eksplisit menggabungkan perilaku dari use case yang ditunjuk oleh use case awal. Contoh use case diagram :
System Pemesanan Makanan Restoran Siap Saji
Memesan makanan
Menyiapkan makanan Pelanggan
Kasir
Melakukan pembayaran
Mengambil makanan
Gambar 1.b.6: Use Case Diagram
4 http://contoh.in
c. Sequence Diagram Menurut teori Booch, sequence diagram adalah diagram interaksi yang menekankan pada pengiriman
waktu pesan. Sequence diagram menunjukan sekumpulan objek
dan pesan yang dikirim dan diterima oleh objeknya. Objek umumnya dinamai atau anonim dari kelasnya, tapi juga merepresentasikan contoh dari objek lainnya, contohnya kolaborasi, komponen, dan simpul. Contoh sequence diagram :
Proses Memesan Makanan : Kasir
: Pelanggan
: Mesin kasir
Menyapa pelanggan Menanyakan Pesanan
Memesan makanan Mendata pemesanan
Gambar 1.c.1: Sequence Diagram
5 http://contoh.in
Proses Menyiapkan Makanan : Pelanggan
: Dapur
: Kasir Menyiapkan makanan Menyediakan makanan
Menyajikan makanan
Gambar 1.c.2: Sequence Diagram
Proses Melakukan Pembayaran : Kasir
: Pelanggan
: Mesin kasir Menginput pesanan
Menginformasikan total biaya Membayar
Menampilkan total biaya
Menghitung total biaya
Menginput uang pelanggan Menghitung kembalian Menampilkan jumlah kembalian Mencetak struk Mengambil uang kembalian
Memberikan uang kembalian & struk Mengambil uang kembalian & struk
Gambar 1.c.3: Sequence Diagram
6 http://contoh.in
Proses Pengambilan Makanan : Kasir
: Pelanggan
Mengambil Makanan
Gambar 1.c.4: Sequence Diagram
d. Collaboration Diagram Menurut teori
Booch,
collaboration diagram adalah
diagram interaksi yang
menekankan pada struktur organisasinya dari objek yang dikirim dan diterima oleh pesan. Collaboration diagram terdiri dari objek, hubungan antara objek dan pesan yang dikirim dan diterima oleh objek. Objek biasa dinamai atau anonim dari kelasnya. Contoh collaboration diagram :
Proses Memesan makanan 1: Menyapa pelanggan 2: Menanyakan pesanan 3: Memesan makanan
: Pelanggan
: Kasir
: 3.1
ta da
m
pe
n
na
a es
en
M
: Mesin Kasir 7 http://contoh.in
Gambar 1.d.1: Collaboration Diagram
Proses Menyiapkan Makanan 2.1: menyajikan makanan
: Pelanggan
: Kasir an an nan k a m aka an n m k p a yia ak en yedi M 1: Men 2:
: Dapur
Gambar 1.d.2: Collaboration Diagram
Proses Melakukan Pembayaran 2.2: Menginformasikan total biaya 7: Memberikan uang kembalian & struk 3: Membayar 8: Mengambil uang kembalian & struk
: Kasir
2: Menghitung total biaya 4: Menghitung kembalian
: Pelanggan
: Mesin kasir
an an an angg an s pe el ali ut ng p mb iaya lian p n ua ke l b ba gi en put ang tota kem M u 1: ngin bil ilkan lah k e am p um tru : M ng am n j k s 3.1 : Me en ilka eta 6 1: M mp enc 2. ena : M 5 :M 4.1
Gambar 1.d.3: Collaboration Diagram
8 http://contoh.in
Proses Pengambilan Makanan 1: Mengambil makanan : Kasir
: Pelanggan
Gambar 1.d.4: Collaboration Diagram
e. Activity Diagram Menurut teori Booch. activity diagram adalah diagram yang merupakan bentuk lain dari statechart diagram yang menunjukan aliran dari aktivitas ke aktivitas lainnya dalam sebuah system. Activity diagram menangani sudut pandang sistem secara dinamis. Mereka biasanya penting dalam pemodelan fungsi dalam sistem dan menekankan pada kontrol aliran di antara objek. Contoh activity diagram :
9 http://contoh.in
Pelanggan
Kasir
Mesin Kasir
Dapur
Menyapa customer
Menanyakan pesanan Memesan makanan
Mendata pemesanan
Menyiapkan makanan Menyediakan makanan Menyajikan makanan
Menginput pesanan Menghitung total biaya
Menginformasikan total biaya
Menampilkan total biaya
Membayar
Menginput uang pelanggan
Menghitung kembalian
Menampilkan jumlah kembalian
Mengambil uang kembalian
Mencetak struk
Memberikan uang kembalian dan struk
Mengambil uang kembalian & struk
Mengambil makanan
Gambar 1.e: Activity Diagram
10 http://contoh.in
2. Teori Lars Mathiassen a. Class Diagram
Menurut teori Mathiassen, class diagram adalah sekumpulan kelas dan hubungan timbal balik struktural. Dapat juga berisi perumpaan dalam bentuk objek dan tautan. Semua Aggregation dideskripsikan sebagai logical. Associations dan aggregations dapat memiliki hubungan banyaknya objek, seperti one to one, one to many, dan lainnya. Class diagram memiliki tingkat kedetilan. Tingkat kedetilan perlu dibuat sesuai kebutuhan. Class diagram dapat ditambahkan detail dengan menambahkan atribut dan operasi. Detail berikutnya dapat ditambahkan stereotype, kemudian dapat menambahkan jenis tipe atribut dan operasi parameter. Detail berikutnya dapat menambahkan hak akses public atau private pada atribut dan operasi. Contoh class diagram: sama dengan teori Booch.
b. Use Case Diagram Menurut teori Mathiassen, Use case diagram adalah aktor eksternal di dalam konteks suatu sistem, use case yang didukung oleh sistem, dan hubungan timbal balik struktural. Biasanya use case dijadikan satu grup karena relasinya terhadap sistem. Kumpulan use case dalam suatu sistem disebut use case group. «actor» Actor Gambar 2.b.1: Actor
11 http://contoh.in
Gambar 2.b.2: Alternative Actor
Use case group
Gambar 2.b.3: Kumpulan dari use case
Aktor dan use case adalah dua elemen utama di dalam deskripsi. Setiap use case dapat memungkinkan terjadinya beberapa kemungkinan akibat interaksi antara aktor dan sistem.
12 http://contoh.in
Contoh use case diagram:
System Pemesanan Makanan Restoran Siap Saji
Memesan makanan
Menyiapkan makanan
«actor» Kasir
«actor» Pelanggan
Melakukan pembayaran
Mengambil makanan
Gambar 2.b: Use case diagram
c. Sequence Diagram Menurut teori Mathiassen, sequence diagram adalah interaksi dari waktu ke waktu antara sekumpulan objek. Sequence diagram menitik beratkan pada waktu atau pada hubungan antar objek. Sequence diagram mendeskripsikan interaksi antara beberapa objek dalam kurun waktu tertentu. Di dalam sequence diagram, garis horizontal menunjukan partisipasi objek dan garis vertical menunjukan urutan / sequence dalam waktu. Interaksi ditunjukan dengan pesan yang saling dikirim oleh objek. Lifeline sebuah objek ditunjukan dengan batang. 13 http://contoh.in
Contoh sequence diagram: sama dengan teori Booch.
3. Teori Carol Britton a. Activity Diagram Menurut
teori Carol, activity diagram adalah diagram yang mirip dengan state
diagram namun lebih memfokuskan dengan pernyataan yang ada dan transisi dari pernyataan tersebut. Activity diagram merupakan cara yang paling efektif untuk menunjukkan pengerjaan suatu operasi. Dalam sebuah activity diagram semua pernyataan adalah aktivitas dan transisi antar aktivitas tersebut terjadi karena aktivitas tersebut telah selesai dijalani. Activity diagram biasanya digunakan untuk menunjukkan sebuah aliran internal dalam sebuah proses misalnya alur kerja dalam sebuah organisasi atau menjelaskan secara terperinci bagaimana sebuah operasi dapat berlangsung. Keuntungan dari activity diagram ini adalah: -
Activity diagram dapat memunculkan berbagai kemungkinan yang dapat terjadi kemudian kondisi yang memungkinkan barulah diambil.
-
Activity diagram dapat menggambarkan aktivitas-aktivitas yang dilakukan secara bersamaan
14 http://contoh.in
Gambar 3.a.1: Simbol-simbol dalam activity diagram
Contoh Activity diagram: sama dengan teori Booch.
b. Collaboration Diagram Menurut teori Carol, collaboration diagram adalah diagram yang menyerupai sequence diagram namun memiliki perbedaan yang spesifik yaitu tidak adanya timeline dalam colaborration diagram. Di dalam collaboration diagram terdapat pesan di antara objek yang satu dengan objek yang lain. Hal ini menunjukkan bahwa sebenarnya antara kelas yang satu dengan yang lain memiliki hubungan. Contoh collaboration diagram:
15 http://contoh.in
Proses Memesan makanan 1: Menyapa pelanggan 2: Menanyakan pesanan 3: Memesan makanan
«actor» «actor»
: Pelanggan ta
:
3.1
nda Me
an san e pem
: Kasir
: Mesin Kasir
Gambar 3.e.1: Collaboration diagram
Proses Menyiapkan Makanan 2.1: menyajikan makanan
«actor»
«actor»
: Pelanggan
nan n a k a a n m akan a k ap nm nyi diaka e 1: M enye 2: M
: Kasir
: Dapur Gambar 3.e.2: Collaboration diagram
16 http://contoh.in
Proses Melakukan Pembayaran 2.2: Menginformasikan total biaya 7: Memberikan uang kembalian & struk 3: Membayar 8: Mengambil uang kembalian & struk
«actor»
«actor»
2: Menghitung total biaya 4: Menghitung kembalian
: Pelanggan
: Kasir
: Mesin kasir
n ana nggan s e p a put ng pel balian n i eng t ua kem aya n 1: M ginpu uang otal bi balia t m il en : M ngamb pilkan lah ke 1 . 3 e k am jum 6: M : Men ilkan ak stru 2.1 namp encet e :M 5: M 4.1
Gambar 3.e.3: Collaboration diagram
Proses Pengambilan Makanan 1: Mengambil makanan
«actor»
«actor»
: Kasir
: Pelanggan
Gambar 3.e.4: Collaboration diagram
17 http://contoh.in
Bibliography Booch, G., Rumbaugh, J., & Jacobson, I. (1999). The Unified Modeling Language User Guide. Massachusetts: Addison Weslev. Britton, C., & Doake, J. (2005). A Student Guide to Object Oriented Development. Burlington: Elsevier. Mathiassen, L., Madsen, A. M., Nielsen, P. A., & Stage, J. (2000). Object Oriented Analysis and Design. Marko Publishing.
18 http://contoh.in