BAB II LANDASAN TEORI 2.1 Laundry · Berikut contoh script dari PHP form ... yang merupakan model...
Transcript of BAB II LANDASAN TEORI 2.1 Laundry · Berikut contoh script dari PHP form ... yang merupakan model...
7
BAB II
LANDASAN TEORI 2.1 Laundry
Laundry adalah jasa cuci pakaian dan setrika. Namun, saat ini laundry
tidak saja hanya untuk pakaian. Seiring kemajuan teknologi, saat ini laundry tidak
hanya untuk pakaian, namun juga untuk barang – barang lain seperti karpet,
gordyn, bahkan laundry sepatu dan boneka pun saat ini tidak sulit untuk
ditemukan. Di jaman teknologi seperti sekarang ini, bukan perkara yang sulit
untuk menemukan tempat laundry yang dekat dengan tempat tinggal kita. Dengan
memanfaatkan internet, para pebisnis laundry memperluas jaringan bisnis mereka
dengan cara membuat sebuah website atau blog yang sebagai penyebar informasi
usaha laundry mereka.
2.2 Adobe Dreamweaver CS4
Adobe Dreamweaver CS4 merupakan versi tebaru dari Adobe Dreaweaver
yang sebelumnya adalah Adobe Dreamweaver CS3. Aplikasi Adobe
Dreamweaver CS4 memberikan tampilan yang lebih baik dan semakin mudah
dalam penggunaannya. Aplikasi ini mengintegrasikan banyak aspek dalam
pengembangan website, termasuk pembuatan halaman web serta pengelolaan
website.
Adobe Dreamweaver CS4 menyertakan banyak perangkat yang berkaitan dengan
pengkodean dan fitur seperti HTML, CSS, XML, dan pemograman Client Side
seperti JavaScript dengan penggunaann yang sangat mudah. Aplikasi Adobe
Dreamweaver CS4 dapat mengimport, dan menyisipkan image atau movie yang
dibuat dari aplikasi lainnya, seperti file flash (.SWF) ataupun FLV. Sehingga
dengan menggunakan aplikasi Adobe Dreamweaver CS4 akan dapat dihasilkan
sebuah website yang lebih menarik daripada website pada umumnya.
Mengenal Area Kerja Adobe Dreamweaver CS4
8
Tampilan area kerja Adobe Dreamweaver CS4 tampak seperti oada gambar
berikut :
Gambar 2.1 Tampilan area kerja Adobe Dreamweaver CS4
Menu Bar
Adobe Dreamweaver CS4 memiliki berbagai macam Menu Bar yaitu File,
Edit, View, Insert, Modify, Format, Commands, Site, Window, dan Help.
Setiap menu juga memiliki beberapa submenu sesuai dengan kategorinya,
selain itu juga mempunyai fungsi yang berbeda-beda.
Document Window
Document Window menampilkan dokumen dari halaman web yang aktif,
atau dokumen yang sedang diedit. Pada Document Window terdapat Title Bar
yang menampilkan judul halaman, fasilitas Zoom, Document Toolbar, dan
Tag Selector
Document Toolbar
9
Document Toolbar berisi tombol – tombol yang digunakan untuk mengatur
layar kerja dokumen pada Dreamweaver dengan cepat, diantaranya Show
Code View, Show Code and Design View, dan Show Design View.
Tag Selector
Berfungsi untuk menampilkan tag HTML dari objek yang terseleksi.
Panel Groups
Berfungsi untuk membantu dalam mengedit suatu halaman web.
2.3 PHP Hypertext Preprocessor (PHP) PHP digunakan sebagai bahasa script server-side dalam pengembangan
web yang disisipkan pada dokumen HTML. Penggunaan PHP memungkinkan
web dapat dibuat dinamis sehingga maintenance situs web tersebut menjadi lebih
mudah dan efisien. PHP merupakan software open-source yang disebarkan dan
dilisensikan secara gratis serta dapat di-download secara bebas dari situs
resminya.
Beberapa pesaing dari PHP ialah Perl, Microsoft Active Server Pages
(ASP), Java Server Pages (JSP), dan Allaire Cold Fusion. Dalam perbandingan
dengan produk-produk tersebut, PHP memiliki beberapa kekuatan termasuk
diantaranya ialah :
1. Performa yang tinggi
PHP sangat efisien. Menggunakan server yang tidak mahal, dapat melayani
berjuta-juta permintaan setiap harinya.
2. Integrasi Database
PHP memiliki koneksi yang mengijinkan penggunaan berbagai sistem
database. Selain dari koneksi ke MySQL, PHP juga dapat melakukan koneksi
langsung ke database PostgreSQL, Msql, Oracle, dbm, filePro, Hyperwave,
Informix, InterBase dan Sybase. Menggunakan Open Database Connectivity
Standart (ODBC), PHP dapat melakukan koneksi ke banyak database yang
disediakan oleh driver ODBC, termasuk produk Microsoft.
3. Library yang built-in
10
Karena PHP dirancang untuk digunakan pada web, PHP memiliki banyak
fungsi yang telah dibangun untuk mendukung berbagai tugas yang berguna
pada web. Dengan PHP, kita dapat menampilkan gambar GIF, terkoneksi
dengan layanan jaringan yang lain, mengirim email, dan membuat file PDF.
4. Portabilitas
PHP dapat digunakan pada banyak sistem informasi. Kode PHP dapat ditulis
pada sistem operasi UNIX yang gratis seperti LIBUX dan FreeBSD, system
operasi UNIX yang komersial seperti Solaris dan IRIX atau berbagai versi di
Microsoft Windows.
5. Ketersediaan Source Code
Source code PHP dapat diakses tidak seperti produk komersial yang source
code-nya tertutup, jika ada sesuatu yang hendak dimodifikasi atau
ditambahkan pada PHP, dapat dilakukan secara langsung dan gratis.
Berikut contoh script dari PHP form untuk login :
11
Gambar 2.2 Contoh script PHP untuk login Hasil tampilannya :
<html> <head> <title>::Form Login</title> </head> <body> <form id="form1" name="form1" method="post" action="admin_cek_login_administrator.php"> <table width="386" border="0" cellspacing="0" cellpadding="4"> <tr> <td width="117">User Id</td> <td width="7">:</td> <td width="244"><input name="useridTxt" type="text" id="useridTxt" size="35" /></td> </tr> <tr> <td>Password</td> <td>:</td> <td><input name="passTxt" type="password" id="passTxt" size="35" /></td> </tr> <tr> <td> </td> <td> </td> <td><input type="submit" name="button" id="button" value="Proses" /> <a href="index.php">Batal</a></td> </tr> </table> </form> </body> </html>
Gambar 2.3 Contoh tampilan login dengan php
12
2.3.1 Sejarah Singkat PHP Pada awalnya PHP merupakan kependekan dari Personal Home Page
(Situs Personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995.
Pada waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa
sekumpulan script yang digunakan untuk mengolah data form dari web.
Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan
menamakannya PHP/FI. Dengan perilisan kode sumber ini menjadi open source,
maka banyak programmer yang tertarik untuk ikut mengembangkan PHP.
Pada November 1997, dirilis PHP/FI 2.0. pada rilis ini interpreter PHP
sudah diimplementasikan dalam program C. Dalam rilis ini disertakan juga
modul- modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan.
Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter
PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada Juni1998,
perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis
tersebut sebagai PHP 3.0 dan singkatan dirubah menjadi akronim berulang PHP :
Hypertext Preprocessing.
Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis
tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak
dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan
kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki
kecepatan dan stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP 5.0.
Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini
juga memasukkan model pemograman berorientasi objek ke dalam PHP untuk
menjawab perkembangan bahasa pemograman ke arah paradigma berorientasi
objek.
2.4 Pengenalan Framework Codeigniter Menurut Saputra (2011:2) Codeigniter merupakan framework yang
diklaim memiliki eksekusi tercepat dibandingkan dengan framework lainnya.
CodeIgniter bersifat open source dan menggunakan model basis MVC (Model
13
View Controller), yang merupakan model konsep modern framework yang
digunakan saat ini. Framework sendiri dapat diartikan sebagai suatu kertas /
kerangka kerja dalam aplikasi web yang didalammnya memiliki suatu potongan –
potongan program yang disusun (modul), sehingga programmer tidak perlu
membuat kode dari nol, karena framework telah menyediakannya. Yang harus
kita lakukan adalah mengerti, melakukan, dan menerapkannya saja.
Codeigniter menawarkan banyak library yang dapat kita gunakan seperti
Benchmark yang digunakan untuk menghitung penggunaan memori, Calender
yang digunakan untuk membuat kalender, Cart yang dapat digunakan untuk
membuat cart pada toko online, dan masih banyak lagi. Codeigniter dibuat
pertama kali oleh Rick Ellis yang merupakan CEO dari Ellislab. Ellislab
merupakan sebuah perusahaan yang memproduksi CMS – CMS handal.
Codeigniter dirilis pertama kali pada 28 Februari 2006. Versi terakhir 2.1.3 yang
dirilis pada 8 Oktober 2012.
Beberapa kelebihan Framework Codeigniter antara lain :
1) Berukuran kecil
Hanya dengan sekitar 4MB, seorang pengembang pemula sudah bisa
menggunakan Codeigniter yang di dalamnya terdapat berbagai fitur andal
yang bisa digunakan untuk membangun sebuah aplikasi. Beberapa fitur yang
ada dalam Codeigniter adalah database access, session control, manage
cookies, security dengan xss filtering, bantuan untuk mengunggah file, dan
berbagai fitur lain yang sungguh luar biasa.
2) Sangat cepat
Sangat cepat disini dalam hal eksekusi file. Kecepatan ini memungkinkan
Codeigniter digunakan sebagai framework untuk membangun aplikasi
berskala enterprise.
3) Sederhana (simple)
Sederhana dari sisi sintaks yang digunakan maupun sisi alur penyusunan
program.
4) Bisa langsung digunakan
14
Setiap orang akan bisa menggunakan Codeigniter. Hanya tinggal mengunduh,
mengekstrak file, dan meletakkan pada folder kerja web server yang
digunakan (htdocs atau public html).
5) Bisa dikombinasikan dengan beberapa aplikasi dengan cara yang sangat
mudah.
6) Kode program rapi
Kode program akan menjadi sangat rapi dikarenakan penggunaan sistem
MVC yang mengelompokkan kode sesuai dengan fungsinya masing – masing
kode yang rapi memudahkan dalam pencarian error ketika muncul bug.
2.4.1 Struktur Direktori Kerja Codeigniter
Codeigniter merupakan PHP Framework yang berisi kumpulan file PHP
dan folder, javascript, CSS serta file lainnya yang memiliki aturan tertentu untuk
penggunaannya, dan menyediakan Library serta Helper yang dapat digunakan
secara langsung. Folder Codeigniter ini diletakkan di bawah folder direktori web
server yang digunakan.
Struktur file dalam Codeigniter terlihat seperti pada gambar berikut :
Gambar 2.4 Struktur file codeigniter
15
Terdapat tiga folder utama Codeigniter, yaitu application, system, dan
user_guide. Dari ketiga folder tersebut, yang perlu diperhatikan lebih adalah
folder application karena disinilah direktori kerja Codeigniter dan disini pula
tempat programmer meletakkan semua file yang berkaitan dengan aplikasi yang
akan dikembangkan. Dalam folder application ini terdapat beberapa subfolder
dengan peran masing – masing. Beberapa subfolder inilah yang nantinya
digunakan untuk mengelompokkan file aplikasi yang akan dibuat sesuai dengan
fungsinya. Dari sekian banyak subfolder yang ada, terlebih dahulu fokuskan
perhatian pada empat subfolder utama, yaitu :
Config, digunakan untuk menyimpan berbagai macam file konfigurasi
sistem aplikasi yang akan dibuat.
Controllers, digunakan untuk meletakkan controller sistem aplikasi yang
akan dibuat.
Models, digunakan untuk meletakkan file model sistem aplikasi yang akan
dibuat.
Views, digunakan untuk meletakkan file view sistem aplikasi yang akan
dibuat.
2.4.2 Mengenal Konsep MVC (Model View Controller) MVC memiliki kepanjangan dari Model View Controller, merupakan alur
kerja dari Framework CodeIgniter. Dengan konsep MVC ini, segala macam
logika dan layout telah dipisahkan, sehingga si programmer dan designer dapat
mengerjakan masing – masing tugasnya secara fokus. Konsep model MVC juga
dapat menuntun para pembuat program untuk membangun web dengan cara yang
terstruktur.
Dilihat dari cara kerjanya, Framework CodeIgniter menekankan pada MVC.
Untuk alurnya dapat dilihat pada gambar 2.5
16
Model, digunakan sebagai presentasi database. Berbeda dengan Framework
CakePHP. Dalam CodeIgniter, segala macam perintah – perintah query SQL
diletakkan dalam file model, seperti insert, edit, delete, dan select. Karena
semuanya itu berhubungan dengan database.
Controller, digunakan sebagai pengendali (control) antara view dan model
melalui permintaan dari HTTP.
View, suatu halaman khusus yang digunakan untuk menyajikan informasi kepada
client. Secara definisi, segala macam permintaan yang dikelola oleh controller dan
model, akan dikembalikan kepada view sesuai hasil permintaan yang di-request
2.4.3 Perbedaan Antara Pemograman PHP Murni dengan Pemograman
Framework PHP Perbedaan dari kedua teknik pemograman tersebut terdapat pada
penanganan file dan kode PHP. Pada pemograman dengan teknik PHP murni
programmer tidak membuat pengelompokkan intruksi atau kode pada sebuah
Class sehingga akan menambah waktu pekerjaan penulisan kode program.
Sedangkan pada PHP Framework penulisan kode program PHP dibuat berbasis
Class dimana dapat digunakan kembali untuk pembuatan aplikasi yang lain.
Gambar 2.5 Konsep mvc
17
2.4.4 Pustaka pada Framework Codeigniter Pustaka pada Framework CodeIgniter dapat bermanfaat sebagai alat bantu
untuk mempermudah dan mempercepat pembuatan sebuah aplikasi.
Pustaka CART
Pustaka CART merupakan sebuah kelas yang dibuat khusus untuk
membantu pemogram dalam membuat aplikasi e-commerce atau aplikasi lain
yang menggunakan sistem keranjang belanja. Namun demikian, pustaka CART
hanya menangani proses penyimpanan produk ke dalam keranjang belanja dan
tidak menangani proses lainnya semacam shipping, penggunaan kartu kredit,
pembayaran, dan proses lainnya.
Kelas CART ini memiliki lima macam reserved index yang akan digunakan pada
fungsi – fungsi lain. Indeks array tersebut antara lain :
1. Id , merupakan id produk.
2. Qty , setiap produk harus memiliki nilai kuantitas.
3. Price , setiap produk tertentu harus memiliki harga.
4. Name , setiap produk harus memiliki nama.
5. Options , merupakan varian produk.
Dari kelima indeks di atas, empat yang pertama (id, qty, price, dan name)
merupakan indeks wajib yang harus ada. Jika salah satu indeks tersebut tidak ada,
maka data tidak akan disimpan ke dalam keranjang belanja, sedangkan indeks
options bersifat opsional.
2.5 Pengertian MySQL
Menurut Kadir (2003 : 101) SQL (dibaca “ess-quel-el”) merupakan
kependekan dari Structured Query Language. SQL digunakan untuk
berkomunikasi dengan sebuah database, sesuai dengan ANSI, SQL merupakan
bahasa standar untuk system manajemen database relasional. Statement SQL
18
digunakan untuk melakukan update terhadap database, atau mengambil data dari
sebuah database.
Suatu database memungkinkan kita untuk melakukan penyimpanan,
pencarian, pengurutan, dan pengambilan data secara efisien. Server MySQL
mengendalikan akses ke data untuk menjamin bahwa beberapa user dapat bekerja
bersama – sama, menyediakan akses yang cepat dan menjamin hanya user yang
memiliki hak yang dapat mengakses.
Merupakan sebuah system manajemen database relasi (relational database
management system). Bersifat open source dapat didownload secara bebas, mysql
memiliki kinerja, kecepatan, proses, dan ketangguhan yang tidak kalah dengan
database yang lain. Contohnya oracle, Sybase, unity, dll. Pada awalnya mysql
hanya berjalan diatas platform system operasi linux. Hampir semua distro linux
telah memasukkan mysql sebagai database standarnya, namun saat ini mysql
dapat pula berjalan diatas system operasi lainnya. Contoh Ms. Windows, Solaris,
FreeBSD, mac OSX, dsb.
Karen itu MYSQL adalah server multi-user, multi-threaded. M. Bersifat
open source dapat didownload secara bebas, mysql memiliki kinerja, kecepatan,
proses, dan ketangguhan yang tidak kalah dengan database yang lain. Contohnya
oracle, Sybase, unity, dll. Pada awalnya mysql hanya berjalan diatas platform
system operasi linux. Hampir semua distro linux telah memasukkan mysql
sebagai database standarnya, namun saat ini mysql dapat pula berjalan diatas
system operasi lainnya. Contoh Ms. Windows, Solaris, FreeBSD, mac OSX, dsb.
Karen itu MYSQL adalah server multi-user, multi-threaded. MySQL
menggunakan SQL, standar bahasa query database di seluruh dunia. MySQL
dipublikasikan sejak 1996, tetapi memiliki sejarah perkembangan dari tahun 1979.
2.5.1 Keistimewaan MySQL
MySQL memiliki beberapa keistimewaan, antara lain :
a. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi
seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan
masih banyak lagi.
19
b. Open Source. MySQL didistribusikan secara open source, dibawah
lisensi GPL sehingga dapat digunakan secara cuma – cuma.
c. Multiuser. MySQL dapat digunakan oleh beberapa user dalam waktu
yang bersamaan tanpa mengalami masalah atau konflik.
d. Performance Tuning. MySQL memiliki kecepatan yang menakjubkan
dalam menangani query sederhana, dengan kata lain dapat memproses
lebih banyak SQL per satuan waktu.
e. Jenis Kolom. MySQL memiliki tipe kolom yang sangat kompleks, seperti
signed / unsigned integer, float, double, char, text, date, timestamp, dan
lain - lain.
f. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh
yang mendukung perintah Select dan Where dalam perintah (query).
g. Keamanan. MySQL memiliki beberapa lapisan sekuritas seperti level
subnetmask, nama host, dan izin akses user dengan sistem perizinan yang
mendetail serta sandi terenkripsi.
h. Skalabilitas dan Pembatasan. MySQL mampu menangani basis data
dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan
60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat
ditampung mencapai 32 indeks pada tiap tabelnya.
i. Konektivitas. MySQL dapat melakukan koneksi dengan klien
menggunakan protocol TCP/IP, Unix soket (UNIX), atau Named Pipes
(NT).
j. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan
menggunakan lebih dari dua puluh bahasa.
k. Antar Muka. MySQL memiliki interface (antar muka) terhadap berbagai
aplikasi dan bahasa pemograman dengan menggunakan fungsi API
(Application Programming Interface).
l. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan
(tool) yang dapat digunakan untuk administrasi basis data, dan pada setiap
peralatan yang ada disertakan petunjuk online.
20
m. Struktur Tabel. MySQL memiliki struktur tabel yang lebih fleksibel
dalam menangani ALTER TABLE, dibandingkan basis data lainnya
semacam PostgreSQL ataupun oracle.
2.6 Metodologi Rekayasa Perangkat Lunak Untuk melakukan sebuah rekayasa perangkat lunak tahap pemodelan
merupakan tahap awal yang harus dilakukan. Tahap pemodelan harus dilakukan
dengan baik karena akan sangat berpengaruh pada tahap – tahap selanjutnya.
Model proses perangkat lunak merupakan deskripsi yang disederhanakan
dari proses perangkat lunak yang dipresentasikan dengan sudut pandang tertentu.
Jenis pemodelan yang digunakan dalam penyelesaian tugas akhir ini
menggunakan pemodelan yang secara umum digunakan dalam rekayasa perangkat
lunak yaitu model waterfall.
Waterfall mengusulkan sebuah pendekatan kepada perkembangan
perangkat lunak yang sistematik dan sekuensial yang mulai pada tingkat dan
kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan.
Berikut di bawah ini rangkaian aktifitas proses dalam model Waterfall (Pressman,
2007) :
1. Tahapan Rekayasa Sistem
Tahapan ini sangat menekan pada masalah pengumpulan
kebutuhan pengguna pada tingkatan sistem dengan menentukan
konsep sistem beserta antarmuka yang menghubungkannya dengan
lingkungan sekitar. Hasilnya berupa spesifikasi sistem.
2. Tahapan Analisis
Pada tahap ini dilakukan pengumpulan kebutuhan elemen – elemen
di tingkat perangkat lunak. Dengan analisis harus dapat ditentukan
domain – domain data atau informasi, fungsi, proses, atau prosedur
yang diperlukan beserta unjuk kerjanya, dan antarmuka. Hasilnya
berupa spesifikasi kebutuhan perangkat lunak.
21
3. Tahapan Perancangan
Pada tahap perancangan, kebutuhan - kebutuhan perangkat lunak
yang dihasilkan pada tahap analisis, ditransformasikan ke dalam
bentuk arsitektur perangkat lunak yang memiliki karakteristik
mudah dimengerti dan tidak sulit untuk diterapkan.
4. Tahapan Pemograman
Tahap ini melakukan penerapan hasil rancangan ke dalam baris –
baris kode program yang dapat dimengerti oleh komputer.
5. Tahapan Pengujian
Setelah perangkat lunak selesai diterapkan, pengujian dapat segera
dimulai. Pengujian terlebih dahulu dilakukan pada setiap modul.
Jika tidak ada masalah, modul tersebut akan diintegrasikan hingga
membentuk perangkat lunak secara utuh. Kemudian dilakukan
pengujian di tingkat perangkat lunak yang memfokuskan pada
masalah – masalah logika internal, fungsi internal, potensi masalah
yang mungkin terjadi dan pemeriksaan hasil apakah sudah sesuai
dengan permintaan.
6. Tahapan Pengoperasian dan Pemeliharaan
Dalam operasional sehari – hari, suatu perangkat lunak mungkin
saja mengalami kesalahan atau kegagalan dalam menjalankan
fungsi – fungsinya. Atau, pemilik bisa saja meminta peningkatan
kemampuan perangkat lunak pada pengembangnya. Dengan
demikian, kedua faktor ini menyebabkan perlunya perangkat lunak
dipelihara dari waktu ke waktu. Biasanya ini merupakan tahapan
yang panjang dari perangkat lunak.
Agar dapat lebih jelas, berikut ini Gambar 2.6 model Waterfall :
22
2.7 Basis Data Menurut Fathansyah (2012 : 2) Basis data terdiri atas 2 kata, yaitu Basis
dan Data. Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat
bersarang / berkumpul. Sedangkan Data adalah representasi fakta dunia nyata
yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan),
barang, hewan, peristiwa, konsep, keadaan, dan sebagainya, yang diwujudkan
dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasinya.
Sebagai satu kesatuan istilah, Basis Data (Database) sendiri dapat didefinisikan
dalam sejumlah sudut pandang seperti :
Himpunan kelompok data (arsip) yang saling berhubungan yang
diorganisasikan sedemikian rupa agar kelak dapat dimanfaatkan kembali
dengan cepat dan mudah.
Kumpulan data yang saling berhubungan yang disimpan secara bersama
sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk
memenuhi berbagai kebutuhan.
Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam
media penyimpanan elektronis.
Tujuan utama dalam pengelolaan data dalam sebuah basis data adalah agar
kita dapat memperoleh menemukan kembali data (yang kita cari) dengan mudah
Gambar 2.6 Model Waterfall
23
dan cepat. Disamping itu, pemanfaatan basis data untuk pengelolaan data, juga
memiliki tujuan – tujuan lain seperti berikut ini :
Kecepatan dan Kemudahan (Speed)
Pemanfaatan basis data memungkinkan kita untuk dapat menyimpan data atau
melakukan perubahan / manipulasi terhadap data atau menampilkan kembali
data tersebut dengan lebih cepat dan mudah.
Efisiensi Ruang Penyimpanan (Space)
Dengan basis data, efisiensi / optimalisasi penggunaan ruang penyimpanan
dapat dilakukan, karena kita dapat melakukan penekanan jumlah redudansi
data, baik dengan menerapkan sejumlah pengkodean atau dengan membuat
relasi – relasi (dalam bentuk tabel) antarkelompok data yang saling
berhubungan.
Keakuratan (Accuracy)
Pemanfaatan pengkodean atau pembentukan relasi antardata bersama dengan
penerapan aturan / batasan (constraint) tipe data, domain data, keunikan data,
dan sebagainya, yang secara ketat dapat diterapkan dalam sebuah basis data,
sangat berguna untuk menekan ketidakakuratan penyimpanan data.
Ketersediaan (Availability)
Dengan pemanfataan teknologi jaringan komputer, data yang berada di suatu
cabang, dapat juga diakses (menjadi tersedia/available) bagi cabang lain.
Kelengkapan (Completeness)
Untuk mengakomodasi kebutuhan kelengkapan data yang semakin
berkembang, maka kita tidak hanya dapat menambah record – record data,
tetapi juga dapat melakukan perubahan struktur dalam basis data, baik dalam
bentuk penambahan objek baru (tabel) atau dengan penambahan field – field
baru pada sebuah tabel.
Keamanan (Security)
Kita dapat menentukan siapa – siapa (pemakai) yang boleh menggunakan
basis data beserta objek – objek di dalamnya dan menentukan jenis – jenis
operasi apa saja yang boleh dilakukannya.
Kebersamaan Pemakaian (Sharability)
24
Pemakai basis data sering kali tidak terbatas pada satu pemakai saja, atau di
satu lokasi saja oleh satu sistem/aplikasi saja. Basis data yang dikelola oleh
sistem (aplikasi) yang mendukung lingkungan multi-user, akan dapat
memenuhi kebutuhan ini, tetapi tetap dengan menjaga/menghindari
munculnya persoalan baru seperti inkonsistensi data (karena data yang sama
diubah oleh banyak pemakai pada saat yang bersamaan) atau kondisi
deadlock (karena ada banyak pemakai yang saling menunggu untuk
menggunakan data).
2.7.1 Proses Perancangan Basis Data Menurut Kadir (2003 : 39) Proses perancangan basis data, terlepas dari
masalah yang ditangani dibagi menjadi tiga tahapan, yaitu :
1. Perancangan basis data secara konseptual
2. Perancangan basis data secara logis
3. Perancangan basis data secara fisis
Perancangan basis data secara konseptual merupakan upaya untuk
membuat model yang masih bersifat konsep. Perancangan basis data secara logis
merupakan tahapan untuk memetakan model konseptual ke model basis data yang
akan dipakai, seperti model relasional, hirarki, atau jaringan.
Namun sebagaimana halnya perancangan basis data secara konseptual,
perancangan ini tidak tergantung pada DBMS (Database Management System)
yang akan dipakai. Itulah sebabnya perancangan basis data secara logis terkadang
disebut pemetaan model data.
Perancangan basis data secara fisis merupakan tahapan untuk menuangkan
perancangan basis data yang bersifat logis menjadi basis data fisis yang tersimpan
pada media penyimpanan eksternal.
25
2.7.2 Entity Relationship Diagram (ERD)
Menurut Fathansyah (2001:70) Diagram keterhubungan entitas atau
Entity-Relationship Diagram selanjutnya disebut ERD adalah model konseptual
yang mendeskripsikan hubungan antar penyimpanan (dalam DAD). ERD
digunakan untuk memodelkan struktur data dan hubungan antar data. Model ERD
yang berisi komponen – komponen himpunan entitas dan himpunan relasi yang
masing – masing dilengkapi dengan atribut – atribut yang merepresentasikan
seluruh fakta dari dunia nyata yang ditinjau, yang digambarkan dengan lebih
sistematis dengan menggunakan ERD. Berikut adalah notasi – notasi yang sering
digunakan pada saat pembuatan entity relationship diagram.
Tabel 2.1 Notasi ERD
Notasi Deskripsi
Menyatakan himpunan entitas
Atribut A sebagai key
Himpunan Relasi R
Link
Berikut adalah contoh penggambaran relasi antar himpunan entitas lengkap
dengan kardinat relasi dan atribut – atributnya :
1. Relasi satu-ke-satu (one-to-one)
Adanya relasi antara himpunan entitas Kepala Sekolah dengan Himpunan
entitas Sekolah. Himpunan relasinya kita beri nama “Mengepalai”. Para relasi
ini, setiap kepala sekolah paling banyak mengepalai satu sekolah. Dan setiap
sekolah pasti dikepalai oleh paling banyak satu orang kepala sekolah. Maka
penggambarannya adalah
A
R
26
Gambar 2.7 Contoh relasi one to one
2. Relasi satu-ke-banyak (one to many)
Adanya relasi antara himpunan entitas dosen dengan himpunan entitas
kuliah. Himpunan relasinya kita beri nama “Mengajar”. Pada relasi ini, setiap
dosen dapat mengajar lebih dari satu mata kuliah, sedang setiap mata kuliah
diajar hanya oleh paling banyak satu dosen. Maka penggambarannya adalah :
3. Relasi banyak-ke-banyak (many-to-many)
Adanya relasi antar himpunan entitas mahasiswa dengan himpunan entitas
kuliah. Himpunan relasinya kita beri nama “Mempelajari”. Pada relasi ini,
setiap mahasiswa bisa mempelajari lebih dari satu mata kuliah. Demikian
juga sebaliknya, setiap mata kuliah dapat dipelajari oleh lebih dari satu orang
mahasiswa.
Gambar 2.9 Contoh relasi many to many
Gambar 2.8 Contoh relasi one to many
27
2.8 Unified Modelling Language
Unified Modelling Language (UML) adalah keluarga notasi grafis yang
didukung oleh meta – model tunggal, yang membantu pendeksripsian dan desain
sistem perangkat lunak, khususnya sistem yang dibangun menggunakan
pemograman berorientasi objek (Fowler, 2005 : 1).
UML adalah sebuah bahasa yang telah menjadi standart yang berdasarkan
grafik atau gambar untuk memvisualisasikan, menspesifikasikan, membangun,
dan pendokumentasian dari sebuah pengembangan sustem perangkat lunak
berorientasi objek (Object Oriented).
UML merupakan suatu kumpulan teknik terbaik yang sudah terbukti
sukses dalam memodelkan sistem yang besar dan kompleks yang dikembangkan
oleh Booch, Object Modelling Technique (OMT) dan Object Oriented Software
Engineering (OOSE). Metode Booch atau yang kita kenal dengan metode Design
Object Oriented yang dibuat oleh Gardy Booch. Metode ini menjadikan proses
analisis dan design ke dalam empat tahapan interaktif, yaitu :
1. Identifikasi kelas – kelas dan objek – objek
2. Identifikasi semantik dari hubungan objek dan kelas
3. Perincian interface
4. Implementasi
Dengan menggabungkan UML, metode Booch, OMT dan OOSE lalu
ditambahkan dengan elemen – elemen baru yang lebih efektif dan lebih ekspresif
dari metode lainnya. UML terdiri atas 13 jenis diagram resmi seperti tertulis
dalam tabel berikut.
Tabel 2.2 Jenis Diagram Resmi UML
No. Diagram Kegunaan
1. Activity Behaviour prosedural dan paralel
2. Class Class, fitur, dan hubungan – hubungan
3. Communication Interaksi antar objek; penekanan pada jalur
4. Component Struktur dan koneksi komponen
5. Composite Dekomposisi runtime sebuah class
28
Structure
6. Deployment Pemindahan artifak ke node
7. Interaction
overview
Campuran sequence dan activity diagram
8. Object Contoh konfigurasi dari contoh – contoh
9. Package Struktur hirarki compile-time
10. Sequence Interaksi antar objek; penekanan pada sequence
11. State machine Bagaimana even mengubah objek selama aktif
12. Timing Interaksi antar objek; penekanan pada timing
13. Use case Bagaimana pengguna berinteraksi dengan sebuah
sistem
2.8.1 Use Case Diagram Use Case diagram adalah layanan (services) atau fungsi – fungsi yang
disediakan oleh sistem untuk pengguna – penggunanya (Henderi et al, 2008). Use
Case diagram menggambarkan fungsionalitas dari sebuah sistem. Yang
ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah
Use case diagram merepresentasikan sebuah interaksi antara pengguna sistem
dengan sistem. Use case diagram menggambarkan sebuah pekerjaan tertentu,
misalnya login ke sistem, membuat sebuah daftar belanja, dan sebagainya. Aktor
adalah sebuah entitas manusia atau sistem yang berinteraksi dengan sistem untuk
melakukan pekerjaan – pekerjaan tertentu.
Notasi – notasi yang digunakan dalam pemodelan duagram use case dapat
dilihat pada tabel berikut ini :
Tabel 2.3 Notasi Use Case Diagram
Notasi Deskripsi
Aktor, segala sesuatu digunakan untuk menggambarkan pelaku atau pengguna yang sedang berinteraksi langsung.
29
Use case berfungsi untuk menggambarkan spesifikasi pekerjaan (job spesification) dan deskripsi pekerjaan (job description), serta keterkaitan antar pekerjaan (job).
Aliran proses (relationship), berguna untuk menggambarkan hubungan antara use case dengan use case lainnya.
Aliran perpanjang (extension points), berguna untuk menggambarkan hubungan antara use case dengan use case yang diperpanjang (extended use case) maupun dengan use case yang dimasukkan (included use case).
Aliran yang digunakan untuk menggambarkan hubungan antara aktor dengan use case.
<<extended>> Kondisi yang mendeksripsikan apa yang terjadi antara use case dengan use case yang diperpanjang.
<<include>> Include adalah kondisi aliran proses langsung (directed relationship) antara dua use case yang secara tak langsung menyatakan kelakukan (behaviour) dari use case yang dimasukkan.
<<has>> Adalah kondisi yang mendeskripsikan apa yang terjadi antara aktor dengan use case.
2.8.2 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 paralel.
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.
Notasi – notasi yang digunakan dalam pemodelan activity diagram dapat
dilihat pada Tabel 2.4.
Tabel 2.4 Notasi Activity Diagram
No. Notasi Keterangan 1.
Titik awal, digunakan untuk menggambarkan
30
awal dari diagram aktifitas. 2.
Titik akhir, digunakan untuk menggambarkan akhir dari diagram aktifitas.
3.
Aktivitas, digunakan untuk menggambarkan aktifitas dalam diagram aktifitas.
4.
Pilihan untuk pengambilan keputusan, digunakan untuk menggambarkan kelakuan pada kondisi tertentu.
5.
Akhir alur (flow final), digunakan untuk menghancrukan semua tanda yang datang dan tak memiliki efek alur dalam aktifitas.
6. Fork ; digunakan untuk menunjukkan kegiatan – kegiatan yang dilakukan secara paralel atau untuk menggabungkan dua kegiatan paralel menjadi satu
7.
Rake ; menunjukkan adanya dekomposisi
8.
Tanda waktu
9.
Node Fork memiliki satu aksi yang masuk dan beberapa aksi yang keluar.
10.
Join node digunakan untuk menggambarkan beberapa aksi yang masuk dan satu aksi yang keluar.
11.
Tanda Pengiriman
12.
Tanda Penerimaan
2.8.3 Sequence Diagram Sebuah sequence diagram secara khusus menjabarkan aktifitas sebuah
skenario tunggal. Diagram tersebut menunjukkan sebuah objek contoh dan pesan–
pesan yang melewati objek – objek di dalam use case diagram (Fowler, 2005).
Sequence diagram menggambarkan interaksi dengan menampilkan setiap
partisipan dengan garis alir secara vertikal dan pengurutan pesan dari atas ke
bawah.
31
Sequence diagram biasa digunakan untuk menggambarkan skenario atau
rangkaian langkah – langkah yang dilakukan sebagai respons dari sebuah event
untuk menghasikan output tertentu. Diagram ini juga menunjukkan serangkaian
pesan yang dipertukarkan oleh objek – objek yang melakukan suatu tugas atau
aksi tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan
perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
Masing – masing objek, termasuk aktor memiliki lifeline vertikal. Pesan
digambarkan sebagai garis berpanah dari satu objek ke objek lainnya.
Notasi – notasi yang digunakan dalam pemodelan sequence diagram terlihat
dalam tabel berikut :
Tabel 2.5 Notasi Pemodelan Sequence Diagram
No. Notasi Keterangan 1.
Aktor Merupakan sebuah peran yang dimainkan seseorang pengguna dalam kaitannya dengan sistem.
2. Activation Menggambarkan waktu yang dibutuhkan suatu objek untuk menyelesaikan suatu aktivitas.
3.
Participant (Obyek) Simbol yang digunakan untuk menyederhanakan diagram
4.
Lifeline Digambarkan dengan garis putus – putus, yang menggambarkan bahwa hadirnya objek terhadap waktu.
5. Aliran Pesan Digambarkan dengan tanda panah, yang menggambarkan komunikasi antar objek.
2.8.4 Class Diagram
Diagram kelas atau class diagram menggambarkan struktur sistem dari
segi pendefinisian kelas-kelas yang akan dibuat atau membangun sistem.Kelas
memiliki apa yang disebut atribut dan metode atau operasi.
Atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas.
32
Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas.
Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-
fungsi sesuai dengan kebutuhan sistem. Susunan struktur kelas yang baik pada
diagram kelas sebaiknya memiliki jenis-jenis kelas berikut :
Kelas main.
Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
Kelas yang menangani tampilan sistem.
Kelas yang mendefinisikan dan mengatur tampilan ke pemakai.
Kelas yang diambil dari pendefinisian use case.
Kelas yang menangani fungsi-fungsi yang harus ada diambil dari pendefinisian
use case.
Kelas yang diambil dari pendefinisian data.
Kelas yang digunakan untuk memegang atau membungkus data menjadi
sebuah kesatuan yang diambil maupun akan disimpan ke basis data
Berikut adalah simbol – simbol yang sering digunakan pada saat pembuatan class
diagram.
Tabel 2.6 Simbol – simbol yang ada pada Class Diagram
Simbol Deskripsi
Kelas pada struktur sistem
Antarmuka/interface
Nama_interface
Sama dengan konsep interface dalam
pemrograman berorientasi objek
Asosiasi/association
Relasi antar kelas dengan umum, asosiasi
biasanya juga disertai dengan multiplicity
Asosiasi berarah/directed
association
Relasi antar kelas dengan makna kelas
yang satu digunakan oleh kelas yang lain,
asosiasi biasanya juga disertai dengan
multiplicity
Generalisasi
Relasi antar kelas dengan makna
generalisasi-spesialisasi(umum-khusus)
33
Kebergantungan/dependency
Relasi antar kelas dengan makna
kebergantungan antar kelas
2.9 Web World Wide Web (WWW), lebih dikenal dengan web yang merupakan
salah satu layanan yang didapat oleh pemakai komputer yang terhubung ke
internet dengan fasilitas hypertext untuk menampilkan data berupa text, gambar,
suara, animasi dan data multimedia lainnya. Sehingga web pada awalannya
adalah ruang informasi dalam internet, dengan menggunakan teknologi hypertext
oemakai dituntun menemukan informasi dengan mengikuti link yang disediakan
dalam dokumen web yang ditampilkan dalam web browser. (Kustiyahningsih dan
Rosa Anamisa, 2011)
Situs / web dapat dikategorikan menjadi dua yaitu “web statis” dan “web
dinamis”. Web statis adalah web yang menampilkan informasi – informasi yang
sifatnya statis (tetap), sedangkan web dinamis adalah web yang menampilkan
informasi serta dapat berinteraksi dengan pengguna.
2.9.1 Web Browser Web browser adalah perangkat lunak yang digunakan untuk menampilkan
informasi dari server web. Perangkat lunak ini kini telah dikembangkan dengan
menggunakan user interface grafis, sehingga pemakai dapat dengan melakukan
‘point and click’ untuk pindah antar dokumen.
2.9.2 Web Server Web server adalah komputer yang digunakan untuk menyimpan dokumen-
dokumen web, komputer ini akan melayani permintaan dokumen web dari
kliennya. Komputer dapat dikatakan sebagai web server jika komputer tersebut
34
memiliki suatu program server yang disebut Personal Web Server (PWS). PWS
ini difungsikan agar halaman web yang ada didalam sebuah komputer server
dapat dipanggil oleh komputer klien.
Macam – macam web server :
a. Apache Web Server – The HTTP Web Server
b. Apache Tomcat
c. Microsoft Windows Server 2003 Internet Information Services (IIS)
d. Lighttpd
e. Sun Java System Web Server
f. Xitami Web Server
g. Zeus Web Server
2.10 Pengertian Internet
Internet “Interconnected Network atau yang lebih populer dengan sebutan
Internet – adalah sebuah sistem komunikasi global yang menghubungkan
komputer – komputer dan jaringan – jaringan komputer di seluruh dunia “.
(Purbo, 1998). Setiap komputer dan jaringan terhubung secara langsung maupun
tidak langsung ke beberapa jalur utama yang disebut “internet backbone” dan
dibedakan satu dengan yang lainnya menggunakan “unique name” yang biasa
disebut dengan “alamat IP” 32bit.
Komputer dan jaringan dengan berbagai platform yang mempunyai perbedaan dan
ciri khas masing – masing (Unix, Linux, Windows, Mac, dll) bertukar informasi
dengan sebuah protokol standar yang dikenal dengan nama TCP/IP (Transmission
Control Protocol/Internet Protocol). TCP/IP tersusun atas 4 layer (network
access, internet, host-to-host transport, dan application) yang masing – masing
memiliki protokolnya sendiri – sendiri.
35
2.10.1 Media Penghubung
Saat ini dikenal 2 (dua) macam media penghubung pada jaringan
komputer, yaitu media penghubung kabel dan media penghubung dengan
menggunakan gelombang radio (Wi-Fi).
Perbedaan yang mencolok dari kedua bentuk media penghubung di atas
adalah pada sisi instalasinya. Penggunaan media penghubung (Wi-Fi) mudah
untuk diinstalasi dan penempatan komponen jaringan lebih fleksibel.
2.11 Pendekatan Test / Pengujian
Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas
perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain, dan
pengkodean. Terdapat 2 macam bentuk pendekatan test / pengujian :
1) Pendekatan White Box
Pendekatan White Box adalah meramalkan cara kerja perangkat lunak
secara rinci, karena jalur logika (logical path) perangkat lunak akan ditest dengan
menyediakan test case yang akan mengerjakan kumpulan kondisi dan atau
pengulangan secara spesifik. Secara sekilas dapat diambil kesimpulan white box
testing merupakan petunjuk untuk mendapatkan program yang benar secara
100%.
Uji coba white box adalah metode perancangan test case yang
menggunakan struktur kontrol dari perancangan prosedural untuk mendapatkan
test case. Dengan menggunkan metode white box, analis sistem akan dapat
memperoleh test case sebagai berikut :
a. Menjamin seluruh kebebasan jalur di dalam modul yang dikerjakan
miinimal sekali.
b. Mengerjakan seluruh keputusan logika.
c. Mengerjakan seluruh perulangan yang sesuai dengan batasannya.
d. Mengerjakan seluruh struktur data internal yang menjamin validitas.
36
2) Pendekatan Black Box
Pengujian Black Box berfokus pada persyaratan fungsional perangkat
lunak. Pengujian ini memungkinkan analis sistem memperoleh kumpulan kondisi
masukan yang akan mengerjakan seluruh keperluan fungsional program. Tujuan
metode ini mencari kesalahan pada :
a. Fungsi yang salah atau hilang.
b. Kesalahan pada interface.
c. Kesalahan pada struktur data atau akses basis data.
d. Kesalahan performansi.
e. Kesalahan insialisasi dan tujuan akhir.
Pengujian Black Box dirancang untuk menjawab pertanyaan sebagai berikut :
a. Bagaimana validitas fungsional diuji
b. Apa kelas input yang terbaik untuk uji coba yang baik
c. Apakah sistem sangat peka terhadap nilai input tertentu
d. Bagaimana jika kelas data yang terbatas dipisahkan
e. Bagaimana volume data yang dapat ditoleransi oleh sistem?
f. Bagaimana pengaruh kombinasi data terhadap pengoperasian sistem
Untuk menganalisa pengujian metode black box dilakukan dengan tiga cara :
1. Pemisah padanan (equivalence partitioning)
a. Menggunakan data terpisah yang diturunkan dari test case.
b. Satu test case menemukan sekumpulan kesalahan yang spesifik
yang biasanya membutuhkan beberapa test case.
c. Mengurangi jumlah test case yang dibuat.
2. Analisa batas nilai (boundary value analisys)
a. Merupakan pelengkap dari equivalence partitioning.
b. Sebagian besar masalah terjadi pada batas input. Bukan pada inti
dari input domain.
c. Contohnya : pengujian batas atas / bawah dari sebuah array.
3. Pengujian grafik (graph-based testing)
Menggunakan graph untuk merepresentasikan object dan relasinya
terhadap object lain.