• Tidak ada hasil yang ditemukan

Sistem penjadwalan kuliah pada program studi Sistem Informasi UNIKOM

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem penjadwalan kuliah pada program studi Sistem Informasi UNIKOM"

Copied!
154
0
0

Teks penuh

(1)

DATA PRIBADI

Nama : Edison Marpaung

Tempat tanggal Lahir : Balige, 16 Agustus 1988 Jenis Kelamimmn : Laki-laki

Agama : Kristen katolik

Status : Belum menikah

Alamat : Kompleks PT Inalum Paritohan, Residen D no 8b, Tobasa, Sumatra Utara Alamat bandung : Jln. Cisitu Baru no.13, Kelurahan Coblong, Bandung

No.telp : 081265318074

PENDIDIKAN FORMAL

SDN 173651 Porsea 1994 - 2000

SMPN4 Porsea 2000 - 2003

SMA RK Budi Mulia, Pematang Siantar 2003 - 2006 Politeknik Informatika Del 2006 - 2009

(2)

SKRIPSI

Diajukan Sebagai Salah Satu Syarat Kelulusan Pada Program Studi Sistem Informasi

Jenjang S1 (Sarjana)

Fakultas Teknik dan Ilmu Komputer

Edison Marpaung

1.05.10.931

PROGRAM STUDI SISTEM INFORMASI

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

(3)

iii

Maha Mendengar lagi Maha Melihat dan atas segala berkah yang dilimpahkan sehingga penulis dapat menyelesaikan karya tulis yang berbentuk skripsi ini sesuai dengan waktu yang telah direncanakan.

Penyusunan skripsi dengan judul “Sistem Penjadwalan Kuliah Pada Program

Studi Sistem Informasi UNIKOM” ini adalah merupakan salah satu syarat untuk memperoleh gelar sarjana pada program studi Sistem Informasi, fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia (UNIKOM).

Dalam penulisan skripsi ini, tentunya banyak pihak yang telah memberikan bantuan baik moril maupun materil pada penulis. Oleh karena itu penulis ingin menyampaikan ucapan terimakasih yang tiada hingganya kepada :

1. Dr. Ir. Eddy Suryanto Soegoto, M.Sc, selaku Rektor Universitas Komputer Indonesia

2. Prof. Dr. Ir Denny Kurniadie, M.Sc., selaku Dekan Fakultas Teknik dan Ilmu Komputer UNIKOM.

3. Imelda Pangaribuan ST., MT selaku pembimbing yang telah banyak memberikan bimbingan, nasehat dan arahan kepada penulis.

(4)

iv

5. Lusi Mellian S.Si, MT., selaku penguji yang telah banyak memberikan masukan, dukungan, dan pengarahan dalam seminar dan sidang kelulusan penulis.

6. Secara khusus penulis ingin mengucapkan terima kasih kepada Ayahanda yang penulis banggakan, Walter Marpaung, dan Ibunda yang tercinta, Tiolina Datubara yang telah banyak memberikan dukungan dan pengorbanan baik secara moril maupun materil hingga penulis dapat menyelesaikan studi dengan baik.

7. Richardo Marpaung S.Ked, Wati Margaretha Marpaung, Theresia Marpaung, adik-adik yang penulis sayangi yang telah memberikan dukungan selama penulis mengikuti studi dan mengerjakan skripsi ini.

8. Suriana Limbong, Benediktus Marsel S.Psi, Parlin Purba Amd., Richard Simamora Amd., David Arico S.T, Permatasari Purba Amd, Liraini Tarigan S.T, sahabat-sahabat penulis yang telah memberikan dukungan moril serta motivasi bagi penulis selama penulis mengikuti studi dan menyelesaikan skripsi ini.

(5)

v ini.

Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan, maka saran dan kritik yang konstruktif dari semua pihak sangat diharapkan demi penyempurnaan selanjutnya.

Akhirnya hanya kepada Tuhan Yang Maha Esa kita kembalikan semua urusan dan semoga skripsi ini dapat bermanfaat bagi semua pihak, khususnya bagi penulis dan para pembaca pada umumnya.

Bandung, 11 Januari 2013

(6)

vi

2.1.3 Mekanisme Pelaksanaan Algoritma oleh Pemroses ……….……… 12

2.2 Bahasa Pemrograman ………. 14

2.3 Beda Algoritma dan Program ………. 16

2.4 Penjadwalan Kuliah ……… 19

2.5 Perangkat Lunak Pendukung Perancangan Aplikasi ….. 20

2.5.1 Java ……….. 20

2.5.2 Microsoft Office Access ……….. 22

2.5.3 Netbeans ……….. 22

BAB III OBJEK DAN METODE PENELITIAN ……….. 24

3.1 Objek Penelitian ………... 24

3.1.1 Sejarah Singkat Perusahaan ……… 24

3.1.2 Visi dan Misi ……….... 26

3.1.3 Struktur Organisasi ………. 27

3.1.4 Deskripsi Tugas ………... 28

3.2 Metode Penelitian ………. 29

3.2.1 Desain Penelitian ………... 30

(7)

vii

4.2.1 Tujuan Perancangan Sistem yang Diusulkan …. 49 4.2.2 Gambaran Umum Sistem yang Diusulkan ……. 49

4.2.3 Perancangan Prosedur yang Diusulkan ……….. 50

4.2.3.1 Proses Bisnis ……… 51

4.2.4.1 Perancangan Struktur Menu ………. 87

4.2.4.2 Perancangan Input ……… 88

BAB V IMPLEMENTASI DAN PENGUJIAN SISTEM ……… 104

5.1 Implementasi ………... 104

5.1.1 Batasan Implementasi ……….. 104

5.1.2 Implementasi Perangkat Lunak ……… 105

5.1.3 Implementasi Perangkat Keras ………. 105

5.1.4 Implementasi Basis Data ……….. 106

5.1.5 Implementasi Antar Muka ……… 107

5.1.5.1 Implementasi Halaman Utama ………. 107

5.1.6 Penggunaan Program ……… 108

5.2 Pengujian ……… 119

5.2.1 Rencana Pengujian ………. 120

5.2.2 Kasus Hasil Pengujian ……….. 121

5.2.3 Kesimpulan Hasil Pengujian………. 134

BAB VI KESIMPULAN DAN SARAN ……….. 135

6.1 Kesimpulan ……… 135

(8)

viii

Informasi Unikom ………...………….. 28 Gambar 3. 2 Pendekatan Prototype (Sumber, Abdul Kadir

2004) ………. 33

Gambar 4. 1 Proses Bisnis sistem yang sedang berjalan ……… 42 Gambar 4. 2 Use Case Sistem Penjadwalan yang sedang

berjalan ……….. 44 Gambar 4. 3 Activity Diagram Sistem Penjadwalan yang

sedang berjalan ………. 46 Gambar 4. 4 Proses Bisnis Target Sistem ……… 51 Gambar 4. 5 Use Case Diagram untuk Target Sistem …………. 53 Gambar 4. 6 Activity Diagram Menambah Data Dosen ………. 64 Gambar 4. 7 Activity Diagram Mengubah Data Dosen ……….. 65 Gambar 4. 8 Activity Diagram Menambah Data Mata Kuliah ... 66 Gambar 4. 9 Activity Diagram Mengubah Data Mata Kuliah … 67 Gambar 4. 10 Activity Diagram Menambah Data Ruangan ….. 68 Gambar 4. 11 Activity Diagram Mengubah Data Ruangan ….. 69 Gambar 4. 12 Activity Diagram Menambah atau Mengubah Data

(9)

ix

Gambar 5. 3 Tampilan form utama ……… 109 Gambar 5. 4 Tampilan form Entry Data Dosen ……… 110 Gambar 5. 5 Tampilan Form Maintain Data Dosen untuk

mencari data ………... 111 Gambar 5. 6 Tampilan Form Maintain Data Dosen untuk

mengubah data dosen ……… 112 Gambar 5. 7 Tampilan Form Maintain Data Dosen untuk

menambah data mata kuliah yang diajarkan …… 112 Gambar 5. 8 Tampilan Form Penawaran ……… 113 Gambar 5. 9 Tampilan Form Maintain Kelas untuk melakukan

pencarian ………... 114 Gambar 5. 10 Tampilan Form Maintain Kelas untuk

melakukan pengubahan data ……… 114 Gambar 5. 11 Tampilan Form Data Mata Kuliah ……… 115 Gambar 5. 12 Tampilan Form Maintain Data Mata Kuliah

untuk melakukan pencarian ……… 116 Gambar 5. 13 Tampilan Form Maintain Data Mata Kuliah

untuk melakukan pengubahan ………. 116 Gambar 5. 14 Tampilan Form Entry Data Ruangan ……….. 117 Gambar 5. 15 Tampilan Form Maintain Data Ruangan

untuk melakukan pencarian ...………. 118 Gambar 5. 16 Tampilan Form Maintain Data Ruangan

untuk melakukan pengubahan data ……….. 119 Gambar 5. 17 Form Entry Data Dosen untuk penambahan data

