• Tidak ada hasil yang ditemukan

APLIKASI PENJADWALAN UJIAN TUGAS AKHIR BERBASIS WEB

N/A
N/A
Protected

Academic year: 2019

Membagikan "APLIKASI PENJADWALAN UJIAN TUGAS AKHIR BERBASIS WEB"

Copied!
136
0
0

Teks penuh

(1)

APLIKASI PENJADWALAN UJIAN TUGAS AKHIR

BERBASIS WEB

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Oleh:

Hilarius Haryo Tutuko 065314042

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA

(2)

FINAL EXAM APPLICATION SCHEDULING BASED WEB

FINAL PROJECT

Presented As Partial Fulfillment Of The Requirements

To Obtain The Bachelor Computer Degree

In Informatics Engineering

Compiled By Hilarius Haryo Tutuko

065314042

INFORMATICS ENGINEERING STUDY PROGRAM FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY YOGYAKARTA

(3)
(4)
(5)

HALAMAN PERSEMBAHAN

Skripsi ini dipersembahkan untuk :

Allah Bapa, Tritunggal Maha Kudus di Surga

Sumber segala berkat & rahmat dalam hidupku, segala karunia dalam hidupku berasal daripada-NYA.

Alfonsus Sulistyo Widodo dan Yulia Elizabeth Endang Probojati

Yang selalu memberikan kasih sayang, pengorbanan, dan segala doa yang selalu dipanjatkan demi keberhasilan dan segala yang baik dalam hidupku.

Clarita Hera Hatmisari

Yang selalu memberikan dukungan dan doa untuk kakaknya

Semua teman – teman

Yang selalu menghibur, menemaniku dalam suka dan duka.

(6)

MOTTO

It’s always seems impossible till it’s done

Struggle as hard as you can whatever you believe in

Think positively. No matter how bad situation, something good will

(7)

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini

tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan

dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, 26 Juli 2013

Penulis

(8)

LEMBAR PERNYATAAN PERSETUJUAN

PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Hilarius Haryo Tutuko

Nomor Mahasiswa : 065314042

Demi pengembangan ilmu pengetahuan, saya memberikan kepada

PerpustakaanUniversitas Sanata Dharma karya ilmiah saya yang berjudul :

APLIKASI PENJADWALAN UJIAN TUGAS AKHIR BERBASIS WEB

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan

kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan,

mengalihkan, dalam bentuk media lain, mengelolanya dalam bentuk pangkalan

data, mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau

media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya

maupun memberikan royalty kepada saya selama tetap mencantumkan nama saya

sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Dibuat di Yogyakarta

Pada tanggal : 26 Juli 2013

Yang menyatakan,

(9)

ABSTRAK

APLIKASI PENJADWALAN UJIAN TUGAS AKHIR BERBASIS WEB

Hilarius Haryo Tutuko

065314042

Universitas Sanata Dharma

Yogyakarta

2013

Tujuan dibuatnya Aplikasi Penjadwalan Ujian Tugas Akhir Berbasis Web

ini adalah untuk memudahkan petugas skretariat dalam mengatur jadwal Ujian

Tugas Akhir serta memudahkan Dosen , Mahasiswa, petugas ruang dan petugas

konsumsi untuk melihat jadwal Ujian Tugas Akhir.

Metode pengembangan sistem yang digunakan untuk membangun aplikasi

ini adalah dengan menggunakan metodologi pengembangan sistem secara

terstuktur (Structured System Analysis and Design Method). Metodologi ini

terbagi menjadi beberapa fase yaitu : Fase Analisis Sistem (Analysis Phase), Fase

Perancangan (Design Phase), Fase Implementasi (Implementation Phase), Fase

Pengujian (Testing Phase).

Dengan menggunakan Aplikasi Penjadwalan Ujian Tugas Akhir Berbasis

Web ini, pengguna sistem dapat melakukan penjadwalan Ujian Tugas Akhir

sehingga diharapkan tidak terjadi permasalahan penjadwalan yang dikarenakan

dosen tidak dapat hadir dikarenakan ada jadwal jadwal kegiatan lain pada waktu

yang sama, maupun ruang ujian digunakan untuk ujian mahasiswa lain. Dengan

aplikasi ini, laporan yang dibuat dapat dimanfaatkan untuk kepentingan

perencanaan jumlah konsumsi, pemberitahuan kepada dosen yang bersangkutan,

(10)

ABSTRACT

FINAL EXAM APPLICATION SCHEDULING BASED WEB

Hilarius Haryo Tutuko

065314042

Sanata Dharma University

Yogyakarta

2013

The purpose of this Final Examination Application Scheduling Based Web

is to facilitate the Secretariat staff for Final Exam schedule and enable lecturers,

students, officers and personnel space consumption to see the Final Exam

schedule.

The methods are used to build this application is Structured Systems

Analysis and Design Method. This methodology is divided into several phases:

Analysis Phase, Design Phase, Implementation Phase, and Testing Phase.

By using the Final Exam Scheduling Application Based Web, users can

perform system scheduling Final Exam so hopefully that does not happen due to

scheduling problems lecturer who could not attend due to a schedule other

activities scheduled at the same time, and the space used for the test exam

students other. With this application, a report was made to be used for the

purposes of planning the amount of consumption, notice to the lecturer concerned,

(11)

KATA PENGANTAR

Puji dan syukur kehadirat Tuhan Yang Maha Kuasa, karena hanya atas

rahmat dan karunia-Nya, maka penulis dapat menyelesaikan Skripsi yang berjudul

“APLIKASI PENJADWALAN UJIAN TUGAS AKHIR BERBASIS WEB “

ini dengan baik. Maksud dan tujuan penyusunan skripsi ini adalah untuk

melengkapi salah satu syarat guna memperoleh gelar Sarjana Komputer di

Universitas Sanata Dharma Yogyakarta.

Penyusunan skripsi ini tidak lepas dari bantuan serta pengarahan dari

berbagai pihak baik secara langsung maupun tidak langsung. Oleh karena itu pada

kesempatan ini penulis ingin menyampaikan rasa terima kasih kepada :

1. Ibu Sri Hartati Wijono, S.Si., M.Si. selaku dosen pembimbing yang telah

meluangkan banyak waktu dan tenaga untuk mendampingi di setiap

proses, serta kesabaran dalam memberikan bimbingan pengarahan,

semangat, masukan, dan saran yang membangun kepada penulis dari awal

hingga akhir penulisan skripsi ini.

2. Ibu Ridowati Gunawan, S.Kom., M.T., selaku dosen penguji dan Kaprodi

Teknik Informatika untuk semua kritik, saran yang diberikan kepada

penulis pada saat pengujian serta kesabarannya dalam menuntun penulis

untuk menyelesaikan studinya.

3. Bapak St. Yudianto Asmoro, S.T., M.Kom., selaku dosen penguji untuk

semua kritik, dan juga saran yang diberikan kepada penulis pada saat

pengujian.

4. Bapak dan Ibu dosen Program Studi Teknik Informatika yang telah

berbagi ilmu, dan setia mendampingi di setiap proses perkuliahan.

5. Orang tua ( AF. Sulityo Widodo dan YE. Probojati ), dan adik ( Clarita

Hera Hatmisari ) yang selalu memberikan dukungan baik moril dan

materil sehingga penulis dapat menyelesaikan skripsi ini dengan baik.

6. Mas Yos yang telah bersedia meluangkan waktu dan pikirannya untuk

membantu penulis dalam menyelesaikan skripsi.

7. Priscila Kusumaningrum yang setia memberikan semangat dan doa

(12)

karena tanpa bosan selalu mengingatkan untuk segera menyelesaikan

skripsi ini.

8. Mas Munir dan Mbak Ajenk Toxic Tatto atas wejangan dan dorongan

kepada penulis untuk segera menyelesaikan skripsi ini.

9. Teman kontrakan ( Hengky dan Maya ), terimakasih semangat dan

dukungan kepada penulis untuk segera menyelesaikan skripsi ini.

10.Keluarga besar Boyonyanyi Family ( Friendly band, Takut Aer band, &

crew ) sumber inspirasi dan kreatifitas.

11.Teman-teman Teknik Informatika angkatan 2006 atas persaudaraan, kebersamaan, bantuan, dan kerja sama selama ini.

12.Segenap karyawan Universitas Sanata Dharma yang bersedia melayani

kebutuhan administrasi penulis dalam kegiatan perkuliahan maupun dalam

penyusunan skripsi ini.

13.Semua pihak yang telah membantu penulis baik secara langsung maupun

tidak langsung.

Seperti kata pepatah “ Tak ada gading yang tak retak “, penulis sangat

menyadari bahwa dalam penulisan skripsi ini sangatlah jauh dari kesempurnaan,

sehingga saran dan kritik dari pembaca sangat penulis harapkan.

Akhir kata, penulis berharap agar skripsi ini dapat bermanfaat bagi pembaca

untuk dapat menambah wawasan dan pengetahuan. Apabila terdapat beberapa

kesalahan dalam penulisan maupun implementasi, penulis memohon maaf yang

sebesar-besarnya.

Yogyakarta, 26 Juli 2013

(13)

