SISTEM INFORMASI PEMESANAN KASET DAN CD DENGAN MANAJEMEN TRANSAKSI MENGGUNAKAN JSP DAN MySQL (Studi Kasus di Bulletin Music Shop, Yogyakarta) SKRIPSI Ditujukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika Disusun oleh : Nama : Yuwinda Aryono NIM : 035314044 JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2009 i
103
Embed
SISTEM INFORMASI PEMESANAN KASET DAN CD DENGAN MANAJEMEN …repository.usd.ac.id/32282/2/035314044_Full.pdf · Tujuan dari Tugas Akhir ini adalah mengembangkan sistem informasi pemesanan
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
SISTEM INFORMASI PEMESANAN KASET DAN CD DENGAN
MANAJEMEN TRANSAKSI MENGGUNAKAN JSP DAN MySQL (Studi Kasus di Bulletin Music Shop, Yogyakarta)
SKRIPSI
Ditujukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana
Teknik Jurusan Teknik Informatika
Disusun oleh :
Nama : Yuwinda Aryono
NIM : 035314044
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2009
i
THE INFORMATION SYSTEM OF CASSETTE AND CD
RESERVATION WITH TRANSACTION MANAGEMENT
USING JSP AND MySQL
(A CASE STUDY AT BULLETIN MUSIC SHOP, YOGYAKARTA)
A Thesis
Presented as Partial Fullfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Informatics Engineering
By :
Name : Yuwinda Aryono
Student Number : 035314044
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2009
ii
HALAMAN PERSEMBAHAN
Ku persembahkan Karyaku untuk :
…
Allah Bapa Yang Maha Kuasa yang selalu memberiku karunia
dan anugrah serta selalu mengabulkan doa-doaku.
…
Orang tua ku yang telah membesarkan dan mendidik ku, terima
kasih atas perhatian dan pengorbanan yang memberikan yang
terbaik untuk ku.
…
Kakak-kakakku yang selalu mengalah untuk ku dan atas
semangat serta dukungannya
…
Keluarga besar yang selalu memberi dukungan dan doa.
…
Seseorang yang selalu menemani ku dalam suka dan duka,
terima kasih juga atas dukungan dan doanya.
…
Sahabat-sahabatku yang memberikan keceriaan dan smangat
yang tidak akan pernah aku lupakan
v
HALAMAN MOTTO
Segala sesuatu pasti bisa kita capai
Dengan harapan dan hasrat
Dengan usaha dan kerja keras untuk mencapainya
Tanpa usaha dan kerja keras
Maka tidak akan mungkin mendapatkan yang kita ingin
vi
vii
ABSTRAKSI
Sistem informasi pemesanan kaset dan CD ini dibuat untuk membantu
Bulletin Music Shop untuk menangani proses pemesanan secara online, dengan
tujuan customer yang ingin mendapatkan kaset CD bisa memesan terlebih dulu,
sehingga tidak takut kehabisan kaset CD yang diinginkan.
Sistem ini dibuat untuk multi user dengan menggunakan manajemen
transaksi dengan level isolasi serializable. Sistem dijalankan pada Sistem Operasi
Windows, dengan menggunakan JSP sebagai bahasa pemrograman, dan Apache
tomcat sebagai Web Server, serta MySQL sebagai database sistem yang dibuat.
Dengan adanya sistem pemesanan secara online dengan manajemen
transaksi, maka customer yang diinginkan dan bila kaset yang tersedia tinggal satu
dan customer yang memesan lebih dari satu pada waktu yang bersamaan maka
hanya salah satu customer yang mendapatkan.
viii
ABSTRACT
The information system of cassette and CD reservation pretended to
help. Bulletin Music Shop, for reservation process by online. In order to, the
customer gets cassette and CD, with order first so that, it impossible cassette and
CD loss.
The system’s made for Multiuser with using transaction management of
isolation level serializable. It’s operated on Windows operation system, with JSP
as programme language, Apache tomcat as web server, and MySQL as database
system.
Thus, online reservation system with transaction management customer
can order cassette and CD, what they are want. If cassette and CD is only one,
while there are two instructins on the same time, then only one customer has
found it.
ix
KATA PENGANTAR
Puji serta syukur penulis panjatkan kepada Yesus Kristus, atas segala cinta
kasihnya penulis dapat menyelesaikan tugas akhir ini dengan baik dan lancar.
Penulis menyadari bahwa ada begitu banyak pihak yang telah memberikan
bantuan dan perhatian selama penulis mengerjakan tugas akhir ini. Oleh karena itu
penulis ingin mengucapkan terima kasih antara lain kepada :
1. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Dosen Pembimbing I, yang
telah memberikan bimbingan, dukungan, dan fasilitas yang mendukung,
sehingga penulis dapat menyelesaikan laporan tugas akhir ini dengan baik.
2. Ibu Ridowati Gunawan, S.Kom., M.T., selaku pembimbing akademik Jurusan
Teknik Informatika angkatan 2003.
3. Bapak Puspaningtyas Sanjoyo Adi, S.T., M.T., selaku Ketua Jurusan Teknik
Informatika Universitas Sanata Dharma.
4. Ibu Agnes Maria Polina, S.Kom., M.Sc., Ibu Ridowati Gunawan, S.Kom.,
M.T., dan Bapak JB. Budi Darmawan, selaku panitia penguji yang telah
memberikan banyak kritik dan saran demi sempurnanya tugas akhir penulis.
5. Bapak dan Ibu dan Keluarga besarku yang telah memberikan dukungan dan
semangat serta pengorbanannya selama ini.
6. Mas dan Mbak penulis semua, terutama mas yudi terima kasih atas dukungan
dan fasilitas yang diberikan untuk menunjang studi penulis.
7. Teman dan sahabat Teknik Informatika 2003 yang telah memberi banyak
pengalaman selama ini.
x
8. Dan seluruh pihak yang tidak dapat penulis sebutkan satu per satu yang telah
membantu penulis dalam menyelesaikan tugas akhir ini.
Akhir kata, saya menyadari bahwa dalam pembuatan tugas akhir ini
masih banyak kekurangan dan keterbatasa. Oleh karena itu saya mengharapkan
kritik dan saran dari pembaca agar laporan ini dapat berguna bagi semua pihak.
Yogyakarta, Juli 2009
Penulis
xi
DAFTAR ISI
Halaman Judul ……………………………………………………………...i
Halaman Judul ……………………………………………………………..ii
Halaman Persetujuan ……………………………………………………………iii
Halaman Pengesahan …………………………………………………………….iv
Halaman Persembahan…………………………………………………………….v
Halaman Motto …………………………………………………………….vi
Halaman Pernyataan ……………………………………………………………vii
Abstraksi …………………………………………………………..viii
Abstract ………………………….…………………………………ix
Kata Pengantar ……………………………………………………………..x
Daftar Isi ………………………………………………………........xii
Daftar Tabel …………………………………………………………...xvi
Daftar Gambar ………………………………………………………..…xvii
Daftar Listing ………………………………………………………........xx
BAB I PENDAHULUAN ……………………………………………………..1
1.1 Latar Belakang ……………………………………………………..1
1.2 Perumusan Masalah ……………………………………………………..2
1.3 Tujuan …………………………………..........................................2
1.4 Batasan Masalah ……………………………………………………..2
1.5 Metodologi ……………………………………………………………..3
1.6 Sistematika Penulisan ……………………………………………………..4
xii
BAB II LANDASAN TEORI ..……………………………………………6
2.1 Sistem, Informasi, Sistem Informasi ……………………………………..6
JSP memyediakan tag yang khusus ditujukan untuk melakukan
pendeklarasian variable yang berlevel halaman. Variable seperti ini akan dikenal
sepanjang halaman. Tag yang dimaksud biasa dinamakan tag deklaratif. Tag ini
berbentuk sebagai berikut :
<%! … %>
Tag deklaratif selain digunakan untuk mendeklarasikan variable juga
dapat digunakan untuk mendeklarasikan metode.
2.3.7 Servlet
Teknologi servlet adalah dasar dari aplikasi web menggunakan bahasa
pemrograman Java. Servlet merupakan salah satu teknologi yang penting dalam
java, dan mendasari teknologi untuk teknologi java berbasis web yang umum,
yaitu JSP.
Servlet (dan juga JSP) memberikan keuntungan yang tidak didapat pada
teknologi lain :
• Performance. Unjuk kerja dari servlet sangat baik disbanding dengan CGI
karena tidak ada penciptaan proses untuk setiap kali client melakukan
request. Karena setiap request ditangani oleh proses pada servlet
container. Setelah servlet selesai melakukan proses suatu request, maka
servlet akan menetap di memori untuk menunggu request yang lain.
• Portability. Mirip dengan teknologi Java yang lain, aplikasi servlet adalah
ringkas.
19
• Pemakaian yang semakin luas. Saat ini semakin banyak vendor perangkat
lunak yang menggunakan teknologi java.
HTTP REQUEST
HTTP Response
Servlet Contain
servlet
Static Content
HTTP Server
Browser
Gambar 2.4. arsitektur servlet
Cara kerja servlet :
no
yes
no
yes
Is Servlet
Is server
Process
Load Servlet
Receive
Send Respons
gambar 2.5. cara kerja servlet
20
2.3.8 Tomcat
Tomcat adalah servlet container yang mengimplementasikan teknologi
Java Servlet dan Java Server Pages (JSP) dari Sun Microsystem. Tomcat dibuat
oleh Apache Software Foundation (ASF). Tomcat dibangun dalam bahasa
pemrograman Java dan dijalankan diatas Java Virtual Machine (JVM). Untuk
terhubung ke sebuah web server diperlukan komponen yang disebut sebagai
‘connector’. Tomcat dapat berjalan sendiri (standalone) tanpa webserver lain
dengan Apache HTTP Server, diperlukan connector JK2. Selain dapat
dihubungkan dengan Apache, Tomcat juga dapat digunakan dengan IIS (Internet
Information Service ), yaitu web server dari Microsoft.
Tomcat memiliki bootstrap process yang melakukan inisialisasi container
dan komponen-komponen didalamnya. Apabila sebuah aplikasi pertama kali
dijalankan maka Tomcat akan melakukan proses kompilasi dari JSP menjadi Java
Class. Hal ini membuat seakan-akan Tomcat sebagai webserver sangat lambat
atau berat. Tetapi jika dilakukan pemanggilan page yang sama untuk kedua kali
dan seterusnya, maka kinerja Tomcat menjadi lebih cepat, karena sekarang yang
dijalankan adalah Java bytecode yang sudah terkompilasi. Selanjutnya Java
bytecode tinggal dijalankan oleh JVM.
Penjelasan struktur direktori Tomcat :
1. Bin
Skrip startup, shutdown dan file lain.
21
2. Classes
Class yang tidak diekstrak (masih dipack) untuk aplikasi web global.
3. Conf
File konfigurasi Tomcat termasuk server.xml (file konfigurasi utama
Tomcat) dan web.xml global (file deployment descriptor) serta tomcat-
user.xml(file konfigurasi user Tomcat).
4. Server
File archive Tomcat.
5. Lib
File class umum dalam bentuk .jar
6. Logs
Direktori untuk menyimpan log Tomcat
7. Common
File class common untuk Catalina dan aplikasi web.
8. Webapps
Folder untuk menyimpan file-file dari aplikasi web,servlet, JSP, HTML,
static dan image serta file-file terkait.
9. Work
File servlet hasil kompilasi dari file JSP.
22
2.4 Web
Web pada dasarnya sama dengan homepage karena homepage pada situs
web berbentuk sebuah halaman yang ditulis dalam bahasa pemrograman web,
dengan isi informasi individu / personal atau kelompok / organisasi tertentu
ataupun informasi tertentu yang lebih spesifik. Homepage merupakan dokumen
pertama yang akan dilihat oleh user, setiap mengakses Web Server. Web dapat
dirancang dengan menggunakan bahasa pemrograman web yang tersedia di
pasaran. Apabila situs yang dibuat akan selesai maka perlu dilakukan pemilihan
domain yang akan digunakan untuk situs tersebut.
Domain adalah identitas suatu wilayah atau kelompok dalam sebuah
jaringan atau internet. Pada mulanya domain hanya digunakan untuk identitas
computer. Nama domain yang cukup besar dan paling banyak digunakan adalah
memiliki akhiran .com, akhiran com menunjukkan nama domain untuk
perusahaan (company). Selain .com terdapat beberapa akhiran nama domain yang
banyak digunakan, seperti .net, .edu, .org, dan .mil. Domain dengan akhiran .net
merupakan nama domain yang berhubungan dengan jaringan (networking).
Akhiran .edu berhubungan dengan dunia pendidikan (education), .org
berhubungan dengan organisasi, dan .mil berhubungan dengan militer. Dari nama-
nama domain ini telah berkembang bermacam-macam domain untuk
menunjukkan identitas, seperti Negara Indonesia menggunakan “id”. Biasanya
setelah mendapat nama domain, langkah terakhir adalah mencari tempat bagi situs
web tersebut.
23
Web hosting merupakan tempat dimana seseorang dapat menyimpan data
atau dokumen di sebuah web server. Data atau dokumen ini terhubung ke internet
dengan harapan dapat diakses orang lain.
2.5 HTML
HTML adalah bahasa universal yang dirancang untuk mempublikasikan
halaman web yang memiliki elemen berupa heading, teks, table, list, dan
sebagainya serta merupakan bahasa standar yang digunakan pada protocol HTTP.
Penulisan HTML dapat dilakukan dengan melalui text editor seperti Notepad yang
dimiliki oleh system operasi Windows ataupun editor lain seperti wordpad,
Microsoft Word dan lain-lain. HTML juga dapat memungkinkan dalam membuat
rancangan dokumen yang dapat dimanfaatkan untuk mencari informasi.
Ciri-ciri HTML :
1. Tersusun oleh tag-tag, misalnya <html> …. <html>
2. Pada umumnya tag selalu mempunyai tag pembuka seperti <html> dan
kemudian selalu ada tag penutupnya </html>, namun ada beberapa tag
yang tidak mempunyai tag penutup misalnya <br>, <hr>, dan
sebagainya.
3. Bukan merupakan case sensitive (huruf kecil dan besar dianggap
sama).
4. Nama file berupa *.html atau *.htm
Semua tag-tag tersebut harus diletakkan dalam tag <html> … </html>
24
Tag-tag dasar
<body>…</body> Untuk tampilan halaman web. Mempunyai
atribut bgcolor untuk warna background,
text untuk warna text
<br> Untuk pindah baris. Tanpa tag penutup
<h1>…</h1> Untuk membuat heading dan mempunayai 6
jenis heading. <h1>...</h1> yang paling
besar fontnya, <h6>…</h6> yang paling kecil
<hr> Membuat garis horizontal. Tanpa tag penutup
<center>…</center> Menengahkan kata
<b>…</b> Membuat huruf tebal
<big>…</big> Memperbesar teks dari ukuran normal
<i>…</i> Membuat huruf miring
<small>…</small> Memperkecil teks dari ukuran normal
<sub>…</sub> Membuat subscript
<sup>…</sup> Membuat superscript
<u>…</u> Membuat garis bawah
<font>…</font> Menentukan jenis font. Mempunyai atribut
face, size, dan color.
<p> Untuk membuat paragraph. Tanpa tag penutup
<pre>…</pre> Teks akan ditampilkan apa adanya seperti
yang kita ketik pada editor
<ul>…</ul> Membuat list tanpa nomor urut. Mempunyai
atribut berupa type
<ol>…</ol> Membuat list bernomor. Mempunyai atribut
type
<li> Membuat item-item pada list dan harus
25
berada di dalam tag <ul>…</ul> atau
<ol>…</ol>. Tanpa tag penutup
<img src =
”nama_file”>
Untuk menampilkan gambar. Jenis file yang
didukung adalah *.gif, *.jpg, *.jpeg,
*.png, dan *.tif. Tanpa tag penutup. Tag
ini juga mempunyai atribut align yang
berfungsi untuk mengatur posisi text
terhadap gambar, atribut border untuk
member bingkai gambar, height untuk tinggi
gambar, dan width untuk lebar gambar.
<table>…</table> Untuk membuat table. Mempunyai atribut :
Border : untuk mengatur bingkai table,
besarnya antara 0..10
Bgcolor : untuk member warna background
Width : untuk mengatur lebar table.
<captain>…</captain> Untuk membuat judul table.
<th>…</th> Untuk membuat judul kolom
<tr>…</tr> Untuk membuat baris dalam table. Mempunyai
atribut sama dengan <td>…</td>
<td>…</td> Untuk membuat satu sel data. Mempunyai
atribut-atribut :
Rowspan : untuk menggabungkan baris.
Colspan : untuk menggabungkan kolom.
Table 2.2 tag-tag HTML
26
2.6 MySQL
Bahasa standar yang digunakan dalam database adalah SQL (Structured
Query Language ). MYSQL adalah sebuah system manajemen database open
source, yang popular dan gratis untuk platform Unix dan Windows. System
manajemen MySQL menggunakan kumpulan perintah sederhana untuk
memanggil, memasukkan, menghapus, dan memperbaharui data.
Beberapa kemampuan MySQL antara lain :
a. MySQL bisa diakses dan dimanipulasi dari sejumlah bahasa
pemrograman terkenal, diantaranya C, C++, Java, Perl, Piton, dan PHP.
b. MySQL ditulis dalam C/C++ dan dioptimasi untuk platform Unix dan
Win32.
c. MySQL mendukung tipe data yang umum digunakan termasuk FLOAT,
DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, SET, dan
ENUM.
d. MySQL mendukung subset fungsi query dan pengelompokkan lanjaut,
termasuk diantaranya GROUP BY dan ORDER BY.
e. MySQL memungkinkan alokasi password tiap server. Password yang
melalui MySQL untuk melakukan authentifikasi terenkripsi.
f. MySQL mendukung berbagai macam metode koneksi, seperti TCP/IP,
soket Unix, dan koneksi untuk Windows NT/2000.
g. MySQL bisa diperoleh secara gratis termasuk aplikasi-aplikasi lain
yang diperlukan dalam memakai MySQL.
27
Perintah-perintah SQL terbagi menjadi tiga kelompok, yaitu :
1. DDL (Data Definition Language )
Perintah yang digunakan untuk mendefinisikan data. Pernyataan-
pernyataannya berkaitan dengan pembuatan table, penghapusan table,
dan lain-lain. Misalnya create table, drop table, dan sebagainya.
Hasil kompilasi dari statement DDL adalah satu set table yang disimpan
pada file khusus yang disebut Data Dictionary. Data Dictionary adalah
file yang berisi Meta Data yaitu “data mengenai detail pembuatan data
tersebut”.
2. DML (Data Manilupation Language)
Perintah yang digunakan untuk memanipulasi/memodifikasi data. Yaitu
perintah-perintah yang berkaitan dengan penambahan data, penghapusan
data, menampilkan data, ppenyisipan data, dan lain-lainnya. Misalnya
select, insert, update, dan sebagainya.
3. DCL (Data Control Language)
Perintah yang digunakan untuk membantu mengontrol keamanan setiap
database atau sebagai dari isi database dengan membuat hak-hak akses
tertentu bagi user. Misalnya grant digunakan untuk memberikan hak-hak
tertentu kepada seorang user dan revoke digunakan untuk mencabut hak-
hak tertentu dari seorang user terhadap database tertentu. Software
database yang akan digunakan adalah MySQL
28
2.7 Use Case
“Use case modeling is the process of modeling systenm’s function in term
of business events, who initiated the events, and how the system responds to the
events” (Whitten, 2001).
Use case diagram adalah sebuah diagram yang menggambarkan interaksi
antara sistem dan eksternal sistem serta user.
Symbol dasar use case diagram antara lain :
1. Use case
“A use case is a behaviorally related sequence of steps (a scenario)
both automated and manual for the purpose of completing a single
business task” (Whitten, 2001). Use case merupakan bagian dari
seluruh fungsi system.
Use Case
Gambar 2.6. Simbol Use Case
2. Actor
“An actor represents anything that needs to interact with the system to
exchange information”. (Whitten, 2001)
29
Actor1
Gambar 2.7. Simbol Actor
3. Use case association relationship
Association adalah relasi antara actor dan sebuah use case, dimana
terjadi interaksi antar mereka.
Actor Use Case
Gambar 2.8. Simbol Use Case Association Relationship
2.8 Data Flow Diagram (DFD)
Data Flow Diagram (DFD) digunakan untuk menggambarkan suatu
sistem yang telah ada atau system baru yang akan dikembangkan secara logika
tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir atau
lingkungan fisik dimana data tersebut akan disimpan. DFD merupakan alat yang
digunakan pada metodologi pengembangan sistem yang terstruktur (Structural
Analysis and Design).
Simbol yang sering digunakan dalam DFD, antara lain :
30
1. Proses (process)
Proses adalah kerja yang dilakukan oleh sistem dalam merespon data
flow yang datang atau suatu kondisi.
Gambar 2.9. Simbol proses
2. Kesatuan Luar (External Agent)
External Agent adalah orang, unit organisasi, sistem, atau organisasi
luar yang berinteraksi dengan sistem, atau disebut juga External Entity.
Gambar 2.10. smbol external agent
3. Arus Data (Data Flow)
Data flow adalah data sebagai masukan ke proses atau keluaran dari
sebuah proses, serta merupakan data yang bergerak. Data flow juga
digunakan untuk mewakili creation, reading, atau updating dari data
dalam file atau database (disebut data store atau penyimpanan data)
Gambar 2.11. simbol arus data
31
4. Penyimpanan Data (Data Source)
Data Store adalah penyimpanan data untuk penggunaan selanjutnya.
Gambar 2.12. simbol data source
2.9 Entity Relation
Entity Relational Model merupakan suatu model yang menunjukkan
diagram hubungan antar table atau entitas yang menerangkan hubungan antar
tabel atau entitas yang ada. Dua komponen utama pembentuk ER Model :
1. Entitas (entity)
Entitas merupakan sebuah obyek yang nyata ada dan dapat dibedakan
dari suatu yang lain.
Gambar 2.13. symbol entitas
2. Relasi (Relationship)
Relasi merupakan hubungan antar entitas.
32
Notasi ER model
Berikut lambang pada ER Model yang sering digunakan :
: himpunan entity
: atribut (atribut yang memiliki fungsi primer
diberi garis bawah)
: relasi
: penghubung antar entity dengan relasinya
2.14 lambang pada ER
33
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
3.1.1. Gambaran Sistem Lama dan Sistem Baru
3.1.1.1.Gambaran Sistem Lama
Sistem yang lama proses pembelian dilakukan secara langsung, yaitu
customer akan membeli kaset cd harus datang ke toko kaset dan melihat
tumpukan deretan kaset yang terpajang di toko. Kendalanya customer tidak selalu
mendapatkan kaset yang dicari karena berbagai alasan, diantaranya kaset yang
diinginkan telah habis atau bahkan tidak menemukan letak kaset yang dicari
karena terlalu banyak kaset yang terpajang di toko kaset.
3.1.1.2.Gambaran Sistem Baru
Sistem yang akan dibuat ini bersifat online sehingga user yang berperan
sebagai customer lebih mudah untuk mendapat kaset-kaset yang diinginkan.
Dengan sistem yang baru diharapkan user bisa mendapatkan kaset yang
diinginkan dengan cara memesan kaset tersebut sehingga tidak kecewa lagi karena
kaset yang diinginkan telah habis. Sistem ini menginformasikan data kaset secara
lengkap, sehingga pesanan benar-benar sesuai yang diinginkan user.
34
Hal-hal yang harus dilakukan oleh user agar dapat memesan dalam sistem ini
adalah :
• User memilih kaset yang dipesan, lalu klik pesan maka akan muncul data
kaset yang akan dipesan.
• Form Pemesanan
Setelah klik pesan dan mendapatkan data kaset yang akan dipesan, maka
akan ada form yang berisi data user. User wajib mengisi form tersebut
untuk bisa memesan kaset yang diinginkan tersebut.
3.1.2. Orang yang terlibat dalam sistem
Ada dua orang yang akan terlibat dalam “Sistem Informasi Pemesanan
Kaset CD dengan Transaksi Managemen”:
a. Admin
Orang yang berhak menambah, meng-edit, menghapus, serta
melihat data pemesanan Kaset CD.
b. User
Orang yang menggunakan sistem informasi untuk melakukan
proses pemesanan kaset cd.
35
3.1.3. Requirement Analysis
Tahap requirement analysis meliputi pembuatan use case diagram
admin
melihat data kaset
<<depends on>>
hapus data kaset <<depends on >>
ubah data kaset<<depends on>>
melihat data user yang pesan
<<depends on>>
melihat data kaset
<<depends on>>
logout
login
<<depends on>>
Gambar 3.1. Use Case Admin
36
melihat detail kaset
Memesankaset
user
Gambar 3.2 Use Case User
3.1.4. Logical Design (Pemodelan Proses dan Data)
Tahap logical design meliputi proses modeling dan data modeling.
3.1.4.1. Process Modelling
Proses modeling dapat dimulai dari pembuatan input dan output dari sistem.
Entitas Input Output
Admin Data login, update data Kaset dan CD
Data Kaset CD
User Lihat data kaset cd, pesan kaset cd
Data kaset cd, serta data pesan
Table 3.1. Input dan output sistem
37
3.1.4.1.1.Context Diagram
Context Diagram berguna untuk menggambarkan secara jelas bagaimana
sistem yang akan dibuat bekerja, mulai dari inputan awal sampai outputnya.
Context diagram dan overview-nya
0
Pemesanan onlineadmin usert
Username, password, data kaet,
data pesanan, update
iInformasi detail data kaset, detail data
pesanan, mengupdate
Informasi detail kaset, proses pemesanan
Data kaset, pesan
Gambar 3.3. Context Diagram
38
3.1.4.1.2.Diagram Berjenjang
Gambar 3.4. Diagram berjenjang Admin
39
0
SI Pemesanan Kaset CD dengan
Transaksi Managemen
1
Lihat kaset
2.2
Isi data diri
2.1
Lihat data kaset yang dipesan
2
pesan
Gambar 3.5. Diagram berjenjang user
3.1.4.1.3.Overview Diagram
Gambar 3.6. Overview Diagram Level 0 untuk admin
40
gambar 3.7. Overview Diagram Level 0 untuk User
Overview Diagram Level 1 proses 2
Gambar 3.8 Overview Diagram Level 1 Proses 2
41
Gambar 3.9 Overview Diagram Level 1 proses 3
3.1.4.2. Data Modeling
gambar 3.10 Entity Relational Diagram
42
userpsn pesan kaset
detailpesan
admin
Gambar 3.11 Relasi antar Tabel
3.2. Desain Sistem
3.2.1 Desain Database
Di dalam pembuatan sistem informasi ini terdapat beberapa table yang
digunakan yaitu table admin, table kaset, table userpsn, dan table pesan.
nama tipe ukuran keterangan Key nip int 10 nip pegawai Pk password varchar 10 password
Table 3.2 admin
nama tipe ukuran keterangan Key kd_kaset varchar 8 kode kaset pk nartis varchar 30 nama artis
id_user
*
nama
no_ktp
almt
id_pesan *
id_user **
jmlh
tgl_pesan
kd_kaset *
artis
judul
kategori
jenis
password
Nip * Jmlh_pes
id_user **
Kd_kaset ** jumlah
harga
tgl_rel
43
judul varchar 20 judul album kategori varchar 15 kategori kaset jenis varchar 30 jenis kaset tgl_rel date tanggal release harga int 10 harga kaset jumlah int 5 jumlah kaset
Table 3.3 kaset
nama tipe Ukuran Keterangan key Id_user int 20 Id auto_increments pk nama varchar 20 nama user yang akan pesan almt varchar 60 alamat user telp varchar 15 no telp yang bisa dihubungi No_ktp varchar 20 No_ktp user
Table 3.4 t userpsn
nama tipe ukuran Keterangan key id_pesan int 5 kode pesan pk Id_user int 20 id user yang pesan fk Tgl_pesan Timestamp 14 Tanggal user memesan Jmlh Int 5 Jumlah kaset yang dipesan
Table 3.5 pesan
nama tipe ukuran Keterangan key id_user int 20 kode pesan fk kd_kaset varchar 8 kode kaset fk Jmlh_pes int 5 Jumlah kaset yang dipesan
Table 3.6 detailpesan
44
3.2.2 Desain User Interface
1. Tampilan untuk user
BANNER
MENU GAMBAR
GAMBAR
Judul:
Artis :
Judul:
Artis :
Gambar 3.12 tampilan lihat kaset
BANNER
MENU Judul :
Harga :
Masukkan data User
Nama:
Id:
Alamat :
OK
Gambar 3.13 tampilan pesan kaset
45
2. tampilan untuk admin
Gambar 3.14 tampilah home admin
BANNER
MENU Username :
Password :
Login
1
MENU Kode kaset:
Judul:
Artis:
Kategori :
Jenis:
Tgl release:
simpan
Gambar 3.15 tampilan tambah kaset
46
BANNER
MENU Judul ubah / hapus
Gambar 3.16 tampilan ubah atau hapus
BANNER
MENU Id_pesan kd_kaset id waktu
Gambar 3.17 tampilan lihat pesan
47
BAB IV
IMPLEMENTASI SISTEM
4.1 Karakteristik Sistem
Sistem informasi ini dibangun untuk Bulletin Music Shop yang beralamat
di jalan Colombo, Yogyakarta. Sistem ini akan digunakan untuk multiuser.
Sistem ini mendukung multiuser karena sistem merupakan sistem berbasis
web yang bisa diakses oleh lebih dari satu orang atau beberapa orang dalam waktu
yang sama, serta menggunakan teknologi manajemen transaksi dengan level
serializable dalam proses pemesanannya.
Pada sistem ini terdapat admin yang memiliki fasilitas, menambah,
mengubah dan menghapus data kaset, serta bisa melihat data pemesanan kaset.
User dapat mengakses sistem ini tanpa melakukan login. User dapat memesan
kaset yang diinginkan dengan cara memilih kaset yang user inginkan. Kemudian
user diharuskan mengisi data yang berisi nama, no identitas diri, alamat, dan no
telp.
4.2 Kebutuhan Sistem
Untuk dapat melakukan pengujian sistem, dibutuhkan beberapa sistem
penunjang, antara lain :
• Server
Sistem Operasi Windows
Browser Internet Explorer, Mozilla Firefox
MySQL 5, JSP dan tomcat
48
• Client
Sistem Operasi Windows
Browser Internet Explorer, Mozilla Firefox
4.3 Pembuatan database SI Pemesanan menggunakan manajemen
transaksi dengan MYSQL
Table 4.1 admin
table 4.2 kaset
Table 4.3 pesan
Table 4.4 userpsn
Table 4.5 detailpesan
49
4.4 Koneksi JSP dan MySQL
Setelah membuat database dengan MySQL kemudian membuat koneksi
antara JSP dan MySQL menggunakan bahasa pemrograman JSP. Koneksi JSP dan
Selain menampilkan data kaset yang dipesan, listing diatas juga perintah yang
digunakan untuk memanggil procedured, berikut pernyataan yang digunakan
untuk memanggil store procedure yang berisi transaksi manajemen yang berfungsi
untuk mengurangi jumlah kaset bila ada proses pemesanan serta menolak akses
user bila terjadi pemesanan secara bersamaan namun barang tersebut ternyata
sudah habis. Pernyataan berikut yang digunakan untuk memanggil store
procedurenya:
57
if (!ada_kesalahan) {
CallableStatement cs = null; int stat = -1; try{ out.print("<h1>Kode kaset : "+kode+"</h1>"); cs= koneksi.prepareCall("{call jmlkaset(?,?)}"); cs.setString(1, kode); cs.registerOutParameter(2,java.sql.Types.INTEGER); h = cs.executeUpdate(); stat = cs.getInt(2); if (stat == 0) out.print("Barang habis"); } catch(Exception ex){ ada_kesalahan = true; } CallableStatement digunakan untuk mengeksekusi strored procedure yang
didefinisikan dalam database. Untuk mengimplememtasikan agar dikenal dalam
java maka diperlukan java.sql.CallableStatement dan untuk mengambil
obyek CallableStatement maka dibutuhkan beberapa method dari interface
Connection.
Berikut store procedured-nya:
DELIMITER $$; DROP PROCEDURE IF EXISTS `tabullet`.`jmlkaset`$$ CREATE PROCEDURE `jmlkaset`(in kode varchar(8), out stat int) BEGIN declare jml int; declare txn_error integer default 0; declare continue handler for sqlexception begin set txn_error=1; end; set autocommit = 0; set session transaction isolation level serializable; start transaction; select jumlah into jml from kaset where kd_kaset = kode for update; if(jml > 0)then begin update kaset set jumlah = jml-1 where kd_kaset = kode; if txn_error then rollback;
58
else begin commit; end; end if; set stat:= 1; end; else set stat := 0; end if; set autocommit = 1; END$$ DELIMITER ;$$
Listing 4.5 Store Procedured jmlkaset
Pada listing 4.6 terdapat 2 parameter yaitu kode dan stat. Parameter ini digunakan
agar program yang memanggil store procedure dapat mengakses database yang
diperlukan. Dalam store procedured diatas terdapat txn_error yang dideklarasikan
dengan tipe integer yang beri nilai default 0. Kemudian txn_error diset 1 yang
menandakan telah terjadi error. Perintah start transaction adalah perintah yang
digunakan sebagai pertanda transaksi dimulai. Data yang dimasukkan pada table
kaset adalah kd_kaset. Set autocommit diset terlebih dahulu dengan nilai 0. Agar
jml dank ode dikenal maka dideklarasikan
select jumlah into jml from kaset where kd_kaset = kode for
update;
bila jumlah kaset lebih dari 0 maka akan dijalankan perintah:
update kaset set jumlah = jml-1 where kd_kaset = kode;
bila kaset masih tersedia maka akan dieksekusi perintah commit dan membaca
stat := 1 , namun bila kaset habis maka yang akan dieksekusi adalah perintah
rollback yang akan membaca stat := 0. Bila transaksi telah selesai dibaca maka
set autocommit akan diubah menjadi bernilai 1.
59
Dan bila user telah mengisi data diri dengan lengkap, maka data user disimpan ke
table kaset, pernyataan berikut yang menunjukkan penyimpanan data user yang