47 BAB 3
METODOLOGI
3.1.Metodologi
3.1.1. Database Planning
Database Planning yaitu aktivitas manajemen yang memungkinkan tahapan dari Database System Development Lifecycle untuk direalisasikan seefisien dan seefektif mungkin. Menganalisis proses bisnis jasa konstruksi, merancang basis data yang mendukung masalah – masalah yang ada pada proses bisnis, dan merancang aplikasi yang dapat mendukung pengolahan basis data merupakan tujuan dari pembuatan database ini. Terdapat dua langkah dalam tahapan perencaanan basis data, yaitu:
3.1.1.1. Mission Statement
Mission statement dari perencanaan basis data ini yaitu menghasilkan sistem basis data yang dapat memasukkan, menyimpan, mengubah, dan menampilkan data untuk proses penerimaan proyek, pemesanan, tagihan, persediaan dan pembelian material serta pembayaran secara terstruktur dan terintegrasi dengan baik.
3.1.1.2. Mission Objective
Mission objective dari perencanaan basis data ini yaitu: 1. Memelihara (insert, update) data Staff
2. Memelihara (insert, update) data Client 3. Memelihara (insert, update) data Supplier 4. Memelihara (insert, update) data Material 5. Memelihara (insert, update) data Bank 6. Memelihara (insert, update) data Account 7. Memelihara (insert, update) data Payment Type
8. Membuat Laporan dan rancangan biaya yang berkaitan dengan proyek 9. Membuat Laporan yang berkaitan dengan order proyek
11. Membuat order pembelian material dan laporan order pembelian material 12. Membuat Laporan penagihan dan pembayaran pembelian material 13. Membuat laporan yang berkaitan dengan penerimaan material 14. Membuat laporan yang berkaitan dengan penggunaan material 15. Membuat laporan yang berkaitan dengan penyesuaian stok
16. Membuat laporan yang berkaitan dengan pembayaran pembelian, proyek dan addendum.
3.1.2. System Definition
System definition mendeskripsikan jangkauan dan batasan dari batasan aplikasi basis data dan pandangan-pandangan utama para pengguna.
Ruang lingkup untuk aplikasi basis data yang akan dirancang sudah didefinisikan pada Bab 1.3 dan user views bagi para staff dalam mengakses aplikasi basis data juga didefinisikan berdasarkan tugas dan wewenang dan pembahasannya secara lengkap pada point 3.4.1.3.4.(Desain Mekanisme Keamanan).
3.1.3. Requirement Collection and Analysis
Requirement collection and analysis yaitu proses mengumpulkan dan menganalisa informasi tentang bagian dari perusahaan yang akan didukung oleh sistem basis data dan menggunakan informasi ini untuk mengidentifikasi kebutuhan pemakai terhadap sistem baru.
Proses pengumpulan informasi-informasi yang diperlukan dilakukan dengan cara dan penjelasan berikut:
3.1.3.1.Wawancara
Kegiatan wawancara dilakukan beberapa kali dengan Direktur PT Multi Sarana Kita dan Staff Bagian Procurement & Project Adm pada tanggal dan tujuan berikut:
1. Wawancara pada tanggal 14 Oktober 2013 untuk memahami proses bisnis yang sedang berjalan pada PT Multi Sarana Kita.
2. Wawancara pada 09 September 2013 untuk membahas secara rinci mengenai proses bisnis yang sedang berjalan.
3. Wawancara pada tanggal 11 November 2013 untuk membahas mengenai dokumen-dokumen bisnis.
3.1.3.2. Memeriksa Dokumen
Beberapa contoh dokumen penting seperti Rancangan Anggaran Biaya (RAB), Surat Perintah Kerja, faktur pemesanan dan pembayaran material, serta faktur pembayaran proyek dan laporan lainnya yang diberikan oleh pihak PT Multi Sarana Kita pada tanggal – Desember 2013 demi mendukung kelancaran dalam menganalisa transaksi dalam sistem.
3.1.4. Database Design
Database design yaitu proses pembuatan desain yang mendukung mission statement dan mission objective perusahaan untuk keperluan sistem basis data. Tiga fase dalam perancangan basis data yaitu:
3.1.4.1. Peracangan Basis Data Koseptual
Pada perancangan basis data konseptual akan dibangun model data konseptual yang terdiri dari sembilan langkah dan akan dirancang pada sub Bab 3.3.1.1.
3.1.4.2. Peracangan Basis Data Logikal
Pada perancangan basis data logikal akan dibangun dan divalidasi model data logikal yang terdiri dari tujuh langkah dan akan dirancang pada sub Bab 3.3.1.2.
3.1.4.3. Peracangan Basis Data Fisikal
Peracangan basis data fisikal terdiari dari enam langkah, yang meliputi perancangan file organization, indexes, space, user views, security, dan pertimbangan yang lainnya. Tahapan ini akan dibahas pada sub Bab 3.3.1.3. 3.1.5. DBMS Selection
DMBS selection yaitu proses pemilihan DBMS yang tepat yang mendukung sistem basis data dan merupakan langkah optional. Proses pemilihan DBMS ini dilakukan pada Bab 3.3.2.
3.1.6. Application Design
Application design yaitu proses merancang user interface dan program aplikasi yang digunakan dan diproses oleh basis data. Terdapat dua aspek dalam merancang aplikasi, yaitu:
3.1.6.1. Transaction Design
Transaction design meliputi penentuan transaksi-transaksi yang diperlukan dan akan ditentukan pada Bab 3.2.
3.1.6.2. User Interface Design
User interface design meliputi perancangan State Transition Diagram, layar input, output. Peracangan user interface juga didesain mengikuti Eight Golden Rules. Peracangan user interface akan dibahas secara lebih detil dengan gambar-gambar rancangan pada Bab 3.4.
3.1.7.Sejarah Perusahaan
Sebuah bisnis bersama yang sudah lama berakar di Indonesia, dari mayoritas proyek-proyek unggulan yang telah kami kerjakan di Jakarta dan beranjak dari pengalaman tersebut sangat bermanfaat menjadikan keahlian tersendiri bagi PT. MULTI SARANA KITA. Dengan dedikasi untuk memahami kebutuhan klien, analisis yang cermat dari arah masa depan dan kemampuan untuk memberikan pengalaman dan nasihat, perusahaan telah berjalan dan semakin kuat selama 2 tahun terakhir.Keberhasilan PT. MULTI SARANA KITA. didasarkan pada perhatian yang diberikan untuk kesejahteraan karyawan dan staf, memastikan bahwa karyawan dan staf dibawah Perusahaan akan mendapat pelatihan skill secara terus menerus.
Secara khusus, orang-orang kami terlibat dalam setiap aspek proyek dan kami mendorong dan mendukung ide-ide untuk meningkatkan keamanan, efisiensi dan memberikan hasil akhir yang sangat baik. Kami memiliki contoh besar yang telah menghasilkan karya besar yaitu cara berpikir yang sama sekali baru. Pendekatan inklusif telah menghasilkan sebuah tim yang stabil dari 25 karyawan denganberbagai keterampilan dan pengetahuan khusus dalam mendukung pekerjaan konstruksi. Dengan kepercayaan dan kerjasama yang baik, kami adalah perusahaan konstruksi yang siap untuk mengerjakan proyek-proyek pada masa depan yang lebih baik.
Surveyor General Affair Head Finance Logistic Finance Direktur Utama Quantity Enginer
Project Manager Engineer
Head Technic Head HRD
Procurement
3.1.8. Struktur Organisasi PT Multi Sarana Kita
3.1.9. Tanggung Jawab danWewenang 1) Direktur Utama
•Bertanggung jawab atas komitmen terhadap pelaksanaan prinsip-prinsip Manajemen yang efektif agar dapat dicapai tujuan Perusahaan baik tujuan jangka pendek maupun program jangka panjang
•Menetapkan Kebijakan Mutu dan Sasaran Mutu, menetapkan Struktur organisasi, menetapkan tugas, tanggung jawab dan wewenang (Job Descriptions).
•Sebagai pengambil keputusan tertinggi Kepala Manajerial •Direktur Utama berwenang mengangkat dan memberhentikan
Manajer/Kabag. dan Kepala Seksi serta memberikan peringatan apabila dianggap menyimpang dari kebijakan dan peraturan yang telah ditetapkan oleh pihak Manajemen.
2) Head Technic
•Membantu pelaksana kegiatan dalam mengendalikan proyek sejak awal kegiatan sampai pelaksaan kegiatan.
•Membantu mengevaluasi pekerjaan-pekerjaan yang dilaksanakan sehingga sesuai dengan yang direncanakan.
•Memberikan saran-saran teknis kepada pelaksanaan kegiatan. •Mengambil keputusan yang berhubungan dengan proyek atas
persetujuan pelaksana kegiatan.
•Mengumpulkan, meneliti dan mengelola data yang berhubungan dengan pelaksanaan proyek.
3) Head HRD
•Mengkoordinasikan perumusan perencanaan dan pemberdayaan pegawai
•Mengkoordinasikan perumusan sistem pengadaan, penempatan dan pengembangan pegawai.
•Menyiapkan laporan kegiatan secara benar dan tepat waktu. •Menindaklanjuti hasil penilaian kinerja seluruh pegawai. 4) Head Finance
berlaku bagi pelaksanaan keuangan Daerah dan Negara. •Membuat buku kas umum beserta buku penunjangnya.
•Mengadakan data yang bersifat kearsipan yang menyangkut dengan pembukuan.
•Bertanggung jawab atas uang kas proyek.
•Menyelenggarakan pengurusan keuangan baik bersifat penerimaan, penyimpanan dan pengeluaran serta bertanggung jawab sepenuhnya atas pengolahan keuangan proyek.
5) Project Manajer
•Menyampaikan laporan pertanggungjawaban kegiatan bulanan kepada Direktur Utama / Direktur Utama / Direktur dengan format Laporan Bulanan atau dengan menggunakan catatan mutu bagian Operasional yang telah ditetapkan dalam dokumentasi SMM ISO 9001 : 2008
•Berwenang memberikan peringatan dan teguran kepada staff-staff dan administrasi yang berada di bagiannya apabila dipandang menyimpang dari perencanaan maupun kebijakan yang telah ditetapkan oleh Direktur Utama / Direktur Utama / Direktur
6) Engineer
•Menyusun Rencana Anggaran Pekerjaan / RAP dan Rencana Anggaran Biaya / RAB
•Menyusun Rencana Kebutuhan Material / Material Staat, Kebutuhan SDM dan Tenaga Ahli dan Kebutuhan Mesin / Peralatan.
7) Procurement
•Bertanggung jawab atas semua realisasi kegiatan pembelian yang telah telah dilakukan
8) General Affair
•Bertanggung jawab atas keselamatan pekerja sesuai dengan standarisasi K3 yang berlaku di lapangan
•Sebagai perwakilan perusahaan untuk menjalin hubungan baik kepada pihak eksternal
•Memenuhi semua kebutuhan operasional pada internal perusahaan, seperti penyediaan ATK untuk karyawan, pengajuan perawatan kendaraan dan lain-lain
•Menjaga, mendata dan merawat seluruh aset perusahaan
•Pengurusan dokumen-dokumen untuk kepentingan internal perusahaan
9) Logistic
•Bertanggung jawab di lapangan atas ketidaksesuaian bahan / material proyek yang dipesan
10)Finance
•Mempersiapkan daftar biaya berkaitan dengan rancangan dalam bentuk batas biaya dan target biaya untuk setiap bagian pekerjaan.
•Menyelenggarakan sistem administrasi umum dan teknis dalam rangka memperlancar pengelolaan proyek.
•Membuat pembukuan arsip-arsip yang berhubungan dengan pelaksanaan proyek
•Melaksanakan pengendalian biaya selama pelaksanaan proyek. 11)Surveyor
•Bertanggung jawab langsung kepada Quantity Engineer
•Melakukan pengawasan ketelitian pengukuran oleh kontraktor terhadap titik-titik penting sehingga tidak terjadi selisih dimensi maupun elevasi
•Mengumpulkan semua data pekerjaan yang dilaksanakan di lapangan dan bertanggung jawab atas ketelitian yang didapat. 12)Quantity Enginer
•Bertanggung jawab kepada Project Manager.
•Melakukan pengawasan terhadap pekerjaan kontraktor apakah sesuai dengan kuantitas yang telah ditentukan.
•Menolak pekerjaan kontraktor yang kuantitasnya tidak sesuai dengan ketentuan.
•Memberikan laporan tertulis pada pelaksanaan kegiatan atas hal-hal yang menyangkut masalah pengendalian kuantitas.
3.2. Analisis Sistem yang Berjalan
PT Multi Sarana Kita selama ini menjalankan proses bisnisnya dengan menggunakan data-data yang disimpan dalam Microsoft Office Excel. Tapi, belum ada sistem informasi yang terintegrasi dalam kantor perusahaan ini. Data-data yang dibutuhkan dalam proses bisnis yang ada mencakup data proyek, data harga material, dan lain-lain. Tahap-tahap yang ada dalam proses bisnis PT Multi Sarana Kita ini adalah sebagai berikut :
3.2.1.1. Persetujuan Awal Penerimaan Proyek
Tahap-tahap yang dilakukan dalam persetujuan awal penerimaan proyek yaitu:
•Penerimaan permintaan penawaran pekerjaan proyek dari klien.
•Melakukan penawaran harga dengan membuat pengajuan Rencana Anggaran Biaya (RAB) dari pihak PT Multi Sarana Kita kepada klien.
•Jika klien menyetujui RAB yang diajukan oleh PT Multi Sarana Kita, maka penanganan proyek sudah bisa dilakukan setelah klien memberikan Surat Perintah Kerja (SPK) kepada pihak PT Multi Sarana Kita.
Gambar 3.2 Flowchart Persetujuan awal penerimaan Proyek
3.2.1.2. Persiapan Proyek
Penanganan proyek diawali dengan penerimaan gambaran lahan dari klien. Setelah itu, pihak PT Multi Sarana kita dapat melakukan survey lahan yang akan dibangun. PT Multi Sarana kita membuat perhitungan jumlah bahan material yang dibutuhkan.
Klien Technician Finance
PROSEDUR STANDAR OPERASI
Penanggung Jawab (Person in Charge /PIC)
Start Pembuatan RAB RAB Diterima Pembuatan Ulang RAB Penerimaan SPK RAB TIDAK YA TIDAK Finish 1 Penawaran Kerja (proyek) YA
Gambar 3.3 Flowchart Perhitungan kebutuhan Material
Project Manager Surveyor Finance
PROSEDUR STANDAR OPERASI
Penanggung Jawab (Person in Charge /PIC)
1 SPK Klarifikasi lahan [mengacu pada SPK] Perhitungan material dan pengajuan Pembelian bahan Menuju pembelian Material Penunjuk kan Tim Proyek Material yang dibutuhkan serta jumlah kebutuhan
Gambar 3.4 Flowchart Perhitungan Material
Setelah perhitungan material dilakukan, staff bagian procurement membuat order pemesanan material (purchase order) yang ditujukan kepada pihak pemasok hingga proses penerimaan material dari pemasok ke PT Multi Sarana Kita, staff bagian keuangan menerima penagihan purchase order sesuai material yang diterima.
Logistik Procurement Finance
PROSEDUR STANDAR OPERASI
Penanggung Jawab (Person in Charge /PIC)
Pembuatan Purchase Order PO Penerimaan Barang Bukti Penerimaan Barang Penerimaan tagihan PO Bukti pembayaran tagihan PO
Dalam 1 proyek konstruksi, dapat terjadi adanya permintaan kerja tambah serta adanya pertambahan biaya yang disebut dengan addendum. Oleh karena itu, pencatatan kemajuan proyek bersifat dinamis.
Gambar 3.5 Flowchart Pengajuan Addendum
Engineer Client Start SPK Permintaan Penambahan Kerja (Adendeum) Pembuatan Adendum Adendum YA TIDAK FINISH
3.2.1.3. Penagihan dan Pembayaran Proyek
Gambar 3.6 Flowchart Pembayaran Tagihan awal
Selanjutnya, pihak PT Multi Sarana Kita akan mengirim tagihan secara berkala disertai laporan kemajuan kerja kepada klien. Sedangkan penagihan dan pembayaran addendum (jika ada addendum) dilakukan setelah proyek konstruksi dinyatakan selesai. Setelah proyek konstruksi selesai, pihak perusahaan tidak dibayar secara penuh, tapi ada persentase biaya jaminan pemeliharaan yang baru dibayarkan setelah proyek konstruksi
Bagian Keuangan Start SPK Pembuatan Tagihan Awal Tagihan Awal Penerimaan Pembayaran Tagihan awal Tagihan Awal Data Pembayaran Tagihan awal 3
dinyatakan tidak bermasalah.
Gambar 3.7 Flowchart Pembayaran Tagihan Berkala
Bagian Keuangan Bagian Lapangan
3 Pembuatan Tagihan Berkala Tagihan Berkala Penerimaan Pembayaran Tagihan Berkala Data Pembayaran
tagihan berkala Proyek Selesai
Pembuatan Tagihan Addendum Addendum YA TIDAK YA Tagihan Addendum Penerimaan Pembayaran Tagihan Addendum Data Pembayaran tagihan Addendum Pemeliharaan Proyek Konstruksi TIDAK Pembuatan Tagihan Pemeliharaan Tagihan Addendum Penerimaan Pembayaran Tagihan Addendum Data Pembayaran tagihan Addendum Finish
Untuk pembayaran kerja proyek, klien dapat melakukan pembayaran lewat transfer (antar Bank), rekening maupun secara tunai (biasa dilakukan pada proyek-proyek kecil).
3.2.2. Analisis Kebutuhan User 3.2.2.1. Kebutuhan Transaksi
•Entry data Surat Perintah Kerja (SPK)
Setelah SPK diterima dari klien, Staff Engineer akan melakukan pencatatan SPK, tanggal dimulai dan berakhirnya kesepakatan proyek, jumlah tahap pembayaran serta data-data perusahaa klien.
•Entry RAB
RAB (Rancangan Anggaran Biaya) dibuat dalam rangka perancangan anggaran proyek, kebutuhan bahan material yang sebelum nya telah dicek dari pemasok di list secara lengkap apa saja yang dibutuhkan dalam pembangunan proyek.
•Ubah RAB
Bagian technician melakukan perubahan RAP dan RAB. Perubahan RAP dan RAB terjadi bila ada perubahan terhadap harga atau perubahan rancangan pekerjaan yang sebelumnya.
•Pembelian bahan Material
Setelah SPK (Surat Perintah Kerja) keluar dari pihak klien. Bagian procurement melakukan entry data berapa jumlah kebutuhan penggunaan material, setelah itu dilakukan pembelian bahan material yang dibutuhkan kepada pemasok bahan material dan entry data berapa banyak bahan material yang di beli, nama bahan material, harga serta total harga. Bahan yang di beli nantinya akan dikirim ke lapangan dan di terima dan dilakukan cek alat dan bahan oleh bagian logistik.
•Entry progress proyek
Bagian technician melakukan entry data progress pembangunan proyek konstruksi.
•Entry data addendeum
Bila proyek konstruksi yang di bangun lebih dari waktu yang di tentukan karena proyek belum mencapai target, bagian technician melakukan entry data - data addendeum yang nanti nya akan di berikan kepada pihak kilen. Setelah itu pihak klien akan konfirmasi ke perusahaan diterima atau tidaknya addendeum
•Entry pembayaran awal
Sebelum pembangunan proyek dilakukan, pihak klien melakukan pembayaran awal kepada perusahaan. Bagian keuangan melakukan entry data pembayaran awal proyek konstruksi
•Entry pembayaran berkala
Pada saat pembangunan proyek berjalan, perusahaan melakukan pembayaran sesuai progress pekerjaan. Bagian keuangan melakukan entry data pembayaran berkala proyek setelah melakukan perhitungan dari pembayaran uang muka.
•Entry pembayaran addendeum
Bagian keuangan melakukan entry pembayaran addendum setelah pembangunan proyek konstruksi selesai.
3.2.2.2. Kebutuhan Informasi • Bagian marketing
Membutuhkan informasi data klien dan proyek konstruksi yang akan di bangun
• Bagian Procurement
membutuhkan informasi list harga bahan material dari pemasok.
• Bagian Technician
o Membutuhkan informasi list harga bahan material yang di dapat dari bagian procurement per harga, per nama bahan material untuk pembuatan RAB
o Membutuhkan informasi progress pembangunan proyek konstruksi untuk memastikanada atau tidaknya pembuatan addendeum per tanggal dan per progress
o Membutuhkan informasi data-data addendeum. • Bagian Keuangan
o Membutuhkan informasi SPK (Surat Perintah Kerja) yang di keluarkan oleh pihak kilen.
o Membutuhkan informasi PO (Purchase Order) bahan material yang telah di beli dari pemasok untuk melakukan pembayaran. Per-berapa banyak bahan material yang di beli, nama bahan material, harga dan total harga.
o Membutuhkan informasi uang muka untuk penagihan pembayaran awal sebelum pembangunan proyek di lakukan.
o Membutuhkan informasi progress pembangunan proyek untuk penagihan pembayaran berkala per tanggal dan per progress.
o Membutuhkan informasi data addendeum untuk penagihan pembayaran addendeum kepada klien. • Bagian Logistik
o Membutuhkan informasi alat dan bahan material untuk melakukan cek apakah barang yang tiba di lapangan sesuai dengan yang di pesan
• Bagian Surveyor
o Membutuhkan informasi ketersedian alat berat yang tersedia per jumlah alat berat dan nama alat berat.
3.2.2.3. Kebutuhan Integritas Data
• Dibutuhkan integrasi data antara bagian procurement dan bagian technician, sehingga bagian technician dapat mengetahui list harga alat dan bahan material untuk pembuatan RAP dan RAB.
• Dibutuhkan integrasi data antara bagian procurement dan bagian surveyor, sehingga bagian surveyor dapat mengetahui kondisi terkini dari stok alat berat.
• Dibutuhkan integrasi data antara bagian procurement dan bagian logistik, sehingga bagian logistik dapat mengetahui apa saja alat dan bahan material yang di pesan dan melakukan cek barang yang datang di lapangan untuk pembangunan proyek.
• Dibutuhkan integrasi data antara bagian procurement dan bagian keuangan, sehingga bagian keuangan dapat mengatasi penagihan ataupun pembayaran kepada client dan pemasok baik penagihan pembayaran awal,penagihan pembayaran berkala, penagihan pembayaran addendeum, dan pembayaran PO alat dan bahan.
• Dibutuhkan integrasi data bagian technician dan bagian keuangan, sehingga bagian keuangan mengetahui kondisi terkini progres pembangunan proyek untuk melakukan penagihan pembayaran berkala
3.2.2.4. Kebutuhan atas Keamanan Data
• Data klien hanya dapat di akses oleh bagian marketing sesuai dengan batasan haknya.
• Data RAP dan RAB, data addendeum dan data progress pembangunan proyek hanya dapat di akses oleh bagian technician sesuai dengan batasan hak akses nya.
• Data persediaan alat berat hanya dapat di akses oleh bagian surveyor.
• Data pembayaran hanya dapat di akses oleh bagian keuangan.
• Data progress proyek hanya dapat di akses oleh bagian technician dan keuangan sesuai denga batasan haknya • Data hanya bisa diakses melalui aplikasi yang tersedia bagi
pengguna sesuai dengan tugas dan wewenang masing-masing.
3.2.3. Identifikasi Masalah
Permasalahan-permasalahan yang dihadapi oleh PT Multi Sarana Kita saat ini, antara lain :
1. Tidak adanya pencatatan kwitansi keluar, tagihan masuk, dan tagihan tambah kerja (addendum) secara komputerisasi, sehingga sering kali beberapa pembayaran terlupakan karena catatan yang hilang dan sebagainya.
2. Belum tersedianya aplikasi basis data untuk bagian penanganan proyek (pengerjaan proyek konstruksi dan pembayaran proyek) dan pembelian material sehingga proses bisnis membutuhkan waktu yang lambat dan kurang optimal.
3. Aplikasi yang digunakan pada bagian keuangan tidak terintegrasi dengan proses bisnis.format pencatatan bagian keuangan tidak seragam dengan proses bisnis yang lain sehingga butuh waktu tambahan untuk konversi data.
3.2.4. Usulan Pemecahan Masalah
Pemecahan masalah yang diajukan adalah dengan merancang sebuah basis data yang sesuai dengan proses bisnis PT Multi Sarana Kita. Basis data tersebut nantinya akan saling terintegrasi antara proses bisnis yang satu dengan yang lain. Pemecahan masalah selanjutnya yang diajukan yakni merancang aplikasi yang menjadi media interaksi transaksi antara pengguna dan basis data tersebut. Program aplikasi yang dirancang juga akan mendukung pembuatan laporan-laporan perusahaan, sehingga dapat digunakan secara efektif dan efisien oleh pihak-pihak terkait dalam perusahaan dalam mendukung proses bisnis yang sedang berjalan.
3.3.Perancangan
3.3.1. Perancangan Basis Data
Metodologi perancangan basis data dibagi ke dalam tiga tahapan utama, yaitu:
1. Perancangan basis data konseptual 2. Perancangan basis data logikal 3. Perancangan basis data fisikal
3.3.1.1.Perancangan Basis Data Konseptual
Perancangan basis data konseptual merupakan proses pembentukan model dari informasi yang digunakan dalam perusahaan, independen terhadap semua pertimbangan fisik. Adapun langkah-langkah dalam perancangan basis data konseptual yaitu:
1. Mengidentifikasi tipe entitas 2. Mengidentifikasi tipe relasi
3. Mengidentifikasi dan mengasosiasikan atribut suatu entitas 4. Mengidentifikasi domain atribut
5. Mengidentifikasi atribut candidate key dan primary key 6. Mempertimbangkan konsep pemodelan enhanced (optional) 7. Memeriksa model terhadap redundansi
8. Memvalidasi model konseptual terhadap transaksi pengguna 9. Meninjau kembali model data konseptual dengan pengguna
1. Mengidentifikasi tipe entitas
Tabel 3.1 Identifikasi Tipe Entitas
Entity Name Description Aliases Occurrence
Staff Semua yang
berperan dalam proses bisnis perusahaan Karyawan Karyawan melakukan penerimaan proyek, pembuatan RAP dan RAB, pembelian alat dan bahan, keuangan dan logistik Client Semua pelanggan yang menawarkan pengerjaan proyek Pelanggan Pelanggan mengajukan proyek untuk di kerjakan Project Semua proyek yang ditawarkan pelanggan
Proyek Proyek diawali negosiasi dengan pembuatan RAP dan RAB ProjectOrder Semua proyek yang telah disepakati oleh pelanggan dan pihak perusahaan Surat Perintah Kerja ( SPK ) SPK dibuat ketika RAP dan RAB di setujui da n proyek dimulai
Entity Name Description Aliases Occurrence ProjectAddendum Semua proyek
yang membutuhkan penambahan atau penguranagan waktu Addendum Memperbarui SPK yang telah disepakati oleh pelanggan dan pihak perusahaan Supplier Semua supplier yang memasok bahan material ke perusahaan Pemasok Supplier menerima PO dari perusahaan dan supplier mengirimkan barang sesuai dengan yang di beli
PurchaseOrder Semua barang yang di pesan oleh perusahaan ke supplier PO Perusahaan melakukan PurchaseOrder kepada supplier untuk memenuhi bahan material yang dibutuhkan dalam proyek PurchaseOrderReceipt Semua penerimaan material yang di beli Penerimaan pembelian Menunjukan material yang di terima perusahaan berdasarkan PO yang di ajukan perusahaan
Entity Name Description Aliases Occurrence Material Semua bahan
material yang dibutuhkan dalam pengerjaan proyek
material Material dibeli melalu PO dan digunakan sesuai SPK PurchaseBill Semua tagihan atas pembelian material oleh supplier Tagihan pembelian Menunjukan jumlah tagihan pembelian sesuai dengan PO yang di ajukan perusahaan PurchasePayment Semua pembayaran dari pembelian material kepada supplier Pembayaran pembelian Menunjukan jumlah pengeluaran perusahaan dengan pembayaran pembelian material ProjectBill Semua tagihan yang harus di bayar oleh pelanggan Tagihan proyek Menunjukan jumlah tagihan proyek yang akan dikeluarkan secara berkala berdasarkan perkembangan pengerjaan proyek
Entity Name Description Aliases Occurrence ProjectPayment Semua penerimaan dari pembayaran proyek oleh pelanggan berdasarkan tagihan proyek Pembayaran proyek Menunjukan pendapatan perusahaan berdasarkan tagihan proyek AddendumBill Semua tagihan proyek addendum yang harus di bayar oleh pelanggan Tagihan addendum Penagihan addendum dilakukan di akhir Pengerjaan proyek. AddendumPayment Semua penerimaan dari pembayaran proyek addendum Pembayaran proyek addendum Menunjukan pendapatan perusahaan berdasarkan tagihan proyek addendum MaterialUsed material yang
akan digunakan dalam pengerjaan proyek dilapangan Material guna Menunjukan material yang akan digunakan dalam pengerjaan proyek dilapangan
Entity Name Description Aliases Occurrence StockAdjustment Penyesuaian stok material Penyesuaian stok Penyesuaian stok jika terjadi selisih antara di workshop dan di sistem AccountBank Semua rekening bank yang dimiliki perusahaan Rekening bank Rekening tujuan pembayaran pelanggan kepada perusahaan dan rekening yang digunakan perusahaan untuk membayar supplier
2. Mengidentifikasi Tipe Relasi
Tujuan dari tahap ini adalah untuk mengidentifikasi hubungan antar entitas-entitas yang ada. Berikut ini adalah Entity Relationship Diagram(ERD) Konseptual yang memuat nama entitas, multiplicity beserta nama relasi antar entitas.
Tabel 3.2 Identifikasi Tipe Relasi
Entity Name Multi
plicity Relationship Entity Name
Multi plicity
Klien 1..1 Memiliki Project 1..*
Staff 1..1 Menerima Project 1..*
Staff 1..1 Mengajukan PurchaseOrder 1..*
Staff 1..1 Menerima POReceipt 1..*
Staff 1..1 Menerima PurchaseBill 1..*
Staff 1..1 Melunasi PurchasePayment 1..*
Staff 1..1 Mengirim MaterialUsed 1..*
Staff 1..1 Melakukan StockAdjusment 1..* Staff 1..1 Mencatat AddendumPayment 1..*
Staff 1..1 Mencatat ProjectPayment 1..*
Staff 1..1 Mengajukan ProjectBill 1..*
Staff 1..1 Menangani ProjectAddendum 1..*
Staff 1..1 Mengajukan AddendumBill 1..*
Staff 1..1 Menangani ProjectOrder 1..*
Supplier 1..1 Menerima PurchaseOrder 1..* PurchaseOrder 1..1 Memiliki PurchaseBill 1..1 POReceipt 1..1 Menerima PurchaseOrder 1..1
Material 1..* Merinci POReceipt 1..*
Material 1..* Merinci PurchaseOrder 1..*
Material 1..* Merinci MaterialUsed 1..*
Material 1..* Merinci StockAdjusment 1..* Material 1..* Merinci ProjectAddendum 1..*
Material 1..* Merinci Project 1..*
AccountBank 1..1 Membayar PurchasePayment 1..* AccountBank 1..1 Menerima AddendumPayment 1..* AccountBank 1..1 Menerima ProjectPayment 1..*
Entity Name Multi
plicity Relationship Entity Name
Multi plicity
Project 1..1 Menjadi ProjectOrder 1..0
ProjectOrder 1..1 Memiliki ProjectBill 1..* ProjectOrder 1..1 Memiliki ProjectAddendum 0..* ProjectOrder 1..1 Memerlukan MaterialUsed 1..* ProjectBill 1..1 Menagih ProjectPayment 1..1 ProjectAddendum 1..1 Memiliki AddendumBill 1..1 AddendumBill 1..1 Menagih AddendumPayment 1..1 PurchaseBill 1..1 Menagih PurchasePayment 1..1
3. Mengidentifikasi dan mengasosiasikan atribut suatu entitas
Tujuan dari tahap ini adalah mengidentifikasi dan menggabungkan atribut yang digunakan dalam suatu entitas beserta tipe data atribut masing-masing yg digunakan.
Tabel 3.3 Asosiasi Atribut Entitas Staff
Attribute Description Data Type
and Length Null
Multi valued StaffID Secara unik
mengidentifikasi staff
Char (4) No No
StaffName Nama staff Varchar (30) No No Address Alamat staff Varchar (50) No No Phone No telpon staff Varchar (15) No No
Email Email staff Varchar (30) No No
Password Password staff Char(32) No No
Tabel 3.4 Asosiasi Atribut Entitas Client
Attribute Description Data Type
and Length Null
Multi valued ClientID Secara unik
mengidentifikasi client
Char (4) No No
ClientName Nama client Varchar (30) No No
Address Alamat client Varchar (50) No No
Phone No telp client Varchar (15) No No
Email Email client Varchar (30) Yes No
Fax No fax client Varchar (15) Yes No
Tabel 3.5 Asosiasi Atribut Entitas Project
Attribute Description Data Type
and Length Null
Multi valued ProjectID Secara unik
mengidentifikasi proyek
Char (4) No No
ProjectName Nama Proyek Varchar (30) No No ProjectAddress Alamat Proyek Varchar (50) No No
ClientName Nama klien Varchar (30) No No
Phone Telepon klien Varchar(15) No No
Email Email Klien Varchar(30) Yes No
Fax Fax Klien Varchar(15) Yes No
RAB_date Tanggal pengajuan RAB
Datetime No No
SubRAB_Name Nama Sub anggaran RAB
Varchar(50) No No
MaterialName Nama Material Varchar(30) No No
Qty Jumlah Material Integer No No
Unit Satuan Material Varchar(5) No No
UnitPrice Harga Satuan Material Numeric(12, 2)
RAB_Amount Jumlah harga per-material
Numeric(12, 2)
No No
SubTotal Total harga material Numeric(12, 2)
No No
PPN Pajak Proyek Integer No No
GrandTotal Harga proyek setelah kena PPN
Numeric(12, 2)
No No
RoundPrice Pembulatan harga proyek
Numeric(12, 2)
No No
StaffName Nama Staff Varchar(30) No No
Tabel 3.6 Asosiasi Atribut Entitas ProjectOrder
Attribute Description Data Type
and Length Null
Multi valued ProjectOrderID Secara unik
mengidentifikasi Project Order
Char(6) No No
ProjectOrderDocNu mber
Nomor Surat Perintah Kerja (SPK)
Varchar(20) No No
ProjectOrderDate Tanggal SPK keluar Datetime No No ProjecttOrderNote Catatan tambahan
pada SPK
Varchar(100) Yes No
StartDate Tanggal mulai proyek Datetime No No EndDate Tanggal berakhir
proyek
Datetime No No
TotalTerm Total tahapan
pembayaran
Integer No No
Tabel 3.7 Asosiasi Atribut Entitas ProjectAddendum
Attribute Description Data Type
and Length Null
Multi valued ProjectAddID Secara unik
mengidentifikasi Addendum proyek Char(5) No No ProjectAddDocNum ber Nomor Referensi surat addendum Varchar(20) No No
ProjectAddDate Tanggal diterima addendum
Datetime No No
ProjectAddNote Catatan tambahan addendum
Varchar(100) Yes No
ProjectOrderDocNu mber
Nomor proyek yang diberi addendum
Varchar(20) No No
MaterialName Nama Material Varchar(30) No No
Qty Jumlah Material Integer No No
Unit Satuan Material Varchar(5) No No
UnitPrice Harga satuan material Numeric(12, 2)
No No
Status Status Penambahan/ pengurangan material
Char(7) No No
Amount Jumlah harga per material
Numeric(12, 2)
No No
Subtotal Total harga material Numeric(12, 2)
No No
PPN Nilai Pajak pada
addendum
Integer No No
GrandTotal Total harga setelah kena pajak
Numeric(12, 2)
No No
Tabel 3.8 Asosiasi Atribut Entitas Supplier
Attribute Description Data Type
and Length Null
Multi valued SupplierID Secara unik
mengidentifikasikan supplier
Char (4) No No
SupplierName Nama supplier Varchar (30) No No Address Alamat supplier Varchar (50) No No Phone No telpon supplier Varchar (15) No No Fax No fax supplier Varchar (15) Yes No Email Email supplier Varchar (30) Yes No SupplierTypeName Nama jenis supplier Varchar (30) No No
Tabel 3.9 Asosiasi Atribut Entitas PurchaseOrder
Attribute Description Data Type
and Length Null
Multi valued
POID Secara unik
mengidentifikasi Purchase Order
Char(8) No No
PODocNumber Nomor referensi surat Purchase Order
Varchar(20) No No
PODate Tanggal Purchase Order
Datetime No No
PONote Catatan tambahan Purchase Order
Varchar(100) Yes No
ReceiptDate Tanggal pengiriman Datetime No No SupplierName Nama supplier Varchar(30) No No MaterialName Nama material Varchar(30) No No
Qty Jumlah material Integer No No
Unit Satuan material Varchar(5) No No
UnitPrice Harga satuan material Numeric(12, 2)
No No
Amount Jumlah harga per material
Numeric(12, 2)
No No
TotalAmount Total harga material Numeric(12, 2)
No No
Discount Diskon Purchase Order
Integer Yes No
SubTotal Total harga setelah diskon
Numeric(12, 2)
No No
PPN Nilai Pajak Purchase Order
Integer No No
GrandTotal Total harga setelah kena pajak
Numeric(12, 2)
No No
Tabel 3.10 Asosiasi Atribut Entitas PurchaseOrderReceipt
Attribute Description Data Type
and Length Null
Multi valued POReceiptID Secara unik
mengidentifikasi POReceipt Char(8) No No POReceiptDocNum ber Nomor referensi peneriman order Varchar(20) No No
POReceiptDate Tanggal terima material dari supplier
Datetime No No
POReceiptNote Catatan tambahan penerimaan material
Varchar(100) Yes No
PODocNumber Nomor PurchaseOrder material yang dikirim
Varchar(20) No No
CarPlatNo Plat nomor kendaraan pengirim
Varchar(12) No No
DriverName Nama supir Varchar(30) No No
MaterialName Nama material Varchar(30) No No
Qty Jumlah material Integer No No
Unit Satuan material Varchar(5) No No
StaffName Nama staff Varchar(30) No No
Tabel 3.11 Asosiasi Atribut Entitas Material
Attribute Description Data Type
and Length Null
Multi valued MaterialID Secara unik
mengidentifikasi material
Char(5) No No
MaterialName Nama material Varchar(30) No No
Stock Jumlah material Integer No No
Unit Satuan material Varchar(5) No No
Tabel 3.12 Asosiasi Atribut Entitas PurchaseBill
Attribute Description Data Type
and Length Null
Multi valued PurchaseBillID Secara unik
mengidentifikasi Purchase Bill Char(8) No No PurchaseBillDocNu mber Nomor referensi tagihan pembelian Varchar (20) No No
PurchaseBillDate Tanggal terima tagihan pembelian
Datetime No No
PurchaseBillNote Catatan tambahan tagihan pembelian
Varchar(100) Yes No
PurchaseBillDueDa te
Tanggal jatuh tempo pembayaran tagihan pembelian
Datetime No No
PODocNumber Nomor dokumen Purchase order
Varchar(20) No No
Bill_Amount Jumlah pembayaran pembelian
Numeric(12, 2)
No No
Discount Diskon pada tagihan pembelian
Integer Yes No
SubTotal Jumlah harga setelah diskon
Numeric(12, 2)
No No
PPN Nilai pajak pada
pembelian
Integer No No
GrandTotal Total pembayaran tagihan setelah kena pajak
Numeric(12, 2)
No No
Tabel 3.13 Asosiasi Atribut Entitas PurchasePayment
Attribute Description Data Type
and Length Null
Multi valued PurchasePaymentID Secara unik
mengidentifikasi Purchase Payment Char(8) No No PurchasePaymentDoc Number Nomor referensi dokumen pembayaran tagihan pembelian Varchar(20) No No
PurchasePaymentDate Tanggal pembayaran tagihan pembelian
Datetime No No
PurchasePaymentNote Catatan tambahan pembayaran tagihan Varchar(100) Yes No PurchaseBillDocNum ber Nomor dokumen tagihan pembelian yang dibayar Varchar(20) No No
SupplierAccountNo Nomor rekening supplier
Varchar(15) No No
AccountNo Nomor rekening perusahaan
Varchar(15) No No
PaymentTypeName Nama jenis pembayaran
Varchar (10) No No
PurchasePayment_Am ount
Jumlah pembayaran Numeric(12, 2)
No No
Tabel 3.14 Asosiasi Atribut Entitas ProjectBill
Attribute Description Data Type
and Length Null
Multi valued ProjectBillID Secara unik
mengidentifikasi Project Bill Char(8) No No ProjectBillDocNumbe r Nomor referensi dokumen tagihan pengerjaan proyek Varchar(20) No No
ProjectBillDate Tanggal keluar tagihan pengerjaan proyek
Datetime No No
ProjectBillNote Catatan tambahan tagihan proyek
Varchar(100) Yes No
ProjectBillDueDate Tanggal Jatuh Tempo Pembayaran tagihan proyek
Datetime No No
TermOfPayment Tahap pelunasan pembayaran
Integer No No
Bill_Amount Umlah harga belum kena Pajak
Numeric(12, 2)
No No
PPN Nilai pajak tagihan
proyek
Integer No No
GrandTotal Jumlah harga setelah kena pajak Numeric(12, 2) No No ProjectOrderDocNum ber
Nomor proyek yang ditagih
Varchar(20) No No
Tabel 3.15 Asosiasi Atribut Entitas ProjectPayment
Attribute Description Data Type
and Length Null
Multi valued ProjectPaymentID Secara unik
mengidentifikasi Project Payment Char(8) No No ProjectPaymentDocNu mber Nomor referensi kuitansi pembayaran proyek Varchar(20) No No
ProjectPaymentDate Tanggal penerimaan pembayaran
Datetime No No
ProjectPaymentNote Catatan tambahan pada kuitansi pembayaran Varchar(100) Yes No ProjectBillDocNumbe r Nomor referensi tagihan pembayaran Varchar(20) No No
AccountNo Nomor rekening perusahaan Varchar(15) Yes No ProjectPayment_Amo unt Jumlah pembayaran yang dilakukan Numeric(12, 2) No No
PaymentTypeName Nama Jenis pembayaran
Varchar(10) No No
Tabel 3.16 Asosiasi Atribut Entitas AddendumBill
Attribute Description Data Type
and Length Null
Multi valued AddendumBillID Secara unik
mengidentifikasi tagihan Addendum Char(8) no no AddendumBillDocNu mber Nomor referensi tagihan Addendum Varchar(20) no no
AddendumBillDate Tanggal dikeluarkan tagihan Addendum
Datetime no no
AddendumBillNote Keterangan tambahan tagihan Addendum
Varchar(100) yes no
AddendumBillDueDat e
Tanggal jatuh tempo pembayaran tagihan Addendum
Datetime no no
AddendumBill_Amou nt
Jumlah yang ditagih sebelum dikenakan PPN Numeric(12, 2) no no ProjectAddDocNumbe r Nomor referensi project Addendum yang ditagih varchar(20) no no PPN Nilai PPN untuk tagihan Addendum integer no no
GrandTotal Total harga Addendum setelah dikenakan PPN
numeric(12,2 )
no no
Tabel 3.17 Asosiasi Atribut Entitas AddendumPayment
Attribute Description Data Type
and Length Null
Multi valued AddendumPayment ID Secara unik mengidentifikasi AddendumPayment char(8) no no AddendumPayment DocNumber Nomor referensi kuitansi pembayaran addendum varchar(20) no no AddendumPayment Date Tanggal pembayaran diterima datetime no no AddendumPayment Note Catatan tambahan pembayaran addendum varchar(100) yes no AddendumBillDoc Number Nomor referensi tagihan pembayaran addendum varchar(20) no no AddendumPayment _Amount Jumlah pembayaran addendum numeric(12,2 ) no no
PaymentTypeName Nama jenis pembayaran
varchar(10) no no
AccountNo Nomor rekening perusahaan
varchar(15) yes no
Tabel 3.18 Asosiasi Atribut Entitas MaterialUsed
Attribute Description Data Type
and Length Null
Multi valued MaterialUsedID Secara unik
mengidentifikasi MaterialUsed
char(8) no no
MaterialUsedDocN umber
Nomor referensi surat jalan ke lapangan
varchar(20) no no
MaterialUsedDate Tanggal pengiriman material ke lapangan
datetime no no
MaterialUsedNote Catatan tambahan MaterialUsed
varchar(100) yes no
CarNo Nomor plat kendaraan pengirim material
varchar(12) no no
DriverName Nama supir varchar(30) no no
ProjectOrderDocNu mber
Nomor referensi proyek yang diantar materialnya
varchar(20) no no
MaterialName Nama material varchar(30) no no
Qty Jumlah material integer no no
Unit Satuan material varchar(5) no no
Tabel 3.19 Asosiasi Atribut Entitas StockAdjusment
Attribute Description Data Type
and Length Null
Multi valued StockAdjusmentID Secara unik
mengidentifikasi StockAdjusment Char(5) No No StockAdusmentDoc Number Nomor referensi dokumen penyesuaian stok Varchar(20) No No StockAdjusmentDa te Tanggal dilakukan penyesuaian stok Datetime No No StockAdjusmentNo te Catatan tambahan penyesuaian stok Varchar(100) Yes No
MaterialName Nama material Varchar(30) No No
Qty Jumlah material Integer No No
Unit Satuan material Varchar(5) No No
StaffName Nama staff Varchar(30) No No
Tabel 3.6 Asosiasi Atribut Entitas AccountBank
Attribute Description Data Type
and Length Null
Multi valued AccountID Secara unik
mengidentifikasi account
Char(5) No No
AccountNumber Nomor Rekening Varchar(15) No No
4. Mengidentifikasi domain atribut
Tujuan dari tahap ini adalah menentukan domain dari atribut yang terdapat pada model data konseptual
Tabel 3.21 Attribute Domain - Staff Attribute Attribute Domain
StaffID Format ‘S[0-9][0-9][0-9]’
StaffName Diisi dengan huruf, maks 30 karakter
Address Diisi dengan huruf dan angka, serta dapat mengandung spasi, maks 50 karakter
Phone Diisi dengan angka, serta dapat mengandung tanda ‘-‘, maks 15 karakter
Email Diisi dengan angka, serta dapat mengandung tanda ‘-‘, maks 30 karakter
Password Diisi dengan huruf atau angka, maks 32 karakter
Role Diisi dengan huruf, maks 30 karakter
Tabel 3.22 Attribute Domain – Client Attribute Attribute Domain
ClientID Format ‘C[0-9][0-9][0-9]’
ClientName Diisi dengan huruf, maks 30 karakter
Address Diisi dengan huruf dan angka, serta dapat mengandung spasi, maks 50 karakter
Phone Diisi dengan angka, serta dapat mengandung tanda ‘-‘, maks 15 karakter Email Diisi dengan huruf atau angka, maks 30
karakter
Fax Diisi dengan angka, seta dapat mengandung tanda ‘-‘, maks 15 karakter
Tabel 3.23 Attribute Domain – Project Attribute Attribute Domain
ProjectID Format’P[0-9][0-9][0-9]’
ProjectName Diisi dengan huruf, maks 30 karakter
ProjectAddress Diisi dengan huruf dan angka, serta dapat mengandung spasi, maks 50 karakter
ClientName Diisi dengan huruf, maks 30 karakter
Phone Diisi dengan angka, serta dapat mengandung tanda ‘-‘, maks 15 karakter Email Diisi dengan huruf atau angka, maks 30
karakter
Fax Diisi dengan angka, serta dapat
mengandung tanda ‘-‘, maks 15 karakter RAB_date Format ‘yyyy-MM-dd HH:mm:ss’ SubRAB_Name Diisi dengan huruf, maks 50 karakter
MaterialName Diisi dengan huruf atau angka, maks 30 karakter
Qty Diisi dengan angka
Unit Diisi dengan huruf, maks 5 karakter UnitPrice Diisi dengan angka
Amount Diisi dengan angka
SubTotal Diisi dengan angka
PPN Diisi dengan angka
GrandTotal Diisi dengan angka RoundPrice Diisi dengan angka
Tabel 3.24 Attribute Domain –ProjectOrder Attribute Attribute Domain
ProjectOrderID Format ‘POD[0-9][0-9][0-9]’
ProjectOrderDocNumber Diisi dengan huruf dan angka, maks 20 karakter
ProjectOrderDate Format ‘yyyy-MM-dd HH:mm:ss’ ProjectOrderNote Diisi dengan huruf, maks 100 karakter StartDate Format ‘yyyy-MM-dd HH:mm:ss’ EndDate Format ‘yyyy-MM-dd HH:mm:ss’ TotalTerm Diisi dengan angka
StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.25 Attribute Domain –ProjectAddendum Attribute Attribute Domain
ProjectAddID Format ‘PA[0-9][0-9][0-9]’
AddDocNumber Diisi dengan huruf dan angka, maks 20 karakter
AddDate Format ‘yyyy-MM-dd HH:mm:ss’ AddNote Diisi dengan huruf, maks 100 karakter ProjectOrderDocNumber Diisi dengan huruf dan angka, maks 20
karakter
MaterialName Diisi dengan huruf atau angka, maks 30 karakter
Qty Diisi dengan angka
Unit Diisi dengan huruf, maks 5 karakter UnitPrice Diisi dengan angka
Status Diisi dengan kata ‘Tambah’ atau ‘Kurang’
Amount Diisi dengan angka
Subtotal Diisi dengan angka
PPN Diisi dengan angka
GrandTotal Diisi dengan angka
Tabel 3.26 Attribute Domain –Supplier Attribute Attribute Domain
SupplierID Format ‘SU[0-9][0-9][0-9]’
SupplierName Diisi dengan huruf, maks 30 karakter
Address Diisi dengan huruf dan angka, serta dapat mengandung spasi, maks 50 karakter
Phone Diisi dengan angka, serta dapat mengandung tanda ‘-‘, maks 15 karakter
Fax Diisi dengan angka, serta dapat mengandung tanda ‘-‘, maks 15 karakter
Email Diisi dengan huruf atau angka, maks 30 karakter
Tabel 3.27 Attribute Domain –PurchaseOrder Attribute Attribute Domain
POID Format ‘PUO[0-9][0-9][0-9]’
PODocNumber Diisi dengan huruf dan angka, maks 20 karakter
PODate Format’yyyy-MM-dd HH:mm:ss’
PONote Diisi dengan huruf, maks 100 karakter ReceiptDate Format ‘yyyy-MM-dd HH:mm:ss’ SupplierName Diisi dengan huruf, maks 30 karakter
MaterialName Diisi dengan huruf atau angka, maks 30 karakter
Qty Diisi dengan angka
Unit Diisi dengan huruf, maks 5 karakter UnitPrice Diisi dengan angka
Amount Diisi dengan angka
TotalAmount Diisi dengan angka Discount Diisi dengan angka SubTotal Diisi dengan angka
PPN Diisi dengan angka
GrandTotal Diisi dengan angka
Tabel 3.28 Attribute Domain –PurchaseOrderReceipt Attribute Attribute Domain
POReceiptID Format ‘POR[0-9][0-9][0-9]’
POReceiptDocNumber Diisi dengan huruf dan angka, maks 20 karakter
POReceiptDate Format ‘yyyy-MM-dd HH:mm:ss’ POReceiptNote Diisi dengan huruf, maks 100 karakter PODocNumber Diisi dengan huruf dan angka, maks 20
karakter
CarPlatNo Format ‘yy xxxx yyy’ dimana berupa huruf dan x berupa angka
DriverName Diisi dengan huruf, maks 30 karakter
MaterialName Diisi dengan huruf atau angka, maks 30 karakter
Qty Diisi dengan angka
Unit Diisi dengan huruf, maks 5 karakter StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.29 Attribute Domain –Material Attribute Attribute Domain
MaterialID Format ‘M[0-9][0-9][0-9]’
MaterialName Diisi dengan huruf atau angka, maks 30 karakter
Unit Diisi dengan angka
Stock Diisi dengan angka
Tabel 3.30 Attribute Domain –Purchase Bill Attribute Attribute Domain
PurchaseBillID Format ‘PUB[0-9][0-9][0-9][0-9][0-9]’ PurchaseBillDocNumber Diisi dengan huruf dan angka, maks 20
karakter
PurchaseBillDate Format ‘yyyy-MM-dd HH:mm:ss’ PurchaseBillNote Diisi dengan huruf, maks 100 karakter PurchaseBillDueDate Format ‘yyyy-MM-dd HH:mm:ss’
PODocNumber Diisi dengan huruf dan angka, maks 20 karakter
Bill_Amount Diisi dengan angka Discount Diisi dengan angka SubTotal Diisi dengan angka
PPN Diisi dengan angka
GrandTotal Diisi dengan angka
StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.31 Attribute Domain –PurchasePayment
Attribute Attribute Domain
PurchasePaymentID Format ‘PUP[0-9][0-9][0-9][0-9][0-9]’ PurchasePaymentDocNumber Diisi dengan huruf dan angka, maks 20
karakter
PurchasePaymentDate Format‘yyyy-MM-dd HH:mm:ss’ PurchasePaymentNote Diisi dengan huruf, maks 100 karakter PurchaseBillDocNumber Diisi dengan huruf dan angka, maks 20
karakter
SupplierAccountNo Diisi dengan angka, maks 15 karakter AccountNo Diisi dengan angka, maks 15 karakter PaymentTypeName Diisi dengan huruf, maks 10 karakter PurchasePayment_Amount Diisi dengan angka
Tabel 3.32 Attribute Domain –ProjectBill Attribute Attribute Domain
ProjectBillID Format ‘POB[0-9][0-9][0-9][0-9][0-9]’ ProjectBillDocNumber Diisi dengan huruf dan angka, maks 20
karakter
ProjectBillDate Format ‘yyyy-MM-dd HH:mm:ss’ ProjectBillNote Diisi dengan huru, maks 100 karakter ProjectBillDueDate Format ‘yyyy-MM-dd HH:mm:ss’ TermOfPayment Diisi dengan angka
Bill_Amount Diisi dengan angka
PPN Diisi dengan angka
GrandTotal Diisi dengan angka
ProjectOrderDocNumber Diisi dengan huruf dan angka, maks 20 karakter
StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.33 Attribute Domain –ProjectPayment Attribute Attribute Domain
ProjectPaymentID Format ‘PRP[0-9][0-9][0-9][0-9][0-9]’ ProjectPaymentDocNumber Diisi dengan huruf dan angka, maks 20
karakter
ProjectPaymentDate Format ‘yyyy-MM-dd HH:mm:ss’ ProjectPaymentNote Diisi dengan huruf, maks 100 karakter ProjectBillDocNumber Diisi engan huruf dan angka, maks 20
karakter
AccountNo Diisi dengan angka, maks 15 karakter ProjectPayment_Amount Diisi dengan angka
PaymentTypeName Diisi dengan huruf, maks 10 karakter StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.34 Attribute Domain –AddendumBill Attribute Attribute Domain
AddendumBillID Format ‘ADB[0-9][0-9][0-9][0-9][0-9]’ AddendumBillDocNumber Diisi dengan huruf dan angka, maks 20
karakter
AddendumBillDate Format ‘yyyy-MM-dd HH:mm:ss’ AddendumBillNote Diisi dengan huru, maks 100 karakter AddendumBillDueDate Format ‘yyyy-MM-dd HH:mm:ss’ AddendumBill_Amount Diisi dengan angka
ProjectAddDocNumber Diisi dengan angka
PPN Diisi dengan angka
GrandTotal Diisi dengan angka
StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.35 Attribute Domain –AddendumPayment Attribute Attribute Domain
AddendumPaymentID Format ‘ADP[0-9][0-9][0-9][0-9][0-9]’ AddendumPaymentDocNu
mber
Diisi dengan huruf dan angka, maks 20 karakter
AddendumPaymentDate Format ‘yyyy-MM-dd HH:mm:ss’ AddendumPaymentNote Diisi dengan huruf, maks 100 karakter AddendumBillDocNumber Diisi engan huruf dan angka, maks 20
karakter AddendumPayment_Amoun
t
Diisi dengan angka, maks 15 karakter
PaymentTypeName Diisi dengan angka
AccountNo Diisi dengan huruf, maks 10 karakter StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.36 Attribute Domain –MaterialUsed Attribute Attribute Domain
MaterialUsedID Format ‘MU[0-9][0-9][0-9][0-9][0-9][0-9]’ MaterialUsedDocNumber Diisi dengan huruf dan angka, maks 20
karakter
MaterialUsedDate Format ‘yyyy-MM-dd HH:mm:ss’ MaterialUsedNote Diisi dengan huruf, maks 100 karakter CarNo Diisi dengan format ‘XX YYYY XX’
dimana y berupa angka dan X berupa huruf DriverName Diisi dengan angka, maks 30 karakter ProjectOrderDocNumber Diisi dengan angka, maks 20 karakter MaterialName Diisi dengan huruf, maks 30 karakter
Qty Diisi dengan angka
Unit Diisi dengan huruf, maks 5 karakter StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.37 Attribute Domain –StockAdjusment Attribute Attribute Domain
StockAdjusmentID Format ‘SA[0-9][0-9][0-9]’
StockAdusmentDocNumber Diisi dengan huruf dan angka, maks 20 karakt er
StockAdjusmentDate Format ‘yyyy-MM-dd HH:mm:ss’
StockAdjusmentNote Diisi dengan huruf, maks 100 karakt er
MaterialName Diisi dengan huruf at au angka, maks 30 karakt er
Qty Diisi dengan angka
Attribute Attribute Domain StaffName Diisi dengan huruf, maks 30 karakter
Tabel 3.38 Attribute Domain – AccountBank Attribute Attribute Domain AccountID Format‘A[0-9][0-9]’
AccountNumber Diisidenganangka,maks15karakter BankName Diisidenganhuruf, maks15karakter
5. Mengidentifikasi atribut candidate key dan primary key
Tujuan dari tahap ini adalah menentukan candidate key dan primary key untuk setiap entitas yang ada
Tabel 3.39 Candidate dan Primary Key
Entity Name Candidat Key Primary key
Staff StaffID StaffID
StaffName
Client ClientID ClientID
ClientName
Project ProjectID ProjectID
ProjectOrder ProjectOrderID ProjectOrderID ProjectOrderDocNumber
ProjectAddendum ProjectAddID ProjectAddID ProjectAddDocNumber
Supplier SupplierID SupplierID
PurchaseOrder POID POID
PODocNumber
PurchaseOrderReceipt POReceiptID POReceiptID POReceiptDocNumber
Material MaterialID MaterialID
PurchaseBill PurchaseBillID PurchaseBillID PurchaseBillDocNumber
Entity Name Candidat Key Primary key PurchasePayment PurchasePaymentID PurchasePaymentID
PurchasePaymentDocNumber
ProjectBill ProjectBillID ProjectBillID ProjectBillDocNumber
ProjectPayment ProjectPaymentID ProjectPaymentID ProjectPaymentDocNumber
AddendumBill AddendumBillID AddendumBillID AddendumBillDocNumber
AddendumPayment AddPaymentID AddPaymentID AddPaymentDocNumber
MaterialUsed MaterialUsedID MaterialUsedID MaterialUsedDocNumber
StockAdjusment StockAdjusmentID StockAdjusmentID StockAdjusmentDocNumber
AccountBank AccountBankID AccountBankID
AccountNo
Berikut ini adalah gambar ERD Konseptual yang telah dilangkapi dengan primary key:
6. Mempertimbangkan konsep pemodelan enhanced (optional)
Tujuan dari tahap ini adalah untuk mempertimbangkan penggunaan konsep pemodelan enhanced, seperti spesialisasi, generalisasi, agregasi, dan komposisi. Setelah melakukan pertimbangan, maka pada perancangan konseptual tidak menggunakan konsep pemodelan enhanced.
7. Memeriksa model terhadap redundansi
Tujuan dari tahap ini adalah untuk memeriksa apakah terdapat model data yang redundan.
Ada dua aktivitas yang dilakukan pada tahap ini, yaitu: 1. Memeriksa kembali relasi one-to-one (1:1)
Pada ERD Konseptual yang dibuat tidak terdapat entitas yang menggambarkan obyek yang sama.
2. Menghilangkan relasi yang redundan
Pada ERD Konseptual yang dibuat tidak terdapat redundansi karena tidak ada informasi yang sama yang dapat diperoleh dari relasi yang lain.
8. Memvalidasi model konseptual terhadap transaksi pengguna • Menggunakan jalur transaksi
Gambar 3.10 ER Konseptual terhadap Transaksi Pengguna ◄ m e n ja d i ◄ m em il ik i ► m e n a g ih ► m e rin c i ◄ m e n g a ju k a n ► m e m b a y a r ► m e rin c i 1 ..1 1..1 1..1 1..1 ..11 1..1 1..1 1..1 1..1
• Mendeskripsikan deskripsi
1. Memasukkan, mengubah, menampilkan data Staff. 2. Memasukkan, mengubah, menampilkan data Client. 3. Memasukkan dan menampilkan data Project.
4. Mendapatkan informasi Client yang dimiliki Project. 5. Mendapatkan informasi Staff yang dimiliki Project. 6. Memasukkan, mengubah, menampilkan data Material. 7. Mendapatkan informasi Material yang dimiliki Project. 8. Memasukkan dan menampilkan data ProjectOrder.
9. Mendapatkan informasi Project yang dimiliki ProjectOrder. 10.Mendapatkan informasi Staff yang dimiliki ProjectOrder 11.Memasukkan dan menampilkan data MaterialUsed.
12.Mendapatkan informasi ProjectOrder yang dimiliki MaterialUsed. 13.Mendapatkan informasi Staff yang dimiliki MaterialUsed.
14.Mendapatkan informasi Material yang dimiliki MaterialUsed. 15.Memasukkan dan menampilkan ProjectBill.
16.Mendapatkan informasi Staff yang dimiliki ProjectBill.
17.Mendapatkan informasi ProjectOrder yang dimiliki ProjectBill. 18.Memasukkan dan menampilkan data ProjectPayment.
19.Mendapatkan informasi Staff yang dimiliki ProjectPayment. 20.Mendapatkan informasi ProjectBill yang dimiliki
ProjectPayment.
21.Memasukkan, mengubah, menampilkan data AccountBank. 22.Mendapatkan informasi AccountBank yang dimiliki
ProjectPayment.
23.Memasukkan dan menampilkan data ProjectAddendum. 24.Menampilkan informasi Staff yang dimiliki ProjectAddendum. 25.Mendapatkan informasi ProjectOrder yang dimiliki
ProjectAddendum.
26.Mendapatkan informasi Material yang dimiliki ProjectAddendum.
27.Memasukkan dan menampilkan data AddendumBill. 28.Menampilkan informasi Staff yang dimiliki AddendumBill. 29.Menampilkan informasi ProjectAddendum yang dimiliki
AddendumBill.
30.Memasukkan dan menampilkan data AddendumPayment. 31.Menampilkan informasi Staff yang dimiliki AddendumPayment. 32.Menampilan informasi AddendumBill yang dimiliki
AddendumPayment.
33.Menampilkan informasi AccountBank yang dimiliki AddendumPayment.
34.Memasukkan, mengubah, menampilkan data Supplier. 35.Memasukkan dan menampilkan data PurchaseOrder.
36.Menampilkan informasi Supplier yang dimiliki PurchaseOrder. 37.Menampilkan informasi Staff yang dimiliki PurchaseOrder. 38.Memasukkan dan menampilkan data PurchaseOrderReceipt. 39.Menampilkan informasi Staff yang dimiliki
PurchaseOrderReceipt.
40.Menampilkan informasi PurchaseOrder yang dimiliki PurhaseOrderReceipt.
41.Menampilan informasi Material yang dimiliki PurchaseOrderReceipt.
42.Memasukkan dan menampilkan data PurchaseBill. 43.Menampilkan informasi Staff yang dimiliki PurchaseBill.
44.Menampilkan informasi PurchaseOrder yang dimiliki PurchaseBill.
45.Memasukkan dan menampilkan data PurchasePayment. 46.Menampilkan informasi Staff yang dimiliki PurchasePayment. 47.Menampilkan informasi PurchaseBill yang dimiliki
PurchasePayment.
48.Menampilkan informasi AccountBank yang dimiliki PurchasePayment.
49.Memasukkan dan menampilkan data StockAdjusment. 50.Menampilkan informasi Staff yang dimiliki StockAdjusment. 51.Menampilkan informasi Material yang dimiliki StockAdjusment. 52.Menampilkan informasi Material yang dimiliki PurchaseOrder.
9. Meninjau kembali model data konseptual dengan pengguna
Tujuan dari tahap ini adalah untuk meninjau kembali model data konseptual yang dihasilkan dengan pengguna untuk memastikan bahwa model terebut benar – benar menggambarkan sistem perusahaan yang sebenarnya
3.3.1.1. Perancangan Basis Data Logikal
Perancangan basis data logikal merupakan suatu proses membangun model informasi yang digunakan dalam perusahaan berdasakan model data yang spesifik, tetapi independen terhadap berbagai jenis DBMS dan pertimbangan fisikal lainnya. Adapun langkah – langkah dalam perancangan basis data logical, anatara lain:
1. Menghilangkan fitur yang tidak sesuai dengan model relational
2. Mendapatkan relasi untuk model data logikal lokal 3. Memvalidasi relasi menggunakan normalisasi 4. Memvalidasi relasi terhadap transaksi pengguna 5. Menentukan batasan integritas
6. Menggabungkan model data logikal ke dalam model data logikal global
7. Memeriksa terhadap pertumbuhan di masa mendatang
3.3.1.1.1. Menghilangkan fitur yang tidak sesuai dengan model relational
Tujuan dari tahap ini adalah menghaluskan model data konseptual dengan menghilangkan beberapa fitur yang tidak kompatibel terhadap mpdel relational. Langkah – langkah yang dilakukan dalam tahap ini meliputi:
• Menghilangkan tiperelasibiner many to many(*:*) • Menghilangkan tiperelasirekursif many to many(*:*) • Menghilangkan tiperelasikompleks
1. Menghilangkan tiperelasibiner many to many(*:*) a. Relasi MaterialUsed dengan Material
Gambar 3.11 Menghilangkan Relasi biner many to many MaterialUsed dengan Material
b. Relasi ProjectAddendum dengan Material
Gambar 3.12 Menghilangkan Relasi biner many to many ProjectAddendum dengan Material
c. Relasi PurchaseOrder dengan Material
Gambar 3.13 Menghilangkan Relasi biner many to many PurchaseOrder dengan Material
d. Relasi POReceipt dengan Material
Gambar 3.14 Menghilangkan Relasi biner many to many POReceipt dengan material
e. Relasi StockAdjustment dengan Material
StockAdjustmentDetail MaterialName Qty Unit Material PK MaterialID ◄ Memiliki 1..* 1..1 StockAdjustmentHeader PK StockAdjustmentID 1..1 1..* ►merinci
Gambar 3.15 Menghilangkan Relasi biner many to many Stock adjustment dengan material
f. Relasi Project dengan Material
Gambar 3.16 Menghilangkan Relasi biner many to many Project dengan Material