DAFTAR ISI

HALAMAN JUDUL ... i

HALAMAN PERSETUJUAN PEMBIMBING ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN PERSEMBAHAN ... v

MOTTO ... vi

PERNYATAAN KEASLIAN KARYA ... vii

LEMBAR PERNYATAAN PERSETUAN PUBLIKASI ... viii

ABSTAK ... ix

ABSTRACT ... x

KATA PENGANTAR ... xi

DAFTAR ISI ... xiii

DAFTAR GAMBAR ... xvi

DAFTAR TABEL ... xix

BAB I PENDAHULUAN ... 1

I.1. Latar Belakang ... 1

I.2. Rumusan Masalah ... 2

I.3. Tujuan Penelitian ... 2

I.4. Batasan Masalah ... 2

I.5. Metodologi Penelitian ... 2

I.6. Sistematika Penulisan ... 4

BAB II LANDASAN TEORI ... 5

II.1. Pengertian Aplikasi ... 5

II.2. Jadwal... 5

II.3. Pemrograman Berbasis Web ... 6

II.4. Basis Data ... 6

II.4.1. SQL (Structured Query Language) ... 6

II.5. Rekayasa Perangkat Lunak ... 7

II.6. DFD (Data Flow Diagram) ... 9

(14)

BAB III ANALISIS DAN PERANCANGAN SISTEM ... 13

III.1. Analisis Sistem ... 13

III.1.1. Gambaran Umum Sistem ... 13

III.2. Analisa Kebutuhan ... 13

III.2.1. Diagram Konteks ... 13

III.2.2. Diagram Use-case Kebutuhan Sistem ... 14

III.2.3. Narasi Use-case ... 15

III.3. Perancangan Logikal ... 15

III.3.1. ER-diagram ... 16

III.3.2. Logical Design ... 17

III.3.3. Physical Design ... 18

III.3.4. Diagram Dekomposisi... 20

III.3.5. Diagram Arus Data (DAD) ... 22

III.4. Perancangan Fisikal ... 26

III.4.1. Arsitektur Aplikasi Kebutuhan Sistem ... 26

III.4.1.1.Arsitektur Aplikasi Kebutuhan Pengembang ... 26

III.4.1.2.Arsitektur Aplikasi Kebutuhan Pengguna ... 27

III.4.2. Perancangan Antar Muka Sistem ... 27

III.4.2.1.Rancangan Antar Muka Untuk Administrator ... 27

BAB IV IMPLEMENTASI SISTEM ... 36

IV.1. Implementasi Basis Data ... 36

IV.2. Implementasi Tampilan Antar Muka Sistem ... 38

IV.2.1. Implementasi Tampilan Antar Muka Administrator ... 39

BAB V ANALISIS HASIL IMPLEMENTASI ... 106

V.1. Kekurangan Dan Kelebihan Sistem ... 106

V.1.1. Kekurangan Sistem ... 106

V.1.2. Kelebihan Sistem ... 107

BAB VI PENUTUP ... 108

(15)

VI.2. Saran ... 108

DAFTAR PUSTAKA ... 109

(16)

DAFTAR GAMBAR

Gambar 2.1 Tabel Simbol-simbol dalam ERD ... 11

Gambar 3.1 Diagram Konteks Aplikasi Penjadwalan Ujian Tugas Akhir ... 14

Gambar 3.2 Diagram Use-case Aplikasi Penjadwalan Ujian Tugas Akhir ... 15

Gambar 3.3 ER-diagram Aplikasi Penjadwalan Ujian Tugas Akhir ... 16

Gambar 3.4 logical design dari Aplikasi Penjadwalan Ujian Tugas Akhir ... 17

Gambar 3.5 Diagram Dekomposisi Aplikasi Penjadwalan Ujian Tugas Akhir ... 20

Gambar 3.6 DAD Level 1 Aplikasi Penjadwalan Ujian Tugas Akhir ... 22

Gambar 3.7 DAD Level 2 Proses 2 Aplikasi Penjadwalan Ujian Tugas Akhir ... 23

Gambar 3.8 DAD Level 2 Proses 3 Aplikasi Penjadwalan Ujian Tugas Akhir ... 24

Gambar 3.9 DAD Level 2 Proses 4 Aplikasi Penjadwalan Ujian Tugas Akhir ... 25

Gambar 3.10 DAD Level 2 Proses 5 Aplikasi Penjadwalan Ujian Tugas Akhir ... 26

Gambar 3.11 Rancangan Menu Administrator ... 28

Gambar 3.12 Rancangan Halaman Beranda ... 28

Gambar 3.13 Rancangan Halaman Jadwal Seminar Berdasarkan Dosen ... 29

Gambar 3.14 Rancangan Halaman Jadwal Seminar Berdasarkan Tanggal ... 29

Gambar 3.15 Rancangan Halaman Home ... 30

Gambar 3.16 Rancangan Halaman Daftar Seminar ... 30

(17)

Gambar 3.18 Rancangan Halaman Penentuan Jadwal Seminar ... 31

Gambar 3.19 Rancangan Halaman Jadwal Seminar ... 32

Gambar 3.20 Rancangan Halaman Detail Seminar ... 32

Gambar 3.21 Rancangan Halaman Ubah Jadwal Seminar ... 33

Gambar 3.22 Rancangan Halaman Laporan ... 33

Gambar 3.23 Rancangan Halaman Detail Seminar ... 34

Gambar 3.24 Rancangan Halaman Pengaturan Sistem ... 34

Gambar 3.25 Rancangan Halaman Pendaftaran User ... 35

Gambar 4.1 Implementasi Basis Data Sistem ... 36

Gambar 4.2 Implementasi Tabel rb_course ... 37

Gambar 4.3 Implementasi Tabel rb_lectures ... 37

Gambar 4.4 Implementasi Tabel rb_seminars ... 37

Gambar 4.5 Implementasi Tabel rb_rooms ... 37

Gambar 4.6 Implementasi Tabel rb_seminars ... 38

Gambar 4.7 Implementasi Tabel rb_status ... 38

Gambar 4.8 Implementasi Tabel rb_times ... 38

Gambar 4.9 Implementasi Halaman Beranda ... 45

Gambar 4.10 Implementasi Halaman Jadwal Seminar Berdasarkan Dosen ... 48

Gambar 4.11 Implementasi Halaman Jadwal Seminar Berdasarkan Tanggal ... 50

Gambar 4.12 Implementasi Halaman Home ... 53

Gambar 4.13 Implementasi Halaman Daftar Seminar ... 56

Gambar 3.14 Implementasi Halaman Pengajuan Jadwal Seminar ... 59

Gambar 4.15 Implementasi Halaman Penentuan Jadwal Seminar ... 63

Gambar 4.16 Implementasi Pesan Error ... 65

Gambar 4.17 Implementasi Halaman Jadwal Seminar ... 69

Gambar 4.18 Implementasi Halaman Detail Seminar ... 72

Gambar 4.19 Implementasi Halaman Ubah Jadwal Seminar ... 76

Gambar 4.20 Implementasi Halaman Laporan ... 81

Gambar 4.21 Implementasi Halaman Detail Seminar ... 84

(18)

Gambar 4.22.2 Lanjutan Implementasi Halaman Pengaturan Sistem ... 92

Gambar 4.22.3 Lanjutan Implementasi Halaman Pengaturan Sistem .... 93

(19)

DAFTAR TABEL

Tabel 3.1 Identifikasi Pelaku Sistem ... 14

Tabel 3.2 Rancangan Tabel rb_course ... 18

Tabel 3.3 Rancangan Tabel rb_lecturs ... 18

Tabel 3.4 Rancangan Tabel rb_members ... 18

Tabel 3.5 Rancangan Tabel rb_rooms ... 18

Tabel 3.6 Rancangan Tabel rb_seminars ... 19

Tabel 3.7 Rancangan Tabel rb_status ... 19

(20)

Bab I

Pendahuluan

I.1. Latar Belakang

Penjadwalan merupakan pekerjaan rutin petugas sekretariat dalam sebuah

sistem akademik perguruan tinggi. Dalam perguruan tinggi terdapat beberapa

jenis penjadwalan yang sering kita jumpai, diantaranya yaitu penjadwalan

perkuliahan dan penjadwalan ujian tugas akhir. Dalam tugas akhir ini akan

dibahas tentang pembuatan Aplikasi Penjadwalan Tugas Akhir.

Ujian Tugas Akhir merupakan ujian terakhir yang harus ditempuh seorang

mahasiswa untuk dapat memperoleh gelar sarjana. Ujian Tugas Akhir

dilaksanakan dengan dihadiri tiga dosen sebagai penguji sehingga dibutuhkan

pengaturan waktu dimana ketiga dosen tersebut dapat menghadiri ujian secara

bersamaan. Dalam penyusunan jadwal ada beberapa aspek yang harus

dipertimbangkan diantaranya :

1. Adanya permintaan dosen yang bersangkutan tidak bisa menguji pada waktu tertentu.

2. Tidak boleh adanya jadwal ujian yang saling bentrok antar dosen ataupun waktu ujian.

Seringkali program studi memperoleh kesulitan dalam mendapatkan

