Pengelompokam bimbingan belajar menggunaka metode clustering di SMA Negeri 1 Cilaku Kabupaten Cianjur
(2)
(3)
(4)
(5)
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,
(6)
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
UNIVERSITAS KOMPUTER INDONESIA 2013
(7)
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 sebutkan satu persatu.
(8)
iv
Bandung, 25 Februari 2013
(9)
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
(10)
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
(11)
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
(12)
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: ANDI, 2004, 2006 pada penulis.
(13)
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 diselesaikan oleh perangkat Office yang saat ini digunakan di sekolah.
(14)
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
(15)
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 clustering dan buku-buku serta artikel penunjang lainnya.
(16)
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.
(17)
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 merumuskan inti permasalahan yang dihadapi, menentukan tujuan dan kegunaan
(18)
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 tugas akhir.
(19)
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. 0216/O/1992 tanggal 5 Mei 1992 dan dikepalai oleh Drs.H.T.Suryadi. Pada
(20)
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 baru yaitu H. Setiawan, S.Pd. sampai sekarang.
(21)
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
(22)
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
(23)
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, simbol, teks, gambar, bunyi, atau kombinasinya [4]. Dalam pendekatan basis data tidak hanya berisi basis data itu sendiri tetapi juga termasuh definisi atau deskripsi
(24)
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
(25)
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 setiap obyek yang lain. Selanjutnya kita temukan pasangan obyek yang jaraknya
(26)
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. Algoritma k-means klastering bisa diringkas sebagai berikut [6]:
(27)
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 hanya ada satu proses. Tidak boleh ada store dalam diagram konteks [8].
(28)
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 pemandu dalam merancang basis data relasional. Pada dasarnya, normalisasi
(29)
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 menjadi kunci utama tabel baru.
(30)
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.
(31)
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 web yang menggunakan MySQL sebagai database server (server yang melayani
(32)
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 executable yang dibuat sendiri [11].
(33)
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 bimbingan belajar, sedangkan tingkat kemampuan siswa dalam memahami suatu
(34)
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 belajar.
(35)
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
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 sebagai berikut :
(36)
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 nilai siswa
(37)
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
Nilai siswa yang sudah dilengkapi
(38)
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 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, rata-rata.
(39)
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 kimia semester tiga apabila kode jurusan “A”, nilai mata pelajaran sosiologi
(40)
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 lima.
(41)
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 ada di SMA Negeri 1 Cilaku, yang diambil untuk proses data mining adalah data
(42)
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 pelajaran yang akan dibimbingkan.
(43)
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 suatu cluster dan memaksimalisa,sikan variasi antar cluster [7].
(44)
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
(45)
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)
(46)
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
Tidak
(47)
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
091010 215 A 7.50 7.10 7.20 7.10 7.20 7.80 7.80 7.50 7.20 8.30 7.30 7.80 8.10 8.30 7.80 7.80 8.00 8.50 091010 251 A 7.50 7.20 8.00 7.50 7.30 7.80 8.00 8.10 7.50 8.40 7.40 7.80 8.20 8.20 7.60 8.00 8.20 8.40 091010 072 A 7.50 7.20 7.20 7.80 7.00 7.60 7.80 8.00 7.00 7.80 7.00 7.80 8.00 8.10 8.00 7.60 7.80 8.20 091010 111 A 7.40 7.10 7.00 7.10 7.20 7.70 7.80 7.50 7.00 7.80 7.20 7.50 7.60 8.00 7.50 7.80 7.90 8.40 091010 148 A 7.40 7.00 7.00 7.50 7.10 7.70 7.70 7.50 7.00 7.50 7.10 7.50 8.00 8.20 7.50 7.60 7.60 8.10 091010 182 A 7.40 7.00 7.20 7.60 7.00 7.70 7.50 7.50 7.00 7.70 7.00 7.50 8.10 8.00 7.00 7.50 7.80 8.20 091010 257 A 7.80 7.00 7.20 7.20 7.00 7.80 7.50 7.50 7.00 8.00 7.60 7.50 8.90 8.30 7.80 7.90 7.60 8.50 091010 150 A 7.50 7.10 7.60 8.70 7.90 7.80 8.00 7.50 7.80 8.80 8.10 8.00 8.60 8.00 8.00 8.80 8.20 9.30 091010 077 A 7.80 7.00 7.50 7.50 7.80 7.70 7.80 7.50 8.50 7.60 7.80 7.80 8.40 8.00 9.00 7.70 8.00 8.30 091010 258 A 7.50 7.00 7.20 7.80 7.00 7.70 7.80 7.50 7.20 8.00 7.20 7.70 7.80 8.00 7.80 7.50 7.30 8.50 091010 292 A 7.40 7.00 7.20 7.10 7.00 7.90 7.70 7.50 7.20 7.90 7.10 7.50 8.20 7.50 7.50 7.60 7.50 8.00 091010 045 A 7.40 7.20 7.00 8.20 7.00 7.80 7.80 7.60 7.20 8.00 7.00 7.50 8.00 8.40 7.50 7.50 8.00 8.40
(48)
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 iterasiyang digunakan.
(49)
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
(50)
( )
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 *
7 091010 257 8.07 0.40 0.30 0.07 * 8 091010 150 8.03 0.36 0.26 0.03 * 9 091010 077 8.00 0.33 0.23 0.00 *
(51)
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
(52)
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 g. Printer
(53)
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 32 bit
Dengan membandingkan spesifikasi perangkat lunak yang dibutuhkan untuk menjalankan perangkat lunak yang akan dibangun, dengan spesifikasi perangakat lunak yang digunakan di SMA Negeri 1 Cilaku, dapat disimpulkan bahwa spesifikasi perangkat lunak yang digunakan di SMA Negeri 1 Cilaku kurang memenuhi spesifikasi perangkat lunak yang dibutuhkan. Kekurangan tersebut bisa diatasi dengan cara meng-install DBMS MySQL 32bit pada komputer yang digunakan.
(54)
III.1.5.3 Analisis Kebutuhan Perangkat Pikir
Analisis kebutuhan perangkat pikir digunakan untuk menganalisis karakteristik pengguna perangkat lunak yang akan dibangun. Adapun karakteristiknya dijelaskan dalam tabel berikut.
Tabel III.9 Analisis kebutuhan perangkat pikir di SMA Negeri 1 Cilaku
Pengguna Tanggung Jawab Tingkat
Pendidikan Tingkat Keterampilan Pengalaman
Wakil Kepala Sekolah Urusan Kurikulum Melakukan monitoring
Minimal S-1 Dapat menjadi pemimpin Pernah mengikuti penataran tentang kurikulum Staf urusan kurikulum Merencanakn, melaksanakan dan mengevaluasi program-program PBM dan KBM serta menyusun laporan dari hasil evaluasi tersebut
Minimal S-1 Mampu mengoperasikan komputer, pernah melakukan evaluasi, pernah menyusun laporan Pernah mengikuti penataran tentang kurikulum
Adapun daftar pengguna yang dibutuhkan dalam menjalankan perangkat lunak yang akan dibangun adalah sebagai berikut :
Tabel III.10 Analisis kebutuhan perangkat pikir pada sistem
Pengguna Hak Akses Tingkat
Pendidikan Jenis Pelatihan
Staf urusan kurikulum
Mengakses data siswa calon peserta bimbingan belajar dan melakukan proses
pengelompokan
Minimal S1 Pengoperasian komputer, cara menggunakan sistem
(55)
III.1.9 Analisis Data / File
Analisis data digunakan untuk memodelkan dan menghubungkan relasi antar data. Analisis basis data dalam pembuatan perangkat lunak yang akan dibangun menggunakan tools entity relationship diagram. Adapun entitas-entitas yang terlibat dalam entity relation diagram ini adalah sebagai berikut :
1. Siswa
2. Detail pengelompokan 3. Log pengelompokan
Berikut merupakan ERD dari perangkat lunak yang akan dibangun.
Siswa Detail Penilaian
Log Pengelompokan
Memiliki
Termasuk ke dalam
1
n n
1
nis Id_nilai nis
nis no
Gambar III.5 ERD perangkat lunak yang akan dibangun
III.1.10 Kamus Data ERD
Kamus data untuk ERD ini menjelaskan tentang atribut apa saja yang ada pada setiap entitas ERD beserta dengan nilai dari atribut tersebut.
(56)
Tabel III.11 kamus data ERD
No Entitas Atribut
1. Siswa Nis, nama, jurusan, tahun_ajaran 2. Detail penilaian Id_nilai, Nis, mata_pelajaran,
semester, nilai 3. Log pengelompokan No, Nis, Kelompok,
mata_pelajaran, nilai, tahun_ajaran
III.1.11 Analisis Kebutuhan Fungsional
Analisis fungsional yang akan dibuat yaitu Diagram Konteks dan Data Flow Diagram (DFD).
III.1.11.1Diagram Konteks
Diagram konteks adalah arus data yang berfungsi untuk menggambarkan keterkaitan aliran-aliran data antara sistem dengan bagian-bagian luar. Adapun diagram konteks untuk sistem yang akan dibangun dapat dilihat pada Gambar III.7.
Gambar III.6 Diagram Konteks
III.1.11.2Data Flow Diagram (DFD)
Data flow diagram digunakan untuk menggambarkan system sebagai sebuah jaringan dari proses-proses secara fungsional yang dihubungkan oleh aliran data satu dengan lainnya. Berikut ini merupakan diagram alir data yang menggambarkan bagaimana sistem berjalan pada saat digunakan.
Data nilai Data siswa
Report pengelompokan Info log pengelompokan
Info siswa Info nilai Data penentuan klastering
Data alamat file nilai.xls Data alamat file siswa.xls
Data tahun ajaran
0
Sis tem Pengelompokan Bimbingan Belajar
+
Pengguna
Sis wa.xls
(57)
1. DFD Level 1
DFD level satu untuk perangkat lunak yang akan dibangun tergambar pada gambar III.8.
Gambar III.7 DFD Level 1
2. DFD Level 2 Proses Pengelompokan Siswa
DFD level dua proses pengelompokan siswa untuk perangkat lunak yang akan dibangun tergambar pada gambar III.8.
Data tahun ajaran
Data tahun ajaran
Data siswa
Data log peng elompokan Data log peng elompokan
Data nilai Data nilai, Data tahun ajaran
Data siswa, Data tahun ajaran
[Report peng elompokan] [Info log pengelompokan]
[Info s is wa]
[Info nilai]
[Data penentuan klastering ]
[Data siswa]
[Data nilai]
[Data alamat file nilai.xls] [Data alamat file siswa.xls ]
[Data tahun ajaran]
Peng g una
Sis wa.xls Nilai.xls 1 Set tahun ajaran 2 Import data siswa 3 Import data nilai 4 Peng elompok
an s is wa
+ 5 Report log peng elompoka n Data siswa Detail penilaian
(58)
Gambar III.8 DFD Level 2 proses pengelompokan siswa
3. DFD Level 3 Proses Klastering
DFD level tiga proses klastering untuk perangkat lunak yang akan dibangun tergambar pada gambar III.9.
Gambar III.9 DFD Level 3 proses klastering
[Info log pengelompokan]
[Data log pengelompokan] [Data penentuan klastering]
Data nilai rata-rata
[Data nilai]
Pengguna
Detail penilaian
Log pengelompokan 4.1
Hitung nilai rata-rata permata pelajaran
4.2 Klastering
+
[Info log pengelompokan] [Data log pengelompokan] Data centroid baru
Data anggota clus ter Data jarak Data centroid awal
[Data nilai rata-rata]
Hitung nilai rata-rata permata pelajaran
Log pengelompokan Pengguna
4.2.1 Pemilihan centroid awal
4.2.2 Perhitungan
jarak
4.2.3 Pengelompoka n berdasarkan
jarak
4.2.4 Update nilai
centroid
4.2.5 Pengecekkan kondisi iterasi
(59)
III.1.12 Spesifikasi Proses
Untuk lebih menjelaskan tentang proses-proses yang ada dalam DFD maka dibuatlah spesifikasi proses. Tabel III.12 akan membahas tentang proses-proses yang ada dalam DFD dari perangkat lunak yang akan dibangun.
Tabel III.12 Spesifikasi proses
No Proses Keterangan
1.
No Proses 1
Nama Proses Set tahun ajaran
Source (sumber) Pengguna
Input Data tahun ajaran
Output Info tahun ajaran bimbingan belajar
Destination (tujuan) Proses import data siswa, proses import data nilai Logika Proses 1. Perangkat lunak akan menampilkan form untuk
menentukan tahun ajaran bimbingan belajar. 2. Pengguna memilih tahun ajaran melalui combobox
dan mengklik tombol set.
3. Setelah tahun ajaran ditentukan, maka tahun ajaran tersebut akan digunkan untuk proses-proses selanjutnya.
4. Apabila tahun ajaran masih kosong dan pengguna mngklik tombol set maka sistem akan menampilkan pesan kesalahan/ error.
5. Apabila tahun ajaran tidak ditentukan terlebih dahulu, maka sistem tidak akan menampilkan menu utama.
6. Apabila pengguna ingin mengganti tahun ajaran maka pengguna harus mengklik tombol set jika tidak, maka tahun ajaran sebelumnya yang dipakai oleh sistem.
2.
No Proses 2
Nama Proses Import data siswa
Source (sumber) Pengguna, siswa.xls, proses set tahun ajaran
Input Data alamat file data siswa berbentuk excel dalam komputer, data siswa, data tahun ajaran
Output Info siswa, data siswa, data tahun ajaran
Destination (tujuan) Pengguna, tabel siswa
Logika Proses 1. Perangkat lunak akan menampilkan form untuk mengimport data siswa dan data nilai yang dalam bentuk file excel.
2. Pengguna mengklik itembrowsefile yang ada pada isian teks alamat file data siswa.
3. Kemudian akan muncul tampilan explorer untuk mencari data siswa dalam bentuk file excel yang
(60)
No Proses Keterangan
akan di-import.
4. Setelah file data siswa dipilih, pengguna mengklik tombol upload supaya file excel tersebut ter-upload
ke dalam perangkat lunak dan tersimpan kedalam
database.
5. Apabila isian alamat file masih kosong, maka akan menampilkan pesan kesalahan/ error.
3.
No Proses 3
Nama Proses Import data nilai
Source (sumber) Pengguna, nilai.xls, proses set tahun ajaran
Input Data alamat file data nilai berbentuk excel dalam komputer, data nilai, data tahun ajaran
Output Info nilai, data nilai, data tahun ajaran
Destination (tujuan) Pengguna, tabel detail penilaian
Logika Proses 1. Perangkat lunak akan menampilkan form untuk meng-import data siswa dan data nilai yang dalam bentuk file excel.
2. Pengguna mengklik itembrowsefile yang ada pada isian teks alamat file data nilai.
3. Kemudian akan muncul tampilan explorer untuk mencari data nilai dalam bentuk file excel yang akan di-import.
4. Setelah file data nilai dipilih, pengguna mengklik tombol upload supaya file excel tersebut ter-upload
ke dalam perangkat lunak dan tersimpan kedalam
database.
5. Apabila isian alamat file masih kosong, maka akan menampilkan pesan kesalahan/ error.
4.
No Proses 4
Nama Proses Pengelompokan siswa
Source (sumber) Pengguna, tabel detail penilaian
Input Data penentuan klastering dan data nilai
Output Data log pengelompokan, info log pengelompokan
Destination (tujuan) Pengguna , tabel log pengelompokan
Logika Proses 1. Perangkat lunak akan menampilkan form log pengelompokan.
2. Terlebih dahulu pengguna memilih konsentasi jurusan dan berdasarkan mata pelajaran apa pengelompokan akan dillakukan.
3. Pengguna menentukan jumlah klaster yang disediakan.
4. Ketika pengguna mengklik tombol klastering, maka akan langsung dilakukan proses klastering.
5. Sistem akan mengambil data nilai dari database
yaitu data nilai siswa dari mata pelajaran dan konsentrasi jurusan yang sudah dipilih sebelumnnya serta jumlah kelas yang diinputkan oleh pengguna. 6. Data nilai tersebut kemudian dihitung nilai
rata-ratanya dalam tiga semester.
7. Data tersebut kemudian akan diolah oleh sistem sebagai data inputan untuk melakukan proses klastering.
(61)
No Proses Keterangan
klastering, log pengelompokan tersebut akan di tampilkan oleh sistem setelah disimpan ke dalam
database.
5.
No Proses 4.1
Nama Proses Hitung nilai rata-rata permata pelajaran
Source (sumber) Pengguna
Input Data nilai, data penentuan klastering
Output Data nilai rata-rata
Destination (tujuan) Proses klastering
Logika Proses 1. Ketika pengguna memilih konsentrasi jurusan, maka sistem akan mengambil data nilai dari
database berdasarkan jurusan dan tahun ajaran bimbingan.
2. Kemudian akan dihitung nilai rata-rata permata pelajaran dari jurusan yang dipilih pengguna oleh sistem dan ditampilkan dalam form log
pengelompokan.
3. Saat pengguna memilih mata pelajaran yang akan diklasterkan maka data nila rata-rata tersebut di filter berdasarkan mata pelajaran yang dipilih oleh pengguna.
6.
No Proses 4.2 Nama Proses Klastering
Source (sumber) Proses hitung nilai rata-rata
Input Data nilai rata-rata suatu pelajaran, jumlah kelas yang sediakan.
Output Data log pengelompokan, Info log pengelompokan
Destination (tujuan) Pengguna, tabel log pengelompokan
Logika Proses 1. Setelah pengguna memilih jumlah klaster yang diinginkan dan mengklik tombol klastering, maka sistem akan mengambil data nilai rata-rata suatu mata pelajaran yang telah dipilih oleh pengguna dimana nilai rata tersebut merupakan nilai rata-rata yang telah diolah oleh proses 4.1.
2. Ketika pengguna meng-klik tombol klastering, maka system akan langsung mengolah data nilai rata-rata tersebut ke dalam proses klastering. 3. Proses klasterin g tersebut adalah yang pertama,
sistem menentukan centroid awal setiap cluster
denngan cara mengambil data dari data nilai rata-rata secara acak.
4. Sistem akan menghitung jarak dari semua data ke tiap centroid dengan menggunakan rumus
eucledian distance. Rumus tersebut telah di terangkan di bab II yang membahas tentang konsep jarak.
5. Sistem akan menempatkan setiap data tersebut ke setiap cluster berdasarkan dari nilai terkecil dari perhitungan jarak.
6. Sistem akan menentukan nilai centroid baru yang didapat dari nilai rata-rata data yang ada di masing-masing cluster
(1)
(2)
(3)
(4)
Black Box
Beta
Wawancara
Equivalence Part it ioning Test ing
White Box
(5)
Kesimpulan
Saran
•
M embant u sekolah•
Hasil pengelompokan(6)