BAB II LANDASAN TEORI
6. Prosedur distribusi pembelian.”(2001:301)
2.8. Unified Models Language (UML) 1. Sejarah UML
2.8.2. Kegunaan UML
2.8.2.1. Diagram-diagram dan Notasi UML
Notasi adalah bahasa textual dan graphical untuk menggambar sebuah sistem dan konteksnya yang diformalisasikan secara terpisah.Tujuannya adalah untuk menyederhanakan komunikasi dan dokumentasi. Berikut ini merupakan beberapa diagram UML dan notasinya yang paling umum digunakan:
1. Use Case Diagram
Menurut Munawar (2005) use case diagram digunakan dalam menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa”
yang diperbuat oleh sistem, dan bukan “bagaimana”. Sebuah use case merepresantikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja dan sebagainya. Seorang actor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu.Use case diagram dapat sangat membantu bila kita sedang menyusun requirement (kebutuhan) sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada
pada sistem. Use case diagram menunjukkan aktor-aktor yang berinteraksi dengan sebuah sistem dan use case yang menjelaskan cara-cara seperti bagaimana interaksi mengambil tempat. Aktor-aktor dihubungkan dengan use case di mana mereka dihubungkan dengan sebuah asosiasi.
Berikut ini adalah daftar simbol-simbol yang digunakan dalam membuat use case diagram:
Tabel 2.2 Simbol-simbol Use Case Diagram Sumber: Munawar (2005)
No. Simbol Fungsi
1
System Boundary
Menyatakan batasan sistem dalam relasi dengan actor-actor yang menggunakannya (di luar sistem) dan fitur-fitur yang harus disediakan (dalam sistem). Digambarkan dengan segi empat yang membatasi semua use case dalam sistem terhadap pihak mana sistem akan beraksi.
2
Actor
Actor adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi. Bisa merupakan manusia, sistem atau device.
3
Use Case
Mengidentifikasi fitur kunci dari sistem.
Tanpa fitur ini, sistem tidak akan memenuhi permintaan user/aktor. Setiap use case mengekspresikan goal dari sistem yang harus dicapai. Diberi nama sesuai dengan goalnya dan digambarkan dengan elips dan nama di dalamnya.
4
Asosiation
Mengidentifikasikan interaksi antara setiap actor tertentu dengan setiap use casetertentu. Digambarkan sebagai garis antara actor terhadap use case yang bersangkutan.
5 Mengidentifikasi kelakuan yang harus
terpenuhi agar sebuah event dapat terjadi, kondisi ini adalah hubungan dua use case
System
actor
use case
<<include>>
dimana yang satu memanggil yang lain.
6 Menspesifikasikan bahwa use case target
memperluas prilaku dari use case sumber secara eksplisit.
2. Activity Diagram
MenurutMunawar (2005) Activity diagram secara grafis digunakan untuk menggambarkan rangkaian aliran aktifitas baik proses bisnis atau use case.
Adapun simbol-simbol dari activity diagram adalah sebagai berikut:
Tabel 2.4 Simbol-simbol Activity Diagram Sumber: Munawar (2005: 109)
No. Simbol Fungsi
1
Swimlane
Menujukkan siapa yang bertanggung jawab melakukan aktivitas dalam suatu diagram.
Menujukkan dimana aliran kerja itu berakhir.
4
Action State
Action state adalah langkah-langkah dalam sebuah activity. Action bisa terjadi saat memasuki activity, meninggalkan activity, atau pada event yang spesifik.
<<extend>>
Swimlane1
Activity1
5
Decission
Menunjukkan dimana sebuah keputusan perlu di buat dalam aliran kerja.
6
Synchronization
Synchronization menunjukkan dua atau lebih langkah dalam aliran kerja berjalan secara serentak.
3. Sequence Diagram
Menurut Munawar (2005) sequence diagram digunakan dalam menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu.Sequence diagram terdiri dari dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Bisa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang menjadi trigger aktifitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor memiliki lifeline vertikal.Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya.Sequence diagram menunjukkan sebuah interaksi antara peran atau objek-objek prototipe dalam sebuah kolaborasi. Setiap peran memiliki sebuah lifeline yang memanjang di bawahnya.Message direpresentasikan dengan panah berlabel yang digambarkan dari satu lifeline ke lifeline lain. Message memberikan sebuah aktivasi.Di ujung aktivasi, return message menunjukkan arah balik kendali
kepada objek yang memanggil. Parameter dan nilai return dapat ditunjukkan dalam message. Message dikirim ke objek dengan sendirinya untuk memberikan aktivasi nested. Munawar (2005) untuk looping dan conditional menggunakan interaction frame yaitu frame untuk memberi tanda pada sequence diagram.
Ada beberapa tujuan mengapa harus membuat Sequence Diagram diantaranya adalah
1. Menggambarkan interaksi antar objek di dalam dan di sekitar sistem termasuk pengguna, display, dan sebagainya, yang digambarkan dengan hubungan message dan waktu
2. Menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu.
Menurut Munawar (2005) ada 8 operator yang umum digunakan di interaction frame, yaitu:
a. Alt
Alternatif dari banyak fragmen. Hanya yang kondisinya yang True yang akan dijalankan.
b. Opt
Merupakan singkatan dari Optional. Fragmen yang dijalankan jika kondisi yang mendukungnya True.
c. Par
Singkatan dari paralel.Setiap fragmen dijalankan secara parallel.
d. Loop
Singkatan dari looping. Fragmen mungkin dijalankan berulang kali dan guard menunjukkan basis iterasi.
e. Region
Critical region. Fragmen hanya dapat mempunyai satu thread untuk menjalankannya.
f. Neg
Singkatan dari negative.Fragmen menunjukkan interaction yang salah.
g. Ref
Reference. Menunjukkan ke sebuah interaction yang salah didefinisikan pada diagram yang lain.
h. Sd
Sequence diagram.
Berikut ini adalah simbol-simbol yang digunakan dalam membuat Sequencediagram:
Tabel 2.3 Simbol-simbol Sequence Diagram Sumber: Wahono (2011)
Simbol Keterangan
Boundary biasanya berupa tepi dari sistem, seperti user interface atau suatu alat yang berinteraksi dengan sistem lain
sd Data Mo...
Boundary
Control merupakan elemen yang mengatur aliran dari informasi untuk sebuah scenario.
Perilaku bisnis umumnya diatur oleh objek ini
Entity biasanya elemen yang bertanggung jawab menyimpan data atau informasi. Ini dapat berupa beans / model objek
Actor1
Merepresentasikan entitas yang berada di luar sistem,mereka bisa berupa manusia, atau perangkat sistem lain.
Message1 Relasi ini digunakan untuk memanggil
operasi atau metode yang dimiliki oleh suatu objek. Message mengharuskan kita menyelesaikan proses baru kemudian memanggil proses berikutnya.
Message2
Relasi ini menunjukkan bahwa suatu objek hendak memanggil dirinya sendiri.
4. Class Diagram
MenurutMunawar (2005) Class merupakan sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut.Jadi, dapat disimpulkan bahwa class diagram menggambarkan
sd Data Mo...
Control
sd Data Mo...
Entity
sekumpulan class, interface, dan collaboration, dan relasi-relasinya.Class diagram juga menunjukkan atribut dan operasi dari sebuah objek class.Atribut adalah nama-nama properti dari sebuah kelas yang menjelaskan batasan nilainya dari properti yang dimiliki oleh sebuah kelas tersebut.Atribut dari suatu kelas merepresantikan properti-properti yang dimiliki oleh kelas tersebut.Atribut mempunyai tipe yang menjelaskan tipe instansiasinya.Operasi adalah implementasi dari layanan yang dapat diminta dari sebuah objek dari sebuah kelas yang menentukan tingkah lakunya.Sebuah operasi dapat berupa perintah ataupun permintaan.Sebuah permintaan tidak boleh mengubah kedudukan dari objek tersebut.Hanya perintah yang dapat mengubah keadaan dari sebuah objek.Keluaran dari sebuah operasi tergantung dari nilai keadaan terakhir dari sebuah objek. Class memiliki 3 area pokok, yaitu nama, atribut, dan fungsi.
Atribut dan metoda dapat memiliki salah satu sifat berikut ini:
a. Private : tidak dapat dipanggil dari luar class yang bersangkutan.
b. Protected : hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya.
c. Public : dapat dipanggil oleh siapa saja.
Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metoda.Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run time. Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package.
Hubungan antar class dapat digambarkan dengan notasi sebagai berikut:
1) Asosiasi
Hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Digambarkan dengan garis yang dilengkapi dengan sebuah label, nama dan status hubungannya. Panah navigability menunjukkan arah query antar antar class. Navigability merupakan sebuah properti dari role yang menandakan bahwa mungkin untuk melakukan navigasi uni-directional pada asosiasi dari objek sumber ke objek tujuan.
2) Agregasi
Hubungan yang menyatakan “bagian dari”, “bagian keseluruhan” atau “terdiri atas”.Suatu class atau objek mungkin atau bisa dibagi menjadi class atau objek tertentu, dimana class atau objek yang disebut kemudian merupakan bagian dari class atau objek yang terdahulu. Ada 2 jenis agregasi, yaitu:
a) Composite Aggregation
Disebut juga strong aggregation dimana objek “bagian” tidak dapat berdiri sendiri tanpa objek “keseluruhan”.Jadi, antara objek yang satunya saling terkait kuat dengan objek lainnya. Merupakan multiplicity pada satu composite dan dinotasikan dengan filled diamond. Menunjukkan bahwa composite secara tunggal memiliki the part.
b) Shared Aggregation
Merupakan multiplicity pada composite yang lebih dari 1 dan dinotasikan dengan hollow diamond. Menunjukkan bahwa the part bisa terdapat pada instance composite.
3) Generalisasi
Menggambarkan hubungan khusus dalam objek anak/child yang menggantikan objek parent/induk.Objek anak memberikan pengaruhnya dalam hal struktur dan tingkah lakunya kepada objek induk.
Tabel 2.4 Simbol-simbol Class Diagram Sumber: Munawar (2005)
Simbol Keterangan
Class
Class adalah sebuah blok yang terdiri dari 3 buah kotak.
Bagian atas yaitu nama class. bagian tengah mendefinisikan atribut class. Bagian akhir mendfinisikan method dari sebuah class.
Association
Dapat diartikan sebagai relasi. Digambarkan sebagai garis lurus antara dua kelas. Namun tidak berarti bahwa kelas satu memiliki kelas yang lain, tetapi kelas yang lain dapat berelasi juga dengan kelas yang sama.
Generalization
Menggambarkan hubungan khusus dalam objek anak/child yang menggantikan objek parent/induk.
1 *
Agregation
Hubungan yang menyatakan “bagian dari”, “bagian keseluruhan” atau “terdiri atas”. Suatu class atau objek mungkin atau bisa dibagi menjadi class atau objek tertentu, dimana class atau objek yang disebut kemudian merupakan bagian dari class atau objek yang terdahulu
class +Attribute1 +Attribute2 +Operation1() +Operation2()
2.9. Konsep Aplikasi Sistem dan Database