TRACKING BUG IN SIMULATION PROGRAMME OF PRINTING TRANSCRIPTS SIAKAD UNILA BY USING WHITEBOX AND VARIABLE MEMORY AS THE SOLUTION

PENELUSURAN BUG PROGRAM SIMULASI PENCETAKAN TRANSKRIP
SIAKAD UNILA DENGAN METODE WHITEBOX DAN SOLUSI
MENGGUNAKAN VARIABEL MEMORI
Oleh
ALIFAH ZAHROH
Skripsi
Sebagai Salah Satu Syarat Untuk Memperoleh Gelar
SARJANA KOMPUTER
Pada
Jurusan Ilmu Komputer
Fakultas Matematika dan Ilmu Pengetahuan Alam

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS LAMPUNG
BANDAR LAMPUNG
2013

ABSTRACT
TRACKING BUG IN SIMULATION PROGRAMME OF PRINTING
TRANSCRIPTS SIAKAD UNILA BY USING WHITEBOX AND
VARIABLE MEMORY AS THE SOLUTION


BY
ALIFAH ZAHROH

In tracking of SIAKAD transcript, there was found a bug, that is the arrangement
of the lesson position at the tenth till fifteenth semester located between first and
seceond semester. Process tracking bug did in simulation program. In this research
carried out a development of the original program Siakad as simulation program that
will be analyzed, to find out where is bug in the system. Development this program
using PHP and MySQL database software. Tracking bug using whitebox testing
method, it can be determined whether there is a bug in the procedural structure of
the program or just on the operational function of the system itself. Bugs can be
repaired by adding some changes on source code of the program. The changes are
determination of new variables as memory variables and application of Bubble sort
method on sorting proccess. The result shows bugs on the program is fixed.

Keywords: Bubble sort, Bug, MySQL, PHP, Siakad, Whitebox

DAFTAR ISI


DAFTAR ISI

i

DAFTAR GAMBAR

iv

DAFTAR TABEL

v

BAB I PENDAHULUAN

1

1.1

Latar Belakang . . . . . . . . . . . . . . . . . . . . . . . . . . . .


1

1.2

Rumusan Masalah . . . . . . . . . . . . . . . . . . . . . . . . . . .

4

1.3

Batasan Masalah . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

1.4

Tujuan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5


1.5

Manfaat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

BAB II TINJAUAN PUSTAKA

7

2.1

Komputer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

2.2

Pengertian Sistem Informasi . . . . . . . . . . . . . . . . . . . . .


8

2.3

Objek Database . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

2.4

PHP (Hypertex Preprocessor) . . . . . . . . . . . . . . . . . . . . 11

2.5

2.4.1

Pengertian PHP (Hypertext Preprocessor) . . . . . . . . . . 13

2.4.2


Tipe Data . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.5.1

Kelebihan MySQL . . . . . . . . . . . . . . . . . . . . . . 18

2.5.2
2.6

2.7

Perintah Menjalankan MySQL . . . . . . . . . . . . . . . . 18

Pengujian Perangkat Lunak . . . . . . . . . . . . . . . . . . . . . . 19
2.6.1

Pengujian Whitebox . . . . . . . . . . . . . . . . . . . . . 20

2.6.2


Kelebihan dan Kelemahan Whitebox Testing . . . . . . . . . 21

2.6.3

Pengujian Blackbox . . . . . . . . . . . . . . . . . . . . . . 26

Algoritma Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

BAB III METODOLOGI PENELITIAN

32

3.1

Tempat dan Waktu Penelitian . . . . . . . . . . . . . . . . . . . . . 32

3.2

Alat dan Bahan . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32


3.3

3.2.1

Perangkat Keras (Hardware) dengan spesifikasi . . . . . . . 32

3.2.2

Perangkat Lunak (Software) . . . . . . . . . . . . . . . . . 32

Metode Penelitian . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3.1

Pembuatan Program . . . . . . . . . . . . . . . . . . . . . 34

3.3.3

Memperbaiki Program Simulasi . . . . . . . . . . . . . . . 34


3.3.2

Uji Coba Whitebox . . . . . . . . . . . . . . . . . . . . . . 34

BAB IV HASIL DAN PEMBAHASAN
4.1

35

