BAB II LANDASAN TEORI
C. Perangkat Lunak Pembangun Sistem
3. MySQL
Menurut Sugiri (2008: 1), MySQL merupakan database yang bersifat client server, dimana data diletakkan di server yang bisa diakses melalui komputer client. MySQL dibuat sekitar tahun 1994/1995 dan dikembangkan oleh sebuah perusahaan di Swedia yang bernama MySQL AB dengan istilah T.c.X DataKonsult AB. Tujuannya adalah untuk mengembangkan aplikasi web yang didmiliki oleh kliennya.
Menurut Andi (2011) Database atau sering disebut basis data adalah sekumpulan informasi yang disimpan dalam komputer secara sistematik dan merupakan sumber sistem informasi yang dapat diperiksa menggunakan suatu program komputer. Database berfungsi untuk menyimpan informasi atau data.Database merupakan sekumpulan dan
sebagai penyedian informasi bagi pengguna atau user. Untuk mengolah database diperlukan software yang sering disebut dengan DBMS (Database Management Sysstem). Dengan DBMS pengguna atau user dapat membuat, mengelola, mengontrol, dan mengakses database dengan mudah, praktis dan efesien.
Database terdiri dari table yang didalamnya terdapatfield-field, dan sebuah database bias terdiri dari beberapa table. Dalam perbuatan database, hal-hal yang perlu diperhatikan adalah sebagai berikut :
a. Setiap table dalam database, harus memiliki field (kolom) yang unik disebut dengan prymay key.
b. Table dalam database tidak boleh ada redundancy data yaitu mengandung record ganda. Jika terdapat data yang sma, maka perlu dilihat kembali rancangan tabelnya.
c. Pilih tipe data yang tepat, sehingga ukuran database seminimal mungkin.
MySQL merupakanRelational Database Management System (RDBMS) yang didistribusikan secara gratis di bawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed source atau komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structure Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan/seleksi dan pemasukkan data yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Kendala suatu sistem database (DBMS) dapat diketahui dan cara kerja optimizer-nya dalam melakukan proses perintah-perintah SQL, yang dibuat oleh user maupun program-program aplikasinya. Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan dengan database server yang lainnya dalam query data.
Keistimewaan MySQL Sebagai database yang dimiliki konsep database modern, MySQL memiliki banyak sekali keistimewaan yang dimiliki oleh MySQL :
1) Portability
MySQL dapat berjalan stabil pada berbagai sistem operasi di antaranya adalah seperti Windows, Linux, FreeBSD, Mac OS X server, Solaris, Amiga, HP-UX dan masih banyak lagi.
2) Open Soure
MySQL didistribusikan secara open soure (gratis), di bawah lisensi GPL.
3) Multiuser
MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.Hal ini memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan.
4) Performance Tuning
MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhan, , dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
5) Column Types
MySQL memiliki tipe kolom yang sangat kompleks, seperti signed/ unsigned integer, fload, double, char, varchar, text, blob, date, time, datetime, year, serta enum.
6) Command dan Function
MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam query.
7) Security
MySQL memiliki beberapa lapisan sekuritas seperti level subnetmask, nama host , dan user dengan system perizinan yang mendetail serta password terensripsi.
8) Stability dan Limits
MySQL mampu menangani database dalam skala besar, dengan jumlah records lebih dari 50 juta dan 60 ribu table serta 5 miliar baris. Selain itu, batas indeks yang daoat ditampung mencapai 32 indeks pada tiap tabelnya.
9) Connectivity
MySQL dapat melakukan koneksi dengan client menggunakan protocol TCP/IP, Unix soket (Unix), atau Named Pipes (NT).
10) Localisation
MySQL dapat mendeteksi pesan kesalahan (error code) pada clent dengan menggunakan lebih dari dua puluh bahasa. Meski demikian, bahasa Indonesia belum termasuk di dalamnya.
11) Interface
MySQL memiliki interface (antar muka) terhadap berbagai aplikasi dan bahasa pemograman dengan menggunakan fungsi API (Application Programming Interface).
12) Client dan Tools
MySQL dilengkapi dengan berbagai tool yang dapat digunakan untuk administrasi database, dan pada setiap tool yang ada disertai petunjuk online.
13) Struktur Tabel
MySQL memiliki struktur table yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan database lainnya semacam Postgre SQL ataupun Oracle.
b. WEB
Word Wide Web (WWW) atau juga dikenal dengan WEB adalah salah satu layanan yang didapat oleh pemakai komputer yang terhubung ke internet. Pertama kali diciptakan pada tahun 1991 di CREN, Laboratorium Fisika Partikel Eropa, Jenawa, Swiss. Tujuan awalnya
adalah untuk menciptakan media yang mudah untuk berbagi informasi di anatara para fisikawan dan ilmuan. Web menggunakan protokol yang disebut HTTP (HyperText Transfer Protocol) berjalan pada TCP/IP.
Adapaun dokumen Web ditulis dalam format HTML (HyperText Markup Language). Informasi yang terdapat pada Web disebut halaman Web (web page). Untuk mengakses sebuah halaman Web dari browser, pemakai perlu menyebutkan URL (Uniform Resource Lacator). URL tersusun atas tiga bagian:
a. Format Transfer b. Nama host, dan c. Path berkas dokumen.
30 A. Analisa Sistem yang Sedang Berjalan
Analisa sistem yang sedang berjalan merupakan pedoman untuk merancang sistem baru, karena dengan menganalisa sistem yang sedang berjalan diketahui kelemahan-kelemahan dari sistem yang lama dan keunggulan sistem baru. Sistem lama akan dijadikan perbandingan terhadap sistem baru yang akan diterapkan. Dalam analisa dan perancangan sistem ini, kegiatan yang akan dilakukan adalah menitik beratkan pada penelitian dan penjabaran dari sistem yang sedang berjalan untuk mendapatkan suatu data nyata secara detail sesuai dengan fakta-fakta yang ada dalam penelitian.
Hal ini mengakibatkan sistem lama kewalahan dalam mengolah data transaksi dalam mengolah data dan akhirnya sistem tidak terpakai lagi, sistem infromasi yang yang lama masih mengolah data secara konvensional yaitu dicatat dengan buku sehingga memiliki masalah-masalah seperti yang telah dirumuskan dalam BAB I.
B. Perancangan Sistem 1. Actor
Actor yang berperan dalam sistem ini adalah : Tabel 3.1 Activity Diagram
Actor Peran
Pelanggan 1. Melakukan registrasi.
2. Login.
3. Melakukan pemesanan jasa.
4. Lihat Status.
5. Memberikan keluhan jika ada.
Admin/ Operator 1. login.
2. Melakukan input transaksi.
3. Melihat data pelangggan yang mendaftar.
4. Update status cucian.
5. Membuat laporan bulanan.
2. Usecase Diagram
Usecase diagram memperlihatkan suatu urutan interaksi antara dua actor dan sistem. Seperti pada gambar berikut dimana actor (pelanggan) melakukan input data pendaftaran atau registrasi dan login ke sistem.
Kemudian pelanggan bisa menggunakan jasa dalam memesan jasa untuk penjemputan pakaian ke rumah, yang kan disetujui oleh actor (admin/operator). Setelah itu penyedia jasa akan melakukan penjemputan pakaian dan melakukan proses pencucian dan mengupdate status cucian pelanggan.
Gambar 3.1 Usecase Diagram 3. Sequence Diagram
Sequence Diagram menggambarkan interaksi antara objek yang ada disekitar sistem.
a. Sequence Diagram Pelanggan
Gambar 3.2 Sequence Diagram Pelanggan b. Sequence Diagram Admin/operator
Gambar 3.3 Sequence Diagram Admin/operator
4. Activity Diagram
Activity Diagram menggambarkan interaksi antara objek yang ada disekitar.
a. Activity Diagram Pelanggan
Activity Diagram pada pelanggan ini menggambarkan pelanggan dapat melakukan registrasi. Apabila telah registrasi pelanggan bisa melakukan login dengan measukkan username dan password, maka pelanggan bisa masuk ke sistem dan dapat melakukan input pesan atau menggunkan jasa, cek status dan memberikan keluhan jika terdapat ketidak sesuaian barang yang diterima setelah menggunakan jasa laundry.
Gambar 3.4 Activity Diagram Pelanggan
b. Activity Diagram Admin/operator
Gambar 3.5 Sequence Diagram Admin/operator 5. Class Diagram
Class Diagram menggambarkan struktur dari suatu sistem yang disajikan dalam bentuk class beserta atribut-atribut dan hubungan antar class. Umumnya class diagram dari suatu sistem akan menggambarkan juga bagaimana struktur database yang dibutuhkan untuk membangun sistem tersebut.
Gambar 3.6 Class Diagram
6. Struktur Program
Setelah menganalisa sistem yang sedang berjalan serta melakukan penelitian pada Berkah Laundry dapat dirancang suatu sistem informasi baru yang diharapkan dapat meningkatkan efektifitas dan efisien kerja pada bisnis tersebut, dimana keseluruhan dari sistem tersebut tertuang dalam bentuk program aplikasi. Adapun struktur program yang dirancang adalah sebagai berikut :
a. Menu Admin
Menu Operator
Data Transaksi
Data Pengguna
Laporan
LOgout
Gambar 3.7 Menu Admin
b. Menu User
Menu User
Antar Jemput
Status
Faktur
Logout
Gambar 3.8 Menu User
C. Desain Terinci
Setelah User diberi gambaran umum, maka mulai muncul pandangan mengenai sistem yang akan diusulkan, agar pandangan tersebut dapat membuka mata, maka dapat dibuat desain atau rancangan secara lebih terinci.
Dari namanya kita sudah tahu bahwa desain ini bersifat, dimana sistem yang akan dibuat rancangan secara detail mulai dari perancangan database sampai perancangan output dan input.
1. Desain Output
Rancangan Output merupakan bentuk laporan yang dihasilkan sistem yang dirancang sedemikian rupa sehingga dapat digunakan untuk kemajuan suatu usaha dan dapat dipakai sebagai bahan perbandingan oleh pimpinan dalam mengambil keputusan. Adapun desain output yang telah penulis rancang adalah sebagai berikut :
a. Laporan Bulanan
Batusangkar Berkah Laundry
Jalan Raya Cubadak, Lima Kaum
BERK A H LA U N D RY
SILVA N O V IK A
LAPORAN BULANAN UANG MASUK
X (date)
X (date) X (50)
X (50) X (10)
X (10)
No Tanggal Terima N am a Lengkap Harga
Total
Gambar 3.9 Laporan Bulanan
b. Data Pengguna
NO Nama Alamat Telepon
X(50)
X(50)
X(30)
X(30)
X(12)
X(12)
Data Pengguna
Gambar 3.10 Data Pengguna
c. Data Transaksi
Gambar 3.11 Data Transaksi
d. Faktur
Batusangkar Berkah Laundry
Jalan Raya Cubadak, Lima Kaum
BERK A H LA U N D RY
No Tanggal Terima Nama Pelanggan Harga
Total
Tanggal S elesai X(d a te )
X(d a te )
Jenis Layanan Detail Berat
X(En u m)
X(En u m) X(3 0 0 )
X(3 0 0 )
X(6 ) X(6 )
Gambar 3.12 Faktur 2. Desain Input
a. Input Daftar
Sistem Informasi E-Laundry Berbasis Web
Nama Lengkap
Gambar 3.13 Input Daftar
b. Input Login
Halaman Login
Login
X(30)
X(30)
Gambar 3.14 Input Login c. Input Pesanan
Sistem Informasi
Gambar 3.15 Input pesanan
3. Desain Tabel
a. Tabel Registrasi
Database Name : laundry
Table Name : registrasi
FieldKey : kode_user
Fungsi : Menyimpan data registrasi
Tabel 3.2 Tabel Registrasi
Elemen Data Nama Field Type Size Ket
Kode User kode_user Int 11 Primary key
Username username Varchar 30
-Password password Varchar 30
-Nama Lengkap
nama_lengk ap
Varchar 50
-Level level Enum ‘operator
’,’user’
-Alamat alamat Varchar 30
-Telepon telepon Varchar 12
-b. Tabel Menu
Database Name : laundry Table Name : menu FieldKey : idtransaksi
Fungsi : Menyimpan data transaksi Tabel 3.3 Tabel Menu
Elemen Data Nama Field Type Size Ket
Id Menu idmenu Int 30 Primary key
Kode User kode_user Int 30
-Profile profile Varchar 300
-Jenis Layanan keluhan Varchar 300
-Tarif jenis_layanan Varchar 300
-Perangkat perangkat Varchar 300
-c. Tabel Transaksi
Database Name : laundry Table Name : transaksi
FieldKey : idtransaksi
Fungsi : Menyimpan data transaksi Tabel 3.4 Tabel Transaksi
Elemen Data Nama Field Type Size Ket
Id Transaksi idtransaksi Int 11 Primary key
Nama Lengkap nama_lengkap Varchar 50
-Alamat alamat Varchar 50
-Telepon telepon Varchar 12
-Tgl Terima tglterima Date -
-Tgl Selesai tglselesai Date -
-Status status Enum -
-Keluhan keluhan Varchar 300
-Jenis Layanan Jenis_layanan Enum -
-Detail detail Varchar 300
-Berat berat Varchar 6
-Harga harga Varchar 10
-43
Bab ini merupakan bagian terakhir dalam penulisan Tugas Akhir ini.
Penulis menyadari bahwa sistem yang di usulkan ini masih ada kelemahan-kelemahan dan kekurangan. Berdasarkan pembahasan yang telah dilakukan pada bab-bab sebelumnya dari Tugas Akhir ini, maka penulis dapat mengambil kesimpulan sebagai berikut:
1. Telah dirancang sebuah sistem informasi E-Laundry Berbasis Web (Studi Kasus : Berkah Laundry) di Cubadak, Kecamatan Lima Kaum, Kabupaten Tanah Datar sehingga dapat menghindari terjadinya kesalahan dan mempermudah dalam entri data pelanggan, membuat laporan, mengolah keluhan pelanggan sehingga menghasilkan data yang valid.
2. Sistem informasi ini dilengkapi dengan penyimpanan data dalam bentuk database dengan menggunakan bahasa pemograman PHP sehingga menghasilkan data dan laporan lebih cepat.
B. Saran
Berdasarkan analisa yang telah dilakukan, maka saran terhadap pembuatan Sistem Informasi E-Laundry Berbasis Web (Studi Kasus : Berkah Laundry) ini adalah :
1. Diharapkan pada Sistem Informasi E-Laundry Berbasis Web (Studi Kasus : Berkah Laundry) ini agar bisa dikembangkan untuk digunakan pada penyedia jasa dan dapat dikembangkan dengan sistem operasi lainnya.
2. Sistem Informasi E-Laundry Berbasis Web (Studi Kasus : Berkah Laundry) ini masih mengenai pencatatan transaksi, pengajuan keluhan, pencarian data pelanggan dan pembuatan laporan. Diharapkan untuk pengembangan selanjutnya agar Sistem Informasi E-Laundry Berbasis
Web (Studi Kasus : Berkah Laundry) lebih kompleks dengan cangkupan yang lebih luas dan fitur-fitur yang semakin lengkap.
Hariningsih, SP. 2005. Teknologi Informasi, Yogyakarta: GRAHA ILMU.
Hartono. 2017. Manajemen Sistem Informasi Perpustakaan (Konsep, Teori dan Implementasi), Yogyakarta: GAVA MEDIA.
Kadir, Abdul. 2014. Pengenalan Sistem Informasi Edisi Revisi, Yogyakarta:
PENERBIT ANDI.
Kroenke, M David. 2005. Database Processing Dasar-dasar, Desain &
Implementasi, Jakarta: PENERBIT ERLANGGA.
Nugroho, Adi. 2005. ANALISA dan PERANCANGAN SISTEM INFORMASI dengan METODOLOGI BERORIENTASI OBJEK, Bandung:
INFORMATIKA BANDUNG.
Sugiri, Haris Saputro. 2008. Pengelolaan Database MySQL dengan PhpMyAdmin, Yogyakarta: GRAHA ILMU.
Supriyanto, Aji. 2005. Pengantar Teknologi Informasi, Jakarta: SALEMBA INFOTEK.
Sutabri, Tata. 2004. Analisa Sistem Informasi, Yogyakarta: PENERBIT ANDI.
Yakub. 2012. Pengantar sistem Informasi, Yogyakarta: GRAHA ILMU.
Yusup, Pawit M, dan Priyo Subekti. 2010 Teori & Praktik Penelusuran Informasi (Information Retrieval), Jakarta: KENCANA.
Wahyono, Teguh. 2004. Sistem Informasi (Konsep Dasar, Analisis Desain dan Implementasi), Yogyakarta: GRAHA ILMU.
mysql_select_db("laundry") or die (mysql_error());
<title>Sistem Informasi E-Laundry</title>
<style type="text/css">
margin: 0 auto;
margin-top : 12%;
}
border-bottom: 3px solid #FC6;
}
#inputan{
background-color: #eaeaec;
padding: 10px;
border: 0;
} .lg{
width : 240px;
}
<div id="judul">Berkah Laundry</div>
<div id="inputan">
<div style="margin-top:10px;">
<div align="center">
<a href="login.php"><input type="submit" name="login" value="Login Admin"
class="btn"/></a>
</div>
<div style="margin-top:10px;">
<div align="center">
<a href="login.php"><input type="submit" name="login" value="Login User"
class="btn"/></a>
</div>
</div>
<div style="margin-top:10px;">
<div align="center"> <a href="formdaftar.php"><input type="submit"
name="daftar" value="Register" class="btn"/></a>
<div id="footer">CopyRight®2019 Berkah Laundry<br /> Progremer By Indah Puspa Sari<br />
</div>
<form id="form1" name="form1" method="post" action="prosesdaftar.php">
<div align="center">
<p> </p>
<div align="center">
<table width="590" border="1">
<tr>
<td width="580" bgcolor="#FFCC99"><div align="center">
<h3 align="center"><font color="#FFFFFF">Sistem Informasi</font></h3>
<h1 align="center"><strong><font color="#FFFFFF">E-Laundry Berbasis Web</font></strong></h1> </div></td>
</tr>
<tr>
<td bgcolor="#FFFFFF"><div align="center">
<h4 align="center">Oleh : Indah Puspa Sari</h4>
<div align="center">
<table width="495" border="0">
<tr>
<td width="156">Nama Lengkap</td>
<td width="323"><input type="text" name="nama_lengkap" id="nama_lengkap"
/></td>
<tr>
<td>Telepon</td>
<td><input type="text" name="telepon" id="telepon" /></td>
</tr>
<tr>
<td>Username</td>
<td><input type="text" name="username" id="username" /></td>
</tr>
<tr>
<td>Password</td>
<td><input type="password" name="password" id="password" /></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="daftar" id="daftar" value="Daftar" /></td>
</tr>
// ambil data dari formulir
$nama_lengkap = $_POST['nama_lengkap'];
$alamat = $_POST['alamat'];
$telepon = $_POST['telepon'];
$username = $_POST['username'];
$password = $_POST['password'];
// buat query
$sql = "INSERT INTO registrasi ( nama_lengkap, alamat, telepon, username, password) VALUE ( '$nama_lengkap', '$alamat', '$telepon', '$username', '$password')";
$query = mysqli_query($db, $sql);
// apakah query simpan berhasil?
if( $query ) {
// kalau berhasil alihkan ke halaman index.php dengan status=sukses header('Location: berkahlaundry.php?status=sukses');
} else {
// kalau gagal alihkan ke halaman indek.php dengan status=gagal header('Location: berkahlaundry.php?status=gagal');
background-color: #FFC;
}
#utama{
width: 300px;
margin: 0 auto;
margin-top : 12%;
}
border-bottom: 3px solid #FC6;
}
#inputan{
background-color: #eaeaec;
padding : 20px;
border-bottom-right-radius: 10px;
width : 240px;
}
</head>
<form action="" method="post">
<div>
<input type="text" name="user" placeholder="Username" class="lg" id="user"/>
</div>
<div style="margin-top:10px;">
<input type="password" name="pass" placeholder="Password" class="lg"
id="pass"/>
</div>
<div style="margin-top:10px;">
<input type="submit" name="login" value="Login" class="btn"/>
</div>
</form>
<?php
$user = @$_POST['user'];
$pass = @$_POST['pass'];
$login = @$_POST['login'];
if($login){
if($user== "" ||$pass==""){
?> <script type="text/javascript">alert("Username / password tidak boleh kosong");</script> <?php
} else{
$sql = mysql_query("select * from registrasi where username='$user' and password='$pass'") or die (mysql_error());
$data = mysql_fetch_array($sql);
$cek = mysql_num_rows($sql);
if ($cek >= 1){
if($data['level']== "user"){
@$_SESSION['user']= $data['kode_user'];
}else{
<title>Halaman Utama User</title>
<style type="text/css">
margin: 0 auto;
margin-top : 12%;
}
#judul{
border-top-right-radius: 10px;
border-top-left-radius: 10px;
border-bottom: 3px solid #FC6;
}
#inputan{
background-color: #eaeaec;
padding : 20px;
border-bottom-right-radius: 10px;
width : 240px;
}
<div id="judul">MENU</div>
<div id="inputan">
<div style="margin-top:10px;">
<div align="center">
<p><a href="formpelanggann.php">
<input type="submit" name="antarjemput" value="Antar Jemput" class="btn"/>
</a></p>
</div>
<div style="margin-top:10px;">
<div align="center">
<p><a href="datapelanggann.php">
<input type="submit" name="data" value="Data" class="btn"/>
</a></p>
<input type="submit" name="faktur" value="Faktur" class="btn"/>
</a>
</p>
<p><a href="dataedit.php">
<input type="submit" name="keluhan" value="Edit Keluhan" class="btn"/>
</a></p>
</div>
<div style="margin-top:10px;">
<p align="center"><a href="logout.php">Logout</a></p>
</p>
<body background="background.png">
<form id="form1" name="form1" method="post"
action="prosespelanggann.php">
<div align="center">
<p> </p>
<div align="center">
<table width="590" border="1">
<tr>
<td width="580" bgcolor="#FFCC99"><div align="center">
<h3 align="center"><font color="#FFFFFF">Sistem Informasi</font></h3>
<h1 align="center"><strong><font color="#FFFFFF">BERKAH LAUNDRY</font></strong></h1>
</div></td>
</tr>
<tr>
<td bgcolor="#FFFFFF"><div align="center">
<h4 align="center">Oleh : Indah Puspa Sari</h4>
<div align="center">
<table width="495" border="0">
<tr>
<td>Id Transaksi</td>
<td><input type="text" name="idtransaksi" id="idtransaksi" /></td>
</tr>
<tr>
<td width="156">Nama </td>
<td width="323"><input type="text" name="nama_lengkap" id="nama_lengkap"
/></td>
</tr>
<tr>
<td>Alamat</td>
<td><textarea name="alamat" id="alamat" cols="45" rows="5"></textarea></td>
</tr>
<tr>
<td>Telepon</td>
<td><input type="text" name="telepon" id="telepon" /></td>
<tr>
<td>Tanggal Selesai</td>
<td><input type="datetime" name="tglselesai" id="tglselesai" /></td>
<td><input type="datetime" name="tglselesai" id="tglselesai" /></td>