RANCANG BANGUN PERANGKAT LUNAK PENJADWALAN PERKULIAHAN MENGGUNAKAN METODE METAHEURISTIK (PENGGABUNGAN METODE ALGORITMA GENETIK DAN TABU SEARCH).

RANCANG BANGUN PERANGKAT LUNAK
PENJ ADWALAN PERKULIAHAN MENGGUNAKAN METODE METAHEURISTIK (PENGGABUNGAN METODE ALGORITMA GENETIK DAN
TABU SEARCH)

TUGAS AKHIR

Disusun Oleh :
RIO PRAYOGA SUPRAYANA
NPM. 06 34 015 019

J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL ″ VETERAN″
J AWA TIMUR
SURABAYA
2011

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

Nama


: Rio Prayoga Suprayana

NPM

: 0634015019

Judul

: Rancang Bangun Perangkat Lunak Penjadwalan Kuliah Menggunakan
Metode Meta-Heuristik (Penggabungan Metode Algoritma Genetik
dan Tabu Search)

Dosen Pembimbing 1 : Basuki Rahmat, S.Si, MT
Dosen Pembimbing 2 : Delta Ardy Prima, ST

ABSTRAK

Penjadwalan kegiatan perkuliahan dalam sebuah Perguruan Tinggi / Kampus adalah
suatu hal yang rumit dan sering mengalami kesulitan, yang menyebabkan pengalokasian mata

kuliah, dosen, dan ruangan sering bentrok dengan jadwal mata kuliah, dosen, dan ruangan
yang lain dalam suatu periode jadwal kuliah. Oleh karena itu dibutuhkan suatu sistem dan
metode optimasi yang dapat diterapkan untuk menyusun sebuah jadwal mata kuliah.
Dalam Algoritma Genetika, populasi awal dibangun secara acak, sedangkan pada
populasi berikutnya merupakan hasil evolusi kromosom-kromosom melalui interasi yang
disebut dengan istilah generasi. Setiap generasi, kromosom akan melalui proses evaluasi yang
akan menghasilkan nilai fitness. Nilai fitness suatu kromosom akan menunjukan kualitas tiap
kromosom dalam populasi tersebut.(Kusumadewi & Purnomo, 2005). Sedangkan Prinsip
dasar Tabu Search adalah untuk mengikuti kemampuan local search bertemu sebuah lokal
optimum dengan cara membiarkan nonimproving bergerak kembali ke solusi sebelumnya
yang dicegah dengan menggunakan memori yang disebut dengan Tabu List.
Dengan

adanya

perangkat

lunak

penjadwalan


kuliah

yang

menggunakan

penggabungan metode Algoritma Genetika dan Tabu Search, aplikasi ini mampu membuat
sebuah jadwal yang meminimalisir jumlah bentrok pada sisi mahasiswa maupun dosen, baik
pada jam kuliah maupun hari.

Kata Kunci: penjadwalan, Algoritma Genetika, Tabu Search

i

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

DAFTAR ISI
ABSTRAK ........................................................................................................... i

UCAPAN TERIMA KASIH .............................................................................. ii
DAFTAR ISI .....................................................................................................iii
DAFTAR GAMBAR ......................................................................................... vi
DAFTAR TABEL ............................................................................................ vii
BAB I

PENDAHULUAN

1.1

Latar Belakang .................................................................................... 1

1.2

Perumusan Masalah ............................................................................. 3

1.3

Batasan Masalah .................................................................................. 3


1.4

Tujuan ................................................................................................. 4

1.5

Manfaat ............................................................................................... 4

1.6

Metodologi Pembuatan Tugas Akhir .................................................... 5

1.7

Sistematika Penulisan .......................................................................... 6

BAB II

TINJ AUAN PUSTAKA


2.1

Penjadwalan ........................................................................................ 5

2.2

Konsep Sistem Kredit Semester ......................................................... 11

2.2.1

Nilai Satuan Kredit Semester Perkuliahan.......................................... 12

2.2.2

Nilai Satuan Kredit Semester Praktikum ............................................ 13

2.3

Algoritma Genetika ........................................................................... 13


2.3.1

Struktur Umum Algoritma Genetika .................................................. 14

2.3.2

Komponen - Komponen Algoritma Genetika ..................................... 15

2.4

Tabu Search....................................................................................... 21

2.5

Konsep Dasar Sistem ......................................................................... 24

2.5.1

Perencanaan ...................................................................................... 25


iii
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

2.5.2

Desain ............................................................................................... 25

2.5.3

Implementasi ..................................................................................... 25

2.5.4

Operasi .............................................................................................. 26

2.6

Permodelan Data ............................................................................... 26


2.6.1

Entity Relationship Diagram (ERD) ................................................... 26

2.6.2

Entitas dan Atribut ............................................................................. 26

2.6.3

Relasi ................................................................................................ 27

2.6.4

Data Flow Diagram (DFD) ............................................................... 28

2.7

Visual Basic .NET 2010 .................................................................... 29


2.8

Microsoft Access ............................................................................... 30

BAB III ANALISIS DAN PERANCANGAN SISTEM
3.1

Analisis Sistem .................................................................................. 32

3.2

Perancangan Sistem ........................................................................... 33

3.2.1

Pengolahan Data Menggunakan Penggabungan Metode Algoritma
Genetik dan Tabu Search .................................................................. 33

3.2.2


Pengkodean Kromosom dan Pembentukan Populasi Awal ................. 34

3.2.3

Flowchart .......................................................................................... 36

3.2.4

Klasifikasi Constraint ........................................................................ 38

3.2.4.1

Hard Constraint ................................................................................ 38

3.2.4.2

Soft Constraint .................................................................................. 38

3.2.5

Workflow ........................................................................................... 40

3.2.6

Aturan-aturan Terjadi Konflik ........................................................... 41

3.2.7

Context Diagram ............................................................................... 42

3.2.8

DFD Level 1 ...................................................................................... 43

3.3

Perancangan Database....................................................................... 45

3.3.1

Perancangan Data .............................................................................. 45

3.3.2

Perancangan Tabel............................................................................. 47

3.4

Perancangan Antar Muka................................................................... 52

iv
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

BAB IV

IMPLEMENTASI PROGRAM