Pembuatan Progam Simulasi Transkrip Siakad Unila . . . . . . . . 35
4.1.1

Perancangan Database . . . . . . . . . . . . . . . . . . . . 36

4.1.2

Program Simulasi Pencetakan Transkrip . . . . . . . . . . . 38

4.2


Solusi Program Simulasi Pencetakan Transkrip . . . . . . . . . . . 44

4.3

Pembahasan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4.4

Pengujian Program Solusi Pencetakan Transkrip Siakad . . . . . . . 52

4.5

4.4.1

Menterjemahkan Source Code Kedalam CFG . . . . . . . . 52

4.4.2

Cyclometic Complexity (CC) . . . . . . . . . . . . . . . . 52


4.4.3

Perancangan Test Case . . . . . . . . . . . . . . . . . . . . 56

Analisis Hasil Pengujian Sistem . . . . . . . . . . . . . . . . . . . 60

2

BAB V KESIMPULAN DAN SARAN

63

5.1

Kesimpulan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

5.2

Saran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

DAFTAR PUSTAKA

65

3

Persembahan untuk Bapak dan Mamak tersayang
yang telah membesarkan dan mendidik dengan penuh
kasih sayang dan kesabaran.
Kakak-kakak dan keponakan tercinta.
Terima kasih atas segala dukungan dan keceriaan yang telah
diberikan yang menjadi sumber semangat bagi hidupku.
Keluarga Besar Linux Lampung.
Teman-teman dan Almamater tercinta.
Semoga Allah SWT selalu memberikan rahmat dan keberkahan Nya di dunia
dan di akhirat. Amin.

BAB I
PENDAHULUAN

1.1 Latar Belakang
Kemajuan teknologi telah menjadi sesuatu yang tak terhindarkan dalam kehidupan, karena kemajuan teknologi berjalan sesuai dengan kemajuan ilmu pengetahuan. Setiap inovasi yang diciptakan memberikan manfaat positif bagi kehidupan
manusia, memberikan banyak kemudahan serta sebagai cara baru dalam melakukan
aktifitas manusia. Dalam bidang teknologi, masyarakat sudah menikmati banyak
manfaat yang dibawa oleh inovasi-inovasi yang telah dihasilkan.
Manfaat yang dapat dirasakan dari perkembangan teknologi, khususnya teknologi informasi adalah dalam bidang pendidikan. Hal ini dapat dilihat dari kemudahan yang diberikan dalam mengakses informasi yang dibutuhkan oleh peserta didik
maupun pengajar. Salah satu contoh penerapan teknologi informasi dalam bidang
pendidikan adalah banyaknya universitas yang telah menerapkan sistem yang telah
terkomputerisasi, yang dapat mempermudah dan memperkecil adanya kesalahan
yang dilakukan dalam memperoleh informasi akademik. Salah satu sistem yang
digunakan adalah SIAKAD (Sistem Informasi Akademik).
SIAKAD adalah sebuah sistem khusus yang digunakan untuk keperluan pengelolaan data-data akademik dengan menerapkan teknologi komputer, baik hardware maupun software. SIAKAD digunakan untuk mengambil mata kuliah mahasiswa sesuai dengan fakultas dan jurusan, merencanakan studi atau yang disebut

2
dengan KRS, melihat nilai mata kuliah, mencetak transkrip atau nilai keseluruhan
mahasiswa, melihat daftar dosen di setiap fakultas dan jurusan masing-masing.
Siakad atau sistem informasi akademik, sebagai penyedia data pendukung harus
mampu memberikan data dan informasi secara cepat dan akurat untuk memberikan
informasi kepada user. Apabila sistem yang digunakan belum berfungsi secara
sempurna sesuai dengan kebutuhan programmer dan user, maka diperlukan perbaikan dan pengembangan pada sistem, sehingga sesuai dengan kebutuhan yang
diperlukan. Untuk mengetahui kekurangan dan kesalahan dalam sistem, maka programmer perlu melakukan pengujian dengan menggunakan desain test case, yakni
melakukan pengujian pada struktur kontrol program maupun bagian persyaratan
pada fungsi software yang diuji. Dalam pengujian perangkat lunak dapat menggunakan Whitebox Testing dan Blackbox Testing.
Hasil pencetakan transkrip SIAKAD Unila terdapat kekeliruan yaitu pada output pencetakan. Kekeliruan ini hanya ditemukan pada transkrip mahasiswa yang
mengambil mata kuliah lebih dari 9 semester yaitu 10, 10P, 11, 12,12P, 13, 14, 14P,
dengan mengisi KRS (Kartu Rencana Studi) di semester-semester tersebut. Kekeliruan pencetakan transkrip SIAKAD Unila tersebut dapat dilihat pada transkrip
salah satu mahasiswa berikut. Lihat Gambar 1 dan Gambar 2.

