BAB II LANDASAN TEORI
2.1 Definisi Umum Perusahaan Sistem pengendalian kerja lembur karyawan merupakan sistem yang dibuat untuk dapat memberikan informasi mengenai kerja lembur karyawan. Supervisor yang memegang peranan penting untuk menginput data siapa sajakah yang lembur dan menginput actual dari berapa jam lembur yang kemudian data tersebut dapat dilihat oleh karyawan. Karyawan juga bisa mendapatkan perhitungan gaji lembur atau bisa mensimulasi perhitungan gaji lemburan yang dia dapat dalam sebulan. Sistem pengendalian lembur kerja karyawan dibuat dengan perancangan berbasis web dan didukung database MySql. Untuk istilah-istilah yang dipergunakan adalah sebagai berikut : 2.1.1 PPIC PPIC merupakan kepanjangan dari Production Planning Inventory Control, memiliki Fungsi Planning dalam perusahaan (manufacture) dijalankan oleh orang yang memduduki jabatan sebagai staff PPIC (Production Planning and Inventory Control). Disamping memiliki fungsi production planning, PPIC juga memiliki peranan dalam manajemen Inventory (Transkerja, 2014). 2.1.2 Kerja Lembur (overtime) Kerja lembur adalah pekerjaan yang dilakukan oleh karyawan, atas dasar perintah atasan, yang melebihi jam kerja biasa pada hari-hari kerja, atau pekerjaan yang dilakukan pada hari istirahat mingguan karyawan atau hari libur resmi. 2.1.3 SPKL SPKL merupakan Kepanjangan dari Surat Perintah Kerja Lembur, memiliki fungsi sebagai media pencatatan actual lembur kerja. SPKL juga berfungsi agar kita bias lembur secara resmi dan dijamin gajinya. 2.1.4 Upah Lembur Kerja Upah Kerja Lembur adalah upah yang diterima pekerja atas pekerjaannya sesuai dengan jumlah waktu kerja lembur yang dilakukannya (Gajimu, 2016). Untuk Perhitungan gaji yang
dipergunakan dalam sistem aplikasi ini adalah
sebagai berikut : 6
http://digilib.mercubuana.ac.id/
Jenis Lembur
RUMUS
HariNormal
(Total Jam lembur * Jenis Lembur * Jumlah upah bulanan / 173)
(dikali 2) Hari Libur / Hari Raya (dikali 3)
Tabel 2.1 Rumus Perhitungan Gaji
2.2 Metode Penelitian 2.2.1 Metode Deskriptif Metoda pengumpulan data yang dilakukan dalam penelitian ini adalah: 1. Observasi Pengumpulan data dengan dengan melakukan pengamatan secara langsung terhadap objek penelitian, dengan mencatat hal-hal penting yang berhubungan dengan judul laporan, sehingga diperoleh data yang lengkap dan akurat. 2. Wawancara Pengumpulan data dengan cara melakukan komunikasi dan wawancara secara langsung dengan pihak-pihak terkait. 3. Studi Pustaka Pengumpulan data dengan menggunakan atau mengumpulkan sumbersumber tertulis, dengan cara membaca, mempelajari dan mencatat hal-hal penting yang berhubungan dengan masalah yang sedang dibahas guna memperoleh gambaran secara teoritis.
7
http://digilib.mercubuana.ac.id/
2.3 Metode Pengembangan Sistem 2.3.1 Metode Waterfall Metodelogi yang digunakan untuk membangun dan mengembangkan sistem aplikasi ini adalah Model Waterfall. Untuk lebih jelasnya tahapan-tahapan dari model Waterfall dapat dilihat pada gambar berikut:
Gambar 2.1 Ilustrasi Model Waterfall (Roger S Pressman, 2010) Penjelasan Metodelogi Waterfall: 1. Tahapan Rekayasa Sistem Tahapan ini merupakan bagian awal dari pengerjaan suatu proyek perangkat lunak. Dimulai dengan mempersiapkan segala hal yang diperlukan dalam pelaksanaan proyek. Hasil pada tahap ini adalah berupa spesifikasi sistem. 2. Tahapan Analisis Tahapan ini merupakan pengumpulan kebutuhan elemen-elemen ditingkat perangkat lunak. Hasil analisa harus dapat menentukan data, fungsi, proses, atau prosedur yang diperlukan beserta cara pengoprasian, dan 8
http://digilib.mercubuana.ac.id/
antarnuka. Hasil pada tahap ini berupa spesifikasi kebutuhan perangkat lunak. 3. Tahapan Perancangan Tahapan ini berupa kebutuhan perangkat lunak yang diperoleh dari tahap analisa, yang kemudian diproses sehingga menjadikan model perancangan perangkat lunak yang memiliki karakteristik untuk dapat diterapkan ke tahap implementasi. 4. Implementasi Tahap ini menerjemahkan data yang dirancang ke dalam bahasa pemrograman yang telah ditentukan. 5. TahapPengujian Tahap ini merupakan uji coba terhadap sistem atau program setelah selesai dibuat. Pengujian pada perangkat lunak dilakukan dengan memfokuskan pada masalah-masalah fungsional, potensi masalah yang munkin terjadi dan pemeriksaan hasil apakah sudah sesuai dengan kebutuhan. 6. Tahap Pemeliharaan Tahap ini merupakan penerapan sistem secara keseluruhan disertai pemeliharaan jika terjadi perubahan struktur, baik dari segi software maupun hardware.
2.4 Hypertext Markup Language (HTML) Hypertext Markup Language (HTML) adalah bahasa standart yang digunakan untuk menampilkan halaman web. Yang bisa dilakukan dengan HTML yaitu(Hidayatullah P & Kawistara J K, 2015) : a. Mengatur tampilan dari halaman web dan isinya. b. Membuat tabel dalam halaman web. c. Mempublikasikan halaman web secara online. d. Membuat form yang bisa digunakan untuk menangani registrasi dan transaksi via web. e. Menambahkan objek-objek serta citra, audio, video, animasi, java applet dalam halaman. 9
http://digilib.mercubuana.ac.id/
f. Menampilkan area gambar (canvas) di browser 2.5 Diagram Pemodelan diagram menggunakan UML, UML memiliki banyak diagram, Empat diagram yang digunakan yaitu : 2.5.1
Data Flow Diagram (DFD) Data Flow Diagram (DFD) atau lebih sering disebut juga dengan Diagram
Aliran Data (DAD) merupakan diagram yang menggambarkan aliran data dari suatu sistem. Alur yang digambarkan adalah alur input-proses-output. Bisa digunakan untuk menjelaskan proses apa saja yang terjadi, apa masukannya, serta apa keluarannya dari suatu sistem. DFD memiliki tingkatan tertentu dimana tingkatan ini disebut dengan level. Dimulai dari DFD level 1, level 2, level 3 dan seterusnya. Terdapat beberapa tata cara pembuatan DFD, antara lain : (Sulianta S & Umbara F R, 2015) Entitas tidak boleh memiliki aliran data langsung ke entitas lain tanpa melalui proses. Data store tidak boleh terhubung langsung dengan data store lain tanpa melalui proses. Entitas tidak boleh terhubung langsung dengan data store tanpa melalui suatu proses, begitu pula sebaliknya. Setiap proses harus memiliki input dan output, baik itu input dan output dari proses lain, entitas, atau data store. 2.5.2
Entity Relation Diagram (ERD)
Entity Relation Diagram (ERD) merupakan diagram yang digunakan untuk merancang table-tabel yang nantinyaakan diimplementasikan pada basis data. ERD ini dibentuk berdasarkan 3 elemen, yaitu entitas, atribut, dan relasi. (Sulianta S & Umbara F R, 2015) a. Entitas adalah objek dalam bentuk fisik atau komsep. Entitas ini akan dibuat unik atau berbeda dengan entitas lainnya. b. Atribut adalah karakteristik atau property dari entitas.
10
http://digilib.mercubuana.ac.id/
c. Relasi adalah hubungan antara entitas yang satu dengan yang lainnya, misalnya terdapat hubungan antara entitas mahasiswa dengan mata kuliah karena mahasiswa nantinya akan mengambil mata kuliah. Untuk lebih jelasnya 3 elemen tersebut dapat dilihat pada Tambel berikut:
Simbol
Nama
Entity/Entitas
Atribute/Atribut
Relationship/Relasi
Tabel 2.3 Elemen ERD (Sulianta S & Umbara F R, 2015)
2.5.3
Activity Diagram Activity diagram merupakan bagian dari model dinamis yang digunakan
untuk menggambarkan work flow / proses sistem kita. Diagram ini menunjukkan bagaimana suatu proses dimulai, kemudian alur proses dari tiap keputusan yang ada hingga berakhirnya proses. Serta diagram ini juga memungkinkan untuk menampilkan proses yang terjadi secara pararel. Activity diagram memungkinkan siapapun yang melakukan proses untuk memilih urutan dalam melakukannya. Dengan kata lain, diagram hanya menyebutkan aturan-aturan rangkaian dasar yang harus kita ikuti.Hal ini penting untuk pemodelan bisnis karena proses-proses sering muncul secara paralel. Notasinotasi yang digunakan dalam pemodelan diagram aktifitas dapat dilihat pada Tabel 2.3 (Munawar, 2007) 11
http://digilib.mercubuana.ac.id/
Notasi
Keterangan Titik awal digunakan untuk menggambarkan awal dari diagram aktifitas. Titik akhir (final action) untuk menggambarkan akhir dari diagram aktifitas. Activity/action
digunakan
untuk
menggambarkan
aktifitas dalam diagram aktifitas. Node keputusan (decision node), digunakan untuk menggambarkan kelakuan pada kondisi tertentu. Fork dan Join digunakan untuk menunjukan kegiatan yang dilakukan secara paralel dan digabungkan kembali. Tabel 2.4 Notasi Activity Diagram
2.6 Database Management System (DBMS) Database Management sistem (DBMS) adalah aplikasi yang dipakai untuk mengelola basis data. DBMS biasanya menawarkan beberapa kemampuan yang terintegrasi seperti (Hidayatullah P & Kawistara J K, 2015): 1. Membuat, menghapus, menambah, dan memodifikasi basis data 2. Pada beberapa DBMS pengelolaannya berbasis windows (berbentuk jendela-jendela) sehingga lebih mudah digunakan. 3. Tidak semua orang bias mengakses basis data yang ada sehingga memberikan keamanan bagi data. 4. Kemampuan berkomunikasi dengan program aplikasi yang lain. Misalnya dimungkinkan untuk mengakses basis data MySQL menggunakan aplikasi yang dibuat menggunakan PHP. 5. Kemampuan pengaksesan melalui komunikasi antarkomputer (client server).
12
http://digilib.mercubuana.ac.id/
2.7 MySQL 2.7.1
Definisi MySQL
MySQL adalah salah satu aplikasi DBMS yang sudah banyak digunakan oleh para program aplikasi web. Contoh DBMS lainnya adalah: PostgreSQL (freeware), SQL Server, MS Access dari Microsoft, DB2 dari IBM, Oracle dan Oracle Corp, Dbase, FoxPro, dsb. (Hidayatullah P & Kawistara J K, 2015) 2.7.2
Kelebihan MySQL
Kelebihan dari MySQL adalah gratis, handal, selalu di-update dan banyak forum yang memfasilitasi para pengguna jika memiliki kendala. MySQL juga menjadi DBMS yang sering dibundling dengan web server sehingga proses instalasinya jadi lebih mudah. (Hidayatullah P & Kawistara J K, 2015) 2.8 phpMyAdmin Secara definisi, phpMyAdmin adalah tools open source yang ditulis dalam bahasa PHP untuk menangani administrasi MySQL berbasis World Wide Web (phpMyAdmin, 2016). 2.9 PHP PHP Hypertext Preprocessor atau disingkat dengan PHP ini adalah suatu bahasa scripting khususnya digunnakan untuk web development. Karena sifatnya yang server side scripting, maka untuk menjalankan PHP harus menggunakan web server. PHP juga dapat diintegrasikan dengan HTML, JavaScript, JQuery, Ajax. Namun, pada umumnya PHP lebih banyak digunakan bersamaan dengan file bertipe HTML. (Hidayatullah P & Kawistara J K, 2015) 2.10 Cascading Style Sheet (CSS) CSS merupakan singkatan dari Cascading Style Sheets. CSS adalah bahasa stylesheet yang menggambarkan presentasi dari HTML (atau XML) dokumen. CSS menjelaskan bagaimana elemen harus ditampilkan di layar, di atas kertas, atau media lainnya. CSS menghemat banyak pekerjaan, Hal ini dapat dilakukan 13
http://digilib.mercubuana.ac.id/
dengan mengontrol tata letak halaman web beberapa sekaligus. Style sheet eksternal disimpan dalam file CSS (w3schools, 2016). 2.11 JavaScript JavaScript adalah bahasa pemrograman
yang umum digunakan dalam
pengembangan web. Ini pada awalnya dikembangkan oleh Netscape sebagai sarana untuk menambah unsur dinamis dan interaktif untuk website. Sementara JavaScript dipengaruhi oleh Java, sintaks lebih mirip dengan C dan didasarkan pada ECMAScript, bahasa scripting yang dikembangkan oleh Sun Microsystems (Christensson P, 2016). JavaScript adalah bahasa scripting client-side, yang berarti kode sumber diproses oleh web browser klien bukan pada server web. Ini berarti fungsi JavaScript dapat berjalan setelah halaman web telah dimuat tanpa berkomunikasi dengan server. Misalnya, fungsi JavaScript dapat memeriksa formulir web sebelum diserahkan untuk memastikan semua bidang yang diperlukan telah diisi. Kode JavaScript dapat menghasilkan pesan kesalahan sebelum informasi apapun sebenarnya ditransmisikan ke server (Christensson P, 2016). Seperti bahasa scripting server-side, seperti PHP dan ASP, kode JavaScript dapat disisipkan di mana saja dalam HTML dari halaman web. Namun, hanya output dari kode sisi server ditampilkan dalam HTML, sedangkan kode JavaScript tetap sepenuhnya terlihat di sumber halaman web. Hal ini juga dapat dirujuk dalam file JS yang terpisah, yang juga dapat dilihat dalam browser (Christensson P, 2016). 2.12 Basis Data 2.12.1 Definisi Basis Data Basis data dapat didefinisikan sebagai himpunan kelompok data yang saling berhubungan yang diorganisasikan sedemikian rupa agar kelak dapat saling dimanfaatkan kembali dengan cepat dan mudah. (Fathansyah, 2007) Prinsip utamannya adalah pengaturan data. Tujuan utamanya kemudahan dan kecepatan dalam pengambilan kembali data.
14
http://digilib.mercubuana.ac.id/
2.12.2 Tujuan Basis Data Secara lebih lengkap pemanfaatan basis data dilakukan untuk memenuhi tujuan berikut ini : (Fathansyah, 2007) 1. Kecepatan dan Kemudahan (Speed) 2. Efesiensi ruang penyimpanan (Space) 3. Keakuratan (Accuracy) 4. Ketersediaan (Availability) 5. Kelengkapan (Completenes) 6. Keamanan (Security) 7. Pemakaian Bersama (Sharability) 2.13 Fusion Chart 2.13.1 Definisi Fusion Chart FusionCharts merupakan sebuah komponen atau library chart yang bersifat open source dan gratis yang dapat digunakan untuk membuat grafik data dengan animasi flash. FusionCharts dapat digunakan dengan bahasa scripting web PHP, ASP, .NET, JSP, ColdFusion, JavaScript, Ruby, dan lain-lain. Penggunaan FusionCharts ini sebagai grafik data pada media web, menggunakan XML sebagai media pembacaan data. Grafik dan animasi yang indah, sebagian besar programmer web menggunakan library ini untuk menampilkan grafik data. (Riyan M, 2016)
2.13.2 Keuntungan Fusion Chart Keuntungan menggunakan FusionCharts (Riyan M, 2016) : 1. Animasi dan Interaktif Charts Menggunakan FusionChart, Anda dapat dengan cepat dan mudah membuat animasi grafik yang memiliki banyak pilihan interaktif untuk pengguna akhir. 2. Mudah dan terintegrasi dengan JavaScript FusionCharts menawarkan pilihan lanjutan untuk mengintegrasikan grafik dengan modul JavaScript. Anda dapat memperbarui bagan di sisi client, memanggil fungsi JavaScript sebagai link hotspot. 15
http://digilib.mercubuana.ac.id/
3. Tidak perlu menginstall tools apapun dan sifatnya stand alone Untuk menggunakan FusionCharts, Anda tidak perlu menginstal apapun pada server Anda. Yang perlu Anda lakukan adalah copy-paste file SWF (file inti FusionCharts) ke server Anda. 4. Mudah digunakan FusionCharts membuat diagram proses chart menggunakan XML sebagai data, semua yang perlu Anda lakukan adalah mengkonversi data Anda ke dalam
XML
menggunakan
bahasa
pemrograman
atau
bahkan
menggunakan editor teks seperti Notepad dll – dan itu semua apa yang dibutuhkan untuk membuat grafik interaktif dan animasi. Bagian terbaik adalah Anda TIDAK perlu tahu apa-apa tentang Flash untuk menggunakan FusionCharts. 5. Berjalan pada berbagai platform web Terlepas dari bahasa apa yang digunakan, FusionCharts dapat digunakan untuk membuat diagram dengan baik. Sejak FusionCharts menggunakan XML sebagai antarmuka data, Anda dapat menjalankannya pada server apapun dan terhadap segala bahasa scripting. Juga, untuk melihat grafik, pengguna Anda hanya perlu memiliki Adobe Flash Player 6 (atau di atas), yang merupakan salah satu plugin browser yang paling digunakan di planet ini. 6. Mengurangi beban pada server 7. Bersifat Gratis
16
http://digilib.mercubuana.ac.id/