103
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

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

  • Upload
    others

  • View
    20

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 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

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

Page 2: 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

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

Page 3: 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
Page 4: 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
Page 5: 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

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

Page 6: 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

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

Page 7: 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

vii

Page 8: 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

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

Page 9: 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

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

Page 10: 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
Page 11: 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

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

Page 12: 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

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

Page 13: 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

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

Page 14: 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

BAB II LANDASAN TEORI ..……………………………………………6

2.1 Sistem, Informasi, Sistem Informasi ……………………………………..6

2.1.1 Sistem ……………………………………………………………..6

2.1.2 Informasi…………………………………………………………..6

2.1.3 Sistem Informasi…………………………………………………..7

2.2 Transaksi Manajemen …………………………………………………….8

2.2.1 Transaksi Support …………………………………………….8

2.2.2 Concurrency Control ……………………………………………12

2.2.3 Serializability & Recoverability………………………………….12

2.3 JSP, Servlet & Tomcat…………………………………………...13

2.3.1 JSP ……………………………………………………………13

2.3.2 Arsitektur JSP ……………………………………………………15

2.3.3 Kode JSP ……………………………………………………15

2.3.4 Ekspresi JSP ……………………………………………………16

2.3.5 Direktif JSP ……………………………………………………17

2.3.6 Tag Deklaratif ……………………………………………………18

2.3.7 Servlet ……………………………………………………………18

2.3.8 Tomcat……………………………………………………………20

2.4 Web …………………………………………………………………....22

2.5 HTML ………………...………………………………………………….23

2.6 MySQL…………………………………………………………………...26

2.7 Use Case………………………………………………………………….28

2.8 Data Flow Diagram………………………………………………………29

xiii

Page 15: 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

2.9 Entity Relation……... ……………………………………………………31

BAB III ANALISA & PERANCANGAN SISTEM ……………………33

3.1 Analisa & Perancangan Sistem…………………………………………..33

3.1.1 Gambaran Sistem Lama & Sistem Baru…………………………33

3.1.1.1 Gambaran Sistem Lama………………………………….33

3.1.1.2 Gambaran Sistem Baru …..………………………..33

3.1.2 Orang yang terlibat dalam sistem………………………………...34

3.1.3 Requirement Analysis……………………………………………35

3.1.4 Logical design (Pemodelan Proses dan Data)……………………36

3.1.4.1 Proses Modeling………………………………………….36

3.1.4.1.1 Context Diagram…………………………………37

3.1.4.1.2 Diagram Berjenjang……………………………...38

3.1.4.1.3 Overview Diagram……………………………….39

3.1.4.2 Data Modeling……………………………………………41

3.2 Desain Sistem…………………………………………………………….42

3.2.1 Desain Database………………………………………………….42

3.2.2 Desain User Interface…………………………………………….44

BAB IV IMPLEMENTASI SISTEM ……………………………………47

4.1 Karakteristik Sistem……………………………………………………...47

4.2 Kebutuhan Sistem………………………………………………………..47

4.3 Pembuatan Database Sistem Informasi Pemesanan Menggunakan

Manajemen Transaksi dengan MySQL…………………………………..48

4.4 Koneksi JSP & MySQL………………………………………………….49

xiv

Page 16: 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

4.5 User Interface…………………………………………………………….50

4.5.1 User Interface User Lihat Data Kaset……………………………50

4.5.2 User Interface User Pesan………………………………………..54

4.5.3 User Interface Admin…………………………………………….60

4.5.4 User Interface Admin untuk Daftar………………………………64

4.5.5 User Interface Admin Proses Menambah Data…………………..65

4.5.6 User Interface Admin Proses Ubah Data Kaset………..………...67

4.5.7 User Interface Admin Proses Hapus Data Kaset…………………70

4.5.8 User Interface Admin Lihat Data Pesan Kaset…………………..73

BAB V ANALISA HASIL ……………………………………………………77

5.1 Pengujian Sistem Informasi .…………………………………………...77

5.2 Kelebihan dan Kekurangan Sistem .…………………...………………79

5.2.1 Kelebihan Sistem ……………………………………………79

5.2.2 Kekurangan Sistem ……………………………………………80

BAB VI PENUTUP ……………………………………………………………81

6.1 Kesimpulan ……………………………………………………………81

6.2 Saran ……………………………………………………………………81

xv

Page 17: 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

DAFTAR TABEL

2.1 Daftar Obyek Implisit ……………………………………………………13

2.2 Tag-tag HTML…………………………………………………………...24

3.1 Input dan Output Sistem………………………………………………….36

3.2 Admin…………………………………………………………………….42

3.3 Kaset…………………………………………………………………...…42

3.4 Userpsn………………………………………………………………...…43

3.5 Pesan ..……...………………………………………………………...…43

3.6 detailpesan………………………………………………………………..43

4.1 Admin…………………………………………………………………….48

4.2 Kaset…………………………………………………………………...…48

4.3 Pesan .……………………………………………………………...……48

4.4 Userpsn………………………………………………………………...…48

4.5 detailpesan………………………………………………………………..48

xvi

Page 18: 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

DAFTAR GAMBAR

2.1 Siklus Informasi…………………………………………………………...7

2.2 State Transaction…………………………………………………………..9

2.3 Database dan Katalog Sistem…………………………………………….11

2.4 Arsitektur Servlet ………………………………………………...….18

2.5 Cara Kerja Servlet………………………………………………………..19

2.6 Simbol Use Case…………………………………………………………28

2.7 Simbol Actor……………………………………………………………..28

2.8 Simbol Use Case Association Relationship……………………………...29

2.9 Simbol Proses…………………………………………………………….30

2.10 Simbol External Agent………………………………………………...…30

2.11 Simbol Arus Data………………………………………………………...30

2.12 Simbol Data Source………………………………………………………31

2.13 Simbol Entitas……………………………………………………………31

2.14 Lambang pada ER………………………………………………………..32

3.1 Use Case Admin ……………………………………………………35

3.2 Use Case User ……………………………………………………………36

3.3 Context Diagram…………………………………………………………37

3.4 Diagram Berjenjang Admin ……………………………………………38

3.5 Diagram Berjenjang User ……………………………………………39

3.6 Overview Diagram Level 0 untuk admin…………………………...……39

3.7 Overview Diagram Level 0 untuk user………………………………..…40

xvii

Page 19: 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

3.8 Overview Diagram Level 1 proses 2……………………………………..40

3.9 Overview Diagram Level 1 proses 3……………………………………..41

3.10 Entity Relational Diagram………………………………………………..41

3.11 Relasi Antar table………………………………………………………...42

3.12 Tampilan Lihat Kaset…………………………………………………….44

3.13 Tampilan Pesan Kaset…………………………………………………....44

3.14 Tampilan Home Admin…………………………………………………..45

3.15 Tampilan Tambah Data kaset…………………………………………….45

3.16 Tampila Ubah atau Hapus……………………………………………..…46

3.17 Tampilan Lihat Pesan…………………………………………………….46

4.1 Lihat Kaset……………………………………………………………….50

4.2 Pesan Kaset……………………………………………………………....54

4.3 Input Data Diri Pemesan……………………………………………........54

4.4 Home Admin……………………………………………………………..60

4.5 Tambah Admin………………………………………………………...…64

4.6 Tambah kaset…………………………………………...………………..65