dosen ... 122 Gambar 5. 18 Form Maintain Data Dosen untuk pengubahan

data dosen yang ada ……… 123 Gambar 5. 19 Form Entry Data Dosen untuk pengubahan

data dosen …... 124 Gambar 5. 20 Form Maintain Data Dosen dan Mata Kuliah untuk

pengubahan data dosen ...……… 124 Gambar 5. 21 Form Entry Data Penawaran untuk

penambahan data penawaran ……… 125 Gambar 5. 22 Form Entry Data Penawaran untuk men-

generate jadwal kuliah ……… 126 Gambar 5. 23 Form Maintain Data Kelas untuk pengubahan

data kelas (cari kelas) ……… 127 Gambar 5. 24 Form Entry Data Kelas untuk pengubahan

data kelas ……… 127 Gambar 5. 25 Form Entry Data Mata Kuliah untuk

(10)

x

Gambar 5. 28 Form Entry Data Ruangan untuk penambahan data

ruangan……… 130

Gambar 5. 29 Form Maintain Data Ruangan untuk pengubahan

data ruangan ……… 131

Gambar 5. 30 Form Entry Data Ruangan untuk pengubahan data ruangan ………..……….. 132 Gambar 5. 31 Form Penjadwalan Mata Kuliah (Form Utama)

untuk pencetakan BAP ……….. 133 Gambar 5. 32 Form Penjadwalan Mata Kuliah (Form Utama)

untuk pencetakan Tugas Mengajar ..………….. 133 Gambar 5. 33 Form Penjadwalan Mata Kuliah (Form Utama)

(11)

xi

Tabel 4. 2 Tabel skenario use case menambah data dosen …… 54

Tabel 4. 3 Skenario use case mengubah data dosen ………….. 55

Tabel 4. 4 Skenario use case menambah data mata kuliah …… 56

Tabel 4. 5 Skenario use case mengubah data mata kuliah ……. 57

Tabel 4. 6 Skenario use case menambah data ruangan ……….. 58

Tabel 4. 7 Skenario use case mengubah ruangan ……… 59

Tabel 4. 8 Skenario use case menambah/mengubah data penawaran ……….. 60

Tabel 4. 9 Skenario use case Generate jadwal ……… 61

Tabel 4. 10 Skenario use case Maintain kelas ……… 62

Tabel 5. 1 Keterangan Halaman Utama (Menu) ………. 107

(12)

Jakarta: Elex Media Computindo.

Horstman, Cav S., dkk. 2008. Core Java, Vol. 2: Advanced Features. New Jersey: Prentice Hall. Podeswa, Howard. 2009. UML For The IT Business Analyst. Boston: Course Technology PTR. Dr. Bambang Hariyono. 2012. Esensi-esensi bahasa pemrograman java revisi keempat.

Bandung: Informatika.

Imam Heryanto. 2011. Membuat Database dengan Microsoft Access Edisi Revisi. Bandung: Informatika.

Djoko Pramono. 2011. Manajemen Databae Relasional dengan Access 2010. Jakarta: Elex Media Computindo

http://www.isr.umd.edu/Labs/CIM/projects/scheduling/orsa-joc-1995.pdf /Solving a Class Scheduling Problem with a Genetic Algorithm / 11 September 2012

http://en.wikipedia.org/wiki/Genetic_algorithm_scheduling / Genetic Algorithm Schedulling/ 11 September 2012

http://repository.usu.ac.id/bitstream/123456789/27329 / Perancangan Penjadwalan USU dengan Algoritma Genetika / 11 September 2012

http://risdawati.staff.gunadarma.ac.id/Downloads/files/31598/Perancangan+Berorientasi+Objek. pdf / Perancangan Berorientasi Objek/ 12 September 2012

(13)

BAB I

PENDAHULUAN

1.1 Latar Belakang

Saat ini perkembangan teknologi komputer sangatlah pesat dan telah merambah ke semua aspek kehidupan manusia. Perkembangan teknologi komputer telah memberikan banyak kemudahan dalam pemecahan berbagai masalah yang dihadapi manusia dan memberikan hasil yang sangat memuaskan. Penggunaan teknologi komputer telah terbukti memberikan pencapaian kerja yang jauh lebih cepat dan lebih akurat dari penyelesaian masalah secara manual.

Salah satu aspek dalam kehidupan keseharian yang dapat ditangani oleh teknologi komputer adalah masalah penjadwalan, dalam kasus ini yaitu pembuatan jadwal kuliah di Universitas Komputer Indonesia (UNIKOM) khususnya di program studi Sistem Informasi. Saat ini jadwal kuliah di prodi Sistem Informasi UNIKOM kerap kali dimuculkan pada masa-masa akhir pemilihan kelas, sehingga sering kali harus ada perbaikan dalam pengambilan kelas terutama bagi mahasiswa yang konversi. Dalam pembuatan jadwal kuliah ini, maka pemahaman akan konsep penjadwalan sangatlah penting.

(14)

dosen yang akan mengampu lebih dari satu matakuliah, adanya dosen yang tidak dapat mengajar pada hari tertentu, ketersediaan kelas yang dapat diisi, adanya kelas umum dan kelas laboratorium (yang memerlukan keperluan laboratorium seperti komputer), adanya tipe kelas mahasiswa yang berbeda (kelas regular, karyawan, dan kelas beasiswa unggulan), serta jumlah mahasiswa harus diperhitungkan untuk menentukan jumlah kelas yang ada untuk setiap matakuliah.

Pembuatan jadwal kuliah secara manual kerap kali memakan waktu yang cukup lama, hal ini dikarenakan adanya beberapa faktor yang harus diperhatikan, yakni:

1. Adanya matakuliah yang tidak boleh dijadwalkan pada saat yang bersamaan.

2. Adanya keinginan dosen untuk mengajar pada waktu-waktu tertentu. 3. Adanya keterbatasan akan waktu dan ruang kelas.

4. Adanya pembagian jenis kelas mahasiswa dan tipe ruang kelas. 5. Adanya dosen yang mengajar lebih dari 1 matakuliah pada semester

yang sama.

(15)

jadwal yang merata bagi mahasiswa setiap harinya (untuk reguler yang seangkatan).

Sistem penjadwalan yang ada pada saat ini di program studi Sistem Informasi UNIKOM masih merupakan system penjadwalan yang semi manual. Maksudnya semi manual adalah proses pemasangan jadwal kuliah untuk ruang kuliah, dosen, kelas, dan mata kuliah masih dilakukan secara manual, tetapi ada applikasi yang digunakan untuk melakukan pengecekan akan mata kuliah yang berbentrokan, tetapi untuk perbaikannya masih juga dilakukan secara manual.

Penanganan sistem penjadwalan yang ada pada proses bisnis berjalan ini kerap menimbulkan masalah, baik bagi penjadwal, dosen, maupun mahasiswa sendiri.

Penjadwal membutuhkan waktu yang lama untuk membuat jadwal kuliah yang akan dipakai karena harus menyesuaikan waktu yang tersedia untuk dosen, ruang kuliah, maupun kelas tertentu. Syarat-syarat yang ada dalam penjadwalan juga membuat penjadwal harus teliti agar tidak ada jadwal kuliah dosen atau kelas yang berbentrokan.

(16)

Dalam pemecahan masalah ini dan melakukan optimasi, penulis menggunakan pendekatan algoritma yang diharapkan dapat mengatasi konflik-konflik yang mungkin terjadi. Dengan adanya perangkat lunak ini, diharapkan pembuatan jadwal kuliah di prodi Sistem Informasi UNIKOM akan lebih cepat dan dapat melayani kebutuhan dosen dan mahasiswa.

1.2 Identifikasi Masalah

Dari latar belakang yang dipaparkan sebelumnya, dapat ditarik identifikasi masalah sebagai berikut:

1. Pembuatan jadwal yang dilakukan masih secara manual tetapi ada applikasi yang berfungsi untuk melakukan pengecekan jadwal agar tidak berbentrokan. 2. Penjadwal sering kesulitan dalam membuat jadwal dari dosen karena adanya

dosen yang hanya bisa mengajar pada waktu-waktu tertentu atau mengajar lebih dari satu mata kuliah.

3. Penjadwal sering kesuliatan dalam penentuan ruang kelas karena adanya ruangan-ruangan tertentu yang hanya tersedia pada waktu tertentu.

4. Penjadwal sering kesulitan dalam pemasangan dosen, ruang kuliah, dan mata kuliah terkhusus pada kelas beasiswa unggulan dan international program. 5. Pembuatan jadwal kuliah yang ada kerap memakan waktu yang cukup lama

karena system yang ada hanya melakukan pengecekan bentrokan, bukan memperbaiki atau menyusun jadwal kuliah.

(17)

terlambat mendapatkan jadwal sehingga pada minggu-minggu awal sering ada dosen yang tidak masuk.

1.3 Perumusan Masalah

Berdasarkan uraian di atas, maka didapat rumusan masalah, yakni :

