• Tidak ada hasil yang ditemukan

LAPORAN PRAKTEK KERJA LAPANGAN PENGEMBAN

N/A
N/A
Protected

Academic year: 2018

Membagikan "LAPORAN PRAKTEK KERJA LAPANGAN PENGEMBAN"

Copied!
48
0
0

Teks penuh

(1)

LAPORAN

PRAKTEK KERJA LAPANGAN

PENGEMBANGAN MODUL PENCARIAN PERPUSTAKAAN DIGITAL DENGAN METEOR JS DAN IMPLEMENTASI SOLR

FAKULTAS ILMU SOSIAL DAN ILMU POLITIK

Disusun Oleh:

Dandy Ari Ramadhan 15/386054/SV/09440

Muhammad Sasmito Adi Wibowo 15/380439/SV/08246

Muhammad Marsell Abdurrahman 15/384479/SV/08836

Dosen pembimbing:

Sigit Priyanta, S.Si, M. Kom.

D3 ILMU KOMPUTER DAN SISTEM INFORMASI SEKOLAH VOKASI

UNIVERSITAS GADJAH MADA

(2)

ii

Kata Pengantar

Puji syukur kami panjatkan kehadirat Allah SWT atas segala nikmat dan rahmat-Nya, sehingga kami dapat melaksanakan Praktik Kerja Lapangan di Fakultas Ilmu Sosial dan Ilmu Politik Universitas Gadjah Mada dan dapat menyelesaikan laporan Praktik Kerja Lapangan.

Praktik Kerja Lapangan adalah salah satu mata kuliah wajib di Program Studi D3 ilmu komputer dan sistem informasi Universitas Gadjah Mada. Selama kami melaksanakan praktik kerja lapangan, kami dapat menambah wawasan, pengalaman dan dapat menerapkan matakuliah yang telah kami pelajari.

Dengan selesainya laporan ini tidak terlepas berkat bantuan dari berbagai pihak yang telah memberikan dukungan dan masukan kepada kami. Maka dari itu kami mengucapkan terima kasih kepada:

1. Sigit Priyanta, S.Kom., M.Kom selaku ketua program studi D3 ilmu komputer dan sistem informasi dan dosen pembimbing Praktik Kerja Lapangan

2. Asep Wahyu Purnomo, S.Kom selaku instruktur Praktek Kerja Lapangan di Fakultas Ilmu Sosial dan Ilmu Politik

3. M Nuur Dien, S.Kom selaku instruktur Praktek Kerja Lapangan di Fakultas Ilmu Sosial dan Ilmu Politik

4. Serta karyawan dan staf di devisi TI yang telah turut membantu dan menyambut kami.

Kami menyadari bahwa laporan ini masih jauh dari kesempurnaan. Oleh karena itu, kritik dan saran dari semua pihak sangat kami harapkan untuk menjadi masukan kepada kami. Kami berharap laporan Praktik Kerja Lapangan ini dapat bermanfaat bagi semua pihak.

Yogyakarta, 9 Agustus 2017

(3)

iii

1.1.Profil Perusahaan Lokasi PKL ... 1

1.2.Latar Belakang Pemilihan Perusahaan sebagai Lokasi PKL ... 2

BAB II PERMASALAHAN ... 4

2.1.Kegiatan-Kegiatan Selama PKL ... 4

2.2.Tugas-Tugas yang Diberikan Selama PKL... 4

BAB III METODE PENYELESAIAN PERMASALAHAN ... 5

3.1.Penjabaran Permasalahan... 5

3.2.Keterkaitan dengan Matakuliah yang pernah diberikan ... 7

BAB IV HASIL & PEMBAHASAN ... 9

4.1.Analisis Kebutuhan Sistem ... 9

4.2.Batasan sistem ... 10

4.3.Identifikasi Basisdata ... 10

4.4.Infrastruktur Sistem ... 11

4.5.Penjabaran Mengenai Hasil Kegiatan ... 11

BAB V KESIMPULAN & SARAN ... 40

5.1.Kesimpulan dari Pelaksanaan PKL ... 40

5.2.Hal-hal yang dapat dikembangkan di lokasi PKL ... 41

(4)

iv

Daftar Gambar

Gambar 3.1 Timeline pembagian tugas minggu pertama dan kedua ... 5

Gambar 3.2 Timeline pembagian tugas minggu ketiga dan keempat ... 6

Gambar 3.3 Timeline pembagian tugas minggu kelima dan keenam ... 6

Gambar 3.4 Timeline pembagian tugas minggu terakhir ... 6

Gambar 4.1 Tabel konten digital dari database SQL ... 10

Gambar 4.2 Denah infrastruktur sistem saat tahap develop ... 11

Gambar 4.3 Mengoperasikan Virtual Machine Manager ... 13

Gambar 4.4 Konfigurasi menambahkan lib data import handler ... 16

Gambar 4.5 Konfigurasi menentukan data indexing dari datbase SQL ... 16

Gambar 4.6 Konfogurasi schema dari setiap field yang terindex ... 17

Gambar 4.7 Prosedur melakukan indexing SOLR ... 17

