• Tidak ada hasil yang ditemukan

TA : Rancang Bangun Aplikasi Penjadwalan Mata Kuliah Pada Stikes Yayasan RS. Dr. Soetomo Surabaya.

N/A
N/A
Protected

Academic year: 2017

Membagikan "TA : Rancang Bangun Aplikasi Penjadwalan Mata Kuliah Pada Stikes Yayasan RS. Dr. Soetomo Surabaya."

Copied!
486
0
0

Teks penuh

(1)

RANCANG BANGUN APLIKASI PENJADWALAN

MATA KULIAH PADA STIKES YAYASAN

RS. DR. SOETOMO SURABAYA

TUGAS AKHIR

Program Studi

S1 Sistem Informasi

Oleh:

WARDAH LUCIANNA SUHALIM

11410100054

FAKULTAS TEKNOLOGI DAN INFORMATIKA

(2)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Menurut Puspaningrum dkk (2013), penjadwalan mata kuliah yaitu kegiatan yang sangat diperlukan untuk melaksanakan sebuah kegiatan perkuliahan di dalam jurusan yang ada di universitas atau perguruan tinggi. Penjadwalan mata yang baik yaitu sebuah penjadwalan yang dapat dilakukan oleh seluruh pihak yang terkait dalam kegiatan belajar mengajar, tidak hanya bagi dosen yang mengajar, tetapi juga bagi mahasiswa yang mengambil mata kuliah tersebut.

STIKES Yayasan RS. Dr. Soetomo Surabaya adalah perguruan tinggi swasta milik Yayasan RS. Dr. Soetomo. STIKES Yayasan RS. Dr. Soetomo Surabaya beralamat di Jalan Karangmenjangan nomor 12 Surabaya yang mempunyai dua Program Studi (Prodi), yaitu Prodi D-III Rekam Medik dan Informatika Kesehatan dan Prodi S1 administrasi Rumah Sakit.

(3)

Untuk menentukan jadwal dosen mengajar. Setelah selesai rapat, Kepala Prodi memasukkan jadwal dosen mengajar di aplikasi Microsoft Excel. Setelah itu, jadwal dosen mengajar diberikan ke Staf Prodi untuk menentukan ruang mana yang akan digunakan untuk setiap mata kuliah. Setelah semua selesai, KRS dilakukan dan mahasiswa harus ke STIKES Yayasan RS. Dr. Soetomo Surabaya dan menemui dosen wali kemudian mahasiswa mendapatkan jadwal dosen mengajar dan mahasiswa mengatakan ke dosen wali, mata kuliah yang akan diambil. Setelah itu, dosen wali mengisi form KRS. Untuk melakukan pengganti mata kuliah, dosen datang ke BAAK untuk meminta jadwal pengganti. Dosen memberikan kesediaan hari dan jam berapa dosen tersebut bisa mengajar, kemudian BAAK akan mengecek apakah terjadi crash antara ruang, jam, dosen dan mahasiswa. Apabila terjadinya crash, BAAK akan mencarikan hari yang tidak crash dan menginformasikan ke dosen.

Beberapa aspek yang harus diperhatikan dalam pembuatan jadwal mata kuliah yaitu dosen tidak boleh mengajar pada waktu yang bersamaan. Selain itu, dosen tidak boleh mengajar apabila waktu tidak sesuai dengan surat pernyataan ketersediaan mengajar kemudian ruang tidak boleh dijadwalkan lebih dari satu kali pada waktu yang bersamaan.

(4)

untuk mengetahui perubahan pada penjadwalan mata kuliah. Mahasiswa kurang mengetahui perubahan jadwal mata kuliah atau sulit mencari perubahan jadwal mata kuliah karena di STIKES Yayasan RS. Dr. Soetomo Surabaya terdapat empat papan pengumuman. Selain itu, mahasiswa juga harus ke STIKES Yayasan RS. Dr. Soetomo Surabaya untuk melihat perubahan jadwal mata kuliah. Dalam membuat jadwal pengganti mata kuliah, Staf Prodi merasa kesulitan karena masih menggunakan proses manual dan membutuhkan waktu satu hari untuk satu pengganti. Hal ini disebabkan staf Prodi harus mencocokkan satu persatu jadwal kosong antara dosen, mahasiswa, dan ruangan.

Berdasarkan uraian di atas, maka dibuatlah sebuah sistem yang menghasilkan jadwal dosen mengajar yang sesuai ketentuan yaitu dosen mengajar sesuai dengan surat pernyataan ketersediaan mengajar, dosen tidak dijadwalkan mengajar lebih dari satu mata kuliah di waktu yang sama dan ruang tidak boleh dijadwalkan lebih dari satu kali pada waktu yang bersamaan. Mencari sebuah penjadwalan yang sesuai dengan kriteria/persyaratan tidaklah mudah dan membutuhkan waktu yang lama. Untuk mendapatkan hasil yang maksimal dan sehingga membutuhkan waktu yang lama, Penjadwalan dosen mengajar menggunakan metode Algoritma Genetika. Metode Algoritma Genetika dapat menyelesaikan permasalahan penjadwalan dosen mengajar karena Algoritma Genetika dapat menyelesaikan masalah yang kompleks sesuai dengan permasalahan yang ada di STIKES Yayasan RS. Dr. Soetomo Surabaya.

(5)

untuk penyelesaian masalah dan pemodelan dalam bidang teknologi, bisnis, dan Entertainment, seperti optimasi penjadwalan dan banyak penelitian yang mendukung kehandalan Algoritma Genetika. Selain itu, untuk menyelesaikan masalah penjadwalan, seperti pada masalah penjadwalan perkuliahan menggunakan Algoritma Genetika karena Algoritma Genetika dapat menyelesaikan masalah multi kriteria dan dapat menyelesaikan masalah yang kompleks (Sam’ani, 2012). Sehingga metode ini sesuai untuk menyelesaikan permasalahan yang ada pada penjadwalan dosen mengajar.

Aplikasi penjadwalan mata kuliah dibuat berbasis web karena mahasiswa tidak perlu datang ke STIKES Yayasan RS. Dr. Soetomo Surabaya untuk melihat penjadwalan mata kuliah atau pengganti mata kuliah. BAAK tidak perlu menempel penjadwalan mata kuliah di mading STIKES Yayasan RS. Dr. Soetomo Surabaya. Selain itu, aplikasi ini dapat diakses dimana saja dan kapan saja. Untuk mencari pengganti jadwal mata kuliah, Staf Prodi tidak kesulitan dalam mencari pengganti dengan cara manual. Dengan menggunakan aplikasi ini Staf Prodi dapat menyelesaikan dengan mudah karena pengganti jadwal mata kuliah sudah terkomputerisasi. Oleh sebab itu dibuatkan sebuah aplikasi penjadwalan mata kuliah dengan berbasis web.

1.2 Rumusan Masalah

(6)

1.3 Batasan Masalah

Sesuai dengan perumusan masalah yang telah diuraikan di atas dan agar permasalahan tidak melebar maka diperlukan beberapa batasan masalah. Batasan-batasan masalahnya adalah sebagai berikut:

1. Dilakukan secara online.

2. Sistem yang akan dibangun adalah membuat jadwal mata kuliah dan mencari pengganti jadwal mata kuliah.

3. Sistem ini hanya dapat dioperasikan oleh administrator, Kepala Prodi, staf Prodi, mahasiswa dan dosen.

4. Informasi yang dihasilkan meliputi jadwal mata kuliah, jadwal dosen mengajar, time line jadwal mata kuliah, time line jadwal dosen mengajar dan rekapitulasi pengganti jadwal mata kuliah.

5. Metode Algoritma Genetika digunakan untuk menentukan jadwal dosen mengajar

1.4 Tujuan Penelitian

(7)

1.5 Manfaat

Manfaat yang diharapkan dalam aplikasi mata kuliah pada STIKES Yayasan RS. Dr. Soetomo Surabaya adalah sebagai berikut:

1. Mempermudah dalam pembuatan penjadwalan mata kuliah, penjadwalan dosen mengajar dan mencari pengganti jadwal mata kuliah

2. Dapat memberikan informasi jadwal mata kuliah dan jadwal dosen mengajar 3. Mempermudah dalam pembuatan laporan

4. Mahasiswa tidak perlu ke STIKES Yayasan RS. Dr. Soetomo Surabaya untuk melihat jadwal mata kuliah

1.6 Sistematika Penulisan

Sistematika dalam penulisan aplikasi mata kuliah ini disusun dalam 5 (lima) bab. Pada tiap bab terdiri atas beberapa sub bab diantaranya adalah:

BAB I PENDAHULUAN

Pada bab ini membahas latar belakang masalah, perumusan masalah, batasan masalah, tujuan, batasan masalah dan sistematika penulisan.

BAB II LADASAN TEORI

Pada bab ini membahas pengertian aplikasi, analisis sistem, tahap-tahap analisis sistem, pengertian penjadwalan, pengertian penjadwalan mata kuliah, batasan-batasan dalam masalah penjadwalan mata kuliah, metode Algoritma Genetika, istilah dalam algoritma, metode SDLC model prototype, PHP, MySQL,