1. Bagaimana membuat dan merancang sebuah perangkat lunak yang mampu mengautomasi proses penjadwalan kuliah yang ada di program studi sistem informasi UNIKOM

2. Bagaimana menangani dan meminimalkan jadwal yang berbentrokan.

3. Bagaimana mengatasi kebutuhan waktu yang lama yang diperlukan untuk membuat jadwal kuliah.

1.4 Maksud Penelitian

Maksud dari penelitian ini adalah untuk membuat sebuah algoritma yang kemudian akan diterapkan pada perangkat lunak agar dapat mengatasi permasalahan yang ada pada proses penjadwalan kuliah yang ada di program studi sistem informasi UNIKOM.

1.5 Tujuan Penelitian

(18)

untuk penganganan penjadwalan kuliah dan waktu yang dibutuhkan untuk membuat jadwal kuliah akan dapat dioptimalisasi.

1.6 Kegunaan / Manfaat Penelitian

1.6.1 Manfaat Akademis

1. Bagi Pengembangan Ilmu

Hasil penelitian ini diharapkan menjadi pembandingan antara ilmu menejemen (teori) dengan keadaan yang terjadi langsung di lapangan (praktek). Sehingga dengan adanya perbandingan tersebut akan lebih memajukan ilmu Manajemen Informatika yang sudah ada untuk ditahapkan pada dunia nyata dan dapat mengutungkan berbagai pihak. 2. Bagi Peneliti Lain

Hasil penelitian ini diharapkan dapat memberikan sumbangan pemikiran kepada peneliti lain atau para akademis yang akan mengambil skripsi atau tugas akhir dalam kajian yang sama sekaligus sebagai referensi di dalam penulisan.

3. Bagi Penulis

Dengan penelitian ini, penulis berharap untuk dapat lebih mengasah ilmu pemrograman yang dimiliki dan dapat lebih mengerti cara mengatasi proses optimasi dalam penjadwalan kuliah.

1.6.2 Manfaat Praktis

(19)

mengajar. Dengan perangkat lunak yang akan dibangun diharapkan proses pembuatan jadwal kuliah pada program studi Sistem Informasi UNIKOM akan dapat dlakukan lebih cepat dan sesuai dengan kebutuhan yang ada tanpa adanya bentrok.

1.7 Batasan Penelitian

Agar penelitan ini lebih terarah maka penulis menentukan batasan-batasan permasalahan, adapun batasan-batasan masalah yang ditentukan dalam penelitian yaitu:

1. Setiap dosen bersedia mengajar di ruang manapun yang tersedia dan pada waktu yang telah ditentukan (pada pengisian data dosen di awal ditentukan kapan dosen yang bersangkutan tidak dapat mengajar). 2. Setiap mahasiswa (regular, karyawan dan beasiswa unggulan)

bersedia menempati ruang dan waktu yang tersedia (jadwal kuliah tidak ada yang bentrok).

3. Adanya batas jam kuliah dalam satu hari dan batas hari dalam seminggu.

4. Penentuan jenis matakuliah (Auditorium, laboratorium hardware, laboratorium software, atau kuliah umum) ditentukan di awal.

(20)

1.8 Lokasi dan Waktu Penelitian

Dalam penelitian ini, penulis mengambil lokasi di Universitas Komputer Indonesia (UNIKOM) pada program studi (prodi) Sistem Informasi (SI). Waktu penelitian dilakukan pada September 2012 s/d Desember 2012.

Tabel 1. 1 Tabel kegiatan dan waktu penelitian

KEGIATAN

Tahun 2012

SEPTEMBER OKTOBER NOVEMBER DESEMBER

MINGGU 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 Pengumpulan Data

Observasi Wawancara 2 Analisis sistem

Analisis Analisis solusi 3 Perancangan Sistem

(21)

BAB II

LANDASAN TEORI

2.1 Algoritma

Dalam matematika dan ilmu komputer, algoritma merupakan langkah-langkah dalam penyelesaian suatu perhitungan. Algoritma umumnya digunakan dalam proses perhitungan, pemrosesan data, dan pengautomasian. Lebih jelasnya, algoritma merupakan metode yang efektif yang ditujukkan pada daftar yang terbatas dari kumpulan perintah yang telah didefinisikan untuk menghitung suatu fungsi. Dimulai dari nilai awal, kemudian kumpulan perintah yang pada saat dieksekusi akan memproses kondisi-kondisi yang telah ditetapkan hingga menghasilkan output dan kemudian menentukan kondisi akhir.

Dalam penyelesaian masalah, ada kriteria-kriteria tertentu pada kondisi awal yang harus dipenuhi sebelum mengeksekusi algoritma. Algoritma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria.

Pada sistem komputer, algoritma merupakan gambaran langsung dari logika yang dituliskan oleh pembangun perangkat lunak agar lebih efektif dalam pencapaian target perangkat lunak tersebut, agar dapat memperoleh hasil keluaran dari masukan yang diberikan (terkadang null).

(22)

kerumitan yang rendah, sebaliknya algoritma yang membutuhkan waktu yang lama dalam penyelesaian masalah memiliki tingkat kompleksitas yang tinggi.

2.1.1 Jenis-jenis Algoritma

Terdapat beberapa klasifikasi algoritma yang dibagi berdasarkan alasan tersendiri. Salah satu cara dalam melakukan pengklasifikasian tersebut adalah berdasarkan paradigma dan metode yang digunakan dalam perancangan algoritma tersebut. Beberapa paradigma yang digunakan untuk menyusun suatu algoritma antara lain:

1. Divide and Conquer, merupakan paradigma untuk membagi suatu permasalahan yang besar menjadi permasalahan-permasalahan yang kecil. Pembagian masalah ini dilakukan secara terus-menerus sampai ditemukan bagian masalah yang kecil dan mudah untuk dipecahkan.

2. Dynamicprogramming, paradigma pemrograman dinamik akan sesuai jika digunakan pada suatu masalah yang mengandung sub-struktur yang optimal dan mengandung beberapa bagian permasalahan yang tumpang tindih. Paradigma ini seklias terlihat mirip dengan paradigma divide and conquer, sama-sama mencoba untuk mebagi permasalahan menjadi sub permasalahan yang lebih kecil, tapi secara intrinsic ada perbedaan dari karakter permasalahan yang dihadapi.

(23)

4. Search and enumeration, merupakan paradigma pemodelan yang memberikan aturan tertentu dalam pemecahan masalah dan optimalisasi.

2.1.2 Analisis Algoritma

Dalam penganalisisan suatu algoritma kita harus memperhatikan beberapa hal, seperti:

1. Kebenaran (Correctness)

Dalam pembuktian kebenaran suatu algoritma, hasil akhir dari algoritma tersebut haruslah diperiksa apakah sudah sesuai dengan kondisi-kondisi yang telah diberikan pada awal masukan. Untuk melakukan pemeriksaan suatu algoritma yang kompleks, kita dapat membagi algoritma tersebut menjadi beberapa modul kecil, sehingga jika modul-kecil tersebut benar maka seluruh program akan benar.

2. Jumlah Operasi yang Dilakukan (Amount of Work Done)

(24)

3. Analisis Kemungkinan Terburuk (Worst Case)

Analisis worst case merupakan analisis yang digunakan untuk melihat tingkat efektifitas suatu algoritma dalam menyelesaikan masalah-masalah yang masukannya merupakan masukan yang terkadang tidak perlu dihitung atau cara mengatasi pada saat kemungkinan masukan salah. 4. Optimal (Optimality)

Untuk menganalisis suatu algoritma, biasanya selalu menggunakan kelas algoritma dan ukuran kompleksitas, misalnya, jumlah operasi dasar yang dilakukan. Sebuah algoritma disebut optimal (untuk worst case) jika tidak ada algoritma yang dapat melakukan operasi dasar yang lebih sedikit (untuk worst case).

5. Ikatan Terendah (Lower Bound)

Untuk membuktikan bahwa suatu algoritma adalah optimal, tidak diperlukan menganalisis setiap algoritma. Dengan membuktikan teorema-teorema yang menentukan lower bound pada jumlah operasi yang diperlukan untuk menyelesaikan masalah, maka algoritma yang dapat melakukan jumlah operasi tersebut disebut optimal.

2.1.3 Mekanisme Pelaksanaan Algoritma oleh Pemroses

(25)

Kata “algoritma” dan “program” seringkali dipertukarkan dalam

penggunaannya. Misalnya ada orang yang berkata seperti ini: “program

pengurutan data menggunakan algoritma selection sort”. Atau pertanyaan seperti ini: “bagaimana algoritma dan program menggambarkan grafik tersebut?”. Jika

Anda sudah memahami pengertian algoritma yang sudah disebutkan sebelum ini, Anda dapat membedakan arti kata algoritma dan program. Algoritma adalah langkah-langkah penyelesaikan masalah, sedangkan program adalah realisasi algoritma dalam bahasa pemrograman.