4.1

Kebutuhan Sistem.............................................................................. 57

4.1.1

Perangkat Sistem ............................................................................... 57

4.2

Implementasi Aplikasi ....................................................................... 58

4.2.1

Tampilan Login ................................................................................. 59

4.2.2

Tampilan Utama ................................................................................ 59

4.2.3

Form Menu Data ............................................................................... 60

4.2.3.1

Form Sub Menu Data Dosen.............................................................. 60

4.2.3.2

Form Sub Menu Mata Kuliah ............................................................ 61

4.2.3.3

Form Sub Menu Data Ruang ............................................................ 62

4.2.3.4

Form Sub Menu Data Kelas Paralel .................................................. 63

4.2.3.5

Form Data Kompetensi Dosen ........................................................... 64

4.2.4

Form Sub Menu Jadwal .................................................................... 65

4.2.4.1

Form Sub Menu Genetic Algorithm Proccess and Tabu Search ......... 65

4.2.4.2

Form Sub Menu Data Jadwal ............................................................. 67

4.2.5

Form Sub Menu User ....................................................................... 67

BAB V

UJ I COBA DAN EVALUASI

5.1

Data Uji Coba Pada Sistem Aplikasi ................................................. 69

5.2

Uji Coba Pada Sistem Aplikasi Penjadwalan Kuliah .......................... 72

5.3

Analisa Hasil Uji Coba ...................................................................... 73

BAB Vi

PENUTUP

6.1

Data Uji Coba Pada Sistem Aplikasi ................................................. 75

6.2

Uji Coba Pada Sistem Aplikasi Penjadwalan Kuliah .......................... 76

DAFTAR PUSTAKA ....................................................................................... 77

v
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

DAFTAR GAMBAR
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar
Gambar

2.1
2.2
2.3
2.4
2.5
3.1
3.2
3.3

Contoh Roulette Wheel Selection dari data pada tabel 2.4 .......... 18
Ilustrasi Order Based Crossover ................................................ 19
Ilustrasi one-cut-point crossover ............................................... 20
Ilustrasi One-Cut-Point Crossover Reeves ................................ 20
Contoh tabel pegawai ................................................................ 30
Contoh tabel pegawai ................................................................ 35
Contoh tabel pegawai ................................................................ 36
Flowchart pengolahan data dengan menggunakan penggabungan
metode Algoritma Genetik dan Tabu Search .............................. 37
Gambar 3.4 Workflow Penjadwalan Kuliah .................................................. 40
Gambar 3.5 Context Diagram ....................................................................... 42
Gambar 3.6 DFD Level 0 ............................................................................. 43
Gambar 3.7 Conceptual Data Model (CDM) ................................................ 46
Gambar 3.8 Physical Data Model (PDM) ..................................................... 47
Gambar 3.9 Form Data Dosen ..................................................................... 53
Gambar 3.10 Form Data Mata Kuliah ............................................................ 54
Gambar 3.11 Form Data Ruang...................................................................... 55
Gambar 3.12 Form Kelas Paralel ................................................................... 56
Gambar 4.1 Tampilan Login ......................................................................... 59
Gambar 4.2 Tampilan Utama ....................................................................... 60
Gambar 4.3 Form Data Dosen ...................................................................... 61
Gambar 4.4 Form Data Mata Kuliah............................................................. 62
Gambar 4.5 Form Data Ruang ...................................................................... 63
Gambar 4.6 Form Data Kelas Paralel ........................................................... 64
Gambar 4.7 Form Data Kompetensi Dosen .................................................. 65
Gambar 4.8 Form Sub Menu Genetic Algorithm and Tabu Search Proccess 66
Gambar 4.9 Form Sub Menu Data Jadwal .................................................... 67
Gambar 4.10 Form Sub Menu User ................................................................ 68
Gambar 5.1 Sub Menu GA TA Proccess ....................................................... 73

vi
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

DAFTAR TABEL
Tabel 2.1

Contoh Binary Encoding................................................................ 15

Tabel 2.2

Contoh Permutation Encoding ....................................................... 16

Tabel 2.3

Contoh Value Encoding ................................................................. 16

Tabel 2.4

Kromosom dengan Nilai Fitnessnya .............................................. 18

Tabel 3.1

Tabel Sebaran Mata Kuliah ............................................................ 35

Tabel 3.2

Tabel User ..................................................................................... 46

Tabel 3.3

Tabel Dosen .................................................................................. 46

Tabel 3.4

Tabel Matkul ................................................................................. 46

Tabel 3.5

Tabel Kelas Paralel ........................................................................ 47

Tabel 3.6

Tabel ruang.................................................................................... 47

Tabel 3.7

Tabel waktu ................................................................................... 48

Tabel 3.8

Tabel jadwal .................................................................................. 48

Tabel 3.9

Tabel jadwal_detail........................................................................ 49

Tabel 3.10 Tabel Dosen_Pengampu ................................................................ 49
Tabel 5.1

Tabel Mata Kuliah ......................................................................... 70

Tabel 5.2

Tabel Dosen Pengajar .................................................................... 71

Tabel 5.3

Tabel Ruang Perkuliahan ............................................................... 72

Tabel 5.4

Tabel Hasil Uji Coba ..................................................................... 74

vii
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

BAB I
PENDAHULUAN

1.1

Latar Belakang
Di era modern seperti sekarang bukan hal asing bila segala sesuatu

dilakukan dengan menggunakan bantuan komputer. Kemajuan teknologi yang
semakin meningkat, membuktikan bahwa kini teknologi komputer telah menjadi
kebutuhan pokok dalam kehidupan manusia. Hal tersebut diatas tentunya dapat
ditunjang dengan perkembangan teknologi informasi yang telah berkembang
dengan pesat. Salah satunya adalah dengan pemanfaatan bahasa pemrograman
komputer untuk membuat sebuah software dimana informasi yang didapatkan
akan dimanipulasi secara cepat, tepat, dan akurat. Tentunya hal tersebut juga akan
mengubah kebiasaan pengelolaan data secara manual yang membutuhkan waktu
cukup lama. Karena itu dibutuhkan sistem yang terkomputerisasi, yaitu dengan
cara mengubah sistem manual ke sistem komputerisasi. Sistem komputerisasi
tentunya akan lebih efisien, ini dapat dilihat dari proses kecepatan, ketepatan, dan
sebagainya.
Penjadwalan kegiatan kuliah dalam suatu Perguruan Tinggi adalah suatu
hal yang rumit dan sering mengalami kesulitan. Hal ini disebabkan beberapa
faktor yang berkaitan, yang harus dipertimbangkan. Faktor tersebut antara lain,
jumlah mata kuliah yang ada, jumlah dosen pengajar, jumlah ruangan, dan jadwal
dimana dosen yang bersangkutan tidak bisa mengajar yang sering menyebabkan
munculnya