codeigniter, system flowchart, context diagram, Data Flow Diagram (DFD),

Hierarchy Input Process Output (HIPO), Entity Relationship Diagram (ERD),

(8)

BAB III ANALISA DAN PERANCANGAN SISTEM

Pada bab ini membahas tentang analisis sistem, identifikasi permasalahan, analisis permasalahan, analisis kebutuhan, proses perhitungan metode Algoritma Genetika, perancangan sistem informasi, perancangan sistem informasi, Input Process Output (IPO), system flowchart, context diagram, Hierarchy Input Process Output (HIPO), Data Flow Diagram (DFD), Entity

Relationship Diagram (ERD), struktur tabel, desain input output, desain uji coba

dan desain kuesioneir

BAB IV IMPLEMENTASI DAN EVALUASI

Pada bab ini membahas tentang kebutuhan sistem, kebutuhan perangkat lunak, kebutuhan perangkat keras, uji coba fungsional, implementasi sistem dan evaluasi.

BAB V PENUTUP

(9)

8

BAB II

LANDASAN TEORI

2.1 Pengertian Sistem Aplikasi

Menurut Jogianto (2004), sistem berasal dari bahasa latin “ Systema“ dan

bahasa Yunani “Sustema“ yang berarti “satu kesatuan yang atas komponen atau

elemen-elemen yang dihubungkan bersama untuk memudahkan aliran informasi, materi atau energi”. Sistem adalah beberapa komponen yang saling berhubungan, bekerja sama untuk mencapai tujuan dengan menerima input dan menghasilkan

output. Dari definisi sistem diatas, dapat disimpulkan bahwa sistem adalah suatu

jaringan yang saling berhubungan dan saling memiliki keterkaitan antara bagian dan prosedur-prosedur yang ada terkumpul dalam satu organisasi untuk melakukan kegiatan untuk mencapai suatu tujuan tertentu.

2.2 Analisis sistem

Menurut Yakub (2012), Analisa sistem suatu proses yang dilakukan untuk menganalisis jabatan dan tugasnya, proses bisnis perubahan, ketentuan dan aturan perusahaan, masalah yang dihadapi perusahaan dan mencari solusinya serta rencana-rencana yang diinginkan oleh perusahaan.

(10)

Sistem yang sedang berjalan, mengganti output yang sedang digunakan, dan lain-lainnya.

2.3 Tahap-tahap Analisis Sistem

Menurut Mulyanto (2009), tahapan analisis sistem merupakan tahapan yang sangat penting karena tahapan ini dapat menyebabkan kesalahan pada tahap berikutnya apabila ditahapan ini terjadi kesalahan. Tahapan ini merupakan tahapan yang sangat mudah apabila client sangat paham dengan permasalahan yang dihadapi oleh organisasinya dan tahu betul fungsi-fungsi dari sistem informasi yang akan dibuat. Tetapi tahap ini juga tahap yang sangat sulit apabila

client tidak mengetahui permasalahan yang dihadapi atau client tidak dapat mengidentifikasi permasalahan dan tertutup terhadap pihak luar yang ingin mengetahui detail-detail proses bisnisnya.

Menurut Mulyanto (2009), Di dalam tahap analisis sistem terdapat langkah-langkah yang harus dilakukan oleh seorang analis sistem, diantaranya adalah:

1. Identify, yaitu proses yang dilakukan untuk mengidentifikasi masalah.

2. Understand yaitu memahami kerja dari sistem yang ada.

3. Analysis, yaitu melakukan analisis terhadap sistem.

4. Report, yaitu membuat laporan dari hasil analisis yang telah dilakukan dalam

kurun waktu tertentu.

2.4 Pengertian Penjadwalan

Menurut Sam’ani (2012), penjadwalan adalah penempatan sumber daya

(11)

menjadwalkan pertemuan dari beberapa sumber daya. Sumber daya yang dimaksud yaitu dosen yang mengajar mata kuliah, mata kuliah, ruang kuliah, kelas mahasiswa dan waktu perkuliahan. Di dalam penjadwalan mata kuliah terdapat batasan/persyaratan dalam penyusunannya yaitu dosen tidak boleh dijadwalkan lebih dari satu kali pada waktu yang bersamaan dan satu ruang dan ruang tidak dijadwalkan lebih dari satu kali pada waktu bersamaan. Jika terjadi pelanggaran terhadap kendala yang ditetapkan maka akan mendapatkan nilai penalti untuk setiap pelanggaran. Semakin kecil jumlah pelanggaran yang terjadi solusi penjadwalan yang dihasilkan akan semakin baik.

Menurut Arviani (2013), kebanyakan orang terbiasa dengan jadwal sekolah yang disajikan sebagai tabel hari dalam seminggu dan slot waktu. Dapat dilihat bahwa setiap hari dibagi ke dalam slot waktu. Setiap slot waktu memiliki daftar mata pelajaran yang sedang diajarkan, oleh siapa dan di mana. Jadwal dapat dinyatakan dalam sejumlah cara yang berbeda, masing-masing siswa harus memiliki jadwal sendiri tergantung pada mata pelajaran, begitu juga masing-masing guru dan ruang, semua ini adalah perspektif yang berbeda pada jadwal yang sama. Lebih jelasnya dapat dilihat pada Tabel 2.1.

Tabel 2.1 Jadwal Mata Pelajaran (Alviani, 2013)

Hari 09.00 - 10.00 10.00 - 11.00 11.00 - 12 .00

Senin

Matematika Smith Ruang 1 Kelas A

Komputer Carlie Ruang 1 Kelas C

Biologi Donald Ruang 2 Kelas A

Selasa

Kimia Donald Ruang 1 Kelas A

Fisika Donald Ruang 3 Kelas A

(12)

2.5 Pengertian Penjadwalan Mata Kuliah

Menurut Arviani (2013), Penjadwalan mata kuliah adalah kegiatan administratif yang paling utama di universitas. Dalam masalah penjadwalan mata kuliah, sejumlah mata kuliah yang dialokasikan ke sejumlah ruang yang tersedia dan sejumlah slot waktu disertai dengan constraints. Constraints terbagi atas dua jenis, yaitu hard constraints dan soft constraints

Hard constraints merupakan batas-batas yang harus diterapkan pada

penjadwalan mata kuliah dan harus dipenuhi. Solusi yang tidak melanggar hard

constraints disebut solusi layak. Hard constraints yang umum dalam penjadwalan

mata kuliah adalah sebagai berikut:

a. Seorang dosen hanya dapat memberi kuliah untuk satu lokasi pada waktu tertentu.

b. Seorang mahasiswa hanya dapat mengikuti kuliah untuk satu lokasi pada waktu tertentu.

c. Sebuah lokasi (ruangan) hanya dapat digunakan untuk satu mata kuliah pada waktu tertentu.

d. Mahasiswa tidak dapat dialokasikan pada suatu lokasi yang menyebabkan lokasi melebihi kapasitas maksimum.

Soft constraints didefinisikan sebagai batas-batas mengenai alokasi

(13)

masalah yang kompleks sulit menemukan solusi yang layak. Sebagai contoh, soft

constraints yang mungkin ingin dicapai dalam jadwal sehubungan dengan aspek

mata kuliah adalah meminimalkan terjadinya jadwal mata kuliah satu tingkat yang beturut-turut.

Menurut Arviani (2013), Beberapa universitas dengan jumlah mata kuliah yang akan dijadwalkan dan berbagai constraints yang harus dipertimbangkan membuat penyusunan jadwal mata kuliah menjadi sangat sulit.

2.6 Batasan-Batasan Dalam Masalah Penjadwalan Mata Kuliah

Menurut Arviani (2013), Dalam masalah penjadwalan memiliki beberapa macam batasan yang dapat menyebabkan output yang dihasilkan menjadi salah. Dalam menerapkan batasan dalam suatu masalah, biasanya tidak terlalu sama untuk setiap masalah. Batasan tersebut terdiri dari:

1. Edge constraint

Edge constraint adalah batasan yang mengatur dua kejadian tidak boleh menempati satu slot waktu yang sama. Contohnya pada hari Senin jam 07.30 sampai 08.10 tidak mungkin dosen A mengajar di ruang 1-A dan mengajar di ruang 5-A.

2. Present specification and exclusion

Present specification and exclusion adalah menentukan terlebih

(14)

3. Capacity constraint

Capacity constraint adalah batasan yang berhubungan dengan

kapasitas ruangan. Untuk masing-masing kelas hanya boleh diisi sebanyak 40 siswa.

4. Hard and soft constraint

Hard constraint adalah batasan yang sama sekali tidak boleh

dilanggar, sedangkan soft constraint adalah batasan yang diusahakan semaksimal mungkin tidak dilanggar namun jika dilanggar, hal tersebut masih dapat diterima.

2.7 Metode Algoritma Genetika

Menurut Sam’ani (2012), Algoritma Genetika adalah sebuah algoritma

(15)