Gambar 4.8 Konfigurasi settings.json ... 18

Gambar 4.9 Konfigurasi settings.json pada tahap development ... 19

Gambar 4.10 Perintah menjalankan aplikasi ... 20

Gambar 4.11 Melihat halaman hasil developing... 21

Gambar 4.12 Source membuat state pada SearchContainer.js ... 21

Gambar 4.13 Source method mengubah state pada SearchContainer.js ... 22

Gambar 4.14 Source memberikan props untuk component di SearchContaner.js 22 Gambar 4.15 Source memberikan props untuk component di SearchContaner.js 22 Gambar 4.16 Definisi tipe props dan callback method di WelcomeSidebar.js ... 23

Gambar 4.17 Source aksi callback method di file WelcomeSidebar.js ... 24

Gambar 4.18 Source percabangan konten di file WelcomeContent.js... 25

Gambar 4.19 Konfigurasi tambahan untuk menggunakan CAS SSO UGM ... 26

Gambar 4.20 Source komponen dari PdfContent.js ... 26

Gambar 4.21 Source konten meta data dan pdf viewer pada ResultDetail.js ... 28

Gambar 4.22 Source proptypes dan callback method pada DetailSidebar.js ... 29

Gambar 4.23 Source aksi callback method pada file DetailSidebar.js ... 30

Gambar 4.24 Perintah meteor up untuk menginialisasi ... 32

Gambar 4.25 Konfigurasi dari mup.js agar aplikasi dideploy pada server ... 32

Gambar 4.26 Lanjutan konfigurasi mup.js ... 33

(5)

v

Gambar 4.28 Perintah meteor up untuk melakukan setup pada server virtual ... 35

Gambar 4.29 Perintah meteor up untuk deploy aplikasi server virtual ... 35

Gambar 4.30 Perintah meteor up untuk menjalankan aplikasi di server virtual ... 36

Gambar 4.31 Tampilan halaman beranda ... 36

Gambar 4.32 Tampilan saat memilih menu kategori jenis koleksi ... 36

Gambar 4.33 Halaman pencarian saat memilih kategori jenis koleksi makalah... 37

Gambar 4.34 Pencarian tampak bawah menunjukan kategori jenis yang dipilih . 37 Gambar 4.35 Halaman detail pencarian menampilkan metadata konten ... 37

Gambar 4.36 Pop-up SSO saat ingin melakukan login dari halaman depan ... 38

Gambar 4.37 Informasi tidak memiliki ijin mengakses akun setelah login ... 38

Gambar 4.38 Ekspektasi kami setelah berhasil login dan mendapat ijin ... 38

Gambar 4.39 File konten dari detail pencarian dengan error CORS ... 39

(6)

vi

Daftar Tabel

(7)

1

BAB I

PENDAHULUAN

1.1.

Profil Perusahaan Lokasi PKL

1.1.1. Sejarah

Fakultas Ilmu Sosial dan Ilmu Politik Unviersitas Gadjah Mada, sebelumnya Akademi Ilmu Politik pada mulanya didirikan untuk mendidik para calon birokrat pemerintahan di bidang dalam negeri, penerangan, dan luar negeri di awal kemerdekaan Indonesia. Pada masa awal berdirinya UGM, studi ilmu sosial dan politik berada dalam satu fakultas dengan ilmu hukum dan ekonomi. Fakultas Ilmu Sosial dan Politik kemudian dibentuk secara terpisah sejak 1955 yang kemudian berubah nama menjadi Fakultas Ilmu Sosial dan Ilmu Politik, disingkat ISIPOL.

Fakultas Ilmu Sosial dan Ilmu Politik Universitas Gadjah Mada (ISIPOL UGM) telah berdiri sejak 19 September 1955. Saat ini Fakultas Ilmu Sosial dan Ilmu Politik memiliki enam jurusan diantaranya Hubungan Internasional, Ilmu Komunikasi, Manajemen Kebijakan Publik, Pembangunan Sosial dan Kesejahteraan, Sosiologi serta Politik dan Pemerintahan dengan tiga jenjang program pendidikan yakni sarjana, master, dan doktoral.

1.1.2. Visi

Menjadi fakultas riset bertaraf internasional di bidang ilmu sosial dan ilmu politik yang mengembangkan riset unggulan sebagai basis pendidikan dan pengabdian kepada masyarakat bagi transformasi pengetahuan untuk kepentingan rakyat.

1.1.3. Misi

(8)

2

2) Pengembangan penelitian keilmuan dan advokatif serta penerbitan akademik yang berstandar internasioal;

3) Pengembangan pengabdian kepada masyarakat yang berbasis keilmuan; 4) Pengembangan kerjasama berkelanjutan di tingkat lokal, nasional, dan

internasional;

5) Penguatan kualitas pelayanan kepada civitas akademika dan masyarakat melalui peningkatan kualitas SDM administratif, inovasi manajaemen, dan pengembangan sarana dan prasarana;

6) Pengembangan good faculty governance di internal fakultas dan di hadapan publik.

1.1.4. Alamat