Program ditulis dalam salah satu bahasa pemrograman dan kegiatan membuat program disebut pemrograman (programming). Orang yang menulis program disebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi. Jadi, program tersusun atas sederetan instruksi. Bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan komputer.

Secara garis besar komputer tersusun atas empat komponen utama yaitu, piranti masukan, piranti keluaran, unit pemroses utama, dan memori. Unit pemroses utama (Central Processing Unit – CPU)adalah “otak” komputer, yang berfungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca, dan operasi menulis. Memori adalah komponen yang berfungsi menyimpan atau mengingatingat.

(26)

oleh operasi-operasi). Piranti masukan dan keluaran (I/Odevices) adalah alat yang memasukkan data atau program ke dalam memori, dan alat yang digunakan komputer untuk mengkomunikasikan hasil-hasil aktivitasnya. Contoh piranti masukan antara lain, papan kunci (keyboard), pemindai (scanner), dan cakram (disk). Contoh piranti keluaran adalah, layar peraga (monitor), pencetak (printer), dan cakram.

Gambar 2. 1 Komponen Utama Komputer

(Sumber: http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch01s04.html)

(27)

yang memerlukannya tadi. Bila proses menghasilkan keluaran atau informasi, keluaran disimpan ke dalam memori, lalu memori menuliskan keluaran tadi ke piranti keluaran (misalnya dengan menampilkannya di layar monitor).

2.2 Bahasa Pemrograman

Bahasa program merupakan suatu wahana untuk menuangkan pikiran manusia yang dapat dimengerti oleh mesin komputer sehingga bernilai guna. Suatu bahasa program akan terikat aturan dari paradigma bahasa. Ada berbagai macam paradigma bahasa : Prosedural, Fungsional, Deklaratif, Object Oriented, Konkuren. Adapun konsep-konsep dasar dalam pemograman adalah sebagai berikut :

1. Simulasi , sensibilitas terhadap masalah dan kemungkinan solusi. Kegiatan dilakukan di kelas, melalui permainan. Contoh : Mengurutkan nama setiap mahasiswa yang ada di kelas dimulai dari huruf A sampai Z. Hal ini dapat dilakukan secara komputerisasi maupun manual.

2. Analisis masalah secara lebih formal dan membuat spesifikasi dan algoritma dalam notasi yang ditetapkan. Mahasiswa harus menuliskan solusi algoritmiknya dalam notasi standar di kelas. Penulisan notasi algoritmik bertujuan untuk menyeragamkan pemahaman tentang algoritma program yang terbebas dari sintak (aturan) penulisan bahasa program

(28)

4. Debugging dan menguji coba program. Hal ini bertujuan untuk mendapatkan program yang benar. Program dikatakan benar jika terbebas dari salah lojik dan sintak bahasa. Secara ideal mahasiswa hanya diberi kesempatan untuk me-run program sebanyak 2 kali : pertama untuk membersihkan program dari kesalahan sintak dan kedua untuk mendapatkan program benar. Pada tahap ini diharapkan tidak terjadi kesalahan lojik jika analisa benar

5. Mengamati peristiwa eksekusi, perlu dilakukan untuk meningkatkan kepercayaan bahwa jika analisa benar maka sisa pekerjaan menjadi mudah. Pada pemrograman prosedural, aspek ini penting untuk memahami fenomena eksekusi dan perubahaan nilai suatu struktur data.

6. Membaca program : orang akan dapat menulis dengan baik kalau sering membaca. Hal ini juga berlaku dalam memprogram. Kegiatan yang dapat dilakukan di kelas adalah dengan saling tukar menukar teks algoritma, dan saling mengkritik algoritma teman. Mahasiswa harus berlatih sendiri pada kegiatan belajar bersama.

(29)

2.3 Beda Algoritma dan Program

Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma. Program ditulis dengan menggunakan bahasa pemrograman. Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa :

Program = Algoritma + Bahasa (Struktur Data)

Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya.

Pembuatan algoritma mempunyai banyak keuntungan di antaranya :

1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya.

2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.

3. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena algoritmanya sama.

(30)

1. Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dan dipahami.

2. Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasi algoritmik.

3. Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengan notasi bahasa pemrograman secara umum.

4. Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam aturan tata bahasanya dan spesifikasi mesin yang menjalannya.

5. Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikan suatu permasalahan ke dalam bahasa pemrograman. 6. Algoritma merupakan hasil pemikiran konseptual, supaya dapat

(31)

notasi bahasa pemrograman. Ada beberapa hal yang harus diperhatikan pada translasi tersebut, yaitu :

a. Pendeklarasian variabel

Untuk mengetahui dibutuhkannya pendeklarasian variabel dalam penggunaan bahasa pemrograman apabila tidak semua bahasa pemrograman membutuhkannya.

b. Pemilihan tipe data

Apabila bahasa pemrograman yang akan digunakan membutuhkan pendeklarasian variabel maka perlu hal ini dipertimbangkan pada saat pemilihan tipe data.

c. Pemakaian instruksi-instruksi

Beberapa instruksi mempunyai kegunaan yang sama tetapi masing-masing memiliki kelebihan dan kekurangan yang berbeda.

d. Aturan sintaksis

(32)

e. Tampilan hasil

Pada saat membuat algoritma kita tidak memikirkan tampilan hasil yang akan disajikan. Hal-hal teknis ini diperhatikan ketika mengkonversikannya menjadi program.

f. Cara pengoperasian compiler atau interpreter.

Bahasa pemrograman yang digunakan termasuk dalam kelompok compiler atau interpreter.

2.4 Penjadwalan Kuliah

(33)

Dalam pengaturan jadwal kuliah ini, para staff Tata Usaha (Sekretariat Jurusan) harus melalui beberapa tahapan, seperti melakukan pendataan jumlah matakuliah dan sksnya, pendataan kurikulum, pendataan pengajar, kelas-kelas yang disediakan, serta syarat dan prioritas-prioritas yang dipakai. Setelah itu staff Tata Usaha harus mengatur dan melakukan pemasangan untuk setiap matakuliah, dosen, ruangan, kelas, dan waktu ke dalam jadwal kuliah. Kemudian tahap terakhir adalah memeriksa kembali dan mengevaluasi prioritas-prioritas dan syarat-syarat yang ada, apakah semua sudah dipenuhi atau belum.

Karena itu kerap kali proses penjadwalan kuliah untuk suatu perguruan tinggi memakan waktu yang sangat lama sehingga mahasiswa kesulitan dalam menentukan pengambilan kelas untuk mata kuliah tertentu (untuk hal di mana mahasiswa dapat memilih kelas, misalkan mahasiswa konversi dan mahasiswa yang ingin mengambil matakuliah atas dengan sks lebih).

Untuk mengatasi permasalahan yang ada, terutama masalah waktu yang dibutuhkan, sejumlah algoritma telah dikembangkan untuk menyelesaikan dan menyusun data penjadwalan kuliah ini, salah satunya adalah algoritma yang digunakan penulis dalam karya tulis ini, yaitu Algoritma Genetika.

2.5 Perangkat Lunak Pendukung Perancangan Aplikasi

(34)

sebagai editor database, serta netbeans sebagai platform framework dan IDE pembangunan aplikasi.

2.5.1 Java

Java merupakan bahasa pemrograman yang awalnya dikembangkan oleh James Gosling di Sun Microsystem. James Gosling, Mike Sheridan, dan Patrick Naughton memulai proyek untuk bahasa pemrograman Java awalnya adalah untuk industry televise interaktif, namun bahasa Oak (nama awal dari Java) terlalu maju untuk teknologi televisi. Bahasa pemrograman ini menggunakan bahasa gabungan yang mirip dengan bahasa C dan C++.

Sun Microsystem merilis implementasi public pertama untuk Java 1.0

pada tahun 1991. Prinsip perilisan ini adalah “Write Once, Run Anywhere”.

(35)

Ada lima target utama dari bahasa Java dalam pembangunan untuk setiap aplikasi, yakni:

1. Simpel, berbasis objek dan umum 2. Kuat dan aman

3. Memiliki arsitektur yang netral dan portable 4. Dieksekusi dengan performa kinerja yang tinggi 5. Harus bias ditafsirkan, terulir, dan dinamis

2.5.2 Microsoft Office Access

Microsoft Access (atau Microsoft Office Access) adalah sebuah program aplikasi basis data komputer relasional yang ditujukan untuk kalangan rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna.

(36)

pemrograman berorientasi objek, tetapi tidak dapat digolongkan ke dalam perangkat bantu pemrograman berorientasi objek.

2.5.3 Netbeans

NetBeans awalnya dibangun pada tahun 1996 sebagai Xelfi (untuk pemrograman Delphi) oleh seorang mahasiswa dari Charles University di Paraguai. Pada tahun 1997, Roman Stanek membangun sebuah perusahaan dan merilis versi komersial dari NetBeans hingga akhirnya dibeli oleh Sun MicroSystem pada 1999. Hingga saat ini platform NetBeans telah banyak berkembang di bawah SunMicrosystem.

