Sistem Rekomendasi Pencarian Pekerjaan Berbasis Web Menggunakan Metode Hybrid-Based Recommendation

(1)

SISTEM REKOMENDASI PENCARIAN PEKERJAAN BERBASIS WEB MENGGUNAKAN METODE HYBRID-BASED RECOMMENDATION

SKRIPSI

NURUL KHADIJAH 091402060

PROGRAM STUDI S1 TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2013


(2)

SISTEM REKOMENDASI PENCARIAN PEKERJAAN BERBASIS WEB MENGGUNAKAN METODE HYBRID-BASED RECOMMENDATION

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Teknologi Informasi

NURUL KHADIJAH 091402060

PROGRAM STUDI S1 TEKNOLOGI INFORMASI

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2013


(3)

PERSETUJUAN

Judul : SISTEM REKOMENDASI PENCARIAN PEKERJAAN

BERBASIS WEB MENGGUNAKAN METODE HYBRID-BASED RECOMMENDATION

Kategori : SKRIPSI

Nama : NURUL KHADIJAH

Nomor Induk Mahasiswa : 091402060

Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI Departemen : TEKNOLOGI INFORMASI

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI (FASILKOMTI) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, Agustus 2013

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Sarah Purnamawati, S.T, M.Sc Dr. Erna Budhiarti Nababan, M.IT. NIP. 19830226 201012 2 003 NIP. -

Diketahui/Disetujui oleh

Program Studi S1 Teknologi Informasi Ketua,

Prof. Opim Salim Sitompul, M.Sc NIP 19610817 198701 1001


(4)

PERNYATAAN

SISTEM REKOMENDASI PENCARIAN PEKERJAANBERBASIS WEB MENGGUNAKAN METODE HYBRID-BASED RECOMMENDATION

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Agustus 2013

Nurul Khadijah 091402060


(5)

UCAPAN TERIMA KASIH

Puji dan syukur penulis sampaikan kehadirat Allah SWT, serta shalawat dan salam

kepada junjungan kita nabi Muhammad SAW yang telah memberikan rahmat dan

hidayah-Nya sehingga penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Teknologi Informasi, Program Studi S1 Teknologi Informasi Universitas Sumatera Utara. Untuk itu penulis mengucapkan terima kasih kepada :

1. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen serta pegawai di Program Studi S1 Teknologi Informasi.

2. Ketua dan Sekretaris Program Studi Teknologi Informasi, Prof. Dr. Opim Salim Sitompul, M.Sc. dan Drs. Sawaluddin, M.IT.

3. Seluruh dosen Departemen Teknologi Informasi dan Ilmu Komputer USU yang telah mengajarkan dan memberikan dukungan, arahan dan bantuannya dalam menyelesaikan tugas akhir ini.

4. Kepada Ibu Dr. Erna Budhiarti Nababan, M.IT selaku pembimbing satu dan Ibu Sarah Purnamawati, S.T, M.Sc selaku pembimbing dua yang telah banyak meluangkan waktu dan pikirannya, memotivasi dan memberikan kritik dan saran kepada penulis. Ucapan terima kasih juga ditujukan kepada Dedy Arisandi, S.T., M.Kom dan Baihaqi Siregar, S.Si, M.IT. yang telah bersedia menjadi dosen pembanding.

5. Skripsi ini penulis persembahkan untuk kedua orang tua dan keluarga penulis yang telah memberikan dukungan dan motivasi, ayah saya M. Loekman Sempurna dan ibu saya Nurlaili Fadliani yang selalu sabar dalam mendidik


(6)

dan membesarkan penulis. Untuk adik penulis Nurul Aisyah yang selalu memberikan dorongan dan dukungan kepada penulis.

6. Penulis juga mengucapkan terimakasih kepada teman-teman yang selalu memberikan dukungan, Diza Fathamira Hamzah, Aditya Rahandi, Julia Annisa Sitepu, Ammar Adianshar, Ibnu Setiawan, Ridzuan Ikram Fajri, Mhd Kurniawan, Fadli Rizki, Rizki Mulki, Alvin Rizki, Annifa Iqramitha, serta seluruh angkatan 09, teman – teman TA, serta teman-teman mahasiswa Teknologi Informasi lainnya yang tidak dapat penulis sebutkan satu persatu.

7. Dan yang selalu mendukung, mendengarkan, memberikan saran dan kritik kepada penulis selama penulis dalam pengerjaan skripsi ini.

Semoga segala kebaikan, bantuan dan dukungannya, dibalas Allah SWT dengan nikmat yang berlimpah dan tugas akhir ini dapat bermanfaat bagi semua pihak yang memerlukannya.


(7)

ABSTRAK

Aktivitas utama yang dilakukan sehari – hari seorang individu untuk mencari uang adalah dengan cara bekerja. Mencari pekerjaan yang sesuai dengan latar belakang pendidikan yang kita tekuni tidaklah mudah. Banyak individu yang tidak mengetahui kemampuan diri mereka sendiri dan keterbatasan informasi lowongan pekerjaan juga menjadi hambatan bagi pelamar yang ingin mencari pekerjaan. Karena itu, diperlukan satu ‘alat bantu’ yang dapat memberi rekomendasi bidang pekerjaan apa yang sesuai dengan belakang pendidikan yang bersangkutan. Metode hybrid approach adalah dengan menggabungkan teknik collaborative-filtering (algoritma decision tree) dan content-based (algoritma nearest neighbor). Algoritma decision tree digunakan untuk pengklasifikasian bidang pekerjaan sedangkan untuk rekomendasi pekerjaan, digunakan algoritma nearest neighbor. Pada nearest neighbor digunakan rumus

similarity untuk menghitung kedekatan antara pelamar dan lowongan pekerjaan berdasarkan pencocokan bobot dan atribut yang ada. Output yang dihasilkan dari sistem ini berupa daftar rekomendasi pekerjaan yg sesuai dengan latar belakang pendidikan pelamar.

Kata Kunci—rekomendasi pekerjaan, hybrid approach, decision tree, nearest neighbor.


(8)

ABSTRACT

The main activity of an individual performed everyday to make money is by working. Looking for a job that match with our background education is not an easy task. Many individuals are not aware of their own capabilities and limited job information is also an obstacle for applicants who want to find a job. Therefore, we need a ‘tool’ that can give an occupation’s recommendation that relevant according to the educational background. Hybrid approach method is a method that combine collaborative-filtering techniques (decision tree algorithm) dan content-based techniques (nearest neighbor algorithm). Decision tree algorithm is used to clasify occupations, while for occupation’s recommendation use nearest neighbor algorithm. On nearest neighbor similarity formula is being used to calculate adjacency between job applicant and jobs by matching the weight and existing attributes. Output from the system is in the form of a list of job recommendation in accordance with the applicant’s education background.

Keyword—occupation’s recommendation, hybrid approach, decision tree, nearest neighbor.


(9)

DAFTAR ISI

Persetujuan i

Pernyataan ii

Pernghargaan iii

Abstrak v

Abstract vi

Daftar isi vii

Daftar tabel x

Daftar gambar xii

Bab 1 Pendahuluan 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 4

1.5 Manfaat Penelitian 4

1.6 Metode Penelitian 4

1.7 Sistematika Penulisan 5

Bab 2 Landasan Teori 7

2.1 Basis Data 7

2.1.1 Database Management System (DBMS) 8

2.2 Sistem Rekomendasi 8

2.2.1 Content Based Filtering 9

2.2.2 Collaborative Filtering 9

2.2.3 Hybrid Based Filtering 9

2.3 Metode Nearest Neighbor 10

2.4 Metode Decision tree 11

2.5 Penelitian Terdahulu 13

Bab 3 Analisis dan Perancangan 16

3.1 Data yang digunakan 16

3.2 Analisis Data 16


(10)

3.2.2 Data pada Content-based Filtering 19 3.2.3 Data pada Collaborative Filtering 20

3.3 Metode Hybrid 22

3.3.1 Proses Metode Content-based Filtering 23 3.3.2 Proses Metode Collaborative-based Filtering 26

3.4 Hasil dari metode Hybrid Approch 32

3.5 Perancangan Sistem 33

3.5.1 Use Case 33

3.5.2 Data Flow Diagram 34

3.5.2.1 DFD Level 0 35

3.5.2.2 DFD Level 1 36

3.5.2.3 DFD Level 2 37

3.5.3 Flow Chart perancangan algoritma Nearest Neighbor 39

3.5.4 Sitemap Aplikasi 40

3.5.5 Database 42

3.5.6 Antarmuka Sistem 43

Bab 4 Implementasi dan Pengujian Sistem 48

4.1 Implementasi Sistem 48

4.1.1 Lingkungan Implementasi 48

4.2 Implementasi perancangan antarmuka 49

4.2.1 Halaman Home 49

4.2.2 Halaman Daftar 50

4.2.3 Halaman tampil Lowongan pekerjaan 52

4.2.4 Halaman login 53

4.2.4.1 Halaman Login admin 54

4.2.4.2 Halaman Login Pelamar 56

4.2.4.3 Halaman Login Perusahaan 59

4.3 Implementasi data 63

4.4 Pengujian Sistem 62

4.4.1 Rencana Pengujian Sistem 63

4.4.2 Kasus dan Hasil Pengujian Sistem 64

4.4.2.1 Pengujian input data 64


(11)

4.4.2.3 Pengujian login 66 4.4.2.4 Pengujian Rekomendasi pencarian pekerjaan 67 4.4.2.5 Pengujian menampilkan profil dan edit data 68

4.4.3 Pengujian Kinerja Sistem 71

4.4.4 Pengujian data 74

Bab 5 Kesimpulan dan Saran 76

5.1 Kesimpulan 76

5.2 Saran 77

Daftar Pustaka 78


(12)

DAFTAR TABEL

Halaman

Tabel 2.1 Penelitian Terdahulu 13

Tabel 3.1 Sumber Data 16

Tabel 3.2 Parameter rekomendasi pada metode Collaborative-based 17

Tabel 3.3 Variabel dan Atribut 18

Tabel 3.4 Sampel data latar belakang pendidikan 20

Tabel 3.5 Sampel data lowongan pekerjaan 21

Tabel 3.6 Sampel data 22

Tabel 3.7 Sampel data pelamar 23

Tabel 3.8 Penentuan Nilai bobot 26

Tabel 3.9 Bobot variabel 27

Tabel 3.10 Sampel data nilai atribut jenis pendidikan 27 Tabel 3.11 Tabel kasus lama (daftar pekerjaan) 27 Tabel 3.12 Tabel kasus baru (data pelamar pekerjaan) 27 Tabel 3.13 Kedekatan Nilai atribut jenis pendidikan 28

Tabel 3.14 Bobot Variabel 28

Tabel 3.15 Kedekatan nilai atribut kualifikasi pendidikan 28

Tabel 3.16 Bobot variabel 29

Tabel 3.17 Kedekatan nilai atribut IP 29

Tabel 3.18 Bobot Variabel 30

Tabel 3.19 Kedekatan Nilai atribut kemampuan komputer 30

Tabel 3.20 Bobot Variabel 30

Tabel 3.21 Hasil perhitungan similarity 32

Tabel 3.22 Hasil berupa rangking rekomendasi pekerjaan 32

Tabel 3.23 Entitas DFD 34

Tabel 4.1 Rencana pengujian sistem 63

