Perancangan Database (Basis Data)

3.2.1 Perancangan Database (Basis Data)

Perancangan basis data dilakukan dengan membuat beberapa diagram, yaitu ERD, transformasi ERD ke LRS, dan diagram LRS.

3.2.1.1 ERD (Entity Relationship Diagram)

Berdasarkan analisa kebutuhan yang telah dilakukan, maka dibuat ERD seperti berikut ini:

* kd_jpers

* no_pem * kd_jpers

* kd_cs

Nm_jpers

* kd _jpem

Stn_pers

nm _jpem

* kd_jpem

Jmlh_pers

bsr_pem Bts_pem

Memiliki

Jenis Persyaratan

Jenis Pembayaran M

terdiri

M Calon Siswa

* no_pem nis M

wkt_pem

no_ peg M * kd_cs

* no_peg

nm_peg

nm_cs

M Pembayaran tmp_lhr_cs

almt_peg

almt_cs

tmp_lhr_peg

Staf Administrasi 1 Menerima

tgl_lhr_peg

M asl_sklh_cs

tgl_lhr_cs

Pass_peg

* nis

thn_lls_cs

nm_sis

nli_ujn_nsnl_cs

almt_sis

Siswa

Melakukan

tmp_lhr_sis

tgl_lhr_sis

asl_sklh_sis thn_lls_sis nli_ujn_nsnl_sisl thn_msk_sis

Memilih * nis

* nis

Menempati

* kd_mtpel

* kd_kls

tgs ulngn uts uas

* kd_kls

nm_kls

Mendapat

dy_tmpng

* kd_jrsn

Nm_jrsn * nig

nm_gru

Menempati

almt_gru tmp_lhr_gru tgl_lhr_gru pass_gru

Mata Pelajaran Jam

* kd_jdwl

hri

Sesuai

kd_jm kd_matpel

* kd_matpel M

nm_matpel * kd_jm

1 nig

kd_klmpk ktrngn

nli_kkm mlai slsai

* kd_klmpk

Kelompok Mata

Nm_klmpk

Pelajaran

Termasuk

Gambar 3. 2 ERD basis data administrasi sekolah

3.2.1.2 ERD ke LRS

Hasil perancangan basis data berupa ERD (Entity Relationship Diagram) kemudian ditransformasi ke bentuk LRS (Logical Record Structure) sebagai berikut:

* no_pem * kd_cs

* kd_jpers

Nm_jpers

* kd _jpem

* kd_jpem * kd_jpers

Stn_pers

nm _jpem

Jmlh_pers

bsr_pem Bts_pem

Memiliki

M Jenis Persyaratan

Jenis Pembayaran

terdiri

M Calon Siswa

* no_pem nis M

wkt_pem * kd_cs

no_ peg M nm_cs

* no_peg

nm_peg

M Pembayaran tgl_lhr_cs

almt_cs

almt_peg

tmp_lhr_cs

tmp_lhr_peg Staf Administrasi

1 Menerima

tgl_lhr_peg

M thn_lls_cs nli_ujn_nsnl_cs

asl_sklh_cs

Pass_peg

* nis nm_sis almt_sis

Siswa

1 Melakukan

tmp_lhr_sis

tgl_lhr_sis

asl_sklh_sis thn_lls_sis nli_ujn_nsnl_sisl thn_msk_sis

Memilih * nis

* nis

Menempati

* kd_mtpel

* kd_kls

tgs ulngn uts uas

1 Untuk

* kd_kls

Jurusan

Kelas

nm_kls

Mendapat

dy_tmpng

* kd_jrsn

Nm_jrsn

Menempati

Untuk * nig nm_gru almt_gru

Mengajar

Jadwal

Mata Pelajaran tgl_lhr_gru

* kd_jdwl

tmp_lhr_gru

hri

kd_jm

pass_gru

1 Sesuai

nm_matpel Guru

kd_matpel

* kd_matpel

nig

kd_klmpk nli_kkm

Jam

Termasuk * kd_jm

ktrngn mlai

* kd_klmpk

Kelompok Mata

slsai

Nm_klmpkl

Pelajaran

Gambar 3. 3 ERD ke LRS basis data administrasi sekolah

3.2.1.3 LRS (Logical Record Structure)

Setelah proses transformasi dari ERD ke LRS maka diperoleh diagram relasi seperti gambar berikut ini:

Persyaratan

Jenis Persyaratan

Jenis Pembayaran

* kd_cs

* kd_jpers

* kd_jpem * kd_jpers

* kd_jpers

1 Nm_jpers Stn_pers

* nm_jpem

stts

Jmlh_pers

bsr_pem bts_pem

MM

* kd_cs

Pembayaran

* kd_jpem 1

* no_peg

* no_pem

1 M * nis wkt_pem

* no_pem

Detil Pembayaran

* no_peg

1 M * no_pem

Calon Siswa

1 * kd_jpem

nm_cs * nis almt_cs

* kd_cs

Staf Administrasi

1 tmp_lhr_cs

* no_peg

nm_peg

tgl_lhr_cs

almt_peg

Siswa

asl_sklh_cs

tmp_lhr_peg

Kelas Siswa

1 M * nis nli_ujn_nsnl_cs

thn_lls_cs

tgl_lhr_peg

Pass_peg

* nis

nm_sis

* nis * kd_jrsn

* kd_kls

almt_sis tmp_lhr_sis

tgl_lhr_sis

asl_sklh_sis * kd_jrsn

* kd_kls

1 thn_lls_sis 1