Ada 3 keuntungan utama dalam mengaplikasikan Algoritma Genetika pada masalah-masalah optimasi (Sam’ani, 2012):

a. Algoritma Genetika tidak memerlukan kebutuhan matematis banyak mengenai masalah optimasi.

b. Kemudahan dan kenyamanan pada operator-operator evolusi membuat Algoritma Genetika sangat efektif dalam melakukan pencarian global.

c. Algoritma Genetika menyediakan banyak fleksibel untuk digabungkan dengan metode heuristic yang tergantung domain, untuk membuat implementasi yang efisien pada masalah-masalah khusus.

2.8 Istilah dalam Algoritma

Menurut Sam’ani (2012), terdapat beberapa definisi penting dalam

Algoritma Genetika yang perlu diperhatikan, yaitu:

a. Genotype (Gen), sebuah nilai yang menyatakan satuan dasar yang

membentuk suatu arti tertentu dalam satu kesatuan gen yang dinamakan kromosom. Dalam algoritma genetika, gen ini bisa berupa biner, float, integer

maupun karakter, atau kombinatorial b. Allele, merupakan nilai dari gen

c. Individu atau kromosom, gabungan gen-gen yang membentuk nilai tertentu dan merupakan salah satu solusi yang mungkin dari permasalahan yang diangkat.

(16)

e. Generasi, menyatakan satu siklus proses evolusi atau satu iterasi di dalam Algoritma Genetika.

Lebih jelasnya dapat dilihat pada Gambar 2.2

1

Gen

Allele

Individu Kromosom

1

Gen

Allele

Individu Kromosom

1

Gen

Allele

Individu Kromosom

Populasi

Gambar 2.1. Ilustrasi Perbedaan Istilah-Istilah (Sum’ani, 2012)

Menurut Sam’ani (2012), terdapat beberapa komponen dalam Algoritma

Genetika yaitu skema pengkodean, membangkitkan populasi awal dan kromosom, nilai fitness, seleksi, pindah silang, dan mutasi.

a. Skema Pengkodean

(17)

satu variabel. Agar dapat diproses melalui algoritma genetika, maka alternatif solusi tersebut harus dikodekan terlebih dahulu kedalam bentuk kromosom. Masing-masing kromosom berisi sejumlah gen yang mengodekan informasi yang disimpan di dalam individu atau kromosom.

Gen dapat direpresentasikan dalam beberapa bentuk yaitu bit, bilangan real, string, daftar aturan, gabungan dari beberapa kode, elemen permutasi, elemen program atau representasi lainnya yang dapat diimplementasikan untuk operator genetika.

b. Membangkitkan Populasi Awal dan Kromosom

Membangkitkan populasi awal adalah proses membangkitkan sejumlah individu atau kromosom secara acak atau melalui procedure

tertentu. Ukuran untuk populasi tergantung pada masalah yang akan diselesaikan dan jenis operator genetika yang akan diimplementasikan. Setelah ukuran populasi ditentukan, kemudian dilakukan pembangkitan populasi awal.

Teknik dalam pembangkitan populasi awal pada penelitian ini menggunakan metode random search, pencarian solusi dimulai dari suatu titik uji tertentu secara acak. Titik uji tersebut dianggap sebagai alternatif solusi yang disebut sebagai populasi.

c. Nilai Fitness

(18)

Nilai fitness digunakan untuk mengukur nilai atau derajat optimalitas suatu Kromosom. Nilai yang dihasilkan dari fungsi tersebut menandakan seberapa optimal solusi yang diperoleh. Nilai yang dihasilkan oleh fitness berfungsi untuk mengukur seberapa banyak jumlah pernyaratan yang dilanggar, sehingga pelanggaran pada jadwal dosen mengajar semakin kecil dan solusi yang dihasilkan semakin baik. Setiap pelanggaran yang terjadi akan diberikan nilai 1. Untuk menghindari nilai fitness tidak terhingga maka jumlah total semua pelanggaran akan ditambah 1. Rumus nilai finess seperti dibawah ini:

...2.1

Keterangan :

BD = Banyaknya dosen mengajar pada waktu bersamaan

BR = Banyaknya ruangan yang digunakan pada waktu bersamaan WD = Banyak waktu dosen yang dilanggar

d. Seleksi

(19)

e. Pindah Silang (Crossover)

Salah satu komponen yang paling penting dalam Algoritma Genetika adalah pindah silang atau crossover. Sebuah kromosom yang mengarah pada solusi yang baik dapat diperoleh dari proses memindah silangkan dua buah kromosom. Pindah silang juga dapat berakibat buruk jika ukuran populasinya sangat kecil. Dalam suatu populasi yang sangat kecil, suatu kromosom dengan gen-gen yang mengarah pada solusi terbaik akan sangat cepat menyebar ke kromosom-kromosom lainnya. Untuk mengatasi masalah ini digunakan suatu aturan bahwa pindah silang hanya bisa dilakukan dengan suatu probabilitas tertentu, artinya pindah silang bisa dilakukan hanya jika suatu bilangan random yang dibangkitkan kurang dari probabilitas yang ditentukan tersebut. Pada umumnya probabilitas tersebut diset mendekati 1. Pindah silang yang paling sederhana adalah pindah silang satu titik potong (one-point crossover). Suatu titik potong dipilih secara acak (random), kemudian bagian pertama dari orang tua 1 digabungkan dengan bagian kedua dari orang tua pada Tabel 2.2 sebagai berikut:

Tabel 2.2 Pindah Silang Pada Algoritma Genetika (Sum’ani, 2012)

Orang tua

1 0 0 1 1 1 1 1 1 1 1 1 1

Orang tua

2 1 1 0 0 0 0 0 0 0 0 0 0

G1 G4 G5 G8 G9 G12

Anak 1 0 0 0 0 0 0 0 0 0 0 0 0

(20)

f. Mutasi

Mutasi merupakan proses mengubah nilai dari satu atau beberapa gen dalam suatu kromosom. Mutasi ini berperan untuk menggantikan gen yang hilang dari populasi akibat seleksi yang memungkinkan munculnya kembali gen yang tidak muncul pada inisialisasi populasi. Metode mutasi yang digunakan adalah mutasi dalam pengkodean nilai. Proses mutasi dalam pengkodean nilai dapat dilakukan dengan berbagai cara, salah satunya yaitu dengan memilih posisi gen bebas pada kromosom, nilai yang ada tersebut kemudian dirubah dengan suatu nilai tertentu yang diambil secara acak.

g. Elitisme

Karena seleksi dilakukan secara acak (random), maka tidak ada jaminan bahwa suatu individu bernilai fitness tertinggi akan selalu terpilih. Kalaupun individu bernilai fitness tertinggi terpilih, mungkin saja individu tersebut akan rusak (nilai fitness-nya menurun) karena proses pindah silang. Untuk menjaga agar individu bernilai fitness tertinggi tersebut tidak hilang selama evolusi, maka perlu dibuat satu atau beberapa salinannya. Prosedur ini dikenal sebagai Elitisme.

2.9 Metode System Development Life Cycle (SDLC) Model Prototype

Menurut Pressman (2002), Prototype adalah pengembangan yang cepat dan pengujian terhadap model kerja dari aplikasi baru melalui proses interaksi dan berulang-ulang yang biasa digunakan ahli sistem informasi dan ahli bisnis.

(21)

karena menyederhanakan dan mempercepat desain sistem. Tahap-tahap Prototype

menurut Pressman (2012) dapat dilihat pada Gambar 2.2.

Pengumpulan Kebutuhan

Membangun

Prototype

Evaluasi prototype

Pengkodean sistem

Menguji sistem

Evaluasi sistem

Gambar 2.2. Tahap-tahap Prototype (Pressman, 2002)

Tahapan metodologi prototype yaitu: a. Pengumpulan Kebutuhan

Pelanggan dan pengembang bersama-sama mendefinisikan format seluruh perangkat lunak, mengidentifikasikan semua kebutuhan, dan garis besar sistem yang akan dibuat.

b. Membangun Prototype

(22)

c. Evaluasi Prototype

Evaluasi ini dilakukan oleh pelanggan apakah prototype yang sudah dibangun sudah sesuai dengan keinginan pelanggan. Jika sudah sesuai maka langkah 4 akan dilakukan. Jika tidak prototype direvisi dengan mengulangi langkah dari awal.

d. Pengkodean Sistem

Dalam tahap ini prototype yang sudah di sepakati diterjemahkan ke dalam bahasa pemrograman yang sesuai.

e. Menguji Sistem

Setelah sistem sudah menjadi suatu perangkat lunak yang siap pakai, harus dites dahulu sebelum digunakan.

f. Evaluasi Sistem

Pelanggan mengevaluasi apakah sistem yang sudah jadi sudah sesuai dengan yang diharapkan. Jika tidak langkah pengkodean sistem harus diulangi kembali

2.10 Hypertext Preprocessor (PHP)

(23)

Menurut Prasetyo (2004), kelebihan PHP yaitu:

1. PHP mudah dibuat dan dijalankan, maksudnya PHP dapat berjalan dalam web