Tabel 4.2 Pengujian Sistem (Input data pelamar) 64

Tabel 4.3 Pengujian Sistem (Input data) 65

Tabel 4.4 Pengujian Sistem (Penampilan Lowongan) 65


(13)

Tabel 4.6 Pengujian sistem (rekomendasi) 66 Tabel 4.7 Pengujian sistem (pengiriman berkas) 67

Tabel 4.8 Pengujian sistem penampilan berkas 67

Tabel 4.9 Pengujian sistem untuk login admin 68

Tabel 4.10 Pengujian sistem untuk login pelamar 69 Tabel 4.11 Pengujian sistem (login perusahaan) 70

Tabel 4.12 Sampel data lowongan pekerjaan 71

Tabel 4.13 Rule Decision Tree 72


(14)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Kedekatan Kasus 10

Gambar 2.2 Decision tree 12

Gambar 3.1 Penetuan parameter 18

Gambar 3.2 Penggunaan variabel dan atribut pada nearest neighbor 19

Gambar 3.3 Kombinasi sekuensial 22

Gambar 3.4 Node Akar 24

Gambar 3.5 Pembentukan Akar 1 24

Gambar 3.6 Pembentukan Akar 2 25

Gambar 3.7 Pembentukan Akar 3 25

Gambar 3.8 Usecase Spesification Program 33

Gambar 3.9 DFD Level 0/Diagram Konteks 34

Gambar 3.10 DFD Level 1 35

Gambar 3.11 DFD Level 2 : Mengelola data pelamar 36 Gambar 3.12 DFD Level 2 : Mengelola data perusahaan dan lowonga pekerjaan 37

Gambar 3.13 DFD Level 2 : Proses Login 37

Gambar 3.14 DFD Level 2 : Melihat data 38

Gambar 3.15 DFD Level 2 : Rekomendasi Pekerjaan 38

Gambar 3.16 Flow Chart sistem rekomendasi 39

Gambar 3.17 Site Map sistem rekomendasi 41

Gambar 3.18 Database sistem rekomendasi 42

Gambar 4.1 Halaman Home 50

Gambar 4.2 Halaman Daftar 50

Gambar 4.3 Halaman Daftar pelamar 51

Gambar 4.4 Halaman Daftar pekerjaan 52

Gambar 4.5 Halaman lowongan pekerjaan (pilih bidang) 52 Gambar 4.6 Halaman lowongan pekerjaan (tampil lowongan ) 53

Gambar 4.7 Halaman login 54

Gambar 4.8 Halaman login admin 54


(15)

Gambar 4.10 Halaman login admin (profil perusahaan) 55

Gambar 4.11 Halaman login pelamar 56

Gambar 4.12 Halaman login pelamar (profil pelamar) 57 Gambar 4.13 Halaman login pelamar (rekomendasi) 57 Gambar 4.14 Halaman login pelamar (seluruh rekomendasi) 58 Gambar 4.15 Halaman login pelamar (pengiriman resume) 59

Gambar 4.16 Halaman login perusahaan 59

Gambar 4.17 Halaman login perusahaan (menu profil) 60 Gambar 4.18 Halaman login perusahaan (menu view pelamar) 61 Gambar 4.19 Halaman login perusahaan (data lengkap pelamar) 61

Gambar 4.20 Rule indeks prestasi 72

Gambar 4.21 Rule tipe pekerjaan 73

Gambar 4.22 Rule fresh graduate 73

Gambar 4.23 10 rekomendasi pekerjaan dengan nilai tertinggi 74


(16)

ABSTRAK

Aktivitas utama yang dilakukan sehari – hari seorang individu untuk mencari uang adalah dengan cara bekerja. Mencari pekerjaan yang sesuai dengan latar belakang pendidikan yang kita tekuni tidaklah mudah. Banyak individu yang tidak mengetahui kemampuan diri mereka sendiri dan keterbatasan informasi lowongan pekerjaan juga menjadi hambatan bagi pelamar yang ingin mencari pekerjaan. Karena itu, diperlukan satu ‘alat bantu’ yang dapat memberi rekomendasi bidang pekerjaan apa yang sesuai dengan belakang pendidikan yang bersangkutan. Metode hybrid approach adalah dengan menggabungkan teknik collaborative-filtering (algoritma decision tree) dan content-based (algoritma nearest neighbor). Algoritma decision tree digunakan untuk pengklasifikasian bidang pekerjaan sedangkan untuk rekomendasi pekerjaan, digunakan algoritma nearest neighbor. Pada nearest neighbor digunakan rumus

similarity untuk menghitung kedekatan antara pelamar dan lowongan pekerjaan berdasarkan pencocokan bobot dan atribut yang ada. Output yang dihasilkan dari sistem ini berupa daftar rekomendasi pekerjaan yg sesuai dengan latar belakang pendidikan pelamar.

Kata Kunci—rekomendasi pekerjaan, hybrid approach, decision tree, nearest neighbor.


(17)

ABSTRACT

The main activity of an individual performed everyday to make money is by working. Looking for a job that match with our background education is not an easy task. Many individuals are not aware of their own capabilities and limited job information is also an obstacle for applicants who want to find a job. Therefore, we need a ‘tool’ that can give an occupation’s recommendation that relevant according to the educational background. Hybrid approach method is a method that combine collaborative-filtering techniques (decision tree algorithm) dan content-based techniques (nearest neighbor algorithm). Decision tree algorithm is used to clasify occupations, while for occupation’s recommendation use nearest neighbor algorithm. On nearest neighbor similarity formula is being used to calculate adjacency between job applicant and jobs by matching the weight and existing attributes. Output from the system is in the form of a list of job recommendation in accordance with the applicant’s education background.

Keyword—occupation’s recommendation, hybrid approach, decision tree, nearest neighbor.


(18)

BAB I

PENDAHULUAN

1.1Latar Belakang

Pekerjaan merupakan aktivitas utama yang dilakukan manusia dengan menyelesaikan suatu tugas atau kerja yang menghasilkan uang bagi seseorang. Pekerjaan biasa disebut juga dengan profesi. Profesi pada zaman sekarang terdapat bermacam – macam bidang. Contoh bidang profesi yang ada contohnya seperti bidang ekonomi, kesehatan, pendidikan, teknologi, ilmu pengetahuan dan masih banyak yang lainnya. Mencari pekerjaan yang sesuai dengan minat, bakat dan latar belakang pendidikan yang kita tekuni itu tidak mudah. Banyak individu yang tidak mengerti atau mengetahui kemampuan diri mereka sendiri. Selain itu, keterbatasan informasi lowongan pekerjaan juga menjadi hambatan bagi pelamar yang ingin mencari pekerjaan. Faktor - faktor tersebut menjadi hambatan bagi seorang pelamar untuk mencari pekerjaan yang sesuai dengan kemampuan dan latar belakang mereka, terutama untuk seorang fresh graduate yang masih belum mempunyai pengalaman pekerjaan.

Untuk mengatasi masalah tersebut, diperlukan satu ‘alat bantu’ yang dapat memberi rekomendasi (kepada pencari kerja) bidang pekerjaan apa yang sesuai dengan minat, bakat dan latar belakang yang bersangkutan. Sistem ini juga akan menyimpan berbagai macam lowongan pekerjaan dari berbagai bidang sehingga hasil dari sistem ini akan memberikan saran lowongan pekerjaan yang sesuai dengan individu tersebut.


(19)

Sistem rekomendasi didefinisikan sebagai aplikasi untuk mengusulkan informasi dan menyediakan fasilitas yang diinginkan pengguna dalam membuat suatu keputusan (Ricci, 2002). Menurut Adomavicius dan Tuzilin (2005)Sistem rekomendasi dibagi 3 jenis yaitu content-based recommendation, Collaborative recommendationdan hybrid approaches. Hybrid approches adalah metode yang menggabungkan teknik

collaborative dan content-based recommendation

Beberapa metode untuk sistem rekomendasi yang sudah digunakan oleh penulis terdahulu antara lain; sistem rekomendasi bursa elektronis telepon genggam (Sanjoyo, 2008), metode analisis rekomendasi (Purwanto, 2009), sistem rekomendasi pada toko film digital (Hidayat, 2007) yang menggunakan collaborative-filtering dan Akhiro (2008) yang membuat sistem bursa tenaga kerja menggunakan metode Multi Criterian Decision Making (MCDM).

Metode hybrid approaches sudah digunakan oleh beberapa penelitian terdahulu yaitu digunakan oleh Maulana (2010) yang membuat sistem rekomendasi berita berbahasa Indonesia berbasis pilihan personal menggunakan penggabungan algoritma clustering dan algoritma tf-idf. Kemudian juga digunakan pada sistem rekomendasi bidang minat mahasiswa (Diahpangastuti, 2012) yang menggunakan gabungan metode Association Rule dan algoritma Apriori.

Penerapan hybrid approches adalah dengan menggabungkan teknik collaborative-filtering dan content-based diharapkan dapat membantu keterbatasan yang ada pada kedua metode sehingga menghasilkan output yang lebih baik (Adomavicius dan Tuzilin, 2005). Algoritma dalam metode collaborative-filtering yang populer dan sudah banyak digunakan adalah algoritma Decision tree (Supranto, 1998). Kelebihan dari Decision tree antara lain; menyederhanakan masalah yang kompleks menjadi lebih simpel dan spesifik dan mengeliminasi perhitungan-perhitungan yang tidak diperlukan. Algoritma Decision tree telah digunakan untuk SPK dalam menentukan kelaiklautan kapal (Setiawan, 2010) dan penerapan data mining untuk menganalisa kemungkinan pengunduran diri calon mahasiswa baru (Pudjiantoro, et al. (2011)).


(20)

Algoritma nearest neighbor merupakan algoritma untuk menghitung kedekatan antara kasus baru dengan kasus lama, yaitu berdasarkan pencocokan bobot dari sejumlah atribut yang ada (Kusrini dan Emha. 2009). Kelebihan dari Nearest Neighbor yaitu dapat mengidentifikasi kategori dari data yang berbasis pada kedekatan dari kelas yang sudah diketahutui terlebih dahulu (Bhatia and Vandana, 2010). Algorima Nearest Neighbor akan digunakan untuk menentukan rangking pada sistem rekomendasi ini. Hayati (2011) menggunakan metode Nearest Neighbor untuk sistem rekomendasi pariwisata,

Oleh karena itu, dalam penelitian ini penulis akan menerapkan metode hybrid approaches dengan menggabungkan algoritma decision tree dan nearest neighbor.

Metode ini akan diaplikasikan pada sistem rekomendasi pencarian pekerjaan yang memberikan rekomendasi pekerjaan yang sesuai dengan latar belakang pendidikan, minat dan bakat pelamar.

1.2Rumusan Masalah

Mencari pekerjaan yang sesuai dengan minat, bakat dan latar belakang pendidikan yang kita tekuni itu tidak mudah. Keterbatasan informasi lowongan pekerjaan juga menjadi hambatan bagi pelamar yang ingin mencari pekerjaan.

Maka dari itu, diperlukan suatu pendekatan yang dapat digunakan untuk memberikan rekomendasi bagi pelamar pekerjaan dalam menentukan pekerjaan yang sesuai dengan minat dan bakat pelamar terutama latar belakang pendidikan pelamar.

1.3Batasan Masalah

Batasan masalah dalam penelitian ini adalah :

1. Minimum pendidikan pelamar adalah SMA/SMK