Fakultas Ilmu Politik dan Ilmu Sosial berlokasikan di Universitas Gadjah Mada Tepatnya di Jalan Sosio Yustitia, Catur Tunggal, Depok, Kec. Sleman, Daerah Istimewa Yogyakarta. Telepon: (0274) 563362

Jam buka:

1.2.

Latar Belakang Pemilihan Perusahaan sebagai Lokasi PKL

(9)

3

Maka dalam hal tersebut kami selaku mahasiswa D3 Komputer dan Sistem Informasi memilih untuk melaksanakan Praktek Kerja Lapangan dibagian Unit Teknologi Informasi Fakultas ISIPOL UGM. Berbekal dengan ilmu dan pengetahuan yang kami peroleh selama perkuliahan cukup membantu dalam pengerjaan tugas-tugas yang diberikan oleh Unit Teknologi Informasi. Hal tersebut juga sejalan dengan tujuan matakuliah Praktek Kerja Lapangan untuk mengenalkan kepada mahasiswa pada dunia kerja. Selain itu kami memilih Fakultas ISIPOL UGM sebagai lokasi Praktek Kerja Lapangan dikarenakan lokasi yang masih dekat dengan tempat tinggal sehingga mudah untuk menjangkau.

(10)

4

BAB II

PERMASALAHAN

2.1.

Kegiatan-Kegiatan Selama PKL

Selama pelaksanaan kegiatan Praktek Kerja Lapangan di ISIPOL UGM kami diberi tugas untuk membantu menyelesaikan salah satu proyek Digital Library Fakultas Ilmu Sosial dan Politik yang dicanangkan oleh divisi IT. Dari sistem tersebut kami ditugaskan untuk mambantu membuat modul Searching

yang menggunakan teknologi SOLR dan framework Javascript MeteorJS.

2.2.

Tugas-Tugas yang Diberikan Selama PKL

Selama praktek kerja lapangan yang kami laksanakan selama 35 hari kerja, tugas yang diberikan kepada kami adalah sebagai berikut:

1. Memahami SOLR

2. Memahami framework MeteorJS

3. Membuat Single Page Application Searching 4. Membuat integrasi aplikasi dengan SOLR

(11)

5

BAB III

METODE PENYELESAIAN PERMASALAHAN

3.1.

Penjabaran Permasalahan

Proyek yang diberikan kepada kami adalah Digital Library Fakultas ISIPOL yaitu sistem baru perpustakaan digital Fakultas ISIPOL UGM guna untuk menanggapi perubahan cara mahaisswa dalam memperoleh atau mengakses informasi dan ilmu pengetahuan dari yang bersifat analog menjadi digital dan pergeseran paradigma fungsi perpustakaan dari tempat menyimpan koleksi (buku, jurnal, majalah, dsb.) menjadi tempat belajar dan bekerja bersama (collaborative working space). DigiLib mendukung gerakan penghematan kertas, demokratisasi dalam mengakses sumber-sumber ilmu pengetahuan, dan upaya meningkatkan sinergi antar disiplin ilmu untuk memproduksi pengetahuan yang bermanfaat bagi masyarakat.

Pada awal kami melaksanakan Praktik Kerja Lapangan, kami diminta oleh supervisor kami untuk melakukan observasi dan membuat prototipe dari modul pencarian proyek digital library. Dan kami diminta prototipe yang dibuat menggunakan framework berbasis node js yaitu meteor js dan untuk data yg diakses menggunakan SOLR sebagai mesin indexing khusus untuk pencarian. Sebab teknologi yang digunakan masih awam, sehingga kami membuat timeline

dalam belajar dan mencoba teknologi yang diminta. Dan dalam timeline ini juga terdapat pembagian tugas.

3.1.1. Timeline pembagian tugas minggu pertama dan kedua PKL

(12)

6 3.1.2. Timeline pembagian tugas minggu ketiga dan keempat PKL

Gambar 0.2 Timeline pembagian tugas minggu ketiga dan keempat

3.1.3. Timeline pembagian tugas minggu kelima dan ke enam PKL

Gambar 0.3 Timeline pembagian tugas minggu kelima dan keenam

3.1.4. Timeline pembagian tugas minggu terakhir PKL

(13)

7

3.2.

Keterkaitan dengan Matakuliah yang pernah diberikan

Kelancaran pelaksanaan Praktik Kerja Lapangan di Fakultas ISIPOL tidak terlepas dari pembekalan yang diberikan oleh dosen pembimbing dan dosen dalam beberapa matakuliah di Sekolah Vokasi Universitas Gadjah Mada. Berikut beberapa matakuliah yang telah membantu dalam pelaksanaan pekerjaan kami selama Praktik Kerja Lapangan :

1. Rekayasa Perangkat Lunak

Mata kuliah Rekayasa Perangkat Lunak diterapkan sebagai acuan penentuan tahapan utama dalam proses pembuatan dan pengembangan sistem yang akan dibuat seperti analisis, pembagian tugas, desain, kode, penerapan, pengujian, dan komunikasi dengan klien.

2. Basis Data

Mata kuliah Basis Data diterapkan sebagai dasar ilmu dan acuan dalam konfigurasi database dengan sistem yang akan dibuat.