masalah

penjadwalan

mata

kuliah

seperti adanya

konflik

yang disebabkan pengalokasian mata kuliah dengan dosen dan ruangan yang

1

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

2

sering bentrok dengan jadwal mata kuliah, dosen, serta ruangan yang lain dalam
satu periode jadwal kuliah. Distribusi jadwal perkuliahan juga diharapkan dapat
merata tiap harinya untuk setiap kelas.
Permasalahan seperti yang telah diuraikan diatas sering disebut dengan
University Timetabling Problems (UTP). Selain dilihat dari sisi mahasiswa,
permasalahan ini juga harus dilihat dari sisi dosen, yaitu kemungkinan dosen akan
mengajar lebih dari satu mata kuliah yang ada, sebab ada kemungkinan jumlah
mata kuliah dan jumlah dosen tidak sebanding, sehingga harus dipikirkan juga
solusi agar dosen tidak mengajar dua mata kuliah yang berbeda pada hari dan jam
yang sama. Selain itu, harus dipertimbangkan juga ketersediaan kelas sehinga
kegiatan belajar dapat dilaksanakan.
Disamping aspek-aspek diatas, dalam penyusunan jadwal kuliah ini juga
terdapat banyak sekali kemungkinan yang selayaknya dicoba untuk menemukan
penjadwalan terbaik. Karena itu, dibutuhkan metode optimasi yang dapat
diterapkan untuk mengerjakan penjadwalan mata kuliah. Terdapat banyak metode
heuristik yang dapat digunakan untuk menyelesaikan permasalahan penjadwalan,
salah satu metode yang dapat digunakan untuk menyelesaikan permasalahan
diatas adalah Metode Algoritma Genetik dan Metode Tabu Search.
Hal itulah yang mendorong penulis untuk merancang tugas akhir dengan
judul,

Rancang

Bangun

Perangkat

Lunak

Penjadwalan

Perkuliahan

Menggunakan Metode Meta-Heuristik (Penggabungan Metode Algoritma Genetik
dan Tabu Search).

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

3

1.2

Perumusan Masalah
Berdasarkan latar belakang yang telah dijelaskan diatas, maka dapat

dirumuskan beberapa masalah dalam Tugas Akhir ini, yaitu
1. Bagaimana

mencari

optimasi

penjadwalan

perkuliahan

dengan

menggabungkan Metode Algoritma Genetik dan Metode Tabu Search
2. Bagaimana membuat

sistem

penjadwalan perkuliahan

yang

dapat

memecahkan masalah penjadwalan kuliah dengan kombinasi terbaik untuk
pasangan mata kuliah dan dosen pengajar secara keseluruhan.
3. Bagaimana menjadwalkan jam perkuliahan agar tidak terdapat jadwal yang
bentrok pada sisi mahasiswa serta ketersediaan ruang yang cukup dan
sesuai.
4. Bagaimana merancang sistem dengan antar muka keluaran dan antar muka
masukan agar lebih mudah dimengerti oleh user.

1.3

Batasan Masalah
Pada pembuatan aplikasi ini perlu didefinisikan batasan masalah

mengenai sejauh mana pembuatan aplikasi ini akan dikerjakan. Beberapa batasan
masalah tersebut antara lain:
1. Masalah yang akan dibahas hanya untuk penyusunan penjadwalan
perkuliahan di jurusan Teknik Informatika, Fakultas Teknologi Industri,
UPN “VETERAN” Jawa Timur.
2. Sistem hanya menangani penjadwalan kelas paralel malam.
3. Semua Dosen bersedia mengajar kapan saja dan di ruang manapun.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

4

4. Sistem hanya menggunakan penggabungan dua Metode Heuristik, yaitu
Metode Algoritma Genetik dan Metode Tabu Search.
5. Sistem tidak menangani optimasi pemakaian waktu (efektifitas) dalam
penjadwalan kuliah.
6. Adanya mata kuliah dengan ruangan khusus (Praktikum)
7. Durasi kuliah antara praktek dan teori yang berbeda per sks- nya.
8. Adanya batas hari dalam satu minggu.
9. Adanya batas jumlah mahasiswa dalam satu ruangan kelas.

10. Sistem penjadwalan perkuliahan ini berbasis desktop yang menggunakan
Microsoft Visual Basic .NET 2010 dan Microsoft Access 2010

1.4

Tujuan
Tujuan dari Tugas Akhir ini adalah untuk menghasilkan sebuah

perangkat lunak penjadwalan perkuliahan yang nantinya akan memudahkan
bagian pengajaran ataupun Kepala Jurusan Teknik Informatika dalam membuat
jadwal perkuliahan di pergantian semester ataupun pada tahun ajaran baru.

1.5

Manfaat
Adanya tugas akhir ini diharapkan dapat memberikan manfaat bagi

pihak kampus Universitas Pembangunan Nasional “Veteran” Jawa Timur
khususnya di Fakultas Teknologi Industri, Jurusan Teknik Informatika dalam
mengatur jadwal perkuliahan baru di setiap pergantian semester ataupun tahun
ajaran baru.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

5

1.6

Metodologi Pembuatan Tugas Akhir
Dalam pembuatan Tugas Akhir kali ini, penulis akan menjelaskan

tentang metode yang digunakan selama menyusun dan membuat Tugas Akhir ini.
a. Studi literatur.
Mengumpulkan referensi baik dari internet, maupun sumber-sumber yang
lainnya mengenai penjadwalan dengan menggabungkan Metode Algoritma
Genetk dan Metode Tabu Search serta optimasi-optimasi yang telah ada
sebagai tambahan referensi Tugas Akhir ini.
b. Analisa dan Perancangan Aplikasi.
Menganalisa