2. Terdapat 7 bidang pekerjaan: teknologi, ekonomi, teknik, pertanian, kedokteran, MIPA, ilmu budaya dan umum


(21)

1.4Tujuan Penelitian

Penelitian ini bertujuan untuk menerapkan metode hybrid-based recommendation

untuk memberikan informasi lowongan pekerjaan dan rekomendasi pekerjaan yang sesuai dangan latar belakang pendidikan, minat dan bakat seorang pelamar menggunakan algoritma decision tree dan nearest neighbor.

1.5Manfaat Penelitian

Manfaat Penelitian ini adalah sebagai berikut :

1. Menyediakan informasi lowongan pekerjaan yang diperoleh dari perusahaan – perusahaan yang ingin mencari karyawan baru

2. Membantu pelamar mengetahui atau menemukan pekerjaan yang sesuai dengan latar belakang pendidikan, minat dan bakat mereka

1.6Metode Penelitian

Tahapan - tahapan yang akan dilakukan pada penulisan skripsi ini adalah sebagai berikut :

1. Studi Literatur

Studi literatur dilakukan dengan cara mengumpulkan bahan referensi yaitu dari buku, artikel, paper, jurnal, makalah, maupun situs-situs dari internet. Studi literatur yang dilakukan berkaitan dengan Sistem Rekomendasi, metode nearest neighbor, metode decision tree, informasi yang berkaitan dengan pekerjaan dan lowongan

2. Idetifikasi Masalah

Pada tahap ini, dilakukan identifikasi masalah yang akan diselesaikan pada aplikasi ini 3. Analisis

Pada tahap ini dilakukan analisis terhadap hasil studi literatur untuk mengetahui dan memahami mengenai metode hybrid-based pada Sistem Rekomendasi.


(22)

4. Perancangan Sistem

Pada tahap ini dilakukan perancangan arsitektur, perancangan data dan perancangan antarmuka. Proses perancangan dilakukan berdasarkan hasil analisis studi literatur yang telah didapatkan.

5. Implementasi Sistem

Pada tahap ini dilakukan proses implementasi pengkodean program dalam aplikasi komputer menggunakan bahasa pemrograman yang telah dipilih yang sesuai dengan analisis dan perancangan yang sudah dilakukan.

6. Pengujian

Pada tahap ini dilakukan proses pengujian dan percobaan terhadap sistem sesuai dengan kebutuhan yang ditentukan sebelumnya serta memastikan program yang dibuat berjalan seperti yang diharapkan.

7. Dokumentasi

Pada tahap ini dilakukan pembuatan dokumentasi sistem, lengkap dengan analisis yang diperoleh, hasil analisis dan implementasi dari konsep metode hybrid NN (Nearest Neighbor) dan Decision Tree pada sistem rekomendasi.

1.7. Sistematika Penulisan

Penulisan skripsi ini terdiri dari lima bab dengan masing-masing bab secara singkat dijelaskan sebagai berikut:

Bab 1 : Pendahuluan

Bab ini berisi berisikan latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan.


(23)

Pada bab ini dibahas mengenai teori-teori pendukung penelitian skrispsi yaitu teori sistem rekomendasi, content-based recommendation, collaborative recommendation, metode hybrid, algoritma nearest neighbor (NN), algoritma Decision Tree.

Bab 3 : Analisis dan Perancangan Sistem

Pada bab ini berisikan paparan analisis terhadap permasalahan dan penyelesaian persoalan terhadap metode hybrid pada sistem rekomendasi serta identifikasi kebutuhan perancangan sistem.

Bab 4 : Implementasi dan Pengujian Sistem

Pada bab ini berisi implementasi perancangan sistem dari hasil analisis dan perancangan yang sudah dibuat, serta menguji sistem untuk menemukan kelebihan dan kekurangan pada sistem rekomendasi yang dibuat.

Bab 5 : Kesimpulan dan saran

Pada bab ini berisikan kesimpulan yang didapatkan terhadap hasil penelitian skripsi dan saran untuk pengembangan lebih lanjut tentang topik terkait yang dibahas pada skripsi.


(24)

BAB II

LANDASAN TEORI

Di dalam landasan teori ini, akan dibahas tentang teori – teori dan konsep dasar yang mendukung pembahasan dari sistem yang akan dibuat.

2.1Basis Data (Database)

Basis data diperlukan dalam pembuatan sebuah sistem sebagai inti dari sistem tersebut. Beberapa definisi lain tentang basis data adalah sebagai berikut:

1. Basis data adalah sebuah model dari beberapa aspek realitas pada sebuah organisasi (Kent, 1978).

2. Menurut Connolly dan Begg (2002), basis data adalah kumpulan dari data yang sering digunakan oleh sebuah sistem pada suatu organisasi.

3. Basis data menurut Sutanta (2004) adalah pengorganisasian sebuah kumpulan data yang saling terkait atau berhubungan sehingga memudahkan memperoleh informasi.

4. Database adalah sebuah struktur repositori dari suatu data.

Basis data diciptakan untuk mengoperasikan infomasi dalam skala besar. Fungsi dari basis data seperti memasukkan data, menyimpan data, mengambil data dan mengelola data tersebut. Dari definisi yang telah dijabarkan, maka dapat disimpulkan bahwa Pengertian dari database adalah koleksi dari berbagai macam data yang terorganisir di dalam satu unit atau tempat.


(25)

2.1.1 Database Management System (DBMS)

Database management system (DBMS) adalah sebuah set dari fasilitas yang terorganisir untuk mengakses dan mempertahankan satu atau banyak basis data. Penggunaan DBMS dilakukan di dalam integrasi dari suatu sistem yang menggunakan data tersebut dalam sebuah perangkat lunak (Beynon-Davies, 2004). Menurut Beynon-Davies, DBMS dibagi atas 4 jenis yaitu:

1. Data definition : fungsinya yaitu pendefinisian struktur data baru yang masuk ke dalam sebuah database, menghapus struktur data dasi sebuah basis data dan memodifikasi struktur dari data yang sudah ada.

2. Data maintenance : fungsinya yaitu menyisipkan data baru, memperbaharui data dan menghapus data pada sebuah data struktur yang telah ada.

3. Data retrival : fungsinya yaitu, melakukan query pada data yang telah ada dan mengambil data untuk digunakan pada sebuah sistem.

4. Data Control : fungsinya yaitu, menciptakan dan memonitoring user dari basis data, membatasi akses data, dan memonitoring performa database.

2.2Sistem Rekomendasi (Recommender System)

Ada beberapa macam definisi dari sistem rekomendasi. Menurut Mahmood dan Ricci, Sistem Rekomendasi adalah peralatan perangkat lunak dan teknik yang menyediakan saran untuk items yang bisa digunakan oleh user. Secara general sistem rekomendasi didefinisikan sebagai sistem pendukung yang membantu user untuk mencari informasi, produk dan servis (buku, film, music dll) dengan menggabungkan dan menganalisa saran dari user lain, yang berarti meninjau dari beberapa pihak dan user

atribut (Frias-Martinex, 2006).

Sistem rekomendasi menjadi sebuah penelitian bidang yang penting sejak munculnya makalah pertama tentang collaborative-filtering pada pertengahan 1990an (Herlocker, 2001). Tujuan dari sistem rekomendasi adalah menghasilkan rekomendasi yang berguna kepada user untuk items atau produk yang paling menguntukan bagi


(26)

user (Melville dan Sindhwani, 2010). Sistem Rekomendasi menurut Melville dan Sindhwani, terbagi atas 3 jenis, yaitu:

1. Content-based Filtering 2. Collaborative Filtering 3. Hybrid-based Filtering 2.2.1 Content Based Filtering

Content-based filtering adalah sistem yang belajar untuk memberikan rekomendasi

item yang sama kepada user baru dengan membandingkan user yang terdahulu (Mahmod dan Ricci, 2009). Yang dimaksud dengan user yang baru dan user yang lama di sini adalah user baru sebagai data yang baru masuk dan user lama sebagai data yang telah masukkan dan sudah tersimpan di dalam database. Teknik – teknik yang digunakan dalam content-based seperti Bayesian Classifiers, Cluster analysis, decision trees dan artificial neural networks. Teknik – teknik tersebut dapat mengestimasi probabilitas perbandingan data lama dengan data baru.

2.2.2 Collaborative Filtering

Implementasi termudah dan original dari pendekatan rekomendasi ini untuk user aktif yang mempunyai kesamaan dengan user yang terdahulu (Schafer dkk, 2007). Kesamaan data pada 2 user dikalkulasi berdasarkan kesamaan history dari user.

Metode ini membandingkan koleksi data yang sama ataupun tidak sama dengan data yang baru dan kemudian dikalkulasi agar dapat diberikannya rekomendasi kepada

user. Teknik – teknik yang sering dipakai dalam metode ini adalah teknik tf-idf, nearest neighbor dan pearson Correlation.

2.2.3 Hybrid Based Filtering

Sistem rekomendasi ini berdasarkan oleh kombinasi dari content-based filtering dan


(27)

menggabungkan metode content-based filtering dengan collaborative filtering

mencoba menggunakan keunggulan dari content-based filtering untuk mengatasi masalah dari kekurangan collaborative filtering ataupun sebaliknya. Contohnya seperti pada metode content-based filtering hanya dapat mengklasifikasikan data. Tetapi sistem ingin memberikan rangking kepada user untuk rekomendasi item. Maka dari itu sistem menggunakan metode collaborative filtering untuk mendapatkan perhitungan agar menghasilkan sebuah rangking rekomendasi yang dapat diberikan kepada user. Sehingga dengan menggabungkan dua metode tersebut, sistem akan memberikan hasil yang lebih baik dan lebih memuaskan kepada user.

2.3Metode Nearest Neighbor

Metode nearest neighbor langsung mengeksploitasi jarak antara data sampel untuk melakukan klasifikasi. Nearest neighbor secara independen mengevaluasi jarak antara data yang satu dengan data yang lain (Xu, Y. 2012). Rules nearest neighbor

mengidentifikasi katagori dari data poin yang baru (kasus baru) berdasarkan nearest neighbor dari data (kasus lama) yang telah diketahui nilainya (Vaidehi dan Vasuhi, 2008).

Rule ini digunakan pada sistem pengenalan pattern (pattern recognition), pengkatagorian text (text catagorization), model rangking, pengenalan objek (object recognition) dan event recognition (Bhatia dan Vandana, 2010).


(28)

Gambar 2.1 Kedekatan kasus

Pada gambar 2.1 dapat dilihat bahwa terdapat dua kasus lama, yaitu kasus A dan kasus B. Pada saat kasus baru muncul, solusi yang digunakan untuk memcahkan kasus baru tersebut adalah dengan kasus lama A dikarenakan jarak 1 yaitu kasus baru dengan kasus A lebih dekat dibandingkan jarak 2 yaitu jarak kasus baru dengan kasus B. Maka diambil kesimpulan bahwa kasus baru dipecahkan oleh kasus A.

Untuk memperoleh rangking pada nearest neighbor, sistem melakukan perhitungan kedekatan (similarity) antara 2 kasus. Berikut adalah rumus dari yang digunakan di dalam metode nearest neighbor.

Dimana : T : Kasus baru

S : Kasus yang ada dalam memori/basisdata (kasus lama) n : Jumlah atribut dalam setiap kasus

i : atribut variabel antara 1 s/d n