3. Praktikum Basis Data

Matakuliah Praktikum Basis Data merupakan penerapan dari teori mata kuliah Basis Data diaplikasikan dalam bentuk pembuatan query-query MySQL.

4. Kerja Lab. Pengelolaan Instalasi Komputer

Kerja Lab. Pengelolaan Instalasi Komputer diaplikasikan dalam instalasi konfigurasi komputer server. Ilmu yang dapat diterapkan dalam Kerja Lab. Pengelolaan Instalasi Komputer seperti instalasi sistem operasi dan perintah-perintah UNIX.

5. Kerja Lab. Pemrograman Web

Kerja Lab. Pemrograman Web diterapkan sebagai dasar ilmu pada pemrograman sistem. Bahasa pemrograman yang kami pelajari dalam matakuliah ini yaitu HTML, CSS, Javascript, pengenalan dan penggunaan

webframework. Penerapan matakuliah ini antara lain untuk membuat modul, membuat desain, dan memperbaiki bug.

6. Sistem Informasi

(14)

8

ilmu Sistem Informasi yang dapat diterapkan seperti tinjauan umum pengembangan sistem, analisis sistem, desain sistem, dan lain-lain.

7. Kerja Lab. Perancangan Antarmuka Pengguna

(15)

9

BAB IV

HASIL & PEMBAHASAN

4.1.

Analisis Kebutuhan Sistem

Dalam prototipe modul pencarian ini, terdapat beberapa kebutuhan pengguna yang dipenuhi sebagai berikut.

1) Pengguna dapat melakukan pencarian konten digital seperti buku, skripsi, artikel, makalah, penelitian atau kliping.

2) Pengguna dapat melihat meta data dari konten yang dicari 3) Pengguna dapat melihat dokumen digital dari konten yang dicari

4) Pengguna dapat melakukan pencarian dengan penyaringan yang diinginkan 5) Pengguna dapat melakukan pengurutan hasil pencarian

6) Pengguna dapat menampilkan banyaknya pencarian perhalaman

Akan tetapi untuk pengembangan prototipe ini, aplikasi Digital Library FISIPOL diupayakan mampu untuk mencakup kebutuhan konten sebagai berikut. 1) Konten Internal

a) Ebooks yg dibeli FISIPOL UGM

b) Born-digital Academic (academic archives, ETD, teaching learning resources)

c) ETD FISIPOL digitasi d) Still Images in-house product

e) Podcast (Digital audio) in-house product

f) Videocast (In-house product)

g) Digital publishing FISIPOL products

h) Digital archives

i) Digital Research Data FISIPOL-UGM

2) Konten Eksternal

a) E Journaldatabases yg dilanggan Universitas b) Ebooks yg dibeli universitas

c) Digital archives

(16)

10

4.2.

Batasan sistem

Prototipe modul pencarian yang kami buat ini memiliki batasan sistem yang kedepannya akan dikembangkan pada tahap selanjutnya. Berikut beberapa batasan sistem dari keseluruhan proyek digital library.

• Database dapat diakses di dalam perpustakaan

• Database dapat diakses dari semua komputer dosen

• (sebagian) Database dapat didownload

• (sebagian) dapat di-akses dari rumah melalui EZ-proxy

• Disediakan desktop untuk akses koleksi

• Adanya tablets/readers di perpustakaan untuk mengakses informasi/pengetahuan tsb.

4.3.

Identifikasi Basisdata

Dokumentasi basis data yang akan diindex berdasarkan basisdata yang telah tersedia pada sistem perpustakaan sebelumnya. Berikut diagram basisdata yang akan diindex oleh mesin SOLR.

(17)

11

4.4.

Infrastruktur Sistem

Dalam pengembangan sistem, diperlukan adaptasi sistem yang dikembangkan dengan sistem saat diproduksi. Berikut insfrastruktur yang kami gunakan sebagai acuan dalam pengembangan sistem.

Gambar 0.2 Denah infrastruktur sistem saat tahap develop

4.5.

Penjabaran Mengenai Hasil Kegiatan

4.4.1. Melakukan instalasi server kvm

Dalam membangun sistem pencarian ini, kami menggunakan server inti yang digunakan sebagai tempat server virtual untuk setiap layanan yang akan kami pakai dalam infrastruktur kami. Server yang digunakan berbasis linux dengan distro Debian 9. Berikut ini spesifikasi server yang digunakan.

TIPE SPESIFKASI

CPU Intel i7

RAM 8 GB

HDD 1 TB

Tabel 0.1 Tabel spesifikasi server KVM

(18)

12  apt-get install qemu-kvm libbin virtinst

virt-viewer ebtables dnsmasq virt-manager

Kemudian hidupkan layanan KVM dengan perintah berikut.

 systemctl enable libvirtd  systemctl start libvirtd

Untuk keperluan virtualisasi, server virtual diberi spesifikasi yang sesuai sebagai berikut.

Tabel 0.2 Tabel spesifikasi server vitual

