53
BAB 3
ANALISIS DAN PERANCANGAN
3.1.
Gambaran Umum tentang SMAN 90 Jakarta
Pada bagian ini dibahas mengenai sejarah SMAN 90 Jakarta, visi dan misi, struktur organisasi, serta prosedur yang sedang berjalan.
3.1.1
Sejarah SMAN 90 Jakarta
SMA 90 Jakarta berdiri sejak 1986 dengan sebutan SMA Pesanggrahan. Sebutan tersebut karena melihat lokasi pembangunannya terletak di kecamatan Pesanggrahan Jakarta Selatan. Pada awal berdirinya SMA ini, kegiatan belajar mengajar dilaksanakan di SMA 87 Bintaro pada sore hari. Satu tahun setelah berdirinya bersama dengan peresmian gedung baru yang berlokasi di kelurahan Petukangan Selatan ini, kantor wilayah DIKBUD DKI Jakarta mengukuhkan menjadi SMAN 90 Jakarta.
Pada tahun 1997 berkat swadaya dari orang tua Siswa/i telah terbangun 6 ruangan belajar yang diresmikan oleh Menteri Pendidikan dan Kebudayaan Prof. Dr. Wardiman Djojonegoro sehingga semua Siswa/i dapat belajar pagi hari.
Berkat kerja keras Bapak dan Ibu guru, karyawan dan didukung penuh oleh Pengurus BP3, tahun 2002 SMA 90 Jakarta ditetapkan sebagai SMA Plus Pendamping Kodya.
Pada tahun 2004 berdasarkan Keputusan Dinas Pendidikan Menengah dan Tinggi Provinsi DKI Jakarta Nomor : 206a / 2004 SMA 90 Jakarta ditetapkan sebagai SMA Plus Tingkat Propinsi.
Dua tahun berikutnya tahun 2006 berdasarkan Keputusan Dinas Pendidikan Menengah dan Tinggi Provinsi DKI Jakarta Nomor : 460 / 2006 SMA 90 Jakarta ditetapkan sebagai SMA Plus Standar Nasional.
3.1.2
Visi dan Misi SMAN 90 Jakarta
Visi
1. Terciptanya SMAN 90 Jakarta berbasis akhlak mulia, unggul dalam berprestasi, siap beradaptasi, dan berkompetisi terhadap perubahan global. Misi
1. Meningkatkan kecerdasan intelektual, emosional, dan spiritual.
2. Menyelenggarakan program studi dan kegiatan yang menunjang pengembangan dan penerapan iptek yang berakhlak mulia.
3. Menyediakan sarana dan menciptakan lingkungan yang kondusif.
4. Melakukan kerjasama dengan berbagai pihak, baik tingkat nasional maupun tingkat internasional yang menjunjung tinggi nilai-nilai, budaya, dan etos kerja.
3.1.3
Struktur Organisasi
Keterangan :
- - - : Garis konsultasi
: Garis perintah
3.1.4
Tugas dan Wewenang
Wewenang dan tanggung jawab dari masing-masing bidang pada SMAN 90 Jakarta dapat diuraikan sebagai berikut.
1. Kepala Sekolah
• Mengelola penyelenggaraan pendidikan dan pembelajaran di sekolah.
• Mendayagunakan seluruh sumber daya sekolah secara terpadu dalam kerangka pencapaian tujuan sekolah secara efektif dan efisien.
• Menggerakkan seluruh potensi sekolah, khususnya tenaga guru dan tenaga kependidikan bagi pencapaian tujuan sekolah.
• Melaksanakan pengelolaan kurikulum, peserta didik, ketenagaan, keuangan, sarana dan prasarana, hubungan sekolah-masyarakat, dan ketatausahaan sekolah.
• Kepala sekolah berfungsi melakukan pembinaan professional kepada guru dan tenaga kependidikan.
2. Komisi Mitra Usaha
1. Mendorong tumbuhnya perhatian dan komitmen masyarakat terhadap penyelenggaraan pendidikan yang bermutu.
2. Menyalurkan aspirasi dan prakarsa masyarakat dalam melahirkan kebijakan operasional dan program pendidikan di SMAN 90 Jakarta.
3. Menampung dan menganalisis aspirasi, ide, tuntutan, dan berbagai kebutuhan pendidikan yang diharapkan oleh masyarakat.
4. Pengontrol (Controlling Agency) dalam rangka transparansi dan akuntabilasi penyelenggaraan dan keluaran pendidikan di satuan pendidikan.
5. Pemberi pertimbangan (Advisory Agency) dalam penentuan dan pelaksanaan kebijakan di satuan pendidikan.
3. Wakil Kepala Sekolah
a. Wakil Kepala Sekolah Bidang Kurikulum : • Menyusun pembagian tugas guru.
• Membantu kepala sekolah melakukan supervisi kelas. • Menambah laporan pelaksanaan pelajaran.
• Menyusun penjadwalan kegiatan belajar mengajar. • Melaksanakan program kerja.
b. Wakil Kepala Sekolah Bidang kesiswaan : • Mengatur mutasi siswa/i.
• Menyusun program pembinaan kesiswaan. • Penerimaan siswa/i baru.
• Membantu laporan pelaksanaan kegiatan kesiswaan. • Melaksanakan program kerja.
c. Wakil Kepala Sekolah Bidang Sarana dan Prasarana :
• Menyusun rencana kebutuhan sarana dan prasarana sekolah. • Menyusun rencana pembelian dan pengadaan inventaris
sekolah.
• Menyusun rencana perawatan, rehabilitasi dan pembangunan sarana dan prasarana.
• Menyusun Rencana Anggaran, Pendapatan dan Belanja Sekolah (RAPBS), program kerja, dan laporan tahunan, bekerjasama dengan wakil kepala sekolah lainnya, bidang tata usaha, staf tata usaha, dan lain-lain.
• Menadministrasikan pendayagunaan sarana prasarana.
• Menyusun laporan pelaksanaan urusan sarana dan prasarana secara bersekala.
• Melaksanakan program kerja. •
d. Wakil Kepala Sekolah Bidang Hubungan Masyarakat • Menyusun program kegiatan humas.
• Menyusun RAPBS, program sekolah, dan laporan tahunan. • Membina hubungan antara sekolah dengan komite.
• Mengatur hubungan dengan Pemerintahan Daerah (Pemda) dan instansi lain.
• Menyusun laporan pelaksanaan hubungan masyarakat secara berkala.
4. Tata Usaha a. Tata Usaha
• Menyusun program tata usaha sekolah. • Mengelola keuangan sekolah.
• Mengurus administrasi ketenagaan dan siswa/i.
• Membina dan pemgembangan karir pegawai tata usaha sekolah.
• Menyusun administrasi perlengkapan sekolah. • Menyusun dan penyajian data atau statistik sekolah.
• Menyusun laporan pelaksanaan kegiatan pengurusan ketatausahaan secara berkala.
b. Staf Tata Usaha 1. Kasir
• Menerima uang setoran spp. • Menuliskan kuitansi.
• Memtambah laporan setoran spp. 2. Penerima Setoran
• Menerima uang setoran buku paket. • Menuliskan kwitansi.
• Memtambah laporan setoran pembayaran buku paket. 3. Dewan Guru
a. Memtambah program pengajaran; • Silabus dan sistem penilaian.
• Menetapkan Standar Ketuntasan Belajar Minimal. • Program tahunan/ semester.
• Skenario pembelajaran. • Buku Catatan Siswa/i. • Program mingguan guru . • Bahan Ajar.
• Analisis Standar Ketuntasan Belajar Minimal. b. Melaksanakan kegiatan pembelajaran.
c. Melaksanakan kegiatan penilaian belajar, ulangan harian, semester/tahunan.
d. Mengikuti kegiatan pengembangan dan pemasyarakatan kurikulum.
e. Melaksanakan tugas tertentu disekolah.
f. Mengadakan pengembangan bidang pengajaran yang menjadi tanggungjawabnya.
g. Memtambah catatan tentang kemajuan hasil belajar masing-masing siswa/i.
4. Siswa/i
• Mendapatkan pengajaran dari pihak sekolah.
• Membayaran iuran yang telah ditetapkan oleh sekolah. • Mematuhi semua peraturan sekolah
3.2.
Gambaran Sistem
Gambaran sistem yang seharusnya berjalan akan digambarkan melalui DataFlowDiagram pada subbab 3.2.2, sedangkan gambaran sistem yang sedang berjalan dalam SMAN 90 Jakarta akan digambarkan melalui flowchart pada subbab 3.2.1.
3.2.1
Prosedur yang sedang berjalan
Pada SMAN 90 Jakarta terdapat beberapa prosedur yang sedang berjalan, antara lain:
1. Prosedur penjadwalan
Prosedur yang sedang berjalan di SMAN 90 Jakarta dalam penjadwalan, sebagai berikut:
a. Guru bidang kurikulum mendata kelas dan siswa/i yang akan diajarkan dan menambah draft jadwal yang berisi mata pelajaran yang akan diajarkan dikelas masing masing berdasarkan kalender akademik yang diperoleh dari pihak dinas pendidikan.
b. Setelah jadwal mata pelajaran selesai, selanjutnya guru bidang kurikulum menentukan jumlah shift untuk masing masing pelajaran disesuaikan dengan ketentuan dinas pendidikan.
c. Guru bidang kurikulum menyatukan draft jadwal pelajaran dan shift yang diajarkan dengan daftar guru yang mengajar beserta daftar guru yang tidak dapat hadir pada hari – hari tertentu yang selanjutnya akan diproses untuk pemtambahan jadwal mata pelajaran.
d. Jadwal mata pelajaran yang terdiri dari mata pelajaran, jumlah shift yang diajarkan dan guru yang mengajar ditambah rangkap tiga yang selanjutnya di berikan kepada guru mata pelajaran, wali kelas yang nantinya akan di sampaikan kepada Siswa/i dikelas dan akan disimpan diarsip oleh guru bidang kurikulum.
MULAI
Proses pengumpulan data untuk pembuatan jadwal mata pelajaran yang disesuaikan oleh kalender akademik dari dinas pendidikan
Draft jadwal mata pelajaran
Proses penentuan jumlah shift setiap mata pelajaran untuk masing masing kelas
sesuai dengan ketentuan dinas
pendidikan
Jadwal mata pelajaran yang terdiri dari mata pelajaran dan jumlah shift yang diajarkan di masing masing kelas
Daftar guru mata pelajaran untuk masing masing pelajaran di masing masing kelas Menerima konfirmasi langsung dari guru mata pelajaran dan melakukan pendataan Guru mata pelajaran yang tidak bisa hadir di
hari tertentu melakukan
konfirmasi langsung kepada bagian kurikulum
Daftar guru yang berhalangan hadir
untuk hari hari tertentu
Proses pembuatan jadwal guru yang mengajar berdasarkan jadwal pelajaran, daftar guru untuk masing masing kelas, guru
yg berhalangan hadir dan siswa yang di ajarkan
(3) (2) Jadwal mata pelajaran,jumlah shift, siswa yang diajarkan dan
guru yang mengajar (1)
Jadwal disimpan kedalam arsip SELESAI Jadwal mata pelajaran,jumlah shift, siswa yang diajarkan dan
guru yang mengajar (2)
Jadwal mata pelajaran,jumlah shift, siswa yang diajarkan dan
guru yang mengajar (3)
Guru bidang kurikulum Guru mata pelajaran Wali kelas
Diumumkan kepada siswa Daftar kelas dan
data siswa masing masing
kelas
2. Prosedur penilaian
Prosedur yang sedang berjalan di SMAN 90 Jakarta dalam pemberian nilai tugas, ulangan harian, dan ujian pada setiap mata pelajaran, sebagai berikut:
a. Guru mata pelajaran menerima lembar jawaban dari masing masing kelas.
b. Lembar jawaban dikoreksi sesuai dengan standar nilai untuk masing masing pelajaran.
c. Guru mata pelajaran memasukkan nilai kedalam aplikasi SAS dan memberikan rekap nilai kepada wali kelas dan siswa/i yang bersangkutan.
3. Prosedur absensi
Prosedur yang sedang berjalan di SMAN 90 Jakarta dalam absensi, sebagai berikut:
a. Guru piket yang sedang bertugas mencatat daftar nama siswa/i yang tidak hadir sesuai buku piket yang diberikan oleh sekretaris kelas serta menambahkan nama siswa/i yang izin pada saat jam pelajaran berlangsung kedalam agenda piket.
b. Hasil rekap absensi tersebut diberikan kepada guru bidang kesiswaan yang selanjutnya akan disimpan kedalam arsip.
4. Penyusunan program belajar
Prosedur yang sedang berjalan di SMAN 90 Jakarta dalam penyusunan program belajar, sebagai berikut:
a. Guru bidang kurikulum memberikan jadwal kelas dan mata pelajaran yang diajarkan kepada guru mata pelajaran.
b. Setelah mendapatkan informasi jadwal, guru mata pelajaran akan menyusun program belajar sesuai dengan ketentuan dinas untuk satu semester.
c. Susunan program belajar tersebut akan disimpan oleh guru tersebut dan akan diberikan juga kepada guru bidang kurikulum.
3.2.2
Data Flow Diagram
Data Flow Diagram dibawah inimenggambarkan sistem yang seharusnya berjalan dalam SMAN 90 Jakarta.
Kurikulum Sistem Administrasi siswa dan guru Siswa Kesiswaan Guru mata pelajaran Wali Kelas Guru Piket
Pendataan data guru
Pendataan jadwal pelajaran
Pendataan jadwal ujian
Pendataan kelas
Pendataan ruang
Pendataan tahun akademik
Pendataan mata pelajaran
Tampilkan data guru, jadwal pelajaran, jadwal ujian, ruang, kelas, tahun
akademik, mata pelajaran
Pendataan nilai
Tampilkan tahun akademik siswa, kelas siswa, profil guru, nilai siswa, materi belajar
Tampilkan data siswa, nilai siswa, tahun akademik
siswa, absensi siswa
Pendataan absensi
Pendataan data siswa
Tampilkan profil siswa, tahun akademik siswa,kelas siswa,
absensi siswa
Pendataan materi belajar
Tampilkan profil, tahun akademik, kelas, ruang, jadwal pelajaran, jadwal ujian, mata pelajaran, nilai,
materi belajar, absensi
3.3.
Daftar Kebutuhan Pengguna
3.3.1
Kebutuhan Informasi
No Informasi Pengguna
1. Data siswa/i
(Nomor induk siswa/i, nama lengkap siswa/i, tempat tanggal lahir, jenis kelamin, alamat rumah, agama, kelas, kewarganegaraan, email, nomor telepon, nama orang tua/wali)
Siswa/i, Guru bidang Kesiswaan, Guru Wali Kelas, Guru Mata Pelajaran, Guru Piket, Guru bidang Kurikulum
2. Data guru
(Nomor induk guru, nama lengkap guru, tempat tanggal lahir, tanggal lahir, jenis kelamin, alamat rumah, agama, kewarganegaraan, status pendidikan terakhir, telepon, email)
Guru Mata Pelajaran, Guru bidang Kurikulum, Siswa/i
3. Data Jadwal Mata Pelajaran
(Kode mata pelajaran, nama mata pelajaran, hari, tanggal, jam, kelas, ruang, materi, nama pengajar, tahun akademik, kalender akademik)
Siswa/i, Guru Wali Kelas, Guru Mata Pelajaran, Guru bidang Kurikulum
4. Data Mata Pelajaran
(Kode mata pelajaran, nama mata pelajaran)
Siswa/i, Guru Wali Kelas, Guru Mata Pelajaran, Guru bidang Kurikulum
5. Data Jadwal Ujian
(Kode ujian, hari ujian, tanggal ujian, jam ujian,
Siswa/i, Guru bidang Kurikulum
No Informasi Pengguna
mata pelajaran, jenis ujian, kelas, ruang, tahun akademik)
6. Data Kelas
(Kode kelas, kelas, tahun akademik)
Siswa/i, Guru Wali Kelas, Guru Mata Pelajaran, Guru bidang Kurikulum
7. Data Nilai
(Kode nilai, nomor induk siswa/i, nama lengkap siswa/i, nomer induk guru, jenis ujian, nama mata pelajaran, tahun akademik)
Siswa/i, Guru Wali Kelas, Guru Mata Pelajaran
8. Data Absensi
(Kode absensi, hari, tanggal, nomor induk siswa/i, nama lengkap siswa/i, tahun akademik, jumlah absensi, detail absensi, )
Siswa/i, Guru bidang Kesiswaan, Guru Wali Kelas, Guru Piket
9. Data Ruang
(Kode Ruang, nama ruang)
Siswa/i, Guru Wali Kelas, Guru Mata Pelajaran, Guru bidang Kurikulum
9. Data Materi
(Kode materi, judul materi, isi materi, kode jadwal pelajaran)
Guru Mata Pelajaran, Siswa/i
3.3.2
Kebutuhan Transaksi
a. Pendataan
1. Pendataan guru 2. Pendataan siswa 3. Pendataan absensi
4. Pendataan tahun akademik 5. Pendataan jadwal pelajaran 6. Pendataan jadwal ujian 7. Pendataan mata pelajaran 8. Pendataan ruang
9. Pendataan kelas 10.Pendataan nilai 11.Pendataan materi b. Data View
1. View data siswa 2. View nilai 3. View materi
4. View jadwal pelajaran 5. View ujian
6. View absensi 7. View data guru
3.4.
Permasalahan sistem yang dihadapi
Setelah melihat sistem yang sedang berjalan di SMAN 90 Jakarta dengan menggunakan metode survei dan wawancara, maka diperoleh beberapa permasalahan yang dihadapi, yaitu meliputi sebagai berikut:
1. Dengan penyimpanan data yang masih menggunakan arsip dapat memudahkan pihak yang tidak diberi hak akses dapat dengan mudah mengakses data tersebut. 2. Diperlukan tempat penyimpanan berkas yang cukup besar untuk dapat
menyimpan berkas – berkas yang ada.
3. Dengan sistem yang ada saat ini, dalam pencarian atau mendapatkan informasi bagi siswa/i ketika sedang libur sekolah siswa/i akan memerlukan waktu untuk datang ke sekolah dalam pencarian informasi tentang jadwal kelas dan pelajaran yang baru untuk awal semester nantinya.
4. Kurang maksimalnya dalam pencapaian informasi lain yang berupa jadwal ujian, informasi sekolah dan informasi lain yang berkaitan dengan sekolah yang masih memanfaatkan pengumuman pada papan pengumuman sekolah.
5. Tidak maksimalnya dalam hal pemberitahuan data nilai siswa/i karena setelah guru mengoreksi dimasukkan dahulu kedalam aplikasi yang dimiliki sekolah dan baru diinformasikan kepada siswa/i nya.
3.5.
Usulan Pemecahan Masalah
Berdasarkan konsultasi dan identifikasi kebutuhan SMAN 90 Jakarta mengenai masalah – masalah yang terdapat pada SMAN 90 Jalarta, maka dibuatlah pemecahan masalah-masalah tersebut :
1. Membangun aplikasi basis data berbasis web dinamis yang dapat digunakan pihak SMAN 90 Jakarta secara internal.
2. Merancang sebuah aplikasi basis data berbasis webyang saling terintegrasi. 3. Merancang database SMAN 90 untuk mendukung aplikasi basis data berbasis
web.
4. Menyediakan fasilitas untuk memasukkan data tiap bagian pada aplikasi basis data berbasis web.
5. Menyediakan fasilitas untuk melihat data tiap bagian pada aplikasi basis data berbasis web.
6. Menyediakan fasilitas untuk memasukkan data tiap bagian pada aplikasi basis data berbasis web.
7. Menyediakan fasilitas untuk memperbaharui data tiap bagian pada aplikasi basis data berbasis web.
8. Menyediakan fasilitas untuk menghapus data tiap bagian pada aplikasi basis data berbasis web.
9. Menyediakan fasilitas untuk menyimpan data tiap bagian pada aplikasi basis data berbasis web.
3.6.
Perancangan Sistem Basis Data
3.6.1
Perancangan Basis Data Konseptual
Tahap-tahap pada perancangan basis data konseptual, antara lain:
1.Mengidentifikasi tipe entitas
Nama Entitas Uraian Alias Kejadian
Siswa
Orang yang belajar di SMAN 90 Jakarta.
Murid
Setiap siswa/i menerima pelajaran dari guru.
Guru
Orang yang mengajar di SMAN 90 Jakarta.
Staf pengajar
Setiap guru memtambah materi pembelajaran selama setahun, memberikan materi kepada siswa/i, dan memberikan penilaian akademik kepada siswa/i.
MataPelajaran
Mata pelajaran yang diajarkan oleh guru-guru SMAN 90 Jakarta
Pelajaran
Mata pelajaran yang didapat siswa/i SMAN 90 Jakarta
Jadwal Pelajaran
Jadwal yang mengatur pembagian kelas dan mata pelajaran untuk siswa/76d an guru.
-
Setiap mata pelajaran dan ujian memiliki jadwalnya masing-masing.
Nama Entitas Uraian Alias Kejadian
Ujian
Jadwal yang berisi hari, tanggal, dan jam ujian untuk tiap mata pelajaran.
Jadwal ujian
Setiap mata pelajaran memiliki ujian.
Kelas
Kumpulan daftar kelas yang terdapat di SMAN 90 Jakarta.
-
Setiap siswa/i memiliki kelas masing-masing.
Absensi
Daftar yang berisi absensi Siswa/i.
Kehadiran
Setiap Siswa/i memiliki absensi masing-masing.
Nilai
Daftar nilai dari tiap Siswa/i per mata pelajaran.
Hasil belajar
Setiap siswa/i memiliki nilai tiap mata pelajaran yang diajarankan.
Ruang
Kumpulan daftar ruangan yang terdapat di SMAN 90 Jakarta.
Tempat Belajar
Tempat Siswa/i belajar.
Materi
Materi pembelajaran selama setahun.
-
Setiap mata pelajaran memiliki materi yang berbeda-beda.
2. Mengidentifikasi tipe relationship
Nama Entitas Multiplicity Relationship Nama Entitas Multiplicity
Siswa 1…1 Mendapatkan Nilai 0…*
Siswa 1…1 Memiliki Absensi 0…*
Siswa 1…* Memiliki Kelas 1…*
Kelas 1…1 Memiliki JadwalPelajaran 1…*
MataPelajaran 1…1 Terdapat di JadwalPelajaran 1…*
MataPelajaran 1…1 Memiliki Ujian 1…*
MataPelajaran 1…1 Memiliki Nilai 1…*
Materi 1...1 Memiliki JadwalPelajaran 1…*
Guru 1…* Mengajar MataPelajaran 1…1
Guru 1…1 Memiliki JadwalPelajaran 1…*
Guru 1…1 Memberikan Nilai 1…*
JadwalPelajaran 1…* Memiliki Ruang 1…1
Ujian 1..* Memiliki Ruang 1..1
Ujian 1..* Memiliki Kelas 1..1
Ujian 1..1 Memiliki Nilai 1..1
3. Mengidentifikasi dan menghubungkan atribut dengan tipe entitas atau
relationship • Entitas Siswa
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
1. NIS Nomor induk
Siswa/i
Int(5) No No
Password Kode akses
sistem
Varchar(20) No No
Nama Nama Siswa/i Varchar(50) No No
JenisKelamin Jenis kelamin Varchar(10) No No TempatLahir Tempat lahir
siswa/i
Varchar(20) No No
TglLahir Tanggal lahir
siswa/i
Date No No
Agama Agama siswa/i Varchar(8) No No
Kewarganegaraan Kewarganegaraan siswa/i
Varchar(3) No No
Telepon No. telepon siswa Varchar(30) Yes Yes Email Email siswa/i Varchar(50) Yes Yes
Alamat Alamat siswa/i
tinggal
No Atribut Deskripsi Tipe data dan panjang
Nulls
Multi-valued
Nama_ayah Nama ayah
siswa/i
Varchar (30) No No
Nama_ibu Nama ibu siswa/i Varchar(30) No No
Tabel 4 Identifikasi Entitas Siswa/i
• Entitas Guru
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
2. NIK Nomor induk
guru
Int(18) No No
Password Kode akses
sistem
Varchar(20) No No
Nama Nama guru Varchar(50) No No
JenisKelamin Jenis kelamin Varchar(10) No No TempatLahir Tempat lahir guru Varchar(20) No No TanggalLahir Tanggal lahir
guru
Date No No
Alamat Agama guru Varchar(99) No No
Telepon Telepon guru Varchar(30) Yes Yes
Email Email guru Varchar(50) Yes Yes
No Atribut Deskripsi Tipe data dan panjang Nulls Multi-valued Pendidikan Pendidikan terakhir guru Varchar(30) No No Kewarganegaraan Kewarganegaraan guru Varchar(3) No No
Tabel 5 Identifikasi Entitas Guru
• Entitas Mata Pelajaran
No .
Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
3. Id_matapelajaran Kode mata pelajaran
Int(20) No No
Mata_pelajaran Nama mata pelajaran
Varchar(30) No No
Tabel 6 Identifikasi Entitas Mata Pelajaran
• Entitas Jadwal Pelajaran
No Atribut Deskripsi Tipe data
dan panjang
Nulls Multi-valued
4. Id_jadwalpelajaran Kode jadwal pelajaran
Int(20) No No
Id_matapelajaran Kode mata pelajaran
Int(20) No No
Id_kelas Kode kelas Int(20) No No
No Atribut Deskripsi Tipe data dan panjang
Nulls Multi-valued
Id_ruang Kode ruang Int(20) No No
Hari Hari pelajaran Varchar(20) No No
NIK Nama guru yang
mengajar dikelas
Varchar(20) No No
Id_thnakademik Kode tahun ajaran Int(20) No No TahunAkademik Tahun ajaran Int(5) No No
Tanggal Tanggal pelajaran Date No No
Jam Jam pelajaran Varchar(5) No No
Kalender_akademik Kalender jadwal pembelajaran
Varchar(100) No No
Tabel 7 Identifikasi Entitas Jadwal Pelajaran • Entitas Ujian
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
5. Id_ujian Kode ujian Int(20) No No
Id_matapelajaran Kode mata pelajaran Int(20) No No Id_thnakademik Kode tahun ajaran Int(20) No No
Tanggal_Mulai Tanggal ujian Date No No
No Atribut Deskripsi Tipe data dan
panjang
Nulls
Multi-valued
Id_kelas Kode kelas Int(20) No No
TahunAkademik Tahun ajaran Int(5) No No
Jam Waktu ujian Varchar(5) No No
Hari Hari ujian Varchar(20) No No
Tanggal_Selesai Tanggal Ujian Date No No Jenis_ujian Jenis dari ujian Varchar(30) No No
Tabel 8Identifikasi Entitas Ujian • Entitas Kelas
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
6. Id_kelas Kode kelas Int(20) No No
Kelas Nama kelas Varchar(20) No No
WaliKelas Namawalikelas Varchar(20) No No Id_tahunAkademik Kode tahun
akademik
Int(20) No No
TahunAkademik Tahun ajaran Int(5) No No
• Entitas Absensi
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
7. Id_absensi Kode absensi Int(20) No No
NIS Kode siswa/i Varchar(20) No No
Id_thnakademik Kode tahun ajaran Int(20) No No
TahunAkademik Tahun ajaran Int(5) No No
Jumlah Banyak absensi Int(5) No No
Tanggal_absensi Tanggal siswa/i Date No No Detail Keterangan absensi
siswa/i
Varchar(20) No No
Tabel 10Identifikasi Entitas Absensi • Entitas Nilai
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
8. Id_nilai Kode nilai Int(20) No No
Id_matapelajaran Kode mata pelajaran
Int(20) No No
Id_tahunAkademik Kode tahun akademik
No Atribut Deskripsi Tipe data dan
panjang
Nulls
Multi-valued
TahunAkademik Tahun ajaran Int(5) No No
NIS Kode siswa/i Varchar(20) No No
NIK Kode guru Varchar(20) No No
Id_ujian Kode ujian Varchar(20) No No
Nilai Nilai siswa/i Int(5) No No
Tabel 11 Identifikasi Entitas Nilai
• Entitas Materi
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
9. Id_materi Kode materi Int(20) No No
JudulMateri Judul materi Varchar(50) No No IsiMateri Isi materi Varchar(100) No No
Tabel 12 Identifikasi Entitas Materi
• Entitas Ruang
No Atribut Deskripsi Tipe data
dan panjang
Nulls
Multi-valued
10. Id_ruang Kode ruang Int(20) No No
Ruang Nama ruangan Varchar(20) No No
4. Menentukan domain atribut
• Entitas Siswa
No Atribut Deskripsi Tipe data
dan panjang
Format
1. NIS Nomor induk
siswa/i
Int(5) Terdiri dari angka dengan 5 karakter.
Password Kode perorangan untuk mengakses sistem
Int(5) Password = NIS
Nama Nama siswa/i Varchar(50) Terdiri dari huruf maksimal 50 karakter.
JenisKelamin Jenis kelamin Varchar(10) Laki-laki atau Perempuan
TempatLahir Tempat lahir siswa/i
Varchar(20) Terdiri dari huruf maksimal 20 karakter.
TglLahir Tanggal lahir
siswa/i
Date Terdiri dari karakter tanggal yaitu dd mm yyyy.
No Atribut Deskripsi Tipe data dan
panjang
Format
Agama Agama siswa Varchar(8) Islam atau Kristen atau Katolik atau Hindu atau Budha atau Konghucu Kewarganegaraan Kewarganegaraan
siswa/i
Varchar(3) WNI atau WNA.
Telepon Nomor telepon
siswa/i
Varchar(30) Terdiri dari angka maksimal 30 karakter. Email Email siswa/i Varchar(50) Terdiri dari variasi
huruf dan angka maksimal 50 karakter.
Alamat Alamat siswa/i
tinggal
Varchar(99) Terdiri dari variasi huruf dan angka maksimal 99 karakter.
Nama_ayah Nama ayah
siswa/i
Varchar (30) Terdiri dari huruf maksimal 30 karakter. Nama_ibu Nama ibu siswa/i Varchar(30) Terdiri dari huruf
maksimal 30 karakter.
• Entitas Guru
No. Atribut Deskripsi Tipe data
dan panjang
Format
2. NIK Nomor induk
guru
Int(18) Terdiri dari angka maksimal 18 karakter.
Password Kode perorangan untuk mengakses sistem
Varchar(30) Terdiri dari variasi huruf dan angka maksimal 30 karakter. Nama Nama guru Varchar(50) Terdiri dari variasi
huruf dan angka maksimal 50 karakter. JenisKelamin Jenis kelamin Varchar(10) Laki-laki atau
Perempuan TempatLahir Tempat lahir
siswa/i
Varchar(20) Terdiri dari huruf maksimal 20 karakter.
Telepon Nomor telepon
siswa/i
Varchar(30) Terdiri dari angka maksimal 30 karakter.
TanggalLahir Tanggal lahir guru
Date Terdiri dari karakter tanggal yaitu dd mm yyyy.
No Atribut Deskripsi Tipe data dan
panjang
Format
Alamat Agama guru Varchar(99) Terdiri dari variasi huruf dan angka maksimal 99 karakter. Agama Agama siswa Varchar(8) Islam atau Kristen atau
Katolik atau Hindu atau Budha atau Konghucu Email Email guru Varchar(50) Terdiri dari variasisi
huruf dan angkaa maksimal 50 karakter. Pendidikan Pendidikan
terakhir guru
Varchar(3) SMA atau D3 atau S1 atau S2 atau S3.
Kewarganegaraan Kewarganegaraan siswa/i
Varchar(3) WNI atau WNA.
• Entitas Mata Pelajaran
No. Atribut Deskripsi Tipe data
dan panjang
Format
3. Id_matapelajaran Kode mata pelajaran
Int(20) Terdiri dari angka.
Mata_pelajaran Nama mata pelajaran
Varchar(30) Terdiri dari variasi huruf dan angka maksimal 30 karakter.
Tabel 16 Domain Atribut Entitas Mata Pelajaran
• Entitas Jadwal Pelajaran
No. Atribut Deskripsi Tipe data
dan panjang
Format
4. Id_jadwalpelajaran Kode jadwal pelajaran
Int (20) Terdiri dari angka maksimal 20 karakter. Id_matapelajaran Kode mata
pelajaran
Int(20) Terdiri dari angka.
Id_kelas Kode kelas Int(20) Terdiri dari angka. Id_materi Kode materi Int(20) Terdiri dari angka. Id_ruang Kode ruang Int(20) Terdiri dari angka. Id_thnakademik Kode tahun
ajaran
No Atribut Deskripsi Tipe data dan
panjang
Format
NIK Nama Pengajar
yang mengajar dikelas
Int(18)) Terdiri dari angka maksimal 18
TahunAkademik Tahun ajaran Int(5) Harus angka
Tanggal Tanggal
pelajaran
Date Terdiri dari karakter tanggal yaitu dd mm yyyy.
Jam Jam pelajaran Varchar(5) Terdiri dari variasi huruf dan angka maksimal 5 karakter.
Hari Hari pelajaran Varchar(20) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
Kalender_Akademik Kalender jadwal pembelajaran
Varchar(10) Berupa file .pdf
• Entitas Ujian
No Atribut Deskripsi Tipe data
dan panjang
Format
5. Id_ujian Kode ujian Int (20) Terdiri dari angka. Id_matapelajaran Kode mata
pelajaran
Int(20) Terdiri dari angka.
Id_thnakademik Kode tahun ajaran
Int(20) Terdiri dari angka.
TahunAkademik Tahun ajaran Int(5) Terdiri dari angka. Id_ruang Kode ruang Int(10) Terdiri dari angka. Id_kelas Kode kelas Int(20) Terdiri dari angka.
Jam Waktu ujian Varchar(5) Terdiri dari angka
maksimal 5 karakter. Hari Hari ujian Varchar(20) Terdiri dari variasi huruf
maksimal 20 karakter.
Tanggal Tanggal ujian Date Terdiri dari karakter tanggal yaitu dd mm yyyy.
Jenis_ujian Nama dari ujian Varchar(30) Terdiri dari variasi huruf dan angka maksimal 30 karakter.
• Entitas Kelas
No Atribut Deskripsi Tipe data
dan panjang
Format
6. Id_kelas Kode kelas Int (20) Terdiri dari angka.
Kelas Nama kelas Varchar(20) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
WaliKelas Nama wali
kelas
Varchar(20) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
Id_thnakademik Kode tahun Int(20) Terdiri dari angka. TahunAkademik Tahun ajaran Int(5) Terdiri dari angka.
Tabel 19Domain Atribut Entitas Kelas
• Entitas Absensi
No Atribut Deskripsi Tipe data
dan panjang
Format
7. Id_absensi Kode absensi Int 20) Terdiri dari angka. NIS Kode siswa/i Varchar(20) Terdiri dari angka. Id_thnakademik Kode tahun
ajaran
Int(20) Terdiri dari angka.
No Atribut Deskripsi Tipe data dan panjang
Format
Tanggal_absensi Tanggal siswa/i Date Terdiri dari karakter tanggal yaitu dd mm yyyy.
Jumlah Banyak absensi siswa/i
Int(5) Terdiri dari angka.
Detail Keterangan
absensi siswa/i
Varchar(20) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
Tabel 20Domain Atribut Entitas Absensi
• Entitas Nilai
No Atribut Deskripsi Tipe data
dan panjang
Format
8. Id_nilai Kode nilai Int (20) Terdiri dari angka.
Id_matapelajaran Kode mata pelajaran
Int(20) Terdiri dari angka.
Id_tahunakademik Kode tahun akademik
Int(20) Terdiri dari angka.
No Atribut Deskripsi Tipe data dan panjang
Format
NIS Kode siswa/i Varchar(20) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
NIK Kode guru Varchar(20) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
Nilai Nilai siswa/i Int(5) Terdiri dari angka.
Jenis_ujian Nama ujian Varchar(20) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
Tabel 21Domain Atribut Entitas Nilai
• Entitas Materi
No Atribut Deskripsi Tipe data
dan panjang
Format
9. Id_materi Kode materi Int (20) Terdiri dari angka.
JudulMateri Judul materi Varchar(50) Terdiri dari variasi huruf dan angka maksimal 50 karakter.
IsiMateri Isi materi Varchar(100) Terdiri dari variasi huruf dan angka maksimal 100 karakter.
• Entitas Ruang
No. Atribut Deskripsi Tipe data
dan panjang
Format
10. Id_ruang Kode ruang Int (20) Terdiri dari angka.
Ruang Nama ruang Varchar(200) Terdiri dari variasi huruf dan angka maksimal 20 karakter.
Tabel 23 Domain Atribut Entitas Ruang
5. Menentukan candidate, primary, dan alternate key attributes
No. Nama Entitas Candidate Key Primary Key
1. Siswa NIS NIS
2. Guru NIK NIK
3. MataPelajaran Id_matapelajaran Mata_pelajaran Id_matapelajaran 4. JadwalPelajaran Id_jadwalpelajaran Hari Id_jadwalpelajaran 5. Ujian Id_ujian Tanggal Id_ujian 6. Kelas Id_kelas Kelas Id_kelas 7.
No. Nama Entitas Candidate Key Primary Key
8. Nilai Id_nilai Id_nilai
9.
Materi
Id_materi JudulMateri
Id_materi
10. Ruang Id_ruang Id_ruang
Gambar 7 Diagram Konseptual dengan Primary Key
6. Mempertimbangkan konsep enhanced modelling (langkah optional)
Langkah ini mempertimbangkan pengguna Enchanced Modelling, seperti spesialisasi/generalisasi, agregasi, dan komposisi.Namun di dalamkasus di atas, kami tidak menggunakan spesialisasi/generalisasi, agregasi, dan komposisi.
7. Periksa model untuk redundansi
Tujuan dari tahap ini yaitu untuk memeriksa ada atau tidaknya redudansi. Dua langkah yang dapat dilakukan pada tahap ini antara lain:
a. Memeriksa ulang hubungan one-to-one
Ketika mengidentifikasi entitas, mungkin akan teridentifikasi dua entitas yang merepresentasikan obyek yang sama pada perusahaan. Saat kejadian ini, kedua entitas harus digabungkan jika primary key berbeda, pilih salah satu primary key tersebut dan biarkan yang lain sebagai alternate key.
b. Hilangkan semua redudansi
Gambar 8 Gambar Entitas Nilai, Ujian, dan MataPelajaran Sebelum Redudansi Dihilangkan
memiliki 1..1 1..* m em ili k ii 1..* 1..1 m em ili k i 1..1 1..1 Ujian MataPelajaran Nilai
Gambar 9 Gambar Entitas Nilai, Ujian, dan MataPelajaran Setelah Redudansi Dihilangkan
8. Memvalidasi model konseptual lokal terhadap transaksi pengguna
Validasi model konseptual dengan User Transaction dapat digunakan untuk memastikan bahwa model data konseptual dari basis data yang sedang dibangun dapat mendukung semua transaksi yang dilakukan oleh pengguna.
m em ili k i 1..* 1..1 m em ili k i 1..1 1..1 Ujian MataPelajaran Nilai
Keterangan :
1. Pendataan guru 2. Pendataan siswa 3. Pendataan absensi
4. Pendataan tahun akademik 5. Pendataan jadwal pelajaran 6. Pendataan jadwal ujian 7. Pendataan mata pelajaran 8. Pendataan ruang
9. Pendataan kelas 10.Pendataan nilai 11.Pendataan materi 12.View data siswa 13.View nilai 14.View materi
15.View jadwal pelajaran 16.View ujian
17.View absensi 18.View data guru
9. Meninjau ulang model data konseptual lokal dengan pengguna
Setelah dilakukan peninjauan ulang model data konseptual lokal dengan pengguna, model data sudah sesuai dengan kebutuhan sekolah.
3.6.2
Pemilihan DBMS
Pemilihan DBMS dipengaruhi oleh beberapa faktor sebagai berikut: 1. Kemudahan dalam penggunaan : DBMS sebaiknya mudah
dipergunakan oleh penggunanya.
2. Kemudahan dalam administrasi : DBMS sebaiknya mudah diadministrasikan.
3. Kehandalan : DBMS sebaiknya mampu mengamankan data apabila terjadi kegagalan piranti lunak atau keras
4. Biaya : Biaya dari DBMS sebaiknya tidak melebihi anggaran yang diperkirakan oleh perusahaan.
5. Kesesuaian : DBMS sebaiknya dapat bekerja dengan komponen piranti keras dan lunak lainnya dengan baik didalam sistem manajemen informasi.
6. Keamanan : DBMS sebaiknya dapat membedakan dan memilih diantara barbagai tingkat pengguna dari yang tidak memiliki hak akses hingga hak akses administrasi penuh.
7. Persyaratan minimum : DBMS sebaiknya mampu bekerja pada platform computer yang digunakan untuk menjalankan sistem manajemen informasi
8. Kedekatan dengan basis data : Jika struktur dan operasi dari DBMS sudah diketahui, maka waktu yang seharusnya dihabiskan untuk mempelajari dapat digunakan untuk memfokuskan pada perancangan.
9. Scalability : Mempertimbangkan factor besar dan kecilnya suatu perusahaan, dan seberapa banyaknya data yang ditampung pada DBMS tersebut.
SQL Server 2008 Oracle 9i MySQL
Platform
Windows-based
Platform
Windows-based, AIX based, Compac Tru64 Unix, HP 9000 series HPUX system, Linux Intel, Sun-Solaris Platform Windows-based, Linuxbased,Sun-Solaris Hardware -Processor Pentium 1.0GHz atau Lebih Hardware -Processor Windows : Pentium 166 MHz atau lebih
AIX : IBM RISC/6000 atau
Server Series
HP-UX: HP 9000 seri 700
atau 800
Linux : Intel 32-bit, Intel Hardware -Processor Windows : 166 Mhz atau lebih
Linux : Intel 32-bit, Intel 64-bit, S/390 9672 generation atau lebih, Multiprise3000, eServer z-Series.
Solaris : Solaris UltraSPARC-based Computer
-Memory
Minimal: 512MB
Disarankan: 2048GB atau lebih
-Hard disk space 270 MB (Full Installation), 250 MB (Typical), 95 MB (minimal), Desktop 64-bit, S/390 generasi 9672
atau lebih, Multiprise 3000, eServer z-series. -Memory 128 MB RAM (diutamakan 256 MB) Virtual Memory : Initial size 200 MB, maximum size 400 MB
-Hard disk space 140 MB pada Drive System
+4.5 GB untuk Oracle Home Drive (FAT) atau 2.8
GB untuk Oracle
-Memory 128 MB RAM
(diutamakan 256MB)
Virtual Memory : Initial size 50MB, maximum size 400 MB
-Hard disk space 100 MB (diutamakan) -Hard disk space 100 MB (diutamakan)
Engine: 44 MB, Analysis services: minimum 50 MB dan 130 MB typical English Query: 80 MB Home Drive (NTFS) Typical Installation: Minimal 450 s/d 550 MB Compact Installation: Minimal 350 s/d 400 MB Custom Installation: Minimal 350 s/d 700 MB Bahasa SQL -Feature Tables Relational tables, temporary tables -Feature Triggers AFTER triggers, INSTEAD OF triggers -Feature Procedures T-SQL statement -Feature ARRAYS Not Supported Bahasa SQL -Feature Tables Relational tables, object tables, temporary tables -Feature Triggers BEFORE triggers, AFTER triggers, INSTEAD OF triggers -Feature Procedures Bahasa SQL -Feature Tables Relational tables -Feature Triggers Not Supported -Feature Procedures MySQL functions -Feature ARRAYS Not Supported -Feature Back up dan Security
-Feature Back up dan Security Supported PL/SQL statement, java methods, thirdgeneration language (3GL) routines -Feature ARRAYS Supported
-Feature Back up dan Security
Supported
Tabel 25 Perbandingan SQL Server 2008, Oracle 9i, dan MySQL
Kesimpulannya adalah dari segi biaya MySQL paling baik karena tidak memerlukan biaya, dan untuk lisensi komersialnya $395. Dari segi skalabilitasnya My SQL cocok untuk persyaratan minimum yang paling baik dan cocok untuk diimplementasikan pada perusahaan – perusahaan kalangan menengah kebawah. Karena alasan tersebut maka DBMS yang digunakan untuk aplikasi web ini adalah My SQL.
3.6.3
Perancangan Basis Data Logikal
Menghilangkan fitur-fitur yang tidak compatible dengan model relasional, antara lain:
a. Menghilangkan many-to-many (*..*) binary relational types
• Relasi biner many-to-many antar entitas siswa dengan entitas kelas
Gambar 11 Relasi biner many-to-many antar entitas siswa dengan entitas kelas
b. Menghilangkan atribut multivalue
• Pada entitas siswa
• Pada entitas guru
Gambar 13 Menghilangkan atribut multivalue pada entitas Guru
1. Hubungan turunan untuk model data logikal
Tujuannya untuk memeriksa bahwa itu adalah struktural yang benar dan mampu mendukung transaksi yang diperlukan.(Connolly & Begg, 5th Edition)
a. Strong Entity Types
Siswa Guru MataPelajaran JadwalPelajaran Ujian Kelas Absensi Nilai
Ruang Materi Ruang Keterangan: •Siswa
Atribut : Siswa (NIS, Password, Nama, Id_jenikelamin, JenisKelamin, TempatLahir, TglLahir, Id_agama, Agama, Id_kewarganegaraan, Kewarganegaraan, Alamat, NamaAyah, NamaIbu)
Primary key : NIS •Guru
Atribut : Guru (NIK, Password, Nama, Id_jenikelamin, JenisKelamin, TempatLahir, TglLahir, Id_agama, Agama, Id_kewarganegaraan, Kewarganegaraan, Alamat, Id_pendidikan, Pendidikan)
Primary Key: NIK •MataPelajaran
Atribut : MataPelajaran(Id_matapelajaran, mata_pelajaran) Primary Key: Id_matapelajaran
•JadwalPelajaran
Atribut : JadwalPelajaran (Id_jadwalpelajaran, Id_matapelajaran, Id_kelas, Id_ruang, Id_materi, NIK, Id_thnakademik, TahunAkademik, Tanggal, Jam, Hari, Kalender_Akademik)
•Ujian
Atribut : Ujian (Id_ujian, Id_ruang, Id_matapelajaran, Id_ruang, Id_kelas, Id_thnakademik, TahunAkademik, Jam, Hari, Tanggal_Mulai, Tanggal_Selesai, Jenis_Ujian, Jenis_ujian)
Primary Key: Id_ujian •Kelas
Atribut : Kelas (Id_kelas, Kelas, WaliKelas,Id_thnakademik, TahunAkademik)
Primary Key: Id_kelas •Absensi
Absensi (Id_absensi, NIS, Id_thnakademik, TahunAkademik, Tanggal_absensi, Jumlah, Detail)
Primary Key: Id_absensi •Nilai
Atribut : Nilai (Id_nilai, Id_matapelajaran, Id_tahunakademik, TahunAkademik, NIS, NIK, Jenis_Ujian, Nilai)
Primary Key: Id_nilai •Materi
Materi (Id_materi, JudulMateri, IsiMateri) Primary Key: Id_materi
•Ruang
Ruang (Id_ruang, Ruang) Primary Key: Id_ruang
b. Weak Entity Types
•KelasSiswa (NIS, Id_Kelas) KelasSiswa(NIS, Id_Kelas)
c. One-to-many (1...*) binary relationship types
•Hubungan MataPelajaran dengan Ujian
Gambar 14 Hubungan MataPelajaran dengan Ujian
•Hubungan MataPelajaran dengan Guru
•Hubungan MataPelajaran dengan Nilai
Gambar 16Hubungan MataPelajaran dengan Nilai
•Hubungan Ruang dengan Ujian
Gambar 17Hubungan Ruang dengan Ujian
•Hubungan Kelas dengan Ujian
•Hubungan Siswa dengan Nilai
Gambar 19Hubungan Siswa dengan Nilai
•Hubungan MataPelajaran dengan JadwalPelajaran
Gambar 20Hubungan MataPelajaran dengan JadwalPelajaran
• Hubungan Siswa dengan Absensi
• Hubungan Kelas dengan JadwalPelajaran
Gambar 22Hubungan Kelas dan JadwalPelajaran
• Hubungan Ruang dengan JadwalPelajaran
Gambar 23Hubungan Ruang dan JadwalPelajaran
• Hubungan Guru dengan Nilai
•Hubungan JadwalPelajaran dengan Materi
Post Materi dan JadwalPelajaran pada model relasi memiliki 1...*
JadwalPelajaran (Id_jadwalpelajaran, Id_matapelajaran, Id_kelas, Id_ruang, Id_Materi, NIK, Id_thnakademik, TahunAkademik, Tanggal, Jam, Hari, Kalender_Akademik)
PrimaryKey: Id_jadwalpelajaran
Foreign Key: Id_Materi reference Materi (Id_materi)
Materi (Id_materi, JudulMateri, IsiMateri) Primary Key: Id_materi
Gambar 25 Hubungan Materi dengan Jadwal Pelajaran
•Hubungan Guru dengan JadwalPelajaran
Gambar 26 Hubungan Guru dengan JadwalPelajaran
d. One-to-one (1...1) binary relationship types
Post Ujian dan Nilai pada model relasi memiliki 1...1
Nilai (Id_nilai, Id_thnakadmik, TahunAkademik, NIS, NIK, Id_ujian)
Primary Key: Id_nilai
Foreign Key: Id_ujian references Ujian (Id_ujian)
Ujian (Id_ujian, Id_matapelajaran, Id_thnakademik, TahunAkademik, Id_ruang, Id_kelas, Jam, Hari, Tanggal, Jenis_ujian) Primary Key: Id_ujian
e. One-to-one (1...1) recursive relationships
Tidak terdapat hubungan one-to-one yang rekursif.
f. Superclass/subclass relationship types
Tidak terdapat hubungan superclass/subclass.
g. Many-to-many (*...*) binary relationship types
• Siswadengan Kelas
Gambar 28Hubungan *..* Siswa dengan Kelas
h. Complex relationship types
Tidak terdapat hubungan kompleks.
i. Multi-valued attributes
Gambar 30Multivalued attributes
Gambar 31Multivalued attributes
2.Memvalidasi relasi menggunakan normalisasi
Tujuannya untuk memtambah hubungan untuk model data logikal untuk mewakili entitas, relationship, dan atribut yang telah diidentifikasi.
1. Siswa (NIS, Password, Nama, JenisKelamin, TempatLahir, TglLahir, Agama, Id_ Kewarganegaraan, Alamat, NamaAyah, NamaIbu)
1NF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif
NIS Password Nama NamaIbu JenisKelamin TempatLahir TglLahir NamaAyah Agama
Alamat Kewarganegaraan
2. Guru (NIK,Password, Nama, JenisKelamin, TempatLahir, TglLahir, Agama, Kewarganegaraan, Alamat, Pendidikan)
1NF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif 3. Mata Pelajaran (Id_matapelajaran, mata_pelajaran)
INF : Sudah memenuhi
2NF : Sudah memenuhi karena tidak ada ketergantungan parsial 3NF : Sudah memenuhi
Id_matapelajaran Mata_pelajaran
Primary Key
NIK Password Nama Pendidikan JenisKelamin TglLahir Agama
Alamat Kewarganegaraan
Primary Key
4. JadwalPelajaran (Id_jadwalpelajaran, Id_matapelajaran, Id_kelas, Id_ruang, Id_Materi, NIK, Id_thnakademik, TahunAkademik, Tanggal, Jam, Hari, Kalender_Akademik)
INF :
Sudah memenuhi
2NF :
JadwalPelajaran (Id_jadwalpelajaran, Id_thnakademik, id_kelas, TahunAkademik,Kalender_Akademik)
JadwalPelajaranDetail (Id_jadwalpelajaranDetail, Id_jadwalpelajaran,Id_matapelajaran, Id_ruang, Id_Materi, NIK, Tanggal, Jam, Hari)
3NF :
JadwalPelajaran(Id_jadwalpelajaran, Id_thnakademik, id_Kelas) JadwalPelajaranDetail (Id_jadwalpelajaranDetail, Id_jadwalpelajaran,Id_matapelajaran, Id_ruang, Id_Materi, NIK, Tanggal, Jam, Hari)
Id_jadwalpelajaran Id_matapelajaran jam NIK TahunAkademik Id_thnakademik Id_kelas Id_ruang Kalender_Akademik Ketergantungan Parsial Ketergantungan Transitif Tanggal Hari Primary Key Ketergantungan Transitif Ketergantungan Parsial Id_Materi
TahunAkademikSiswa(Id_thnakademik,TahunAkademik,Kalender_ Akademik)
5. JadwalPelajaranDetail (Id_jadwalpelajaranDetail, Id_jadwalpelajaran,Id_matapelajaran, Id_ruang, Id_Materi, NIK, Tanggal, Jam, Hari)
INF :
Sudah memenuhi
2NF :
JadwalPelajaranDetail(Id_Jadwalpelajarandetail, Id_Jadwalpelajaran, Id_matapelajaran, Id_ruang, NIK, Jam, Hari)
JadwalPelajaranDetailDetail (id_jadwalpelajarandetaildetail id_jadwalpelajarandetail, id_materi, tanggal)
3NF :
Sudah memenuhi
Id_JadwalpelajaranDetail Id_jadwalpelajaran Id_matapelajaran Id_ruang Id_materi NIK
Tanggal Jam Hari
Primary Key
6. Ujian (Id_ujian, Id_matapelajaran, Id_Kelas, Id_Ruang, Id_thnakademik, TahunAkademik, Jam, Hari, Tanggal_Mulai, Tanggal_Selesai, Jenis_Ujian) INF : Sudah memenuhi 2NF : Ujian (Id_ujian,Id_thnakademik, Id_Kelas,TahunAkademik,Jenis_Ujian, Tanggal_Mulai, Tanggal_Selesai)
UjianDetail (Id_ujiandetail, Id_ujian, Id_matapelajaran, Id_Ruang, Jam, Hari)
3NF :
Ujian (Id_ujian,Id_thnakademik, Id_Kelas, Jenis_Ujian, Tanggal_Mulai, Tanggal_Selesai)
UjianDetail (Id_ujiandetail, Id_ujian, Id_matapelajaran, Id_ruang, Jam, Hari)
TahunAkademikSiswa(Id_thnakademik, TahunAkademik)
Id_ujian Id_matapelajaran Id_thnakademik TahunAkademik Jam Hari Id_kelas
Primary Key Tanggal_Mulai Ketergantungan Parsial Ketergantungan Transitif Jenis_Ujian Id_Ruang Tanggal_Selesai
7. Kelas (Id_kelas, Kelas, Id_thnakademik, TahunAkademik,WaliKelas)
1NF :
Sudah memenuhi
2NF :
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF :
Kelas (Id_kelas, WaliKelas, Id_thnakademik, Kelas) TahunAkademikSiswa(Id_thnakademik, TahunAkademik)
8. Absensi (Id_absensi, WaliKelas, Id_thnakademik, TahunAkademik, Tanggal_absensi, Jumlah, Detail)
INF :
Sudah memenuhi
2NF :
Sudah memenuhi karena tidak ada ketergantungan parsial
Id_kelas Kelas Id_thnakademik TahunAkademik
Primary Key
Ketergantungan Transitif
WaliKelas
Id_absensi NIS Id_thnakademik TahunAkademik Tanggal_absensi Jumlah Detail
Primary Key
3NF :
Absensi (Id_absensi, NIS, Id_thnakademik, Tanggal_absensi, Jumlah, Detail)
TahunAkademikSiswa(Id_thnakademik, TahunAkademik)
9. Nilai ( Id_nilai, Id_matapelajaran, NIS, NIK, Nilai, Id_Ujian, Id_tahunakademik, TahunAkademik)
INF:
Sudah memenuhi
2NF:
Nilai ( Id_nilai, Id_matapelajaran, NIK, Id_thnakademik, TahunAkademik)
NilaiDetail (Id_nilaidetail, Id_nilai, NIS, Nilai, Id_UjianDetail)
3NF:
Nilai(Id_nilai, Id_matapelajaran, Id_thnakademik, NIK)
NilaiDetail (Id_nilaidetail, Id_nilai, NIS, Nilai, Id_UjianDetail) TahunAkademikSiswa(Id_thnakademik, TahunAkademik) Id_nilai Id_matapelajaran NIS NIK Nilai Id_ujiandetail
Primary Key
Id_tahunakademik TahunAkademik
Ketergantungan Transitif
10. Materi(Id_Materi, Judul Materi, IsiMateri)
I NF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif
11. Ruang(Id_ruang, Ruang)
INF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif 12.KelasSiswa(NIS, Id_kelas) INF: NIS Id_kelas Primary Key Id_ruang Ruang Primary Key
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif 13.TeleponSiswa(TelpSiswa, NIS)
Primary Key: TelpSiswa
INF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif
14.TeleponGuru (TelpGuru, NIK)
INF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
TelpSiswa NIS
TelpGuru NIK
Primary Key Primary Key
Sudah memenuhi karena tidak ada ketergantungan transitif 15.EmailSiswa (EmailSiswa, NIS)
INF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif 16.EmailGuru (EmailGuru, NIK)
INF:
Sudah memenuhi
2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial
3NF:
Sudah memenuhikarena tidak ada ketergantungan transitif 17.JadwalPelajaranDetailDetail INF: Sudah memenuhi 2NF: EmailSiswa NIS EmailGuru NIK Primary Key Primary Key Id_jadwalpelajarandetaildetail Id_jadwalpelajarandetail Primary Key Id_materi Tanggal
Sudah memenuhi karena tidak ada ketergantungan parsial 3NF:
Sudah memenuhikarena tidak ada ketergantungan transitif 18.TahunAkademikSiswa
INF:
Sudah memenuhi 2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial 3NF:
Sudah memenuhikarena tidak ada ketergantungan transitif 19.NilaiDetail
INF:
Sudah memenuhi 2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial 3NF:
Sudah memenuhi karena tidak ada ketergantungan transitif Id_thnakademik TahunAkademik
Primary Key
Kalender_Akademik
Id_nilaidetail Id_nilai
Primary Key
20.UjianDetail
INF:
Sudah memenuhi 2NF:
Sudah memenuhi karena tidak ada ketergantungan parsial 3NF:
Sudah memenuhikarena tidak ada ketergantungan transitif
3.Memvalidasi relasi dengan transaksi pengguna
Tujuan dari langkah ini adalah untuk memastikan bahwa relasi di dalam model data logikal lokal mendukung transaksi yang diminta pengguna. Pada langkah ini, pengecekan bahwa relasi yang dibuat di langkah sebelumnya juga mendukung transaksi ini benar dan pastikan juga bahwa tidak ada kesalahan dalam relasi yang dibuat. Berikut ini transaksi-transaksi yang di dapat divalidasikan dalam model logikal berikut, antara lain:
1. Pendataan guru 2. Pendataan siswa 3. Pendataan absensi
4. Pendataan tahun akademik 5. Pendataan jadwal pelajaran 6. Pendataan jadwal ujian
Id_ujiandetail Id_ujian
Primary Key
7. Pendataan mata pelajaran 8. Pendataan ruang
9. Pendataan kelas 10.Pendataan nilai 11.Pendataan materi 12.View data siswa 13.View nilai 14.View materi
15.View jadwal pelajaran 16.View ujian
17.View absensi 18.View data guru
Siswa PK NIS Nama TempatLahir TglLahir Alamat NamaAyah NamaIbu password JenisKelamin Kewarganegaraan Agama Guru PK NIK Nama TempatLahir TglLahir password Alamat Kewarganegaraan JenisKelamin Agama Pendidikan MataPelajaran PK Id_MataPelajaran MataPelajaran JadwalPelajaran PK Id_JadwalPelajaran FK2 Id_Kelas FK1 id_ThnAkademik JadwalPelajaranDetail PK Id_JadwalPelajaranDetai FK2 Id_MataPelajaran FK3 Id_Ruang Jam Hari FK5 NIK FK4 Id_JadwalPelajaran Kelas PK Id_Kelas Kelas FK1 Id_ThnAkademik walikelas TahunAkademikSiswa PK Id_ThnAkademik TahunAkademik KalenderAkademis Ruang PK Id_Ruang Ruang Ujian PK Id_Ujian FK1 Id_Kelas Jenis_ujian Tanggal_mulai Tanggal_selesai FK2 Id_ThnAkademik UjianDetail PK Id_UjianDetail FK1 Id_MataPelajaran FK2 Id_Ujian Jam Hari FK3 Id_Ruang Absensi PK Id_Absensi FK1 Id_ThnAkademik Tanggal_Absensi Detail jumlah FK2 NIS Nilai PK Id_Nilai FK1 NIK FK2 Id_ThnAkademik Materi PK Id_Materi Judul_Materi IsiMateri TeleponSiswa PK TelpSiswa FK1 NIS TeleponGuru PK TelpGuru FK1 NIK EmailSiswa PK EmailSiswa FK1 NIS EmailGuru PK EmailGuru FK1 NIK NilaiDetail PK Id_NilaiDetail FK1 Id_Nilai FK2 NIS Nilai FK3 Id_UjianDetail KelasSiswa PK,FK1 Id_kelas PK,FK2 NIS JadwalPelajaranDetailDetail PK Id_JadwalPelajaranDetailDetail FK2 Id_Materi Tanggal FK1 Id_JadwalPelajaranDetai
4.Menentukan batasan-batasan integritas
• Required data
Beberapa atribut harus selalu berisi data yang valid dan atribut tersebut tidak boleh berisi nilai NULL. Batasan ini sudah didefinisikan dalam tahap konseptual.
• Attribute domain constraints
Setiap atribut mempunyai batasan yang merupakan sekumpulan nilai yang sah sesuai dengan kebutuhan. Batasan ini sudah didefinisikan dalam penentuan domain atribut di tahap konseptual. • Entity integrity
Setiap entitas harus memiliki satu primary key. Nilai dari primary key tidak dapat menerima NULL. Batasan ini sudah dipertimbangkan pada saat mengidentifikasi primary key di tahap konseptual.
• Referential integrity
a. Siswa(NIS, Password, Nama, jeniskelamin, TempatLahir, TglLahir,
agama, kewarganegaraan, Alamat, NamaAyah, NamaIbu) Primary Key: NIS
b. Guru(NIK, Password, Nama, jeniskelamin, TempatLahir, TglLahir,
agama, kewarganegaraan, Alamat, pendidikan) Primary Key: NIK
c. Materi ( Id_materi, JudulMateri, IsiMateri)
d. Kelas (Id_kelas, Kelas, WaliKelas, Id_ThnAkademik)
Primary Key: Id_kelas
Foreign Key: Id_thnakademik references TahunAkademikSiswa (Id_thnakademiksiswa) ON UPDATE CASCADE ON DELETE CASCADE
e. Ruang(Id_ruang, Ruang)
Primary Key: Id_ruang
f. MataPelajaran (Id_matapelajaran, mata_pelajaran)
Primary Key: Id_matapelajaran
g. Nilai (Id_nilai, Id_matapelajaran, Id_thnakademik, NIK)
Primary Key: Id_nilai
Foreign Key: Id_matapelajaran referencesMataPelajaran
(Id_matapelajaran) ON UPDATE CASCADE ON DELETE CASCADE
Id_thnakademik references TahunAkademikSiswa (Id_thnakademik) ON UPDATE CASCADE ON DELETE CASCADE
NIKreferences Guru (NIK) ON UPDATE CASCADE ON DELETE CASCADE
h. NilaiDetail (Id_nilaidetail, Id_nilai, NIS, Nilai, Id_UjianDetail)
Primary Key: Id_nilaidetail
Foreign Key: Id_nilai references Nilai (Id_nilai) ON UPDATE CASCADE ON DELETE CASCADE
Id_ujianDetail references UjianDetail (Id_ujianDetail) ON UPDATE CASCADE ON DELETE CASCADE
NIS references Siswa (NIS) ON UPDATE CASCADE ON DELETE CASCADE
i. JadwalPelajaran(Id_jadwalpelajaran, Id_thnakademik, Id_kelas)
PrimaryKey: Id_jadwalpelajaran
Id_kelas references Kelas (Id_kelas) ON UPDATE CASCADE ON DELETE CASCADE
Id_thnakademik references TahunAkademikSiswa (Id_thnakademik)ON UPDATE CASCADE ON DELETE CASCADE
j. JadwalPelajaranDetail(Id_jadwalpelajaranDetail,
Id_jadwalpelajaran, Id_matapelajaran, Id_ruang, Tanggal, Jam, Hari, NIK)
PrimaryKey: Id_jadwalpelajaranDetail
Foreign Key: Id_jadwalpelajaran references JadwalPelajaran (Id_jadwalpelajaran) ON UPDATE CASCADE ON DELETE CASCADE
Id_matapelajaran references MataPelajaran (Id_matapelajaran) ON UPDATE CASCADE ON DELETE CASCADE
Id_ruang references Ruang (Id_ruang) ON UPDATE CASCADE ON DELETE CASCADE
NIK references Guru (NIK) ON UPDATE CASCADE ON DELETE CASCADE
k. JadwalPelajaranDetailDetail(Id_jadwalpelajaranDetailDetail,
Primary key : JadwalPelajaranDetailDetail
Foreign Key: Id_jadwalpelajaranDetailreferences JadwalPelajaranDetail (Id_jadwalpelajaranDetail) ON UPDATE CASCADE ON DELETE CASCADE
Id_materireferences Materi (Id_materi) ON UPDATE CASCADE ON DELETE CASCADE
l. Ujian(Id_ujian, Id_kelas, Tanggal_Mulai, Tanggal_Selesai,
Id_thnakademik, Jenis_Ujian)
Id_thnakademik references TahunAkademikSiswa (Id_thnakademik) ON UPDATE CASCADE ON DELETE CASCADE
Id_kelasreferences Kelas (Id_kelas) ON UPDATE CASCADE ON DELETE CASCADE
m. UjianDetail(Id_ujiandetail, Id_ujian, Id_ruang, Id_matapelajaran,
Jam, Hari)
Primary Key: Id_ujiandetail
Foreign Key: Id_ujian references Ujian (Id_ujian) ON UPDATE CASCADE ON DELETE CASCADE
Id_matapelajaran references MataPelajaran (Id_matapelajaran) ON UPDATE CASCADE ON DELETE CASCADE
Id_ruang references Ruang (Id_ruang) ON UPDATE CASCADE ON DELETE CASCADE
n. Absensi(Id_absensi, NIS, Id_thnakademik, Tanggal_absensi, Jumlah,
Detail)
Foreign Key: NIS referencesSiswa(NIS) ON UPDATE CASCADE ON DELETE CASCADE
Id_thnakademik references TahunAkademikSiswa (Id_thnakademik) ON UPDATE CASCADE ON DELETE CASCADE
o. TeleponSiswa(TelpSiswa, NIS)
Primary Key: TelpSiswa
Foreign Key:NIS references Siswa/i (NIS) ON UPDATE CASCADE ON DELETE CASCADE
p. TeleponGuru (TelpGuru, NIK)
Primary Key: TelpGuru
Foreign Key: NIK references Guru (NIK) ON UPDATE CASCADE ON DELETE CASCADE
q. EmailSiswa(EmailSiswa, NIS)
Primary Key: EmailSiswa
Foreign Key: NIS references Siswa/i (NIS) ON UPDATE CASCADE ON DELETE CASCADE
r. EmailGuru (EmailGuru, NIK)
Primary Key: EmailGuru
Foreign Key: NIK references Guru (NIK) ON UPDATE CASCADE ON DELETE CASCADE
s. TahunAkademikSiswa(Id_thnakademik, TahunAkademik,
Kalender_Akademik)