dan

merancang

perkuliahan

menggunakan

sebuah
metode

perangkat

lunak

meta-heuristk,

penjadwalan

yaitu

dengan

menggabungkan Metode Algoritma Genetik dan Metode Tabu Search dalam
lingkungan kampus UPN ″Veteran″ Jawa Timur khususnya di Fakultas
Teknologi Industri, Jurusan Teknik Informatika.
c. Pembuatan Aplikasi.
Pada tahap ini merupakan tahap yang paling banyak memerlukan waktu
karena

model

dan

rancangan

aplikasi

yang telah di buat di

implementasikan dengan menggunakan bahasa pemrograman Visual Basic
.NET 2008.
d. Uji coba dan evaluasi aplikasi.
Pada tahap ini setelah aplikasi selesai dibuat maka dilakukan pengujian
aplikasi untuk mengetahui apakah aplikasi tersebut telah bekerja dengan
benar sesuai dengan konsep yang diajukan.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

6

e. Penyusunan Buku Tugas Akhir.
Pada tahap ini merupakan tahap terakhir dari pengerjaan Tugas Akhir. Buku
ini disusun sebagai laporan dari seluruh proses pengerjaan Tugas Akhir. Dari
penyusunan buku ini diharapkan dapat memudahkan pembaca yang ingin
menyempurnakan dan mengembangkan aplikasi lebih lanjut.
f. Pembuatan Kesimpulan.
Pada tahap ini dalam bagian akhir pembuatan Tugas Akhir. Dibuat
kesimpulan dan saran dari hasil pembuatan aplikasi yang diperoleh sesuai
dengan dasar teori yang mendukung dalam pembuatan aplikasi tersebut yang
telah dikerjakan secara keseluruhan.

1.7

Sistematika Penulisan
Pada laporan Tugas Akhir ini akan menjelaskan tentang pembuatan

Perangkat Lunak Penjadwalan Perkuliahan Menggunakan Metode Meta-Heuristik
(Penggabungan Metode Algoritma Genetik dan Tabu Search ). Agar lebih
memahami materi, laporan Tugas Akhir ini dibagi menjadi enam bab yang
dilengkapi dengan penjelasan langkah-langkah dan ilustrasinya.

BAB I

PENDAHULUAN
Bab ini akan menjelaskan tentang Latar Belakang, Perumusan
Masalah, Batasan Masalah, Tujuan Penulisan, Manfaat, Metodologi
Penulisan, dan Sistematika Penulisan.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

7

BAB II

TINJ AUAN PUSTAKA
Bab ini menjelaskan tentang dasar teori yang berkaitan dengan
Metode Algoritma Genetik dan Metode Tabu Search yang digunakan
sebagai penunjang serta referensi dalam pembuatan laporan Tugas
Akhir ini.

BAB III

ANALISIS DAN PERANCANGAN SISTEM
Dalam bab ini dijelaskan tentang analisis dan perancangan sistem
informasi, yang antara lain berisi tentang analisis aplikasi yang akan
dibuat. Dalam bab ini juga akan dijelaskan semua kebutuhan yang
diperlukan

dalam

membuat

Perangkat

Lunak

Penjadwalan

Perkuliahan Menggunakan metode Meta-Heuristik (penggabungan
metode Algoritma Genetik dan metode Tabu Search).

BAB IV

IMPLEMENTASI SISTEM
Pada bab ini akan membahas tentang implementasi berdasarkan
konsep perancangan yang ada pada BAB III beserta penjelasan
tentang kebutuhan sistem supaya aplikasi yang dikerjakan sesuai
dengan tujuan dari penulisan Tugas Akhir.

BAB V

UJ I COBA DAN ANALISIS SISTEM
Bab ini menjelaskan tentang pengujian yang dilakukan untuk
mengetahui apakah aplikasi yang dibuat bisa bekerja sesuai dengan
konsep yang sebenarnya.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

8

BAB VI

PENUTUP
Bab ini akan menjelaskan tentang kesimpulan dari keseluruhan isi dari
laporan Tugas Akhir serta Saran yang disampaikan penulis untuk
pengembangan aplikasi yang ada demi kesempurnaan aplikasi yang
lebih baik.

DAFTAR PUSTAKA
Pada bagian ini akan dipaparkan tentang sumber-sumber literatur,
tutorial, buku maupun situs-situs yang digunakan dalam pembuatan
laporan Tugas Akhir ini.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

BAB II
TINJ AUAN PUSTAKA

2.1

Penjadwalan
Jadwal adalah daftar output (tabel kegiatan) atau rencana kegiatan yang

harus dihasilkan dalam jangka waktu tertentu. Biasanya disusun menurut urutan
prioritas dengan pembagian waktu pelaksanaan yang terperinci. Sedangkan
penjadwalan merupakan suatu proses pembuatan atau cara menjadwalkan suatu
data menjadi sebuah jadwal.
Menurut Marthon, 1993. pendekatan terhadap metode penjadwalan
secara garis besar dapat dibagi sebagai berikut:
1. Penjadwalan dilakukan secara manual
Keuntungan dari penjadwalan yang dilakukan secara manual adalah
sebagai berikut:
a. cepat dan akurat dalam memadukan berbagai keahlian manusia
dan prioritas.
b. Mudah mengadaptasi bila terjadi perubahan.
Kekurangan dari penjadwalan yang dilakukan secara manual adalah
sebagai berikut:
a. Kurang mampu menguji sejumlah besar prioritas atau keakuratan
mengetahui dampak dari aktifitas yang berbeda.
b. Meningkatkan kekomplekan sistem (data overload)
c. Kesulitan dalam menangani permasalahan yang komplek.
d. Kesulitan dalam menghadapi perubahan yang cepat.

9
Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

10

2. Penjadwalan yang dilakukan dengan simulasi komputer.
Kelebihan dari penjadwalan yang dilakukan dengan simulasi komputer
adalah sebagai berikut:
a. Mudah dilakukan perubahan
b. Menunjukkan pendekatan yang lebih alami dalam menyajikan
keahlian manusia
c. Hampir sama dengan sistem nyata
Kekurangan dari penjadwalan yang dilakukan dengan simulasi komputer
adalah sebagai berikut:
a. Hasil tidak selalu optimal
b. Metode pendekatan tidak selalu tepat