Server dan dalam sistem operasi yang berbeda pula.

2. PHP bisa dioperasikan pada platformLinux atau Windows.

3. PHP sangat efisien, karena PHP hanya memerlukan resource sistem yang sangat sedikit dibanding dengan bahasa pemrograman lain.

4. Ada banyak web Server yang mendukung PHP, seperti Apache, PWS, IIS, dan lain-lain

5. PHP juga didukung oleh banyak database, seperti MySQL, postgresql,

Interbase, SQL, dan lain-lain.

6. Bahasa pemrograman PHP menggunakan sintak yang sederhana, singkat dan mudah untuk dipahami.

7. HTML-embedded, artinya PHP adalah bahasa yang dapat ditulis dengan menempelkan pada sintak-sintak HTML

2.11 MySQL

Menurut Prasetyo (2004), MySQL merupakan salah satu databaseServer

yang berkembang di lingkungan open source dan didistribusikan secara free

(gratis) di bawah lisensi GPL. MySQL merupakan RDBMS (Relational Database

Management System) Server. RDBMS adalah program yang memungkinkan

pengguna database untuk membuat, mengelola, dan menggunakan data pada suatu model relational. Dengan demikian, tabel-tabel yang ada pada database

(24)

Menurut Prasetyo (2004), keuntungan MySQL yaitu: a. Cepat, handal dan mudah dalam penggunaannya

MySQL lebih cepat tiga sampai empat kali dari pada database Server

komersial yang beredar saat ini, mudah diatur dan tidak memerlukan seseorang yang ahli untuk mengatur administrasi pemasangan MySQL. b. Didukung oleh berbagai bahasa

Database Server MySQL dapat memberikan pesan error dalam berbagai

bahasa seperti Belanda, Portugis, Spanyol, Inggris, Perancis, Jerman, dan Italia.

c. Mampu membuat tabel berukuran sangat besar

Ukuran maksimal dari setiap tabel yang dapat dibuat dengan MySQL adalah 4 GB sampai dengan ukuran file yang dapat ditangani oleh sistem operasi yang dipakai.

d. Lebih Murah

MySQL bersifat open source dan didistribusikan dengan gratis tanpa biaya untuk UNIX platform, OS/2 dan Windows platform.

2.12 Codeigniter (CI)

Menurut Sidik (2012), Codeigniter (CI) adalah framework

(25)

Pemograman dapat memfokuskan diri pada kode yang harus dibuat untuk menyelesaikan suatu pekerjaan.

2.13 System Flowchart

Menurut Kristanto (2003), System Flowchart adalah “bagan (chart) yang menunjukan alir (flow) di dalam program atau prosedur sistem secara logika”.

System Flowchart merupakan suatu bagan yang menggambarkan arus dari data

yang akan diproses dalam suatu program dari awal sampai akhir. Di dalam system

flowchart, terdapat simbol-simbol untuk pembuatan aliran data yaitu sebagai

berikut:

Tabel 2.3 Simbol Flowchart (Kristanto, 2003)

Simbol Flowchart Keterangan

Operasi secara manual

Input output

Proses

Arus informasi

Keputusan

(26)

Simbol Flowchart Keterangan

Terminal

Penyimpanan file secara sementara

Input manual

Input secara manual

Penghubung ke form berikutnya

2.14 Context Diagram

Menurut al-bahra (2006), Context diagram adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Context

diagram merupakan level tertinggi dari data flow diagram (DFD) yang

menggambarkan seluruh input ke sistem atau output dari sistem. Context diagram

akan memberi gambaran tentang keseluruhan sistem. Dalam diagram context

hanya ada satu proses. Tidak boleh ada store dalam diagram context.

2.15 Data Flow Diagram (DFD)

(27)

berikut ini simbol-simbol yang digunakan dalam DFD dengan mengacu pada notasi demarco-Yourdon.

Tabel 2.4 Simbol Data Flow Diagram (Kristanto, 2003)

Gambar Data Flow

Diagram Keterangan

0

Prc s_1

Menunjukan entitas yang berhubungan dengan sistem yang sedang dikembangkan, dimana kesatuan luar berada diluar lingkungan sistem yang akan memeberikan input atau menerima input.

Menunjukan arus data atau aliran data yang berupa masukan untuk sistem atau hasil dari sistem tersebut. Data flow juga dapat mempresentasikan data atau informasi yang tidak berkaitan dengan komputer

1

Prcs_3

Menunjukan proses kegiatan atau kerja dari fungsi transformasi komponen, dan menggambarkan bagian dari sistem mentransformasikan input ke output

1 Stor_2 Menunjukan media penyimpanan

Menurut Kristanto (2003), di dalam DFD terdapat 3 level, yaitu:

(28)

yang memberikan masukan (input) dan ada pihak yang menerima keluaran (output) dari sistem.

2. Diagram Nol (diagram level-1): Diagram yang berada satu level dibawah Diagram Konteks yang menggambarkan proses-proses utama dari sistem. Hal yang digambarkan dalam diagram Zero adalah proses utama dari sistem serta hubungan terminator atau entitas proses, data flow dan data store.

3. Diagram Rinci: Diagram level n merupakan hasil dekomposisi dari Diagram zero, yang menjelaskan proses secara lebih terperinci. Turunan langsung dari

Diagram Zero dinamakan Diagram Level 1. Dan apabila Diagram level 1 dapat diuraikan lagi maka akan terbentuk diagram level 2, dan seterusnya.

2.16 Hierarchy Input Process Output (HIPO)

Menurut Jogiyanto (2005), Hierarchy Input Process Output (HIPO) merupakan metode yang dikembangkan dan didukung oleh IBM. Tetapi saat ini HIPO banyak digunakan sebagai alat desain dan teknik dokumentasi dalam siklus pengembangan sistem atau proses-proses pada sistem”.

Menurut Jogiyanto (2005), HIPO dapat digunakan sebagai alat pengembangan sistem dan teknik dokumentasi program. Penggunaan HIPO ini mempunyai sasaran utama sebagai berikut:

1. Untuk menyediakan suatu struktur guna memahami fungsi-fungsi dari program.

(29)

3. Untuk menyediakan penjelasan yang jelas dari input yang harus digunakan dan output yang harus dihasilkan oleh masing-masing fungsi pada tiap-tiap tingkatan dari diagram-diagram HIPO.

4. Untuk menyediakan output yang tepat dan sesuai dengan kebutuhan-kebutuhan pemakai.

2.17 Entity Relationship Diagram (ERD)

Menurut al-bahra (2006), ERD adalah suatu model jaringan yang menggunakan susunan data yang disimpan dalam sistem secara abstrak. Jadi, jelaslah bahwa ERD ini berbeda dengan DFD yang merupakan suatu model jaringan fungsi yang akan dilaksanakan oleh sistem, sedangkan ERD merupakan model jaringan data yang menekankan pada struktur-struktur dan relationship data.

Menurut al-bahra (2006), Elemen-elemen Diagram hubungan entitas sebagai berikut:

a Entity (Entitas)

Pada E-R diagram digambarkan dengan bentuk persegi panjang. Entity adalah sesuatu apa saja yang ada di dalam sistem, nyata maupun abstrak dimana data tersimpan atau dimana terdapat data. Entitas diberi nama dengan kata benda dan dapat dikelompokkan dalam empat jenis nama yaitu: orang, benda, lokasi, kejadian (terdapat unsure waktu didalamnya).

b Relationship (Relasi)

(30)

umumnya penghubung (Relationship) diberi nama dengan kata kerja dasar, sehingga memudahkan untuk melakukan pembacaan relasi (bias dengan kalimat aktif atau dengan kalimat pasif).

c Relationship Degree (Derajat relasi)

Relationship Degree atau Derajat Relasi adalah jumlah entitas yang berpartisipasi dalam satu relationship.

d Attribute Value

Attribute Value atau nilai attribute adalah suatu occurrence tertentu dari sebuah attribute di dalam suatu entity atau relationship.

Ada dua jenis Atribut sebagai berikut:

1. Identifier (key) digunakan untuk menentukan suatu entity secara unik (primary key).

2. Descriptor (nonkey attribute) digunakan untuk menspesifikasikan karakteristik dari suatu entity yang tidak unik.

e Cardinality (Kardinalitas)

Kardinalitas relasi menunjukan jumlah maksimum tupel yang dapat berelasi dengan entitas pada entitas yang lain.

Terdapat 3 macam kardinalitas relasi yaitu: 1. One to One

(31)

berhubungan dengan paling banyak satu tupel pada entitas B, dan begitu pula sebaliknya.

2. One to Many atau Many to One

Tingkat hubungan satu ke banyak adalah sama dengan banyak ke satu. Tergantung dari mana hubungan tersebut dilihat. Untuk satu kejadian pada entitas pertama dapat mempunyai banyak hubungan dengan kejadian pada entitas yang kedua, dan sebaliknya.

3. Many to Many

