BAB II LANDASAN TEORI
2.12 Tools Perancangan Sistem
2.12.3 Diagram & Notasi (UML)
Unified Modeling Language (UML) menjelaskan semua elemen model, tersusun oleh tipe dari setiap diagram, yang digunakan. Beberapa elemen bisa menjadi bagian dari diagram yang lainnya. (Grady Booch, 2001, p. 160)
1. Use Case Diagram
Use case diagram merupakan pemodelan untuk menggambarkan kelakuan (behavior) sistem yang akan dibuat. Diagram ini
mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem yang akan dibuat, atau dengan kata lain use case diagram ini digunakan untuk mengetahui fungsi apa saja yang ada dalam sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut. (Sugiarti, 2013, p. 41)
Contoh usecase diagram
Gambar 2.12 Contoh gambar Usecase Diagram
Tabel 2.2 Komponen Dasar Usecase Diagram
Simbol Nama komponen Keterangan
Actor
(staf, admin_database)
Orang yang berinteraksi dengan dengan sebuah sistem informasi.
Use Case (open ticket, ask
incident, dll)
Suatu aksi atau interaksi antara aktor dengan sistem. Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit
System
staff_ admin_
login_
manage all configuration item
open ticket configuration item
atau aktor, biasanya dinyatakan dengan menggunakan kata kerja diawal frase nama use case
Asosiasi
Komunikasi antara aktor dan use case yang berpartisipasi pada use case atau memiliki interaksi dengan aktor
<<include>>
(merupakan stereotype)
Relasi use case tambahan kesebuah use case dimana use case yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat dijalankan use case ini.
<<extend>>
(merupakan stereotype)
Relasi use case tambahan kesebuah use case dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu.
2. Potensial Objek
Potensial objek dengan menentukan objek-objek potensial yang akan menjadi bahan untuk membuat class diagram, dengan cara mengumpulkan objek kata benda yang telah terindentifikasi pada proses sebelumnya kemudian diseleksi sehingga menghasilkan daftar objek yang diusulkan.
3. Class Diagram
Class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Diagram kelas mendeskripsikan jenis-jenis objek didalam sistem dan berbagai hubungan statis yang terdapat dantara mereka. Diagram kelas juga menunjukan property dan operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubungan objek tersebut. (Sugiarti, 2013, p. 57).
Contoh class diagram dari CMS
Gambar 2.13 Contoh Class Diagram
Tabel 2.3 Komponen dasar Class Diagram
Simbol Nama komponen Keterangan
operasi
Kelas pada struktur sistem. Atribut diatas adalah salah satu contoh dari atribut yang terdapat dalam sebuah class, seperti id_ci, id_componen, type, dll. configuration item +id_config item +mac address +ip address +name +location +vendor +ect *attribut +create() +update() +delete() +ect *operator() componen +id component +type component +create() +update() +ect *operator() user_ +nik +user name +password +departement_ +level user +ect *attribut +login() +logout() +ect *operator() 1..* 1 1 1..* nama class +Attribute1 +Attribute2 +Operation1() +Operation2()
Package
Package merupakan sebuah bungkusan dari satu atau lebih kelas.
Asosiasi
Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity
Directed asosiasi
Relasi antar kelas dengan makna kelas yang satu digunakan oleh kelas lain, asosiasi biasanya juga disertai denga multiplicity.
Generalisasi
Relasi antar kelas dengan makna generalisasi – spesialisasi (umum - khusus).
Defendency
Relasi antar kelas dengan makna kebergantungan antar kelas
Aggregasi
Relasi antar kelas dengan makna semua bagian (whole-part)
a. Unary Relationship
Menurut buku karya Abhijit dan Ravindra yang berjudul Developing Web-Enabled Decision Support System Using Access, VB.NET, and ASP.NET (2007) menyebutkan bahwa terdapat tiga jenis hubungan / relationship antara setiap entitas, yaitu hubungan unary relationship, binary relationship, dan ternary relationship. Hubungan binary relationship memiliki hubungan diantara dua tipe entitas yang
Package1
1..* 1
berbeda. Hubungan unary relationship adalah hubungan antara dua dari tipe entitas yang sama. Ternary relationship memiliki hubungan diantara banyak entitas. (Ahuja, 2007, p. 40)
Hubungan antara entitas ini memiliki tiga jenis hubungan pada umunya yaitu one-to-one,one-to-many, dan many-to-many.
Gambar 2.14 Contoh Hubungan Antar Entitas
Berikut ini merupakan contoh bentuk unary association pada pembahasan tema penulis yaitu configuration management system (CMS).
Gambar 2.15 Contoh Hubungan Sifat Unary
4. Matriks CRUD
Dalam buku yang berjudul “System Analysis & Design
Method” menyebutkan bahwa CRUD matriks merupakan suatu tabel
yang berisi baris dimana menunjukan suatu entitas (dan kemungkinan atribut). Kolom berisi lokasi, dan sel-sel diantara kolom & baris merupakan level dokumen akses, dimanan C = create, R = read, U = update, D = Delete. (Whitten, 2004, p. 331)
Tabel 2.4 Contoh Tabel CRUD Matrix
Location Entity –
Attribute
Staf Admin Manajer
Departemen
id_departemen R CRUD CRUD
nama_departemen R CRUD CRUD
ci id_ci nama_ci status_ci critical_business purchase_date brand asset_tag warranty_date start_installation description_ci id_user id_category id_type 1..* 1..*
5. Mapping Class Diagram
Tahap selanjutnya yaitu melakukan mapping class diagram dengan menggunakan Mapping Problem Domain Object to an RDBMS Format, dengan tujuan untuk mengoptimalkan database yang terbentuk. Menurut Dennis, Wixom, & Tegarden (2009) cara memetakan problem domain object dalam class diagram ke format RDBMS ada 8 (delapan) tahapan, yaitu:
1. Petakan semua class konkret dalam problem domain ke tabel RDBMS. Jika, problem domain class abstrak memiliki beberapa subclass langsung, petakan juga ke dalam tabel RDBMS.
2. Petakan atribut bernilai tunggal ke dalam kolom tabel.
3. Petakan metode untuk disimpan di dalam prosedur atau modul program.
4. Petakan agregasi yang bernilai tunggal dan hubungan asosiasi dengan kolom yang dapat menyimpan primary key dari tabel terkait, yaitu, menambahkan foreign key ke dalam tabel. Lakukan hal tersebut untuk kedua sisi yang berhubungan.
5. Petakan atribut multi-valued dan buat hubungan one-to-many dari tabel yang asli ke tabel yang baru.
6. Petakan multi-valued agregasi dan hubungan asosiasi ke tabel asosiatif baru yang menghubungkan dua tabel asli bersama-sama. Masukkan primary key dari kedua tabel tersebut ke dalam
tabel asosiatif yang baru, yaitu menambahkan foreign key ke tabel.
7. Untuk hubungan agregasi dan asosiasi dengan tipe campuran, copy primary key dari sisi single-valued (1..1 atau 0..1) ke kolom baru pada tabel yang memiliki hubungan multi-valued (1..* atau 0..*) yang dapat menyimpan primary key dari tabel terkait. Yaitu menambahkan foreign key ke tabel multi-valued. 8. Untuk hubungan generalisasi, pastikan bahwa primary key dari
subclass sama dengan primary key dari superclass. Multiplicity dari hubungan asosiasi yang baru dari subclass ke superclass harus 1..1. Jika superclass konkret, yaitu mereka dapat menginisiasi sendiri, maka multiplicity dari superclass ke subclass adalah 0..*, jika tidak konkret hubungannya adalah 1..1. Selanjutnya, Exclusive-or (XOR) harus ditambahkan ke dalam asosiasi. Lakukan langkah ini untuk setiap superclass. 9. Atau, sesuaikan inheritance dengan menyalin atribut superclass
ke semua subclass dan hapus superclass dari desain. (Dennis A, 2009, p. 377)
67 6. Activity Diagram
Activity diagram adalah menggambarkan workflow (aliran kerja) atau aktifitas dari sebuah sistem atau proses bisnis. Activity diagram menggabarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, keputusan yang mungkin terjadi, dan bagaimana mereka berkahir. . (Sugiarti, 2013, p. 75)
Contoh activity diagram dari CMS adalah sebagai berikut :
Gambar 2.17 Contoh Activity Diagram
Tabel 2.5 Notasi Activity Diagram
Sumber: Whitten, Bentley dan Dittman (2004)
SIMBOL KETERANGAN
Initial node
Activity
Contoh aktivitas pada gambar diatas
actor login choose menu input form submit Aktivitas
adalah staf melakukan login, memilih menu, dll.
Decision Activity
Fork Node
Activity Final Node
Initiated Activities
7. Sequence Diagram
Sequence Diagram menggambarkan kelakuan / perilaku objek pada use case dengan mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar objek. Untuk menggambarkan sequence diagram harus diketahui objek-objek yang terlibat dalan sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansi menjadi objek itu. (Sugiarti, 2013, p. 69)
Contoh sequence diagram dari CMS adalah sebagai berikut :
Gambar 2.18 Contoh Sequece Diagram
: admin_ : From : control : entity / data
1 : input data()
2 : cek complete data()
3 : submit data()
Tabel 2.6 Notasi Sequece Diagram
Sumber: Whitten, Bentley dan Dittman (2004)
SIMBOL KETERANGAN
Life Line
Message
Contoh pada gambar diatas misalnya (menu change control, memilih ticket, isi form, dll)
Message
Pesan balik, contohnya seperti (menampilkan halaman,dll).
Object
Boundary / Batasan
Control