Oleh :
NPM : 20562020015
Menyetujui:
NIK NIK
Tanggal Persetujuan :
ii
RINGKASAN
Tujuan PKL ini adalah untuk membantu mahasiswa peserta PKL di Dinas
Kominfo Kabupaten Kediri untuk mengetahui bagaiman proses kerja langsung
dalam hal Rekayasa Perangkat Lunak dan membantu Dinas Kominfo dalam
mengerjakan projek sesuai peminatan yaitu pembuatan aplikasi manajemen
Layanan Server yang telah disediakan oleh pihak Dinas Kominfo sendiri,
Sehingga Peserta PKL dapat mengimplementasikan apa yang sudah dipelajari di
Universitas ke tempat Lapangan kerja yang sesunggunya,
Projek Aplikasi Manajemen Layanan Server yang telah dibuat oleh perseta
PKL menyangkut tentang bagaimana user atau pemohon dapat menggunakannnya
dengan mudah, dan Admin dapat mengetahui Layanan server yang telah diajukan
dapat di terima dengan baik, dan dapat dicetak sesuai kriteria yang telah di isi oleh
pemohon layanan server
iii
KATA PENGANTAR
1. Yudo Bismo Purnomo, S.Kom., M.Kom selaku Dosen penanggung jawab dan
Hendra Setiawan, S.Sos, MT. selaku Pembimbing Lapangan, atas segala
bimbingan dan arahannya sehingga pelaksanaan KERJA PRAKTEK ini
segera terselesaikan.
3. Yudo Bismo Purnomo, S.Kom., M.Kom, selaku Ketua Program Studi Teknik
Komputer, atas segala dorongan, arahan dan motivasinya.
4. Semua pihak yang telah membantu dalam pelaksanaan Kerja Praktek dan
penyusunan laporan akhir.
Penulis menyadari bahwa laporan yang disusun ini masih jauh dari sempurna,
oleh karena itu kritik dan saran sangat diharapkan guna perbaikan dimasa
mendatang dan semoga skripsi ini dapat bermanfaat dan menambah
pengetahuan kita.
Penulis
iv
v
DAFTAR ISI
RINGKASAN................................................................................................................iii
KATA PENGANTAR......................................................................................................iv
DAFTAR ISI...................................................................................................................v
DAFTAR TABEL..........................................................................................................viii
DAFTAR GAMBAR........................................................................................................ix
DAFTAR LAMPIRAN......................................................................................................x
BAB I PENDAHULUAN..................................................................................................1
1.4 Hipotesis.............................................................................................................2
2.1 PHP.....................................................................................................................4
2.2 HTML..................................................................................................................4
2.4 Javascript............................................................................................................5
2.5 SweetAlert2........................................................................................................5
2.6 Quill.js................................................................................................................5
vi
2.7 Dompdf..............................................................................................................5
2.9 Dotenv................................................................................................................5
2.10 jQuery.................................................................................................................6
2.11 BOOSTRAP..........................................................................................................6
2.12 XAMPP................................................................................................................6
2.13 MYSQL................................................................................................................6
2.14 OOP....................................................................................................................7
2.15 PDO....................................................................................................................7
2.16 Composer...........................................................................................................7
2.17 NPM...................................................................................................................7
4.3 Pembahasan.....................................................................................................13
vii
DAFTAR PUSTAKA......................................................................................................35
LAMPIRAN.................................................................................................................36
viii
DAFTAR TABEL
ix
DAFTAR GAMBAR
x
DAFTAR LAMPIRAN
xi
BAB I
PENDAHULUAN
Dalam dunia kerja yang ketat, Universitas Islam kadiri ingin memberikan
pembekalan kepada mahasiswanya dalam hal keterampilan, sifat kompeten
dan kreatif yang siap masuk ke dunia keja dengan menyelenggarakannya
PKL atau Praktek kerja lapangan yang sesuai dengan peminatan
mahasiswanya sendiri,
1
Dengan Program Studi Teknik Komputer penulis ingin merasakan
langsung bagaimana kerja lapangan di suatu dinas informatika, dengan
peminatan pemrograman web mahasiswa akan membantu mengembangkan
atau merancang suatu projek dalam dunia kerja yang sesungguhnya.
I.4 Hipotesis.
Hipotesis Deskriptif :
2
jika dikerjakan oleh pihak ketiga (luar) tentunya biaya pembuatan akan
lebih tinggi.
2) Terjalinnya kerjasama yang saling menguntungan dan bermanfaat
antara Dinas Kominfo Kabupaten Kediri dan FT Universitas Islam
Kadiri.
3
BAB II
TINJAUAN PUSTAKA
II.2 PHP.
Menurut Harison dan Syarif (2016:42), “PHP adalah sebuah bahasa
pemrograman yang berjalan dalam sebuah web-server (serverside)“. Sedangkan
menurut Laisina et al. (2018:141), “PHP adalah bahasa perograman yang
digunakan secara luas untuk penanganan pembuatan dan pengembangan sebuah
web dan bisa digunakan pada HTML”.
II.3 HTML.
Menurut Pahlevi et al. (2018:28), “HTML (Hyper Text Mark Up
Language) merupakan bahasa yang digunakan untuk mendeskripsian struktur
sebuah halaman web”. Sedangkan menurut Harison dan Syarif (2016:43)
“HyperText Markup Language (HTML) adalah sebuah bahasa markup yang
digunakan untuk membuat sebuah halaman web, menampilkan berbagai informasi
di dalam sebuah penjelajah web internet dan formating hypertext sederhana yang
ditulis kedalam berkas format ASCII agar dapat meghasilkan tampilan wujud yang
terintegrasi.
4
bertujuan untuk menghias dan mengatur gaya tampilan/layout halaman web
supaya lebih elegan dan menarik”.
II.5 Javascript.
JavaScript adalah bahasa pemrograman yang digunakan dalam
pengembangan website agar lebih dinamis dan interaktif, JavaScript dapat
meningkatkan fungsionalitas pada halaman web. Bahkan dengan JavaScript ini
kamu bisa membuat aplikasi, tools, atau bahkan game pada web.
II.6 SweetAlert2.
SweetAlert merupakan library JavaScript yang menyediakan berbagai
pilihan bagi kita untuk membuat berbagai jenis pop-up alert seperti alert biasa,
alert error, alert success, alert konfirmasi, dan sebagainya. Penulisan kode
SweetAlert sangatlah singkat seperti menulis menggunakan fungsi bawaan
JavaScript.
II.7 Quill.js.
Quilljs adalah library Javascript untuk membuat teks editor di web. Quilljs
gampang dikustomisasasi sesuai kebutuhan dan juga memiliki API yang ekspresif.
Cara menggunakan Quilljs cuma perlu menambahkan CSS dan Javascript dari
Quilljs lalu melakukan inisialisasi.
II.8 Dompdf.
Dompdf merupakan salah satu pustaka PHP untuk membuat PDF. Dompdf
membuat PDF dari HTML, sehingga lebih praktis. Selain itu juga, Kita bisa
menggunakan CSS di dalamnya. Saat ini Dompdf mendukung CSS versi 2.1.
5
II.9 Font awesome.
Font Awesome merupakan font yang berisi icon-icon yang telah dimuat
menjadi framework css yang bisa digunakan untuk mempermudah menampilkan
icon-icon standar dalam front-end development
II.10 Dotenv.
File . env (dotenv) berfungsi untuk menyimpan variabel env. File ini berisi
deklarasi atau pembuatan variabel env yang nantinya dapat kita load dari Nodejs.
Agar dapat menggunakan file.
II.11 jQuery.
jQuery adalah library JavaScript yang cukup andal, ringkas, dan mempunyai fitur
yang cukup lengkap. Library ini membuat pemrosesan di HTML seperti
perubahan dan manipulasi dokumen, event handling, animasi, dan AJAX
JavaScript menjadi lebih sederhana.
II.12 BOOSTRAP.
Bootstrap adalah framework HTML, CSS, dan JavaScript yang berfungsi
untuk mendesain website responsive dengan cepat dan mudah.
II.13 XAMPP.
XAMPP adalah perangkat lunak bebas, yang mendukung banyak system
operasi, merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai
server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP
Server, MySQL database, dan penerjemah bahasa yang dirilis dengan bahasa
pemograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat
system operasi apapun), Apache, MySQL, PHP dan Perl. Program ini tersedia
dalam GNU General Public License dan bebas, merupakan web server yang
mudah digunakan yang apat melayai tampilan halaman web yang dinamis.
II.14 MYSQL
MySQL adalah sistem manajemen database yang digunakan untuk
menyimpan data dalam tabel terpisah dan menempatkan semua data dalam satu
6
gudang besar. Struktur database disusun dalam file fisik dioptimalkan untuk
kecepatan. Model logis, dengan benda-benda seperti database, tabel, baris, dan
kolom, menawarkan lingkungan pemrograman yang fleksibel.
Menurut Pahlevi et al. (2018:28) “MySQL adalah salah satu jenis database
yang banyak digunakan untuk membuat aplikasi berbasis web yang dinamis”.
Sedangkan menurut Noor (2016:77), “MySQL adalah salah satu jenis database
server yang sangat terkenal.” Berdasarkan pendapat para ahli diatas dapat
disimpulkan bahwa, MySQL adalah salah satu jenis database server yang sangat
terkenal dan banyak digunakan untuk membuat aplikasi berbasis web yang
dinamis.
II.15 OOP.
Object-Oriented Programming atau OOP adalah suatu metode
programming yang berorientasi pada objek. Program-program tersebut merupakan
gabungan dari beberapa komponen kecil yang telah ada sebelumnya, sehingga
dapat mempermudah pekerjaan seorang programmer dalam melakukan
pengembangan.
II.16 PDO.
PDO merupakan kependekan dari “PHP Data Objects” yaitu merupakan
sebuah interfaces universal yang disediakan oleh PHP dalam berkomunikasi
dengan database server. Dikatakan interfaces universal itu karena PDO tidak
terikat atau terkait pada jenis database tertentu saja. Contoh misalnya sekarang
Anda menggunakan databse MySQL lalu kemudian hari ada beralih ke
PostgresSQL, maka nanti Anda hanya perlu mengganti cara pemanggilan awal
PDO sehingga seluruh skrip/kode program bisa langsung digunakan untuk
database baru. PHP Mulai menyediakan PDO extension sejak versi 5.1 keatas.
II.17 Composer.
Composer adalah aplikasi manajer paket untuk bahasa pemrograman PHP yang
menyediakan format standar untuk mengelola dependensi PHP dan pustaka-
pustaka yang diperlukan.
7
II.18 NPM.
NPM adalah singkatan dari Node Package Manager, yaitu pengelola
package yang memungkinkan developer JavaScript menemukan dan menginstal
package kode ke aplikasi jaringan atau server-side.
8
BAB III
METODE PELAKSANAAN
9
Analisis dan kebutuhan yang diajukan oleh peserta PKL kepada
pembimbing lapangan
Hasil diskusi peserta PKL dengan pembimbing lapangan.
3.2.2. Alat Penelitian
Penelitian ini menggunakan alat penelitian berupa perangkat keras,
perangkat lunak dan bahasa pemrograman, yaitu :
1. Perangkat Keras :
Laptop dengan processor i3 gen 10
SSD berkapasitas 512gb
Ram 8gb
2. Perangkat Lunak :
Sistem Operasi Windows 10
MySQL dan phpMyAdmin version (7.4.13 dan 5.0.4)
sebagai database server
Xamp version v3.2.4 sebagai server
Visual Studio Code 1.68 sebagai teks editor
Chrome version 64 bit sebagai tampilan UI/web site sistem
informasi absensi karyawan kampus
PowerDesigner version 16.1 sebagai media pembuatan
DFD
Microsoft Access 2013 sebagai media pembuatan relasi
antar tabel
Microsoft Word 2013 sebagai media pembuatan laporan
dan perancangan tabel
3. Bahasa Pemrograman
PHP
Javascript
10
III.3 Metode Pelaksanaan
Metode yang digunakan dalam pelaksanaan kerja praktek lapangan yang
dilakukan adalah dengan wawancara, yang meliputi :
Peserta PKL berkonsultasi kepada pembimbing lapangan dari Dinas
Kominfo seputar aplikasi yang akan dikerjakan,
Dinas Kominfo memberikan kebutuhan yang akan dikerjakan oleh para
peserta PKL, dan peserta PKL juga memberikan analisis dan kebutuhan
seputar projek yang akan diberikan.
Peserta PKL tetap melakukan presentasi seputar hasil kerja aplikasi kepada
pembimbing Lapangan yang nanti akan diberi masukan.
11
BAB IV
HASIL DAN PEMBAHASAN
NO TANGGAL KEGIATAN
1 30-1-2023 Penghadapan ke Dinas Kominfo untuk Koordinasi PKL
hari pertama, meliputi pembagian kerja dan tugas dengan
penanggung jawab PKL
2 31-1-2023 Menyusun CV
3 1-2-2023 Pemberian dan diskusi projek dari pihak kominfo,
sekaligus presentasi CV dan SDLC
4 2-2-2023 Belajar Materi PHP
5 3-2-2023 Belajar Materi PHP
6 4-2-2023 Libur (Tanggal Merah)
7 5-2-2023 Libur (Tanggal Merah)
8 6-2-2023 Belajar Materi PHP
9 7-2-2023 Pembimbingan,pengarahan lanjut mengenai project
10 8-2-2023 Perancangan Analisis dan Kebutuhan Sistem
12
11 9-2-2023 libur
12 10-2-2023 Presentasi Analisis dan kebutuhan sistem
13 11-2-2023 Libur (Tanggal Merah)
14 12-2-2023 Libur (Tanggal Merah)
15 13-2-2023 Pengerjaan aplikasi
16 14-2-2023 Pengerjaan aplikasi
17 15-2-2023 Pengerjaan aplikasi
18 16-2-2023 Pengerjaan aplikasi
19 17-2-2023 Presentasi Progress Aplikasi dan pembimbingan lanjut
seputar penambahan fitur
20 18-2-2023 Pengerjaan aplikasi
21 19-2-2023 Pengerjaan aplikasi
22 20-2-2023 Pengerjaan aplikasi
22 21-2-2023 Pengerjaan aplikasi
23 22-2-2023 Pengerjaan Laporan dan Buku manual penggunaan untuk
BAKESBAPOL dan Kominfo
24 23-2-2023 Presentasi Progresss Aplikasi Terakhir
25 24-2-2023 Pengerjaan Laporan dan Buku manual penggunaan untuk
BAKESBAPOL dan Kominfo
26 25-2-2023 Libur (Tanggal Merah)
27 26-2-2023 Libur (Tanggal Merah)
28 27-2-2023 Pengerjaan Laporan untuk BAKESBAPOL
29 28-2-2023 Pengumpulan seluruh progres dan Pamitan
IV.3 Pembahasan
1. Tanggal 30 – 1 – 2023 :
Pada pertemuan pertama peserta PKL diberikan arahan seputar yang akan
dikerjakan peserta PKL pada sebulan yang akan datang.
13
2. Tanggal 31 – 1 – 2023 :
Peserta PKL menyusun CV yang nanti akan dipresentasikan kepada
pembimbing lapangan sebagai acuan pembuatan projek kerja yang akan
diberikan oleh pihak Kominfo.
3. Tanggal 1 – 2 – 2023 :
Para peserta mepresentasikan CV yang telah dibuat dan mepresentasikan
materi Systems development life cycle atau dalam bahasa Indonesia disebut
siklus hidup pengembangan sistem (SDLC) sekaligus memilih model
pengembangan SDLC apa yang akan digunakan dalam proses pembuatan
projek atau aplikasi dari Dinas Kominfo Kabupaten Kediri.
Dan para peserta PKL memilih metode Agile Software Development untuk
metode pengembangan yang akan digunakan karena pengembangan sistem
jangka pendek dengan tingkat adaptasi yang cepat terhadap segala
perubahan. Titik utama dari Agile Software Development adalah kerja
sama kelompok. Metode-metode yang tergabung dalam Agile
menitikberatkan kolaborasi antaranggota tim Agile.
5. Tanggal 7 – 2 – 2023 :
Peserta PKL diberikan pembingan lebih lanjut seputar bagaimana projek
yang akan dibuat nanti dan para peserta PKL diberikan tugas untuk
membuat analisis dan kebutuhan sistem yang nanti akan dipresentasikan
kepada pembimbing lapangan.
14
6. Tanggal 8 – 2 – 2023
Peserta PKL merancang analisis dan kebutuhan sistem seputar analisis
kebutuhan, perangkat lunak dan perangkat keras yang digunakan,
perancangan sistem seputar DFD, perancangan tabel.
1) Diagram Konteks (DFD level 0)
Penjelasan :
Bagi user
Saat pertama kali membuka website, user akan melihat halaman
landing page yang isinya, adalah daftar layanan server yang bisa
diajukan kepada pihak KOMINFO kab kediri, saat diklik akan
15
memunculkan popup deskripsi singkat layanan, dan juga terdapat
tombol yang akan mengarahkan user ke menu form pengjuan
Pada menu form pengajuan, user diharuskan mengisi semua data dan
persyaratan yang ada. User juga harus menceklist google recaptha
agar data dapat tersimpan pada database ‘tb_permohonan’. Setelah
user mengisi semua form pengajuan, user akan diarahkan ke halaman
konfirmasi form pengajuan berhasil.
Masuk pada menu data permohonan belum diterima, baik admin dan
superadmin dapat mengubah dan menghapus data pemohon yang
belum diterima, selain itu juga mengubah status pemohon dari belum
diterima menjadi sudah diterima. Data tersebut nantinya akan disimpat
pada table ‘tb_pemohon’
Masuk pada menu data permohonan sudah diterima, baik admin dan
superadmin dapat mengubah dan menghapus data pemohon yang
belum diterima, selain itu juga dapat mengubah status pemohon dari
sudah diterima menjadi belum diterima. Didalam menu ini, admin
juga dapat mencetak semua data pemohon , atau mencetak satu – satu
data pemohon. Sebelum mencetak data pemohon, admin dapat
mengkostumisasi format cetakan yang diinginkan. Data tersebut
nantinya akan disimpan pada table ‘cetak’
Masuk pada menu data layanan, baik superadmin dan admin dapat
melakukan CRUD pada data layanan yang akan disimpan pada table
‘tb_layanan’, pada saat menambah data layanan, admin dapat
mengatur syarat dan ketentuan layanan, dan juga dapat mengatur
format form saat user melakukan permohonan pengajuan layanan
server. Data tersebut nantinya akan disimpat pada table ‘tb_form’
16
3) Perancangan Tabel
cetak
No Nama Field Type Width Keterangan
1 Id Int - -
5 nomor Varchar 255 Nomor
6 narasi text - Narasi
7 penutup text - Penutup
8 kepala_dinas Varchar 255 Kepala dinas
9
nip_kepala_dinas Varchar 255 Nip kepala dinas
Tabel 4.3.4 Tabel Cetak
tb_form
No Nama Field Type Width Keterangan
1 Id Int - -
2 Nama_domain Varchar 255 Nama domain
3 Layanan_id Int 11 Layanan
4 Nama_pengelola Varchar 255 Nama pengelola
5 nip Int 11 Nip
6 Pangkat_golongan Varchar 255 Pangkat golongan
7 Jabatan Varchar 255 Jabatan
8 No_hp Int 50 No hp
Tabel 4.3.5 Tabel form.
tb_layanan
No Nama Field Type Width Keterangan
1 Id Int - -
2 judul Varchar 255 Judul
3 isi text - Isi
4 gambar Varchar 55 Gambar
Tabel 4.3.6 Tabel Layanan.
17
tb_permohonan
No Nama Field Type Width Keterangan
1 id Int - -
2 waktu_pengajuan Varchar 255 Waktu Pengajuan
3 nama_domain Varchar 255 Nama Domain
4 nama_pengelola Varchar 255 Nama Pengelola
5 nip Int 25 Nip
6 pangkat_golongan Pangkat Golongan
Varchar 255
7 email Email
Varchar 50
8 jabatan Varchar 233 Jabatan
9
no_hp Int 20 No. hp
10
jenis_layanan Varchar 50 Jenis layanan
11
dokumen_ASN_KTP Varchar 50 Dokumen
ASN KTP
12
dokumen_surat_pic Varchar 255 Dokumen surat pic
13
dokumen_surat_penga Varchar 255 Dokumen
juan surat pengajuan
14
dokumen_kontrak Varchar 255 Dokumen kontrak
15
status Int 1 Status
Tabel 4.3.7 Tabel Permohonan.
user
No Nama Field Type Width Keterangan
1 id Int 6 -
2 username Varchar 55 Username
3 password Varchar 255 Password
4 superadmin int 1 Cek superadmin
atau admin
18
Tabel 4.3.8 Tabel User.
7. Tanggal 10 – 2 – 2023
Peserta PKL mempresentasikan analisis dan kebutuhan sistem yang telah
dibuat kepada pembimbing lapangan yang nanti akan dinilai, diberi
masukkan dan diterima atau tidaknya untuk proses pengerjaan aplikasi.
19
Gambar 4.3.2 Struktur Tabel cetak
20
Gambar 4.3.4 Struktur table layanan
21
Gambar 4.3.7 Konfigurasi .env
Penjelasan : Pada direktori root, saya membuat file .env yang berguna
untuk menyimpan core database dan juga api key google recaptha v2.
Nantinya variable tersebut akan dipanggil pada class / method yang
membutuhkannya.
22
Penjelasan : Method diatas akan berada disetiap class di direktori
magang/class yang membutuhkan koneksi database mysql dan
otomatis dijalankan ketika pertama kali memanggil class. Koneksi
tersebut akan disimpan pada property public ‘$conn’, sekaligus dapat
dipakai oleh method lainnya didalam satu class tersebut.
3) Login
Pertama saya membuat class user pada direktori magang/class/user.php
yang methodnya adalah sebgai berikut.
23
Penjelasan : source code diatas berfungsi untuk mengecek apakah
admin menchecklist google recaptha atau tidak. Jika tidak, aplikasi
akan mengirimkan pesan error kepada admin, namun jika admin sudah
24
4) CRUD user / admin
Pada class user saya membuat beberapa method crud user yang isinya :
25
Gambar 4.3.13 Function ubah data user
26
Penjelasan : Fungsi diatas berguna untuk menghapus user sesuai
dengan id yang diterima. Setelah berhasil terhapus, aplikasi akan
menampilkan pesan berhasil.
5) CRUD Layanan
Pertama saya membuat class layanan pada direktori
magang/class/layananclass.php, yang isi methodnya antara lain :
27
Gambar 4.3.16 Function edit layanan
28
Gambar 4.3.17 Function hapus layanan
29
Gambar 4.3.18 Function edit Permohonan
30
Penjelasan : Fungsi diatas berguna untuk menerima permohonan yang
sudah dikirm pemohon, dengan mengubah status menjadi true agar
dapat dicetak.
31
Gambar 4.3.22 Function update cetak
32
7) Logout
pada root direktori saya membuat logout.php yang isinya :
33
Gambar 4.3.26 Tampilan page error ketika akses folder
34
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Kesimpulan pada laporan ini ialah para peserta PKL telah membuat
aplikasi manajemen layanan server Dinas Kominfo Kabupaten Kediri dengan
kriteria yang telah diberikan oleh pembimbing lapangan dari Dinas Kominfo,
dengan demikian para peserta PKL telah menyelesaikan tujuan projek dengan
tepat sesuai tenggat waktu PKL selama 1 bulan.
5.2. Saran
Dengan selesainya pembuatan laporan ini kami sebagai peserta PKL di
Dinas Kominfo Kabupaten Kediri berterimakasih sebanyak – banyaknya dan
berharap Aplikasi Layanan Server yang telah dibuat dapat berjalan dengan baik,
dan dapat membantu dalam hal pekerjaan.
35
DAFTAR PUSTAKA
https://www.php.net/
https://sweetalert2.github.io/
motdola. https://github.com/motdotla/dotenv
https://getbootstrap.com/
36
LAMPIRAN
37
Lampiran 3 Proses Peserta PKL mengerjakan Projek dari Kominfo.
38