Tingkat hubungan kebanyakan terjadi jika tiap kejadian pada setiap entitas akan memepunyai banyak hubungan dengan kajadian pada entitas lainnya. Baik dilihat dari sisi entitas yang pertama, maupun dilihat dari sisi yang kedua. Berarti setiap tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, dan demikian sebaliknya.

2.18 Testing

Menurut Quadri dan Farooq (2010), pengujian software adalah proses verifikasi dan validasi apakah sebuah aplikasi software atau program memenuhi persyaratan bisnis dan persyaratan teknis yang mengarahkan desain dan pengembangan dan cara kerjanya seperti yang diharapkan dan juga mengidentifikasi kesalahan yang penting yang digolongkan berdasarkan tingkat

severity pada aplikasi yang harus diperbaiki.

(32)

Pengujian software adalah prosedur untuk eksekusi sebuah program atau sistem dengan tujuan untuk menemukan kesalahan.

2.19 Black Box Testing

Menurut Black (2009), Tester menggunakan behavioral test (disebut juga

Black-Box Tests), sering digunakan untuk menemukan bug dalam high level

operations, pada tingkatan fitur, profil operasional dan skenario customer. Tester

dapat membuat pengujian fungsional black box berdasarkan pada apa yang harus sistem lakukan. Behavioral testing melibatkan pemahaman rinci mengenai domain aplikasi, masalah bisnis yang dipecahkan oleh sistem dan misi yang dilakukan sistem. Behavioral test paling baik dilakukan oleh penguji yang memahami desain sistem, setidaknya pada tingkat yang tinggi sehingga mereka dapat secara efektif Menemukan bug umum untuk jenis desain.

Menurut Nidhra dan Dondeti (2012), black box testing juga disebut

functional testing, sebuah teknik pengujian fungsional yang merancang Test Case

(33)

32

BAB III

ANALISIS DAN PERANCANGAN SISTEM

Pada bab ini akan membahas tentang identifikasi masalah, analisis permasalahan, solusi permasalahan, studi literatur, analisis kebutuhan pengguna,

document flowchart, Data Flow Diagram (DFD), Entity Relationship Diagram

(ERD), desain input output dan desain uji coba. Tahapan penelitian yang digunakan pada Rancang Bangun Aplikasi Penjadwalan Mata Kuliah dapat dilihat pada Gambar 3.1.

Pengujian Sistem

Uji Coba Perangkat Lunak

Implementasi Perangkat Lunak

Evaluasi Prototype

System Flowchart Data Flow Diagram (DFD)

Entity Relationship Diagram (ERD)

Membangun Prototype

Analisis Kebutuhan

Pengguna Desain Input Output

Pengumpulan Kebutuhan

Identifikasi Permasalahan

Analisis

Permasalahan Studi Literatur Analisis Kebutuhan

(34)

3.1 Pengumpulan Kebutuhan

3.1.1 Identifikasi Permasalahan

Pada tahap ini dilakukan proses observasi, dan wawancara. proses observasi dilakukan dengan cara mengamati secara langsung pada proses penjadwalan di staf Prodi. Sedangkan proses wawancara dilakukan dengan cara mendapatkan sebuah informasi yang bertujuan untuk mengidentifikasi permasalahan yang sedang dihadapi oleh staf Prodi. Wawancara tersebut dilakukan di bagian staf Prodi dann BAAK. Setelah melakukan wawancara, informasi yang diperoleh yaitu profil perusahaan, visi, misi, tujuan, struktur informasi, proses bisnis penjadwalan serta prosedur-prosedur dan kebijakan yang berlaku di STIKES Yayasan RS. Dr. Soetomo Surabaya.

Penjadwalan mata kuliah yang ada di STIKES Yayasan RS. Dr. Soetomo Surabaya, masih menggunakan proses manual untuk menentukan penjadwalan mata kuliah dengan cara Staf Prodi mengirimkan e-mail surat pernyataan

(35)

dan menemui dosen wali kemudian mahasiswa mendapatkan jadwal dosen Mengajar dan mahasiswa mengatakan ke dosen wali, mata kuliah yang akan diambil. Setelah itu, dosen wali mengisi form KRS. Untuk melakukan pengganti mata kuliah, dosen datang ke BAAK untuk meminta jadwal pengganti. Dosen memberikan kesediaan hari dan jam berapa dosen tersebut bisa mengajar, kemudian BAAK akan mengecek apakah terjadi crash antara ruang, jam, dosen dan mahasiswa. Apabila terjadinya crash, BAAK akan mencarikan hari yang tidak crash dan menginformasikan ke dosen.

(36)

Flowchart Pengganti Mata Kuliah ini dapat dilihat pada Gambar 3.2, Document

Flowchart Penjadwalan Mata Kuliah ini dapat dilihat pada Gambar 3.3.

Document Flowchart Pengganti Mata Kuliah

Dosen Wali Dosen

Phase

Mencarikan mata kuliah pengganti Jadwal Dosen

mengajar Start

Hadir?

Mencatat pengganti mata kuliah Iya

Pengganti mata kuliah

End Tidak

(37)

Document Flowchart Penjadwalan Mata Kuliah

Kaprodi Dosen

Staf Prodi Mahasiswa Dosen Wali

Phase

Start

Surat pernyataan ketersediaan

mengajar

Mengirim dokumen surat pernyataan

ketersediaan mengajar lewat email

Surat pernyataan ketersediaan

Surat pernyataan ketersediaan

mengajar

Mengirim dokumen surat pernyataan

ketersediaan mengajar lewat email Surat pernyataan

ketersediaan mengajar

Rapat Dosen untuk menentukan jadwal Dosen mengajar Surat pernyataan

ketersediaan mengajar

Jadwal Dosen mengajar Memasukkan jadwal Dosen mengajar di

Excel

End Jadwal Dosen

mengajar

Menentukan ruangan untuk tiap mata kuliah

Jadwal Dosen mengajar Jadwal Dosen

mengajar

Mencatat KRS

KRS

End

(38)

3.1.2 Analisis Permasalahan

Berdasarkan uraian di atas, maka dibuatlah sebuah sistem yang menghasilkan jadwal dosen mengajar yang sesuai ketentuan yaitu dosen mengajar sesuai dengan surat pernyataan ketersediaan mengajar, dosen tidak dijadwalkan mengajar lebih dari satu mata kuliah di waktu yang sama dan ruang tidak boleh dijadwalkan lebih dari satu kali pada waktu yang bersamaan. Mencari sebuah penjadwalan yang sesuai dengan kriteria/persyaratan tidaklah mudah dan membutuhkan waktu yang lama. Untuk mendapatkan hasil yang maksimal dan sehingga membutuhkan waktu yang lama, Penjadwalan dosen mengajar menggunakan metode Algoritma Genetika. Metode Algoritma Genetika dapat menyelesaikan permasalahan penjadwalan dosen mengajar karena Algoritma Genetika dapat menyelesaikan masalah yang kompleks sesuai dengan permasalahan yang ada di STIKES Yayasan RS. Dr. Soetomo Surabaya.

(39)

3.1.3 Analisis Kebutuhan

Aplikasi penjadwalan mata kuliah pada STIKES Yayasan RS. Dr. Soetomo ini akan melibatkan beberapa pengguna di dalam mengoperasikan atau menggunakan aplikasi penjadwalan mata kuliah. Tabel 3.1 menjelaskan tentang kebutuhan dalam mengoperasikan atau menggunakan aplikasi penjadwalan mata kuliah sebagai berikut:

Tabel 3.1 Analisis Kebutuhan

No Pengguna Kebutuhan Laporan Yang

Dihasilkan

1 Kepala Prodi  Dapat memasukkan plotting

dosen

 Dapat memasukkan plotting

ruang

 Dapat mengubah jadwal dosen mengajar

 Dapat menyetujui jadwal dosen mengajar

 Laporan jadwal dosen mengajar

 Laporan jadwal dosen sementara

 Laporan ketersediaan mengajar

 Laporan plotting

dosen 2 Mahasiswa Dapat mengakses jadwal dosen

mengajar

ketersediaan mengajar

 Dapat mengakses jadwal dosen mengajar

 Dapat memasukkan plotting

dosen team untuk dosen yang mengajar team

 Laporan ketersediaan mengajar

 Dapat memasukkan data agenda penjadwalan

 Dapat memasukkan data hari

 Dapat memasukkan data kelas

 Dapat memasukkan data jenis ruang mata kuliah

 Dapat memasukkan data

 Laporan jadwal dosen mengajar

 Laporan jadwal dosen sementara

 Rekapitulasi

pengganti mata kuliah

(40)

No Pengguna Kebutuhan Laporan Yang Dihasilkan

semester

 Dapat memasukkan plotting

dosen

 Dapat memasukkan ketersediaan mengajar

 Dapat membuat jadwal dosen sementara

 Dapat memasukkan data KRS

 Dapat melihat jadwal dosen mengajar

 Dapat mencarikan pengganti mata kuliah

3.2 Membangun Prototype

3.2.1 Desain Arsitektur Jaringan