Netbeans merupakan platform framework dan IDE (integrated development environtment) yang digunakan untuk pengembangan aplikasi desktop yang menggunakan bahasa Java, dan beberapa bahasa lain, seperti Groovy, C, C++ dan banyak lagi.

Netbeans IDE dibangun menggunakan bahasa Java dan dapat dijalankan pada Windows, OS X, Linux, Solaris dan sistem operasi lain yang mendukung JVM. IDE NetBeans merupakan alat pengembangan aplikasi yang terintegrasi. NetBeans IDE mendukung pengembangan program yang menggunakan bahasa Java dari semua versi (Java SE, Java ME, Java EE).

(37)

yang dapat digunakan ulang (reusable) untuk mempermudah pembangunan program menggunakan bahasa Java.

Platform menyediakan layanan yang reusable pada aplikasi desktop, yang mempermudah pembangun untuk fokus pada spesifikasi logik dari aplikasi. Fungsi yang disediakan dari platform neh antara lain:

1. User Interface Management (menu dan toolbars) 2. User Setting Management (menangani pengaturan)

3. Storage Management (menyimpan dan membuka berbagai jenis data) 4. Window Management

5. Wizard Framework (mendukung tahapan berdasarkan langkah-langkah)

(38)

BAB III

OBJEK DAN METODE PENELITIAN

3.1 Objek Penelitian

Objek penelitian ini berisikan tentang gambaran tempat penulis melakukan penelitian, diantaranya tentang sejarah, struktur organisasi dan deskripsi pekerjaan pada Program Studi Sistem Informasi UNIKOM.

3.1.1 Sejarah Singkat Perusahaan

Universitas Komputer Indonesia (UNIKOM) secara resmi berdiri pada hari Selasa, tanggal 8 Agustus 2000 berdasarkan Surat Keputusan Menteri Pendidikan Nasional nomor 126/D/0/2000.

Awalnya dimulai pada bulan Juli tahun 1994 ketika didirikan Lembaga Pendidikan Komputer Indonesia Jerman, disingkat LPKIG, bertempat di jalan Dipati Ukur 102 Bandung . Dengan 1 ruang kelas berkapasitas 50 orang dan 1 laboratorium komputer dengan 25 unit komputer, Lembaga ini membuka program pendidikan 1 tahun dengan 5 program studi yaitu Ahli Komputer Aplikasi Bisnis, Ahli Komputer Keuangan & Perbankan, Ahli Komputer Akuntansi & Perpajakan, Ahli Komputer Manajemen & Pemasaran dan Sekretaris Eksekutif. Jumlah peserta pendidikan pada tahun pertama ini sebanyak 233 siswa.

(39)

dibuka program studi baru, meliputi : Ahli Komputer Teknik Informatika, Ahli Komputer Manajemen Informatika dan Sekretaris Eksekutif. Ruang kelas ditambah menjadi 2 buah dan laboratorium komputer menjadi 2 buah dengan jumlah siswa sebanyak 457 orang.

Pada tahun ketiga, 1996, dilakukan penambahan gedung kuliah baru bertempat di jalan Dipati Ukur 116 (gedung FISIP sekarang), sekaligus pemindahan pusat administrasi dan perkantoran. Digedung baru ini dilakukan penambahan 1(satu) Lab. Komputer, 5(lima) Ruang Kuliah, Ruang Dosen dan Ruang Kemahasiswaan. Jumlah siswa dari tahun 1996 hingga tahun 1998 bertambah dari 632 orang menjadi 1184 orang.

Pada tahun kelima, 1998, dimulai pembangunan Kampus baru (Gedung Rektorat /Kampus-1 sekarang) berlantai 6(enam) di jalan Dipati Ukur 114. Pembangunan Kampus baru ini dapat diselesaikan pada bulan Agustus 1999, sehingga pada awal perkuliahan bulan September 1999 telah dapat digunakan.

Mencermati dinamika peserta didik dan pengembangan Institusi kedepan, pada tanggal 24 Desember 1998 dibentuklah Yayasan Science dan Teknologi dan dilanjutkan dengan pengajuan pendirian STIMIK IGI dan STIE IGI ke DIKTI.

(40)

Pada bulan Agustus 1999 STIMIK IGI diresmikan dengan keluarnya SK Mendiknas no. 143/D/O/1999 dengan 5 program studi : Teknik Informatika S1, Manajemen Informatika D3, Teknik Komputer D3, Komputerisasi Akuntansi D3 serta Teknik Informatika D3.

Agar Sistem Pendidikan lebih Efisien, Efektif, Produktif dengan Struktur Organisasi yang lebih baik, enam bulan kemudian dilakukan usulan ke DIKTI untuk melakukan Merger kedua Sekolah Tinggi diatas menjadi Universitas.

Pada hari Selasa, tgl. 8 Agustus 2000 keluarlah SK MENDIKNAS no. 126/D/O/2000 atas Universitas Komputer Indonesia yang disingkat dengan nama UNIKOM.Pada SK tersebut sekaligus diijinkan dibukanya 11 program studi baru : Teknik Komputer S1, Manajemen Informatika S1, Teknik Industri S1, Teknik Arsitektur S1, Perencanaan Wilayah dan Kota S1, Ilmu Hukum S1, Ilmu Komunikasi S1, Ilmu Pemerintahan S1, Desain Interior D3, Desain Komunikasi Visual S1 dan Desain Komunikasi Visual D3.

(41)

3.1.2 Visi dan Misi

1. Visi Perusahaan

Visi dari Program Studi Sistem Informasi UNIKOM adalah menjadikan Program Studi yang berkompeten, unggul, terdepan dalam bidang Teknologi dan sistem informasi serta menghasilkan lulusan yang berprestasi, berjiwa entrepreneur dan mampu berkompetisi di era global. 2. Misi Perusahaan

Misi dari Program Studi Sistem Informasi UNIKOM adalah:

a. Menyelenggarakan pendidikan akademik dan pengajaran profesional dengan memberikan pengetahuan teoritis maupun praktis yang efektif dan efisien dengan pemanfaatan teknologi informasi agar menghasilkan lulusan yang kompeten di bidang Sistem Informasi dan mampu mengaplikasikannya sesuai dengan kebutuhan pengguna (users), serta mampu menciptakan lapangan kerja sendiri secara tangguh dan mandiri.

b. Meningkatkan kualitas keterampilan mahasiswa untuk jaminan standar kualitas lulusan yang memiliki dedikasi, bermoral, berintegrasi, berwawasan dan mampu beradaptasi dengan perubahan lingkungan baik nasional maupun global.

(42)

d. Melaksanakan kolaborasi dengan berbagai pihak dalam bidang pendidikan, penelitian dan pengabdian masyarakat di tingkat nasional dan internasional secara efektif, efisien dan berkesinambungan untuk pengembangan dan keberlangsungan pendidikan.

e. Menjadikan tempat Uji Kompetensi dalam bidang Sistem Informasi dan teknologi Informasi.

3.1.3 Struktur Organisasi

Struktur organisasi mempunyai arti penting karena struktur organisasi merupakan bentuk atau pola formal kegiatan dan hubungan antara berbagai bagian-bagian didalam suatu peusahaan. Dengan mengetahui struktur organisasi dapat diperoleh gambaran tentang bagian-bagian yang ada di dalamnya, apa peranan masing-masing bagian tersebut dan wewenang serta tanggung jawabnya dalam melaksanakan tugasnya.

Gambar 3. 1 Struktur Organisasi Program Studi Sistem Informasi Unikom

(43)

3.1.4 Deskripsi Tugas

Deskripsi tugas atau job description adalah suatu rincian yang menunjukan posisi, tanggung jawab, wewenang, fungsi dan tugas tugas yang harus dilakukan. Deskripsi tugas perlu dibuat agar masing – masing bagian mengerti akan kedudukan didalam organisasi. Adapun uraian jabatan pada Program Studi Sistem Informasi UNIKOM, yaitu :

a. Ketua Program Studi

Bertanggung jawab pada program yang berjalan untuk program studi yang dikepalai dan mengambil keputusan-keputusan pada program studi yang dikepalai.

b. Sekretaris Program Studi

Membantu ketua program studi dalam menjalankan tugasnya c. Sekretariat Program Studi

Mengurus segala keperluan administrasi perkuliahan pada program studinya d. Dosen Wali

Bertanggung jawab untuk setiap mahasiswa walinya dan membantu mahasiswa walinya yang dalam mengurus administrasi perkuliahan

e. Dosen Pembina Kemahasiswaan

Bertanggung jawab untuk membina organisasi-organisasi kemahasiswaan yang ada pada program studi

f. Dosen Koordinator Situs

(44)

g. Dosen Koordinator Tugas Akhir

Bertanggung jawab untuk mengkoordinasi kegiatan Tugas Akhir pada program studi

h. Staff Dosen

Bertanggung jawab untuk mengajarkan mata kuliah sesuai dengan jadwal yang ditentukan

