Terancangan aplikasi simulasi toefl (test of english as foreign language)

(1)

Skripssi S

Sebagai Salaah Satu Syaarat Memperroleh Gelarr Sarjana Koomputer Pada Fakkultas Sainss dan Teknoologi

Univerrsitas Islamm Negeri Syaarif Hidayattullah Jakarrta

T

TONI PARWWANTO 1060910002888

PROGR

RAM STU

UDI TEKN

NIK INFO

ORMATIK

KA

FAK

KULTAS SAINS D

DAN TEKN

NOLOGI

UNIV

VERSITAS ISLAM

M NEGERII SYARIF

F HIDAYA

ATULLAH

H

JAKAR

RTA

2


(2)

(3)

(4)

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.

Jakarta, 23 November 2011

TONI PARWANTO 106091002888

iv  


(5)

Perkembangan teknologi internet sangat pesat dewasa ini. Internet telah banyak memberikan kemudahan bagi pengguna dalam mengakses informasi. Salah satu bagian dari teknologi internet adalah web. Web selain berfungsi sebagai media informasi, juga dapat dijadikan sebagai media pembelajaran. Test Of English as

Foreign Language (TOEFL) merupakan sebuah tes yang mengukur kemampuan

bahasa Inggris seseorang. Tes ini menguji kemampuan dalam listening, stucture,

dan reading. Bagi mahasiswa UIN Syarif Hidayatullah, tes TOEFL menjadi

persyaratan yang wajib diikuti, yaitu sebagai persyaratan masuk dan persyaratan kelulusan. Tes TOEFL di UIN Syarif Hidayatullah diselenggarakan oleh Pusat Bahasa. Pihak Pusat Bahasa menyediakan fasilitas modul dan kursus bagi calon peserta tes, tetapi untuk mendapatkan fasilitas ini membutuhkan biaya tambahan dan waktu sesuai dengan ketentuan. Sebagai alternatif, dibutuhkan suatu sarana pembelajaran yang bersifat hemat waktu (time saving), hemat biaya (cost

reduction) dan hemat tempat (space saving). Pemanfaatan kemajuan teknologi

internet dalam mengembangkan media pembelajaran dan simulasi TOEFL berbasis web dapat menjadi sebuah solusi. Aplikasi yang dirancang ini mampu memberikan sebuah simulasi tes TOEFL layaknya seperti tes yang akan dihadapi. Aplikasi ini merupakan aplikasi berbasis web yang dirancang menggunakan bahasa pemrograman PHP dengan basisdata MySQL. Dalam pengembangannya, aplikasi ini menggunakan metodologi Incremental Process Model, dimana metodologi ini berfokus pada penyampaian produk operasional pada setiap

increment. Increment awal adalah versi stripped-down dari produk akhir, tetapi

produk tersebut memberikan kemampuan yang melayani pengguna. Kata Kunci: Web, TOEFL, simulasi

Jumlah Halaman: xx + 87 Halaman + 23 Tabel + 21 Gambar + Lampiran Jumlah Pustaka: 23 sumber (2001 – 2011)

v  


(6)

KATA PENGANTAR

Bismillahirrahmanirrahim

Syukur alhamdulillah penulis panjatkan kehadirat Allah SWT atas berkat rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul: Perancangan Aplikasi Simulasi TOEFL (Test Of English as Foreign

Language). Shalawat dan salam selalu dilimpahkan kepada Nabi Muhammad

SAW, keluarga, para sahabat-sahabatnya yang telah mengenalkan Islam kepada seluruh umat manusia.

Ucapan terima kasih penulis peruntukkan kepada pihak-pihak yang telah memberi banyak bantuan baik dalam bentuk dukungan secara moral maupun materi selama penulis melaksanakan penelitian dalam rangka skripsi ini. Secara khusus penulis ingin menyampaikan terima kasih kepada:

1. Bapak Dr. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains dan Teknologi.

2. Bapak Yusuf Durachman, M.Sc, MIT selaku Ketua Program Studi Teknik Informatika.

3. Ibu Viva Arifin, MMSI selaku dosen pembimbing pertama yang telah memberikan dukungan baik secara moral maupun teknis.

4. Ibu Dr. Fahriany, M.Pd selaku dosen pembimbing kedua yang telah memberikan dukungan baik secara moral maupun teknis.

5. Ayahanda dan ibunda tercinta yang senantiasa memberikan dukungan, semangat dan doa demi kelancaran perkuliahan yg sedang di tempuh ini.

vi  


(7)

senantiasa mendampingi dan selalu memberikan dukungan, semangat serta doa.

8. Teman-teman seperjuangan, teman-teman kelas TI-B, TI-C (SE), serta seluruh teman-teman TI angkatan 2006.

9. Sahabat-sahabat Fosma 165 UIN Jakarta yang senantiasa berjuang demi tegaknya nilai-nilai Ihsan, Iman, dan Islam di bumi Allah ini.

Serta seluruh pihak yang telah membantu dan namanya tidak dapat disebutkan satu persatu. Terima kasih atas dukungan dan motivasinya, Semoga Allah SWT membalas segala kebaikan yang telah diberikan kepada penulis.

Penulis juga ingin menyampaikan permintaan maaf yang sebesar-besarnya apabila selama ini terdapat hal-hal yang kurang berkenan yang penulis lakukan. Kritik dan saran yang sifatnya membangun sangat penulis terima dengan tangan terbuka. Akhir kata, penulis berharap semoga skripsi ini dapat bermanfaat dalam pengembangan ilmu pengetahuan khususnya dalam bidang sains dan teknologi, Amin.

Jakarta, November 2011

Toni Parwanto

vii  


(8)

DAFTAR ISI

Halaman

HALAMAN JUDUL ... i

PERSETUJUAN PEMBIMBING ... ii

HALAMAN PENGESAHAN ... iii

HALAMAN PERNYATAAN ... iv

ABSTRAK ... v

KATA PENGANTAR . ... vi

DAFTAR ISI ... ix

DAFTAR GAMBAR ... . xv

DAFTAR TABEL ... xvii

DAFTAR LAMPIRAN... xix

DAFTAR ISTILAH ... xx

BAB I PENDAHULUAN 1.1. Latar Belakang Masalah ... 1

1.2. Perumusan Masalah ... 4

1.3. Batasan Masalah ... 4

viii  


(9)

1.4.2. Manfaat Penulisan ... 6

1.5. Metodologi Penelitian ... 7

1.5.1. Metodologi Pengumpulan Data ... 7

1.5.2. Metodologi Pengembangan Aplikasi ... 8

1.6. Sistematika Penulisan ... 7

BAB II LANDASAN TEORI 2.1. Aplikasi ... 10

2.2. Simulasi ... 10

2.2.1.Pengertian Simulasi ... 10

2.2.2.Jenis Simulasi ... 11

2.3. TOEFL ... 12

2.3.1.Pengertian TOEFL ... 12

2.3.2.Jenis TOEFL ... 13

2.3.2.1. Paper Based Test (PBT) ... 13

2.3.2.2 Computer Based Test (CBT) ... 14

ix  


(10)

2.3.2.3. Internet Based Test (iBT) ... 16

2.3.3. Institutional TOEFL ... 17

2.4. Konsep Web ... 17

2.4.1.Aplikasi Web ... 18

2.4.2. Teknologi Web ... 19

2.5. Konsep Dasar Database ... 21

2.5.1.Pengertian Database ... 21

2.5.2.DBMS (Database Management System) ... 21

2.5.3. Arsitektur Database ... 23

2.5.4. Bahasa Database ... 24

2.6. Bahasa Pemrograman ... 25

2.6.1.HTML ... 25

2.6.2.PHP ... 26

2.6.3.Javascript ... 27

2.6.4.CSS ... 28

2.6.5.MySQL ... 29

2.7. Perangkat Pemodelan ... 30

x  


(11)

2.7.3. STD (State Transition Diagram) ... 35

2.7.4. Kamus Data ... 37

2.8. Studi Sejenis ... 38

BAB III METODOLOGI PENELITIAN 3.1. Kerangka Berpikir ... 48

3.2. Metodologi Pengumpulan Data ... 49

3.2.1. Wawancara ... 49

3.2.2. Kuesioner ... 49

3.2.3. Studi Pustaka ... 51

3.3. Metodologi Pengembangan Aplikasi ... 51

3.3.1. Communication ... 52

3.3.2. Planning ... 53

3.3.3. Modelling ... 53

3.3.3.1. Perancangan Aplikasi ... 53

xi  


(12)

3.3.3.2. Perancangan Database ... 54

3.3.3.3. Perancangan Antarmuka ... 55

3.3.4. Construction ... 55

3.3.4.1. Coding ... 55

3.3.4.2. Testing ... 56

3.3.5. Deployment ... 56

BAB IV HASIL DAN PEMBAHASAN 4.1. Communication ... 57

4.1.1. Sekilas Tentang Pusat Bahasa ... 57

4.1.1.1. Misi Dan Tugas ... 58

4.1.1.2. Lingkup Kegiatan ... 59

4.1.2. Analisis Sistem ... 60

4.1.2.1. Analisis Sistem Yang Sedang Berjalan ... 60

4.1.2.2. Analisis Permasalahan ... 62

4.1.2.2. Pemecahan Masalah ... 63

4.2. Planning ... 64

4.3. Modelling ... 65

xii  


(13)

4.3.1.2. DFD (Data Flow Diagram) ... 65

4.3.1.3. STD (State Transition Diagram) ... 68

4.3.1.4. Kamus Data ... 69

4.3.2. Perancangan Database ... 73

4.3.2.1. ERD (Entity Relationship Diagram) ... 73

4.3.2.2. LRS (Logical Record Stucture) ... 74

4.3.2.3. Spesifikasi Database ... 74

4.3.3. Perancangan Antarmuka ... 80

4.3.3.1. Antarmuka Halaman Admin ... 80

4.3.3.2. Antarmuka Halaman User ... 80

4.4. Construction ... 82

4.4.1. Coding (Pengkodean) ... 82

4.4.2. Testing (Pengujian) ... 82

4.4.2.1. Pengujian Mandiri ... 82

4.4.2.2. Pengujian Lapangan ... 85

xiii  


(14)

4.5. Deployment ... 86

4.5.1. Pendaftaran Web Domain ... 87

4.5.2. Pendaftaran Web Hosting ... 87

4.5.3. Proses Input Database ... 88

4.5.3. Proses Upload File Aplikasi ... 89

BAB V PENUTUP 5.1. Kesimpulan ... 91

5.2. Saran ... 92

DAFTAR PUSTAKA ... 93 LAMPIRAN

xiv  


(15)

Gambar 2.1 Arsitektur Aplikasi Web ... 19

Gambar 2.2 Arsitektur tiga-level ANSI SPARC ... 24

Gambar 2.3 Simbol Terminator ... 35