Untuk mengoperasikannya berikut contoh untuk membuat penyimpanan virtual dengan CLI.

 qemu-img create -f qcow2 /kvm_data/meteor_server.img 50G

Untuk membuat server virtual gunakan perintah seperti berikut.

 virt-install virt-type kvm name=meteor_server --vcpu=1 --ram=1024 \ --disk

path=/kvm_data/meteor_server.img,size=50,format=qcow2,s

parse=true \ osvariant=ubuntu16.04 cpuset=auto

--graphics spice \ --cdrom

/ubuntu-16.04.2-server-amd64.iso \ --network bridge=br1

(19)

13 Gambar 0.3 Mengoperasikan Virtual Machine Manager

4.4.2. Melakukan instalasi server virtual

Setelah server virtual telah dibuat, maka pada server tersebut dipasang beberapa paket yang diperlukan untuk melakukan remote pada server virtual tersebut. Diantaranya adalah paket openssh. Berikut ini cara instalasinya.

 apt-get update

 apt-get install openssh-server

Karena diperlukan untuk remote akses sebagai root. Maka diperlukan konfigurasi ssh server sebagai berikut.

 nano /etc/ssh/sshd_config Address dikonfigurasi otomatis, cek dengan perintah berikut.

 ifconfig

Jika IP Address akan dikonfigurasi manual, maka lakukan konfigurasi pada file berikut dan restart service networknya.

(20)

14 4.4.3. Konfigurasi akses pengguna ke basis data berbasis sql pada server virtual

Sebelum dapat untuk mengakses database pada server diperlukan user akses database sql yang tersedia. Masuk sebagai admin database sql dan buat akun dan hak akses seperti berikut.

 CREATE USER solr @ localhost IDENTIFIED BY password ;

 CREATE USER solr @ 10. . .104 IDENTIFIED BY password ;

 GRANT ALL PRIVILEGES ON pusfispol .* TO solr @ localhost ;

 GRANT ALL PRIVILEGES ON pusfispol .* TO solr @ 10. . .104 ;

 FLUSH PRIVILEGES; 4.4.4. Melakukan instalasi SOLR

Pada server virtual SOLR, lakukan instalasi paket java 8 dengan perintah berikut ini.

 sudo apt-get install default-jre  sudo apt-get install default-jdk

Kemudian download paket SOLR 6 pada lokasi home dan ekstraksi berkat dengan perintah berikut.

 wget

http://apache.repo.unpas.ac.id/lucene/solr/6.6.0/solr-6.6.0.tgz

 tar -zxf solr-6.6.0.tgz

Untuk dapat mengoperasikan SOLR, berikut ini dokumentasi perintah untuk mengoperasikannya.

// membuat core sebagai tempat indexing data

 cd solr-6.6.0

 bin/solr create --c testcore

(21)

15  bin/solr start

 bin/solr restart -p 8389 (sesuaikan dengan port yang dipakai)

 bin/solr stop -p 8389 (sesuaikan dengan port yang dipakai)

4.4.5. Konfigurasi integrasi dengan basisdata berbasis sql dan indexing data dari basisdata sql

Pada server SOLR, diperlukan konektor dengan server basisdata sql agar data dari basisdata sql dapat di-indexing oleh SORL. Untuk mendapatkan konektor tersebut, download konektor dengan perintah berikut ini.

 wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.32.tar.gz

Untuk memasang pada SOLR, ekstrak berkas tersebut dan salin file berekstensi jar ke lokasi paket SOLR/contrib/dataimporthandler/lib.

 tar -zxf mysql-connector-java-5.1.32.tar.gz

(22)

16

Untuk dapat melakukan indexing, konfigurasi core pada solrconfig.xml dengan menambahkan konfigurasi untuk dapat menggunakan library konektor dan menentukan lokasi konfigurasi koneksi ke database sql. Untuk file solrconfig.xml, schema.xml dan db-data-config.xml terletak pada folder

~solr-6.6.0/server/solr/testcore/conf/.

Gambar 0.4 Konfigurasi menambahkan lib data import handler

Pada konfigurasi koneksi ke database sql pada file db-data-config.xml, perhatikan untuk identifikasi IP Address server database, username dan password akses ke database.

(23)

17

Konfigurasi bentuk dari data yang di-index pada file schema.xml dengan mengidentifikasi field untuk setiap kolom.

Gambar 0.6 Konfogurasi schema dari setiap field yang terindex

Setelah semua dikonfirgurasi secara benar, restart service SOLR dan akses website admin SOLR untuk memulai indexing. Akses web admin SOLR :

http://10.9.8.100:8983 (ip server solr:port solr).

Gambar 0.7 Prosedur melakukan indexing SOLR

4.4.6. Tahap pengembangan aplikasi dengan meteor js

a. Konfigurasi integrasi dengan SOLR

(24)

18

mampu dengan SOLR, yaitu dengan cara mengedit file settings.json pada meteor. Perintah-perintah yang dibutuhkan adalah sebagai berikut:

Gambar 0.8 Konfigurasi settings.json

(25)

19 b. Testing pada tahap development aplikasi

Pada tahap development aplikasi, diperlukan testing saat menambah fitur maupun melihat hasil sementara. Hal yang perlu dilakukan setelah menerima