3.2 Metode Penelitian

Metode penelitian yang digunakan adalah metode deskriptif dengan jenis penelitian studi kasus. Metode deskriptif adalah suatu metode dalam meneliti status kelompok manusia, suatu objek, suatu set kondisi, suatu sistem pemikiran ataupun suatu peristiwa pada masa sekarang.

3.2.1 Desain Penelitian

Desain penelitian merupakan perpaduan antara keputusan dan revisi dimana suatu keputusan yang diambil selalu diiringi dengan pengaruh adanya keseimbangan dalam proses.

3.2.2 Jenis Dan Metode Pengumpulan Data

Pengumpulan data terdapat dua sumber data yaitu sumber data primer dan sumber data sekunder.

3.2.2.1Sumber Data Primer (Wawancara, Observasi, Kuisioner)

(45)

1. Observasi

Observasi yaitu pengamatan dengan cara pemusatan terhadap proses pembuatan jadwal kuliah, baik dalam penentuan prioritas-prioritas dalam pembuatan jadwal kuliah serta syarat-syarat tertentu yang harus dipenuhi pada jadwal kuliah yang ada pada UNIKOM, terkhusus Prodi Sistem Informasi.

2. Wawancara

Wawancara dengan ketua Prodi dan juga sekretariat jurusan untuk pengambilan data perihal dalam pembuatan jadwal kuliah pada Prodi Sistem Informasi di UNIKOM.

3.2.2.2Sumber Data Sekunder (dokumentasi)

Dalam pengambilan data sekunder ini penulis mengambil data-data yang berhubungan dengan proses penjadwalan kuliah di Prodi Sistem Informasi di UNIKOM serta literature atau bahan lain untuk dijadikan bahan dalam penyusunan skripsi.

Dokumentasi yang dibutuhkan antara lain:

1. Jadwal kuliah pada semester-semester sebelumnya

2. Data mengenai syarat dan prioritas yang harus ada pada penyusunan jadwal kuliah di Prodi Sistem Informasi UNIKOM.

(46)

4. Literatur dan artikel yang dibutuhkan terkait dalam pengembangan aplikasi penjadwalan kuliah pada Program Studi Sistem Informasi UNIKOM.

3.2.3 Metode Pendekatan dan Pengembangan Sistem

Metode pendekatan dan pengembangan sitem merupakan sistematis dari proses penelitian yang dilakukan guna menyelesaikan permasalahan yang ada pada awal perencanaan penelitian hingga tercapainya penelitian tersebut dan pengembangan sistem yang diinginkan.

3.2.3.1Metode Pendekatan Sistem

Aplikasi yang akan dibangun merupakan aplikasi intern, digunakan untuk membuat jadwal kuliah pada Prodi Sistem Informasi di UNIKOM, di mana pengguna yang akan memakai applikasi tersebut adalah satu jenis pengguna (ditujukan untuk staff Tata Usaha atau Sekretariat Jurusan).

(47)

nantinya dapat dibangun sesuai dengan kebutuhan serta dapat digunakan pada prakteknya.

Metode prototype merupakan metode pengembangan perangkat lunak yang dirancang agar dapat menerima perubahan-perubahan dalam rangka menyempurnakan prototype yang sudah ada hingga akhirnya perangkat lunak tersebut dapat memenuhi kebutuhan pengguna dan siap untuk digunakan. Berikut merupakan gambaran metode pendekatan yang digunakan oleh penulis:

(48)

Setiap metode pengembangan perangkat lunak pastilah memiliki kelebihan serta kekurangan masing-masing. Kelebihan dan kekurangan metode prototype antara lain:

1. Kelebihan

a. Pendefinisian kebutuhan dari pengguna akan lebih jelas karena pengguna terlibat secara langsung dalam proses pengembangan.

b. Meminimalisasi kesalahan yang mungkin terjadi, karena pada setiap versi prototype yang diberikan, pengguna dapat langsung mendeteksi kesalahan yang ada.

c. Pengguna dapat meminta perubahan-perubahan untuk penyempurnaan aplikasi.

d. Mempersingkat waktu yang dibutuhkan dalam pembangunan aplikasi secara keseluruhan.

e. Penghematan biaya jika dibandingkan dengan metodologi pengembangan secara tradisional.

2. Kekurangan

a. Perangkat lunak yang dibangun baru akan memberikan hasil yang optimal apabila pengguna sungguh-sungguh meluangkan waktu dalam pengembangan perangkat lunak.

b. Pengembang yang terlalu terkonsentrasi pada pengembangan versi prototype sering mengakibatkan terbengkalainya pendokumentasian. c. Kekurangan waktu pengembangan dapat menyebabkan sistem yang

(49)

d. Proses pengulangan pengembangan (version) dapat memberikan respon kurang baik dari pengguna serta mengakibatkan pengembangan memakan waktu yang lama.

e. Apabila pengguna selalu memiliki perubahan permintaan atau penyempurnaan, ada kemungkinan prototype tidak akan pernah mendapat finalisasi.

Berikut merupakan tahapan-tahapan yang dilakukan penulis dalam rangka mengembangkan perangkat lunak yang menggunakan mekanisme pengembangan aplikasi dengan metode prototype:

a. Penulis mengidentifikasi kebutuhan dari pengguna, agar penulis dapat melakukan perancangan mengenai perangkat lunak yang akan dibangun agar sesuai dengan yang harapan dari pengguna. Sebelum memulai perancangan, penulis menganalisis kebutuhan dari pengguna dengan cara melakukan pengumpulan data dengan observasi dan wawancara, serta membaca beberapa literatur mengenai algoritma yang akan digunakan. b. Pada tahap kedua, penulis membuat prototype pertama untuk diperlihatkan

pada pengguna model agar dapat dilakukan pengembangan selanjutnya. c. Pada tahap ketiga, penulis melakukan uji coba perangkat lunak untuk

dapat memastikan bahwa perangkat lunak dapat dengan baik dan benar serta sesuai dengan kebutuhan dari pengguna.

(50)

pengembangan selanjutnya atau perbaikan, maka tahapan akan kembali ke tahap ke dua, yakni membuat prototype berikutnya untuk kemudian diuji lagi.

e. Pada tahap kelima (apabila perangkat lunak sudah sesuai dengan kebutuhan pengguna), penulis akan memberikan versi akhir pada pengguna agar dapat digunakan.

3.2.3.2Alat Bantu Analisis dan Perancangan

Sesuai dengan pendekatan pengembangan yang diambil penulis, pendekatan berbasis objek, maka penulis akan menggambarkan karakteristik dari perangkat lunak yang akan dibangun dengan menggunakan pemodelan Unified Modelling Language (UML). UML merupakan pemodelan perangkat lunak yang digunakan untuk perangkat lunak yang dibangun menggunakan pendekatan berbasis objek. Keunggulan dari UML antara lain:

(51)

2. Understandibility. Dengan metodologi ini kode yang dihasilkan dapat diorganisasi kedalam kelas-kelas yang menghubungkan masalah sesungguhnya sehingga lebih mudah dipahami siapa pun juga.

3. Stability. Kode program yang dihasilkan relatif stabil sepanjang waktu

sebab sangat mendekati permasalahan sesungguhnya dilapangan.

4. Reusability. Dengan metodologi berorientasi objek, dimungkinkan

penggunaan ulang kode, sehingga pada gilirannyaakan sangat mempercepat waktu pengembangan perangkat lunak.

Sebagaimana yang telah dijelaskan diatas tentang UML, bahwa untuk mendapatkan banyak pandangan terhadap sistem informasi yang akan dibangun, UML menyediakan beberapa alat bantu diagram visual yang menunjukan berbagai aspek dalam sistem. Ada beberapa alat bantu diagram yang disediakan dalam UML antara lain :

1. Use Case Diagram

Use case mendepkripsikan interaksi tipikal antara para pengguna sistem dengan sistem itu sendiri, dengan member sebuah narasi tentang bagaimana sistem tersebut digunakan. Use Case Diagram menampilkan actor mana yang menggunakan Use Case mana, Use Case mana yang memasukan Use Case lain dan hubungan antara actor dan Use Case. 2. Activity Diagram

(52)

berupa pilihan maupun paralel. Diagram ini juga berguna untuk menganalisis sebuah use case dengan menggambarkan aksi-aksi yang diperlukan dan kapan aksi-aksi tersebut dijalankan. Selain itu, activity diagram dapat menjelaskan urutan algoritma yang kompleks dan memodelkan sejumlah aplikasi dengan proses paralel.

3. Collaboration Diagram

Secara fungsional digram ini hampir mirip dengan sequence diagram. Collaboration diagram memfokuskan pada interaksi dan hubungan diantara sekumpulan objek yang berkolaborasi. Hubungan-hubungan tersebut memperlihatkan objek aktual dan relasi yang terjadi diantara mereka yang digambarkan dengan sebuah garis. Di atas garis terdapat alur pesan yang dikirim objek yang berhubungan tersebut.

4. Class Diagram

