AKTIVITI PENGAYAAN SAINS KOMPUTER • TINGKATAN 4
348
Bank Arus
8A •GAMBAR RAJAH PERHUBUNGAN
Bank Arus merupakan satu bank baru di Malaysia. Pangkalan data Bank Arus mempunyai 4 maklumat penting iaitu ENTITI
akaun bank, pelanggan, cawangan dan transaksi.
Setiap pelanggan akan dikenal pasti dengan ID pelanggan yang unik. Selain daripada ID, setiap pelanggan juga
mempunyai medan nama dan juga satu medan untuk simpkan nombor telefon mereka (rumah, pejabat dan telefon
bimbit). Setiap pelanggan boleh membuka lebih daripada satu akaun bank dan setiap akaun boleh dimiliki oleh lebih
daripada satu pelanggan. Apabila pelanggan membuka satu akaun bank, ID cawangan, tarikh akaun dibuka dan juga
nama pelanggan akan dicatatkan pada rekod tersebut.
Setiap akaun bank boleh membuat lebih daripada satu transaksi. Setiap transaksi mempunyai ID yang unik dan juga
jumlah wang yang terlibat dalam transaksi tersebut. Apabila akaun bank membuat sesuatu transaksi, cawangan akaun
penerima, tarikh dan masa transaksi, nombor akaun penerima serta cawangan akaun penghantar akan dicatatkan dalam
rekod.
Lebih daripada satu akaun bank boleh disimpan di bawah sesuatu cawangan. Setiap cawangan dikenal pasti dengan
kod cawangan, alamat cawangan dan nama cawangan.
Hospital Arus
Selama ini, hospital Arus mengendalikan semua maklumat secara berasingan pada komputer yang berlainan. Ini
menyebabkan pelbagai masalah di dalam hospital. Untuk mengatasi masalah ini, Hospital Arus telah memutuskan untuk
mengumpulkan segala maklumat dalam satu sistem pangkalan data berpusat.
Pangkalan data ini menyimpan maklumat tentang pesakit, doktor, rekod pesakit serta katil di dalam hospital. Setiap
pesakit dikenal pasti dengan ID pesakit, nama pesakit dan jantina pesakit dan setiap pesakit mungkin mempunyai satu
atau lebih daripada satu rekod pesakit. Setiap rekod pesakit mempunyai ID rekod dan juga kandungan pesakit. Apabila
pesakit mendaftarkan rekod yang baru, tarikh dan masa rekod serta status rekod (buka/tutup) akan ditambahkan
kepada rekod tersebut.
Setiap doktor boleh mengendali satu atau lebih daripada satu rekod pesakit. Apabila rekod pesakit itu diberikan
kepada doktor, nama doktor akan dicatatkan pada hubungan doktor-rekod pesakit tersebut. Setiap doktor dalam
sistem ini dikenal pasti dengan ID doktor, nama doktor dan juga kepakaran doktor.
Pesakit boleh membuat temu janji dengan doktor. Setiap pesakit boleh berjumpa dengan lebih daripada satu doktor
dan setiap doktor boleh berjumpa dengan lebih daripada satu pesakit. Setiap temu janji di antara doktor dan pesakit
akan dicatatkan tarikh dan masa temu janji yang merupakan kunci primer untuk hubungan tersebut. Selain daripada itu,
apabila temu janji dibuat, nama doktor dan nama pesakit juga dicatatkan.
Akhir sekali setiap katil di dalam hospital dikenal pasti dalam sistem dengan ID katil, bilik dan juga tingkat masing-
masing. Setiap katil hanya boleh membenarkan satu pesakit untuk berehat di atasnya. Apabila pesakit diberikan katil,
jantina pesakit, tarikh dan masa keluar/masuk wad serta nama pesakit dicatatkan.
5. Setiap kumpulan diberikan masa 30 minit untuk cuba melengkapkan latihan ini di dalam kelas. Jika murid
tidak dapat melengkapkan latihan ini, murid boleh melengkapkan latihan sebagai kerja rumah.
6. Setiap kumpulan diberikan masa 10 minit untuk membentangkan ERD dan murid lain menyemak jawapan
setiap kumpulan.
AKTIVITI PENGAYAAN
7. Skema jawapan:
Senario 1: Arus Pizza
Nama Pelanggan Tarikh dan masa Jumlah yang perlu SAINS KOMPUTER • TINGKATAN 4
tempahan dibayar
ID Pelanggan 1 Membuat N Tempahan (Set A, B
Pelanggan Tempahan atau C)
Nombor Telefon Nama Penghantar Pizza N
M Harga yang perlu dibayar ID Tempahan
Alamat Pelanggan diberikan kepada
(Jalan, Bandar, Menghantar tempahan ID Tempahan
Poskod) kepada Nama Pelanggan
Kod Cawangan N 1
Cawangan
Nombor Telefon
Cawangan
Poskod Cawangan Masa tempahan Poskod cawangan
349
Senario 2: Bank Arus
ID Cawangan Tarikh akaun Nama Pelanggan
dibuka
8A •GAMBAR RAJAH PERHUBUNGAN
Nombor Akaun M Memiliki ID Pelanggan ENTITI
Akaun Bank N
Jenis Akaun
(Simpanan atau 1
semasa) Pelanggan Nama Pelanggan
Baki Akaun Tarikh dan masa Nombor Telefon Pelanggan
transaksi (Rumah, Pejabat, Telefon Bimbit)
N
Cawangan akaun Nombor Akaun
penerima Penerima
Membuat
Di bawah
Cawangan akaun
penghantar
Kod Cawangan
Alamat Cawangan Cawangan N ID Transaksi
Transaksi Jumlah
Nama Cawangan
AKTIVITI PENGAYAAN
Senario 3: Hospital Arus
Tarikh dan masa Status Rekod Jantina Pesakit SAINS KOMPUTER • TINGKATAN 4
Rekod (Buka / Tutup)
ID Rekod N memiliki 1 Nama Pesakit
Kandungan Rekod Rekod Pesakit N ID Pesakit
N Pesakit
1
Nama Doktor Jantina pesakit Tarikh dan masa
Nama Pesakit keluar wad
Tarikh dan masa
temu janji Nama Pesakit
Nama Doktor diberikan dimasukkan ke Tarikh dan masa 350
ID Doktor masuk wad
Nama Doktor temu janji
1 M 1 Bilik 8A •GAMBAR RAJAH PERHUBUNGAN
Doktor Katil ID Katil ENTITI
Kepakaran Doktor Tingkat
Standard
Pembelajaran:
2.1.3, 2.2.1,
2.2.2, 2.2.3
LAMPIRAN 8A-1
Guru mengedarkan Lampiran 8A-1 kepada setiap kumpulan. SAINS KOMPUTER • TINGKATAN 4
Bahagian A
1. Semua kumpulan perlu melakar gambar rajah perhubungan entiti (ERD) bagi universiti.
Universiti
Sebuah universiti terdiri daripada beberapa fakulti. Setiap fakulti menawarkan beberapa kursus. Setiap fakulti dalam
university mempunyai nama yang unik dan juga bajet yang ditawarkan kepada fakulti tersebut. Setiap kursus tergolong
kepada satu fakulti sahaja dan mempunyai namanya yang unik, masa yang ditawarkan dan juga bilangan murid
yang dibenarkan ambil kursus tersebut. Setiap kursus terdiri daripada beberapa modul, modul mungkin mempunyai
nama yang sama bagi kursus yang berlainan tetapi setiap modul mesti mempunyai kod modul yang unik. Murid yang
mengambil kursus tersebut perlu memasukkan nombor IC mereka ke dalam system apabila mereka mendaftar kursus
tersebut. Nama, jantina murid direkodkan juga dalam sistem universiti. Setiap murid yang mengambil kursus tertentu
juga mengambilkan semua modul yang ada dalam kursus tersebut. Murid boleh mengambil lebih daripada satu
kursus. Setiap modul diajar oleh seorang pensyarah daripada fakulti berkenaan tetapi terdapat juga pensyarah yang
tidak mengajar modul. Setiap murid hanya mempunyai satu mentor pensyarah sahaja tetapi pensyarah boleh menjadi
mentor kepada sekumpulan murid. Pensyarah mempunyai medan no pensyarah, gaji, dan juga nama dalam sistem.
2. Setiap kumpulan juga diberikan salah satu set yang diselesaikan di bawah:
Set 1 Set 2
1) Setiap jabatan mempunyai banyak pekerja. 1) Setiap penyelia mengurus satu jabatan. 351
Setiap pekerja hanya boleh bekerja di satu Setiap jabatan diurus oleh satu penyelia.
jabatan. 2) Artis mungkin sekurang-kurangnya 8A •GAMBAR RAJAH PERHUBUNGAN
2) Setiap guru mengajar satu subjek atau tidak menggubah satu lagu, ataupun tidak ENTITI
mengajar. Setiap subjek diajar oleh seorang menggubah lagu langsung. Tetapi setiap
guru sahaja. lagu mesi digubah oleh sekurang-kurangnya
3) Seorang penulis menulis banyak buku. satu artis.
Sebuah buku mungkin ditulis oleh banyak 3) Satu pasukan bola mempunyai banyak
penulis. Penulis mungkin tidak menulis buku. pemain, tetapi setiap pemain hanya memain
4) Setiap pesakit ada rekod di dalam hospital. untuk satu pasukan sahaja. Pemain juga
Setiap pesakit ada satu atau lebih rekod mungkin tidak memain untuk pasukan.
dalam hospital. Setiap rekod dimiliki oleh 4) Setiap murid ada rekod disiplin dalam
satu pesakit sahaja. sekolah. Setiap murid mungkin ada satu atau
lebih rekod disiplin dalam sekolah. Setiap
rekod dimiliki oleh satu murid sahaja.
Standard
Pembelajaran:
2.1.3, 2.2.1,
2.2.2, 2.2.3
LEMBARAN KERJA 8A-1 SAINS KOMPUTER • TINGKATAN 4
NAMA: TARIKH:
KELAS:
Bahagian A:
Jawapan daripada latihan kumpulan:
1) Universiti
352
8A •GAMBAR RAJAH PERHUBUNGAN
ENTITI
Standard
Pembelajaran:
2.1.3, 2.2.1,
2.2.2, 2.2.3
LEMBARAN KERJA 8A-1
2) Set ______:
SAINS KOMPUTER • TINGKATAN 4
353
Komen guru: 8A •GAMBAR RAJAH PERHUBUNGAN
ENTITI
Tarikh:
Bahagian B:
Jawab soalan berikut: (SPI: 2.2-1)
Apakah kepentingan kunci primer dalam pangkalan data?
_______________________________________________________________________________________________ ____
____________________________________________________________________________________________________
Komen guru:
Tarikh:
SKEMA JAWAPAN
LEMBARAN KERJA 8A-1
Nama Bilangan
Fakulti
Bajet Nama Masa
M
Bahagian A: SAINS KOMPUTER • TINGKATAN 4
1 Diambil
Fakulti Menawarkan N Kursus
1
Jawapan daripada latihan kumpulan:
1) Universiti 1
Bajet Mempunyai Kod Mempunyai Masa Jantina
Nama Nama Modul Bilangan Nama No KP
Fakulti
Nama N Nama
N N
Jantina
PeFnaskyualrtai h 1 Menawarkan 1 N Modul M Pelajar No KP
11 1 Kursus
No Nama
Pensyarah Mengajar M MengambilDiambil N N
1 N
Gaji Mempunyai Mempunyai
Kod Dimentor Nama
Modul oleh
N N N
Pensyarah Pelajar
Nama 1 1 Modul N
1 M
No Mengajar
Pensyarah
Mengambil 354
Gaji
Dimentor
oleh
Fakulti Kursus Pelajar Modul Pensyarah 8A •GAMBAR RAJAH PERHUBUNGAN
Menawarkan ENTITI
Fakulti Dimiliki oleh beberapa Mempunyai
Kursus satu beberapa
Pelajar Fakulti Mengambil
Modul Ahli kepada banyak Dimiliki oleh Mempunyai
Fakulti sDaimtuiliki oleh Kursus banyak banyak
Pensyarah satu Daripada satu
Kursus Menawarkan Pelajar Mengambil Dimentor oleh
Pelajar Ahli kepada beberapa Diambil oleh banyak satu
Modul satu banyak Modul Pensyarah
Pensyarah Mengambil Diajar oleh satu
banyak Mentor kepada Mengajar atau Mempunyai
Daripada satu bDeimbielikrai oplaeh Mtideamkpmuennygaai jar beberapa
banyak banyak
Mengambil Dimentor oleh
banyak satu
Diambil oleh Diajar oleh satu
banyak
Mentor kepada Mengajar atau
beberapa tidak mengajar
SKEMA JAWAPAN
LEMBARAN KERJA 8A-1
2) Set ______: Jabatan 1 Mempunyai N Pekerja
Set 1 Guru 1
Mengajar N SAINS KOMPUTER • TINGKATAN 4
Subjek
Penulis M N Buku
Mengajar
Pesakit 1 Mempunyai N Rekod
Penyelia 1 Mengurus 1
Artis M Menulis Jabatan
Set 2 Pasukan 1 Mempunyai N 355
Murid 1 Mempunyai Lagu
N
Pemain
N
Rekod
Bahagian B: 8A •GAMBAR RAJAH PERHUBUNGAN
ENTITI
Jawab soalan berikut: (SPI: 2.2-1)
Apakah kepentingan kunci primer dalam pangkalan data?
Supaya kita boleh merujuk kepada entiti tersebut dengan menggunakan kunci primer
PENGAJARAN 8B SAINS KOMPUTER • TINGKATAN 4
SKEMA HUBUNGAN
STANDARD KANDUNGAN
2.2 Reka Bentuk Pangkalan
STANDARD PEMBELAJARAN
Murid boleh:
2.2.4 Mereka bentuk pangkalan data hubungan dengan
menukar ERD ke skema hubungan
Guru hendaklah memastikan di akhir penggunaan modul
PdP ini, murid dapat mencapai Standard Pembelajaran
yang dinyatakan di atas.
Kandungan Muka surat
Rancangan Pengajaran 8B 358
Aktiviti Pengayaan 365
Skema Jawapan 368
Lembaran Kerja 8B-1 371
Skema Jawapan 374
PENGAJARAN 8B
STANDARD KANDUNGAN Masa: 60 Minit SAINS KOMPUTER • TINGKATAN 4
2.2 Reka Bentuk Pangkalan Data Persediaan: 5 - 10 Minit
STANDARD PEMBELAJARAN Penerapan Pemikiran
Murid boleh: Komputasional (PPK):
2.2.4 Mereka bentuk pangkalan data hubungan • Data Representation
dengan menukar ERD ke skema hubungan • Algorithm and Procedures
(ALG)
BAHAN BANTU MENGAJAR (BBM) • Problem Decomposition (PD)
Bahan untuk kelas
Tiada
Bahan untuk setiap kumpulan
Tiada
Bahan untuk setiap murid
1. Lembaran Kerja 8B-1
PERSEDIAAN 357
1. Kertas Mahjong untuk semua kumpulan
SUMBER TAMBAHAN 8B •SKEMA HUBUNGAN
1. Cara menukarkan ERD ke jadual :
https://www.tutorialcup.com/dbms/er-model-into-tables.htm
2. Cara menukarkan ERD ke jadual:
http://www.learndb.com/databases/how-to-convert-er-diagram-to-
relational-database
RANCANGAN PENGAJARAN 8B
MASA CADANGAN AKTIVITI BBM PEMETAAN
5 Set Induksi
Minit
SAINS KOMPUTER • TINGKATAN 4
1. ERD adalah seperti gambar carta alir untuk
pengaturcaraan. Ia memberitahu tentang logik atur cara
tetapi ia tidak memberikan sebarang maklumat tentang atur
cara. ERD adalah langkah pertama untuk mereka bentuk
sesuatu pangkalan data. Kita perlu tukarkan ERD kepada
sesuatu skema hubungan.
2. Guru menanyakan murid tentang atribut, entiti, hubungan
dan kunci primer yang terdapat di gambar rajah ERD berikut:
Kod Subjek
Jantina Nama
Subjek
Nombor Kad 1 N
Pengenalan Subjek
Guru Mengajar
Nama Tahap
Subjek
3. Guru menerangkan bahawa walauKopd SuubnjekERD dapat
mewakilkan koJanntsinaep hubungan antara entiti denganSNuabmjjeeaklas,
NPeoEknmiRgtbeaoDnraKt.laainddak boleh mere1ka satu pangkalaNn data berdasarkan
Guru Mengajar Subjek
4. Guru maklumkan murid bahawa mereka akan belajar 358
tentangNsamkaema hubungan hari ini. Tahap
Subjek
45 Aktiviti 1: Penterjemahan ERD kepada Skema hubungan • Kertas Standard
Minit Mahjong Pembelajaran
2.2.4
1. kGeuprauEdRmaDesneenraarnagi jkaadnubalashearwtaaksuknecmiSdakaehnmubpauePnreagrthauunrbamnuneygaraunnjgukp e rlu 8B •SKEMA HUBUNGAN
KA21
dipSeattuehnit.itJi adual KS
SetsepseurhautubuEnRgDa. n itu pula meJnagdaunadl udnegngi eanntkitui nactai udahnubautrnibguatn
PPK
DR
2. Secara ringkasnya, penterjemahan daripada ERD kepada ALG
PD
skema hubungan adalah seperti berikut:
ERD Skema Perhubungan
Jadual dengan kunci dan atribut
Set entiti
Set perhubungan
3. Cara untuk mewakili skema hubungan adalah seperti
berikut:
a. Nama Jadual
Atribut 1
Atribut 2
Atribut 3
Atribut 4
RANCANGAN PENGAJARAN 8B
MASA CADANGAN AKTIVITI BBM PEMETAAN
4. Perhati bahawa kunci primer untuk setiap jadual adalah 359SAINS KOMPUTER • TINGKATAN 4
bergaris.
5. Terdapat beberapa peraturan dan penterjemahan ERD
kepada skema hubungan, iaitu:
a. Set entiti
Untuk setiap set entiti, satu jadual diwujudkan dan
medan diwujudkan untuk setiap atribut dan kunci.
JaJanntintinaa
NNoommbboor r PPeelalajajar r KKeelalas s
ppeennddaaftfatararann
NNaammaa
Untuk mewakilkan ERD ini dalam DBMS, satu jadual
diwujudkan dengan semua atribut ditukarkan
kepada medan, seperti berikut:
PPeelalajajar r
NNoommbboor rPPeennddaaftfatararann
NNaammaa
JJaanntitninaa 8B •SKEMA HUBUNGAN
KKeelalas s
Bilangan jadual yang akan dibina: 1
Apabila jadual ini diisikan dengan rekod, ia akan
kelihatan seperti begini dalam DBMS:
b. Hubungan
Penterjemahan hubungan dalam skema hubungan
adalah bergantung kepada kekardinalan hubungan
tersebut. Guru mengulaskan bahawa kunci primer
merupakan kunci yang unik untuk entiti dan kunci
asing merujuk kepada kunci primer entiti lain yang
dijadikan atribut sesuatu entiti.
RANCANGAN PENGAJARAN 8B
MASA CADANGAN AKTIVITI BBM PEMETAAN
B1) Kekardinalan 1:1
Setiap sekolah hanya diurus oleh 1 pengetua dan SAINS KOMPUTER • TINGKATAN 4
setiap pengetua hanya mengurus 1 sekolah.
Kunci primer daripada salah satu entiti akan
menjadi kunci asing dalam entiti lain. Kunci asing
akan digariskan dengan garisan bertitik. Contohnya:
a) Hubungan PENGETUA mengurus satu
SEKOLAH
360
b) Hubungan: SEKOLAH diurus oleh satu
PENGETUA
Tetapkan salah satu hubungan bagi rekabentuk 8B •SKEMA HUBUNGAN
pangkalan data.
Bilangan jadual yang akan dibina: 1
B2) Kekardinalan 1:N / N:1
RANCANGAN PENGAJARAN 8B
MASA CADANGAN AKTIVITI BBM PEMETAAN
Satu guru mengajar banyak subjek
Kunci primer daripada bahagian hubungan 1 SAINS KOMPUTER • TINGKATAN 4
dijadikan kunci asing untuk hubungan pada
bahagian N. Sebarang atribut yang ada pada
perhubungan akan dimasukkan dalam entiti
bahagian N.
Hubungan: GURU mengajar banyak SUBJEK
Bilangan jadual yang akan dibina: 2
B3) Kekardinalan M:N
361
Banyak guru mengajar banyak murid dan banyak
murid diajar oleh banyak guru
Satu jadual baru diwujudkan untuk mewakili set 8B •SKEMA HUBUNGAN
perhubungan antara entiti guru dan murid di mana
kunci primer untuk entiti guru dan murid digunakan
sebagai kunci primer/asing dalam jadual baru
tersebut. Kunci primer baru untuk jadual itu adalah
kombinasi kedua-dua kunci primer
Hubungan: GURU mengajar banyak MURID
MURID diajar oleh banyak
Bilangan jadual yang akan dibina: 3
RANCANGAN PENGAJARAN 8B
MASA CADANGAN AKTIVITI BBM PEMETAAN
B4) Kekardinalan M:N dengan atribut pada 362SAINS KOMPUTER • TINGKATAN 4
perhubungan.
Banyak murid mengambil banyak subjek.
Banyak subjek diambil oleh banyak murid.
Perhubungan itu mempunyai satu atribut iaitu
markah yang hanya akan wujud untuk setiap
perhubungan yang melibatkan entiti murid dan
subjek.
Satu jadual baru diwujudkan untuk mewakili set
perhubungan antara entiti subjek dan murid di
mana kunci primer untuk entiti subjek dan murid
digunakan sebagai kunciKopdrSiumbjeek r/asing dalam
jaduaJlanbtinaaru tersebut. Kunci primer baru unNtuamka
No mbor jadual itu adalah kombinasi kedua-dua kunScubije k
Pendaftaran primeMru.ridJaduMal tersMeebnguamtbjiluga mN empSubujenk yai satu
atribut iaitu markah murid dapat.
Murid
Nama Tahap
Subjek
Markah Kod Subjek
Jantina Nama
Subjek
Nombor Murid M Mengambil N
Pendaftaran Subjek
Murid
Nama Tahap
Subjek
Markah
Hubungan: MURID mengambil banyak SUBJEK
SUBJEK diambil oleh banyak MURID 8B •SKEMA HUBUNGAN
Murid
Nombor Pendaftaran Murid (Kunci Primer)
Nama Mengambil
Jantina Nombor Pendaftaran Murid (Kunci Primer / Kunci Asing)
Subjek Kod Subjek (Kunci Primer / Kunci Asing)
Kod Subjek (Kunci Primer) Markah
Nama Subjek
Tahap Subjek
Murid
Bilangan jadualNombor Pendaftaran Murid (Kunci Primer) yang akan dibina: 3
Nama Mengambil
Jantina Nombor Pendaftaran Murid (Kunci Primer / Kunci Asing)
Subjek Kod Subjek (Kunci Primer / Kunci Asing)
Kod Subjek (Kunci Primer) Markah
Nama Subjek
Tahap Subjek
RANCANGAN PENGAJARAN 8B
MASA CADANGAN AKTIVITI BBM PEMETAAN
6. Guru melukiskan ERD berikut di papan putih: 363
Nombor Nama Jantina SAINS KOMPUTER • TINGKATAN 4
Pendaftaran Murid
Markah
Mengajar N Murid M Mengambil
Bilangan Tahun Kod Nama
Berkhidmat Sekolah Sekolah
Jantina M N Mempunyai 11 Kod
Nama Guru Sekolah Subjek
Mengurus
M Nombor Kad 1 N Nama
Pengenalan Pengetua Subjek Subjek
Nombor Kad
Pengenalan N Tahap
Subjek
Nama
Mengajar
Bilangan kelas yang 8B •SKEMA HUBUNGAN
diajar untuk subjek ini
7. Berikut adalah langkah-langkah untuk membina skema
hubungan bagi sesuatu ERD yang diterima:
a. Mengenal pasti entiti dan menghasilkan satu jadual
untuk setiap entiti yang ada. Tentukan kunci primer
di setiap entiti yang ada.
b. Untuk setiap hubungan yang wujud, tentukan sama ada
perlu letakkan kunci asing daripada entiti lain, ataupun
perlu wujudkan jadual baru.
c. Menambahkan maklumat hubungan pada jadual
ataupun mewujudkan jadual baru untuk hubungan.
8. Guru menghasilkan skema hubungan bersama dengan
murid di atas papan putih:
a. Mengenal pasti entiti dan mewujudkan jadual baru untuk
setiap entiti.
Hubungan:
1. PENGETUA mengurus satu sekolah.
2. SEKOLAH mempunyai banyak GURU.
3. GURU mengajar banyak SUBJEK.
4. SUBJEK diajar oleh banyak GURU.
5. GURU mengajar banyak MURID.
6 MURID diajar oleh banyak GURU.
7. MURID mengambil banyak SUBJEK.
8. SUBJEK diambil oleh banyak MURID.
RANCANGAN PENGAJARAN 8B
MASA CADANGAN AKTIVITI BBM PEMETAAN
b. Berikut adalah hubungan yang wujud: SAINS KOMPUTER • TINGKATAN 4
i. Mengurus – Tidak perlu jadual baru.
ii. Mempunyai – Tidak perlu jadual baru.
iii. Mengajar – Perlu jadual baru.
iv. Mengambil – Perlu jadual baru.
v. MengajarSubjek – Perlu jadual baru.
c. Penambahan maklumat pada jadual yang sedia ada dan
mewujudkan jadual baru (bahagian biru mewakili
hubungan yang ada pada ERD):
364
Bilangan jadual yang akan dibina: 8 8B •SKEMA HUBUNGAN
9. Untuk aktiviti seterusnya, murid diminta untuk membentuk
kumpulan berempat untuk menterjemahkan gambar rajah
ERD kepada skema hubungan pada kertas mahjong.
(Lembaran Kerja 8B-1)
10. Murid menjalankan aktiviti gallery walk untuk menyemak
skema hubungan rakan mereka. Murid diberikan peluang
untuk membetulkan hasil kerja mereka sebelum
menghantarkan skema yang dihasilkan kepada guru.
10 Minit Penutup
1. Guru mengulas balik konsep penting dalam penterjemahan
rajah ERD kepada skema hubungan.
2. Guru membincangkan jawapan ERD universiti bersama
dengan kelas.
AKTIVITI PENGAYAAN SAINS KOMPUTER • TINGKATAN 4
Cadangan: Aktiviti ini dicadangkan diadakan selepas pengajaran ini telah selesai untuk memberikan latihan8B •SKEMA HUBUNGAN
pengukuhan kepada murid. Aktiviti ini adalah sambungan daripada aktiviti pengayaan di pengajaran 8A dan
akan bersambung di pengajaran 8C dan seterusnya pengajaran 9B sehingga 9F. Jika aktiviti penggayaan
ini telah dilaksanakan, guru tidak perlu menjalankan pengajaran 9A. Masa yang dicadangkan untuk aktiviti
pengayaan ini adalah 1 X 60 minit.
1. Murid dibahagikan kepada beberapa kumpulan. Setiap kumpulan tidak melebihi 4 orang murid.
2. Guru ada 2 pilihan: sama ada untuk minta murid kekalkan kumpulan yang sama daripada aktiviti
pengayaan 8A ataupun kumpulan yang baru tetapi menggunakan ERD yang telah dihasilkan semasa
aktiviti pengayaan 8A.
3. Guru mengulas balik langkah-langkah untuk menukarkan ERD ke skema hubungan:
a. Mengenal pasti entiti dan menghasilkan satu jadual untuk setiap entiti yang ada. Tentukan kunci
primer di setiap entiti yang ada.
b. Untuk setiap hubungan yang wujud, tentukan sama ada perlu letakkan kunci asing daripada entiti
lain, ataupun perlu wujudkan jadual baru.
c. Menambahkan maklumat hubungan pada jadual ataupun mewujudkan jadual baru untuk hubungan.
365
4. Guru membuat demonstrasi dengan ERD SMK Arus yang telah dihasilkan semasa aktiviti pengayaan 8A
a. Mengenal pasti entiti dan menghasilkan satu jadual untuk setiap entiti yang ada. Tentukan kunci
primer di setiap entiti yang ada.
AKTIVITI PENGAYAAN
b. Hubungan yang ada dalam ERD: SAINS KOMPUTER • TINGKATAN 4
a. Mengajar – Perlu jadual baru.
b. Mengambil – Perlu jadual baru.
c. Mempunyai guru tingkatan – Tidak perlu jadual baru.
d. Berada di – Tidak perlu jadual baru.
e. Menawarkan – Perlu jadual baru.
c. Menambahkan maklumat hubungan pada jadual ataupun mewujudkan jadual baru untuk
hubungan.
5. Murid dikehendaki untuk menghasilkan skema hubungan daripada ERD yang telah dihasilkan pada
aktiviti pengayaan 8a.
Senario 1: Arus Pizza
366
8B •SKEMA HUBUNGAN
AKTIVITI PENGAYAAN
Senario 2: Bank Arus
SAINS KOMPUTER • TINGKATAN 4
367
Senario 3: Hospital Arus
8B •SKEMA HUBUNGAN
SKEMA JAWAPAN
AKTIVITI PENGAYAAN
6. Skema Jawapan:
a. Senario 1: Arus Pizza
SAINS KOMPUTER • TINGKATAN 4
368
8B •SKEMA HUBUNGAN
SKEMA JAWAPAN SAINS KOMPUTER • TINGKATAN 4
AKTIVITI PENGAYAAN
b. Senario 2: Bank Arus
369
8B •SKEMA HUBUNGAN
SKEMA JAWAPAN SAINS KOMPUTER • TINGKATAN 4
AKTIVITI PENGAYAAN
c. Senario 3: Hospital Arus
370
8B •SKEMA HUBUNGAN
Standard
Pembelajaran:
2.2.4
LEMBARAN KERJA 8B-1
Guru mengedarkan soalan kepada setiap kumpulan. Semua kumpulan perlu menukarkan rajah ERD kepada
skema hubungan untuk Universiti. Setiap kumpulan juga diberikan salah satu set yang disediakan di bawah:
Bajet Nama Bilangan Nama Kod Masa SAINS KOMPUTER • TINGKATAN 4
Fakulti pelajar yang N Kursus M
dibenarkan
Fakulti 1 Kursus Diambil
1 Menawarkan 1
Tarikh
bermula
Bilangan Mempunyai Mempunyai
tahun
berkhidmat
Jantina
Nama N Kod N Nama N
Pensyarah Modul Modul Pelajar
No 1 No KP
Pensyarah 1 1 N Nama
Gaji Pengalaman
mengajar
modul Markah yang
tersebut diterima
371
Mengajar MN
Mengambil
Dimentor 8B •SKEMA HUBUNGAN
oleh
Komen guru:
Tarikh:
Standard
Pembelajaran:
2.2.4
LEMBARAN KERJA 8B-1
Set 1
SAINS KOMPUTER • TINGKATAN 4
372
8B •SKEMA HUBUNGAN
Komen guru:
Tarikh:
Standard
Pembelajaran:
2.2.4
LEMBARAN KERJA 8B-1
Set 2
SAINS KOMPUTER • TINGKATAN 4
373
8B •SKEMA HUBUNGAN
Komen guru:
Tarikh:
SKEMA JAWAPAN SAINS KOMPUTER • TINGKATAN 4
LEMBARAN KERJA 8B-1
Guru mengedarkan soalan kepada setiap kumpulan. Semua kumpulan perlu menukarkan rajah ERD kepada
skema hubungan untuk Universiti. Setiap kumpulan juga diberikan salah satu set yang disediakan di bawah:
1) Universiti
374
8B •SKEMA HUBUNGAN
SKEMA JAWAPAN
LEMBARAN KERJA 8B-1
2) Set 1
375
8B •SKEMA HUBUNGAN SAINS KOMPUTER • TINGKATAN 4
SKEMA JAWAPAN
LEMBARAN KERJA 8B-1
3) Set 2
376
3
8B •SKEMA HUBUNGAN SAINS KOMPUTER • TINGKATAN 4
PENGAJARAN 8C SAINS KOMPUTER • TINGKATAN 4
KONSEP KEBERGANTUNGAN FUNGSI
DAN PENORMALAN DATA
STANDARD KANDUNGAN
2.2 Reka Bentuk Pangkalan
STANDARD PEMBELAJARAN
Murid boleh:
2.2.4 Menjelaskan konsep kebergantungan fungsi sepenuh,
kebergantungan fungsi separa dan kebergantungan
fungsi transitif
2.2.5 Melaksanakan proses penormalan data sehingga 3NF
terhadap skema hubungan
Guru hendaklah memastikan di akhir penggunaan modul
PdP ini, murid dapat mencapai Standard Pembelajaran yang
dinyatakan di atas.
Kandungan Muka surat
Rancangan Pengajaran 8C 379
Lembaran Kerja 8C-1 394
Lembaran Kerja 8C-2 396
Skema Jawapan 402
PENGAJARAN 8C
STANDARD KANDUNGAN Masa: 120 Minit SAINS KOMPUTER • TINGKATAN 4
Persediaan: 5 - 10 Minit
2.2 Reka Bentuk Pangkalan Data
Penerapan Pemikiran
STANDARD PEMBELAJARAN Komputasional (PPK):
• Algorithm and Procedures
Murid boleh: (ALG)
2.2.4 Menjelaskan konsep kebergantungan fungsi • Problem Decomposition (PD)
sepenuh, kebergantungan fungsi separa dan
kebergantungan fungsi transitif
2.2.5 Melaksanakan proses penormalan data
sehingga 3NF terhadap skema hubungan
BAHAN BANTU MENGAJAR (BBM)
Bahan untuk kelas
Tiada
Bahan untuk setiap kumpulan
Tiada
Bahan untuk setiap murid 378
1. Lembaran Kerja 8C-1
2. Lembaran Kerja 8C-2
SUMBER TAMBAHAN 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
1. Apakah itu penormalan data:
http://agiledata.org/essays/dataNormalization.html
2. Mengapa perlunya penormalan data:
http://sqlmag.com/database-performance-tuning/sql-design-why-
you-need-database-normalization
3. Latihan Penormalan Data:
a. https://web.csulb.edu/~mopkins/cecs323/
morenormalizationexamples.pdf
b. http://www.javaguicodexample.com/normalizationnotes.pdf
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
5 Set Induksi 379
Minit
SAINS KOMPUTER • TINGKATAN 4
1. Guru menjelaskan keburukan menggunakan sistem flat-file
untuk menyimpan maklumat pangkalan data iaitu:
a. Kesusahan untuk mengekalkan integriti data.
b. Ketekalan data iaitu data yang disimpan tidak konsisten
antara satu sama lain.
c. Kelewahan data iaitu data yang sama disimpan
berulangkali di tempat yang berlainan.
d. Kesusahan untuk mengakses data.
2. Guru menjelaskan bahawa model pangkalan data
hubungan akan wujud masalah yang lebih kurang sama jika
pangkalan data hubungan tidak direka dengan baik.
3. Guru menunjukkan skema perhubungan berikut dan
menanyakan apakah masalah yang akan wujud:
StudentID Subject
1 BM, BI, Matematik
2 BM, BI 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
a. Masalah akses data untuk tujuan pengubahsuaian
– skema hubungan di atas adalah untuk jadual
murid dan juga subjek yang diambil oleh murid
tersebut. Untuk mengubahsuai data, kita perlu menulis
semula semua maklumat lama. Contohnya, jika kita
ingin tambahkan subjek Sains Komputer (SK) kepada
murid dengan studentID2, adalah sangat susah
untuk kita terus tambahkan subjek SK kepada senarai
subjek (tambah SK selepas BM dan BI). Kita perlu
padamkan data yang sedia ada (BM, BI) dan menulis
semula data baru dengan menggabungkan data lama
dan data baru, yang mempunyai subjek SK (BM, BI
dan SK). Ini akan menjadi masalah jika data
yang disimpan adalah panjang.
b. Masalah akses data untuk tujuan penyingkiran
maklumat – untuk menyingkirkan subjek BI daripada
murid StudentID 2, kita tidak boleh terus cari
subjek BI daripada senarai itu dan padamkan subjek BI.
Kita perlu padamkan subjek yang sedia ada (BM, BI)
dan menulis semula data baru yang tiada subjek BI.
4. Guru menunjukkan skema perhubungan seterusnya dan
menanyakan apakah masalah yang akan wujud:
StudentID Name Subject
1 Susan BM
1 Susan BI
2 Lily BM
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
a. Masalah ketekalan data – Secara teorinya,
medan Name untuk rekod pertama SAINS KOMPUTER • TINGKATAN 4
(1, Susan,BM) boleh ditukarkan tanpa
penukaran pada medan Name untuk
rekod kedua (2, Susan, BM). Contohnya, kita
boleh tukarkan nama Susan menukarkan
kepada Siti pada rekod pertama
tanpa menukarkan nama Susan di
rekod kedua. Jika ini berlaku, data akan
menjadi tidak konsisten antara satu sama lain.
5. Guru menjelaskan bahawa dengan pangkalan data
hubungan, masalah seperti kesusahan mengekalkan
integriti data, ketekalan data, kelewahan data dan
kesusahan mengakses data tetap akan berlaku.
Sesuatu pangkalan data yang bagus perlulah
menyelesaikan masalah integriti data, ketekalan data,
kelewahan data dan kesusahan mengakses data. Jadi,
kita perlu mereka bentuk pangkalan data dan memastikan
masalah sebegini tidak berlaku.
50 Fungsi Kebergantungan Standard 380
Minit Pembelajaran
1. Guru menjelaskan bahawa dengan pangkalan data 2.2.4
hubungan, pelbagai masalah akan berlaku. KA21
2. Satu proses yang berstruktur dikenali sebagai penormalan PPK
(normalization) telah diperkenalkan untuk mengatasi PD
masalah ketekalan, kelewahan, dan integriti data dalam satu
pangkalan data hubungan. 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
3. Penormalan adalah satu proses berstruktur untuk PENORMALAN DATA
meleraikan perhubungan yang kurang
memuaskan ataupun lewah (redundant).
4. Untuk menangani masalah pangkalan data hubungan,
terdapat tiga peringkat ataupun bentuk normal iaitu:
i. bentuk normal pertama (First Normal Form) 1NF
ii. bentuk normal kedua (Second Normal Form) 2NF
iii. bentuk normal ketiga (Third Normal Form) 3NF
5. Untuk memahami penormalan kita perlu memahami konsep
kebergantungan (dependencies) iaitu hubungan antara
atribut sesuatu entiti. Ini kerana salah satu tujuan
penormalan data adalah memastikan kebergantungan
fungsi antara atribut adalah bermakna di setiap jadual.
Terdapat 3 jenis kebergantungan dan huraiannya adalah
seperti berikut:
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Konsep Kebergantungan Huraian SAINS KOMPUTER • TINGKATAN 4
Kebergantungan fungsi Kebergantungan fungsi sepenuh bermaksud
sepenuh (Full Functional bahawa atribut A boleh menentukan atribut
Dependency) B untuk sesuatu entiti. Setiap nilai A hanya
boleh menentukan 1 nilai B.
Kebergantungan fungsi boleh diwakili
dengan cara penulisan berikut:
A -> B
Contohnya, setiap nombor kad pengenalan
di Malaysia boleh menentukan nama satu
rakyat Malaysia sahaja. Kita boleh wakilkan
kebergantungan fungsi tersebut dengan cara
tulisan berikut:
Nombor KP -> Nama rakyat Malaysia
Maka kita boleh katakan bahawa nama rakyat
Malaysia bergantung fungsi sepenuhnya
dengan nombor kad pengenalan
Nombor KP Nama
Kebergantungan fungsi separa Contoh berikut menunjukkan atribut C yang
(Partial Functional Dependency) ditentukan oleh 2 kunci primer, iaitu A dan B:
A, B -> C
Kebergantungan fungsi separa berlaku 381
apabila:
a) A dan B menentukan C, tetapi 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
dengan hanya A sahaja juga boleh PENORMALAN DATA
menentukan C.
Lihat contoh berikut:
A, B -> C, D, E
Maka dalam contoh ini, kesemua (A->C),
(A->D), (A->E), (B->C), (B->D) dan (B->E)
merupakan kebergantungan fungsi separa.
Ini telah menimbulkan masalah kelewahan
data kerana mana-mana kunci primer boleh
menentukan data yang bergantungan
dengannya.
Kebergantungan fungsi separa akan
dihapuskan semasa proses Bentuk
Penormalan kedua (2NF).
Contohnya,
(No KP, No Telefon) -> (Nama Pelanggan)
di mana No KP & No Telefon adalah kunci
primer.
Maka, dengan merujuk No KP, nama
pelanggan dapat diketahui. Pada masa yang
sama, dengan merujuk No Telefon, nama
pelanggan yang sama juga boleh ditentukan.
Masalah kelewahan data ini tidak boleh berlaku
bagi pangkalan data hubungan yang cekap.
Nombor KP Nama
Nombor
Telefon
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Konsep Kebergantungan Huraian SAINS KOMPUTER • TINGKATAN 4
Kebergantungan Fungsi A->B
Transitif B->C
(Transitive Functional Maka A->C, dan kebergantungan fungsi ini
Dependency) adalah kebergantungan fungsi transitif
Kebergantungan fungsi transitif berlaku
apabila atribut sesuatu entiti boleh 382
ditentukan oleh atribut yang bukan kunci
primer.
Bayangkan scenario berikut:
Satu jadual A mengandungi atribut:
- No Pendaftaran (kunci primer)
- Subjek yg diambil (kunci primer)
- Markah
Satu jadual B mengandungi atribut:
- Markah
- Gred
Jadual A dan Jadual B adalah bergantungan.
Di sini, kita boleh menjangka Gred seseorang
murid dengan merujuk Markah. Maka,
kita boleh putuskan atribut Gred (Jadual
B) adalah bergantungan fungsi transitif
dengan atribut No Pendaftaran (kunci primer
Jadual A). Dgn mengetahui No Pendaftaran
seseorang murid, kita akan tahu Grednya
walaupun melibatkan 2 jadual yg berbeza.
Kebergantungan Fungsi Transitif akan
dihapuskan semasa proses Bentuk
Penormalan Ketiga (3NF).
Nombor Markah Gred 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
Pendaftaran PENORMALAN DATA
60 6. Murid menjalankan aktiviti Think-Pair-Share di mana mereka akan Standard
Minit jawab Lampiran Kerja 8C-1, menjelaskan apa yang mereka faham Pembelajaran
tentang fungsi kebergantungan kepada rakan semeja mereka, dan 2.2.4
saling menyemak jawapan.
7. Guru meminta wakil setiap pasangan untuk memberikan beberapa Standard
contoh fungsi kebergantungan penuh, separa dan transitif (Soalan 2). Prestasi
2.2 - 4
Penormalan Pangkalan Data ke Tahap 3NF 2.2 - 5
2.2 - 7
1. Langkah-langkah dan syarat-syarat untuk melaksanakan penormalan
adalah seperti berikut: KA21
PPK
ALG
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Penormalan Syarat Contoh SAINS KOMPUTER • TINGKATAN 4
Penormalan • Maklumat Jadual A:
tahap satu disimpan
(1NF - First dalam bentuk StudentID StudentName Subjects
Normal jadual.
Form) A001 Ali bin Malay, English,
• Setiap medan
Ahmad Math, Science
hanya boleh A002 Alison Lee Acconting,
menyimpan satu Geography,
maklumat sahaja. Malay, English
Medan tidak boleh Jadual contoh A bukan dalam bentuk
menyimpan lebih 1NF kerana ruangan Subjects menyimpan
daripada satu nilai lebih daripada 1 nilai. Untuk meletakkan
yang dipisahkan jadual tersebut dalam 1NF, kita perlu
memastikan bahawa semua medan hanya
dengan koma.
mengandungi satu nilai sahaja.
• Tidak Terdapat 2 cara untuk menormalkan jadual
membenarkan 0NF ke 1NF, iaitu:
medan yang - Cara 1: Pengulangan rekod
serupa / sama / - Pemecahan maklumat kepada 2
berulang. jadual
Cara 1: Pengulangan rekod
Jadual A dalam bentuk 1NF
StudentID StudentName Subjects
A001 Ali bin Malay 383
Ahmad
A001 Ali bin English
Ahmad
A001 Ali bin Math
Ahmad
A001 Ali bin Science
Ahmad 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
A002 Alison Lee Acconting
A002 Alison Lee Geography
A002 Alison Lee Malay
A002 Alison Lee English
Pemecahan kepada 2 jadual:
Student
StudentID StudentName
A001 Ali bin
Ahmad
A002 Alison Lee
Subject
StudentID Subjects
A001 Malay
A001 English
A001 Math
A001 Science
A002 Accounting
A002 Geography
A002 Malay
A002 English
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Penormalan Syarat Contoh SAINS KOMPUTER • TINGKATAN 4
Jadual B dalam bentuk 0NF
StaffID StaffName Project1 Project
A01 Ali ABC DEF
A02 Ravi XYZ ABC
Jadual B juga bukan dalam bentuk
1NF. Walaupun setiap nilai kelihatan
seperti nilai tunggal tetapi 1NF tidak
membenarkan juga medan yang
mempunyai maklumat yang serupa/sama.
Jadual B dalam bentuk 1NF:
StaffID StaffName Project1
A01 Ali ABC
A01 Ali DEF
A02 Ravi XYZ
A02 Ravi ABC
Ataupun pecah dalam 2 jadual seperti
berikut:
Staff 384
StaffID StaffName
A01 Ali
A02 Ravi
Project
StaffID Project1 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
A01 ABC PENORMALAN DATA
A01 DEF
A02 XYZ
A02 ABC
Jika dalam bentuk 0NF, projek yang
dibenarkan hanya 2 sahaja. Kelebihan
1NF dalam kes ini adalah ia membenarkan
senarai projek yang lebih daripada 1.
Penormalan • Jadual dalam Jadual C dalam bentuk 1NF
tahap
satu (2NF bentuk 1NF. StudentID Subject StudentName Marks
- Second
Normal • Tiada A01 BM Ali 86
Form)
kebergantungan A02 BM Lily 90
fungsi separa. A02 BI Lily 88
A03 Math Shalini 84
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Penormalan Syarat Contoh SAINS KOMPUTER • TINGKATAN 4
FD1
Kebergantungan ini adalah
kebergantungan separa kerana
StudentName boleh ditentukan dengan
StudentID sahaja. Tidak perlu kunci primer
subject.
Untuk mengatasi masalah ini, kita
boleh hapuskan FD1 untuk menjadikan
jadualnya tersendiri, seperti berikut:
Student
StudentID StudentName
A01 Ali
A02 Lily
A03 Shalini
Marks
StudentID Subject Marks
A01 BM 86
A02 BM 90
A02 BI 88
A03 Math 84
*Guru boleh gunakan contoh berikut 385
untuk berikan penerangan lebih lanjut:
Jadual D dalam bentuk 1NF
CustomerID PhoneNumber Customer Plan
Name
A01 0123456789 Ali X 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
A01 0123456788 Ali PENORMALAN DATA
0123213125 Lee Y
A02 Y
Jawapan:
Jadual D dalam bentuk 2NF
Customer
CustomerID Customer
Name
A01 Ali
A02 Lee
Plan
CustomerID Plan
A01 X
A01 Y
A02 Y
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Penormalan Syarat Contoh SAINS KOMPUTER • TINGKATAN 4
Bentuk • Jadual dalam Jadual E dalam bentuk 2NF
normal bentuk 2NF. CustomerID PhoneNumber Plan Price
ketiga 99
129
(3NF – Third • Tiada A01 0123456789 X 99
A01 0123456788 Y 49
Normal kebergantungan A02 0163456789 Y
A02 0173456788 Z
Form) transitif.
FD2
CustomerID dan PhoneNumber
menentukan Price melalui Plan. Maka, ini
adalah fungsi kebergantungan transitif
Untuk mengatasi masalah ini, kita boleh
hapuskan fungsi kebergantungan di antara
Plan dan Price untuk membentuk jadual
yang baru.
Jadual E dalm bentuk 3NF 386
Customer
CustomerID PhoneNumber Plan
A01 0123456789 X 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
A01 0123456788 Y PENORMALAN DATA
A02 0163456789 Y
A02 0173456788 Z
Plan Price
Plan
X 99
Y 129
Z 49
*Guru boleh gunakan contoh berikut
untuk berikan penerangan lebih lanjut:
Jadual F dalam bentuk 2NF
ISBN Book Title Author Author’s
Country
123 Cat Abu Malaysia
124 Dog Syed Indonesia
125 Monkey Kevin Singapore
126 Chicken Kumar India
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Penormalan Syarat Contoh SAINS KOMPUTER • TINGKATAN 4
Jawapan:
Jadual F dalam bentuk 3NF
Book Book Title AuthorID
ISBN
123 Cat A01
124 Dog A02
125 Monkey A03
126 Chicken A04
Author
AuthorID Author Author’s
Country
A01 Abu
A02 Syed Malaysia
A03 Kelvin Indonesia
A04 Kumar Singapore
India
Satu kunci primer baru diwujudkan untuk
mengelakkan kes di mana penulis (author)
mempunyai nama yang sama.
2. Guru mengingatkan murid bahawa penormalan adalah proses 387
pemikiran secara logik untuk menguraikan hubungan antara atribut
untuk sesuatu pangkalan data dan memastikan bahawa atribut adalah
bergantungan antara satu sama lain secara bermakna dan logik.
3. Guru mengulas balik kriteria penting untuk penormalan setiap tahap:
0NF 1NF 2NF 3NF 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
Memastikan Setiap medan Jadual dalam Jadual dalam
data dalam hanya 1NF 2NF
bentuk jadual mengandungi Tiada Tiada
satu maklumat kebergantungan kebergantungan
Tiada medan fungsi separa antara atribut
yang yang bukan
sama/serupa kunci primer
4. Guru menerangkan langkah-langkah untuk menormalkan jadual
sehingga 3NF:
1) Memastikan tiada medan yang mengandungi lebih daripada satu
maklumat. Wujud jadual baru jika diperlukan.
2) Memastikan juga tiada medan yang sama atau serupa. Wujud
jadual baru jika diperlukan.
3) Jadual kini adalah dalam 1NF.
4) Mengenal pasti dan melabelkan semua kebergantungan fungsi
antara semua atribut berdasarkan logik dan situasi sebenar.
5) Mengenal pasti sama ada kebergantungan adalah penuh, separa
ataupun transitif.
6) Memastikan bahawa semua atribut dalam jadual (ataupun jadual
baru yang diciptakan) adalah kebergantungan fungsi penuh
kepada kunci primer. Wujudkan jadual baru jika diperlukan.
7) Jadual kini adalah dalam 2NF.
8) Memastikan tiada kebergantungan fungsi transitif dalam jadual.
Wujudkan jadual baru jika diperlukan.
9) Jadual kini adalah dalam 3NF.
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
5. Guru menunjukkan jadual berikut dan menerangkan setiap langkah:
Jadual G SAINS KOMPUTER • TINGKATAN 4
Jadual G menunjukkan pangkalan data untuk satu klinik doktor veterinar.
Ia menyenaraikan semua atribut pada entiti PET dan kunci primernya
adalah PetID.
Langkah 1 dan 2
Terdapat medan yang mempunyai lebih daripada 1 maklumat (VisitDate
dan Procedures). Secara logiknya maklumat tentang haiwan peliharaan
dan perjumpaan doktor harus dipisahkan, maka satu jadual untuk
perjumpaan doktor diwujudkan.
388
Satu jadual Visit diwujudkan untuk menyimpan maklumat tentang setiap 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
lawatan doktor veterinari. PENORMALAN DATA
Kunci primer yang dipilihkan adalah PetID, VisitDate dan ProcedureID
kerana secara logiknya nama prosedur adalah bergantung kepada haiwan
peliharaan, tarikh perjumpaan dan juga prosedur yang diperlukan.
Ruangan prosedur juga dipecahkan kepada dua iaitu ProcedureID dan
Procedures kerana ruangan asal mengandungi 2 maklumat iaitu kod
procedur dan juga huraian prosedur. Untuk menepati keperluan 1NF,
maklumat ini dipecahkan kepada 2.
RANCANGAN PENGAJARAN 8C BBM PEMETAAN
MASA CADANGAN AKTIVITI SAINS KOMPUTER • TINGKATAN 4
Langkah 3
Jadual sekarang berada di 1NF.
Langkah 4 dan 5
Nombor Jenis Fungsi Kebergantungan Penjelasan 389
FD1 Penuh
FD2 Penuh Nama pemilik (Owner) ditentukan 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
FD3 Penuh oleh PetID melalui OwnerID. PENORMALAN DATA
FD4 Penuh Procedure boleh ditentukan
FD5 Transitif dengan ProcedureID sahaja.
FD6 Separa
Langkah 6
RANCANGAN PENGAJARAN 8C BBM PEMETAAN
MASA CADANGAN AKTIVITI
SAINS KOMPUTER • TINGKATAN 4
Satu jadual Procedure diwujudkan untuk menyelesaikan masalah 390
kebergantungan separa (FD6).
Langkah 7
Jadual kini berada di 2NF.
8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Satu jadual Owner diwujudkan untuk menyelesaikan masalah SAINS KOMPUTER • TINGKATAN 4
kebergantungan transitif (FD5).
Langkah 8
Jadual kini berada di 3NF.
6. Guru menunjukkan jadual berikut dan meminta beberapa murid
untuk tampil ke hadapan kelas untuk menyelesaikan setiap langkah.
Guru memberikan penjelasan lanjutan tentang setiap langkah.
Jadual 8: Pangkalan data untuk sebuah hospital 391
Jawapan 1NF:
Senarai Kebergantungan Fungsi
8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
RANCANGAN PENGAJARAN 8C
MASA CADANGAN AKTIVITI BBM PEMETAAN
Nombor Jenis Fungsi Kebergantungan Penjelasan SAINS KOMPUTER • TINGKATAN 4
FD1 Separa
FD2 Penuh DoctorName boleh ditentukan
FD3 Transitif oleh StaffID sahaja.
FD4 Separa PatientName ditentukan oleh
StaffID dan ApointmentID Melalui
FD5 Separa PatientID.
FD6 Penuh
FD7 Transitif AppointmentTime boleh
ditentukan oleh AppointmentID
Jawapan 2NF: sahaja.
Procedure boleh ditentukan
dengan ProcedureID sahaja.
MedicineGiven ditentukan oleh
StaffID dan AppointmentID
MELALUI MedicineCode.
392
8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
RANCANGAN PENGAJARAN 8C BBM PEMETAAN
MASA CADANGAN AKTIVITI
Jawapan 3NF:
SAINS KOMPUTER • TINGKATAN 4
393
7. Murid menjawab Lembaran Kerja 8C-2.
5 Minit Penutup 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA
1. Guru mengulas balik syarat setiap bentuk normal (1NF, 2NF, 3NF).
2. Guru membuat kuiz untuk menguji kefahaman murid tentang proses
penormalan ke tahap 3NF.
Standard
Pembelajaran:
2.2.4
LEMBARAN KERJA 8C-1 SAINS KOMPUTER • TINGKATAN 4
NAMA: TARIKH: 394
KELAS:
A) Tuliskan jenis kebergantungan fungsi untuk setiap senario berikut:
FD1:
Student ID menentukan Student’s Name, maka
fungsi kebergantungan penuh.
FD2:
Student ID menentukan Father’s IC, maka fungsi
___________________________.
FD3:
Student ID menentukan Father’s Name MELALUI
Father’s IC, maka fungsi kebergantungan transitif.
FD1:
Student ID dan Subject Code menentukan Subject
Name. Tetapi Subject Name boleh ditentukan
dengan Subject Code sahaja. Maka, fungsi
kebergantungan separa.
FD2:
Student ID dan Subject Code menentukan Marks.
Maka, _________________________.
FD1: 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
Customer IC dan __________________ PENORMALAN DATA
menentukan _______________. Maka
___________________________.
FD2:
________________ dan ________________
menentukan _____________ MELALUI
__________________, maka ________________.
FD1:
FD2:
FD3:
LEMBARAN KERJA 8C-1 Standard SAINS KOMPUTER • TINGKATAN 4
Pembelajaran:
FD1:
FD2: 2.2.4
FD3:
FD4: 395
FD5:
B) Berikan contoh untuk fungsi kebergantungan berikut: 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
Fungsi Kebergantungan Penuh PENORMALAN DATA
Fungsi Kebergantungan Separa
Fungsi Kebergantungan Transitif
Komen guru:
Tarikh:
Standard
Pembelajaran:
2.2.4
LEMBARAN KERJA 8C-2 SAINS KOMPUTER • TINGKATAN 4
NAMA: TARIKH:
KELAS:
Jadual 1
a) Pelanggaran peraturan tahap penormalan 1NF:
Pembetulan yang diperlukan untuk mencapai
tahap 1NF
396
(SPI: 2.2-4) (SPI: 2.2-5) 8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
Jadual pada tahap penormalan 1NF PENORMALAN DATA
Standard
Pembelajaran:
2.2.4
LEMBARAN KERJA 8C-2
2) Lukis dan senaraikan semua fungsi kebergantungan dalam jadual tersebut:
3) Pelanggaran peraturan tahap penormalan 2NF: SAINS KOMPUTER • TINGKATAN 4
Pembetulan yang diperlukan untuk mencapai
tahap 2NF
397
Jadual pada tahap penormalan 2NF
8C •KONSEP KEBERGANTUNGAN FUNGSI DAN
PENORMALAN DATA