Jenis Kelamin
Tempat, Tanggal Lahir
Agama Kewarganegaraan Status Anak ke Alamat Telepon E-mail : : : : : : : : : Laki-Laki
Sukabumi, 30 Mei 1990
Islam
Indonesia
Belum Kawin
Satu dari Tiga bersaudara
Kp. Songgom RT. 02 RW. 08 Kecamatan
Gekbrong Kabupaten Cianjur 43256
+6285793046000
adry_rahadinata@yahoo.com
2. RIWAYAT PENDIDIKAN
1. Sekolah Dasar : SD Negeri Songgom III
Tahun ajaran 1996-2002
2. Sekolah Menengah Pertama : SMP Manba’ul Ulum Asshiddiqiah
Kebon Jeruk
Tahun ajaran 2002-2005
3. Sekolah Menengah Atas : SMA Negeri 1 Cianjur
Tahun ajaran 2005-2008
4. Perguruan Tinggi : FTIK Universitas Komputer
Indonesia Bandung
Tahun ajaran 2008-2013
Demikian riwayat hidup ini saya buat dengan sebenar-benarnya dalam keaadan
sadar dan tanpa paksaan.
Bandung,
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Studi S1 Teknik Informatika
Fakultas Teknik dan Ilmu Komputer
ADRY RAHADINATA
10108069
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER
iii
memberikan taufik dan hidayah-Nya sehingga penulis dapat menyelesaikan Laporan
Tugas Akhir ini dengan judul “PENGELOMPOKAN BIMBINGAN BELAJAR MENGGUNAKAN METODE CLUSTERING DI SMA NEGERI 1 CILAKU KABUPATEN CIANJUR“.
Banyak sekali kesulitan dan hambatan yang dihadapi dalam penyusunan
Laporan Skripsi ini, akan tetapi berkat bantuan, bimbingan dan dorongan dari banyak
pihak, akhirnya Laporan Tugas Akhir ini dapat diselesaikan. Dalam kesempatan ini
mengucapkan terima kasih banyak kepada:
1. Allah SWT yang telah memberikan anugerah kekuatan, keselamatan dan
kesehatan serta bimbingan-Nya sehingga dapat menyelesaikan Laporan Tugas
Akhir ini.
2. Ayah dan Ibu tercinta yang selalu memberikan semangat serta do’a yang tiada
henti-hentinya, dukungan yang tidak pernah berhenti, baik secara moril dan
materil, serta sebagai alasan bagi penulis untuk tetap berjuang
menyelesaikan pendidikan ini.
3. Bapak Adam Mukharil Bachtiar, S.Kom. selaku dosen pembimbing saya yang
telah banyak memberikan dorongan, motivasi dan ilmu selama menjalani
penelitian skripsi.
4. Bapak Andri Heryandi, S.T., M.T. selaku penguji 1 yang telah memberikan
arahan untuk kemajuan penulis dalam menyelesaikan Skripsi ini.
5. Bapak Eko Budi Setiawan, S.Kom. selaku penguji 3 yang telah memberikan
arahan untuk kemajuan penulis dalam menyelesaikan Skripsi ini.
6. Kepala Sekolah dan para guru bagian kurikulum SMA Negeri 1 Cilaku
Cianjur yang telah turut membantu memberikan informasi.
7. Serta seluruh pihak yang telah membantu yang tidak dapat penulis
iv
Bandung, 25 Februari 2013
v
ABSTRACT... ii
KATA PENGANTAR ... iii
DAFTAR ISI ... v
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... ix
DAFTAR SIMBOL ... x
DAFTAR LAMPIRAN ... xiii
BAB IPENDAHULUAN ... 1
I.1Latar Belakang Masalah ... 1
I.2Perumusan Masalah ... 2
I.3Maksud dan Tujuan... 2
I.4Batasan Masalah ... 3
I.5Metodologi Penelitian ... 3
I.5.1Metode Pengumpulan Data ... 3
I.5.2 Metode Pembangunan Perangkat Lunak ... 4
I.6Sistematika Penulisan ... 5
BAB IITINJAUAN PUSTAKA ... 7
II.1Profil Instansi ... 7
II.1.1Sejarah Instansi ... 7
II.1.2Visi dan Misi Instansi ... 9
II.1.3Struktur Organisasi Instansi ... 10
II.2Landasan Teori ... 11
II.2.1Basis Data... 11
II.2.2Data………...11
II.2.3Database Management System (DBMS) ... 12
II.2.4Data Mining... 12
II.2.5Konsep Jarak ... 12
II.2.6Metode Klastering (Clustering) ... 13
II.2.5.1Klastering Hirarki ... 13
vi
III.2.6.4Normalisasi ... 16
III.2.6.5Entity Relation Diagram (ERD) ... 18
II.2.8Alat-alat Pembangunan Perangkat Lunak ... 19
II.2.7.1Borland Delphi ... 19
II.2.7.2MySQL ………..19
BAB III ANALISIS DAN PERANCANGAN SISTEM ... 21
III.1Analisis Sistem ... 21
III.1.1Analisis Masalah ... 21
III.1.2Analisis Sistem yang sedang Berjalan ... 22
III.1.3Analisis Dokumen ... 26
III.1.4Analisis Preprocessing Data ... 29
III.1.5Aturan Bisnis... 30
III.1.6Analisis Algoritma ... 31
III.1.5.1Algoritma K-Means ... 31
III.1.5.2Contoh Kasus ... 35
III.1.7Spesifikasi Kebutuhan Perangkat Lunak ... 39
III.1.8Analisis Kebutuhan Non Fungsional ... 40
III.1.5.1Analisis Kebutuhan Perangkat Keras ... 40
III.1.5.2Analisis Kebutuhan Perangkat Lunak ... 41
III.1.5.3Analisis Kebutuhan Perangkat Pikir ... 42
III.1.9Analisis Data / File ... 43
III.1.10Kamus Data ERD ... 43
III.1.11Analisis Kebutuhan Fungsional ... 44
III.1.11.1Diagram Konteks ... 44
III.1.11.2Data Flow Diagram (DFD) ... 44
III.1.12Spesifikasi Proses ... 47
III.1.13Kamus Data DFD ... 51
III.2Perancangan Sistem ... 53
III.2.1Perancangan Sistem Basis Data ... 53
vii
III.2.4Perancangan Pesan ... 59
III.2.5Jaringan Semantik ... 60
III.2.6Perancangan Prosedural ... 61
III.2.6.1Prosedur Import Data ... 62
III.2.6.2Prosedur Pengelompokan... 63
BAB IVIMPLEMENTASI DAN PENGUJIAN SISTEM... 65
IV.1Implementasi Sistem ... 65
IV.1.1Implementasi Basis Data ... 65
IV.1.2Implementasi Antar Muka ... 66
IV.2Pengujian Sistem ... 67
IV.2.1Rencana Pengujian ... 67
IV.2.2Pengujian White Box ... 68
IV.2.3Pengujian Black Box ... 76
IV.2.4Pengujian Beta ... 78
IV.2.4.1Skenario Pengujian Beta ... 78
IV.2.4.2Skenario Penguujian Beta Pengguna ... 79
IV.2.5Ksimpulan Pengujian ... 80
BAB VKESIMPULAN DAN SARAN ... 81
V.IKesimpulan ... 81
V.IISaran ... 81
83
[2] Ian Sommerville, Software Engineering, 9th ed.: Addidon-Wesley, 2010.
[3] Janner Simarmata and Iman Prayuda, Basis Data. Yogyakarta: Andi Offset,
2006.
[4] Fathansyah, Buku Teks Komputer : BASIS DATA, 5th ed. Bandung:
INFORMATIKA, 2004.
[5] Waljiyanto , SISTEM BASIS DATA: Analisis dan Pemodelan Data, 1st ed.
Yogyakarta: Graha Ilmu, 2003.
[6] Budi Santosa, Data Mining Teknik Pemanfaatan Data untuk Keperluan
Bisnis Teori dan Aplikasi, 1st ed. Yogyakarta: Graha Ilmu, 2007.
[7] Yudi Agusta, "K-Means - Penerapan, permasalahan dan Metode Terkait,"
Jurnal Sistem dan Informatika, vol. III, pp. 47-60, Februari 2007.
[8] Al-Bahra Bin Ladjamudin, Analisis dan Desain Sistem Informasi.
Yogyakarta: Graha Ilmu, 2005.
[9] Abdul Kadir, Pemrograman Database Dengan Delphi 7 Menggunakan
ACCES dan ADO. Yogyakarta: ANDI, 2005.
[10] Teddy Marcus Zakaria. (2003, Oktober) www.ilmukomputer.org. [Online].
http://www.ilmukomputer.org/wp-content/upload/2006/08/teddy-delphi.zip
diakses pada tanggal 03 April 2012
[11] Abdul Kadir, Dasar Aplikasi Database MySQL - Delphi, 2nd ed. Yogyakarta:
1
SMA Negeri 1 Cilaku Kabupaten Cianjur yang berlokasi di Jalan Perintis
Kemerdekaan no 12 Cianjur, saat ini memiliki siswa sebanyak 944 siswa. 944
siswa tersebut terbagi dalam 27 rombongan belajar (Rombel). SMA Negeri 1
Cilaku merupakan salah satu sekolah menengah tingkat atas atau SMA di
kabupaten Cianjur, yang telah menyandang status Rintisan Sekolah Standar
Nasional (RSSN) dengan akredetasi A plus (sangat baik). Program yang
diagendakan di SMA Negeri 1 Cilaku, salah satunya adalah program bimbingan
belajar (pemantapan) untuk siswa kelas XII. Bimbingan belajar ini bertujuan
untuk lebih memantapkan kesiapan siswa-siswa kelas XII untuk menghadapi
Ujian Nasional (UN). Sistem pembagian kelompok bimbingan belajar yang ada
saat ini masih berdasarkan daftar absen kelas yang sudah ada.
Berdasarkan hasil wawancara, sistem pembagian kelompok bimbingan
belajar yang ada saat ini dirasa kurang efektif oleh pihak sekolah. Sistem ini
kurang efektif karena penekanan pembelajaran yang diberikan disamaratakan
untuk semua kelompok (kelas) bimbingan belajar, sedangkan tingkat kemampuan
siswa dalam mata pelajaran yang dibimbingkan tidak sama. Sebagian kelompok
siswa hanya tanggap dalam beberapa mata pelajaran saja, dan ada sebagian
kelompok siswa yang tanggap terhadap semua mata pelajaran bimbingan yang
diberikan. Masalah tersebut mengakibatkan kurangnya minat siswa dalam
mengikuti proses bimbingan belajar.
Belum adanya sistem pendukung yang dapat membantu pembagian
kelompok bimbingan belajar secara valid di SMA Negeri 1 Cilaku,
mengakibatkan proses pengelompokan bimbingan belajar tidak seperti yang
diharapkan. Banyaknya nilai yang digunakan sebagai nilai pembanding untuk
mengelompokkan siswa, membuat pemecahan masalah ini tidak dapat
Metode clustering adalah metode yang akan mengelompokan sejumlah
data ke dalam kelompok-kelompok sehingga setiap kelompok berisi data-data
yang semirip mungkin. Algoritma K-means merupakan salahsatu algoritma
clustering non hirarki yang akan mengelompokan data kedalam beberapa
kelompok/ cluster. Tujuan dari clustering ini adalah untuk meminimalkan variasi
anggota dalam satu cluster dan memaksimalkan variasi anggota antar cluster.
Oleh sebab itu, pihak sekolah berencana untuk membagi kelompok
bimbingan belajar berdasarkan tingkat kemampuan siswa di masing-masing mata
pelajaran yang dibimbingkan. Pembagian kelompok dibantu oleh sebuah
perangakat lunak hasil implementasi dari metode clustering yang dapat
mengelompokan siswa bimbingan secara valid. Pembagian kelompok ini
diharapkan dapat membantu siswa untuk lebih cepat memahami dan menguasai
mata pelajaran yang dibimbingkan, karena dibimbing oleh pengajar yang
mengetahui betul tingkat kemampuan siswa dalam mata pelajaran yang
dibimbingkan.
I.2 Perumusan Masalah
Sesuai dengan latar belakang masalah maka dirumuskan sebuah masalah.
Masalah tersebut adalah bagaimana mengelompokkan bimbingan belajar
menggunakan metode clustering di SMA Negeri 1 Cilaku Kabupaten Cianjur.
I.3 Maksud dan Tujuan
Maksud dari penelitian ini adalah membangun perangkat lunak untuk
pengelompokan bimbingan belajar menggunakan metode clustering di SMA
Negeri 1 Cilaku Kabupaten Cianjur.
Adapun tujuan yang ingin dicapai dalam penelitian ini adalah :
1. Membantu pihak sekolah dalam proses pengelompokan siswa calon
peserta bimbingan belajar.
2. Menghasilkan perangkat lunak yang dapat mengelompokan siswa
bimbingan belajar secara valid dengan mengimplementasikan metode
I.4 Batasan Masalah
Pembahasan permasalahan diharapkan tidak menyimpang dari pokok
permasalahan, sehingga diperlukan batasan masalah. Adapun batasan dari
penelitian ini adalah sebagai berikut :
1. Metode pengelompokan yang digunakan adalah metode Clustering
2. Algoritma yang digunakan adalah algoritma K-Means
3. Data yang digunakan dalam perangkat lunak ini merupakan data nilai
rata-rata mata pelajaran yang akan dibimbingkan dari semester III sampai
semester V, yaitu jurusan Ilmu Pengetahuan Alam (Bahasa Indonesia,
Bahasa Inggris, Matematika, Kimia, Fisika dan Biologi), jurusan Ilmu
Pengetahuan Sosial (Bahasa Indonesia, Bahasa Inggris, Matematika,
Ekonomi, Sosiologi dan Geografi) yang diambil sebagai dasar untuk
pengelompokan dengan metode clustering
4. Pembagian kelompok bimbingan belajar untuk siswa jurusan IPA
dipisahkan dengan pembagian kelompok untuk siswa jurusan IPS
5. Pendekatan analisis yang digunakan dalam pembangunan sistem ini
berdasarkan pendekatan analisis terstruktur.
I.5 Metodologi Penelitian
Metodologi penelitian yang akan digunakan dalam penelitian ini adalah
metodologi analisis deskriptif yang merupakan cara analisis yang
mendeskripsikan data yang telah terkumpul [1]. Metodologi analisis deskripif yang digunakan ini terdiri dari dua metode, yaitu :
I.5.1 Metode Pengumpulan Data
Metode pengumpulan data yang akan digunakan terdiri dari tiga cara
pengumpulan data, diantaranya :
1. Studi literatur
Studi literatur yang dilakukan adalah adalah mencari pustaka guna
menunjang penelitian yang di lakukan terutama buku-buku tentang
2. Studi lapangan
Studi lapangan yang dilakukan dengan cara pengamatan proses
pengelompokan bimbingan belajar di SMA Negeri 1 Cilaku untuk
mengumpulkan data yang dibutuhkan.
3. Wawancara
Wawancara langsung kepada wakil kepala sekolah bidang kurikulum
untuk mendapatkan informasi tentang proses pengelompokan bimbingan
belajar yang sedang berjalan.
I.5.2 Metode Pembangunan Perangkat Lunak
Metode pembangunan perangkat lunak dalam pembuatan perangkat lunak
ini menggunakan waterfall. Tahapan pengembangan sistem yang dilakukan adalah
sebagai berikut [2] :
a. Requirements analysis and definition
Tahap Requirements analysis and definitionmerupakan tahap
pengumpulan kebutuhan secara lengkap kemudian dianalisis dan
didefinisikan kebutuhan yang harus dipenuhi oleh program yang
akan dibangun. Fase ini harus dikerjakan secara lengkap untuk bisa
menghasilkan desain yang lengkap.
b. System and software design
Tahap System and software design merupakan tahap mendesain
perangkat lunak yang dikerjakan setelah kebutuhan selesai
dikumpulkan secara lengkap.
c. Implementation and unit testing
Tahap Implementation and unit testing merupakan tahap hasil
desain program diterjemahkan ke dalam kode-kode dengan
menggunakan bahasa pemrograman yang sudah ditentukan.
Program yang dibangun langsung diuji baik secara unit.
Tahap Integration and system testing merupakan tahap penyatuan
unit-unit program kemudian diuji secara keseluruhan (system
testing).
e. Operation and maintenance
Tahap Operation and maintenance merupakan tahap
mengoperasikan program dilingkungannya dan melakukan
pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi
dengan situasi sebenarnya.
Requirements definition
System and Software Design
Implementation and unit testing
Integration and sytem testing
Operation and maintenance
Gambar I.1 Model Proses Waterfall
I.6 Sistematika Penulisan
Sistematika penulisan laporan skripsi ini disusun untuk memberikan
gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan
laporan skripsi ini adalah sebagai berikut :
BAB I PENDAHULUAN
Bab I akan menguraikan tentang latar belakang permasalahan, mencoba
penelitian, yang kemudian diikuti dengan pembatasan masalah, asumsi, serta
sistematika penulisan.
BAB II LANDASAN TEORI
Bab II akan membahas berbagai konsep dasar dan teori-teori yang berkaitan
dengan topik penelitian yang dilakukan dan hal-hal yang berguna dalam proses
analisis permasalahan serta tinjauan terhadap penelitian-penelitian serupa yang
telah pernah dilakukan sebelumnya termasuk sintesisnya.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Bab III akan menganalisis masalah yang ada dan perancangan sistem untuk
masalah tersebut dari model penelitian untuk memperlihatkan keterkaitan antar
variabel yang diteliti serta model matematis untuk analisisnya.
BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab IV merupakan tahapan yang dilakukan dalam penelitian secara garis besar
sejak dari tahap persiapan sampai penarikan kesimpulan, metode dan kaidah yang
diterapkan dalam penelitian. Termasuk menentukan variabel penelitian,
identifikasi data yang diperlukan dan cara pengumpulannya, penentuan sampel
penelitian dan teknik pengambilannya, serta metode/teknik analisis yang akan
dipergunakan dan perangkat lunak yang akan dibangun jika ada.
BAB V KESIMPULAN DAN SARAN
Bab V akan berisi kesimpulan dan saran yang sudah diperoleh dari hasil penulisan
7
BAB II
TINJAUAN PUSTAKA
II.1 Profil Instansi
SMA Negeri 1 Cilaku merupakan salah satu sekolah menengah tingkat
atas atau SMA di kabupaten Cianjur yang berlokasi di Jalan Perintis Kemerdekaan
no 12 Cianjur. Saat ini SMA Negeri 1 Cilaku telah menyandang status Rintisan
Sekolah Standar Nasional (RSSN) dengan akreditasi A plus (sangat baik).
II.1.1 Sejarah Instansi
Cikal bakal SMA Negeri I Cilaku adalah SMA kelas jauh dari SMA
Negeri I Cianjur yang berlokasi di SMP Negeri 2 Karang tengah Cianjur dimulai
dari tahun ajaran 1987/1988 sampai tahun pelajaran 1989/1990, PLH pada waktu
itu adalah Drs.Herly sebagai salah seorang perintis berdirinya sekolah tersebut
dan berlangsung selama 2 tahun pelajaran, jumlah guru mata pelajaran sebanyak 8
(delapan) orang dengan jumlah rombongan belajar sebanyak 3 kelas. Pada tahun
berikutnya Drs. Herly diangkat menjadi Kepala SMA Negeri I Sindangbarang
kemudian PLH digantikan oleh Bapak Drs.H.T. Suryadi.Pada tahun pelajaran
1990/1991 pindah ke gedung SMA Negeri I Cianjur selama satu pelajaran.
Tahun 1990 yang diprakarsai oleh Bapak Drs.H.T. Suryadi, SMA ini dapat
membangun 3(tiga) lokal ruang belajar, luas tanah 10.000 m2 didapat dari Tanah
Hak Guna Pakai Desa Sirnagalih/PEMDA Kabupaten Cianjur Berdasarkan SK
Bupati Cianjur No. 143/SK.185-Pe.Des/1990 tanggal 29 September 1990,dengan
uang pengganti sebesar Rp. 15.000.000,00 (Lima belas juta rupiah) yang
beralamat di Jl. Perintis Kemerdekaan No.1 Cianjur dengan nama SMA Negeri 2
Cianjur,Jumlah rombongan belajar sebanyak 14 kelas (598 siswa), Jumlah Guru
Tetap 32 orang, Guru Tidak Tetap 7 orang, TU Tetap 1 orang, TU Tidak Tetap 5
orang,Pesuruh Tidak Tetap 2 orang. Tahun 1991 membangun lagi 2 (lokal) ruang
belajar.
Tanggal 5 Mei 1992 SMA ini resmi menjadi SMA Negeri 3 Cianjur
berdasarkan Surat Keputusan Menteri Pendidikan dan Kebudayaan RI No.
tanggal 16 Januari 1993 diresmikan oleh Menteri Pendidikan dan Kebudayaan
Republik Indonesia yaitu Prof.DR. Fuad Hasan pada waktu itu,
kemudian pada tahun anggaran 1996 mendapat bangunan dari Pemerintah
Pusat yaitu 1 Unit Kantor , 1 unit Laboratoium, dan 6 lokal ruang belajar.Pada
tahun anggaran 1997 mendapat lokal baru sebanyak 2 lokal ruang belajar dan
membangun dengan dana swadaya sebanyak 2 lokal ruang belajar.
Pada bulan Juni 1997 karena terjadi pemekaran kecamatan kota, dan SMA
Negeri 3 Cianjur menjadi berada di wilayah Kecamatan Cilaku sehingga terjadi
perubahan nama SMA Negeri 3 Cianjur menjadi SMA Negeri I Cilaku.Pada bulan
Oktober 1997 terjadi pergantian pimpinan, karena Drs.H.T.Suryadi memasuki
masa purna bhakti, maka diganti oleh Drs. H. Topandi (Kepala Dinas Pendidikan
dan Kebudayaan Kabupaten Cianjur sebagai PYMT) karena belum ada Kepala
Sekolah definitif pada waktu itu.Pada Awal tahun pelajaran 1998/1999
diserahterimakan pimpinan SMA Negeri I Cilaku dari Bapak Drs. H. Topandi
kepada Drs. H. Sadjidin Hidayat sebagai Kepala Sekolah Definitif.
Pada masa pimpinan Drs.H.Sadjidin Hidayat, Jumlah Guru Tetap 55
orang, Guru Tidak Tetap 8 orang, TU Tetap 7 Orang, TU Tidak Tetap 8 orang,
Pesuruh Tidak Tetap 4 orang, Satpam Tidak Tetap 3 orang, Tahun 1998 dibangun
2 lokal ruang belajar, tahun 1999 dibangun 3 lokal ruang belajar, tahun 2000/2001
dibangun lapangan Basket dan lapangan Bola Volly, pada tahun 2003 dibangun 3
lokal ruang belajar, tahun 2004 dibangun Ruang Laboratorium Bahasa dan
Laboratorium Komputer dan mendapat bantuan Alat-alat Laboraorium Bahasa
dari Proyek Peningkatan dan Perluasan Mutu SMA Jawa Barat.Tahun 2005
dibangun 1(satu) lokal ruang belajar, dan dari dana swadaya sekolah membeli
Komputer untuk Laboratorium Komputer, sehingga menjelang beliau pensiun
SMA Negeri I Cilaku hampir memadai sarana/prasarananya.
Pada bulan Februari 2006 Drs. H. Sadjidin Hidayat memasuki masa purna
bhakti, dan untuk pimpinan SMA Negeri I Cilaku diangkat Kepala SMA Negeri I
Cianjur sebagai PYMT, yaitu Drs. Barnas Sastraputra sampai bulan Mei
2006.Pada bulan Mei 2006 SMA Negeri I diserahterikan kepada Pimpinan yang
Pada masa pimpinan H. Setiawan,S.Pd. Jumlah Rombongan Belajar
sebanyak 27 kelas dengan jumlah siswa 1.115 siswa,Jumlah Guru Tetap 58 orang,
Guru Tidak Tetap 4 orang, TU Tetap 4 orang, TU Tidak Tetap 7 orang, Pesuruh
Tidak Tetap 4 orang, Satrpam Tidak Tetap 3 orang.Sarana/Prasarananya sudah
hampir memadai, maka beliau membangun ke arah peningkatan mutu dan
pelayanan yang hasilnya pada akreditasi sekolah tahun tersebut SMA Negeri I
Cilaku mendapat Akreditasi A+ (Amat Baik).Tahun 2006 diperbaiki Pagar
sekolah, kemudian merehabilitasi ruang Perpustakaan.Tahun 2007 pengeramikan
ruang belajar kelas X, masih pada tahun yang sama sekolah mendapat bantuan
block grant BOMM, tahun 2008 pengeramikan ruang belajar kel;as XII dan
pembuatan pagar yang berbatasan dengan STM AMS dan pada tahun pelajaran ini
juga sekolah mendapat Dana Bantuan Block Grant SSN.
II.1.2 Visi dan Misi Instansi Visi
Bertakwa kepada Tuhan Yang Maha Esa, sehat, berprestasi dan berwawasan
global dengan indikator sebagai berikut :
1. Meningkatnya aktifitas keagamaan
2. Meningkatnya kesehatan, peserta didik, guru, karyawan dan lingkungan
sekolah
3. Meningkatnya nilai ujian harian dan ujian nasional
4. Meningkatnya prestasi olimpiade dan siswa teladan
5. Meningkatnya prestasi olah raga
6. Meningkatnya prestasi kesenian
7. Meningkatnya kesadaran disiplin
Misi
1. Menumbuhkembangkan sikap akhlakul karimah
2. Mengembangkan kemampuan akademik dan kreatifitas guna mewujudkan
3. Mewujudkan lingkungan sekolah yang bersih, sehat, aman, rindang dan
nyaman
4. Meningkatnya kesejahteraan melalui pengembangan potensi diri dan
potensi lingkungan
5. Meningkatkan kepribadian, etika moral menuju terwujudnya manusia yang
berakhlakul karimah
II.1.3 Struktur Organisasi Instansi
Struktur organisasi dalam suatu institusi merupakan hal yang sangat
penting, dengan adanya struktur organisasi ini memberikan pembagian tugas
sesuai dengan bidangnya masing-masing. Adapun susunan organisasi di SMA
Negeri 1 Cilaku Kabupaten Cianjur adalah sebagai berikut :
Wakil Kepala Sekolah Urusan Kurikulum
Wakil Kepala Sekolah Urusan HUMAS Wakil Kepala Sekolah
Urusan Sarana Wakil Kepala Sekolah
Urusan Kesiswaan
1. MGMP
2. Pemb. MGMP Koord. BP/BK Koord. Eks.Kul
Wali Kelas Laboratorium Perpustakaan
Kepala Sekolah
Kepala Sekolah Komite Sekolah
Siswa-siswi Guru-guru
II.2 Landasan Teori
Landasan teori membahas mengenai materi atau teori apa saja yan g
digunakan sebagai acuan dalam membuat tugas akhir ini. Landasan teori yang di
uraikan merupakan hasil studi literatur, baik dari buku, maupun situs internet.
II.2.1 Basis Data
Basis data menurut Stephens dan Plew (2000), adalah mekanisme yang
digunakan untuk menyimpan informasi atau data. Informasi adalah sesuatu yang
kita gunakan sehari-hari untuk berbagai alasan. Dengan basis data, pengguna
dapat menyimpan data secara terorganisasi. Setelah data disimpan, informasi
harus mudah diambil. Kriteria dapat digunakan untuk mengambil informasi. Cara
data disimpan dalam basis data menentukan seberapa mudah mencari informasi
berdasarkan banyak kriteria. Data pun harus mudah ditambahkan ke dalam
basisdata, dimodifikasi, dan dihapus [3].
Basis data sendiri dapat didefinisikan dalam sejumlah sudut pandang
seperti [4]:
1. Himpunan kelompok data (arsip) yang saling berhubungan yang
diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali
dengan cepat dan mudah.
2. Kumpulan data yang saling berhubungan yang disimpan secara bersama
sedemikian rupa dan tanpa pengulangan (redun-dansasisi) yang tidak
perlu, untuk memenuhi berbagai kebutuhan.
3. Kumpulan file/ tabel/ arsip yang saling berhubungan yang disimpan dalam
media penyimpanan elektronis.
II.2.2 Data
Data adalah representasi fakta dunia nyata yang mewakili suatu objek
seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa,
konsep, keadaan, dan sebagainya, yang direkam dalam bentuk angka, huruf,
dari data yang disimpan. Definisi data disimpan dalam sistem katalog, yang berisi
informasi tentang struktur tiap berkas, tipe dan format penyimpanan tiap item
data, dan berbagai konstrin dari data. Semua informasi yang disimpan dalam
katalog ini biasa disebut meta-data [5].
II.2.3 Database Management System (DBMS)
Kumpulan atau gabungan database dengan perangkat lunak aplikasi yang
berbasis database tersebut dinamakan Database Management System (DBMS).
DBMS merupakan koleksi terpadu dari database dan program–program komputer
(utilitas) yang digunakan untuk mengakses dan memelihara database.
Program-program tersebut menyediakan berbagai fasilitas operasi untuk memasukan,
melacak, dan memodifikasi data kedalam database, mendefinisikan data baru,
serta mengolah data menjadi informasi yang dibutuhkan (DBMS=Database +
Program Utilitas) [3].
II.2.4 Data Mining
Data mining, sering juga disebut knowledge discovery in database (KDD),
adalah kegiatan yang meliputi pengumpulan, pemakaian data historis untuk
menemukan keteraturan, pola atau hubungan dalam set data berukuran besar.
Keluaran dari data mining ini bisa dipakai untuk memperbaiki pengambilan
keputusan di masa depan. Sehingga istilah pattern recognition sekarang jarang
digunakan karena ia termasuk bagian dari data mining [6].
II.2.5 Konsep Jarak
Jarak menjadi aspek penting dalam pengembangan metode
pengklasifikasian maupun regresi. Banyak metode dikembangkan berangkat dari
konsep jarak. Untuk mengukur jarak dua titik x dan y, ( ), kita bisa menggunakan beberapa konsep jarak. Ukuran jarak harus memenuhi syarat-syarat
sebagai berikut [6] :
1. (non-negatif)
Tidak ada jarak yang mempunyai nilai negative
Jarak antara suatu obyek atau titik dengan obyek atau titik itu sendiri adalah
nol.
3. (simetri)
Jarak dari x ke y adalah sama dengan jarak dari y ke x
4. (ketidaksamaan segitiga).
Salahsatu konsep jarak yang sering digunakan dalam data mining adalah
Euclidean Distance yang dirumuskan sebagai berikut [7]: = ‖ ‖ = √∑
II.2.6 Metode Klastering (Clustering)
Teknik klaster termmasuk teknik yang sudah cukup lama dikenal dan
banyak dipakai dalam data mining. Tujuan utama dari metode klaster adalah
pengelompokan sejumlah data/ obyek ke dalam klaster (group) sehingga dalam
setiap klaster akan berisi data yang semirip mungkin. Dalam klastering kita
berusaha untuk menempatkan obyek yang mirip (jaraknya dekat) dalam satu
klaster dan membuat jarak antar klaster sejauh mungkin. Ini berarti obyek dalam
satu klaster sangat mirip satu sama lain dan berbeda dengan obyek dalam
klaster-klaster lain [6].
Ada dua pendekatan dalam klastering: partisioning dan hirarki. Dalam
partisioning kita mengelompokkan obyek x1, x2, … xn kedalam k klaster. Ini bisa
dilakukan dengan menentukan pusat klaster awal, lalu dilakukan realokasi obyek
berdasarkan kriteria tertentu sampai dicapai pengelompokan yang optimum.
Dalam klaster hirarki, kita mulai dengan membuat m klaster dimana setiap klaster
beranggotakan satu obyek dan berakhir dengan satu klaster dimana anggotanya
adalah m obyek [6].
II.2.5.1 Klastering Hirarki
Dalam klastering hirarki kita hitung jarak masing-masing obyek dengn
terdekat. Sehimgga tiap obyek akan berpasangan dengan satu obyek atau
kelompok obyek yang lain yng paling dekat jaraknya. Langakah-langkah yang
perlu dilakukan untuk melakukan klastering dengan cara klastering hirarki adalah
sebagai berikut [6]:
1. Kelompokan setiap setiap obyek ke dalam kelompok/klasternya sendiri
2. Temukan pasangan paling mirip untuk dimasukkan ke dalam klaster yang
sama dengan melihat data dalam matriks kemiripan (resem-blance).
3. Gabungkan kedua obyek ke dalam satu klaster
4. Ulangi sampai tersisa hanya satu klaster
II.2.5.2 K-means
K-Means merupakan salah satu metode data clustering non hirarki yang
berusaha mempartisi data yang ada ke dalam bentuk satu atau lebih
cluster/kelompok. Metode ini mempartisi data ke dalam cluster/kelompok
sehingga data yang memiliki karakteristik yang sama dikelompokkan ke dalam
satu cluster yang sama dan data yang mempunyai karakteristik yang berbeda
dikelompokkan ke dalam kelompok yang lain. Adapun tujuan dari data clustering
ini adalah untuk meminimalisasikan objective function yang diset dalam proses
clustering, yang pada umumnya berusaha meminimalisasikan variasi di dalam
suatu cluster dan memaksimalisasikan variasi antar cluster [7].
Dari beberapa teknik klastering yang paling sederhana dan umum dikenal
adalah klastering k-means. Dalam teknik ini kita ingin mengelompokkan obyek ke
dalam k kelompok atau klaster. Untuk melakukan klastering ini nilai k harus
ditentukan terlebih dahulu. Biasanya user atau pemakai sudah mempunyai
informasi awal tentang obyek yang sedang dipelajari; termasuk berapa jumlah
klaster yang paling tepat. Secara detail kita bisa menggunakan ukuran
ketidakmiripan untuk mengelompokkan obyek kita. Ketidakmiripan bisa
diterjemahkan dalam konsep jarak. Jika jarak dua obyek atau data titik cukup
dekat, maka dua obyek itu mirip. Semakin dekat berarti semakin tinggi
kemiripannya. Semakin tinggi nilai jarak, semakin tinggi ketidakmiripannya.
1. Pilih jumlah klaster k
2. Inisialisasi k pusat klaster ini bisa dilakukan dengan berbagai cara. Yang
paling sering dilakukan adalah dengan cara random. Pusat-pusat klaster
diberi nilai awal dengan angka-angka random.
3. Tempatkan setiap data/obyek ke klaster terdekat. Kedekatan dua obyek
ditentukan berdasar jarak kedua obyek tersebut. Demikian kedekatan suatu
data ke klaster tertentu diotentikan jarak antara data dengan pusat klaster.
Dalam tahap ini perlu dihitung jarak tiap data ke tiap pusat klaster. Dalam
tahap ini perlu dihitung jarak tiap data ke tiap pusat klaster. Jarak paling
dekat antara satu data dengan satu klaster tertentu akan menentukan suatu
data masuk dalam klaster mana.
4. Hitung kembali pusat klaster dengan keanggotaan klaster yang sekarang.
Pusat klaster adalah rata-rata dari semua data/ obyek dalam klaster
tertentu. Jika dikehendaki bisa juga memakai median dari klaster tersebut.
Jadi rata-rata (mean) bukan satu-satunya ukuran yang bisa dipakai.
5. Tugaskan lagi setiap obyek dengan memakai pusat klaster yang baru. Jika
pusat klaster sudah tidak berubah lagi, maka proses pengklasteran selesai.
Atau, kembali lagi ke langkah nomor 3 sampai pusat klaster tidak berubah
lagi.
II.2.7 Alat-alat Pemodelan Sistem III.2.6.1Diagram Konteks
Diagram konteks adalah diagram yang terdiri dari suatu proses dan
menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level
tertinggi dari DFD yang menggambarkan seluruh input ke sistem dan output dari
sistem. Ia akan membuat gambaran tentang keseluruhan sistem. Sistem dibatasi
oleh boundary (dapat digambarkan dengan garis putus). Dalam diagram konteks
III.2.6.2Data Flow Diagram (DFD)
Diagram aliran data merupakan model dari sistem untuk menggambarkan
pembagian sistem ke modul yang lebih kecil. Salah satu keuntungan
menggunakan diagram aliran data adalah memudahkan pemakai atau user yang
kurang menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan
[8]. Simbol-simbol yang digunakan dalam pembuatan DFD ini adalah sebagai berikut:
Tabel II.1 Daftar simbol DFD
No Simbol Nama Keterangan
1 External Entity
External entity (entitas luar) dapat berupa orang/unit terkait yang berinteraksi dengan sistem tetapi diluar sistem.
2 Process Process (proses) merupakan apa
yang dikerjakan oleh sistem.
3 Data store Penyimpanan data yang ada pada
sistem.
4 Data Flow
Aliran data atau informasi yang mengalirkan informasi yang menghubungkan komponen dari sistem.
III.2.6.3Kamus Data
Kamus data berfungsi membantu pelaku sistem untuk mengartikan
aplikasi secara detail dan mengorganisasi semua elemen data yang digunakan
dalam sistem secara persis sehingga pemakai dan penganalisis sistem mempunyai
dasar pengertian yang sama tentang masukan, keluaran, penyimpanan dan proses
[8].
III.2.6.4Normalisasi
Normalisasi adalah tekik perancangan yang banyak digunakan sebagai
adalah proses dua langkah yang meletakkan data dalam bentuk tabulasi dengan
menghilangkan kelompok berulang lalu menghilangkan data yang terduplikasi
dari tabel relasional (www.utexas.edu). Adapun bentuk-bentuk normal adalah
sebagai berikut [3]:
1. Bentuk normal pertama (1NF)
Sebuah tabel reasional secara definisi selalu berada dalam bentuk normal
pertama. Semua nilai pada kolomnya adalah atomic. Ini berarti
kolom-kolom tidak mempunyai nilai berulang.
2. Bentuk normal kedua (2NF)
Bentuk normal kedua menyatakan bahwa tabel dengan kunci utama gabungan
hanya dapat berada pada 1NF, tetapi tidak pada 2NF. Proses pengubahan
tabel 1NF ke 2NF adalah sebagai berikut :
a. Tentukan sembarang kolom penentu selain kunci gabungan dan
kolom-kolom yang ditentukannya.
b. Buat dan beri nama tabel baru untuk masing-masing penentu dan
kolom-kolom yang ditentukannya.
c. Pindahkan kolom-kolom yang ditentukan dari tabel asal ke tabel baru.
Penentuan akan menjadi kunci utama pada tabel baru.
d. Hapus kolom yang baru dipindahkan dari tabel asal, kecuali penentu yang
akan berfungsi sebagai kunci tamu.
e. Tabel asal bisa diberi nama baru.
3. Bentuk normal ketiga (3NF)
Bentuk normal ketiga mengharuskan semua kolom pada tabel relasional
tergantung hanya pada tabel utama. Proses pengubahan tabel menjadi 3NF
adalah sebagai berikut:
a. Tentukan semua penentu selain kunci utama dan kolom yang
ditentukannya.
b. Buat dan beri nama tabel baru untuk masing-masing penentu dan kolom
yang ditentukannya.
c. Pindahkan kolom yang ditentukan dari tabel asal ke tabel baru. Penentuan
d. Hapus kolom yang baru saja di pindahkan dari tabel asal, kecuali
penentuan yang akan berfungsi sebagai kunci tamu.
4. Bentuk normal boyce-code (BCNF)
Bentuk normal boyce-code adalah versi 3NF yang lebih teliti dan
berhubungan dengan tabel relasional yang mempunyai (a) banyak kunci
kandidat, (b) kunci kandidat gabungan, dan (c) kunci kandidat yang saling
tumpang tindih.
III.2.6.5Entity Relation Diagram (ERD)
Entity Relationship Diagram (ERD) adalah alat pemodelan data utama dan
akan membantu mengorganisasi data dalam suatu proyek ke dalam entitas-entitas
dan menentukan hubungan antarentitas. Proses memungkinkan analis
menghasilkan struktur basis data yang baik sehingga data dapat disimpan dan
diambil secara efisien (www.infocom.cqu.edu.au) [3].
Untuk himpunan relasi R antara himpunan entitas A dan B, pemetaan
kadinalitas harus salahsatu dari berikut [3]:
a. One-to-one, sebuah entitas pada A berhubungan dengan paling banyak satu
entitas pada B dan sebuah entitas pada B berhubungan dengan paling banyak
satu entitas pada A.
b. One-to-Many, sebuah entitas pada A berhubungan dengan nol atau lebih
entitas pada B. Sebuah entitas pada B dapat dihubungkan dengan paling
banyak satu entitas pada A.
c. Many-to-One, sebuah entitas pada A berhubungan dengan paling banyak satu
entitas pada B. Sebuah entitas pada B dapat dihubungkan dengan nol atau
lebih entitas pada A.
d. Many-to-Many, sebuah entitas pada A berhubungan dengan nol atau lebih
entitas pada B dan sebuah entitas pada B dapat dihubungkan dengan nol atau
lebih entitas pada A.
Tabel II.2 Daftar simbol ERD
No Simbol Keterangan
1 Menunjukan suatu objek berupa entitas
2 Menunjukan suatu hubungan
3 Menunjukan atribut suatu entitas
II.2.8 Alat-alat Pembangunan Perangkat Lunak II.2.7.1 Borland Delphi
Delphi merupakan sebuah peranti pengembangan aplikasi berbasis
windows yang dikeluarkan oleh Borland International. Perangkat lunak ini sangat
terkenal di lingkungan pengembang aplikasi karena mudah untuk dipelajari dan
dapat digunakan untuk menangani berbagai hal, dari aplikasi matematika,
permainan (games), hingga database [9].
Delphi termasuk Keluarga Visual sekelas Visual Basic, Visual C, artinya
perintah-perintah untuk membuat objek dapat dilakukan secara visual. Pemrogram
tinggal memilih objek apa yang ingin dimasukkan kedalam Form/Window, lalu
tingkah laku objek tersebut saat menerima event/aksi tinggal dibuat programnya.
Delphi merupakan bahasa berorentasi objek, artinya nama objek, properti dan
methode/procedure dikemas menjadi satu kemasan (encapsulate) [10].
II.2.7.2 MySQL
MySQL merupakan salah satu contoh produk RDBMS yang sangat
populer di lingkungan Linux, tetapi juga tersedia pada Windows. Banyak situs
permintaan akses terhadap database). MySQL sebagai database server juga dapat
diakses melalui program yang dibuat dengan menggunakan Borland Delphi.
Dengan cara seperti ini database dapat diakses secara langsung melalui program
21
BAB III
ANALISIS DAN PERANCANGAN SISTEM
III.1 Analisis Sistem
Analisis sistem adalah penelitian atas sistem yang telah ada dengan tujuan
untuk merancang sistem yang baru atau diperbarui. Tahap analisis sistem ini
merupakan tahap yang sangat kritis dan sangat penting, karena kesalahan di dalam
tahap ini akan menyebabkan juga kesalahan di tahap selanjutnya. Tugas utama
analis sistem dalam tahap ini adalah menemukan kelemahan-kelemahan dari
sistem yang berjalan sehingga dapat diusulkan perbaikannya. Dalam membangun
perangkat lunak ini dilakukan beberapa tahap analisis yaitu :
1. Analisis Masalah
2. Analisis Sistem yang Sedang Berjalan
3. Analisis Dokumen
4. Analisis Preprocessing Data
5. Analisis Algoritma
6. Aturan Bisnis
7. Spesifikasi Kebutuhan Perangkat Lunak
8. Analisis Kebutuhan Non Fungsional
9. Analilis Data/ File
10.Kamus Data ERD
11.Analisis Kebutuhan Fungsional
12.Spesifikasi Proses
13.Kamus Data DFD
III.1.1 Analisis Masalah
Dari hasil pengamatan diketahui bahwa pengelompokan siswa bimbingan
belajar di SMA Negeri 1 Cilaku masih berdasarkan absen yang sudah ada dan
dilakukan secara manual. Hal ini mengakibatkan metode bimbingan yang
dilakukan oleh sekolah menjadi kurang optimal karena penekanan pembelajaran
yang diberikan ke siswa bimbingan disamaratakan untuk semua kelompok
pengajaran yang diberikan itu tidak sama. Masalah ini mengakibatkan kurangnya
minat siswa dalam mengikuti proses bimbingan belajar.
III.1.2 Analisis Sistem yang sedang Berjalan
Dari hasil wawancara yang dilakukan dengan wakil kepala sekolah bidang
kurikulum di SMA Negeri 1 Cilaku, didapatkan prosedur yang sedang berjalan di
bagian kurikulum sebagai berikut :
1. Proses pengelompokan siswa bimbingan belajar
Proses pengelompokan siswa bimbingan belajar adalah proses dimana wakil
kepala sekolah urusan kurikulum beserta jajarannya membagi kelompok (kelas)
bimbingan belajar untuk siswa kelas XII berdasarkan daftar absen yang sudah ada.
Proses pembagian kelompok ini digambarkan dengan flowchart pada gambar
III.1. Adapun proses-proses yang ada dalam prosedur ini adalah sebagai berikut :
1. Staf urusan kurikulum memeriksa kelengkapan data absen kelas XII semua
jurusan.
2. Staf urusan kurikulum melakukan pengecekan apakah siswa-siswa yang
terdapat dalam absen masih aktif di sekolah atau tidak (pindah ataupun
keluar dari sekolah).
3. Dari hasil pengecekan tersebut kemudian dibuat absen baru siswa-siswa
yang masih aktif yang nantinya menjadi absen kelas untuk bimbingan
Start
Data absen siswa kelas
XII
Apakah siswa masih aktif ?
Pembuatan absen baru untuk kelas bimbingan belajar
Apakah semua siswa sudah di
cek ?
Stop Pengecekan data absen siswa kelas
XII
Tidak
Ya
Ya Tidak
Data absen kelas bimbingan
[image:35.595.176.448.113.571.2]belajar
Gambar III.1 Flowchart proses pengelompokan siswa bimbingan belajar
2. Proses pendataan nilai sekolah
Proses pendataan nilai sekolah adalah proses dimana guru-guru mata pelajaran
memberikan nilai hasil belajar siswa selama satu semester ke wali kelas
masing-masing siswa. Proses pendataan nilai kelas XII ini digambarkan dengan flowmap
pada gambar III.2. Adapun proses-proses yang ada dalam prosedur ini adalah
1. Setiap guru mata pelajaran memberikan nilai hasil belajar siswa selama
satu semester kepada wali kelas.
2. Pengecekan kelengkapan data nilai siswa oleh wali kelas.
3. Apabila nilai belum lengkap maka guru mata pelajaran mengisi nilai yang
belum lengkap tersebut.
4. Apabila nilai sudah lengkap, nilai tersebut dilaporkan ke bagian tata usaha
dan bagian urusan kurikulum untuk didokumentasikan.
Keterangan :
A1 : Arsip nilai siswa yang dipegang oleh wali kelas untuk kebutuhan pengisian
raport siswa.
A2 : Arsip nilai siswa yang dipegang oleh bagian urusan kurikulum.
A3 : Arsip snilai siswa yang di pegang bagian tata usaha untk mengisi buku induk
Prosedur pendataan nilai sekolah
Bagian Tata Usaha Bagian Kurikulum
Wali Kelas Guru Mata
Pelajaran
Nilai siswa Nilai siswa
Apakah sudah lengkap ?
Nilai siswa yang sudah lengkap Laporan nilai siswa Laporan nilai siswa Pengecekan kelengkapan data nilai Ya A3 Nilai siswa yang
belum lengkap
Tidak Nilai siswa yang
belum lengkap Melengkapi nilai siswa yang belum lengkap Pembuatan laporan nilai siswa Laporan nilai siswa 1 3 2 A1 A2 Nilai siswa yang
sudah dilengkapi
[image:37.595.116.568.125.713.2]Nilai siswa yang sudah dilengkapi
III.1.3 Analisis Dokumen
Analisis dokumen merupakan kegiatan yang dilakukan dalam
menganalisis seluruh dokumen yang akan digunakan. Dokumen yang akan
digunakan sebagai data inputan dalam perangkat lunak pengelompokan
bimbingan belajar di SMA Negeri 1 Cilaku merupakan dokumen nilai sekolah.
Adapun informasi tentang dokumen yang akan digunakan, dijelaskan dalam tabel
[image:38.595.115.516.278.748.2]III.1 dan screenshoot dokumen tersebut dalam gambar III.3.
Tabel III.1 Dokumen nilai mata pelajaran pokok
No Dokumen Uraian
1 Daftar nilai mata
pelajaran pokok
setiap jurusan
Deskripsi : Daftar nilai tiap-tiap mata pelajaran
yang wajib di masing-masing jurusan
Fungsi : Laporan hasil belajar siswa dalam mata
pelajaran pokok masing-masing
jurusan untuk evaluasi dan
dokumentasi sekolah
Sumber : Setiap guru mata pelajaran
Format : excel
Atribut : no, nis, kode_jurusan,
b.indonesia-smt3, b.inggris-b.indonesia-smt3,
matematika-smt3, fisika/ekonomi-matematika-smt3,
kimia/sosiologi-smt3,
biologi/geografi-smt3, b.indonesia-smt4,
b.inggris-smt4, matematika-b.inggris-smt4,
fisika/ekonomi-smt4,
kimia/sosiologi-smt4, biologi/geografi-kimia/sosiologi-smt4,
b.indonesia-smt5, b.inggris-smt5,
matematika-smt5,
fisika/ekonomi-smt5, kimia/sosiologi-fisika/ekonomi-smt5,
biologi/geografi-smt5, jumlah,
Gambar III.3 Screenshot dokumen yang akan digunakan
Keterangan :
1. Nis merupakan nilai induk siswa
2. Jurusan merupakan kode jurusan untuk setiap siswa kode “A” untuk jurusan
Ilmu Pengetahuan Alam sedangkan kode “S” untuk jurusan Ilmu Pengetahuan
Sosial.
3. B.Indonesia-smt 3 merupakan nilai mata pelajaran bahasa indonesia semester
tiga.
4. B.Inggris-smt 3 merupakan nilai mata pelajaran bahasa inggris semester tiga.
5. Mtematika-smt 3 merupakan nilai mata pelajaran matematika semester tiga.
6. Fis/Eko/Sas/Taf - smt 3 merupakan kolom nilai untuk nilai mata pelajaran
fisika semester tiga apabila kode jurusan “A”, nilai mata pelajaran ekonomi
semester tiga apabila kode jurusan “S”. Dikarenakan jurusan yang ada di SMA
Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan sosial,
maka utuk nilai mata pelajaran sastra dan tafsir tidak digunakan.
7. Kim/Sos/Atr/Had - smt 3 merupakan kolom nilai untuk nilai mata pelajaran
semester tiga apabila kode jurusan “S”. Dikarenakan jurusan yang ada di SMA
Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan sosial,
maka utuk nilai mata pelajaran antropologi dan hadist tidak digunakan.
8. Bio/Geo/Bas/Fik - smt 3 merupakan kolom nilai untuk nilai mata pelajaran
biologi semester tiga apabila kode jurusan “A”, nilai mata pelajaran geografi
semester tiga apabila kode jurusan “S”. Dikarenakan jurusan yang ada di SMA
Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan sosial,
maka utuk nilai mata pelajaran bahasa asing dan fikih tidak digunakan.
9. B.Indonesia-smt 4 merupakan nilai mata pelajaran bahasa indonesia semester
empat.
10.B.Inggris-smt 4 merupakan nilai mata pelajaran bahasa inggris semester
empat.
11.Mtematika-smt 4 merupakan nilai mata pelajaran matematika semester empat.
12.Fis/Eko/Sas/Taf - smt 4 merupakan kolom nilai untuk nilai mata pelajaran
fisika semester empat apabila kode jurusan “A”, nilai mata pelajaran ekonomi
semester empat apabila kode jurusan “S”. Dikarenakan jurusan yang ada di
SMA Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan
sosial, maka utuk nilai mata pelajaran sastra dan tafsir tidak digunakan.
13.Kim/Sos/Atr/Had - smt 4 merupakan kolom nilai untuk nilai mata pelajaran
kimia semester empat apabila kode jurusan “A”, nilai mata pelajaran sosiologi
semester empat apabila kode jurusan “S”. Dikarenakan jurusan yang ada di
SMA Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan
sosial, maka utuk nilai mata pelajaran antropologi dan hadist tidak digunakan.
14.Bio/Geo/Bas/Fik - smt 4 merupakan kolom nilai untuk nilai mata pelajaran
biologi semester empat apabila kode jurusan “A”, nilai mata pelajaran
geografi semester empat apabila kode jurusan “S”. Dikarenakan jurusan yang
ada di SMA Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu
pengetahuan sosial, maka utuk nilai mata pelajaran bahasa asing dan fikih
tidak digunakan.
15.B.Indonesia-smt 5 merupakan nilai mata pelajaran bahasa indonesia semester
16.B.Inggris-smt 5 merupakan nilai mata pelajaran bahasa inggris semester lima.
17.Mtematika-smt 5 merupakan nilai mata pelajaran matematika semester lima.
18.Fis/Eko/Sas/Taf - smt 5 merupakan kolom nilai untuk nilai mata pelajaran
fisika semester lima apabila kode jurusan “A”, nilai mata pelajaran ekonomi
semester lima apabila kode jurusan “S”. Dikarenakan jurusan yang ada di
SMA Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan
sosial, maka utuk nilai mata pelajaran sastra dan tafsir tidak digunakan.
19.Kim/Sos/Atr/Had - smt 5 merupakan kolom nilai untuk nilai mata pelajaran
kimia semester lima apabila kode jurusan “A”, nilai mata pelajaran sosiologi
semester lima apabila kode jurusan “S”. Dikarenakan jurusan yang ada di
SMA Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan
sosial, maka utuk nilai mata pelajaran antropologi dan hadist tidak digunakan.
20.Bio/Geo/Bas/Fik - smt 5 merupakan kolom nilai untuk nilai mata pelajaran
biologi semester lima apabila kode jurusan “A”, nilai mata pelajaran geografi
semester lima apabila kode jurusan “S”. Dikarenakan jurusan yang ada di
SMA Negeri 1 Cilaku hanya ilmu pengetahuan alam dan ilmu pengetahuan
sosial, maka utuk nilai mata pelajaran bahasa asing dan fikih tidak digunakan.
21.Jumlah merupakan kolom nilai jumlah dari semua nilai-nilai mata pelajaran
dari smester tiga sampai semester 5.
22.Rata-rata merupakan kolom nilai rata-rata dari semua nilai-nilai mata
pelajaran dari smester tiga sampai semester 5.
III.1.4 Analisis Preprocessing Data
Preprocessing data merupakan hal yang harus dilakukan dalam proses data
mining karena ada sebagian atribut dari dokumen yng tidak terlalu diperlukan.
Proses ini dilakukan supaya dokumen yang akan digunakan sesuai dengan
kebutuhan sistem. Adapun preprocessing data yang dilakukan terhadap data yang
akan digunakan dalam perangkat lunak yang akan dibangun adalah data selection.
Pemilihan data (data selection) dari dokumen-dokumen nilai siswa yang
nilai mata pelajaran pokok setiap jurusan. Dari data yang ada, atribut yang diambil
adalah atribut-atribut :
1. B.indonesia-smt3
2. B.inggris-smt3
3. Matematika-smt3
4. Fisika/ekonomi-smt3
5. Kimia/sosiologi-smt3
6. Biologi/geografi-smt3
7. B.indonesia-smt4
8. B.inggris-smt4
9. Matematika-smt4
10.Fisika/ekonomi-smt4
11.Kimia/sosiologi-smt4
12.Biologi/geografi-smt4
13.B.indonesia-smt5
14.B.inggris-smt5
15.Matematika-smt5
16.Fisika/ekonomi-smt5
17.Kimia/sosiologi-smt5
18.Biologi/geografi-smt5
Dari data tersebut kemudian diambil rata-rata nilai untuk masing-masing
mata pelajaran. Data nilai rata-rata nantinnya akan diambil untuk proses
clustering/ pengelompokan.
III.1.5 Aturan Bisnis
Aturan bisnis yang ada di bagian kurikulum SMA Negeri 1 Cilaku
kabupaten Cianjur khususnya dalam hal bimbingan belajar adalah sebagai berikut:
1. Peserta bimbingan belajar merupakan siswa kelas XII.
2. Pembagian kelompok siswa bimbingan belajar dilakukan di akhir semester
V dan pengelompokan didasarkan dari pertasi siswa di masing-masing mata
3. Pengelompokan siswa dilakukan untuk setiap mata pelajaran yang
dibimbingkan. Mata pelajaran tersebut untuk jurusan Ilmu Pengetahuan
Alam (Bahasa Indonesia, Bahasa Inggris, Matematika, Kimia, Fisika dan
Biologi) dan untuk jurusan Ilmu Pengetahuan Sosial (Bahasa Indonesia,
Bahasa Inggris, Matematika, Ekonomi, Sosiologi dan Geografi).
4. Pelaksanaan bimbingan belajar dilakukan diawal semester VI (semester II di
kelas XII) selama 16 pertemuan untuk masing-masing pelajaran.
5. Jumlah kelas yang disediakan untuk pelaksanaan bimbingan belajar sama
dengan jumlah kelas yang dipakai siswa kelas XII saat mengikuti kegiata
belajar mengajar.
6. Dalam satu hari ada dua mata pelajaran yang dibimbingkan.
III.1.6 Analisis Algoritma
Analisis algoritma adalah suatu cabang khusus dalam ilmu komputer yang
mempelajari karakteristik dan performa dari suatu algoritma dalam menyelesaikan
masalah, terlepas dari implementasi algoritma tersebut. Dalam cabang disiplin ini
algoritma dipelajari secara abstrak, terlepas dari sistem komputer atau bahasa
pemrograman yang digunakan. Algoritma yang berbeda dapat diterapkan pada
suatu masalah dengan kriteria yang sama.
III.1.5.1 Algoritma K-Means
K-Means merupakan salah satu metode data clustering non hirarki yang
berusaha mempartisi data yang ada ke dalam bentuk satu atau lebih
cluster/kelompok. Metode ini mempartisi data ke dalam cluster/kelompok
sehingga data yang memiliki karakteristik yang sama dikelompokkan ke dalam
satu cluster yang sama dan data yang mempunyai karakteristik yang berbeda
dikelompokkan ke dalam kelompok yang lain. Adapun tujuan dari data clustering
ini adalah untuk meminimalisasikan objective function yang diset dalam proses
clustering, yang pada umumnya berusaha meminimalisasikan variasi di dalam
Tabel III.2 Pseudocode algoritma K-means
Procedure algoritma_k-means (n:integer, a: array of real)
{IS : pengelompokan data dengan algoritma K-means; n sudah
berisi ukuran efektif larik; seluruh elemen larik a[1..n] sebagai data nilai yang akan dikelompokan sudah terdefinisi nilainya; n merupakan banyaknya data dalam larik a[1..n]; fungsi random(n) sudah terdefiisi.}
{FS : keluaran yang diharapkan adalah hasil dari pengelompokan.}
Kamus
type centroid_awal : array[1..n] of real
const nmaks = j_klaster
type jarak : array[1..n, 1..nmaks] of real
type ang : record <nilai : real
klaster : integer>
type anggota : array[1..n] of ang
type hasil : array[1..nmaks,1..n] of real
type centroid : array[1..n] of real
j_klaster,i,j,maxiter,cluster,byk : integer
beres : boolean
dist,c,jum,temp: real
Algoritma
1 input(j_klaster)
2 for i1 to j_klaster do
3 centroid_awal[i]random(n) {memasukkan nilai yang didapat
dari fungsi random ke dalam array centroid_awal}
4 Endfor
5 beresfalse
6 maxiter0
7 while (beres = false or maxiter < 50) do
8 for i1 to n do
9 for j1 to j_klaster do
10 jarak[i,j]sqrt(pow(a[i]-centroid_awal[j]),2)
11 Endfor
12 Endfor
13 for i1 to n do
14 distjarak[i,1]
15 cluster1
16 for j2 to j_klaster do
17 if jarak[i,j] < dist then
18 distjarak[i,j]
19 clusterj
20 Endif
21 Endfor
22 anggota[i].nilaia[i]
23 anggota[i].klastercluster
24 Endforh
25 for i1 to j_klaster do
26 for j1 to n do
28 c anggota[j].nilai
29 hasil[i,j] c
30 endif
31 endfor
32 Endfor
33 for i1 to j_klaster do
34 jum 0
35 byk 0
36 for j1 to n do
37 jum jum + hasil[i,j]
38 if hasil[i,j] = 0 then
39 byk byk + 1
40 Endif
41 Endfor
42 centroid[i] jum / (j-1-byk)
43 Endfor
44 temp 0
45 i1
46 while ((temp=0) and (i<= j_klaster)) do
47 if centroid_awal[i]=centroid[i] then
48 temp0;
49 i:=i+1;
50 Else
51 temp:=1;
52 Endif
53 Endwhile
54 if temp = 0 then
55 beres true
56 Else
57 for j1 to j_klaster do
58 centroid_awal[j] centroid[j]
59 endfor
60 Endif
61 maxiter maxiter + 1
62 Endwhile
63 for i1 to n do
64 write(anggota[i].nilai,’ ’, anggota[i].klaster)
Start
Inisialisasi Data Jumlah klaster
Pemilihan centroid secara random
Perhitungan jarak objek ke centroid
Pengelompokan berdasarkan jarak
terpendek
Update nilai centroid baru
Apakah anggota suatu cluster sudah tidak berpindah lagi ?
Apakah iterasi <= 50?
Stop Ya
Tidak
Ya
[image:46.595.175.443.104.709.2]Tidak
III.1.5.2 Contoh Kasus
Tabel III.3 Tabel nilai mata pelajaran jurusan IPA
Nis Jurus
an B. Indon es ia s m t 3 B. Inggr is s m t 3 M at em at ika s m t 3 F is ika s m t 3 K im ia - sm t 3 Bi ol o gi s m t 3 B. Indon es ia s m t 4 B. Inggr is s m t 4 M at em at ika s m t 4 F is ika s m t 4 K im ia - sm t 4 Bi ol o gi s m t 4 B. Indon es ia s m t 5 B. Inggr is s m t 5 M at em at ika s m t 5 F is ika s m t 5 K im ia s m t 5 Bi ol o gi s m t 5
Dari tabel diatas akan dibagi menjadi tiga kelompok berdasarkan mata pelajaran
yang akan dibimbingkan disetiap jurusan menggunkan algoritma K-Means.
Contoh kasus yang akan dijelaskan dalam subbab ini merupakan pengelompokan
berdasarkan nilai rata-rata bahasa indonesia dengan perulangan maximum tiga
kali perulangan. Langkah pengelompokannya adalah sebagai berikut :
1. Menghitung nilai rata-rata dari tiap mata pelajaran dalam tiga semester yang
hasilnya terdapat dalam tabel di bawah ini.
Tabel III.4 Tabel nilai rata-rata mata pelajaran inti jurusan IPA yang akan dibimbingkan
No Nis B.Indonesia B.Ingris Matematika Fisika Kimia Biologi 1 091010 215 7.80 7.63 7.40 7.73 7.50 8.03 2 091010 251 7.90 7.83 7.70 7.97 7.63 8.00 3 091010 072 7.77 7.77 7.40 7.73 7.27 7.87 4 091010 111 7.60 7.53 7.17 7.57 7.43 7.87 5 091010 148 7.70 7.57 7.17 7.53 7.27 7.77 6 091010 182 7.67 7.50 7.07 7.60 7.27 7.80 7 091010 257 8.07 7.60 7.33 7.70 7.40 7.93 8 091010 150 8.03 7.53 7.80 8.77 8.07 8.37 9 091010 077 8.00 7.50 8.33 7.60 7.87 7.93 10 091010 258 7.70 7.50 7.40 7.77 7.17 7.97 11 091010 292 7.77 7.33 7.30 7.53 7.20 7.80 12 091010 045 7.73 7.73 7.23 7.90 7.33 7.90
2. Dari tabel di atas kita tentukan pusat awal cluster untuk clustering
„B.Indonesia‟ secara acak. Pusat awal kita ambil dari data yang ada pada
kolom „B.Indonesia‟ dengan menggunakan fungsi random, misalnya nilai
yang didapat adalah sebagai berikut :
c1 = 7.60 ; diambil dari data ke-4
c2 = 7.77 ; diambil dari data ke-11
c3 = 8.07 ; diambil dari data ke-7
3. Setelah pusat cluster didapat, kemudian akan dilakukan perulangan
langkah-langkah selanjutnya sampai tidak ada lagi anggota sebuah cluster yang
berpindah cluster atau perubahan nilai pada jumlah iterasi melebihi nilai batas
4. Menghitung jarak dari semua data ke tiap titik pusat cluster pertama
menggunakan Euclidean Distace dengan rumus sebagai berikut [7] : = ‖ ‖ = √∑
a. Menghitung jarak data ke-1 dengan centroid pertama (c1)
√
b. Menghitung jarak data ke-1 dengan centroid kedua (c2)
√
c. Menghitung jarak data ke-1 dengan centroid ketiga (c3)
√
Hasil perhitungan selengkapnya disajikan pada tabel III.5.
Tabel III.5 Perhitungan jarak setiap data dan posisi cluster pada iterasi pertama
No Nis Nilai Rata-rata Di1 Di2 Di3 C1 C2 C3 1 091010 215 7.80 0.20 0.03 0.27 *
2 091010 251 7.90 0.30 0.13 0.17 * 3 091010 072 7.77 0.17 0.00 0.30 * 4 091010 111 7.60 0.00 0.17 0.47 * 5 091010 148 7.70 0.10 0.07 0.37 * 6 091010 182 7.67 0.07 0.10 0.40 *
7 091010 257 8.07 0.47 0.30 0.00 * 8 091010 150 8.03 0.43 0.26 0.04 * 9 091010 077 8.00 0.40 0.23 0.07 * 10 091010 258 7.70 0.10 0.07 0.37 * 11 091010 292 7.77 0.17 0.00 0.30 * 12 091010 045 7.73 0.13 0.04 0.34 *
5. Setelah hasil perhitungan jarak antara setiap data dan pusat cluster didapat
maka dilakukan proses pengelompokan. Suatu data akan menjadi anggota
suatu cluster apabila data tersebut memiliki nilai jarak terkecil dari pusat
clusternya. Hasil pengelompokan disajikan dalam tabel III.5.
6. Menentukan pusat cluster baru dengan cara menghitung rata-rata dari data
yang ada di masing-masing cluster.
a. Perhitungan pusat cluster baru pertama
( )
b. Perhitungan pusat cluster baru kedua
Karena cluster kedua (C2) memiliki tujuh anggota maka :
( )
c. Perhitungan pusat cluster baru ketiga
Karena cluster ketiga (C3) memiliki tiga anggota maka :
( )
Hasil perhitungan jarak selengkapnya dan pengalokasian data ke jarak terdekat
disajikan pada tabel III.6.
Tabel III.6 Perhitungan jarak setiap data dan posisi cluster pada iterasi kedua
No Nis Nilai Rata-rata Di1 Di2 Di3 C1 C2 C3 1 091010 215 7.80 0.17 0.03 0.23 *
2 091010 251 7.90 0.27 0.13 0.13 * * 3 091010 072 7.77 0.14 0.00 0.26 * 4 091010 111 7.60 0.03 0.17 0.43 * 5 091010 148 7.70 0.07 0.07 0.33 * * 6 091010 182 7.67 0.04 0.10 0.36 *
7 091010 257 8.07 0.44 0.30 0.04 * 8 091010 150 8.03 0.40 0.26 0.00 * 9 091010 077 8.00 0.37 0.23 0.03 * 10 091010 258 7.70 0.07 0.07 0.33 * * 11 091010 292 7.77 0.14 0.00 0.26 * 12 091010 045 7.73 0.10 0.04 0.30 *
Tabel III.7 Perhitungan jarak setiap data dan posisi cluster pada iterasi ketiga
No Nis Nilai Rata-rata Di1 Di2 Di3 C1 C2 C3 1 091010 215 7.80 0.13 0.03 0.20 *
2 091010 251 7.90 0.23 0.13 0.10 * 3 091010 072 7.77 0.10 0.00 0.23 * 4 091010 111 7.60 0.07 0.17 0.40 * 5 091010 148 7.70 0.03 0.07 0.30 * 6 091010 182 7.67 0.00 0.10 0.33 *
No Nis Nilai Rata-rata Di1 Di2 Di3 C1 C2 C3 10 091010 258 7.70 0.03 0.07 0.30 *
11 091010 292 7.77 0.10 0.00 0.23 * 12 091010 045 7.73 0.06 0.04 0.27 *
7. Perulangan dihentikan karena dalam perulangan yang ketiga sudah tidak ada
lagi anggota suatu cluster dari perulangan sebelumnya yang berpindah cluster.
III.1.7 Spesifikasi Kebutuhan Perangkat Lunak
Spesifikasi kebutuhan perangkat lunak merupakan deskripsi kebutuhan
dari perangkat lunak yang akan dibangun. Spesifikasi kebutuhan perangkat lunak
ini terdiri dari kebutuhan fungsional dan kebutuhan nonfungsional yang
dijabarkan dalam table-tabel berikut :
Tabel III.7 Kebutuhan fungsional
Nomor Spesifikasi Kebutuhan Fungsional SKPL-F-001 Sistem dapat mengimport data siswa dan data nilai
dari file excel
SKPL-F-002 Sistem dapat mengelompokan siswa berdasarkan
tingkat kemampuan siswa permata pelajaran
SKPL-F-003 Sistem dapat menampilkan laporan hasil
pengelompokan
Tabel III.8 Kebutuhan Non Fungsional
Nomor Spesifikasi Kebutuhan Non Fungsional SKPL-NF-001 Sistem dibangun dalam bentuk Desktop.
SKPL-NF-002 Ketika sistem mengalami kesalahan, sistem akan
memberikan pesan error kepada user.
SKPL-NF-003 Sistem hanya boleh diakses oleh satu pengguna.
SKPL-NF-004 Sistem hanya digunakan oleh wakil kepala sekolah
III.1.8 Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional dilakukan untuk menghasilkan
spesifikasi kebutuhan non fungsional. Spesifikasi kebutuhan non fungsional
adalah spesifikasi yang rinci tentang hal-hal yang akan dilakukan sistem ketika
diimplementasikan. Analisis kebutuhan non fungsional ini terdiri dari analisis
kebutuhan perangkat lunak, analisis kebutuhan perangkat keras dan analisis
kebutuhan perangkat pikir.
III.1.5.1 Analisis Kebutuhan Perangkat Keras
Untuk menjalankan perangkat lunak yang akan dibangun, dibutuhkan
perangkat keras yang mendukung. Spesifikasi perangkat keras yang digunakan di
SMA Negeri 1 Cilaku adalah sebagai berikut :
a. Processor 2.30 GHz 4 Core
b. RAM 2 Gb
c. HDD 500 Gb
d. Monitor LED/LCD
e. Mouse
f. Keyboard
g. Printer
Sedangkan spesifikasi perangkat keras untuk menjalankan perangkat lunak
yang akan dibangun adalah sebagai berikut :
a. Processor 2.4 GHz
b. RAM 512 Mb
c. HDD 40 Gb
d. Monitor
e. Mouse
f. Keyboard
Dengan membandingkan spesifikasi perangkat keras untuk menjalankan
perangkat lunak yang akan dibangun dengan spesifikasi perangkat keras yang ada
di SMA Negeri 1 Cilaku, dapat disimpulkan bahwa spesifikasi perangkat keras
yang ada di SMA Negeri 1 Cilaku sudah dapat untuk menjalankan perangkat
lunak yang akan dibangun.
III.1.5.2 Analisis Kebutuhan Perangkat Lunak
Spesifikasi perangkat lunak yang digunakan di SMA Negeri 1 Cilaku
Kabupaten Cianjur adalah sebagai berikut :
a. Sistem operasi Windows 7 home basic 32 bit
b. Microsoft Office 2007
Sedangkan perangkat lunak yang digunakan dalam membangun perangkat
lunak pengelompokan adalah sebagai berikut :
a. Sistem operasi Windows 7 Ultimate 32 bit
b. Borland Delphi 7 32bit
c. Wamp Server 2.1e 32bit
Spesifikasi perangkat lunak yang dibutuhkan untuk menjalankan perangkat
lunak yang akan dibangun adalah sebagai berikut :
a. Sistem operasi Windows XP professional 32 bit
b. DBMS MySQL