f : fungsi similarity atribut i antara kasus T dan kasus S w : bobot yang diberikan pada atribut ke-i

Penentuan kedekatan biasanya berada pada nilai antara 0 s/d 1. Nilai 0 berarti bahwa kedua kasus mutlak tidak memiliki kesamaan, sebaliknya untuk nilai 1, berarti kasus tersebut mutlak memiliki kesamaan.


(29)

Klasifikasi data bisa dideskripsikan sebagai pengawas dari sebuah learning algoritm

di dalam proses mesin pembelajaran. Decision tree adalah sebuah representasi dari prosedur keputusan untuk menentukan kelas dan dikonstruksikan menjadi algoritma

non-incremental tree-induction atau algoritma incremental tree-induction (Utgoff, 1989).

dalam sistem pengambilan keputusan dan proses pembelajaran sistem yang menggunakan teknik prediksi modeling yang digunakan di dalam klasifikasi. Decision tree menggunakan teknik divide-conquer untuk memisahkan masalah menjadi bagian – bagian.

Struktur dari Decision tree dibuat dari node awal (root), pilihan (internal) dan node hasil (leaf nodes). Struktur pohon ini digunakan untuk mengklasifikasikan data yang belum diketahui record-nya. Pada gambar 2.2 berikut, akan digambarkan struktur pohon keputusan yang akan digunakan pada skripsi ini.


(30)

Gambar 2.2 Decision Tree

2.5Penelitian terdahulu

Di bagian ini akan dijabarkan beberapa penelitian terdahulu. Sistem rekomendasi telah banyak digunakan pada penelitian terdahulu. Seperti sistem rekomendasi pada bursa telepon genggam (2008) yang menggunakan content-based filtering dan sistem rekomendasi untuk sistem informasi toko film digital (2007) menggunakan metode


(31)

Untuk metode Hybrid-based filtering telah digunakan oleh (2010) pada sistem rekomendasi berita berbahasa indonesia yang menggunakan gabungan metode

clustering dan algoritma tf-dif. Kemudian digunakan juga oleh (2012) untuk memperoleh rekomendasi minat bakat siswa yang menggunakan metode Association Rule dan algoritma Apriori. Untuk lebih jelasnya, pada tabel 2.1 Berikut akan dijelaskan penelitian – penelitian yang telah dibuat sebelumnya.

Tabel 2.1 Penelitian terdahulu No. Judul Tahun Metode yang

digunakan

Keterangan

1 Pembangunan

Perangkat Lunak Sistem Rekomendasi Bursa Elektronis Telepon Genggam.

2008 content-based filtering

Kelemahan :

ketidakmampuan sistem memberikan rekomendasi suatu informasi yang baru karena rekomendasi berdasarkan data yang lalu. 2 Metode Analisis

Rekomendasi Pada Sistem Rekomendasi (Contoh kasus

Pemanfaatan pada biro wisata)

2009 knowledge-based, utility based user-based collaborative filtering, item-based collaborative filtering, dan association rules

Berdasarkan kepuasan pelanggan (user

satisfaction) pemodelan sistem rekomendasi memiliki domain dan wilayahnya masing-masing dalam penyelesaian masalah penentuan rekomendasi

Tabel 2.1 Penelitian terdahulu (lanjutan) No. Judul Tahun Metode yang

digunakan

Keterangan

3 Model Sistem Informasi Toko Film Digital Dengan Recommender System

2007 Collaborative Filtering

metode user item

Keuntungan : dinamis dan sederhana dalam

perhitungan rekomendasi Kelemahan : masalah skalabilitas dan sparsity


(32)

akibat terlalu banyak item.

4 Studi Multi Criteria Decision Making (MCDM) untuk Recommender System Bursa Tenaga Kerja

2008 Multi Criterian Decision Making

(MCDM)

Kelebihan : metode sederhana dan sesuai, permasalahan pemilihan alternatif yang jumlahnya terbatas dan telah diketahui sebelumnya.

5 Implementasi Sistem Rekomendasi Berita Berbahasa Indonesia Berbasis Pilihan Personal Menggunakan Algoritma Hybrid Filtering

2010 Algoritma

clustering dan algoritma tf-dif

Algoritma clustering

digunakan untuk klasifikasi berita

Keuntungan tf-dif :

pemberian bobot pada term

sehingga dapat mengetahui

term yang sering muncul dalam dokumen secara individu, namum jarang dijumpai pada dokumen lain 6 Sistem Rekomendasi

Bidang Minat Mahasiswa

menggunakan Metode Association Rule dan Algoritma Apriori

2012 metode

Association Rule dan algoritma Apriori

Aturan yang telah diinput sebelumnya menjadi acuan rekomendasi terhadap minat user sehingga sistem dapat memberika rekomendasi

Tabel 2.1 Penelitian terdahulu (lanjutan) No. Judul Tahun Metode yang

digunakan

Keterangan

7 Perancangan Sistem Pendukung Keputusan (SPK) untuk

menentukan

2010 Metode

Decision tree

menggunakan algoritma ID3

Kelemahan ID3 : ketidakstabilan dalam melakukan klasifikasi data apabila terjadi sedikit


(33)

Kelaiklautan Kapal. perubahan pada data. Kelebihan : dapat

menganalisa fungsi target yang bernilai diskrit 8 Penerapan Data Mining

untuk menganalisa kemungkinan

pengunduran diri calon mahasiswa bar

2011 Algoritma

Decision tree

menggunakan algoritma ID3

ID3 merupakan algoritma dasar dalam decision tree

sehingga algoritma tersebut lebih mudah dimengerti dan digunakan

9 Metode HYBRID

(Content dan

Collaborative based) Nearest Neighbour untuk sistem

rekomendasi pariwisata

2011 Algoritma

Nearest Neighbor dan algoritma Euclidean

Menanggulangi kelemahan dari motede hybrid(content dan collaborative) dengan pendekatan baru yaitu Algoritma Nearest Neighbor

10 Sistem rekomendasi pembelian mobil berbasis metode Neuro-Fuzzy Classification

- metode

Neuro-Fuzzy Classification

Penggabungan fuzzy logic

dengan neural network

untuk menanggulangi kekurangan dari rule fuzzy logic

11 Perbandingan metode Nearest neigbor dan algoritma C.45 untuk menganalisis

kemungkinan

pengunduran diri calon mahasiswa di STMIK Yogyakarta

2009 Algoritma

Nearest Neighbor dan algoritma C4.5

Algoritma Nearest

Neighbor: tidak lebih akurat dari C.45 tetapi pada saat pengklasifikasian data algoritma C.45

membutuhkan waktu yang lebih lama dan proses yang lebih panjang


(34)

BAB III

ANALISIS DAN PERANCANGAN

Dalam penelitian ini digunakan metode hybrid-approches yang menggabungkan dua buah metode, yaitu metode content-based dan collaborative-based untuk Penggabungan dua buah metode ini dilakukan untuk mengatasi kelemahan dari masing – masing metode tersebut. Selanjutnya akan dibahas tentang perancangan

Data Flow Diagram (DFD) dan perancangan alur kerja sistem (flowchart) pada sistem.

3.1 Data yang digunakan

Data yang digunakan pada sistem ini diambil dari 2 sumber yaitu jobsdb untuk data lowongan pekerjaan dan Universitas Sumatera Utara untuk data jurusan universitas. Pada tabel 3.1 berikut akan dijabarkan sumber, jumlah data dan tahun dari data yang akan digunakan :

Tabel 3.1 Sumber data

No Sumber Jumlah data Bln/Tahun Data yang diambil

1 Jobsdb

(www.jobsdb.com)

1600 Januari 2013 – Maret

2013

data lowongan pekerjaan

2 Univesitas Sumatera

Utara (www.usu.ac.id)

58 Maret 2013 Data fakultas dan jurusan

yang ada di USU

Dapat dilihat pada tabel 3.1 bahwa data yang diambil pada website jobsdb adalah sebesar 1600 data. Yang diambil pada kurun waktu Januari 2013 – Maret 2013. Data yang diambil berupa data lowongan pekerjaan yang berisi tentang kualifikasi atau


(35)

selain dari website jobsdb, data yang digunakan untuk bidang pendidikan dan jurusan pendidikan diambil dari website Universitas Sumatera Utara (USU). Data yang diambil berjumlah 58 data, diakses pada bulan Maret 2013. Untuk bidang pendidikan diambil dari fakultas dan jurusan yang ada di Universitas Sumatera Utara.

3.2 Analisis data

3.2.1 Klasifikasi data

Data diklasifikasikan atas 3 jenis yaitu parameter, variabel dan atribut. Paramater digunakan pada teknik decision tree (content-based). Fungsi dari parameter tersebut untuk menentukan dan memberikan informasi jenis latar belakang pendidikan pelamar kepada sistem. Parameter pada teknik decision tree dibagi atas 7 jenis, dapat dilihat pada tabel 3.2 berikut.

Tabel 3.2 Parameter rekomendasi pada metode collaborative-based

No Parameter Keterangan

1 Ekonomi Untuk menentukan rekomendasi pada bidang ekonomi seperti bank

2 Pertanian Untuk menentukan rekomendasi pada bidang pertanian 3 Teknologi Untuk menentukan rekomendasi pada bidang komputer 4 Pendidikan (Ilmu

Budaya)

Untuk menentukan rekomendasi pada bidang pendidikan seperti kursus atau sekolah

5 Ilmu Pengetahuan (MIPA)

Untuk menentukan rekomendasi pada bidang ilmu pengetahuan seperti Laboratorium dsb

6 Kedokteran Untuk menentukan rekomendasi pada bidang kedokteran 7 umum Untuk menentukan rekomendasi pada kualifikasi bidang

umum

Dapat dilihat pada gambar 3.2 diatas, sebanyak 7 parameter dari fakultas yang ada dijadikan sebagai parameter untuk bidang pendidikan yang berbeda. Penentuan parameter di dalam teknik decision tree akan dijelaskan pada diagram dalam gambar 3.1 berikut :


(36)

Gambar 3.1 Penentuan Parameter

Di dalam metode nearest neighbor (collaborative-based) pada sistem ini digunakan klasifikasi data yaitu variabel dan atribut. Variabel adalah suatu unsur data yang akan diolah sehingga menghasilkan rekomendasi. Sedangkan atribut adalah objek yang berada di dalam sebuah variabel. Penggunaan variabel dan atribut pada tabel 3.3 digunakan untuk perhitungan similarity agar menghasilkan menghasilkan sebuah rekomendasi.

Tabel 3.3 Variabel dan Atribut

No Variabel Atribut

1 Jenis pendidikan a. Informasi Teknologi (IT) b. Ilmu Komputer (Ilkom) 2 Kualifikasi pendidikan a. SMA

b. SMK

c. D3 (Diploma) d. S1 (Sarjana) e. S2 (Magister) 3 IP (Indeks Prestasi) a. C = 2,75 – 2,99

b. B = 3,00 – 3,50 c. A = 3,51 – 4,00 4 Kemampuan komputer a. Web

b. Programing c. Desain d. Jaringan


(37)

Penggunaan variabel dan atribut pada metode nearest neighbor akan dijelaskan pada gambar 3.2 berikut :

Gambar 3.2 Penggunan variabel dan atribut pada nearest neighbor

3.2.2 Data pada Content-based Filtering

