Unified Modeling Language (UML) Unified Modeling Language (UML)
Pendahuluan Pendahuluan
U M L ( U n i f i e d M o d e l i n g L a n g u a g e )
U M L ( U n i f i e d M o d e l i n g L a n g u a g e ) adalah sebuah bahasa yangadalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented).
pengembangan software berbasis OO (Object-Oriented).
U
UMM LL sendiri juga memberikan standar penulisan sebuah sistem bluesendiri juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen- bahasa program yang spesifik, skema database, dan komponen- komponen y
komponen yang diperlang diperlukan dalamukan dalam sistem sosistem softwareftware
U
UMM LL adalah salah satu tool / model untuk merancang pengembanganadalah salah satu tool / model untuk merancang pengembangan software yang berbasis object oriented
software yang berbasis object oriented
U
UMM LL sebagai sebuah bahasa yang memberikan vocabulary dan tatanansebagai sebuah bahasa yang memberikan vocabulary dan tatanan penulisan kata-kata dalam ‘MS Word’ untuk kegunaan komunikasi.
penulisan kata-kata dalam ‘MS Word’ untuk kegunaan komunikasi.
Sebuah bahasa model adalah sebuah bahasa yang mempunyai Sebuah bahasa model adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan / aturan penulisan serta secara fisik vocabulary dan konsep tatanan / aturan penulisan serta secara fisik mempresentasikan dari sebuah sistem.
mempresentasikan dari sebuah sistem.
U
UMM LL adalah sebuah bahasa standard untuk pengembangan sebuahadalah sebuah bahasa standard untuk pengembangan sebuah software yang dapat menyampaikan bagaimana membuat dan software yang dapat menyampaikan bagaimana membuat dan membentuk model-model, tetapi tidak menyampaikan apa dan kapan membentuk model-model, tetapi tidak menyampaikan apa dan kapan model yang seharusnya dibuat yang merupakan salah satu proses model yang seharusnya dibuat yang merupakan salah satu proses implementasi pengembangan software.
implementasi pengembangan software.
U
UMM LL tidak hanya merupakan sebuah bahasa pemograman visual saja,tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented dihubungkan secara langsung ke dalam sebuah object-oriented database. Begitu juga mengenai pendokumentasian dapat dilakukan database. Begitu juga mengenai pendokumentasian dapat dilakukan seperti; requirements, arsitektur, design, source code, project plan,
seperti; requirements, arsitektur, design, source code, project plan, tests,tests, dan prototypes.
dan prototypes.
Untuk dapat memahami UML membutuhkan bentuk konsep dari sebuah Untuk dapat memahami UML membutuhkan bentuk konsep dari sebuah bahasa model, dan mempelajari 3 (tiga) elemen utama dari UML seperti bahasa model, dan mempelajari 3 (tiga) elemen utama dari UML seperti building block, aturan-aturan yang menyatakan bagaimana building building block, aturan-aturan yang menyatakan bagaimana building block diletakkan secara bersamaan, dan beberapa mekanisme umum block diletakkan secara bersamaan, dan beberapa mekanisme umum (common).
(common).
Building blocks Building blocks
Tiga macam yang terdapat dalam building block adalah : Tiga macam yang terdapat dalam building block adalah :
B e n d a / T h i n g s ,
B e n d a / T h i n g s , adalah abstraksi yang pertama dalam sebuah modeladalah abstraksi yang pertama dalam sebuah model
H u b u n g a n / R e l a t i o n s h i p s ,
H u b u n g a n / R e l a t i o n s h i p s ,sebagaisebagai alat koalat komunikasi munikasi dari bendari benda-benda,da-benda,
B a g a n / D i a g r a m s .
B a g a n / D i a g r a m s . sebagai kumpulan / group dari benda-benda/things.sebagai kumpulan / group dari benda-benda/things.
Benda/Things Benda/Things Adalah
Adalah hal hal yang yang sangat sangat mendasar mendasar dalam dalam model model UML, UML, juga juga merupakamerupakann bagian paling statik dari sebuah model, serta menjelaskan elemen- bagian paling statik dari sebuah model, serta menjelaskan elemen- elemen lainnya dari sebuah konsep dan atau fisik.
elemen lainnya dari sebuah konsep dan atau fisik.
Bentuk dari beberapa benda/thing adalah sebagai berikut:
Bentuk dari beberapa benda/thing adalah sebagai berikut:
C l a s s e s ,C l a s s e s , yang diuraikan sebagai sekelompok dari object yangyang diuraikan sebagai sekelompok dari object yang mempunyai atribute, operasi, hubungan yang semantik. Sebuah mempunyai atribute, operasi, hubungan yang semantik. Sebuah kelas mengimplementasikan 1 atau lebih interfaces. Sebuah kelas kelas mengimplementasikan 1 atau lebih interfaces. Sebuah kelas dapat digambarkan sebagai sebuah persegi panjang, yang dapat digambarkan sebagai sebuah persegi panjang, yang mempunyai sebuah nama, atribute, dan metoda mempunyai sebuah nama, atribute, dan metoda pengoperasiannya.
pengoperasiannya.
Interfaces,Interfaces, merupakan sebuah antar-muka yang menghubungkanmerupakan sebuah antar-muka yang menghubungkan dan melayani antar kelas dan atau elemen. ‘Interface’ /
dan melayani antar kelas dan atau elemen. ‘Interface’ / antar-mukaantar-muka mendefinisikan sebuah set / kelompok dari spesifikasi mendefinisikan sebuah set / kelompok dari spesifikasi pengoperasian, umumnya digambarkan dengan sebuah lingkaran pengoperasian, umumnya digambarkan dengan sebuah lingkaran yang disertai dengan namanya. Sebuah antar-muka berdiri sendiri yang disertai dengan namanya. Sebuah antar-muka berdiri sendiri dan umumnya merupakan pelengkap dari kelas atau komponen.
dan umumnya merupakan pelengkap dari kelas atau komponen.
C o l l a b o r a t i o n ,C o l l a b o r a t i o n , yang didefinisikan dengan interaksi dan sebuahyang didefinisikan dengan interaksi dan sebuah kumpulan / kelompok dari kelas-kelas/elemen-elemen yang kumpulan / kelompok dari kelas-kelas/elemen-elemen yang bekerja secara bersama-sama. Collaborations mempunyai struktur bekerja secara bersama-sama. Collaborations mempunyai struktur dan dimensi. Pemberian sebuah kelas memungkinkan dan dimensi. Pemberian sebuah kelas memungkinkan berpartisipasi didalam beberapa collaborations dan digambarkan berpartisipasi didalam beberapa collaborations dan digambarkan dengan sebuah ‘elips’ dengan garis terpotong-potong.
dengan sebuah ‘elips’ dengan garis terpotong-potong.
U s e c a s e s ,U s e c a s e s , adalah rangkaian/uraian sekelompok yang salingadalah rangkaian/uraian sekelompok yang saling terkait dan membentuk sistem secara teratur yang dilakukan atau terkait dan membentuk sistem secara teratur yang dilakukan atau diawasi oleh sebuah aktor. ‘use case’ digunakan untuk diawasi oleh sebuah aktor. ‘use case’ digunakan untuk membentuk tingkah-laku benda/ things dalam sebuah model serta membentuk tingkah-laku benda/ things dalam sebuah model serta di realisasikan oleh sebuah collaboration. Umumnya ‘use case’
di realisasikan oleh sebuah collaboration. Umumnya ‘use case’
digambarkan dengan sebuah ‘elips’ dengan garis yang solid, digambarkan dengan sebuah ‘elips’ dengan garis yang solid, biasanya mengandung nama.
biasanya mengandung nama.
N o d e s ,N o d e s , merupakan fisik dari elemen-elemen yang ada pada saatmerupakan fisik dari elemen-elemen yang ada pada saat dijalankannya sebuah sistem, contohnya adalaha sebuah dijalankannya sebuah sistem, contohnya adalaha sebuah komputer, umumnya mempunyai sedikitnya memory dan komputer, umumnya mempunyai sedikitnya memory dan processor. Sekelompok komponen mungkin terletak pada sebuah processor. Sekelompok komponen mungkin terletak pada sebuah node dan juga mungkin akan berpindah dari node satu ke node node dan juga mungkin akan berpindah dari node satu ke node lainnya. Umumnya node ini digambarkan seperti kubus serta lainnya. Umumnya node ini digambarkan seperti kubus serta hanya mengandung namanya.
hanya mengandung namanya.
Hubungan / Relationship Hubungan / Relationship Ada 4 mac
Ada 4 macam hubungan dam hubungan didalam pengidalam penggunaan UML, ygunaan UML, yaitu;aitu;
D e p e n d e n c y ,D e p e n d e n c y , adalah hubungan semantik antara dua benda/thingsadalah hubungan semantik antara dua benda/things yang mana sebuah benda berubah mengakibatkan benda satunya yang mana sebuah benda berubah mengakibatkan benda satunya akan berubah pula. Umumnya sebuah dependency digambarkan akan berubah pula. Umumnya sebuah dependency digambarkan sebuah panah dengan garis terputus-putus.
sebuah panah dengan garis terputus-putus.
Association, hubungan antar benda struktural yang terhubungAssociation, hubungan antar benda struktural yang terhubung diantara obyek. Kesatuan obyek yang terhubung merupakan diantara obyek. Kesatuan obyek yang terhubung merupakan hubungan khusus, yang menggambarkan sebuah hubungan hubungan khusus, yang menggambarkan sebuah hubungan struktural diantara seluruh atau sebagian. Umumnya assosiation struktural diantara seluruh atau sebagian. Umumnya assosiation digambarkan dengan sebuah garis yang dilengkapi dengan digambarkan dengan sebuah garis yang dilengkapi dengan sebuah label, nama, dan status hubungannya.
sebuah label, nama, dan status hubungannya.
Generalizations,Generalizations, adalah menggambarkan hubungan khususadalah menggambarkan hubungan khusus dalam obyek anak/child yang menggantikan obyek parent / induk . dalam obyek anak/child yang menggantikan obyek parent / induk . Dalam hal ini, obyek anak memberikan pengaruhnya dalam hal Dalam hal ini, obyek anak memberikan pengaruhnya dalam hal struktur dan tingkah lakunya kepada obyek induk. Digambarkan struktur dan tingkah lakunya kepada obyek induk. Digambarkan dengan garis panah.
dengan garis panah.
Realizations,Realizations, merupakan merupakan hubungan hubungan semantik semantik antaraantara pengelompokkan yang menjamin adanya ikatan diantaranya.
pengelompokkan yang menjamin adanya ikatan diantaranya.
Hubungan ini dapat diwujudkan diantara interface dan kelas atau Hubungan ini dapat diwujudkan diantara interface dan kelas atau elements, serta antara use cases dan collaborations. Model dari elements, serta antara use cases dan collaborations. Model dari sebuah hubungan realization.
sebuah hubungan realization.
Bagan/Diagram Bagan/Diagram
UML s
UML sendiendiri terri terdiri diri atasatas pengepengelomplompokkaokkan dian diagramgram-dia-diagram gram sistsistemem menurut aspek atau sudut pandang tertentu. Diagram adalah yang menurut aspek atau sudut pandang tertentu. Diagram adalah yang menggambarkan permasalahan maupun solusi dari permasalahan suatu menggambarkan permasalahan maupun solusi dari permasalahan suatu model. UML mempunyai 9 diagram, yaitu; use-case, class, object, state, model. UML mempunyai 9 diagram, yaitu; use-case, class, object, state, sequence, collaboration, activity, component, dan deployment diagram.
sequence, collaboration, activity, component, dan deployment diagram.
Use Case Diagram, menggambarkan sekelompok use cases danUse Case Diagram, menggambarkan sekelompok use cases dan aktor yang disertai dengan hubungan diantaranya. Diagram use aktor yang disertai dengan hubungan diantaranya. Diagram use cases ini menjelaskan dan menerangkan kebutuhan / requirement cases ini menjelaskan dan menerangkan kebutuhan / requirement yang diinginkan/ dikehendaki user/pengguna, serta sangat yang diinginkan/ dikehendaki user/pengguna, serta sangat berguna dalam menentukan struktur organisasi dan model dari berguna dalam menentukan struktur organisasi dan model dari pada sebuah sistem.
pada sebuah sistem.
Class Diagram, yang Class Diagram, yang memperlihatkamemperlihatkan n struktur struktur statis statis dari dari kelaskelas actual didalam sistem.
actual didalam sistem.
Object Diagram, yang merupakan varian dari kelas diagram yangObject Diagram, yang merupakan varian dari kelas diagram yang memperlihatkan lebih detail banyaknya obyek yang mengintantiasi memperlihatkan lebih detail banyaknya obyek yang mengintantiasi (instances) kelas.
(instances) kelas.
State Diagram, yang memperliatkan semua keadaan (state) yangState Diagram, yang memperliatkan semua keadaan (state) yang dapat dimiliki oleh kelas dan event yang dapat merubah keadaan dapat dimiliki oleh kelas dan event yang dapat merubah keadaan tersebut.
tersebut.
Sequence Diagram, yang memperlihatkan kolaborasi dinamikSequence Diagram, yang memperlihatkan kolaborasi dinamik antara objek-objek dengan suatu urutan pesan (a sequence of antara objek-objek dengan suatu urutan pesan (a sequence of message) antar objek tersebut.
message) antar objek tersebut.
Collaboration Diagram,Collaboration Diagram, yang memperlihatkan kolaborasi dinamikyang memperlihatkan kolaborasi dinamik antar objek tanpa memperhatikan aspek waktu.
antar objek tanpa memperhatikan aspek waktu.
Activity Diagram, yang memperlihatkan aliran urutan aktifitas.Activity Diagram, yang memperlihatkan aliran urutan aktifitas.
Component Diagram,Component Diagram, yang memperlihatkan struktur fisik dariyang memperlihatkan struktur fisik dari source code dalam terminology code components. Komponen source code dalam terminology code components. Komponen berisi informasi tentang logical class dapat berupa komponen berisi informasi tentang logical class dapat berupa komponen source code, komponen biner atau komponen yang dapat source code, komponen biner atau komponen yang dapat dieksekusi.
dieksekusi.
Deployment Diagram,Deployment Diagram, yang memperlihatkan arsitektur fisik dariyang memperlihatkan arsitektur fisik dari hardware dan software pada sistem.
hardware dan software pada sistem.
TEORI UML TEORI UML
2
2..11.. PPeennjjeellaassaan n UUMMLL
Pemecahan masalah utama dari Object Oriented biasanya dengan Pemecahan masalah utama dari Object Oriented biasanya dengan pengga
penggambaran dalam bentuk model. Model abstrakmbaran dalam bentuk model. Model abstrak (semu) merupa(semu) merupakan gambaran detailkan gambaran detail dari inti masalah yang ada, umumnya sama seperti refleksi dari problem yang ada pada dari inti masalah yang ada, umumnya sama seperti refleksi dari problem yang ada pada kenyataan
kenyataan. Beberapa . Beberapa modeling modeling tool yang dtool yang dipakai adaipakai adalah bagian dlah bagian dari dasarari dasar UML,UML, kependekan dari
kependekan dari United Modeling LanguageUnited Modeling Language..
UML
UML terdterdiri atasiri atas bebbeberaperapa diagra diagram, yaiam, yaitu :tu :
Diagram Use CaseDiagram Use Case
Diagram ClassDiagram Class
Diagram PackageDiagram Package
Diagram SequenceDiagram Sequence
Diagram CollaborationDiagram Collaboration
Diagram StateChartDiagram StateChart
Diagram ActivityDiagram Activity
Diagram DeploymentDiagram Deployment
Semakin kompleks bentukan sistem yang akan dibuat, maka semakin sulit Semakin kompleks bentukan sistem yang akan dibuat, maka semakin sulit kom
komunikunikasiasi antaantara orra orang-ang-oranorang yang yang saling saling terkg terkait dalait dalam peam pembumbuatan datan danan pengemb
pengembangan sangan software oftware yang ayang akan dibukan dibuat. Pada at. Pada masa lamasa lalu,lu, UMLUML mempunymempunyai perananai peranan sebagai software blueprint (gambaran) language untuk analisis sistem, designer, dan sebagai software blueprint (gambaran) language untuk analisis sistem, designer, dan programmer. Sedangkan pada saat ini, merupakan bagian dari software trade (bisnis programmer. Sedangkan pada saat ini, merupakan bagian dari software trade (bisnis software). UML memberikan jalur komunikasi dari sistem analis kemudian designer, software). UML memberikan jalur komunikasi dari sistem analis kemudian designer, lalu programmer mengenai rancangan software yang akan dikerjakan.
lalu programmer mengenai rancangan software yang akan dikerjakan.
Salah satu pemecahan masalah Object Oriented adalah dengan Salah satu pemecahan masalah Object Oriented adalah dengan menggu
menggunakannakan UML. Oleh karena itu orUML. Oleh karena itu orang-oranang-orang yang berminag yang berminat dalam mempet dalam mempelajarilajari UML
UML harus mengetharus mengetahui dasar-dasaahui dasar-dasar mengenai Objr mengenai Object Oriented Solvect Oriented Solving (pemecahing (pemecahanan masalah OO). Tahap pertama, pembentukan model.
masalah OO). Tahap pertama, pembentukan model. Model Model adalah gambaran abstrak adalah gambaran abstrak dari suatu dasar masalah. Dan dunia nyata atau tempat dimana masalah itu timbul bisa dari suatu dasar masalah. Dan dunia nyata atau tempat dimana masalah itu timbul bisa disebut dengan
disebut dengan domain. domain. Model mengandung obyek-obyek yang beraktifitas denganModel mengandung obyek-obyek yang beraktifitas dengan saling mengirimkan messages (pesan-pesan). Obyek mempunyai sesuatu yang diketahui saling mengirimkan messages (pesan-pesan). Obyek mempunyai sesuatu yang diketahui
(atribut /attributes) dan sesuatu yang dilakukan (behaviors atau operations). Attributes (atribut /attributes) dan sesuatu yang dilakukan (behaviors atau operations). Attributes hanya berlaku dalam ruang lingkup obyek itu sendiri (state). Lalu “blue print” dari hanya berlaku dalam ruang lingkup obyek itu sendiri (state). Lalu “blue print” dari suatu obyek adalah Classes (kelas). Obyek merupakan bagian-bagian dari kelas.
suatu obyek adalah Classes (kelas). Obyek merupakan bagian-bagian dari kelas.
2
2..11..11.. DDiiaaggrraam Um Usse Ce Caassee
Diagram Use Case menggambarkan apa saja aktifitas yang dilakukan oleh Diagram Use Case menggambarkan apa saja aktifitas yang dilakukan oleh suatu sistem dari sudut pandang pengamatan luar. yang menjadi persoalan itu
suatu sistem dari sudut pandang pengamatan luar. yang menjadi persoalan itu apa yangapa yang dilakukan
dilakukan bukanbukanbagaimana melakukannyabagaimana melakukannya..
Diagram Use Case dekat kaitannya dengan kejadian-kejadian. kejadian Diagram Use Case dekat kaitannya dengan kejadian-kejadian. kejadian (scenario) merupakan contoh apa yang terjadi ketika seseorang berinteraksi dengan (scenario) merupakan contoh apa yang terjadi ketika seseorang berinteraksi dengan sistem. untuk lebih memperjelas lihat gambaran suatu peristiwa untuk sebuah klinik sistem. untuk lebih memperjelas lihat gambaran suatu peristiwa untuk sebuah klinik kesehatan di bawah ini :
kesehatan di bawah ini :
“Pasien menghubungi klinik untuk membuat janji (appointment) dalam
“Pasien menghubungi klinik untuk membuat janji (appointment) dalam pemeriksaan tahunan. Receptionist mendapatkan waktu yang luang pada pemeriksaan tahunan. Receptionist mendapatkan waktu yang luang pada buku jadwal dan memasukkan janji tersebut ke dalam waktu luang itu.”
buku jadwal dan memasukkan janji tersebut ke dalam waktu luang itu.”
contoh kegiatan pasien yang membuat contoh kegiatan pasien yang membuat janjijanji..
Gam
Gambar bar 2.2. 11
Diagram Use Case berguna dalam tiga hal : Diagram Use Case berguna dalam tiga hal :
MMeennjjeellaasskkaan n ffaassiilliittaas s yyaanng g aadda a ((rreeqquuiirreemmeennttss)) UUssee Case baru selalu menghasilkan fasilitas baru ketika sistem di analisa, dan design Case baru selalu menghasilkan fasilitas baru ketika sistem di analisa, dan design menjadi lebih jelas.
menjadi lebih jelas.
Komunikas dengan klienKomunikas dengan klien
Penggunaan notasi dan simbol dalam diagram Use Case membuat Penggunaan notasi dan simbol dalam diagram Use Case membuat pengembang lebih mudah berkomunikasi dengan klien-kliennya.
pengembang lebih mudah berkomunikasi dengan klien-kliennya.
Membuat test dari kasus-kasus secara umumMembuat test dari kasus-kasus secara umum
Kumpulan dari kejadian-kejadian untuk Use Case bisa dilakukan test kasus Kumpulan dari kejadian-kejadian untuk Use Case bisa dilakukan test kasus layak untuk kejadian-kejadian tersebut.
layak untuk kejadian-kejadian tersebut.
2
2..11..22.. DDiiaaggrraam m CCllaassss
Diagram Clas
Diagram Class memberikas memberikan pandangann pandangan secara luas dari suatu sistsecara luas dari suatu sistem denganem dengan menunjukan kelas-kelasnya dan hubungan mereka. Diagram Class bersifat statis;
menunjukan kelas-kelasnya dan hubungan mereka. Diagram Class bersifat statis;
menggambarkan hubungan apa yang terjadi bukan apa yang terjadi jika mereka menggambarkan hubungan apa yang terjadi bukan apa yang terjadi jika mereka berhubungan
berhubungan..
Diagram Class mempunyai 3 macam relationalships (hubungan), sebagai Diagram Class mempunyai 3 macam relationalships (hubungan), sebagai berikut :
berikut :
AAssssoocciiaattiioonn SSuuaattuu
hubu
hubungangann antarantara bagiaa bagian dari dua kn dari dua kelaselas. Terjad. Terjadii associationassociation antara dua kelas jikaantara dua kelas jika salah satu bagian dari kelas mengetahui yang lainnya dalam melakukan suatu salah satu bagian dari kelas mengetahui yang lainnya dalam melakukan suatu kegiatan. Di dalam diagram, sebuah
kegiatan. Di dalam diagram, sebuah associationassociation adalah penghubung yangadalah penghubung yang menghubungkan dua kelas.
menghubungkan dua kelas.
AAggggrreeggaattiioonn SSuuaattuu
association
association dimana salah satu kelasnya merupakan bagian dari suatu kumpulan.dimana salah satu kelasnya merupakan bagian dari suatu kumpulan.
Aggregation
Aggregation memiliki titik pusat yang mencakup keseluruhan bagian. Sebagaimemiliki titik pusat yang mencakup keseluruhan bagian. Sebagai contoh : OrderDetail merupakan kumpulan dari Order.
contoh : OrderDetail merupakan kumpulan dari Order.
GGeenneerraalliizzaattiioonn SSuuaattuu
hubungan turunan dengan mengasumsikan satu kelas merupakan suatu
hubungan turunan dengan mengasumsikan satu kelas merupakan suatu superClasssuperClass (kelas super) dari kelas yang lain.
(kelas super) dari kelas yang lain. GeneralizationGeneralization memiliki tingkatan yangmemiliki tingkatan yang berpusat pada
berpusat pada superClasssuperClass. Contoh : Payment adalah. Contoh : Payment adalah superClasssuperClass dari Cash, Check,dari Cash, Check, dan Credit.
dan Credit.
Untuk tambahan bahwa
Untuk tambahan bahwa associationassociation mempunyai 2 titik. Salah satu titik bisamempunyai 2 titik. Salah satu titik bisa memiliki label untuk menjelaskan
memiliki label untuk menjelaskan associationassociation tersebut, contoh : OrderDetail adalah linetersebut, contoh : OrderDetail adalah line Item untuk setiap permintaan.
Item untuk setiap permintaan.
Panah
Panah navigabilitynavigability (pengatur alur arah) dalam suatu(pengatur alur arah) dalam suatu associationassociation menggambarkan arah mana
menggambarkan arah mana associationassociation dapat ditransfer atau disusun. Seperti dalamdapat ditransfer atau disusun. Seperti dalam contoh : OrderDetail dapat disusun dari item-nya, namun tidak bisa sebaliknya. Panah contoh : OrderDetail dapat disusun dari item-nya, namun tidak bisa sebaliknya. Panah ini juga
ini juga menjelaskan simenjelaskan siapa “memiliki” apa “memiliki” impleimplementasi darimentasi dari associationassociation; dalam kasus ini; dalam kasus ini OrderDetail memiliki Item.
OrderDetail memiliki Item. AssociationAssociation tanpa arah panah merupakantanpa arah panah merupakan bidirectionalbidirectional (bolak-balik).
(bolak-balik).
Multiplicity
Multiplicity dari suatu titik dari suatu titik associationassociation adalah angka kemungkinan bagianadalah angka kemungkinan bagian dari hubungan kelas dengan single
dari hubungan kelas dengan single instanceinstance (bagian) pada titik yang lain.(bagian) pada titik yang lain. MultiplicityMultiplicity berupa single number (angka tunggal) atau range number (angka batasan). Pada contoh, berupa single number (angka tunggal) atau range number (angka batasan). Pada contoh,
hanya bisa satu ‘Customer’ untuk setiap ‘Order’, tapi satu ‘Customer’ hanya bisa hanya bisa satu ‘Customer’ untuk setiap ‘Order’, tapi satu ‘Customer’ hanya bisa memiliki beberapa ‘Order’.
memiliki beberapa ‘Order’.
Tabel di bawah mengenai
Tabel di bawah mengenai multiplicitymultiplicityyang sering digunakan :yang sering digunakan :
Ta
Tabebel 2.l 2. 11
Tabel
TabelMultiplicityMultiplicity..
M
Muullttiipplliicciittiieess aarrttiinnyyaa 0..1
0..1 Nol atau satu bagian. NotasiNol atau satu bagian. Notasi n . . m n . . mmenerangkanmenerangkan n nsampaisampai m m bagian.
bagian.
0..*
0..* or or ** Tak hingga Tak hingga pada jangkauan bagian pada jangkauan bagian (termasuk kosong).(termasuk kosong).
1
1 Tepat satu bagianTepat satu bagian 1..*
1..* Sedikitnya hanya satu bagianSedikitnya hanya satu bagian
Setiap diagram Class memiliki
Setiap diagram Class memiliki ClassClass (kelas),(kelas), associationassociation, dan, dan multiplicitymultiplicity..
Sedangkan
Sedangkan navigabilitynavigability (alur arah) dan(alur arah) dan rolerole (kegiatan) merupakan(kegiatan) merupakan optionaloptional (tidak (tidak diharuskan).
diharuskan).
Contoh Diagram Class transaksi Pembelian barang.
Contoh Diagram Class transaksi Pembelian barang.
Gam
Gambar bar 2.2. 22
2
2..11..33.. PPaacckkaagge de daan On Obbjjeecctt
Untuk mengatur pengorganisasian diagram Class yang
Untuk mengatur pengorganisasian diagram Class yang komplekskompleks, dapat, dapat dilakukan pengelompokan kelas-kelas berupa
dilakukan pengelompokan kelas-kelas berupa packagpackage (paket-paket).e (paket-paket). PackagePackage adalahadalah
kumpulan ele
kumpulan elemen-elemmen-elemen logikaen logika UML. Gambar di bawUML. Gambar di bawah ini mengenai mah ini mengenai model bisnisodel bisnis dengan pengelompokan kelas-kelas dalam bentuk paket-paket :
dengan pengelompokan kelas-kelas dalam bentuk paket-paket :
Contoh Diagram Package.
Contoh Diagram Package.
Gam
Gambar bar 2.2. 33
Ada jenis khusus dari diagram Class yaitu diagram Object. Kegunaannya Ada jenis khusus dari diagram Class yaitu diagram Object. Kegunaannya untuk penjelasan yang sedikit dengan relasi yang sulit, khususnya relasi rekursif.
untuk penjelasan yang sedikit dengan relasi yang sulit, khususnya relasi rekursif.
Lihat gambar dibawah, diagram Class kecil menunjukkan bahwa Lihat gambar dibawah, diagram Class kecil menunjukkan bahwa
‘department’ dapat mengandung banyak ‘department’ yang lain.
‘department’ dapat mengandung banyak ‘department’ yang lain.
Class yang relasinya rekursif.
Class yang relasinya rekursif.
Gam
Gambar bar 2.2. 44
Setiap tingkatan pada diagram berpengaruh pada
Setiap tingkatan pada diagram berpengaruh pada single instancesingle instance (bagian(bagian tunggal)
tunggal). Nama bagian dig. Nama bagian digarisbawahi dalarisbawahi dalam diagramam diagram UML. Untuk UML. Untuk Class nameClass name (nama(nama kelas) maupun
kelas) maupun instance nameinstance name (nama bagian) bisa mengambil dari diagram Object(nama bagian) bisa mengambil dari diagram Object selama
selama arti diagrarti diagram tersebam tersebut masih jelut masih jelas.as.
Instance name
Instance name memiliki huruf yang digarisbawahi.memiliki huruf yang digarisbawahi.
Gam
Gambar bar 2.2. 55
2
2..11..44.. DDiiaaggrraam m SSeeqquueennccee
Diagram Class dan diagram Object merupakan suatu gambaran
Diagram Class dan diagram Object merupakan suatu gambaran model statismodel statis..
Namun ada juga yang bersifat
Namun ada juga yang bersifat dinamisdinamis,, sesepepertrtii Diagram InteractionDiagram Interaction..
Diagram sequence merupakan salah satu diagram Interaction yang Diagram sequence merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukan;
menjelaskan bagaimana suatu operasi itu dilakukan; messagemessage (pesan) apa yang dikirim(pesan) apa yang dikirim dan kapan pelaksanaannya. Diagram ini diatur berdasarkan waktu. Obyek-obyek yang dan kapan pelaksanaannya. Diagram ini diatur berdasarkan waktu. Obyek-obyek yang berkaitan dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan berkaitan dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang terurut.
waktu terjadinya dalam pesan yang terurut.
Di bawah ini adalah diagram Sequence untuk pembuatan Hotel Reservation.
Di bawah ini adalah diagram Sequence untuk pembuatan Hotel Reservation.
Obyek yang mengawali urutan
Obyek yang mengawali urutan messagemessage adalah ‘aReservation Window’.adalah ‘aReservation Window’.
Contoh Diagram Sequence ‘Pemesanan kamar di Hotel’.
Contoh Diagram Sequence ‘Pemesanan kamar di Hotel’.