source code aplikasi adalah melakukan konfigurasi pada dan instalasi paket node yang digunakan oleh aplikasi meteor.

Gambar 0.9 Konfigurasi settings.json pada tahap development

(26)

20

yang ada di server, gunakan host IP Address pada server. Berikut perintah untuk instalasi paket pada aplikasi.

 meteor npm install --save react dom react-router moment rc-pagination classnames

 meteor npm install --save solr-client  npm install --save babel-runtime

 meteor npm install --save react react-addons-pure-render-mixin

 meteor add react-meteor-data

Perintah operasi untuk menjalankan aplikasi meteor sebagai berikut.

 meteor --settings=config/settings.json

Perintah sedangkan untuk menentukan port listen sendiri dapat menggunakan perintah berikut ini.

 meteor --settings=config/settings.json -p 5050

Gambar 0.10 Perintah menjalankan aplikasi

Dengan demikian saat menyimpan source-code, aplikasi meteor akan melakukan build ulang dan me-restart server. Sehingga tidak perlu menjalankan ulang aplikasi. Bahkan pada browser, halaman akan otomatis dimuat ulang, sehingga tidak perlu melakuakn refresh manual.

(27)

21 Gambar 0.11 Melihat halaman hasil developing

c. Membuat menu kategori

Fitur ini memudahkan pengguna untuk melakukan pencarian jenis dokumen yang akan dicari. Untuk membuat kategorinya hanya perlu menampilkan kolom jenis_koleksi nya saja. Hal pertama yang diperlukan adalah membuat state ketika menu sidebar yang sedang dipilih adalah jenis koleksi maka aplikasi akan menampilkan jenis-jenis koleksi dokumen yang terdapat pada database. Konfigurasinya sebagai berikut.

1.Source code untuk file pada direktori

/import/ui/components/SearchContainer/SearchContainer.js

Gambar 0.12 Source membuat state pada SearchContainer.js

(28)

22 Gambar 0.13 Source method mengubah state pada SearchContainer.js

Membuat method untuk mengganti state bernama setState.

Gambar 0.14 Source memberikan props untuk component di SearchContaner.js

Men-delivery-kan state dan method sebelumnya menjadi property dari komponen WelcomeSidebar untuk melakukan navigasi.

Gambar 0.15 Source memberikan props untuk component di SearchContaner.js

Men-delivery-kan state menuActive menjadi property dari komponen

(29)

23

2. Konfigurasi file pada direktori

/import/ui/components/WelcomeSidebar/WelcomeSidebar.js

Gambar 0.16 Definisi tipe props dan callback method di WelcomeSidebar.js

Mendefinisikan tipe property atau props yang diterima pada method propTypes dan method untuk mengecek state menuActive serta method untuk mengubah nilai dari state menuActive bernama changeMenu1() dan

(30)

24 Gambar 0.17 Source aksi callback method di file WelcomeSidebar.js

Kode untuk callback method ketika pengguna melakukan aksi klik pada menu yang terdapat pada sidebar sehingga mengubah statemenuActive.

3. Konfigurasi file pada direktori

/import/ui/components/WelcomeContent/WelcomeContent.js item' : 'list-group-item'} onClick={this.changeMenu2} >

(31)

25 Gambar 0.18 Source percabangan konten di file WelcomeContent.js

Kode untuk menampilkan konten, menggunakan percabangan switch case. Jika nilai menuActive= 1 maka akan mengembalikan nilai method renderWelcome() dimana berisi informasi selamat datang di website DigiLib ISIPOL. Jika nilai menuActive= 2 maka akan mengembalikan nilai valueCat

dimana berisi kategori berdasarkana customLabels.

d. Membuat integrasi dengan login CAS SSO UGM

(32)

26 Gambar 0.19 Konfigurasi tambahan untuk menggunakan CAS SSO UGM

'baseUrl' ditujukan ke url CAS SSO UGM sedangkan 'loginUrl' ditujukan kealamat CAS SSO login UGM.

e. Membuat konten pembaca pdf

Membuka hasil pencarian berupa pdf viewer pada browser secara langsung diperlukan agar pengguna dapat lebih mudah mencari dokumen apa yang sedang dicari. Untuk membuatnya diperlukan sebuah package javascript

yaitu PDFjs. Untuk konfigurasinya berisi sebagai berikut.

Gambar 0.20 Source komponen dari PdfContent.js

(33)

27 (image). Dari konfigurasi tersebut terdapat url yaitu variabel untuk menyimpan

alamat atau direktori file-file pdf yang tertaut dan PDFJS.workerSrc yang bekerja sebagai konverter format pdf menjadi canvas dimanasebelumnya harus sudah ditambahkan paket meteor bernama pascoual:pdfjs.

Sedangkan untuk konfigurasinya adalah sebagai berikut.

1. Konfigurasi file pada direktori

(34)

28 Gambar 0.21 Source konten meta data dan pdf viewer pada ResultDetail.js