Pada penelitian ini, data yang terkumpul dari sumber akan di analisis agar sesuai dengan kebutuhan sistem. Sehingga dapat diolah untuk menghasilkan suatu rekomendasi. Untuk memberikan rekomendasi yang sesuai dengan latar belakang pendidikan, maka dilakukan pengklasifikasian berdasarkan jurusan apa yang dibutuhkan perusahaan kemudian di seleksi dengan latar belakang pendidikan yang dimiliki oleh seorang pelamar. Pengklasifikasian data dilakukan dengan menggunakan metode decision tree.

Data jurusan yang digunakan dalam penelitian ini bersumber dari Universitas Sumatera Utara (USU). Data diambil melalui media internet yang diakses dari website

http://www.usu.ac.id/. Data yang diambil berupa kualifikasi pendidikan, fakultas (bidang pendidikan) dan jurusan pada universitas tersebut. Contoh data yang diambil akan dijabarkan pada tabel 3.4 berikut :


(38)

Tabel 3.4 Sampel data latar belakang pendidikan

No Kualifikasi Pendidikan Fakultas Jurusan

1 D3 MIPA Kimia

2 D3 Ilmu Budaya Sastra Inggris

3 D3 Ekonomi Akutansi

4 S1 MIPA Kimia

5 S1 FASILKOMTI Teknologi Informasi

... ... ... ...

35 S2 FASILKOMTI Teknologi Informasi

3.2.3 Data pada Collaborative Filtering

Setelah melakukan pengklasifikasian pada latar belakang pendidikan, maka dilakukannya rekomendasi pekerjaan kepada pelamar. Maka diperlukannya data lowongan pekerjaan yang dikeluarkan oleh perusahaan – perusahaan yang ingin mencari karyawan baru. Analisis data untuk merekomendasikan pekerjaan kepada pelamar dilakukan dengan menggunakan nearest neighbor. Data yang digunakan dalam penelitian ini bersumber dari data website pencarian pekerjaan yaitu jobsDB. Data yang diambil melalui media internet yang diakses dari website

http://id.jobsdb.com berupa informasi lowongan pekerjaan. Dari sumber yang sama juga digunakan data lowongan pekerjaan tahun 2010 – 2013.

Pada saat sebuah perusahaan mencari karyawan baru, perusahaan tersebut memberikan requirement yang dibutuhkan oleh sebuah perusaahan untuk memenuhi kriteria yang diinginkan perusahaan tersebut. Requirement adalah jenis pendidikan (jurusan pendidikan), kualifikasi pendidikan, indeks prestasi (IP), gaji (opsional tergantung perusahaan), tipe pekerjaan, kemampuan komputer, kemampuan bahasa, kemampuan kerjasama (opsional), lokasi, usia, mutasi dan pengalaman kerja. Dari data tersebut, masing – masing akan diberikan bobot dan akan dihitung nilainya sehingga dapat direkomendasikan kepada pelamar pekerjaan. Pada tabel 3.5 adalah contoh sampel data requirement yang dikeluarkan oleh sebuah perusahaan:


(39)

Tabel 3.5 Sampel data lowongan pekerjaan

no Nama Pekerjaan Jenis

Pendidikan

Kualifikasi Pendidikan

IP Fresh Graduate . . . lokasi

1 Web application developer (maven lab pte ltd)

Informasi Teknologi

S1 2,75 ya . . . jakarta

2 ASP.Net Developers Ilmu

komputer

D3 3,00 ya . . . Jakarta

3 Temporary Payroll Executive – PT MindChamps Indonesia

akutansi D3 2,75 ya . . . Jakarta

4

ekonomi D3 2,75 tidak . . . Surabaya

5

ekonomi S1 2,75 tidak . . . jakarta

6 Teknik industri, teknik kimia

S1 3,00 tidak . . . Medan

7 Account Manager (Medical) Carl Zeiss Pte. Ltd.

ekonomi S1 2,75 tidak . . . Jakarta

8 Elementary Teacher YAY. LYLYS PERTIWI Informasi Teknologi, mipa, sastra inggris

S1 2,75 ya . . . Jakarta

Utara

9 Japanese Teacher LIMKOKWING AKADEMI INNOVASI KREATIVITAS, PT

Sastra jepang S1 2,75 tidak . . . Bali

10 DOSEN

YAYASAN LEMBAGA PENGEMBANGAN MANAJEMEN FIDEA Akutansi, manajemen, teknologi informasi, ilmu komputer

S2 2,75 ya . . . jakarta

. . . .

. . . .

. . . .

1000 Architects (ARC – SML)


(40)

SINAR MAS LAND

Untuk pelamar yang menginginkan rekomendasi pekerjaan, sistem akan meminta pelamar tersebut untuk memasukkan data pribadi atau resume (CV). Resume tersebut digunakan sebagai kriteria perbandingan dalam mencari pekerjaan yang sesuai dengan

requirement sebuah perusahaan yang menyediakan lowongan pekerjaan. Adapun field

dan contoh data yang harus dimasukkan pelamar akan dijelaskan di tabel 3.6 berikut: Tabel 3.6 Sampel data

1 Nama Nurul Khadijah

2 Alamat Jln Sei Beras No. 3

3 Jenis Pendidikan Informasi Teknologi 4 Kualifikasi Pendidikan S1

5 IP 3

6 Kemampuan Komputer Web

. . .

. . .

. . .

3.3 Metode Hybrid

Untuk membangun sistem rekomendasi pada penelitian ini, digunakan metode hybrid-approches. Metode hybrid-approches ini adalah gabungan dari 2 metode, metode

Content-based dan metode Collaborative Filtering. Metode pada Content-based

menggunakan teknik Decision Tree dan metode untuk Collaborative Filtering

menggunakan algoritma Nearest Neighbor. Pada gambar 3.3 berikut akan digambarkan tentang proses penggunaan metode – metode tersebut :


(41)

3.3.1 Proses Metode Content-based Filtering

Metode Content-based pada aplikasi ini digunakan untuk penyaringan data yang telah diinput oleh user sebelumnya. Jika pada metode Collaborative-based digunakan hanya untuk memberikan rangking kepada kasus – kasus yang telah diinput sebelumnya, maka metode Collaborative-based dilakukan pada penyaringan data yang telah diinput sebelumnya sehingga menghasilkan parameter – parameter yang sesuai untuk dilakukannya rangking.

Pada penyeleksian data menggunakan teknik decision tree, data yang telah diinput oleh user akan dibandingkan dengan kasus yang telah disimpan terlebih dahulu di database. Setelah data dibandingkan dan mendapatkan kecocokan antar data, akan menghasilkan parameter yang akan digunakan dalam perhitungan di

Collaborative-based. Misalkan pelamar menginput data (tabel 3.7) :

Tabel 3.7 Sampel data pelamar

1 Nama Nurul Khadijah

2 Alamat Jln Sei Beras No. 3

3 Bidang Pendidikan Teknologi

4 Jenis Pendidikan Informasi Teknologi 5 Kualifikasi Pendidikan S1

6 IP 3

7 Kemampuan Komputer Web

. . .

. . .

Maka dari tabel 3.7 dapat dilihat bahwa kualifikasi pendidikan pelamar S1, bidang pendidikan teknologi dan jenis pendidikan Informasi Teknologi (IT). Dari data tersebut kemudian dilakukan pengkualifikasian sehingga menghasilkan parameter. Berikut adalah langkah – langkah pencarian parameter menggunakan teknik decision tree :


(42)

Gambar 3.4 Node Akar

Dari gambar 3.4 dapat dilihat bahwa kualifikasi pendidikan dibagi atas 4 node yaitu SMA, D3, S1 dan S2. Pada data resume, kualifikasi pelamar adalah S1. Maka dipilih S1 kemudian dilanjutkan ke bidang pendidikan. Pada gambar 3.5, bidang pendidikan pelamar adalah teknologi kemudian dilanjutkan ke node jurusan pendidikan.


(43)

Pada bidang pendidikan teknologi, jurusan pendidikan dibagi atas 2 jenis yaitu Ilmu komputer dan teknologi. Jurusan pendidikan pelamar adalah teknologi informasi, kemudian berlanjut ke node terakhir yaitu parameter (gambar 3.6).

Gambar 3.6 Pembentukan Akar 2

Pada gambar 3.7, node parameter untuk jurusan pendidikan informasi teknologi adalah parameter teknologi. Setelah mendapatkan parameter kemudian langkah selanjutnya adalah perhitungan yang akan dilakukan di metode content-based

menggunakan algoritma nearest neighbor yang akan menghasilkan rangking rekomendasi kepada pelamar.


(44)

3.3.2 Proses Metode Collaborative-based Filtering

Collaborative-based akan memberikan rekomendasi pekerjaan dengan menggunakan informasi rangking berdasarkan data yang telah masukkan oleh user. Data user yang dimasukkan akan dicari dan dibandingkan dengan data yang tersimpan terlebih dahulu di dalam database. Masing – masing data akan diberi bobot kemudian data tersebut akan dibandingkan dengan nilai – nilai dari bobot dan kedekatan di dalam variabel. Variabel – variabel tersebut akan dihitung kesamaannya (similarity) menggunakan algoritma Nearest Neighbor kemudian disaring atau di-rangking berdasarkan hasil jarak tersebar dari perhitungan bobot setiap variabel.

Pencarian jarak terbesar dengan algoritma Nearest Neighbor dengan melakukan perhitungan kedekatan nilai variabel dan bobot variabel. Berikut adalah langkah – langkah pencarian jarak terbesar menggunakan algoritma Nearest Neighbor:

1. Menentukan bobot dan kedekatan variabel :

a. Membuat tabel data dengan mengklasifikasikan variabel yang ada

Nilai bobot ditentukan berdasarkan korelasi pearson (Melville, P. Etc. 2002). Dimana bobot ditentukan dengan menghitung korelasi dari data yang masuk dengan data yang sudah ada yang mengandung tingkat hubungan. Ketika menentukan nilai korelasi, hal – hal yang dipertimbangkan adalah

− x menyebabkan y

− y menyebabkan x

− kumpulan faktor yang lain

Berikut adalah tabel penentuan nilai bobot:

Tabel 3.8 Penentuan nilai bobot

No Tingkat korelasi bobot

1 Nilai 1 sama dengan nilai 2 1

2 Nilai 1 sangat mendekati nilai 2 0,75 3 Nilai 1 tidak berpengaruh dengan nilai 2 0,5

4 Nilai 1 mendekati nilai 2 0,25

5 Nilai 1 tidak mendekati nilai 2 0

Pada tabel 3.8 dijelaskan tentang penentuan bobot dengan membandingkan tingkat hubungan dan korelasi nilai 1 dan nilai 2. Ditentukan dengan pengaruh dari


(45)

nilai 1 dan nilai 2. Disini nilai 1 sebagai kualifikasi dari pelamar dan nilai 2 sebagai requirement yang diminta oleh perusahaan.

Pada tabel 3.9 berikut adalah tabel kedekatan atribut dan bobot variabel pada sistem rekomendasi:

Tabel 3.9 Bobot Variabel

No Variabel Bobot

1 Jenis pendidikan 1 2 Kualifikasi pendidikan 0,75 3 IP (Indeks Prestasi) 0,5 4 Kemampuan komputer 1

b. Menentukan kedekatan nilai pada atribut – atribut dari variabel Pada tabel 3.10 berikut adalah contoh penentuan nilai pada atribut :