jadwal dengan ketiga dosen penguji dapat menghadiri Ujian Tugas Akhir

dikarenakan jadwal setiap dosen yang berbeda-beda.

Hal ini melatar belakangi untuk dibuatnya sebuah aplikasi penjadwalan

Ujian Tugas Akhir. Dengan aplikasi ini diharapkan dapat mengatasi kesulitan

dalam penyusunan jadwal Ujian Tugas Akhir. Aplikasi yang dibangun merupakan

aplikasi berbasis web, sehingga dengan memanfaatkan internet maupun intranet

mahasiswa dan dosen dapat dengan mudah mengecek jadwal ujian dalam waktu

tertentu. Hal ini diharapkan dapat menghindari pelaksanaan ujian apabila dosen

yang bersangkutan tidak dapat hadir dikarenakan ada jadwal kegiatan lain.

Dengan aplikasi ini, laporan yang dibuat dapat dimanfaatkan untuk kepentingan

perencanaan jumlah konsumsi, pemberitahuan kepada dosen yang bersangkutan,

(21)

I.2. Rumusan Masalah

Berdasarkan latar belakang permasalahan yang dikemukakan di atas, maka

rumusan masalahnya adalah :

1. Bagaimana mengelola jadwal Ujian Tugas Akhir yang mampu mengatasi

masalah jadwal dosen yang berbeda – beda sehingga tidak terjadi jadwal yang bentrok.

2. Bagaimana jadwal Ujian Tugas Akhir dapat digunakan untuk membantu

kepentingan perencanaan jumlah konsumsi, pemberitahuan kepada dosen

yang bersangkutan, dan pemberitahuan kepada petugas pengelola ruangan.

I.3. Tujuan Penelitian

Tujuan dari Tugas Akhir ini adalah untuk membangun sebuah aplikasi

penjadwalan Ujian Tugas Akhir berbasis web dengan menggunakan bahasa

pemrograman PHP dan basis data MySQL. Aplikasi ini diharapkan dapat

memberi kemudahan dalam menentukan jadwal Ujian Tugas Akhir dalam hal

waktu, ruangan yang akan dipakai maupun kesediaan dosen yang bersangkutan.

I.4. Batasan Masalah

Adapun batasan dari program yang dibuat adalah :

1. Tugas akhir ini hanya akan membahas tentang aplikasi penjadwalan Ujian

Tugas Akhir saja.

2. Input jadwal dilakukan oleh admin dalam hal ini petugas Sekretariat.

Dosen dan Mahasiswa dapat melihat jadwal ujian tanpa harus melakukan

login terlebih dahulu.

3. Aplikasi akan dibangun dengan bahasa pemrograman PHP pada bagian

antarmuka, Apache sebagai web server, dan menggunakan MySQL untuk

server basis data.

I.5. Metodologi Penelitian

Pada bagian ini penulis akan menjelaskan metode-metode yang digunakan

(22)

1. Studi Pustaka

Metode ini adalah metode yang dilakukan dengan mengumpulkan

sumber-sumber yang dibutuhkan. Hal ini dilakukan untuk memperkuat

analisa, dan pembangunan sistem.

2. Metode pengembangan sistem

Metode pengembangan sistem yang digunakan untuk membangun

aplikasi ini adalah dengan menggunakan metodologi pengembangan

sistem secara terstuktur (Structured System Analysis and Design

Method).

Metodologi ini terbagi menjadi beberapa fase yaitu :

a. Fase Analisis Sistem (Analysis Phase)

Analisis sistem bertujuan untuk mengidentifikasikan dan

mengevaluasi permasalahan–permasalahan yang dihadapi dan kebutuhan–kebutuhan yang diharapkan sehingga dapat menyelesaikan hambatan–hambatan yang terjadi kearah perbaikan sistem.

b. Fase Perancangan (Design Phase)

Merupakan langkah multiproses yang memusatkan kerja pada

perancangan sistem secara umum misalnya perancangan menu,

perancangan tampilan dan user interface.

c. Fase Implementasi (Implementation Phase)

Setelah melakukan perancangan sistem yang diinginkan maka hasil

rancangan tersebut diimplementasikan, yaitu diterjemahkan

kedalam bahasa pemrograman.

d. Fase Pengujian (Testing Phase)

Pengujian ini dimaksudkan untuk menguji apakah hasil sudah

sesuai dengan perancangan yang diinginkan serta mencari segala

(23)

I.6. Sistematika Penulisan

Untuk mempermudah dalam pemahaman dan penyusunan tugas akhir ini,

penulis membuat suatu sistematika penulisan sebagai berikut :

BAB I : PENDAHULUAN

Bab ini berisi pengantar, latar belakang masalah, rumusan masalah,

batasan masalah yang merupakan pokok permasalahan, tujuan

masalah, metodologi penelitian, dan sistematika penulisan.

BAB II : LANDASAN TEORI

Bab ini berisi landasan teori yang digunakan yaitu pengertian dasar

sistem informasi, rekayasa perangkat lunak, teknologi client-server,

Java dan MySQL.

BAB III : ANALISIS DAN PERANCANGAN SISTEM

Bab ini berisi tentang penganalisa sistem dan gambaran yang dibuat,

sedangkan perancangan sistem tersebut meliputi desain proses,

perancangan basis data dan perancangan user interface.

BAB IV : IMPLEMENTASI SISTEM

Bab ini merupakan penjelasan tentang implementasi terhadap basis

data, implementasi antar muka, dan implementasi program atau

tentang pembuatan database dan interfacenya.

BAB V : ANALISA HASIL

Bab ini merupakan penjelasan dari analisa hasil yang meliputi analisa

metodologi, teknologi, dan kelebihan kekurangan program.

BAB VI : PENUTUP

Bab ini merupakan penutup yang berisi kesimpulan yang menjawab

rumusan masalah serta beberapa saran untuk pengembangan program

(24)

Bab II

Landasan Teori

II.1. Pengertian Aplikasi

Aplikasi berasal dari kata application yang artinya penerapan; lamaran;

penggunaan. Secara istilah aplikasi adalah program siap pakai yang dibuat untuk

melaksanakan suatu fungsi bagi pengguna atau aplikasi yang lain dan dapat

digunakan oleh sasaran yang dituju.

Ada banyak pengertian mengenai aplikasi oleh para ahli dalam situs yaitu:

1. Aplikasi adalah satu unit perangkat lunak yang dibuat untuk melayani

kebutuhan akan beberapa aktivitas (Buyens, 2001).

2. Aplikasi adalah sistem lengkap yang mengerjakan tugas spesifik (Post,

1999).

3. Menurut Dhanta (2009:32), aplikasi (application) adalah software yang

dibuat oleh suatu perusahaan komputer untuk mengerjakan tugas-tugas

tertentu, misalnya Microsoft Word, Microsoft Excel.

Sedangkan menurut Anisyah (2000:30), aplikasi adalah penerapan,

penggunaan atau penambahan Dari pengertian diatas, dapat disimpulkan bahwa

aplikasi merupakan software yang berfungsi untuk melakukan berbagai bentuk

pekerjaan atau tugas-tugas tertentu seperti penerapan, penggunaan dan

penambahan data.

Menurut Jogiyanto (2005:126), perangkat lunak aplikasi adalah program

yang ditulis dan diterjemahkan oleh bahasa pemrograman untuk menyelesaikan

suatu aplikasi tertentu.

II.2. Jadwal

Pengertian jadwal menurut Kamus Besar Bahasa Indonesia (2008 : 393)

adalah pembagian waktu berdasarkan rencana pengaturan urutan kerja, daftar atau

(25)

terperinci. Sedangkan pengertian penjadwalan adalah proses, cara, perbuatan

menjadwalkan atau memasukkan ke dalam jadwal.

II.3. Pemrograman Berbasis Web

Pemrograman web (web programming) merupakan perkembangan web

lebih lanjut. Pemrograman web bertujuan untuk menciptakan halaman web sesuai

dengan permintaan pengguna. Pemrograman web memungkinkan halaman web

berinteraksi dengan pengguna. Aplikasi berbasis web diimplementasikan

menggunakan bahasa pemrograman yang memiliki kemampuan pemrograman

web.

Salah satu bahasa pemrograman yang memiliki kemampuan pemrograman

web dan banyak digunakan adalah PHP. PHP adalah singkatan dari “PHP : Hypertext Prepocessor”. PHP dikembangkan pertama kali oleh Rasmus Lerdorf pada tahun 1994, dari sekumpulan skrip Perl. Saat ini, PHP telah mencapai versi 5

dan merupakan bahasa scripting yang populer untuk pemrograman web.

II.4. Basis Data

Basis data merupakan koleksi terintegrasi dari data persisten, yang

merepresentasikan informasi yang diperlukan oleh berbagai program yang

membangun sistem informasi berbasis komputer pada sebuah organisasi. Fitur

utama dari basis data adalah data terpisah dari program yang menggunakan data

tersebut. Berbagai program dapat mengakses dan memodifikasi basis data yang

sama dan saling berbagi data, sehingga mengurangi redundansi dan inkosistensi

pada representasi data yang sama di program yang berbeda.