Gambar 1. KRS

3

Gambar 2. Transkrip

4
Pada gambar 1.1 merupakan KRS (Kartu Rencana Studi) semester 10 dan gambar 1.2 menunjukkan transkrip mahasiswa, terdapat bug dalam pencetakan, yaitu
beberapa mata kuliah yang terdapat pada semester 10, yaitu Multimedia, Manajemen Sistem Informasi, Seminar Usul Penelitian, dan Kewirausahaan. Pada transkrip
ditampilkan setelah semester satu, yang seharusnya tampil setelah semester sembilan. Dengan ditemukannya kesalahan tersebut, maka perlu adanya perbaikan pada
sistem.
Pada penelitian yang dilakukan sebelumnya oleh Selva Apriliyani (2011), telah
diberikan solusi mengenai penemuan bug atau kekeliruan tersebut yaitu dengan menambahkan table semester baru pada database. Akan tetapi, penambahan tabel baru
pada database tersebut menyebabkan ketidakefisienan, karena untuk pengelolaan
data yang cukup banyak, jika harus menambah atribut baru pada setiap tabel dalam
pengerjaannya maka akan membutuhkan waktu yang lama.
Untuk itu, pada penelitian lanjutan ini, dilakukan hal yang sama yaitu menelusuri
kesalahan yang terdapat pada pencetakan transkrip SIAKAD Unila. Kemudian
diberikan solusi pada bug yang terdapat pada program simulasi dengan metode
whitebox dan memperbaiki source code program simulasi tanpa melakukan perubahan pada database sistem dan menambah tabel pada database seperti yang telah
dibuat pada penelitan sebelumnya, agar ditemukan alternatif solusi dalam mengatasi
kekeliruan tersebut.
1.2 Rumusan Masalah
Dari latar belakang permasalahan tersebut, penelitian ini akan menelusuri bug
pada program simulasi pencetakan transkip Siakad Unila dengan mengacu pada
bug yang ditemukan pada tabel mk mahasiswa yang merupakan salah satu tabel
yang diperlukan dalam pembuatan transkrip siakad mahasiswa Unila. Memberikan
solusi terhadap bug-nya dengan memperbaiki source code program simulasi serta
melakukan penelusuran bug pada program menggunakan metode whitebox.

5

1.3 Batasan Masalah
Dalam masalah ini, pembahasan dibatasi pada :
1. Penelusuran bug program simulasi pencetakan transkrip Siakad Unila.
2. Penelusuran bug mengacu pada tabel mkmahasiswa pada database.
3. Simulasi sistem menggunakan PHP dan MySQL.
4. Menggunakan OS Linux Sabily 11.04 dalam proses pengerjaannya.
5. Penelusuran bug menggunakan Whitebox Testing.
6. Program yang dibuat adalah source code program simulasi pencetakan transkrip siakad Unila.
7. Menggunakan metode pengurutan data Bubble sort.

1.4 Tujuan
Tujuan dilaksanakan penelitian ini adalah :
1. Menemukan kesalahan pada program simulasi dan memberikan solusi.
2. Memperbaiki source code program simulasi pencetakan transkip SIAKAD
Unila.
3. Mencari alternatif solusi dalam memberikan solusi pada sistem.
4. Lebih memahami bahasa pemrograman PHP dan MySQL.

1.5 Manfaat
Penelitian ini dilakukan dengan harapan agar dapat memberikan kontribusi
yang nyata dalam hal sebagai berikut :

6
1. Memberikan masukan pada sistem SIAKAD Unila khususnya bug pencetakan transkrip Unila dengan memperbaiki source code program simulasi.
2. Memberikan alternatif pilihan dalam mengatasi masalah yang terdapat pada
pencetakan transkrip siakad Unila.
3. Menjadi referensi bagi yang ingin mendalami pemrograman PHP MySQL.
4. Menambah referensi mengenai pengujian berbasis web yang menggunakan
whitebox testing.