Dalam pengembangan perangkat lunak perlu adanya perangkat keras yang tepat, sehingga perangkat lunak dapat berjalan dengan lancar tanpa gangguan apapun. Kebutuhan sistem memberikan definisi keperluan perangkat keras untuk mendukung kinerja perangkat lunak yang terdiri dari spesifikasi sistem, spesifikasi Server dan spesifikasi lainnya.

(41)

Sistem Penjadwalan Mata Kuliah Sistem Penjadwalan

Mata Kuliah

Maintenance Data : 1. Data pegawai 2. Data hari 3. Data kelas

4. Data janis ruang mata kuliah 5. Data semester

6. Data agenda penjadwalan 7. Data KRS

8. Data pengganti mata kuliah 9. Data penjadwalan sementara 10. Data plotting dosen mengajar Informasi :

1. Lap. penjadwalan sementara 2. Lap. penjadwalan dosen mengajar 3. Lap. ketersediaan mengajar 4. Lap. pengganti mata kuliah

Maintenance Data : 1. Data plotting ruang 2. Data plotting kelas Menyetujui penjadwalan semetara

Maintenance Data : 1. Data plotting dosen team Informasi :

1. Lap. penjadwalan dosen mengajar

2. Lap. timeline penjadwalan dosen mengajar

Informasi : 1. Lap. penjadwalan mata kuliah

2. Lap. timeline penjadwalan mata kuliah

Gambar 3.4 Desain Arsitektur Jaringan

3.2.2 Input Process Output (IPO)

Di dalam aplikasi penjadwalan mata kuliah pada STIKES Yayasan RS. Dr. Soetomo Surabaya terdapat input yang dibutuhkan, process yang dilakukan oleh aplikasi penjadwalan mata kuliah dan output yang dihasilkan. Input yang dibutuhkan yaitu data pegawai, data agenda penjadwalan, data hari, data kelas, data jenis ruang mata kuliah, data jurusan, data mata kuliah, data semester, data dosen, data ruang, data plotting dosen, data ketersediaan mengajar, data plotting

(42)

Process yang dilakukan yaitu menyimpan data pegawai, menyimpan data, agenda penjadwalan, menyimpan data hari, menyimpan data kelas, menyimpan data jenis ruang mata kuliah, menyimpan data semester, menyimpan data plotting dosen, menyimpan data plotting ruang, menyimpan data kesediaan mengajar, membuat penjadwalan dosen mengajar sementara dengan metode Algoritma Genetika, menyimpan data penjadwalan sementara, membuat laporan ketersediaan mengajar, memperbarui data penjadwalan sementara, menyetujui jadwal dosen mengajar, menyimpan data jadwal dosen mengajar, membuat laporan penjadwalan sementara, membuat laporan jadwal dosen mengajar per dosen, membuat timeline jadwal dosen mengajar per dosen, membuat laporan jadwal dosen mengajar semua dosen, memperbarui data jadwal dosen mengajar, menyimpan data KRS, membuat jadwal mata kuliah, membuat timeline jadwal mata kuliah, membuat pengganti jadwal mata kuliah, membuat rekapitulasi pengganti jadwal mata kuliah, memperbarui jadwal dosen mengajar dan memperbarui jadwal mata kuliah.

Output yang dihasilkan yaitu rekapan pegawai, rekapan agenda

penjadwalan, rekapan hari, rekapan kelas, rekapan jenis ruang mata kuliah, rekapan semester, rekapan plotting dosen, rekapan plotting ruang, rekapan kesediaan mengajar, penjadwalan dosen mengajar sementara, laporan ketersediaan mengajar, penjadwalan dosen sementara terbaru, jadwal dosen mengajar, laporan penjadwalan sementara, laporan jadwal dosen mengajar per dosen, timeline

(43)

penjadwalan mata kuliah, jadwal dosen mengajar diperbarui dan jadwal mata kuliah diperbarui. Lebih jelasnya, Input Process Output dapat dilihat pada Gambar 3.5

Di dalam IPO terdapat 20 data yang digunakan untuk input-an agar semua proses berjalan dan menghaslkan beberapa output. Data tersebut meliputi: a. Data pegawai

Data pegawai berfungsi untuk memberikan hak akses kepada pegawai untuk membuka aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi NIP, nama pegawai, alamat pegawai telepon pegawai, jabatan pegawai,

username pegawai dan password pegawai.

b. Data agenda penjadwalan

Data pegawai berfungsi untuk menjadwalkan ketersediaan mengajar, hari kuliah dan UTS sehingga pada waktu proses pembuatan jadwal sesuai dengan tanggal yang ditentukan dan dosen tidak bisa memasukkan ketersediaan mengajar melebihi tanggal yang sudah ditentukan. Data yang diperlukan meliputi kode agenda, tanggal mulai, tanggal akhir dan jenis agenda dan semester

c. Data hari

(44)

 Rekapan pegawai

 Rekapan agenda penjadwalan

 Rekapan hari

 Rekapan kelas

 Rekapan jenis ruang mata kuliah

 Rekapan semester

 Rekapan plotting

dosen

 Rekapan plotting kelas

 Rekapan plotting

ruang

 Rekapan kesediaan mengajar

 Laporan ketersediaan mengajar

 Laporan jadwal dosen mengajar sementara

 Laporan jadwal dosen mengajar per dosen

Timeline jadwal dosen mengajar per dosen

 Laporan jadwal dosen mengajar semua dosen

 Rekapan data KRS

 Laporan timeline

jadwal dosen mengajar

 Laporan jadwal mata kuliah

 Rekapan pengganti mata kuliah

 Proses menyimpan data pegawai

 Proses menyimpan data agenda penjadwalan

 Proses menyimpan data hari

 Proses menyimpan data kelas

 Proses menyimpan data jenis ruang mata kuliah

 Proses menyimpan data semester

 Proses menyimpan data plotting

dosen mengajar

 Proses menyimpan data plotting

kelas

 Proses menyimpan data plotting

ruang

 Proses menyimpan data kesediaan mengajar

 Proses membuat laporan ketersediaan mengajar

 Proses membuat jadwal dosen mengajar sementara dengan Metode Algoritma Genetika dan menyimpan data jadwal dosen mengajar sementara

 Proses memperbarui data jadwal dosen mengajar sementara

 Proses menyetujui dan menyimpan data jadwal dosen mengajar

 Proses membuat laporan jadwal dosen mengajar sementara

 Proses membuat laporan jadwal dosen mengajar per dosen

 Proses membuat laporan

timeline jadwal dosen mengajar per dosen

 Proses membuat laporan jadwal dosen mengajar semua dosen

 Proses menyimpan data KRS

 Proses membuat jadwal mata kuliah

 Proses membuat timeline

jadwal mata kuliah

 Proses menyimpan data pengganti jadwal mata kuliah

 Data pegawai

 Data semester

 Data dosen

 Data semester

 Data semester

 Data mata kuliah

 Data ruang

 Data semester

 Data dosen

 Data semester

 Data ketersediaan mengajar

 Data semester

 Data ketersediaan mengajar

 Data semester

 Data dosen

 Data semester

 Data dosen

 Data jadwal dosen mengajar

 Data mahasiswa

 Data semester

 Data KRS

 Data mahasiswa

 Data dosen

Output

Input Proses

(45)

d. Data kelas

Data kelas berfungsi untuk menyimpan data kelas yang digunakan oleh STIKES Yayasan RS. Dr. Soetomo Surabaya. Data yang diperlukan meliputi kode kelas, tanggal dan nama kelas.

e. Data jenis ruang mata kuliah

Data jenis ruang mata kuliah berfungsi untuk menentukan ruangan atau laboratorium yang digunakan untuk setiap mata kuliah. Data yang diperlukan meliputi kode jenis ruang mata kuliah, nama mata kuliah, jenis ruang dan nama jurusan.

f. Data jurusan

Data jurusan telah disediakan oleh STIKES Yayasan RS. Dr. Soetomo Surabaya dan peneliti diberikan hak akses membaca untuk pembuatan aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi kode jurusan dan nama jurusan.

g. Data mata kuliah

Data mata kuliah telah disediakan oleh STIKES Yayasan RS. Dr. Soetomo Surabaya dan peneliti diberikan hak akses membaca untuk pembuatan aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi nama jurusan, kode mata kuliah dan nama mata kuliah, SKS, semester dan kategori. h. Data semester

(46)

i. Data dosen

Data dosen telah disediakan oleh STIKES Yayasan RS. Dr. Soetomo Surabaya dan peneliti diberikan hak akses membaca untuk pembuatan aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi kode dosen, nama dosen, alamat dosen, telepon dosen, jabatan dosen, username dosen dan

password dosen.

j. Data ruang

Data ruang telah disediakan oleh STIKES Yayasan RS. Dr. Soetomo Surabaya dan peneliti diberikan hak akses membaca untuk pembuatan aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi kode ruang dan nama ruang.

k. Data plotting dosen

Data plotting dosen berfungsi untuk menentukan dosen yang dapat mengakses atau mengisi form ketersediaan mengajar. Data yang diperlukan meliputi nama dosen.

l. Data ketersediaan mengajar