II.4.1. SQL (Structured Query Language)

SQL adalah bahasa standar yang digunakan untuk berkomunikasi dengan

basis data relasional, dan juga merupakan bahasa yang digunakan oleh banyak

aplikasi atau tool untuk berinteraksi dengan server basis data. SQL adalah bahasa

fungsional yang tidak mengenal iterasi dan tidak bersifat prosedural. SQL

menggunakan perintah-perintah dengan kata-kata sederhana dan mirip dengan

(26)

Kategori dasar dari perintah-perintah yang digunakan dalam SQL untuk

melakukan berbagai macam fungsi ada enam, yaitu DDL (Data Definition

Language), DML (Data Manipulation Language 2), DQL (Data Query

Language), DCL (Data Control Language), Data Administration Commands,

Transactional Control Commands. Fungsi yang dapat dilakukan termasuk

membangun objek basis data, memanipulasi objek, mempopulasikan tabel basis

data dengan data, memperbarui data yang sudah ada dalam tabel, menghapus data,

melakukan kueri basis data, mengontrol akses basis data, dan melakukan

administrasi basis data secara keseluruhan.

II.5. Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak memiliki tahapan–tahapan kegiatan yang bertujuan untuk mencapai (Pressman, R.S.) :

1. Pengoptimalan sumber daya (biaya, personil maupun peralatan).

2. Pembangunan perangkat lunak yang sesuai dengan jadwal (cepat).

3. Pemeliharaan perangkat lunak yang lebih mudah.

4. Hasil yang memuaskan customer.

Terdapat empat tahapan dalam rekayasa perangkat lunak, yaitu :

a. Pengumpulan Kebutuhan

Tahapan ini merupakan tahapan dasar yang digunakan oleh pengembangan

untuk mengumpulkan seluruh informasi yang akan dikelola suatu perangkat

lunak. Informasi–informasi yang dikumpulkan untuk pengembangan adalah informasi yang dinilai dapat bermanfaat atau dibutuhkan oleh pengguna (user).

Ada berapa kegiatan yang dilakukan dalam mengumpulkan informasi ,antara lain:

1. Mengumpulkan informasi mengenai penyebab masalah.

2. Mengumpulkan informasi yang menjadi dasar dalam proses pengambilan

keputusan.

(27)

b. Analisis Sistem

Tahapan ini merupakan tahapan pemodelan sistem dalam bentuk diagram,

berupa Data Flow Diagram dan E-R Diagram.

c. Perancangan

Perancangan perangkat lunak meliputi beberapa kegiatan, yaitu :

1. Perancangan Data

Kegiatan ini berupa perancangan tabel–tabel basis data yang akan berpengaruh bagi perangkat lunak. Perancangan ini sudah mulai

mendefinisikan tabel–tabel basis data secara terperinci. Field–field apa saja yang akan digunakan dalam perangkat lunak, tipe–tipe dari field yang digunakan, dan lain sebagainya.

2. Perancangan Arsitektural (fungsi serta proses pada perangkat lunak)

Perancangan arsitektural meliputi :

- Pembuatan Data Flow Diagram yang rinci.

- Pendefinisian dari algoritma modul.

- Pembuatan struktur modul.

3. Perancangan Antar Muka Pemakai

Antar muka pemakai merupakan jembatan penghubung antara

entitas-entitas dan sistem. Desain antar muka yang baik sangat dibutuhkan supaya

user mampu untuk mengoperasikan perangkat lunak dengan mudah.

Selain itu, antar muka juga memiliki peranan untuk membentuk “imageuser terhadap citra, misi, dan visi perangkat lunak yang dibangun.

Perancangan antar muka user meliputi beberapa hal, yaitu :

- Perancangan Struktur Menu

Merancang menu–menu yang akan ditampilkan dalam suatu sistem. - Perancangan jendela–jendela yang ditampilkan.

Merancang tata letak (lay out) jendela aplikasi yang ingin

(28)

d. Implementasi

Tahapan ini merupakan tahapan pengkodean dari hasil perancangan. Di

dalam tahapan ini, pengembang mulai membuat sistem aplikasi dengan

menggunakan bahasa pemrograman, misalnya PHP (Personal Home Pages).

Pengkodean ini disesuaikan dengan diagram–diagram yang telah dibuat, tabel– tabel basis data yang telah dirancang ataupun algoritma dan struktur dari modul.

II.6. DFD (Data Flow Diagram)

Data Flow Diagram (DFD) adalah diagram yang menggunakan

notasi-notasi untuk menggambarkan arus dari data secara logika tanpa

mempertimbangkan lingkungan fisik dimana data tersebut mengalir atau akan

disimpan. DFD merupakan alat yang digunakan pada metodologi pengembangan

sistem yang terstruktur (structure analysis and design).

Beberapa simbol yang digunakan dalam DFD :

1. External Entity (kesatuan luar)

Kesatuan luar merupakan kesatuan di luar lingkungan sistem yang

dapat berupa orang, organisasi atau sistem lainnya yang akan memberikan

input atau menerima output dari sistem. Kesatuan luar disimbolkan sebagai

berikut :

2. Data flow (arus data)

Arus data dalam DFD diberi simbol suatu panah, yang dapat mengalir

dari data yang berupa masukan untuk sistem atau hasil dari suatu sistem.

Arus data biasanya diberi nama yang jelas dan mempunyai arti. Arus data

disimbolkan sebagai berikut :

(29)

3. Process (proses)

Suatu proses adalah kegiatan atau yang dilakukan oleh orang, mesin

atau komputer dari hasil suatu arus data yang masuk ke dalam proses untuk

dihasilkan arus data yang akan keluar dari proses. Notasi proses dalam DFD

adalah sebagai berikut :

Indetifikasi

Nama Proses

4. Data store (simpanan data)

Simpanan data merupakan simpanan dari data yang dapat berupa:

 Suatu file atau database di dalam sistem komputer.

 Suatu arsip atau catatan manual.

 Suatu tabel acuan manual.

 Suatu agenda atau buku.

Simpanan data dalam DFD disimbolkan dengan sepasang garis

horisontal paralel yang tertutup di salah satu ujungnya.

Nama data store

Me

di

a

II.7. Entity Relationship Diagram (E-R Diagram)

Hubungan antar entitas (Entity Relationship modelling) merupakan salah

satu implementasi pendekatan dari atas ke bawah yang paling umum digunakan.

Hal ini dilakukan untuk merancang tabel, hubungan antar tabel,

mengidentifikasikan primary key dan foreign key, dan aturannya, serta domain

untuk basis data. Dalam pemodelan ini, tahapan yang dilakukan adalah sebagai

berikut:

1. Memilih entitas - entitas yang akan disusun oleh basis data dan

(30)

2. Melengkapi atribut-atribut yang sesuai pada entitas dan hubungan,

sehingga diperoleh tabel normal yang penuh (tabel ternormalisasi).

Sama dengan alat yang lain, E-R diagram memiliki simbol-simbol seperti

pada tabel berikut:

NO SIMBOL KETERANGAN

1

Entitas

Entitas adalah suatu objek yang

dapat di identifikasi dalam

lingkungan pemakai, sesuatu yang

penting bagi pemakai dalam konteks

sistem yang kan dibuat.

2

Atribut Atribut berfungsi mendeskripsi karakter entitas.

3

Relasi Relasi adalah sesuatu yang menjadi penghubung entitas satu dengan

entitas yang lainnya.

4 Link

Link adalah garis suatu penghubung

antara himpunan entitas dengan

atributnya.

Gambar 2.1 Tabel Simbol-simbol dalam ERD

Dalam diagram E-R dikenal adanya derajat hubungan (relationship) antara

entitas yang menyatakan jumlah anggota entitas yang terlibat dalam ikatan atau

(31)

a. Relasi one to one (1:1)

Relasi ini terjadi bila tiap anggota entitas A hanya boleh berpasangan

dengan tepat satu anggota entitas B. Hubungan 1:1 mencakup juga relasi 1:0 dan 0:1

b. Relasi one to many (1:m)

Relasi ini terjadi bila tiap anggota entitas A berpasangan lebih dari satu

anggota entitas B. hubungan one to many mencakup relasi 1:1, 0:1, 1:1 c. Relasi many to many (m : m)

Relasi ini terjadi bila tiap anggota entitas A boleh berpasangan dengan

lebih dari satu anggota entitas B, begitu juga sebaliknya tiap anggota B

boleh berpasangan dengan lebih dari satu anggota entitas A. Relasi ini

(32)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

III.1. Analisis Sistem

Fungsi utama aplikasi ini adalah untuk mengelola penjadwalan Ujian

Tugas Akhir. Data – data yang dikelola dalam aplikasi ini meliputi tanggal dan waktu pelaksanaan Ujian Tugas Akhir, ruangan yang digunakan, nama dosen

penguji, identitas mahasiswa yang mengikuti ujian, serta daftar Ujian Tugas Akhir

yang telah terlaksana. Dalam aplikasi ini akan ditampilkan identitas mahasiswa

yang akan mengikuti Ujian Tugas Akhir lengkap dengan nama dosen penguji,

ruangan yang digunakan, serta waktu pelaksanaan ujian. Sehingga dengan

