SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
ARIS TRI BAHTIAR EFENDI
10110063
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
NIM : 10110063
Tempat/Tgl. Lahir : Probolinggo, 14 Oktober 1991
Jenis Kelamin : Laki-Laki
Alamat : KPAD Pusdik Bekang E1 RT.06 RW.13 Kel. Baros
Kec. Cimahi Tengah Kota Cimahi
No. Telp/HP : 085624628833
E-mail : [email protected]
Riwayat Pendidikan
Tahun Pendidikan
1997-1998 TK Eka Pratiwi
1998-2004 SD Negeri Sukodadi 1
2004-2007 SMP Negeri 1 Paiton
2007-2010 SMA Negeri 1 Kraksaan
2010-2014
Program Strata 1 (S1) Program Studi Teknik
Informatika
Fakultas Teknik dan Ilmu Komputer
v
1.5.2 Metode Pembangunan Perangkat Lunak ... 5
1.6 Sistematika Penulisan ... 7
BAB 2 TINJAUAN PUSTAKA ... 9
2.1 Profil SMP Negeri 1 Cimahi ... 9
2.1.1 Sejarah SMP Negeri 1 Cimahi ... 9
2.1.2 Visi dan Misi SMP Negeri 1 Cimahi ... 10
2.1.3 Struktur Organisasi Sekolah ... 11
2.1.4 Deskripsi Tugas Sturktur Organisasi SMPN 1 Cimahi ... 11
2.2 Landasan Teori ... 13
2.2.1 Learning Management System ... 13
2.2.1.1 Fungsi LMS ... 13
2.2.2 Metode / Algoritma ... 16
vi
2.2.3.1 Basis Data ... 24
2.2.3.2 Flow Map ... 26
2.2.3.3 Entity Relationship Diagram (ERD) ... 26
2.2.3.4 Data Flow Diagram (DFD) ... 28
2.2.4. Pengembangan Perangkat Lunak ... 29
2.2.4.1 Personal Home Page (PHP)... 29
2.2.4.2 Database Management System (DBMS) ... 30
2.2.4.3 Dreamweaver ... 32
2.2.4.4 Web Browser ... 32
2.2.4.5 Jama PHP ... 32
BAB 3 ANALISIS DAN PERANCANGAN ... 33
3.1 Analisis Sistem ... 33
3.1.1 Analisis Masalah ... 33
3.1.2 Analisis Sistem yang Sedang Berjalan ... 33
3.1.3 Analisis Metode/Algoritma ... 35
3.1.3.1 Pseudocode Sistem ... 45
3.1.4 Analisis Kebutuhan Non-Fungsional ... 48
3.1.4.1 Analisis Perangkat Keras... 48
3.1.4.2 Analisis Perangkat Lunak ... 48
3.1.4.3 Analisis Pengguna ... 49
3.1.5 Entity Relationship Diagram ... 50
3.1.6 Analisis Kebutuhan Fungsional ... 54
3.1.6.1 Diagram Konteks ... 54
3.1.6.2 Data Flow Diagram ... 55
3.1.6.2.1 DFD Level 1 LMS SMPN 1 Cimahi ... 55
3.1.6.2.2 DFD Level 2 Proses 4 Pembelajaran ... 58
vii
3.2.1 Skema Relasi ... 65
3.2.2 Struktur Tabel ... 66
3.2.3 Struktur Menu ... 72
3.2.4 Perancangan Antarmuka ... 74
3.2.5 Perancangan Pesan ... 86
3.2.6 Jaringan Semantik ... 87
3.2.7 Prosedural ... 89
BAB 4 IMPLEMENTASI DAN PENGUJIAN ... 93
4.1 Implementasi ... 93
4.1.1 Implementasi Perangkat Keras ... 93
4.1.2 Implementasi Perangkat Lunak ... 94
4.1.3 Implementasi Basis Data ... 94
4.1.4 Implementasi Antarmuka ... 98
4.2 Pengujian Sistem ... 99
4.2.1 Pengujian Alpha ... 99
4.2.2 Kasus dan hasil pengujian ... 100
4.2.2.1 Pengujian Login ... 100
4.2.2.2 Pengujian Pengolahan Ujian ... 100
4.2.2.3 Pengujian Akses Ujian ... 102
4.2.2.4 Pengujian Pengoreksian Essay ... 103
4.2.2.4.1 Rencana Pengujian Pengoreksian Essay ... 103
4.2.2.4.2 Pengujian Sistem Pengoreksian Essay ... 104
4.2.2.5 Kesimpulan Pengujian Alpha ... 106
4.2.3 Pengujian Beta ... 106
4.2.3.1 Skenario Pengujian Beta ... 106
4.2.3.2 Kesimpulan Pengujian Beta ... 116
119
DAFTAR PUSTAKA
[1] Sommerville, I. (2011). Software Enginering Ninth Edition.
Massachusetts: Addison-Wesley.
[2] Effendi, E., & Zhuang, H. (2005). Konsep dan Aplikasi Elearning.
Yogyakarta: Andi.
[3] Weiss, S.M., Indurkhya, N., Zhang, T., Damerau, F.J. 2005. Text Mining :
Predictive Methods fo Analyzing Unstructered Information. Springer :
New York.
[4] Deddy Winarsono, Daniel O Siahaan, Umi Yuhana.(2009), sistem
penilaian otomatis kemiripan kalimat menggunakan syntactic-semantic
similarity pada sistem e-learning, Jurnal Ilmiah Kursor, vol. 5(2).
[5] Landauer, T.K.,Foltz, P.W., Laham, D., “Introduction to Latent Semantic Analysis”, Discourse Processes,1998
[6] Rosa A. S, M. S. (2013). "Rekayasa Perangkat Lunak Terstruktur dan
Berorientasi Objek". Bandung: Informatika Bandung.
[7] R. S. Pressman. (2010). Software Engineering : A Practitioner's
Approach, 7th Edition. New York: McGraw Hill Higher Education.
[8] Madcoms. (2008). PHP dan MySQL untuk pemula. Yogyakarta: Andi.
[9] Sidik, B., & Pohan, H. I. (2009). Pemograman Web Dengan HTML.
Bandung: Informatika.
[10] T.N. Dao, An improvement on capturing similarity between strings,
2005, http://www.codeproject.com/Articles/11157/An-improvement-on-capturing-similarity-between-str, diakses 28 Juni 2014.
[11] Arifin Rizal.(2006), Peranan substitusi N-Gram dan Code Shift pada
algoritma Soundex, Jurnal Institut Pertanian Bogor.
[12] Pradhana Fandi.(2013), Penerapan Sting Matching pada fitur Auto
Correct dan Fitur Auto Text di Smart Phones, Makalah IF3051 Strategi
120
[13] Rohmawati Fuat.(2010), Sistem Penilaian Esai Otomatis pada
E-Learning dengan Metode Cosine Similarity, Institut Teknologi Sepuluh
November.
[14] Sahriar Hamza.(2013), Sistem Koreksi Soal Essay Otomatis Dengan
menggunakan Metode Rabin Karp, Jurnal EECCIS, vol. 7(2).
[15] Diego Octaria.(2008), Implementasi Skema Pembobotan pada Aplikasi
Penilaian Esai Otomatis Metode Latent Semantic Analysis, Universitas
iii
KATA PENGANTAR
Assalamualaikum Wr, Wb
Alhamdulillahirobbil’alamin. Segala puji dan syukur penulis panjatkan kehadirat Allah SWT, yang telah melimpahkan rahmat dan hidayah-Nya sehingga
tugas akhir dengan judul “Pengembangan Modul Ujian Essay Online Dengan Koreksi Otomatis Pada Learning Management System SMP Negeri 1 Cimahi”.
Penulis menyadari sepenuhnya bahwa begitu banyak pihak yang telah
turut membantu dalam penyelesaian tugas akhir ini. Melalui kesempatan ini,
dengan segala kerendahan hati, penulis ingin mengucapkan terima kasih yang
sebesar-besarnya kepada:
1. Orang tua, kakak dan adik. Terima kasih atas segala bentuk dukungannya
dan kesabarannya, semoga Allah SWT selalu memberikan yang terbaik
untuk kita semua.
2. Bapak Andri Heryandi, S.T., M.T. selaku dosen pembimbing yang telah
bersedia meluangkan waktu dan membimbing penulis sehingga mampu
menyelesaikan tugas akhir ini dengan baik.
3. Bapak Alif Finandhita, S.Kom. dan Bapak Adam Mukharil Bachtiar,
S.Kom., M.T. selaku penguji yang telah memberikan bimbingan dan
arahannya.
4. Teman-teman kelas IF-2 angkatan 2010 dan sahabat-sahabat terhebat
sepanjang masa yang sangat setia saat suka dan duka menempuh
perjalanan tugas akhir hingga terselesaikan dengan baik.
5. Segenap guru dan siswa yang ikut berpartisipasi dalam penelitian di
SMPN 1 Cimahi.
6. Dan kepada pihak-pihak lain yang telah begitu banyak membantu namun
iv
melimpahkan berkah dan rahmat-Nya bagi kita semua, terima kasih untuk
bantuannya selama ini, semoga juga dapat menjadi amal ibadah
dihadapan-Nya.
Tugas akhir ini merupakan salah satu syarat kelulusan bagi mahasiswa
program studi Teknik Informatika di UNIKOM. Penulis menyadari tugas akhir ini
masih jauh dari sempurna dengan segala kekurangannya. Untuk itu penulis
harapkan adanya kritik dan saran yang membangun dari semua pihak demi
kesempurnaan dari tugas akhir ini. akhir kata semoga skripsi ini dapat bermanfaat
bagi kita semua.
Bandung, 18 Agustus 2014
1
SMP Negeri 1 Cimahi merupakan sekolah yang memiliki beberapa fasilitas
teknologi informasi dan fasilitas pendidikan yang lengkap, seperti laboratorium
komputer dan koneksi internet. Proses belajar mengajar di SMP Negeri 1 Cimahi
adalah dengan cara tatap muka dan secara online sudah berjalan dengan baik.
Seperti guru memberikan materi dan tugas secara langsung kepada siswa,
kemudian siswa mempelajari materi tersebut dan mengerjakan tugas yang
diberikan oleh guru baik secara konvensional maupun secara online
(inkonvensional) yaitu kegiatan belajar mengajar dilakukan dimanapun dan
kapanpun dengan menggunakan media komputer yang menghubungkan antara
siswa dengan guru secara online menggunakan media internet dengan bantuan
aplikasi Learning Management System (LMS) berbasis website.
Sistem LMS yang ada saat ini memiliki fitur ujian online, namun hanya
terbatas pada ujian pilihan ganda saja. Padahal pada kenyataannya guru juga
memberikan soal ujian berbentuk essay kepada siswa, kendala lainnya adalah
guru masih melakukan pengoreksian soal essay menggunakan cara manual yang
mungkin membutuhkan waktu yang tidak singkat untuk pengoreksiannya. Dalam
mengerjakan soal essay kadangkala siswa mengalami kesalahan penulisan saat
memasukkan salah satu kata saat memasukkan jawaban. Hal ini sangat merugikan
siswa, karena dengan salah penulisan itu dapat membuat jawaban siswa secara
keseluruhan menjadi salah. Maka dari itu dibutuhkan suatu metode untuk
menangani kesalahan inputan jawaban siswa tersebut dengan memberikan
toleransi agar tidak dinilai salah.
Pada penelitian sebelumnya, masalah kesalahan pengetikan atau pengejaan
juga sudah dilakukan oleh Zainal Arifin [11] Pada penelitiannya, Zainal Arifin
menerapkan algoritma soundex pada sistem temu-kembali berdasarkan kesalahan
pengetikan nama ilmiah fonetik untuk nama ilmiah. Kemudian selanjutnya
menerapkan algoritma string matching seperti Brute Force, Knuth-Morris Pratt
dan Boyer-Moore untuk fitur pengecekan kesalahan ejaan pada fitur autocorrect
dan fitur autotext. Pada penelitian ini, penulis menggunakan algoritma
Levenshtein Distance pada penanganan kesalahan penulisan jawaban siswa karena
mampu menentukan kempiripan dua buah kata (string) hanya dilihat dari posisi
huruf-huruf yang ada di kedua kata yang dicermati [10]. Algoritma ini cukup
efisien karena hanya memperhitungkan jarak karakter penyusun antar kata yang
dicocokkan sehingga eksekusinya lebih cepat, tidak seperti pada penelitian
sebelumnya yang menggunakan algoritma soundex dan algoritma string matching
seperti Brute Force, Knuth-Morris Pratt dan Boyer-Moore yang melakukan
pencocokan secara bertahap pada seluruh rangkaian string sehingga memiliki
proses yang cenderung panjang, rumit dan tentunya lebih lama proses
eksekusinya.
Penelitian mengenai pemeriksaan dan penilaian soal essay juga sudah ada
yang melakukan sebelumnya antara lain penelitian yang dilakukan oleh
Rohmawati Fuat. Dalam penelitiannya Rohmawati [13] menerapkan metode
Cosine Similarity dalam melakukan pengoreksian dan penilaian esai. Penggunaan
metode Cosine Similarity memiliki kekurangan yaitu masih memiliki standar
deviasi yang cukup tinggi untuk jenis pertanyaan dan jawaban tertentu
dikarenakan perbedaan nilai bobot setiap kata di dalam sistem. Selain itu juga
penelitian yang dilakukan oleh Sahriar Hamza [14] dimana dalam penelitiannya
diterapkan metode Rabin Karp dalam penilaian esainya. Metode Rabin Karp
kurang cocok untuk digunakan dalam pengoreksian essay karena hanya fokus
pada kecocokan kata atau kalimat yang sama dalam pengoreksian dan
penilaiannya. Pada penelitian ini, digunakan algoritma Latent Semantic Analysis
(LSA). LSA dipilih karena cukup efisien dan cocok untuk melakukan
pengoreksian essay karena mampu untuk mendapatkan kalimat yang relevan
dengan query bukan hanya karena memuat kata atau kalimat yang sama dengan
query, tapi juga karena memuat kata atau kalimat yang bermakna sama dengan
Dengan ditemukannya permasalahan yang ada, maka dibutuhkan metode
yang dapat membantu guru untuk pengoreksian soal essay secara otomatis oleh
sistem. Dengan dikembangkan aplikasi LMS ini, diharapkan bisa menjadi sebuah
media yang mampu membantu dan mengevaluasi sistem pembelajaran yang
sedang berjalan saat ini dalam peningkatan kualitas kegiatan belajar mengajar di
SMP Negeri 1 Cimahi. Berdasarkan latar belakang yang telah dipaparkan sebelumnya, maka penelitian tugas akhir ini diberi judul “Pengembangan Modul Ujian Essay Online Dengan Koreksi Otomatis Pada Learning Management System SMP Negeri 1 Cimahi”.
1.2. Perumusan Masalah
Berdasarkan latar belakang masalah yang telah diuraikan di atas, yang
menjadi titik permasalahan dalam penelitian ini adalah sebagai berikut :
1. Belum adanya ujian online berbentuk essay.
2. Pengoreksian soal essay masih dilakukan secara manual yang
membutuhkan waktu yang tidak singkat.
1.3. Maksud dan Tujuan
Maksud dari penelitian ini adalah mengembangkan Learning Management
System untuk SMPN 1 Cimahi. Sedangkan tujuan yang akan dicapai adalah :
1. Membantu guru dalam melakukan monitoring terhadap kegiatan belajar
siswa dengan membangun sebuah fitur pengujian materi pelajaran secara
online.
2. Membuat fitur ujian online berbentuk essay serta pengoreksian soal essay
secara otomatis oleh sistem untuk membantu guru dalam melakukan
penilaian terhadap kemampuan kompetensi siswa berdasarkan hasil
pengujian secara online.
3. Mengetahui akurasi pengoreksian oleh sistem menggunakan algoritma
Latent Semantic Analysis berdasarkan prosedur pengoreksian secara
1.4. Batasan Masalah
Mengingat permasalahan yang dikaji sangat luas, agar penyajian lebih terarah
dan mencapai sasaran yang ditentukan, maka diperlukan suatu pembatasan
masalah atau ruang lingkup kajian yang meliputi hal-hal sebagai berikut:
1. Learning Management System ini bersifat sebagai sistem pendukung
proses belajar mengajar di SMP Negeri 1 Cimahi.
2. Sistem Learning Management System dikembangkan pada bagian
pengoreksian ujian essay.
3. Pengoreksian soal essay dilakukan menggunakan algoritma Levenshtein
Distance dan Latent Semantic Analysis (LSA).
4. Pengoreksian tidak memperhatikan sinonim atau persamaan kata.
5. Pengoreksian tidak memperhatikan makna kalimat.
6. Pengoreksian hanya untuk kalimat bersifat definitif, bukan yang bersifat
opini dan matematis.
7. Model analisis perangkat lunak yang digunakan adalah pemodelan analisis
terstruktur. Alat (tools) yang digunakan adalah DFD (Data Flow
Diagram), ERD (Entity Relationship Diagram) dan Flow Map.
8. Software pengembangan aplikasi ini menggunakan Adobe Macromedia
Dreamweaver 8, dengan bahasa pemrograman PHP, MySQL sebagai
DBMS (Database Management System), WAMP Server sebagai internal
server, sedangkan untuk menjalankan aplikasi ini menggunakan browser.
1.5. Metode Penelitian
Dalam pembuatan skripsi ini menggunakan metode penelitian deskriptif yang
menggambarkan fakta-fakta dan informasi secara sistematis, aktual, dan akurat.
Adapun metode yang digunakan pada saat mengumpulkan data dan model proses
1.5.1. Teknik Pengumpulan Data
Metode pengumpulan data yang digunakan dalam penelitian ini adalah
sebagai berikut:
a.Studi Literatur
Pengumpulan data dengan cara mempelajari sumber kepustakaan
diantaranya hasil penelitian, buku referensi, jurnal dan bacaan-bacaan
yang ada kaitannya dengan judul penelitian.
b.Observasi
Metode observasi adalah pengumpulan data melalui pengamatan
langsung terdahap lingkungan sekolah termasuk kegiatan belajar
mengajar yang berlangsung di SMP Negeri 1 Cimahi.
c.Kuesioner
Metode pengumpulan data dengan cara memberikan pertanyaan tertulis
kepada 15 siswa SMP Negeri 1 Cimahi untuk memperoleh informasi
sebagai dasar pengembangan LMS.
1.5.2. Model Pembangunan Perangkat Lunak
Model proses yang digunakan dalam pembangunan perangkat lunak ini
akan menggunakan model Water Fall, model ini adalah model sederhana yang
berurutan dan saling terkait tahap-tahapnya dalam membangun sistemnya
sehingga mampu menghasilkan sistem yang tersruktur dengan baik karena pada
setiap tahapan mempunyai dokumentasi yang jelas. Alasan menggunakan model
ini adalah karena karakteristik water fall kebutuhan pengguna harus sudah jelas.
Tahap-tahap utama dari model ini memetakan kegiatan-kegiatan pengembangan
dasar yaitu [1]:
I. Software requirements analysis.
Tahap ini mengumpulkan kebutuhan-kebutuhan yang diperlukan oleh
sistem, yaitu dengan cara studi literatur, observasi dan kuesioner kepada
pihak sekolah. Sehingga semua data yang dibutuhkan bisa didapatkan
II. Design
Tahap ini memfokuskan pada tiga poin program: arsitektur program,
interface, dan algoritmanya berdasarkan data kebutuhan pengguna yang
telah didapat. Seperti kebutuhan, design juga didokumentasi dan menjadi
bagian konfigurasi program
III.Coding
Desain ditranslasikan menjadi mesin, yaitu menggunakan bahasa
pemrograman PHP.
IV.Testing
Saat kode telah dibuat, program mulai ditest kepada penggunanya.
Testing fokus pada logika internal dari software, fungsi eksternal serta
mengetes untuk mengcover error dan memastikan inputan yang telah
dibuat dan hasilnya sesuai dengan tujuan.
V. Maintenance
Biasanya (walaupun tidak seharusnya), ini merupakan fase siklus hidup
yang palinglama. Sistem diinstall dan dipakai. Pemeliharaan mencakup
koreksi dari berbagai error yang tidak ditemukan pada tahap-tahap
terdahulu, perbaikan atas implementasi unit sistem dan pengembangan
pelayanan sistem, sementara persyaratan-persyaratan baru ditambahkan.
1.6. Sistematika Penulisan
Sistematika penulisan laporan akhir penelitian ini disusun untuk memberikan
gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan skripsi
ini adalah sebagai berikut :
BAB I PENDAHULUAN
Bab ini berisi penjelasan mengenai latar belakang masalah, rumusan
masalah, maksud dan tujuan, batasan masalah, metodologi penelitian serta
sistematika penulisan.
BAB II TINJAUAN PUSTAKA
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
Bab ini berisi tentang pemaparan analisis sistem yang terdiri dari analisis
sistem yang berjalan, analisis kebutuhan nonfungsional, analisis data dan
analisis kebutuhan fungsional yang digunakan untuk mendefinisikan
hal-hal yang diperlukan dalam pengembangan perangkat lunak. Hasil dari
analisis tersebut kemudian digunakan untuk melakukan perancangan
perangkat lunak yang terdiri dari struktur menu, perancangan antarmuka,
jaringan semantik dan perancangan prosedural.
BAB IV IMPLEMENTASI DAN PENGUJIAN
Merupakan tahapan yang dilakukan dalam penelitian dalam menjelaskan
implementasi , tampilan antarmuka, menu yang tersedia pada sistem, dan
pengujian terhadap sistem.
BAB V KESIMPULAN DAN SARAN
Bab ini berisi mengenai hal-hal penting yang telah dibahas dan kemudian
dibuat kesimpulan. Bab ini juga berisi saran-saran yang diberikan untuk
9
BAB 2
TINJAUAN PUSTAKA
Pada bab ini dijelaskan beberapa konsep dan dasar teori yang berkaitan
dengan permasalahan yang akan dibahas sebagai dasar pemahaman dalam
mengimplementasikan konsep-konsep tersebut kedalam semua kegiatan
pengembangan sistem yaitu profil sekolah, learning management system,
algoritma koreksi essay, konsep perancangan sistem, dan pengembangan
perangkat lunak.
2.1. Profil SMP Negeri 1 Cimahi 2.1.1. Sejarah SMP Negeri 1 Cimahi
SMP Negeri 1 Cimahi berawal dari dari sebuah sekolah untuk golongan
pribumi yang sudah berdiri sejak tahun 1926, dan dibangun oleh Pemerintah
Hindia Belanda dengan nama HIS. Kemudian pada saat penjajahan Jepang tahun
1942–1945 HIS diubah menjadi Sekolah Rakyat (SR) No 3 Cimahi. Setelah
Indonesia merdeka diubah lagi menjadi Sekolah Rakyat (SR) no 4 Cimahi. Pada
Tahun 1949 sekolah ini menjadi sebuah sekolah swasta dengan nama SMP Parki
di bawah pimpinan Bapak Samir.
Setelah melewati beberapa perubahan dan perkembangan, akhirnya pada
tanggal 15 Agustus tahun 1950 dengan Surat Keputusan Menteri Pendidikan dan
Kebudayaan No 6535/R berdirilah SMP Negeri 1 Cimahi dengan dipimpin
pertama kali oleh Bapa Rd. Samad Bratawijaya. Pada saat itu sekolah ini memiliki
9 ruang, yang digunakan untuk kelas sebanyak 8 ruang dan satu untuk ruang
Guru, TU dan Kepala Sekolah. Dan tahun itu pulalah dijadikan awal kelahiran
SMP Negeri 1 Cimahi.
Setelah berakhir masa kepemimpinan Bapak Rd. Samad Bratawijaya
selanjutnya sekolah ini berturut-turut dipimpin oleh kepala-kepala sekolah
diantaranya :
1. Tahun 1955–1962 oleh Bapak Mochamad Kasim.
2. Tahun 1962–1966 oleh Bapak R. Embang Artawijaja (sekarang
SMP).
3. Tahun 1966–1968 oleh Bapak M. Djudju Sadjid.
4. Tahun 1968–1974 oleh Bapak Drs. R. P. Hartoyo.
5. Tahun 1974–1986 oleh Bapak T. Darsah.
6. Tahun 1986–1988 oleh Bapak H. E Hasan Badjuri BA.
7. Tahun 1988–1992 oleh Bapak Saryama Lala Mugia BA.
8. Tahun 1992–1994 oleh Bapak Endang Dachlan.
9. Tahun 1994 oleh Bapak Ade Juhandi sebagai PYMT.
10.Tahun 1994–1996 oleh Bapak Drs. Ubes Sumantri.
11.Tahun 1996 oleh Bapak Drs. H. Odjo Suheman sebagai PYMT.
12.Tahun 1996–1999 oleh Bapak Drs. Sholeh Gunawan.
13.Tahun 1999–2002 oleh Bapak Drs. E. Saefudin Satyaputra.
14.Tahun 2002 oleh Bapak Drs. Hadi Supriatna, MM sebagai PLH.
15.Tahun 2002–sekarang oleh Ibu Dra. L.G. Arisuweni, M.Pd.
2.1.2. Visi dan Misi SMP Negeri 1 Cimahi
Dalam menjalankan institusinya, SMPN 1 Cimahi memiliki visi dan misi
sebagai pedoman dalam mencapai tujuannya. Adapun visi dan misi yang dimiliki
oleh SMPN 1 Cimahi adalah sebagai berikut:
1.Visi
Terwujudnya sekolah yang memiliki siswa berkualitas, cerdas dan
kompetitif dalam bidang IMTAQ dan IPTEK serta berwawasan
lingkungan. Dengan motto IDEAL yaitu :
1. Itikad yang baik.
2. Dedikasi yang tinggi.
3. Evaluasi diri.
4. Akhlak yang mulia.
5. Luwes dalam ucapan dan tindakan.
2.Misi
2. Membentuk pribadi yang luhur dan berakhlak mulia.
3. Meningkatkan etos kerja seluruh warga sekolah.
4. Mengupayakan kemandirian yang bertanggung jawab dalam
proses pembelajaran dan pengelolaan pendidikan.
5. Mengembangkan minat dan bakat apresiasi seni-budaya.
6. Menumbuhkembangkan kearifan lokal dan kesolehan sosial
2.1.3. Struktur Organisasi Sekolah
Struktur organisasi menunjukan pola hubungan jalur komunikasi antara
fungsi-fungsi, bagian-bagian atau orang-orang yang ada dalam suatu organisasi
dapat diketahui bagaimana wewenang dan tanggung jawab mengalir diantara
bagian tersebut.
Dibawah ini adalah Bagan Struktur Organisasi SMP Negeri 1 Cimahi.
Gambar 2.1. Struktur Organisasi SMPN 1 Cimahi
2.1.4. Deskripsi Tugas Struktur Organisasi SMPN 1 Cimahi
Melihat dari Gambar 2.1, setiap jabatan memiliki tugas masing-masing,
berikut penjelasan mengenai tugas dari masing-masing jabatan yang ada di SMP
a)Kepala sekolah bertugas :
1. Merencanakan pengembangan penyelenggaraan pendidikan.
2. Mengorganisasikan seluruh proses pendidikan di sekolah yang
meliputi aspek edukatif dan admnistratif.
3. Me-monitoring perkembangan siswa dan guru bidang studi.
b)Tata usaha bertugas :
1. Membantu pimpinan dalam menyiapkan rencana pendidikan.
2. Mengelola data siswa, guru, materi dan data-data yang bersangkutan
dengan kegiatan sekolah.
c)Wakil kepala sekolah bidang kurikulum bertugas:
1. Menyusun jadwal pelajaran.
2. Mengatur pelaksanaan penilaiaan.
3. Menyusun jadwal mengajar guru bidang studi.
4. Menyusun program semester.
d)Wakil kepala sekolah bidang kesiswaan bertugas:
1. Mengelola kesiswaan dari ekstrakulikuler dan kegiatan siswa lainnya
baik intern atau ekstern sekolah.
2. Bekerjasama dengan pihak OSIS (Organisasi Siswa Intern Sekolah).
e) Wakil kepala sekolah bidang sarana dan prasarana bertugas mengelola
penyediaan dan pengadaan barang-barang yang dibutuhkan sekolah
(barang inventaris sekolah).
f) Wakil kepala sekolah bidang humas bertugas mengelola informasi
sekolah.
g) Guru bidang studi bertugas dalam proses belajar mengajar di sekolah
berdasarkan ketentuan yang ditetapkan oleh pihak sekolah.
2.2. Landasan Teori
Dalam membangun Learning Management System untuk SMPN 1 Cimahi,
terdapat landasan teori yang mendukung diantaranya :
2.2.1. Learning Management System
Learning Management System (LMS) adalah system yang membantu
administrasi dan berfungsi sebagai platform e-learning content [2]. Apabila
memiliki banyak materi pelajaran e-learning, kita tidak hanya meletakkannya
pada layar desktop komputer dalam bentuk icon. Bagaimana bila kita memiliki
lebih dari 100 judul mata pelajaran e-learning? Layar computer kita tentu akan
penuh. Oleh karena itu, kita perlu memiliki LMS sebagai system yang mengatur
e-learning content atau mata pelajaran e-learning.
2.2.1.1. Fungsi LMS
Berikut adalah beberapa fungsi LMS :
1. Katalog
LMS yang baik harus dapat menunjukkan materi pelajaran yang dimiliki.
Materi-materi dapat berupa pelajaran e-learning, artikel, tesis, hasil diskusi
dan lain sebagainya. Katalog yang baik pun harus dapat membedakan
materi berdasarkan jenis materi, departemen yang memerlukan (misalnya,
pelajaran marketing mi untuk department marketing dan penjualan)
maupun kurikulum (misalnya, pelajaran anggaran untuk kurikulum
keuangan, pelajaran coaching untuk kurikulum kepemimpinan).
Katalog yang baik harus dapat menampilkan informasi tentang suatu
pelajaran dengan lengkap, meliputi judul, tujuan, cakupan atau outline,
durasi, target pelajar, tangggal tersedia, materi pendahuluan, tes yang
harus diikuti dan lain sebagainya.
2. Registrasi dan persetujuan
Fungsi ini memungkinkan calon peserta pelatihan mendaftarkan diri secara
online, baik untuk pelajaran online maupun di kelas. Apabila calon peserta
pelatihan selesai mendaftar dan pelajaran membutuhkan persetujuan atasan
(biasanya melalui e-mail) bahwa terdapat satu pendaftaran yang harus
ditanggapi. Atasan dapat mengakses sistem dan melihat pendaftaran serta
informasi tentang pelajar dan pelajaran. Kemudian, dia dapat mengambil
tindakan, apakah disetujui atau ditolak. LMS kembali menginformasikan
hal tersebut kepada calon peserta pelatihan.
LMS yang baik dapat pula menyimpan data pendaftaran dan persetujuan
untuk membantu departemen pelatihan dalam memonitoring kegiatan
e-learning di kemudian hari.
3. Menjalankan dan memonitoring e-learning
LMS harus menjalankan materi pelajaran e-learning dengan baik. Apabila
komputer pelajar tidak memiliki konfigurasi yang sesuai, maka LMS harus
mengesannya dan memberikan peringatan kepada pelajar.
Setelah materi pelajaran e-learning dijalankan, LMS harus mempunyai
kemampuan merekam kegiatan agar dapat dibuat laporannya. LMS harus
dapat merekam tentang berapa lama siswa mengakses materi pelajaran,
berapa kali, tanggal dan jamnya dan lain sebagainya.
4. Evaluasi
LMS yang baik pun harus dapat melakukan bermacam evaluasi yang dapat
mengukur keahlian peserta pelatihan sebelum dan sesudah mengikuti
pelatihan. Evaluasi harus dapat mengukur seberapa jauh peserta pelatihan
menyerap materi. Berdasarkan hasil evaluasi, LMS secara otomatis
menyarankan untuk mengulang kembali pelajaran, membaca beberapa
artikel tambahan, mengikuti pelajaran yang lain atau tindakan lainnya.
5. Komunikasi
LMS berguna pula sebagai sarana komunikasi bagi departemen pelatihan
dan anggota organisasi. LMS dapat menyajikan atau memberikan
pengumuman kepada pelajar tertentu. Pengumuman dapat dari pengajar
atau administrator pelatihan.
Komunikasi di sini dapat berarti pengajar memberikan materi bacaan
tambahan kepada peserta pelatihan melalui system. Pengajar dapat pula
beberapa pelajar tertentu dan LMS dapat menginformasikannya kepada
mereka agar dapat mengakses dan men-download artikel melalui LMS.
6. Laporan
Melalui LMS, para administrator pelatihan dapat memperoleh laporan
berisi data pelatihan. Atasan dan manajemen harus dapat mengakses
system dan mencetak laporan secara langsung, tanpa meminta bantuan
administrator. Misalnya, seorang manajer ingin mengetahui berapa banyak
anak buahnya yang telah memperoleh pelatihan MS Powerpoint. Ia mudah
masuk atau login ke dalam LMS dan mencari data pelatihan anak buahnya.
7. Rencana pembelajaran
Seorang manajer dapat membuat rencana pembelajaran untuk seberapa
pelajar mengenai analisa kebutuhan belajar. Alangkah baiknya, bila
rencana pembelajaran atau training plan dapat diikutsertakan dalam LMS.
Jadi, berdasarkan rencana pembelajaran, LMS secara otomatis
merekomendasikan program pembelajaran yang sesuai dan mengatur
jadwalnya. Jadi, pelajar dapat melihat materi pembelajaran yang dia
butuhkan melalui LMS, kapan dia bisa mengikuti dan harus
menyelesaikan.
8. Integrasi
Dalam suatu organisasi, ada beberapa system komputer. LMS yang baik
dapat berkomunikasi dan berintegrasi dengan system – system yang ada.
Integrasi dengan system SDM adalah hal yang vital. Dengan integrasi
yang baik, LMS akan mendapatkan daftar informasi karyawan terbaru dari
system SDM yang sudah ada. Jadi, apabila pada system SDM terdapat
perubahan data karyawan, penambahan karyawan baru atau karyawan
yang keluar, maka informasi dapat digunakan untuk memperbaharui data
pelatihan terkait.
Selain kedelapan fungsi dasar, kita dapat menambahkan fungsi-fungsi
penunjang lain, misalnya forum diskusi atau chatroom agar pelajar dan pengajar
2.2.2. Metode / Algoritma 2.2.2.1. Text Preprocessing
Text Preprocessing adalah langkah awal sebelum dilakukan sebuah
pencocokan pada sting. Tindakan yang dilakukan pada tahap ini adalah:
1. toLowerCase / case folding, yaitu mengubah semua karakter huruf
menjadi huruf kecil,
2. Menghilangkan delimiter-delimiter seperti tanda titik(.), koma(,), spasi dan
karakter angka yang ada pada kata tersebut
3. Hapus kata umum (stopword).
4. Tokenizing yaitu pemotongan string dalam teks berdasarkan kata yang
menyusunnya dan disimpan dalam sebuah variable array [3].
2.2.2.2. Algoritma Levenshtein Distance
Algoritma Levenshtein distance dibuat oleh Vladimir Levenshtein pada
tahun 1965. Algoritma levenshtein distance merupakan metrik yang digunakan
untuk mengukur perbedaan jarak antara dua sekuens. Perhitungan edit distance
didapatkan dari matriks yang digunakan untuk menghitung jumlah perbedaan
string antara dua string. Perhitungan jarak antara dua string ini ditentukan dari
jumlah minimum operasi perubahan untuk membuat string A menjadi string B.
Levenshtein distance antara dua string ditentukan berdasarkan jumlah minimum
perubahan/pengeditan yang dibutuhkan untuk melakukan transformasi dari satu
bentuk string ke string yang lain. Ada 3 macam operasi utama yang dapat
dilakukan oleh algoritma levenshtein distance yaitu:
a.Operasi pengubahan karakter
Operasi pengubahan karakter merupakan operasi menukar sebuah
karakter dengan karakter lain. Contohnya penulisan string “informatica” menjadi “informatika”. Dalam kasus ini karakter ‘c’ diganti dengan huruf ‘k’.
b.Operasi penambahan karakter
Operasi penambahan karakter berarti mengambahakan karakter ke dalam
karakter ‘o’ setalah karakter ‘r’ untuk membentuk string “informatika”. Penambahan karakter tidak hanya dilakukan dengan menyisipkan
ditengah-tengah string, tapi juga bisa ditambahkan diawal atau diakhir
string.
c.Operasi penghapusan karakter
Operasi penghapusan karakter dilakukan untuk menghilangkan karakter
dari suatu string. Contohnya string “informatikar”, karakter terkhir dihilangkan sehingga menjadi string “informatika”. Pada operasi ini dilakukan operasi penghapusan karakter ‘r’. [4]
Contoh :
1. Jika a adalah “informatika” dan b adalah “informatika”, maka
LD(a,b) = 0, karena tidak ada transformasi yang dibutuhkan. Kedua
string adalah identik.
2. Jika a adalah “informatika” dan b adalah “infrmatika”, maka
LD(a,b) = 1, karena dibutuhkan satu insert (menambahkan ‘o’)
dicukupkan untuk menstransformasikan string a menjadi string b.
Perhitungan harga pengeditan pada setiap operasi yang dilakukan adalah
sesuai dengan aturan berikut:
1. d(a,ԑ) = 1 harga untuk menghapus substring a
2. d(ԑ,a) = 1 harga untuk penyisipan substring a
3. d(a,a) = 1 harga untuk substitusi substring a ke substring b
4. d(a,a) = 0
Semakin besar nilai yang dihasilkan oleh operasi levenshtein distance
maka semakin besar pula perbedaan di antara kedua string tersebut. Penggunaan
levenshtein distance terbatas pada penentuan kemiripan dua buah string dilihat
dari posisi huruf-huruf yang ada di kedua kata.
jawaban terlihat perbedaan pada string “makhluk” dengan “makluk”, maka salah salah satu string jawaban siswa tersebut berjarak 1 dari string kunci jawaban.
Jarak tersebut secara persentase bernilai 14% dari ukuran string “makluk”
sehingga kemiripan relatif dari string tersebut dengan salah satu string kunci
jawaban adalah 86%.
2.2.2.3. Latent Semantic Analysis
Latent Semantic Analysis (LSA) adalah suatu metode untuk mengekstrak
sebuah tulisan dalam suatu dokumen dan kemudian mengaplikasikannya dalam
perhitungan matematis. Penilaian dengan metode LSA lebih kepada kata-kata
yang ada dalam tulisan tanpa memperhatikan urutan kata dan tata bahasa dalam
tulisan tersebut, sehingga suatu kalimat yang dinilai adalah berdasarkan kata-kata
kunci yang ada pada kalimat tersebut.[5]
Untuk menghitung nilai jawaban essay menggunakan metode LSA,
caranya adalah dengan cara membuat sebuah dokumen essay yang menjadi acuan
(query) atau kunci jawaban dan kemudian essay yang akan dinilai dibandingkan
dengan esai acuan jawaban, semakin banayak kemiripannya maka semakin besar
nilai jawabannya.
Langkah-langkah pemeriksaan essay dengan metode LSA adalah
pertama-tama tulisan direpresentasikan ke dalam matriks dimana baris matriks
menunjukkan kata-kata kunci (queries) pada dokumen tersebut dan setiap kolom
menunjukkan kolom dokumen. Setiap sel menunjukkan banyaknya kemunculan
kata kunci yang berada pada matriks pada dokumen yang ada di kolom matriks.
Kemudian isi dari sel tersebut terlebih dahulu ditransformasikan dimana setiap
frekuensi kata dibobotkan dengan sebuah fungsi yang menunjukkan pentingnya
sebuah kalimat dalam paragraph dan juga derajat yang menunjukkan seberapa
pentingnya tipe kata didalam suatu kalimat.
Langkah selanjutnya adalah dilakukan dekomposisi Singular Value
Decomposition (SVD) pada matriks kata-dokumen. Pada SVD matriks memuat
frekuensi pemunculan kata kunci di dekomposisi menjadi tiga buah matriks yang
asalnya. Matriks pertamanya mendeskripsikan entitas kolom sebagai nilai vektor
orthogonal matriks. Matriks keduanya berupa matriks diagonal yang memuat nilai
skalar matriks. Secara matematis, faktor yang paling baik adalah menggunakan
dimensi terkecil dari matriks awalnya, sehingga rekonstruksi matriks terbaik
dihasilkan pada saat nilai faktor lebih kecil dari jumlah faktor yang digunakan.
Dimensi dari matriks yang telah disederhanakan dengan menghapus
koefisien pada matriks diagonal sebanyak yang diinginkan sampai tersisa
koefisien sebanyak dimensi yang terpilih. Tujuan penyederhanaan ini adalah agar
terbentuk matriks yang memuat nilai korelasi yang diinginkan ketika tiga buah
matriks direkonstruksi. Kemudian penilaian akan dilakukan dengan
membandingkan matriks korelasi dari query dengan matriks korelasi dari setiap dokumen dengan menggunakan perhitungan cosinus α.
Untuk lebih memahami proses ini lebih jelas, berikut ini adalah contoh
yang biasa digunakan. Pada gambar 2.2 dapat dilihat beberapa kalimat yang
terdiri dari dua tema.
Gambar 2.2 Contoh Kalimat dan Kata Kunci
Dari contoh pada gambar 2.2 ada sembilan kalimat dengan lima kalimat
pertama bertema human computer interaction (kalimat c1 sampi c5), dan empat
kalimat selanjutnya bertema mathematical graph theory (kalimat m1 sampai m4).
Syarat sebuah kata menjadi kata kunci pada paragraf ini adalah setidaknya sebuah Technical Memo Example
Titles:
c1: Human machine interface for Lab ABC computer applications c2: A survey of user opinion of computer system response time
c3: The EPS user interface management system
c4: System and human system engineering testing of EPS
c5: Relation of user-perceived response time to error measurement
m1: The generation of random, binary, unordered trees
m2: The intersection graph of paths in trees
kata harus muncul minimal 2 kali dalam queries. Pentransformasian kata-kata
diatas menjadi sebuah matriks A ditunjukkan pada tabel 2.1.
Tabel 2.1. Transformasi Matriks Kemunculan Kata Kunci Pada Susunan Kalimat dalam Gambar 2.2
C1 C2 C3 C4 C5 M1 M2 M3 M4
Dekomposisi matriks pada tabel 2.1. SVD merepresentasikan semantic
space ke dalam bentuk matriks yang memiliki orde lebih kecil dibandingkan orde
matriks aslinya, namun perhitungan matriks tetap menghasilkan matriks yang
bernilai hampir sama. SVD merupakan teorema aljabar linear yang dikatakan
mampu memecah blok suatu matriks A menjadi tiga matriks baru, yaitu sebuah
matriks orthogonal U, Matriks diagonal S, dan Transpose Matriks orthogonal V.
Teorema SVD adalah sebagai berikut :
A
mn= U
mmx S
mnx V
Tnn ...(2-3)Dimana UTU=I, VTV=I. Kolom matriks U merupakan Eigenvektor Orthonormal dari AAT, sedangkan kolom matriks V merupakan Eigenvektor Orthonormal dari ATA, dan S merupakan matriks diagonal akar dari nilai eigen dari matriks U atau V dalam urutan dari yang terbesar (Descending order).
ditunjukkan pada tabel 2-2.
Tabel 2.2. Matriks U sebagai komponen matriks A
0.22 -0.11 0.29 -0.41 -0.11 -0.34 0.52 -0.06 -0.41
Sedangkan matriks kedua berupa matriks diagonal yang memuat nilai
skalar matriks didapat dari akar kuadrat dari nilai eigen matriks ATA dan disebut sebagai matriks S. Matriks S dari hasil perhitungan untuk contoh pada gambar 2.2
ditunjukkan pada tabel 2.3. Untuk matriks terakhir cara mencarinya sama dengan
matriks pertama, yang menjadi perbedaan adalah yang dicari matriks AAT bukan ATA, dan matriks ini disebut sebagai matriks V Matriks V dari hasil perhitungan untuk contoh pada gambar 2.2ditunjukkan pada tabel 2-4.
Tabel 2.3. Matriks S sebagai komponen dari matriks A
Tabel 2.4. Matriks V sebagai komponen vektor orthogonal transpose
Reduce matriks dipilih sebesar k dimensi dalam contoh ini k = 2, sehingga
matriks komponen S hanya menyisakan nilai seperti pada Tabel 2.5, kemudian
komponen U, S yang disederhanakan, dan V dikalikan kembali untuk mendapat
matriks Ak yang merupakan matriks rekonstruksi A. Hasilnya adalah seperti tabel yang ditunjukkan oleh tabel 2.5.
Matriks Ak tidak sama dengan matriks A yang asli. Matriks Ak hanyalah sebuah pendekatan atau aproksimasi A pada faktor k. SVD yang dilakukan setelah
penyederhanaan mengambil sebagian besar struktur penting yang terdapat pada
korelasi kata kunci dan dokumen. Pada saat yang sama juga menghilangkan
variabilitas penggunaan kata yang menjadi gangguan utama. Selama nilai dari k
jauh lebih kecil dari banyaknya kata kunci maka perbedaan minor dalam
terminologi dapat diabaikan. Kata-kata kunci yang terdapat dalam kalimat yang
sama, akan berdekatan satu sama lain dalam ruang k walaupun kata kunci itu tidak
pernah muncul bersamaan lagi pada kalimat yang sama. Hal ini berarti beberapa
kalimat yang tidak memiliki satupun kata kunci yang sama, maka dia tidak akan
mendekati saling berhubungan dalam ruang-k.
2.2.2.4. Penilaian Essay
Query yang merupakan kata kunci dari kunci jawaban dapat
direpresentasikan sebagai vektor dalam ruang-k. Vektor inilah yang kemudian
dibandingkan dengan vektor-vektor jawaban essay siswa (dokumen) untuk
selanjutkan dinilai kemiripannya. Sebuah query seperti halnya dokumen,
merupakan kumpulan dari kata-kata. Query dapat representasikan sebagai
...(2-4)
Seperti vektor query, vektor dokumen direpresentasikan sebagai
...(2-5)
Matriks q adalah matriks satu kolom yang elemennya berisi jumlah kata
kunci dalam query. Sementara matriks d adalah matriks satu kolom. Elemennya
berisi nilai kemunculan kata kunci dalam dokumen. Matriks d sama dengan kolom
dikorelasikan dengan semua vektor dokumen yang ada. Teknik korelasi yang
umum digunakan adalah dengan mencari nilai kemiripan kosinus yang dibentuk
antara vektor query dan vektor dokumen. Korelasi kosinus antara vektor query
dan vektor dokumen diberikan oleh persamaan
...(2-6)
α adalah sudut diantara kedua vektor tersebut. Jadi, nilai korelasi adalah perhitungan sudut berdasarkan kosinus antara q dan d. Jika dilakukan penilaian
dari jawaban siswa yang paling besar ke paling kecil nilainya, maka jawaban yang paling besar nilainya adalah yang memiliki sudut α dengan yang paling kecil.
2.2.3. Konsep Perancangan Sistem
Dalam perancangan system yang akan dibangun, perlu adanya
perencanaan pengolahan data dimana semua data disimpan ke dalam sebuah
database agar seluruh data saling berelasi.
2.2.3.1. Basis Data
Basis data (database) adalah kumpulan dari berbagai data yang saling
berhubungan satu dengan yang lainnya dan dapat diakses dengan mudah dan
cepat. Basis data tersimpan di perangkat keras, serta dimanipulasi dengan
menggunakan perangkat lunak. Pendefinisian basis data meliputi spesifikasi dari
tipe data, struktur dan batasan dari data atau informasi yang akan disimpan.
Database merupakan salah satu komponen yang penting dalam sistem informasi,
karena merupakan basis dalam menyediakan informasi pada para user atau user.
Data diartikan sebagai representasi fakta dunia nyata yang mewakili suatu objek
seperti manusia, barang, hewan, konsep, dan lain-lain. Terdapat sejumlah sudut
pandang pengertian basis data, yaitu:
1. Himpunan kelompok data (arsip) yang saling berhubungan yang
kembali dengan cepat dan mudah.
2. Kumpulan data yang saling berhubungan yang disimpan secara
bersama sedemikian rupa dan tanpa pengquiz (redudansi) yang tidak
perlu, untuk memenuhi berbagai kebutuhan.
3. Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan
dalam media penyimpanan elektronik.
Penyusunan basis data meliputi proses memasukkan data kedalam media
penyimpanan data dan diatur dengan menggunakan perangkat Sistem Manajemen
Basis Data (Database Management System DBMS). Manipulasi basis data
meliputi pembuatan pernyataan (query) untuk mendapatkan informasi tertentu,
melakukan pembaharuan atau penggantian (update) data, serta pembuatan report
data. Dalam sebuah media penyimpanan, basis data dapat diciptakan maupun
dihilangkan. Dalam sebuah basis data terdiri atas dua atau lebih tabel yang saling
berhubungan. Dalam operasi basis data, tabel-tabel tersebut dapat diciptakan dan
dapat dihilangkan juga.
Elemen Basis Data terdiri dari :
1. Entitas adalah sekumpulan objek yang terdefinisikan yang
mempunyai karakteristik sama dan bisa dibedakan satu dengan
lainnya. Objek dapat berupa barang, orang, tempat atau suatu
kejadian.
2. Atribut adalah deskripsi data yang bisa mengidentifikasi entitas
yang membedakan entitas tersebut dengan entitas yang lain.
Seluruh atribut harus cukup untuk menyatakan identitas obyek,
atau dengan kata lain kumpulan atribut dari setiap entitas dapat
mengidentifikasi keunikan suatu individu.
3. Data value (nilai data) adalah data aktual atau informasi yang
disimpan pada tiap data, elemen atau atribut. Atribut nama pegawai
menunjukan tempat dimana informasi nama karyawan disimpan.
4. File/Tabel merupakan kumpulan record sejenis yang mempunyai
panjang elemen yang sama, atribut yang sama, namun berbeda nilai
5. Record/Tuple merupakan kumpulan elemen-elemen yang saling
berkaitan menginformasikan tentang suatu entitas secara lengkap.
Satu record mewakili satu data atau informasi.
2.2.3.2. Flowmap
Flowmap adalah campuran peta dan flowchart, yang menunjukkan
pergerakan benda dari satu lokasi ke lokasi lain, seperti jumlah orang dalam
migrasi, jumlah barang yang diperdagangkan, atau jumlah paket dalam jaringan.
Flowmap menolong analis dan programmer untuk memecahkan masalah kedalam
segmen-segmen yang lebih kecil dan menolong dalam menganalisis
alternatif-alternatif lain dalam pengoperasian, yang akan dijelaskan dalam tabel.
2.2.3.3. Entity Relationship Diagram (ERD)
ERD dikembangkan berdasarkan teori himpunan dalam bidang
matematika. ERD digunakan untuk pemodelan basis data relasional. Sehingga jika
penyimpanan basis data menggunakan OODBMS maka perancangan basis data
tidak perlu menggunakan ERD. ERD memiliki beberapa aliran notasi seperti
notasi chen (dikembangkan oleh Peter Chen), Barker (dikembangkan oleh Richard Barker, Ian Palmer, Harry Ellis), notasi Crow’s Foot, dan beberapa notasi lain. Namun yang banyak digunakan adalah notasi chen.
Pada model Entity-Relationship Diagram, semesta data yang ada di dunia
nyata diterjemahkan/ditranformasikan dengan memanfaatkan sejumlah perangkat
konseptual menjadi sebuah diagram data, yang umum disebut sebagai Diagram
Entity-Relationship [6]. Berikut adalah simbol-simbol yang digunakan pada ERD
Tabel 2.6. Simbol-simbol pada ERD
Simbol Deskripsi
Entitas / Entity Entitas merupakan data inti yang akan
disimpan; bakal tabel pada basis data; benda yang memiliki data dan harus disimpan datanya agar dapat diakses oleh aplikasi komputer; penamaan entitas biasanya lebih ke kata benda dan belum merupakan nama tabel
Atribut Field atau kolom data yang butuh disimpan dalam suatu entitas
Atribut Kunci Primer Field atau kolom data yang butuh disimpan dalam suatu entitas dan digunakan sebagai kunci akses record yang diinginkan; biasanya berupa id; kunci primer dapat lebih dari satu kolom, asalkan kombinasi dari beberapa kolom tersebut dapat bersifat unik (berbeda tanpa ada yang sama)
Atribut Multinilai / Multivalue Field atau kolom data yang butuh disimpan dalam suatu entitas yang dapat memiliki nilai lebih dari satu
Relasi Relasi yang menghubungkan antar
entitas; biasanya diawali dengan kata kerja
Asosiasi / Association Penghubung antara relasi dan entitas dimana di kedua ujungnya memiliki multiplicity kemungkinan jumlah pemakaian
Kemungkinan jumlah maksimum keterhubungan antara entitas satu dengan entitas yang lain disebut dengan kardinalitas.
ERD biasanya memiliki hubungan binary (satu relasi menghubungkan
dua buah entitas). Beberapa metode perancangan ERD menoleransi hubungan
relasi ternary (satu relasi menghubungkan tiga buah entitas) atau N-ary (satu
relasi menghubungkan banyak entitas), tetapi banyak metode perancangan ERD
2.2.3.4. Data Flow Diagram (DFD)
Data Flow Diagram (DFD) awalnya dikembangkan oleh Chris Gane dan
Trish Sarson pada tahun 1979 yang termasuk dalam Structured System Analysis
and Design Methodology (SSADM) yang ditulis oleh Chris Gane dan Trish
Sarson [6].
Pada tahun 1980-an Edward Yourdon dan Tom Demarco
memperkenalkan metode yang berbeda, dimana dengan mengubah persegi dengan
sudut lengkung (pada DFD Chris Gane dan Trish Sarson) dengan lingkaran untuk
menotasikan. DFD Edward Yourdon dan Tom Demarco popular digunakan
sebagai model analisis sistem perangkat lunak yang akan diimplementasikan
dengan pemrograman terstruktur.
Data Flow Diagram atau pemodelan aliran data adalah aktivitas pemodelan
inti pada analisis terstruktur. DFD memperlihatkan gambaran tentang
masukan-proses-keluaran dari suatu perangkat lunak. Yaitu, objek-objek data mengalir ke
dalam perangkat lunak, kemudian objek-objek data itu akan ditransformasi oleh
elemen-elemen pemrosesan, dan objek-objek data hasilnya akan mengalir keluar dari
sistem/perangkat lunak.
DFD yang pertama (DFD peringkat 0 atau diagram konteks)
menggambarkan sistem secara keseluruhan. DFD-DFD berikutnya sesungguhnya
merupakan penghalusan dari diagram konteks, memberikan gambaran yang semakin
rinci dari diagram konteks, dan hal ini akan berlanjut ke peringkat-peringkat
selanjutnya [7].
DFD tidak sesuai untuk memodelkan sistem perangkat lunak yang akan
dibangun menggunakan pemrograman berorientasi objek. Paradigma pemrograman
terstruktur dan pemrograman berorientasi objek merupakan hal yang berbeda.
Tabel 2.7. Notasi-notasi pada DFD
Simbol Deskripsi
Proses atau fungsi atau prosedur; pada pemodelan perangkat lunak yang akan diimplementasikan dengan pemrograman terstruktur, maka pemodelan notasi inilah yang harusnya menjadi fungsi atau prosedur di dalam kode program.
File atau basisdata atau penyimpanan (storage); pada pemodelan perangkat lunak yang akan diimplementasikan dengan pemrograman terstruktur, maka pemodelan notasi inilah yang harusnya dibuat menjadi tabel-tabel basis data yang dibutuhkan, tabel-tabel ini juga harus sesuai dengan perancangan tabel-tabel pada basis data (Entity Relationship Diagram (ERD))
Entitas luar (external entity) atau masukan (input) atau keluaran (output) atau orang yang memakai/berinteraksi dengan perangkat lunak yang dimodelkan atau sistem lain yang terkait dengan aliran data dari sistem yang dimodelkan.
Aliran data; marupakan data yang dikirim antar proses, dari penyimpanan ke proses, atau dari proses ke masukan (input) atau keluaran (output).
Pada satu diagram DFD sebaiknya jumlah modul tidak boleh melebihi 20
buah. Jika lebih dari 20 buah modul, diagram akan terlihat rumit atau susah untuk
dibaca sehingga menyebabkan sistem yang dikembangkan juga menjadi rumit [6].
2.2.4. Pengembangan Perangkat Lunak 2.2.4.1. Personal Home Page (PHP)
PHP adalah kombinasi antara bahasa pemograman dan aplikasi server [8].
PHP merupakan server-side scripting yang digunakan untuk membuat dan
menjalankan aplikasi web server yang dinamis, interaktif dan mempunyai
performasi tinggi. Aplikasi server adalah program yang terdiri atas teknik-teknik
1. Ketangguhan bahasa pemograman
2. Pengaksesan basis data ke media penyimpanan yang permanent.
3. Mendukung internet protocol, khususnya HTTP dan e-mail.
PHP mampu berhubungan dengan basis data dan dapat diintegrasikan
dengan HTML. PHP dapat berjalan dalam web server yang berbeda dalam sistem
operasi yang berbeda pula. PHP ditulis dalam bahasa C, sehingga sebagian besar
sintak PHP mirip dengan C dan perl. Beberapa keuntungan menggunakan PHP
adalah sebagai berikut :
1. Open source, semua source PHP tersedia.
2. PHP diterbitkan secara gratis, tidak ada biaya dalam
mengimplementasikan.
3. Cross-platform, PHP dapat berjalan dalam sistem operasi Windows
98, Windows NT dan Macintosh.
4. PHP juga dapat berjalan pada server Microsoft Personal Web Server,
IIS dan Aphace.
5. Embedded-html, karena itu PHP mudah dipelajari.
2.2.4.2. Database Management System (DBMS)
DBMS (Database Management System) adalah suatu system aplikasi
yang digunakan untuk menyimpan, mengelola dan menampilkan data. suatu
system aplikasi disebut DBMS jika memenuhi persyaratan minimal sebagai
berikut:
a.Menyediakan fasilitas untuk mengelola akses data
b.Mampu menangani integritas data
c.Mampu menangani akses data secara bersamaan
DBMS sudah mulai berkembang sejak tahun 1960an. Kemudian sekitar
tahun 1970an mulai berkembang teknologi Relational DBMS yaitu DBMS
berbasis relasional model. Relasional model pertama kali dikembangkan oleh
Edgar J. Codd pada tahun 1970. Secara sederhana relasional dapat dipahami
sebagai suatu model yang memandang data sebagai sekumpulan tabel yang saling
terkait. Hampir semua DBMS komersial dan open source saat ini berbasis
Relastional DBMS.
Pada tahun 1980an mulai berkembang Object Oriented DBMS
(OODBMS). OODBMS berkembang seiring dengan perkembangan teknologi
pemrograman berorientasi objek. Saat ini OODBMS juga cukup berkembang
namun belum menggeser kepopuleran RDBMS.
MySQL adalah perangkat lunak DBMS atau server basis data yang dapat
melayani banyak pengguna, dan dapat melakukan proses dalam waktu yang
bersamaan (multi threaded). MySQL juga sangat cepat dan fleksibel dan dapat
menyimpan data yang berkapasitas besar. Dalam perancangannya, MySQL
mengutamakan kecepatan proses, ketangguhan dan kemudahan bagi
penggunanya.
Pada saat ini MySQL adalah server basis data yang paling banyak diminati
oleh banyak perusahaan di dunia. MySQL menyediakan lingkungan yang mudah
dan efisien untuk menyimpan data dan mengakses basis data berkapasitas besar
lebih cepat dari pada server basis data lainnya. Keuntungan lainnya adalah bahwa
MySQL server tidak membutuhkan spesifikasi hardware yang mahal.
MySQL server memungkinkan membuat aplikasi client untuk mengakses
dan memanipulasi data di server basis data melalui basis data provider.
Keuntungan utama menggunakan MySQL server adalah mudah digunakan,
berkecepatan tinggi dan membutuhkan sedikit memori serta tidak membutuhkan
2.2.4.3. Dreamweaver
Macromedia Dreamweaver adalah program editor HTML professional untuk mendesain, mengkode dan mengembangkan situs, halaman web, serta
aplikasi web. Tampilan fitur editing dalam Dreamweaver akan membantu dalam
membuat sebuah halaman web tanpa harus menuliskan kode java script maupun
HTML. Dreamweaver juga dapat membantu dalam membangun dinamik database
untuk aplikasi web dengan menggunakan server seperti ASP, ASPNet,
ColdFusion Markup Language (CFML), JSP dan PHP.
2.2.4.4. Web Browser
Browser web adalah software yang digunakan untuk menampilkan
informasi dari server web. Software ini kini telah dikembangkan dengan
menggunakan user interface grafis, sehingga pemakai dapat melakukan point dan
click untuk pindah dokumen. Dapat dikatakan saat ini hanya ada 2 browser GUI
yang popular, yaitu Intenet Explorer dan Netscape Navigator [9].
2.2.4.5. Jama PHP
Selain MATLAB, aplikasi matematis web based yang bisa digunakan
untuk penghitungan SVD adalah JAMA. JAMA adalah singkatan dari Java
Matrix. JAMA merupakan script php untuk perhitungan matriks kompleks.
Class-class dari package JAMA akan sering digunakan dalam operasi matriks seperti
perkalian matriks, transpose, dan inverse. Karena JAMA hanya merupakan script
PHP bukan merupakan aplikasi maka kinerja server-pun tidak akan terlalu
33
ada untuk mempermudah mengetahui kelemahan sistem yang sedang berjalan.
Setelah itu akan dibahas mengenai perancangan sistem yang akan dikembangkan
sebagai usulan sistem baru untuk memperbaiki sistem yang sudah ada sekaligus
untuk memenuhi permintaan dari pihak SMP Negeri 1 Cimahi.
3.1. Analisis Sistem
Kegiatan analisis sistem adalah kegiatan untuk melihat sistem yang sudah
berjalan, melihat bagian mana yang bagus dan tidak bagus dengan maksud untuk
mengidentifikasikan permasalahan-permasalahan, kebutuhan-kebutuhan yang
diharapkan dan kemudian mendokumentasikan kebutuhan yang akan dipenuhi
sehingga dapat diusulkan perbaikan-perbaikan pada sistemnya. Di dalam analisis
sistem terdapat analisis masalah, analisis sedang berjalan, spesifikasi kebutuhan
perangkat lunak, analisis kebutuhan non-fungsional, analisis data, analisis
kebutuhan fungsional, spesifikasi proses, dan kamus data DFD.
3.1.1. Analisis Masalah
Berdasarkan latar belakang masalah yang ada, yang menjadi titik
permasalahan dalam penelitian ini adalah sebagai berikut :
1. Belum adanya ujian online berbentuk essay dan pengoreksian secara
otomatis oleh sistem.
2. Pengoreksian soal essay dilakukan secara manual yang membutuhkan
waktu yang tidak singkat dengan kemungkinan kesalahan dalam
mengoreksi.
3.1.2. Analisis Sistem yang Sedang Berjalan
Berdasarkan hasil penelitian yang dilakukan di SMP Negeri 1 Cimahi,
maka dapat digambarkan prosedur sistem ujian yang sedang berjalan kedalam
bentuk flowmap diagram sebagai berikut:
1. Guru memberikan soal ujian kepada siswa.
3. Guru menyerahkan soal yang sudah dikerjakan.
4. Guru mengoreksi jawaban ujian yang sudah dikerjakan oleh siswa.
5. Hasil ujian siswa digandakan oleh guru sebagai arsip.
6. Siswa menerima hasil ujian.
Gambar 3.1. Flowmap sistem yang sedang berjalan
3.1.3. Analisis Metode/Algoritma
Sistem yang akan dikembangkan adalah sebuah sistem pengoreksian soal
essay yang bertujuan untuk melakukan penilaian otomatis terhadap jawaban essay
siswa. Pengoreksian essay yang dikembangkan hanya sebatas soal dengan
jawaban definitif bukan opini ataupun deskriptif. Langkah yang ada dalam sistem
antara lain:
Dimisalkan kunci jawaban guru adalah “Kemampuan mata untuk mencembungkan dan memipihkan lensa mata saat melihat objek” dan jawaban
siswa adalah “Daya kemampuan mata untuk menebalkan dan memipihkan lensa
mta saat melihat objek”. Berikut langkah-langkah pengoreksian soal essay :
1. Text prepocessing
Text processing merupakan langkah awal sebelum melakukan tahapan
pencocokan string. Berikut langkah-langkahnya:
a.Case folding yaitu dengan menjadikan semua huruf baik kunci jawaban
dan jawaban siswa menjadi huruf kecil terlebih dahulu.
b.Filtering yaitu penghapusan kata-kata umum pada kalimat kunci dan
jawaban siswa yang berupa stopwords, seperti “dan”, “jika”, “adalah”,
”merupakan”, “namun”, “tetapi”, “yang” dan sebagainya dan juga
Gambar 3.3. subproses text preprocessing
hilangkan stoplist seperti tanda titik, tanda koma, tanda seru, dan
sebagainya.
c.Tokenizing yaitu pemotongan string dalam teks berdasarkan kata yang
menyusunnya dan disimpan dalam sebuah variable array.
2. Periksa kata pada kunci dengan jawaban menggunakan levenshtein
Penggunaan algoritma levenshtein adalah untuk menangani kesalahan
penulisan salah satu kata oleh siswa. Disini jawaban siswa yang salah dalam
penulisan diberikan toleransi jika jarak levenshtein <= 1, sehingga tidak
disalahkan jawabannya.
Misalkan pada jawaban siswa “daya kemampuan mata untuk menebalkan dan memipihkan lensa mta saat melihat objek”, setelah melewati proses tokenizing dan masing-masing kata disimpan dalam suatu variabel array.
Kemudian untuk mengetahui jarak kedekatan antara bentuk kata pada array
masukan (jawaban siswa) dengan bentuk kata pada array pattern (kunci jawaban)
dilakukan proses algoritma levenshtein distance.
Berikut algoritma pencocokannya :
1. Cocokkan kata jawaban yang sudah diexplode (dipotong) dengan kata
kunci yang sudah dipotong juga.
contoh: Kunci : kemampuan mata untuk mencembungkan dan
memipihkan lensa mata saat melihat objek.
Jawaban: daya kemampuan mata untuk menebalkan dan
memipihkan lensa mta saat melihat objek.
jika ditemukan kata yang tidak ada pada explode kunci, dihitung
jaraknya terlebih dahulu ke masing-masing kata pada explodekunci.
2. jika jarak yang ditemukan = 1, maka kata tersebut dianggap benar
(sama dengan kata pada kunci jawaban guru).
3. jika jarak yang ditemukan > 1, maka kata tersebut dianggap salah. dan
Disini ditemukan string dengan nilai levenshtein 1 yaitu pada salah satu string
jawaban siswa pada string ”mta” ( array_jawaban[8]) = “mta” ) yang akan
dikomparasi dengan salah satu string kunci jawaban guru yaitu “mata”.
Diasumsikan kata yang lain dalam kalimat sudah benar.
Berikut adalah proses pada algoritma levenshtein distance :
1) Buat matriks s[x], t[y] dimana s[x]= (panjangkunci+1) X t[y]=
(panjangjawaban+1).
2) Inisialisasi s[x] pertama (0..i), dimana i = panjang kata “mata”
3) Inisialisasi t[y] pertama (0..j), dimana j = panjang kata “mta”
m a t a
0 1 2 3 4
m 1
t 2
a 3
Gambar 3.6 inisialisasi matriks (i+1) X (j+1)
4) Untuk u:=1 to x.
5) Untuk p:=1 to y.
6) Melakukan proses pencocokan dengan membandingkan setiap karakter pada string “mata” dangan setiap karakter pada string “mta”.
7) Jika nilai i = 0, maka nilai cell [0,j] = j.
8) Jika nilai j = 0, maka nilai cell [i,0] = i.
9) Jika karakter s[u] = t[p] maka beri nilai 0.
10)Jika karakter s[u] ≠ t[p] maka beri nilai 1.
11)Tentukan nilai cell [x , y] dengan memasukkan nilai terkecil dari :
b. Nilai cell [x-1 , y] + 1
c. Nilai cell [x , y-1] + 1
m a t a
0 1 2 3 4
m 1 0
t 2 1
a 3 2
Gambar 3.7 Tabel matriks Levenshtein Distance iterasi (1,1), (1,2), (1,3)
m a t a
0 1 2 3 4
m 1 0 1
t 2 1 2
a 3 2 1
Gambar 3.8 Tabel matriks Levenshtein Distance iterasi (2,1), (2,2), (2,3)
m a t a
0 1 2 3 4
m 1 0 1 2
t 2 1 2 1
a 3 2 1 2
m a t a
0 1 2 3 4
m 1 0 1 2 3
t 2 1 2 1 2
a 3 2 1 2 1
Gambar 3.10 Tabel matriks Levenshtein Distance iterasi (4,1), (4,2), (4,3)
Dapat disimpulkan bahwa string “mata” dan “mta” memiliki jarak bernilai 1, yaitu transformasi berupa insertion atau penambahan karakter. Kemudian string
“mta” pada string jawaban siswa diganti dengan “mata” karena tidak memiliki
jarak yang terlalu jauh.
3. Koreksi essay menggunakan Latent Semantic Analysis
Dalam penilaian digunakan algoritma Latent Semantic Analysis (LSA),
Langkah-langkah kinerja algoritma LSA adalah sebagai berikut :
Misalkan:
Kunci Jawaban :
kemampuan mata untuk mencembungkan dan memipihkan lensa mata saat
melihat objek.
Jawaban :
1. kemampuan mata untuk mencembungkan atau memipihkan lensa mata
2. daya kemampuan mata untuk menebalkan dan memipihkan lensa mata saat
melihat objek