4.7 Output Simpan Kaset…………………………………………………….67

4.8 Daftar Ubah Hapus Kaset………………………………………………...67

4.9 Form Ubah Kaset…………………………………………………...……69

4.10 Form hapus Kaset …………………………………………………....70

4.11 Lihat Data Pesan ……………………………………………………73

4.12 Lihat detail pemesan ……………………………………………………73

5.1 User yang mendapat kaset………………………………………………..77

xviii

Page 20: 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

5.2 User yang mendapat kaset 2……………………………………………..78

5.3 User yang tidak mendapat kaset………………………………………....79

xix

Page 21: 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

DAFTAR LISTING

4.1 Koneksi.jsp …………………………………………………………....49

4.2 lihat kaset ...….………………………………………………………51

4.3 definisi.jsp ……………………………………………………………52

4.4 p1.jsp …………………………………………………………………....55

4.5 store procedure jmlkaset .……...……………………………………57

4.6 vallogin.jsp ……………………………………………………………60

4.7 otentikasi.jsp …………………………………………………………....62

4.8 hpsartis2.jsp ………………..…………………………………………..71

4.9 lihatpesan.jsp ……………..…………………………………………..…74

Daftar Pustaka ……………………………………………………………………82

xx

Page 22: 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

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Saat ini proses pembelian kaset dan CD lagu yang sering ditemui masih

dilakukan secara manual dengan mendatangi toko kaset langsung untuk mencari

kaset yang diinginkan.

Masalah timbul ketika kaset atau CD yang dicari ternyata stock habis

sehingga customer kecewa

Dengan adanya internet saat ini dapat dimanfaatkan untuk membuat sistem

pemesanan kaset dan cd secara online, dengan demikian customer lebih mudah

untuk memesan sehingga tidak takut kehabisan kaset atau CD yang diinginkan

ketika datang ke toko. Namun pemesanan secara online tanpa transaksi

manajemen sering menimbulkan masalah, jika ada dua atau lebih orang memesan

kaset CD judul yang sama pada waktu yang hamper bersamaan dan kaset tersebut

hanya tinggal satu. Dengan adanya transaksi manajemen maka akan ada

pengaturan transaksi yang dilakukan pada saat bersamaan sehingga proses update

database dapat dilakukan dengan benar dan masalah lost update problem dapat

diatasi.

Page 23: 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

2

Dari latar belakang itu penulis tertarik untuk membuat sistem pemesanan

kaset dan cd secara online dengan transaksi manajemen menggunakan JSP dan

MySQL.

1.2. Perumusan Masalah

Bagaimana membuat sebuah sistem pemesanan kaset dan CD secara

online dengan manajemen transaksi?

1.3. Tujuan

Tujuan dari Tugas Akhir ini adalah mengembangkan sistem informasi

pemesanan kaset dan CD secara online dengan melibatkan manajemen transaksi.

1.4. Batasan Masalah

1. Sistem yang dikembangkan hanya menangani pemesanan CD dan

kaset saja tetapi tidak menangani transaksi penjualan ke customer.

2. Transaksi Manajemen mengatasi bila stock kaset tinggal satu,

namun yang akan memesan lebih dari satu.

3. Sistem yang dibuat tidak memperhatikan masalah keamanan, yang

meliputi keamanan jaringan.

4. Tools yang digunakan dalam pembuatan sistem pemesanan kaset

dan CD ini antara lain :

a. Sistem operasi yang digunakan adalah Windows XP.

Page 24: 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

3

b. Program menggunakan Software dari JSP (Java Server

Pages).

c. Database menggunakan software MySQL.

d. Web menggunakan Macromedia Dreamweaver MX.

5. Studi kasus dilaksanakan di toko kaset Bulletin (Bulletin Music

Shop) Yogyakarta.

1.5. Metodologi

Metodologi yang digunakan adalah studi kasus dengan langkah-langkah

sebagai berikut :

1. Observasi

Melakukan observasi di Bulletin dan melakukan wawancara kepada

pihak Bulletin yang berwenang.

2. Studi Pustaka

Mempelajari Referensi tentang JSP (Java Server Pages) yang akan

digunakan sebagai piranti perangkat lunak pengembangan sistem

informasi.

3. Pembuatan sistem pemesanan kaset dan cd online, dengan tahap-tahap

sebagai beikut :

a. Analisa Sistem

Merupakan tahapan untuk pengumpulan kebutuhan yang

diperlukan dalam pembuatan sistem, dilakukan melalui

wawancara dan observasi.

Page 25: 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

4

b. Desain Sistem

Perancangan interface dan database yang berkaitan dengan

pembuatan sistem pemesanan kaset dan cd online.

c. Implementasi Sistem

Coding program sesuai dengan desain yang sudah dirancang.

d. Uji Coba Sistem

Testing digunakan untuk mencari kesalahan dan kekurangan

yang terdapat dalam pembuatan program.

1.6. Sistematika Penulisan

1. Pendahuluan

Bab ini menjelaskan latar belakang masalah diperlakannya

pembuatan Pemesanan kaset dan cd online, tujuan dan manfaat

penelitian, metodologi penelitian.

2. Landasan Teori

Bab ini berisi landasan teori yang mendukung kegiatan

penelitian, baik dalam analisa, desain, dan implementasi sistem.

3. Analisis dan Desain Sistem

Bab ini menjelaskan tahap-tahap desain sistem yang terdiri dari

analisis dan perancangan sistem yang akan dibuat.

4. Implementasi Sistem

Bab ini menjelaskan proses pengubahan analisis dan

perancangan menjadi kode-kode program.

Page 26: 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

5

5. Analisis dan Hasil Implementasi.

Berisi hasil analisis pengujian sistem, kelebihan serta

kekurangan sistem.

6. Kesimpulan dan Saran

Berisi kesimpulan dari sistem yang telah dibuat dan saran untuk

pengembangan sistem lebih lanjut.

Page 27: 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

6

BAB II

LANDASAN TEORI

2.1. Sistem, Informasi, dan Sistem Informasi

2.1.1 Sistem

Sistem adalah kumpulan objek seperti manusia, sumber daya, konsep, dan

prosedur yang terorganisasi, saling berinteraksi, dan terpadu untuk mencapai

tujuan tertentu. (Whitten, 2001)

Sistem merupakan sekelompok elemen-elemen yang terintegrasi dengan

maksud yang sama untuk mencapai suatu tujuan. (Raymond, 1995). Pendapat ini

juga didukung oleh Jogiyanto, H.M. dalam bukunya Pengenalan Komputer(1995)

yang mengatakan bahwa sistem adalah suatu jaringan kerja dari prosedur yang

saling berhubungan bersama-sama untuk melakukan suatu kegiatan atau

menyelesaikan tujuan tertentu.

2.1.2 Informasi

Informasi bersumber dari data akurat yang merupakan gambaran dari

kenyataan pada saat tertentu. Data yang ada kemudian diolah melalui suatu model

tertentu sehingga akan menghasilkan suatu informasi. Informasi yang dihasilkan

dapat untuk mendukung pengambilan keputusan dan melakukan tindakan

Page 28: 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

7

selanjutnya yang akan menghasilkan sejumlah data sebagai masukan (input),

kemudian diproses lagi dan demikian seterusnya sehingga akan membentuk suatu