3. Penjadwalan yang dilakukan secara sistematis, antara lain sebagai
berikut:
a. Integer dan Dynamic Programming
Kelebihan metode Integer dan Dynamic Programming adalah
hasil lebih baik. Sedangkan kekurangannya adalah, perhitungan
membutuhkan waktu yang lama.
b. Neighbourhood Search
Kelebihan dari metode Neighbourhood Search antara lain:
1. Hasil yang didapat relatif cepat
2. Keakuratan hasil cukup tinggi
Sedangkan kekurangan dari metode Neighbourhood Search
adalah:

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

11

1. Keoptimalan hasil merupakan lokal optimal, bukan global
optimal
2. Adanya sedikit intuisi dalam mencapai solusi

2.2

Konsep Sistem Kr edit Semester
Penyelenggaraan perkuliahan di

Fakultas Teknologi Industri UPN

”Veteran” Jawa Timur, menggunakan Sistem Kredit Semester (SKS). Sistem
Kredit Semester ini mengatur perencanaan, penyusunan, dan pelaksanaan program
pendidikan dengan menggunakan kredit perkuliahan dan kredit praktikum sebagai
tolok ukur beban pendidikan. Setiap mata kuliah dan praktikum diberi bobot
dengan keperluan untuk memenuhi pencapaian tujuan pendidikan. Dalam sistem
kredit ini, beban studi yang harus diselesaikan oleh mahasiswa pada satu jenjang
studi dinyatakan dalam jumlah satuan kredit.
Sistem Kredit Semester adalah suatu sistem penyelenggaraan pendidikan
dengan menggunakan Satuan Kredit Semester (SKS) untuk menyatakan beban
studi mahasiswa, beban kerja dosen, pengalaman belajar, dan beban
penyelenggaraan program.
Semester adalah satuan waktu kegiatan yang terdiri dari 16 – 19 minggu
kuliah atau kegiatan terjadwal lainnya, berikut kegiatan iringannya, termasuk 2 –
3 minggu kegiatan penilaian atau ujian.
Satuan

Kredit

Semester

adalah

takaran

penghargaan

terhadap

pengalaman belajar yang diperoleh selama satu semester melalui kegiatan
terjadwal perminggu sebanyak 1 jam perkuliahan atau 2 jam praktikum atau 4 jam

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

12

kerja lapangan, yang masing–masing diiringi oleh sekitar 1 – 2 jam kegiatan
terstruktur dan 1 – 2 jam kegiatan mandiri.

2.2.1

Nilai Satuan Kredit Semester Per kuliahan
Nilai Satuan Kredit Semester (1 SKS) untuk perkuliahan ditentukan

berdasarkan atas beban kegiatan yang meliputi 3 (tiga) macam kegiatan
perminggu selama satu semester sebagai berikut:
a. Mahasiswa
1. 60 Menit acara tatap muka terjadwal dengan tenaga pengajar
misalkan dalam bentuk kuliah.
2. 60 Menit acara kegiatan akademik terstruktur, yaitu kegiatan studi
yang tidak terjadwal tetapi direncanakan oleh tenaga pengajar,
misalnya

dengan

mengerjakan

pekerjaan

rumah

ataupun

mengerjakan soal-soal.
3. 60 Menit acara kegiatan akademik mandiri, yaitu kegiatan yang
harus diselesaikan oleh mahasiswa

secara

mandiri untuk

mendalami, mempersiapkan, atau tujuan lain suatu tugas akademik
seperti misalnya, membaca buku akademik.
b. Tenaga Pengajar (Dosen)
1. 60 menit acara tatap muka terjadwal dengan mahasiswa.
2. 60 menit acara perencanaan dan evaluasi kegiatan akademik
terstruktur.
3. 60 menit pengembangan materi kuliah.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

13

2.2.2

Nilai Satuan Kredit Semester Pr aktikum
a.

Satu Kredit Semester sama dengan penyelesaian kegiatan selama 4 –
5 jam seminggu atau 64 – 80 jam dalam satu semester.

b.

Nilai Satuan Kredit Semester untuk praktikum di laboraturium
adalah beban tugas di laboraturium sebanyak 2 – 3 jam seminggu
selama satu semester.

2.3

Algoritma Genetika
Algoritma Genetika atau Genetic Algorithm merupakan evolusi atau

perkembangan dunia komputer dalam bidang kecerdasan buatan (Artificial
Intellegencia). Algoritma Genetika merupakan teknik pencarian dan optimasi
yang terinspirasi oleh prinsip dari genetika dan seleksi alam (teori evolusi
Darwin).
Algoritma Genetika adalah algoritma pencarian yang bardasarkan pada
mekanisme sistem natural yaitu genetik dan seleksi alam. Dalam aplikasi
algoritma genetik, variabel solusi dikodekan kedalam struktur string yang
merepresentasikan barisan gen, yang merupakan karakteristik dari solusi problem.
Berbeda dengan teknik pencarian konvensional, Algoritma Genetika bermula dari
himpunan solusi yang diperoleh secara acak. Himpunan ini disebut dengan
populasi, sedangkan setiap individu dalam populasi disebut kromosom yang
merupakan representasi dari solusi. (Syamsuddin, 2004)
Kromosom-kromosom berevolusi dalam suatu proses iteraksi yang
berkelanjutan yang disebut generasi. Pada setiap generasi, kromosom dievaluasi
berdasarkan suatu fungsi evaluasi (Gen dan Cheng dalam Syamsuddin, 1997).

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

14

Setelah beberapa generasi maka Algoritma Genetika akan konvergen pada
kromosom terbaik, yang diharapkan merupakan solusi optimal (Goldberg dalam
Syamsuddin, 1997).

2.3.1

Str uktur Umum Algor itma Genetika
Dalam Algoritma Genetika, populasi awal dibangun secara acak,