Class diagram mendepkripsikan jenis-jenis objek dalam sistem dan berbagai macam hubungan statis yang terdapat diantara mereka. Class diagram juga menunjukan property dan operasi sebuah class dan batasan-batasan yang terdapat dalam hubungan-hubungan objek tersebut.

5. Sequence Diagram

(53)

6. Component Diagram

Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan (dependency) di antaranya. Komponen piranti lunak adalah modul berisi code, baik berisi source code maupun binary code, baik library maupun executable, baik yang muncul pada compile time, link time, maupun run time. Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang lebih kecil. Komponen dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lain.

7. Deployment Diagram

Deployment/physical diagram menggambarkan detail bagaimana komponen di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal. Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.

3.2.4 Pengujian Software

(54)

Mekanisme yang dilakukan dalam proses pengujian ini umumnya merupakan tahapan akhir pada suatu pengembangan perangkat lunak guna menentukan apakah perangkat lunak tersebut sudah dapat dirilis atau belum, dan umumnya memiliki kemungkinan yang sangat tinggi dalam menemukan kesalahan pada perangkat lunak (terutama pada pengujian awal). Jenis pengujian perangkat lunak umumnya dibagi menjadi dua, yakni metode white box testing yang merupakan metode di mana perangkat lunak diuji berdasarkan alur algoritma yang ada pada penulisan program (membuka source code dari perangkat lunak) dan metode black box testing yakni metode diuji dengan mengikuti alur proses yang dijalankan oleh perangkat lunak secara fundamental tanpa memperhatikan logika dan penulisan algoritma pada internal perangkat lunak.

Pada karya ilmiah ini, penulis memilih untuk melakukan metode black box testing. Black box testing merupakan metode pengujian yang didasarkan pada proses dan spesifikasi dari perangkat lunak yang memiliki tujuan utama untuk menemukan :

1. Fungsi-fungsi yang salah atau hilang 2. Kesalahan interface

3. Kesalahan dalam struktur data atau akses database eksternal 4. Kesalahan performa

(55)

BAB IV

ANALISIS DAN PERANCANGAN SISTEM

4.1 Analisis Sistem Yang Sedang Berjalan

Kegiatan analisis sistem yang berjalan dilakukan dengan analisis yang berorientasi pada objek-objek yang diperlukan oleh sistem yang dirancang, dimaksudkan untuk menitik beratkan kepada fungsi sistem yang berjalan dengan tidak terlalu menitik beratkan kepada alur proses dari sistem. Selanjutnya hasil analisis ini digambarkan dan didokumentasikan dengan metodologi berorientasi objek melalui diagram use case, skenario use case dan aktifitas diagram. Pertimbangan penggunaan diagram ini karena dianggap diagram-diagram tersebut mewakili secara keseluruhan sistem yang berjalan dan dapat dimengerti oleh user.

4.1.1 Analisis Kebutuhan

Sebelum membuat suatu sistem, hendaknya melakukan analisis terlebih dahulu terhadap kebutuhan-kebutuhan apa saja yang diperlukan dengan menggunakan metode-metode yang telah ada.

4.1.1.1Proses Bisnis

(56)

Petugas

2 3

Lingkungan Penjadwalan Lingkungan Luar Penjadwalan

Dosen

4

1

Gambar 4. 1 Proses Bisnis sistem yang sedang berjalan Keterangan:

1. Dosen Mengisi data penawaran matakuliah dan menyerahkannya pada petugas penjadwalan kuliah.

2. Petugas memasukkan data jadwal kuliah sesuai dengan data penawaran matakuliah dari dosen.

3. Sistem melakukan pemeriksaan apakah data jadwal yang dimasukkan oleh penjadwal tidak ada yang mengalami bentrok. Jika jadwal ada yang bentrok maka sistem akan meminta petugas untuk memasukkan data jadwal kuliah kembali (proses no 2). Jika jadwal tidak ada yang bentrok maka sistem akan mencetak jadwal kuliah (proses no 4).

(57)

4.1.1.2Service Time

Sistem penjadwalan yang ada pada saat ini di program studi sistem informasi UNIKOM masih merupakan sistem penjadwalan yang semi manual. Maksudnya semi manual adalah proses pemasangan jadwal kuliah untuk ruang kuliah, dosen, kelas, dan mata kuliah masih dilakukan secara manual, tetapi ada applikasi yang digunakan untuk melakukan pengecekan akan mata kuliah yang berbentrokan, tetapi untuk perbaikannya masih juga dilakukan secara manual.

Proses yang dijalankan masihlah belum efisien dari segi waktu. Petugas harus memeriksa dan mencoba untuk membuat jadwal untuk setiap dosen, ruang, dan matakuliah agar tidak terjadi bentrok.

4.1.1.3Use Case Diagram

Use case diagram (diagram use case) adalah diagram yang menyajikan interaksi antara use case dan actor. Dimana actor dapat berupa orang, peralatan atau sistem lain yang berinteraksi dengan sistem yang sedang dibangun. Use case menggambarkan fungsionalitas sistem atau persyaratan – persyaratan yang harus dipenuhi sistem dari pandangan pemakai.

(58)

Petugas Penjadwal

Proses Penjadwalan

Gambar 4. 2 Use Case Sistem Penjadwalan yang sedang berjalan

4.1.1.4Skenario Use Case

Skenario Use Case digunakan untuk memudahkan dalam menganalisa skenario yang akan kita gunakan pada fase-fase selanjutnya dengan melakukan penilaian terhadap skenario tersebut. Adapun tahapan dari skenario use case pada sistem penjadwalan yang sedang berjalan adalah sebagai berikut:

Nama use case: Proses Penjadwalan

Tabel 4. 1 Skenario use case sistem yang sedang berjalan

Judul Proses Penjadwalan No. Use case UC-JADWAL-01

Deskripsi Use Case Aktor Mengisi data penjadwalan

Aktor Penjadwal

Trigger Aktor memasukkan data jadwal kuliah.

(59)

Skenario Normal

Aksi- Aktor Reaksi Sistem

1. Aktor mengisi field kosong pada form yang meminta data dosen dan kelas. 2. Aktor men-submit data dengan

menekan sebuah button untuk autentikasi.

3. Memeriksa kebenaran data yang digunakan aktor.

4. Sistem :

a. Menerima data penjadwalan. b. Menolak data penjadwalan. Kondisi Akhir Skenario Normal:

1. Aplikasi:

a. Mengenerate hasil data penjadwalan.

b. Menampilkan form untuk pengisian data penjadwalan kembali.

Skenario Abnormal-1

Aksi- Aktor Reaksi Sistem

1. Aktor men-submit data dengan

menekan sebuah button tanpa mengisi data.

2. Memeriksa kebenaran data yang digunakan aktor.

3. Menampilkan pesan informasi bahwa data masih kosong.

Kondisi Akhir Skenario Abnormal-1:

Aplikasi menampilkan form untuk pengisian data penjadwalan kembali. Catatan

(60)

4.1.1.5Activity Diagram

Pada bagian ini akan digambarkan dokumentasi alur kerja pada sistem yang sedang berjalan yang bertujuan untuk melihat alur proses sistem yang sedang berjalan

(61)

4.1.2 Evaluasi Sistem Yang Sedang Berjalan

Setelah dilakukan penelitian pada proses penjadwalan di Program Studi Sistem Informasi Unikom, terdapat beberapa kelemahan yang ditemukan pada sistem yang sedang berjalan. Kelemahan-kelemahan tersebut adalah sebagai berikut:

1. Sistem yang dilakukan masih memasangkan jadwal secara manual di mana ada applikasi yang berfungsi untuk melakukan pengecekan jadwal agar tidak berbentrokan.

2. Penjadwal sering kesulitan dalam memasangkan jadwal dari dosen karena adanya dosen yang hanya bisa mengajar pada waktu-waktu tertentu atau mengajar lebih dari satu mata kuliah.

3. Penjadwal sering kesuliatan dalam penentuan ruang kelas karena adanya ruangan-ruangan tertentu yang hanya tersedia pada waktu tertentu.

4. Penjadwal sering kesulitan dalam pemasangan dosen, ruang kuliah, dan mata kuliah terkhusus pada kelas beasiswa unggulan dan international program. 5. Pembuatan jadwal kuliah yang ada kerap memakan waktu yang cukup lama

karena sistem yang ada hanya melakukan pengecekan bentrokan, bukan memperbaiki atau menyusun jadwal kuliah.

(62)

Melihat kasus yang terjadi diatas untuk itu penulis mencoba memberikan solusi untuk mengatasi permasalahan tersebut, yakni dengan membangun sebuah sistem yang dapat menangani:

1. Adanya matakuliah yang tidak boleh dijadwalkan pada saat yang bersamaan.

2. Adanya keinginan dosen untuk mengajar pada waktu-waktu tertentu. 3. Adanya keterbatasan akan waktu dan ruang kelas.

4. Adanya pembagian jenis kelas mahasiswa dan tipe ruang kelas. 5. Adanya dosen yang mengajar lebih dari 1 matakuliah pada semester