siklus yang disebut Information Cycle/Siklus Informasi. (John Burch).

Proses (Model)

BasisdatInput data

Data (ditangka

Hasil-hasil

Keputusan

Penerima

Output data

Gambar 2.1. Siklus Informasi

Hidup matinya suatu organisasi tergantung pada informasi yang berkualitas atau

memiliki informasi yang akurat, tepat waktu, dan relevan. Agar suatu organisasi

dapat berkembang dengan baik, diperlukan suatu informasi pendukung yang

berkualitas dan bernilai. Nilai informasi ditentukan oleh dua hal, yaitu manfaat

dan biaya mendapatkan informasi tersebut, serta informasi tidak dapat ditaksir

keuntungannya dengan materi, tetapi dapat ditaksir nilai efektifitasnya.

2.1.3 Sistem Informasi

Sistem Informasi adalah sekumpulan orang, data, proses, interface, dan

geografi yang terintegrasi untuk mendukung dan meningkatkan operasional bisnis

hari ke hari, sedemikian rupa sehingga dapat menyelesaikan masalah dan

Page 29: 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

8

memberikan informasi yang mendukung pengambilan keputusan. (Whitten,

2001). Sistem informasi banyak digunakan dalam organisasi untuk meningkatkan

kemampuan memperoleh manfaat atau competitive advantage.

Sistem informasi juga merupakan sekumpulan prosedur organisasi yang

dalam pelaksanaannya membutuhkan informasi dengan tujuan membantu dalam

pengambilan keputusan untuk mengendalikan organisasi. Oleh sebab itu,

informasi sangatlah dibutuhkan untuk membangun suatu sistem yang dapat

berjalan sesuai dengan tujuan dari perusahaan, yaitu keuntungan yang maksimal

dan optimal.

2.2. Transaksi Manajemen

2.2.1 Transaksi Support

Transaksi adalah sebuah aksi, atau sederetan aksi, yang dilakukan oleh

single user atau program aplikasi, dengan membaca atau meng-update isi dari

database. (Conolly, 2002).

Sebuah transaksi adalah sebuah logical unit of work dalam database.

Maksudnya transaksi merupakan bagian dari program atau perintah tunggal

(perintah SQL atau UPDATE), dan mungkin berisi sejumlah operasi dalam

database. Dalam konteks database eksekusi dari program aplikasi dapat diartikan

sebagai sekumpulan transaksi dengan proses tanpa database didalamnya.

Transaksi harus selalu melakukan transformasi dari satu kondisi konsisten ke yang

lainnya, walaupun saat transaksi menerima krtidak-konsistenan namun setelah

Page 30: 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

9

transaksi selesai data harus dalam kondisi konsisten. Sebuah transaksi memiliki

dua buah keluaran yaitu, jika transaksi sukses berarti transaksi telah melakukan

commit dan database telah mencapai keadaan konsisten yang baru, serta jika

transaksi tidak berhasil maka database harus melakukan restore ke keadaan

konsisten saat transaksi belum mulai atau disebut dengan rolled back atau undone.

Berikut gambar yang menunjukkan state transition diagram untuk sebuah

transaksi :

Gambar 2.2. state Transaction

Ada empat property dari transaksi yang sering disingkat ACID, yaitu:

1. Atomicity

“The all or nothing property”. Sebuah transaksi adalah sebuah unit yang

tidak dapat dibagi lagi sehingga dapat melakukan seluruhnya atau tidak

melakukan apapun.

Page 31: 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

10

2. Consistency

Sebuah transaksi harus mentransformasikan satu keadaan konsisten ke

keadaan lainnya. Ini merupakan tanggung jawab dari DBMS dan

pengembangan aplikasi untuk memastikan kekonsintenannya.

3. Isolation

Transaksi secara bebas mengeksekusi yang lainnya atau sebagian transaksi

yang tidak lengkap akan mengakibatkan transaksi yang lain menjadi tidak

visible.

4. Durability

Pengaruh dari transaksi yang commit secara permanen disimpan dalam

database dan akan hilang karena kegagalan sebsuquent.

Arsitektur database dapat diidentifikasi ke dalam empat modul database

high-level yang akan menangani transaksi, concurrency control, dan recovery.

Empat modul database high-level dalam arsitektur database tugasnya, yaitu:

1. Transaction Manager

Bertugas mengkoordinasikan transaksi dalam program aplikasi,

berkomunikasi dengan scheduler, bertanggung jawab untuk

mengimplementasikan strategi khusus untuk concurrency control.

Page 32: 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

11

2. Scheduler

Untuk memaksimalkan concurrency.

3. Recovery Manager

Bertugas memastikan database di restore ke kondisi sebelum mulai

transaksi dan karenanya kondisi konsisten terjadi.

4. Buffer Manager

Bertanggung jawab untuk mentransfer data dari disk sampai ke memori

utama.

Berikut gambar dari arsitektur database:

Transaction

Buffer Manager

Recovery Manger

Schedule

System Manager

File Manager

Access manager

Gambar 2.3. Database dan Katalog sistem

Page 33: 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

12

2.2.2 Concurrency Control

Concurrency control adalah proses untuk me-manajemen operasi secara

simultan dalam database tanpa mencampur dengan lainnya. (Conolly, 2002).

Tujuan utama mengembangkan sebuah database adalah agar dapat

mengakses data share dengan baik. Akses yang dilakukan bersamaan relative

mudah jika seluruh user hanya membaca data, sehingga tidak terjadi interfensi

satu dengan yang lainnya. Tetapi saat dua atau lebih user mengakses database

secara simultan dan paling sedikit satu user melakukan update, maka akan terjadi

interfensi yang dapat mengakibatkan ke tidak-konsistenan.

Contoh masalah yang disebabkan oleh concurrency, salah satunya Lost update problem.

Lost update problem adalah operasi update yang lengkap dan sukses yang

dilakukan oleh user yang ditimpa (overridden) oleh user yang lain.

2.2.3 Serializability dan Recoverability

Konkurensi control diperlukan saat banyak user mengakses database

secara simultan. Tanpa konkurensi control masalah lost update, uncommitted,

dependency, dan inconsistent analisis akan meningkat.

Eksekusi serial berarti bahwa eksekusi satu transaksi terjadi pada waktu

tertentu tanpa meninggalkan operasi. Schedule memperlihatkan urutan dari

operasi transaksi. Sebuah schedule memperlihatkan urutan dari operasi transaksi.

Sebuah schedule dikatakan serializability jika menghasilkan hasil yang sama

seperti schedule yang serial.

Page 34: 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

13

Serializability mengidentifikasi schedule yang databasenya konsisten

(tidak ada transaksi yang gagal). Alternatif lainnya dengan recoverability yang

merupakan schedule untuk setiap pasangan dari transaksi.

2.3 JSP(Java Server Pages), Servlet, dan Tomcat

2.3.1 JSP (Java Server Pages)

JSP (Java Server Pages) merupakan salah satu perangkat lunak yang

digunakan untuk pengembangan web dinamis dan merupakan perluasan dari

servlet namun tidak untuk menggantikan servlet. Servlet sendiri merupakan

teknologi java yang memungkinkan pembuatan halaman web yang bersifat

dinamis dan diproses pada sisi server. Sehingga web yang dibangun menggunakan

JSP akan dijalankan di sisi server. (Kadir, 2004).

Dalam JSP dikenal suatu objek implisit, yaitu obyek yang sudah

dideklarasikan dan tinggal digunakan. Obyek-obyek tersebut juga muncul dalam

servlet hanya saja kita harus mendeklarasikannya sendiri. Obyek implicit tersebut

merupakan obyek utama yang digunakan untuk berinteraksi dalam aplikasi web,

JSP, dan Servlet. Berikut adalah implisit obyek :

Nama Obyek Tipe

Request javax.servlet.http.HttpServletRequest

Response javax.servlet.http.HttpServletResponse

Out javax.servlet.jsp.JspWriter

Session javax.servlet.http.HttpSession

Application javax.servlet.ServletContext

Page 35: 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

14

pageContext javax.servlet.jsp.PageContext

Page javax.servlet.jsp.HttpJspPage

Exception java.lang.Throwable

Config javax.servlet.ServletConfig

Table 2.1. table daftar obyek implisit JSP

Keuntungan menggunakan JSP adalah sebagai berikut :

1. JSP dibuat berdasarkan bahasa Java.

2. JSP mendukung multiplatform, yakni kode yang dibuat untuk tidak

terpengaruh dengan sistem operasi, jadi bias berjalan pada

Windows, Linux, maupun sistem operasi lain.

3. JSP sangat cocok untuk skala enterprise dengan pemrograman

multifier karena menyediakan ke akses JavaBean.

4. JSP memberi dukungan terhadap berbagai jenis database seperti

MySQL, Oracle, Fox Pro, dan lain-lain.

Karena kode JSP merupakan bahasa yang penggunaannya berjalan pada

internet, maka JSP merupakan salah satu bahasa yang embedded pada halaman

HTML, jadi bukanlah bahasa pemrograman standalone.

Hal-hal yang harus diperhatikan dalam pemrograman JSP :

1. Harus ada web server yang mendukung JSP, dalam hal ini akan

digunakan Apache Jakarta-Tomcat.

2. Penamaan file harus berakhiran *.jsp.

3. Pemrograman bersifat case sensitive (huruf kecil dan besar dibedakan).

Page 36: 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

15

2.3.2 Arsitektur JSP

Pemakai yang ingin mengakses halaman web harus diawali dengan

mengirimkan permintaan halaman web melalui protocol HTTP (HyperText

Transfer Protocol ) dalam bentuk JSP (berekstensi .jsp). Permintaan ini akan

disampaikan ke web server, kemudian web server mengambil dokumen JSP dan

mengirimkan ke JSP Servlet Engine. Bagian inilah yang melakukan pemrosesan

kode-kode JSP (termasuk didalamnya melakukan pengkompilasian) dan

membentuk kode HTML. Kemudian kode HTML ini disampaikan oleh web

server ke klien yang memintanya selanjutnya kode HTML, diproses oleh browser

sehingga pemakai bisa memperoleh informasi dari halaman web yang diinginkan.

Pengkompilasian kode JSP hanya dilakukan sekali saja, yaitu pada pemanggilan

dokumen yang pertama kali. Oleh karena itu, pemakai yang memanggil dokumen

yang baru saja dibuat atau diperbaharui akan merasakan bahwa tanggapan

terhadap permintaan halaman web cukup lama. Untuk menghindari keadaan

seperti ini, pengembang dapat memanggil terlebih dulu dokumen tersebut setelah

dilakukan perubahan.

2.3.3 Kode JSP

Kode JSP pada dasarnya sama dengan kode HTML namun dilengkapi

dengan tag-tag JSP. Pada tag-tag inilah proses penyisipan kode dalam bahasa Java

dilakukan. Berikut contohnya :

Page 37: 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

16

Selamat.jsp

<body>

<html>

<head>

<title>latihan JSP Pertama</title>

</head>

Berikut detail pemrosesan yang dilakukan oleh JSP Servlet Engine :

1. Melakukan pemilihan (parsing) kode JSP.

2. Membangkitkan kode sumber Servlet.

3. Mengkompilasi kode sumber Servlet menjadi sebuah class.

4. Membuat instan servlet.

5. Memberikan keluaran servlet ke web server.

Servlet adalah teknologi Java yang memungkinkan pembuatan halaman web yang

bersifat dinamis dan diproses pada sisi server.

2.3.4 Ekspresi JSP

Hasil suatu ekspresi JSP dapat dijadikan sebagai keluaran pada halaman

web dengan menggunakan bentuk tag yang bersifat khusus, yakni seperti berikut :

<%= ekspresi Java %>

Tag <%= %> biasa dinamakan tag ekspresi. Dalam hal ini semua ekspresi

dikonversikan ke string (deretan karakter) dan disisipkan ke halaman web.

Page 38: 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

17

2.3.5 Direktif JSP

Pada JSP, pengimportan suatu paket dilakukan dengan menggunakan tag

direktif, bentuk umumnya adalah :

<%@ ... %>

Misalnya :

<%@ page import=”java.util.*” %>

Yang berarti mengimport semua kelas yang terdapat pada paket java.util.

JSP dengan sendirinya akan mengimport paket-paket berikut :

a. java.lang

b. javax.servlet

c. javax.servlet.jsp

d. javax.servlet.http

Tag direktif ini ditujukan untuk memberitahukan kepada mesin JSP dan bukan

ditujukan untuk membentuk keluaran. JSP memiliki tiga buah direktif yaitu :

1. page (digunakan untuk mendefinisikan atribut-atribut yang terdapat pada

halaman JSP).

2. include (digunakan untuk menyisipkan suatu berkas atau mengimport

suatu kelas).

3. taglib (digunakan untuk mendefinisikan tag-tag buatan pemrogram).

Page 39: 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

18

2.3.6 Tag Deklaratif

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.

Page 40: 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

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

Page 41: 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

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.

Page 42: 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

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.

Page 43: 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

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.

Page 44: 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

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>

Page 45: 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

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

Page 46: 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

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

Page 47: 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

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.

Page 48: 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

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

Page 49: 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

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)