dibuatnya aplikasi ini diharapkan tidak terjadi permasalahan penjadwalan

dikarenakan jadwal menguji yang bentrok pada jam yang sama, selain itu aplikasi

ini juga akan memudahkan petugas sekretariat untuk melakukan rekapitulasi

konsumsi yang harus disediakan untuk konsumsi Ujian Tugas Akhir,

pemberitahuan kepada dosen, dan pemberitahuan kepada petugas ruangan.

III.1.1. Gambaran Umum Sistem

Untuk masuk ke dalam sistem user perlu melakukan login untuk

membedakan hak akses. Dalam sistem ini terdapat satu aktor yaitu Sekretariat.

Sekretariat berhak mengelola semua data di dalam sistem seperti mengelola data

mahasiswa, mengelola data dosen, mengatur jam dan ruang ujian. Sedangkan

dosen dan mahasiswa hanya diijinkan untuk melihat jadwal saja tanpa berhak

mengubah data apapun.

III.2. Analisa Kebutuhan

III.2.1. Diagram Konteks

Berikut adalah daftar istilah pelaku sistem yang terlibat dalam Aplikasi

(33)

Pelaku Deskripsi

Administrator Adalah petugas sekretariat prodi Teknik Informatika yang

diberi fasilitas untuk : 1) Melihat jadwal ujian tugas akhir,

2) Mengisi data pengajuan seminar, 3) Mengelola data

pengajuan seminar tugas akhir meliputi daftar ruang, daftar

waktu dan tanggal, daftar dosen penguji, dan daftar mata

kuliah pendukung.

Tabel 3.1 Identifikasi Pelaku Sistem

Diagram konteks digunakan untuk menggambarkan bagaimana para

pelaku sistem berinteraksi dengan sistem, disertai masukan ke sistem dan keluaran

dari sistem. Diagram konteks juga menjadi batasan dari sistem yang akan

dibangun. Gambar 3.1 berikut adalah gambaran diagram konteks dari Aplikasi

Penjadwalan Ujian Tugas Akhir :

Sistem Informasi - idLectur, Nama Dosen Reviewer

- idCourse, Mata Kuliah Pendukung

- idTimes, Jam Ujian - idRooms, Ruang Ujian - idMember, User Name, Password

- idStatus, Status

Gambar 3.1 Diagram Konteks Aplikasi Penjadwalan Ujian Tugas Akhir

III.2.2. Diagram Use-case Kebutuhan Sistem

Diagram use-case digunakan untuk menggambarkan kebutuhan dari

pelaku sistem terhadap Sistem Aplikasi Penjadwalan Ujian Tugas Akhir. Tabel

(34)

Lampiran I. Gambar 3.2 adalah diagram use-case kebutuhan sistem dari Aplikasi

Penjadwalan Ujian Tugas Akhir yang digambarkan berdasarkan tabel deskripsi

use-case (terdapat pada Lampiran I).

Login Mengelola data

Ujian

Mengelola Data Dosen

Mengelola Ruang

Ujian

Mengelola Waktu

Ujian

<<Depend on>>

Melihat Jadwal

Ujian Administrator

<<Depend on>>

<<Depend on>>

<<Depend on>>

Gambar 3.2 Diagram Use-case Aplikasi Penjadwalan Ujian Tugas Akhir

III.2.3. Narasi Use-case

Narasi use-case digunakan untuk mengembangkan kejadian-kejadian

umum yang terjadi dan telah teridentifikasi dari diagram use-case Aplikasi

Penjadwalan Ujian Tugas Akhir pada Gambar 3.2 diatas. Dokumentasi kejadian

use-case atau narasi use-case dari diagram use-case diatas, dapat dilihat pada

Lampiran II.

III.3. Perancangan Logikal

Perancangan logikal digunakan untuk membuat rancangan logikal dari

Aplikasi Penjadwalan Tugas Ahir. Perancangan logikal ini meliputi : perancangan

(35)

kemudian membuat diagram konteks, dan diagram dekomposisi sistem yang

digunakan untuk mempermudah perancangan Diagram Arus Data (DAD) dari

setiap proses dan aliran data yang terdapat pada sistem ini.

III.3.1. ER-diagram

ER-diagram digunakan sebagai tahap awal pada perancangan basis data

sistem. Gambar 3.3 berikut adalah ER-diagram sistem yang digunakan sebagai

tahap awal perancangan basis data Aplikasi Penjadwalan Ujian Tugas Akhir :

Rb_course

(36)

III.3.2. Logical Design

Tahap logical design merupakan tahap selanjutnya dari perancangan basis

data sistem. Tahap logical design digunakan untuk merekonstruksi tabel pada

tahap perancangan ER-diagram, dengan maksud untuk menghilangkan redundansi

data, memecah atau menyatukan entitas-entitas dan relasi-relasi pada ER-diagram,

dan untuk menetapkan primary key dan foreign key. Gambar 3.4 berikut adalah

logical design dari Aplikasi Penjadwalan Ujian Tugas Akhir :

rb_seminars

(37)

III.3.3. Physical Design

Basis data yang akan dibangun terdiri dari tujuh tabel, yang akan

menyimpan data dari sebuah entitas, sedangkan record pada tabel akan

menyimpan nilai atribut dari suatu entitas. Rancangan fisik (physical design) dari

tabel tersebut dapat dilihat pada tabel-tabel berikut ini :

Tabel 3.2 Rancangan Tabel rb_course

Nama Field Type Size Description Key

cr_id Int 11 id dari course (mata

kuliah pendukung)

PK

cr_name Text Nama mata kuliah

Tabel 3.3 Rancangan Tabel rb_lecturs

Nama Field Type Size Description Key

lc_id Int 11 id dari lecture (dosen) PK

lc_name Char 255 Nama dosen

Tabel 3.4 Rancangan Tabel rb_members

Nama Field Type Size Description Key

Id Int 4 id dari member PK

Username Varchar 65 Nama pengguna

Password Varchar 65 Password pengguna

Tabel 3.5 Rancangan Tabel rb_rooms

Nama Field Type Size Description Key

id_room Int 11 id dari ruang PK

(38)

Tabel 3.6 Rancangan Tabel rb_seminars

Nama Field Type Size Description Key

sm_id Int 11 id dari seminar PK

sm_mhsname Text Nama mahasiswa

sm_mhsnim Varchar 9 Nomor induk mahasiswa

sm_title Text Judul tugas akhir

sm_course Int 11 Mata kuliah pendukung

sm_lecture1 Int 11 Nama dosen pembimbing

sm_lecture2 Int 11 Nama dosen penguji 1

sm_lecture3 Int 11 Nama dosen penguji 2

sm_attach1 Int 1 Lampiran 1

sm_attach1 Int 1 Lampiran 2

sm_notes Text Keterangan

sm_status Int 1 Status seminar

sm_room Int 11 Nama ruang

sm_date Date Tanggal seminar

sm_time Int 2 Jam seminar

Tabel 3.7 Rancangan Tabel rb_status

Nama Field Type Size Description Key

id_status Int 11 id dari status PK

st_name Char 225 Nama status

Tabel 3.8 Rancangan Tabel rb_times

Nama Field Type Size Description Key

tm_id Int 11 id dari jam ujian PK

tm_start Text Waktu ujian mulai

(39)

III.3.4. Diagram Dekomposisi

Dekomposisi adalah kegiatan menguraikan sistem kedalam subsistem,

proses, dan subproses menjadi beberapa tingkatan. Diagram dekomposisi

merupakan alat untuk menggambarkan perencanaan untuk model proses yang

lebih detail, yaitu diagram aliran data (DAD).

Gambar 3.5 berikut adalah diagram dekomposisi (berjenjang) dari sistem yang

akan dibangun sebagai acuan untuk membuat Diagram Arus Data (DAD)

berdasarkan level-level proses yang terdapat pada diagram dekomposisi

(berjenjang) di bawah ini :

0

Gambar 3.5 Diagram Dekomposisi Aplikasi Penjadwalan Ujian Tugas Akhir Diagram dekomposisi (berjenjang) pada Gambar 3.5 diatas menunjukkan proses

yang terjadi sisi Administrator. Berdasarkan diagram dekomposisi (berjenjang)

tersebut dapat dilihat bahwa Aplikasi Penjadwalan Ujian Tugas Akhir ini

memiliki kemampuan sebagai berikut :

 Proses 1 merupakan proses login. Pada proses ini tidak mempunyai sub proses.

(40)

 Proses 2.1 merupakan proses untuk menyimpan data ujian. Proses

ini tidak memiliki sub proses lagi.

 Proses 2.2 merupakan proses untuk mengedit data ujian. Proses ini

tidak memiliki sub proses lagi.

 Proses 2.3 menangani proses penghapusan data ujian. Pada proses

ini tidak memiliki sub proses lagi.

 Proses 3 merupakan proses untuk mengelola data dosen. Pada proses ini

terdapat 3 sub proses, yaitu :

 Proses 2.1 merupakan proses untuk menyimpan data dosen. Proses

ini tidak memiliki sub proses lagi.

 Proses 2.2 merupakan proses untuk mengedit data dosen. Proses ini

