98
abaikan SMS ini bila telah melakukan
pembayaran, Terimakasih
Class_id Class_desc
City_id City_desc
1 Al Hamra
1 Ciputat
2 Damaskus
2 Cireundeu
3 Iskandaria
3 Bintaro
4.3.4.3 Bentuk Normal Kedua 2NF
Bentuk normal kedua didasari atas konsep full functional dependency ketergantungan fungsional sepenuhnya yang dapat
didefinisikan jika A dan B adalah atribut-atribut dari suatu relasi, B dikatakan full functional dependency memliki ketergantungan
sepenuhnya terhadap A, jika B tergantung fungsional terhadap A, tetapi tidak secara tepat memliki ketergantungan fungsional dari subset
himpunan bagian dari A. Syarat normal kedua adalah 1. Bentuk data telah memenuhi kriteria bentuk normal kesatu.
2. Atribut bukan kunci, haruslah memiliki ketergantungan fungsional sepenuhnya pada kunci utama primary key.
99
testimoni
PK id_testimoni
testimoni wali
read day
date hour
photo
username
outbox
PK id
InsertIntoDB UpdateIntoDB
SendingDateTime DestinationNumber
text DeliveryRep
textDecoded CreatorID
Sixth_month_rep
PK smr_id
rep_date rep_date_end
sub_id sub_desc
ability_id ability_desc
achive_code achive_desc
username
Third_month_rep
PK tmr_id
rep_date rep_date_end
sub_id sub_desc
ability_id ability_desc
achive_code achive_desc
username
weekly_rep
PK wr_id
rep_date rep_date_end
notes sub_id
sub_desc topic_id
topic_desc achive_code
achive_desc attitide_id
attitude_desc
username
sent_item
PK id
UpdateInDB InsertIntoDB
status SendingDateTime
DeliveryDateTime Text
DestinationNumber SMSCNumber
Text TextDecoded
Status CreatorID
username
Teacher
PK teacher_id
name username
password
user
PK username
gender address
name place_of_birth
date_of_birth grade
email telephone
class_id class_name
city_id city_desc
level teacher_id
Gambar 4.17 Bentuk normal kedua
100
4.3.4.4 Bentuk Normal Ketiga 3NF
Jika pada relasi 2NF memiliki redudansi yang lebih sedikit dari pada relasi 1NF, namun relasi tersebut masih mungkin mengalami
kendala bila terjadi anomaly peremajaan update terhadap relasi tersebut.
Syarat normal ketiga adalah: 1. Bentuk data telah memenuhi criteria bentuk normal kedua.
2. Atribut bukan kunci haruslah tidak memiliki ketergantungan transitif. dengan kata lain suatu atribut bukan kunci tidak boleh memiliki
ketergantungan fungsional terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci pada suatu relasi hanya memiliki
ketergantungan fungsional kepada primary key direlasi itu saja. Pada tahap ini atribut yang mengalami ketergantungan
fungsional terhadap primary key adalah atribut dari tabel topic, achivement, ability dan tabel subject yang membentuk tabel
sub_ability_sixth, sub_ability_third,
sub_topic_week dan
attitude_week. Dengan kata lain, seluruh atribut bukan kunci dari tabel topic, achivement, ability, attitude dan subject telah mengalami
ketergantungan fungsional sepenuhnya terhadap atribut kunci pada tabel sub_ability_sixth, sub_ability_third, sub_topic_week dan
attitude_week.
101
Gambar 4.18 Tabel user pada bentuk normal kedua
A F
E D
C B
username Class_id
Class_desc City_id
City_desc nama
Jakarta 1
Konstantinopel 1
Indra 93003092
Atribut bukan kunci class_desc dan city_desc haruslah tidak memiliki ketergantungan transitif. dengan kata lain suatu atribut
bukan kunci class_desc dan city_desc tidak boleh memiliki ketergantungan fungsional terhadap atribut bukan kunci lainnya
class_id dan city_id.
Gambar 4.19 Tabel user pada bentuk normal ketiga
A E
C B
username Class_id
City_id nama
1 1
Indra 93003092
Atribut bukan kunci Nama sudah bergantung secara fungsional sepenuhnya pada kunci utama primary key. Pada tabel
user seperti tergambar pada gambar 4.18 untuk bentuk normal ketiganya menjadi tabel user seperti pada gambar 4.19 dimana tabel
class dan city terpecah seperti pada tabel 4.3.
102
Tabel 4.3 Tabel Class dan City pada bentuk normal ketiga
C D
E F
Class_id Class_desc City_id City_desc
1 Jakarta
1 Jakarta
Atribut bukan kunci class_desc dan city_desc sudah bergantung secara fungsional sepenuhnya terhadap kunci utama.
Seluruh atribut bukan kunci class_desc dan city_desc pada suatu relasi hanya memiliki ketergantungan fungsional kepada primary key
class_id dan city_id direlasi itu saja.
Gambar 4.20 Tabel Sixth_month_rep pada bentuk normal kedua
A F
E D
C B
Smr_id Rep_date_end
Sub_id Sub_desc
Ability_id Rep_date
1 Islamic
1 01-06-11
01-01-11 1
G I
H
Ability_desc Achive_desc
Achive_code Excelent
1 About
prophet
Atribut bukan kunci sub_desc, ability_desc, dan achive_desc haruslah tidak memiliki ketergantungan transitif. dengan kata lain
suatu atribut bukan kunci sub_desc, ability_desc, dan achive_desc tidak boleh memiliki ketergantungan fungsional terhadap atribut
bukan kunci lainnya sub_id, ability_id, dan achive_code.
103
Gambar 4.21 Tabel sixth_month_rep pada bentuk normal ketiga
A F
D C
B Smr_id
Rep_date_end Sub_id
Ability_id Rep_date
1 1
01-06-11 01-01-11
1
H Achive_code
1
Atribut bukan kunci rep_date dan rep_date_end sudah ber- gantung secara fungsional sepenuhnya pada kunci utama primary
key. Pada tabel sixth_month_rep seperti pada gambar 4.20 untuk bentuk normal ketiganya menjadi yang tergambar pada gambar 4.21
dimana tabel subject, ability dan achive masing-masing terpecah menjadi seperti tabel 4.4.
Tabel 4.4 Tabel Subject, Ability dan Achive pada bentuk normal ketiga
J K
L M
N O
Sub_id Sub_desc Ability_id Ability_desc
Achive_code Achive_desc
1 Islamic
1 Islamic
1 Good
Atribut bukan kunci sub_desc, ability_desc dan achive_desc sudah bergantung secara fungsional sepenuhnya terhadap kunci
utama primary key sub_id, ability_id dan achive_code.
104
class
PK class_id
class_desc outbox
PK id
InsertIntoDB UpdateIntoDB
SendingDateTime DestinationNumber
text DeliveryRep
textDecoded CreatorID
city
PK city_id
city_desc
subject
PK sub_id
sub_desc ability
PK ability_id
ability_desc achive
PK achive_code
achive_desc
attitude
PK attitude_id
attitude_desc topic
PK topic_id
topic_desc Report
PK report_id
best_std need_apprent_std
teacher_id class_id
student
PK nis
nama gender
address place_of_birth
date_of_birth grade
email telephone
level
class_id city_id
teacher_id user_id
testimoni
PK testimoni_id
testimoni wali
read day
date hour
photo
nis
teacher
PK teacher_id
name gender
address place_of_birth
date_of_birth email
telephone
class_id user_id
sent_item
PK id
UpdateInDB InsertIntoDB
status SendingDateTime
DeliveryDateTime Text
DestinationNumber SMSCNumber
TextDecoded Status
CreatorID
nis
sixth_month_rep
PK smr_id
rep_date rep_date_end
sub_id ability_id
nis achive_code
thirth_month_rep
PK tmr_id
rep_date rep_date_end
sub_id ability_id
achive_code nis
weekly_rep
PK wr_id
rep_date rep_date_end
notes
sub_id topic_id
achive_code attitude_id
nis
user
PK user_id
username password
level
Gambar 4.22 ERD yang dinormalisasi
105
4.3.5 Kamus data Data Dictionary