Gambar 2.4 Simbol Proses ... 36

Gambar 2.5 Simbol Arus Data (Data Flow) ... 36

Gambar 2.6 Simbol Penyimpanan Data (Data Store) ... 37

Gambar 2.7 TheIncremental Model ... 39

Gambar 3.1 Kerangka Berpikir ... 48

Gambar 4.1 Flowchart Pelaksanaan TOEFL ... 60

Gambar 4.2 Flowchart Sistem Usulan ... 64

Gambar 4.3 Diagram Konteks ... 66

Gambar 4.4 Diagram Zero ... 67

Gambar 4.5 STD Admin ... 68

Gambar 4.6 STD User ... 69

Gambar 4.7 ERD(Entity relationship diagram) ... 73

xv  


(16)

Gambar 4.8 LRS (Logical Record Structure) ... 74

Gambar 4.9 Antarmuka Admin ... 80

Gambar 4.10 Antarmuka User ... 81

Gambar 4.11 Antarmuka TOEFL ... 81

Gambar 4.12 DeploymentDiagram Aplikasi ... 86

Gambar 4.12 Tampilan Aplikasi Filezilla ... 89

xvi  


(17)

Tabel 2.1 Perbedaan Simulasi Analog dan Simulasi Digital ... 11

Tabel 2.2 Flow Direction Symbol ... 31

Tabel 2.3 Processing Symbols ... 32

Tabel 2.4 Input-output Symbols ... 33

Tabel 4.1 Data Model Requirement ... 70

Tabel 4.2 Tabel User ... 75

Tabel 4.3 Tabel Materi ... 75

Tabel 4.4 Tabel Jenis Materi ... 75

Tabel 4.5 Tabel Latihan ... 76

Tabel 4.6 Tabel Listening ... 76

Tabel 4.7 Tabel Grammer ... 76

Tabel 4.8 Tabel Reading ... 77

Tabel 4.9 Tabel Skor ... 77

Tabel 4.10 Tabel Skor User ... 77

Tabel 4.11 Tabel Temp Skor ... 78

xvii  


(18)

Tabel 4.12 Tabel Download ... 78

Tabel 4.13 Tabel Buku Tamu ... 78

Tabel 4.14 Tabel Pengunjung ... 79

Tabel 4.15 Tabel Kategori User ... 79

Tabel 4.16 Pengujian Admin ... 83

Tabel 4.17 Pengujian User ... 85

Tabel 4.18 Pengujian Lapangan ... 86

xviii  


(19)

Lampiran A Hasil Wawancara ... A-1 LampiranB Kuesioner ... B-1 Lampiran C Konversi Skor TOEFL ... C-1 Lampiran D Antarmuka Aplikasi ... D-1 Lampiran E Souce Code Program ... E-1

xix  


(20)

xx  

DAFTAR ISTILAH

Admin : Administrator, orang yang bertugas memelihara dan

mengatur sistem.

Blackbox : Suatu jenis pengujian perangkat lunak berdasarkan input

dan output yang dihasilkan.

CBT : Computer Based Test, jenis TOEFL yang menggunakan media komputer.

Database : Basis data

ETS : Educational Testing Service, lembaga yang mengembangkan tes TOEFL. Berkedudukan di Amerika Serikat

iBT : Internet Based Test, jenis TOEFL yang menggunakan media komputer dan internet.

Online : Keadaan disaat seseorang atau sistem terhubung kedalam

suatu jaringan ataupun sistem yang lebih besar.

PBT : Paper Based Test, jenis TOEFL yang menggunakan media kertas.

TOEFL : Test Of English As Foreign Language, tes kemampuan bahasa Inggris seseorang.


(21)

1.1. Latar Belakang Masalah

Lahirnya era internet telah memberi perubahan yang sangat besar. Informasi menjadi sangat mudah untuk diakses dan disebarkan. Kehadiran Internet juga dapat memberikan kemudahan dalam dunia pendidikan, hal ini terlihat dengan begitu banyaknya situs web yang menyediakan media pembelajaran yang semakin interaktif serta mudah untuk dipelajari, Internet seperti halnya perpustakaan dunia dan situs web sebagai bukunya. Situs web tidak hanya dapat dijadikan sebagai media informasi tetapi berbagai sistem pembelajaran pun dapat dilakukan di internet.

Pembelajaran berbasis web mempunyai banyak keunggulan dan bervariasi. Para peneliti telah membuktikan keunggulan dari pembelajaran berbasis web seperti hemat waktu (time saving), hemat biaya (cost

reduction) dan hemat tempat (space saving), serta peningkatan kesempatan

belajar bagi non-siswa sekolah. Terlebih para pakar memprediksikan bahwa dalam beberapa dekade mendatang, lebih dari 50% populasi siswa akan belajar menggunakan teknologi dan pembelajaran online (Chang, 2007:53).

Dibandingkan dengan sistem tradisional, teknologi berbasis web dapat membuat siswa menjadi lebih termotivasi dan tertarik dikarenakan mereka dapat mengakses multimedia dan piranti inovatif lainnya. Pembelajaran

online tidak hanya mengembangkan interaksi pelajar, tetapi juga


(22)

2

memberikan lingkungan belajar yang positif. Ketika mereka melakukan ujicoba dengan soal-soal online, seperti soal pilihan ganda dan soal dengan jawaban singkat, sistem akan merespon secara langsung dan memberikan umpan balik berupa koreksian yang tersedia. (Chang, 2007:53)

Pusat Bahasa UIN Syarif Hidayatullah Jakarta (Language Center) merupakan sebuah lembaga bahasa di lingkungan UIN Jakarta yang salah satu tugasnya adalah menyelenggarakan tes TOEFL, baik itu bagi mahasiswa UIN Jakarta maupun kalangan umum. Pelaksanaan tes TOEFL ini juga merupakan salah satu persyaratan bagi mahasiswa yang akan menempuh studi dan bagi mahasiswa yang akan menyelesaikan studi di UIN Syarif Hidayatullah Jakarta. Pelaksanaan tes TOEFL di Pusat Bahasa UIN Syarif Hidayatullah Jakarta mengacu pada standar pelaksanaan tes TOEFL dari lembaga internasional ETS (Educational Testing Service) yang berkedudukan di Amerika Serikat. Bentuk tes TOEFL yang dilaksanakan adalah TOEFL PBT (Paper Based Test) dengan menggunakan lembar soal dan lembar jawaban kertas.

Dalam hal penyediaan fasilitas bagi calon peserta tes TOEFL, pihak Pusat Bahasa menyediakan modul dan pelatihan khusus dengan biaya tambahan tersendiri, namun ini sifatnya tidak wajib. Namun dari hasil kuesioner yang diberikan kepada 50 orang mahasiswa yang pernah mengikuti tes TOEFL di Pusat Bahasa menunjukkan hasil bahwa sebanyak 92% responden tidak memanfaatkan fasilitas modul dan kursus dari Pusat Bahasa. Hal ini juga sesuai dengan hasil wawancara dengan kepala Pusat


(23)

Bahasa yang menyatakan bahwa sedikit sekali calon peserta yang memanfaatkan modul maupun yang mengikuti kursus persiapan tes TOEFL. Selain itu, sebanyak 90% responden menyatakan perlu adanya fasilitas pembelajaran alternatif lainnya dan sebanyak 84% responden menyatakan perlu adanya simulasi tes sebelum pelaksanaan tes yang sebenarnya.

Dari 4 pilihan media pembelajaran yang ditawarkan yaitu, (1) buku/modul, (2) kursus, (3) CD pembelajaran, dan (4) pembelajaran online, sebanyak 68% responden memilih pembelajaran online sebagai media pembelajaran yang paling mudah diakses, 58% responden memilih pembelajaran online sebagai media pembelajaran yang paling efektif dan 76% responden memilih pembelajaran online sebagai media pembelajaran yang paling murah diantara pilihan yang lainnya (hasil kuesioner dan wawancara terdapat di lampiran).

Mengacu kepada hasil kuesioner dan wawancara yang telah dilakukan, maka untuk memberikan alternatif pembelajaran TOEFL dibutuhkan suatu sarana pembelajaran yang bersifat hemat waktu (time

saving), hemat biaya (cost reduction) dan hemat tempat (space saving).

Permasalahan ini dapat dijawab dengan penggunaan sarana pembelajaran yang bersifat online dengan menggunakan fasilitas internet yang mampu memberikan manfaat sebagai sarana pembelajaran materi-materi terkait dengan tes TOEFL dan mampu memberikan fasilitas tryuot berupa simulasi TOEFL. Fasilitas pembelajaran online seperti inilah yang belum disediakan oleh Pusat Bahasa bagi para calon peserta tes.


(24)

4

Berdasarkan latar belakang masalah, maka sangat menarik untuk mengangkat permasalahan ke dalam penelitian skripsi dengan judul “Perancangan Aplikasi Simulasi TOEFL (Test Of English As Foreign Language)”.

1.2. Perumusan Masalah

Berdasarkan latar belakang masalah, maka dapat dirumuskan permasalahan yang akan dibahas dalam penelitian ini adalah: bagaimana merancang aplikasi simulasi TOEFL (Test Of English as a Foreign

Langauge) yang mampu memberikan skor (hasil) kepada pengguna aplikasi

dan menjadi media pembelajaran dalam rangka persiapan menghadapi tes TOEFL.

1.3. Batasan Masalah

Batasan masalah dalam penelitian ini yaitu mencakup :

1. Perancangan aplikasi ini menggunakan bahasa pemrograman PHP versi 5.3.1 dengan basisdata MySQL versi 5.1.41 yang telah terintegrasi dalam Xampp versi 1.7.3.

2. Pengguna aplikasi ini secara khusus adalah calon peserta tes yang akan mengikuti tes TOEFL di Pusat Bahasa UIN Jakarta dan secara umum adalah semua yang berminat untuk menguji kemampuan TOEFL-nya sendiri.


(25)

yang dikembangkan oleh Educational Testing Service (ETS) yang kemudian diadaptasi oleh Pusat Bahasa yakni TOEFL PBT (Paper

Based Test). Dengan kata lain aplikasi ini adalah versi web dari

TOEFL PBT (Paper Based Test).

4. Aplikasi ini adalah sebuah simulasi, bukan merupakan penilaian akhir hasil tes TOEFL dan tidak untuk menggantikan tes yg sebenarnya. Aplikasi ini digunakan sebagai penunjang bagi calon peserta tes TOEFL untuk menghadapi tes yang sebenarnya.

1.4. Tujuan dan Manfaat Penelitian 1.4.1. Tujuan Penelitian

Tujuan yang ingin dicapai dari penelitian ini adalah:

1. Merancang aplikasi simulasi TOEFL online berbasis web yang bersifat hemat waktu (time saving), hemat biaya (cost

reduction) dan hemat tempat (space saving).