tidak memiliki sub proses lagi.

 Proses 2.3 menangani proses penghapusan data dosen. Pada proses

ini tidak memiliki sub proses lagi.

 Proses 4 merupakan proses untuk mengelola data ruang ujian. Pada proses ini terdapat 3 sub proses, yaitu :

 Proses 2.1 merupakan proses untuk menyimpan data ruang ujian.

Proses ini tidak memiliki sub proses lagi.

 Proses 2.2 merupakan proses untuk mengedit data ruang ujian.

Proses ini tidak memiliki sub proses lagi.

 Proses 2.3 menangani proses penghapusan data ruang ujian. Pada

proses ini tidak memiliki sub proses lagi.

 Proses 5 merupakan proses untuk mengelola data waktu ujian. Pada proses ini terdapat 3 sub proses, yaitu :

 Proses 2.1 merupakan proses untuk menyimpan data waktu ujian.

Proses ini tidak memiliki sub proses lagi.

 Proses 2.2 merupakan proses untuk mengedit data waktu ujian.

Proses ini tidak memiliki sub proses lagi.

 Proses 2.3 menangani proses penghapusan data waktu ujian. Pada

proses ini tidak memiliki sub proses lagi.

(41)

III.3.5. Diagram Arus Data (DAD)

Diagram Arus Data (DAD) merupakan diagram yang digunakan untuk

menggambarkan proses data yang mengalir dalam Aplikasi Penjadwalan Ujian

Tugas Akhir. Diagram Arus Data (DAD) dibuat berdasarkan level-level yang

telah digambarkan pada diagram dekomposisi (berjenjang) di atas.

a. DAD Level 1

Gambar 3.6 DAD Level 1 Aplikasi Penjadwalan Ujian Tugas Akhir

Gambar Diagram Arus Data (DAD) Level 1 pada Gambar 3.6 diatas

merupakan rangkaian proses yang terjadi pada Aplikasi Penjadwalan Ujian Akhir.

 Proses 1 adalah login berguna untuk memverifikasi pengguna aplikasi.

(42)

 Proses 3 menunjukan proses mengelola data dosen. Dalam proses ini melibatkan tabel rb_lecturs.

 Proses 4 menunjukan proses mengelola data ruang yang digunakan untuk ujian. Dalam proses ini melibatkan tabel rb_rooms.

 Proses 5 menunjukan proses mengelola data waktu ujian. Dalam proses ini melibatkan tabel rb_times.

 Proses 6 menunjukan proses lihat jadwal seminars. Dalam proses ini melibatkan 4 tabel yaitu, rb_seminars, rb_lecturs, rb_rooms, dan rb_times.

b. DAD Level 2 proses 2

Diagram Arus Data (DAD) level 2 proses 2 (Gambar 3.7) merupakan sub

sistem dari proses mengelola data ujian (proses 2.2).

Administrator Konfirmasi

Gambar 3.7 DAD Level 2 Proses 2 Aplikasi Penjadwalan Ujian Tugas Akhir Proses yang terjadi pada DAD level 2 proses 2 adalah : proses rekam data

ujian (proses 2.1), proses data ujian (proses 2.2), dan proses hapus data ujian

(43)

c. DAD Level 2 Proses 3

Diagram Arus Data (DAD) level 2 proses 3 (Gambar 3.8)

merupakan sub sistem dari proses mengelola data dosen (proses 2.3).

Administrator Konfirmasi

rb_lecturs D2

lc_name

3.2

Edit Data Dosen 3.1

Rekam Data Dosen

3.3

Hapus Data Dosen Konfirmasi

Hapus data

Konfirmasi hapus

lc_name

datadosen lc_name

lc_name

Gambar 3.8 DAD Level 2 Proses 3 Aplikasi Penjadwalan Ujian Tugas Akhir Proses yang terjadi pada DAD level 2 proses 3 adalah : proses rekam data

dosen (proses 3.1), proses data dosen (proses3.2), dan proses hapus data dosen

(44)

d. DAD Level 2 Proses 4

Diagram Arus Data (DAD) level 2 proses 4 (Gambar 3.9)

merupakan sub sistem dari proses mengelola ruang ujian (proses 2.4).

Administrator Konfirmasi

rb_rooms D3

rm_name

4.2

Edit Ruang Ujian

4.1

Rekam Ruang Ujian

4.2

Hapus Ruang Ujian Konfirmasi

Hapus data

Konfirmasi hapus

rm_name

dataruang rm_name

rm_name

Gambar 3.9 DAD Level 2 Proses 4 Aplikasi Penjadwalan Ujian Tugas Akhir Proses yang terjadi pada DAD level 2 proses 4 adalah : proses rekam data

ruang ujian (proses 4.1), proses data ruang ujian (proses 4.2), dan proses hapus

(45)

e. DAD Level 2 Proses 5

Diagram Arus Data (DAD) level 2 proses 5 (Gambar 3.10)

merupakan subsistem dari proses mengelola waktu ujian (proses 2.5).

Administrator Konfirmasi

rb_times D4

5.2

Edit Waktu Ujian

5.1

Rekam Waktu Ujian

5.3

Hapus Waktu Ujian Konfirmasi

Hapus data

Konfirmasi

hapus datajam

tm_start, tm end

tm_start, tm end

tm_start, tm end tm_start, tm end

Gambar 3.10 DAD Level 2 Proses 5 Aplikasi Penjadwalan Ujian Tugas Akhir Proses yang terjadi pada DAD level 2 proses 5 adalah : proses rekam data

waktu ujian (proses 5.1), proses data waktu ujian (proses 5.2), dan proses hapus

data waktu ujian (proses 5.3), yang melibatkan tabel rb_times (D4).

III.4. Perancangan Fisikal

III.4.1. Arsitektur Aplikasi Kebutuhan Sistem

Arsitektur aplikasi kebutuhan sistem merupakan aplikasi-aplikasi yang

diperlukan untuk dapat mengoperasikan dan mengelola Aplikasi Penjadwalan

Ujian Tugas ini.

III.4.1.1. Arsitektur Aplikasi Kebutuhan Pengembang

Arsitektur aplikasi yang diperlukan untuk mengembangkan Aplikasi

(46)

 Sistem basis data : basis data terpusat

 Media penyampaian informasi : internet

 Bahasa pemrograman : PHP (Hypertext Preprosessor)

 Basis data server : MySql

 Tool untuk implementasi antar muka : Adobe Dreamweaver CS5

 Web server : Apache

 Web browser : IE (Internet Explorer)

 Resolusi layar monitor : 1280 x 800 pixels

III.4.1.2. Arsitektur Aplikasi Kebutuhan Pengguna

Arsitektur aplikasi yang diperlukan agar pengguna dapat mengakses

Aplikasi Penjadwalan Ujian Tugas Akhir adalah :

 Web browser : IE (Internet Explorer)

 Resolusi layar monitor : 1280 x 800 pixels

III.4.2. Perancangan Antar Muka Sistem

Perancangan antar muka sistem digunakan sebagai rancangan untuk

membuat antar muka sistem dengan pengguna sistem, rancangan antar muka ini

nantinya akan digunakan untuk membuat implementasi dari Aplikasi Penjadwalan

Ujian Tugas Akhir.

III.4.2.1. Rancangan Antar Muka Untuk Administrator

Halaman utama untuk Administrator dapat diakses setelah Administrator

melakukan proses login Administrator terlebih dahulu. Sebagai validasi dari login

Administrator tersebut, maka akan ditampilkan halaman utama Administrator,

dimana Administrator dapat memilih menu-menu untuk mengelola data pada

Aplikasi Penjadwalan Ujian Tugas Akhir ini. Rancangan menu untuk

(47)

Beranda

Jadwal Berdasarkan Dosen

Jadwal Berdasarkan Tanggal

Menu Administrator

Home Pendaftaran Seminar Daftar Pengajuan Jadwal Seminar Laporan Pengaturan Sistem

Penentuan Jadwal Seminar Detail Seminar

Ubah Jadwal Seminar

Detail Seminar Pendaftaran User

Data Seminar Telah Selesai

Detail Seminar

Gambar 3.11 Rancangan Menu Administrator 1. Rancangan Halaman Beranda

Pada halaman beranda menampilkan form login administrator dan

daftar seminar yang akan berlangsung. Pada halaman ini juga disediakan

menu untuk melihat jadwal berdasarkan nama dosen dan berdasarkan

tanggal pelaksanaan. Pengguna dapat melihat jadwal tanpa harus

melakukan login terlebih dahulu.

(48)

Gambar 3.13 Rancangan Halaman Jadwal Seminar Berdasarkan Dosen

Gambar 3.14 Rancangan Halaman Jadwal Seminar Berdasarkan Tanggal

2. Rancangan Halaman Home

Pada halaman home akan ditampilan seluruh daftar jadwal ujian

(49)

Gambar 3.15 Rancangan Halaman Home

3. Rancangan Halaman Pendaftaran Seminar

Dalam halaman pendaftaran seminar ini akan ditampilkan form

untuk mengisi data-data ujian, meliputi : nama mahasiswa, nim, judul