Pada kode tersebut terdapat method componentWillMount() dimana akan mengeset state menuActive bernilai 1. Setelah itu terdapat percabangan swtich case jika menuActive= 1 maka akan menampilkan informasi metadata seperti detail tentang pengarang, subyek, klasifikasi, kota terbit, tahun, penerbit, dan jumlah halaman. Jika menuActive= 2 akan menampilkan pdf viewer.

2. Konfigurasi file pada direktori direktori

(35)

29 Gambar 0.22 Source proptypes dan callback method pada DetailSidebar.js

Mendefinisikan tipe property atau props yang diterima pada method propTypes dan method untuk mengecek state menuActive serta method untuk mengubah nilai dari state menuActive bernama changeMenu1() dan

changeMenu2().

Kemudian untuk memanggil callback method tersebut, maka diperlukan aksi yang dibuat pada tag link yang terdapat pada sidebar sehingga mengubah

(36)

30 Gambar 0.23 Source aksi callback method pada file DetailSidebar.js

4.4.7. Tahap produksi aplikasi meteor ke server virtual

Pada tahap produksi server virtual untuk aplikasi meteor, diperlukan instalasi paket yang dibutuhkan seperti Node JS, NVM untuk downgrade versi Node yang dipakai oleh aplikasi, instalasi docker untuk deploy aplikasi meteor dari tahap development dan mongodb yang dipakai oleh meteor untuk database.

Berikut cara menginstall Node JS pada server ubuntu.

 apt-et install npm

 apt-get install node-legacy

Berikut cara menginstall NVM (Node Version Manager).

 apt-get install build-essential libssl-dev  curl https://raw.githubusercontent.com/

creationix/nvm/v0.25.0/install.sh | bash  source ~/.profile

Untuk melakukan downgrade gunakan perintah berikut.

 nvm 4.6.2

Berikut cara instalasi docker pada server ubuntu.

(37)

31  sudo add-apt-repository "deb [arch=amd64]

https://download.docker.com/linux/ubuntu $(lsb_release

-cs) stable"

 sudo apt-get install -y docker-ce

Untuk instalasi mongodb sebagai berikut.

 apt-get update

 apt-get install mongodb-server

Karena server otomatis memiliki webserver, agar tidak terjadi konflik dengan proxy aplikasi meteor, maka aplikasi yang memakai port 80 dimatikan. Berikut perintah untuk mengecek adanya aplikasi yang memakai port 80 dan cara mematikanya.

 sudo apt-get install psmisc  sudo lsof -i tcp:80

 sudo lsof -t -i tcp:80 -s tcp:listen | sudo xargs kill

Setelah kebutuhan aplikasi pada server terpasang, kemudian tahap deploy aplikasi ke server. Deploy aplikasi dilakukan pada laptop atau komputer saat development aplikasi. Dengan instalasi paket meteor-up dengan perintah berikut.

 npm install -g mup

Setelah melakukan instalasi paket node meteor up, kemudian masuk ke lokasi aplikasi meteor, membuat folder konfigurasi untuk deployment dan memulai inialisasi konfigurasi meteor up. Untuk penggunaan meteor up pada sistem operasi berbasis windows perlu penggunaan perintah mup.cmd jika berbasis linux cukup dengan perintah mup.

(38)

32

Konfigurasi pada file mup.js seperti berikut.

Gambar 0.24 Perintah meteor up untuk menginialisasi

Gambar 0.25 Konfigurasi dari mup.js agar aplikasi dideploy pada server Perhatikan username

(39)
(40)

34

Konfigurasi untuk file settings.json sebagai kondisi variable yang diperlukan untuk informasi penggunaan server SOLR.

Gambar 0.27 Konfigurasi settings.json untuk server virtual aplikasi

Tahap mempersiapkan docker, mongodb dan proxy yang dipakai untuk menjalankan aplikasi meteor dengan perintah meteor up setup.

(41)

35 Gambar 0.28 Perintah meteor up untuk melakukan setup pada server virtual

Setelah setup aplikasi pada server sukses, lakukan perintah meteor up untuk mem-build, upload, menjalankan dan verify aplikasi.

 mup.cmd deploy --settings=settings.json

 #jika aplikasi sudah pernah di build sebelumnya oleh meteor up gunakan atribut --cached-build

Operasi untuk menjalankan maupun menghentikan aplikasi dapat dilakukan dengan remote oleh meteor up. Setelah itu aplikasi dapat diakses dengan mengakses IP Address server virtual meteor.

 mup.cmd start  mup.cmd stop

(42)

36 Gambar 0.30 Perintah meteor up untuk menjalankan aplikasi di server virtual

4.4.8. Demo pencarian

Untuk dapat menggunakan aplikasi, dapat diakses pada IP Address milik server virtual aplikasi meteor yang telah diupload.

Gambar 0.31 Tampilan halaman beranda

(43)

37 Gambar 0.33 Halaman pencarian saat memilih kategori jenis koleksi makalah

Gambar 0.34 Pencarian tampak bawah menunjukan kategori jenis yang dipilih

(44)

38 Gambar 0.36 Pop-up SSO saat ingin melakukan login dari halaman depan

Gambar 0.37 Informasi tidak memiliki ijin mengakses akun setelah login