2. Memberikan media pembelajaran online yang mampu menyajikan materi dan latihan terkait persiapan menghadapi tes TOEFL.

3. Memberikan media simulasi TOEFL online yang mampu menyajikan contoh soal-soal yang akan dihadapi dan gambaran hasil yang akan didapat sebelum mengikuti tes TOEFL yang sebenarnya.


(26)

6

1.4.2. Manfaat Penelitian a. Bagi penulis

Manfaat yang bisa penulis petik dalam penelitian skripsi ini adalah sebagai berikut :

1. Dapat mengenal dan mendalami konsep TOEFL, khususnya pada pelaksaaan di Pusat Bahasa UIN Syarif Hidayatullah Jakarta.

2. Dapat lebih mendalami konsep pemrograman berbasis web, bahasa pemrograman PHP dan basisdata MySQL.

3. Dapat memenuhi salah satu syarat dalam menyelesaikan kurikulum tingkat akhir program studi Teknik Informatika Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta

b. Bagi pengguna

Manfaat yang diperoleh oleh pengguna aplikasi ini adalah sebagai berikut:

1. Sebagai modul pendalaman materi-materi yang berkaitan dengan soal TOEFL.

2. Dapat mengukur kemampuan diri dalam menjawab soal-soal TOEFL, karena disertai dengan perhitungan skor hasil yang diperoleh.


(27)

c. Bagi Pusat Bahasa

Manfaat yang didapat Pusat Bahasa dari penelitian ini adalah ketersediaan sarana pendukung pembelajaran TOEFL. d. Bagi Akademik

Manfaat yang didapat Akademik dari penelitian ini adalah sebagai berikut:

1. Mengetahui kemampuan mahasiswa dalam penguasaan materi dan penerapan ilmu yang telah didapat selama masa kuliah.

2. Mengetahui kemampuan mahasiswa dalam penggunaaan bahasa inggris.

1.5. Metodologi Penelitian

Metodologi yang digunakan dalam penelitian ini adalah sebagai berikut:

1.5.1. Metodologi Pengumpulan Data

Dalam proses penulisan skripsi ini, metodologi pengumpulan data yang dilakukan adalah:

1. Wawancara, yakni dengan melakukan wawancara langsung kepada pihak yang terkait dengan penelitian ini.

2. Kuesioner, yakni dengan memberikan pertanyaan-pertanyaan kepada pihak yang terkait denga penelitian ini.


(28)

8

3. Studi pustaka, yakni mengumpulkan data melalui buku maupun artikel yang terkait dengan penelitian ini.

1.5.2. Metodologi Pengembangan Aplikasi

Dalam penelitian ini, metode pengembangan aplikasi yang digunakan adalah Incremental Process Model yang meliputi lima tahapan kegiatan, yaitu:

1. Communication (Komunikasi).

2. Planning (Perencanaan).

3. Modelling (Perancangan) .

4. Construction (Konstruksi).

5. Deployment (Penerapan).

1.6. Sistematika Penulisan

Dalam skripsi ini, pembahasan yang penulis sajikan terbagi dalam lima bab yang secara singkat akan di uraikan sebagai berikut:

BAB I PENDAHULUAN

Dalam bab ini akan diterangkan tentang latar belakang identifikasi masalah, rumusan masalah, batasan masalah, tujuan, manfaat, metode penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI


(29)

diperlukan dalam perancangan aplikasi ini. BAB III METODE PENELITIAN

Pada bab ini akan menjelaskan proses penelitian dalam merancang dan membangun aplikasi.

BAB IV HASIL DAN PEMBAHASAN

Bab ini akan menjelaskan perancangan program dan implementasinya yang menggunakan beberapa tahap pengembangan aplikasi.

BAB V PENUTUP

Bab ini merupakan bab terakhir dari seluruh rangkaian bab yang ada diskripsi ini, maka dalam bab ini akan termuat kesimpulan dari hasil bahasan seluruh bab serta saran-saran yang sekiranya bermanfaat.


(30)

10  

BAB II LANDASAN TEORI

2.1. Aplikasi

Aplikasi adalah sebuah program komputer yang digunakan untuk tugas yang spesifik atau khusus, seperti akuntansi, analisis dalam bidang sains atau medis, atau pemrosesan kata. Bagian “aplikasi” mengacu kepada keseluruhan set dari program yang secara kolektif mengimplementasikan sebuah proses bisnis yang spesifik. Program-program individual yang mengimplementasikan bagian dari proses bisnis ini dikenal sebagai program aplikasi atau perangkat lunak aplikasi (Nader, 2001).

2.2. Simulasi

2.2.1. Pengertian Simulasi

Simulasi adalah proses implementasi model menjadi program komputer (software) atau rangkaian elektronika dan mengeksekusi

software tersebut sedemikian rupa sehingga perilakunya

menirukan/menyerupai sistem nyata (realitas) tertentu untuk tujuan mempelajari perilaku (behavior) sistem, pelatihan (training), atau permainan (gamming) yang melibatkan sistem nyata. Jadi simulasi adalah proses merancang model (Bambang, 2009).


(31)

2.2.2. Jenis Simulasi

Jenis Simulasi ada dua, yaitu simulasi analog dan simulasi digital. Perbedaan kedua jenis simulasi ini dapat dilihat pada tabel 2.1:

Tabel 2.1 Perbedaan Simulasi Analog dan Simulasi Digital No. Simulasi Analog Simulasi Digital

1. Menggunakan komputer analog.

Menggunakan komputer digital.

2. Membentuk / menyusun analogi persoalan.

Menguraikan persoalan menjadi hitungan. 3. Menyajikan variabel fisi

dengan pengukuran.

Menyajikan angka-angka dengan pola diskret terkode.

4.

Operasi besar dilakukan oleh piranti khusus (satu tugas) yang jumlahnya relatif sedikit.

Operasi dilakukan oleh piranti hitungan yang jumlahnya relatif banyak dan dapat saling tukar tugas.

5. Biaya relatif rendah dan program mudah

Biaya relatif tinggi dan program sulit.

6. Unsur-unsur terpisah untuk setiap operasi.

Unsur-unsur identik bekerja beruntun (operasi seri).

7.

Ketelitian hingga sekitar 1 dalam 104. Tapi persoalan

delay komputasi kecil.

Ketelitian besar hingga 1 dalam 1023. Tapi mempunyai persoalan "finite word lenght"

dan delay komputasi.

8.

Simpanan data tersebut pada berbagai piranti yang tak dapat dipertukarkan.

Simpanan data dipusatkan di tempat tertentu dan dapat dipertukarkan serta tak terbatasi waktu.


(32)

12  

9.

Sebagai model atau pencerminan sistem yang sebenarnya, operasi biasanya dijalani dalam waktu nyata sistem.

Menghimpun data hitungan yang tak ada hubungannya dengan sistem yang diwakili. Waktu operasi biasanya tak bersangkutan dengan waktu nyata.

10.

Mewakili / menggantikan besaran-besaran matematis atau fisis.

Dapat mewakili angka-angka maupun huruf-huruf atau simbol-simbol lain.

11.

Sangat sesuai / cocok untuk mewakili besaran-besaran terukur dan menirukan respons sistem-sistem fisis dengan analogi matematis.

Sangat sesuai untuk menangani proses-proses acak diskret, data statistik dan masalah numerik dalam bidang ilmiah dan bisnis.

(Sumber : Bambang, 2009)

2.3. TOEFL

2.3.1. Pengertian TOEFL

The Test of English as a Foreign Language (TOEFL) is an exam that determines whether a student whose native language is not English has strong enough English skills to succeed in courses at a college or university in the United States or Canada. The test, which is administered by an agency called the Educational Testing Service, contains four parts: Listening, Structure (which tests

knowledge of grammar and mechanics), Reading, and Writing (Pyle,

2001: 3).


(33)

2.3.2. Jenis TOEFL

2.3.2.1. Paper Based Testing (PBT)

The TOEFL PBT Test is a paper-based test that measures student ability to use and understand English in a classroom setting at the college or university level. It accurately measures how well you can listen, read and

write English while performing academic tasks (ETS,

2011).

The Paper Based Testing is a pencil and paper test that is offered for two purposes. One purpose of the PBT is for placement and progress evaluations. Colleges or other institutions use the PBT to test their students. The scores are not valid outside the place where they are administered, but the college or institution accepts the PBT that they administer as an official score. This PBT is also called an Institutional TOEFL. The other purpose of the PBT is to supplement the official Computer-Based TOEFL in areas where computer-based testing is not possible. The scores are usually valid outside the place where they are administered. This PBT is also called a Supplemental TOEFL. The Paper-Based TOEFL has three sections: Listening Comprehension, Structure and Written Expression, and Reading. In addition, the TWE is a


(34)

14  

required essay that provides a writing score. The PBT is a linear test, which means that everyone who takes the TOEFL during the same administration will see and answer the same questions. The total score is based on a scale of

310-677 (Sharpe, 2006: 11-12).

Waktu yang diperlukan untuk menyelesaikan keseluruhan soal adalah:

1. Listening Comprehension 35 menit. Terdiri dari 50

soal.

2. Structure and Written Expression 25 menit. Terdiri

dari 40 soal.

3. Reading Comprehension 55 menit. Terdiri atas 50

soal.

4. Writing 30 menit. Terdiri dari 1 soal esai (Philips,

2001: xiv).

Namun sebagian besar tes TOEFL Paper Based

Testing (PBT) yang diadakan di Indonesia tidak menguji

kemampuan writing karena pemeriksaan serta penilaiannya dianggap rumit (Razaq, 2010: 8).


(35)

2.3.2.2. Computer Based Testing (CBT)

The CBT is a computer-adaptive test that is offered as an official standard for language proficiency worldwide. The CBT is also called the Official TOEFL. The Computer-Based TOEFL has four sections: Listening, Structure, Writing, and Reading. The Writing is equivalent to the Test of Written English (TWE) on the Paper-Based TOEFL. The CBT is an adaptive test, which means that everyone who takes the TOEFL during the same administration may not see and answer the same questions. The computer selects questions for you at your level of proficiency. There are three subscores-Listening, Structure/writing, and Reading.

The total score is based on a scale of 0-300 (Sharpe, 2004:

11).

Dalam Computer Based Testing (CBT), waktu yang digunakan untuk menyelesaikan tes adalah:

1. Listening Comprehension 40-60 menit. Jumlah soal

berkisar antara 30-50 soal.

2. Structure (grammar) 15-20 menit. Jumlah soal

berkisar antara 20-25 soal.

3. Reading Comprehension 70-90 menit. Jumlah soal

berkisar antara 44-60 soal.


(36)

16  

4. Writing 30 menit. Menulis sebuah esai sesuai dengan

topik yang telah ditentukan (Philips, 2001: xiv). 2.3.2.3. Internet Based Testing (iBT)

