3.4 Conceptual Data Model CDM
CDM memodelkan struktur logis dari keseluruhan aplikasi data, tidak tergantung pada software atau pertimbangan model struktur data. CDM yang valid dapat
dikonversi ke PDM atau OOM. CDM mirip dengan konsep ERD yang diajukan oleh Elmasri, hanya ada beberapa perbedaan sintaks. Berikut bentuk CDM seperti pada
gambar 3.9
Gambar 3.9 Conceptual Data Model CDM 3.5
Physical Data Model PDM
PDM memodelkan struktur fisik dari database, dengan mempertimbangkan software DBMS serta model struktur yang akan digunakan. PDM yang valid dapat
dikonversi ke CDM atau OOM. PDM dapat dihasilkan di-generate dari CDM yang valid.
Gambar 3.10 Physical Data Model PDM
Desain database diatas yakni pada gambar 3.10 adalah hasil generate dari Conceptual Data Model CDM ke Physical Data Model PDM. Tabel siswa berelasi
dengan tabel absensi, relasinya one to many, dimana satu siswa dapat mengisi banyak absensi, asumsi banyak absensi disini adalah absensi perhariannya. Tabel jadwal
berelasi dengan tabel mengajar, tabel data_pribadi_pengajar berelasi dengan tabel mengajar,relasinya one to many, dimana satu pengajar dapat mengajar lebih dari satu.
Tabel kelas berelasi dengan tabel mengajar, relasinya one to many. Tabel mata_pelajaran berelasi dengan tabel mengajar, relasinya one to many. Isi field dari
tabel mengajar adalah id_mengajar, id_jadwal diambil dari tabel jadwal, NPT diambil dari tabel data_pribadi_pengajar, id_matpeldiambil dari tabel
mata_pelajaran, dan id_kelasdiambil dari tabel kelas.
3.6 Struktur Database
Tabel-tabel yang digunakan dalam pembuatan aplikasi ini, antara lain : a.
Nama tabel : absensi Fungsi
: Menyimpan data absensi Tabel 3.1 Tabel Basis Data Absensi
Nama kolom Type
Extra Keterangan
ID_ABSENSI integer 5
Primary key,
auto increment
Untuk menyimpan data id absensi.
NOMOR_INDUK integer 5
- Untuk menyimpan
data nomor induk. TGL_ABSEN Date
- Untuk menyimpan
data tanggal absen. STATUS integer
1 - Untuk
menyimpan status absensi.
KETERANGAN varchar 200
- Untuk
menyimpan keterangan absensi.
AWAL Time -
Untuk menyimpan
jam masuk. AKHIR Time
- Untuk
menyimpan jam keluar.
b. Nama tabel : data_pribadi_pengajar
Fungsi : Menyimpan data pribadi pengajar
Tabel 3.2 Tabel Basis Data Pribadi Pengajar Nama kolom
Type Extra
Keterangan NPT integer
5 Primary
key Untuk menyimpan data
NPT. NAMAPENGAJ
AR varchar
50 -
Untuk menyimpan data nama pengajar.
TANGGAL_LAH varchar
10 -
Untuk menyimpan data
IR_PENGAJAR tanggal lahir
pengajar. KOTA_LAHIR_P
ENGAJAR varchar 15
- Untuk menyimpan kota
lahir pengajar. ALAMAT_PENG
AJAR varchar 40
- Untuk menyimpan alamat
pengajar.
Nama kolom Type
Extra Keterangan
AGAMA_PENG AJAR
varchar15 -
Untuk menyimpan data agama pengajar.
EMAIL varchar50
- Untuk menyimpan data
email pengajar. STATUS_RUMA
H varchar30
- Untuk menyimpan data
status rumah pengajar. BERTUGAS_TA
NGGAL varchar10
- Untuk menyimpan data
tanggal pengajar mulai bertugas.
NIP varchar15
- Untuk menyimpan data
nip pengajar. KERPEG_NO
varchar25 -
Untuk menyimpan data kartu pegawai pengajar.
USERNAME varchar100
- Untuk menyimpan data
username pengajar. PASSWORD
varchar100 -
Untuk menyimpan data password pengajar.
PATH varchar100
- Untuk menyimpan data
path foto pengajar. FOLDER
varchar100 -
Untuk menyimpan data folder foto pengajar.
NAMAFILE varchar100
- Untuk menyimpan data
nama file foto pengajar.
c. Nama tabel : jadwal
Fungsi : Menyimpan data jadwal mengajar
Tabel 3.3 Tabel Basis Data Jadwal Nama kolom
Type Extra
Keterangan ID_JADWAL integer
5 Primary key,
auto increment
Untuk menyimpan data id jadwal.
JAM varchar 20
- Untuk
menyimpan data jam.
HARI varchar 20
- Untuk
menyimpan
data hari.
d. Nama tabel : kelas
Fungsi : Menyimpan data kelas
Tabel 3.4 Tabel Basis Data Kelas Nama kolom
Type Extra
Keterangan IDKELAS integer
5 Primary
key, auto
increment Untuk menyimpan
data id kelas.
NAMAKELAS varchar 15
- Untuk
menyimpan data nama kelas.
e. Nama tabel : mata pelajaran
Fungsi : Menyimpan data mata pelajaran
Tabel 3.5 Tabel Basis Data Mata Pelajaran Nama kolom
Type Extra
Keterangan ID_MATPEL integer
5 Primary
key, auto
increment Untuk menyimpan
data id mata pelajaran.
NAMA_MATPEL varchar 50
- Untuk
menyimpan data nama mata
pelajaran.
f. Nama tabel : mengajar
Fungsi : Menyimpan data mengajar
Tabel 3.6 Tabel Basis Data Mengajar Nama kolom
Type Extra
Keterangan ID_MENGAJAR integer
5 Primary key, auto
increment Untuk menyimpan
data id kelas.
IDKELAS integer 5
- Hasil dari relasi tabel
kelas. NPT
integer 5 -
Hasil dari relasi tabel data pribadi pengajar
ID_JADWAL integer 5
- Hasil relasi dari tabel
jadwal ID_MATPEL
integer 5 -
Hasil relasi dari tabel mata pelajaran
g. Nama tabel : master_jam
Fungsi : Menyimpan data jam batas absensi siswa
Tabel 3.7 Tabel Basis Data Master Jam Nama kolom
Type Extra
Keterangan ID_JAM integer
5 Primary
key, auto
increment Untuk menyimpan
data id jam.
BATAS_MASUK Time -
Untuk menyimpan data batas masuk.
h. Nama tabel : siswa
Fungsi : Menyimpan data siswa
Tabel 3.8 Tabel Basis Data Siswa Nama kolom
Type Extra
Keterangan NOMOR_INDUK Integer
5 Primary
key Untuk menyimpan data
nomor induk. KELAS_SISWA varchar
5 -
Untuk menyimpan data kelas siswa.
NAMA_LENGKAP varchar 30
- Untuk menyimpan data
nama lengkap siswa. NAMA_PANGGILA
N varchar
30 -
Untuk menyimpan data nama panggilan siswa.
JENIS_KELAMIN varchar 15
- Untuk menyimpan data
jenis kelamin. TEMPAT_KELAHIR
AN varchar
15 -
Untuk menyimpan data tempat kelahiran .
TANGGAL_KELAHI RAN
varchar 50
- Untuk menyimpan data
tanggal kelahiran. AGAMA_SISWA varchar
15 -
Untuk menyimpan data agama siswa.
KEWARGANEGAR AAN
varchar 10
- Untuk menyimpan data
kewarganegaraan.
JUMLAH_SAUDAR A_KANDUNG
int2 -
Untuk menyimpan data jumlah saudara kandung.
JUMLAH_SAUDAR A_TIRI
int2 -
Untuk menyimpan data jumlah saudara tiri.
JUMLAH_SAUDAR A_ANGKAT
int2 -
Untuk menyimpan data jumlah saudara angkat.
Nama kolom Type
Extra Keterangan
STATUS_ANAK char8
- Untuk menyimpan data
status anak. BAHASA_DIKELUA
RGA varchar
15 -
Untuk menyimpan data bahasa dikeluarga.
BERAT_BADAN int11
- Untuk menyimpan data
berat badan. TINGGI_BADAN
int11 -
Untuk menyimpan data tinggi badan.
GOLONGAN_DARA H
varchar 3
- Untuk menyimpan data
golongan darah siswa. PENYAKIT_YANG_
PERNAH_DIDERITA varchar
30 -
Untuk menyimpan data penyakit yang pernah
diderita.
ALAMAT varchar 50
- Untuk menyimpan data
alamat. NOMOR_TELEPON varchar
15 -
Untuk menyimpan data nomor telepon.
BERTEMPAT_TING GAL_DENGAN
varchar 50
- Untuk menyimpan data
tempat tinggal. JARAK_TEMPAT_TI
NGGAL_KE_SEKOL AH
varchar 10
- Untuk menyimpan data
jarak tempat tinggal ke sekolah.
PATH varchar 100
- Untuk menyimpan data
path foto siswa. FOLDER varchar
100 -
Untuk menyimpan data folder foto siswa.
NAMAFILE varchar 100
- Untuk menyimpan data
nama foto siswa.
i. Nama tabel : user
Fungsi : Menyimpan data user
Tabel 3.9 Tabel Basis Data User Nama kolom
Type Extra
Keterangan
ID_USER integer 10
Primary key,
auto increment
Untuk menyimpan data id jam.
NAMA varchar 20
- Untuk
menyimpan data nama user.
USERNAME varchar 50
- Untuk menyimpan
username user. Nama kolom
Type Extra
Keterangan PASSWORD varchar
50 - Untuk
menyimpan password user.
role integer 5
- Untuk
menyimpan role user.
3.7 Perancangan Antarmuka