BAB II TINJAUAN PUSTAKA
II.1.
Perancangan Perancangan atau desain didefinisikan sebagai proses aplikasi berbagai
teknik dan prinsip bagi tujuan pendefinisian suatu perangkat, suatu proses atau sistem dalam detail yang memadai untuk memungkinkan realisasi fisiknya. Untuk mengendalikan proses desain, A. Davis mengusulkan serangkaian prinsip-prinsip dasar dalam perancangan/desain sebagai berikut : 1. Desai tidak boleh menderita karena tunnelvision (visi terowongan). 2. Desain tidak boleh berulang. 3. Desain harus terstruktur untuk mengakomodasi perubahan. 4. Desain harus terstruktur untuk berdegradasi dengan baik, bahkan pada saat data dan event-event (kejadian-kejadian) menyimpang atau menghadapi kondisi operasi. 5. Desain bukan pengkodean dan pengkodean bukanlah desain. 6. Desain harus dinilai kualitasnya pada saat desain dibuat, bahkan setelah jadi. 7. Desain harus dikaji untuk meminimalkan kesalahan-kesalahan konseptual. (Perancangan Sistem Informasi Terpadu Pemerintah Daerah Kabupaten Paser ; Nataniel dengen dan Heliza Rahmania Hatta ; 2009 : 48)
10 10
11
II.2.
Aplikasi Aplikasi adalah suatu subkelas perangkat lunak computer yang
memanfaatkan kemampuan computer langsung untuk melakukan suatu tugas yang diinginkan pengguna.Contoh utama aplikasi adalah pengolah kata, lembar kerja, memanipulasi foto, merancang rumah dan pemutar media.Beberapa aplikasi yang digabung bersama menjadi suatu paket disebut sebagai suatu paket atau suite aplkasi
(application
suite).
Contohnya
adalah
Microsoft
Office
dan
OpenOffice.org yang menggabungkan suatu aplikasi pengolah kata lembar kerja dn beberapa aplikasi lainnya. Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan tiap aplikasi. Seringkali, mereka memiliki kemampuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya suatu lembar kerja dapat dibenamkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah. (Dahlan dan Cut : 2013 : 141) Jenis-jenis Software Aplikasi : 1. Software aplikasi hiburan, contohnya yaitu Winamp untuk mendengarkan musik, games dan sebagainya untuk hiburan. 2. Software aplikasi pendidikan, yaitu software yang digunakan untuk mempelajari atau mereferensikan tentang pendidikan atau pengetahuan. 3. Sofware aplikasi bisnis, yaitu software yang digunakan untuk aplikasi bisnis.
12
4. Software aplikasi khusus, yaitu software aplikasi untuk produktivitas kerja.
II.3.
Sistem Informasi Absensi Absensi merupakan suatu cara pe mantauan dan pencatatan kehadiran
seseorang yang merupakan anggota suatu organisasi sebagai salah satu kedisiplinan kerja dari segi waktu yang dihitung berdasarkan jam masuk dan jam pulang. Sistem Informasi Absensi adalah suatu cara untuk mengetahui sejauh mana tingkat disiplin kerja karyawan, apakah karyawan tersebut bisa mentaati peraturan yang diterapkan atau tidak. Oleh karena absensi adalah salah satu unsur kedisiplinan, maka tujuan adanya absensi adalah untuk meningkatkan kedisiplinan karyawan. Secara umum sistem informasi absensi dibangun dengan tujuan untuk mewujudkan suatu sistem informasi absensi yang terintegrasi dalam suatu jaringan komputer, yang mampu menghasilkan informasi yang bermutu untuk membantu terwujudnya efektifitas organisasi. Sedangkan secara khusus sistem informasi absensi bertujuan untuk : 1. Untuk melihat kehadiran karyawan. 2. Untuk meningkatkan kedisiplinan karyawan. 3. Untuk meningkatkan semangat kerja karyawan. 4. Untuk mengetahui keadaan bawahan dihari kerja. 5.
Untuk
mengetahui
apakah
bawahan
denganmelihat kehadiran karyawan dihari kerja.
mempunyai
semangat
kerja
13
6. Sebagai bahan laporan kepada bagian kepada atasan tentang karyawan yang disiplin. Dengan diterapkannya absensi ini dengan sendirinya telah membantu meningkatkan mutu dari perusahaan. Kebanyakan orang menilai adanya pengguna absensi berarti adanya disiplin pada tempat yang bersangkutan. Selanjutnya orang menilai sistem kerja ditempat tersebut berkualitas baik. Dengan demikian absensi ini juga ikut membantu penilaian yang baik bagi setiap perusahaanyang menerapkannya. (Dedi dan Ahmad, 2014)
II.4.
PT. Jasa Marga (Persero) Tbk Cabang Belmera Medan Jalan tol ini merupakan satu-satunya yang dikelola Jasa Marga di luar
Jawa.Dibangun oleh kontraktor Takenaka Nippo Hutama dan konsultan Jepang PCI (Pacific Consultant International) Jalan tol ini mulai beroperasi pada 1986. Dengan bentangan sekitar 34 kilometer dan 2x2 lajur, jalan tol ini menghubungkan Pelabuhan Belawan ke Medan dan Tanjung Morawa, sehingga dikenal dengan nama singkatan Belmera. Jalan tol ini dioperasikan dengan sistem transaksi tertutup. (Jasa Marga Persero, n.d., Retrieved 06 Mei 2015, from http://www.jasamarga.com/id) Volume lalu lintas di ruas ini juga menunjukkan peningkatan.Sebagai gambaran rata-rata volume lalu lintas harian pada 2011 sekitar 53.000, dan 2012 mencapai sekitar 59.200. Ruas jalan ini memiliki empat interchange, 14 jembatan perlintasan kendaraan, lima jembatan penyeberangan orang dan 10 gerbang tol. Jalan tol ini dikelola oleh Cabang Belmera dengan jumlah pegawai 238 orang
14
bertempat di Jl. Simpang Tanjung No.1A Medan, 20241 Telepon : (62-61) 661 1701, 661 2920, Fax : (62-61) 661 1055, Email :
[email protected].(Jasa Marga Persero, n.d., Retrieved 06 Mei 2015, from http://www.jasamarga.com/id) Berdasarkan pada Keputusan Direksi PT. Jasa Marga (Persero) Tbk Nomor : 152/KPTS/2013, terdapat beberapa definisi-definisi yang menjelaskan tentang pedoman sistem pengumpulan tol yang mendukung teori-teori penulisan skripsi, yaitu : 1. Shift adalah rotasi kerja dalam satu siklus kerja selama 24 jam yang terdiri beberapa periode. 2. Personil Operasi Shift Gerbang Tol, merupakan kelompok SDM yang bekerja dalam operasi pengumpulan tol selama 24 jam, dan terbagi dalam rotasi kerja, yang terdiri dari Pengumpul Tol dan Kepala Shift Pengumpulan Tol (KSPT).
II.5.
PHP (Personal Home Page Hypertext Preprocessor) PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995.Pada
waktu itu PHP masih bernama Form Interpreted (FI), yang wujudnya berupa sekumpulan scrip yang digunakan untuk mengolah data dari formulir web.Dalam perkembangannya Ramus Lerdorf merilis kode sumber tersebut untuk umum dan menamakannya PHP/FI.Dengan perilisan kode sumber tersebut, banyak orang yang tertarik untuk ikut mengembangkan PHP.PHP merupakan salah satu perantara yang memungkinkan suatu aplikasi berinteraksi dengan database seperti MySQL (Ervan F. Kahani, et al., 2012). Operasi-operasi dasar pada PHPyaitu :
15
1. Membuat koneksi Penjelasan Script: a. mysql_connect Digunakan untuk membuat koneksi dari PHP ke server MySQL.Data mengenai hostname, mysql username, dan password yang digunakan telah diwakilkan
oleh
variable
$hostmysql,
Penulisannya akan sama dengan
$username,
:mysql_
$password.
connect (“localhost
,username”,”password”); b. mysql_select_db Untuk memilih database yang akan digunakan. c. if (!$conn) die (“Koneksi gagal”);j ika koneksi gagal dibuat (!$conn), maka akan muncul pesan kesalahan.
2. Menampilkan data dari table
16
$query = “SELECT * FROM user”; $result = mysql_query($query); $numrows = mysql_num_rows($result); while($row = mysql_fetch_array($result)){ echo “Jumlah data: $numrows
”; echo “Nama Depan: $row[namadpn]
”; echo “Nama Belakang: $row[namablkg]
”; echo “Negara: $row[negara]“;} ?> Penjelasan script: a. mysql_num_rows Digunakan untuk menghitung jumlah baris yang didapat dari hasil eksekusi query (mysql_query). b. while ( ) { } Digunakan untuk melakukan perulangan selama data yang yang diinginkan masih ada. (dalam contoh diatas: akan menampilkan semua isi dari tabel). c. mysql_fetch_array Menampilkan data dari tabel dalam bentuk array.
II.6.
Pengenalan MySQL MySQL adalah salah satu program yang dapat digunakan sebagai
database, dan merupakan salah satu software untuk database server yang banyak
17
digunakan. MySQL bersifat Open Source dan menggunakan SQL. MySQL bisa dijalankan diberbagai flatform misalnya Windows, Linux dan lain sebagainya. MySQL memiliki beberapa kelebihan, antara lain : 1. MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah. 2. MySQL
memiliki
kecepatan
yang
bagus
dalam
menangani
querysederhana. 3. MySQL memiliki operator dan fungsi secara penuh dan mendukung perintah Select dan Wheredalam perintah query. 4. MySQL memiliki keamanan yang bagus karena beberapa lapisan sekuritas seperti level subnetmask,namahost, dan izin akses user dengan sistem perijinan yang mendetail serta sandi terenkripsi. 5. MySQL mampu menangani basis data dalam sekala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu table serta kurang lebih 5 milyar baris. Selain itu batas indeks yang dapat di tamping mencapai 32 indeks pada tiap tabelnya. 6. MySQL dapat melakukan koneksi dengan client menggunakan protocol TCP/IP, Unix socket (UNIX), atau Named Pipes (NT). 7. MySQL dapat mendeteksi pesan kesalahan pada client dengan menggunakan lebih dari dua puluh bahasa. 8. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac OS X Server, Solaris, Amiga, dan masih banyak lagi.
18
9. MySQL didistribusikan secara open source, dibawah lisensi GPL sehingga dapat digunakan secara gratis(Agung M. Leo, 2011 : 140).
II.7.
Xampp XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem
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 ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl (Dedi Yunaedi, et al., 2013).
II.8.
PhpMyAdmin PhpMyAdmin adalah sebuah aplikasi open source yang berfungsi untuk
memudahkan manajemen MySQL.Dengan menggunakan phpmyadmin, anda dapat membuat database, membuat tabel, meng-insert, menghapus dan mengupdate data dengan GUI dan terasa lebih mudah, tanpa perlu mengetikkan perintah SQL secara manual.Karena berbasis web, maka phpmyadmin dapat di jalankan di banyak OS, selama dapat menjalankan webserver dan Mysql (Dedi Yunaedi, et al., 2013).
19
II.9.
Tipe Data Tipe data dalam script PHP akan otomatis dikonversi sesuai dengan
karakternya tanpa harus menggunakan sebuah variable. Berikut ini penjelasan dari beberapa tipe data dalam script PHP, yaitu :
1. Tipe data String Dalam penulisannya, tipe data String menggunakan tanda kutip tunggal (‘ ‘) atau menggunakan tanda kutip ganda (“ “). 2. Tipe data Integer Yang termasuk tipe data integer adalah semua data yang berisikan bilangan bulat dan besarnya range sama dengan data pada bahasa C, yaitu antara -2, 147, 483, 648 sampai +2, 147, 438, 647 pada flatform 32 bit. Apabila data diluar kisaran tersebut maka PHP akan secara otomatis mengkonversikan data tersebut dari tipe integer menjadi tipe Floating Point. 3. Tipe data Floating Point Yaitu
tipe
data
yang
berisi
bilangan
pecahan
atau
bilangan
decimal.Kisaran data floating adalah 1.7E-308 sampai 1.7E+308.Data ini berbentuk decimal atau bentuk pangkat. 4. Tipe data Array Tipe data ini disebut juga data bertingkat, yaitu data yang mengandung beberapa data didalamnya dan di-index atau dibaca berdasarkan data numeric atau string.
20
5. Tipe data Object Tipe data object dapat berupa bilangan, variable ataupun fungsi. Tipe data ini membantu programmer untuk membuat sebuah program.(Agung M. Leo, 2011 :88-89)
II.10. Variabel Variabel adalah tempat menyimpan data. Data yang tersimpan sewaktuwaktu dapat kita panggil atau diganti dengan data lain. Mendefenisikan variabel cukup dengan sebuah kata (akan menjadi nama variabel) yang diawali dengan $, kemudian isikan nilai dari variabel tersebut. Penulisan variabel ada aturannya namun cukup sederhana, yaitu : gunakan kata apa saja yang didahului oleh huruf dan diberi tanda $ didepan kata, tidak menggunakan spasi, tidak diawali dengan angka, dan tidak menggunakan karakter khusus (seperti: *, &, %, 3, dan lain – lain) (Agung M. Leo, 2011 : 88-89).
II.11. Eclipse Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program
Java,
dan
PDE
(Plug-in
Development
Environment)
untuk
21
mengembangkan plus-in baru. Eclipse beserta plus-in baru. Eclipse beserta plus-in nya diimplementasikan dalam bahasa pemograman Java. Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan menginstal plus-in yang dibutuhkan.(Wicaksono, 2013 : 2)
II.12. Android Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware, dan aplikasi. Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang untuk membuat aplikasi mereka sendiri. Pada awalnya dikembangkan oleh Android Inc, sebuah perusahaan pendatang baru yang membuat perangkat lunak untuk ponsel yang kemudian dibeli oleh Google
Inc.
Untuk
pengembangannya,
dibentuklah
Open
Handset
Alliance(OHA), konsorsium dari 34 perusahaan perangkat keras, perangkat lunak, dan telekomunikasi termasuk Google, HTC, Intel, Motorola, Qualcomm, TMobile, dan Nvidia. (Ichwan dan Fifin, 2011)
22
II.13. Macromedia Dreamweaver Dreamweaver adalah sebuah HTML editor profesional untuk mendesain web secara visual dan mengelolah situs atau halaman web. Dreamweaver merupakan software utama yang digunakan oleh web Desainer maupun web programmer dalam pengembangan suatu situs web, karena Dreamweaver mempunyai ruang kerja, fasilitas dan kemampuan yang mampu meningkatkan produktifitas dan efektifitas dalam desain maupun membangun suatu situs web.(Agung M. Leo ; 2011 : 13) Adobe Dreamwaver CS6 adalah versi terbaru dari adobe Dreamweaver yang merupakan bagian dari Adobe Create Suite 6.Adobe Dreamweaver sendiri merupakan aplikasi yang digunakan sebagai HTML editor professional untuk mendesain web secara visual. Aplikasi ini juga biasa dikenal dengan istilah WYSIWYG (What You See Is What You Get), yang intinya adalah anda tidak harus berurusan dengan tag – tag HTML untuk membuat sebuah site dan dapat melihat hasil desainnya secara langsung (Agung Leo ; 2013 : 1). Dengan keamampuan fasilitas yang optimal dalam jendela Design akan memberikan kemudahan untuk mendesain web meskipun untuk para web designer pemula sekalipun. Kemampuan Adobe Dreamweaver untuk berinteraksi dengan beberapa bahasa pemrograman seperti PHP, ASP, Javascript, dan yang lainnya juga memberikan fasilitas maksimal kepada desainer web dengan menyertakan bahasa pemrograman di dalamnya (Agung Leo ; 2013 : 2).
23
II.14. UML(Unified Modelling Language) Penjadwalan telah lama diteliti, contohnya dalam penghasilan tenaga oleh Windu Gata dan Grace Gata (2013), UML (Unified Modelling Language) adalah bahasa spesifikasi standar yang dipergunakan untuk mendokumentasikan, menspesifikasikan dan membangun perangkat lunak. UML (Unified Modelling Language) merupakan metodologi dalam mengembangkan sistem berorientasi objek dan juga merupakan alat untuk mendukung pengembangan sistem.
II.14.1. UseCase Diagram UseCase Diagram merupakan pemodelan untuk kelakuan (behavior) sistem informasi yang akan dibuat. Mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Dapat dikatakan usecase digunakan untuk mengetahui fungsi apa saja yang ada di dalam sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut. Simbol-simbol yang digunakan dalam UseCase Diagram, yaitu:
24
Tabel II.1.UseCase Diagram Gambar
Keterangan UseCase
menggambarkan
fungsionalitas
yang
disediakan sistem sebagai unit-unit yang bertukar pesan antar unit dengan aktor, biasanya dinyatakan dengan menggunakan kata kerja diawal nama UseCase. Actor atau Aktor adalah abstraction dari orang atau sistem yang lain yang mengaktifkan fungsi dari target sistem. Untuk mengidentifikasikan aktor, harus ditentukan pembagian tenaga kerja dan tugastugas yang berkaitan dengan peran pada konteks target sistem. Orang atau sistem bisa muncul dalam beberapa
peran.
Perlu
dicatat
bahwa
aktor
berinteraksi dengan usecase, tetapi tidak memiliki kontrol terhadap usecase. Asosiasi antara aktor dan usecase, digambarkan dengan garis tanpa panah yang mengindikasikan siapa atau apa yang meminta interaksi secara langsung dan bukannya mengindikasikan aliran data. Asosiasi
antara
menggunakan
aktor panah
dan
usecase
terbuka
yang untuk
mengindikasikan bila aktor berinteraksi secara pasif dengan sistem. (Sumber : Windu Gata, 2013)
25
II.14.2. Diagram Kelas (Class Diagram) Class Diagram merupakan hubungan antar kelas dan penjelasan detail tiap-tiap kelas di dalam model desain dari suatu sistem, juga memperlihatkan aturan-aturan dan tanggung jawab entitas yang menentukan perilaku sistem. Class Diagram juga menunjukkan atribut-atribut dan operasi-operasi dari sebuah kelas dan constraint yang berhubungan dengan objek yang dikoneksikan.
II.14.3. Diagram Kelas (Class Diagram) Activity Diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Simbol-simbol yang digunakan dalam activity diagram, yaitu: Tabel II.2.Activity Diagram Gambar
Keterangan Start Point diletakkan pada pojok kiri atas dan merupakan awal aktifitas. End Point, akhir aktifitas.
Activities, menggambarkan suatu proses/kegiatan bisnis. Fork
(percabangan),
digunakan
untuk
menunjukkan kegiatan yang dilakukan secara paralel atau untuk menggabungkan dua kegiatan paralel menjadi satu.
26
Join (penggabungan) atau Rake, digunakan untuk menunjukkan adanya dekomposisi.
Decision Points, menggambarkan pilihan untuk pengambilan keputusan, true atau false.
(Sumber : Windu Gata, 2013)
II.14.4. Diagram Urutan (Sequence Diagram) Sequence Diagram menggambarkan kelakuan objek pada usecase dengan mendekripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar objek. Simbol-simbol yang digunakan dalam sequence diagram, yaitu: Tabel II.3.Sequence Diagram Gambar
Keterangan Entity Class, merupakan bagian dari 26ymbol yang berisi kumpulan kelas berupa entitas-entitas yang membentuk gambaran awal 26ymbol dan menjadi landasan untuk menyusun basis data. Boundary Class, berisi kumpulan kelas yang menjadi interface atau interaksi antara satu atau lebih 26ymbo dengan 26ymbol, seperti tampilan formentry dan form cetak. Control Class, suatu objek yang berisi logika aplikasi yang tidak memiliki tanggung jawab kepada entitas, contohnya adalah kalkulasi dan aturan bisnis yang melibatkan berbagai objek. Control
object
mengkoordinir
pesan
antara
27
boundary dengan entitas. Message, 27ymbol mengirim pesan antar class.
Recursive, menggambarkan pengiriman pesan yang dikirim untuk dirinya sendiri.
Activation, mewakili sebuah eksekusi operasi dari objek, panjang kotak ini berbanding lurus dengan durasi aktivitas sebuah operasi.
Lifeline, garis titik-titik yang terhubung dengan objek, sepanjang lifeline terdapat activation. (Sumber : Windu Gata, 2013)