22. Class Return memiliki Attribute id_return sebagai primary key, dan Attribute id_user, dan id_perangkat sebagai foreign key serta memiliki Attribute
kondisi. Class return memiliki method input_return, view_return, edit_return, dan delete_return. Class Return memiliki multiplicity terhadap
class User yaitu satu sampai banyak ke satu sampai banyak, dan terhadap
class Perangkat yaitu satu sampai banyak ke satu sampai banyak.
4.2.2.3 Matriks CRUD
Setelah class diagram dibuat maka harus dioptimasi dengan matriks CRUD. Matriks CRUD adalah sebuah tabel yang menunjukan proses yang terjadi,
setiap baris menunjukan proses yang terjadi dan kolom menunjukan class dimana lokasi proses tersebut berada. Berikut ini adalah CRUD matrix dari class diagram
sistem informasi inventori:
Tabel 4.15 Matriks CRUD
Location
Entity - Attribute
Admin Service
Delivery Service
Assurance Mover Manajer
Pegawai
nip nama_pegawai
email divisi
unit_kerja CRUD
CRUD CRUD
CRUD CRUD
CRUD R
R R
R R
R
Jabatan
id_jabatan nama_jabatan
CR CR
CR
User
id_username username
password CR
CR CR
CR CR
CR CR
CR CR
CR CR
CR R
R R
R
Level
id_level nama_level
CR CR
CR
Perangkat
id_perangkat nama_perangkat
keterangan id_sn
id_vendor id_kategori
id_stok id_harga
CRUD CRUD
CRUD CRUD
CRUD CRUD
CRUD CRUD
CRUD R
R R
R R
R R
R R
Serial number
id_sn id_perangkat
sn CRUD
CRUD CRUD
CRUD R
R R
R
Harga
id_harga id_perangkat
harga tanggal_harga
CR CR
CR CR
CR R
R R
R R
Stok
id_stok id_perangkat
stok tanggal_stok
CRU CRU
CRU CRU
CRU R
R R
R R
Vendor
id_vendor nama_vendor
email no_telepon
id_kota CRUD
CRUD CRUD
CRUD CRUD
CRUD
Kota
id_kota nama_kota
id_provinsi CR
CR CR
CR
Provinsi
id_provinsi nama_provinsi
CRUD CRUD
CRUD
Kategori
id_kategori nama_kategori
CRUD CRUD
CRUD
Penerimaan
no_po tanggal_po
CRUD CRUD
CRUD R
R R
Booking
id_booking circuit_name
RU RU
RU CR
CR CR
R R
R R
R R
Pelanggan
idwo_pelanggan nama_pelanggan
pic_pelanggan email
no_hp id_kota
CR CR
CR CR
CR CR
CR
Pick up
CR R
R
id_pick_up tanggal_pick_up
CR CR
R R
R R
FE
id_fe nama_fe
alamat email
no_hp CR
CR CR
CR CR
CR R
R R
R R
R
Pengiriman
id_pengiriman nama_pengirim
tanggal_pengiriman no_awb
CR CR
CR CR
CR R
R R
R R
R R
R R
R
Regional
id_regional nama_regional
CR CR
CR
Penerima
id_penerima nama_penerima
no_hp id_kota
CR CR
CR CR
CR
Mover
id_mover nama_mover
pic_mover email
no_telepon id_kota
CR CR
CR CR
CR CR
CR
Return
id_return CR
CR
kondisi CR
Keterangan: C = Create, R = Read, U = Update, dan D = Delete.
4.2.2.4 Optimalisasi Basis Data
Setelah CRUD matriks dibuat, maka tahapan selanjutnya adalah optimalisasi basis data menggunakan Relational Database Management System
RDBMS :
Gambar 4.31
Transformasi Class diagram ke RDBMS
Pada Gambar 4.31 adalah proses transformasi Class diagram ke RDBMS. Tabel Pengiriman memiliki relasi dengan tabel Regional, Penerima, dan Mover.
Tabel Pick up memiliki relasi dengan tabel FE. Tabel Booking memiliki relasi dengan tabel pelanggan. Tabel Kota memiliki relasi dengan tabel Provinsi. Tabel
Perangkat memiliki relasi dengan tabel Harga. Tahapan dari transformasi tersebut yaitu:
1. Class Harga, Serial Number, Stok, Vendor, dan Perangkat dipetakan dalam problem domain
ke tabel RDBMS. Jika, problem domain class abstrak memiliki beberapa subclass langsung, petakan juga ke dalam tabel RDBMS
misalnya class Kota dengan Propinsi, Pick Up dengan FE, Regional, Mover, Penerima, dengan class Pengiriman.
2. Atribut bernilai tunggal dipetakan ke dalam kolom tabel. 3. 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.
Gambar 4.32
Diagram RDBMS
Pada Gambar 4.32 merupakan realisasi dari Gambar 4.31. Pada gambar ini terjadi transformasi Tabel Pengiriman yang memiliki relasi dengan tabel
Regional, Penerima, dan Mover. Tabel FE telah bergabung dengan tabel Pick up . Tabel Kota memiliki relasi dengan tabel Provinsi. Tabel Perangkat memiliki relasi
dengan tabel Harga.
4.2.2.5 Skema Database