BAB V
SIMPULAN DAN SARAN

5.1 Simpulan
Berdasarkan hasil dari pembahasan, maka dapat disimpulkan sebagai berikut :
1. Bug atau kesalahan yang ditemukan disebabkan karena tipe data pada field
semester yang bertipe data char yang berurut sesuai dengan aturan alfanumerik dan perintah query pada program simulasi.
2. Ditemukan alternatif solusi yang terdapat pada kesalahan program simulasi
pencetakan transkrip SIAKAD Unila yaitu menggunakan variabel memori
dengan mengubah source code program.
5.2 Saran
Berdasarkan kesimpulan di atas maka diharapkan penelitian selanjutnya untuk menggunakan teknik lain dalam pengujian peneelusuran bug pencetakan transkrip SIAKAD
Unila.

DAFTAR PUSTAKA

Abidin, Taufik Fuadi. Selection Sort.pdf. Universitas Mercubuana.
Apriliana, S. 2011. Penelusuran Bug Program Simulasi Pencetakan
TranskripSiakad Unila dengan Metode Whitebox dan Solusinya.
Skripsi. Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas
Lampung.
Ayuliana, 2009. Pertemuan04-Software Testing Techniques.pdf.
Busono, Pranto. 2010. Testing dan Implementasi Pengujian WhiteBox Basis
Path Testing.Doc. ModulVII. Universitas Mercubuana
Galin, Daniel. 2004. Software Quality Assurance fromTheory to Implementation
hal 187-197. England:REARSON EDUCATION.
Indrati, Aviarini. 2005. Whitebox Testing.pdf.
Kadir, A. dan Hariyanto. 2005. Algoritma Pemrograman Menggunakan C++
hal 5. Yogyakarta:ANDI OFFSET
Karmilasari. 2013. Pengembangan Perangkat Lunak.pdf. Universitas Gunadarma
Kristanto, A. 2003.Perancangan Sistem Informasi dan Aplikasinya hal 11-13.
Yogyakarta:PENERBIT GAVA MEDIA.
Munir, Rinaldi. 2007.Algortima dan Pengurutan Dalam Bahasa Pascal dan C hal
428-432. Bandung:INFORMATIKA.
Ngeon, Thompson Susabda. 2009. Algoritma dan Struktur Data Bahasa C hal
243-244. Jakarta:Mitra Wacana Media.
Nidhra, S. dan Jagruthi Dondeti. 2012. Blackbox and Whitebox Testing
Technique-A Literatur Review. International Journal Of Embedded
System
and Application(IJESA) Vol2.No.2. India dan Swedia.
Nugroho, B.2004. Aplikasi Pemrograman Web Dinamis dengan PHP dan
MySQL hal 201-202. Yogyakarta:PENERBIT GAVA MEDIA.

Pressman, Roger S. 2005. Software engineering: a practitioner’s approach.
New York : McGraw-Hill Higher Education.
Rao, A. dan Kiran Kumar. 2011. An Approach to Cost Effective Regression
Testing in Blackbox Testing Environment. International Journal of
ComputerScience Issue Vol.8,issue 3.No1. India
Rizky,Soetam. 2011. Konsep Dasar Rekayasa Perangkat Lunak. Jakarta:
Prestasi Pustaka.
Robert,H. Blissmer, Computer Annual, An Introduction to Information Systems
1985-1986 (2nd Edition), John Wiley & Sons, 1985.
V. Carl Hamacher, Zvonko G. Vranesic, Safwat G. Zaky, Computer Organization
(5th Edition), McGraw-Hill, 2001.
Wahono,Romi Satria. 2008. Komputer Dasar. www.IlmuKomputer.com
William M. Fuori, Introduction to the Computer: The Tool of Business (3rd
Edition), Prentice Hall, 1981.
Zohrahayati. 2007. Perancangan Sistem Informasi Pelayanan Pelanggan
Berbasis Jaringan Pada PT.PLN Wil.Sultenggo Cab.Gorontalo Kantor
Jaya
Tapa. Jurnal Ichsan Gorontalo vol2.No.1 Feb-April. Gorontalo