Tabel 3.10 Sampel nilai atribut jenis pendidikan Nilai 1 Nilai 2 Bobot

IT Ilkom 0,5

Ilkom IT 0,5

Ilkom Ilkom 1

IT IT 1

2. Menghitung kedekatan kasus baru dengan kasus lama Kasus Lama (daftar pekerjaan) :

Tabel 3.11 Tabel Kasus Lama (Daftar Pekerjaan)

No Jenis pendidikan Kualifikasi pendidikan IP Kemampuan komputer

1 IT S1 2,75 Web

2 IT D3 3,0 Prog

Kasus Baru (pelamar perkerjaan) :

Tabel 3.12 Tabel kasus baru (data pelamar pekerjaan)

No Jenis pendidikan Kualifikasi pendidikan IP Kemampuan komputer

1 IT S1 3,0 Web

Kemudian dilakukan langkah – langkah sebagai berikut untuk menentukan

similarity kasus baru dengan kasus sebelumnya:


(46)

a. Kedekatan nilai atribut jenis jenis pendidikan : IT – IT = 1

− Kasus lama jenis pendidikan = IT

− Kasus baru jenis pendidikan = IT

kemudian melakukan mambandingkan kedekatan atribut : Tabel 3.13 Kedekatan Nilai Atribut Jenis Pendidikan

Nilai 1 Nilai 2 Bobot IT Ilkom 0,5

Ilkom IT 0,5

Ilkom Ilkom 1

IT IT 1

Maka bobot dari : IT – IT = 1 b. Bobot atribut jenis pendidikan : 1

Tabel 3.14 Bobot Variabel

No Variabel Bobot

1 Jenis pendidikan 1 2 Kualifikasi pendidikan 0,75 3 IP (Indeks Prestasi) 0,5 4 Kemampuan komputer 1

c. Kedekatan nilai atribut Kualifikasi pendidikan : S1 – S1 = 1

- Kasus lama Kualifikasi pendidikan = S1

- Kasus baru Kualifikasi pendidikan = S1

Tabel 3.15 Kedekatan Nilai Atribut Kualifikasi Pendidikan Nilai 1 Nilai 2 Bobot

S2 S2 1

S1 S1 1

D3 D3 1

SMK SMK 1

S2 S1 0,75


(47)

S2 SMK 0,75

S1 S2 0,75

Tabel 3.15 Kedekatan Nilai Atribut Kualifikasi Pendidikan Nilai 1 Nilai 2 Bobot

S1 D3 0,75

S1 SMK 0,75

D3 S2 0,5

D3 S1 0,5

D3 SMK 0,5

SMK S2 0,5

SMK S1 0,25

SMK D3 0,25

Maka bobot dari : S1 – S1 = 1

d. Bobot atribut Kualifikasi pendidikan : 0.8

Tabel 3.16 Bobot Variabel

No Variabel Bobot

1 Jenis pendidikan 1 2 Kualifikasi pendidikan 0,75 3 IP (Indeks Prestasi) 0,5 4 Kemampuan komputer 1 e. Kedekatan nilai atribut jenis IP : 3,0 – 2,75 = 0.8

- Kasus lama IP = 3,0 (B)

- Kasus baru IP = 2,75 (C)

Tabel 3.17 Kedekatan Nilai Atribut IP Nilai 1 Nilai 2 Bobot

A A 1

B B 1

C C 1

A B 0,75

A C 0,5

B A 0,75


(48)

C A 0,5

C B 0,5

Ket : C = 2,75 – 2,99; B = 3,00 – 3,50; A = 3,51 – 4,00 Maka bobot dari : 3,0 – 2,75 = 0,75

f. Bobot atribut IP : 0.6

Tabel 3.18 Bobot Variabel

No Variabel Bobot

1 Jenis pendidikan 1 2 Kualifikasi pendidikan 0,75 3 IP (Indeks Prestasi) 0,5 4 Kemampuan komputer 1

g. Kedekatan nilai atribut Kemampuan komputer: web – web = 1

- Kasus lama Kemampuan komputer = web

- Kasus baru Kemampuan komputer = web

Tabel 3.19 Kedekatan Nilai Atribut Kemampuan Komputer

Nilai 1 Nilai 2 Bobot

Web web 1

Desain Desain 1

Jaringan Jaringan 1

Programing Programing 1

web Desain 0,5

. . .

. . .

Maka bobot dari : web – web = 1

h. Bobot atribut Kemampuan komputer : 1

Tabel 3.20 Bobot Variabel

No Variabel Bobot

1 Jenis pendidikan 1

2 Kualifikasi pendidikan 0,75 3 IP (Indeks Prestasi) 0,5 4 Kemampuan komputer 1

Setelah didapat nilai kedekatan dari variabel a, b, c dst, seperti yang telah diajabarkan di no 1. maka perhitungan Similarity untuk user baru dengan user no. 1:


(49)

Jarak =

Jarak = (1*1) + (1*0,75) + (0,5*0,5) + (1*1) 1 + 0,75 + 0,5 + 1

Jarak = 3,00 3,25 Jarak = 0,923

2. Menghitung kedekatan kasusbaru dengan kasus lama no.2 :

Setelah menghitung kasus 1, Kemudian dilakukan kembali perhitungan Similarity

untuk user ke-2. perhitungan kedekatan user baru dengan user no.2 yaitu :

a. Kedekatan nilai atribut jenis jenis pend : IT – IT = 1 b. Bobot atribut jenis pend : 1

c. Kedekatan nilai atribut Kualifikasi pend : S1 – D3 = 0,75 d. Bobot atribut Kualifikasi pend: 0.75

e. Kedekatan nilai atrinut jenis GPA : 3,0 – 3,0 = 1 f. Bobot atribut GPA: 0.75

g. Kedekatan nilai atribut Kemampuan komputer: web – prog = 0,75 h. Bobot atribut Kemampuan komputer : 1

Maka : Jarak =

Jarak = (1*1) + (1*0,5) + (1*0,5) + (0,75*1) 1 + 0,75 + 0,5 + 1

Jarak = 2,75 3,25 Jarak = 0,846

Pada sistem, parameter yang dibandingkan terdapat 10 buah parameter. Perhitungan dilakukan terus secara berulang – ulang hingga semua kualifikasi


(50)

pekerjaan diberi bobot dan menghasilkan nilai. Untuk perhitungan di dalam skripsi ini, penulis hanya mencontohkan 4 parameter. Hasil nilai jarak dari perhitungan tersebut adalah:

Tabel 3.21 Hasil perhitungan similarity

No Nama hasil 1 Kasus 1 0,9471 2 Kasus 2 0,845

Dari langkah 1 – 2 dan tabel 3.21 dapat diketahui bahwa hasil perhitungan pada kasus no 1 adalah 0,9471 dan hasil perhitungan pada kasus 2 adalah 0,845. Dari kedua hasil tersebut, hasil perhitungan dari kasus 1 yaitu 0,9471 lebih mendekati ke nilai 1 dari pada hasil dari kasus 2 yaitu sebesar 0,845. Maka dari itu, user pada kasus baru memiliki kemiripan terdekat dengan kasus 1, sehingga hasil rekomendasi terbaik ada pada kasus 1.

3.4 Hasil dari metode Hybrid Approch

Dari penelitian ini akan dihasilkan output berupa rekomendasi pekerjaan yang sesuai dengan latar belakang dan bidang pendidikan seorang pelamar pekerjaan. Pelamar pekerjaan akan diberikan pilihan lowongan pekerjaan yang disusun berdasarkan rangking pekerjaan yang paling sesuai dengan pelamar.

Di daftar tersebut akan ditampilkan nama pekerjaan dan keterangan pekerjaan. seperti misalnya rekomendasi yang paling sesuai yaitu berupa pekerjaan di maven lab yang menerima pelamar baru lulus dari universitas dengan hasil perhitungan sebesar 0,923. Contoh hasil output selanjutnya dari aplikasi ini akan dijabarkan pada tabel 3.22 berikut ini:

Tabel 3.22 Hasil berupa rangking rekomendasi pekerjaan No Nama pekerjaan/perusahaan Hasil Keterangan


(51)

1 Web Application Developer (MavenLab PTE LTD)

0,923 Menerima Fresh

Graduate

2 Programing developer 0,846 Menerima Fresh

Graduate

3 ASP.Net Developer 0 Tidak Menerima

Fresh Graduate 3.5Perancangan Sistem

3.5.1 Use Case

Gambar 3.8 berikut adalah usecase specification dari Sistem rekomendasi pencarian pekerjaan. dapat kita lihat bahwa terdapat 3 actor di sistem ini yaitu perusahaan, pelamar dan admin. Untuk mendapatkan rekomendasi pekerjaan, actor user adalah pelamar. Sebelum login, pelamar harus terlebih dahulu mendaftarkan resume atau data diri ke dalam sistem. Setelah pendaftaran sukses, pelamar dapat login ke dalam sistem. Jika username dan password divalidasi dan sukses, makan pelamar akan di alihkan ke halaman login pelamar. Di halaman tersebut terdapat 2 fungsi. Fungsi pertama adalah melihat dan mengubah data pelamar. Fungsi kedua dimana pelamar dapat melihat rekomendasi pekerjaan.


(52)

Pelamar Admin Perusahaan

Mengolah resume Pelamar

edit data Login

Mengolah lowongan pekerjaan

Rekomendasi pekerjaan

hapus data (khusus admin)

edit data hapus data

(khusus admin) Lihat lowongan

pekerjaan

Input data Pelamar Input data

lowongan pekerjaan

Database Rekomendasi

Login Login

Lihat Data Pelamar yang submit pekerjaan

Gambar 3.8 Usecase Spesification Program 3.5.2 Data Flow Diagram (DFD)

3.5.2.1DFD Level 0

DFD level 0 atau disebut juga diagram konteks adalah diagram sistem inti dari sebuah

data flow diagram. Gambar 3.9 berikut adalah diagram konteks dari sistem rekomendasi pencarian pekerjaan :


(53)

Sistem rekomendasi pencarian pekerjaan

Pelamar Pekerjan Perusahaan

Admin - Input data Resume

- Edit Data Resume - Lihat Lowongan Pekerjaan - Memberikan Rekomendasi

Pekerjaan

- Lihat Pelamar yang mendaftar pekerjaan

- Input Data Lowongan Pekerjaan - Edit Data Lowongan Pekerjaan

- lihat lowongan pekerjaan - Lihat Pelamar

Pekerjaan - Edit lowongan

pekerjaan - Edit Pelamar Pekerjaan

Gambar 3.9 DFD Level 0/Diagram Konteks Diagram konteks diatas juga terdiri dari dua entitas luar sebagai berikut :

Tabel 3.23 Entitas DFD

No Entitas Luar Keterangan

1 Pelamar Kerja - Pelamar diharuskan untuk memasukkan data pribadi atau resume pekerjaan

- Pelamar dapat meng-edit data yang telah diinput setelah melakukan login

- Pelamar dapat melihat lowongan perkerjaan apa – apa saja yang ada

- Pelamar dapat meminta rekomendasi pekerjaan kepada sistem

2 Perusahaan - Perusahaan diharuskan mendaftar dan kemudian dapat melakukan peng-inputan lowongan

pekerjaan

- Perusahaan dapat meng-edit data yang telah dimasukkan