sedangkan pada populasi berikutnya merupakan hasil evolusi kromosomkromosom melalui interasi yang disebut dengan istilah generasi. Setiap generasi,
kromosom akan melalui proses evaluasi yang akan menghasilkan nilai fitness.
Nilai fitness suatu kromosom akan menunjukan kualitas tiap kromosom dalam
populasi tersebut.(Kusumadewi & Purnomo, 2005). Pada generasi berikutnya
biasa dikenal dengan istilah anak (offspring) yang terbentuk dari dua kromosom
generasi sekarang yang bertindak sebagai induk (parent) dengan menggunakan
operator penyilangan crossover dan mutasi. Setelah mengalami beberapa generasi,
maka algoritma ini akan konvergen ke kromosom terbaik yang merupakan solusi
optimal (Suyanto 2005).
Langkah-langkah sederhana dalam Algoritma Genetika :
a.

Membangkitkan populasi awal. Populasi awal ini dibangkitkan secara
random sehingga diperoleh solusi awal. Populasi itu sendiri terdiri dari
sejumlah kromosom yang merepresentasikan solusi yang diinginkan.

b.

Membentuk generasi baru. Dalam hal ini digunakan tiga operator
diantaranya operator reproduksi atau seleksi, tukar silang (crossover) dan
mutasi. Pada proses ini dilakukan secara berulang- ulang sehingga diperoleh
jumlah kromosom yang cukup untuk membentuk generasi baru yang

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

15

merupakan representasi dari solusi baru.
c.

Mengevaluasi populasi. Proses ini dilakukan dengan menghitung nilai
fitness setiap kromosom dan mengevaluasinya sampai terpenuhi kriteria
berhenti. Bila kriteria berhenti akan tetapi masih belum terpenuhi, maka
akan dibentuk kembali generasi baru dengan mengulang langkah 2.
Beberapa kriteria yang sering digunakan antara lain:
1. berhenti pada generasi tertentu.
2. berhenti setelah dalam beberapa generasi berturut-turut didapatkan nilai
fitness tertinggi tidak berubah.
3. berhenti bila dalam n generasi berikutnya tidak didapatkan nilai fitness
yang lebih tinggi.

2.3.2

Komponen - Komponen Algor itma Genetika
a. Pengkodean Kromosom
Menurut Syamsuddin, 2004. ada beberapa macam pengkodean dalam
Algoritma Genetika yaitu:
1.

Binary Encoding, merupakan pengkodean yang paling sering
digunakan untuk bekerja dalam Algoritma Genetika dengan
setiap kromosom terdiri dari bit 0 dan 1.

Tabel 2.1 Contoh Binary Encoding
Kromosom A

1

0

1

1

0

0

Kromosom B

1

1

1

1

1

1

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

16

2.

Permutation Encoding, dalam pengkodean jenis ini setiap
kromosom adalah

suatu angka yang merepresentasikan suatu

urutan.

Tabel 2.2 Contoh Permutation Encoding
Kromosom A

7

4

2

9

2

4

Kromosom B

1

5

3

6

8

3

3.

Value encoding, dalam pengkodean ini setiap kromosom adalah
string dari suatu nilai. Nilai dapat berupa apapun yang
berhubungan dengan masalah, seperti bilangan bulat, desimal
atau karakter.

Tabel 2.3 Contoh Value Encoding
Kromosom A

1,232 5,324 0,455 2,329

Kromosom B

(right), (left), (back), (forward)

b. Fungsi Evaluasi
Suatu individu dievaluasi berdasarkan suatu fungsi tertentu sebagai
ukuran performansinya yang disebut dengan fungsi fitness. Dalam evolusi
alam, individu yang memiliki nilai fitness tinggi yang akan mampu
bertahan hidup, sedangkan yang memiliki nilai fitness rendah akan mati.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

17

Output dari fungsi fitness dipergunakan sebagai dasar untuk menyeleksi
individu pada generasi berikutnya.
Pada contoh permasalahan perjalanan salesman, tujuan yang ingin
dicapai yaitu meminimumkan total jarak yang harus ditempuh oleh
seorang salesman dari kota asal ke beberapa kota tujuan dan kembali lagi
ke kota asalnya. Misal n menyatakan ukuran populasi, maka fungsi fitness
yang digunakan adalah:

Fitness[i] = Total Jarak [i], dengan i = 1,2,3,..,n

(2.1)

Karena fungsi tujuannya adalah meminimumkan total jarak, maka fungsi
fitness tersebut tidak bisa digunakan secara langsung. Hal tersebut
disebabkan adanya aturan bahwa individu yang memiliki nilai fitness
tinggi akan mampu bertahan hidup pada generasi berikutnya. Oleh karena
itu nilai fitness yang digunakan adalah:

Q [i] =

1

(2.2)

Fitness [i]

yang artinya semakin kecil nilai fitness[i] maka semakin besar nilai Q[i].

c. Seleksi
Seleksi adalah suatu operator algoritma genetika yang berfungsi
memilih individu-individu yang akan dijadikan induk pada proses

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

18

crossover atau memberikan kesempatan reproduksi yang lebih besar bagi
anggota populasi yang paling baik. Metode seleksi yang umum digunakan
yaitu Roulette Wheel merupakan salah satu metode seleksi yang banyak
dipergunakan. Roulette Wheel menyeleksi populasi baru dengan distribusi
probabilitas yang berdasarkan nilai fitness.

Tabel 2.4 Kromosom dengan Nilai Fitnessnya
Kromosom

Nilai Fitness

K1

1

K2

2

K3

0,5

K4

0,5

Jumlah

4

K4
K1

K3

K2

Gambar 2.1 Contoh Roulette Wheel Selection dari data pada tabel 2.4

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

19

d. Tukar Silang (Crossover)
Proses

tukar

silang

pada

masalah

salesman

dapat

diimplementasikan dengan skema order crossover. Operator crossover
yang akan dijelaskan disini order-based crossover dan one-cut-point
crossover (Syamsuddin, 2004).

1

2

3

4

5

6

7

8

9

2

4

5

3

1

6

9

7

8

5

4

6

3

1

9

2

7

8

Parent 1

Offspring

Parent

2

Gambar 2.2 Ilustrasi Order Based Crossover

One-cut-point crossover, metode ini analog dengan implementasi binary.
Algoritmanya adalah:
-

Memilih site secara random dari parent pertama.

-