(45)

39 Gambar 0.39 File konten dari detail pencarian dengan error CORS

(46)

40

BAB V

KESIMPULAN & SARAN

5.1.

Kesimpulan dari Pelaksanaan PKL

Kami mengucapkan terima kasih kepada selaku dekan fakultas ISIPOL UGM dan segenap tim IT Fakultas ISIPOL. Dengan terlaksananya Praktik Kerja Lapangan kami di Fakultas ISIPOL UGM yang dilaksanaan dari tanggal 5 Juni 2017 sampai 28 Juli 2017, kami mendapat pelajaran berharga dari segi pengalaman kerja, budaya kerja hingga wawasan baru tentang pekerjaan kami selama PKL. Dengan kurun waktu 35 hari kerja, kami dapat menyelesaikan tugas yang diberikan. Walaupun dalam menyelesaikan tugas terbentur bermacam masalah, dikarenakan pembagian tugas yang tidak konsisten dan dibutuhkan waktu belajar yang banyak sebab framework yang digunakan belum pernah dipelajari sebelumnya. Teknologi yang dipakai cukup baru mulai dari Meteor JS untuk back-end, SOLR untuk pencarian data ter-indexing, REACT JS untuk pengelolaan tampilan hingga deploy aplikasi di server virtual. Sehingga kami mengatasinya dengan memperbanyak mencari solusi di referensi internet yang sangat membantu dalam mengerjakan tugas kami. Dengan bekerja saling membantu dan saling memberikan solusi satu dengan lainnya, pekerjaan dapat terselesaikan. Juga dengan terbukanya instruktur kami dalam memberikan saran dan solusi mengenai kesulitan kami, menjadikan pekerjaan sangat terbantu dan dimudahkan.

(47)

41

Kesimpulan yang dapat diambil mengenai pengembangan modul pencarian digital library Fakultas ISIPOL UGM yang telah dikerjakan adalah terwujudnya prototipe awal untuk membantu kinerja tim IT ISIPOL untuk pengembangan selanjutnya.

5.2.

Hal-hal yang dapat dikembangkan di lokasi PKL

1. Bidang Web

Pada lokasi PKL, kami diberi tugas untuk membuat sebuah prototipe berbasis web untuk melakukan pencarian data digital perpustakaan. Website ini sebagai prototipe yang nanti dikembangkan sebagai sarana informasi secara internal dan kedepannya dengan teknologi yang lebih aman serta bagus dapat diakses secara eksternal. Dengan menggunakan teknologi yang baru, kami diberi tugas untuk mencoba dan membuat prototipe dari modul pencarian tersebut.

Dengan penyesuaian tampilan desain dan fitur utama dari sebuah pencarian konten digital, akan sangat membantu dalam pengembangan selanjutnya. Apabila prototipe dapat berjalan dengan baik, kami dapat membantu dengan memberikan dokumentasi mengenai cara pengembangan aplikasi hingga tahap produksi aplikasi.

2.

Bidang Pengelolaan Server

(48)

42

5.3.

Saran

Berikut adalah saran bagi pihak program studi Ilmu Komputer dan Sistem Informasi setelah kami menjalankan Praktik Kerja Lapangan:

Gambar

Gambar 0.1 Timeline pembagian tugas minggu pertama dan kedua
Gambar 0.1 Tabel konten digital dari database SQL
Gambar 0.3 Mengoperasikan Virtual Machine Manager
Gambar 0.4 Konfigurasi menambahkan lib data import handler
+7

Referensi

Dokumen terkait

Ayat di atas memerintahkan agar kita bekerja, kerja itulah yang akan dilihat Allah SWT sebagaimana disebutkan dalam ayat tersebut tidak selalu bahwa yang satu

Untuk itu Pemerintah Kabupaten Sragen menyusun Rencana Terpadu dan Program Investasi Infrastruktur Jangka Menengah (RPI2-JM) Bidang Cipta Karya yang diharapkan mampu

Hasil pengamatan di lapangan menunjukan bahwa Orangutan di kawasan hutan Bukit Lawang lebih banyak menggunakan pohon yang memiliki tipe tajuk bola dalam membuat

56 Etika lingkungan hidup menurut Keraf adalah sebuah refleksi kritis tentang norma dan nilai atau prinsip moral yang dikenal umum selama ini dalam kaitan

Setelah dilakukan Evaluasi Administrasi, penawar yang tidak memenuhi persyaratan administrasi yang ditetapkan dalam dokumen pengadaan, dinyatakan tidak memenuhi

Metode dokumentasi sering digunakan pada penelitian-penelitian yang sifatnya mengukur masa yang lalu atau situasi yang telah terjadi atau telah dikerjakan. Desain yang biasa

Suatu sistem politik berinteraksi dengan lingkungan domestik dan lingkungan internasional. Kapabilitas domestik suatu sistem politik sedikit banyak juga ada pengaruhnya terhadap

kegiatan PPL ini merupakan upaya langsung dari UNNES untuk menciptakan tenaga pendidik yang profesional serta melibatkan mahasiswa secara langsung dengan komponen