- Perusahaan dapat melihat siapa saja yang telah memasukkan resume ke perusahaan tersebut 3 Admin - Admin dapat mengedit data dari pelamar maupun

perusahaan 3.5.2.2DFD Level 1

Gambar 3.10 berikut adalah gambar dari DFD level 1 yang menjelaskan tentang alur dari sistem :


(54)

Gambar 3.10 DFD Level 1

Dari gambar 3.10, dapat kita lihat bahwa alur sistem telah digambarkan pada data flow sistem (dfd) tersebut. Di dalam dfd terdapat 3 user yaitu pelamar, admin dan perusahaan. Untuk mendapatkan rekomendasi, user pelamar harus mendaftarkan diri dan mengisi resume pekerjaan yang telah disediakan kemudian data tersebut disimpan ke dalam database pelamar. Setelah proses pendaftaran berhasil, user pelamar dapat login dengan username dan password yang telah didaftarkan terlebih dahulu. Setelah validasi login berhasil, maka pelamar dapat melihat rekomendasi pekerjaan yang ada di dalam sistem.

Di dalam sistem ini untuk mendapatkan rekomendasi, proses rekomendasi diminta oleh user. Kemudian rekomendasi mengolah data pelamar dan data perusahaan dari data yang dikirim dari database dt pendidikan, parameter dan pembanding. Setelah proses kalkulasi selesai, hasil yang diperoleh disimpan sementara di database temp. Kemudian dipanggil kembali dan menampilkan hasil rekomendasi tersebut kepada user pelamar.


(55)

3.5.2.3DFD Level 2

Berikut ini adalah gambar DFD level 2 hasil dari dekomposisi setiap proses alur sistem pada DFD level 1 :

2.1 Input data pelamar

5.1 edit data pelamar

5.2 hapus data pelamar

Tbl pelamar Tbl login

Pelamar

admin Input resume

Edit data Edit data

Hapus data

Gambar 3.11 DFD Level 2 : Mengelola data pelamar

Dapat kita lihat pada gambar 3.11 untuk mengelola data pelamar, user yang dapat mengakses proses tersebut adalah user pelamar dan user admin. User pelamar dan user admin dapat menginput data tanpa perlu login terlebih dahulu. Tetapi proses mengubah data dan menghapus data, user harus terlebih dahulu mendaftar dan menvalidasi username dan password. Proses pengubahan data dapat dilakukan oleh user pelamar dan user admin. Untuk proses penghapusan data, user yang bisa mengakses hanya user admin.


(56)

3.1 Input data perusahaan

5.1 edit data lowongan

kerja

5.2 hapus datalowonga

n pekerjaan

Tbl job list Tbl login

Perusahaan

admin Input resume

Edit data Edit data

Hapus data

Gambar 3.12 DFD Level 2 : Mengelola data perusahaan dan lowongan pekerjaan

Dapat kita lihat pada gambar 3.12 untuk mengelola data perusahaan, user yang dapat mengakses proses tersebut adalah user perusahaan dan user admin. Sebelum user perusahaan dan user admin mengelola data, terlebih dahulu user tersebut harus login terlebih dahulu. Kecuali untuk proses penginputan data lowongan pekerjaan.

4.1 Login Tbl login

Pelamar perusahaan admin Mengirim validasi data Mengirim data Username Password Status login Status login Status login

Gambar 3.13 DFD Level 2 : Proses Login

Pada gambar 3.13 untuk melakukan proses seperti mengolah data, melihat profil, menampilkan rekomendasi diharuskan melakukan proses login terlebih dahulu. User


(57)

harus menginput username dan password yang telah terdaftar kemudian divalidasi pada proses login

Pelamar

perusahaan

admin

1.1 lihat data lowongan pekerjaan

8.1 Lihat data pelamar

Tbl perusahaan

Tbl pelamar Melihat data pelamar

Melihat lowongan

Melihat data lowongan

Melihat data pelamar

Kirim data

Kirim data Melihat data

yg melamar

Meminta data lowongan

Meminta data pelamar

Gambar 3.14 DFD Level 2 : Melihat data

5.1 Rekomendasi

pekerjaan Pelamar

Tbl pelamar Tbl job list

Tbl pembanding Minta rekomendasi Melihat rekomendasi Tbl parameter Tbl dt pendidikan Tbl temp Memberikan hasil rekomendasi Simpan hasil temp

Kirim data

Gambar 3.15 DFD Level 2 : Rekomendasi Pekerjaan

Pada gambar 3.15 dapat kita lihat bagaimana alur proses rekomendasi tersebut. Disini pelamar meminta rekomendasi ke pada sistem. Kemudian proses mengolah data dari tabel pelamar, tabel job list, tabel parameter, tabel pembanding dan tabel dt pendidikan. Setelah proses kalkulasi selesai, data akan disimpan sementara di tabel


(58)

temp. Kemudian hasil rekomendasi di panggil kembali dari tabel temp agar hasil rekomendasi dapat dilihat oleh pelamar.

3.5.3 Flow Chart perancangan algoritma nearest neighbor

Flowchart algoritma nearest neighbor pada sistem yang akan menghasilkan sebuah rekomendasi :


(59)

Gambar 3.16 Flow Chart sistem rekomendasi

Langkah – langkah di dalam proses perhitungan algoritma nearest neighbor untuk mendapatkan nilai similarity yang akan menghasilkan sebuah rekomendasi seperti gambar 3.4 tersebut yaitu:

1. Input data pelamar

2. Menentukan similarity pada nearest neighbor

a. Menghitung kedekatan data pelamar dengan data lowongan pekerjaan b. Mencari bobot dengan perbandingan kedekatan nilai

3. Hitung jarak similarity yang kemudian Hasil Jarak atau similarity di simpan di database sementara

4. Jika data lowongan pekerjaan masih ada dan memenuhi kriteria parameter, lakukan perulangan pada langkah 2. Jika tidak ada lanjutkan ke langkah 5 5. Tampilkan Rekomendasi dengan mengambil dari database sementara.

3.5.4 Sitemap Aplikasi

Sitemap merupakan rancangan gambaran awal dimana user akan menggunakan aplikasi, menu apa saja yang akan diakses dan bagaimana cara mengakses atau menggunakan aplikasi.

Pada gambar 3.17 dapat kita lihat bahwa terdapat 4 menu dibawah menu home dari sistem. Menu tersebut adalah pendaftaran, lowongan pekerjaan, login dan about me. Pada menu pendaftaran terdapat dua fungsi. Fungsi pertama adalah pendaftaran untuk pelamar pekerjaan dan fungsi kedua adalah pendaftaran untuk perusahaan yang ingin mendaftarkan lowongan pekerjaan.

Untuk menu lowongan pekerjaan, terdapat 7 pilihan bidang pekerjaan yaitu teknologi, ekonomi, ilmu budaya, kedokteran, MIPA, pertanian, teknik dan umum. Untuk menampilkan pekerjaan, user dapat memilih salah satu bidang pekerjaan dan kemudian sistem akan menampilkan lowongan pekerjaan sesuai dengan bidang pekerjaan yang dipilih.


(60)

Kemudian terdapat menu login untuk 3 user yaitu pelamar, perusahaan dan admin. Untuk mendapatkan rekomendasi lowongan pekerjaan, user harus login username dan

password pelamar.

Menu terakhir yaitu menu about me. Pada menu tersebut ditampilkan profil pembuat sistem ini. Untuk lebih jelasnya, site map dapat dilihat pada gambar 3.17 berikut :


(61)

3.5.5 Database

Pada database sistem rekomendasi ini terdapat 8 tabel. Tabel tersebut adalah pelamar, job list, parameter, dt pendidikan, login, pembanding, submit job dan temp. Untuk pendaftaran dan login digunakan tabel pelamar, job list dan login. Untuk menampilkan lowongan pekerjaan diperlukan tabel job list yang menyimpan informasi lowongan pekerjaan.

Pada rekomendasi pekerjaan diperlukan tabel dt pendidikan dan parameter untuk pengklasifikasian data, tabel job list dan pembanding untuk perhitungan rekomendasi dan tabel temp untuk penyimpanan data sementara. Tabel submit job disini berfungsi untuk melamar pekerjaan secara internal yang telah diberikan oleh sistem rekomendasi ini. Untuk lebih jelasnya, dapat dilihat pada gambar 3.18.


(62)

3.5.6 Antarmuka Sistem

Interface (antarmuka sistem) diperlukan untuk mempermudah seorang user dalam menggunakan atau mengakses sebuah aplikasi. Antarmuka sistem merupakan sebuah alur komunikai antara user dengan sistem.

Dengan kata lain antarmuka sistem digunakan sebagai media antara user dan komputer agar dapat berinteraksi satu sama lain. Sehingga user dapat lebih mudah mengerti dan menggunakan sistem tersebut.

Disini akan dijabarkan tentang rancangan halaman dan menu pada sistem yang akan dibuat. Berikut adalah gambar rancangan dasar antarmuka dari sistem rekomendasi pencarian pekerjaan :


(63)

2. Rancangan Halaman Pencarian manual lowongan kerja

3. Rancangan halaman pendaftaran


(64)

5. Rancangan Halaman Profile (Login Pelamar)


(65)

(66)

8. Rancangan halaman data pelamar (Login Perusahaan)


(67)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

Pada bab ini akan dijelaskan implementasi algoritma nearest neighbor dan metode decision tree pada sistem sesuai perancangan sistem yang telah dijabarkan pada Bab 3. Kemudian dilakukannya pengujian pada sistem yang telah dibangun.

4.1 Implementasi Sistem

Implementasi sistem merupakan proses pengubahan perancangan dan spesifikasi sistem menjadi sebuah sistem yang dapat digunakan. Implementasi sistem pada perancangan dan analisis ini berbasis web menggunakan bahasa pemrograman PHP dan database MySQL.

4.1.1 Lingkungan Implementasi

Lingkungan inplementasi merupakan proses penerapan sistem pada lingkungan perangkar keras (hardware) dan perangkat lunak (Software) yang digunakan dalam skripsi tersebut.

1. Hardware


(68)

1. Processor C60 AMD Dual-Core with Turbo CORE Technology up to 1.333 GHz.

2. 2 GB RAM DDR3 (Memory) 3. Mouse

4. Keyboard

5. Hard Disk 320 GB 2. Software

Proses implementasi sistem dijalankan pada spesifikasi software sebagai berikut : 1. Operating Sistem Windows 7 ultimate

2. XAMPP versi 1.7.4 3. Mysql versi 5.0.7

4.2 Implementasi perancangan antarmuka

Untuk menjalankan sistem rekomendasi pencarian pekerjaan berbasis web menggunakan hybrid-based recommendation, terlebih dahulu melakukan instalasi XAMPP pada komputer (PC) atau laptop anda. Kemudian melakukan copy folder program kedalam folder htdocs (C:\xampp\htdocs\) serta import database (*.sql) ke dalam phpmyadmin. Setelah semua instalasi proses selesai, buka sistem melalui browser.

4.2.1 Halaman Home

Pada sistem ini, halaman Home adalah halaman yang tampil pertama apabila sistem dijalankan. Isi dari halaman ini adalah penjelasan singkat tentang sistem rekomendasi pencarian pekerjaan. Halaman Home dapat dilihat pada gambar 4.1.


(69)

Gambar 4.1 Halaman Home

4.2.2 Halaman daftar