nli_ujn_nsnl_sisl

Kelas

thn_msk_sis

Jurusan

1 Nm_jrsn

* nis * kd_jrsn

*kd_jrsn

* kd_kls

* kd_jrsn

nm_kls

dy_tmpng

Nilai

* nis * kd_mtpel * kd_jm

Jam

* kd_kls

tgs ktrngn

ulngn mlai

Jadwal

uts slsai

* kd_jm

* kd_jdwl

* kd_kls

uas

hri

Guru * kd_matpel

* kd_jm

* kd_matpel

* kd_matpel 1 nm_gru

* nig

* nig

1 almt_gru

* nig

tmp_lhr_gru Mata Pelajaran tgl_lhr_gru

Kelompok Mata Pelajaran

pass_gru

1 * kd_klmpk

* kd_matpel

* kd_klmpk

nm_matpel

Nm_klmpk_matpel

M nli_kkm * kd_klmpk

Gambar 3. 4 LRS basis data administrasi sekolah

3.2.1.4 Normalisasi

Normalisasi diperlukan jika tabel-tabel yang dibuat belum normal. Karena tabel-tabel yang dihasilkan dari transformasi ERD pada gambar 3.3 telah memenuhi syarat normal ke-3 (3NF), maka tabel-tabel tersebut tidak perlu dinormalisasi lagi.

3.2.1.5 Spesifikasi Basis Data

Spesifikasi basis data ditampilkan pada tabel-tabel berikut ini:

Tabel 3. 1 Tabel jenis persyaratan

No Nama Field Tipe Field Ukuran Indeks

1 kd_jpers

2 nm_jpers

Varchar

3 stn_pers

Varchar

4 jmlh_pers

Int

Tabel 3. 2 Tabel jenis pembayaran

No Nama Field Tipe Field Ukuran Indeks

1 kd_jpem

2 nm_jpem

Varchar

3 bsr_pem

Int

4 bts_pem

Date

Tabel 3. 3 Tabel persyaratan

No Nama Field Tipe Field Ukuran Indeks

1 kd_cs

Varchar

9 Primary

2 kd-jpers

Varchar

2 Primary

Tabel 3. 4 Tabel pembayaran

No Nama Field Tipe Field Ukuran Indeks

1 no_pem

3 wkt_pem

Datetime

4 no_peg

Varchar

Tabel 3. 5 Tabel detil pembayaran

No Nama Field

Tipe

Ukuran Indeks

Field

1 no_pem

Varchar

12 Primary

3 kd_jpem

Varchar

5 Primary

Tabel 3. 6 Tabel calon siswa

No Nama Field Tipe Field Ukuran Indeks

1 kd_cs

2 nm_cs

Varchar

3 almt_cs

4 tmp_lhr_cs

Varchar

5 tgl_lhr_cs

Date

6 asl_sklh_cs

Varchar

7 thn_lls_cs

Smallint

8 nli_ujn_nsnl_cs

Double

Tabel 3. 7 Tabel siswa

No Nama Field Tipe Field Ukuran Indeks

2 nm_sis

Varchar

3 almt_sis

4 tmp_lhr_sis

Varchar

5 tgl_lhr_sis

Date

6 asl_sklh_sis

Varchar

7 thn_lls_sis

Smallint

8 nli_ujn_nsnl_sis

Double

9 thn_msk

Smallint

Tabel 3. 8 Tabel staf administrasi

No Nama Field Tipe Field Ukuran Indeks

1 no_peg

2 nm_peg

Varchar

3 almt_peg

4 tmp_lhr_peg

Varchar

5 tgl_lhr_peg

Date

6 pass_peg

Varchar

Tabel 3. 9 Tabel guru

No Nama Field Tipe Field Ukuran Indeks

2 nm_gru

Varchar

3 almt_gru

4 tmpt_lhr_gru

Varchar

5 tgl_lhr_gru

Date

6 pass_gru

Varchar

Tabel 3. 10 Tabel jurusan

No Nama Field Tipe Field Ukuran Indeks

1 kd_jrsn

2 nm_jrsn

Varchar

Tabel 3. 11 Tabel kelas

No Nama Field Tipe Field Ukuran Indeks

1 kd_kls

2 nm_kls

Varchar

3 kd_jrsn

Varchar

4 dy_tmpng

Tinyint

Tabel 3. 12 Tabel kelas siswa

No Nama Field Tipe Field Ukuran Indeks

2 kd_kls

Varchar

9 Primary

Tabel 3. 13 Tabel kelompok mata pelajaran

No Nama Field Tipe Field Ukuran Indeks

1 kd_klmpk_matpel

2 nm_klmpk_matpel

Varchar

Tabel 3. 14 Tabel mata pelajaran

No Nama Field Tipe Field Ukuran Indeks

1 kd_matpel

2 nm_matpel

Varchar

3 kd_klmpk_matpel

Varchar

4 nli_kkm

Double

Tabel 3. 15 Tabel jadwal

No Nama Field Tipe Field Ukuran Indeks

1 kd_jdwl

Varchar

5 Primary

2 kd_kls

4 kd_jm

Varchar

5 kd_matpel

Tabel 3. 16 Tabel jam

No Nama Field Tipe Field Ukuran Indeks

1 kd_jm

Varchar

2 Primary

2 ktrngn

Varchar

3 mlai

Time

4 slsai

Time

Tabel 3. 17 Tabel nilai

No Nama Field Tipe Field Ukuran Indeks

1 kd_matpel_nli