DESKRIPSI PERANCANGAN PERANGKAT LUNAK
SIKAD
untuk:
PT Tri Tunggal Utama Mataram
Jl. Danau Singkarak no 20 Pagutan Permai
Mataram-NTB
Dipersiapkan oleh:
Andrean R Baskara
(5109100036)
Priyanka Gemet A
(5109100178 )
Jurusan Teknik Informatika - Institut Teknologi Sepuluh Nopember
Kampus ITS Keputih Sukolilo Surabaya
Jurusan
Teknik
Informatika ITS
Nomor Dokumen Halaman
DPPL-SIKAD
1 / # hlm
Revisi - Tgl : 26 Juni 2011
Jurusan Teknik Informatika ITS DPPL-SIKAD Halaman 1 dari 29
DAFTAR PERUBAHAN
Revisi
Deskripsi
A
B
C
D
E
F
G
INDEX TGL - A B C D E F G Ditulis oleh Diperiksa oleh Disetujui olehDaftar Halaman Perubahan
Halaman
Revisi
Halaman
Revisi
Daftar Isi
1. Pendahuluan ... 6
1.1 Tujuan Penulisan Dokumen ... 6
1.2 Lingkup Masalah ... 6
1.3 Definisi dan Istilah ... 6
1.4 Aturan Penamaan dan Penomoran ... 6
1.5 Referensi ... 7
1.6 Ikhtisar Dokumen ... 7
2 Deskripsi Perancangan Global (Arsitektural) ... 7
2.1 Rancangan Lingkungan Implementasi ... 7
2.2 Deskripsi Persistensi Objek (Basis Data) ... 8
2.2.1 Physical Data Model ... 8
2.2.2 Daftar Tabel Aplikasi ... 8
2.2.2.1 Tabel Data_Pegawai ... 8 2.2.2.2 Table Data_Proyek ... 9 2.2.2.3 Table Detail_Pegawai ... 9 2.2.2.4 Table Data_Pembayaran_Proyek ... 9 2.2.2.5 Table Data_Dokumentasi_Proyek ... 10 2.2.2.6 Table Data_RAB ... 10 2.2.2.7 Table Data_Alat ... 10 2.2.2.8 Table Detail_Alat ... 11 2.2.2.9 Table Data_Bahan_Baku ... 11 2.2.2.10 Table Detail_Bahan_Baku ... 11 2.2.2.11 Table Data_Klien ... 12 2.2.2.12 Table Data_DO ... 12 2.3 Dekomposisi Sistem ... 13 2.3.1 Subsistem 1: MembuatRAB ... 14 2.3.2 Subsistem 2: Mencetak SPMK ... 14
2.3.3 Subsistem 3: Mengisi Data Pegawai Baru ... 15
2.3.4 Subsistem 4: Mengisi Data Pembayaran Proyek ... 16
2.4 Arsitektur Sistem ... 17
2.4.1 Diagram Komponen ... 17
2.4.2 Diagram Deployment ... 18
3 Deskripsi Perancangan Rinci ... 19
3.1 Deskripsi Antarmuka/Layar ... 19
3.1.1 Antarmuka UI_MengisiDataPegawaiBaru ... 19
3.1.1.1 Spesifikasi Layar Utama ... 19
3.1.1.2 Spesifikasi Elemen-elemen pada Layar ... 19
3.1.1.3 Spesifikasi Objek-objek pada Layar ... 20
3.1.1.4 Spesifikasi Layar Pesan ... 20
3.1.1.5 Spesifikasi Laporan ... 20
3.1.2 Antarmuka UI-MengisiDataPembayaranProyek ... 20
3.1.2.1 Spesifikasi Layar Utama ... 20
3.1.2.2 Spesifikasi Elemen-elemen pada Layar ... 20
3.1.2.3 Spesifikasi Objek-objek pada Layar ... 21
3.1.2.4 Spesifikasi Layar Pesan ... 21
3.1.2.5 Spesifikasi Laporan ... 21
3.1.3 Antarmuka UI-MencetakSPMK ... 21
3.1.3.1 Spesifikasi Layar Utama ... 21
3.1.3.2 Spesifikasi Elemen-elemen pada Layar ... 22
3.1.3.3 Spesifikasi Objek-objek pada Layar ... 22
3.1.3.4 Spesifikasi Layar Pesan. ... 22
3.1.3.5 Spesifikasi Laporan ... 22
3.1.4.1 Spesifikasi Layar Utama ... 22
3.1.4.2 Spesifikasi Elemen-elemen pada Layar ... 23
3.1.4.3 Spesifikasi Objek-objek pada Layar ... 23
3.1.4.4 Spesifikasi Layar Pesan ... 23
3.1.4.5 Spesifikasi Laporan ... 23
3.1.5 Antarmuka UI-MembuatRAB_DetailAlat ... 24
3.1.5.1 Spesifikasi Layar Utama ... 24
3.1.5.2 Spesifikasi Elemen-elemen pada Layar ... 24
3.1.5.3 Spesifikasi Objek-objek pada Layar ... 24
3.1.5.4 Spesifikasi Layar Pesan ... 24
3.1.5.5 Spesifikasi Laporan ... 25
3.1.6 Antarmuka UI-MembuatRAB_DetailBahanBaku ... 25
3.1.6.1 Spesifikasi Layar Utama ... 25
3.1.6.2 Spesifikasi Elemen-elemen pada Layar ... 25
3.1.6.3 Spesifikasi Objek-objek pada Layar ... 25
3.1.6.4 Spesifikasi Layar Pesan ... 25
3.1.6.5 Spesifikasi Laporan ... 26
3.1.7 Antarmuka UI-MembuatRAB_DetailPegawai ... 26
3.1.7.1 Spesifikasi Layar Utama ... 26
3.1.7.2 Spesifikasi Elemen-elemen pada Layar ... 26
3.1.7.3 Spesifikasi Objek-objek pada Layar ... 26
3.1.7.4 Spesifikasi Layar Pesan ... 26
3.1.7.5 Spesifikasi Laporan ... 27
3.2 Deskripsi Rinci Kelas-kelas ... 27
3.2.1 Kelas ControlPegawai ... 27
3.2.2 Kelas Control Data Proyek ... 27
3.2.3 Kelas Control Cetak SPMK ... 27
3.2.4 Kelas Control RAB ... 28
3.3 Dekomposisi Fisik Modul ... 28
3.4 Matriks Kerunutan ... 28
1. Pendahuluan
Dokumen ini akan berisi Deskripsi Perancangan Perangkat Lunak (DPPL) atau Software Design Description (SDD) untuk Aplikasi SIKAD, yang merupakan aplikasi untuk sistem informasi sebuah perusahan kontraktor. Untuk penamaan dokumen ini selanjutnya akan digunakan istilah DPPL. Isi dari dokumen ini sebagian besar adalah terjemahan dari dokumen IEEE Std 1016.1-1993.
1.1 Tujuan Penulisan Dokumen
Dokumen Deskripsi Perancangan Perangkat Lunak (DPPL) merupakan dokumen deskripsi dari perancangan perangkat lunak yang akan dikembangkan dan bertujuan untuk memberikan landasan yang diperlukan dalam proses pengkodean aplikasi SIKAD. Dokumen ini digunakan oleh pengembang perangkat lunak sebagai acuan teknis pengembangan perangkat lunak pada tahap selanjutnya. Dengan adanya dokumen DPPL ini diharapkan pengembangan perangkat lunak secara teknis akan lebih terarah dan lebih terfokus serta tidak menimbulkan ambiguitas terutama bagi pengembang perangkat lunak SIKAD.
1.2 Lingkup Masalah
Aplikasi SIKAD adalah perangkat lunak untuk proses bisnis dalam sebuah perusahaan kontraktor, meliputi informasi pemesanan proyek, penjadwalan, pengerjaan, hingga informasi mengenai pembayaran. Aplikasi ini akan digunakan pada keseluruhan perangkat keras yang ada di kantor milik customer, dimana pemasangan sistem ini dapat membantu meningkatkan pelayanan dalam usaha percetakan dan dapat mempercepat layanan yang diberikan serta mempermudah pengaturan data yang ada. Semua deskripsi perancangan yang dijelaskan pada dokumen ini dibatasi oleh spesifikasi fungsional perangkat lunak dengan mengacu pada dokumen SKPL-SIKAD.
1.3 Definisi dan Istilah
Beberapa istilah, singkatan, dan definisi penting yang digunakan dalam dokumen ini dijelaskan dalam tabel berikut :
Tabel 1. Istilah, Singkatan dan Definisi
Istilah Penjelasan
SIKAD Nama perangkat lunak yang akan dikembangkan berdasarkan dokumen ini DPPL Deskripsi Perancangan Perangkat Lunak
SDD Software Design Description
Istilah lain dari DPPL
IEEE Institute of Electrical and Electronics Engineering
Standar internasional untuk pengembangan dan perancangan produk.
DBMS Database Management System
Sistem yang dirancang untuk mengelola suatu basis data dan menjalankan operasi terhadap data yang diminta banyak pengguna
TTUM Tri Tunggal Utama Mataram
Nama perusahaan.
RAB Rancangan Anggaran Biaya,
SPMK Surat Perintah Mulai Kerja
DO Delivery Order
PDM Physical Data Model
1.4 Aturan Penamaan dan Penomoran
Penulisan dokumen ini menggunakan berbagai macam aturan penamaan dan penomoran yang berbeda-beda untuk beberapa bagian tertentu. Aturan penamaan dan penomoran yang digunakan berdasarkan hal/bagian tersebut adalah seperti yang tercantum pada Tabel 2 berikut ini
Tabel 2 Aturan Penamaan dan Penomoran
Hal/Bagian Aturan Penomoran/Penamaan
SKPL-FXX Menunjukan fungsionalitas dari SKPL ke XX
1.5 Referensi
Referensi yang digunakan pada perangkat lunak ini adalah sebagai berikut :
• Baskara, Andrean R, & Arismoyo,Priyanka G. (2011). Spesifikasi Kebutuhan Perangkat Lunak
SIKAD. Laboratorium Rekayasa Perangkat Lunak Jurusan Teknik Informatika – ITS.
• Ekananta, Arry. 2003. Dokumen Perancangan Perangkat Lunak AKKSES. (Online),
(http://www.praktikumrpl0809.site90.com, diakses 25 Juni 2011)
• Ahira, Anne. 2010. Cara Penulisan Daftar Pustaka dalam Karya Ilmiah. (Online),
(http://www.anneahira.com, diakses 25 Juni 2011)
• _________,2000. Panduan Pengisian Deskripsi Perancangan Perangkat Lunak (DPPL). (Online), (http://kur2003.if.itb.ac.id, diakses 25 Juni 2011)
• Software Engineering, Aparctitioner’s Approach 5th edition, Roger S Pressman, Mc Graw Hill, 2001
1.6 Ikhtisar Dokumen
Secara sistematis, dokumen DPPL ini berisikan penjabaran rancangan dari perangkat lunak yang akan di kembangkan, sehingga pada tahap pengimplementasian perangkat lunak tersebut dapat diimplementasikan dengan jelas dimana SKPL tetap dijadikan sebagai bahan acuan. Deskripsi singkat setiap bab adalah sebagai berikut :
Pada Bab 1 atau pendahuluan, berisi overview perangkat lunak yang merupakan ringkasan terhadap kemampuan aplikasi secara umum.
Pada Bab 2, ata Deskripsi Perancangan Global, yang berisi perancangan global dari perangkat lunak yang meliputi perancangan lingkungan operasi dimana perangkat lunak akan di operasikan, deskripsi dari data yang digunakan oleh perangkat lunak, serta dekomposisi lojik dari modul-modul perangkat lunak.
Pada Bab 3, atau Deskripsi Perancangan Rinci, berisi deskripsi lengkap dan rinci dari kebutuhan perangkat lunak yang meliputi deskripsi rinci dari tabel yang digunakan, perincian dari setiap fungsi yang ada pada rancangan global, dekomposisi fisik dari modul-modul perangkat lunak, serta matriks kerunutan yangmenggambarkan keterkaitan antara perancangan dengan spesifikasi kebutuhan.
2 Deskripsi Perancangan Global (Arsitektural)
2.1 Rancangan Lingkungan Implementasi
Aplikasi SIKAD ini akan dikembangkan sehingga menjadi aplikasi berbasis desktop, dimana pengembangannya membutuhkan komputer dengan spesifikasi sebagai berikut :
Operating System : Microsoft® Windows 7 Enterprise
(lisensi : Microsoft Campus Agreement)
DBMS : MySQL
(lisensi : open source)
Development tools : Microsoft® Visual Studio 2010 Ultimate
(lisensi : Microsoft Dreamspark)
Language : C#
Project Type : Windows Presentation Foundation Client Application
2.2 Deskripsi Persistensi Objek (Basis Data)
2.2.1 Physical Data Model
Berikut ini adalah Physical Data Model yang digunakan dalam pengembangan aplikasi ini:
D a ta _ D O ID _ D O Id _ B a h a n T a n g g a l _ DO N a m a _ S u p p l ie r N a m a _ B a ra n g B a n ya kn ya H a rg a _ S a t u a n V A R C H A R2 (7 ) V A R C H A R2 (7 ) DA T E V A R C H A R2 (2 5 ) V A R C H A R2 (2 5 ) IN T E G E R IN T E G E R < p k> < fk> Da ta _ P ro ye k Id _ P ro ye k Na m a _ P ro ye k T g l _ P e m e sa n a n _ P ro ye k T g l _ M u la i _ P ro ye k L o ka si_ P ro ye k Ha rg a _ P ro ye k De skri p si_ P ro ye k S t a tu s_ P e m b a ya ra n V A R CH A R2 (7 ) V A R CH A R2 (2 5 ) DA T E DA T E V A R CH A R2 (5 0 ) NU M B E R(8 ,2 ) CL O B S M A L L IN T <p k> D a ta _ K li e n Id _ K l ie n Na m a _ K li e n A l a m a t_ K lie n No _ T e lp _ K l ie n V A R CH A R2 (7 ) V A R CH A R2 (1 5 ) V A R CH A R2 (3 5 ) V A R CH A R2 (1 0 ) <p k> D a ta _ B a h a n _ B a ku Id _ B a h a n N a m a _ B a h a n S to k_ B a h a n S a tu a n _ B a h a n V A R C H A R 2 (7 ) V A R C H A R 2 (1 5 ) IN T E G E R C H A R (7 ) < p k> D a ta _ P e m b a ya ra n _ P ro ye k Id _ P e m b a ya ra n Id _ P ro ye k Id _ K li e n T g l_ P e m b a ya ra n Ju m l a h _ P e m b a ya ra n V A RC H A R 2 (7 ) V A RC H A R 2 (7 ) V A RC H A R 2 (7 ) DA T E NU M B E R (8 , 2 ) <p k> <f k2 > <f k1 > Da t a _ A l a t Id _ A la t N a m a _ A l a t S ta tu s_ A la t H a rg a _ S e w a _ A l a t V A RC H A R 2 (7 ) V A RC H A R 2 (1 5 ) C H A R (7 ) N U M B E R (8 ,2 ) < p k> D a ta _ P e g a wa i I d _ P e g a w a i N a m a _ P e g a w a i A la m a t_ P e g a w a i N o _ T e l p T g l_ M u l a i_ K e rja T g l_ B e rh e n ti _ K e rj a Ja b a ta n S ta t u s_ K e rja G a ji V A RC H A R 2 (7 ) V A RC H A R 2 (1 5 ) V A RC H A R 2 (3 0 ) I NT E G E R D A T E D A T E V A RC H A R 2 (8 ) S M A L L IN T I NT E G E R < p k> D a ta _ R A B Id _ R A B Id _ P ro ye k T g l_ R A B T o ta l_ B ia ya V A R C HA R 2 (7 ) V A R C HA R 2 (7 ) D A T E N UM B E R (8 ,2 ) < p k> < fk> D a ta _ D o ku m e n ta si _ P ro ye k I d _ D o ku m e n ta si I d _ P e g a w a i I d _ P ro ye k T g l_ U b a h _ T e ra kh i r D o ku m e n ta si V A R CH A R2 (7 ) V A R CH A R2 (7 ) V A R CH A R2 (7 ) DA T E CL O B < p k> < fk2 > < fk1 > D e ta i l_ A la t Id _ A l a t Id _ RA B Ju m la h _ A la t V A R CH A R 2 (7 ) V A R CH A R 2 (7 ) IN T E G E R < p k,fk1 > < p k,fk2 > D e ta i l _ B a h a n _ B a ku Id _ R A B Id _ B a h a n Ju m l a h _ B a h a n _ B a ku V A R CH A R2 (7 ) V A R CH A R2 (7 ) IN T E G E R < p k,fk1 > < p k,fk2 > De ta i l_ P e g a w a i Id _ R A B Id _ P e g a w a i Ju m la h _ P e g a w a i V A R CH A R2 (7 ) V A R CH A R2 (7 ) IN T E G E R < p k,fk1 > < p k,fk2 > Gbr 1 pdm
2.2.2 Daftar Tabel Aplikasi
2.2.2.1 Tabel Data_Pegawai
Identifikasi/Nama : t_ Data_PegawaiDeskripsi Isi : table yang menyimpan data pegawai Jenis : tabel data induk
Volume :
-Laju :
-Primary Key : Id_Pegawai
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_Pegawai Nomer Pegawai VARCHAR2(7) NO Nama_Pegawai Nama pegawai VARCHAR2(15) NO Alamat_pegawai Alamat pegawai VARCHAR2(30) NO
No_Telp No telp pegawai INTEGER YES
Tgl_Mulai_Kerja Tanggal pegawai mulai bekerja di perusahaan
DATE NO
di perusahaan
Jabatan Jabatan pegawai VARCHAR2(8) NO Status_Kerja Status dari pegawai, aktif atau
tidak SMALLINT NO
Gaji Gaji dari pegawai INTEGER YES 0
2.2.2.2 Table Data_Proyek
Identifikasi/Nama : t_Data_ProyekDeskripsi Isi : merupakan data dari proyek. Jenis : tabel data induk
Volume :
-Laju :
-Primary Key : Id_Proyek
Id Field Deskripsi Tipe & length Boleh
NULL
Default Keterangan
Id_Proyek Merupakan nomer proyek VARCHAR(7) NO Nama_Proyek Merupakan nama proyek VARCHAR2(25) NO Tgl_Pemesanan_Proyek Tanggal proyek pertama kali
dipesan DATE NO
Tgl_Mulai_Proyek Tanggal Proyek mulai di kerjakan
DATE NO
Lokasi_Proyek Lokasi proyek dikerjakan VARCHAR2(50) NO Harga_Proyek Harga proyek secara
keseluruhan NUMBER(8,2) NO Deskripsi_Proyek Deskripsi singkat proyek CLOB YES Status_pembayaran Status pembayaran dari
proyek, sudah lunas atau belum
SMALLINT NO
2.2.2.3 Table Detail_Pegawai
Identifikasi/Nama : t_Detail_PegawaiDeskripsi Isi : merupakan tabel pegawai yang terlibat di proyek mana Jenis : tabel data referensi
Volume :
-Laju :
-Primary Key :
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_RAB Merupakan id_rab dari proyek yang
dikerjakan VARCHAR(7) NO
Id_Pegawai Merupakan id dari pegawai yang
terlibat dalam proyek VARCHAR2(7) NO Jumlah_Pegawai Banyaknya pegawai INTEGER NO
2.2.2.4 Table Data_Pembayaran_Proyek
Identifikasi/Nama : t_Data_Pembayaran_Proyek
Deskripsi Isi : tabel yang menyimpan record data pembayaran yang di lakukan oleh klien Jenis : tabel data transaksi
Volume :
Laju :
Primary Key : Id_Pembayaran
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_Pembayaran Merupakan nomer dari transaksi yang dilakukan
VARCHAR(7) NO Id_Proyek Merupakan id proyek yang di
bayar VARCHAR2(7) NO
Id_Klien Merupakan id dari pemilik proyek VARCHAR2(7) NO Tgl_Pembayaran Tanggal di laksanakannya
transaksi
DATE NO
Jumlah_Pembayaran Jumlah yang dibayarkan NUMBER(8,2) NO
2.2.2.5 Table Data_Dokumentasi_Proyek
Identifikasi/Nama : t_Data_Dokumentasi_Proyek
Deskripsi Isi : merupakan tabel tentang progress proyek. Jenis : tabel data induk
Volume :
Laju :
Primary Key : Id_Dokumentasi
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_Dokumentasi Id dari dokumen dokumentasi VARCHAR2(7) NO Id_Pegawai Id pegawai yang melakukan progres VARCHAR2(7) NO Id_Proyek Id proyek yang di progres VARCHAR2(7) NO Tgl_Ubah_terakhi
r Tanggal terakhir dokumen ini di ubah DATE NO Dokumentasi Merupakan laporan progress proyek CLOB NO
2.2.2.6 Table Data_RAB
Identifikasi/Nama : t_Data_RAB
Deskripsi Isi : tabel yang menyimpan data RAB Jenis : tabel data induk
Volume :
Laju :
Primary Key : Id_RAB
Id Field Deskripsi Tipe & length Boleh
NULL
Default Keterangan
Id_RAB Nomer id dari RAB VARCHAR2(7) NO Id_Proyek Nomer id proyek VARCHAR2(7) NO Tgl_RAB Tanggal
disetujuinya RAB DATE NO Total_Biaya Total biaya dari
RAB
NUMBER(8,2) NO
2.2.2.7 Table Data_Alat
Identifikasi/Nama : t_Data_Alat
Deskripsi Isi : data dari alat yang terdapat dalam proyek/ digunakan Jenis : tabel data induk
Volume :
Laju :
Primary Key : Id_Alat
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_Alat Nomor id alat yang tercatat
Nama_alat Nama alat VARCHAR2(15) NO Status_Alat Status apakah
altnya ada atau tidak
CHAR(7) NO
Harga_Sewa_A lat
Harga sewa dari alat tersebut
NUMBER(8,2) NO
2.2.2.8 Table Detail_Alat
Identifikasi/Nama : t_Detail_Alat
Deskripsi Isi : merupakan tabel yang menyimpan detail suatu alat di pakai di proyek mana. Jenis : tabel data referensi
Volume :
Laju :
Primary Key :
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_Alat Nomor id alat yang tercatat
VARCHAR2(7) NO Id_RAB Nomer id dari RAB VARCHAR2(7) NO Jumlah_Alat Banyaknya alat
yang di pakai INTEGER YES
2.2.2.9 Table Data_Bahan_Baku
Identifikasi/Nama : t_Data_Bahan_Baku
Deskripsi Isi : data mengenai bahan baku yang dimiliki oleh perusahaan Jenis : tabel data induk
Volume :
Laju :
Primary Key : Id_Bahan
Id Field Deskripsi Tipe & length Boleh
NULL
Default Keterangan
Id_Bahan Merupakan nomer identitas dari bahan
tersebut VARCHAR2(7) NO
Nama_Bahan Nama bahan VARCHAR2(15) NO Stok_Bahan Banyaknya bahan yang ada INTEGER YES Satuan_Bahan Satuan dari bahan yang ada CHAR NO
2.2.2.10
Table Detail_Bahan_Baku
Identifikasi/Nama : t_Detail_Bahan_Baku
Deskripsi Isi : Data dari bahan baku yang terpakai di dalam suatu proyek Jenis : tabel data referensi
Volume :
Laju :
Primary Key :
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_Bahan Merupakan nomer identitas dari bahan tersebut
VARCHAR2(7) NO Id_RAB Nomer id dari RAB VARCHAR2(7) NO Jumlah_Bahan_Baku Banyaknya bahan
baku yang terpakai INTEGER YES
2.2.2.11
Table Data_Klien
Identifikasi/Nama : t_Data_KlienDeskripsi Isi : Data dari klien yang pernah memesan maupun yang sedang proyek Jenis : tabel data induk
Volume :
Laju :
Primary Key : Id_Klien
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
Id_Klien Merupakan no id klien VARCHAR(7) NO Nama_Klien Nama klien VARCHAR(15) NO Alamat_Klien Alamat tempat tinggal klien VARCHAR(35) NO No_Telp_Klien No yang dapat dihubungi VARCHAR(10) NO
2.2.2.12
Table Data_DO
Identifikasi/Nama : t_Data_DO Deskripsi Isi : berisi dari data DO Jenis : tabel data induk
Volume :
Laju :
Primary Key : ID_DO
Id Field Deskripsi Tipe & length Boleh
NULL Default Keterangan
ID_DO Nomer transaksi DO
VARCHAR2(7) NO Id_Bahan Id dari barang yang
dipesan VARCHAR2(7) NO Tanggal_DO Tanggal di
keluarkannya DO DATE NO Nama_Supplier Nama perusahaan
atau rekanan yang menyuplai bahan
VARCHAR2(25) NO Nama_Barang Nama barang yang
di pesan
VARCHAR2(25) NO Banyaknya Jumlah bahan yang
di pesan INTEGER NO
Harga_Satuan Harga per satuan
2.3 Dekomposisi Sistem
Membuat RAB
Mencetak SPMK
Mengisi Data Pembayaran Proyek
Mengisi Data Pegawai baru
Entitas
form RAB
<<boundary>> +lihat data RAB() +memasukkanDataRab() control RAB <<control>> +hitungTotalBiaya() +cetakDataRab() +cekDataAlat() +cekDataBahanBaku()
control surat mulai kerja<<control>>
+cetakSPMK() +AmbilDataProyek()
form surat perintah mulai kerja
<<boundary>> +lihatSPMK()
form pembayaran proyek
<<boundary>> +lihatPembayaranProyek() +mencatatPembayaran()
control data proyek<<control>>
+cetakDokumentasi() +cetakBuktiPembayaran() +cekPembayaran()
form data pegawai<<boundary>>
+daftar pegawai baru() +pilihPerbaharuiData() +lihat data pegawai()
control data pegawai<<control>>
+cetakSlipGaji()
data proyek<<entity>>
+ID Proyek: int +Nama Proyek: string +Tanggal Pemesanan Proyek: date +Tanggal mulai proyek: date +Lokasi Proyek: string +Harga Proyek: currency +Deskripsi Proyek: string +status pembayaran: bool +tambahDataProyek() +perbaharuiDataProyek()
data pegawai<<entity>>
+IDPegawai: int +Nama Pegawai: string +Alamat Pegawai: string +No Telp: int +Tanggal Mulai Bekerja: date +Tanggal Berhenti Bekerja: date +J abatan: string +Status kerja: bool +gaji: int +tambahPegawai() +ubahStatusPegawai() +perbaruiDataPegawai() dataPembayaranProyek <<entity>> +idPembayaran: int +tglPembayaran: date +jumlahPembayaran: currency +tambahDataPembayaranProyek() +perbaharuiDataPembayaranProyek() dataRab <<entity>> +idRab: int +tglRab: date +idProyek: int +idBahanBaku: int +jumlahBahanBaku: int +idAlat: int +namaAlat: string +jumlahAlat: int +idPegawai: int +jumlahPegawai: int +namaPegawai: string +totalBiaya: currency +TambahDataRAB() +HapusDataRAB() data alat <<entity>> +ID Alat: int +Nama Alat: string +Status Alat: string +Harga Sewa Alat: currency +TambahDataAlat() +PerbaharuiStatusAlat()
dataBahanBaku
<<entity>> +ID Bahan: int +Nama Bahan: string +Stok Bahan: int +Satuan: string +TambahDataBahan() +PerbaharuiStokBahan()
2.3.1 Subsistem 1: MembuatRAB
Membuat RAB
form RAB
<<boundary>>
+lihat data RAB() +memasukkanDataRab() control RAB <<control>> +hitungTotalBiaya() +cetakDataRab() +cekDataAlat() +cekDataBahanBaku()
Subsistem ini merupakan realisasi dari usecase MembuatRAB yang terdiri dari klas boundary Form RAB sebagai interfacenya dan kelas control RAB untuk menghitungTotalBiaya, dsb.
2.3.2 Subsistem 2: Mencetak SPMK
Mencetak SPMK
control surat mulai kerja
<<control>>
+cetakSPMK() +AmbilDataProyek()
form surat perintah mulai kerja
<<boundary>>
+lihatSPMK()
Subsistem ini merupakan realisasi dari usecase MencetakSPMK yang terdiri dari klas boundary Form Surat perintah muai kerja sebagai interfacenya dan kelas control surat mulai kerja untuk mencetakSPMK dan mengambil data proyek.
2.3.3 Subsistem 3: Mengisi Data Pegawai Baru
Mengisi Data Pegawai baru
form data pegawai<<boundary>>
+daftar pegawai baru() +pilihPerbaharuiData() +lihat data pegawai()
control data pegawai<<control>>
+cetakSlipGaji()
Subsistem ini merupakan realisasi dari usecase Mengisi Data Pegawai Baru yang terdiri dari kelas boundary Form Data Pegawai sebagai interfacenya dan kelas control data Pegawai untuk mencetak slip gaji dan memasukkan data ke dalam database.
2.3.4 Subsistem 4: Mengisi Data Pembayaran Proyek
Mengisi Data Pembayaran Proyek
form pembayaran proyek<<boundary>>
+lihatPembayaranProyek() +mencatatPembayaran()
control data proyek
<<control>>
+cetakDokumentasi() +cetakBuktiPembayaran() +cekPembayaran()
Subsistem ini merupakan realisasi dari usecase Mengisi Data Pembayaran Proyek yang terdiri dari kelas boundary Form Pembayaran Proyek sebagai interfacenya dan kelas control data Proyek untuk mencetak dokumentasi, bukti pembayaran dan mengecek pembayaran.
2.4 Arsitektur Sistem
2.4.1 Diagram Komponen
databaseKontraktor<<database>> Data_ RAB
<<tabel>>
data_ Proyek<<tabel>> Data_ Alat<<tabel>>
Data_ Pembayaran_ Proyek<<tabel>> Data_ Bahan_ Baku<<tabel>>
Data_ Pegawai<<tabel>>
cetakSPMK.cs<<Control>> ControlRAB
<<control>>
control_ Data_ proyek<<control>>
Data_ pegawai<<control>> PembayaranProyek<<UI>>
formDataPegawai<<UI>>
formSPMK<<UI>> RAB
<<UI>>
2.4.2 Diagram Deployment
Client database SIKAD.dll ADO.NET(sqlclient.dll) SIKAD.exe .Net Framework 4 Router Database Server MySQL Windows Server 2008 R2 DataBase SIKAD.mdf Printer TCP/IP TCP/IP System Tray3 Deskripsi Perancangan Rinci
3.1 Deskripsi Antarmuka/Layar
3.1.1 Antarmuka UI_MengisiDataPegawaiBaru
3.1.1.1 Spesifikasi Layar Utama
Gbr 2 UI_MengisiDataPegawaiBaru
3.1.1.2 Spesifikasi Elemen-elemen pada Layar
N
o Id Elemen Jenis Nilai Default Status Keterangan
1 SIKAD Label SIKAD Nama Dari Sistem Informasi 2 TTUM Label PT Tri Tunggal Utama
Mataram Nama Dari Perusahaan 3 DPeg Label Detail Pegawai Pengelompokan Data 4 IDPeg Label ID Pegawai Petunjuk ID Pegawai
5 IDText Text box Tempat Input ID Pegawai
6 NamaText Text box Tempat Input Nama Pegawai 7 No_Telp Text box Tempat Input No Telp Pegawai 8 AlamatText Text box Tempat Input Alamat
9 JabatanText Text box Tempat Input jabatan
10 StatusText List box Aktif/tidak aktif Tempat Status Pegawai, masih aktif atau tidak
11 GajiText Text box Menampilkan Gaji
12 TglMulai DateTimePicker Tanggal Mulai Kerja 13 TglSelesai DateTimePicker Tanggal Selesai Bekerja
3.1.1.3 Spesifikasi Objek-objek pada Layar
-Dpeg, IDPeg, SIKAD, TTUM menggunakan Huruf MS San Serif -Listbox menggunakan huruf MS San Serif dan berisi
3.1.1.4 Spesifikasi Layar Pesan
Layar ini digunakan untuk memasukkan data pegawai baru ke dalam database perusahaan. Untuk memasukkan DataPegawai ke dalam database perusahaan, user memasukkan data kedalam tempat yang sudah disediakan dan menekan tombol simpan.
3.1.1.5 Spesifikasi Laporan
Tidak ada.3.1.2 Antarmuka UI-MengisiDataPembayaranProyek
3.1.2.1 Spesifikasi Layar Utama
Gbr 3 MengisiDataPembayaranProyek
3.1.2.2 Spesifikasi Elemen-elemen pada Layar
N
o Id Elemen Jenis Nilai Default Status Keterangan
1 SIKAD Label SIKAD Nama Dari Sistem Informasi 2 TTUM Label PT Tri Tunggal
Utama Mataram Nama Dari Perusahaan 3 DPembayara
n Label Detail Pembayaran Pengelompokan Data
4 IDPro List box Merupakan list dari id proyek yang ada di dalam database perusahaan
N
o Id Elemen Jenis Nilai Default Status Keterangan
5 NoTrans Text box Berupa angka urutan transaksi yang terjadi
6 namaProyek Text box - Menampilkan nama proyek 7 namaKlien Text box Menampilkan nama klien 8 Nominal Text box Menampilkan jumlah yang di
bayarkan
9 TglP DateTimePicker Menampilkan tanggal dilaksanakan transaksi
3.1.2.3 Spesifikasi Objek-objek pada Layar
-ID proyek merupakan list dari proyek-proyek yang suda hada di database perusahaan. -namaProyek, namaKlienNoTrans menggunakan huruf MS San serif.
3.1.2.4 Spesifikasi Layar Pesan
Layar ini melayani proses penerimaan pembayaran proyek. User akan diminta memilih id proyek yang akan di proses pembayarannya. Ketika sudah terpilih, maka nama klien dan nama proyek akan tampil pada text box yang tersedia. Jika sudah mengisi semua, maka user dapat menyimpannya ke dalam database perusahaan.
3.1.2.5 Spesifikasi Laporan
-3.1.3 Antarmuka UI-MencetakSPMK
3.1.3.1 Spesifikasi Layar Utama
Gbr 4 MencetakSPMK
3.1.3.2 Spesifikasi Elemen-elemen pada Layar
N
o Id Elemen Jenis
Nilai
Default Status Keterangan
1 IDPro List box Merupakan list dari id proyek yang ada di dalam database perusahaan
2 namaProyek Text box - Menampilkan nama proyek 3 namaKlien Text box Menampilkan nama klien 4 Lokasi Text box Menampilkan lokasi proyek 5 TglMulai Text box Merupakan tanggal proyek dimulai
3.1.3.3 Spesifikasi Objek-objek pada Layar
Objek – objek yang ada pada layar menggunakan teks MS San serif dengan ukuran 8.25pt
3.1.3.4 Spesifikasi Layar Pesan.
`layar ini hanya menampilakn data yang diperlukan untuk mencetak SPMK. User hanya memilih ID Proyek yang akan di cetak SPMK-nya, lantas system akan memasukkan data ke dalam template yang ada dan mencetak.
3.1.3.5 Spesifikasi Laporan
-3.1.4 Antarmuka UI-MembuatRAB
3.1.4.1 Spesifikasi Layar Utama
Gbr 5 MembuatRAB
3.1.4.2 Spesifikasi Elemen-elemen pada Layar
No Id Elemen Jenis Nilai Default Status Keterangan
1 IDPro List box Merupakan list dari id proyek yang ada di dalam database perusahaan
2 namaProyek Text box - Menampilkan nama proyek 3 namaKlien Text box Menampilkan nama klien
4 TotalAlat Text box Menampilakn total biaya dari alat yang digunakan
5 TotalBahan Text box Menampilakn total biaya dari bahan yang digunakan
6 TotalGaji Text box Menampilakn total biaya dari gaji pegawai yang dipekerjakan
7 TotalBiaya Text box Menampilakn total biaya dari semua yang digunakan. Baik alat, bahan dan pegawai.
8 TglSet DateTimeP icker
Merupakan tanggal disetujuainya biaya oleh klien
3.1.4.3 Spesifikasi Objek-objek pada Layar
Objek – objek yang ada pada layar menggunakan teks MS San serif dengan ukuran 8.25pt
3.1.4.4 Spesifikasi Layar Pesan
Layar ini haynya menampilkan total biaya dari rancangan penggunaan resource seperti alat, bahan dan pegawai. Pengguna akan disuruh memilih ID proyek yang akan di buat RABnya.
3.1.4.5 Spesifikasi Laporan
3.1.5 Antarmuka UI-MembuatRAB_DetailAlat
3.1.5.1 Spesifikasi Layar Utama
Gbr 6 MembuatRAB_DetailAlat
3.1.5.2 Spesifikasi Elemen-elemen pada Layar
N
o Id Elemen Jenis Nilai Default Status Keterangan
1 NamaAlat TextBox Merupakan inputan nama alat yang digunakan 2 Banyaknya TextBox Merupakan inputan dari jumlah alat yasng digunakan 3 Bsewa TextBox Merupakan biaya yang diperlukan untuk menyewa alat
perhari.
4 Lsewa TextBox Merupakan lamanya alat disewa
5 TBalat Textbox Merupakan jumlah dari biaya yang digunakan menyewa alat.
3.1.5.3 Spesifikasi Objek-objek pada Layar
Objek – objek yang ada pada layar menggunakan teks MS San serif dengan ukuran 8.25pt
3.1.5.4 Spesifikasi Layar Pesan
Pada layar ini, user diminta memasukkan nama alat, banyak alat yang akan di sewa, dan harga sewa. Dan system akan mengkalkulasikan banyaknya biaya yang di perlukan.
3.1.5.5 Spesifikasi Laporan
-3.1.6 Antarmuka UI-MembuatRAB_DetailBahanBaku
3.1.6.1 Spesifikasi Layar Utama
Gbr 7 MembuatRAB_DetailBahanBaku
3.1.6.2 Spesifikasi Elemen-elemen pada Layar
No Id Elemen Jenis Nilai Default Status Keterangan
1 NamaBahan TextBox Mrupakan inputan nama bahan 2 Banyaknya TextBox Merupakan inputan dari jumlah bahan
yasng digunakan
3 hargaB textbox Inputan harga barang per satuan tertentu
4 TotalH texbox Merupakan tampilan dari total harga semua bahan
3.1.6.3 Spesifikasi Objek-objek pada Layar
Objek – objek yang ada pada layar menggunakan teks MS San serif dengan ukuran 8.25pt
3.1.6.4 Spesifikasi Layar Pesan
Pada layar ini, user diminta memasukkan nama bahan, banyak bahan yang diperlukan, dan harganya Dan sistem akan mengkalkulasikan banyaknya biaya yang di perlukan.
3.1.6.5 Spesifikasi Laporan
-3.1.7 Antarmuka UI-MembuatRAB_DetailPegawai
3.1.7.1 Spesifikasi Layar Utama
Gbr 8 MembuatRAB_DetailPegawai
3.1.7.2 Spesifikasi Elemen-elemen pada Layar
No Id Elemen Jenis Nilai Default Status Keterangan
1 JPeg TextBox Mrupakan inputan jenis pegawai
2 Banyaknya TextBox Merupakan inputan dari jumlah pegawai yasng digunakan
3 GajiPeg textbox Inputan gaji pegawai
4 TotalG texbox Merupakan tampilan dari total biaya yang diperlukan
3.1.7.3 Spesifikasi Objek-objek pada Layar
Objek – objek yang ada pada layar menggunakan teks MS San serif dengan ukuran 8.25pt
3.1.7.4 Spesifikasi Layar Pesan
User diminta memasukkan jenis pegawai yang dipekerjakan, berapa banyaknya dan berapa akan di gaji. Dan sistem akan mengkalkulasikan total gaji yang harus di bayarkan
3.1.7.5 Spesifikasi Laporan
-3.2 Deskripsi Rinci Kelas-kelas
3.2.1 Kelas ControlPegawai
Kelas ini selain digunakan untuk memasukkan data pegawai baru, juga di gunakan untuk mencetak slip gaji. Layanan yang tersedia sebagai berikut:
-RegisterNewPegawai(newPegawai)
query = select * from Pegawai where nomerPegawai = newPegawai.nomerPegawai res=executeQuery(query) if(res==NULL) insert newPegawai return 1 else return 0 -cetakSlipGaji
query = select id_pegawai,nama_pegawai,gaji from data_pegawai where id_pegawai=Data_Pegawai.id_pegawai
res = executeQuery(query) if(res!= NULL)
print res
3.2.2 Kelas Control Data Proyek
Kelas ini digunakan untuk mengatur data proyek, data pembayaran proyek, data dokumentasi proyek dan mengecek pembayaran. Berikut layanan yang dimilki kelas control data proyek:
-Cek pembayaran()
Query = select nama_Proyek,Nama_Klien from data_Pembayaran_proyek where id_proyek=data_proyek.id_proyek
Res = executeQuery (query) If (res!=null)
Generate id_transaksi
Query=insert into data_pembayaran_proyek(nominal) where id_proyek=data_proyek.id_proyek
Res1=execute(query) -cetakDokumentasi
query = select * from data_dokumentasi_proyek where id_dokumentasi=Data_Dokumentasi_Proyek.id_dokumentasi res = executeQuery(query)
if(res!= NULL) print res
-cetak bukti pembayaran
Query = select nama_Proyek,Nama_Klien,nominal from
data_Pembayaran_proyek where id_proyek=data_proyek.id_proyek Res = executeQuery (query)
If (res!=null) Print res
3.2.3 Kelas Control Cetak SPMK
Cetak SPMK()Query = select nama_Proyek,Nama_Klien,lokasi from data_ proyek where id_proyek=data_proyek.id_proyek
Res = executeQuery (query) If (res!=null)
Query=insert into data_pembayaran_proyek(nominal) where id_proyek=data_proyek.id_proyek
Res1=execute(query) If (res1!=null) Print SPMK -Ambil data()
Query=select * from data proyek where id_proyek=data_proyek.id_proyek executeCommand(query)
3.2.4 Kelas Control RAB
Kelas ini memiliki layanan untuk menghitung total biaya dari penghitungan alat, bahan, dan gaji pegawai.
-hitungTotalBiaya()
Query=select nama_proyek,nama_klien from data_RAB where data_RAB.id_proyek=data_proyek.id_proyek
executeCommand(query)
totAlat=jmlAlat * biayaSewa totBahan=jmlBahan * hargaB totGaji=jmlpeg * gaji
totalBiaya = totAlat + totBahan + totGaji query=insert into data_RAB(totalBiaya) where id_proyek=data_RAB.id_proyek
3.3 Dekomposisi Fisik Modul
Nama Direktori Nama File (dan ekstensinya) Keterangan
/control controlPeg.cs Control pegawai
/pegawai FormPegBaru.cs Form untuk mengisi data pegawai baru
/control controlDataPro.cs Control data proyek /proyek FormPembayaran.cs Form untuk mengisi data
pembayaran
/control controlCetakSPMK.cs Control mencetak spmk /proyek FormCetakSpmk.cs Form untuk mencetak spmk /control ControlRAB.cs Control untuk RAB /RAB FormRAB.cs Form untuk membuat RAB
3.4 Matriks Kerunutan
Kode
Kebutuhan Deskripsi Kebutuhan No Layar DPPL
Kode
Kebutuhan Deskripsi Kebutuhan No Layar DPPL
SKPL-F1 Dapat menambahkan, mengedit, dan menghapus data
pegawai Gbr 2
SKPL-F7 Dapat menambahkan, mengedit, dan menghapus data
pembayaran proyek Gbr 3
SKPL-F11 Dapat menambahkan, mengedit, dan menghapus data
Rancangan Anggaran Biaya Gbr 5,6,7,8