Halaman daftar merupakan halaman dimana user pelamar atau user dari perusahaan melakukan pendaftaran kepada sistem sebelum melakukan proses selanjutnya. Pada halaman ini user mempunyai 2 pilihan pendaftaran. Pertama pendaftaran untuk pelamar pekerjaan (tombol daftar pelamar) dan kedua untuk perusahaan (tombol daftar perusahaan) dapat dilihat pada gambar 4.2


(70)

Untuk user pelamar, menu yang dipilih adalah daftar pelamar. Pada gambar 4.3, dapat dilihat halaman daftar pelamar terdapat field untuk mengisi biodata atau resume pelamar seperti no ktp, nama, alamat, kualifikasi pendidikan, jurusan pendidikan dan

username password yang ditujuakan untuk user pelamar agar dapat memasuki halaman login pelamar. Pada halaman daftar pelamar, user pelamar diharuskan mengisi semua field sebelum melanjutkan ke halaman login.

Gambar 4.3 Halaman daftar pelamar

Untuk user perusahaan, menu yang dipilih adalah daftar perusahaan. Pada halaman ini terdapat field kosong kualifikasi dan username password untuk validasi ke dalam halaman login perusahan yang harus diisi oleh user perusahaan.

user perusahaan mengisi kualifikasi dan requirement apa saja yang dibutuhkan oleh perusahaan sehingga sistem dapat memprosesnya dan kemudian memberikan rekomendasi kepada pelamar. Halaman daftar perusahaan dapat dilihat pada gambar 4.4.


(71)

Gambar 4.4 Halaman daftar perusahaan 4.2.3 Halaman Tampil Lowongan pekerjaan

Pada halaman lowongan pekerjaan (gambar 4.5), berisi tentang informasi lowongan pekerjaan apa saja yang tersedia di dalam sistem rekomendasi pencarian pekerjaan. Untuk menampilkan informasi pekerjaan, user dapat memilih bidang apa yang ingin dilihat dan menekan tombol pilih.


(72)

Pada halaman lowongan pekerjaan, user dapat melihat informasi lowongan pekerjaan yang berisi bidang, nama pekerjaan dan lokasi pekerjaan tersebut. Untuk menampilkan lowongan pekerjaan, terlebih dahulu user diharuskan memilih bidang pekerjaan yang diinginkan (contoh : teknologi) kemudian menekan tombol pilih. sistem kemudian akan memproses pilihan bidang pekerjaan tersebut dan akan menampilkan lowongan pekerjaan sesuai dengan bidang pekerjaan yang dipiliih yang telah ada di dalam database sistem tersebut. Untuk halaman lowongan pekerjaan dapat dilihat pada gambar 4.6 berikut.

Gambar 4.6 Halaman lowongan pekerjaan (tampil lowongan)

4.2.4 Halaman Login

Halaman Login adalah halaman pembuka sebelum user dapat melakukan suatu proses. Dalam sistem ini, halaman login terbagi 3 fungsi. Pertama halaman login untuk pelamar, Kedua halaman login untuk perusahaan dan ketiga halaman login untuk

administrator. Pada halaman login, user diwajibkan untuk mengisi username dan

password dengan benar sesuai dengan ketentuan dari sistem sehingga dapat masuk ke menu utama login. Halaman login dapat dilihat dalam gambar 4.7


(73)

Gambar 4.7 Halaman login

4.2.4.1 Halaman Login admin

Setelah user memasukkan username dan password untuk admin, maka halaman login

akan mengalihkan user ke menu utama untuk admin (gambar 4.8). di halaman login

admin, terdapat 2 fungsi yaitu melakukan fungsi tambah, ubah, menghapus data pelamar dan dat perusahaan.


(74)

Pada gambar 4.9, di tampilkan tabel yang berisi data pelamar. Admin mempunyai akses untuk melihat, mengubah dan menghapus data dari pelamar yang telah mendaftarkan diri ke sistem tersebut.

Gambar 4.9 Halaman login admin (profil pelamar)

Pada gambar 4.10, di tampilkan tabel yang berisi data perusahaan. Admin mempunyai akses untuk mengubah data perusahaan.


(1)

for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $fg = $e['bobot'];

//echo "<br />"; }

//variabel Pengalaman Kerja

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['peng_kerja']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['peng_kerja']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='peng_kerja' and nilai1='$c' and nilai2='$b'");

$res=mysql_num_rows($que); for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $pk = $e['bobot'];

//echo "<br />"; }

//variabel gaji

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['gaji']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['gaji']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='gaji' and nilai1='$c' and nilai2='$b'");


(2)

for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $gaji = $e['bobot'];

//echo "<br />"; }

//variabel tipe pekerjaan

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['tipe_pekerjaan']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['tipe_pekerjaan']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='tipe_pekerjaan' and nilai1='$c' and nilai2='$b'");

$res=mysql_num_rows($que); for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $tp = $e['bobot'];

}

//variabel kemampuan kerjasama

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['kem_kerjasama']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['kem_kerjasama']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='kem_kerjasama' and nilai1='$c' and nilai2='$b'");

$res=mysql_num_rows($que); for($i=1;$i<=$res;$i++) {


(3)

$kk = $e['bobot']; //echo "<br />"; }

//variabel lokasi

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['lokasi']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['lokasi']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2 if($c=$b){

$loka='1'; } else {

$loka='0.5'; }

//variabel mutasi

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['mutasi']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['mutasi']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='mutasi' and nilai1='$c' and nilai2='$b'");

$res=mysql_num_rows($que); for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $muta = $e['bobot'];

}

//variabel travelling

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error());


(4)

while($row = mysql_fetch_array($result1)){ $b = $row['travelling']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['travelling']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='traveling' and nilai1='$c' and nilai2='$b'");

$res=mysql_num_rows($que); for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $trav = $e['bobot'];

}

//variabel kem_bahasa_eng

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['kem_bahasa_eng']; }

//input pembanding nilai2 -> untuk pelamar pekerjaan $query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['kem_bahasa_eng']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='kem_bahasa_eng' and nilai1='$c' and nilai2='$b'");

$res=mysql_num_rows($que); for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $kbe = $e['bobot'];

}

//variabel kem_bahasa_cina

//input pembanding nilai1 -> untuk database daftar pekerjaan $query1 = "select * from job_list_campur where id=$id_job"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$b = $row['kem_bahasa_cina']; }


(5)

$query1 = "select * from pelamar where user='$userfinal'"; $result1 = mysql_query($query1) or die(mysql_error()); while($row = mysql_fetch_array($result1)){

$c = $row['kem_bahasa_cina']; }

//Mencari bobot dengan membandingkan nilai1 dan nilai2

$que=mysql_query("select * from pembanding where variabel='kem_bahasa_cina' and nilai1='$c' and nilai2='$b'");

$res=mysql_num_rows($que); for($i=1;$i<=$res;$i++) {

$e=mysql_fetch_array($que); $kbc = $e['bobot'];

}

//array nilai perkalian di parameter teknologi atau nilai dari b+d+f+h if ($par='par_tek'){

$f = array (1,0.75,0.75,1,0.5,0.75,0.5,0.75,0.75,0.75,0.5,0.5,0.75,0.75); } else {

echo "error"; }

//menghitung simillarity nearest neighbor (formula) $has =

(($d*$f[0])+($m*$f[1])+($n*$f[2])+($o*$f[3])+($fg*$f[4])+($pk*$f[5])+($gaji*$f[6] )+($tp*$f[7])+($kk*$f[8])+($loka*$f[9])+($muta*$f[10])+($trav*$f[11])+($kbe*$f[1 2])+($kbc*$f[13]))/$a;

if ($fresh_job == 'tidak' && $fresh == 'ya') {

$hasil = $has * 0;

$ket = "tidak menerima fresh graduate"; }

else if ($fresh_job == 'ya' && $fresh == 'ya') {

$hasil = $has;

$ket = "menerima fresh graduate"; }

else if ($fresh_job == 'ya' && $fresh == 'tidak') {

$hasil = $has;

$ket = "menerima fresh graduate"; }

//insert temp untuk sorting

mysql_query("insert into tempori(id,nama_job,temp,ket,parameter) values ('$id_pel','$nama_job','$hasil','$ket','$para')");

//mysql_close($con);

mysql_query("DELETE FROM tempori where parameter='par_ekonomi'"); mysql_query("DELETE FROM tempori where parameter='par_kedokteran'"); //mysql_close($con);


(6)

}

//sorting

$query1 = "select * from tempori order by temp desc limit $mulai,$jum_page"; $result1 = mysql_query($query1) or die(mysql_error());

while($row = mysql_fetch_array($result1)){ $c = $row['temp'];

$d = $row['nama_job']; $e = $row['ket'];

echo "<tr><td>$d</td><td>$c</td><td>$e</td></tr>"; }

?>

<tr><td align="center" colspan="3"><a id="various3"

href="tampil_rekomendasi.php">Tampil Semua Rekomendasi</a> | <a id="various3" href="tampil_submitrekomendasi.php">Pilih Pekerjaan</a></td></tr>


Dokumen yang terkait

Sistem Rekomendasi Berbasis Web untuk Pemilihan Peminatan Menggunakan User-Based Collaborative Sistem Rekomendasi Berbasis Web untuk Pemilihan Peminatan Menggunakan User-Based Collaborative Filtering.

0 3 13

PENDAHULUAN Sistem Rekomendasi Berbasis Web untuk Pemilihan Peminatan Menggunakan User-Based Collaborative Filtering.

0 2 6

PEMBANGUNAN SISTEM REKOMENDASI PENELUSURAN BUKU MENGGUNAKAN METODE PROBABILITAS BERBASIS WEB PEMBANGUNAN SISTEM REKOMENDASI PENELUSURAN BUKU MENGGUNAKAN METODE PROBABILITAS BERBASIS WEB.

0 4 8

PENDAHULUAN PEMBANGUNAN SISTEM REKOMENDASI PENELUSURAN BUKU MENGGUNAKAN METODE PROBABILITAS BERBASIS WEB.

0 3 7

PEMBANGUNAN SISTEM REKOMENDASI PEMILIHAN PEKERJAAN BERDASARKAN KEPRIBADIAN DENGAN METODE KNOWLEDGE BASED RECOMMENDATION BERBASIS WEB.

4 6 35

PEMBANGUNAN SISTEM REKOMENDASI MENU MAKANAN RESTORAN BERBASIS WEB MENGGUNAKAN METODE KNOWLEDGE BASED RECOMMENDATION.

7 15 27

SISTEM REKOMENDASI PEMILIHAN MENU MAKANAN BERDASARKAN AKTIFITAS DAN KEBUTUHAN KALORI BERBASIS WEB MENGGUNAKAN METODE KNOWLEDGE-BASED RECOMMENDATION - repository UPI S KOM 0704361 Title

0 1 4

Aplikasi Pencarian Karya Tulis Ilmiah Berbasis Web Menggunakan Sistem Rekomendasi

0 0 7

BAB II LANDASAN TEORI Di dalam landasan teori ini, akan dibahas tentang teori – teori dan konsep dasar yang mendukung pembahasan dari sistem yang akan dibuat. - Sistem Rekomendasi Pencarian Pekerjaan Berbasis Web Menggunakan Metode Hybrid-Based Recommenda

0 2 10

Sistem Rekomendasi Pencarian Pekerjaan Berbasis Web Menggunakan Metode Hybrid-Based Recommendation

0 0 15