53
BAB 4
PERANCANGAN DAN IMPLEMENTASI
4.1. Transaksi Berdasarkan kebutuhan pada Sub Divisi MIDI Video Telecast
(a) Melakukan pencatatan permintaan fasilitas outdoor.
(b) Memasukkan data-data yang diperlukan untuk fasilitas indoor.
(c) Mengubah data-data permintaan dari pelanggan menjadi bentuk yang sesuai dengan format internal.
(d) Memvalidasi alokasi fasilitas untuk memenuhi permintaan fasilitas indoor. (e) Memvalidasi alokasi fasilitas untuk memenuhi permintaan fasilitas outdoor. (f) Membuat alokasi yang sudah dibuat untuk Work Order.
(g) Membuat alokasi yang sudah dibuat untuk Konfirmasi. (h) Melaksanakan Work Order dan mencatat hasil pekerjaan. (i) Melaksanakan Konfirmasi dan mencatat hasil pekerjaan. (j) Menghitung penggunaan fasilitas dari Acceptance. (k) Menghitung penggunaan fasilitas dari Logbook.
(l) Menyusun dan mengisi harga pemakaian untuk tagihan Acceptance per pelanggan. (m) Menyusun dan mengisi harga pemakaian untuk tagihan Logbook per pelanggan.
4.2. Inisialisasi ukuran Basis Data
• Jumlah staff Sub Divisi MIDI Video Telecast adalah 36 orang. • Jumlah fasilitas adalah 15 fasilitas.
• Jumlah pelanggan adalah 20 pelanggan tetap, yang tercatat sebagai pelanggan ialah semua yang telah menggunakan fasilitas Sub Divisi MIDI Video Telecast.
• Jumlah pemakaian fasilitas yang tercatat di log book dalam satu tahun sekitar 2400 pemakaian(rata-rata).
• Jumlah pemakaian fasilitas yang tercatat di acceptance sekitar 500 pemakaian dalam satu tahun.
4.3. Pertumbuhan Basis Data
• Jumlah staff untuk sub Divisi Video Telecast tidak bertambah, yang ada hanya pergantian staff.
• Penambahan fasilitas hanya satu untuk satu tahun.
• Penambahan jumlah pelanggan berkisar 3 dalam satu tahun.
• Penggunaan pemakaian fasilitas rata-rata 200 pemakaian dalam satu bulan.
• Jumlah problem yang ditolerir adalah 1% dan probem yang mungkin terjadi harus dibawah 1%.Dengan data yang ada rata-rata satu tahun 2100 maka jumlah pertumbuhan probelm adalah 21 dalam satu tahun.
4.4. Perancangan Basis Data 4.4.1. Perancangan konseptual
Perancangan konseptual akan dilakukan mengacu pada data fact finding yang telah dilakukan di Sub Divisi MIDI Video Telecast, seperti yang telah diperoleh diatas yaitu batasan sistemnya, bagaimana sistem berjalan, dan proses aliran datanya yang digambarkan menggunakan data flow diagram, serta inisialisasi kebutuhan sistem basis data yang akan dikembangkan. Hal tersebut akan menjadi input tahapan perancangan konseptual. Sedangkan untuk hasil dari tahapan konseptual ini/ outputnya adalah Entity
4.4.1.1. Mengidentifikasi Tipe Entity
Entity-entity yang menjadi kebutuhan dari Sub Divisi MIDI Video Telecast
berdasarkan sistem yang sedang berjalan, antara lain : Identifikasi Entity
Nama Entity Deskripsi Entity Pemunculan (Ocurrence)
Pelanggan Merupakan entity yang
memberikan informasi tentang data pelanggan secara lengkap
Pelanggan memesan fasilitas telekomunikasi.
Work Order Merupakan entity yang memberikan informasi tentang alokasi fasiltas yang dapat digunakan oleh pelanggan yang memesan fasilitas telekomunikasi outdoor.
Setiap kali terjadi pemesanan fasilitas telekomunikasi yang sifatnya outdoor.
Booking Merupakan entity yang
memberikan informasi tentang permintaan fasilitas telekomunikasi yang sifatnya indoor.
Staff menerima permintaan berupa booking ini sebagai dasar pengalokasian fasilitas telekomunikasi.
Konfirmasi Merupakan entity yang
memberikan informasi tentang fasilitas
telekomunikasi yang dapat digunakan oleh staff atau
Saff mengalokasikan fasilitas berdasarkan booking yang diterima dan “diterjemahkan” dalam informasi teknis tentang fasilitas telekomunikasi indoor
pelanggan. yang dapat digunakan. Fasilitas Merupakan entity yang
memberikan informasi tentang fasilitas telekomunikasi secara lengkap
Staff mencatat data teknis setiap fasilitas telekomunikasi yang terdapat dalam sub divisi ini.
Staff Merupakan entity yang
memberikan informasi tentang data Staff secara lengkap
Manajer melakukan pengisian daa staff dan menugaskan staff dalam status akses tertentu.
Acceptance Merupakan entity yang
memberikan informasi tentang work order yang sudah dilaksanakan
Staff yang melaksanakan work order mencatat hasilnya di acceptance, yang akan digunakan sebagai dasar penagihan.
Logbook Merupakan entity yang
memberikan informasi tentang konfirmasi atau pelaksanakan yang menggunakan fasilitas indoor yang sudah dilaksanakan
Staff yang melaksanakan konfirmasi atau pelaksanaan fasilitas telekomunikasi indoor, mencatat hasilnya di Logbook ini yang akan digunakan sebagai dasar penagihan.
Tagihan_Acceptance Merupakan entity yang memberikan informasi tentang data pemakaian yang sudah dilaksanakan dalam acceptance.
Staff melakukan penagihan 1 bulan sekali dari acceptance yang sudah dilakukan.
Tagihan_Logbook Merupakan entity yang memberikan informasi tentang data pemakaian yang sudah dilaksanakan dalam Logbook.
Staff melakukan penagihan 1 bulan sekali dari Logbook yang sudah dilakukan.
Table 4.1. Indentifikasi Entity 4.4.1.2. Mengidentifikasi Tipe Relationship(Hubungan)
Tujuan dari langkah ini adalah untuk mengidentifikasi relationship yang penting antara berbagai tipe entity yang telah diidentifikasikan.
Langkah-langkah dalam mengidentifikasi tipe relasi adalah sebagai berikut : • Menggunakan Entity-Relationship (ER) Diagrams.
• Menentukan Pembatas Multiplicity dari Tipe Relasi.
• Mengecek setiap entity mempunyai ralationship minimal satu.
4.4.1.2.1. Hubungan Pelanggan-Booking-Konfirmasi
Pada hubungan Pelanggan-Booking terdapat relasi satu ke banyak (1..1-0..* terlihat pada gambar 4.1.) yang bermakna bahwa Setiap pelanggan dapat mengirimkan booking dan setiap pelanggan tersebut boleh tidak mengirimkan atau mengirimkan booking satu atau banyak. Sebagai contoh nyata bahwa pelanggan, stasiun TV seperti SCTV, RCTI dan lain-lain dapat saja mengirimkan pemesanan untuk penggunaan fasilitas lebih dari satu atau pun tidak mengirimkan pemesanan karena tidak adak kegiatan yang membutuhkan fasilitas pengiriman video digital.Untuk hubungan Booking-Konfirmasi adalah relasi satu ke satu (1..1-0..1 pada gambar 4.1.) artinya yaitu setiap booking dapat memperoleh hanya satu konfirmasi atau pun tidak memperoleh konfirmasi sama sekali. Konfirmasi di Sub Divisi MIDI Video Telecast ini adalah suatu
data yang dikirimkan barupa parameter teknikal mengenai fasilitas telekomunikasi yang akan digunakan oleh pelanggan jika si pelanggan yang akan melakukan penerimaan atau pengeriman sendiri. Sedangkan jika eksekusi kegiatan penggunaan fasilitas hanya dilakukan oleh pihak Sub Divisi MIDI Video Telecast maka file konfirmasi tidak akan ada yang berari booking tidak mempunyai konfirmasi.
4.4.1.3. Menggunakan Entity-Relationship (ER) Diagram
Relasi antar entitas akan lebih mudah dilihat dalam bentuk ERD( Entity
Relationship Diagram). Tahapan-tahapan yang dilakukan pada langkah diatas akan
lebih terlihat hasilnya dalam bentuk ERD ini. Hasil dari identifikasi tipe entitas akan diperoleh entitas-entitas yang ditampilkan dalam kotak persegi, sedangkan hasil identifikasi relasi/ hubungan akan terlihat pada garis yang menghubungkan entitas-entitas dengan keterangan kata kerja yang bersifat unik tidak terjadi pengulangan. Untuk multiplicity juga terlihat pada masing entitas terhadap hubungan entitas lain.
Entity-Relationship Diagram konseptual yang hanya memuat nama entity
4.4.1.4. Menentukan Pembatasan Multiplicity dari Tipe Relasi
Setelah ditentukan ERD konseptual maka langkah berikutnya adalah menentukan pembatas multiplicity dari masing-masing entity sesuai dengan entity yang lain. Berikut ini tipe-tipe relationship yang terdapat pada perancangan basis data.
Entity Name Multi- plicity
Relationship Entity Name Multi-plicity
Pelanggan 1..1 memesan Work_Order 0..*
Pelanggan 1..1 mengirim Booking 0..*
Booking 1..1 disetujui Konfirmasi 0..1
Fasilitas 1..1 digunakan Work_Order 0..*
Fasilitas 1..1 dialokasikan Konfirmasi 0..*
Staff 1..1 membuat Work_Order 0..*
Staff 1..1 mengeluarkan Konfirmasi 0..*
Staff 1..1 menyusun Tagihan_Acceptance 0..*
Staff 1..1 merekap Taguhan_Logbook 0..*
Work_Order 1..1 menghasilkan Acceptance 1..1
Konfirmasi 1..1 dicatat Logbook 1..1
Acceptance 1..* dihitung Tagihan_Acceptance 1..* Logbook 1..* dimasukkan Tagihan_Logbook 1..*
Tabel 4.2. Multiplicity
4.4.1.5. Mengenali dan menghubungkan attribute-attribute dengan entitas dan relasi
Tujuannya adalah untuk menghubungkan relasi-relasi yang sesuai dengan
entity-entity yang membutuhkannya dan menuliskan detil-detil atribut pada setiap entity-entitynya.
Entity Name
Attributes Description Data Type &
Length Nulls Multi-valued Pelanggan kode_pelanggan nama_pelanggan alamat_ pelanggan jenis_usaha phone fax nama_pic phone_pic hp keterangan
Kode unik yang mengidentifikasi data pelanggan
Nama pelanggan (nama perusahaan)
Alamat pelanggan
Jenis usaha pelanggan Nomor telepon pelanggan Nomor fax pelanggan Nama contact-person pelanggan (pic) Nomor telepon pic Nomor hp pic Keterangan pic mediumint (3) varchar (30) varchar (100) varchar (30) varchar (30) varchar (30) varchar (30) varchar (30) varchar (30) varchar (100) No No No No No No No No No No No No No No No No No No No No Work_ Order nomor_wo nama_pelanggan _pemakai nama_pic_ pemakai nama_pelanggan _pembayar nama_pic_ pembayar keterangan tgl_wo staff_buat
Kode unik yang mengidentifikasi data work order
nama pelanggan pemakai
nama pic pemakai
nama pelanggan pembayar
nama pic pembayar
keterangan work order tanggal work order nama staff pembuat wo
varchar (30) varchar (30) varchar (30) varchar (30) varchar (30) varchar (100) date varchar (30) No No No No Yes Yes No No No No No No No No No No
tgl_buat staff_setuju tgl_setuju staff_terima_ lokal tgl_terima_lokal staff_sales_adm tgl_sales_adm keterangan_ detail_fasilitas nama_satelit lokasi_satelit tujuan tgl_pelaksanaan waktu_mulai waktu_selesai tgl_test waktu_test traffic_type speed no_isdn lokasi tgl pembuatan wo nama staff yg menyetujui tgl persetujuan
nama staff lokal yg menerima wo
tgl penerimaan oleh staff lokal
nama staff sales administrasi
tgl penerimaan oleh sales administrasi
nama_fasilitas yang digunakan oleh pelanggan
nama_satelit yang digunakan oleh pelanggan Keterangan lokasi satelit tujuan (penerima sinyal) tanggal pelaksanaan waktu mulai pelaksanaan waktu selesai pelaksanaan tanggal test
waktu test
keterangan bentuk sinyal kecepatan transmisi digital
nomor isdn yang digunakan lokasi pelaksanaan date varchar (30) date varchar (30) date varchar (30) date varchar (100) varchar (100) varchar(100) varchar (100) date time time date time varchar (30) varchar (30) varchar (30) varchar (30) No Yes Yes Yes Yes Yes Yes No Yes No Yes No No No No No Yes Yes Yes No No No No No No No No No No No No No No No No No No No No No No No Booking kode_book nama_pelanggan nama_pic
Kode unik yang mengidentifikasi data booking
Nama pelanggan yang mengirim booking Nama pic pelanggan yang dapat dihubungi bigint (10) varchar (30) varchar (100) No No No No No No
tgl_kirim judul pembayar dokumen tgl_transmisi waktu_mulai waktu_selesai asal tujuan video_standar nama_satelit lokasi_satelt ul_freq dl_freq dl_pole bandwidth sym_rate fec ras_code tipe_dec keterangan Tanggal pengiriman booking Judul/keterangan tentang booking
Pihak yang melakukan pembayaran
Dokumen hasil digitasi dari hard-copy
Tanggal pelaksanaan Waktu mulai Waktu selesai
Lokasi asal pengiriman sinyal
Lokasi tujuan pengiriman sinyal
Video standar yang digunakan
Satelit yang digunakan Keterangan lokasi satelit Up-link frekuensi Down-link frekuensi Down-Link Polarisasi
Bandwidth frekuensi yang digunakan
Symbol rate untuk TV digital
FEC untuk TV digital Kode enkripsi Tipe dekoder yang digunakan Keterangan booking date varchar (30) mediumint (3) varchar (100) date time time varchar (30) varchar (30) enum (‘PAL’, ’NTSC’, ‘SECAM’) varchar (100) varchar(100) varchar (30) varchar (30) enum (‘H’, ’V’, ‘RHCP’, ‘LHCP’) varchar (30) varchar (30) varchar (30) varchar (30) varchar (30) varchar (100) No No No No No No No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No No No No No No No No No No No No No No No No No No No No No Konfirmasi nomor_konf Kode unik yang
mengidentifikasi data konfirmasi
nama_staff tgl tgl_pelaksanaan waktu_mulai waktu_selesai asal tujuan video_standar nama_satelit ul_freq dl_freq dl_pole bandwidth sym_rate fec ras_code tipe_dec keterangan_ detail_fasilitas
Nama staff yang membuat konfirmasi Tanggal pembuatan konfirmasi Tanggal pelaksanaan Waktu mulai Waktu selesai
Lokasi asal pengiriman sinyal
Lokasi tujuan pengiriman sinyal
Video standar yang digunakan
Satelit yang digunakan Up-link frekuensi Down-link frekuensi Down-Link Polarisasi
Bandwidth frekuensi yang digunakan
Symbol rate untuk TV digital
FEC untuk TV digital Kode enkripsi Tipe dekoder yang digunakan
Fasilitas yang digunakan
varchar (30) date date time time varchar (30) varchar (30) enum (‘PAL’, ’NTSC’, ‘SECAM’) varchar (100) varchar (30) varchar (30) enum (‘H’, ’V’, ‘RHCP’, ‘LHCP’) varchar (30) varchar (30) varchar (30) varchar (30) varchar (30) varchar (100) No No No No No No No No No Yes Yes Yes Yes Yes Yes Yes Yes No No No No No No No No No No No No No No No No No No No Fasilitas kode_fasilitas modus keterangan keterangan_ detail
Kode unik yang mengidentifikasi data fasilitas
Kategori fasilitas Keterangan fasilitas Nama fasilitas detail
mediumint (3) varchar (30) varchar (100) varchar (100) No No Yes No No No No No
Staff nik
nama password
kode_status
keterangan_staff
Nomor induk karyawan, kode unik yang
mengidentifikasi data karyawan.
Nama karyawan Password untuk akses aplikasi
Status untuk akses aplikasi Keterangan untuk karyawan varchar (8) varchar (30) varchar (32) tinyint (2) varchar (50) No No No No Yes No No No No No Acceptance kode_ acceptance tgl_mulai nama_pelanggan _pemakai nama_pic_ pemakai nama_acara keterangan_ detail_fasilitas nama_satelit tujuan waktu_mulai waktu_selesai keterangan nama_staff
Kode unik yang mengidentifikasi data acceptance
Tanggal pelaksanaan
Nama pelanggan pemakai
Nama pic pemakai
Nama acara
Fasilitas yang digunakan
Satelit yang digunakan Tujuan penerima sinyal Waktu pelaksanaan mulai Waktu pelaksanaan selesai
Keterangan tentang acceptance
Staff yang membuat acceptance bigint (10) data varchar (30) varchar (100) varchar (30) varchar (100) varchar (100) varchar (100) time time varchar (100) varchar (30) No No No No No No No No No No Yes No No No No No No No No No No No No No
Logbook nomor_log Kode unik yang mengidentifikasi data
tgl waktu_mulai waktu_selesai nama_pelanggan nama_pic keterangan_ detail_fasilitas status nama_staff keterangan menit_gagal keterangan_ problem logbook Tanggal pelaksanaan Waktu mulai Waktu selesai Nama pelanggan Nama pic Fasilitas yg digunakan Status jasa,
S: space satelit, T: Turn-Around, O: Other Nama staff yang melaksanakan Keterangan logbook lainnya
Menit gagal akibat problem
Keterangan tentang problem yang terjadi
date time time varchar (30) varchar (30) varchar (100) enum (‘S’, ‘T’, ‘O’) varchar (30) varchar (100) mediumint (3) varchar (100) No No No No No No No No Yes Yes Yes No No No No No No No No No No No tagihan_ acceptance nomor_tgh_acc tgl tgl_awal tgl_akhir nama_pelanggan nama_pic nama_staff keterangan harga_ pemakaian
Kode unik yang
mengidentifikasi tagihan acceptance Tanggal tagihan Tanggal awal Tanggal akhir Nama pelanggan Nama pic
Staff yang membuat tagihan Keterangan tagihan Harga pemakaian varchar (30) date date date varchar (30) varchar (100) varchar (30) varchar (100) mediumint (5) No No No No No Yes No Yes No No No No No No No No No No tagihan_ logbook nomor_tgh_log tgl
Kode unik yang
mengidentifikasi tagihan logbook Tanggal tagihan varchar (30) date No No No No
tgl_awal tgl_akhir nama_pelanggan nama_pic nama_staff keterangan harga_ pemakaian menit_gagal keterangan_ problem Tanggal awal Tanggal akhir Nama pelanggan Nama pic
Staff yang membuat tagihan Keterangan tagihan Harga pemakaian Menit gagal Keterangan problem date date varchar (30) varchar (100) varchar (30) varchar (100) mediumint (5) int (3) varchar (100) No No No Yes No Yes No Yes Yes No No No No No No No No No
Tabel 4.3. Hubungan Attribute dengan Entitas dan Relasi 4.4.1.6. Menentukan domain attribute
Pada tahap ini adalah menentukan domain pada atribut yang bertujuan untuk menentukan nilai-nilai yang berlaku (domain) untuk isi dari attribute-attribute.
Attributes Domain Value
kode_pelanggan nama_pelanggan alamat_pelanggan jenis_usaha phone fax nama_pic phone_pic hp keterangan Bilangan integer
Karakter A..Z,a..z , angka 0..9, karakter(‘) Karakter a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z , angka 0..9, karakter(‘) Karakter angka 0..9
Karakter angka 0..9
Karakter A..Z,a..z , karakter(‘) Karakter angka 0..9
Karakter angka 0..9
Karakter A..Za..z, angka 0..9, karakter (@,-, /, .,’,”,&) nomor_wo nama_pelanggan_pemakai nama_pic_pemakai nama_pelanggan_pembayar nama_pic_pembayar
Karakter a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z , angka 0..9, karakter(‘) Karakter A..Z,a..z , karakter(‘)
Karakter A..Z,a..z , angka 0..9, karakter(‘) Karakter A..Z,a..z , karakter(‘)
keterangan tgl_wo staff_buat tgl_buat staff_setuju tgl_setuju staff_terima_lokal tgl_terima_lokal staff_sales_adm tgl_sales_adm keterangan__detail_fasilitas nama_satelit lokasi_satelit tujuan tgl_pelaksanaan waktu_mulai waktu_selesai tgl_test waktu_test traffic_type speed no_isdn lokasi
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Karakter A..Z,a..z , karakter(‘) Tanggal (thn-bln-tgl/xxxx-xx-xx) Karakter A..Z,a..z , karakter(‘) Tanggal (thn-bln-tgl/xxxx-xx-xx) Karakter A..Z,a..z , karakter(‘) Tanggal (thn-bln-tgl/xxxx-xx-xx) Karakter A..Z,a..z , karakter(‘) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Waktu (jam:menit) Waktu (jam:menit)
Tanggal (thn-bln-tgl/xxxx-xx-xx) Waktu (jam:menit)
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .,’) kode_book nama_pelanggan nama_pic tgl_kirim judul pembayar dokumen tgl_transmisi waktu_mulai waktu_selesai asal tujuan video_standar Bilangan integer
Karakter A..Z,a..z , angka 0..9, karakter(‘) Karakter A..Z,a..z , angka 0..9, karakter(‘) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z , angka 0..9, karakter(‘) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Waktu (jam:menit) Waktu (jam:menit)
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Pilihan : ‘PAL’, ’NTSC’, ‘SECAM’
nama_satelit lokasi_satelit ul_freq dl_freq dl_pole bandwidth sym_rate fec ras_code tipe_dec keterangan
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Pilihan : ‘H’, ’V’, ‘RHCP’, ‘LHCP’
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) nomor_konf nama_staff tgl tgl_pelaksanaan waktu_mulai waktu_selesai asal tujuan video_standar nama_satelit ul_freq dl_freq dl_pole bandwidth sym_rate fec ras_code tipe_dec keterangan_detail_fasilitas
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z , angka 0..9, karakter(‘) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Tanggal (thn-bln-tgl/xxxx-xx-xx) Waktu (jam:menit)
Waktu (jam:menit)
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Pilihan : ‘PAL’, ’NTSC’, ‘SECAM’
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Pilihan : ‘H’, ’V’, ‘RHCP’, ‘LHCP’
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) kode_fasilitas
modus keterangan
keterangan_detail_fasilitas
Bilangan integer
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) nik
nama Password
Karakter angka 0..9
Karakter A..Z,a..z , angka 0..9, karakter(‘) Karakter A..Z,a..z, angka 0..9, karakter (-, /,
nama_status keterangan_status
.,!,@,#,*,~,’,”,:,;,&,%,$,(.),-,+,=),Min(8) Karakter A..Z,a..z, angka 0..9, karakter Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) kode_acceptance tgl_mulai nama_pelanggan_pemakai nama_pic_pemakai nama_acara keterangan_detail_fasilitas nama_satelit tujuan waktu_mulai waktu_selesai keterangan nama_staff Bilangan integer Tanggal (thn-bln-tgl/xxxx-xx-xx)
Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Waktu (jam:menit)
Waktu (jam:menit)
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (‘) nomor_log tgl waktu_mulai waktu_selesai nama_pelanggan nama_pic keterangan_detail_fasilitas status nama_staff keterangan menit_gagal keterangan_problem
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Waktu (jam:menit) Waktu (jam:menit)
Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Pilihan ‘S’, ‘T’ , ‘O’
Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Bilangan integer
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) nomor_tgh_acc tgl tgl_awal tgl_akhir nama_staff nama_pelanggan nama_pic keterangan harga_pemakaian
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Tanggal (thn-bln-tgl/xxxx-xx-xx) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Bilangan integer
tgl tgl_awal tgl_akhir nama_staff nama_pelanggan nama_pic menit_gagal keterangan_problem keterangan harga_pemakaian Tanggal (thn-bln-tgl/xxxx-xx-xx) Tanggal (thn-bln-tgl/xxxx-xx-xx) Tanggal (thn-bln-tgl/xxxx-xx-xx)
Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (‘) Karakter A..Z,a..z, angka 0..9, karakter (‘) Bilangan integer
Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Karakter A..Z,a..z, angka 0..9, karakter (-, /, .) Bilangan integer
Tabel 4.4. Domain Attribut
4.4.1.7. Menentukan attribute yang menjadi candidate dan primary key
Langkah berikutnya adalah mengidentifikasi candidate key dan primary key dari setiap field pada setiap tabel yang bertujuan untuk menentukan attribute-attribute yang menjadi candidate key dan jika candidate key lebih dari satu, kita harus memilih mana yang menjadi primary key.
Entity Candidate Key Primary Key
Pelanggan kode_pelanggan kode_pelanggan
Work_Order nomor_wo nomor_wo
Booking kode_book kode_book
Konfirmasi nomor_konf nomor_konf Fasilitas kode_fasilitas kode_fasilitas
Staff nik nik
Acceptance kode_acceptance kode_acceptance
Logbook nomor_log nomor_log
Tagihan_Acceptance nomor_tgh_acc nomor_tgh_acc Tagihan_Logbook nomor_tgh_log nomor_tgh_log
4.4.1.8. Memeriksa model jika masih ada redudancy
Langkah berikutnya adalah mengecek model redundansi yang bertujuannya untuk memeriksa apakah masih ada redundancy, yaitu perulangan-perulangan data yang dapat menyebabkan anomaly jika proses-proses insert, update, dan delete dilaksanakan.
Ada 2 tahap yang terdapat dalam langkah ini, yaitu : • Memeriksa hubungan one-to-one (1 : 1)
Tahap ini dilakukan untuk menggabungkan dua entity yang mewakili satu objek yang sama. Jika terdapat primary key yang berbeda, maka pilih salah satu untuk dijadikan primary key, sedangkan yang lainnya menjadi alternate key.
• Menghapus relationship yang menimbulkan redundan
Relationship disebut redundan jika kita bisa mendapatkan informasi yang sama lewat relationship yang berbeda. Kita dapat mengenalinya dengan adanya 2 path yang berbeda dari satu entity ke entity tujuannya. Walaupun begitu belum tentu path yang lain bisa disebut redundan karena kita harus melihat konteks hubungannya juga.
Akan tetapi, pada perancangan basis data ini tidak ditemukan hubungan
one-to-one seperti diatas dan tidak terdapat path yang menunujukkan relasi yang sama dari dua entity, sehingga langkah ini tidak dilakukan.
4.4.1.9. Validasi Model Konseptual Terhadap Transaksi Pengguna
Untuk memastikan rancangan konseptual dari basis data yang dibangun dapat mendukung transaksi yang dibutuhkan pengguna, maka digunakan 2 buah pendekatan: 1. Mendeskripsikan transaksi
Keterangan panah transaksi :
(a) Melakukan pencatatan permintaan fasilitas outdoor.
(b) Memasukkan data-data yang diperlukan untuk fasilitas indoor.
(c) Mengubah data-data permintaan dari pelanggan menjadi bentuk yang sesuai dengan format internal.
(d) Memvalidasi alokasi fasilitas untuk memenuhi permintaan fasilitas indoor. (e) Memvalidasi alokasi fasilitas untuk memenuhi permintaan fasilitas outdoor. (f) Membuat alokasi yang sudah dibuat untuk Work Order.
(g) Membuat alokasi yang sudah dibuat untuk Konfirmasi. (h) Melaksanakan Work Order dan mencatat hasil pekerjaan. (i) Melaksanakan Konfirmasi dan mencatat hasil pekerjaan. (j) Menghitung penggunaan fasilitas dari Acceptance. (k) Menghitung penggunaan fasilitas dari Logbook.
(l) Menyusun dan mengisi harga pemakaian untuk tagihan Acceptance per pelanggan.
(m) Menyusun dan mengisi harga pemakaian untuk tagihan Logbook per pelanggan.
4.4.2. Perancangan logikal
Perancangan logikal adalah suatu proses membuat model informasi yang akan digunakan oleh suatu perusahaan, tetapi kita sudah mengambil model data tertentu. Dalam perancangan basis data logikal sudah memperhatikan normalisasi, tetapi dalam tahap ini masih belum memperhatikan hardware/software yang akan digunakan. Adapun langkah-langkah dalam merancang basis data secara logikal, antara lain :
4.4.2.1. Menghilangkan kondisi yang tidak kompatibel
• Menghilangkan relasi biner many-to-many (* : *)
Pada entity Acceptance dan Tagihan_Acceptance
Gambar 4.4.a Relasi entity Acceptance dan Tagihan_acceptance
menjadi:
Gambar 4.4.b Relasi entity Acceptance dan Tagihan_acceptance baru Pada entity Logbook dan Tagihan_Log
menjadi:
Gambar 4.5.b Relasi entity Logbook dan Tagihan_Logbook baru
4.4.2.2. Pembentukan Relasi Model Data Logikal Lokal
• Identifikasi Strong Entity
¾ Pelanggan(kode_pelanggan, nama_pelanggan, alamat_pelanggan, jenis_usaha, phone, fax, nama_pic, phone_pic, hp, keterangan)
Primary key kode_pelanggan
¾ Fasilitas (kode_fasilitas, modus, keterangan, keterangan_detail)
Primary key kode_fasilitas
¾ Staff (nik, nama, password, kode_status, keterangan_status)
Primary key nik
¾ Work_Order (nomor_wo, nama_pelanggan_pemakai, nama_pic_pemakai, nama_pelanggan_pembayar, nama_pic_pembayar, keterangan, tgl_wo, staff_buat, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm, keterangan_detail_fasilitas, nama_satelit, lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
Primary Key nomor_wo
¾ Booking (kode_book, nama_pelanggan, nama_pic, tgl_kirim, judul, pembayar, dokumen, tgl_transmisi, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit, lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan)
Primary key kode_book
¾ Konfirmasi (nomor_konf, nama_staff, tgl, tgl_pelaksanaan, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan_detail_fasilitas)
Primary Key nomor_wo
¾ Acceptance(kode_acceptance, tgl_mulai, nama_pelanggan_pemakai, nama_pic_pemakai, nama_acara, keterangan_detail_fasilitas, nama_satelit, tujuan, waktu_mulai, waktu_selesai, keterangan, nama_staff)
Primary Key kode_acceptance
¾ Logbook(nomor_log, tgl, waktu_mulai, waktu_selesai, nama_pelanggan, nama_pic, keterangan_detail_fasilitas, status, nama_staff, keterangan, menit_gagal, keterangan_problem)
Primary key nomor_log
¾ Tagihan_Acceptance(nomor_tgh_acc, tgl, tgl_awal, tgl_akhir, nama_pelanggan, nama_pic, nama_staff, keterangan, harga_pemakaian)
¾ Tagihan_Logbook (nomor_tgh_log, tgl, tgl_awal, tgl_akhir, nama_pelanggan, nama_pic, nama_staff, keterangan, harga_pemakaian, menit_gagal, keterangan_problem)
Primary key nomor_tgh_log
• Identifikasi Weak Entity ¾ Tagihan_Acc_Detail
Primary key (saat ini belum bisa ditentukan)
¾ Tagihan_Log_Detail
Primary key (saat ini belum bisa ditentukan)
• Relasi biner one-to-many (1:*)
Pelanggan memesan Work_Order
Pelanggan (kode_pelanggan, nama_pelanggan, alamat_pelanggan, jenis_usaha,
phone, fax, nama_pic, phone_pic, hp, keterangan)
Primary Key kode_pelanggan
Work_Order (nomor_wo, kode_pelanggan, nama_pelanggan_pemakai,
nama_pic_pemakai, nama_pelanggan_pembayar, nama_pic_pembayar, keterangan, tgl_wo, staff_buat, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm,
keterangan_detail_fasilitas, nama_satelit,lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
Primary Key nomor_wo
Pelanggan mengirim Booking
Pelanggan (kode_pelanggan, nama_pelanggan, alamat_pelanggan, jenis_usaha,
phone, fax, nama_pic, phone_pic, hp, keterangan)
Primary Key kode_pelanggan
Booking (kode_book, kode_pelanggan, nama_pelanggan, nama_pic, tgl_kirim,
judul, pembayar, dokumen, tgl_transmisi, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit,lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan)
Primary Key kode_book
Foreign Key kode_pelanggan references Pelanggan (kode_pelanggan)
Fasilitas digunakan Work_Order
Fasilitas (kode_fasilitas, modus, keterangan, keterangan_detail) Primary Key kode_fasilitas
Work_Order (nomor_wo, kode_pelanggan, nama_pelanggan_pemakai,
nama_pic_pemakai, nama_pelanggan_pembayar, nama_pic_pembayar, keterangan, tgl_wo, staff_buat, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm,
kode_fasilitas, keterangan_detail_fasilitas, nama_satelit,lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
Primary Key nomor_wo
Foreign Key kode_pelanggan references Pelanggan (kode_pelanggan) Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas)
Fasilitas (kode_fasilitas, modus, keterangan, keterangan_detail) Primary Key kode_fasilitas
Konfirmasi (nomor_konf, nama_staff, tgl, tgl_pelaksanaan, waktu_mulai,
waktu_selesai, asal, tujuan, video_standar, nama_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, kode_fasilitas, keterangan_detail_fasilitas)
Primary Key nomor_konf
Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas)
Staff membuat Work_Order
Staff (nik, nama, password, kode_status, keterangan_status) Primary Key nik
Work_Order (nomor_wo, kode_pelanggan, nama_pelanggan_pemakai,
nama_pic_pemakai, nama_pelanggan_pembayar,nama_pic_pembayar, keterangan, tgl_wo, nik, staff_buat, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm,
kode_fasilitas, keterangan_detail_fasilitas, nama_satelit,lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
Primary Key nomor_wo
Foreign Key kode_pelanggan references Pelanggan (kode_pelanggan) Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas)
Foreign Key nik references Staff (nik)
Staff mengeluarkan Konfirmasi
Staff (nik, nama, password, kode_status, keterangan_status) Primary Key nik
Konfirmasi (nomor_konf, nik, nama_staff, tgl, tgl_pelaksanaan, waktu_mulai,
waktu_selesai, asal, tujuan, video_standar, nama_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, kode_fasilitas, keterangan_detail_fasilitas)
Primary Key nomor_konf
Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas) Foreign Key nik references Staff (nik)
Work_Order menghasilkan Acceptance
Work_Order (nomor_wo, kode_pelanggan, nama_pelanggan_pemakai,
nama_pic_pemakai, nama_pelanggan_pembayar, nama_pic_pembayar, keterangan, tgl_wo, nik, staff_buat, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm,
kode_fasilitas, keterangan_detail_fasilitas, nama_satelit, lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
Primary Key nomor_wo
Foreign Key kode_pelanggan references Pelanggan (kode_pelanggan) Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas)
Foreign Key nik references Staff (nik)
Acceptance (kode_acceptance, nomor_wo, tgl_mulai,
nama_pelanggan_pemakai, nama_pic_pemakai, nama_acara,
keterangan_detail_fasilitas, nama_satelit, tujuan, waktu_mulai, waktu_selesai, keterangan, nama_staff)
Primary Key kode_acceptance
Konfirmasi dicatat Logbook
Konfirmasi (nomor_konf, nik, nama_staff, tgl, tgl_pelaksanaan, waktu_mulai,
waktu_selesai, asal, tujuan, video_standar, nama_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, kode_fasilitas, keterangan_detail_fasilitas)
Primary Key nomor_konf
Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas) Foreign Key nik references Staff (nik)
Logbook (nomor_log, nomor_konf, tgl, waktu_mulai, waktu_selesai,
nama_pelanggan,nama_pic, keterangan_detail_fasilitas, status, nama_staff, keterangan, menit_gagal, keterangan_problem)
Primary Key nomor_log
Foreign Key nomor_konf references Konfirmasi (nomor_konf)
Staff menyusun Tagihan_Acceptance
Staff (nik, nama, password, kode_status, keterangan_status) Primary Key nik
Tagihan_Acceptance (nomor_tgh_acc, tgl, tgl_awal, tgl_akhir,
nama_pelanggan,nama_pic, nik, nama_staff, keterangan, harga_pemakaian)
Primary key nomor_tgh_acc
Staff merekap Tagihan_Log
Staff (nik, nama, password, kode_status, keterangan_status) Primary Key nik
Tagihan_Logbook (nomor_tgh_log, tgl, tgl_awal, tgl_akhir, nama_pelanggan
,nama_pic, nik, nama_staff, keterangan, harga_pemakaian, menit_gagal, keterangan_problem)
Primary key nomor_tgh_log
Foreign key nik references Staff (nik)
• Relasi Binary one-to-one ( 1 : 1 )
Booking disetujui Konfirmasi
(keterangan: mandatory partisipasi satu sisi)
Booking (kode_book, kode_pelanggan, nama_pelanggan ,nama_pic, tgl_kirim,
judul, pembayar, dokumen, tgl_transmisi, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit,lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan)
Primary Key kode_book
Foreign Key kode_pelanggan references Pelanggan (kode_pelanggan)
Konfirmasi (nomor_konf, kode_book, nik, nama_staff, tgl, tgl_pelaksanaan,
waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, kode_fasilitas, keterangan_detail_fasilitas)
Primary Key nomor_konf
Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas) Foreign Key nik references Staff (nik)
• Relasi Binary many-to-many ( * : * )
• Acceptance dihitung Tagihan_Acceptance
dihitung
Acceptance (kode_acceptance, nomor_wo,
tgl_mulai, nama_pelanggan_pemakai ,nama_pic_pemakai, nama_acara,
keterangan_detail_fasilitas, nama_satelit, tujuan, waktu_mulai, waktu_selesai, keterangan, nama_staff)
Primary Key kode_acceptance
Foreign Key nomor_wo references Work_Order
(nomor_wo)
Tagihan_Acceptance (nomor_tgh_acc, tgl,
tgl_awal, tgl_akhir, nama_pelanggan, nama_pic, nik)
Primary key nomor_tgh_acc
Foreign key nik references Staff (nik)
Tagihan_Acc_Detail (nomor_tgh_acc, kode_acceptance, keterangan, harga_pemakaian) Primary key nomor_tgh_acc, kode_acceptance
Foreign key nomor_tgh_acc references Tagihan_Acceptance (nomor_tgh_acc) Foreign key kode_acceptance references Acceptance (kode_acceptance)
• Logbook dimasukkan Tagihan_Logbook
dimasukkan
Logbook (nomor_log, nomor_konf, tgl,
waktu_mulai, waktu_selesai, nama_pelanggan ,nama_pic, keterangan_detail_fasilitas, status, nama_staff, keterangan, menit_gagal, keterangan_problem)
Primary Key nomor_log
Foreign Key nomor_konf references Konfirmasi
(nomor_konf)
Tagihan_Logbook (nomor_tgh_log, tgl,
tgl_awal, tgl_akhir, nama_pelanggan ,nama_pic, nik)
Primary key nomor_tgh_log
Tagihan_Log_Detail (nomor_tgh_log, nomor_log, keterangan, harga_pemakaian,
menit_gagal, keterangan_problem)
Primary key nomor_tgh_log, nomor_log
Foreign key nomor_tgh_log references Tagihan_Logbook (nomor_tgh_log) Foreign key nomor_log references Logbook (nomor_log)
4.4.2.3. Validasi Relasi Menggunakan Normalisasi
Pada tahap ini, digunakan teknik normalisasi untuk mengurangi redundansi data yang terjadi pada setiap entity.
1. Pelanggan UNF:
Tabel pelanggan masih mempunyai 1 atau lebih repeating grup.
Pelanggan (kode_pelanggan, nama_pelanggan, alamat_pelanggan, jenis_usaha,
phone, fax, kode_pic, nama_pic, phone_pic, hp, keterangan)
Repeating Grup: (nama_pic, phone_pic, hp, keterangan) 1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Karena terdapat repeating grup maka terdapat 2 attribute yang menjadi primary key.
Pelanggan (kode_pelanggan, nama_pelanggan, alamat_pelanggan, jenis_usaha,
phone, fax, nama_pic, phone_pic, hp, keterangan)
2NF:
fd1: Pic (kode_pelanggan, nama_pic, phone_pic, hp, keterangan)
fd2: Pelanggan (kode_pelanggan, nama_pelanggan, alamat_pelanggan, jenis_usaha,
phone, fax)
3NF:
Tidak terdapat transitif dependansi. Maka tidak perlu dilakukan 3NF.
2. Fasilitas UNF:
Tabel fasilitas masih mempunyai 1 atau lebih repeating grup.
Fasilitas (kode_fasilitas, modus, keterangan, kode_fasilitas_detail,
keterangan_detail)
Repeating grup: (keterangan_detail) 1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Karena terdapat repeating grup maka terdapat 2 attribute yang menjadi primary key.
Fasilitas (kode_fasilitas, modus, keterangan, keterangan_detail) 2NF:
fd1: Fasilitas_Detail (kode_fasilitas, keterangan_detail) fd2: Fasilitas (kode_fasilitas, modus, keterangan) 3NF:
Tidak terdapat transitif dependansi. Maka tidak perlu dilakukan 3NF.
3. Staff UNF:
Tabel staff tidak mempunyai 1 atau lebih repeating grup sehingga tidak ada UNF.
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Staff (nik, nama, password, kode_status, keterangan_status) 2NF:
Karena tidak terdapat partial dependency dari repeating grup maka tidak dilakukan 2NF.
3NF:
fd1: Staff (nik, nama, password, kode_status) fd2: Status (kode_status, keterangan_status)
4. Booking UNF:
Tabel Booking masih mempunyai 1 atau lebih repeating grup.
Booking (kode_book, kode_pelanggan, nama_pelanggan, nama_pic, tgl_kirim,
judul, pembayar, dokumen, tgl_transmisi, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit, lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan)
Repeating Group = (kode_book_detail, tgl_transmisi, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, kode_satelit, nama_satelit, lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan)
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Karena terdapat repeating grup maka terdapat 2 attribute yang menjadi primary key.
Booking (kode_book, kode_pelanggan, nama_pelanggan, nama_pic, tgl_kirim,
judul, pembayar, dokumenl, tgl_transmisi, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit, lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan)
2NF:
Booking kode_book kode_pelanggan tgl_kirim judul pembayar tgl_transmisi waktu_mulai waktu_selesai asal
fd1 Primary Key fd2 Partial Dependency
dokumen tujuan video_standar ul_freq dl_freq bandwidth sym_rate fec ras_code tipe_dec keterangan nama_pic nama_satelit lokasi_satelit fd3 Transitif Dependency fd4 Transitif Dependency
fd1: Booking_Detail (kode_book , tgl_transmisi, waktu_mulai, waktu_selesai, asal,
tujuan, video_standar, nama_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, keterangan)
fd2: Booking_Head (kode_book, kode_pelanggan, nama_pic, tgl_kirim, judul,
pembayar, dokumen)
3NF:
Terdapat transitif dependensi sehingga dilakukan 3NF.
fd3: Pic (kode_pelanggan, nama_pic, phone_pic, hp, keterangan)
(Tabel Pic sudah terbentuk dari proses normalisasi tabel Pelanggan)
5. Work_Order UNF:
Tabel Work Order masih mempunyai 1 atau lebih repeating grup.
Work_Order (nomor_wo, kode_pelanggan, nama_pic_pemakai,
nama_pelanggan_pembayar, nama_pic_pembayar, keterangan, tgl_wo, nik, staff_buat, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm, kode_fasilitas, keterangan_detail_fasilitas, nama_satelit, lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
Repeating grup: (kode_fasilitas, keterangan_detail_fasilitas, nama_satelit, lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Karena terdapat repeating grup maka terdapat 2 attribute yang menjadi primary key.
Work_Order (nomor_wo, kode_pelanggan, nama_pic_pemakai,
nama_pelanggan_pembayar, nama_pic_pembayar, keterangan, tgl_wo, nik, staff_buat, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm, kode_fasilitas, keterangan_detail_fasilitas, nama_satelit, lokasi_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
2NF:
Work Order nomor_wo kode_pelanggan nama_pelanggan_pembayar kode_fasilitas lokasi tgl_pelaksanaan waktu_mulai waktu_selesai
fd1 Primary Key fd2 Partial Dependency
tujuan nama_pic_pemakai fd3 Transitif Dependency fd5 Transitif Dependency nama_pic_pembayar keterangan tgl_wo staff_buat tgl_buat nik staff_setuju tgl_setuju staff_terima_lokal tgl_terima_lokal staff_sales_adm tgl_sales_adm keterangan_fasilitas_detail nama_satelit lokasi_satelit tgl_test waktu_test traffic_type speed no_isdn fd4 Transitif Dependency fd6 Transitif Dependency fd1: Work_Order_Detail (nomor_wo,
kode_fasilitas,keterangan_detail_fasilitas,nama_satelit, tujuan, tgl_pelaksanaan, waktu_mulai, waktu_selesai, tgl_test, waktu_test, traffic_type, speed, no_isdn, lokasi)
fd2: Work_Order_Head (nomor_wo, kode_pelanggan,
nama_pelanggan_pembayar, nama_pic_pembayar, keterangan, tgl_wo, nik, tgl_buat, staff_setuju, tgl_setuju, staff_terima_lokal, tgl_terima_lokal, staff_sales_adm, tgl_sales_adm)
3NF:
Terdapat transitif dependensi sehingga dilakukan 3NF.
fd3: Pic (kode_pelanggan, nama_pic, phone_pic, hp, keterangan)
(Tabel Pic sudah terbentuk dari proses normalisasi tabel Pelanggan)
fd4: Staff (nik, nama, password, kode_status)
(Tabel Staff sudah terbentuk dari proses normalisasi tabel Staff)
fd5: Fasilitas_Detail (kode_fasilitas, keterangan_detail)
(Tabel Fasilitas_Detail sudah terbentuk dari proses normalisasi tabel Fasilitas)
fd6: Satelit (nama_satelit, lokasi_satelit)
(Tabel Satelit sudah terbentuk dari proses normalisasi tabel Booking)
6. Konfirmasi UNF:
Tabel Work Order masih mempunyai 1 atau lebih repeating grup.
Konfirmasi (nomor_konf, kode_book, nik, nama_staff, tgl, tgl_pelaksanaan,
waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit, lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec,
kode_fasilitas, keterangan_detail_fasilitas)
Repeating Group = (tgl_pelaksanaan, waktu_mulai, waktu_selesai, asal, tujuan, video_standar, nama_satelit, lokasi_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, kode_fasilitas, keterangan_detail_fasilitas)
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Karena terdapat repeating grup maka terdapat 2 attribute yang menjadi primary key.
Konfirmasi (nomor_konf_head, kode_book, nik, nama_staff, tgl, tgl_pelaksanaan,
ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, kode_fasilitas, keterangan_detail_fasilitas)
2NF:
Terdapat partial dependency dari repeating grup.
fd1: Konf_Detail (nomor_konf,tgl_pelaksanaan, waktu_mulai, waktu_selesai, asal,
tujuan, video_standar,nama_satelit, ul_freq, dl_freq, dl_pole, bandwidth, sym_rate, fec, ras_code, tipe_dec, kode_fasilitas, keterangan_detail_fasilitas)
fd2: Konf_Head (nomor_konf, kode_book, nik, tgl) 3NF:
Terdapat transitif dependensi sehingga dilakukan 3NF.
fd3: Staff (nik, nama, password, kode_status)
(Tabel Staff sudah terbentuk dari proses normalisasi tabel Staff)
fd4: Satelit (nama_satelit, lokasi_satelit)
(Tabel Satelit sudah terbentuk dari proses normalisasi tabel Booking)
fd5: Fasilitas_Detail (kode_fasilitas, keterangan_detail)
(Tabel Fasilitas_Detail sudah terbentuk dari proses normalisasi tabel Fasilitas)
7. Acceptance UNF:
Tabel Acceptance tidak mempunyai 1 atau lebih repeating grup. Sehingga tidak ada UNF.
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Acceptance (kode_acceptance, nomor_wo, tgl_mulai, kode_pelanggan,
nama_pic_pemakai, nama_acara, kode_fasilitas, keterangan_fasilitas_detail, nama_satelit, tujuan, waktu_mulai, waktu_selesai, keterangan, nik, nama_staff)
2NF:
3NF:
Terdapat transitif dependensi sehingga dilakukan 3NF.
fd2: Pic (kode_pelanggan, nama_pic, phone_pic, hp, keterangan)
(Tabel Pic sudah terbentuk dari proses normalisasi tabel Pelanggan)
fd3: Fasilitas_Detail (kode_fasilitas, keterangan_detail)
(Tabel Fasilitas_Detail sudah terbentuk dari proses normalisasi tabel Fasilitas)
fd4: Satelit (nama_satelit, lokasi_satelit)
(Tabel Satelit sudah terbentuk dari proses normalisasi tabel Booking)
d5: Staff (nik, nama, password, kode_status)
(Tabel Staff sudah terbentuk dari proses normalisasi tabel Staff)
8. Logbook UNF:
Tabel Logbook masih mempunyai 1 atau lebih repeating grup.
Logbook (nomor_log, nomor_konf, tgl, waktu_mulai, waktu_selesai, status,
kode_pelanggan, nama_pic, kode_fasilitas, keterangan_ fasilitas_detail, nik, nama_staff, keterangan, menit_gagal, keterangan_problem)
Repeating Group = (keterangan_problem, menit_gagal)
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Karena terdapat repeating grup maka terdapat 2 attribute yang menjadi primary key.
Logbook (nomor_log, nomor_konf, tgl, waktu_mulai, waktu_selesai, status,
kode_pelanggan, nama_pic, kode_fasilitas, keterangan_ fasilitas_detail, nik, nama_staff, keterangan, keterangan_problem, menit_gagal)
2NF:
fd1: Problem (nomor_log, keterangan_problem, menit_gagal)
fd2: Logbook (nomor_log, nomor_konf, tgl, waktu_mulai, waktu_selesai, status
kode_pelanggan, nama_pic, kode_fasilitas, keterangan_fasilitas_detail, nik, keterangan)
3NF:
Terdapat transitif dependensi sehingga dilakukan 3NF.
fd3: Pic (kode_pelanggan, nama_pic, phone_pic, hp, keterangan)
(Tabel Pic sudah terbentuk dari proses normalisasi tabel Pelanggan)
fd4: Fasilitas_Detail (kode_fasilitas, keterangan_detail)
(Tabel Fasilitas_Detail sudah terbentuk dari proses normalisasi tabel Fasilitas)
d5: Staff (nik, nama, password, kode_status)
(Tabel Staff sudah terbentuk dari proses normalisasi tabel Staff)
9. Tagihan_Acceptance UNF:
Tabel Tagihan_Acceptance tidak mempunyai 1 atau lebih repeating grup. Sehingga tidak ada UNF.
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Tagihan_Acceptance (nomor_tgh_acc, tgl, tgl_awal, tgl_akhir, kode_pelanggan,
nama_pic, nik, staff)
2NF:
Tidak terdapat partial dependancy. Maka tidak perlu dilakukan 2NF.
3NF:
Terdapat transitif dependensi sehingga dilakukan 3NF.
fd1: Tagihan_Acceptance (nomor_tgh_acc, tgl, tgl_awal, tgl_akhir,
kode_pelanggan,nama_pic, nik)
fd2: Pic (kode_pelanggan, nama_pic, phone_pic, hp, keterangan)
(Tabel Pic sudah terbentuk dari proses normalisasi tabel Pelanggan)
fd3: Staff (nik, nama, password, kode_status)
(Tabel Staff sudah terbentuk dari proses normalisasi tabel Staff)
10. Tagihan_Acc_Detail UNF:
Tabel Tagihan_Acc_Detail tidak mempunyai 1 atau lebih repeating grup. Sehingga tidak ada UNF.
1NF:
Tagihan_Acc_Detail (nomor_tgh_acc, kode_acceptance, keterangan,
harga_pemakaian)
2NF:
Tidak terdapat partial dependancy. Maka tidak perlu dilakukan 2NF.
3NF:
Tidak terdapat transitif dependansi. Maka tidak perlu dilakukan 3NF.
11. Tagihan_Logbook UNF:
Tabel Tagihan_Logbook tidak mempunyai 1 atau lebih repeating grup. Sehingga tidak ada UNF.
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai.
Tagihan_Logbook (nomor_tgh_log, tgl, tgl_awal, tgl_akhir, kode_pelanggan,
nama_pic, nik, nama_staff)
2NF:
Tidak terdapat partial dependancy. Maka tidak perlu dilakukan 2NF.
3NF:
fd1: Tagihan_Logbook (nomor_tgh_acc, tgl, tgl_awal, tgl_akhir, kode_pelanggan,
nama_pic, nik)
fd2: Pic (kode_pelanggan, nama_pic, phone_pic, hp, keterangan)
(Tabel Pic sudah terbentuk dari proses normalisasi tabel Pelanggan)
fd3: Staff (nik, nama, password, kode_status)
(Tabel Staff sudah terbentuk dari proses normalisasi tabel Staff)
12. Tagihan_Log_Detail UNF:
Tabel Tagihan_Acc_Detail mempunyai 1 atau lebih repeating grup.
Tagihan_Log_Detail (nomor_tgh_log, nomor_log, keterangan, harga_pemakaian,
menit_gagal, keterangan_problem)
Repeating Group: (menit_gagal, keterangan_problem
1NF:
Suatu tabel yang setiap perpotongan baris dan kolom hanya memiliki 1 nilai. Karena terdapat repeating grup maka terdapat attribute lainn yang menjadi primary key.
Tagihan_Log_Detail (nomor_tgh_log, nomor_log, keterangan, harga_pemakaian,
keterangan_problem, menit_gagal)
2NF:
Terdapat partial dependancy. Maka tidak perlu dilakukan 2NF.
fd1: Tagihan_Log_Detail (nomor_tgh_log, nomor_log, keterangan,
harga_pemakaian, keterangan_problem)
(Tabel Problem sudah terbentuk saat normalisasi tabel Logbook)
3NF:
Tidak terdapat transitif dependansi. Maka tidak perlu dilakukan 3NF.
4.4.2.4. Menentukan batasan integritas (integrity constraints)
1. Required Data (kebutuhan data) 2. Attribute Domain (batasan atribut)
3. Entity Integrity ( keutuhan entitas, primary key tidak boleh null) 4. Referential integrity
5. Enterprise constraint
Bentuk dokumentasinya:
Pelanggan (
kode_pelanggan mediumint (3) not null nama_pelanggan varchar (30) not null alamat_pelanggan varchar (100) not null jenis_usaha varchar (30) not null
phone varchar (30) not null fax varchar (30) not null)
Primary Key kode_pelanggan
Pic (
kode_pelanggan mediumint (3) not null nama_pic varchar (30) not null
phone_pic varchar (30) null hp varchar (30) null
keterangan varchar (100) null)
Foreign Key kode_pelanggan references Pelanggan (kode_pelanggan) ON UPDATE CASCADE ON DELETE NO ACTION
Fasilitas (
kode_fasilitas mediumint (3) not null modus varchar (30) not null
keterangan varchar (100) null)
Primary Key kode_fasilitas
Fasilitas_Detail (
kode_fasilitas mediumint (3) not null keterangan_detail varchar (100) not null)
Primary Key kode_fasilitas, keterangan_detail
Foreign Key kode_fasilitas references Fasilitas (kode_fasilitas) ON UPDATE CASCADE ON DELETE NO ACTION
Staff (
nik varchar (100) not null nama varchar (30) not null password varchar (32) not null kode_status tinyint (2) not null keterangan varchar (100) null)
Primary Key nik
Foreign Key kode_status references Status (kode_status) ON UPDATE CASCADE ON DELETE NO ACTION
Status (
kode_status tinyint (2) not null
keterangan_status varchar (100) not null)
Book_Head (
kode_book bigint (10) not null
kode_pelanggan mediumint (3) not null nama_pic varchar (30) not null
tgl_kirim date not null judul varchar (30) not null pembayar varchar (30) not null dokumen varchar (100) not null)
Primary Key kode_book
Foreign Key kode_pelanggan, nama_pic references Pic (kode_pelanggan,
nama_pic) ON UPDATE CASCADE ON DELETE NO ACTION
Book_Detail (
kode_book bigint (10) not null tgl_transmisi date not null
waktu_mulai time (HH:mm) not null waktu_selesai time (HH:mm) not null asal varchar (30) not null
tujuan varchar (30) not null
video_standar enum (‘PAL’, ’NTSC’, ‘SECAM’) nama_satelit varchar (100) not null
ul_freq varchar (30) null dl_freq varchar (30) null
dl_pole enum (‘H’, ’V’, ‘RHCP’, ‘LHCP’) bandwidth varchar (30) null
sym_rate varchar (30) null fec varchar (30) null ras_code varchar (30) null tipe_dec varchar (30) null keterangan varchar (100) null)
Primary Key kode_book, tgl_transmisi
Foreign Key kode_book references Book_Head (kode_book) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key nama_satelit references Satelit (nama_satelit) ON UPDATE CASCADE ON DELETE NO ACTION
Satelit (
nama_satelit varchar (100) not null lokasi_satelit varchar (100) null)
Primary Key nama_satelit
Work_Order_Head (
nomor_wo varchar (30) not null
kode_pelanggan mediumint (3) not null nama_pic varchar (30) not null
nama_pelanggan_pembayar varchar (30) not null nama_pic_pembayar varchar (30) not null
keterangan varchar (100) null tgl_wo date not null
nik varchar(8) not null tgl_buat date not null
staff_setuju varchar (30) null tgl_setuju date null
staff_terima_lokal varchar (30) null tgl_terima_lokal date null
staff_sales_adm varchar (30) null tgl_sales_adm date null)
Primary Key nomor_wo
Foreign Key kode_pelanggan, nama_pic references Pic (kode_pelanggan,
Foreign Key nik references Staff (nik) ON UPDATE CASCADE ON DELETE NO ACTION
Work_Order_Detail (
nomor_wo varchar (30) not null tgl_pelaksanaan date not null
kode_fasilitas mediumint (3) not null
keterangan_detail_fasilitas varchar (100) not null nama_satelit varchar (100) not null
tujuan varchar (30) not null
waktu_mulai time (HH:mm) not null waktu_selesai time (HH:mm) not null tgl_test date not null
waktu_test time (HH:mm) not null traffic_type varchar (30) null speed varchar (30) null no_isdn varchar (30) null lokasi varchar (30) not null)
Primary Key nomor_wo, tgl_pelaksanaan
Foreign Key kode_fasilitas, keterangan_detail_fasilitas references Fasilitas_Detail
(kode_fasilitas, keterangan_detail) ON UPDATE CASCADE ON DELETE NO
ACTION
Foreign Key nama_satelit references Satelit (nama_satelit) ON UPDATE CASCADE ON DELETE NO ACTION
Konf_Head (
nomor_konf varchar (30) not null kode_book bigint (10) not null nik varchar (8) not null tgl date not null
Foreign Key nik references Staf (nik) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key kode_book references Book_Head (kode_book) ON UPDATE CASCADE ON DELETE NO ACTION
Konf_Detail (
nomor_konf varchar (30) not null tgl_pelaksanaan date not null
waktu_mulai time (HH:mm) not null waktu_selesai time (HH:mm) not null kode_fasilitas mediumint (3) not null asal varchar (30) not null
tujuan varchar (30) not null
video_standar enum (‘PAL’, ’NTSC’, ‘SECAM’) nama_satelit varchar (100) not null
ul_freq varchar (30) null dl_freq varchar (30) null
dl_pole enum (‘H’, ’V’, ‘RHCP’, ‘LHCP’) bandwidth varchar (30) null
sym_rate varchar (30) null fec varchar (30) null ras_code varchar (30) null tipe_dec varchar (30) null
keterangan_detail_fasilitas varchar (100) null)
Primary Key nomor_konf, tgl_pelaksanaan, waktu_mulai, waktu_selesai,
kode_fasilitas, keterangan_detail_fasilitas
Foreign Key nomor_konf references Konf_Head (nomor_konf) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key kode_fasilitas, keterangan_detail_fasilitas references Fasilitas_Detail
(kode_fasilitas, keterangan_detail) ON UPDATE CASCADE ON DELETE NO
Foreign Key nama_satelit references Satelit (nama_satelit) ON UPDATE CASCADE ON DELETE NO ACTION
Acceptance (
kode_acceptance bigint (10) not null nomor_wo varchar (30) not null tgl_pelaksanaan date not null
kode_pelanggan mediumint (3) not null nama_pic varchar (30) not null
nama_acara varchar (100) not null kode_fasilitas mediumint (3) not null keterangan_detail varchar (100) not null nama_satelit varchar (100)not null tujuan varchar (30) not null
waktu_mulai time (HH:mm) not null waktu_selesai time (HH:mm) not null keterangan varchar (100) null
nik varchar (8) not null)
Primary Key kode_acceptance
Foreign Key nomor_wo,tgl_pelaksanaan references Work_Order_Detail
(nomor_wo,tgl_pelaksanaan) ON UPDATE CASCADE ON DELETE NO
ACTION
Foreign Key nik references Staf (nik) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key kode_pelanggan, nama_pic references Pic
(kode_pelanggan,nama_pic) ON UPDATE CASCADE ON DELETE NO
ACTION
Foreign Key kode_fasilitas, keterangan_detail_fasilitas references Fasilitas_Detail
(kode_fasilitas, keterangan_detail) ON UPDATE CASCADE ON DELETE NO
Logbook (
nomor_log varchar (11) not null nomor_konf varchar (30) not null tgl date not null
waktu_mulai time (HH:mm) not null waktu_selesai time (HH:mm) not null
nama_pelanggan_pembayar varchar (30) not null nama_pic_pembayar varchar (30) not null
kode_fasilitas mediumint (3) not null keterangan_detail varchar (100) not null status enum (‘S’, ‘T’, ‘O’) not null nik varchar (8) not null
keterangan varchar (100) null)
Primary Key nomor_log
Foreign Key nomor_konf references Konf_Head (nomor_konf) ON UPDATE CASCADE ON DELETE NO ACTION
Problem (
nomor_log varchar (11) not null
keterangan_problem varchar (100) not null menit_gagal mediumint (3) not null)
Primary Key nomor_log, keterangan_problem
Foreign Key nomor_log references Logbook (nomor_log) ON UPDATE CASCADE ON DELETE NO ACTION
Tagihan_Acceptance (
nomor_tgh_acc varchar (30) not null tgl date not null
tgl_awal date not null tgl_akhir date not null
kode_pelanggan mediumint (3) not null nama_pic varchar (30) not null
nik varchar (8) not null)
Primary Key nomor_tgh_acc
Foreign Key nik references Staff (nik) ON UPDATE CASCADE ON DELETE NO ACTION
Foreign Key kode_pelanggan, nama_pic references Pic
(kode_pelanggan,nama_pic) ON UPDATE CASCADE ON DELETE NO
ACTION
Tagihan_Acc_Detail (
nomor_tgh_acc varchar (30) not null kode_acceptance bigint (10) not null keterangan varchar (100) null
harga_pemakaian mediumint (5) not null)
Primary Key nomor_tgh_acc, kode_acceptance
Foreign Key nomor_tgh_acc references tagihan_Acceptance (nomor_tgh_acc) ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key kode_acceptance references Acceptance (kode_acceptance) ON UPDATE CASCADE ON DELETE NO ACTION
Tagihan_Logbook (
nomor_tgh_log varchar (30) not null tgl date not null
tgl_awal date not null tgl_akhir date not null
kode_pelanggan mediumint (3) not null nama_pic varchar (30) not null
nik varchar (8) not null)
Foreign Key nik references Staff (nik) ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key kode_pelanggan, nama_pic references Pic
(kode_pelanggan,nama_pic) ON UPDATE CASCADE ON DELETE CASCADE
Tagihan_Log_Detail (
nomor_tgh_log varchar (30) not null nomor_log varchar (11) not null keterangan varchar (100) null
harga_pemakaian mediumint (5) not null keterangan_problem varchar (100) null)
Primary Key nomor_tgh_log, nomor_log
Foreign Key nomor_tgh_log references Tagihan_Logbook (nomor_tgh_log) ON UPDATE CASCADE ON DELETE CASCADE
Foreign Key nomor_log references Logbook (nomor_log) ON UPDATE CASCADE ON DELETE NO ACTION
4.4.2.5. Pembuatan Model Basis Data Logikal Global Pelanggan (
kode_pelanggan mediumint (3) not null nama_pelanggan varchar (30) not null alamat_pelanggan varchar (100) not null jenis_usaha varchar (30) not null
phone varchar (30) not null fax varchar (30) not null)
Primary Key kode_pelanggan Pic (
kode_pelanggan mediumint (3) not null nama_pic varchar (30) not null