PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 2013
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 2013
ii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
ii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
iii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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.
Universitas Sanata Dharma Yogyakarta
iv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 come from it.
v
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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
Hilarius Haryo Tutuko
vi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Demi
Nama
:
Hilarius Haryo Tutuko
Nomor Mahasiswa
:
065314042
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,
Hilarius Haryo Tutuko
vii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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, dan pemberitahuan kepada petugas pengelola ruangan.
viii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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, and notice to the managing officer of the room.
ix
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 sehingga penulis dapat menyelesaikan skripsi dengan baik. Terima kasih
x
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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
( Hilarius Haryo Tutuko )
xi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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
II.7.
Entity Relationship Diagram (E-R Diagram).................. 10
xii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
BAB III
ANALISIS DAN PERANCANGAN SISTEM .............. 13
III.1.
Analisis Sistem................................................................ 13
III.1.1. III.2.
Gambaran Umum Sistem ................................................ 13 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.
BAB V
Implementasi Tampilan Antar Muka Administrator ...... 39
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 VI.1.
PENUTUP ....................................................................... 108 Kesimpulan .................................................................... 108
xiii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
VI.2.
Saran ............................................................................... 108
DAFTAR PUSTAKA ...................................................................................... 109 LAMPIRAN
xiv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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
Gambar 3.17
Rancangan Halaman Pengajuan Jadwal Seminar ........... 31
xv
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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
Gambar 4.22.1 Implementasi Halaman Pengaturan Sistem ................... 92
xvi
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Gambar 4.22.2 Lanjutan Implementasi Halaman Pengaturan Sistem ... 92 Gambar 4.22.3 Lanjutan Implementasi Halaman Pengaturan Sistem .... 93 Gambar 4.23
Implementasi Halaman Pendaftaran User ....................... 103
xvii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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
Tabel 3.8
Rancangan Tabel rb_times .............................................. 19
xviii
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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, dan pemberitahuan kepada petugas pengelola ruangan.
1
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
2
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 untuk penulisan tugas akhir. Metode yang digunakan adalah:
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3
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 kesalahan yang mungkin terjadi.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
4
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 untuk di waktu yang akan datang.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 tabel kegiatan atau rencana kegiatan dengan pembagian waktu pelaksanaan yang
5
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
6
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 bahasa manusia sehari-hari.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
7
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. 3. Mengumpulkan informasi untuk mengidentifikasikan personil–personil kunci yang akan menggunakan sistem.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
8
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 entitasentitas 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 “image” user 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 ditampilkan.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
9
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 notasinotasi
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 : Nama Arus Data
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
3.
10
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
Media
horisontal paralel yang tertutup di salah satu ujungnya.
Nama data store
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 menentukan hubungan antar entitas yang telah dipilih.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
11
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
Entitas adalah suatu objek yang Entitas
dapat
di
identifikasi
dalam
lingkungan pemakai, sesuatu yang
1
penting bagi pemakai dalam konteks sistem yang kan dibuat.
Atribut
Atribut
berfungsi
mendeskripsi
karakter entitas.
2
Relasi
Relasi adalah sesuatu yang menjadi penghubung entitas satu dengan
3
entitas yang lainnya.
Link adalah garis suatu penghubung 4
Link
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 relasi yang terjadi. Derajat hubungan tersebut antara lain :
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
12
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 mencakup 1:m, 1:1, 1:0, 0:1
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 Penjadwalan Ujian Tugas Akhir :
13
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
14
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 Penjadwalan Ujian Tugas Akhir
- Nama Mahasiswa - NIM - Judul Proposal - Nama Dosen Reviewer - Mata Kuliah Pendukung - Tanggal Ujian - Jam Ujian - Ruang Ujian - User Name, Password - Status
Administrator - idSeminars, Nama Mahasiswa, NIM, Judul Proposal, Tanggal Ujian - 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 deskripsi use-case Aplikasi Penjadwalan Ujian Tugas Akhir dapat dilihat pada
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
15
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).
Mengelola data Ujian Mengelola Data Dosen Administrator
Mengelola Ruang Ujian
<
> <>
Login <> <>
Mengelola Waktu Ujian Melihat Jadwal Ujian
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 basis data sistem menggunakan ER-diagram, logical design, dan physical desain,
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
16
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 :
Cr_id
password
Cr_name
username
id
Rb_course
Rb_members
1.N
punya Sm_id Sm_time Sm_mhsname Sm_title Sm_date Sm_room Sm_mhsnim 1.N
Sm_course Sm_status Sm_lecture 1
Rb_seminars
Sm_lecture 3
1.N 1.N
Tm_end
Tm_id
Sm_attach 1
Sm_lecture 2 1.N
Tm_start
Sm_notes 1.N
Sm_attach 2 punya
1.N
Rb_time
Rm_name
Rm_id
punya
1.N
Rb_rooms
Id_lecture
punya
1.N
Lc_name
Rb_lecturs
St_id
punya
1.N
St_name
Rb_status
Gambar 3.3 ER-diagram Aplikasi Penjadwalan Ujian Tugas Akhir
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
17
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_course PK
cr_id
rb_members PK
id
cr_name
username password
rb_seminars PK
sm_id sm_mhsname sm_mhsnim sm_title sm_course sm_lectur 1 sm_lectur 2 sm_lectur 3 sm_attach 1 sm_attach 2 sm_note sm_status sm_room sm_date sm_time
rb_status PK
id_status st_name
rb_rooms PK
rb_times
id_room rm_name
tm_id tm_start tm_end
rb_lecture PK
id_lecture lc_name
Gambar 3.4 logical design dari Aplikasi Penjadwalan Ujian Tugas Akhir
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
18
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 cr_id
Type Int
Size 11
Description id
dari
course
Key (mata PK
kuliah pendukung) cr_name
Text
Nama mata kuliah
Tabel 3.3 Rancangan Tabel rb_lecturs Nama Field
Type
Size
Description
lc_id
Int
11
id dari lecture (dosen)
lc_name
Char
255
Nama dosen
Key PK
Tabel 3.4 Rancangan Tabel rb_members Nama Field
Type
Size
Description
Id
Int
4
id dari member
Username
Varchar
65
Nama pengguna
Password
Varchar
65
Password pengguna
Key PK
Tabel 3.5 Rancangan Tabel rb_rooms Nama Field
Type
Size
Description
id_room
Int
11
id dari ruang
rm_name
Char
225
Nama ruang
Key PK
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
19
Tabel 3.6 Rancangan Tabel rb_seminars Nama Field
Type
Size 11
Description
sm_id
Int
id dari seminar
sm_mhsname
Text
sm_mhsnim
Varchar
sm_title
Text
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
sm_status
Int
1
Status seminar
sm_room
Int
11
Nama ruang
sm_date
Date
sm_time
Int
Key PK
Nama mahasiswa 9
Nomor induk mahasiswa Judul tugas akhir
Keterangan
Tanggal seminar 2
Jam seminar
Tabel 3.7 Rancangan Tabel rb_status Nama Field
Type
Size
Description
id_status
Int
11
id dari status
st_name
Char
225
Nama status
Key PK
Tabel 3.8 Rancangan Tabel rb_times Nama Field
Type
Size 11
Description
tm_id
Int
id dari jam ujian
tm_start
Text
Waktu ujian mulai
tm_end
Text
Waktu ujian berakhir
Key PK
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
20
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
Aplikasi Penjadwalan Tugas Akhir
2
3
4
5
6
Mengelola data ujian
Mengelola Data Dosen
Mengelola Ruang Ujian
Mengelola Waktu Ujian
Melihat Jadwal Ujian
1
Login
2.1
Rekam Data ujian 2.2
Edit Data Ujian
2.3
Hapus Data Ujian
3.1
4.1
5.1
Rekam Data Dosen
Rekam Ruang Ujian
Rekam waktu ujian
3.2
4.2
5.2
Edit Data Dosen
Edit Ruang Ujian
Edit Waktu Ujian
3.3
4.2
5.3
Hapus Data Dosen
Hapus Ruang Ujian
Hapus Waktu Ujian
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.
Proses 2 merupakan proses untuk mengelola data ujian. Pada proses ini terdapat 3 sub proses, yaitu :
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
21
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.
Proses 6 merupakan proses untuk menampilkan jadwal ujian. Proses ini tidak memiliki sub proses lagi.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
22
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
validasi validasi OK
1 sm_mhsname,sm_mhsnim, sm_tittle, sm_course, lc_name, sm_attach1, sm_attach2, sm_notes, sm_stutus, rm_name, sm_date, tm_start, tm_end
usser, password
Login
2 Mengelola data ujian
6 Melihat jadwal ujian sm_mhsname,sm_mhsnim, sm_tittle, sm_course, sm_lectur1, sm_lectur2, sm_lectur3, sm_attach1, sm_attach2, sm_notes, sm_stutus, sm_room, sm_date, sm_time
lc_name rm_name
tm_start, tm end
sm_mhsname,sm_mhsnim, sm_tittle, sm_course, sm_lectur1, sm_lectur2, sm_lectur3, sm_attach1, sm_attach2, sm_notes, sm_stutus, sm_room, sm_date, sm_time
D1
rb_seminars
D2
rb_lecturs
D5
3 Mengelola data dosen
rb_members
ADMINISTRATOR
sm_mhsname,sm_mhsnim, sm_tittle, sm_course, sm_lectur1, sm_lectur2, sm_lectur3, sm_attach1, sm_attach2, sm_notes, sm_stutus, sm_room, sm_date, sm_time
lc_name
4 Mengelola ruang ujian nama
D3
rb_rooms
D4
rb_times
rm_name
lc_name ruangan
5 Mengelola waktu ujian
Jammulai, jamselesai tm_start, tm end
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.
Proses 2 menunjukan proses mengelola data ujian. Dalam proses ini melibatkan tabel rb_seminars.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
23
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).
sm_mhsname,sm_mhsnim sm_tittle, sm_course, sm_lectur1 , sm_lectur2, sm_lectur3, sm_attach1, sm_attach2 sm_notes, sm_stutus, sm_room, sm_date, sm_time
Administrator
2.1 sm_mhsname,sm_mhsnim sm_tittle, sm_course, sm_lectur1 , sm_lectur2, sm_lectur3, sm_attach1, sm_attach2 sm_notes, sm_stutus, sm_room, sm_date, sm_time
Rekam Data Ujian
Konfirmasi
D1 sm_room, sm_date, sm_time
rb_seminars
2.2
Konfirmasi
Hapus data
Konfirmasi hapus
Edit Data Ujian
sm_room, sm_date, sm_time
2.3 dataujian
Hapus Data Ujian
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 (proses 2.3), yang melibatkan tabel rb_seminars (D1).
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
24
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).
3.1 Rekam Data Dosen
lc_name
Administrator
lc_name
Konfirmasi
D2 lc_name
rb_lecturs
3.2
Konfirmasi
Hapus data
Konfirmasi hapus
Edit Data Dosen
lc_name
3.3 datadosen
Hapus Data Dosen
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 (proses 3.3), yang melibatkan tabel rb_lecturs (D2).
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
25
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).
4.1 Rekam Ruang Ujian
rm_name
Administrator
rm_name
Konfirmasi
D3 rm_name Konfirmasi
Hapus data
Konfirmasi hapus
rb_rooms
4.2 Edit Ruang Ujian
rm_name
4.2 dataruang
Hapus Ruang Ujian
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 data ruang ujian (proses 4.3), yang melibatkan tabel rb_rooms (D3).
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
26
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).
5.1 tm_start, tm end
Administrator
tm_start, tm end
Rekam Waktu Ujian
Konfirmasi
D4
5.2
tm_start, tm end Konfirmasi
Hapus data
rb_times
Edit Waktu Ujian
tm_start, tm end
5.3
Konfirmasi hapus
datajam
Hapus Waktu Ujian
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 Penjadwalan Ujian Tugas Akhir ini adalah :
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI Sistem basis data
: basis data terpusat
Media penyampaian informasi
: internet
Bahasa pemrograman
: PHP (Hypertext Preprosessor)
Basis data server
: MySql
27
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 Administrator tampak pada Gambar 3.11 berikut :
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
28
Beranda
Jadwal Berdasarkan Dosen
Jadwal Berdasarkan Tanggal
Menu Administrator
Home
Pendaftaran Seminar
Daftar Pengajuan
Jadwal Seminar
Laporan
Pengaturan Sistem
Penentuan Jadwal Seminar
Detail Seminar
Detail Seminar
Pendaftaran User
Ubah Jadwal Seminar
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.
Gambar 3.12 Rancangan Halaman Beranda
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
29
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 yang akan berlangsung.
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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.
Gambar 3.16 Rancangan Halaman Daftar Seminar
30
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
31
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
Gambar 3.18 Rancangan Halaman Penentuan Jadwal Seminar
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
32
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
Gambar 3.20 Rancangan Halaman Detail Seminar
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
33
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.
Gambar 3.22 Rancangan Halaman Laporan
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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.
Gambar 3.24 Rancangan Halaman Pengaturan Sistem
34
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Gambar 3.25 Rancangan Halaman Pendaftaran User
35
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
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 :
Gambar 4.1 Implementasi Basis Data Sistem
36
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
Gambar 4.2 Implementasi Tabel rb_course
Gambar 4.3 Implementasi Tabel rb_lectures
Gambar 4.4 Implementasi Tabel rb_seminars
Gambar 4.5 Implementasi Tabel rb_rooms
37
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
38
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 perancangan sistem (Bab III).
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
39
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.
function connect() { if( 0 == $this->Link_ID )
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
40
$this->Link_ID=mysql_connect( $this->Host, $this->User, $this>Password ); if( !$this->Link_ID ) $this->halt( "Link-ID == false, connect failed" ); if( !mysql_query( sprintf( "use %s", $this->Database ), $this>Link_ID ) ) $this->halt( "cannot use database ".$this->Database ); }
function query( $Query_String ) { $this->connect(); $this->Query_ID = mysql_query( $Query_String,$this->Link_ID ); $this->Row = 0; $this->Errno = mysql_errno(); $this->Error = mysql_error(); if( !$this->Query_ID ) $this->halt( "Invalid SQL: ".$Query_String ); return $this->Query_ID; } function halt( $msg ) { printf( " <strong>Database error: %s n", $msg ); printf( "<strong>MySQL Error: %s (%s) n", $this->Errno, $this->Error ); die( "Session halted." ); } function nextRecord() { @ $this->Record = mysql_fetch_array( $this->Query_ID ); $this->Row += 1; $this->Errno = mysql_errno(); $this->Error = mysql_error(); $stat = is_array( $this->Record ); if( !$stat ) { @ mysql_free_result( $this->Query_ID ); $this->Query_ID = 0; } return $stat; } function singleRecord()
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
41
{ $this->Record = mysql_fetch_array( $this->Query_ID ); $stat = is_array( $this->Record ); return $stat; } function numRows() { return mysql_num_rows( $this->Query_ID ); } function lastId() { return mysql_insert_id(); } function mysql_escape_mimic($inp) { if(is_array($inp)) return array_map(__METHOD__, $inp); if(!empty($inp) && is_string($inp)) { return str_replace(array('\\', "\0", "\n", "\r", "'", '"', "\x1a"), array('\\\\', '\\0', '\\n', '\\r', "\\'", '\\"', '\\Z'), $inp); } return $inp; } function affectedRows() { return mysql_affected_rows(); } function numFields() { return mysql_num_fields($this->Query_ID); } } ?> 2. Implementasi 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
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
42
tanggal pelaksanaan. Pengguna dapat melihat jadwal tanpa harus melakukan login terlebih dahulu. Berikut Potongan skrip untuk login administrator :
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 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"); }
WHERE
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
43
ob_end_flush(); ?> Untuk menampilkan halaman beranda menggunakan file index.php. Berikut Potongan skrip untuk menampilkan jadwal seminar pada halaman beranda : = DATE_FORMAT(curdate(), '%d-%m-%Y') AND `sm_status` != '3'"; $db0->query($sql); $count = mysql_num_rows($db0->query($sql)); $numrows
=
$db0-
>numRows(); $rowsperpage = 10; $totalpages = ceil($numrows / $rowsperpage);
if (isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) { $currentpage = (int) $_GET['currentpage']; } else {
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
44
$currentpage = 1; }
if
($currentpage
>
$currentpage
=
$totalpages) {
$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-%Y') AND `sm_status` != '3' LIMIT $offset, $rowsperpage"; $db->query($sql); $count = mysql_num_rows($db->query($sql)); ?>
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
45
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 : query($sql); $db2->singleRecord(); ?> Daftar Jadwal Seminar oleh : <strong>Record[1]; ?>
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
46
$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); $count = mysql_num_rows($db0>query($sql)); $numrows = $db0->numRows(); $rowsperpage = 10; // find out total pages $totalpages = ceil($numrows / $rowsperpage); // get the current page or set a default if (isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) { // cast var as int $currentpage = (int) $_GET['currentpage']; } else { // default page num $currentpage = 1; } // end if // 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... if ($currentpage < 1) {
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
47
// 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)); ?>
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
48
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 : Daftar Jadwal Seminar pada tanggal : <strong>
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
49
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)); $numrows = $db0->numRows(); $rowsperpage = 10; // find out total pages $totalpages = ceil($numrows
/
$rowsperpage); // get the current page or set a default if (isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) { // cast var as int $currentpage = (int) $_GET['currentpage']; } else { // default page num $currentpage = 1; } // end if // 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... if ($currentpage < 1) { // 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
PLAGIAT PLAGIATMERUPAKAN MERUPAKANTINDAKAN TINDAKANTIDAK TIDAKTERPUJI TERPUJI
50
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.