Page 50: 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

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 :

Page 51: 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

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

Page 52: 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

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.

Page 53: 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

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

Page 54: 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

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.

Page 55: 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

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.

Page 56: 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

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

Page 57: 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

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

Page 58: 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

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

Page 59: 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

38

3.1.4.1.2.Diagram Berjenjang

Gambar 3.4. Diagram berjenjang Admin

Page 60: 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

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

Page 61: 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

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

Page 62: 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

41

Gambar 3.9 Overview Diagram Level 1 proses 3

3.1.4.2. Data Modeling

gambar 3.10 Entity Relational Diagram

Page 63: 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

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

Page 64: 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

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

Page 65: 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

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

Page 66: 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

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

Page 67: 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

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

Page 68: 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

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

Page 69: 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

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

Page 70: 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

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

MySQL dapat dilihat pada listing berikut.

<%@ page import="java.sql.Connection, java.sql.DriverManager" %> <% boolean salah=false; try{ Class.forName("com.mysql.jdbc.Driver"); } catch(Exception ex){ out.println("Kesalahan: " + ex); salah = true; } if(!salah){ Connection koneksi = null; try{ koneksi = DriverManager.getConnection( "jdbc:mysql://localhost/tabullet", "root", "rahasia"); out.println("Koneksi berhasil"); } catch(Exception ex){ out.println("Kesalahan: " + ex); } } %>