Data ketersediaan mengajar berfungsi untuk menampung mata kuliah yang akan diajarkan pada dosen tersebut dan waktu yang dosen sediakan untuk mengajar mata kuliah tersebut. Data yang diperlukan meliputi nama jurusan nama mata kuliah, jumlah kelas yang akan diajarkan, nama hari, jam mulai dan jam selesai.

m. Data waktu

(47)

aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi kode waktu dan jam.

n. Data jadwal dosen mengajar sementara

Data jadwal dosen mengajar sementara berfungsi untuk menyimpan data jadwal dosen mengajar sementara. Data yang diperlukan meliputi nama dosen, nama mata kuliah, jam, nama ruang, nama kelas dan nama jurusan o. Data jadwal dosen mengajar

Data jadwal dosen mengajar berfungsi untuk menyimpan data jadwal dosen mengajar. Data yang diperlukan meliputi nama dosen, nama mata kuliah, jam, nama ruang, nama kelas, tanggal, pertemuan dan nama jurusan

p. Data mahasiswa

Data mahasiswa telah disediakan oleh STIKES Yayasan RS. Dr. Soetomo Surabaya dan peneliti diberikan hak akses membaca untuk pembuatan aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi NIM, nama mahasiswa, jurusan dan status.

q. Data KRS

Data KRS telah disediakan oleh STIKES Yayasan RS. Dr. Soetomo Surabaya dan peneliti diberikan hak akses membaca untuk pembuatan aplikasi penjadwalan mata kuliah. Data yang diperlukan meliputi nama mata kuliah, nama mahasiswa, waktu, nama ruang dan nama kelas

r. Data pengganti mata kuliah.

(48)

Di dalam IPO terdapat 5 proses yang digunakan agar semua menghasilkan output. Proses tersebut meliputi:

a. Proses Menyimpan

Proses menyimpan berfungsi untuk menyimpan data pegawai ke dalam tabel. Data yang disimpan meliputi data pegawai, agenda penjadwalan, hari, kelas, jenis ruang mata kuliah, semester, plotting dosen, plotting ruang, ketersediaan mengajar, jadwal dosen mengajar sementara, jadwal dosen mengajar, KRS dan pengganti mata kuliah.

b. Proses membuat penjadwalan dosen mengajar dengan metode Algoritma Genetika dan menyimpan data jadwal sementara

Proses ini berfungsi untuk mencarikan jadwal dosen mengajar yang sesuai dengan criteria yaitu tidak terjadi crash antara waktu dan dosen, waktu dan ruang. Setelah mendapatkan jadwal dosen mengajar yang nilai fitness-nya terbaik, jadwal tersebut disimpan di dalam tabel Penjadwalan_sementara dan Penjadwalan

c. Proses Memperbarui Data Jadwal Dosen Mengajar sementara

Proses Memperbarui Data Jadwal Dosen Mengajar sementara berfungsi untuk memperbarui data jadwal dosen mengajar apabila dosen ingin merubah jadwal yang sudah dihasilkan oleh metode Algoritma Genetika.

d. Proses Menyetujui Jadwal Dosen Mengajar sementara dan menyimpan data jadwal dosen mengajar

(49)

(generate 16 pertemuan). Proses penyimpanan disimpan pada tabel Detil_penjadwalan.

e. Proses Membuat Laporan

Proses ini berfungsi untuk membuat laporan yang sesuai dengan tabel beserta kata kunci. Laporan yang dihasilkan yaitu berbentuk PDF.

Di dalam IPO terdapat 3 output yang dihasilkan. Output tersebut meliputi:

a. Rekapan (Rekapitulasi) Rekapan yaitu rincian dari sebuah data yang dibutuhkan sesuai dengan database dan kata kunci yang diinginkan oleh pengguna. Rekapan meliputi rekapan pegawai, agenda penjadwalan, hari, kelas, jenis ruang mata kuliah, semester, plotting dosen, plotting ruang, KRS, pengganti mata kuliah

b. Laporan

Laporan yaitu rincian dari sebuah data yang dibutuhkan sesuai dengan

database dan kata kunci yang diinginkan oleh pengguna. Laporan meliputi ketersediaan mengajar, jadwal dosen mengajar sementara, jadwal dosen mengajar, jadwal mata kuliah

c. Timeline

Timeline yaitu rincian dari sebuah data yang dibutuhkan sesuai dengan

(50)

3.2.3 Kebutuhan Fungsional

Kebutuhan fungsional merupakan dasar dari fungsi penyusunan fungsi-fungsi yang akan dibangun didalam perangkat lunak. Fungsi-fungsi-fungsi perangkat lunak tersebut telah mewakili proses identifikasi kebutuhan setiap pengguna atau

user. Berikut ini kebutuhan fungsional yang dibutuhkan berdasarkan stakeholder

yaitu:

A Admin

Tabel 3.2 Kebutuhan Fungsi Menyimpan Data Pegawai

Nama Fungsi Fungsi menyimpan data pegawai

Stakeholder Admin

Deskripsi Fungsi ini dilakukan untuk menyimpan data pegawai

Kondisi Awal Data pegawai masih kosong. Untuk mengisi data pegawai,

data yang dibutuhkan meliputi:

 Data pegawai

Alur Normal

Aksi Pengguna Respon Sistem

Memilih add pegawai Sistem menampilkan halaman pegawai besarta data pegawai Memilih button add pada

halaman pegawai

Sistem menampilkan form

pegawai yang didalamnya terdapat kode pegawai, nama pegawai, alamat pegawai, telepon pegawai, jabatan pegawai dan status pegawai Pengguna memasukkan data

pegawai dan memilih button save

 Sistem menyimpan data pegawai ke dalam tabel Pegawai

 Sistem akan menampilkan

pesan “Data telah

disimpan” dan data

pegawai

Alur Eksepsi

Aksi Pengguna Respon Sistem

Pengguna tidak mengisi satu atau lebih filed pada form

pegawai

Sistem menampilkan pesan

„Data harus diisi‟ dan button

save disabled

(51)

A BAAK

Tabel 3.3 Kebutuhan Fungsi Menyimpan Data Agenda Penjadwalan

Nama Fungsi Fungsi menyimpan data agenda penjadwalan

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data agenda

penjadwalan

Kondisi Awal Data agenda penjadwalan masih kosong. Untuk mengisi data

agenda penjadwalan, data yang dibutuhkan meliputi:

 Data semester

 Data agenda penjadwalan

Alur Normal

Aksi Pengguna Respon Sistem

Memilih menu agenda penjadwalan

Sistem menampilkan halaman agenda penjadwalan beserta data pegawai

Memilih button add pada

halaman agenda

penjadwalan

Sistem menampilkan form

agenda penjadwalan yang didalamnya terdapat kode agenda penjadwalan, tanggal mulai, tanggal selesai dan jenis agenda

Pengguna memasukkan data agenda penjadwalan dan memilih button save

 Sistem menyimpan data agenda penjadwalan ke dalam tabel Agenda_penjadwalan

 Sistem akan menampilkan

pesan “Data telah disimpan”

dan data agenda penjadwalan

Alur Eksepsi

Aksi Pengguna Respon Sistem

Pengguna tidak mengisi satu atau lebih filed pada

form agenda penjadwalan

Sistem menampilkan pesan

„Data harus diisi‟ dan button

save disabled

Kondisi Akhir Fungsi ini menyimpan data agenda penjadwalan

Tabel 3.4 Kebutuhan Fungsi Menyimpan Data Hari

Nama Fungsi Fungsi menyimpan data hari

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data hari

Kondisi Awal Data hari masih kosong. Untuk mengisi data hari, data yang

dibutuhkan meliputi:

 Data hari

Alur Normal

Aksi Pengguna Respon Sistem

(52)

Alur Normal

Aksi Pengguna Respon Sistem

Memilih button add pada halamanhari

Sistem menampilkan form

hari yang didalamnya terdapat kode hari dan nama hari Pengguna memasukkan data

hari dan memilih button save

 Sistem menyimpan data hari ke dalam tabel Hari

 Sistem akan menampilkan

pesan “Data telah

disimpan” dan data hari

Alur Eksepsi

Aksi Pengguna Respon Sistem

Pengguna tidak mengisi satu atau lebih filed pada form hari

Sistem menampilkan pesan

„Data harus diisi‟ dan button

save disabled

Kondisi Akhir Fungsi ini menyimpan data hari

Tabel 3.5 Kebutuhan Fungsi Menyimpan Data Kelas

Nama Fungsi Fungsi menyimpan data kelas

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data kelas

Kondisi Awal Data kelas masih kosong. Untuk mengisi data kelas, data yang

dibutuhkan meliputi:

 Data kelas

Alur Normal

Aksi Pengguna Respon Sistem

Memilih menu kelas Sistem menampilkan halaman kelas beserta data kelas Pengguna memilih buttonadd

pada halaman kelas

Sistem menampilkan form

kelas yang didalamnya terdapat kode kelas dan nama kelas

Pengguna memasukkan data kelas dan memilih button save

 Sistem menyimpan data kelas ke dalam tabel Kelas

 Sistem akan menampilkan

