53
BAB 4
ANALISA DAN PERANCANGAN SISTEM INFORMASI
4.1 Usulan Prosedur Baru
4.1.1 Prosedur Pendaftaran Klien
Pada awalnya, klien akan melakukan pendaftaran dengan memasukkan nama lengkap, username, alamat serta nomor telepon. Lalu admin akan melakukan pengecekan, apakah klien sudah pernah terdaftar sebelumnya atau belum pernah. Jika sudah pernah terdaftar, admin akan menampilkan pesan yang berisi bahwa klien tersebut sudah pernah terdaftar, sedangkan jika belum pernah terdaftar, maka admin akan menginformasikan bahwa klien tersebut berhasil didaftarkan.
54
Klien
Admin
Klien
mengisi form pendaftaran untuk mendaftarkan diri
Admin melakukan pengecekan pada data klien
Admin menginformasikan bahwa klien berhasil
di daftarkan
Activity Pendaftaran Klien Baru
Tidak Ya
Admin menginformasikan bahwa klien sudah
pernah terdaftar
Terdaftar
Gambar 4.1 Activity Pendaftaran klien
4.1.2 Prosedur Pengajuan Konsultasi
Untuk melakukan pengajuan konsultasi, klien akan melakukan pengisian form pengajuan konsultasi dengan mengisi keluhan atau masalah yang dihadapi oleh klien ataupun dengan cara melakukan attachment file pada form untuk mengajukan penjadwalan konsultasi dengan pihak pengacara. Form tersebut akan ditampung oleh sistem.
Setelah itu, jika ternyata pengacara sedang tidak tersedia, maka admin akan langsung mengirim pesan kepada klien bahwa pengacara tidak tersedia. Namun, jika pengacara tersedia, maka admin akan
55
menampung form pengajuan konsultasi dan kemudian admin akan langsung melakukan pengecekan terhadap ketersediaan pengacara, admin akan memilih pengacara mana yang memiliki status available, status dikatakan available jika pengacara belum melebihi batas maksimal penerimaan penanganan klien. Kemudian admin akan melakukan notifikasi pada pengacara dan sekretaris yang terpilih, lalu pengacara akan melakukan respon dengan cara menentukan pilihan apakah kasus akan diterima atau tidak diterima. Jika tidak diterima, maka admin akan
kembali melakukan pemilihan ulang, karena pengacara yang
bersangkutan tidak menerima pengajuan tersebut. Namun jika pengacara bersangkutan menerima pengajuan tersebut, admin akan memberitahukan sekretaris dan mengirim data klien beserta dengan form pengajuan konsultasi dari klien.
Setelah sekretaris menerima data dan pengajuan klien dari
pengacara, sekretaris akan menghubungi klien tersebut dan
menginformasikan prosedur kerja penggunaan jasa pengacara (konsultasi atau penyewaan jasa/hirement). Jika klien tidak melakukan pembayaran, maka sekretaris akan menanyakan alasan kenapa pembayaran tidak dilakukan dan memberikan pilihan apakah pengajuan akan dilanjutkan atau dibatalkan. Jika klien memilih untuk membatalkan pengajuan, maka form pengajuan tersebut akan dibatalkan oleh pengacara bersangkutan dan kemudian admin akan melakukan penghapusan data pengajuan konsultasi tersebut, sedangkan jika klien memutuskan untuk melanjutkan pengajuan tersebut, klien akan diminta melakukan pembayaran.
. Setelah klien melakukan pembayaran jasa konsultasi (berdasarkan prosedur kerja), maka pengacara akan langsung melakukan penyusunan jadwal pertemuan konsultasi dan menginformasikannya kepada sekretaris, jadwal tersebut akan diinformasikan kepada klien. Jika klien tidak setuju dengan susunan jadwal tersebut, sekretaris akan menginformasikan kepada pengacara untuk melakukan penjadwalan ulang, sedangkan jika klien setuju dengan jadwal yang disediakan, maka sekretaris akan melakukan update jadwal pertemuan konsultasi.
56
Setelah sekretaris melakukan update jadwal konsultasi, admin akan menyimpan jadwal pertemuan konsultasi dan melakukan update status pengajuan konsultasi menjadi berstatus taken yang menandakan bahwa pengajuan tersebut sudah diambil dan diproses.
57
4.1.3 Prosedur Penyewaan Jasa / Hirement
Setelah klien dan pengacara melakukan konsultasi, pengacara akan menginformasikan prosedur penyewaan jasa/hirement. Jika klien memutuskan untuk tidak melakukan penyewaan jasa, maka sekretaris akan menyimpan rangkuman pertemuan konsultasi dan admin akan melakukan update pada activity klien. Namun jika klien memutuskan untuk melakukan penyewaan, maka klien diwajibkan untuk membayar biaya DP jasa pengacara, lalu sekretaris akan mencetak bukti pembayaran DP dan melakukan scan pada term of agreement yang kemudian akan disimpan.
Setelah itu, admin menerima bukti pembayaran DP dari sekretaris, maka kemudian admin akan melakukan pencatatan transaksi.
58
4.1.4 Prosedur Pelunasan dan End Case
Setelah proses bisnis selesai dilakukan antara pengacara dan klien, sekretaris akan mengirim tagihan pelunasan biaya penyewaan jasa pengacara kepada klien. Kemudian setelah pengacara menerima pelunasan pembayaran, sekretaris akan mencetak bukti pelunasan dan kemudian mengembalikan berkas-berkas milik klien. Setelah itu, admin akan memencatat transaksi dan menutup kasus.
Gambar 4.4 Activity Prosedur Pelunasan dan End Case
4.1.5 Prosedur Pengarsipan
Untuk menyimpan data kedalam database, user harus melakukan pengisian form pada halaman yang tersedia. Untuk klien, ketika akan melakukan upload file, akan disediakan halaman upload dimana kode dari file yang akan diupload telah autofill, jadi klien tinggal menetukan kategori file yang akan diupload tersebut.
59
Untuk melakukan pencarian data yang dibutuhkan, user akan masuk kedalam suatu form yang didalamnya terdapat kolom pengisian keyword yang dapat diisi sesuai apa yang dicari oleh user tersebut. Jika user tidak megetahui judul dari file yang akan dicari, user dapat mencarinya dengan memilih tombol advanced search yang akan menampilkan kategori-kategori secara spesifik berdasarkan tag, kemudian sistem akan menampilkan seluruh arsip yang memiiki tag tersebut.
4.2 Database Planning
4.2.1 Mission Statement
Mission Statement dari rancangan database desain adalah untuk mengintegrasikan seluruh data kedalam arsip yang dibutuhkan serta mempermudah proses penjadwalan antara klien dan pengacara untuk mendukung kegiatan bisnis pada Husin Helmi & Partners.
4.2.2 Mission Objective
Mission Objective dari rancangan basis data Husin Helmi & Partners adalah :
1. Pengolahan data (Insert, Update) Klien
2. Pengolahan data (Insert, Update) Pengacara
3. Pengolahan data (Insert, Update) Admin
4. Pengolahan data (Insert, Update) Sekretaris
5. Pengolahan data (Insert, Update, Delete) Pengajuan Konsultasi
6. Pengolahan data (Insert, Update) Jadwal
7. Pengolahan data (Insert, Update) Konsultasi
8. Pengolahan data (Insert, Update) Kasus
9. Pengolahan data (Insert, Update) Referensi
10.Pengolahan data (Insert, Update) Surat-surat
60
12.Pengolahan data (Insert, Update) Akte
4.3 System Definition
4.3.1 User View
User view : Admin, klien, pengacara, sekretaris
4.4 Requirement Collection and Analysis
4.4.1 Data Requirement
1. Klien
Informasi yang berisi tentang data-data klien. Data yang diperlukan antara lain id klien, nama, alamat dan tempat tanggal lahir.
2. Pengacara
Informasi yang berisi tentang data-data pengacara. Data yang dibutuhkan antara lain id pengacara, nama, alamat dan nomor telepon.
3. Admin
Informasi ang berisi tentang data-data admin. Data yang dibutuhkan antara lain id admin, nama, alamat dan nomor telepon.
4. Sekretaris
Informasi yang berisi tentang data-data sekretaris. Data yang dibutuhkan antara lain id sekretaris, nama, alamat dan nomor telepon.
5. Pengajuan konsultasi
Informasi yang berisi tentang data-data pengajuan konsultasi. Data yang dibutuhkan antara lain id pengajuan konsultasi dan tanggal pengajuan konsultasi.
6. Jadwal
Informasi yang berisi tentang data-data jadwal. Data yang dibutuhkan antara lain id jadwal, tanggal pertemuan, tempat pertemuan.
61
7. Konsultasi
Informasi yang berisi tentang data-data konsultasi. Data yang dibutuhkan antara lain id konsultasi, tempat konsultasi dan tanggal konsultasi.
8. Kasus
Informasi yang berisi tentang data-data kasus. Data yang dibutuhkan antara lain id kasus, kategori kasus dan jenis kasus.
9. Referensi
Informasi yang berisi tentang data-data referensi. Data yang dibutuhkan antara lain id referensi, jenis referensi dan tanggal referensi.
10.Surat-surat
Informasi yang berisi tentang data-data surat. Data yang dibutuhkan antara lain id surat, nama surat dan tanggal masuk surat. 11.Term of Agreement
Informasi yang berisi tentang data-data Term of Agreement. Data yang dibutuhkan antara lain id term of agreement, tanggal masuk, id klien dan id pengacara.
12.Akte
Informasi yang berisi tentang data-data akte. Data yang dibutuhkan antara lain id akte, nama akte dan jenis akte.
4.5 Database Design
Perancangan basis data meliputi 3 tahap, yaitu perancangan basis data konseptual, perancangan basis data logikal dan perancagan basis data fisikal.
4.5.1 Perancangan Basis Data Konseptual
Perancangan basis data konseptual merupakan proses pembuatan suatu model dari data yang digunakan dalam suatu organisasi, yang tidak
62
tergantung pada segala pertimbangan fisikal. Pada tahapan perancangan basis data konseptual, terdapat beberapa tahapan didalamnya, yaitu :
Mengidentifikasi tipe entitas
Mengidentifikasi tipe relasi
Mengidentifikasi dan menghubungkan atribut dengan tipe entitas atau
relationship
Menentukan domain atribut
Menentukan atribut candidate key, primary key dan alternate key
Mempertimbangkan penggunaan enchance modelling concepts
(langkah optional)
Mengecek model untuk redudansi
Validasi model data konseptual dengan transaksi user
Me-review model data konseptual lokal dengan user
4.5.1.1 Mengidentifikasi Tipe Entitas
Tabel 4.1 Tipe Entitas
Entity Name Description Alliases Occurrence
Klien Informasi yang berisi data
Klien
Client Semua Klien yang
melakukan pendaftaran
,pengajuan ataupun penyewaan
Pengacara Informasi yang berisi data
Pengacara
Lawyer Semua Pengacara
yang melakukan
penerimaan pengajuan konsultasi,dan
63
Entity Name Description Alliases Occurrence
menjalankan proses bisnis
Admin Informasi yang berisi data
Admin
Operator Semua Admin yang
Melakukan penghapusan
pengajuan konsultasi
Sekretaris Informasi yang berisi data
Sekretaris
Secretary Semua Sekretaris
yang Melakukan penjadwalan ,pencatatan, dan pengupdatean pada kasus Pengajuan konsultasi
Berisi tentang ringkasan
masalah yang klien hadapi
Pengajua n
Semua pengajuan
konsultasi yang
berisi ringkasan
masalah klien yang
bertujuan untuk
mendapatkan jadwal pertemuan konsultasi
Jadwal Informasi yang berisi data
jadwal
Penjadw alan
Semua jadwal yang
berisi tentang
pengaturan jadwal
pertemuan Klien
dengan pengacara
Konsultasi Informasi yang berisi data
Konsultasi
Pertemua n
Semua konsultasi
yang sudah di catat oleh sekretaris dan di
jadikan menjadi
64
Entity Name Description Alliases Occurrence
Klien
Kasus Informasi yang berisi data
Kasus
Case Semua data Kasus
yang berisi tentang detail kasus yang akan selalu di update seirimg berjalannya kasus
Referensi Arsipan Data referensi Arsip Semua referensi
yang berfungsi
sebagai bahan –
bahan pendukung
proses bisnis
Surat-surat Arsipan Surat – Surat Arsip Semua surat surat
yang dibutuhkan
ataupun muncul/dibuat
seiring berjalannya
proses bisnis yang
berfungsi sebagai
pemicu jalannya
proses tersebut
Term of
Agreement
Arsipan Surat Pengsetujuan kerja
Arsip Semua Term of
Agreement yang sudah di tanda tangani yang menandakan pengacara sudah tersewa
65
Entity Name Description Alliases Occurrence
Akte Arsipan Akte Semua Akte yang
berfungsi sebagai
bahan pada proses bisnis
4.5.1.2 Mengidentifikasi Tipe Relasi Atau Hubungan
66
Tabel 4.2 Multiplicity dari Tipe Relasi
Entity Name Multiplicity Relationship Multiplicity Entity Name
Klien 1..1 1..1 Melakukan Mengakses 1..* 1..* Pendaftaran_Konsultasi Referensi Admin 1..1 1..1 Mengatur Mengatur 1..* 1..* Pendaftaran_Konsultasi Referensi Pengacara 1..1 1..* 1..* 1..1 1..1 Memilih Menangani Menangani Mengakses Memiliki 1..* 1..* 1..* 1..* 1..1 Pendaftaran_Konsultasi Konsultasi Kasus Referensi Sekretaris Sekretaris 1..1 1..* 1..1 1..1 Mengatur Mencatat Membuat Membuat 1..* 1..* 1..* 1..* Jadwal_konsultasi Konsultasi Surat Akte Pendaftaran_konsultasi 1..* 1..* 0..* Menghasilkan Memiliki Memiliki 1..* 1..* 0..* Jadwal_konsultasi Konsultasi Kasus
Jadwal_konsultasi 1..* Menghasilkan 1..* Konsultasi
Konsultasi 1..1 1..1 0..1 Menghasilkan Menghasilkan Menghasilkan 0..1 0..1 0..1 Akte Surat ToA
67
4.5.1.3 Mengidentifikasi Dan Menghubungkan Atribut Dengan Tipe Entitas Atau Relationship
Tabel 4.3 Hubungan Atribut dengan Relationship
Entity Name Attributes Description Data Type
& Length
Nulls Multiv alued
Klien Id_klien Kode unik klien Char
(5)
No No
Nama Nama klien Varchar
(30)
No No
Username_klien Username untuk
klien
Varchar (20)
No No
Password_klien Password untuk
klien
Varchar (20)
No No
Alamat_klien Tempat tinggal
klien
Varchar (30)
No No
No_telp_klien No telp klien Varchar
(13)
No No
Tempat_lahir_klien Tempat lahir
klien
Varchar (30)
No No
Tanggal_lahir_klien Tanggal lahir
klien DATETIM E No No Profesi_klien Profesi pekerjaan klien Varchar (30) No No
Jenis_kelamin_klien Jenis kelamin
klien
Varchar (1)
68
Entity Name Attributes Description Data Type
& Length
Nulls Multiv alued
Pengacara Id_pengacara Kode unik
pengacara
Char
(5)
No No
No_pegawai No_pegawai Char (5) No No
Nama_pengacara Nama pengacara Varchar
(30) No No Username_pengacara Username pengacara Varchar (20) No No Password Password pengacara Varchar (20) No No
Alamat_pengacara Tempat tinggal
pengacara Varchar (30) No No No_telp_pengacara No telp pengacara Varchar (13) No No Tempat_lahir_pengac ara Tempat lahir pengacara Varchar (30) No No Tanggal_lahir_pengac ara Tanggal lahir pengacara DATETIM E No No Jenis_kelamin_pengac ara Jenis kelamin Pengacara Varchar (1) No No Status_pengacara Penanda banyaknya tugas yang diambil pengacara Varchar (1) No No
69
Entity Name Attributes Description Data Type
& Length
Nulls Multiv alued
Sekretaris Id_sekretaris Kode unik
sekretaris
Char
(5)
No No
No_pegawai No_pegawai Char
(5) No No Username_sekretaris Username sekretaris Varchar (20) No No Password Password sekretaris Varchar (20) No No
Nama_sekretaris Nama sekretaris Varchar
(30)
No No
Alamat_sekretaris Tempat tinggal
sekretaris Varchar (30) No No No_telp_sekretaris No telp sekretaris Varchar (13) No No Tempat_lahir_sekretar is Tempat lahir sekretaris Varchar (30) No No Tanggal_lahir_sekreta ris Tanggal lahir sekretaris DATETIM E No No Jenis_kelamin_sekreta ris Jenis kelamin sekretaris Varchar (1) No No
Status_sekretaris Status aktif/
tidak aktif sekretaris
Varchar (1)
70
Entity Name Attributes Description Data Type
& Length
Nulls Multiv alued
Admin Id_admin Kode unik
admin
Char
(5)
No No
No_pegawai No_pegawai Char
(5) No No Username_admin Username admin Varchar (20) No No
Password Password admin Varchar
(20)
No No
Nama_admin Nama admin Varchar
(30)
No No
Alamat_admin Tempat tinggal
admin
Varchar (30)
No No
No_telp_admin No telp admin Varchar
(13)
No No
Tempat_lahir_admin Tempat lahir
admin
Varchar (30)
No No
Tanggal_lahir_admin Tanggal lahir
admin
DATETIM E
No No
Jenis_kelamin_admin Jenis kelamin
admin
Varchar (1)
No No
Status_admin Status aktif /
tidak aktif admin
Varchar (1)
71
Entity Name Attributes Description Data Type
& Length Nulls Multiv alued Pendaftaran_ konsultasi Id_Pendaftaran_konsu ltasi Kode unik pengajuan konsultasi Char (5) No No
Id_Klien Kode unik klien Char
(5) No No Nama_Pendaftaran_k onsultasi Nama / judul konsultasi Varchar (20) No No Tanggal_ Pendaftaran _konsultasi Tanggal diajukannya pengajuan konsultasi DATETIM E No No Tanggal_Kadaluarsa Tanggal berakhirnya pengajuan konsultasi DATETIM E No No Status_Pendaftaran _konsultasi Status pengajuan konsultasi, diterima atau ditolak Varchar (1) No No
72
Entity Name Attributes Description Data Type
& Length Nulls Multiv alued mengenai masalah yang akan dikonsultasikan (500) Jadwal_kons ultasi
Id_Jadwal_ konsultasi Kode unik jadwal Char (5) No No Tempat_konsultasi Tempat perjanjian pertemuan klien dengan pengacara Varchar (30) No No Tanggal_konsultasi Tanggal perjanjian pertemuan klien dengan pengacara DATETIM E No No Status_jadwal_konsult asi Status bertemu atau tidak bertemu Varchar (1) No No
Konsultasi Id_Konsultasi Kode unik
konsultasi
Char
(5)
No No
Nama_Konsultasi Nama konsultasi Varchar
(30) No No Pembahasan_konsulta si Hasil pembahasan dari konsultasi yang Varchar (500) No No
73
Entity Name Attributes Description Data Type
& Length Nulls Multiv alued dilakukan Pertemuan Berisi pertemuan ke berapa dalam konsultasi Varchar (1) No No
Status_konsultasi Status konsultasi Varchar
(1)
No No
Kasus Id_Kasus Kode unik kasus Char
(5) No No Pembahasan_kasus Hasil pembahasan dari kasus yang dilakukan Varchar (500) No No
Nama_Kasus Nama Kasus Varchar
(30)
No No
Prosedur_perdata Tahap untuk
kasus perdata
Varchar
(2)
No No
Prosedur_pidana Tahap untuk
kasus pidana
Varchar
(2)
No No
Kategori_kasus Kategori kasus Varchar
(2)
No No
Status_kasus Status kasus Varchar
(1)
74
Entity Name Attributes Description Data Type
& Length
Nulls Multiv alued
Tanggal_Mulai Tanggal mulai
kasus DATETIM E No No Tanggal_Berakhir Tanggal berakhir kasus DATETIM E No No Term Of Agreement
Id_arsip No_arsip Char (5) No No
Id_ToA Kode unik
TermOfAgreem ent Char (5) No No Nama_toa Nama TermOfAgreem ent Varchar (30) No No Jenis_toa Jenis TermOfAgreem ent Varchar (1) No No Tanggal_pembuatan Tanggal pembuatan TermOfAgreem ent DATETIM E No No
Nama_pembuat Nama pembuat Varchar
(30)
No No
Referensi Id_Arsip No Arsip Char
(5)
No No
Id_Referensi Kode unik
Referensi
Char
(5)
75
Entity Name Attributes Description Data Type
& Length
Nulls Multiv alued
Nama_referensi Nama referensi Varchar
(30)
No No
Jenis_referensi Jenis referensi Varchar
(1)
No No
Tanggal_pembuatan Tanggal masuk
referensi
DATETIM E
No No
Nama_pembuat Nama pembuat Varchar
(30)
No No
Surat Id_Arsip No Arsip Char
(5)
No No
Id_Surat Kode unik Surat Char
(5)
No No
Nama_surat Nama surat Varchar
(30)
No No
Jenis_surat Jenis surat Varchar
(1) No No Tanggal_pembuatan Tanggal pembuatan surat DATETIM E No No
Nama_pembuat Nama pembuat Varchar
(30)
76
Entity Name Attributes Description Data Type
& Length
Nulls Multiv alued
Akte Id_Arsip No Arsip Char
(5)
No No
Id_Akte Kode unik Akte Char
(5)
No No
Nama_akte Nama akte Varchar
(30)
No No
Jenis_akte Jenis akte Varchar
(1) No No Tanggal_pembuatan Tanggal pembuatan akte DATETIM E No No
Nama_pembuat Nama pembuat Varchar
(30)
No No
4.5.3.1 Menentukan Domain Atribut
Tabel 4.4 Penentuan Domain Atribut
Entity Name Attributes Data Type &
Length Attribute Domains
Klien Id_Klien Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format KL[0-9][0-9][0-9]
Nama_klien Varchar(30) Diisi dengan karakter,
77
Entity Name Attributes Data Type &
Length Attribute Domains
Username_klien Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Password_klien Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Alamat_klien Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
No_telp_klien Varchar(13) Diisi dengan karakter,
maksimal 13 karakter
Tempat_lahir_klien Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Tanggal_lahir_klien Datetime Diisi dengan format tanggal
dd-mm-yyyy
Profesi_klien Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Jenis_kelamin_klien Varchar(1) Diisi dengan karakter, L / P,
L=Laki-laki, P=Perempuan
Pengacara No_Pegawai Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format NP[0-9][0-9][0-9]
Id_pengacara Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format PG[0-9][0-9][0-9]
Nama_pengacara Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Username Varchar(20) Diisi dengan karakter,
78
Entity Name Attributes Data Type &
Length Attribute Domains
Password Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Alamat Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
No_telp Varchar(13) Diisi dengan karakter,
maksimal 13 karakter
Tempat_lahir Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Tanggal_lahir Datetime Diisi dengan format tanggal
dd-mm-yyyy
Jenis_kelamin Varchar(1) Diisi dengan karakter, L / P,
L=Laki-laki, P=Perempuan
Status_pengacara Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Sekretaris No_Pegawai Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format NP[0-9][0-9][0-9]
Id_sekretaris Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format SK[0-9][0-9][0-9]
Username Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Password Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Nama_sekretaris Varchar(30) Diisi dengan karakter,
79
Entity Name Attributes Data Type &
Length Attribute Domains
Alamat Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
No_telp Varchar(13) Diisi dengan karakter,
maksimal 13 karakter
Tempat_lahir Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Tanggal_lahir Datetime Diisi dengan format tanggal
dd-mm-yyyy
Jenis_kelamin Varchar(1) Diisi dengan karakter, L / P,
L=Laki-laki, P=Perempuan
Status_sekretaris Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Admin No_Pegawai Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format NP[0-9][0-9][0-9]
Id_admin Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format AD[0-9][0-9][0-9]
Username Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Password Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Nama_admin Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Alamat Varchar(30) Diisi dengan karakter,
80
Entity Name Attributes Data Type &
Length Attribute Domains
No_telp Varchar(13) Diisi dengan karakter,
maksimal 13 karakter
Tempat_lahir Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Tanggal_lahir Datetime Diisi dengan format tanggal
dd-mm-yyyy
Jenis_kelamin Varchar(1) Diisi dengan karakter, L / P,
L=Laki-laki, P=Perempuan
Status_admin Varchar(1) Diisi dengan karakter,
maksimal 1 karakter Pendaftaran_k
onsultasi
Id_Pendaftaran_konsu ltasi
Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format PK[0-9][0-9][0-9] Nama_pendaftaran_k
onsultasi
Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Id_Klien Char
(5)
Diisi dengan karakter,
maksimal 5 karakter. Dengan Format KL[0-9][0-9][0-9]. Tanggal_Pendaftaran_
konsultasi
Datetime Diisi dengan format tanggal
dd-mm-yyyy
Tanggal_kadaluarsa Datetime Diisi dengan format tanggal
dd-mm-yyyy Status_Pendaftaran_k
onsultasi
Varchar(1) Diisi dengan karakter,
maksimal 20 karakter
81
Entity Name Attributes Data Type &
Length Attribute Domains
maksimal 500 karakter Jadwal_konsul
tasi
Id_Jadwal_konsultasi Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format JD[0-9][0-9][0-9]
Tempat_konsultasi Varchar(20) Diisi dengan karakter,
maksimal 20 karakter
Tanggal_konsultasi Datetime Diisi dengan format tanggal
dd-mm-yyyy Status_jadwal_konsult
asi
Varchar(1) Diisi dengan karakter,
maksimal 20 karakter
Konsultasi Id_Konsultasi Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format KO[0-9][0-9][0-9]
Nama_konsultasi Varchar(30) Diisi dengan karakter,
Maksimal 30 karakter Pembahasan_Konsult
asi
Varchar(500) Diisi dengan karakter,
Maksimal 500 karakter
Pertemuan Varchar(1) Diisi dengan karakter,
Maksimal 1 karakter
Status_konsultasi Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Kasus Id_Kasus Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format KS[0-9][0-9][0-9]
Nama_Kasus Varchar(30) Diisi dengan karakter,
82
Entity Name Attributes Data Type &
Length Attribute Domains
Pembahasan_kasus Varchar(500) Diisi dengan karakter,
maksimal 500 karakter.
Prosedur_perdata Varchar(2) Diisi dengan karakter,
maksimal 1 karakter.
Prosedur_pidana Varchar(2) Diisi dengan karakter
maksimal 1 karakter.
Kategori_kasus Varchar(2) Diisi dengan karakter,
maksimal 1 karakter
Status_kasus Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Tanggal_Mulai Datetime Diisi dengan format tanggal
dd-mm-yyyy
Tanggal_Berakhir Datetime Diisi dengan format tanggal
dd-mm-yyyy TermOfAgree
ment
Id_ToA Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format TA[0-9][0-9][0-9]
Id_Arsip Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format AR[0-9][0-9][0-9]
Nama_toa Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Jenis_toa Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Tanggal_pembuatan Datetime Diisi dengan format tanggal
dd-mm-yyyy
83
Entity Name Attributes Data Type &
Length Attribute Domains
maksimal 30 karakter
Referensi Id_Arsip Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format AR[0-9][0-9][0-9]
Id_Referensi Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format RE[0-9][0-9][0-9]
Nama_referensi Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Jenis_referensi Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Tanggal_pembuatan Datetime Diisi dengan format tanggal
dd-mm-yyyy
Nama_pembuat Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Surat Id_Arsip Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format AR[0-9][0-9][0-9]
Id_Surat Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format SU[0-9][0-9][0-9]
Nama_surat Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Jenis_surat Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Tanggal_pembuatan Datetime Diisi dengan format tanggal
84
Entity Name Attributes Data Type &
Length Attribute Domains
Nama_pembuat Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Akte Id_Arsip Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format AR[0-9][0-9][0-9]
Id_Akte Char(5) Diisi dengan karakter,
maksimal 5 karakter. Dengan format AK[0-9][0-9][0-9]
Nama_akte Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
Jenis_akte Varchar(1) Diisi dengan karakter,
maksimal 1 karakter
Tanggal_pembuatan Datetime Diisi dengan format tanggal
dd-mm-yyyy
Nama_pembuat Varchar(30) Diisi dengan karakter,
maksimal 30 karakter
4.5.3.2 Menentukan Atribut Candidate Key, Primary Key Dan
Alternate Key
Tabel 4.5 Penentuan Candidate Key, Primary Key dan Alternate Key
Entity Name Candidate Key Primary Key Alternate Key
Klien Id_Klien Username_klien Nama_klien Id_Klien Username_klien Nama_klien
85
Entity Name Candidate Key Primary Key Alternate Key
Id_Pengacara Username Id_Pengacara Sekretaris Id_Sekretaris Username No_Pegawai Id_Sekretaris Username Admin Id_Admin Username No_Pegawai Id_Admin Username Pendaftaran_konsult asi Id_Pendaftaran_kons ultasi Id_Pendaftaran_konsulta si -
Jadwal_konsultasi Id_Jadwal_konsultasi Id_Jadwal_konsultasi -
Konsultasi Id_Konsultasi Id_Konsultasi -
Kasus Id_Kasus Id_Kasus -
TermOfAgreement Id_Arsip Id_ToA Nama Id_Arsip Id_ToA Nama Referensi Id_Arsip Id_Referensi Nama Id_Arsip Id_Referensi Nama Surat Id_Arsip Id_Surat Nama Id_Arsip Id_Surat Nama Akte Id_Arsip Id_Akte Nama Id_Arsip Id_Akte Nama
86
Gambar 4.6 ERD dengan Primary Key
4.5.3.3 Mempertimbangkan Penggunaan Enchance Modelling
Concepts (Langkah Optional)
Tahap ini bertujuan untuk mempertimbangkan
penggunaan konsep pemodelan yang lebih tinggi, seperti menggunakan generalisasi/spesialisasi, dimana tahap ini bersifat optional.
87
Gambar 4.7 ERD dengan Penambahan Spesialisasi/Generalisasi
4.5.3.4 Mengecek Model Untuk Redudansi
1. Memeriksa ulang relasi one-to-one (1:1)
Tahap ini bertujuan untuk memeriksa adanya redudansi dalam model dan menghilangkannya. Untuk menguji model data dari redudansi akan dilakukan dengan memeriksa lagi relasi one-to-one (1:1) dengan tujuan menghindari dua entitas yang mewakili objek yang sama, dan menggabungkan dua entitas tersebut menjadi 1 entitas.
88
Gambar 4.8 Relasi antara ToA dan Kasus
Perbedaan antara entitas Term Of Agreement dengan Kasus adalah Term Of Agreement merupakan entitas yang digunakan untuk menyimpan surat perjanjian kerja antara klien dengan pengacara sebelum aktivitas dalam kasus dijalankan, sedangkan Kasus merupakan entitas yang digunakan untuk menyimpan data antara klien dengan pengacara mengenai kasus yang sedang dijalani oleh klien.
2. Menghilangkan relasi berulang
Tahap ini bertujuan untuk mengecek dan
memastikan bahwa tidak ada relasi yang redundan.
89
4.5.3.5 Validasi Model Konseptual Lokal Dengan Transaksi User
Tahap ini bertujuan untuk memastikan bahwa model konseptual mendukung transaksi yang diperlukan.
Gambar 4.10 ERD Validasi Model Konseptual
Keterangan :
1. Menampilkan informasi tentang pendaftaran konsultasi yang dilakukan oleh klien
2. Menampilkan informasi tentang jadwal konsultasi yang disebabkan oleh pendaftaran klien dan dibuat oleh sekretaris
90
3. Menampilkan informasi tentang konsultasi yang disebabkan oleh pendaftaran konsultasi
4. Menampilkan informasi tentang Term Of Agreement yang dihasilkan dari konsultasi
5. Menampilkan informasi tentang kasus yang dihasilkan dari Term Of Agreement
6. Menampilkan informasi tentang akte yang dihasilkan dari konsultasi
7. Menampilkan informasi tentang surat yang dihasilkan dari konsultasi
8. Menampilkan informasi tentang referensi yang dihasilkan dari konsultasi
9. Menampilkan informasi tentang akte yang dihasilkan dari kasus 10. Menampilkan informasi tentang surat yang dihasilkan dari kasus 11. Menampilkan informasi tentang referensi yang dihasilkan dari kasus
12. Menampilkan informasi tentang akte yang dibuat oleh sekretaris 13. Menampilkan informasi tentang surat yang dibuat oleh sekretaris 14. Menampilkan informasi tentang referensi yang dibuat oleh admin 15. Menampilkan informasi tentang referensi yang diakses oleh klien 16. Menampilkan informasi tentang referensi yang diakses oleh pengacara
91
4.5.3.6 Me-Review Model Data Konseptual Lokal Dengan User
Meninjau model data konseptual dengan memastikan semua kebutuhan pengguna, rancangan konseptual sampai tahap ini mampu mewakili keinginan pengguna pada Husin Helmi & Partners termasuk juga klien didalamnya. Model konseptual diatas sudah meliputi diagram ER dan dokumen yang mendukung representasi data model.
4.5.2 Perancangan Basis Data Logikal
Perancangan basis data logikal merupakan tahapan membangun suatu model informasi yang digunakan didalam suatu organisasi berdasarkan model data yang spesifik, tetapi tidak bergantung pada suatu DBMS dan perangkat keras lainnya. Pada tahapan perancangan basis data logikal, terdapat beberapa tahapan didalamnya, yaitu :
Membuat relasi untuk model data logikal
Validasi relasi dengan menggunakan normalisasi
Validasi relasi dengan transaksi user
Mendefinisikan batasan integritas
Me-review model data logikal lokal dengan user
Menggabungkan model data logikal kedalam model data global
92
4.5.2.1 Membuat Relasi Untuk Model Data Logikal
Tahapan ini bertujuan untuk menciptakan relasi
berdasarkan model data logikal untuk mewakili entitas, relasi, dan atribut yang telah diidentifikasi sebelumnya.
4.5.2.1.1 Menentukan Strong Entity
Tabel 4.6 Strong Entity
Klien (Id_Klien, Nama_klien, Username_klien, Password_klien, Alamat_klien,
No_telp_klien, Tempat_lahir_klien, Tanggal_lahir_klien, Profesi_klien,
Jenis_kelamin_klien) Primary Key: Id_Klien
Pengacara (Id_Pengacara, No_Pegawai, Nama_pengacara, Username_pengacara,
Password_pengacara, Alamat_pengacara, No_telp_pengacara,
Tempat_lahir_pengacara, Tanggal_lahir_pengacara, Jenis_kelamin_pengacara,
Status_pengacara)
Primary Key: Id_Pengacara
Sekretaris (Id_Sekretaris, No_Pegawai, Nama_Sekretaris, Username, Password,
Alamat_Sekretaris, No_telp_Sekretaris, Tempat_lahir_Sekretaris,
Tanggal_lahir_Sekretaris, Jenis_kelamin_Sekretaris, Status_sekretaris) Primary Key: Id_Sekretaris
Admin (Id_Admin, No_Pegawai, Nama_Admin, Username, Password, Alamat_Admin, No_telp_Admin, Tempat_lahir_Admin, Tanggal_lahir_Admin, Jenis_kelamin_Admin, Status_admin)
Primary Key: Id_Admin
TermOfAgreement (Id_ToA, Nama_toa, Tanggal_pembuatan, Pembuat)
93
Surat (Id_Surat, Nama_surat, Jenis, Tanggal_pembuatan, Pembuat)
Primary Key: Id_Surat
Akte (Id_Akte, Nama_akte, Jenis, Tanggal_Pembuatan, Pembuat)
Primary Key: Id_Akte
Referensi (Id_Referensi, Nama_referensi, Jenis, Tanggal_pembuatan, Pembuat)
Primary Key: Id_Referensi
4.5.2.1.2 Menentukan Weak Entity
Tabel 4.7 Weak Entity
Pendaftaran_konsultasi(Id_Pendaftaran_konsultasi, Nama_pendaftaran_konsultasi,
Tanggal_Pendaftaran_konsultasi,Status_Pendaftaran_konsultasi, Ringkasan_masalah)
Primary Key: Id_Pendaftaran_konsultasi
Jadwal_konsultasi (Id_Jadwal_konsultasi, Tempat_konsultasi, Tanggal_konsultasi,
Status_jadwal_konsultasil)
Primary Key: Id_Jadwal_konsultasi
Konsultasi (Id_Konsultasi, Nama_konsultasi Pembahasan_konsultasi,
Status_konsultasi)
Primary Key: Id_Konsultasi
Kasus (Id_Kasus, Nama_Kasus, Kategori_kasus, Status_kasus, Tanggal_Mulai,
Tanggal_Berakhir) Primary Key: Id_Kasus
94
4.5.2.1.3 One-to-many (1:*) Binary Relationship Types
• Relasi antara Klien dengan Pendaftaran Konsultasi
Entitas Klien sebagai parent entity, sehingga primary key dari entitas Klien dimasukkan kedalam entitas PengajuanKonsultasi sebagai foreign key.
Gambar 4.11 Relasi Klien dan Pendaftaran Konsultasi
• Relasi antara Pengacara dengan PengajuanKonsultasi
Entitas Pengacara sebagai parent entity, sehingga primary key dari entitas Pengacara dimasukkan kedalam entitas Jadwal Konsultasi sebagai foreign key.
Gambar 4.12 Relasi Pengacara dan Jadwal Konsultasi
• Relasi antara Admin dengan Pendaftaran_konsultasi
Entitas Admin sebagai parent entity, sehingga primary key dari entitas Admin dimasukkan kedalam entitas Pendaftaran_konsultasi sebagai foreign key.
95
• Relasi antara Pengacara dengan Pendaftaran_konsultasi
Entitas Sekretaris sebagai parent entity, sehingga primary key dari entitas Sekretaris dimasukkan kedalam entitas Pendaftaran_konsultasi sebagai foreign key.
Gambar 4.14 Relasi Pengacara dan Pendaftaran Konsultasi
• Relasi antara Sekretaris dengan Jadwal_konsultasi
Entitas Sekretaris sebagai parent entity, sehingga primary key dari entitas Sekretaris dimasukkan kedalam entitas Jadwal_konsultasi sebagai foreign key.
Gambar 4.15 Relasi Sekretaris dan Jadwal Konsultasi
• Relasi antara Klien dengan Referensi
Entitas Referensi sebagai parent entity, sehingga primary key dari entitas Referensi dimasukkan kedalam entitas Klien sebagai foreign key.
96
• Relasi antara Pengacara dengan Referensi
Entitas Pengacara sebagai parent entity, sehingga primary key dari entitas Pengacara dimasukkan kedalam entitas Referensi sebagai foreign key.
Gambar 4.17 Relasi Pengacara dan Referensi
• Relasi antara Sekretaris dengan Konsultasi
Entitas Sekretaris sebagai parent key, sehingga primary key dari entitas Sekretaris dimasukkan kedalam entitas Konsultasi
Gambar 4.18 Relasi Sekretaris dan Konsultasi
• Relasi antara Sekretaris dengan Surat
Entitas Sekretaris sebagai parent entity, sehingga primary key dari entitas Sekretaris dimasukkan kedalam entitas Surat sebagai foreign key.
97
• Relasi antara Sekretaris dengan Akte
Entitas Sekretaris sebagai parent entity, sehingga primary key dari entitas Sekretaris dimasukkan kedalam entitas Akte sebagai foreign key.
Sekretaris
PK id_Sekretaris
Akte
PK id_Akte
FK1 id_Sekretaris
Gambar 4.20 Relasi Sekretaris dan Akte
4.5.2.1.4 One-to-one (1:1) Binary Relationship Types
• Relasi antara Term Of Agreement dengan Kasus
Entitas Term Of Agreement sebagai parent entity, sehingga primary key dari entitas Term Of Agreement dimasukkan kedalam entitas Kasus sebagai foreign key.
Gambar 4.21 Relasi Term of Agreement dan Kasus
4.5.2.1.5 One-to-one (1:1) Recursives Relationship Types
Pada model data logikal yang ada, tidak ditemukan relasi rekursif one-to-one (1:1).
98
4.5.2.1.6 Superclass/Subclass Relationship Types
Gambar 4.22 Relasi Superclass / Subclass
Karena tidak terdapat adanya perbedaan atribut antara entitas Referensi, Akte, Surat dan Arsip maka entitas tersebut diputuskan untuk dibentuk menjadi 1 entitas yang sama yaitu entitas Arsip.
Entitas Term Of Agreement akan tetap digunakan karena memiliki atribut yang berbeda dengan entitas Arsip.
4.5.2.1.7 Many-to-many (*:*) Binary Relationship Types
Tidak ditemukan adanya Many-to-many Relationship pada perancangan model database ini.
4.5.2.1.8 Complex Relationship Types
• Relasi antara Klien, Pendaftaran Konsultasi, Jadwal Konsultasi,
99
Gambar 4.23 Relasi Klien, Pendaftaran Konsultasi, Jadwal Konsultasi, Konsultasi, ToA dan Kasusmenghasilkan detil jadwal konsultasi
4.5.2.1.9 Multi-valued Attributes
Pada model data logikal yang ada, tidak ditemukan adanya relasi Multi-valued Attributes
4.5.2.2 Melakukan Validasi Relasi Menggunakan Normalisasi
Tahap ini bertujuan untuk melakukan validasi hubungan dalam model data logikal menggunakan normalisasi.
Tabel 4.8 Normalisasi
Tabel Normalisasi
Klien 1NF:
Klien(id_Klien, Nama_klien, Username_klien, Password_klien,
Alamat, No_telp, Tempat_lahir, Tanggal_lahir, Profesi, Jenis_kelamin)
2NF:
100
Tabel Normalisasi
Tempat_lahir, Tanggal_lahir, Profesi, Jenis_kelamin) Alamat(id_Alamat, Alamat)
Jenis_Kelamin(id_Jenis_Kelamin, Jenis_Kelamin) No_Telp(id_No_Telp, No_Telp)
Pengacara 1NF:
Pengacara(id_Pengacara, No_Pegawai, Nama_pengacara,
Username_pengacara, Password_pengacara, Alamat, No_telp,
Tempat_lahir, Tanggal_lahir, Jenis_kelamin, Status_pengacara)
2NF:
Pengacara(id_Pengacara, No_Pegawai, Status_pengacara) Alamat(id_Alamat, Alamat)
Jenis_Kelamin(id_Jenis_Kelamin, Jenis_Kelamin) No_Telp(id_No_Telp, No_Telp)
Jabatan(id_Jabatan, Jabatan)
Pegawai(No_Pegawai, Nama, Username, Password, Tempat_lahir, Tanggal_lahir, id_Alamat, id_Jenis_Kelamin, id_No_Telp, id_Jabatan)
Sekretaris 1NF:
Sekretaris(id_Sekretaris, No_Pegawai, Nama_sekretaris, Username,
Password, Alamat, No_telp, Tempat_lahir, Tanggal_lahir,
Jenis_kelamin, Status_sekretaris, Jabatan)
2NF:
Sekretaris(id_Sekretaris, No_Pegawai, Status_sekretaris) Alamat(id_Alamat, Alamat)
Jenis_Kelamin(id_Jenis_Kelamin, Jenis_Kelamin) No_Telp(id_No_Telp, No_Telp)
101
Tabel Normalisasi
Jabatan(id_Jabatan, Jabatan)
Pegawai(No_Pegawai, Nama, Username, Password, Tempat_lahir, Tanggal_lahir, id_Alamat, id_Jenis_Kelamin, id_No_Telp, id_Jabatan)
Admin 1NF:
Admin(id_Admin, No_Pegawai, Nama_admin, Username, Password,
Alamat, No_telp, Tempat_lahir, Tanggal_lahir, Jenis_kelamin,
Status_admin, Jabatan)
2NF:
Admin(id_Admin, No_Pegawai, Status_admin) Alamat(id_Alamat, Alamat)
Jenis_Kelamin(id_Jenis_Kelamin, Jenis_Kelamin) No_Telp(id_No_Telp, No_Telp)
Jabatan(id_Jabatan, Jabatan)
Pegawai(No_Pegawai, Nama, Username, Password, Tempat_lahir, Tanggal_lahir, id_Alamat, id_Jenis_Kelamin, id_No_Telp, id_Jabatan) Pendaftaran_ko
nsultasi
1NF:
Pendaftaran_konsultasi(id_Pendaftaran_konsultasi,
Nama_pendaftaran_konsultasi, Nama_Klien, Nama_Pengacara,
Tanggal_pendaftaran_konsultasi, Tanggal_kadaluarsa,
Status_pendaftaran_konsultasi, Ringkasan_masalah, id_pengacara,
id_klien, id_status_Pkonsultasi, id_waktu_konsultasi,
id_ringkasan_masalah)
2NF:
Pendaftaran_konsultasi(id_Pendaftaran_konsultasi, Nama_pendaftaran_konsultasi)
102
Tabel Normalisasi
Pengacara (id_Pengacara, nama_pengacara)
Status_Pkonsultasi (id_status_Pkonsultasi, status_Pkonsultasi)
Waktu_Pkonsultasi (id_waktu_Pkonsultasi, tanggal_Pkonsultasi,
tanggal_kadaluarsa)
Ringkasan_masalah (id_ringkasan_masalah, ringkasan_masalah) Jadwal_konsult
asi
1NF:
Jadwal_konsultasi(id_Jadwal_konsultasi, Nama_Klien,
Nama_Pengacara, Nama_Sekretaris, Tempat_konsultasi,
Tanggal_konsultasi, Status_Jadwal_konsultasi, id_klien, id_pengacara, id_sekretaris, id_waktu_Jkonsultasi, id_status_Jkonsultasi)
2NF:
Jadwal_konsultasi(id_Jadwal_konsultasi) Klien(id_klien, Nama_Klien)
Pengacara(id_pengacara, Nama_Pengacara) Sekretaris(id_sekretaris, Nama_Sekretaris)
Waktu_Jkonsultasi (id_waktu_Jkonsultasi, tanggal_konsultasi,
tempat_konsultasi)
Status_Jkonsultasi (id_status_Jkonsultasi, status_Jkonsultasi)
Konsultasi 1NF:
Konsultasi(id_konsultasi, Nama_Konsultasi, Pembahasan_konsultasi, Pertemuan, Status_konsultasi, id_jadwal_konsultasi, id_akte, id_surat, id_pembahasan_konsultasi, id_status_konsultasi )
2NF:
Konsultasi(id_konsultasi, Nama_Konsultasi, pertemuan) Akte(id_Akte, id_arsip)
103
Tabel Normalisasi
Pembahasan_konsultasi(id_pembahasan_konsultasi, pembahasan_konsultasi)
Status_konsultasi (id_status_konsultasi, status_konsultasi) Jadwal_konsultasi(id_Jadwal_konsultasi)
Kasus 1NF:
Kasus(id_kasus, Nama_Klien, Nama_Pengacara, Nama_kasus,
Kategori_kasus, Rangkuman_kasus, Status_kasus, Tanggal_Mulai, Tanggal_Berakhir, Prosedur_pidana, prosedur_pidata, id_Akte, id_Surat, id_ToA, id_klien, id_pengacara, id_rangkuman_kasus,
id_kategori_kasus, id_status_kasus, id_waktu_kasus,
id_prosedur_kasus) 2NF: Kasus(id_kasus, Nama_Kasus) Akte(id_Akte, id_arsip) Surat(id_Surat, id_arsip) ToA(id_ToA, id_arsip) Rangkuman_kasus(id_rangkuman_kasus, rangkuman_kasus) Kategori_kasus(id_kategori_kasus, kategori_kasus) Status_kasus(id_status_kasus, status_kasus)
Waktu_kasus(id_waktu_kasus, tanggal_mulai, tanggal_berakhir)
Prosedur_kasus(id_prosedur_kasus, prosedur_pidana, prosedur_perdata) Klien(id_klien, Nama_Klien) Pengacara(id_pengacara, Nama_Pengacara,) TermOfAgreem ent 1NF:
104
Tabel Normalisasi
Tanggal_pembuatan, Pembuat)
2NF:
TermOfAgreement(id_ToA, id_Arsip, id_Konsultasi)
Arsip(id_Arsip)
Konsultasi(id_konsultasi)
Referensi 1NF:
Referensi(id_Referensi, id_Arsip, Nama, Jenis, Tanggal_pembuatan, Pembuat)
2NF:
Referensi(id_Referensi, id_Arsip) Arsip(id_Arsip)
Surat 1NF:
Surat(id_Surat, id_Arsip, Nama, Jenis, Tanggal_pembuatan, Pembuat)
2NF:
Surat(id_Surat, id_Arsip, id_Admin) Arsip(id_Arsip)
Akte 1NF:
Akte(id_Akte, id_Arsip, Nama, Jenis, Tanggal_pembuatan, Pembuat)
2NF:
Akte(id_Akte, id_Arsip, id_Admin) Arsip(id_Arsip)
105
107
4.5.2.3 Melakukan Validasi Relasi Terhadap Transaksi Pengguna
1. Menampilkan informasi detail jadwal konsultasi 2. Menampilkan informasi detail konsultasi 3. Menampilkan informasi detail kasus 4. Menampilkan informasi isi konsultasi 5. Menampilkan informasi prosedur kasus 6. Menampilkan informasi kategori kasus
4.5.2.4 Mendefinisikan Batasan Integritas
Tabel 4.9 Batasan Integritas
Klien (id_Klien, id_Referensi, Nama_klien, Username_klien, Password_klien,
id_Alamat, id_No_telp, Tempat_lahir, Tanggal_lahir, Profesi, id_Jenis_kelamin)
Primary Key (id_Klien)
Foreign Key id_Alamat referensces Alamat (id_Alamat) ON UPDATE CASCADE
ON DELETE NO ACTION
Foreign Key id_Jenis_Kelamin referensces Jenis_Kelamin (id_Jenis_Kelamin) ON
UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_No_Telp referensces No_Telp (id_No_Telp) ON UPDATE
CASCADE ON DELETE NO ACTION
Pengacara(id_Pengacara, No_Pegawai, Status_pengacara) Primary Key (id_Pengacara)
Foreign Key No_Pegawai references Pegawai (No_Pegawai) ON UPDATE
CASCADE ON DELETE NO ACTION
Sekretaris(id_Sekretaris, No_Pegawai, Status_sekretaris) Primary Key (id_Sekretaris)
Foreign Key No_Pegawai references Pegawai (No_Pegawai) ON UPDATE
108
Admin(id_Admin, No_Pegawai, Status_admin) Primary Key (id_Admin)
Foreign Key No_Pegawai references Pegawai (No_Pegawai) ON UPDATE
CASCADE ON DELETE NO ACTION
Pegawai(No_Pegawai, Nama, Username, Password, id_Alamat, id_No_telp,
Tempat_lahir, Tanggal_lahir, id_Jenis_kelamin)
Primary Key (No_Pegawai)
Foreign Key id_Alamat referensces Alamat (id_Alamat) ON UPDATE CASCADE
ON DELETE NO ACTION
Foreign Key id_Jenis_Kelamin referensces Jenis_Kelamin (id_Jenis_Kelamin) ON
UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_No_Telp referensces No_Telp (id_No_Telp) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Jabatan referensces Jabatan (id_Jabatan) ON UPDATE CASCADE
ON DELETE NO ACTION
Pendaftaran_konsultasi(id_Pendaftaran_konsultasi, Nama_pendaftaran_konsultasi,
id_Klien, id_Admin, id_Pengacara, id_Status_Pkonsultasi, id_Waktu_Pkonsultasi, id_Ringkasan_Masalah)
Primary Key (id_Pendaftaran_konsultasi)
Foreign Key id_Klien references Klien (id_Klien) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Admin references Admin (id_Admin) ON UPDATE CASCADE
ON DELETE NO ACTION
Foreign Key id_Pengacara references Pengacara (id_Pengacara) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Status_Pkonsultasi references Status_Pkonsultasi (id_Status_Pkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
109
(id_Waktu_Pkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Ringkasan_Masalah references Ringkasan_Masalah (id_Ringkasan_Masalah) ON UPDATE CASCADE ON DELETE NO ACTION
Ringkasan_Masalah (id_Ringkasan_Masalah, Ringkasan_Masalah) Primary Key (id_Ringkasan_Masalah)
Status_Pkonsultasi(id_Status_Pkonsultasi, Status_pendaftaran_konsultasi) Primary Key (id_Status_Pkonsultasi)
Waktu_Pkonsultasi (id_Waktu_Pkonsultasi, Tanggal_pendaftaran_konsultasi, Tanggal_kadaluarsa)
Primary Key (id_Waktu_Pkonsultasi)
Jadwal_konsultasi(id_Jadwal_konsultasi, id_Sekretaris, id_Pengacara, id_Waktu_Jkonsultasi, id_Status_Jkonsultasi, id_Pendaftaran_Konsultasi, id_Klien)
Primary Key (id_Jadwal_konsultasi)
Foreign Key id_Pendaftaran_Konsultasi references Pendaftaran_Konsultasi
(id_Pendaftaran_Konsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Klien references Klien (id_Klien) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Sekretaris references Sekretaris (id_Sekretaris) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Pengacara references Pengacara (id_Pengacara) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Waktu_Jkonsultasi references Waktu_Jkonsultasi (id_Waktu_Jkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Status_Jkonsultasi references Status_Jkonsultasi (id_Status_Jkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
110
Primary Key (id_Status_Jkonsultasi)
Waktu_Jkonsultasi (id_Waktu_Jkonsultasi, Tanggal_konsultasi, Tempat_konsultasi)
Primary Key (id_Waktu_Jkonsultasi)
Konsultasi(id_konsultasi, Nama_Konsultasi, Pertemuan, id_Akte, id_Surat,
id_Rangkuman_Konsultasi, id_Status_Konsultasi, id_Jadwal_Konsultasi)
Primary Key (id_Konsultasi)
Foreign Key id_Jadwal_Konsultasi references Jadwal_Konsultasi (id_Jadwal_Konsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Akte references Akte (id_Akte) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Surat references Surat (id_Surat) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Rangkuman_konsultasi references Rangkuman_konsultasi (id_Rangkuman_konsultasi) ON UPDATE CASECADE ON DELETE NO ACTION
Foreign Key id_Status_Konsultasi references Status_Konsultasi (id_Status_Konsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Status_konsultasi (id_Status_Konsultasi, Status_konsultasi)
Primary Key (id_Status_Konsultasi)
Rangkuman_konsultasi(id_Rangkuman_Konsultasi, Pembahasan_konsultasi, Pertemuan)
Primary Key (id_Rangkuman_Konsultasi)
Kasus(id_Kasus, Nama_kasus, id_Klien, id_Pengacara, id_Akte, id_Surat, id_ToA,
id_Kategori_Kasus, id_Rangkuman_Kasus, id_Status_Kasus, id_Waktu_Kasus, id_Prosedur_Kasus)
111
Foreign Key id_Akte references Akte (id_Akte) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Surat references Surat (id_Surat) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_ToA references TermOfAgreement (id_ToA) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Kategori_kasus references Kategori_kasus (id_Kategori_kasus)
ON UPDATE CASCADE ON DELETE NO ACTION
Foregin Key id_Rangkuman_Kasus references Rangkuman_Kasus (id_Rangkuman_Kasus) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Status_Kasus references Status_Kasus (id_Status_Kasus) ON
UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Waktu_Kasus references Waktu_Kasus (id_Waktu_Kasus) ON
UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Prosedur_Kasus references Prosedur_Kasus (id_Prosedur_Kasus)
ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Pengacara references Pengacara (id_Pengacara) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Klien references Klien (id_Klien) ON UPDATE CASCADE ON
DELETE NO ACTION
Waktu_Kasus (id_Waktu_Kasus, Tanggal_Mulai, Tanggal_Berakhir) Primary Key (id_Waktu_Kasus)
Status_kasus (id_Status_Kasus, Status_kasus) Primary Key (id_Status_Kasus)
Kategori_kasus(id_Kategori_Kasus, Kategori_kasus) Primary Key (id_Kategori_Kasus)
112
Primary Key (id_Prosedur_Kasus)
TermOfAgreement(id_ToA, id_Konsultasi, id_Arsip) Primary Key (id_ToA)
Foreign Key id_Konsultasi references Konsultasi (id_Konsultasi) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Arsip references Arsip (id_Arsip) ON UPDATE CASCADE ON
DELETE NO ACTION
Akte(id_Akte, id_Sekretaris, id_Arsip) Primary Key (id_Akte)
Foreign Key id_Sekretaris references Sekretaris (id_Sekretaris) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Arsip references Arsip (id_Arsip) ON UPDATE CASCADE ON
DELETE NO ACTION
Surat(id_Surat, id_Sekretaris, id_Arsip) Primary Key (id_Surat)
Foreign Key id_Sekretaris references Sekretaris (id_Sekretaris) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Arsip references Arsip (id_Arsip) ON UPDATE CASCADE ON
DELETE NO ACTION
Referensi(id_Referensi, id_Admin, id_Arsip) Primary Key (id_Referensi)
Foreign Key id_Admin references Admin (id_Admin) ON UPDATE CASCADE
ON DELETE NO ACTION
Foreign Key id_Arsip references Arsip (id_Arsip) ON UPDATE CASCADE ON
DELETE NO ACTION
113
Primary Key (id_Arsip)
Jabatan (id_Jabatan, Jabatan) Primary Key (id_Jabatan)
Alamat (id_Alamat, Alamat) Primary Key (id_Alamat)
No_Telp (id_No_Telp, No_Telp) Primary Key (id_No_Telp)
Jenis_Kelamin (id_Jenis_Kelamin, Jenis_Kelamin) Primary Key (id_Jenis_Kelamin)
Klien (id_Klien, id_Referensi, Nama_klien, Username_klien, Password_klien,
id_Alamat, id_No_telp, Tempat_lahir, Tanggal_lahir, Profesi, id_Jenis_kelamin)
Primary Key (id_Klien)
Foreign Key id_Alamat referensces Alamat (id_Alamat) ON UPDATE CASCADE
ON DELETE NO ACTION
Foreign Key id_Jenis_Kelamin referensces Jenis_Kelamin (id_Jenis_Kelamin) ON
UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_No_Telp referensces No_Telp (id_No_Telp) ON UPDATE
CASCADE ON DELETE NO ACTION
Pengacara(id_Pengacara, No_Pegawai, Status_pengacara) Primary Key (id_Pengacara)
Foreign Key No_Pegawai references Pegawai (No_Pegawai) ON UPDATE
CASCADE ON DELETE NO ACTION
Sekretaris(id_Sekretaris, No_Pegawai, Status_sekretaris) Primary Key (id_Sekretaris)
Foreign Key No_Pegawai references Pegawai (No_Pegawai) ON UPDATE
114
Admin(id_Admin, No_Pegawai, Status_admin) Primary Key (id_Admin)
Foreign Key No_Pegawai references Pegawai (No_Pegawai) ON UPDATE
CASCADE ON DELETE NO ACTION
Pegawai(No_Pegawai, Nama, Username, Password, id_Alamat, id_No_telp,
Tempat_lahir, Tanggal_lahir, id_Jenis_kelamin)
Primary Key (No_Pegawai)
Foreign Key id_Alamat referensces Alamat (id_Alamat) ON UPDATE CASCADE
ON DELETE NO ACTION
Foreign Key id_Jenis_Kelamin referensces Jenis_Kelamin (id_Jenis_Kelamin) ON
UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_No_Telp referensces No_Telp (id_No_Telp) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Jabatan referensces Jabatan (id_Jabatan) ON UPDATE CASCADE
ON DELETE NO ACTION
Pendaftaran_konsultasi(id_Pendaftaran_konsultasi, Nama_pendaftaran_konsultasi,
id_Klien, id_Admin, id_Pengacara, id_Status_Pkonsultasi, id_Waktu_Pkonsultasi, id_Ringkasan_Masalah)
Primary Key (id_Pendaftaran_konsultasi)
Foreign Key id_Klien references Klien (id_Klien) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Admin references Admin (id_Admin) ON UPDATE CASCADE
ON DELETE NO ACTION
Foreign Key id_Pengacara references Pengacara (id_Pengacara) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Status_Pkonsultasi references Status_Pkonsultasi (id_Status_Pkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
115
(id_Waktu_Pkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Ringkasan_Masalah references Ringkasan_Masalah (id_Ringkasan_Masalah) ON UPDATE CASCADE ON DELETE NO ACTION
Ringkasan_Masalah (id_Ringkasan_Masalah, Ringkasan_Masalah) Primary Key (id_Ringkasan_Masalah)
Status_Pkonsultasi(id_Status_Pkonsultasi, Status_pendaftaran_konsultasi) Primary Key (id_Status_Pkonsultasi)
Waktu_Pkonsultasi (id_Waktu_Pkonsultasi, Tanggal_pendaftaran_konsultasi, Tanggal_kadaluarsa)
Primary Key (id_Waktu_Pkonsultasi)
Jadwal_konsultasi(id_Jadwal_konsultasi, id_Sekretaris, id_Pengacara, id_Waktu_Jkonsultasi, id_Status_Jkonsultasi, id_Pendaftaran_Konsultasi, id_Klien)
Primary Key (id_Jadwal_konsultasi)
Foreign Key id_Pendaftaran_Konsultasi references Pendaftaran_Konsultasi
(id_Pendaftaran_Konsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Klien references Klien (id_Klien) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Sekretaris references Sekretaris (id_Sekretaris) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Pengacara references Pengacara (id_Pengacara) ON UPDATE
CASCADE ON DELETE NO ACTION
Foreign Key id_Waktu_Jkonsultasi references Waktu_Jkonsultasi (id_Waktu_Jkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Status_Jkonsultasi references Status_Jkonsultasi (id_Status_Jkonsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
116
Primary Key (id_Status_Jkonsultasi)
Waktu_Jkonsultasi (id_Waktu_Jkonsultasi, Tanggal_konsultasi, Tempat_konsultasi)
Primary Key (id_Waktu_Jkonsultasi)
Konsultasi(id_konsultasi, Nama_Konsultasi, Pertemuan, id_Akte, id_Surat,
id_Rangkuman_Konsultasi, id_Status_Konsultasi, id_Jadwal_Konsultasi)
Primary Key (id_Konsultasi)
Foreign Key id_Jadwal_Konsultasi references Jadwal_Konsultasi (id_Jadwal_Konsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key id_Akte references Akte (id_Akte) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Surat references Surat (id_Surat) ON UPDATE CASCADE ON
DELETE NO ACTION
Foreign Key id_Rangkuman_konsultasi references Rangkuman_konsultasi (id_Rangkuman_konsultasi) ON UPDATE CASECADE ON DELETE NO ACTION
Foreign Key id_Status_Konsultasi references Status_Konsultasi (id_Status_Konsultasi) ON UPDATE CASCADE ON DELETE NO ACTION
Status_konsultasi (id_Status_Konsultasi, Status_konsultasi)
Primary Key (id_Status_Konsultasi)
Rangkuman_konsultasi(id_Rangkuman_Konsultasi, Pembahasan_konsultasi, Pertemuan)
Primary Key (id_Rangkuman_Konsultasi)
Kasus(id_Kasus, Nama_kasus, id_Klien, id_Pengacara, id_Akte, id_Surat, id_ToA,
id_Kategori_Kasus, id_Rangkuman_Kasus, id_Status_Kasus, id_Waktu_Kasus, id_Prosedur_Kasus)