Listing 4.1 koneksi.jsp

Pada listing 4.1 koneksi pada server MySQL digunakan untuk login ke dalam

MySQL server, menggunakan interface Connection dan kelas DriverManager.

Fungsi Class.forName("com.mysql.jdbc.Driver"); digunakan untuk memuat

driver MySQL (MySQL Connector) dan

DriverManager.getConnection("jdbc:mysql://localhost/tabullet",

"root", "rahasia"); digunakan untuk membentuk hubungan dengan database

Page 71: 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

50

MySQL yang bernama tabullet yang terdapat pada localhost, dengan username

root dan password rahasia.

4.5 USER INTERFACE

User interface ini merupakan implementasi dari proses modeling yang ada.

4.5.1 User Interface User Lihat Data Kaset

Berikut gambar user interface lihat data kaset

Gambar 4.1 lihat kaset

Proses lihat data kaset bisa dilakukan oleh semua user. Data kaset dikategorikan

menjadi 4 kategori, yaitu Domestic, International, Jazz, dan Mandarin. Pembagian

kategori sebagai berikut:

• Kategori domestic dikenal oleh database sebagai 1

Page 72: 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

51

• Kategori international dikenal oleh database sebagai 2

• Kategori jazz dikenal oleh database sebagai 3

• Kategori mandarin dikenal oleh database sebagai 4

Sedangkan kaset dibagi menjadi 2 jenis, yaitu kaset dan cd. CD menjadi jenis 1

dan kaset jenis 2.

Berikut listing tampilkan data kaset kategori domestic :

if (!ada_kesalahan) { ResultSet hasilQuery = null; try { Statement stm = koneksi.createStatement(); hasilQuery = stm.executeQuery( "SELECT kd_kaset, nartis, kategori, judul, harga, jumlah FROM kaset " + "where kategori = '1'"); } catch (Exception ex) { out.println("Kesalahan: " + ex); ada_kesalahan = true; } if (!ada_kesalahan) { try { while (hasilQuery.next()) { String kd_kaset = hasilQuery.getString("kd_kaset"); String berkasFoto = getServletContext().getRealPath("/") + "/image/" + kd_kaset + ".jpg"; String nartis = hasilQuery.getString("nartis"); String nama = hasilQuery.getString("judul"); String harga = hasilQuery.getString("harga"); String jumlah = hasilQuery.getString("jumlah"); nartis = nartis.toUpperCase(); nama = nama.toUpperCase(); File berkas = new File(berkasFoto); if(berkas.exists()) out.print("<tr><td><IMG SRC = "+ berkasFoto +"></td>"); out.println( "<TD> ARTIS : " + nartis + "<br> JUDUL :"

Page 73: 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

52

+ nama + "<br > HARGA :" + harga + "<br> JUMLAH :" + jumlah + "<br><br><A HREF = \"p1.jsp?kode=" + kd_kaset + "\" TARGET = \"frame_kanan\">Pesan</A>\n</TD></tr><TR>\n"); } } catch (Exception ex) { out.println("Kesalahan: " + ex); ada_kesalahan = true; } } } } %>

Listing 4.2 lihat kaset

Pada listing di atas terdapat <%@ include file="definisi.jsp" %> yang

digunakan mendefinisikan nama server, database, username dan password. Serta

memudahkan dalam melakukan perubahan nama server maupun nama user yang

mengakses database. Selain itu juga untuk mendefinisikan sebuah fungsi

gantiKosong(). Fungsi ini berguna mengubah nilai null menjadi string kosong,

yang terdapat pada dokumen lainnya yang berhubungan dengan listing ini.

Berikut listing definisi.jsp:

<%! String NAMA_SERVER = "localhost"; String NAMA_DB = "jdbc:mysql://localhost/jazz"; String NAMA_USER = "root"; String PASSWORD = "rahasia"; public String gantiKosong(String par) { String st = par; if (st == null) st = ""; return(st); } %>

Listing 4.3 definisi.jsp

Page 74: 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

53

Sedang untuk menampilkan data kaset berdasarkan kategori kaset, dibutuhkan

listing berikut untuk memanggil kaset berdasarkan kategorinya.

hasilQuery = stm.executeQuery("SELECT kd_kaset, nartis, kategori, judul, harga, jumlah FROM kaset " + "where kategori = '1'");

Untuk menampilkan kode kaset dalam bentuk gambar, maka diperlukan listing

berikut :

String berkasFoto = getServletContext().getRealPath("/") + "/image/" + kd_kaset + ".jpg";

Listing tersebut dipakai untuk memperoleh nama berkas foto, serta direktori

tempat foto berada. Sedangkan getServletContext().getRealPath("/")

berguna untuk memperoleh nama direktori web server.

File berkas = new File(berkasFoto); if(berkas.exists()) out.print("<tr><td><IMG SRC = "+ berkasFoto +"></td>");

Pernyataan diatas digunakan untuk memeriksa ada tidaknya berkas foto. Bila ada

maka gambar akan ditampilkan melalui tag HTTP bernama IMG.

Page 75: 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

54

4.5.2 User Interface User Pesan

Gambar berikut merupakan gambar user interface user untuk pesan kaset

Gambar 4.2 pesan kaset

Gambar 4.3 input data diri pemesan

Page 76: 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

55

Bila user telah memilih kaset yang akan dipesan, maka user harus mengisi data

user, seperti nama, no identitas, alamat, serta no telp yang akan disimpan di table

userpsn. Berikut listing programnya :

<% // --- Baca data artis String kode = gantiKosong(request.getParameter("kode")); //out.print("<h1>Kode kaset : "+kode+"</h1>"); if (kode == "") { String msg = "Salah pemakaian"; response.sendRedirect("info.jsp?msg=" + msg); } String judul =""; String harga=""; String jumlah=""; 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("<h2>.Barang habis, Silahkan pesan kaset yang lain<br> Terima kasih</h2>"); } catch(Exception ex){ ada_kesalahan = true; } ResultSet hasilQuery = null; try { Statement stm = koneksi.createStatement(); String strQuery = "SELECT kd_kaset, judul, harga, jumlah FROM kaset " + "where kd_kaset = \"" + kode + "\""; hasilQuery = stm.executeQuery(strQuery); } catch (Exception ex) { ada_kesalahan = true; }

Page 77: 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

56

if (!ada_kesalahan) { try { if (hasilQuery.next()) { judul = gantiKosong(hasilQuery.getString("judul")); harga = gantiKosong(hasilQuery.getString("harga")); jumlah = gantiKosong(hasilQuery.getString("jumlah")); } } catch (Exception ex) { ada_kesalahan = true; } } } }

Listing 4.4 p1.jsp

Pada interface pesan ini, kode kaset, judul, jumlah diambil dari interface

sebelumnya, untuk menampilkannya maka diperlukan pernyataan berikut :

String kode = gantiKosong(request.getParameter("kode"));

if (kode == "") { String msg = "Salah pemakaian"; response.sendRedirect("info.jsp?msg=" + msg); } String judul =""; String harga=""; String jumlah="";

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:

Page 78: 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

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;

Page 79: 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

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.

Page 80: 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

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

terdapat pada listing p2.jsp:

String strQuery = "insert into userpsn" + "(nama, no_ktp, almt, telp)" + " values (" + "\'" + request.getParameter("nama") + "\', " + "\'" + request.getParameter("no_ktp") + "\', " + "\'" + request.getParameter("almt") + "\', " + "\'" + request.getParameter("telp") + "\'" + ")"; hasil_penyisipan1 = stm.executeUpdate(strQuery);

Setelah semua diisi data user diisi maka proses pemesanan tersebut akan disimpan

ke table pesan, berikut pernyataannya :

String strQuery = "insert into pesan" + "(kd_kaset, no_ktp)" + " values (" + "\'" + request.getParameter("kode") + "\', " + "\'" + request.getParameter("no_ktp") + "\'" + ")"; hasil_penyisipan = stm.executeUpdate(strQuery);

id_pesan yang terdapat pada table pesan diperoleh otomatis dari sistem karena

pada database telah didefinisikan auto_increment. Sedang id merupakan no

identitas diri user, pada table userpsn id merupakan primary key, kd_kaset

merupakan primary key table kaset namun pada table pesan merupakan foreign

key.

Page 81: 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

60

4.5.3 User Interface Admin

Gambar berikut merupakan user interface pada admin

Gambar 4.4 home admin

Sebelum mengakses sistem, admin diharuskan melakukan login terlebih dahulu.

Form login ini terhubung dengan vallogin.jsp, vallogin.jsp ini akan dijalankan bila

tombol login di klik. Berikut listing vallogin.jsp

<%@ include file="otentikasi.jsp" %> <% String sesi_user = gantiKosong( request.getParameter("admin")); String sesi_pass = gantiKosong( request.getParameter("sandi")); if (! otentikasi(sesi_user, sesi_pass)) { String msg = "Harap diisi dengan benar"; response.sendRedirect("login.jsp?msg=" + msg + "&admin=" + sesi_user); } else { session.invalidate(); session = request.getSession(true);

Page 82: 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

61

session.setAttribute("sesi_user", sesi_user); session.setAttribute("sesi_pass", sesi_pass); } %>

Listing 4.6 vallogin.jsp

Untuk memperoleh nilai parameter admin dan sandi, maka perintah berikut yang

akan dipanggil :

String sesi_user = gantiKosong( request.getParameter("admin")); String sesi_pass = gantiKosong( request.getParameter("sandi"));

untuk memeriksa sah tidaknya admin yang login, maka akan dicek seperti

dibawah ini :

if (! otentikasi(sesi_user, sesi_pass))

bila data tidak valid, maka akan dijalan pernyataan tersebut:

String msg = "Harap diisi dengan benar"; response.sendRedirect("login.jsp?msg=" + msg + "&admin=" + sesi_user); Sedangkan perintah sendRedirect() digunakan untuk menjalankan login.jsp

dengan menyertakan parameter berupa msg dan admin, agar nama admin tetap

ditampilkan pada login.jsp, dan msg digunakan untuk menyatakan pesan pada

login.jsp.

Bila admin yang melakukan login valid, maka pernyataan berikut akan dijalankan:

else { session.invalidate(); session = request.getSession(true); session.setAttribute("sesi_user", sesi_user); session.setAttribute("sesi_pass", sesi_pass); }

Maka JSP akan menghapus sesi sekarang, menciptakan sesi baru, dan membentuk

dua data sesi dengan nama sesi_user dan sesi_pass, yang akan digunakan untuk

Page 83: 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

62

melakukan validasi pada setiap dokumen yang dipanggil tanpa harus memasukkan

data admin dan password lagi, kecuali bila admin telah melakukan logout.

Pada vallogin.jsp terdapat otentikasi.jsp, yang merupakan sebuah fungsi

otentikasi() karena sering digunakan. Berikut isi dari otentikasi.jsp :

<%@ page import="java.sql.Connection, java.sql.DriverManager, java.sql.Statement, java.sql.ResultSet" %> <%@ include file="definisi.jsp" %> <%! public boolean otentikasi(String admin, String password) { if (admin == null || password == null) return(false); if (admin.equals("") || password.equals("")) return(false); boolean ada_kesalahan = false; boolean password_cocok = false; try { Class.forName("com.mysql.jdbc.Driver"); } catch (Exception ex) { ada_kesalahan = true; } if (!ada_kesalahan) { // Bentuk koneksi Connection koneksi = null; try { koneksi = DriverManager.getConnection( NAMA_DB, NAMA_USER, PASSWORD); } catch (Exception ex) { ada_kesalahan = true; } if (!ada_kesalahan) { ResultSet hasilQuery = null; try { Statement stm = koneksi.createStatement(); hasilQuery = stm.executeQuery( "SELECT password FROM admin " + "WHERE nip = '" + admin + "'");

Page 84: 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

63

} catch (Exception ex) { ada_kesalahan = true; } if (!ada_kesalahan) { String data_password = ""; try { if (hasilQuery.next()) data_password = hasilQuery.getString("password"); } catch (Exception ex) { ada_kesalahan = true; } if (!ada_kesalahan) if (password.equals(data_password)) password_cocok = true; } } } return(password_cocok); } %>

Listing 4.7 otentikasi.jsp

Fungsi otentikasi() melibatkan dua parameter bertipe String yang mewakili admin,

password. Nilai balik fungsi bertipe Boolean, nilai true menyatakan bahwa admin

boleh mengakses database dan bila bernilai false berarti admin tidak diijinkan

mengakses database. Data pada table admin dibaca dengan pernyataan berikut:

hasilQuery = stm.executeQuery( "SELECT password FROM admin " + "WHERE nip = '" + admin + "'");

Pernyataan di atas berguna untuk mendapatkan nilai password pada table admin

yang memiliki field bernama nip yang bernilai sama dengan parameter admin.

Hasil dari pernyataan tersebut dibaca melalui:

if (hasilQuery.next()) data_password = hasilQuery.getString("password");

Page 85: 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

64

Bila ditemukan maka data password dibaca dan diberikan ke variable

data_password.

Untuk memeriksa apakah nilai data_password (table admin) cocok dengan

parameter password atau tidak, bila cocok maka variable password_cocok diberi

nilai true, berikut pernyataannya:

if (!ada_kesalahan) if (password.equals(data_password))

password_cocok = true;

bila password tidak cocok maka dipersilakan login kembali dan diberi pesan

bahwa password tidak benar.

4.5.4 User Interface Admin untuk Daftar

Gambar User interface admin daftar

Gambar 4.5 tambah admin

Page 86: 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

65

Dalam form login tersebut bila belum terdaftar dan klik daftar maka akan muncul

form daftar admin seperti di atas. Penyimpanan data ke table admin menggunakan

query berikut:

String strQuery = "INSERT INTO admin (nip, password) " + "VALUES (" + "\'" + request.getParameter("nip") + "\'," + "\'" + request.getParameter("password") + "\'" + ")";

Untuk mengeksekusi query tersebut dideklarasikan seperti di bawah ini:

hasil_penyisipan = stm.executeUpdate(strQuery);

4.5.5 User Interface Admin untuk Proses Menambah Data

Gambar berikut merupakan user interface untuk menambah data kaset

Gambar 4.6 tambah kaset

Page 87: 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

66

Sebelum tambah kaset, admin diharuskan melakukan login terlebih dahulu. Hal

ini terlihat pada listing terdapat validasi.jsp yang mewajibkan admin melakukan

login dulu, bila admin belum melakukan login maka login.jsp dipanggil.

