landasan teori

advertisement
BAB II
LANDASAN TEORI
2.1 Absensi
Absensi adalah pola kebiasaan ketidakhadiran dari tugas atau kewajiban.
Secara tradisional, ketidakhadiran telah dilihat sebagai indikator kinerja individu
yang malas, serta pelanggaran kontrak implisit antara karyawan dan majikan,
melainkan dilihat sebagai masalah manajemen, dan dibingkai dalam hal ekonomi
atau kuasi-ekonomi. Absensi dalam ketidakhadiran sebagai indikator psikologis,
penyesuaian medis, atau sosial untuk bekerja.
Sering tidak adanya dari tempat kerja merupakan perilaku yang menunjukkan
moral yang buruk atau sindrom malas masuk. Namun, ada beberapa perusahaan
yang menerapkan kebijakan yaitu memberikan kelonggaran bagi karyawan yang
melakukan absensi dikarenakan mengidap penyakit tertentu atau izin tertentu.
Namun ada juga perusahaan yang tidak mengizinkan karena karyawan mengidap
penyakit yang ringan dan akibatnya, banyak karyawan merasa wajib masuk kerja
saat sakit, dan menularkan penyakit menular ke rekan kerja mereka. Hal ini
menyebabkan ketidakhadiran yang lebih besar dan penurunan produktivitas antara
pekerja lain yang mencoba untuk bekerja saat sakit.
Kebanyakan karyawan memberikan alasan ketidakhadiran disebabkan oleh
alasan medis dan membuat surat keterangan dokter atau bentuk lain dokumentasi
untuk meyakinkan perusahaan dan biasanya dengan menelpon ke perusahaan agar
menunjukkan itikad baik.
Penyebab-penyebab karyawan melakukan absensi:
8
9
1. Menurut Nelson (2008) Orang yang sering melakukan absensi dikarenakan
ia tidak puas dengan pekerjaan sehingga mereka sering melakukan
absensi.
2. Model psikologis yang membahas ini adalah “penarikan model”,
menganggap ketidakhadiran disebabkan oleh kondisi kerja yang tidak
memuaskan.
3. Konflik antar pegawai yang terjadi di tempat kerja
4. Bentuk protes karyawan terhadap gaji yang tidak sesuai atau tidak adanya
hal-hal yang memotivasi
5. Tingkat stress yang tinggi.
6. Lingkungan kerja yang sebagian besar mempengaruhi individu
7. Kesehatan pegawai
8. Kemampuan fisik pegawai
2.2 Aplikasi
2.2.1 Pengertian Aplikasi
Perangkat lunak aplikasi adalah suatu sub kelas perangkat lunak komputer
yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas
yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak
sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara
langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang
menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah
pengolah kata, lembar kerja, dan pemutar media.
10
2.2.2 Klasifikasi Aplikasi
Aplikasi dapat digolongkan menjadi beberapa kelas, antara lain:
1. Perangkat lunak bantu perusahaan (enterprise).
2. Perangkat lunak bantu infrastruktur perusahaan.
3. Perangkat lunak bantu informasi kerja.
4. Perangkat lunak bantu media dan hiburan.
5. Perangkat lunak bantu pendidikan.
6. Perangkat lunak bantu pengembangan media.
7. Perangkat lunak bantu rekayasa produk.
2.2.3 Rekayasa Perangkat Lunak
2.2.3.1 Pengertian Perangkat Lunak
Dalam buku karangan Roger S. Pressman (2005, p53), pengertian awal
dari rekayasa perangkat lunak (software engineering) diajukan oleh Firtz Bauer.
Definisi rekayasa perangkat lunak menurut Firtz Bauer adalah pembentukkan dan
penggunaan prinsip-prinsip rekayasa dalam rangka mendapatkan perangkat lunak
yang ekonomis, yaitu perangkat lunak yang dapat diandalkan dan bekerja secara
efisien pada mesin yang nyata.
Institute of electrical electronics engineers (IEEE) menyatakan definisi
yang lebih komperhensif mengenai rekayasa perangkat lunak:
1. Aplikasi
yang
sistematis,
disiplin,
teratur
terhadap
pengembangan,
pengoperasian dan pemeliharaan perangkat lunak.
2. Studi terhadap pendekatan-pendekatan seperti pada butir pertama.
11
2.2.3.2 Proses-Proses Rekayasa Perangkat Lunak
Dalam buku karangan Roger S. Pressman (2005, p55), Ivan Jacobson,
Grady Booch dan James Rumbaugh menyatakan bahwa sebuah proses dalam
rekayasa perangkat lunak menyatakan siapa yang melakukan apa, kapan dan
bagaimana mencapai tujuan yang pasti.
Sementara itu Roger S. Pressman (2005, p56) juga memberikan lima
aktivitas kerangka kerja umum yang biasanya digunakan selama pembangunan
suatu program. Kelima aktivitas kerangka kerja itu diantaranya:
1. Komunikasi (Communication)
Aktivitas kerangka kerja yang melibatkan komunikasi dan kolaborasi dengan
pengguna (customers) dan meliputi pengumpulan kebutuhan dan aktivitas
yang berhubungan lainnya.
2. Perencanaan (Planning)
Aktivitas ini membangun sebuah rencana yang harus di ikuti oleh
perekayasaan perangkat lunak. Aktivitas ini berisikan tugas-tugas teknis yang
dikerjakan, resiko yang mungkin terjadi, sumber daya yang dibutuhkan,
produksi yang akan dihasilkan dan perencanaan kerja.
3. Pemodelan (Modeling)
Aktivitas ini meliputi penciptaan model-model yang diinginkan oleh
developer dan customer.
12
4. Pembangunan (Construction)
Aktivitas yang mengkombinasikan generasi kode (code generation) dan
testing kebutuhan untuk membongkar kode.
5. Penyebaran (Deployment)
Perangkat lunak di kirimkan kepada customers yang akan mengevaluasi
produk.
2.2.4 Metode Pengembangan Perangkat Lunak
Pada pembuatan perangkat lunak ini dikembangkan dengan menggunakan
metode pengembangan prototype. Prototype (Hanif Al Fatta, 2007:36) adalah
proses iterative dalam pengembangan sistem yang bekerja (working system) yang
secara terus menerus diperbaiki melalui beberapa tool pengembangan untuk
menyederhanakan proses,
Prototype merupakan bentuk dari Rapid Application
Development (RAD). RAD memiliki beberapa kelemahan, di antaranya:
a. RAD mungkin mengesampingkan prinsip-prinsip rekayasa perangkat lunak.
b. Menghasilkan inkonsistensi pada modul-modul sistem.
c. Tidak cocok dengan standar.
d. Kekurangan prinsip reusability komponen.
13
Metode prototype dapat digambarkan pada Gambar 2.1 berikut:
Gambar 2.1 Metode prototype
Metodologi Prototype
1. Analis bekerja dengan tim untuk mengidentifikasi kebutuhan awal untuk
sistem.
2. Analis kemudian membangun prototype. Ketika sebuah prototype telah
selesai. Pengguna bekerja dengan prototype itu dan menyampaikan pada
analis apa yang mereka sukai dan yang tidak mereka sukai.
3. Analis kemudian menggunakan feedback ini untuk memperbaiki prototype.
4. Versi baru diberikan kembali ke pengguna.
5. Ulangi langka-langkah tersebut sampai pengguna merasa puas.
Keuntungan Prototype
1. Prototype melibatkan pengguna dalam analisis dan desain.
14
2. Punya kemampuan menangkap kebutuhan secara konkrit daripada secara
abstrak.
3. Untuk digunakan secara standalone.
4. Digunakan untuk memperluas SDLC.
2.3 Bahasa Pemrograman
2.3.1 HTML (Hyper Text Markup Language)
HTML dikenal sebagai standar bahasa yang digunakan untuk menampilkan
dokumen web. Yang bisa dilakukan dengan HTML yaitu:
1. Mengontrol tampilan dari web page dan content-nya.
2. Mempublikasikan dokumen secara online sehingga bisa di akses dari seluruh
dunia.
3. Membuat online form yang bisa digunakan untuk menangani pendaftaran dan
transaksi secara online.
4. Menambahkan obyek-obyek seperti image, audio, video dan java applet
dalam dokumen HTML.
Perintah dalam HTML biasanya disebut TAG. TAG yang digunakan
menentukan tampilan dari dokumen HTML. Setiap dokumen HTML diawali dan
diakhiri dengan tag HTML.
<html>
….
</html>
15
Tag tidak case sensitive, jadi baik huruf kapital maupun kecil dianggap
sama. (Eko Prasetyo, 2008:3)
2.3.2 PHP
PHP (atau resminya PHP: Hypertext Preprosessor) adalah script bersifat
server-side yang ditambahkan ke dalam HTML. PHP sendiri merupakan singkatan
dari Personal Home Page Tools. Script ini akan membuat suatu aplikasi dapat
diintegrasikan ke dalam HTML sehingga suatu halaman web tidak lagi bersifat
statis, namun menjadi dinamis. Sifat server-side berarti pengerjaan script
dilakukan di server, baru kemudian hasilnya dikirimkan ke browser. (Eko
Prasetyo, 2008:19)
PHP adalah akronim dari Hypertext Preprocessor, yaitu suatu bahasa
pemrograman berbasiskan kode-kode (script) yang digunakan untuk mengolah
suatu data dan mengirimkannya kembali ke web browser menjadi kode HTML.
(Diar Puji Oktavian, 2010:31).
Kode PHP mempunyai ciri-ciri khusus, yaitu:
1. Hanya dapat dijalankan menggunakan web server, missal: Apache.
2. Kode PHP diletakkan dan dijalankan di web server.
3. Kode PHP dapat digunakan untuk mengakses database, seperti: MySQL,
PostgreSQL, Oracle dan lain-lain.
4. Merupakan software yang bersifat open source.
16
5. Gratis untuk di-donwload dan digunakan.
6. Memiliki sifat multiplatform, artinya dapat dijalankan menggunakan sistem
operasi apapun, seperti: Linux, Unix, Windows dan lain-lain.
Dengan menggunakan PHP, selain memberikan keuntungan seperti pada
beberapa poin di atas, juga didukung oleh banyak komunitas. Hal ini yang
membuat PHP terus berkembang. Selain itu, dapat belajar lebih banyak lagi
tentang tips dan trik penggunaannya dari berbagai komunitas, lembaga
pendidikan, ataupun melalui media internet. (Eko Prasetyo, 2008:3).
Cara penulisan script PHP ada 2 (dua) macam:
1. Embedded Script
Cara ini meletakkan tag PHP di antara tag-tag HTML
<html>
<body>
<?php echo “hello world”;
?>
</body>
</html>
2. Non Embedded Script
Pada cara ini semua script html diletakkan di dalam script PHP
<?php
echo “<html>”;
echo “<body>”;
17
echo “hello world”;
echo “</body>”;
echo “</html>”;
?>
2.3.3
CSS
Cascading Style Sheets (CSS) adalah suatu bahasa stylesheet yang
digunakan untuk mengatur style suatu dokumen. Pada umumnya CSS dipakai
untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan
XHTML.
CSS memungkinkan web developer untuk memisahkan HTML dari
aturan-aturan untuk membentuk tampilan sebuah website. Namun terkadang,
banyak orang yang baru belajar HTML menganggap remeh kekuatan dan
fleksibiltas dari sebuah css.
CSS diperkenalkan untuk pengembangan website pada tahun 1996. Nama
CSS didapat dari fakta bahwa setiap deklarasi style yang berbeda dapat diletakkan
secara berurutan, yang kemudian akan membentuk hubungan parent-child pada
setiap style.
CSS adalah sebuah dokumen yang berdiri sendiri dan dapat dimasukkan
dalam kode HTML atau sekedar menjadi rujukan oleh HTML dalam
pendefinisian style. CSS menggunakan kode-kode yang tersusun untuk
menetapkan style pada elemen HTML atau dapat juga digunakan tuntuk membuat
style baru yang biasa disebut class.
18
Sintaks (perintah) yang dipakai dalam CSS dibagi menjadi tiga bagian
yaitu, selector, property dan value. Untuk lebih jelasnya perhatikan contoh di
bawah ini:
Selector {property: values}
Dalam kode di bawah ini, elemen h1 dan elemen p memiliki
class=“center”. Ini berarti kedua elemen akan mengikuti aturan yang adal dalam
“.center” selector:
<h1 class=”center”>
This heading will be center-aligned
</h1>
<p class=”center”>
This paragraph will also be center-aligned.
</p>
Catatan: Jangan memulai sebuah nama class dengan angka, karena aturan
tidak akan bekerja dalam browser Mozilla/Firefox.
Kita dapat juga menentukan style untuk elemen HTML dengan id selector.
Id selector selalu diawali dengan tanga (#). Aturan style di bawah ini akan
menunjukkan elemen yang memiliki sebuah atribut id dengan nilai ”green”:
#green {color: green}
Aturan style di bawah ini akan menunjukkan elemen p yang memiliki
sebuah id dengan value dari “paral”:
19
p#paral
{
text-align: center:
Color:red
}
Catatan: Jangan memulai sebuah nama ID dengan angka, karena aturan
tidak akan bekerja dalam browser Mozilla/Firefox.
Sebuah external style sheet sangat cocok bila digunakan untuk memformat
style pada keseluruhan halaman website. Dengan sebuah external style sheet kita
bisa mengubah style halaman pada keseluruhan website hanya dengan mengubah
satu file style sheet yang di-link ke dokumen itu saja. Untuk membuat link dengan
external style sheet bisa dipakai tag <link> yang terletak di antara bagian tag
<head>:
<head>
<link rel=”stylesheet” type=”text/css” href=”mystle.css” />
</head>
Browser akan membaca definisi style dari file mystyle.css.
Untuk membuat external style sheet dapat ditulis dengan beberapa text
editor. Dengan catatan, seharusnya file tidak mengandung tag-tag HTML dan
disimpan dengan ekstensi .css sehingga file-file external style sheet nantinya akan
memiliki nama seperti mystyle.css, seperti yang diperlihatkan pada contoh di
bawah ini:
20
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url(“images/contoh.gif”)}
Sebuah
internal
style sheet
seharusnya digunakan ketika ingin
menambahkan style yang berbeda pada salah satu atau beberapa dokumen. Untuk
menyisipkan internal style sheet menggunakkan tag <style> yang diletakkan pada
bagian tag <head> seperti pada contoh dibawah ini:
<head>
<style type=”text/css”>
hr {color: sienna}
p {margin-left: 20px}
body {background-image: url(“images/contoh.gif”)}
</style>
</head>
Sekarang browser akan membaca sebuah internal style sheet elemen dan
akan memformat dokumen yang bersangkutan dengan meng-overwrite perintahperintah yang sama dalam file external style sheet-nya.
Catatan: Sebuah browser pada umumnya akan mengabaikan tag yang tak
dikenalnya. Ini terjadi pada browser versi lama yang tidak support dengan styles,
maka browser akan mengabaikan tag <style>.
Sebuah inline style sheet biasanya digunakan ketika ingin menambahkan
style yang berbeda pada salah satu atau beberapa elemen dari satu atau beberapa
dokumen dalam website. Untuk menyisipkan inline style sheet dapat langsung kita
21
sisipkan pada elemen yang ingin di ubah, seperti pada contoh di bawah ini yang
akan mengubah warna dan left margin dari sebuah paragraph:
<p style=”color: sienna; margin-left: 20px”>
This is a paragraph
</p>
(Rahmad Saleh, Sulistyawan, Rubianto, 2008:32)
2.3.4 JavaScript
JavaScript (Andi Sunyoto, M. Kom Amikom Yogyakarta, 2007:17) adalah
bahasa scripting yang popular di internet dan dapat di sebagian besar browser
popular seperti Internet Explorer (IE), Firefox, Netscape dan Opera. Kode
JavaScript dapat disisipkan halaman web menggunakan tag script.
Beberapa hal tentang JavaScipt:
1. JavaScript didesain untuk menambah interaktif suatu web.
2. JavaScript merupakan sebuah bahasa scripting.
3. Bahasa scripting merupakan bahasa pemrograman yang ringan.
4. JavaScript berisi baris kode yang dijalankan di computer (web browser).
5. JavaScript biasanya disisipkan (embedded) dalam halaman HTML.
6. JavaScript adalah bahasa interpreter (yang berarti skrip dieksekusi tanpa
proses kompilasi).
7. Setiap orang dapat menggunakan JavaScript tanpa membayar lisensi.
22
Contoh skrip JavaScript dapat dlihat pada contoh di bawah ini:
Hello/js.html
<html>
<!--- hello/js.html --->
<head>
<title>JavaScript</title>
</head>
<body>
<script type=”text/javascript”>
document.write(“Hello World”);
document.write(“<p>
“<i>anda</i>?</p>”);
Apa
Kabar
<br
/>”
+
</script>
<p>Demo output untuk menampilkan teks. </p>
</body>
</html>
2.4 Unified Modeling Language (UML)
Unified Modeling Language (UML) adalah bahasa pemodelan untuk
sistem atau perangkat lunak yang berparadigma berorientasi objek. Pemodelan
(modeling) sesungguhnya digunakan untuk penyederhanaan permasalahanpermasalahan yang kompleks sedemikian rupa sehingga lebih mudah dipelajari
dan dipahami. (Adi Nugroho, 2010: 6).
2.4.1
Use Case Diagram
Diagram
use
case
merupakan
suatu
sarana
untuk
melakukan
pengorganisasian spesifikasi kebutuhan pengguna dengan cara yang mudah untuk
23
dikelola dan dimengerti (oleh para pengguna). Para pengguna dan pengembang
sistem/perangkat lunak dapat memahaminya dengan mudah dan menggunakannya
untuk saling berkomunikasi tentang fungsionalitas sistem/perangkat lunak yang
akan dikembangkan serta kemudian membuat kesepakatan-kesepakatan tentang
spesifikasi
sistem/perangkat
lunak
yang akan
dikembangkan
itu.
Para
pengembang selanjutnya bisa melakukan pembagian kerja atas tim pengembang
yang dikelolanya dan kemudian mengimplementasikannya berdasarkan urutan
aksi (baca: skenario) yang ada pada suatu use case. Analis sistem pada dasarnya
menggunakan diagram-diagram use case sebagai basis untuk melakukan analisis,
perancangan, pengimplementasian serta pengujian sistem/perangkat lunak. (Adi
Nugroho 2010: 93).
Dalam konteks UML, tahap konseptualisasi dilakukan dengan pembuatan
use case diagram yang sesungguhnya merupakan deskripsi peringkat tinggi
bagaimana perangkat lunak (aplikasi) akan digunakan oleh penggunanya.
Selanjutnya, use case diagram tidak hanya sangat penting pada tahap analisis,
tetapi juga sangat penting untuk perancangan (design), untuk mencari (mencoba
menemukan) kelas-kelas yang terlibat dalam aplikasi dan untuk melakukan
pengujian (testing). Membuat use case diagram yang komprehensif merupakan
hal yang sangat penting dilakukan pada tahap analisis. Dengan menggunakan use
case diagram, kita akan mendapatkan banyak informasi yang sangat penting
berkaitan dengan aturan-aturan bisnis yang coba kita tangkap. (Adi Nugroho,
2009: 7).
24
Tabel 2.1 Relasi-relasi dalam use case
Relasi
Asosiasi
(association)
Extend
Fungsi
Lintasan
Notasi
komunikasi
antara actor dengan use
case
Penambahan perilaku ke
--------------------
suatu use case dasar
Generalisasi Use Case
Menggambarkan hubungan
antara
use
case
yang
bersifat umum dan khusus
Include
Penambahan perilaku ke
suatu use case dasar yang
secara
eksplisit
mendeskripsikan
penambahan tersebut
--------------------
25
System
pembukaan rekening
<<include>>
penabungan
<<include>>
<<include>>
<<include>>
penarikan
Nasabah
transfer antar rekening
penutupan rekening
Gambar 2.2 Use Case Diagram
2.4.2 Activity Diagram
Activity diagram menurut adalah tekink untuk menggambarkan logika
prosedural, proses bisnis dan jalur kerja. Dalam beberapa hal, activity diagram
memainkan peran mirip dengan diagram alir, tetapi perbedaan prinsip antara
notasi diagram alir adalah activity diagram mendukung behavior parallel. Node
pada sebuah activity diagram disebut sebagai action, sehingga diagram tersebut
menampilkan sebuah activity yang tersusun dari action. (Martin Fowler, 2005:
163).
2.4.3 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di
sekitar sistem (termasuk pengguna, display dan sebagainya) berupa pesan yang
digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal
26
(waktu)
dan
dimensi
horizontal
(objek-objek
yang
terkait).
(http://elib.unikom.ac.id/download.php?id=6686, diunduh 04 Desember 2014).
2.4.4 Class Diagram
Di dalam buku Step by Step Desain Proyek Menggunakan UML karangan di
dalamnya ada beberapa penjelasan tentang class diagram oleh John Satzinger,
2010, dalam buku System and Design in a Changing World menyatakan bahwa
“dalam UML, ada dua jenis class diagram, yaitu domain class diagram dan
design class diagram”.
2.4.4.1 Domain Class Diagram
Menurut Satzinger: “Fokus domain class diagram adalah pada sesuatu
dalam lingkungan kerja pengguna, bukan pada class perangkat lunak yang
nantinya akan anda rancang”.
Biodata
+NIM
+Nama
+AlamatOrangTua
+JumlahKakak
+NoTelepon
+Jurusan
+Agama
+NamaAyah
+Status
+NoHandPhone
+JumlahAdik
+NamaIbu
+Tempat/TglLahir
Gambar 2.3 Notasi Domain Class Diagram
2.4.4.2 Design Class Diagram
27
Tujuan utamanya adalah untuk mendokumentasikan dan menggambarkan
kelas-kelas dalam pemrograman yang nantinya akan dibangun. Design class
diagram menggambarkan kelas berorientasi objek yang dibutuhkan dalam
pemrograman, navigasi di antara kelas, attribute names dan propertinya, serta
method names dan propertinya. Gambar dibawah ini menunjukkan domain class
diagram yang dikembangkan pada tahap analisis dan versi design class diagramnya. Versi design class diagram memiliki sebuah kompartemen baru di bagian
bawah yang menentukan method signatures. Atribut-atribut yang ada juga
ditingkatkan.
(Evi
Triandini
dan
I
Gede
Suardika
2012:
14).
Biodata
+NIM: String
+Nama: String
+AlamatOrangTua: String
+JumlahKakak: Integer
+NoTelepon: String
+Jurusan: String
+Agama: String
+NamaAyah: String
+Status: String
+NoHandPhone: String
+JumlahAdik: Integer
+NamaIbu: String
+Tempat/TglLahir: String
+GetBiodata(NIM)
Gambar 2.4 Design class diagram
2.5 Basis Data
2.5.1 Pengertian Basis Data dan DBMS
Basis data (databases) adalah suatu pengorganisasian sekumpulan data yang
saling terkait sehingga memudahkan aktivitas untuk memperoleh informasi. Basis
data dimaksudkan untuk mengatasi masalah pada sistem yang memakai
pendekatan berbasis berkas.
28
Untuk mengelola basis data diperlukam perangkat yang disebut DBMS.
DBMS adalah perangkat lunak sistem yang memungkinkan para pemakai
membuat, memelihara, mengontrol dan mengakses basis data dengan cara yang
praktis dan efisien. DBMS dapat digunakan untuk mengakomodasi berbagai
macam pemakai yang memiliki kebutuhan akses yang berbeda-beda. (Abdul
Kadir, 2002:254).
Berikut ini adalah beberapa pengertian tentang DBMS menurut para ahli.
a. Menurut C. J. Date
DBMS adalah merupakan software yang menghandel seluruh akses
pada database untuk melayani kebutuhan user.
b. Menurut S, Attre
DBMS adalah software, hardware, firmware dan prosedur prosedur
yang mengelola database. Firmware adalah software yang telah
menjadi modul yang tertanam pada hardware (ROM).
c. Menurut Gordon C. Everest
DBMS adalah manajemen yang efektif untuk mengorganisasi sumber
daya data.
Umumnya DBMS menyediakan fitur-fitur sebagai berikut:
1. Indepedensi data-program
Karena basis data ditangani oleh DBMS, program dapat ditulis
sehingga tidak bergantung pada struktur data dalam basis data.
29
Dengan kata lain, program tidak akan terpengaruh sekiranya bentuk
fisik data diubah.
2. Kemanan
Kemanan dimaksudkan untuk mencegah pengaksesan data oleh
orang yang tidak berwewenang.
3. Integritas
Hal ini ditujukan untuk menjaga agar data selalu dalam keadaan
yang valid dan konsisten.
4. Konkurensi
Konkurensi memungkinkan data dapat diakses oleh banyak pemakai
tanpa menimbulkan masalah.
5. Pemulihan (recovery)
DBMS menyediakan mekanisme untuk mengembalikan basis data ke
keadaan semula yang konsisten sekiranya terjadi gangguan perangkat
keras atau kegagalan perangkat lunak.
6. Katalog Sistem
Katalog sistem adalah deskripsi tentang data yang terkandung dalam
basis data yang dapat diakses oleh pemakai.
7. Perangkat Produktivitas
Untuk menyediakan kemudahan bagi pemakai dan meningkatkan
produktivitas. DBMS menyediakan sejumlah perangkat produktivitas
seperti pembangkit query dan laporan.
Komponen-komponen yang menyusun lingkungan DBMS terdiri atas:
30
1. Perangkat Keras
Perangkat keras digunakan untuk menjalankan DBMS beserta
aplikasi-aplikasinya.
Perangkat
keras
berupa
komputer
dan
peripheral pendukungnya.
2. Perangkat Lunak
Komponen perangkat lunak mencakup DBMS itu sendiri, program
aplikasi, serta perangkat lunak pendukung untuk komputer dan
jaringan. Program aplikasi dapat dibangun dengan menggunakan
bahasa pemrograman seperti C++, Pascal, Delphi atau Visual
BASIC.
3. Data
Bagi sisi pemakai, komponen terpenting dalam DBMS adalah data
karena dari data inilah pemakai dapat memperoleh informasi yang
sesuai dengan kebutuhan masing-masing.
4. Prosedur
Prosedur adalah petunjuk tertulis yang berisi cara merancang hingga
menggunakan basis data. Dalam hal ini, prosedur terdiri dari cara
masuk ke DBMS (login), cara memakai fasilitas-fasilitas tertentu
dalam DBMS maupun menggunakan aplikasi, cara mengaktifkan
dan menghentikan DBMS dan cara membuat cadangan basis data
dan cara mengembalikan cadangan ke DBMS.
5. Orang
31
Komponen orang dapat dibagi menjadi 3 (tiga) kelompok yaitu,
pemakai akhir (end user), pemrogram aplikasi dan administrator
basis data.
2.5.2 Bahasa Basis Data
DBMS memiliki dua macam bahasa yang digunakan untuk mengelola dan
mengorganisasikan data yaitu bahasa definisi data (Data Definition Language
atau DDL) dan bahasa manipulasi data (Data Manipulation Language atau DML).
(Abdul Kadir, 2002:265).
2.5.2.1 Bahasa Definisi Data (DDL)
DDL (Data Definition Language) adalah perintah-perintah yang biasa
digunakan oleh administrator data untuk mendefinisikan skema basis data dan
juga sub skema. Hasil kompilasi dari pernyataan-pernyataan DDL disimpan dalam
berkas-berkas spesial yang disebut katalog sistem.
Pernyataan SQL seperti create table dan drop table merupakan contoh
perintah yang termasuk dalam kategori DDL.
2.5.2.2 Bahasa Manipulasi Data (DML)
DML (Data Manipulation Language) adalah perintah-perintah yang
digunakan untuk melakukan hal-hal sebagai berikut:
1. Mengambil data pada basis data.
2. Menambahkan data pada basis data.
3. Mengubah data pada basis data.
4. Menghapus data pada basis data.
32
DML dapat dibagi menjadi dua kelompok, yaitu procedural dan nonprocedural.
1. DML prosedural adalah perintah-perintah yang memungkinkan pemakai
menetukan
data
apa
saja
yang
diperlukan
dan
bagaimana
cara
mendapatkannya.
2. DML non-prosedural adalah perintah-perintah yang memungkinkan pemakai
menentukan data apa saja yang diperlukan, tanpa menyebutkan cara
mendapatkannya.
2.6 Pengujian
Kasus pengujian menspesifikasi salah satu cara untuk melakukan pengujian
sistem/perangkat lunak, mencakup didalamnya menspesifikasi asupan serta
hasilnya dan dalam kondisi bagaimana pengujian dilakukan.
Pada praktiknya, apa yang akan diuji dapat saja merupakan satu atau lebih
spesifikasi kebutuhan sistem/perangkat lunak yang mungkin untuk dilakukan
pengujian serta biayanya tidak terlalu tinggi. Berikut ini kasus-kasus pengujian
yang paling umum.
2.6.1 Black-box Testing
Black-box testing adalah kasus pengujian yang menspesifikasi bagaimana
melakukan pengujian suatu use case atau suatu skenario yang bersifat spesifik.
Beberapa kasus pengujian memverifikasi hasil dari interaksi yang terjadi diantara
actor dengan sistem/perangkat lunak yang dikembangkan, yaitu memverifikasi
apakah kondisi awal (pre-condition) dan kondisi akhir (post-condition) yang
33
dispesifikasi oleh use case terpenuhi, serta juga memverifikasi apakah urutan
aksi-aksi (baca: flow-of-events) yang dispesifikasi oleh use case memang diikuti
(Adi Nugroho 2010:304).
2.6.2 White-box Testing
White-box testing adalah kasus pengujian yang menspesifikasi bagaimana
melakukan pengujian realisasi use case perancangan atau melakukan pengujian
pada suatu skenario realisasi yang bersifat spesifik. Kasus pengujian di sini
mencakup
di
dalamnya
verifikasi
interaksi
antarkomponen
yang
mengimplementasikan suatu use case tertentu (Adi Nugroho 2010:304).
2.7 Perangkat Lunak Pendukung
Adapun perangkat lunak pendukung dalam pengembangan sistem ini sebagai
berikut:
2.7.1 XAMPP
2.7.1.1 Sejarah dan Pengembang
XAMPP dikembangkan dari sebuah tim proyek bernama Apache Friends,
yang terdiri dari Tim Inti (Core Team), Tim Pengembang (Development Team) &
Tim Dukungan (Support Team). Asal kata dari XAMPP yaitu:
XAMPP adalah singkatan yang masing-masing hurufnya adalah:
X: Program ini dapat dijalankan dibanyak sistem operasi, seperti Windows, Linux,
Mac OS, dan Solaris.
34
A: Apache, merupakan aplikasi web server. Tugas utama Apache adalah
menghasilkan halaman web yang benar kepada user berdasarkan kode PHP yang
dituliskan oleh pembuat halaman web. jika diperlukan juga berdasarkan kode PHP
yang dituliskan,maka dapat saja suatu database diakses terlebih dahulu (misalnya
dalam MySQL) untuk mendukung halaman web yang dihasilkan.
M: MySQL, merupakan aplikasi database server. Perkembangannya disebut SQL
yang merupakan kepanjangan dari Structured Query Language. SQL merupakan
bahasa terstruktur yang digunakan untuk mengolah database. MySQL dapat
digunakan untuk membuat dan mengelola database beserta isinya. Kita dapat
memanfaatkan MySQL untuk menambahkan, mengubah, dan menghapus data
yang berada dalam database.
P: PHP, bahasa pemrograman web. Bahasa pemrograman PHP merupakan bahasa
pemrograman untuk membuat web yang bersifat server-side scripting. PHP
memungkinkan kita untuk membuat halaman web yang bersifat dinamis. Sistem
manajemen basis data yang sering digunakan bersama PHP adalah MySQl. namun
PHP juga mendukung sistem manajement database Oracle, Microsoft Access,
Interbase, d-base, PostgreSQL, dan sebagainya.
P: Perl, bahasa pemrograman.
2.7.1.2 Pengertian XAMPP
Menurut Bunafit Nugroho (2008: 2) XAMPP adalah suatu bundel web
server yang populer digunakan untuk coba-coba di Windows karena kemudahan
instalasinya. Bundel program open source tersebut berisi antara lain server
35
web Apache, interpreter PHP dan basis data MySQL. Setelah menginstall
XAMPP, kita bisa memulai pemrograman PHP di komputer sendiri maupun
mencoba
menginstall
aplikasi-aplikasi
web.
(http://elib.unikom.ac.id/download.php?id=87173, diunduh 04 Desember 2013).
2.7.1.3 Bagian Penting XAMPP
Mengenal bagian XAMPP yang biasa digunakan pada umumnya:
1. htdoc adalah folder tempat meletakkan berkas-berkas yang akan
dijalankan, seperti berkas PHP, HTML dan skrip lain.
2. phpMyAdmin merupakan bagian untuk mengelola basis data MySQL
yang ada dikomputer. Untuk membukanya, buka browser lalu ketikkan
alamat http://localhost/phpMyAdmin, maka akan muncul halaman
phpMyAdmin.
3. Kontrol Panel yang berfungsi untuk mengelola layanan (service)
XAMPP. Seperti menghentikan (stop) layanan, ataupun memulai
(start).
2.7.1.4 Komponen XAMPP
XAMPP 1.8.3 untuk Windows, including:
1. Apache 2.4.4
2. MySQL 5.6.11
3. PHP 5.5.0
4. phpMyAdmin 4.0.4
36
5. FileZilla FTP Server 0.9.41
6. Tomcat 7.0.41 (with mod_proxy_ajp as connector)
7. Strawberry Perl 5.16.3.1 Portable
8. XAMPP Control Panel 3.2.1 (from hackattack142)
XAMPP 1.8.3 untuk Linux, including:
1. Apache 2.4.4
2. MySQL 5.6.11
3. PHP 5.5.0
4. phpMyAdmin 4.0.4
5. OpenSSL ss1.0.1e
XAMPP untuk Solaris.
XAMPP untuk Mac OS X.
2.7.2 Web Server Apache
Menurut Firdaus (2007: 5) Web server merupakan sebuah bentuk server
yang khusus digunakan untuk menyimpan halaman website atau homepage.
Apache merupakan turunan dari web server yang dikeluarkan oleh NSCA yaitu
NSCA HTTPd sekitar tahun 1995-an. Pada dasarnya, Apache adalah “APatCHy”
(patch) dan pengganti dari NCSA HTTPd. Apache web server merupakan tulang
punggung permintaan dari client yang menggunakan browser, seperti Netscape
Navigator, Internet Explorer, Mozilla, Opera dan lain-lain. Web Server dalam
berkomunikasi dengan kliennya menggunakan protokol HTTP (Hyper Text
Transfer Protocol). Apache berada di bawah GNU, General Public Licensi yang
bersifat free sehingga Apache dapat di download gratis pada alamat
37
http://www.apache.org. Adapun pertimbangan dalam memilih Apache sebagai
berikut:
1. Apache termasuk dalam kategori free software.
2. Instalasi apache sangat mudah.
3. Mampu beroperasi pada banyak platform sistem operasi, seperti Linux,
Windows dan lain-lain.
Apache Web Server merupakan web server yang bersifat open source dan
mempunyai performance yang sangat bagus, fleksibel dan mendukung berbagai
macam platform sistem operasi seperti Windows NT/9x, UNIX, Netware 5x,
OS/2 dan berbagai macam sistem operasi lainnya. Apache sangat cepat
mengeluarkan update terbarunya, sehingga mengurangi munculnya bugs dan
kelemahan program. (http://elib.unikom.ac.id/download.php?id=45326, diunduh
04 Desember 2013).
2.7.3 MySQL (My Structure Language)
Menurut Firdaus (2007: 12) MySQL atau yang biasa dibaca “mai-se-kuel”
adalah sebuah program pembuat database yang bersifat open source, yang artinya
siapa saja boleh menggunakannya.
MySQL sebenarnya produk yang berjalan pada platform linux, karena
sifatnya yang open source. MySQL dapat dijalankan pada semua platform baik
windows maupun linux, MySQL juga merupakan program pengakses database
38
yang bersifat jaringan sehingga dapat digunakan untuk aplikasi multiuser (banyak
pengguna).
Kelebihan dari MySQL adalah dengan menggunakan bahasa query standar
yang dimiliki SQL (Structure Query Language). SQL adalah suatu bahasa
permintaan yang terstruktur yang telah distandarkan untuk semua program
pengakses database seperti Oracle, PostgreSQL, SQL Server, dan lain-lain.
(http://elib.unikom.ac.id/download.php?id=45326, diunduh 04 Desember 2013).
2.7.4 PhpMyAdmin
Menurut Firdaus (2007: 15) PhpMyAdmin adalah suatu program open
source yang berbasis web yang dibuat menggunakan aplikasi PHP. Program ini
digunakan untuk mengakses database MySQL. Program ini mempermudah dan
mempersingkat kerja penggunanya. Dengan kelebihannya, para pengguna awam
tidak harus paham sintak-sintak SQL dalam pembuatan database dan tabel.
(http://elib.unikom.ac.id/download.php?id=45326, diunduh 04 Desember 2013).
Download