tugas akhir, nama dosen pembimbing, nama dosen penguji, nama mata

kuliah pendukung, lampiran, dan keterangan.

(50)

4. Rancangan Halaman Pengajuan Seminar

Pada halaman pengajuan seminar akan ditampilkan data-data

pendaftaran seminar yang telah ddinputkan pada halaman pendaftaran

seminar diatas. Apabila user menekan nim maka akan ditampilkan

halaman untuk mengisi data ruang ujian, waktu ujian, dan jam ujian.

Pada halaman ini user dapat menentukan kapan dan di ruang apa ujian

akan berlangsung.

Gambar 3.17 Rancangan Halaman Pengajuan Jadwal Seminar

(51)

5. Rancangan Halaman Jadwal Seminar

Pada halaman jadwal seminar akan ditampilkan seluruh jadwal

seminar. Apabila user mengklik nim maka akan tampil detail jadwal

seminar, didalam halaman ini terdapat menu untuk mengubah jadwal

seminar. Pada halaman tersebut user dapat mengubah jadwal yang sudah

ditetapkan.

Gambar 3.19 Rancangan Halaman Jadwal Seminar

(52)

Gambar 3.21 Rancangan Halaman Ubah Jadwal Seminar

6. Rancangan Halaman Laporan

Pada halaman laporan akan ditampilkan jadwal ujian yang telah

berlangsung, apabila user mengklik nim maka akan ditampilkan detail

data seminar.

(53)

Gambar 3.23 Rancangan Halaman Detail Seminar

7. Rancangan Halaman Pengaturan Sistem

Pada halaman pengaturan sistem akan ditampilkan menu untuk

mengatur data user, data seminar yang telah berlangsung, daftar ruang,

daftar dosen, daftar tanggal, dan daftar waktu.

(54)
(55)

BAB IV

IMPLEMENTASI SISTEM

Implementasi sistem akan menjelaskan lebih lanjut mengenai

implementasi dari Aplikasi Penjadwalan Ujian Tugas Akhir yang perancangan

sistemnya telah dibuat pada analisis dan perancangan sistem (Bab III).

Implementasi sistem meliputi : implementasi basis data, implementasi proses

sistem, dan implementasi tampilan antar muka (interface) dari sistem.

IV.1. Implementasi Basis Data

Implementasi basis data merupakan implementasi dari perancangan

physical design basis data yang telah dirancang pada analisis dan perancangan

sistem (Bab III). Basis data pada sistem ini, yaitu basis data db_rbs, menghasilkan

tujuh tabel, yaitu tabel rb_course, tabel rb_lecturs, tabel rb_members, tabel

rb_rooms, tabel rb_seminars, tabel rb_status, tabel rb_times.

Implementasi basis data dan tabel dalam sistem adalah sebagai berikut :

(56)

Gambar 4.2 Implementasi Tabel rb_course

Gambar 4.3 Implementasi Tabel rb_lectures

Gambar 4.4 Implementasi Tabel rb_seminars

(57)

Gambar 4.6 Implementasi Tabel rb_seminars

Gambar 4.7 Implementasi Tabel rb_status

Gambar 4.8 Implementasi Tabel rb_times

IV.2. Implementasi Tampilan Antar Muka Sistem

Tampilan antar muka sistem merupakan tampilan dari sistem yang akan

berinteraksi langsung dengan pengguna sistem. Tampilan antar muka sistem

diimplementasikan berdasarkan rancangan antar muka sistem pada analisis dan

(58)

IV.2.1. Implementasi Tampilan Antar Muka Administrator

Implementasi tampilan antar muka sistem untuk administrator adalah

implementasi dari hasil rancangan tampilan antar muka sistem untuk

administrator pada analisis dan perancangan sistem (Bab III). Implementasi antar

muka sistem untuk administrator meliputi : 1) implementasi halaman beranda, 2)

implementasi halaman jadwal berdasarkan dosen, 3) implementasi halaman

jadwal berdasarkan tanggal, 4) implementasi halaman home, 5) implementasi

halaman pendaftaran seminar, 6) implementasi daftar pengajuan, 7) implementasi

halaman jadwal seminar, 8) implementasi halaman laporan, 9) implementasi

halaman pengaturan sistem.

Berikut ini adalah hasil implementasi dari perancangan antar muka sistem

untuk administrator.

1. Implementasi Koneksi Basis Data

Koneksi ke basis data sangat diperlukan untuk dapat menghubungkan

sistem dengan basis data sistem, yaitu basis data db_rbs. Koneksi ke basis

data ini mengunakan file datareader.php, yang akan digunakan untuk

implementasi antar muka sistem pada pengguna.

<?php