The TOEFL iBT is a new version of the TOEFL test. It is an Internet-based test (iBT) delivered in secure testing centers around the world. The new TOEFL iBT test in scheduled to be phased in from September 2005 through June 2006. The phase-in date for the United States is September 2005; for Canada, France, Germany, and Italy,

it is October 2005. (Educational Testing Service, 2006: 1)

Dalam Internet Based Testing (IBT), yang berbeda adalah adanya soal Speaking, yang menggunakan headset dan mic. Waktu yang digunakan untuk menyelesaikan tes adalah:

1. Reading Comprehension 60-100 menit, dengan 3-5

bagian, masing-masing terdiri dari 12-14 soal.

2. Listening 60-90 menit, dengan 4-6 lectures,

masing-masing 6 soal dan 2-3 percakapan, masing-masing-masing-masing 5 soal.

3. Speaking 20 menit, dengan 6 tugas; 2 yang bersifat

independen dan 4 yang terintegrasi.


(37)

4. Writing 50 menit, dengan 2 tugas; 1yang bersifat independen dan 1 yang terintegrasi ((Educational Testing Service, 2006: 6).

2.3.3. Institutional TOEFL

The lnstitutional TOEFL is the same length, format, and difficulty as the official Paper-Based TOEFL, but the dates and the purposes of the lnstitutional TOEFL are different from those of the official TOEFL. The dates for the lnstitutional TOEFL usually correspond to the beginning of an academic session on a college or university calendar. The lnstitutional TOEFL is used for admission, placement, eligibility, or employment only at the school or agency that offers the test. The scores are not valid outside the place where they are administered, but the college or institution accepts the PBT

that they administer as an official score. (Sharpe, 2004: 12).

2.4. Konsep Web

Web adalah sistem dengan standar yang diterima secara universal untuk menyimpan, menelusuri, memformat, dan menampilkan informasi melalui arsitektur klien/server. Web bisa menerima semua jenis informasi digital, termasuk teks, hipermedia, grafis, dan suara. Web menggunakan anatrmuka pengguna grafis, sehinga sangat mudah digunakan.

Web didasari oleh bahasa hiperteks standar yang disebut Hypertext

Markup Language (HTML), yang memformat dokumen dan memadukan


(38)

18  

link hiperteks dinamis ke dokumen-dokumen lainnya yang disimpan di dalam komputer yang sama atau yang berbeda (Turban, 2006: 680)

2.4.1. Aplikasi Web

Aplikasi web dapat dibagi menjadi dua, yaitu web statis dan web dinamis. Web statis dibentuk dengan menggunakan HTML saja. Kekurangan aplikasi ini terletak pada keharusan untuk memelihara program secara terus menerus untuk mengikuti setiap perubahan yang terjadi. Kelemahan ini diatasi dengan model aplikasi web dinamis.

Dengan memperluas kemampuan HTML, yakni dengan menggunakan perangkat lunak tambahan, perubahan informasi dalam halaman-halaman web dapat ditangani melalui perubahan data, bukan melalui perubahan program. Sebagai implementasinya, aplikasi web dapat dikoneksikan ke basis data. Dengan demikian perubahan informasi dapat dilakukan oleh operator atau yang bertanggungjawab terhadap kemutakhiran data, dan tidak menjadi tanggung jawab pemrogram atau webmaster (Kadir, 2003: 386).


(39)

Arsitektur aplikasi web diperlihatkan pada gambar 2.1.

  Server

Web Server (Apache, IIS,

Xitami, dll)

Middleware (ASP, PHP,

JSP, dll)

Basisdata (MySQL, Oracle, dll)

Klien Browser (IE, Netscape, dll)

Gambar 2.1 Arsitektur Aplikasi Web (Sumber : Kadir, 2003: 387)

2.4.2. Teknologi Web

a. Teknologi Web pada Sisi Klien (Client-side Technology)

Teknologi web pada sisi klien diimplementasikan dengan mengirimkan kode perluasan HTML atau program tersendiri dan HTML ke klien. Klien lah yang bertanggung jawab dalam melakukan proses terhadap seluruh kode yang diterima.

Kelemahan pendekatan seperti ini adalah terdapat kemungkinan bahwa browser pada klien tidak mendukung fitur kode perluasan pada HTML. Kelebihan teknologi pada sisi klien yaitu memungkinkan penampilan yang bersifat dinamis,


(40)

20  

misalnya menampilkan jam yang terus-menerus berubah ataupun bentuk animasi gambar yang mengikuti gerakan penunjuk mouse. Yang termasuk kedalam teknologi pada sisi klien antara lain: Kontrol ActiveX, Java Applet, Skrip sisi-klien (Javascript, VBscript).

b. Teknologi Web pada Sisi Server (Server-side Technology)

Teknologi pada sisi server memungkinkan pemrosesan kode di dalam server sehingga kode yang sampai pada pemakai berbeda dengan kode asli pada server.

Keuntungan penggunaan teknologi pada sisi server adalah sebagai berikut:

1. Mengurangi lalu lintas jaringan dengan cara menghindari percakapan bolak-balik antara klien dan server

2. Mengurangi waktu pemuatan kode, mengingat klien hanya mengambil kode HTML saja.

3. Mencegah masalah ketidakkompatibelan browser.

4. Klien dapat berinteraksi dengan data yang ada pada server. 5. Mencegah klien mengetahui rahasia kode (mengingat kode

yang diberikan ke klien berbeda dengan kode asli pada server) (Kadir, 2003: 392).


(41)

Beberapa contoh teknologi yang berjalan diserver yaitu:

Common Gateway Interface (CGI), PHP, Active Server Page

(ASP), Java Server Page (JSP).

2.5. Konsep Dasar Database 2.5.1. Pengertian Database

Database adalah sekumpulan data store (bisa dalam jumlah

yang sangat besar) yang tersimpan dalam magnetic disk, optical disk,

magnetic drum atau media penyimpanan lainnya. Database terdiri

dari data yang akan digunakan atau diperuntukkan terhadap banyak user, dimana masing-masing user (baik yang menggunakan teknik pemrosesan bersifat batch atau online) akan menggunakan data tersebut sesuai dengan tugas dan fungsinya, dan user dapat juga menggunakan data tersebut dalam waktu yang bersamaan (Ladjamudin, 2005: 129).

2.5.2. DBMS (Database Management System)

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 memasukkan, melacak, dan memodifikasi data ke dalam database, mendefinisikan data baru,


(42)

22  

serta mengolah data menjadi informasi yang dibutuhkan (DBMS=Database + Program Apikasi).

Dibandingkan dengan sistem tradisional yang berbasis kertas, DMBS memiliki 4 keunggulan sebagai berikut.

1. Kepraktisan. Sistem yang berbasis kertas akan menggunakan kertas yang sangat banyak untuk menyimpan informasi, sedangkan DBMS menggunakan media penyimpanan skunder yang berukuran kecil tetapi padat informasi.

2. Kecepatan. Mesin dapat mengambil atau mengubah data jauh lebih cepat daripada manusia.

3. Mengurangi Kejemuan. Orang cenderung menjadi bosan kalau melakukan tindakan-tindakan berulang yang menggunakan tangan (misalnya harus mengganti informasi). 4. Kekinian. Infromasi yang tersedia pada DMBS akan bersifat

mutakhir dan akurat setiap saat.

Pada beberapa DBMS tersedia fasilitas query yang memudahkan pengguna untuk memperoleh informasi. Pengguna yang tidak mempunyai kemampuan pemrograman dengan mudah menggunakan fasilitas query tersebut. Bagi pemrogram aplikasi, pembuatan program aplikasi juga dapat dilakukan dengan mudah, jauh lebih mudah dibandingkan dengan menggunakan bahasa-bahasa konvensional seperti COBOL dan Fortran. Hasilnya akan


(43)

meningkatkan produktifitas pemrogram (Ladjamudin, 2005: 130-132).

2.5.3. Arsitektur Database

Arsitektur basisdata dimaksudkan untuk membuat abstraksi terhadap basisdata. Tujuannya agar DBMS dapat diakses secar efisien tanpa mengharuskan pemakai tahu detail tentang cara data disimpan dan dipelihara. Cara ini sekaligus dapat digunakan untuk mewujudkan independensi data program.

ANSI-SPARC (American National Standards

Institute-Standard Planningand Requirement Commitee) mendefinisikan yang

disebut arsitektur tiga level pada tahun 1975. Tiga level yang dimaksud dalam arsitektur ini yaitu, level eksternal, level konseptual, dan level internal (Kadir, 2003: 261).


(44)

24   Pandangan 1 Pandangan 2 Pandangan 3 Pemakai 1 Pemakai 2 Pemakai 3 

Skema Konseptual Skema Internal Basisdata Level internal Organisasi data secara fisik Level konseptual Level eksternal

Gambar 2.2 Arsitektur tiga-level ANSI SPARC (sumber: Kadir, 2003: 262)

2.5.4. Bahasa Database

Semua DBMS memiliki dua macam bahasa yang digunakan untuk mengelola dan mengorganisasikan data, yaitu (Kadir, 2003: 266):

a. Bahasa Definisi Data (Data Definition Language atau DDL) DDL adalah perintah-perintah yang biasa digunakan oleh administrator basis data untuk mendefinisikan skema basis data dan juga subskema. Pernyataan SQL seperti create table

dan drop table merupakan contoh perintah yang termasuk

dalam kategori DDL.


(45)

b. Bahasa Manipulasi Data (Data Manipulation Language atau DML)

DML adalah perintah-perintah yang digunakan untuk melakukan hal-hal seperti, mengambil, menambahkan, mengubah, dan menghapus data pada basisdata. DML dapat dibagi dibagi menjadi dua kelompok yaitu prosedural dan non prosedural.

1. DML prosedural adalah perintah-perintah yang memungkinkan pemakai menentukan data apa saja yang diperlukan dan bagaimana cara mendapatkannya.

2. DML non prosedural adalah perintah-perintah yang memungkinkan pemakai menentukan data apa saja yang diperlukan, tanpa perlu menyebutkan cara mendapatkannya.

2.6. Bahasa Pemrograman 2.6.1. HTML

Hypertext Markup Language (HTML) adalah sekumpulan

perintah khusus (disebut “tag” atau “markup”) yang dipakai untuk menentukan struktur, bentuk, dan link pada dokumen ke dokumen multimedia lain di web. Extensible hypertext markup language (XHTML) adalah pengganti dan merupakan versi HTML yang sering dipakai. Kebutuhan untuk membuat HTML yang lebih sempit dianggap cukup penting karena isi World Wide Web saat ini harus


(46)

26  

bisa diteruskan ke banyak peranti (misalnya peranti bergerak) yang memiliki sedikit sumber daya dibandingkan komputer tradisional (Williams & Sawyer, 2007: 67-68).

2.6.2. PHP

PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML (Php, 2011).

PHP singkatan dari PHP Hypertext Preprocessor yang digunakan sebagai bahasa script server-side dalam pengembangan web yang disisipkan pada dokumen HTML. Penggunaan PHP memungkinkan web dapat dibuat dinamis sehingga maintenance situs web tersebut menjadi lebih mudah dan efisien. PHP merupakan

software open-source yang disebarkan dan dilisensikan secara gratis

serta dapat di-download secara bebas dari situs resminya http://www.php.net. PHP ditulis menggunakan bahasa C (Peranginangin, 2006: 1)

PHP memiliki banyak kelebihan yang tidak dimiliki oleh bahasa script sejenis. PHP difokuskan pada pembuatan script server-side, yang bisa melakukan apa saja yang dapat dilakukan oleh CGI, seperti mengumpulkan data form, menghasilkan isi halaman web


(47)

dinamis, dan kemampuan mengirim serta menerima cookies, bahkan lebih dari pada kemampuan CGI.

PHP digunakan pada semua sistem operasi, antara lain Linux, Unix (termasuk variannya HP-UX, Solaris, dan OpenBSD), Microsoft Windows, Mac OS X, RISC OS. PHP juga mendukung banyak web server, seperti Apache, Microsoft Internet Information Server (MIIS), Personal Web Server (PWS), Netscape dan iPlanet Servers, Oreilly Website Pro Server, audium, Xitami, Omni HTTPd, dan masih banyak lagi yang lainya, bahkan PHP dapat bekerja sebagai suatu CGI Processor.

PHP tidak terbatas pada hasil keluaran HTML (HyperText

Markup Languages). PHP juga memiliki kemampuan untuk

mengolah keluaran gambar, file PDF, dan movies Flash. PHP juga dapat menghasilkan teks seperti XHTML dan file XML lainnya. Salah satu fitur yang dapat diandalkan oleh PHP adalah dukungannya terhadap banyak database. (Peranginangin, 2006: 3) 2.6.3. Javascript

Javascript adalah bahasa script yang dikembangkan oleh Sun Microsystem dan Netscape yang digunakan untuk membuat halaman web lebih interaktif. Javascript dapat berinteraksi dengan kode sumber HTML (Wahid, 2002: 153).


(48)

28  

Javascript merupakan modifikasi dari bahasa C++ dengan pola penulisan yang lebih sederhana. Interpreter bahasa ini sudah disediakan ASP ataupun internet explorer. Secara khusus beberapa hal yang penting dalam javascript adalah:

1. Menggunakan blok awal “{“ dan blok akhir “}”.

2. Automatic conversation dalam pengoperasian tipe data yang berbeda.

3. Sensitive case, sehingga programmer java harus extra hati-hati dalam menggunakan variabel, fungsi, dan lain-lain.

4. Extension umumnya menggunakan “*.js”

5. Setiap statement dapat diakhiri dengan “;” sebagaimana halny c++ tetapi dapat juga tidak.

6. Jika tidak didukung oleh browser versi lama, scriptnya dapat disembunyikan diantara tag “<--“ dan “-->”.

7. Jika program dalam satu baris terlalu panjang dapat disambung ke baris berikut dengan karakter ”\” (Sidik, 2001).

2.6.4. CSS

CSS (Cascading Style Sheets) adalah salah satu bahasa pemrograman desain web (style sheet language) yang mengontrol format tampilan sebuah halaman web yang ditulis dengan menggunakan bahasa penanda (markup language). Biasanya CSS digunakan untuk mendesain sebuah halaman HTML, dan XHTML,


(49)

tetapi sekarang bahasa pemrograman CSS bisa diaplikasikan untuk segala dokumen XML, termasuk SVG dan XUL.

CSS dibuat untuk memisahkan konten utama (biasanya dibuat dengan menggunakan bahasa HTML atau sejenisnya) dengan tampilan dokumen yang meliputi layout, warna, dan font. Pemisahan ini dapat meningkatkan daya akses konten pada web, menyediakan lebih banyak fleksibilitas dan kontrol dalam spesifikasi dari sebuah karakteristik dari sebuah tampilan, memungkinkan untuk membagi banyak halaman untuk sebuah formatting dan mengurangi kerumitan dalam penulisan kode dan struktur dari konten, contohnya teknik

tableless pada layout desain web (layout tanpa tabel) (Wismakarma,

2010: 2).

2.6.5. MySQL

MySQL adalah sebuah program database server yang mampu menerima dan mengirimkan datanya dengan sangat cepat, multi user serta menggunakan perintah standar SQL (Structure Query

Language). MySQL merupakan sebuah database server yang free,

artinya kita bebas manggunakan database ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayar lisensinya. MySQL pertama kali dirintis oleh seorang programmer database bernama Michael Widenius. (Nugroho, 2005:1)


(50)

30  

2.7. Perangkat Pemodelan 2.7.1. Flowchart

Flowchart adalah bagan bagan yang mempunyai arus yang

menggambarkan langkah-langkah penyelesaian suatu masalah.

Flowchart merupakan cara penyajian dari suatu algoritma.

(Ladjamudin, 2005: 263)

Ada dua macam flowchart yang menggambarkan proses dengan komputer, yaitu:

1. System Flowchart.

Bagan yang memperlihatkan urutan proses dalam sistem dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data.

2. Program Flowchart.

Bagan yang memperlihatkan urutan instruksi yang digambarkan dengan simbol tertentu untuk memecahkan masalah dalam suatu program.

Flowchart disusun dengan simbol. Simbol ini dipakai sebagai

alat bantu menggambarkan proses didalam program. Simbol-simbol yang digunakan dapat dibagi 3 (tiga) kelompok, yaitu:


(51)

1. Flow Direction Symbol.

Simbol yang digunakan untuk menghubungkan antara simbol yang satu dengan simbol yang lain.simbol ini disebut juga

connecting line.

Tabel 2.2Flow Direction Symbol 1. Simbol arus / flow

Untuk menyatakan jalannya suatu proses.

2. Simbol Communication link Untuk menyatakan bahwa adanya transisi suatu data/informasi dari suatu lokasi ke lokasi lainnya. 3. Simbol Connector

Untuk menyatakan sambungan dari satu proses ke proses lainnya dalam halaman/lembar yang sama. 4. Simbol Offline Connector

Untuk menyatakan sambungan dari satu proses ke proses lainnya dalam halaman/lembar yang berbeda.

(Sumber: Ladjamudin, 2005)

2. Processing Symbols.

Simbol yang menunjukkan jenis operasi pengolahan dalam suatau proses/prosedur.


(52)

32  

Tabel 2.3Processing Symbols 1. Simbol Process

Untuk menyatakan proses yg terjadi

2. Simbol Manual

Untuk menyatakan suatu tindakan (proses) yang tidak dilakukan oleh komputer (manual)

3. Simbol Decision/logika

Untuk menunjukkan suatu kondisi tertentu yang akan menghasilkan dua kemungkinan jawaban, ya/tidak

4. Simbol Predefined Proses Untuk menyatakan penyediaan tempat penyimpanan suatu pengolahan untuk memberi harga awal.

5. Simbol Terminal

Untuk menyatakan permulaan atau akhir suatu program.

6. Simbol Keying Operation Untuk menyatakan segala jenis operasi yang diproses dengan menggunakan suatu mesin yang mempunyai keyboard.

7. Simbol Offline Storage

Untuk menunjukkan bahwa data dalam simbol ini akan disimpan ke suatu media tertentu.


(53)

8. Simbol Manual Input

Untuk memasukkan data secara manual dengan menggunakan online keyboard.

(Sumber: Ladjamudin, 2005)

3. Input-output Symbols.

Simbol yang menunjukkan jenis peralatan yang digunakan sebagai media input atau output. (Ladjamudin, 2005: 266-268)

Tabel 2.4Input-output Symbols 1. Simbol Input-Output

Untuk menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya. 2. Simbol Punched Card

Untuk menyatakan input berasal dari kartu atau output ditulis ke kartu.

3. Simbol Magnetic-tape Unit Untuk menyatakan input berasal dari pita magnetik atau output disimpan ke pita magnetik. 4. Simbol Disk Storage

Untuk menyatakan input berasal dari disk atau output disimpan ke disk.

5. Simbol Document

Untuk mencetak laporan ke printer.


(54)

34  

6. Simbol display

Untuk menyatakan peralatan output yang digunakan berupa layar (video, komputer). (Sumber: Ladjamudin, 2005)

2.7.2. DFD (Data Flow Diagram)

DFD (Data Flow Diagram) adalah diagram yang memperlihatkan alir data antara proses dan tempat penyimpana data. Proses, alir data, dan tempat penyimpanan data digambarkan dengan notasi tertentu. Alir data digambarkan secara global pada DFD tingkat 0 (nol). DFD pada tingkat yang lebih tinggi menggambarkan alir data dengan lebih detil (Wahid, 2002: 81).

Salah satu keuntungan menggunakan diagram aliran data adalah memudahkan pemakai atau user yang kurang menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan.

1. Diagram Konteks

Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem.

2. Diagram Nol/Zero (Overview Diagram)

Diagram zero adalah diagram yang menggambarkan proses dari data flow diagram.


(55)

3. Diagram Rinci (Level Diagram)

Diagram rinci adalah diagram yang menguraikan proses apa yang ada dalam diagram zero atau diagram level diatasnya. (Ladjamudin, 2005 : 64)

2.7.3. STD (State Transition Diagram )

State Transition Diagram merupakan suatu diagram yang

menggambarkan bagaimana state yang lain pada satu waktu. State

Transition Diagram menggambarkan suatu state yang mempunyai

kondisi dimana dapat menyebabkan perubahan satu state ke state yang lain. Notasi State Transition Diagram (STD) adalah sebagai berikut (Parno, 2005):

1. Terminator

Terminator digunakan untuk menggambarkan elemen-elemen lingkungan, yang menandai titik-titik berakhirnya sistem. Terminator digambarkan dalam DFD dengan suatu kotak atau segi empat. Tiap simbol terminator diberi label nama elemen lingkungan.

Gambar 2.3 Simbol Terminator


(56)

36  

2. Proses

Proses adalah sesuatu yang mengubah input menjadi output. Proses dapat digambar dengan lingkaran. Tiap simbol proses diidentifikasikan dengan label.

Teknik pembuatan label yang paling umum adalah dengan menggunakan kata kerja dan objek, tetapi anda dapat juga menggunakan nama sistem atau program komputer.

Gambar 2.4 Simbol Proses 3. Arus Data.

Arus data terdiri dari sekelompok elemen data yang berhubungan secara logis yang bergerak dari satu titik atau proses ke titik atau proses yang lain. Tanda panah digunakan untuk menggambarkan arus itu. Panah tersebut dapat digambar sebagai garis lurus atau garis lengkung.

Gambar 2.5 Simbol Arus Data (Data Flow)


(57)

4. Penyimpanan data.

Jika anda perlu dipertahankan karena suatu sebab, maka digunakan penyimpanan data. Dalam istilah DFD, penyimpanan data (data store) adalah suatu penampungan.

Data store digambarkan dengan garis sejajar.

Gambar 2.6 Simbol Penyimpanan Data (data store) 2.7.4. Kamus Data

Kamus data (data dictionary) adalah basisdata yang berisi struktrur data dan basisdata. Termasuk didalamnya katalog semua elemen data yang terdiri dari nama, struktur, dan informasi tentang penggunaan data (meta data). Biasanya kamus data dirancang untuk menyimpan sekumpulan meta data yang tersedia, terutama informasi yang berkaitan dengan elemen data, basisdata, file, dan program pada sistem yang telah ada (Wahid, 2002: 157)

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


(58)

38  

tentang masukan, keluaran, penyimpanan dan proses (Ladjamudin, 2005: 70)

2.8. Studi Sejenis

Studi sejenis dilakukan untuk membandingkan penelitian yang dilakukan ini dengan penelitian/literatur lainnya yang sejenis yang telah dilakukan pihak lain sebelumnya. Beberapa penelitian sejenis diantaranya yang pertama adalah Rancang Bangun Aplikasi Perangkat Lunak Simulasi Pelatihan TOEFL Berbasis Multimedia (Ardianto, 2008). Pada penelitian ini, tujuan dari pembuatan perangkat lunak pelatihan TOEFL berbasis multimedia adalah untuk memfasilitasi penginputan soal pelatihan tes TOEFL yang selama ini sering dilupakan dalam software TOEFL yang beredar di pasaran. Dalam aplikasi ini telah disediakan fasilitas seperti tutorial dan review yang dapat membantu murid dalam memahami soal yang telah dikerjakan. Juga terdapat fasilitas input and report dimana admin dapat membuat atau mengedit pertanyaan tes TOEFL serta melihat laporan peserta tes TOEFL.

Rancang Bangun Media Pembelajaran TOEFL Berbasis Web (Putra, 2009). Dalam penelitian ini, Penulis membangun suatu situs web yang menyajikan informasi serta materi-materi pembelajaran yang berhubungan dengan TOEFL. Situs web ini dalam perancangannya menggunakan ASP

(Active Server Page) dan database Ms.SQL Server yang berbayar dan

optimal bila dijalankan di sistem operasi Windows.


(59)

Perancangan Pelaksanaan Sistem Ujian Berbasis Jaringan

(Client/Server) Pada SMK PGRI 2 Sukabumi (Nurobbi, 2009). Pada

penelitian ini, latar belakang yang menjadi permasalahan yaitu tidak adanya tempat penyimpanan yang teratur bagi soal yang telah dibuat dan waktu yang tidak sedikit untuk perhitungan nilai peserta ujian serta pengacakkan soal. Metode pengumpulan data yang digunakan pada penelitian ini adalah wawancara. Alat Bantu yang digunakan meliputi flowchart (bagan alir),

diagram konteks, entity relation diagram (ERD), dan data flow diagram

(DFD). Pengembangan aplikasi menggunakan metode SDLC. Sistem ujian dirancang berbasis jaringan client/server.

Implementasi dan Evaluasi English-Learning Berbasis web Untuk TOEFL Preparation (Rakhmadi, 2009). Pada penelitian ini, tujuan penelitian adalah membangun sistem pembelajaran berbasis web, dan memeriksa bagaimana sistem pembelajaran berbasis web mempengaruhi capaian belajar. One-way univariate analyses of covariance (ANCOVA) pada tingkat signifikansi 0,05 dilakukan untuk mengevaluasi pengaruh perlakuan pada sesi listening comprehension, structure and written

expression, dan reading comprehension. Uji efektivitas penelitian ini

merupakan studi quasi-experimental untuk menginvestigasi pengaruh fasilitas sistem pembelajaran berbasis web pada performa mahasiswa dalam sesi-sesi TOEFL; listening, structure and written expression, dan reading. Penelitian ini lebih mengutamakan pada tahap evaluasi sistem, sehingga


(60)

40  

implementasi sistem kurang baik. Tidak adanya pengujian terhadap sistem itu sendiri.

Aplikasi Pembelajaran Bahasa Arab dan Simulasi TOAFL (Test Of

Arabic as Foreign Language) Berbasis Web oleh (Nurhartantrio, 2010).

Pada penelitian ini, penulis membangun suatu aplikasi berbasis web menggunakan PHP dan MySQL yang menyajikan informasi serta materi-materi pembelajaran bahasa Arab dan simulasi TOAFL. Metode pengembangan sistem yang penulis gunakan adalah Concurrent

Development Model. Dalam aplikasi ini manajemen user kurang baik.

Belum adanya dokumentasi dan statistik skor user. Sehingga tidak bisa memantau perkembangan user.

Aplikasi Try Out Ujian Nasional Sekolah Menengah Pertama Berbasis Web Studi kasus: Primagama Cipagalo (Setiawan, 2010). Pada penelitian ini, aplikasi try out Ujian Akhir Nasional Sekolah Menengah Pertama berbasis web dibuat untuk mengatasi beberapa masalah lamanya jangka waktu proses perhitungan nilai try out. Aplikasi yang dibuat ini dijalankan didalam jaringan Lokal Area Network (LAN) yang bertujuan untuk memaksimalkan kinerja lembaga pendidikan primagama. Penelitian ini dibuat menggunakan metode Waterfall dan diimplentasikan dengan bahasa pemrograman PHP dengan menggunakan database MySQL serta software pendukung lainnya.

NST TOEFL Explorer (NST, 2005). Aplikasi ini merupakan aplikasi TOEFL CBT (Computer Based Test) yang dirancang menggunakan media


(61)

Flash yang berbasis desktop. Pada aplikasi ini terdapat menu materi, tutorial, kuis, dan simulasi TOEFL. Simulasi TOEFL yang ada pada aplikasi ini sudah mampu menampilkan skor dan menyimpan dokumentasi hasil perolehan skor user, namun pada aplikasi ini belum terdapat halaman admin, untuk menambah soal TOEFL.

Perancangan Aplikasi Mobile Learning Test TOEFL Dengan Menggunakan Mobile Delivery Tracking System Pada PT. Mitra Integrita Utama (Prastyawan, 2009). Penelitian yang dilakukan oleh penulis ini dilakukan di PT. Mitra Integrita Utama yang merupakan salah satu perusahaan yang bergerak di bidang Mobile Learning Development. Perusahaan ini membutuhkan suatu aplikasi layanan mobile berupa tes TOEFL (Test of English as a Foreign Language) melalui handphone atau

web browser yang mendukung Java, GPRS, 3G, dan WiFi. Dalam

menyelesaikan pembuatan aplikasi tersebut digunakan beberapa metode, yaitu observasi, wawancara, studi literatur, desain dan struktur data, pembuatan program, validasi sistem, serta implementasi sistem.

Pengembangan Sistem E-Learning Yayasan Pendidikan Pondok Pesantren Al-Ikhwaniah (Setiawan, 2010). Pengembangan aplikasi ini menggunakan MOODLE (Modular Object Oriented Development

Learning) dengan basisdata MySQL. Aplikasi ini bertujuan untuk mampu

menampilkan informasi mengenai materi pembelajaran, kuis, ujian, chat, forum dan berita. Metode pengembangan aplikasi menggunakan System

Development Life Cycle.


(62)

42  

Sistem Pembelajaran Online Untuk Pelatihan Dan Test TOEFL Menggunakan VoIP (Primastuti, 2010). Penelitian ini menggunakan teknologi Learning Manajemen System (LMS) dalam mengembangkan media pembelajaran TOEFL berbasis web. LMS yang digunakan untuk membuat media pembelajaran untuk TOEFL ini adalah Dokeos. Dalam sistem pembelajaran ini juga diimplementasikan VoIP yang digunakan untuk komunikasi lewat suara antara user dan administrator. Dalam tugas akhir ini telah berhasil diimplementasikan pemanfaatan Learning

Management System Dokeos dalam suatu sistem untuk pelatihan dan tes

TOEFL. Sistem yang dibuat dengan memodifikasi LMS Dokeos dan teknologi VoIP.

Baron’s TOEFL CD-Rom (Baron, 2006). Aplikasi ini merupakan aplikasi TOEFL CBT (Computer Based Test) yang dirancang menggunakan media Flash yang berbasis desktop. Pada aplikasi ini belum ada manajemen user, sehingga data skor user dan data user yang lainnya belum terdokumentasi. Selain itu juga belum ada menu admin, sehingga soal tidak bisa ditambahkan. Aplikasi ini di buat berdasarkan TOEFL CBT yang mempunyai perbedaan dengan TOEFL PBT, dimana user tidak bisa mengubah jawaban sebelumnya.

Rancang Bangun Sistem Informasi Ujian Online Studi Kasus : Di SMU 1 Kediri (Arianto, 2008). Pada penelitian ini, yang menjadi latar belakang permasalahan adalah koreksi ujian masih dengan cara manual sehingga guru harus menambah jam kerja untuk menilai soal ujian para


(63)

siswa. Sistem evaluasi yang dirancang adalah sistem evaluasi ujian online. Tujuan penulis merancang sistem ini adalah agar dapat memudahkan guru untuk memberikan nilai serta mengurangi penggunaan kertas ujian. Ujian

online dipakai sebagai kerangka dalam penilaian evaluasi mata pelajaran

yang akan digunakan sebagai bahan ujian.

Pengembangan Prototipe Sistem Bank Soal Dan Online Test (Perdana, 2004). Pada penelitian ini, aplikasi yang dikembangkan adalah

prototipe Sistem Informasi Bank Soal dan Online Test, suatu sistem yang

dapat membantu mengelola penyimpanan dan pengorganisasian soal-soal. Sistem yang dikembangkan ini juga memfasilitasi online test dan pembuatan naskah soal. Ruang lingkup dari proyek mahasiswa ini adalah menganalisis, merancang dan mengimplementasikan prototipe sistem. Metodologi pengembangan sistem yang digunakan adalah System Development Life Cycle.

Pembanguan Modul Registrasi User Dan Modul Penambahan Soal Pada Sistem Nursing Diagnostic Test Online (Nurdiansyah, 2008). Pada penelitian ini dikembangkan aplikasi tes online khususnya untuk modul registrasi user dan manage questions. Dari aplikasi tes online ini pengguna dapat mengetahui sampai mana pengetahuan dan kemampuan pengguna dalam bidangnya khususnya perawat. Aplikasi tes online ini terdiri dari beberapa tipe soal seperti multiple choice, single choice, multiple answer,

field blank baik yang memiliki teks bacaan ataupun tidak, serta dapat


(64)

44  

melihat hasil tes yang sedang diikuti. Modul yang dibangun pada penelitian ini adalah modul registrasi user dan modul penambahan soal.

Rancang Bangun Perangkat Lunak Tes Kompetensi Bidang Komputer CPNS Polri Berbasis Local Area Network (Ariyadi, 2010). Pada penelitian ini, perangkat lunak dibangun dengan menerapkan metode pengacakan soal dengan menggunakan bahasa pemrograman PHP dan basis data MySQL, serta menggunakan Apache sebagai web server. Dalam pembuatan perangkat lunak ini digunakan metode pengembangan aplikasi System

Development Life Cycle dengan menerapkan model proses waterfall.

Perangkat lunak ini diaplikasikan hanya sebatas Local Area Network saja.

Evaluation Management System Berbasis Web Untuk Mendukung

Penilaian Tes Online (Rasyid, 2006). Penelitian ini difokuskan kepada pengembangan Evaluation Management System (EMS) yaitu sebuah kuliah

online untuk memperbaiki proses tes online pada lingkungan pembelajaran

jarak jauh. Pertanyaan kuis untuk mahasiswa disediakan secara random yang diambil dari sekumpulan pertanyaan yang dibuat oleh dosen. Sistem ini dibangun dengan menggunakan teknologi PHP dengan database MySQL. System ini di-update oleh seorang administrator dan dosen dengan halaman HTML dan PHP.

Aplikasi Simulasi Ujian Akhir Nasional Berbasis Web Pada SMU N 19 Bandung (Veriagus, 2009). Pada penelitian ini, dibangun suatu aplikasi yang dapat membantu para pelajar dalam melakukan try out secara online. Aplikasi ini menggunakan bahasa pemrograman PHP versi 4.0 dengan


(65)

menggunakan database MySQL versi 5.0.18. Tools yang dipakai dalam pembuatan aplikasi ini diantaranya: Macromedia Dreamweaver sebagai text

editor, Macromedia Firefox sebagai pemotongan gambar web, dan

Photoshop sebagai desain gambar.

Sistem Informasi Bank Soal Untuk Sekolah Dasar Berbasis Web (Wijaya, 2006). Pada penelitian ini, tujuan dari penelitian adalah memudahkan dalam pembuatan/penyajian soal yang bervariasi dengan kualitas yang baik, cepat dalam pembuatan/penyajian soal, banyak alternatif pilihan soal-soal, kemudahan dalam mencari soal-soal yang juga dibuat oleh sekolah lain. Aplikasi ini dirancang dengan php dan basis data MySQL.

Aplikasi Sistem Penerimaan Mahasiswa Baru Berbasis Ujian Online Pada UIN Jakarta (Miftahudin, 2007). Pada penelitian ini, permasalahan yang diangkat adalah ujian saringan masuk UIN Jakarta, dimana pada sistem yang berjalan ujian dilakukan secara konvensional dengan menggunakan lembar kertas. Aplikasi ini dirancang dengan menggunakan php dan MySQL. Ujian online ini tidak menentukan kelulusan, karena sistem yang dirancang masih terbatas pada ujian tulis.

Aplikasi Pembelajaran E-Learning Bahasa Inggris Sebagai Media Pelatihan TOEFL (Adi, 2006). Pada penelitian ini, konsep yang digunakan adalah e-Learning sebagai metode pembelajaran. Aplikasi ini dibuat dengan tujuan membantu proses pembelajaran dalam usaha pemahaman bahasa Inggris khususnya tentang TOEFL dengan menerapkan konsep e-Learning. Aplikasi yang dikembangkan ini hanya sebatas pembelajaran TOEFL,


(66)

46  

belum adanya fasilitas simulasi TOEFL. Pembelajaran dilakukan dengan fasilitas materi, contoh-contoh soal dan pembahasan.

Dari beberapa penelitian sejenis yang dijadikan sebagai perbandingan dengan penelitian ini, terdapat beberapa kekurangan yang kemudian dijadikan sebagai acuan untuk pengembangan yang lebih baik pada aplikasi yang dirancang ini. Dari hasil studi penelitian sejenis yang dilakukan, maka dapat disimpulkan beberapa kelebihan yang ada pada penelitian ini, yaitu sebagai berikut:

1. Pengembangan aplikasi yang dirancang ini berbasis web dan bersifat

online, sehingga sangat mudah diakses oleh pengguna dari mana saja

dan kapan saja. Dalam perancangannya, aplikasi ini menggunakan bahasa pemrograman PHP dan database MySQL yang bersifat multiplatform.

2. Aplikasi yang dirancang ini menyediakan fasilitas pembelajaran, berupa materi-materi, contoh soal dengan pembahasan, dan simulasi tes TOEFL yang mendekati keadaan tes yang sebenarnya. Soal latihan dan soal TOEFL disajikan secara acak. Pengacakan soal latihan dan soal tes menggunakan fungi random dari bahasa pemrograman PHP. 3. Aplikasi yang dirancang ini mempunyai dokumentasi user yang

menyimpan data user, data skor, dan data lain menyangkut pelaksanaan simulasi tes, serta adanya statistik skor user, baik secara perorangan maupun secara keseluruhan. Statistik yang ditampilkan berupa tabel dan grafik.


(67)

 

4. Aplikasi yang dirancang ini menggunakan metodologi pengembangan

Incremental Process Model. Metodologi ini mempunyai sifat

iteratif/pengulangan sehingga dapat mengakomodasi perubahan secara fleksibel.

5. Aplikasi yang dirancang ini telah diimplementasikan secara online dan telah diujikan kepada 50 orang dengan hasil yang baik (hasil pengujian terdapat di subbab 4.4.2).


(68)

BAB III

METODOLOGI PENELITIAN

3.1. Kerangka Berpikir

Penelitian ini meliputi beberapa tahapan yang dilalui sesuai dengan rancangan kegiatan yang tertuang dalam kerangka berpikir. Rancangan kegiatan tersebut meliputi metode pengumpulan data dan metode pengembangan aplikasi. Kerangka berpikir tersebut dapat dilihat pada gambar 3.1.

Gambar 3.1 Kerangka Berpikir (Sumber: data diolah)


(69)

3.2.1. Wawancara

Pada tahap awal perancangan aplikasi ini, terlebih dahulu dilakukan wawancara dengan pihak-pihak terkait guna mendapatkan informasi tentang permasalahan dan kebutuhan aplikasi yang akan dirancang. Wawancara dilaksanakan dengan pihak dari Pusat Bahasa UIN Syarif Hidayatullah Jakarta, dalam hal ini langsung kepada Kepala Pusat Bahasa yakni Bapak Dr. Atiq Susilo, MA. Dari hasil wawancara yang telah dilaksanakan, diperoleh hasil sebagai berikut:

a. Pusat Bahasa menyelenggarakan tes TOEFL PBT yang bersifat institusional yang mengacu pada standar baku TOEFL dari ETS (Educational Testing Service).

b. Pusat Bahasa menyediakan modul dan kursus bagi calon peserta tes dengan biaya tersendiri. Namun, sedikit sekali yang memanfaatkan fasilitas ini.

c. Pusat Bahasa belum menyediakan sistem pembelajaran TOEFL yang bersifat online.

d. Pusat Bahasa belum menyediakan fasilitas simulasi tes, baik

yg online ataupun bentuk lainnya.

Hasil wawancara selengkapnya dapat dilihat di lampiran. 3.2.2. Kuesioner

Pada penelitian ini yang menjadi target secara khusus adalah mahasiswa UIN Syarif Hidayatullah Jakarta yang melaksanakan tes


(70)

50  

TOEFL di Pusat Bahasa. Untuk mengetahui permasalahan dan keinginan yang diharapkan oleh calon pengguna aplikasi ini, maka dilakukan penyebaran kuesioner kepada mahasiswa yang akan dijadikan sampel data.

Pengambilan sampel dilakukan dengan teknik Cluster

Sampling. Cluster Sampling adalah teknik pengambilan sampel yang

memberikan peluang sama bagi setiap unsur populasi untuk menjadi anggota sampel berdasarkan bagian/area yang ada (Sugiyono, 2009: 65). Alasan penggunaan teknik pengambilan sampel ini adalah karena jumlah populasi (Mahasiswa UIN) yang cukup besar dan terdiri dari beberapa bagian (fakultas). Untuk mendapatkan hasil yang mampu menggambarkan/mewakili populasi yang besar ini, maka sampel diambil dengan jumlah yang sama dari setiap bagian (fakultas). Sampel yang diambil sebanyak 50 orang mahasiswa yang mewakili fakultas-fakultas yang ada di UIN Syarif Hidayatullah Jakarta dengan masing-masing fakultas diwakili oleh 5 orang.

Kuesioner yang diberikan kepada sampel ini dilakukan sebanyak dua kali, yang pertama yaitu kuesioner pada tahap awal sebelum pengembangan aplikasi yang bertujuan untuk mengetahui keinginan dari calon pengguna aplikasi dan kuesioner yang kedua pada tahap akhir untuk pengujian aplikasi yang bertujuan untuk mengetahui respon pengguna terhadap apliksi yang telah dirancang.


(1)

E-5

Jawaban.php

<?php

include('soal.php');

?>

<form method="post"

action="proses_temp_jawaban.ph p" id="frmJawab"

name="frmJawab"> <table border="0"

align="center" width="100%"> <tr>

<td colspan="5" align="center" width="100%">

<?php ?>

<input id="btnMulai"

name="btnMulai" type="button" value="Mulai"

onclick="fungsi(<?php echo "$id_soal";?>,<?php echo "$jml_soal";?>)" /> <input id="btnBatal"

name="btnBatal" type="hidden" value="Batal"

onclick="confirmExit('')" /> <input id="tipe_soal"

name="tipe_soal" type="hidden" value="<?php echo

"$tipe_soal";?>" /> </td>

</tr> <tr>

<td colspan="5"

align="center">&nbsp;</td> </tr>

</table>

<table border="1"

align="center" width="100%"> <tr align="center"

bgcolor="#00CCFF"> <th>No.</th>

<th>A</th> <th>B</th> <th>C</th> <th>D</th> </tr> <?php

for($i=1;$i<=$jml_soal;$ i++)

{ ?>

<tr align="center">

<td><?php echo "$i.";?></td> <td><input type="radio" id="jawab1<?php echo

"$id_soal";?><?php echo "$i";?>" name="jawab[<?php echo "$id_soal";?>][<?php echo "$i";?>]" value="A"<?php

if(($_COOKIE['waktux']=="")||( $_COOKIE['waktux']==0)) echo " disabled=\"disabled\"";?> /></td>

<td><input type="radio" id="jawab2<?php echo "$id_soal";?><?php echo "$i";?>" name="jawab[<?php echo "$id_soal";?>][<?php echo "$i";?>]" value="B"<?php

if(($_COOKIE['waktux']=="")||( $_COOKIE['waktux']==0)) echo " disabled=\"disabled\"";?> /></td>

<td><input type="radio" id="jawab3<?php echo "$id_soal";?><?php echo "$i";?>" name="jawab[<?php echo "$id_soal";?>][<?php echo "$i";?>]" value="C"<?php

if(($_COOKIE['waktux']=="")||( $_COOKIE['waktux']==0)) echo " disabled=\"disabled\"";?> /></td>

<td><input type="radio" id="jawab4<?php echo "$id_soal";?><?php echo "$i";?>" name="jawab[<?php echo "$id_soal";?>][<?php echo "$i";?>]" value="D"<?php

if(($_COOKIE['waktux']=="")||( $_COOKIE['waktux']==0)) echo " disabled=\"disabled\"";?> /></td>

</tr> <?php

} ?>

</table>

<script language="javascript"> function confirmExit(exitUrl) {

if (confirm("Apakah Anda yakin ingin membatalkan tes

TOEFL?")) {

document.location = exitUrl; habis=0;

jalan = 0;

setCookie('waktux',"",-1); setCookie('tombol',""); clearTimeout(t);

init(); }

}


(2)

E-6 var i,j;

var id_name;

for(i=1;i<=jml;i++) {

for(j=1;j<=4;j++) {

id_name="jawab"+j+id+i; document.getElementById( id_name).disabled="";

} }

mulai(); audio(); }

function audio() { if(habis==0) {

<?php

if($section="listening") {

?>

document.getElementById( "divaudio").innerHTML =

"<embed src=\"<?php echo "audio/$audio";?>\" hidden=\"true\" autostart=\"true\"

loop=\"false\"></embed>"; <?php

} ?>

} }

</script>

<div id="divaudio"></div> <input type="hidden"

name="id_soal" value="<?php echo "$id_soal";?>" /> <input type="hidden"

name="section" value="<?php echo "$section";?>" /> <input type="hidden"

name="jml_soal" value="<?php echo "$jml_soal";?>" /> </form>

Hitung_jawaban.php

<?php

session_start(); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/D TD/xhtml1-strict.dtd">

<html

xmlns="http://www.w3.org/1999/ xhtml">

<!-- header begins --> <?php

include 'header.php';

?>

<script language="javascript"> function pindah(pindahUrl) {

document.location =

pindahUrl; }

</script>

<!-- header ends --> <!-- content begins --> <div id="main">

<div id="right">

<h2>Hasil TOEFL</h2><br

/>

<h4>Skor TOEFL anda</h4><br />

<?php

include("connection.php" );

$id_user=$_SESSION['id_u ser'];

$id_soal=$_GET['id_soal' ];

$jumlah=0;

$result=mysql_query("sel ect * from temp_skor where id_user=$id_user");

$num_rows=mysql_num_rows ($result);

if($num_rows>0) {

while($data=mysql_fetch_ array($result))

{

$skor=$data['skor']; $jumlah+=$skor;

} }

$skor=$skor*10/3;

//Menghilangkan koma

$skor=number_format($sko r,0);


(3)

E-7 //skor minimal 310

if ($skor<=310)

$skor=310;

else $skor=$skor;

?>

<div

align="center"/><font size="4">Skor TOEFL anda adalah </font><br /><font size="7"><?php echo

"$skor";?></font></div>

<?php

//Menghapus semua data jawaban sementara

//header("location:soal_ utama.php");

//Menginput hasil skor toefl user

$result=mysql_query("sel ect * from temp_skor where id_user=$id_user");

$data=mysql_fetch_array( $result);

$tipe_soal=$data['tipe_s oal'];

$tanggal=date("Y-m-d H:i:s");

$add_skor_user=mysql_que ry("insert into

skor_user(id_user,tipe_soal,sk or,created_date)

values($id_user,'$tipe_soal',$ skor,'$tanggal')");

//$result_delete=mysql_q uery("update temp_skor set skor=NULL where

id_user=$id_user");

$result_delete=mysql_que ry("update temp_skor set

tipe_soal=NULL,skor=NULL where id_user=$id_user");

?> <br />

<input type="button"

value="Ulangi" name="btnUlang" onclick="pindah('soal_utama.ph p')" />

</div> <!--content ends --> <!--left-->

<?php

include "left.php"; ?>

</body> </html>

Latihan_toefl.php

<?php

session_start(); ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/D TD/xhtml1-strict.dtd">

<html

xmlns="http://www.w3.org/1999/ xhtml">

<!-- content begins --> <div id="main">

<div id="right">

<h2>Latihan TOEFL</h2><br />

<h4>Jawablah pertanyaan dengan

benar!</h4><br /> <?php

include('connection.php' );

$no=1;

$id=$_GET['id']; $result=mysql_query("sel ect * from latihan order by rand() limit 1");

$num_rows=mysql_num_rows ($result);

if($num_rows>0) {

while($data=mysql_fetch_ array($result))

{

$id_latihan=$data['id_la tihan'];

$id_materi=$data['id_mat eri'];

$soal=$data['soal']; $jawaban=$data['jawaban' ];


(4)

E-8 $penjelasan=$data['penje lasan'];

}

//Materi TOEFL

$result_materi=mysql_que ry("select * from materi where id_materi=$id_materi");

$num_rows_materi=mysql_n um_rows($result_materi);

if($num_rows_materi>0) {

$data_materi=mysql_fetch _array($result_materi);

$judul_materi=$data_mate ri['judul_materi'];

}

$_COOKIE['jawaban']=$jaw aban;

?>

<script language="javascript"> function cekJawaban() {

jawab=<?php echo

"\"$jawaban\"";?>;

if(document.getElementBy Id("jawabanA").checked)

{

jawabUser="A"; }

else

if(document.getElementById("ja wabanB").checked)

{

jawabUser="B"; }

else

if(document.getElementById("ja wabanC").checked)

{

jawabUser="C"; }

else

if(document.getElementById("ja wabanD").checked)

{

jawabUser="D"; }

//jawabUser=toUpperCase( jawabUser);

if(jawab==jawabUser)

{

document.getElementById( "cocok").innerHTML="<font color=\"#0000FF\">Benar</font> ";

} else {

document.getElementById( "cocok").innerHTML="<font color=\"#FF0000\">Salah</font> ";

}

document.getElementById( "benar").innerHTML=jawab; document.getElementById( "penjelasan").innerHTML="<?php $penjelasan=ltrim($penjelasan) ;$penjelasan=rtrim($penjelasan );echo "$penjelasan";?>"; document.getElementById( "materi").innerHTML="<a

href=\"rincian_materi.php?id=< ?php echo

"$id_materi";?>\"><?php echo "$judul_materi";?></a>"; }

function getCookie(c_name){ if

(document.cookie.length>0){

c_start=document.cookie.indexO f(c_name + "=");

if (c_start!=-1){ c_start=c_start + c_name.length+1;

c_end=document.cookie.indexOf( ";",c_start);

if (c_end==-1) c_end=document.cookie.length; return

unescape(document.cookie.subst ring(c_start,c_end));

} }

return ""; }

function

setCookie(c_name,value,expired ays){

var exdate=new Date();

exdate.setDate(exdate.getDate( )+expiredays);


(5)

E-9 document.cookie=c_name+

"="

+escape(value)+((expiredays==n ull) ? "" :

";expires="+exdate.toGMTString ());

}

function pindah(setUrl) { document.location=setUrl ;

}

</script> <br />

<div id="kue"></div> <table align="center" border="0" width="80%"> <tr>

<td align="justify"

colspan="5" width="92%"><?php echo "$soal";?></td>

</tr> <tr>

<td

rowspan="4">&nbsp;</td> <td

width="20%">Jawab</td>

<td align="center">:</td>

<td align="center"

width="30%"><input

id="jawabanA" type="radio" name="jawaban" value="A" />&nbsp;A&nbsp;&nbsp;&nbsp;<in put id="jawabanB" type="radio" name="jawaban" value="B"

/>&nbsp;B&nbsp;&nbsp;&nbsp;<in put id="jawabanC" type="radio" name="jawaban" value="C"

/>&nbsp;C&nbsp;&nbsp;&nbsp;<in put id="jawabanD" type="radio" name="jawaban" value="D"

/>&nbsp;D</td>

<td align="center"><input width="200px" type="button" name="cek" value="Cek Jawaban" onclick="cekJawaban()"></td> <td width="20%"

align="center"><strong><div id="cocok"></div><strong/></td >

</tr> <tr>

<td>Jawaban Benar</td>

<td align="center">:</td> <td colspan="3"><div id="benar"></div></td> </tr>

<tr>

<td>Penjelasan</td> <td align="center">:</td> <td colspan="3"><div id="penjelasan"></div><?php //echo

"$penjelasan_latihan";?></td> </tr>

<tr>

<td>Materi terkait</td>

<td align="center">:</td> <td colspan="3"><div id="materi"></div></td> </tr>

</table><br /> <br />

<table align="center" width="80%">

<tr>

<td

align="center"><input

type="button" name="btnLanjut" value="Lanjut"

onclick="pindah('latihan_toefl .php?id=<?php echo

"$id_latihan";?>')" /></td> </tr>

</table> <?php

} ?> </div> <!--content ends --> <!--left-->

<?php

include "left.php"; ?>

</body> </html>

Proses_login.php

<?php

session_start(); $username =

$_POST['username']; $password =

$_POST['password'];

if(trim($username!="")&&trim($ password!=""))

{

include 'connection.php';


(6)

E-10

$query_login =

mysql_query("select count(*) as login from user where username='$username' and password='$password'");

$row =

mysql_fetch_array($query_login );

if($row["login"]=="1") {

$result=mysql_query("sel ect * from user where

username='$username' and password='$password'");

$data=mysql_fetch_array( $result);

$id_user=$data['id_user' ];

$nama=$data['nama_lengka p'];

$tingkat=$data['tingkat_ user'];

session_register("id_use r");

$query_temp=mysql_query( "select * from temp_skor where id_user=$id_user");

$jumlah=mysql_num_rows($ query_temp);

if(!($jumlah>0)) $add_temp=mysql_query("i nsert into

temp_skor(id_user,section,skor ) values($id_user,0,NULL)"); else

$update_temp=mysql_query ("update temp_skor set

section=0,skor=NULL where id_user=$id_user");

//Memindahkan halaman

//echo "$tingkat";

if($tingkat==1) header("location:index.p hp");

else

header("location:admin/" );

} else {

$result=mysql_query("sel ect * from user where

username='$username'");// order by id desc

$jumlah=mysql_num_rows($ result);

if($jumlah>0) {

session_register("userna me");

header("location:login.p hp?u=1");

}

else

header("location:login.p hp?up=1");

} }

else {

if(($username=="")&&($pa ssword==""))

{

header("location:login.p hp?kosong=1");

}

elseif($username=="") {

header("location:login.p hp?kosong=2");

} else {

session_register("userna me");

header("location:login.p hp?kosong=3");

} }