SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana
GIAN HANDAYATI
10112976
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
v
DAFTAR ISI ... v
DAFTAR GAMBAR ... viii
DAFTAR TABEL ... xiv
DAFTAR SIMBOL ... xvii
DAFTAR LAMPIRAN ... xx
BAB 1 PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 2
1.3 Maksud dan Tujuan ... 2
1.4 Batasan Masalah... 2
1.5 Metodologi Penelitian ... 3
1.5.1 Metode Pengumpulan Data ... 3
1.5.2 Metode Pembangunan Perangkat Lunak ... 4
1.6 Sistematika Penulisan ... 5
BAB 2 TINJAUAN PUSTAKA ... 7
2.1 Profil FTTM ITB ... 7
2.1.1 Sejarah FTTM ITB ... 7
2.1.2 Visi dan Misi FTTM ITB ... 8
2.1.3 Struktur Organisasi ... 9
2.2 Landasan Teori ... 18
2.2.1 Konsep Dasar Sistem ... 18
vi
2.2.6 Penjadwalan ... 22
2.2.7 Algoritma Genetika ... 22
BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 33
3.1 Analisis Sistem ... 33
3.1.1 Analisis Masalah ... 33
3.1.2 Analisis Sistem yang Sedang Berjalan ... 33
3.1.3 Analisis Aturan Bisnis ... 38
3.1.4 Analisis Algoritma Genetika ... 38
3.2 Analisis Kebutuhan Non Fungsional ... 43
3.2.1 Analisis Pengkodean ... 43
3.2.2 Analisis Jaringan ... 46
3.2.3 Analisis Kebutuhan Perangkat Keras ... 47
3.2.4 Analisis Kebutuhan Perangkat Lunak ... 48
3.2.5 Analisis Kebutuhan Pengguna ... 49
3.2.6 Analisis Basis Data ... 51
3.3 Analisis Kebutuhan Fungsional ... 53
3.3.1 Diagram Konteks ... 53
3.3.2 Data Flow Diagram (DFD) ... 54
3.3.3 Spesifikasi Proses ... 64
3.4 Perancangan Sistem ... 84
3.4.1 Perancangan Basis Data ... 84
vii
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 177
4.1 Implementasi Sistem ... 177
4.1.1 Implementasi Perangkat Lunak ... 177
4.1.2 Implementasi Perangkat Keras ... 177
4.1.3 Implementasi Basis Data ... 178
4.1.4 Implementasi Antarmuka ... 182
4.2 Pengujian Perangkat Lunak... 187
4.2.1 Pengujian Sistem ... 188
4.2.2 Rencana Pengujian ... 188
4.2.3 Pengujian Alpha ... 189
4.2.4 Pengujian Parameter Algoritma ... 194
4.2.5 Pengujian Beta ... 197
BAB 5 KESIMPULAN DAN SARAN ... 198
5.1 Kesimpulan ... 198
5.2 Saran ... 198
199
[2] R. S. Pressman, Software Engineering A Practitioner's Approach, New York:
McGraw-Hill Companies, 2010.
[3] "Fakultas Teknik Pertambangan dan Perminyakan ITB," Profil FTTM ITB,
Bandung, 2014.
[4] A. Kristanto, Perancangan Sistem Informasi dan Aplikasinya, Yogyakarta:
Gava Media, 2008.
[5] Fathansyah, Basis Data, Bandung: Informatika, 2012.
[6] K. R. Baker, Introduction to Sequencing and Scheduling, New York: John
Wiley & Sons, 1974.
[7] Suyanto, Algoritma Optimasi Deterministik atau Probabilitik, Yogyakarta:
Graha Ilmu, 2010.
[8] Z. Zukhri, Algoritma Genetika Metode Komputasi Evolusioner untuk
Menyelesaikan Masalah Optimasi, Yogyakarta: Andi, 2014.
[9] MADCOMS, Mendesain Website dengan Photoshop, FrontPage, dan
Pemrograman PHP-MySQL, Yogyakarta: ANDI, 2006.
[10] Sugiri and B. Kurniawan, Desain Web Menggunakan HTML dan CSS,
Yogyakarta: ANDI, 2007.
[11] Sugiri and H. Saputro, Pengelolaan Database MySQL dengan PhpMyAdmin,
Yogyakarta: Graha Ilmu, 2008.
[12] Firdaus, 7 Jam Belajar Interaktif PHP & MySQL dengan Dreamweaver,
Palembang: Maxikom, 2007.
[13] Soeroto, "Mozilla Firefox," November 2008. [Online]. Available:
http://giesoeroto.files.wordpress.com. [Accessed 6 April 2014].
iii
KATA PENGANTAR
Dengan mengucap Hamdalah penulis memanjatkan puji syukur atas kehadirat Allah SWT yang atas berkat dan rahmat-Nya penulis dapat menyelesaikan skripsi. Skripsi yang berjudul “Sistem Penjadwalan Ruangan di FTTM ITB Menggunakan Metode Algoritma Genetika” disusun untuk memperoleh gelar sarjana di Fakultas Teknik dan Ilmu Komputer Program Studi Teknik Informatika Universitas Komputer Indonesia.
Skripsi ini merupakan hasil dari penelitian yang dilakukan di Fakultas Teknik Pertambangan dan Perminyakan Institut Teknologi Bandung yang beralamat di Jl. Ganesha 10, Telp. 022-2504955 Bandung 40132. Penulis banyak mendapatkan pengalaman berharga, bantuan dan bimbingan dari berbagai pihak selama penulisan skripsi. Penulis mengucapkan terima kasih dan penghargaan setinggi-tingginya kepada :
1. Allah SWT yang telah memberikan kemudahan dan kesehatan bagi penulis dalam penyusunan skripsi ini.
2. Kedua orang tua dan saudara yang selalu memberikan doa restu, dukungan, dan kasih sayang yang tidak henti-hentinya kepada penulis.
3. Bapak Eko Budi Setiawan, S.Kom., M.T. selaku pembimbing dan dosen wali di Program Studi Teknik Informatika Universitas Komputer Indonesia.
4. Ibu Tati Harihayati M., S.T., M. T. selaku dosen penguji yang telah memberikan saran dalam penyusunan penulisan skripsi ini.
5. Bapak Dr. Adityawarman, S.T., M.T. selaku nara sumber, pihak fakultas, dan semua staff pegawai Program Studi Teknik Perminyakan FTTM ITB yang sudah mendukung dan memberikan respon positif selama penelitian dilaksanakan.
6. Bapak Irawan Afrianto, S.T., M.T. selaku ketua Program Studi Teknik Informatika Universitas Komputer Indonesia.
iv
8. Teman-teman di Teknik Informatika yang selalu mendukung, memberikan bantuan, serta membagikan informasi perkuliahan.
9. Semua pihak yang telah memberikan kontribusi dan bantuan kepada penulis sehingga penulis dapat menyelesaikan penulisan skripsi, namun tidak dicantumkan namanya satu per satu.
Dengan segala keterbatasan yang penulis miliki, skripsi yang telah tersusun ini masih jauh dari kesempurnaan baik itu kesalahan dalam segi bahasa maupun pemilihan kata, semoga skripsi ini dapat berguna dimasa yang akan datang bagi penulis khususnya dan bagi pembaca pada umumnya.
Bandung, Agustus 2014
Penulis
BIODATA PENULIS
A.DATA PRIBADI
Nama : Gian Handayati
Tempat Tanggal Lahir : Bandung, 25 Januari 1987
Agama : Islam
Kewarganegaraan : Indonesia
Status : Belum Menikah
Anak ke : 2 dari 3 bersaudara
Alamat : Curug Candung No. 65 RT 01 RW 05 Kel. Wates Kec. Bandung Kidul Kota Bandung
Nomor Telepon : 087824069896
Email : stweety87@gmail.com
B.RIWAYAT PENDIDIKAN 1. Sekolah Dasar
1992 – 1998 : SD Negeri Nata Endah 2 Bandung 2. Sekolah Menengah Pertama
1998 – 2001 : SMP Negeri 2 Margahayu Kabupaten Bandung 3. Sekolah Menengah Atas
2001– 2004 : SMA Negeri 1 Margahayu Kabupaten Bandung 4. Diploma
2004 – 2007 : Program Diploma 3 Manajemen Informatika Universitas Padjadjaran Bandung
5. Sarjana
Demikian riwayat hidup ini saya buat dengan sebenar-benarnya dalam keadaan sadar dan tanpa paksaan.
Bandung, 22 Agustus 2014
1
1.1 Latar Belakang
Institut Teknologi Bandung (ITB) merupakan lembaga pendidikan tinggi dan
pusat ilmu pengetahuan, teknologi, dan seni (IPTEKS) yang bertumpu pada
penelitian dan berorientasi pada pelayanan kepada masyarakat. ITB mempunyai
sistem penjadwalan yang dikelola oleh Biro Rooster, tetapi Biro Rooster hanya
menjadwalkan mata kuliah untuk program sarjana karena banyaknya mata kuliah
yang ada baik mata kuliah program sarjana maupun program pascasarjana serta
keterbatasan ruang kuliah umum. Biro Rooster menyerahkan penjadwalan mata
kuliah program pascasarjana pada masing-masing unit penyelenggara program
tersebut, salah satunya di Fakultas Teknik Pertambangan dan Perminyakan ITB
(FTTM ITB).
Berdasarkan hasil wawancara dengan Dr. Adityawarman selaku dosen di
Program Studi Teknik Perminyakan, jumlah keseluruhan program studi yang
berada di FTTM adalah sebanyak sebelas program studi yang terbagi dalam tiga
jenjang, yaitu empat program studi pada jenjang S1, empat program studi pada
jenjang S2, dan tiga program studi pada jenjang S3. FTTM memiliki tiga gedung
dengan jumlah ruang kuliah yang berbeda-beda. Jumlah ruang kuliah di gedung
Teknik Perminyakan lebih banyak dibandingkan dengan gedung lainnya karena
gedung tersebut digunakan oleh tiga program studi, yaitu program studi S2 Teknik
Perminyakan, S3 Teknik Perminyakan, dan S2 Teknik Panas Bumi.
Gedung Teknik Perminyakan memiliki empat ruangan perkuliahan. Ruangan
tersebut digunakan untuk dua puluh sampai tiga puluh mata kuliah program
pascasarjana Teknik Perminyakan dan Teknik Panas Bumi dalam satu semester.
Pembuatan jadwal penggunaan ruangan yang sedang berjalan saat ini
menggunakan MicrosoftOffice Excel. Dosen menyesuaikan terlebih dahulu waktu
mengajar mata kuliah program pascasarjana dengan waktu mengajar mata kuliah
program sarjana yang sudah dilakukan oleh Biro Rooster. Kemudian, dosen
waktu kesediaan mengajar dengan kesediaan ruangan yang ada. Jadwal yang
ditentukan tidak melihat sampai ke level mahasiswa sehingga dapat terjadi
bentrok jadwal pada sebagian mahasiswa.
Berdasarkan uraian yang telah dijelaskan, FTTM ITB membutuhkan sebuah
sistem yang dapat mengoptimalkan penjadwalan ruangan di gedung Teknik
Perminyakan sehingga tidak terjadi bentrok jadwal. Pendekatan yang digunakan
berdasarkan kebutuhan tersebut yaitu membangun Sistem Penjadwalan Ruangan
di FTTM ITB.
1.2 Rumusan Masalah
Berdasarkan latar belakang yang telah dijelaskan pada subbab 1.1, maka dapat
dirumuskan masalah yaitu bagaimana membangun sistem penjadwalan ruangan di
gedung Teknik Perminyakan FTTM ITB yang digunakan untuk perkuliahan
beberapa program studi.
1.3 Maksud dan Tujuan
Maksud dari penelitian tugas akhir ini adalah untuk membangun suatu sistem
penjadwalan ruangan di gedung Teknik Perminyakan FTTM ITB, sedangkan
tujuan yang ingin dicapai yaitu mempermudah penjadwalan penggunaan ruangan
agar dapat mengurangi terjadinya bentrok jadwal.
1.4 Batasan Masalah
Batasan dalam penelitian tugas akhir ini meliputi :
1. Ruangan yang akan dibahas adalah ruang perkuliahan yang berada di gedung
Teknik Perminyakan.
2. Mata kuliah yang akan dibahas adalah mata kuliah program pascasarjana pada
program studi Teknik Perminyakan dan Teknik Panas Bumi.
3. Data yang diolah meliputi data pengguna, program studi, tahun akademik,
semester, dosen, mata kuliah, mahasiswa, ruangan, kelas, waktu berhalangan
dosen mengajar, hari dan jam perkuliahan.
4. Metode yang digunakan dalam menyusun jadwal ruangan adalah Algoritma
5. Keluaran dari sistem yang dibangun yaitu jadwal penggunaan ruangan setiap
semester.
6. Sistem yang dibangun adalah sistem berbasis web (intranet).
7. Pemodelan data yang digunakan adalah pemodelan terstruktur dengan
menggunakan flowmap, Data Flow Diagram, dan Entity Relationship
Diagram.
8. Tools yang digunakan dalam membangun sistem ini adalah bahasa
pemrograman PHP, HTML, CSS, MySQL Database Management System,
Apache Web Server, PHP Expert Editor, dan web browser Mozilla Firefox.
1.5 Metodologi Penelitian
Metode yang akan digunakan dalam menyusun tugas akhir ini adalah metode
deskriptif, yaitu penelitian yang berusaha mendeskripsikan suatu gejala, peristiwa,
kejadian yang terjadi pada saat sekarang [1]. Metode penelitian ini dilakukan
dengan pengumpulan data dan pembuatan perangkat lunak dengan model
Waterfall.
1.5.1 Metode Pengumpulan Data
Metode pengumpulan data bertujuan untuk memperoleh data apa saja yang
dibutuhkan pada sistem yang akan dibangun. Metode pengumpulan data yang
dilakukan adalah sebagai berikut:
1. Studi Lapangan
Studi lapangan adalah pengumpulan data yang dilakukan dengan mengadakan
penelitian di FTTM ITB. Studi lapangan ini dilakukan dengan dua cara, yaitu:
a. Observasi
Observasi adalah metode pengumpulan data dengan mengadakan
penelitian dan peninjauan langsung terhadap permasalahan yang diambil.
Observasi dilaksanakan pada kantor tata usaha Teknik Perminyakan
bagian sarana dan prasarana.
b. Wawancara
Wawancara adalah metode pengumpulan data dengan mengadakan tanya
Wawancara dilakukan bersama Bapak Dr. Adityawarman selaku dosen,
Ibu Feri Rezeki Hastuti selaku koordinator tata usaha, dan Bapak Oman
Rohman selaku petugas bagian sarana dan prasarana di Program Studi
Teknik Perminyakan.
2. Studi Literatur
Studi literatur merupakan metode pengumpulan data dengan cara
mengumpulkan jurnal, paper dan bacaan-bacaan yang berkaitan dengan
masalah yang akan dibahas dalam pembuatan skripsi.
1.5.2 Metode Pembangunan Perangkat Lunak
Metode pembangunan perangkat lunak yang digunakan adalah waterfall
model. Model waterfall terdiri dari lima tahapan, yaitu communication, planning,
modeling, construction, dan deployment. Gambar 1.1 menggambarkan lima
tahapan dari metode pembangunan perangkat lunak dengan model waterfall.
Gambar 1.1 Model Waterfall [2]
Tahap-tahap pembangunan perangkat lunak dengan menggunakan model
waterfall adalah sebagai berikut :
1. Communication
Communication merupakan tahap analisis kebutuhan perangkat lunak dan
pengumpulan data. Kebutuhan perangkat lunak diidentifikasi dengan cara
melakukan observasi di tempat penelitian, wawancara dengan pihak pengguna
sistem, dan mengumpulkan data-data dibutuhkan.
2. Planning
Planning merupakan tahap penyusunan rencana-rencana yang akan dilakukan
selama pembangunan perangkat lunak meliputi pembuatan jadwal dari setiap
3. Modeling
Modeling merupakan tahap pemodelan setiap kebutuhan perangkat lunak yang
telah didapatkan ke dalam beberapa tools diantaranya flowmap, ERD, dan DFD,
serta melakukan perancangan basis data, struktur menu, antarmuka, pesan, dan
prosedural.
4. Construction
Construction merupakan penulisan kode dengan bahasa pemrograman PHP dan
MySQL sebagai Database Management System (DBMS) berdasarkan hasil
pemodelan pada tahap sebelumya, kemudian dilakukan pengujian terhadap kode
program yang dibuat.
5. Deployment
Deployment merupakan penyerahan perangkat lunak kepada pihak pengguna
untuk mendapatkan tanggapan mengenai sistem yang telah dibangun.
1.6 Sistematika Penulisan
Secara umum tugas akhir akan disusun berdasarkan sistematika sebagai
berikut: Bab I Pendahuluan, Bab II Tinjauan Pustaka, Bab III Analisis dan
Perancangan Sistem, Bab IV Implementasi dan Pengujian Sistem, Bab V
Kesimpulan dan Saran.
BAB I PENDAHULUAN
Bab ini berisi antara lain latar belakang, rumusan masalah, maksud dan tujuan,
batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB II TINJAUAN PUSTAKA
Bab ini berisi profil, visi misi, dan struktur organisasi di FTTM ITB; dasar
teori dan tinjauan literatur yang mendukung penulisan tugas akhir.
BAB III ANALISIS DAN PERANCANGAN SISTEM
Bab ini berisi analisis sistem, analisis masalah, analisis sistem yang berjalan,
analisis pengkodean, analisis kebutuhan non fungsional, analisis basis data, dan
analisis kebutuhan fungsional. Analisis merupakan tahap awal dari pembangunan
perangkat lunak. Setelah itu dilanjutkan pada perancangan, seperti perancangan basis
data, struktur menu, antarmuka, jaringan semantik dan prosedural untuk sistem yang
BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi hasil implementasi dari analisis dan perancangan sistem yang
dibuat antara lain implementasi perangkat lunak, implementasi perangkat keras,
implementasi basis data, implementasi antarmuka, serta hasil pengujian sistem
menggunakan pengujian black box dengan teknik pengujian alpha.
BAB V KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dan saran yang dapat ditarik dari penelitian. Bab ini
menguraikan jawaban dari rumusan masalah yang dikemukakan pada bagian
pendahuluan. Selain itu diuraikan juga saran yang berkaitan dengan penelitian
yang telah dilakukan, yaitu saran yang disimpulkan dari implementasi hasil
7
2.1Profil FTTM ITB
Fakultas Teknik Pertambangan dan Perminyakan merupakan salah satu
fakultas dari tiga belas fakultas dan sekolah yang ada di Institut Teknologi
Bandung (ITB). FTTM beralamat di Gedung Basic Science Center B lantai 4
Jalan Ganesa No. 10 Bandung, 40132, telp. (022) 2506282, fax (022) 2514922,
email: info@fttm.itb.ac.id. FTTM mempunyai tujuh kelompok keahlian
(Eksplorasi Sumber Daya Bumi; Teknik Pertambangan; Teknik Pemboran,
Produksi, dan Manajemen Migas; Teknik Reservoir; Teknik Metalurgi; Geofisika
Terapan; Geofisika Global) serta sebelas program studi yaitu Teknik Metalurgi,
Teknik Pertambangan, Teknik Perminyakan, dan Teknik Geofisika pada jenjang
S1; Teknik Perminyakan, Teknik Geofisika, Teknik Panas Bumi, dan Rekayasa
Pertambangan pada jenjang S2; serta Teknik Perminyakan, Teknik Geofisika, dan
Rekayasa Pertambangan pada jenjang S3 [3].
2.1.1 Sejarah FTTM ITB
Secara runut dan ringkas, sejarah Fakultas Teknik Pertambangan dan
Perminyakan (FTTM) sejak berdiri hingga saat ini dapat dibagi dalam lima
perioda restrukturisasi. Setiap tahapan perioda restrukturisasi menyesuaikan
dengan perkembangan ilmu dan teknologi untuk mengatasi masalah pada
masanya. Adapun tahun-tahun penting selama lima perioda restrukturisasi
tersebut diatas dapat dilihat seperti berikut [3]:
1. Tahap Persiapan (1948-1963)
a. Tahun 1948, bagian Tambang berdiri di bawah Fakultet
Pengetahuan Teknik Universitas Indonesia.
b. Tahun 1950, bagian Geologi berdiri di bawah Fakultet Ilmu Pasti
dan Alam, Universitas Indonesia.
c. Tahun 1953, dibuka program pendidikan Tambang Umum dari
d. Tahun 1962, dibuka bagian Teknik Perminyakan pada Departemen
Teknologi Mineral.
e. Tahun 1963, dibuka jalur pilihan Metalurgi di bagian Tambang
pada Departemen Teknologi Mineral.
2. Perioda Pengembangan Tahap I (1963-1999)
a. Tahun 1973, Departemen Teknologi Mineral digabungkan ke
dalam Fakultas Teknologi Industri.
b. Tahun 1984, Fakultas Teknologi Mineral (FTM) dibentuk dengan
memiliki jurusan Teknik Geologi, Teknik Pertambangan, dan
Teknik Perminyakan.
c. Tahun 1988, Jurusan Teknik Geologi membentuk Program Studi
Teknik Geofisika.
3. Perioda Pengembangan Tahap II (1998-2005)
- Tahun 1998, perubahan nomenklatur Fakultas Teknologi Mineral
(FTM) menjadi Fakultas Ilmu Kebumian dan Teknologi Mineral
(FIKTM).
4. Perioda Pengembangan Tahap III (2005-2007)
- Tahun 2006, pembentukkan Program Studi Metalurgi terpisah dari
Program Studi Teknik Pertambangan.
5. Perioda Pengembangan Tahap IV (2007-Sekarang)
- Tahun 2007, Pemisahan FIKTM menjadi Fakultas Teknik
Pertambangan dan Perminyakan (FTTM) dan Fakultas Ilmu
Kebumian (FITB).
2.1.2 Visi dan Misi FTTM ITB
FTTM ITB pada dasarnya akan dikembangkan menjadi suatu lembaga
pendidikan dengan mengedepankan keunikan tektonik Indonesia. Dengan
menyandarkan pengembangan FTTM kepada keunikan tersebut, maka FTTM
memiliki peluang untuk menjadi lembaga pendidikan di bidang teknologi
eksplorasi, eksploitasi dan pemanfaatan sumber daya bumi yang unggul dari
lembaga sejenis di dalam dan luar negeri. Di samping itu FTTM juga berpotensi
orientasi kepada penelitian yang berkelanjutan dan menggali keunikan tektonik
Indonesia [3].
a. Visi FTTM ITB
Visi FTTM ITB adalah menjadi pusat pengembangan teknologi eksplorasi,
eksploitasi dan pemanfaatan sumber daya bumi yang unggul, handal dan
bermartabat di dunia berdasarkan konsep konservasi yang ramah lingkungan, serta
turut aktif menghantarkan masyarakat Indonesia menjadi bangsa yang bersatu,
berdaulat, dan sejahtera [3].
b. Misi FTTM ITB
Misi FTTM ITB adalah mengembangkan teknologi eksplorasi, eksploitasi dan
pemanfaatan sumber daya bumi melalui kegiatan tridarma perguruan tinggi yang
inovatif, bermutu dan tanggap terhadap tantangan lokal dan perkembangan global
[3].
2.1.3 Struktur Organisasi
Berdasarkan struktur organisasi di ITB, FTTM membawahi dan
mengkoordinasikan kegiatan program studi, kelompok keahlian, dan
laboratorium. Gambar 2.1 menunjukan gambaran lengkap struktur organisasi
Gambar 2.1 Struktur Organisasi FTTM ITB [3]
Tugas dan fungsi setiap bagian dari struktur organisasi FTTM ITB pada
gambar 2.1 dapat dideskripsikan sebagai berikut:
1. Dekan, bertugas untuk :
a. Melakukan koordinasi, membina dan membangun sinergi diantara KK
b. Mengangkat pimpinan KK berdasarkan mekanisme dan tata cara yang
ditetapkan oleh SA (Senat Akademik).
c. Merintis, membina, meningkatkan dan mengembangkan kerjasama
eksternal.
d. Mengkoordinasikan pelaksanaan penyelenggaraan kegiatan pendidikan,
penelitian, dan pengabdian kepada masyarakat yang berada di dalam
lingkupnya.
e. Melakukan koordinasi pengembangan pegawai Institut dalam lingkup
Fakultas agar misi institusi dapat tercapai dalam harmoni.
f. Memelihara dan mengembangkan laboratorium dan fasilitas lainnya serta
mengkoordinasikan pendayagunaannya yang maksimal untuk
terselenggaranya kegiatan akademik dengan hasil yang optimal.
g. Menjaga dan mengembangkan iklim akademik yang kondusif guna
terselenggaranya kegiatan akademik dengan hasil yang baik.
h. Mengusulkan Renstra Fakultas sebagai penjabaran lebih lanjut Renstra
Institut, dan RKA Fakultas dengan persetujuan SF (Senat Fakultas) sesuai
dengan mekanisme dan ketentuan Institut.
i. Membuat Laporan Tengah Tahunan dan Laporan Tahunan Fakultas.
j. Mengevaluasi kinerja KK yang ada dalam tanggung jawabnya sesuai
dengan kriteria dan tolok ukur yang ditetapkan oleh SF.
k. Mengusulkan kenaikan pangkat dan jabatan dosen berdasarkan pengusulan
KK yang ada di bawah tanggung jawabnya.
l. Memberikan informasi akademik sesuai dengan permintaan kepada
anggota SF dalam rangka menjalankan tugasnya baik secara langsung atau
tidak langsung.
m. Memberikan fasilitas kepada SF guna menjalankan fungsinya dengan baik
sesuai dengan Peraturan Institut.
2. Wakil Dekan Bidang Akademik, bertugas untuk:
Membantu Dekan dalam menyusun rencana, memberi tugas dan arahan,
mengkoor-dinasikan pimpinan unit kerja di bidang akademik di lingkungan
kegiatan akademik berdasarkan peraturan perundang-undangan yang berlaku
untuk kelancaran pelaksanaan tugas. Wakil Dekan Bidang Akademik
mengkoordinir secara langsung Kepala Sub Bagian Akademik.
3. Wakil Dekan Bidang Sumberdaya, bertugas untuk:
Membantu Dekan dalam menyusun rencana, memberi tugas dan arahan,
mengkoordinasikan pimpinan unit kerja di bidang sumberdaya termasuk
keuangan di lingkungan Fakultas serta merumuskan kebijakan teknis dan
memonitor pelaksanaan kegiatan berdasarkan peraturan perundang-undangan
yang berlaku untuk kelancaran pelaksanaan tugas. Wakil Dekan Bidang
Sumberdaya mengkoordinir secara langsung Kepala Sub Bagian
Kepegawaian, Kepala Sub Bagian Keuangan, dan Kepala Sub Bagian Sistem
Informasi.
4. Senat Fakultas, merupakan badan normatif di tingkat Fakultas yang
merepresentasikan komunitas akademiknya, dan berfungsi sebagai berikut:
a. Mengartikulasikan setiap kebijakan Senat Akademik ITB dalam lingkup
Fakultas.
b. Menetapkan dan menjaga tegaknya norma dan etika akademik dalam
komunitasnya.
c. Menetapkan arah pengembangan Fakultas.
d. Memantau dan mengevaluasi kinerja Pimpinan Fakultas dalam
penyelenggaraan kegiatan akademik.
Tugas dan wewenang Senat Fakultas meliputi:
a. Menetapkan visi, misi dan arah pengembangan Fakultas.
b. Menetapkan kebijakan dasar penyelenggaraan dan pengembangan
kegiatan akademik dalam lingkup keilmuannya.
c. Memberikan persetujuan atas pengusulan Renstra serta RKA Fakultas
serta RKA Fakultas oleh Dekan sesuai dengan mekanisme dan ketentuan
ITB.
d. Menetapkan ketentuan mengenai garis besar arah dan kebijakan
e. Mengusulkan pembentukan, penggabungan dan pengelompokan KK di
lingkungan Fakultas kepada Senat Akademik.
f. Mengusulkan calon Pimpinan Fakultas kepada Rektor.
g. Menetapkan arah pengembangan kurikulum pendidikan program-program
studi yang diselenggarakan Fakultasnya.
h. Menilai kinerja Pimpinan Fakultas dan memberikan hasil penilaiannya
sebagai masukan kepada Rektor.
i. Menyetujui usulan penerimaan, pengangkatan dosen pada jabatan
fungsional akademik,serta kenaikan pangkat dosen di Fakultasnya.
j. Memilih wakilnya untuk menjadi anggota Senat Akademik ITB.
5. Kelompok Keahlian, berfungsi :
a. Mengembangkan dan memegang otoritas keilmuan dan keahlian pada
lingkupnya.
b. Mengembangkan dan membina karir dosen.
c. Mengembangkan perkuliahan dengan mengembangkan isi dan proses
pembelajaran matakuliah yang ada dalam lingkupnya untuk melayani
program-program pendidikan yang memerlukannya.
d. Melaksanakan program-program penelitian dan pengabdian kepada
masyarakat.
e. Mengembangkan jejaring dan kerjasama keilmuan dan keprofesian dalam
lingkupnya melalui koordinasi Fakultas.
6. Ketua Program Studi berfungsi:
a. Mengoperasikan program pendidikan pada jenjang tertentu berdasarkan
kurikulum dan target kinerja tertentu guna memenuhi kebutuhan
masyarakat pengguna lulusan, berdasarkan antisipasi perkembangan ilmu
pengetahuan, teknologi, seni, ilmu sosial dan kemanusiaan, serta
perkembangan ekonomi, sosial dan budaya.
b. Mengoperasikan program pendidikan dengan mendayagunakan secara
7. Kepala Bagian Tata Usaha, bertugas :
a. Menyusun rencana dan program kerja bagian dan mempersiapkan
penyusunan rencana dan program kerja fakultas.
b. Menghimpun dan menelaah peraturan perundang-undangan di bidang
ketatausahaan.
c. Mengumpulkan, mengolah, dan menganalisis data ketatausahaan.
d. Melaksanakan urusan persuratan dan kearsipan fakultas.
e. Melaksanakan urusan kerumahtanggaan fakultas.
f. Melaksanakan urusan rapat dinas dan upacara resmi di lingkungan
fakultas.
g. Melaksanakan urusan pengelolaan barang perlengkapan di lingkungan
fakultas.
h. Melaksanakan urusan kepegawaian fakultas.
i. Melaksanakan urusan keuangan fakultas, yang meliputi penyusunan
anggaran dan rencana penggunaan anggaran, pelaksanaan anggaran dan
monitor pelaksanaan anggaran.
j. Melaksanakan administrasi pendidikan, penelitian, dan pengabdian pada
masyarakat.
k. Melaksanakan administrasi kemahasiswaan dan hubungan alumni fakultas.
l. Melaksanakan pemantauan dan evaluasi kegiatan di lingkungan fakultas.
m. Melaksanakan administrasi perencanaan dan pelayanan informasi.
n. Melaksanakan urusan penerimaan tamu pimpinan.
o. Melaksanakan penyimpanan dokumen dan surat yang berhubungan
dengan kegiatan fakultas.
p. Menyusun laporan Bagian dan mempersiapkan penyusunan laporan
fakultas.
8. Sub Bagian Administrasi Akademik dan Kemahasiswaan, bertugas:
a. Menyusun rencana dan program kerja Sub Bagian dan mempersiapkan
b. Menghimpun dan mengkaji peraturan perundang-undangan di bidang
akademik dan kemahasiswaan, penelitian, dan pengabdian pada
masyarakat.
c. Mengumpulkan, mengolah, dan menganalisis data di bidang pendidikan,
penelitian, dan pengabdian pada masyarakat.
d. Melakukan penyusunan jadual perkuliahan, praktikum, dan pelaksanaan
ujian.
e. Melakukan administrasi perkuliahan, praktikum, dan pelaksanaan ujian.
f. Mengurus pendaftaran ulang dan rencana studi mahasiswa.
g. Mempersiapkan pelaksanaan sidang Tugas Akhir, Tesis, dan Disertasi.
h. Mempersiapkan bahan informasi untuk evaluasi studi mahasiswa dan
mengurus penyelesaian ijazah.
i. Melakukan urusan kegiatan pertemuan ilmiah di lingkungan fakultas.
j. Melakukan dokumentasi dan publikasi kegiatan kemahasiswaan.
k. Melaksanakan urusan pemberian ijin/rekomendasi kegiatan mahasiswa.
l. Mempersiapkan usul pemilihan mahasiswa berprestasi di tingkat fakultas.
m. Melakukan administrasi penelitian dan pengabdian pada masyarakat di
lingkungan fakultas.
n. Melakukan penyimpanan dokumen dan surat di bidang pendidikan,
penelitian, dan pengabdian pada masyakarat.
o. Mempersiapkan bahan pemberian informasi yang berhubungan dengan
laporan hasil penelitian dan pengabdian pada masyarakat.
p. Menyusun laporan Sub Bagian dan mempersiapkan penyusunan laporan
fakultas.
9. Sub Bagian Keuangan, bertugas :
a. Menyusun rencana dan program kerja Sub Bagian dan mempersiapkan
penyusunan rencana dan program kerja fakultas.
b. Melakukan penerimaan, penyimpanan, pengeluaran, pembukuan, dan
pertanggungjawaban anggaran fakultas.
c. Melakukan pembayaran gaji, honorarium, insentif, beasiswa, perjalanan
d. Melakukan pencatatan, pengarsipan bukti penerimaan, dan pengeluaran
anggaran fakultas.
e. Mengumpulkan, mengolah, dan menganalisis data di bidang perencanaan,
anggaran, dan keuangan.
f. Mempersiapkan penyusunan proyeksi pengembangan serta melaksanakan
penyusunan rencana strategi dan rencara operasional.
g. Melaksanakan pemantauan dan evaluasi pelaksanaan rencana dan
program.
h. Melaksanakan identifikasi masalah perkembangan pelaksanaan rencana
dan program.
i. Melaksanakan penyusunan usul penyesuaian pelaksanaan rencana dan
program.
j. Melaksanakan urusan penyajian data perkembangan pelaksanaan rencana
dan program.
k. Melaksanakan penyusunan laporan perkembangan hasil pelaksanaan
rencana dan program.
l. Melaksanakan penyimpanan dokumen dan surat di bidang perencanaan,
anggaran, dan keuangan fakultas.
m. Menyusun laporan Sub Bagian dan mempersiapkan laporan fakultas.
10.Sub Bagian Administrasi Kepegawaian, bertugas :
a. Menyusun rencana dan program kerja Sub Bagian dan mempersiapkan
penyusunan rencana dan program kerja fakultas.
b. Menghimpun dan mengkaji peraturan perundang-undangan di bidang
kepegawaian.
c. Mempersiapkan rencana kebutuhan pegawai.
d. Mempersiapkan dan penyusun penugasan pegawai.
e. Mempersiapkan usulan mutasi, pengembangan, dan kesejahteraan
pegawai.
f. Melakukan urusan pemberian cuti pegawai.
g. Melakukan urusan penyelesaian kasus kepegawaian di tingkat fakultas.
i. Mempersiapkan surat keterangan untuk mendapatkan pembayaran
tunjangan keluarga.
j. Mempersiapkan usulan tugas belajar, pengangkatan kembali, dan
penugasan lainnya.
k. Mempersiapkan penilaian kinerja pegawai fakultas.
l. Melakukan penyimpanan dokumen dan surat di bidang kepegawaian.
m. Menyusun laporan Sub Bagian dan mempersiapkan penyusunan laporan
fakultas.
11.Sub Bagian Sarana dan Prasarana, bertugas :
a. Menyusun rencana dan program kerja Sub Bagian dan mempersiapkan
penyusunan rencana dan program kerja fakultas.
b. Mengumpulkan, mengolah, dan menganalisis data barang inventaris di
lingkungan fakultas.
c. Melakukan penyusunan rencana kebutuhan barang habis (ATK) termasuk
kebutuhan laboratorium yang berada di lingkungan fakultas.
d. Melaksanakan penyimpanan, pemeliharaan, pendistribusian, inventarisasi,
dan usul penghapusan barang perlengkapan.
e. Melakukan penyusunan instrumen pemantauan sarana dan prasarana.
f. Melakukan urusan pemantauan dan evaluasi penggunaan dan
pemeliharaan barang perlengkapan.
g. Melaksanakan pemeliharaan dan pengaturan penggunaan bangunan,
kendaraan dinas dan fasilitas fisik lainnya yang dikuasai oleh fakultas.
h. Melakukan pemeliharaan kebersihan, keindahan, dan keamanan
lingkungan.
i. Melakukan penyimpanan dokumen dan surat di bidang sarana dan
prasarana.
j. Menyusun laporan Sub Bagian dan mempersiapkan penyusunan laporan
fakultas.
12.Sub Bagian Perencanaan dan Sistem Informasi, bertugas :
a. Mengkoordinasi pengoperasian, pemeliharaan, dan pengembangan sistem
b. Melakukan pengembangan sistem informasi manajemen dan akademik
sesuai dengan kebutuhan unit organisasi fakultas.
c. Menyimpan, melakukan updating, dan menyajikan data dan informasi
sesuai dengan kebutuhan unit organisasi fakultas.
13.Koordinator, bertugas :
a. Membantu Ketua Program Studi dan Ketua Kelompok Keahlian dalam
mengelola dan mengendalikan kegiatan administrasi di lingkungan
program studi.
b. Mengkoordinasikan kegiatan kehumasan di lingkungan program studi.
c. Berkoordinasi dengan subbagian terkait di kantor fakultas.
2.2 Landasan Teori
Landasan teori membahas beberapa teori dasar yang berhubungan dengan
penulisan tugas akhir. Teori yang akan dibahas dalam subbab 2.2 adalah konsep
dasar sistem, konsep dasar informasi, konsep dasar sistem informasi, desain
sistem, algoritma genetika, dan perangkat lunak pendukung.
2.2.1 Konsep Dasar Sistem
Suatu sistem adalah jaringan kerja dari prosedur-prosedur yang saling
berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau
menyelesaikan suatu sasaran tertentu. Suatu sistem yang baik harus mempunyai
tujuan dan sasaran yang tepat karena hal ini akan sangat menentukan dalam
mendefinisikan masukan yang dibutuhkan sistem dan juga keluaran yang
dihasilkan. Sistem juga merupakan kumpulan elemen-elemen yang saling terkait
dan bekerja sama untuk memproses masukan yang ditujukan kepada sistem
tersebut dan mengolah masukan tersebut sampai menghasilkan keluaran yang
Tujuan
Batasan
Kontrol
Input Proses Output
Umpan Balik
Gambar 2.2 Elemen-Elemen Sistem [4]
Gambar 2.2 menjelaskan bahwa tujuan, batasan, dan kontrol sistem akan
berpengaruh pada input, proses, dan output. Input yang masuk dalam sistem akan
diproses dan diolah sehingga menghasilkan output. Output tersebut akan menjadi
umpan balik bagi penerima dan dari umpan balik ini akan muncul segala macam
pertimbangan untuk input selanjutnya. Siklus ini akan berlanjut dan berkembang
sesuai dengan permasalahan yang ada.
2.2.2 Konsep Dasar Informasi
Informasi merupakan kumpulan data yang diolah menjadi bentuk yang lebih
berguna dan lebih berarti bagi yang menerima. Tanpa suatu informasi, suatu
sistem tidak akan berjalan dengan lancar dan akhirnya bisa mati. Suatu organisasi
tanpa adanya suatu informasi maka organisasi tersebut tidak bisa berjalan dan
tidak bisa beroperasi [4].
Data yang akan diolah dimasukan melalui elemen input kemudian diproses
menjadi suatu output. Output adalah informasi yang dibutuhkan atau diterima oleh
pengguna. Kualitas informasi tergantung dari tiga hal yang sangat dominan, yaitu
[4] :
1. Akurat, informasi yang dihasilkan harus bebas dari kesalahan-kesalahan dan
2. Tepat waktu, informasi yang diterima harus tepat pada waktunya, sebab kalau
informasi yang diterima terlambat maka informasi tersebut sudah tidak
berguna lagi.
3. Relevan, informasi harus mempunyai manfaat bagi penerima, sebab informasi
ini akan digunakan untuk pengambilan suatu keputusan dalam pemecahan
suatu permasalahan.
4. Ekonomis, efisien, dan dapat dipercaya, informasi yang dihasilkan
mempunyai manfaat yang lebih besar dibandingkan dengan biaya
mendapatkannya.
2.2.3 Konsep Dasar Sistem Informasi
Sebuah sistem informasi merupakan kumpulan dari perangkat keras dan
perangkat lunak komputer serta perangkat manusia yang akan mengolah data
menggunakan perangkat keras dan perangkat lunak tersebut. Selain itu data juga
memegang peranan yang penting dalam sistem informasi. Sistem informasi dapat
didefinisikan sebagai berikut [4] :
1. Suatu sistem yang dibuat oleh manusia yang terdiri dari komponen-komponen
dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi.
2. Sekumpulan prosedur organisasi yang pada saat dilaksanakan akan
memberikan informasi bagi pengambil keputusan dan atau untuk
mengendalikan organisasi.
3. Suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan
pengolahan transaksi, mendukung operasi, bersifat manajerial, dan kegiatan
strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan
laporan-laporan yang diperlukan.
2.2.4 Desain Sistem
Desain sistem adalah suatu fase dimana diperlukan suatu keahlian
perencanaan untuk elemen-elemen komputer yang akan menggunakan sistem baru
[4]. Alat bantu yang dapat digunakan dalam desain sistem yaitu Diagram Konteks
(Context Diagram), DFD (Data Flow Diagram), spesifikasi proses (Process
1. Diagram Konteks
Diagram konteks adalah sebuah diagram sederhana yang menggambarkan
hubungan antara entiti luar, masukan, dan keluaran dari sistem. Diagram
konteks direpresentasikan dengan lingkaran tunggal yang mewakili
keseluruhan sistem.
2. DFD (Data Flow Diagram)
DFD adalah suatu model logika data atau proses yang dibuat untuk
menggambarkan dari mana asal data dan kemana tujuan data yang keluar dari
sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan
interaksi antara data yang tersimpan dan proses yang dikenakan pada data
tersebut. DFD menggambarkan penyimpanan data dan proses yang
mentransformasikan data. DFD menunjukan hubungan antara data pada sistem
dan proses pada sistem.
3. Spesifikasi Proses
Spesifikasi proses adalah suatu pendeskripsian proses yang terjadi pada level
paling dasar dalam DFD. Selain itu dalam spesifikasi proses ada bagian yang
harus dilakukan ketika masukan diubah menjadi keluaran.
4. Kamus Data
Kamus data adalah kumpulan elemen-elemen atau simbol-simbol yang
digunakan untuk membantu dalam penggambaran atau pengidentifikasian
setiap field atau file di dalam sistem.
2.2.5 Diagram E-R
Diagram Entity-Relationship adalah diagram yang berisi
komponen-komponen himpunan entitas dan himpunan relasi yang masing-masing dilengkapi
dengan atribut-atribut yang merepresentasikan seluruh fakta dari dunia nyata yang
ditinjau. Notasi-notasi simbolik di dalam Diagram E-R yang dapat digunakan
adalah [5]:
a. Persegi panjang, menyatakan himpunan entitas.
b. Lingkaran/elip, menyatakan atribut (atribut yang berfungsi sebagai key
digarisbawahi).
d. Garis, sebagai penghubung antara himpunan relasi dengan himpunan entitas
dan himpunan entitas dengan atributnya.
e. Kardinalitas relasi dapat dinyatakan dengan banyaknya garis cabang atau
dengan pemakaian angka (1 dan 1 untuk relasi satu-ke-satu, dan N untuk relasi
satu-ke-banyak atau N dan N untuk relasi banyak-ke-banyak).
2.2.6 Penjadwalan
Penjadwalan merupakan alokasi dari sumber daya terhadap waktu untuk
menghasilkan sebuah kumpulan pekerjaan [6]. Proses penjadwalan mata kuliah di
perguruan tinggi berbeda dengan proses penjadwalan mata pelajaran di sekolah
menengah atas. Pada perguruan tinggi, proses penjadwalan harus melihat sampai
ke level mahasiswa. Mahasiswa diperbolehkan mengambil sebagian mata kuliah
tingkat bawah atau mengambil sebagian mata kuliah tingkat atas. Hal ini
memungkinkan terjadinya bentrok pada jadwal kuliah sebagian mahasiswa,
sehingga proses penentuan jadwal harus dilihat baik dari sisi dosen maupun
mahasiswa [7].
2.2.7 Algoritma Genetika
Algoritma Genetika merupakan teknik pencarian yang diadopsi dari proses
evolusi alam. Proses komputasi yang terjadi dalam algoritma ini analog dengan
proses seleksi makhluk hidup dalam sebuah populasi. Pemetaan proses alamiah ke
dalam proses komputasi Algoritma Genetika dapat dirangkum dalam tabel 2.1 [8].
Tabel 2.1 Pemetaan Proses Alamiah ke Proses Komputasi
Proses Alamiah Proses Komputasi
Individu Penyelesaian masalah
Populasi Himpunan penyelesaian
Fitness/kebugaran Kualitas penyelesaian
Kromosom Kode/representasi penyelesaian
Gen Bagian dari representasi penyelesaian
Pertumbuhan Pendekodean representasi penyelesaian
Penyilangan Operator genetika
Mutasi Operator genetika
Seleksi Alam Menyeleksi penyelesaian masalah (sementara) berdasarkan
kualitasnya
Kerangka kerja penerapan Algoritma Genetika untuk menyelesaikan suatu
Pendekatan
Kromosom1, Kromosom2, … KromosomUkuranPopulasi
Evaluasi
Gambar 2.3 Kerangka Kerja Penerapan Algoritma Genetika
Struktur dasar Algoritma Genetika terdiri atas beberapa langkah, yaitu :
1. Inisialisasi populasi.
2. Evaluasi populasi.
3. Seleksi populasi yang akan dikenai operator genetika.
4. Proses penyilangan pasangan kromosom tertentu.
5. Proses mutasi kromosom tertentu.
6. Evaluasi populasi baru.
7. Ulangi dari langkah 3 selama syarat berhenti belum terpenuhi.
2.2.7.1 Pengkodean dan Inisialisasi Populasi dalam Algoritma Genetika
Pengkodean merupakan bagian penting dalam Algoritma Genetika. Proses ini
diperlukan dalam kaitannya dengan peranan kromosom sebagai representasi
penyelesaian masalah. Kode-kode yang bersifat umum yang dapat digunakan,
yaitu:
1. Kode biner, digunakan untuk merepresentasikan bilangan bulat dan riil.
2. Kode kombinatorial, digunakan untuk merepresentasikan semua kombinasi
Inisialisasi populasi adalah proses membangkitkan kromosom sebanyak ukuran
populasi. Algoritma inisialisasi populasi awal untuk membangkitkan
kromosom-kromosom secara acak pada generasi pertama :
int i,j,lebarKromosom,populasi; array gen,individu;
for i=0 to i<lebarKromosom do begin
gen[i]=nilaiGen; i+=1;
end
for i=0 to i<populasi do begin
for j=0 to j<lebarKromosom do begin
individu[i][j]=random(gen); j+=1;
end i+=1; end
2.2.7.2 Seleksi dalam Algoritma Genetika
Seleksi merupakan proses dalam Algoritma Genetika untuk memilih
kromosom yang tetap bertahan dalam populasi. Seleksi tersebut diterapkan
dengan anggapan :
a. Fungsi objektif sudah diketahui.
b. Penyelesaian yang dicari adalah nilai maksimum.
c. Nilai penyelesaian adalah positif.
d. Ukuran kualitas kromosom adalah nilai fitnes kromosom.
Nilai fitness ditentukan dengan cara menghitung banyaknya batasan yang
dilanggar. Jika ada batasan yang dilanggar, maka diberikan satu nilai penalti.
Dengan demikian, nilai fitness dapat dituliskan dalam rumus persamaan 2-1.
(2-1)
dimana
(2-2)
P = nilai penalti batasan ke-i
Algoritma untuk memilih kromosom yang tetap bertahan dalam populasi :
int i,j,lebarKromosom,populasi,penalti,batasan; int jumlah,target,cek;
array individu,fitness,rank,induk; boolean tukar;
penalti=0;
for i=0 to i<populasi do begin
for j=0 to j<lebarKromosom do begin
if (individu[i][j]>batasan) begin
penalti++; end
j+=1; end
fitness[i]=1/(1+penalti); i+=1;
jumlah=0;
for i=0 to i<populasi do begin
rank[i]=1;
for j=0 to j<populasi do begin
for i=0 to i<populasi do begin
target=random(jumlah); cek=0;
for j=0 to j<populasi do begin
2.2.7.3 Penyilangan dalam Algoritma Genetika
Penyilangan merupakan operator dalam Algoritma Genetika yang bertujuan
untuk melahirkan krosomom baru yang mewarisi sifat-sifat induknya
sebagaimana proses reproduksi yang terjadi dalam kehidupan alam. Metode
penyilangan yang biasanya dipakai adalah metode penyilangan N-titik. Nilai N
dapat ditentukan terlebih dahulu atau ditentukan secara acak ketika algoritma
dijalankan. Metode penyilangan N-titik dapat diilustrasikan seperti gambar 2.4.
1 0 1 1 0 0 0 1 0 1
Gambar 2.4 Ilustrasi Metode Penyilangan N-Titik
Algoritma untuk menghasilkan individu baru dengan metode penyilangan dua
int i,j,lebarKromosom,populasi,titik1,titik2; float cr,probCrossover;
array individu,individuBaru,induk;
for i=0 to i<populasi do begin
for j=0 to j<titik1 do begin
individuBaru[i][j]=individu[induk[i]][j]; individuBaru[i+1][j]=individu[induk[i+1]][j];
j+=1; end
for j=titik1 to j<titik2 do begin
individuBaru[i][j]=individu[induk[i+1]][j]; individuBaru[i+1][j]=individu[induk[i]][j]; j+=1;
end
for j=titik2 to j<lebarKromosom do begin
2.2.7.4 Mutasi dalam Algoritma Genetika
Mutasi merupakan operator dalam Algoritma Genetika yang bertujuan untuk
mengubah gen-gen tertentu dari sebuah kromosom. Proses ini dimodelkan
sebagaimana yang terjadi dalam kehidupan alam. Probabilitas mutasi dari suatu
gen biasanya dipilih sangat kecil, persis seperti kejadian sebenarnya dalam
kehidupan alamiah yang memungkinkan terjadinya mutasi genetis tetapi dalam
presentasi yang sangat kecil. Metode mutasi dapat diilustrasikan seperti gambar
2.5.
1 0 1 1 0 1 0 1 1 0 1 1 0 1 1 1
Sebelum Mutasi Setelah Mutasi
0 0 Posisi Mutasi
0 0 Posisi Mutasi
Gambar 2.5 Ilustrasi Metode Mutasi
Algoritma untuk mengubah gen tertentu dari sebuah kromosom :
int i,lebarKromosom,populasi,krom; float r,probMutasi;
array gen,individu;
for i=0 to i<populasi do begin
r=random(); if (r<probMutasi) begin
krom=random(lebarKromosom-1); individu[i][krom]=random(gen); end
i+=1; end
2.2.7.5 Syarat Berhenti
Proses optimasi yang dilakukan dengan Algoritma Genetika akan berhenti
setelah suatu syarat berhenti dipenuhi. Syarat berhenti yang biasanya dipakai
adalah banyak generasi dan batas nilai fungsi fitness. Namun demikian, tidak
menutup kemungkinan untuk dipilih kombinasi beberapa syarat berhenti.
2.2.7.6 Parameter Algoritma
Parameter algoritma merupakan salah satu bagian penting dalam penerapan
algoritma genetika. Parameter yang ditentukan adalah probabilitas penyilangan,
adalah probabilitas penyilangan yang cukup besar (berkisar 60% sampai 70%),
probabilitas mutasi cukup kecil, dan ukuran populasi antara 50 sampai 500
kromosom [8].
2.2.8 Perangkat Lunak Pendukung
Adapun perangkat lunak pendukung dalam pembangunan sistem ini adalah
bahasa pemrograman PHP, HTML, CSS, MySQL Database Management System,
Apache Web Server, PHP Expert Editor, dan web browser Mozilla Firefox.
2.2.8.1 PHP
PHP (Pemrograman Hypertext Preprocessor) adalah sebuah bahasa
pemrograman yang bersifat server-side. Script PHP berada di server dan akan
dieksekusi di dalam server. Oleh karena itu, dibutuhkan sebuah web server yang
mendukung program PHP. Penulisan script PHP sangat fleksibel dan dapat berdiri
sendiri dalam sebuah file namun juga dapat dituliskan menyatu dengan kode
HTML, yaitu disisipkan disela-sela kode HTML [9].
2.2.8.2 HTML
HTML (HypertextMarkup Language) adalah sebuah protokol yang digunakan
untuk membuat format suatu dokumen web yang mampu dibaca dalam browser
dari berbagai platform komputer. Sifat bahasa HTML ini adalah client script, di
mana dokumen tersebut dapat dibuka dalam komputer stand alone yang tidak
membutuhkan server untuk dapat menampilkannya di dalam browser. Dokumen
HTML merupakan file yang pada umumnya berekstensi .htm atau .html, di mana
bahasa HTML tersebut tersusun atas tag yang berformat <isi tag> [10].
2.2.8.3 CSS
CSS (Cascading Style Sheets) adalah sebuah cara untuk memisahkan isi
dengan layout dalam halaman-halaman web yang dibuat [10]. CSS
memperkenalkan template yang berupa style untuk membuat dan mempermudah
penulisan dari halaman-halaman yang dirancang. Hal ini sangat penting karena
halaman yang menggunakan CSS dapat dibaca secara bolak balik dan isinya dapat
dilihat oleh pengunjung dari manapun. CSS mampu menciptakan halaman yang
suatu tabel. Dengan CSS, melakukan setting tampilan keseluruhan web akan lebih
mudah, hanya dengan menggantikan atribut-atribut atau perintah dalam style CSS
dengan atribut yang diinginkan tanpa harus mengubah satu per satu atribut tiap
elemen yang ada dalam situs yang dibuat. Saat ini CSS merupakan style yang
banyak digunakan karena berbagai kemudahan dan kelengkapan atribut yang
dimilikinya. Penggunaan CSS dalam web akan lebih efisien karena CSS dapat
digunakan untuk penggunaan secara berulang pada tag-tag tertentu sehingga tidak
usah mengetikan ulang seluruh perintah pemformatan seperti halnya HTML
klasik.
2.2.8.4 MySQL Database Management System
MySQL termasuk dalam kategori database management system, yaitu suatu
database yang terstruktur dalam pengolahan dan penampilan datanya. MySQL
merupakan database yang bersifat client server, di mana data diletakkan di server
yang bisa diakses melalui komputer client. Pengaksesan dapat dilakukan apabila
komputer telah terhubung dengan server. Berbeda dengan database desktop, di
mana segala pemrosesan data harus dilakukan pada komputer yang bersangkutan
[11].
2.2.8.5 Apache Web Server
Web server merupakan sebuah server yang khusus digunakan untuk
menyimpan halaman website atau homepage. Pertimbangan dalam memilih
ApacheWeb server adalah [12] :
1. Apache termasuk dalam kategori free software.
2. Instalasi Apache sangat Mudah.
3. Mampu beroperasi pada banyak platform sistem operasi seperti Linux,
Windows dan lain-lain.
2.2.8.6 PHP Expert Editor
PHP Expert Editor merupakan program yang berukuran kecil namun terkenal
handal dalam mengolah script PHP. Script yang diketikan dalam program ini akan
diberikan warna kontrol. Misalkan teks yang diketik adalah sebuah string, maka
Hal ini akan memudahkan penyusunan script PHP. Fitur lain dalam program ini
adalah kode explorer. Apabila script mengandung variabel, maka dalam jendela
kode explorer akan ditampilkan nama variabel dan posisi variabel tersebut dengan
identitas baris. Dengan program ini, script yang dibuat dapat langsung dijalankan
karena program ini mempunyai server lokal dan browser sendiri [9].
2.2.8.7 Web Browser Mozilla Firefox
Mozilla Firefox (aslinya bernama Phoenix dan kemudian untuk sesaat dikenal
sebagai Mozilla Firebird) adalah penjelajah web antar-platform gratis yang
dikembangkan oleh Yayasan Mozilla dan ratusan sukarelawan. Sebelum rilis versi
1.0-nya pada 9 November 2004, Firefox telah mendapatkan sambutan yang sangat
bagus dari pihak media, termasuk dari Forbes dan Wall Street Journal. Dengan
lebih dari 5 juta download dalam 12 hari pertama rilisnya dan 6 juta hingga 24
November 2004, Firefox 1.0 adalah salah satu perangkat lunak gratis,
sumber-terbuka (opensource) yang paling banyak digunakan di antara pengguna rumahan
[13].
Melalui Firefox, Yayasan Mozilla betujuan untuk mengembangkan sebuah
browser web yang kecil, cepat, simpel, dan sangat bisa dikembangkan (terpisah
dari Mozilla Suite yang lebih besar). Firefox telah menjadi fokus utama
perkembangan Mozilla bersama dengan client e-mail Mozilla Thunderbird, dan
telah menggantikan Mozilla Suite sebagai rilis browser resmi Yayasan Mozilla
33
Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang lengkap ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan permasalahan, hambatan, kesempatan dan kebutuhan yang diharapkan sehingga dapat diusulkan perbaikannya. Subbab 3.1 menjelaskan analisis terhadap sistem yang sedang berjalan. Hasil dari analisis tersebut akan digunakan untuk mengidentifikasi kebutuhan dan hambatan yang terdapat pada sistem yang sudah dimiliki FTTM ITB serta sebagai dasar dalam merancang sistem yang akan dibangun.
3.1.1 Analisis Masalah
Berdasarkan hasil penelitian yang telah dilakukan di FTTM ITB bahwa terdapat masalah pada penjadwalan ruangan di gedung Teknik Perminyakan yang digunakan untuk perkuliahan program pascasarjana Teknik Perminyakan dan Teknik Panas Bumi. Jadwal yang ditentukan tidak melihat sampai ke level mahasiswa, tetapi hanya melihat waktu kesediaan dosen dan ruangan. Hal ini mengakibatkan bentrok jadwal pada sebagian mahasiswa.
3.1.2 Analisis Sistem yang Sedang Berjalan
Tahap pertama yang dilakukan agar bisa menghasilkan sistem informasi yang baik adalah dengan mempelajari bagaimana sistem yang sedang berjalan saat ini. Analisis sistem yang sedang berjalan dapat digambarkan dengan menggunakan
flowmap. Flowmap merupakan bagan yang menggambarkan dan menjelaskan
urutan prosedur-prosedur, arus pekerjaan secara keseluruhan dari sistem dan menggambarkan aliran data atau dokumen dari satu entitas ke entitas lain. Prosedur yang dilakukan pada kegiatan penjadwalan ruangan di gedung Teknik Perminyakan FTTM ITB, diantaranya :
3.1.2.1 Prosedur Penjadwalan Ruangan Sebelum Perkuliahan Dimulai
Prosedur penjadwalan ruangan sebelum perkuliahan dimulai melibatkan ketua kelompok keahlian, koordinator tata usaha, dosen, dan petugas tata usaha bagian sarana prasarana. Langkah-langkah penjadwalan ruangan sebelum perkuliahan dimulai yang dijelaskan pada gambar 3.1 adalah sebagai berikut :
1. Ketua kelompok keahlian menyerahkan data mata kuliah yang dibuka beserta data pengajar setiap mata kuliah ke koordinator tata usaha.
2. Koordinator tata usaha menggandakan data mata kuliah yang dibuka sebanyak jumlah dosen pengajar dan menyerahkan ke masing-masing dosen pengajar. 3. Dosen menentukan kesediaan waktu mengajar mata kuliah diampu yang
disesuaikan dengan waktu mengajar mata kuliah program sarjana.
4. Dosen menghubungi petugas tata usaha bagian sarana prasarana untuk mengetahui kesediaan ruangan dan menentukan jadwal kuliah.
5. Petugas tata usaha bagian sarana prasarana membuat jadwal penggunaan ruangan.
6. Petugas tata usaha bagian sarana prasarana mencetak jadwal penggunaan ruangan.
7. Petugas tata usaha bagian sarana prasarana menempelkan jadwal penggunaan ruangan di setiap ruangan yang bersangkutan.
Prosedur Penjadwalan Ruangan Sebelum Perkuliahan Dimulai
Koordinator Tata Usaha Ketua Kelompok Keahlian
data mata kuliah yang dibuka dan pengajar
A1
Petugas Tata Usaha Bagian Sarana Prasarana Dosen
data mata kuliah yang dibuka dan pengajar
Keterangan :
A1 = jadwal penggunaan ruangan
penggandaan data mata kuliah yang dibuka dan pengajar
data mata kuliah yang dibuka dan pengajar
penentuan kesediaan waktu mengajar
data penggunaan ruangan data kesediaan
waktu mengajar
penentuan jadwal kuliah
jadwal kuliah jadwal kuliah
pembuatan jadwal penggunaan ruangan
pencetakan jadwal penggunaan ruangan
pengumuman jadwal penggunaan ruangan data mata kuliah yang
dibuka dan pengajar
printout jadwal penggunaan ruangan
3.1.2.2 Prosedur Penjadwalan Ruangan Setelah Perkuliahan Dimulai
Prosedur penjadwalan ruangan setelah perkuliahan dimulai hanya melibatkan dosen dan petugas tata usaha bagian sarana prasarana. Langkah-langkah penjadwalan ruangan setelah perkuliahan dimulai yang dijelaskan pada gambar 3.2 adalah sebagai berikut :
1. Dosen mendiskusikan jadwal kuliah dengan mahasiswa.
2. Jika tidak terdapat bentrok jadwal pada sebagian mahasiswa maka jadwal penggunaan ruangan tetap seperti semula dan perkuliahan dilaksanakan sesuai dengan jadwal awal.
3. Jika terdapat bentrok jadwal pada sebagian mahasiswa, maka : a. Dosen menentukan kemungkinan jadwal kuliah baru.
b. Dosen menginformasikan perubahan jadwal kuliah ke petugas tata usaha bagian sarana prasarana untuk mengetahui kesediaan ruangan dan menentukan jadwal kuliah yang baru.
c. Petugas tata usaha bagian sarana prasarana membuat jadwal penggunaan ruangan yang baru.
d. Petugas tata usaha bagian sarana prasarana mencetak jadwal penggunaan ruangan yang baru.
e. Petugas tata usaha bagian sarana prasarana menempelkan jadwal penggunaan ruangan yang baru di setiap ruangan yang bersangkutan. f. Petugas tata usaha bagian sarana prasarana mengarsipkan jadwal
Prosedur Penjadwalan Ruangan Setelah Perkuliahan Dimulai
Petugas Tata Usaha Bagian Sarana Prasarana Dosen
pendiskusian jadwal kuliah dengan
mahasiswa
bentrok?
perkuliahan dengan jadwal awal
tidak
penentuan kemungkinan jadwal
kuliah baru ya
data penggunaan ruangan data kemungkinan
jadwal kuliah baru
penentuan jadwal kuliah baru
jadwal kuliah baru
A2
jadwal kuliah baru
pembuatan jadwal penggunaan ruangan
yang baru
pencetakan jadwal penggunaan ruangan
yang baru
pengumuman jadwal penggunaan ruangan
yang baru
Keterangan :
A2 = jadwal penggunaan ruangan yang baru
printout jadwal penggunaan ruangan
yang baru
3.1.3 Analisis Aturan Bisnis
Analisis aturan bisnis berisikan aturan-aturan yang berlaku pada sistem yang berjalan. Aturan bisnis yang terdapat pada kegiatan penjadwalan ruangan di gedung Teknik Perminyakan FTTM ITB adalah sebagai berikut :
1. Mata kuliah program sarjana sudah dijadwalkan oleh Biro Rooster ITB dengan menggunakan ruang kuliah umum.
2. Mata kuliah program pascasarjana dijadwalkan di program studi masing-masing dan menggunakan ruang kuliah di program studi.
3. Gedung Teknik Perminyakan mempunyai empat ruangan yang dapat digunakan untuk kegiatan perkuliahan dengan kapasitas ruangan yang berbeda, dua ruangan berkapasitas 20 orang, satu ruangan berkapasitas 60 orang, dan satu ruangan berkapasitas 70 orang.
4. Ruang kuliah di gedung Teknik Perminyakan digunakan untuk kegiatan perkuliahan Program Studi Teknik Perminyakan dan Teknik Panas Bumi. 5. Ruang kuliah digunakan untuk dua puluh sampai tiga puluh perkuliahan setiap
semester.
6. Waktu perkuliahan dilaksanakan pada hari senin sampai jumat. Hari senin sampai kamis, waktu kuliah adalah pukul 07.00 sampai 18.00 (10 jam) dengan waktu istirahat pukul 12.00 sampai 13.00. Waktu kuliah hari jumat adalah pukul 07.00 sampai 11.00 dan 13.00 sampai 18.00 (9 jam) karena waktu istirahat pukul 11.00 sampai 13.00
7. Pertemuan kuliah dilaksanakan satu kali satu minggu. 8. Penjadwalan diatur agar :
a. Tidak bentrok dosen. b. Tidak bentrok ruangan. c. Tidak bentrok mahasiswa. d. Kapasitas ruangan sesuai. e. Tidak terpotong jam istirahat. 3.1.4 Analisis Algoritma Genetika
dosen yang kompeten dengan mata kuliah tersebut. Selanjutnya, pengaturan penggunaan ruangan untuk perkuliahan pada hari dan jam yang mempertimbangkan kesediaan waktu mengajar dosen.
3.1.4.1 Komponen Penjadwalan
Data yang digunakan untuk penyusunan jadwal penggunaan ruangan untuk perkuliahan dengan menggunakan algoritma genetika adalah data-data perkuliahan program pascasarjana pada semester 2 tahun akademik 2013/2014 pada program studi yang berada di gedung Teknik Perminyakan, yaitu Program Studi Teknik Perminyakan dan Teknik Panas Bumi.
Pengumpulan data yang telah dilakukan menghasilkan data yang diperlukan sebagai masukan, yaitu :
1. Data ruangan
Jumlah ruangan yang digunakan untuk perkuliahan di gedung Teknik Perminyakan adalah sebanyak empat ruangan dengan data seperti pada tabel 3.1.
Tabel 3.1 Data Ruangan
No Nama Ruangan Kapasitas Ruangan
1 Ruang Kuliah S2 20
2 Ruang Handil 70
3 Ruang Peciko 20
4 Ruang Seminar 60
2. Data dosen
Dosen pengajar pada perkuliahan semester 2 tahun ajaran 2013/2014 dapat dilihat pada tabel 3.2.
Tabel 3.2 Data Dosen
No Nama Dosen
1 Abdurrachim 2 Arsegianto
3 Bonar Tua Halomoan Marbun 4 Hasian P. Septoratno Siregar 5 Hendra Grandis
No Nama Dosen 10 Sutopo
11 Utjok WR Siagian 12 Zuher Syihab
3. Data mata kuliah
Data mata kuliah program pascasarjana Teknik Perminyakan dan Teknik Panas Bumi pada perkuliahan semester 2 tahun ajaran 2013/2014 dapat dilihat pada tabel 3.3. Setiap mata kuliah merupakan satu kelas perkuliahan dan satu dosen pengajar.
Tabel 3.3 Data Mata Kuliah
No
Kode Mata Kuliah
Nama Mata Kuliah
1 TM6002 Fenomena Perpindahan
2 TM6007 Matematika Teknik Perminyakan Lanjut 3 TM6011 Simulasi Reservoir Lanjut
4 TM6027 Rancangan Fasilitas Permukaan 5 TM6029 Optimasi Produksi
6 TM6031 Stimulasi Sumur Lanjut
7 TM6033 Manajemen dan Analisis Keekonomian Proyek Migas Lanjut 8 TM6037 Metoda Optimisasi di Sektor Migas
9 TM6039 Manajemen Reservoar
10 TM6054 Metode Peningkatan Perolehan 11 PB5007 Eksplorasi Geokimia Geotermal 12 PB5008 Eksplorasi Geofisika Geotermal 13 PB5010 Perancangan Pemboran
14 PB5011 Teknik Produksi Geotermal 15 PB5012 Utilisasi Energi Geotermal 16 PB6015 Manajemen Reservoir Geotermal 17 PB6017 Simulasi Reservoir Geotermal 18 PB6021 Alterasi Hidrotermal
19 PB6022 Kapita Selekta Geotermal 20 TM8001 Filsafat Ilmu Pengetahuan
4. Waktu perkuliahan
Waktu perkuliahan adalah waktu yang digunakan untuk melaksanakan proses belajar mengajar. Hari dan jam kuliah yang ditentukan dapat dilihat pada tabel 3.4.
Tabel 3.4 Waktu Perkuliahan
Hari Jam Kuliah
Senin - Jumat 07.00 – 18.00
Batasan-batasan yang tidak boleh dilanggar dan harus terpenuhi pada sistem yang akan dibangun, yaitu :
1. Tidak bentrok dosen, yaitu dosen tidak dapat mengajar lebih dari satu kelas mata kuliah dalam satu waktu dan harus memenuhi waktu kesediaan mengajar yang ditentukan oleh dosen.
2. Tidak bentrok ruangan, yaitu satu ruangan tidak dapat digunakan lebih dari satu kelas mata kuliah dalam satu waktu.
3. Tidak bentrok mahasiswa, yaitu satu mahasiswa tidak dapat mengikuti lebih dari satu kelas mata kuliah yang mahasiswa ambil dalam satu waktu.
4. Kapasitas ruangan harus sesuai, yaitu ruangan yang berukuran kecil atau besar harus sesuai dengan jumlah peserta kelas.
5. Tidak terpotong oleh waktu istirahat. 3.1.4.2 Penerapan Algoritma Genetika
Algoritma genetika merepresentasikan satu penyelesaian atau solusi ke dalam satu kromosom. Satu kromosom merupakan satu jadwal utuh, satu gen dapat dipandang sebagai satu kelas perkuliahan, dan nilai-nilai gen menyatakan slot waktu-dan-ruangan. Langkah-langkah penerapan algoritma genetika untuk menyelesaikan masalah penjadwalan dapat dijelaskan sebagai berikut:
1. Inisialisasi Populasi
Tahap inisialisasi populasi merupakan tahapan untuk membangkitkan kromosom-kromosom secara acak pada generasi pertama. Setiap komponen penjadwalan (kelas, sks, dosen, jumlah peserta, daftar peserta, hari, waktu, ruangan, waktu dosen berhalangan) disimpan ke dalam larik, kemudian dibangkitkan jadwal secara acak sebanyak ukuran populasi yang ditentukan.
slot
kelas kelas …. kelas
jadwal
2. Evaluasi Populasi
Setelah individu-individu dalam populasi telah terbentuk, langkah selanjutnya adalah menentukan nilai fitness setiap individu. Nilai fitness ditentukan dengan cara menghitung banyaknya batasan yang dilanggar dan memberikan satu penalti untuk setiap pelanggaran dengan menggunakan rumus persamaan
� = 1+�1 dan � = ∑��=1����. Penalti diberikan jika : a. Bentrok ruang dan waktu.
b. Bentrok istirahat hari jumat. c. Bentrok dosen.
d. Bentrok watu halangan dosen mengajar. e. Bentrok waktu istirahat.
f. Kapasitas ruangan tidak cukup. 3. Seleksi
Pada tahap ini akan dipilih solusi jadwal yang akan tetap bertahan dalam populasi. Setiap solusi jadwal memiliki ranking berdasarkan nilai fitness-nya. Solusi jadwal yang memiliki nilai fitness yang lebih tinggi akan memiliki ranking yang lebih tinggi juga. Solusi jadwal yang dipilih untuk menjadi induk adalah berdasarkan hasil nilai acak sebatas jumlah dari ranking keseluruhan solusi jadwal.
4. Penyilangan
Setelah tahap seleksi, populasi baru akan dibangkitkan dengan cara reproduksi solusi jadwal baru. Reproduksi solusi jadwal baru dilakukan dengan cara penyilangan. Penyilangan dilakukan untuk menghasilkan solusi jadwal baru yang mewarisi sebagian solusi jadwal induk dengan cara mengkombinasikan kelas, slot waktu-dan-ruangan dari solusi jadwal induk. Angka desimal diacak, jika hasil acak tersebut lebih kecil dari probabilitas penyilangan yang ditentukan maka dua buah titik ditentukan secara acak, kemudian bagian kromosom induk ditukar dari titik satu sampai titik dua.
5. Mutasi
jadwal. Angka desimal diacak, jika hasil acak tersebut lebih kecil dari probabilitas mutasi yang ditentukan maka posisi gen yang akan diubah ditentukan secara acak, kemudian isi nilai gen dengan data hari, jam, ruangan dari larik.
6. Evaluasi populasi baru
Populasi baru yang terbentuk dari proses penyilangan dan mutasi dievaluasi kembali menggunakan rumus persamaan fungsi fitness. Proses evaluasi yang dilakukan sama dengan proses evaluasi populasi pada langkah nomor 2. Proses optimasi yang dilakukan dengan algoritma genetika akan berhenti setelah ada kondisi selesai yang terpenuhi, yaitu nilai fitness sama dengan 1. Solusi jadwal yang memiliki nilai fitness sama dengan satu adalah solusi jadwal yang tidak melanggar batasan-batasan yang ditentukan. Jika nilai
fitness sama dengan satu belum dihasilkan, maka proses akan kembali
mengulang dari langkah seleksi.
3.2 Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional merupakan bagian penting lainnya agar simulasi perangkat lunak dapat berjalan dengan baik serta untuk mengetahui elemen-elemen yang berhubungan dengan sistem yang sedang berjalan. Tahapan analisis kebutuhan non fungsional dibagi menjadi beberapa bagian yaitu analisis pengkodean, analisis jaringan, analisis kebutuhan perangkat keras, analisis kebutuhan perangkat lunak, analisis kebutuhan pengguna, dan analisis basis data. 3.2.1 Analisis Pengkodean
Subbab 3.2.1 membahas tentang pengkodean yang ada di FTTM ITB. Pengkodean di FTTM ITB terdiri dari pengkodean Nomor Induk Pegawai (NIP), program studi, Nomor Induk Mahasiswa (NIM), mata kuliah, ruangan, dan daftar peserta kelas (DPK).
1. Pengkodean Nomor Induk Pegawai (NIP)
a. Pengkodean NIP untuk PNS
Pengkodean NIP untuk PNS terdiri dari 18 digit dengan format sebagai berikut :
9999 99 99 9999 99 9 999
Nomor urut
Kode jenis kelamin Bulan pengangkatan Tahun pengangkatan Tanggal lahir
Bulan lahir Tahun lahir
Contoh : 19671020 199403 1 001 artinya pegawai tersebut lahir pada tanggal 20 Oktober 1967, diangkat menjadi pegawai pada bulan Maret 1994, jenis kelamin laki-laki, dan memiliki nomor urut 001.
b. Pengkodean NIP untuk non-PNS
Pengkodean NIP untuk pegawai non-PNS terdiri dari 9 digit dengan format sebagai berikut :
999 999999
Nomor urut
Tahun pengangkatan
Contoh : 108000023 artinya pegawai tersebut diangkat menjadi pegawai pada tahun 2008 dan memiliki nomor urut 000023.
2. Pengkodean Program Studi