Isi disebelah kanan site pada parent pertama ditukar dengan parent
kedua.

(Gen dan Cheng dalam Syamsuddin, 2004).

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

20

Parent

1

0

1

1

0

1

0

1

1

Parent

2

1

1

0

0

0

1

1

1

Offspring 1

0

1

1

0

0

1

1

1

Offspring 2

1

1

0

0

1

0

1

1

Gambar 2.3 Ilustrasi one-cut-point crossover

One-cut-point crossover yang dikembangkan oleh Reeves adalah:
1.

Memilih satu cut-point secara random/acak dari parent pertama

2.

Isi disebelah kanan site disesuaikan dengan urutan dari parent kedua
untuk menghasilkan offspring (Gen dan Cheng dalam Syamsuddin,
2004).
cut-point
1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

9

7

8

5

4

6

3

1

9

2

7

8

Parent1
Offspring

Parent2

Gambar 2.4 Ilustrasi One-Cut-Point Crossover Reeves

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

21

e. Mutasi
Mutasi menciptakan individu baru dengan melakukan modifikasi
satu atau lebih gen dalam individu yang sama. Mutasi berfungsi untuk
menggantikan gen yang hilang dari populasi selama proses seleksi serta
menyediakan gen yang tidak ada dalam populasi awal. Sehingga mutasi
akan meningkatkan variasi populasi.

2.4

Tabu Sear ch
Tabu Search merupakan sebuah metode optimasi yang berbasis pada

local search. Ide tentang Tabu Search pertama kali diperkenalkan oleh Fred
Glover pada tahun 1986. Kata Tabu sendiri berasal dari Tongan, sebuah bahasa
Polinesia, dimana bahasa tersebut digunakan oleh Suku Aborigin di Pulau Tongan
untuk menandakan bahwa sesuatu itu tidak dapat disentuh (tabu) karena hal itu
sakral atau terlarang.
Prinsip dasar Tabu Search adalah untuk mengikuti kemampuan local
search bertemu sebuah lokal optimum dengan cara membiarkan nonimproving
bergerak kembali ke solusi sebelumnya yang dicegah dengan menggunakan
memori yang disebut dengan Tabu List, yang merekam sejarah terbaru, sebuah ide
kunci yang bisa dihubungkan dengan konsep Artificial Intellegencia. Tabu List
yang ada pada Tabu Search digunakan untuk menyimpan sekumpulan solusi yang
baru saja dievaluasi. Selama proses optimasi, pada setiap iterasi, solusi yang akan
dievaluasi akan dicocokkan terlebih dahulu dengan isi tabu list. Apabila solusi
tersebut sudah ada pada pada tabu list, maka solusi tersebut tidak akan dievaluasi
lagi pada iterasi berikutnya. Apabila sudah tidak ada lagi solusi yang tidak

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

22

menjadi anggota tabu list, maka nilai terbaik yang baru saja diperoleh merupakan
solusi yang sebenarnya.
Tabu Search mulai dengan cara yang sama seperti neighbourhood
search (lokal) biasa dengan cara kerja secara iterasi dari suatu titik (solusi) ke
solusi lain hingga kriteria terminasi yang telah dipilih dipenuhi. Metode
”neigbourhood search” yang terkenal yang telah digunakan untuk menemukan
sebuah penaksiran untuk nilai minimum dari ”real valued function f” pada sebuah
kumpulan S adalah ”metode descent”, yang dijabarkan sebagai berikut:

Langkah 1: Pilih ”solution i” awal
pada S
Langkah 2: Temukan ”j” yang terbaik
pada N(i) (contoh:
f(j)=f(i).
Yang lain, susun i=j
dan lanjutkan ke
langkah 2.

Pada kasus atau penelitian ini, Tabu Search hanya digunakan untuk memfilter
kromosom yang mengalami crossover agar kromosom yang sama tidak dilakukan
crossover berulang–ulang. Saat iterasi pertama kali, semua kromosom yang
mengalami crossover disimpan ke dalam tabu list, kemudian baru dilakukan
crossover. Untuk iterasi berikutnya, kromosom yang mengalami crossover, akan
di cek terlebih dahulu pada tabu list, apakah kromosom tersebut sudah ada atau
belum. Jika kromosom tersebut sudah ada pada tabu list, maka kromosom tersebut

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

23

akan dilakukan mutasi, jika belum maka kromosom tersebut disimpan pada tabu
list, kemudian dilakukan crossover.
Komponen paling penting dari Tabu Search adalah strategi intersifikasi
dan diversifikasi. Strategi intersifikasi didasarkan pada modifikasi aturan
pemilihan untuk mendorong kombinasi move-move dan ciri-ciri solusi terdahulu
yang baik, menentukan kembali pada area yang menarik untuk diselidiki lebih
dalam lagi. Sebaliknya, strategi diversifikasi mendorong proses pencarian untuk
menyelidiki area yang belum dikunjungi.
Tabu Search dapat diaplikasikan secara langsung baik verbal maupun
pernyataan simbolik dari berbagai masalah keputusan tanpa harus mengubah
dalam bentuk formulasi matematika untuk mengekspresikan masalah secara jelas
ruang lungkup dan batasan masalah yang dihadapi. Permasalahan tersebut dapat
dikarakteristikkan sebagai permasalahan optimasi (maksimum atau minimum)
dari fungsi tujuan f(x) dengan konstrain x € x dimana f(x) merupakan formulasi
linier ataupun non linier, dan satuan x merupakan himpunan variabel keputusan x
pada konstrain yang ada.
Tabu Serach dapat memiliki kemampuan untuk keluar dari local
optimal, tetapi Tabu Search tidak dapat menentukan global optimal. Tabu Search
harus memiliki batas maksimum jumlah iterasi, parameter maksimal iterasi, dan
ukuran tabu list yang ditentukan sendiri oleh individu yang menggunakan metode
ini. Jumlah iterasi yaitu banyaknya iterasi yang akan dilakukan untuk
mengeksplorasi berbagai Space Search Area. Semakin besar jumlah maksimum
iterasi, semakin besar pula peluang untuk menentukan solusi optimal secara
global, namun tetap memerlukan waktu perhitungan yang lama. Sedangkan

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

24

parameter maksimal, iterasi yang merupakan suatu batasan jumlah iterasi yang
dilakukan pada suatu area tertentu mendorong suatu langkah diversifikasi demi
menghindari keterjebakan dalam suatu local optimal.
Secara garis besar, elemen-elemen utama pada Tabu Search antara lain
adalah sebagai berikut:
1. Representasi solusi, setiap solusi pada suatu permasalahan optimasi
harus dipresentasikan secara unik.
2. Fungsi cost, setiap funsi cost (fungsi tujuan) akan memetakan fungsi ke
nilai cost-nya.
3. Neighbourhood (tetangga), setiap fungsi cost akan memetakan setiap
solusi S ke solusi-solusi yang lainnya.
4. Tabu List, suatu list yang berisi gerakan terakhir (T).
5. Jumlah elemen yang harus selalu ada pada suatu solusi.
Solusi akhir adalah best, dengan cost sebesar GlobalMin

2.5

Konsep Dasar Sistem
Sistem adalah suatu jaringan kerja dari prosedur–prosedur yang saling

berhubungan, berkumpul bersama–sama untuk melakukan kegiatan atau untuk
menyelesaikan suatu sasaran yang tertentu. Istilah lain dari suatu sistem adalah,
kumpulan elemen–elemen yang masing–masing elemen saling berinteraksi atau
saling mempengaruhi untuk mewujudkan suatu kegiatan bersama.
Suatu sistem mempunyai tujuan atau sasaran. Tujuan biasanya
dihubungkan dengan ruang lingkup yang lebih luas dan sasaran dalam ruang
lungkup yang lebih sempit. Sasaran dari sistem sangat menentukan masukan dan

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

25

keluaran yang akan dihasilkan. Sistem dikatakan berhasil jika dapat mencapai
sasaran atau tujuan.
Siklus hidup sistem adalah sebuah aplikasi dalam pendekatan sistem
untuk mengembangkan sistem informasi berbasis komputer. Siklus hidup sistem
terbagi menjadi 4 tahap, yaitu:

2.5.1

Per encanaan
Meliputi perumusan masalah, pendefinisian masalah,

penentuan

keobyektifan sistem, mengenali bagian–bagian sistem, melakukan studi
kelayakan, menyiapkan sebuah proposal sistem, menyetujui atau menolak proyek,
serta menetapkan sebuah mekanisme kontrol.

2.5.2

Desain
Meliputi persiapan detail desain

sistem,

mengenali konfigurasi

alternatif sistem, melakukan evaluasi konfigurasi alternatif sistem, menyeleksi
konfigurasi terbaik, menyiapkan proposal penerapan, serta menyetujui atau
menolak penerapan sistem

2.5.3

Implementasi
Meliputi perencanaan penerapan, perumusan penerapan, pengenalan

hardware, pengenalan software, menyiapkan database, menyiapkan fasilitas fisik,
menyiapkan pelatihan terhadap user, menyiapkan proposal penerapan sistem baru,
menyetujui atau menolak proposal sistem baru, serta menerapkan penggunaan
sistem baru.

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

26

2.5.4

Oper asi
Meliputi

penggunaan

menyiapkan proposal

sistem,

audit

sistem,

perawatan

perencanaan ulang, serta menyetujui atau

sistem,
menolak

proposal perencanaan ulang.

2. 6

Per modelan Data
Model

data

adalah

kumpulan

perangkat

konseptual

untuk

menggambarkan data, hubungan data, semantik (makna) data, dan batasan data.

2.6.1

Entity Relationship Diagram (ERD)
Sesuai dengan namanya, Entity Relationship Diagram (ERD) dibentuk

dari 2 komponen utama, yaitu:
1. Entitas (Entity)
2. Hubungan (Relation)
Yang dideskripsikan lebih detail dengan sejumlah attribute (properti).

2.6.2

Entitas Dan Atr ibut
Entitas (entity), merupakan objek yang mewakili sesuatu dalam dunia

nyata, baik secara fisik (manusia, rumah, mobil, laptop, sepeda motor dsb)
ataupun secara konsep (departemen, pekerjaan, mata kuliah dsb) dan dapat
dibedakan antara satu dengan yang lainnya (unique).
Setiap entitas pasti memiliki atribut yang mendeskripsikan karakteristik
(property) dari entitas tersebut. Penetapan atribut dari sebuah entitas berdasarkan

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

27

fakta yang ada atau berdasarkan kebutuhan. Atribut identik dengan kolom data
atau field dalam sebuah tabel.

Key Atribute
Atribute Key adalah satu atau gabungan atribut yang dapat membedakan
setiap baris data dalam sebuah tabel secara unik.
Atribute Key dibagi menjadi 3:
3. Super Key
Merupakan satu atau gabungan atribut yang dapat membedakan
setiap baris datadalam sebuah tabel secara unik.
4. Candidate Key
Adalah Super Key yang jumlah atributnya paling sedikit (minimal)
5. Primary Key
Adalah Candidate Key yang dipilih berdasarkan:
a. Key tersebut lebih sering untuk dijadikan acuan.
b. Key tersebut lebih ringkas.
c. Jaminan keunikan key tersebut lebih baik.

2.6.3

Relasi
Relasi menyatakan hubungan antar entitas termasuk terhadap entitas itu

sendiri (rekursif).

Hak Cipta © milik UPN "Veteran" Jatim :
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

28

Der ajat Kar dinalitas Rasio (Cardinality Ratio)
Kardinalitas relasi menunjukkan jumlah maksimum data entitas yang
dapat berelasi dengan entitas lain.
1. Satu Ke Satu (One to one)
Setiap data pada entitas A bisa berhubungan dengan maksimal satu
data pada entitas B, begitu pula sebaliknya.
2. Satu Ke Banyak (One to many)
Setiap data pada entitas A bisa berhubungan dengan banyak data
pada entitas B, tetapi data pada entitas B berhubungan maksimal
hanya dengan sebuah data di entitas A.
3. Banyak Ke Satu (Many to One)
Relasi ini merupakan kebalikan dari relasi satu ke banyak
6. Banyak Ke Banyak (Many to many)
Setiap data pada entitas A bisa berhubungan dengan banyak data pada
entitas B. Demikian pu