Listing di atas berfungsi untuk menyimpan data kaset ke table kaset. Berikut

query yang digunakan untuk melakukan proses menyimpanan di table kaset:

"INSERT INTO kaset (kd_kaset, nartis, judul, kategori, jenis, tgl_rel, harga, jumlah) " + "VALUES (" + "\'" + request.getParameter("kode") + "\'," + "\'" + request.getParameter("nartis") + "\'," + "\'" + request.getParameter("judul") + "\'," + "\'" + request.getParameter("kategori") + "\'," + "\'" + request.getParameter("jenis") + "\'," + "\'" + tgl_lahir + "\'," + "\'" + request.getParameter("harga") + "\'," + "\'" + request.getParameter("jumlah") + "\'" + ")";

Dan pengeksekusian query di atas, dengan pernyataan berikut :

hasil_penyisipan = stm.executeUpdate(strQuery);

pernyataan tersebut akan membuat variable hasil_penyisipan bernilai lebih besar

dari nol, maka data akan disimpan ke table kaset. Seperti pernyataan di bawah ini:

if (hasil_penyisipan > 0) out.print("Data telah disimpan" + "<BR>");

bila data kaset telah diisi dan telah klik pesan, maka data akan disimpan ke

database. Bila database telah menerima data tersebut, maka browser akan

menampilkan output seperti gambar di bawah ini

Page 88: 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

67

Gambar 4.7 output simpan kaset

4.5.6 User Interface Admin dalam Proses Ubah Data Kaset

Gambar berikut merupakan user interface ubah data kaset:

Page 89: 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

68

Gambar 4.8 Daftar Ubah Hapus

Listing di atas digunakan untuk menampilkan data kaset dari table kaset yang

diurutkan berdasarkan judul, hal itu terlihat pada potongan listing berikut:

"SELECT kd_kaset, nartis, judul FROM kaset " + "ORDER BY judul");

Untuk membentuk link baik ke ubhartis.jsp untuk mengubah data kaset dan

hps.jsp untuk menghapus data kaset maka dibutuhkan kode berikut:

out.println( "<TR><TD>" + nartis + "</TD><TD>" + nama + "</td><td> " + "<A HREF = \"ubhartis1.jsp?kode=" + kd_kaset + "\" TARGET = \"frame_kanan\">Ubah</A>"+ " / " + "<A HREF = \"hpsartis.jsp?kode=" + kd_kaset + "\" TARGET = \"frame_kanan\">Hapus</A>"+ "</TD><TR>\n");

Pada kolom pertama berisi data yang berasal dari variable nama (dalam table

dikenal sebagai judul), kolom kedua berisi link ke ubhartis1.jsp dan link ke

hpsartis.jsp, serta menggunakan kd_kaset sebagai parameter. Sedang atribut

TARGET digunakan untuk menentukan frame letak dokumen yang di link.

Bila ingin mengubah maka pilih ubah berarti link ke ubhartis1.jsp, yang

menampilkan seperti gambar berikut:

Page 90: 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

69

Gambar 4.9 Form Ubah kaset

Secara prinsip ubah kaset sama dengan tambah kaset, namun dalam ubah kaset

kode kaset yang tidak bisa diubah. Bila data kaset telah diubah dan tombol simpan

telah diklik, maka akan link ke ubhartis2.jsp yang terdapat query yang digunakan

untuk mengupdate data kaset yang baru ke dalam database.

Setelah data diubah dan tombol simpan diklik maka data akan disimpan ke table

kaset, menggunakan query berikut untuk mengupdate data lama menjadi data

baru.

"UPDATE kaset SET " + " kd_kaset = \"" + kode + "\", " + " nartis = \"" + nartis + "\", " + " judul = \"" + judul + "\", " + " kategori = \"" + kategori + "\", " + " jenis = \"" + jenis + "\", " + " tgl_rel = \"" + tgl_rel + "\", " + " harga = \"" + harga + "\", " + " jumlah = \"" + jumlah + "\"" + " WHERE kd_kaset = \"" + kode + "\"";

Page 91: 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

70

Pengeksekusian perintah ubah data kaset, ditangani oleh pernyataan berikut:

hasil_perekaman = stm.executeUpdate(strQuery);

pernyataan tersebut akan membuat variable hasil perekaman bernilai lebih besar

dari nol, maka data akan berhasil disimpan.

4.5.7 User Interface Admin dalam Proses Hapus Data Kaset

Gambar berikut merupakan user interface admin untuk hapus data

Gambar 4.10 Form Hapus Kaset

Gambar di atas merupakan hasil link dari dafartis.jsp yang dideklarasikan dengan

"<A HREF = \"hpsartis.jsp?kode=" + kd_kaset + "\" TARGET = \"frame_kanan\">Hapus</A>" + "</TD><TR>\n");

Data kaset yang akan dihapus berdasarkan nilai parameter kode yang merupakan

kd_kaset pada table kaset. Bila tombol hapus telah diklik maka akan terjadi link

ke hpsartis2.jsp karena terdapat tag html <FORM ACTION="hpsartis2.jsp"

Page 92: 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

71

METHOD="POST"> dan membawa serta kode dan nama artis yang ditunjukkan

dengan adanya tag html berikut:

<INPUT TYPE="HIDDEN" NAME="kode" VALUE="<%= kode %>"> <INPUT TYPE="HIDDEN" NAME="nartis" VALUE="<%= nartis %>"> <INPUT TYPE="SUBMIT" VALUE="Hapus"> Berikut listing hpsartis2.jsp

<%@ page import="java.sql.Connection, java.sql.DriverManager, java.sql.Statement, java.sql.ResultSet, java.sql.Clob" %> <%@ include file="segarkan.jsp" %> <%@ include file="validasi.jsp" %> <% String kode = request.getParameter("kode"); if (kode == null) { String msg = "Salah pemakaian"; response.sendRedirect("info.jsp?msg=" + msg); } String nartis = request.getParameter("nartis"); %> <HTML> <HEAD> <TITLE>Menghapus Data Artis</TITLE> </HEAD> <BODY> <CENTER> <H1>Informasi Penghapusan Artis</H1> <HR> <% out.println("Kode: <B>" + request.getParameter("kode") + "</B><BR>"); out.println("artis: <B>" + request.getParameter("nartis") + "</B><BR>"); out.println("<HR>"); // Koneksi ke database boolean ada_kesalahan = false; try { Class.forName("com.mysql.jdbc.Driver"); } catch (Exception ex) { ada_kesalahan = true;

Page 93: 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