yang sama.

(63)

4.2 Perancangan Sistem

Pada tahap perancangan sistem ini akan dijelaskan mengenai perancangan sistem pada objek yang digunakan, perancangan arsitektur program yang akan dibuat, perancangan tampilan dan perancangan menu.

4.2.1 Tujuan Perancangan Sistem yang Diusulkan

Perancangan sistem merupakan suatu kegiatan pengembangan prosedur dan proses yang sedang berjalan untuk menghasilkan sesuatu yang baru atau memperbaharui sistem yang ada untuk meningkatkan kinerja sistem itu sendiri, agar dapat memenuhi hasil yang diinginkan. Rancangan sistem yang baru, akan diterapkan suatu kegiatan untuk menemukan dan mengembangkan metoda, prosedur dan proses suatu data agar tujuan dari suatu organisasi dapat tercapai.

Adapun tujuan dari perancangan sistem ini adalah untuk menghasilkan suatu rancangan sistem yang memperbaharui sistem yang sudah ada untuk memaksimalkan proses penjadwalan yang sedang berjalan.

4.2.2 Gambaran Umum Sistem yang Diusulkan

(64)

membantu mengatasi masalah yang ada, dan dapat menghasilkan informasi yang cepat, tepat dan akurat.

4.2.3 Perancangan Prosedur yang Diusulkan

(65)

4.2.3.1Proses Bisnis

Proses bisnis dari target sistem adalah sebagai berikut:

Petugas

2 3

Lingkungan Penjadwalan Lingkungan Luar Penjadwalan

Dosen

4

1

Gambar 4. 4 Proses Bisnis Target Sistem

Keterangan:

1. Dosen Mengisi data penawaran matakuliah dan menyerahkannya pada petugas penjadwalan kuliah.

2. Petugas memasukkan data jadwal kuliah sesuai dengan data penawaran matakuliah dari dosen.

3. Sistem akan men-generate jadwal kuliah sesuai dengan data penjadwalan yang ada.

(66)

4.2.3.2Service Time

Dengan sistem penjadwalan yang ditargetkan, proses penjadwalan akan mampu mengoptimalisasi waktu yang dibutuhkan dalam penjadwalan. Hal ini dikarenakan penjadwal tidak perlu lagi menentukan jadwal kuliah untuk setiap dosen, karena target sistem akan langsung men-generate penjadwalan kuliah.

4.2.3.3Use Case Diagram

(67)

Petugas Penjadwal

Petugas Penjadwal

Menambah Data Dosen

Menambah Data Mata Kuliah

Menambah Data Ruangan

Generate Jadwal Menambah/Mengubah Data

Penawaran Mengubah Data Dosen

Mengubah Data Mata Kuliah

Mengubah Data Ruangan

Maintain Kelas

Gambar 4. 5 Use Case Diagram untuk Target Sistem

4.2.3.4Skenario Use Case

(68)

4.2.3.4.1 Skenario Menambah Data Dosen

Tabel 4. 2 Tabel skenario use case menambah data dosen

Judul Menambah data dosen No. Use case UC-JADWAL-01

Deskripsi Use Case Aktor menambahkan data dosen.

Aktor Penjadwal

Trigger Aktor memilih menu untuk menambahkan data dosen.

Kondisi Awal Aplikasi menampilkan sebuah form untuk menambahkan data dosen.

Skenario Normal

Aksi- Aktor Reaksi Sistem

1. Aktor mengisi field kosong pada form yang data dari dosen yang akan ditambahkan.

2. Aktor men-submit data dosen yang ingin ditambahkan.

3. Sistem memeriksa apakah field-field pada form pengisian dosen telah diisi dan sesuai.

4. Data dosen ditambahkan pada database.

Kondisi Akhir Skenario Normal:

Data dosen yang baru dimasukkan tampil pada list data dosen Skenario Abnormal-1

(69)

1. Aktor men-submit data dengan

menekan sebuah button tanpa mengisi field-field pada form.

2. Form pengisian data dosen

ditampilkan dan ada pesan kesalahan yang menyatakan field harus diisi. 3. Data dosen tidak ditambahkan pada

database. Kondisi Akhir Skenario Abnormal-1:

Aplikasi menampilkan formpengisian data dosen.

Catatan

4.2.3.4.2 Skenario mengubah data dosen

Tabel 4. 3 Skenario use case mengubah data dosen

Judul Mengubah data dosen No. Use case UC-JADWAL-02

Deskripsi Use case Aktor mengubah data dosen.

Aktor Penjadwal

Trigger Aktor menekan salah satu dari data dosen yang akan dirubah. Kondisi Awal Aplikasi menampilkan sebuah form untuk mengubah data

dosen.

Skenario Normal

Aksi- Aktor Reaksi Sistem

(70)

2. Aktor men-submit data dosen yang ingin ditambahkan.

3. Sistem memeriksa apakah field-field pada form pengisian dosen telah diisi dan sesuai.

4. Data dosen dirubah pada database. Kondisi Akhir Skenario Normal:

Data dosen yang baru dimasukkan tampil pada list data dosen Skenario Abnormal-1

Aksi- Aktor Reaksi Sistem

1. Aktor men-submit data dengan menekan sebuah button di mana ada field-field pada form yang seharusnya diisi tetapi dikosongkan.

2. Form pengisian data dosen

ditampilkan dan ada pesan kesalahan yang menyatakan field harus diisi.

3. Data dosen tidak ditambahkan pada database.

Kondisi Akhir Skenario Abnormal-1:

Aplikasi menampilkan formuntuk mengubah data dosen.

Catatan

4.2.3.4.3 Menambah data mata kuliah

Tabel 4. 4 Skenario use case menambah data mata kuliah

Judul Menambah mata kuliah No. Use case UC-JADWAL-03

Deskripsi Use Case Aktor menambahkan data mata kuliah.

(71)

Trigger Aktor memilih menu untuk menambahkan data mata kuliah. Kondisi Awal Aplikasi menampilkan sebuah form untuk menambahkan data

mata kuliah.

Skenario Normal

Aksi- Aktor Reaksi Sistem

1. Aktor mengisi field kosong pada form yang data dari mata kuliah yang akan ditambahkan.

2. Aktor men-submit data mata kuliah yang ingin ditambahkan.

3. Sistem memeriksa apakah field-field pada form pengisian mata kuliah telah diisi dan sesuai.

4. Data mata kuliah ditambahkan pada database.

Kondisi Akhir Skenario Normal:

Data mata kuliah yang baru dimasukkan tampil pada list data mata kuliah Skenario Abnormal-1

Aksi- Aktor Reaksi Sistem

1. Aktor men-submit data dengan

menekan sebuah button tanpa mengisi field-field pada form.

2. Form pengisian data mata kuliah ditampilkan dan ada pesan kesalahan yang menyatakan field harus diisi. 3. Data mata kuliah tidak ditambahkan

pada database. Kondisi Akhir Skenario Abnormal-1:

Aplikasi menampilkan formpengisian data mata kuliah.

Gambar

Gambar 3. 2 Pendekatan Prototype (Sumber, Abdul Kadir 2004)
Gambar 4. 1 Proses Bisnis sistem yang sedang berjalan
Gambar 4. 2 Use Case Sistem Penjadwalan yang sedang berjalan
Gambar 4. 4 Proses Bisnis Target Sistem
+7

Referensi

Dokumen terkait

Bila terjadi kenaikan yang relatif kecil dari volume otak, keadaan ini tidak akan cepat menyebabkan tekanan tinggi intrakranial.. Sebab volume yang meninggi ini dapat

Berdasarkan hasil analisis regresi ganda dengan menggunakan taraf signifikansi 0,05 nilai F hitung = 19,971 dan signifikan 0,000. Hasil pengujian ini menunjukkan

Siswa dengan kemampuan berpikir aljabar level 3 yaitu relational dalam menyelesaikan masalah aljabar berdasarkan taksonomi SOLO siswa mengintegrasikan semua aspek

Berdasar hasil penelitian yang telah dilakukan mengenai pengaruh antara penggunaan dana zakat terhadap pemberdayaan masyarakat pada Badan Amil Zakat dan Lembaga

Observasi dilakukan oleh guru mata pelajaran mulai dari awal pelaksanaan tindakan sampai akhir pelaksanaan tindakan pembelajaran dengan menggunakan strategi Instant

Jika rentetan kelahiran itu terputus karena karmanya sudah habis, maka berakhirlah samsara (akibat manusia yang telah menyadari kesalahannya/ketertipuannya oleh

Hasil penelitian ini menunjukkan bahwa pengetahuan yang dimiliki oleh nasabah mengenai aqad bagi hasil (mudharabah) deposito syari’ah memang mempunyai pengaruh

Gambar 5 memperlihatkan kecendrungan hasil elusi dari ke 3 variasi kolom terlihat bervariasi dan % yield 99m Tc yang tertinggi diperoleh pada penggunaan larutan