pesan “Data telah

disimpan” dan data kelas

Alur Eksepsi

Aksi Pengguna Respon Sistem

Pengguna tidak mengisi satu atau lebih filed pada form

kelas

Sistem menampilkan pesan

„Data harus diisi‟ dan button

save disabled

Kondisi Akhir Fungsi ini menyimpan data kelas

Tabel 3.6 Kebutuhan Fungsi Menyimpan Data Jenis Ruang Mata Kuliah

Nama Fungsi Fungsi menyimpan data jenis ruang mata kuliah

Stakeholder BAAK

(53)

Kondisi Awal Data jenis ruang mata kuliah masih kosong. Untuk mengisi data jenis ruang mata kuliah, data yang dibutuhkan meliputi:

 Data mata kuliah

 Data jurusan

Alur Normal

Aksi Pengguna Respon Sistem

Memilih menu jenis ruang mata kuliah

Sistem menampilkan halaman jenis ruang mata kuliah beserta data mata kuliah Pengguna memilih buttonadd

pada halaman jenis ruang mata kuliah

Sistem menampilkan form

jenis ruang mata kuliah yang didalamnya terdapat kode jenis ruang, nama jurusan, nama mata kuliah dan jenis ruang

Pengguna memasukkan data jenis ruang mata kuliah dan memilih button save

 Sistem menyimpan data jenis ruang mata kuliah ke

dalam tabel

Jenis_ruang_MK

 Sistem akan menampilkan

pesan “Data telah

disimpan” dan data kelas

Alur Eksepsi

Aksi Pengguna Respon Sistem

Pengguna tidak mengisi satu atau lebih filed pada form

jenis ruang mata kuliah

Sistem menampilkan pesan

„Data harus diisi‟ dan button

save disabled

Kondisi Akhir Fungsi ini menyimpan data kelas

Tabel 3.7 Kebutuhan Fungsi Menyimpan Data Semester

Nama Fungsi Fungsi menyimpan data semester

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data semester

Kondisi Awal Data semester masih kosong. Untuk mengisi data semester,

data yang dibutuhkan meliputi:

 Data semester

Alur Normal

Aksi Pengguna Respon Sistem

Memilih menu semester Sistem menampilkan halaman semester beserta data semester

Pengguna memilih buttonadd

pada halaman semester

Sistem menampilkan form

(54)

Alur Normal

Aksi Pengguna Respon Sistem

Pengguna memasukkan data semester dan memilih button save

 Sistem menyimpan data semester ke dalam tabel Semester

 Sistem akan menampilkan

pesan “Data telah

disimpan” dan data

semester

Alur Eksepsi

Aksi Pengguna Respon Sistem

Pengguna tidak mengisi satu atau lebih filed pada form

semester

Sistem menampilkan pesan

„Data harus diisi‟ dan button

save disabled

Kondisi Akhir Fungsi ini menyimpan data semester

Tabel 3.8 Kebutuhan Fungsi Menyimpan Data Ketersediaan Mengajar

Nama Fungsi Fungsi menyimpan data ketersediaan mengajar

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data ketersediaan

mengajar

Kondisi Awal Data ketersediaan mengajar masih kosong. Untuk mengisi data

ketersediaan mengajar, data yang dibutuhkan meliputi:

 Data dosen

 Data mata kuliah

 Data plotting dosen

 Data jurusan

 Data hari

 Data semester

Alur Normal

Aksi Pengguna Respon Sistem

Memilih menu ketersediaan mengajar

Sistem menampilkan halaman ketersediaan mengajar beserta data ketersediaan mengajar Pengguna memilih buttonadd

pada halaman ketersediaan mengajar

Sistem menampilkan form

ketersediaan mengajar yang didalamnya terdapat tanggal, tahun ajaran, nama dosen, nama jurusan, nama mata kuliah, nama hari, jam mulai, jam selesai dan team.

Pengguna memasukkan data ketersediaan mengajar dan memilih button save

(55)

Alur Normal

Aksi Pengguna Respon Sistem

 Sistem akan menampilkan

pesan “Data telah

disimpan” dan data

ketersediaan mengajar

Kondisi Akhir Fungsi ini menyimpan data ketersediaan mengajar

Tabel 3.9 Kebutuhan Fungsi Menyimpan Data Jadwal Dosen mengajar Sementara

Nama Fungsi Fungsi menyimpan data jadwal dosen mengajar sementara

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data jadwal dosen

mengajar sementara

Kondisi Awal

Kondisi Awal

Data jadwal dosen mengajar sementara masih kosong. Untuk mengisi data jadwal dosen mengajar sementara, data yang dibutuhkan meliputi:

 Data ketersediaan mengajar

 Data mata kuliah

 Data semester

 Data dosen

Alur Normal

Aksi Pengguna Respon Sistem

Memilih menu jadwal dosen mengajar sementara

Sistem menampilkan halaman jadwal dosen mengajar beserta data jadwal dosen mengajar Pengguna memilih button

add pada halaman jadwal dosen mengajar

 Sistem melakukan

perhitungan Algoritma

Genetika (skema

pengkodean, populasi awal dan kromosom, fungsi

(56)

Alur Normal

Aksi Pengguna Respon Sistem

tabel Penjadwalan_sementara dan Penjadwalan.

 Sistem akan menampilkan

pesan “Data telah disimpan”

dan data jadwal dosen mengajar sementara

Kondisi Akhir Fungsi ini menyimpan data jadwal dosen mengajar sementara

Tabel 3.10 Kebutuhan Fungsi Menyimpan Data KRS

Nama Fungsi Fungsi menyimpan data KRS

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data KRS

Kondisi Awal Data KRS masih kosong. Untuk mengisi data KRS, data yang

dibutuhkan meliputi:

 Data jadwal dosen mengajar

 Data mahasiswa

Alur Normal

Aksi Pengguna Respon Sistem

Memilih menu KRS Sistem menampilkan halaman KRS beserta data KRS

Pengguna memilih button add

pada halaman KRS

 Sistem menyimpan data KRS ke dalam tabel penjadwalan dan tabel KRS_penjadwalan

 Sistem akan menampilkan

pesan “Data telah

disimpan” dan data KRS

Alur Eksepsi

Aksi Pengguna Respon Sistem

Pengguna tidak mengisi satu atau lebih filed pada form

pegawai

Sistem menampilkan pesan

„Data harus diisi‟ dan button

save disabled

Kondisi Akhir Fungsi ini menyimpan data KRS

Tabel 3.11 Kebutuhan Fungsi Menyimpan Data Pengganti Mata Kuliah

Nama Fungsi Fungsi menyimpan data pengganti mata kuliah

Stakeholder BAAK

Deskripsi Fungsi ini dilakukan untuk menyimpan data pengganti mata

kuliah

Kondisi Awal Data pengganti mata kuliah masih kosong. Untuk mengisi data

pengganti mata kuliah, data yang dibutuhkan meliputi:

 Data jadwal dosen mengajar

 Data KRS

 Data mata kuliah

Gambar

Gambar 3.1 Tahap Analisis
Gambar 3.2 Document Flowchart Pengganti Mata Kuliah
Gambar 3.3 Document Flowchart Penjadwalan Mata Kuliah
Tabel 3.1 Analisis Kebutuhan
+7

Referensi

Dokumen terkait

Proses AAK adalah dimulai dari admin atau bagian AAK membuat jadwal perkuliahan tiap semester yang akan ditempuh oleh mahasiswa kemudian mahasiswa melakukan perwalian

11 Mengetahui respon aplikasi dalam proses revisi data Data mahasiswa calon penerima beasiswa Menampilkan form pemberitahuan melalui e-mail Gambar 4.29 dan 4.30

P h ase Data Instansi/ Perusahaan Data Pelamar/ (Alumni) Data Alumni Daftar Data Pelamar Daftar Data Pelamar Dalam Setiap Lowongan Verifikasi Instansi berdasarkan jenis

3 Mengetahui respon tampilan halaman form ubah agenda dinas keluar jika data agenda dinas keluar terbaru yang dimasukkan valid Data agenda dinas keluar terbaru Tampilan

Halaman form jadwal berfungsi untuk meng input kan guru yang mengajar, mata pelajaran apa yang akan diajar, jam mulai pelajaran serta jam selesai pelajaran, mengajar pada

Gambar 4.25 Hasil PDF Grafik Tracer Study Pengguna Lulusan 4.2.17 Form Grafik Perbandingan Tracer Study Alumni Grafik perbandingan tracer study alumni berfungsi untuk menampilkan

Tim Penilai Tes Kesehatan Tim Penilai Psikotes Petug as Pendaftaran 0 Aplikasi Seleksi Penerimaan Mahasiswa Baru 1 Memberi Hak Akses 2 Mengelola Data Master 3 Mengelola Data

Tim Penilai Tes Kesehatan Tim Penilai Psikotes Petug as Pendaftaran 0 Aplikasi Seleksi Penerimaan Mahasiswa Baru 1 Memberi Hak Akses 2 Mengelola Data Master 3 Mengelola Data