Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
BAB IV
IMPELEMENTASI DAN PENGUJIAN SISTEM
4.1. Analisa Kebutuhan Software
A. TahapanAnalisis
Analisis kebutuhan merupakan langkah awal yang dilakukan agar didapat
gambaran dari sebuah sistem yang akan dibuat. Berikut ini spesifikasi kebutuhan
(system requirement) dari sistem pakartes kepribadian EPPS untuk seleksi
karyawan baru pada PT.MNC Kabel Mediacom :
Halaman Pelamar (User) :
A1. User bisa melihat panduan tentang tes kepribadian (psikotes) EPPS.
A2. User bisa melakukan pendaftaran pada data pelamar
A3. User bisa melakukan login sesuai dengan data pelamar yang sudah diisi
A4. User bisa melakukan tes kepribadian (psikotes) EPPS
Halaman Admin :
B1. Admin bisa mengelola data user.
B2. Admin bisa mengelola data pelamar.
B3. Admin bisa mengelola data soal.
B4. Admin bisa mengelola data kebutuhan EPPS.
B. Use Case Diagram
Diagram use case digunakan untuk mendeskripsikan apa yang seharusnya
dilakukan oleh sistem. Diagram use case menyediakan cara mendeskripsikan
pandangan eksternal terhadap sistem dan interaksi-interaksinya terhadap dunia
luar. Use case menggambarkan external view dari sistem yang akan kita buat
38
39
modelnya. Dengan cara ini diagram use case menggantikan diagram konteks pada
pendekatan konvensional.
Adapun Use Case Diagram detailnya terdiri atas :
1. Use Case Diagram Halaman User
Gambar IV.1
Use Case Diagram Halaman User
Tabel IV.1
Deskripsi Use Case Diagram Halaman User
Use Case Name Halaman UserRequirements A1Goal User bisa melihat menu panduanPre-conditions User telah memilih menu panduanPost-conditions User masuk ke menu halaman yang dipilihFailed end conditions User gagal masuk kehalaman yang dipilihPrimary Actors UserMain Flow / Basic Path
User Memilih Menu Panduan
Alternate Flow / Invariant 1
-
Alternate Flow / Invariant 2
-
40
Tabel IV.2
Deskripsi Use Case Diagram Halaman User
Use Case Name Halaman UserRequirements A2 - A4Goal User bisa mengisi data pelamar
User bisa melakukan loginUser bisa melakukan psikotes EPPS
Pre-conditions User telah memilih menu data pelamarUser telah memilih menu loginUser telah memilih menu psikotes EPPS
Post-conditions User masuk ke menu halaman yang dipilihFailed end conditions User gagal masuk kehalaman yang dipilihPrimary Actors UserMain Flow / Basic Path
1. User Memilih Menu Data Pelamar2. User Memilih Menu Login3. User Memilih Menu Psikotes EPPS
Alternate Flow / Invariant 1
1. User mengisi data pribadi2. User melakukan login3. User menjawab pertanyaan psikotes
Alternate Flow / Invariant 2
-
2. Use Case Diagram Halaman Admin
Gambar IV.2
Use Case Diagram Halaman Admin
41
Tabel IV.3
Deskripsi Use Case Diagram Halaman Admin
Use Case Name Halaman AdminRequirements B1- B4Goal Admin dapat mengelola data user.
Admin dapat mengelola data pelamarAdmin dapat mengelola data soalAdmin dapat mengelola data kebutuhan
Pre-conditions Admin telah loginPost-conditions Data user tersimpan, dan terhapus.
Data pelamar terhapus dan hasil tes tercetak.Data soal tersimpan, terupdate, dan terhapus.Data kebutuhan tersimpan, terupdate, dan terhapus
Failed end conditions
Admin gagal untuk login.Gagal menyimpan, atau menghapus data user.Gagal menghapus data pelamar.Gagal mencetak hasil tes.Gagal menyimpan, mengubah, atau menghapus data soal.Gagal menyimpan, mengubah, atau menghapus data kebutuhan.
Primary Actors AdministratorMain Flow / Basic Path
1. Admin melakukan login2. Admin melihat data user3. Admin melihat data pelamar4. Admin melihat data soal5. Admin melihat data kebutuhan
Alternate Flow / Invariant 1
1. Admin menambah data user2. Admin menambah data soal3. Admin menambah data kebutuhan
Alternate Flow / Invariant 2
1. Admin menghapus data user2. Admin menghapus data pelamar3. Admin mencetak hasil tes4. Admin mengubah data soal5. Admin menghapus data soal6. Admin mengubah data kebutuhan7. Admin menghapus data kebutuhan
42
Tabel IV.4
Deskripsi Use Case Mengelola data User
Use Case Name Mengelola data UserRequirements B1Goal Admin dapat menambah, dan menghapus data user.Pre-conditions Admin telah loginPost-conditions Data user tersimpan, dan terhapus.Failed end conditions Admin gagal untuk login.
Gagal menyimpan, atau menghapus data user.Primary Actors AdministratorMain Flow / Basic Path
1. Admin melakukan login2. Admin melihat data user
Alternate Flow / Invariant 1
Admin menambah data user
Alternate Flow / Invariant 2
Admin menghapus data user
Tabel IV.5
Deskripsi Use Case Mengelola data pelamar
Use Case Name Mengelola data pelamarRequirements B2Goal Admin dapat menghapus data pelamar serta dapat
mencetak hasil tes.Pre-conditions Admin telah loginPost-conditions Data pelamar terhapus dan hasil tes tercetak.Failed end conditions Gagal menghapus data pelamar.
Gagal mencetak hasil tes.Primary Actors AdministratorMain Flow / Basic Path
1. Admin melakukan login2. Admin melihat data pelamar dan hasil tes
Alternate Flow / Invariant 1
-
Alternate Flow / Invariant 2
1. Admin menghapus data pelamar2. Admin mencetak hasil tes
43
Tabel IV.6
Deskripsi Use Case Mengelola data soal
Use Case Name Mengelola data soalRequirements B3Goal Admin dapat menambah, mengubah atau
menghapus data soalPre-conditions Admin telah loginPost-conditions Data soal tersimpan, terupdate dan terhapus.Failed end conditions Gagal menyimpan, mengubah, atau menghapus data
soal.Primary Actors AdministratorMain Flow / Basic Path
1. Admin melakukan login2. Admin melihat data soal
Alternate Flow / Invariant 1
Admin menambah data soal
Alternate Flow / Invariant 2
1. Admin mengubah data soal2. Admin menghapus data soal
Tabel IV.7
Deskripsi Use Case Mengelola data kebutuhan
Use Case Name Mengelola data kebutuhanRequirements B4Goal Admin dapat menambah, mengubah atau
menghapus data kebutuhanPre-conditions Admin telah loginPost-conditions Data kebutuhan tersimpan, terupdate dan terhapus.Failed end conditions Gagal menyimpan, mengubah, atau menghapus data
kebutuhan.Primary Actors AdministratorMain Flow / Basic Path
1. Admin melakukan login2. Admin melihat data kebutuhan
Alternate Flow / Invariant 1
Admin menambah data kebutuhan
Alternate Flow / Invariant 2
1. Admin mengubah data kebutuhan2. Admin menghapus data kebutuhan
44
4.2. Desain
2.1. Database
A. Entity Relationship Diagram (ERD)
Entity Relationship Diagram menjelaskan hubungan antar data dalam basis
data yang terdiri dari object-object dasar yang mempunyai hubungan atau relasi antar
object-object tersebut. ERD yang ada pada sistem ini sebagai berikut :
Gambar IV.3
Entity Relationship Diagram (ERD)
45
B. Spesifikasi File
Dalam pembuatan aplikasi ini penulis menggunakan satu database yaitu
“psikotes” dan untuk tabelnya sebagai berikut:
1) Spesifikasi File Tabel Pelamar
Nama Database : Psikotes
Nama File : Tabel Pelamar
Akronim : tabel_pelamar
Type File : File Master
Panjang Record : 219 Byte
Kunci Field : id_pelamar
Tabel IV.8
Spesifikasi Tabel Pelamar
No Elemen Data Akronim Tipe Panjang Ket
1 ID Pelamar id_pe lamar Int 9 Primary Key
2 Tanggal Input tgl_input timestamp3 Nama Pelamar nm_pelamar Varchar 504 Jenis Kelamin jenis_kelamin Varchar 105 Tempat Lahir tempat_lahir Varchar 206 Tanggal Lahir tanggal_lahir Date7 Agama agama Varchar 15
8 Pendidikan Terakhir pendidikan Varchar 25
9 Alamat alamat Text10 Kota kota Varchar 2011 E-mail email Varchar 3012 Handphone handphone Varchar 2013 Posisi posisi Varchar 20
2) Spesifikasi File Tabel Soal
46
Nama Database : Psikotes
Nama File : Tabel Soal
Akronim : tabel_soal
Type File : File Master
Panjang Record : 804 Byte
Kunci Field : id_soal
Tabel IV.9
Spesifikasi Tabel Soal
No Elemen Data Akronim Tipe Panjang Ket1 ID Soal id_soal Varchar 4 Primary Key2 Jawaban A jwb_a Varchar 4003 Jawaban B jwb_b Varchar 400
3) Spesifikasi File Tabel Kebutuhan
Nama Database : Psikotes
Nama File : Tabel Kebutuhan
Akronim : tabel_kebutuhan
Type File : File Master
Panjang Record : 698 Byte
Kunci Field : kd_kebutuhan
Tabel IV.10
Spesifikasi Tabel Kebutuhan
47
No Elemen Data Akronim Tipe Panjang Ket1 Kode Kebutuhan k d_ kebutuhan Varchar 3 Primary Key2 Nama Kebutuhan nm_kebutuhan Varchar 203 Ket Positif ket_positif Varchar 2254 Ket Rata-rata ket_rata Varchar 2255 Ket Negatif ket_negatif Varchar 225
2.2. Software Architecture
A. Component Diagram
Diagram komponen atau Component Diagram dibuat untuk menunjukkan
organisasi dan ketergantungan diantara kumpulan komponen dalam sebuah
sistem. Diagram komponen fokus pada komponen sistem yang dibutuhkan dan
ada di dalam sistem (Sukamto dan Shalahuddin, 2014:148).
cmp Components
Frontpage aplication
Aplication Database
Jquery-js
Style.css
Apache 2 Server
Mysql Database
Admin Aplication
Gambar IV.4
Component Diagram
48
B. Deployment Diagram
Manfaat diagram komponen adalah bila ada salah satu komponen yang
rusak atau tidak sesuai dengan tujuan sistem, kita tinggal mengganti komponen itu
dengan komponen yang lain.
deployment Deployment Model
Web Serv er
xampp
Style.css
Jquery.js
Admin Aplication
Database Server
Application Database
Mysql database
Client PC
Browser
Gambar IV.5
Deployment Diagram
49
2.3. User Interface
A. User Interface Halaman User
1) Halaman Utama pada User
Gambar IV.6
Halaman Utama pada User
2) Halaman Panduan pada User
Gambar IV.7
Halaman Panduan pada User
51
4) Halaman Login Pelamar pada User
Gambar IV.9
Halaman Login Pelamar pada User
5) Halaman Psikotes pada User
Gambar IV.10
Halaman Psikotes pada User
52
6) Halaman Kontak Kami pada User
Gambar IV.11
Halaman Kontak Kami pada User
B. User Interface Halaman Admin
1) Halaman Login pada Admin
Gambar IV.12
Halaman Login pada Admin
53
2) Halaman Utama pada Admin
Gambar IV.13
Halaman Utama pada Admin
3) Halaman Data User pada Admin
Gambar IV.14
Halaman Data User pada Admin
54
4) Halaman Data Pelamar pada Admin
Gambar IV.15
Halaman Data Pelamar pada Admin
5) Halaman Data Soal pada Admin
Gambar IV.16
Halaman Data Soal pada Admin
4.3. Code Generating
Adapun listing program hasil generate dari class-class yang telah dibuat
dalam program ini adalah sebagai berikut:
A. Form Psikotes
<?php
55
session_start();
if (empty($_SESSION['id_pelamar'])) { header("location:login_pelamar.php"); }
include "config/koneksi.php";
error_reporting(E_ALL^E_NOTICE);?><table width="850" border="0"><tr><td> </td><td> </td><td> </td><td> </td></tr><tr><td width="92">Nama</td><td width="14">:</td><td width="260"><?php echo $nm_pelamar; ?></td><td width="338"> </td></tr><tr><td>Tanggal</td><td>:</td><td><?php echo date ("d-M-Y")?></td><td> </td></tr><tr><td>WaktuMulai</td><td>:</td><td><?phpdate_default_timezone_set('Asia/Jakarta'); echo date ("H:i:s")?></td><td> </td></tr></table>
<h4></h4><h4>SilahkanKerjakanDalamwaktu 60 menit</h4><h5 class="subtitle"></h5>
<div align="center"><h2>PilihlahPernyataanDibawahIni yang paling sesuaidenganAnda</h2><div
56
style="padding:3px;overflow:auto;width:auto;height:200px;border:1px solid grey" ><?php$soal= mysql_query("select * from tabel_soal ORDER BY id_soal ASC");$jumlah= mysql_num_rows($soal);$urut=0;while($row =mysql_fetch_array($soal))
{$id=$row["id_soal"];$jwb_a=$row["jwb_a"];$jwb_b=$row["jwb_b"];if(isset($_POST['submit'])){
$_SESSION['jawab'] = $_POST['jwb_<?php echo $id;?>'];
}?>
<table width="700" border="0" cellpadding="3" cellspacing="5">
<form name="form1" method="post" action="result.php"><input type="hidden" name="id[]" value=<?php echo $id; ?>><input type="hidden" name="jumlah" value=<?php echo $jumlah; ?>>
<tr><td align="center" width="17"><font color="#000000"><?php echo $urut=$urut+1; ?></font></td><td height="21"><font color="#000000"> </font>
<div class="group"><font color="#000000">
<input name='jwb_<?php echo $id;?>' type="radio" value="A" id='A' checked="checked">A <?php echo $jwb_a; ?></font></tr><tr>
<td><font color="#000000">  </font></td>
<td><font color="#000000"><input name='jwb_<?php echo $id;?>'
type="radio" value="B" id='B'>B <?php echo $jwb_b; ?></font> </td></tr></tr>
57
<?php}
?>
<tr><td> </td><td align="center"><input
type="submit" name="submit" value="SelesaiMenjawab" onclick="return confirm('ApakahAndayakindenganjawabanAnda?')"></td></tr></form></table><br></div><script><!-- Script javascriptuntukpenghitunganwaktumundur -->
hitungMundur(<?php echo $minute; ?>, 'promo'); function hitungMundur(minute, id){
Date.prototype.addMinutes=function(h){this.setMinutes(this.getMinutes()+h); return this;}var end = new Date().addMinutes(minute);
var sec = 1000;var min = sec * 60;varhr = min * 60;var day = hr * 24;var timer;
function waktuSisa() {var now = new Date();var distance = end - now; if (distance < 0) {clearInterval(timer);document.getElementById(id).innerHTML = 'Waktuhabis!';document.location.href='soal_psikotes.php'; return; }varhari = Math.floor(distance / day);var jam = Math.floor((distance % day) / hr);varmenit = Math.floor((distance % hr) / min);vardetik = Math.floor((distance % min) / sec);
58
document.getElementById(id).innerHTML = '';document.getElementById(id).innerHTML += '';document.getElementById(id).innerHTML += menit + ' Menit ';document.getElementById(id).innerHTML += detik + ' Detik '; }
timer = setInterval(waktuSisa, 1000); }</script>
B. Form Hasil Psikotes
<?php
include 'config/koneksi.php';
session_start();
$jawab = $_SESSION['jawab'];
?>
<!DOCTYPE html>
<html>
<head>
<title>Hasil Test</title>
</head>
<body>
<h1>Hasil Psikotest EPPS</h1>
<h2>ID Pelamar : <?php echo $_SESSION['id_pelamar']; ?></h2><h2>Nama Pelamar : <?php echo $_SESSION['nm_pelamar']; ?></h2>
<table border="1">
<tr>
<td>NO</td>
59
<td>Jawaban</td>
<td>Analisa</td>
</tr>
<?php
$i = 0;
$a = $b = 0;
$sql = mysql_query("select * from tabel_soal");
while($key = mysql_fetch_array($sql)){
?>
<tr>
<td><?php echo $i+1; ?></td>
<td><?php
if ($jawab[$i] == "A") {
echo "A";
}else{
echo "B";
}
?>
</td>
</tr>
<?php
$i++;
}
60
?>
</table>
<h3></h3>
<a href="index.php">Kembali</a>
</body>
</html>
4.4. Testing
Berikut ini adalah hasil testing dimana pada program sistem pakar tes
kepribadian EPPS untuk seleksi karyawan baru pada PT. MNC Kabel Mediacom
menggunakan White Box testing.
61
Maka dapat digambarkan dengan flowgraph sebagai berikut :
Gambar IV.17
Grafik psikotes EPPS
Kompleksitas siklomatis (Pengukuran Kuantitatif terhadap Kompleksitas logis
suatu program) Dari Grafik Alir diatas dapat diperoleh dengan perhitungan :
Dimana :
E = jumlah edge grafik alir yang ditandakan dengan gambar panah
N = jumlah simpul grafik alir yang ditandakan dengan gambar lingkaran
Sehingga kompleksitas siklomatisnya
V (G) = E –N +2
62
V (G) =4-4+2=2
Basis set yang dihasilkan dari jalur independent secara linier adalah :
1-2-3-4
1-2-1-2-3
Ketika aplikasi dijalankan, maka terlihat bahwa salah satu basis set yang
dihasilkan adalah 1-2-3-4 dan terlihat bahwa simpul telah dieksekusi satu kali.
Berdasarkan ketentuan tersebut dari segi kelayakan software sistem ini telah
memenuhi syarat.
4.5. Support
4.5.1 Publikasi Web
A. Hosting
Penulis mendaftarkan ke www.idwebhost.com yaitu jasa layanan hosting
yang salah satu layanannya diberikan gratis. Penulis menggunakan Layanan
hosting idpremedium dengan kapasitas hosting yang ditawarkan oleh
www.idwebhost.com yaitu 350MB Disk Space dengan kapasitas Bandwitdh
15GB dan Unlimited MySQL database dengan biaya sewa per 6 bulan sebesar Rp.
89.400,-
B. Nama Domain
Nama domain berfungsi untuk mempermudah pengguna di internet pada
saat melakukan akses ke server, selain itu juga dapat dipakai untuk mengingat
nama server yang dikunjungi tanpa harus mengenai deretan angka yang rumit
yang di kenal sebagai IP address. Registrasi domain nama untuk website ini
www.psikotes-epps.com domain ini juga dikenakan biaya sewa pertahun oleh
63
www.idwebhost.com sebesar Rp.88.900,- dan masih banyak lagi pilihan untuk
ekstensi nama domain yang diberikan.
4.5.2. Spesifikasi Hardware dan Software
Untuk mengetahui sarana pendukung program ini, penulis akan
menjelaskannya, antara lain adalah perangkat keras (hardware), perangkat lunak
(software), dan konfigurasi sistem komputer.
Tabel IV.11
Spesfikasi Hardware dan Software
Kebutuhan KeteranganSistem Operasi Windows 7 atau sesudahnyaProcessor AMD A4-3350M 1,9 GHzRAM 2 GBHarddisk 500 GBCD-ROM 52xMonitor WXGA 14”Keyboard 108 KeysPrinter Desk JetMouse StandardBrowser Mozilla Firefox, Google Chrome, Internet ExplorerSoftware Dreamweaver, Adobe Photoshop, PHP MyAdmin