72

} if (!ada_kesalahan) { // Bentuk koneksi Connection koneksi = null; try { koneksi = DriverManager.getConnection( NAMA_DB, NAMA_USER, PASSWORD); } catch (Exception ex) { ada_kesalahan = true; } if (!ada_kesalahan) { try { Statement stm = koneksi.createStatement(); String strQuery = "DELETE FROM kaset " + " WHERE kd_kaset = \"" + kode + "\""; stm.executeUpdate(strQuery); out.print("Data telah dihapus"); } catch (Exception ex) { ada_kesalahan = true; } } } if (ada_kesalahan) out.print("Gagal menghapus"); %> </CENTER> </BODY> </HTML>

Listing 4.8 hpsartis2.jsp

Data pada table kaset dihapus menggunakan perintah SQL delete, sebagaimana

dapat dilihat pada kode berikut:

String strQuery = "DELETE FROM kaset " + " WHERE kd_kaset = \"" + kode + "\"";

Dan pengeksekusian perintahnya dilakukan melalui pernyataan berikut:

stm.executeUpdate(strQuery);

Page 94: 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

73

4.5.8 User Interface Admin untuk Melihat Data Pesan Kaset

Berikut gambar user interface admin untuk melihat data pesan kaset :

Gambar 4.11 lihat data pesan

Gambar 4.12 lihat detail pemesan

Page 95: 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

74

Berikut listing lihatpesan.jsp:

<% boolean salah = false; try{ Class.forName("com.mysql.jdbc.Driver"); } catch(Exception ex){ out.println("Kesalahan : " + ex); salah = true; } if(!salah){ Connection koneksi = null; try{ koneksi = DriverManager.getConnection( NAMA_DB, NAMA_USER, PASSWORD); } catch(Exception ex){ out.println("Kesalahan : " + ex); salah = true; } if(!salah){ ResultSet hasilQuery = null; try{ Statement stm = koneksi.createStatement(); //hasilQuery = stm.executeQuery("SELECT a.id_pesan, a.kd_kaset, b.nama FROM pesan a, userpsn b"); hasilQuery = stm.executeQuery("select id_pesan, kd_kaset, no_ktp from pesan"); } catch(Exception ex){ out.println("Kesalahan : " + ex); salah = true; } if(!salah){ try{ while(hasilQuery.next()){ String id_pesan = hasilQuery.getString("id_pesan"); String kd_kaset = hasilQuery.getString("kd_kaset"); //String nama = hasilQuery.getString("nama"); String no_ktp = hasilQuery.getString("no_ktp"); out.println( "<tr><td>" + id_pesan + "</td>" + "<td>" + kd_kaset + "</td>" +

Page 96: 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

75

"<td>" + no_ktp + "</td></tr>" ); //"<td>" + waktu + "</td>" + "<tr>"); } } catch(Exception ex){ out.println("Kesalahan : " + ex); salah = true; } } } } %>

Listing 4.9 lihatpesan.jsp

Untuk menampilkan data pesanan maka dibutuhkan query berikut

hasilQuery = stm.executeQuery("SELECT id_pesan, kd_kaset, jml, id, waktu FROM pesan ");

Dan perintah berikut untuk menampilkan data dari table kaset ke browser, namun

harus dicek dulu apakah ada kesalahan atau tidak, seperti pada penggalan kode

berikut

if(!salah){ try{ while(hasilQuery.next()){ String id_pesan = hasilQuery.getString("id_pesan"); String kd_kaset = hasilQuery.getString("kd_kaset"); String jml = hasilQuery.getString("jml"); String id = hasilQuery.getString("id"); String waktu = hasilQuery.getString("waktu"); out.println( "<tr><td>" + id_pesan + "</td>" + "<td>" + kd_kaset + "</td>" + "<td>" +jml + "</td>" + "<td>" + id + "</td>" + "<td>" + waktu + "</td>" + "<tr>"); } } catch(Exception ex){ out.println("Kesalahan : " + ex);

Page 97: 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

76

salah = true; } }

Bila tidak ada kesalahan maka data pesanan yang terdapat pada table pesan akan

ditampilkan pada browser.

Page 98: 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

77

BAB V

ANALISIS HASIL

5.1. Pengujian Sistem Informasi

Terdapat dua user mengakses data kaset yang sama untuk memesannya

pada waktu yang sama, dan pada keadaan itu kaset yang tersedia hanya tinggal

satu maka disini manajemen transaksi akan bekerja. Sistem akan memberikan

kaset tersebut kepada user yang lebih cepat memesan dengan selang waktu yang

sangat kecil.

Berikut akan tampil, user yang mendapatkan kaset yang dipesan:

Gambar 5.1 user yang mendapat kaset

Hal tersebut didapatkan dari listing p1.jsp yang terdapat pernyataan yang

memanggil store procedured yang akan mengirimkan stat = 1 bila kaset masih

Page 99: 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

78

tersedia. Dan user diijinkan untuk melanjutkan akses data dengan mengisi data

diri dengan tujuan admin mengetahui data diri user yang akan digunakan untuk

konfirmasi pemesanan untuk pengambilan barang yang dipesan. Bila user telah

mengisikan data diri, maka data diri akan dieksekusi oleh p2.jsp dan akan

ditampilkan seperti berikut dibawah ini:

Gambar 5.2 user yang mendapat kaset

Sedang user yang satu akan mendapat tampilan berikut karena kaset tinggal satu,

namun telah habis karena user pertama lebih cepat waktu pesannya:

Page 100: 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

79

Gambar 5.3 user yang tidak mendapat kaset

Hal tersebut karena p1.jsp memanggil store procedure yang mengirimkan stat = 0

karena jumlah kaset telah habis. Karena pada saat yang bersamaan ada user lain

yang memesan kode yang sama dengan selang waktu yang sangat kecil.

5.2. Kelebihan dan Kekurangan Sistem

5.2.1. Kelebihan Sistem

1. Sistem pemesanan menggunakan Manajemen Transaksi dengan

level isolasi serializable dalam pembuatan sistemnya, sehingga

tidak akan terjadi lost update problem

2. Pada pemesanan proses update jumlah kasetnya menggunakan

stored procedure yang memuat manajemen transaksi di dalamnya.

Page 101: 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

80

5.2.2. Kekurangan Sistem

• Pemborosan database karena setiap user yang akan memesan

harus memasukkan data pribadi terlebih dahulu.

Page 102: 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

81

BAB VI

PENUTUP

6.1. KESIMPULAN

1. Sistem Informasi Pemesanan yang telah dibuat dengan manajemen

transaksi dengan level isolasi serializable, telah dapat berfungsi

dengan baik untuk menangani transaksi yang bersamaan dalam

pemesanan kaset CD.

2. Manajemen transaksi pada sistem ini berhasil digunakan pada

proses pemesanan untuk mengurangi jumlah kaset serta mengatasi

bila ada lebih dari satu user memesan data kaset yang sama dan

data kaset tersebut hanya tinggal satu.

6.2. SARAN

1. Sebaiknya pada Sistem Informasi Pemesanan, dibuat login jadi bila

user akan memesan tidak perlu mengisi data diri lagi sehingga

tidak terjadi pemborosan database.

2. Sebaiknya Sistem Informasi Pemesanan tidak hanya dikembangkan

untuk pemesanan saja, namun untuk penjualan juga.

Page 103: 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

82

DAFTAR PUSTAKA

Whitten, J.L., Bentlex, L.D., Barlow, V.M., System Analysis & Design Methods

Sixth Edition, Irwin / McGraw-Hill, 2004.

Linda Marlinda, S.Kom, Sistem Basis Data, Andi Offset, Yogyakarta, 2004.

Pedoman Penulisan Skripsi, Universitas Sanata Dharma, Yogyakarta, 2004.

Wahidin, 7 Jam Belajar Dreamweaver MX 2004, Maxikom, Palembang, 2005.

Abdul Kadir, Dasar Pemrograman Web Dinamis dengan JSP (Java Server Page),

Andi Offset, Yogyakarta, 2004.

Alb. V. Dian Sano, 24 Jam Menguasai HTML, JSP, dan MySQL