class Database {

var $Host = "localhost"; var $Database = "db_rbs"; var $User = "root"; var $Password = "fr34kmonk3y";

var $Link_ID = 0; var $Query_ID = 0; var $Record = array(); var $Row; var $LoginError = "";

var $Errno = 0; var $Error = "";

function connect() {

(59)

>Link_ID=mysql_connect( >Host, >User,

$this->Query_ID = mysql_query( $Query_String,$this->Link_ID ); $this->Row = 0; n", $this->Errno, $this->Error );

(60)

{

$this->Record = mysql_fetch_array( $this->Query_ID ); $stat = is_array( $this->Record );

function mysql_escape_mimic($inp) {

2. Implementasi Halaman Beranda

Pada halaman beranda menampilkan form login administrator dan

daftar seminar yang akan berlangsung. Pada halaman ini juga disediakan

(61)

tanggal pelaksanaan. Pengguna dapat melihat jadwal tanpa harus

melakukan login terlebih dahulu.

Berikut Potongan skrip untuk login administrator :

<?php

session_start();

ob_start();

$host="localhost"; $username="root";

$password="fr34kmonk3y"; $db_name="db_rbs";

$tbl_name="rb_members";

mysql_connect("$host", "$username", "$password")or die("cannot connect");

mysql_select_db("$db_name")or die("cannot select DB");

$myusername=$_POST['myusername']; $mypassword=$_POST['mypassword'];

$myusername = stripslashes($myusername); $mypassword = stripslashes($mypassword);

$myusername = mysql_real_escape_string($myusername); $mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";

$result=mysql_query($sql);

$count=mysql_num_rows($result);

if($count==1){

$_SESSION['myusername'] = $myusername; $_SESSION['mypassword'] = $mypassword;

header("location:../home.php"); }

else {

echo "Wrong Username or Password"; header("location:../index.php");

(62)

ob_end_flush(); ?>

Untuk menampilkan halaman beranda menggunakan file index.php.

Berikut Potongan skrip untuk menampilkan jadwal seminar pada

halaman beranda : sm_id, a.sm_mhsnim sm_mhsnim, a.sm_mhsname sm_mhsname, a.sm_title sm_title, b.lc_name lectur1, c.lc_name lectur2, d.lc_name lectur3, a.sm_attach1 sm_attach1, a.sm_attach2 sm_attach2, a.sm_notes sm_notes, e.cr_name course, f.st_name status , a.sm_date jadwal, g.rm_name ruang, h.tm_start tstart, h.tm_end tend FROM rb_seminars a

LEFT OUTER JOIN rb_lecturs b ON a.sm_lectur1 = b.id_lectur LEFT OUTER JOIN rb_lecturs c ON a.sm_lectur2 = c.id_lectur LEFT OUTER JOIN rb_lecturs d ON a.sm_lectur3 = d.id_lectur LEFT OUTER JOIN rb_course e ON a.sm_course = e.cr_id LEFT OUTER JOIN rb_status f ON a.sm_status = f.id_status LEFT OUTER JOIN rb_rooms g ON a.sm_room = g.id_room LEFT OUTER JOIN rb_times h ON a.sm_time = h.tm_id WHERE DATE_FORMAT(`sm_date`, '%d-%m-%Y') >= DATE_FORMAT(curdate(), '%d-%m-'%d-%m-%Y') AND `sm_status` != '3'";

$totalpages = ceil($numrows / $rowsperpage);

if

(isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) {

$currentpage = (int) $_GET['currentpage'];

(63)

$currentpage = 1; }

if ($currentpage > $totalpages) {

$currentpage = $totalpages;

}

if ($currentpage < 1) {

$currentpage = 1; }

$offset = ($currentpage - 1) * $rowsperpage;

$db = new Database();

$sql = "SELECT a.sm_id sm_id, a.sm_mhsnim sm_mhsnim, a.sm_mhsname sm_mhsname, a.sm_title sm_title, b.lc_name lectur1, c.lc_name lectur2, d.lc_name lectur3, a.sm_attach1 sm_attach1, a.sm_attach2 sm_attach2, a.sm_notes sm_notes, e.cr_name course, f.st_name status , a.sm_date jadwal, g.rm_name ruang, h.tm_start tstart, h.tm_end tend FROM rb_seminars a

LEFT OUTER JOIN rb_lecturs b ON a.sm_lectur1 = b.id_lectur LEFT OUTER JOIN rb_lecturs c ON a.sm_lectur2 = c.id_lectur LEFT OUTER JOIN rb_lecturs d ON a.sm_lectur3 = d.id_lectur LEFT OUTER JOIN rb_course e ON a.sm_course = e.cr_id LEFT OUTER JOIN rb_status f ON a.sm_status = f.id_status LEFT OUTER JOIN rb_rooms g ON a.sm_room = g.id_room LEFT OUTER JOIN rb_times h ON a.sm_time = h.tm_id WHERE DATE_FORMAT(`sm_date`, '%d-%m-%Y') >= DATE_FORMAT(curdate(), '%d-%m-'%d-%m-%Y') AND `sm_status` != '3' LIMIT $offset, $rowsperpage";

$db->query($sql);

$count =

(64)

Gambar 4.9 Implementasi Halaman Beranda

Untuk menampilkan jadwal seminar berdasarkan dosen, menggunakan

file lecture-dtl.php. Berikut potongan skrip untuk menampilkan jadwal

berdasarkan nama dosen :

<?php

require_once("class/datareader.php");

$lc_id = $_GET['lc_id'];

$db2 = new Database();

$sql = "SELECT * FROM rb_lecturs a WHERE a.id_lectur = '".$lc_id."'";

$db2->query($sql); $db2->singleRecord();

?>

<h1>Daftar Jadwal Seminar oleh : <strong><?php echo $db2->Record[1]; ?></strong></h1>

<?php

require_once("class/datareader.php");

$lc_id = $_GET['lc_id'];

(65)

$sql = "SELECT a.sm_id sm_id, a.sm_mhsnim sm_mhsnim, a.sm_mhsname sm_mhsname, a.sm_title sm_title, b.lc_name lectur1, c.lc_name lectur2, d.lc_name lectur3, a.sm_attach1 sm_attach1, a.sm_attach2 sm_attach2, a.sm_notes sm_notes, e.cr_name course, f.st_name status , a.sm_date jadwal,

g.rm_name ruang, h.tm_start tstart, h.tm_end tend FROM rb_seminars a LEFT OUTER JOIN rb_lecturs b ON a.sm_lectur1 = b.id_lectur LEFT OUTER JOIN rb_lecturs c ON a.sm_lectur2 = c.id_lectur LEFT OUTER JOIN rb_lecturs d ON a.sm_lectur3 = d.id_lectur LEFT OUTER JOIN rb_course e ON a.sm_course = e.cr_id LEFT OUTER JOIN rb_status f ON a.sm_status = f.id_status LEFT OUTER JOIN rb_rooms g ON a.sm_room = g.id_room LEFT OUTER JOIN rb_times h ON a.sm_time = h.tm_id WHERE a.sm_status = '2' AND DATE_FORMAT(a.sm_date, '%Y-%m-%d') >= DATE_FORMAT(curdate(), '%Y-%m-%d') AND ( a.sm_lectur1 = '".$lc_id."' OR a.sm_lectur2 = '".$lc_id."' OR

a.sm_lectur3 = '".$lc_id."') ORDER BY a.sm_date ASC"; $db0->query($sql);

$totalpages = ceil($numrows / $rowsperpage);

// get the current page or set a default if (isset($_GET['currentpage']) &&

// if current page is greater than total pages...

if ($currentpage > $totalpages) { // set current page to last page

$currentpage = $totalpages; } // end if

// if current page is less than first page...

(66)

// set current page to first page

$currentpage = 1; } // end if

// the offset of the list, based on current page

$offset = ($currentpage - 1) * $rowsperpage;

$db = new Database();

$sql = "SELECT a.sm_id sm_id, a.sm_mhsnim sm_mhsnim, a.sm_mhsname sm_mhsname, a.sm_title sm_title, b.lc_name lectur1, c.lc_name lectur2, d.lc_name lectur3, a.sm_attach1 sm_attach1, a.sm_attach2 sm_attach2, a.sm_notes sm_notes, e.cr_name course, f.st_name status , a.sm_date jadwal,

g.rm_name ruang, h.tm_start tstart, h.tm_end tend FROM rb_seminars a LEFT OUTER JOIN rb_lecturs b ON a.sm_lectur1 = b.id_lectur LEFT OUTER JOIN rb_lecturs c ON a.sm_lectur2 = c.id_lectur LEFT OUTER JOIN rb_lecturs d ON a.sm_lectur3 = d.id_lectur LEFT OUTER JOIN rb_course e ON a.sm_course = e.cr_id LEFT OUTER JOIN rb_status f ON a.sm_status = f.id_status LEFT OUTER JOIN rb_rooms g ON a.sm_room = g.id_room LEFT OUTER JOIN rb_times h ON a.sm_time = h.tm_id WHERE a.sm_status = '2' AND DATE_FORMAT(a.sm_date, '%Y-%m-%d') >= DATE_FORMAT(curdate(), '%Y-%m-%d') AND ( a.sm_lectur1 = '".$lc_id."' OR a.sm_lectur2 = '".$lc_id."' OR

a.sm_lectur3 = '".$lc_id."') ORDER BY a.sm_date ASC LIMIT $offset, $rowsperpage";

$db->query($sql);

$count = mysql_num_rows($db->query($sql));

(67)

Gambar 4.10 Implementasi Halaman Jadwal Seminar Berdasarkan Dosen

Untuk menampilkan jadwal seminar berdasarkan tanggal, menggunakan

file date-dtl.php. Berikut potongan skrip untuk menampilkan jadwal

seminar berdasarkan tanggal :

<?php

$tgl = $_GET['tgl'];

?>

<h1>Daftar Jadwal Seminar pada tanggal : <strong><?php echo $tgl; ?></strong></h1>

<?php

require_once("class/datareader.php");

$db0 = new Database();

(68)

a.sm_room = g.id_room LEFT OUTER JOIN rb_times h ON a.sm_time = h.tm_id WHERE a.sm_status = '2' AND DATE_FORMAT(a.sm_date, '%d-%M-%Y') = '".$tgl."' ORDER BY a.sm_date ASC";

$db0->query($sql);

$count = mysql_num_rows($db0->query($sql));

// get the current page or set a default if (isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) {

// if current page is greater than total pages...

if ($currentpage > $totalpages) { // set current page to last page

(69)

sm_notes, e.cr_name course, f.st_name status , a.sm_date jadwal, g.rm_name ruang, h.tm_start tstart, h.tm_end tend FROM rb_seminars a LEFT OUTER JOIN rb_lecturs b ON a.sm_lectur1 = b.id_lectur LEFT OUTER JOIN rb_lecturs c ON a.sm_lectur2 = c.id_lectur LEFT OUTER JOIN rb_lecturs d ON a.sm_lectur3 = d.id_lectur LEFT OUTER JOIN rb_course e ON a.sm_course = e.cr_id LEFT OUTER JOIN rb_status f ON a.sm_status = f.id_status LEFT OUTER JOIN rb_rooms g ON a.sm_room = g.id_room LEFT OUTER JOIN rb_times h ON a.sm_time = h.tm_id WHERE a.sm_status = '2' AND DATE_FORMAT(a.sm_date, '%d-%M-%Y') = '".$tgl."' ORDER BY a.sm_date ASC LIMIT $offset, $rowsperpage";

$db->query($sql);

$count = mysql_num_rows($db->query($sql));

?>

Gambar 4.11 Implementasi Halaman Jadwal Seminar Berdasarkan Tanggal

3. Implementasi Halaman Home

Pada halaman home akan ditampilan seluruh daftar jadwal ujian

yang akan berlangsung. Untuk menampilkan halaman home,

menggunakan file home.php. Berikut potongan skrip untuk halaman

home.

<?php include_once 'includes/tpl/tp-menu-2.php'; ?>

Gambar

Gambar 4.23
Tabel 3.1
tabel kegiatan atau rencana kegiatan dengan pembagian waktu pelaksanaan yang
tabel basis data yang telah dirancang ataupun algoritma dan struktur dari modul.
+7

Referensi

Dokumen terkait

Also, some of the coordinate bounds described in the main document do not match the KML Schemas listed in Annex A. 1

Berdasarkan hasil dari proses penelitian dan pembahasan tentang penyusunan media gambar animasi sebagai media untuk keterampilan menulis untuk pembelajaran bahasa jerman

Oleh karena itu Departemen Pendidikan Nasioanal Nasional yang telah menunjuk Dinas Pendidikan setempat dalam jangka waktu yang sudah di tentukan periodenya yaitu

c. bahwa berdasarkan pertimbangan sebagaimana dimaksud pada huruf a dan huruf b, serta sekaligus sebagai pelaksanaan Pasal ... tentang Syarat dan Tata Cara

Alhamdulillah, puji syukur penulis ucapan kepada Allah SWT yang telah memberikan taufik, hidayah dan karunia-Nya, sehingga penulis dapat menyelesaikan proposal skripsi

Bagian ini digunakan untuk menjelaskan evaluasi terkait pelaksanaan program kegiatan 2016/2017 dan tindak lanjut yang akan dilaksanakan. Program Kerja 2016/2017

Indonesia sebagai salah satu Negara kepulauan terbesar di dunia memiliki potensi perikanan budidaya yang tinggi.Wilayah pesisir Kota Tegal mempunyai potensi-potensi yang

DIES NATALIS KE48 UNY yang diselenggarakan pada tanggal 5 Mei 2012. dengan