i
Universitas Sanata Dharma)
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Informatika
Oleh :
Theodora Christina Merryani
NIM
: 005314099
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
Universitas Sanata Dharma)
A THESIS
Presented As Partial Fulfillment Of The Requirements
To Obtain The
Sarjana Teknik
Degree
In Informatics Engineering
By :
Theodora Christina Merryani
Student Number : 005314099
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF ENGINEERING
SANATA DHARMA UNIVERSITY
v
--vi
Papaku tersayang, walau
kau tidak ada didekatku tapi aku tau kau selalu menemaniku
vii
yang pernah diajukan untuk memperoleh gelar kesarjanaan di suatu Perguruan
Tinggi, dan sepanjang pengetahuan saya juga tidak terdapat karya atau pendapat
yang pernah ditulis atau diterbitkan oleh orang lain, kecuali yang secara tertulis
diacu dalam naskah ini dan disebutkan dalam daftar pustaka.
Yogyakarta, ...
Penulis,
viii
Dharma masih terdapat kegiatan yang dilakukan secara manual khususnya pada
pengolahan soal dan pada perhitungan skore. Hal ini menyebabkan proses scoring
menjadi lama dan tidak efisien dalam pengambilan keputusan.
Dalam skripsi ini dibuat program untuk otomatisasi program manual yang
terjadi. Hasil dari perancangan sistem baru berupa program bantu yang diharapkan
dapat membantu pelaksanaan test secara komputerisasi sehingga perhitungan
skore akan lebih mudah dilakukan dan tidak memakan waktu lama. Dan juga soal
â soal yang ingin diujikan dapat lebih bervariatif.
ix
makes a processing scoring becomes long and not efficient to get decision.
In this final project we make a program for automation manual program at
the old system. The result of the new system schemes as aid program
computerization hoped would help scoring process becomes easier and faster. And
than the questions can more variation.
x
sehingga penulis dapat menyelesaikan Tugas Akhir dengan judul
âPROGRAM
BANTU TES PSIKOLOGI (Studi Kasus : Pusat Pelayanan Tes Konsultasi
dan Psikologi Universitas Sanata Dharma) â
Penyusunan Tugas Akhir ini dimaksudkan guna memenuhi salah satu persyaratan
mencapai derajat S-1. Gelar kesarjanaan dalam Jurusan Teknik Informatika pada
Fakultas Teknik Universitas Sanata Dharma Yogyakarta.
Tugas Akhir ini dapat tersusun berkat adanya bimbingan, petunjuk,
bantuan maupun saran â saran dari berbagai pihak. Oleh karena itu penulis ingin
mengucapkan terima kasih yang sebesar-besarnya kepada :
1. Romo Ir. Gregorius Heliarko S.J., S.S., B.S.T., M.A., M.Sc., selaku Dekan
Teknik Universitas Sanata Dharma.
2. Ibu Agnes Maria Polina, S.Kom, M.Sc, selaku Ketua Jurusan Teknik
Informatika Universitas Sanata Dharma.
3. Drs. Jong Jek Siang MSc, Selaku dosen Pembimbing satu
4. Bpk. Priyo dan segenap karyawan yang telah memberikan ijin kepada saya
untuk melaksanakan penelitian Tugas Akhir.
5. Staf Dosen Jurusan Teknik Informatika Universitas Sanata Dharma
Yogyakarta.
6. Seluruh Staff dan semua petugas di Sekretariat Teknik Teknik Informatika
xi
terutama Bowo,
Mylovely
Dion, Mas Dino, Unang, Mas Agus dan Pak
Bele, Pak Dar, Mas Danang.
9. Buat temenku yang jauh dimata tetapi tak henti hentinya kasih semangat,
hendra, nono, hendri(G-ponk), Ignatius, dll.
10. Buat Dewa, Danang, Chandra, Gundul, Dwi Leak, Gina, Moko, Tessa,
Linda, Wiwin, Desi, Hana, Epin, Rosi, Lia dan temen- temen seperjuangan
TIâ00.
11. Semua pihak yang telah membantu penulis dalam penyusunan Tugas
Akhir ini.
Penulis sangat menyadari bahwa penyusunan dari Tugas Akhir ini masih
jauh dari sempurna, adanya kritik saran maupun petunjuk sangat membantu demi
perbaikan dan penyempurnaan Tugas Akhir ini. Namun besar harapan penulis
kiranya dapat bermanfaat bagi kita semua.
Yogyakarta,
xii
Halaman Pengesahanâ¦â¦â¦...
iv
Halaman Persembahanâ¦â¦â¦...
v
Halaman Pernyataan Keaslian Karyaâ¦â¦â¦.
vii
Halaman Abstraksiâ¦â¦â¦.
viii
Halaman Abstractâ¦â¦â¦...
ix
Kata Pengantarâ¦â¦â¦...
x
Daftar Isiâ¦â¦â¦.
xii
Daftar tabel dan gambarâ¦â¦â¦.
xv
BAB I PENDAHULUAN
â¦â¦â¦
1
1.1 Latar Belakang Masalah â¦â¦â¦â¦.â¦â¦â¦.
1
1.2 Perumusan Masalah â¦â¦â¦.
2
1.3 Pembatasan Masalah â¦â¦â¦..â¦â¦â¦..
2
1.4 Tujuan Penelitian â¦â¦â¦..â¦â¦â¦
3
1.5 Metodologi Penelitian â¦â¦â¦
3
1.6 Sistematika Pembahasan â¦â¦â¦
4
BAB II LANDASAN TEORI
....â¦â¦â¦
6
II.1 Defini Program Bantu â¦â¦â¦.â¦â¦â¦...
6
II.2 User interface â¦â¦â¦.â¦â¦â¦
7
xiii
II.6.1 Macam Tes Psikologi ...
13
II.6.2 Kemampuan ...
13
II.6.3 Kepribadian ...
14
II.6.4 Inteligensi ...
14
II.7 Tes Potensi Akademikâ¦â¦â¦.
15
II.8 Tes Kepribadian â¦â¦â¦
16
BAB III ANALISA dan PERANCANGAN SISTEM
â¦.â¦â¦â¦.
17
III.1 Analisis Sistem â¦â¦â¦
17
III.2. DFD (Data Flow Diagram)â¦â¦...â¦â¦â¦..
19
III.2.1 Context Diagram...
19
III.2.2 Diagram Berjenjang...
20
III.2.3. Overview Diagram...
21
III.2.4 DFD Level 1 Proses 2...
22
III.2.5 DFD Level 1 Proses 3...
23
III.2.6 DFD Level 1 Proses 4...
24
III.2.7 DFD Level 1 Proses 5...
25
III.2.8 DFD Level 1 Proses 6...
26
xiv
Desain Logika(Logical Design)...
30
III.3.3 Perancangan Tabel(Physical Design)...
31
III.3.4 Perancangan Antar Muka (Interface Design)...
38
III.3.5 Desain Teknologi...
53
BAB IV IMPLEMENTASI SISTEM
IV.1 Struktur Menu Program...
55
IV.2 Tampilan Program dan Penjelasan...
58
IV.2.1 Potongan Program...
58
IV.2.2 Halaman Login...
75
IV.2.3 Halaman Administrator...
75
IV.2.4 Halaman Pembuat Soal...
88
IV.2.5 Halaman Peserta...
100
IV.2.6 Analisis Hasil...
103
BAB VI PENUTUP
â¦â¦â¦..â¦â¦â¦... â¦.
105
VI.1 Kesimpulanâ¦â¦â¦ â¦.
105
VI.2 Saranâ¦â¦â¦
105
xv
3.2
Diagram Berjenjang
20
3.3
Overview Diagram
21
3 4
DFD Level 1 Proses 2
22
3.5
DFD Level 1 Proses 3
23
3.6
DFD Level 1 Proses 4
24
3.7
DFD Level 1 Proses 5
25
3.8
DFD Level 1 Proses 6
26
3.9
DFD Level 1 Proses 7
27
3.10
Entity Relationships Diagram
29
3.11
Physical Tabel
30
3.12
Desain Tampilan Login
38
3.13
Desain Tampilan Soal
39
3.14
Desain Tampilan Menu Administrator
40
3.15
Desain Tampilan Input Karyawan
41
3.16
Desain Tampilan Input Peserta
41
3.17
Desain Tampilan Input Perusahaan
42
3.18
Desain Tampilan Hasil Peserta
43
xvi
3.23
Desain Tampilan Input Pembuat Soal
47
3.24
Desain Tampilan Input Macam Test
48
3.25
Desain Tampilan Input Tipe Test
48
3.26
Desain Tampilan Input Soal
49
3.27
Desain Tampilan Lihat Soal
50
3.28
Desain Tampilan Setting Test
51
3.29
Desain Tampilan Hapus Test
52
4.1
Struktur Menu bagian Peserta
55
4.2
Struktur Menu bagian Administrator
56
4.3
Struktur Menu bagian Pembuat Soal
57
4.4
Halaman Login
75
4.5
Halaman Utama Administrasi
76
4.6
Halaman Tambah Data Karyawan
77
4.7
Halaman Update Data Karyawan
78
4.8
Halaman Tambah Data Perusahaan
79
4.9
Halaman Update Data Perusahaan
80
4.10
Halaman Tambah Data Peserta
81
xvii
4.15
Halaman Data Keseluruhan
85
4.16
Halaman Data Grafik Tipe Test
86
4.17
Halaman Data Grafik Keseluruhan
87
4.18
Halaman Ganti Password
88
4.19
Halaman Menu Pembuat Soal
89
4.20
Halaman Pembuat Soal
90
4.21
Halaman update Pembuat Soal
90
4.22
Halaman Data Macam Test
91
4.23
Halaman update Data Macam Test
92
4.24
Halaman Data Tipe Test
93
4.25
Halaman update Data Tipe Test
93
4.26
Halaman Input Soal
94
4.27
Halaman update Input Soal
95
4.28
Halaman Lihat Soal
96
4.29
Halaman Pilih Soal Manual
97
4.30
Halaman Atur Test Urut
98
4.31
Halaman Urutan Atur Test Urut
98
xix
3.2
Tabel Perusahaan
32
3.3
Tabel Peserta
33
3.4
Tabel Pilihan
34
3.5
Tabel Macam Test
34
3.6
Tabel Tipe Test
35
3.7
Tabel Soal
35
3.8
Tabel Jawaban
36
3.9
Tabel Pembuat Soal
37
1
I..1
Latar Belakang Masalah
Ketatnya persaingan dalam dunia kerja maupun kebutuhan akan mahasiswa
atau siswa yang berprestasi membuat perusahaan ataupun universitas menyeleksi
dengan tepat siapa saja yang boleh bergabung dalam perusahaannya dan
universitasnya. Untuk menjadi seorang pekerja dan siswa dalam sebuah
perusahaan bukan hanya memiliki ketrampilan dan bakat yang diperlukan tetapi
juga memiliki kepribadian yang plus karena sifai-sifat kepribadian mungkin dapat
mengakibatkan sukses atau kegagalan dalam suatu pekerjaan atau
study
Untuk itu
sebelum masuk ke sebuah perusahaan atau universitas biasanya dilakukan
berbagai macam tes antara lain tes psikologi.
Kehadiran komputer memberikan satu langkah baru dalam dunia
komunikasi. Teknologi komputer yang berkembang demikian pesat telah
memberikan solusi informasi dan komunikasi yang cepat, murah, dan mengglobal.
Berbagi macam solusi ditawarkan untuk mencapai kemudahan tersebut. Dengan
melakukan tes psikologi secara manual tentu akan banyak memakan waktu baik
untuk pengerjaan
ataupun dalam perhitungan dan ketepatan perhitungan pun
tidak dijammin keakuratannya. Sehingga pihak perusahaan tidak dapat dengan
perusahaannya. Maka dibuat sebuah program bantu untuk masuk suatu
perusahaan atau universitas.
I.2
Perumusan Masalah
Dengan penulisan ini diharapkan dapat menyelesaikan permasalahan tes
psikologi yaitu dengan membuat sebuah program bantu, sbb:
ï»
Bagaimana sistem ini dapat membantu user dalam melakukan test
psikologi secara komputerisasi .
Dari perancangan dan implementasi sistem tersebut akan ditarik kesimpulan yang
diharapkan mampu menjawab permasalahan yang ada.
I.3
Pembatasan Masalah
Dalam proyek akhir ini akan dilakukan pembahasan masalah sebagai
berikut :
1. Dalam tes psikologi materi tes yang diberikan adalah Tes Potensi
Akademik dan Test Kepribadian
2. Sistem dipakai di P2TKP Universitas Sanata Dharma
3. Tes dibuat berbasis intranet
I.4
Tujuan
Berdasarkan latar belakang yang telah dicantumkan diatas, maka tujuan
proyek akhir ini adalah:
ï»
Membuat program psikotest secara elektronik. Diharapkan perangkat
lunak ini akan memberi kemudahan dan kecepatan waktu dalam
mengoreksi atau memproses hasil ujian masuk bagi perusahaan atau
lembaga study yang ingin melakukan test dimana sistem akan
memberikan kemudahan bagi perusahaan dan lembaga study dalam
merekrut calon karyawan dan calon siswa
I.5
Metodologi Penulisan
Metode yang digunakan pada pembuatan proyek akhir ini antara lain :
1. Survei ke P2TKP Fakultas Psikologi Universitas Sanata Dharma
Dalam survei ke P2TKP fakultas psikologi ini yang dilakukan adalah
melakukan
wawancara
dengan
pihak-pihak
yang
terkait
tentang
bagaimana cara membuat tes masuk perusahaan dan menanyakan bentuk
soal tes sampai cara perhitungannya.
2. Studi Pustaka
Selain melakukan survei juga mencari literatur-literatur yang berhubungan
dengan tes bakat seperti mencari soal-soal tes, aturan-aturan dalam tes dan
3. Perancangan Sistem
Setelah melakukan survei dan studi pustaka langkah berikutnya adalah
membuat
perancangan.
Perancangan
sistem
yang
dibuat
adalah
perancangan input, output, database.
4. Implementasi
Setelah
perancangan
sistem
langkah
berikutnya
adalah
mengimplementasikan kedalam bahasa pemrograman php dan My Sql.
5. Uji Coba
Pada tahap ini dilakukan uji coba program dengan tujuan untuk
mengetahui apakah program bantu ini cocok digunakan di P2TKP
I.6
Sistematika Pembahasan
Proyek akhir ini akan ditulis dalam 6 bab dengan sistematika pembahasan
sebagai berikut:
BAB I
: Pendahuluan
Bab pendahuluan memuat latat belakang masalah, rumusan
masalah,
batasan
masalah,
tujuan
masalah,
metodologi
BAB II
: Landasan Teori
Bab ini berisi uraian mengenai teori-teori dasar mengenai definisi
program bantu, perancangan sistem, basis data, rekayasa
perangkat lunak, definisi kemampuan dan bakat.
BAB III
: Desain Sistem
Bab ini menjelaskan tentang gambaran umum sistem, analisa
kebutuhan, perancangan sistem, desain interface.
BAB IV
: Analisa dan Implementasi
Mengimplementasikan dan menganalisa perancangan sistem ke
dalam bahasa pemrograman.
BAB V
: Kesimpulan dan Saran
Memberikan kesimpulan atas semua yang telah dibuat, selain itu
6
Bab ini akan memberikan landasan teori yang mendukung penulisan tugas
akhir ini. Hal-hal yang akan dijelaskan disini antara lain tentang Pengertian
Program Bantu, user Interface, HTML, Scrip PHP, Basis Data MySQL,
Perancangan Sistem, Database, Definisi Tes Psikologi
II.1
Defini Program Bantu
Fungsi dari program Bantu sama dengan system pakar dimana
masing-masing berguna untuk membantu manusia dalam memecahkan suatu masalah.
Program Bantu sendiri mempunyai arti bahwa komputer sebagai alat Bantu
manusia dalam mengatasi suatu hal. (Computer Aid cabang baru yang mulai
berkembang, Suara Pembaruan, Jakarta : P.9 kol 3-6.) Dapat dikatakan bahwa
sebenarnya cabang ini bersumber dari kecerdasan buatan, dalam hal ini system
pakar. Karena sifat dari program bantu memiliki sumber pengetahuan yang
lengkap, seperti halnya kecerdasan buatan, namun konsep pemahamannya sudah
sedikit berbeda dengan konsep sistem pakar. Dalam sistem pakar, diartikan bahwa
program komputer dapat bertindak sebagai penasehat atau konsultan yang
pintar.(Suparman, Mengenal Artificial Intelligence, Andi Offset, Yogyakarta,
pemakai yang tidak berpengalaman sekalipun dapat memecahkan suatu masalah
sistem pakar.
Pemahaman yang dimiliki oleh program bantu sedikt lebih berkembang
dari konsep sistem pakar. Konsep program bantu lebih dikembangkan kearah
interaksi antara manusia dan komputer. Dalam hal-hal tertentu sistem pakar tidak
bisa memberikan penilaian atas keputusan yang diambil oleh seseorang. Yang
dapat dilakukan oleh sistem pakar adalah memberikan informasi guna dapat
mengambil suatu keputusan. Berbeda dengan program bantu yang selalu
memberikan tanggapan atas suatu keputusan yang diambil dan akan ada interaksi
antara manusia dan komputer.
Dan juga program bantu harus dapat berisikan menampilkan teori tentang
masalah yang sedang dibahas, mampu menjawab masalah tersebut, serta mampu
memberikan suatu evaluasi terhadap kemampuan seseorang terhadap masalah
tersebut.
II.2
User interface
Ketika seseorang bekerja dengan sebuah komputer, ia akan melakukan
interaksi dengan komputer menggunakan cara-cara tertentu. Cara yang umum
dilakukan adalah bahwa pengguna memberikan suatu perintah kepada komputer
dan komputer menanggapinya dengan mencetak atau menuliskan tanggapan itu
pada layar tampilan. Dengan kata lain, lewat masukan dan keluaranlah pengguna
Dalam antar muka grafis, grafika komputer seolah-olah menyediakan
suatu bahasa antar muka manusia / pemakai yang baru, karena âdialogâ antara
manusia dan pemakai dan komputer tidak lagi melalui suatu perintah yang harus
diketikkan dari papan ketik, tetapi pemakai cukup memilih suatu simbol atau ikon
yang tersedia pada layar untuk mengerjakan suatu aktivitas yang akan dikerjakan.
Pemilihan ikon bisa dilaksanakan dengan beberapa piranti masukan seperti
mouse, pena cahaya,dll.
II.3
HTML
HTML adalah singkatan dari Hyper Text Markup Language merupakan
salah satu format yang digunakan dalam dokumen dan aplikasi yang berjalan di
web browser. Dokumen HTML adalah file teks murni yang dapat dibuat dengan
disembarang teks editor yang dikenal sebagai dokumen web page. HTTP
(hypertext transfer protocol) merupakan protokol yang digunakan untuk
mentransfer dokumen-dokumen web yang ditulis atau berformat HTML. Disebut
sebagai markup language karena HTML, berfungsi untuk âmemperindah â file
teks biasa untuk ditampilkan pada program web browser. Hal ini dilakukan
dengan menambahkan elemen atau sering disebut sebagai tag-tag pada file teks
biasa tersebut.
Tag HTML biasanya merupakan tag-tag yang berpasangan dan ditandai
dengan simbol â<â dan â>â Pasangan dari sebuah tag ditandai dengan tanda â/â.
Misalnya pasangan dari tag <contoh> adalah </contoh>. Dalam hal ini <contoh>
atribut1ââ atribut 2ââ â¦> Dalam penulisan tag HTML.tidak case sensitive artinya
penggunaan huruf kecil ataupun kapital tidaklah menjadi masalah.
Struktur dasar dari HTML, yaitu :
<HTML>
<head>
<title>judul<title>
</head>
<body>ISI
<body>
</HTML>
Properti dokumen diatur melalui atribut-atribut yang terdapat dalam
elemen <body>.Berbagai macam elemen yang mendukung kerja dari HTML.
Antara lain elemen heading, elemen paragraf , elemen break, elemen horisontal,
elemen ragam karakter, elemen image, elemen tabel, dan elemen form, Form
HTML, merupakan tag yang paling penting, khususnya dalam membuat aplikasi
berbasis web. Form menyediakan properti masukan yang berupa texbox,
checkbox,radio button, dal lain sebagainya. Untuk mendeklarasikan
elemen-elemen form digunakan tag <form>â¦</form>. Atribut elemen-elemen form yaitu:
ACTION
: URL<from handler>
II.4
Script PHP
PHP adalah kependekan dari Professional Home Page. PHP merupakan
sebuah bahasa script server-side yang dapat digunakan bersama dengan bahasa
HTML,PHP digunakan untuk membangun aplikasi di web. Sintaks PHP ini mirip
dengan bahasa Perl dan C yaitu kesederhanaan dalam pemrosesan perintah. PHP
juga dapat dijalankan diberbagai platform (windows, Linux , dll)
Ada 2 macam PHP yang sekarang dikenal luas di kalangan web developer
yaitu PHP 3 dan PHP 4. PHP 3 adalah bahasa PHP versi pertama yang dibuat
oleh Rasmus Lerdorf. Andi Gutmans, Zeev Suraski, Stig Bakken, Shane Caraveo
dan Jim Winstead, setelah mengalami perkembangan yang signifikan dari rintisan
bahasa PHP/F1 dan PHP 2. PHP 4 adalah bahasa PHP yang didalamnya sudah
terdapat Zend engine sehingga lebih cepat, kuat, stabil, mudah untuk berinteraksi
dengan berbagai aplikasi pendukung lainnya seperti MySOL, Java, FTP client,
ODBC, GNU, dll. File-file PHP mempunyai ekstension php dan kompatibel
dengan php3.
Kode PHP diawali dengan tanda lebih kecil (<) dan diakhiri dengan tanda
lebih besar (>). Ada tiga cara untuk menuliskan script PHP, yaitu :
1. <?
Script PHP Anda
?>
2. <? Php
Script PHP Anda
3. <SCRIPT LANGUAGE =âphpâ>
Script PHP Anda
</SCRIPT>
Standar penulisan jika ada komentar sebagai berikut :
/* tulis komentar Anda disini */ atau //komentar Variabel dalam PHP adalah case
sensitive yang ditandai dengan tanda dollar($).
II.5
Basis data MySQL
Basis data adalah kumpulan data yang saling berhubungan yang disimpan
secara bersama sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan
mudah dan cepat atau kumpulan file/tabel/arsip yang saling berhubungan yang
disimpan dalam media penyimpanan elektronis.
MySQL adalah sebuah multi user database server menggunakan bahasa
Structured
Query Language (SQL) buatan T.c.X
DataKonsultAB, Swedia.
MySQL adalah basis data yang banyak digunakan. Karena sifatnya yang
opensource maka siapapun dapat menggunakan dan mengubahnya sesuai
kebutuhan. Bila aplikasi berbasis web bersifat dinamis (berubah dengan pola
tertentu menurut proses update) maka diperlukan basis data untuk pengelolaan
data. Basis data MySQL merupakan salah satu basis data yang dapat dipilih.
Secara umum akses ke database dilakukan melalui tiga tahapan, yaitu :
1. koneksi ke database (persiapan)
2. queriy/permintaan data (operasi)
Koneksi ke database dilakukan menggunakan fungsi-fungsi mysql connect
(), mysql pconnect(), mysql select db(). Mysql connect () digunakan untuk
koneksi ke program database MySQL. Sintaknya : mysql connect (nama host.,
nama user, password). MySQL pconnect () digunakan untuk membangun akses ke
database, koneksinya
tidak akan terputus meskipun program telah selesai
dieksekusi. MySQL create db() digunakan membuat sebuah database.
Contoh :
<?
$database = â bukutamuâ
$hostname =âlocalhostâ
$username =ârootâ
$password =ââ,
$koneksi = mysql connect ($hostname,$username,$password);
$mysql select db ($database,$koneksi);
?>
II.6
Definisi Tes Psikologi
Sebuah tes psikologi pada dasarnya adalah alat ukur yang objektif dan
dibakukan atas sampel perilaku tertentu. Tes-tes psikologi mirip dengan tes-tes
dalam ilmu âilmu lainnya, sejauh observasi dibuat atas sampel yang kecil namun
II.6.1 Macam Tes Psikologi
Pada dasarnya tes psikologi dibagi menjadi 2 yaitu Tes Potensi Akademik
dan Tes Kepribadian. Tetapi untuk berbagai keperluan dari dua macam jenis tes
tersebut dapat dikembangkan menjadi banyak macam tes psikologi. Ada banyak
macam tes psikologi yang ditawarkan oleh sejumlah ahli psikologi, antara lain Tes
Potensi Akademik untuk menentukan bakat, Tes IQ, Tes Kepribadian, Tes Untuk
Masuk Perguruan Tinggi, Tes Masuk Perusahaan, dll.
.
II.6.2 Kemampuan
Kata Kemampuan (ability) mempunyai arti khusus dalam psikologi,
mengacu pada potensi alamiah seseorang, juga apa yang dapat orang lakukan
setelah latihan. Kemampuan (ability) adalah reservoir potensial, dimana
pengalaman orang dimasa yang akan datang tidak memberikan peluang
kemampuan yang sebenarnya.
Tes kemampuan berusaha untuk mengidentifikasi bakat-bakat (
talents
)
yang tersembunyi didalam diri seseorang. Tes ini hanyalah merupakan contoh
(
sampel
) cara tertentu untuk dapat memahami, berfikir dan memecahkan
persoalan. Tes-tes itu sendiri kalihatannya akan berubah dari kebiasaan rutin,
namun merupakan contoh (
sampel
) dari potensi yang sama itu, dimana diperlukan
dalam suasana yang sebenarnya.
Dengan menggunakan tes-tes yang ada dapat menunjukkan jenis
pendidikan, latihan, pekerjaan yang sesuai dengan seseorang. Tes ini juga akan
Barangkali juga penyebab ketidak puasan dalam bekerja karena seseorang merasa
bahwa kemampuan yang dimiliki tidak dapat digunakan sebagaimana mestinya
(Jim Baret dan Geoff Williams, 2000)
II.6.3 Kepribadian
Kepribadian adalah sifat hakiki yang tercermin pada sikap seseorang yang
membedakan dirinya dari orang lain.Tes kepribadian biasanya berbentuk
pertanyaan mengenai pemikiran-pemikiran, perasaan-perasaan pribadi, dan
perilaku. Jika menginginkan penilaian realistis mengenai kemampuan seseorang,
maka seseorang itu harus melakukannya dengan jujur. Tes kepribadian berbeda
dari tes kemampuan karena tidak ada jawaban benar atau salah. Yang dihasilkan
adalah yang terbaik bagi seseorang karena itulah seseorang sebenarnya.
Sama halnya dengan struktur model kemampuan, model kepribadian
menyediakan
suatu
kerangka
deskriptif
kepribadian
yang
memberikan
kemampuan praktis untuk menggabungkan temperamen seseorang dengan karier
yang berbeda-beda dalam suatu proses yang sistematis dan objektif.
II.6.4 Inteligensi
Intelegensi adalah :
â Kualitas bawaan sejak lahir, sebagai hak yang berbeda dari kemampuan yang
diperoleh melalui pengalaman individualâ ( encyclopedia Britanian)
âKualitas bawaan sejak lahir, sebagai hal yang berbeda dari kemampuan yang
âKemampuan kognitif umum bawaan.â (Cyril Burt)
â...kecakapan untuk bertindak secara sengaja, berpikir secara rasional, dan
berhubungan secara efektif dengan lingkungan.â (D Wechsler)
â...kemampuan untuk melakukan pemikiran abstrak.â (Lewis M.Terman)
â...kemampuan untuk mengambil sikap yang tepat untuk menghadapi situasi
dalam sebuah lingkungan.â(Robert Franklin)
II.7
Tes Potensi Akademik
Tes Potensi Akademik adalah tes yang digunakan untuk menunjukkan
kekuatan dan
kelemahan kita pada bidang tertentu yang dapat dijadikan
pertimbangan bagi pilihan suatu bidang studi atau pekerjaan.
Macam untuk Tes Potensi Akademik adalah:
1. Tes Verbal
Tes verbal dimaksudkan untuk mengetahui kemampuan verbal seseorang. Tes
ini merupakan kemampuan verbal seseorang. Tes ini merupakan tes
sederhana, yang biasanya sangat mudah dan hampir-hampir tidak terpikirkan
lagi. Tujuannya untuk mengetahui pertimbangan seseorang dalam membuat
keputusan keputusan pribadi.
2. Tes Number
Tes number atau tes kuantitaif merupakan tes yang paling popular pada semua
menunjukkan kecerdasan seseorang. Pada tes ini diperlukan kecepatan
komputasi, daya abstaksi dan daya ingat yang baik.
3. Tes Logika
Tes logika merupakan tes inteligensi yang banyak dipakai terutama untuk
mecari tenaga-tenaga professional, atau tenaga menengah dan tenaga puncak.
Kemampuan analitis dan berfikir logis merupakan kemampuan yang perlu
dipunyai oleh tenaga â tenaga professional. Tes logika adalah salah satu tes
yang cukup sulit, yang merupakan salah satu tes untuk tenaga professional.
4. Tes Spasial
Tes Spasial adalah kemampuan melihat hubungan diantara ruang-ruang.
Nilai Akhir
Untuk Scoring Tes Potensi Akademik di P2TKP adalah jika benar dengan nilai 1
dan jika salah dengan nilai 0.
II.8
Tes Kepribadian
Tes Kepribadian adalah tes yang memungkinkan seseorang untuk
menjelajahi alam kepribadian seseorang, memeriksa sikap pribadi,
pendapat-pendapat, prasangka dan tingkah laku seseorang. (Peter Lauster)
Nilai Akhir
Scoring sesuai rumus dimana pada tiap sub tes dan tiap jawaban memiliki bobot
17
III.1 Analisis Sistem
Pada sistem lama kegiatan dilakukan secara manual baik pada pengolahan
soal maupun pada perhitungan skore. Sehingga akan susah dilakukan perubahan dan
pengeditan soal. Akhirnya soal â soal yang ada tidak bervariasi dan bersifat monoton
bahkan mungkin soal â soal yang ada sudah sejak lama dipakai berulang ulang.
Begitu juga dengan perhitungan skore yang berakibat terjadinya kesalahan pada
perhitungan skore karena human error.
Sistem yang ingin dikembangkan yaitu suatu program bantu sebagai penyedia
fasilitas untuk melakukan tes psikologi untuk masuk kedalam suatu perusahaan atau
tempat study. Dalam program bantu ini, peserta diberikan soal-soal yang sudah
disediakan oleh sistem. Peserta memilih jawaban yang menurutnya benar. Peserta
mengerjakan soal-soal sesuai dengan waktu yang telah ditentukan. Soal tes berupa
pilihan berganda. Agar efisien, sistem dapat dijalankan pada jaringan. Pada sistem
baru, soal â soal akan lebih bervariasi. Peserta juga tidak harus mulai pada waktu
yang sama. Dan akan menghemat biaya administrasi karena test dilakukan secara
komputerisasi.
Dari segi kebutuhan Sistem Informasi Administrasi ini dapat dilihat dari dua
user yang nantinya akan menggunakan sitem informasi ini. Ketiga user tersebut
adalah :
ï§
Bagian Administrasi
Fasilitas yang diharapkan dari sistem adalah :
1. Dapat memasukkan, mengupdate, dan melihat data karyawan.
2. Dapat memasukkan, mengupdate, dan melihat data perusahaan
3. Dapat memasukkan, mengupdate, dan melihat data peserta.
4. Dapat melihat hasil test peserta
ï§
Bagian Pembuat Soal
Fasilitas yang diharapkan dari sistem adalah :
1. Dapat memasukkan, mengupdate, dan melihat soal, waktu dan
petunjuk.
2. Dapat memilih tipe test apa saja yang akan diujikan sesuai dengan
perusahaan.
ï§
Peserta
Fasilitas yang diharapkan dari sistem adalah:
1. Mengikuti jalannya test dan memilih jawaban yang benar.
Program bantu ini pada server side membutuhkan web browser (umumnya
Internet explorer bila menggunakan sistem operasi windows) dan paket PHPTriad
yang didalamnya terdapat Web Server Apache, Database MySQL, bahasa
pemrograman berbasis web yaitu PHP serta PhpMyAdmin untuk pengelolaan
III.2 DFD (Data Flow Diagram)
Data Flow Diagram(DFD) merupakan diagram yang digunakan untuk
menggambarkan aliran proses data dari entitas ke sistem dan juga sebaliknya.
III.2.1 Context Diagram
20
21
III.2.4 DFD Level 1 Proses 2
III.2.5 DFD Level 1 Proses 3
III.2.6 DFD Level 1 Proses 4
III.2.7 DFD Level 1 Proses 5
III.2.8 DFD Level 1 Proses 6
III.2.9 DFD Level 1 Proses 7
III.3 Perancangan Sistem
Dalam merancang struktur basis data sistem ini, hal pertama yang
dilakukan adalah membuat E-R Diagram (
Entity Relational Diagram
) yang mana
diagram tersebut didasarkan atas persepsi obyek tersebut benar-benar ada
(
entities
) dan terdapat hubungan antar obyek (
relationship
). Kemudian dari
E-RDiagram tersebut kita dapat membuat relasi antar tabel. Pada relasi antara tabel
III.3.1 Entity Relationship Diagram ( Conceptual Design )
III.3.2 Relasi Antar Tabel Pada Database ( Logical Design )
Id_macam Nama_macam Petunjuk
Id_tipe * Id_macam ** Nama_tipe Waktu
Id_soal * Id_tipe ** Urutan_soal Bacaan Soal Gambar Jawaban Bobot benar
Id_pilihan * Id_prsh ** Id_tipe
acak
Id_jwbn * Id_pilihan ** Id_peserta jumlahsoal skore Id_prsh *
Nama_prsh Alamat telepon fax
Keterangan Tgl_test
Id_peserta * Id_prsh ** Nama_peserta Alamat sex
Tempat_lahir Tgl_lahir Pendidikan Telepon Agama Password Table Macam Test
Table Tipe Test
Table Perusahaan
Table Pilihan
Table peserta
Table Jawaban
Table Soal
Id_karyawan * Nama
Agama Alamat ttl
Pendidikan Telepon password Tabel Karyawan
Id_pemsol * Nama
password
Tabel pembuat_soal
Id_peserta * waktu
Tabel login
III.3.3 Tabel
a)
Tabel Karyawan
Tabel Karyawan adalah table yang berisi tentang data-data karyawan. Data
karyawan akan dikelola oleh bagian administrator.
Primary Key : id
Field
Tipe Data
Lebar
Keterangan
Id_karyawan
Int
4
Primary Key, Not Null
nama
Varchar
100
Nama Karyawan
Alamat
Varchar
100
Alamat Karyawan
Ttl
Varchar
8
Tanggal lahir karyawan
Agama
Varchar
15
Agama karyawan
Telepon
Varchar
15
Telepon Karyawan
Pendidikan
Varchar
5
Pendidikan terahir karyawan
Password
Varchar
1
Pasword Karyawan
b)
Tabel Perusahaan
Tabel Perusahaan ini berisi tentang data â data tentang perusahaan. Table
perusahaan ini dikelola oleh bagian administrator.
Primary Key : id_prsh
Field
Tipe Data
Lebar
Keterangan
Id_prsh
Int
6
Priamry Key , Not Null
Nama_prsh
Varchar
100
Nama Perusahaan
Alamat
Varchar
100
Alamat Perusahaan
Telepon
Varchar
15
Telepon Perusahaan
Fax
Varchar
20
No Faximil Perusahaan
Keterangan
Text
Keterangan tentang Perusahaan
Tgl_test
Date
Tanggal Test suatu perusahaan
Tabel 3.2 Tabel Perusahaan
c)
Tabel Peserta
Tabel Peserta ini digunakan untuk mengisi data-data peserta test. Data
Peserta test diisikan sesuai dengan nama perusahaan. Tabel peserta ini dikeloa
oleh bagian admnistrator.
Primary Key : id_peserta
Field
Tipe Data
Lebar
Keterangan
Id_peserta
Varchar
5
Primary Key, Not Null
Id_prsh
Int
5
Foreign Key
Nama_peserta
Varchar
100
Nama Peserta Test
Alamat
Varchar
100
Alamat Peserta Test
Sex
Varchar
10
Jenis Kelamin Peserta
Tempat_lahir
Varchar
50
Tempat Lahir Peserta
Tgl_lahir
Date
Tanggal Lahir Peserta
Pendidikan
Varchar
20
Pendidikan Terakhir Peserta
Telepon
Varchar
15
Telepon Peserta
Agama
Varchar
15
Agama Peserta
password
Varchar
10
Password Peserta
Tabel 3.3 Tabel Peserta
d)
Tabel Pilihan
Tabel pilihan digunakan untuk mengisi materi apa saja yang akan diujikan
untuk peserta sesuai dengan nama perusahaannya. Tabel ini dikelola oleh bagian
pembuat soal.
Primary Key : id_pilihan
Foriegn Key : id_prsh
Field
Tipe Data
Lebar
Keterangan
Id_pilihan
Int
6
Primary Key , Not Null
Id_prsh
Int
6
Foriegn Key
Id_tipe
Varchar
10
Foriegn Key
acak
Varchar
4
Untuk menentukan variasi test
Tabel 3.4 Tabel Pilihan
e)
Tabel Macam Test
Tabel Macam Test ini berisi tentang nama macam â macam test. Tabel
macam test ini dikelola oleh bagian pembuat soal.
Primary Key : id_macam
Field
Tipe Data
Lebar
Keterangan
Id_macam
Int
7
Primary Key , Not Null
Nama_macam
Varchar
20
Nama Macam Test
Petunjuk
Text
-
Petunjuk dari nama macam test
f)
Tabel Tipe Test
Tabel Tipe Test ini berisi tentang nama tipe test sesuai dengan nama
macam test. Nama tipe test merupakan sub bagian dari nama macam test. Tabel
tipe test ini dikelola oleh bagian pembuat soal.
Primary Key : id_tipe
Foreign Key : id_macam
Field
Tipe Data
Lebar
Keterangan
Id_tipe
Varchar
5
Primary Key , Not Null
Id_macam
Int
7
Foreign Key
Nama_tipe
Varchar
30
Nama Tipe
Waktu
Int
3
Waktu Tipe
Tabel 3.6 Tabel Tipe Test
g)
Tabel Soal
Tabel Soal ini berisi tentang soal â soal yang akan diujikan untuk peserta.
Primary Key : id_soal
Foreign Key : id_tipe
Field
Tipe Data
Lebar
Keterangan
Id_soal
int
5
Primary Key, Not Null
Id_tipe
Varchar
10
Foreign Key
Urutan_soal
Varchar
10
Jenis Soal
Soal
Text
Soal Test
Gambar
Varchar
5
Soal gambar
Jawaban
Text
Jawaban Soal
bobot
varchar
254
Bobot soal
benar
Text
Jawaban benar
Tabel 3.7 Tabel Soal
h)
Tabel Jawaban
Tabel ini berisi tentang jawaban atas soal test yang diujikan dari peserta
test
Primary Key : id_jwbn
Foreign Key : id_pilihan
Foreign Key : id_peserta
Field
Tipe Data
Lebar
Keterangan
Id_jwbn
Int
6
Primary Key , Not Null
Id_peserta
Varchar
6
Foreign Key
Id_pilihan
Int
10
Foreign Key
jumlahsoal
Int
5
Jumlah soal yang diujikan
skore
Int
5
Skore jawaban dari soal test
i)
Tabel Pembuat Soal
Tabel Pembuat Soal ini digunakan untuk menyimpan nama Pembuat Soal
beserta passwordnya. Nama field dalam Tabel Daftar Pembuat Soal adalah
Id_pemsol yaitu nomor pembuat soal, nama yaitu nama pembuat soal, password
yaitu password pembuat soal
Primary Key : id_pemsol
Field
Tipe Data
Lebar
Keterangan
Id_pemsol
Varchar
10
Primary Key, Not Null
Nama
Varchar
50
Nama Pembuat Soal
Password
Varchar
10
Password Pembuat Soal
Tabel 3.9 Tabel Pembuat Soal
j)
Tabel Login
Tabel Login ini digunakan untuk mengecek apakah peserta pernah ikut test
atau tidak. Tabel ini menyimpan id_peserta, waktu dimana waktu menunjukkan
kapan user mengikuti test.
Primary Key : id_peserta
Field
Tipe Data
Lebar
Keterangan
Id_peserta
Varchar
6
Primary Key, Not Null
Waktu
datetime
Waktu Test
User_ID
Password
III.4
Rancangan Antar Muka
Rancangan Antar Muka meliputi Desain input, output dan menu-menu
yang ada pada sistem
a)
Desain Tampilan Login
Tampilan ini digunakan sebagai tampilan awal untuk memasuki sistem
user memasukkan user id dan password dan kemudian login
Halaman Login
b)
Desain Tampilan Soal
Tampilan soal berisi soal-soal test dan pengisian jawaban yang dilakukan
oleh peserta test. Peserta test mengisi jawaban dengan memilih salah satu jawaban
yang dianggap benar pada form pengisian jawaban. Pengisian jawaban dilakukan
dengan menekan radio botton.
Gambar 3.13 Desain
Tampilan
Soal
Nama Test
Sisa Waktu
1. Soalâ¦.
2. Soalâ¦.
3. Soalâ¦..
c)
Desain Tampilan Menu Administrator
Tampilan ini adalah menu untuk administrator. Adapun Menu untuk
administrator adalah Input Karyawan, Input Peserta,Input Perusahaan, Hasil Test ,
dan Ganti Password.
Gambar 3.14 Desain
Tampilan
Menu Administrator
Halaman Administrator
Menu Utama
Data Karyawan
Data Peserta
Data Perusahaan
Hasil Test
Tambah Data Karyawan
Nama
Alamat
Tempat/tgl
Agama
No.Tlp
Penddk
Password
d)
Desain Tampilan Input Karyawan
Tampilan ini digunakan untuk mengisikan data-data tentang identitas
karyawan yaitu Nama, Alamat, Tempat/tgl lahir , Agama, No.Tlp, Penddk,
Password. Pengisian dilakukan oleh admin.
Gambar 3.15 Desain
Tampilan
Input Karyawan
e)
Desain Tampilan Input Peserta
Tampilan ini digunakan untuk mengisikan data-data tentang identitas
peserta test yaitu Nama, Jenis Kelamin, Alamat, No.Tlp , Tempat/tgl , Agama,
Penddk, Password.
Pengisian dilakukan oleh admin.
Tambah Data Peserta
Nama
Jenis Kelamin
Alamat
Nomor Telepon
Tempat/tgl
Agama
Penddk
Password
Tambah Data Perusahaan
Nama Perusahaan
Alamat Perusahaan
Nomor Telepon
Nomor Faximil
Keterangan
Tanggal Test
Gambar 3.16 Desain
Tampilan
Input Peserta
f)
Desain Tampilan Input Perusahaan
Tampilan ini digunakan untuk memasukkan data perusahaan yaitu
Nama,
Alamat, No.Tlp, No. Faximil, Keterangan, Tanggal Test
Gambar 3.17 Desain
Tampilan
Input Perusahaan
TAMBAH
g)
Desain Tampilan Hasil Peserta
Tampilan ini digunakan untuk menampilkan hasil data peserta yang ikut
test sesuai dengan perusahaan yang bersangkutan.
Gambar 3.18 Desain
Tampilan
Hasil Peserta
Data Peserta
Nama perusahaan
:â¦â¦â¦
Alamat Perusahaan
:â¦â¦â¦â¦
Hasil Test Personal
Nama Perusahaan :â¦â¦â¦
Nama
:â¦â¦â¦
Jenis Kelamin
:â¦â¦â¦
Alamat
:â¦â¦â¦
No.Tlp
:â¦â¦â¦
Tempat/tgl
:â¦â¦â¦
Usia
:â¦â¦â¦
Agama
:â¦â¦â¦
h)
Desain Tampilan Hasil Personal
Tampilan ini digunakan untuk menampilkan hasil test dari masing
-masing peserta test sesuai dengan perusahaan yang bersangkutan
Gambar 3.19 Desain Tampilan Hasil Personal
i)
Desain Tampilan Hasil Keseluruhan
Tampilan ini digunakan untuk melihat hasil test peserta secara keseluruhan
sesuai dengan perusahaan yang bersangkutan.
Gambar 3.20 Desain Tampilan Hasil Keseluruhan
Hasil Test Keseluruhan
Nama perusahaan
:â¦â¦â¦
Alamat Perusahaan
:â¦â¦â¦
No. Telepon
:â¦â¦â¦
No. Faximil
:â¦â¦â¦â¦...
Tambah Data Perusahaan
Password Lama
Password Baru
Password Baru
j)
Desain Tampilan Ganti Pasword
Tampilan ini digunakan oleh administrator untuk mengganti password
apabila dianggap perlu.
Gambar 3.21 Desain Tampilan Ganti Pasword
k) Desain Tampilan Menu Pembuat Soal
Tampilan ini adalah menu untuk pembuat soal. Adapun menu untuk
pembuat soal adalah , Input pembuat soal yaitu untuk memasukkan nama
pembuat soal. Macam Test digunakan untuk mengisikan nama macam test.
Tipe Test digunakan untuk mengisikan macam tipe test sesuai dengan nama
macam test.Input Soal yaitu untuk mengisikan soal-soal yang akan diujikan
untuk peserta test, Lihat soal digunakan untuk melihat soal yang ada, Pilih
Soal Manual digunakan untuk memilih soal dari soal-soal yang telah ada
sebelumnya dan ganti password digunakan untuk mengganti password.
Tambah Data Pembuat Soal
User id
Nama
Alamat
Gambar 3.22 Desain
Tampilan
Menu Pembuat Soal
l) Desain Tampilan Input Pembuat Soal
Tampilan ini digunakan untuk mengisikan data-data tentang identitas
pembuat soal yaitu Nama, User_id dan Password.
Gambar 3.23 Desain
Tampilan
Input Pembuat Soal
Halaman Pembuat Soal
Menu Utama
Pembuat Soal
Macam Test
Tipe Test
Input Soal
Lihat Soal
Pilih Soal Manual
Setting Test
Ganti Password
Keluar
Data Macam Test
Nama Macam Test
Petunjuk
m)
Desain Tampilan Input Macam Test
Tampilan ini digunakan untuk mengisikan macam- macam test. Yaitu
Nama Macam Test dan Petunjuk.
Gambar 3.24 Desain
Tampilan
Input Macam Test
Data Tipe Test
Macam Tipe
Id_tipe
Nama Tipe Test
Waktu
n)
Desain Tampilan Input Tipe Test
Tampilan ini digunakan untuk mengisikan tipe test sesuai dengan macam
test. Adapun fieldnya yaitu macam tipe, id_tipe, nama tipe test dan waktu yang
diperlukan untuk menjalani test tersebut.
Gambar 3.25
Desain
Tampilan
Input Tipe Test
o) Desain Tampilan Input Soal
Tampilan ini digunakan untuk mengisikan soal soal yang akan disajikan
untuk peserta test. Data Soal yang diinputkan adalah
Macam Test, Tipe Test, Urutan
Soal, Soal , Gambar, Jawaban, Bobot, Benar.
Soal
Macam Test
Tipe Test
No.
Bacaan
Soal
Gambar
Jawaban
Bobot
Benar
Gambar 3.26 Desain
Tampilan
Input Soal
p)
Desain Tampilan Lihat Soal
Tampilan ini digunakan untuk melihat ataupun mengoreksi soal â soal
yang ada sesuai dengan nama macam test dan tipe testnya.
Gambar 3.27 Desain
Tampilan
Lihat Soal
q)
Desain Tampilan Setting Test
Tampilan ini digunakan untuk memilih Macam test dan tipe test apa saja
yang akan diujikan sesuai dengan nama perusahaan.
Gambar 3.28 Desain Tampilan Setting Test
Atur Test
Nama perusahaan
Macam Test
Tipe Test
Tipe Test
LIHAT SOAL
MacamTest
Tipe Test
SOAL
r)
Desain Tampilan Hapus Test
Tampilan ini digunakan untuk melihat dan menghapus pilihan test yang
telah dipilih sebelumnya.
Gambar 3.29 Desain Tampilan Hapus Test
Nama perusahaan
Materi yang akan diujikan:
1. â¦â¦
2. â¦â¦
3. â¦..
LIHAT
III.5 Desain Teknologi
Teknologi yang dibutuhkan oleh sistem ini baik itu
server
side dan
client
side
adalah:
a)
Rincian kebutuhan
hardware
ï·
Server
-
Processor
minimal pentium III
-
Monitor
VGA
ke atas
-
Kapasitas
harddisk
10GB
-
RAM
minimal 128MB
-
Lan card
ï·
Client
-
Processor
minimal pentium II
-
Monitor
VGA
ke atas
-
Kapasitas
harddisk
minimal 2GB
-
RAM
minimal 128MB
-
Lan card
b)
Rincian Kebutuhan
Software
ï·
Server
-
Sistem Operasi
Windows 98
keatas
-
aplikasi
server
ï·
Client
-
Sistem Operasi
Windows 98
keatas
-
Web Browser
( cont.
Internet expoler)
c)
Rincian Kebutuhan
Brainware
ï·
Minimal menguasai aplikasi
under windows
dan bisa menggunakan
55
IV.1
Struktur Menu Program
Struktur menu menggambarkan menu-menu dan proses dari program yang
dapat dilakukan oleh user sesuai dengan hak akses masing-masing.
Administrator
Login
Tambah Perusahaan
Update Perusahaan
Lihat Perusahaan
Peserta
Tambah Peserta
Perusahaan
Update Peserta Tambah Karyawan
Update Karyawan
Lihat Karyawan
Lihat Peserta
Lihat Hasil
Hasil Data Peserta
Hasil Data Keseluruhan
Ganti Password
Logout
Karyawan
Hasil Data Personal
IV.2. Tampilan Program dan Penjelasan
Bagian ini akan menjelaskan jalannya program dan potongan-potongan
script
yang dibutuhkan.
IV.2.1. Potongan Program
a)
Koneksi Database
Untuk dapat mengakses database pada
server
, maka harus
dilakukan koneksi ke basis data. Perintah yang digunakan untuk
mengkoneksi database
mysql server
adalah:
b)
Cek validitas
login
Setelah user memasukkan user id dan
password,
maka halaman ini
akan melakukan pengecekan data apakah data yang dimasukkan valid. Jika
benar maka user akan masuk ke halaman sistem sesuai dengan hak
aksesnya masing-masing. Ada tiga macam hak akses yaitu bagian pembuat
soal, bagian administrasi dan peserta. Jika benar maka user akan masuk ke
halaman sistem yang sesuai.
<?php
$host="localhost";
$userdb="root";
$passdb="";
$namadb="database violet";
$koneksi=mysql_connect($host,$userdb,$passdb);
mysql_select_db($namadb,$koneksi);
Perintah yang digunakan untuk mengecek validitas
login
adalah sebagai
berikut:
Jika karakter pertama dari user_id yang diinputkan adalah âPâ maka user
tersebut adalah peserta dan selanjutnya sistem akan memanggil halaman
satu.php
. Jika karakter pertama adalah âKâ maka user tersebut adalah
bagian administrator dan selanjutnya sistem akan memanggil halaman
admni.php
. Jika karakter pertama adalah âSâ maka user tersebut adalah
require_once "koneksi.php";
//echo "User ID : $user_id<br>";
//echo "Password : $password<br>";
$cek = substr($user_id,0,1);
if($cek =='P')
{
//echo "Peserta";
echo "<meta http-equiv=refresh
content=0;URL=peserta/login.php?user_id=$user_id&password=
$password>";
//header("Location:peserta/login.php?user_id=$user_id&password
=$password");
}
if($cek =='S')
{
//echo "Pembuat Soal..";
echo "<meta http-equiv=refresh
content=0;URL=pembuatsoal/login.php?user_id=$user_id&passw
ord=$password>";
}
if($cek =='K')
{
echo "<meta http-equiv=refresh
content=0;URL=administrator/login.php?user_id=$user_id&pass
word=$password>";
bagian pembuat soal dan selanjutnya sistem akan memanggil halaman
utama
.php
.
c)
Tambah data karyawan
Perintah ini digunakan untuk menyisipkan suatu data kedalam tabel.
Perintah untuk memasukkan data karyawan adalah:
d)
Update Data Karyawan
Perintah UPDATE digunakan untuk memperbaharui nilai suatu data.
Perintah untuk update karyawan adalah sebagai berikut :
e)
Tambah Data Perusahaan
Perintah untuk memasukkan data perusahaan adalah:
f)
Update Data Perusahaan
Perintah untuk update perusahaan adalah sebagai berikut :
$tbh=mysql_query ("INSERT INTO `karyawan` ( `id_karyawan` , `nama`
, `alamat` , `ttl` , `agama` , `telepon` , `pendidikan` , `password` )
VALUES ('$id_karyawan','$nama', '$alamat', '$ttl', '$agama', '$telepon',
'$pendidikan', '$password')");
$ub=mysql_query("update karyawan set nama='$nama' ,
alamat='$alamat' , ttl='$ttl' , agama='$agama' , telepon='$telepon' ,
pendidikan='$pendidikan' ,
password='$password' where id_karyawan='$id_data'");
$tbh=mysql_query ("INSERT INTO perusahaan ( `id_prsh` ,
`nama_prsh` , `alamat` ,`telepon`, `fax`, `keterangan`, `tgl_test`)
VALUES ('','$nama', '$alamat','$telepon','$fax','$keterangan',
'$tgl_test')");
$ub=mysql_query("UPDATE perusahaan set nama_prsh='$nama' ,
alamat='$alamat' , telepon='$telepon', fax='$fax' ,
g)
Tambah Data Peserta
Perintah untuk memasukkan data peserta adalah:
h)
Update Data Peserta
Perintah untuk update peserta adalah sebagai berikut :
i)
Halaman Hasil Data Peserta
Perintah yang digunakan adalah sebagai berikut:
$tbh=mysql_query("INSERT INTO peserta ( `id_prsh`, `id_peserta` ,
`nama_peserta` , `sex`, `alamat` , `tempat_lahir` , `tgl_lahir`,`agama` ,
`telepon` , `pendidikan` , `password` )
VALUES ('$id_prsh','$id_peserta','$nama_peserta', '$sex
','$alamat', '$tempat', '$tanggal', '$agama', '$telepon', '$pendidikan',
'$password')");
$ub=mysql_query("UPDATE peserta set id_prsh='$id_prsh',
nama_peserta='$nama_peserta' ,sex='$sex', alamat='$alamat' ,
tempat_lahir='$tempat' ,tgl_lahir='$tanggal', agama='$agama' ,
telepon='$telepon' , pendidikan='$pendidikan' , password='$password'
where id_peserta='$id_data'");
<?
include "../koneksi.php";
$no=1;
$baca4 = "select id_peserta,nama_peserta,sex,alamat,id_prsh from
peserta where id_prsh='$id_prsh'";
$baca2 = mysql_query($baca4);
while($data2=mysql_fetch_array($baca2)){
?>
<tr>
<td width="40" align="center"><font size="2"><?=$no?></font></td>
<td><font size="2"><?=$data2[nama_peserta]?></font></td>
<td width="106"><font size="2"><?=$data2[sex]?></font></td>
<td width="250"><font size="2"><?=$data2[alamat]?></font></td>
</tr>
<?
$no++;
j)
Halaman Hasil Data Personal
Perintah yang digunakan adalah sebagai berikut:
<?
include "../koneksi.php";
$s="select peserta.*,perusahaan.* from peserta,perusahaan where
perusahaan.id_prsh=peserta.id_prsh and id_peserta='$id_data';";
$h=mysql_query($s);
$d=mysql_fetch_array($h);
echo "
<p style=\"font-weight:bold; font-size:10pt;\">
<tr><td width=\"20%\">Nama Perusahaan<p>
<td
width=\"3%\">:<p> <td width=\"60%\">$d[nama_prsh]<p></tr>
<tr><td width=\"20%\">Nama Peserta <p> <td width=\"3%\">:<p>
<td width=\"60%\">$d[nama_peserta]<p></tr>
<tr><td width=\"20%\">Alamat
<p>
<td
width=\"3%\">:<p><td width=\"60%\"> $d[alamat]<p></tr>
<tr><td width=\"20%\">Jenis Kelamin<p> <td width=\"3%\">:<p>
<td width=\"60%\">$d[sex]<p></tr>
<tr><td width=\"20%\">TTL<p>
<td width=\"3%\">:<p> <td
width=\"60%\">$d[tempat_lahir] , $d[tgl_lahir]<p></tr>
<tr><td width=\"20%\">Pendidikan
<p>
<td
width=\"3%\">:<p><td width=\"60%\"> $d[pendidikan]<p></tr>
<tr><td width=\"20%\">Agama
<p>
<td
width=\"3%\">:<p><td width=\"60%\"> $d[agama]<p></tr>
<tr><td width=\"20%\">Telepon
<p>
<td
width=\"3%\">:<p><td width=\"60%\"> $d[telepon]<p></tr>
</tr>";
?>
include"../koneksi.php";
$s3="select * from tipe_test where id_tipe='$pecahtipe[$p]'";
$h3=mysql_query($s3);
$d4=mysql_fetch_array($h3);
echo "<tr>
<td width = \" 10% \">
<p style
align=\"center\"style=\"fontfamily:Georgia\">",$nomor,"</td>
<td width = \"50% \">
<p style
align=\"left\"style=\"font-family:Georgia\">",$d4[nama_tipe],"</td>
<td width = \" 10%\">
k)
Halaman Hasil Data Keseluruhan
Perintah yang digunakan adalah sebagai berikut :
l)
Halaman Ganti Password
Perintah yang digunakan adalah sebagai berikut :
echo"<tr>
<td width=\"30\"><p align= \"center\" style=\"margin-left: 15px;
margin-right: 5px\">
<font size=\"2\"; align=\"centre\">",$no,"</font></td>
<td width=\"31%\">
<p style=\"margin-left: 5px; margin-right: 5px\">
<font size=\"2\">
<ahref=\"hasil_data_personal.php?menu=hasil_data_personal_2&act=ed
it&id_prsh=$id_prsh&id_data=",$data2[id_peserta],"\">
",$data2[nama_peserta],"</font></td>";
for($p=1;$p<count($pecahskore);$p++)
{
echo"<td >
<p align= \"center\" style=\"margin-left: 5px; margin-right: 5px\">
<font size=\"2\">$pecahskore[$p]
</font></td>";
}
<?
include"cek_session.php";
if(isset($ganti))
{
include "../koneksi.php";
$cek = "SELECT password FROM karyawan WHERE
id_karyawan='$id_karyawan'";
$pass=mysql_query($cek);
$d=mysql_fetch_array($pass);
if($password_lama !== $d[password])
{
$pesan="<br>Password lama yang Anda masukkan salah. Periksa
kembali.<br>";
$password_lama";
header("location:./ganti_password.php?err=$pesan");
}
if($password_lama !== $d[password]) Jika password yang dimasukkan
oleh user tidak sama dengan password yang ada didatabase maka akan
muncul
pesan
kesalahan.
elseif($password1!==$password2),
jika
password baru yang dimasukkan tidak sama dengan password konfirmasi
maka akan muncul pesan kesalahan. Jika kedua syarat tersebut telah
terpenuhi, maka pasword yang lama akan diganti dengan paswword yang
baru ($password2).
{
$pesan="<br>Password baru Anda harus sama dengan
password konfirmasi dibawahnya.<br>";
header("location:./ganti_password.php?err=$pesan");
}
else
{
include"../koneksi.php";
$ganti_pass=mysql_query("UPDATE karyawan set
password='$password1' WHERE
id_karyawan='$id_karyawan'");
session_unregister ("password");
$password="$password1";
session_register("password");
}
}
else
{
header("location:./admin.php");
}
m)
Tambah Data Pembuat Soal
Perintah untuk memasukkan data pembuat soal adalah:
n)
Update Pembuat Soal
Perintah untuk update data pembuat soal adalah:
o)
Tambah Data Macam Test
Perintah untuk memasukkan data macam test adalah:
p)
Update Data Macam Test
Perintah untuk update data macam test adalah:
$tbh=mysql_query ("INSERT INTO `pembuat_soal` ( `id_pemsol` ,
`nama` ,`password` )
VALUES ('$id_pemsol','$nama','$password')");
$ub=mysql_query("update pembuat_soal set nama='$nama' ,
password='$password' where id_pemsol='$id_data'");
$tbh=mysql_query ("INSERT INTO macam_test ( `id_macam` ,
`nama_macam` , `petunjuk`)
VALUES ('','$nama', '$petunjuk')");
q)
Tambah Tipe Test
Perintah untuk memasukkan data Tipe Test adalah:
r)
Update Tipe Test
Perintah untuk update data Tipe Test adalah:
s)
Tambah Soal
Perintah untuk memasukkan data soal adalah:
t)
Update Soal
Perintah untuk update data soal adalah:
$tbh=mysql_query ("INSERT INTO tipe_test ( `id_macam`, `id_tipe` ,
`nama_tipe` , `waktu`)
VALUES ('$id_macam','$id_tipe','$nama', '$waktu')");
$tbh=mysql_query ("INSERT INTO soal ( `id_soal`, `id_tipe` ,
`urutan_soal`,`jenis_soal` , `bacaan`, `soal`,`gambar`,`jawaban`,
`bobot`,`benar`)
VALUES ('$id_soal', '$id_tipe', 'urutan_soal', '$jenis_soal', '$bacaan',
'$soal','$fupload_name','$jawaban', '$bobot','$benar')");
$ub=mysql_query("update tipe_test set nama_tipe='$nama' ,
waktu='$waktu where id_tipe='$id_data'");
$query= "update soal set id_tipe='$id_tipe', urutan_soal='$urutan_soal',
jenis_soal='$jenis_soal', bacaan='$bacaan',
u)
Lihat Soal
Perintah untuk melihat soal adalah sebagai berikut :
Soal yang ditampilkan akan berdasarkan macam test dan tipe test sesuai
yang
dipilih
WHERE
soal.id_tipe=tipe_test.id_tipe
and
soal.id_tipe='$id_tipe' .
<