• Tidak ada hasil yang ditemukan

Sistem informasi penanganan komplain berbasis web menggunakan PHP dan MySQL pada linux : studi kasus HDR PT Konimex Solo - USD Repository

N/A
N/A
Protected

Academic year: 2019

Membagikan "Sistem informasi penanganan komplain berbasis web menggunakan PHP dan MySQL pada linux : studi kasus HDR PT Konimex Solo - USD Repository"

Copied!
173
0
0

Teks penuh

(1)

i

(Studi Kasus di HRD PT. Konimex Solo)

SKRIPSI

Ditujukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika

Disusun oleh:

Nama : Irenius Lijun Pratama NIM : 025314052

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)

“BANK OF COMPLAINTS INFORMATION SYSTEMS BASED

ON WEB USING PHP AND MYSQL AT LINUX”

( ACASE STUDY AT HUMAN RESOURCES DEVELOPMENT, PT. KONIMEX SOLO)

A Thesis

Presented as Partial Fullfillment of the Requirements To Obtain the Sarjana Teknik Degree

In Informatics Engineering

By :

Name : Irenius Lijun Pratama Student Number : 025314052

INFORMATICS ENGINEERING STUDY PROGRAM

DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF ENGINEERING

SANATA DHARMA UNIVERSITY

(3)
(4)
(5)

HALAMAN PERSEMBAHAN

Karya ini kupersembahkan untuk :

...

Allah Bapa Yang Maha Kuasa yang selalu mengasihi, mencintai dan

memberikan anugerah terindah dalah hidupku serta selalu mengabulkan

doa-doaku,

...

Yesus Sang Juru Selamat-ku dan Sahabatku Sejati yang selalu mencintai

dan membimbingku dalam menghadapi berbagai persoalan hidup serta

selalu memberikan anugerah terindah dalam hid upku,

...

Kedua orang tuaku yang telah membesarkan dan mendidik aku dengan

cinta, kelembutan dan penuh dengan pengorbanan, sungguh merupakan

anugerah yang tak terkira mempunyai o rang tua yang selalu memberikan

yang terbaik bagi diriku,

...

Adik-adikku yang telah menjadi kekuatanku dalam melangkah, kalian

membuat hidupku semakin berarti

...

Keluarga-keluargaku yang telah memberikan motivasi dan doa

...

Seseorang yang selalu setia menemani hari-hariku, baik suka maupun

duka,

...

Dan seluruh sahabat-sahabatku yang memberikan kehangatan dalam

(6)

HALAMAN MOTTO

Tidak akan pernah menyerah

Sebelum mencoba

Ketidaktahuan adalah malam dari pikiran, tapi

malam tanpa bulan dan bintang

Kegagalan adalah sebuah proses perjalanan

menuju keberhasilan

Dalam dunia ini tidak ada yang tidak mungkin,

karena selalu ada jalan menuju Roma

Orang sukses tidak santai, orang santai tidak

sukses, jika orang bekerja 40 jam seminggu,

(7)

PERNYATAAN KEASLIAN KARYA

Dengan ini saya sebagai penulis tugas akhir menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali pemikiran, metode atau hasil penelitian orang lain yang diambil disebutkan dengan jelas sebagai acuan.

Yogyakarta, Mei 2007

(8)

ABSTRAKSI

Sistem Informasi Penanganan Komplain ini dibuat untuk mendukung Divisi Human Resources Development (HRD) di PT. Konimex Solo agar bisa menangani komplain yang ada dengan akurat dan secepat mungkin.

Sistem ini dibuat untuk lingkunganmulti user agar mendukungsharing data. Fasilitas dalam sistem ini adalah bisa menambah kategori, mengupdate kategori dan analisa komplain, menambah analisa komplain, melihat laporan analisa komplain menurut periode serta kategori, melakukansearching data-data kategori berdasarkankeyword , bantuan untuk mengisi analisa komplain, serta melakukan backup danrestore database.

(9)

ABSTRACT

Handling Of Complaints Information System is developed to support Human Resouces Development at PT. Konimex Solo that can handle the complaint accurately and quickly.

The system is made for muti user area to support sharing data. Facilities in this system is can add category, updates category and complaint analysis, adds complaint analysis, sees complaint analysis report according to period and category, does searching category data based on keyword , help to fill complain analysis, and does backing up and restore database.

(10)

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Kuasa yang telah melimpahkan berkat-Nya sehingga penulis dapat menyelesaikan Laporan Tugas Akhir ini. Penulisan tugas akhir ini ditujukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik Jurusan Teknik Informatika.

Terselesaikannya penulisan tugas akhir ini tidak lepas dari peran serta beberapa pihak, baik secara langsung maupun secara tidak langsung. Oleh karena itu, penulis ingin menyampaikan terima kasih kepada pihak-pihak yang telah ikut membantu dalam penulisan tugas akhir ini, baik dalam memberikan bimbingan, petunjuk, kerjasama, kritikan, maupun saran, antara lain kepada:

1. Bapak JB. Budi Darmawan, S.T., M.Sc., selaku Dosen Pembimbing , yang telah banyak membantu terutama dalam memberikan bimbingan, dukungan, dan penyediaan sarana yang mendukung, sehingga penulis dapat menyelesaikan laporan tugas akhir ini. Terima kasih banyak pak, atas semuanya.

2. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik Informatika Universitas Sanata Dharma dan Dosen Pembimbing Akademik yang telah memberikan dukungan selama penulis kuliah.

3. Ibu Polina, Bapak Yudi, dan Bapak Wisnu selaku Dosen Penguji TA.

(11)

5. Bapak St.Yudianto Asmoro, S.T sebagai sound enginer penulis dalam menyalurkan hobby bermusik. Terima kasih atas pengetahuan tentang sound yang diberikan dan alat-alat yang telah dipinjamkan.

6. Kedua orang tua penulis yang sangat penulis kasihi, yang telah memberikan semua yang mereka miliki kepada penulis, tanpa mengarapkan imbalan apapun. Terima kasih Tuhan karena telah memberikan orang tua seperti mereka kepada penulis.

7. Susana Meisiana Dwi Kartika dan Tri Pasca Natalis yang sangat penulis kasihi dan selalu menjadi kekuatan penulis selama ini.

8. Sima yang telah memberikan doa dan dukungan serta menemani penulis dalam suka dan duka, walaupun jarak kita terpisah. Terima kasih karena mau menjadi bagian dalam hidupku. Met Ultah Ya, ini Kadoku buatmu.

9. Om Noto yang selalu memberikan nasehat dan bantuan spiritual bagi penulis. 10. Lia yang telah memberikan dukungan bagi penulis dalam proses untuk

menyelesaikan Tugas Akhir ini, thanks juga buat komputer dan hardisknya saat komputerku lagi rewel. Aku udah selesai nich, cepat beresin Tugas Akhirmu ya.

11. Kakek dan nenek di Sintang, yang telah memberikan semangat bagi penulis, Kakek dan Nenek dari Bapak (ini kupersembahkan bagi kalian, semoga selalu damai di dalam surga), Kakek dan Nenek dari ibu (semoga kakek berbahagia di dalam surga, dan Nenek selalu sehat selalu).

(12)

13. Pijey yang telah menjadi teman seperjuangan penulis dalam bermusik (Circle Core Band) dan sahabat yang baik. Mantap jey, akhirnya kita bisa membuat sebuah band yang sesuai dengan keinginan kita, cita-cita telah tercapai, semoga di lain waktu kita bisa kembali bersama dalam band. Thanks juga atas nasehat dan waktu untuk mendengarkan segala keluh kesahku, juga atas doa-doamu (he2....). Terima kasih juga atas pinjaman jas nya, titip salam buat keluargamu. Semoga cepat dapat kerja ya.

14. Teman-teman di Circle Core Band. Mantik, Billy, dan Endi, terima kasih karena sudah selalu mendorong penulis agar cepat menyelesaikan Tugas Akhir ini. Kalian membuat impianku menjadi kenyataan, teruslah berkarya dan tetaplah maju walaupun tanpa aku (please...).

15. Yoseph Rostandy (Cecep), thanks pek atas pinjaman alatmu, atas diskusi seputar kuliah, tentang hidup, dan dukungan darimu serta telah menjadi sahabat serta Om yang selalu memberikan nasehat dan menemaniku. Cepat beresin Tugas Akhirmu, banyak pekerjaan menunggu.

16. Bang Kris yang telah banyak memberikan bantuan dalam proses pemahaman terhadap hidup. Kamu abang yang terbaik bagiku. Terima kasih atas hari-hari yang telah kamu berikan, dukungan yang tiada henti, dan guru yang baik bagi hobbyku bermain bola (jadi maniak bola nich sekarang,he2..).

(13)

18. Bang Leo, Bang Anderson, Bang Kris, Edvan, Thomas, Teguh, Coky, Nano, Andi dan Ulis sebagai teman satu kost.

19. White Angel FC, Anilop FC dan Sintang FC yang telah memberikan tempat bagiku untuk bermain bola, thanks buat semuanya,

20. Dan seluruh pihak yang telah ikut ambil bagian dalam penyelesaian laporan tugas akhir ini yang tidak dapat penulis sebutkan satu-persatu.

Seperti kata pepatah, “Tak ada gading yang tak retak”, maka penulis menyadari segala keterbatasan dalam menyelesaikan laporan tugas akhir ini. Oleh karena itu, penulis ingin menyampaikan mohon maaf apabila terdapat kesalahan dan kekurangan. Untuk itu, penulis mengharapkan kritik dan saran yang membangun dari seluruh pihak yang membutuhkan laporan tugas akhir ini.

Semoga laporan tugas akhir ini dapat memberikan manfaat bagi siapa saja yang membutuhkannya. Atas segala perhatiannya dan kerjasamanya, penulis ucapkan terima kasih.

Yogyakarta, Mei 2007

(14)

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 ... xv

Daftar Tabel ...xix

Daftar Gambar ... xx

Daftar Listing... xxiv

BAB I PENDAHULUAN...1

1.1 Latar Belakang ...1

1.2 Rumusan Masalah ...2

1.3 Batasan Masalah...2

1.4 Tujuan dan Manfaat...3

1.5 Metodologi Penelitian ...3

1.6 Sistematika Penulisan...4

BAB II LANDASAN TEORI...6

2.1 Use Case Diagram ...7

2.2 Basis Data ...7

2.2.1 Entity Relationship Diagram (ERD)...8

(15)

2.4 Web / Homepage...14

2.5 Hypertext Markup Language (HTML)...16

2.6 PHP...16

2.9 Konsep-konsep Transaksi untuk Recovery dan Concurency Control..27

2.10 Tipe Level Isolasi Transaksi ...30

2.10 Timestamp...31

2.11 Store Procedure ... 31

BAB III ANALISA DAN PERANCANGAN SISTEM...33

3.1 Analisa Sistem...33

3.1.1 Analisa Sistem Lama ...33

3.1.2 Analisa Umum Sistem Bank Of Complaints yang Baru...34

3.1.2.1 Proses Pengumpulan Kebutuhan...36

3.1.2.2 Pemodelan Proses (Data Flow Diagram) ...39

3.1.2.3 Pemodelan Data (Conceptual Database Design) ...46

3.2 Perancangan Sistem...47

3.2.1 Desain Database (Logical Database Design)...47

(16)

3.2.3 Hierarki Modul Bank Of Complaints ...51

3.2.4 Disain Pengguna Bank Of Complaints ...55

3.2.5 Disain Input...57

3.2.6 Disain Output ...63

BAB IV IMPLEMENTASI SISTEM...67

4.1 Karateristik Sistem ... 67

4.2 Kebutuhan Sistem ...67

4.3 Pembuatan basis data SIPK menggunakan MySQL ...68

4.4 Koneksi PHP dan MySQL...69

4.5 User Interface...70

4.5.1 User Interface Proses Login ...70

4.5.2 User Interface Proses Data User...80

4.5.2.1 User Interface Proses Menambah Data User ...80

4.5.2.2 User Interface Proses Melihat Data User ...83

4.5.2.3 User Interface Proses Menghapus Data User ...85

4.5.3 User Interface Proses Data Kategori...87

(17)

4.5.6.1 User Interface Proses Melihat Laporan berdasarkan Kategori

... 117

4.5.6.2 User Interface Proses Melihat Laporan berdasarkan Periode ... 122

4.5.6.3 User Interface Proses Melihat Laporan berdasarkan Kategori dan Periode ...123

4.5.6.4 User Interface Proses Melihat Laporan berdasarkan Narasumber... 124

4.5.7 User Interface Proses Backup...126

BAB V ANALISA HASIL...131

5.1 Pengujian Aplikasi ...131

5.1.1 Pengujian Aplikasi Tanpa menggunakan Timestamp dan Manajemen Transaksi ...131

5.1.2 Pengujian Aplikasi menggunakan Teknik Timestamp dan Manajemen Transaksi ...135

5.1.2.1 Pengujian Terhadap masalah Hilangnya Data Yang Diubah (The Lost Update Problem)... 135

5.2 Kelebihan dan Kekurangan Sistem ... 142

5.2.1 Kelebihan Sistem...142

5.2.2 Kekurangan Sistem ...143

BAB VI PENUTUP... 144

5.1 Kesimpulan ...144

(18)

DAFTAR TABEL

2.1 Tipe Data MySQL ...20

2.2 Tabel Operator Equality dan Inequality ...24

2.3 Tabel Operator Logika...24

3.1 Tabel Login...48

3.2 Tabel Kategori...48

3.3 Tabel Analisa ...49

(19)

DAFTAR GAMBAR

2.6 Simbol Arus Data dengan Laporan SIPK...13

2.7 Simbol Proses Lihat Kategori ...14

2.8 Simbol Media Penyimpanan Data...14

2.9 Diagram Transaksi State...28

3.1 Use Case Diagram ...37

3.2 Context Diagram ...38

3.3 Decomposition Diagram ...39

3.4 Overwiew Diagram Level 0...40

3.10 Overwiew Diagram Proses 6 Level 1 ...43

3.11 Overwiew Diagram Proses 7 Level 1 ...44

3.12 Overwiew Diagram Proses 8 Level 1 ...44

3.13 Diagram Gabungan...45

3.14 E-R Diagram ...46

3.15 Relational Model BOC ...47

3.16 Hierarki Modul Untuk Admin...51

3.17 Hierarki Modul Untuk Operator...52

3.18 Hierarki Modul Untuk User bank...53

3.19 Hierarki Modul Untuk Manager...54

(20)

3.21 Menu Untuk Operator...55

3.22 Menu Untuk Admin...56

3.23 Menu Untuk Manager...56

3.24 Menu Untuk Login ...56

3.25 Form Menu Untuk Login...57

3.26 Form Tambah User...57

3.27 Form Input untuk Kategori ...57

3.28 Form Edit Kategori...58

3.29 Form Tambah Kata kunci ...58

3.30 Form Edit Kata Kunci ...58

3.31 Form Input untuk Analisa Komplain...59

3.32 Form Edit Analisa ...60

3.33 Form Melihat Laporan berdasarkan Kategori...61

3.34 Form Melihat Laporan berdasarkan Periode...61

3.35 Form Melihat Laporan berdasarkan Kategori dan Periode...61

3.36 Form Pencarian ...62

3.37 Form Restore Data...62

3.38 Output Lihat kategori...63

3.39 Output Lihat User ...63

3.40 Output Lihat Analisa ...63

3.41 Output Laporan Analisa Komplain berdasarkan Kategori ...64

3.42 Output Laporan Analisa Komplain berdasarkan Periode ...64

3.43 Output Laporan Analisa Komplain berdasarkan Kategori dan Periode65 3.44 Output Hasil Pencarian jika ditemukan ... 65

3.45 Output Panduan Mengisi Analisa...66

3.46 Output Hasil Pencarian jika Tidak Ditemukan ...66

3.47 Output jika Proses Restore Berhasil ...66

3.48 Output jika Login Tidak Valid... 66

4.1 Field Tabel Login beserta tipe datanya...68

4.2 Field Tabel Kunci beserta tipe datanya ...68

(21)

4.4 Field Tabel Analisa beserta tipe datanya ...69

4.5 User Interface Proses Login...71

4.6 User Interface Untuk Admin...77

4.7 User Interface Proses Menambah Data User ...81

4.8 User Interface Proses Melihat Data User... 83

4.9 User Interface Proses Menghapus Data User...86

4.10 User Interface Proses Menambah Data Kategori ... 88

4.11 User Interface Proses Melihat Data Kategori ...90

4.12 User Interface Proses Memilih Data Kategori Yang Akan Diubah ....91

4.13 User Interface Proses Mengubah Data Kategori...94

4.14 User Interface Proses Menghapus Data Kategori ...99

4.15 User Interface Proses Menambah Data Analisa... 102

4.16 User Interface Proses Melihat Data Analisa ... 104

4.17 User Interface Untuk Melakukan Pencarian berdasarkan Kata Kunci ... 107

4.18 User Interface Proses Memilih Data Analisa Yang Akan Diubah .... 108

4.19 User Interface Proses Mengubah Data Analisa... 109

4.20 User Interface Proses Menghapus Data Analisa ... 112

4.21 User Interface Proses Menambah Data Kata Kunci ... 113

4.22 User Interface Proses Melihat Data Kata Kunci ... 115

4.23 User Interface Proses Menghapus Data Kata Kunci ... 116

4.24 User Interface Proses Melihat Laporan berdasarkan Kategori ... 118

4.25 User Interface Proses Melihat Laporan berdasarkan Periode ... 122

4.26 User Interface Proses Melihat Laporan berdasarkan Kategori dan Periode ...123

4.27 User Interface Proses Melihat Laporan berdasarkan Narasumber .... 125

4.28 Gambar Hasil Laporan berdasarkan Kategori... 126

4.29 User Interface Proses Backup ... 127

(22)

5.2 User Interface Simulasi Tak Ada Teknik timestamp dan Manajemen Transaksi 1 ... 132 5.3 User Interface Simulasi Tak Ada teknik timestamp dan Manajemen

Transaksi 2 ... 133 5.4 Interface Data Kategori Akhir Pengujian Aplikasi Tanpa Penggunaan

Teknik timestamp dan Manajemen Transaksi... 134 5.5 User Interface Data Kategori Awal Pengujian Terhadap Masalah

Hilangnya Data Yang Diubah (The Lost Update Problem) Dengan Menggunakan Teknik timestamp dan Manajemen Transaksi... 136 5.6 User Interface Simulasi Ada Teknik timestamp Manajemen Transaksi

1 ...137 5.7 User Interface Simulasi Ada Teknik timestamp dan Manajemen

Transaksi 2 ... 139 5.8 User Interface Reaksi Yang Terjadi Jika 2 Simulasi Aplikasi Yang

Menggunakan Teknik timestamp dan Manajemen Transaksi Saling Bertabrakan Pada Pengujian Masalah Hilangnya Data Yang Diubah (The Lost Update Problem)...140 5.9 User interface Data Kategori Akhir Pada Pengujian Masalah

(23)

DAFTAR LISTING

(24)

4.30 Store Procedure laporan berdasarkan periode... 122 4.31 Store Prosedur laporan berdasarkan kategori dan periode ... 124 4.32 Store Prosedur laporan berdasarkan narasumber ... 125 4.33 Listing backup.php ...127 5.1 Proses Delay... 133 5.2 Store Procedure Update Kategori...133 5.3 Proses Delay... 137 5.4 Store Procedure update deskripsi ... 138

(25)

1 1.1. Latar Belakang

Seiring dengan perkembangan teknologi informasi yang semakin berkembang, banyak perusahaan mulai menerapkan sebuah sistem informasi yang berbasis web. Sebuah sistem informasi tidak dapat menjalankan fungsinya dengan baik, cepat, serta akurat jika sistem informasi tersebut masih manual.

Pada PT. Konimex khususnya bagian Human Resources Development (HRD) sering mendapat komplain dari semua pihak yang menggunakan jasa HRD. Oleh karena itu, Human Resources Development menganggap penting mengambil keputusan untuk membuat sebuah sistem informasi yang nantinya dapat mengelola komplain-komplain yang terjadi. Namun sistem yang sudah ada sekarang masih belum menggunakan sebuah sistem informasi yang berbasis web serta masih mempunyai beberapa kekurangan. Dengan mempertimbangkan beberapa masalah yang ada dalam mengelola komplain-komplain yang terjadi maka penyusun mencoba untuk membuat sebuah sistem informasi berbasis web serta dapat mengatasi kekurangan pada sistem yang sudah ada sebelumnya.

(26)

fasilitas pencarian berdasarkan kategori menggunakan kata kunci, serta belum adanya panduan untuk mengisi analisa komplain.

Penulis tertarik untuk membuat sebuah sistem informasi yang dapat mengelola komplain-komplain yang terjadi di HRD PT. Konimex Solo. Sebagai contoh,userdapat melihat data analisa, dan tidak hanya satuusersaja yang dapat mengaksesnya, namunmultiuser. Sistem informasi yang akan dibangun ini akan dinamakan sebagai Sistem Informasi Penanganan Komplain (selanjutnya akan disingkat dengan SIPK).

1.2. Rumusan Masalah

Dari latar belakang masalah di atas, dapat dirumuskan suatu masalah “Bagaimana membangun sebuah sistem informasi berbasis web yang dapat mengelola komplain-komplain yang terjadi di dalam sub divisiHuman Resources Development di PT. Konimex Solo dalam lingkunganmultiuser?”.

1.3. Batasan Masalah

Dalam batasan masalah ini, penyusun membatasi permasalahan yang perlu, yaitu:

1. SIPK ini digunakan oleh Human Resources Development (HRD) PT. Konimex.

(27)

3. SIPK yang dibuat tidak membahas keamanan jaringan.

4. Panduan untuk membantu pengisian analisa komplain pada SIPK hanya berdasarkan kasus-kasus yang serupa atau yang sudah ada sebelumnya.

1.4. Tujuan dan Manfaat

Tujuan dan manfaat pembuatan SIPK adalah sebagai berikut:

1. Membuat sebuah sistem informasi yang dapat menangani komplain-komplain yang terjadi di dalam Sub Divisi Human Resources Development di PT . Konimex Solo (menggunakan PHP dan MySQL) dalam lingkungan multiuser

2. Mempermudah user dalam membuat analisa komplain dan melakukan pencarian.

3. Meringankan kerja operator dalam pembuatan laporan.

1.5. Metodologi Penelitian

Metodologi pengembangan perangkat lunak yang digunakan dalam pembuatan Sistem Informasi Penanganan Komplain (SIPK) adalah metodologi terstruktur (Whitten, J.L., at. all., 2004), dengan tahapan sebagai berikut :

a. Analisis Sistem(System Analysis)

(28)

1. Mempelajari buku-buku, laporan-laporan, karya ilmiah maupun makalah yang dapat dijadikan sebagai bahasan masukkan informasi dalam menyelesaikan masalah-masalah yang ada..

2. Melakukan wawancara dengan pihak yang bersangkutan dalam hal ini di HRD PT. Konimex. untuk memperoleh informasi yang akurat berkaitan dengan masalah yang ada.

b. Desain sistem(System Design)

1. Membuat use case diagram, diagram arus data (DFD) dan diagram relasi entitas (ERD) dalam perancangan sistem.

2. Membuat desain database, menu, input, output dan user interface. c. Implementasi sistem(System Implementation)

Setelah sistem selesai dirancang dan dibangun, tahap selanjutnya adalah tahap implementasi yakni meletakkan sistem supaya siap dioperasikan d. Testing dan Analisa Hasil

Sistem ini akan dicoba terlebih dahulu di Laboratorium Teknik Informatika Universitas Sanata Dharma, kemudian dilakukan analisis hasil dari sistem yang dibuat.

1.6. Sistematika Penulisan

Secara garis besar, sistematika penulisan dari Tugas Akhir ini adalah sebagai berikut:

(29)

Bab ini membahas tentang latar belakang penulisan tugas akhir, batasan masalah, rumusan masalah, tujuan penulisan dan metodologi penelitian tugas akhir.

BAB II LANDASAN TEORI

Bab ini berisi tentang landasan teori yang digunakan oleh penyusun dalam membuat dan menyelesaikan Tugas Akhir ini.

BAB III PERANCANGAN SISTEM

Bab ini berisi tentang pembahasan rancangan sistem yang akan dibangun. BAB IV IMPLEMENTASI PROGRAM

Bab ini membahas tentang implementasi perancangan program kedalam bahasa perograman.

BAB V ANALISA HASIL

Bab ini berisi jawaban dari rumusan masalah yang telah dinyatakan pada pendahuluan.

BAB VI KESIMPULAN

(30)

6

Sistem informasi adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan (Robert A.Leitch/K. roscoe Davis, 1983). Kebutuhan akan informasi dan sistem-sistem pendukungnya semakin luas, yang tentunya disesuaikan dengan konsumen informasi tersebut, sepertiinvestor yang memerlukan informasi tentang keuangan dan prospek bisnis masa depan atau agen-agen pemerintah yang memerlukan informasi untuk membuat laporan-laporan keuangan serta aktivitas pengoperasian pajak atau kebijakan-kebijakan pemerintah lainnya.

Sistem informasi sebagai satu kesatuan yang terintegrasi dari berbagai unsur membentuk informasi harus mencakup berbagai aspek diantaranya keakuratan, relevansi dan tepat waktu agar mudah diterima dan diterjemahkan oleh konsumen. Ketiga hal tersebut mutlak adanya dalam suatu sistem informasi karena akan sangat mempengaruhi penilaian konsumen terhadap informasi yang dibutuhkannya.

(31)

sehingga mampu menyediakan informasi optimal yang diperlukan pemakainya. (Marlinda, 2004)

2.1 Use Case Diagram

Use case diagram menggambarkan secara grafis perilaku software aplikasi. Dengan kata lain, use case diagram menggambarkan secara grafikal tentang siapa yang akan menggunakan sistem dan dengan cara bagaimana user berinteraksi dengan sistem (A.Suhendar, 2002).

Use case menggambarkan perilaku software aplikasi, termasuk didalamnya interaksi antaractordengansoftware aplikasi tersebut.

Actor menggambarkan pengguna software aplikasi (user). Actor membantu memberikan suatu gambaran jelas tentang apa yang harus dikerjakan software aplikasi. Sebagai contoh, sebuahactordapat memberikan input ke dalam dan menerima informasi dari software aplikasi. Perlu dicatat bahwa sebuahactor berinteraksi denganuse case, tetapi tidak memiliki kontrol atasuse-case. Sebuah actormungkin seorang manusia, satu device hardware, atau sistem informasi lain. Actordinotasikan seperti gambar di bawah ini:

Gambar 2.1 Actor 2.2 Basis Data

(32)

perangkat lunak tertentu untuk memanipulasinya. Basis data merupakan salah satu komponen yang penting dalam suatu sistem informasi, karena berfungsi sebagai basis penyedia informasi bagi para pemakainya. Penerapan basis data dalam sistem informasi disebut dengan database system. Sistem basis data ini adalah suatu sistem informasi yang mengintegrasikan kumpulan dari data yang saling berhubungan satu dengan yang lainnya dan membuatnya tersedia untuk beberapa aplikasi yang bermacam-macam di dalam suatu organisasi.

2.2.1 Diagram Entity Relationship ( ERD )

Komponen-komponen pembentuk ERD (Fathansyah, 2004), yaitu : 1. Entitas

Merupakan individu yang mewakili sesuatu yang nyata (esistensinya) dan dapat dibedakan dari sesuatu yang lain.

2. Relasi

Menunjukkan adanya hubungan di antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda.

Model Entity-Relationship yang berisi komponen-komponen himpunan Entitas dan Himpunan Relasi yang masing-masing dilengkapi dengan atribut-atribut yang mempresentasikan seluruh fakta dari ‘dunia nyata’ yang kita tinjau, dapat digambarkan dengan lebih sistematis dengan menggunakan Diagram Entity-Relationship (Diagram E-R). Notasi-notasi simbolik di dalam Diagram E-R yang dapat kita gunakan adalah:

• Persegi panjang, menyatakan Himpunan Entitas.

• Lingkaran/Elip, menyatakan Atribut (Atribut yang berfungsi sebagaikey

(33)

• Belah Ketupat, menyatakan Himpunan Relasi .

• Garis, sebagai penghubung antara Himpunan Relasi dengan Himpunan

Entitas dan Himpunan Entitas dengan Atributnya.

• Kardinalitas Relasi dapat dinyatakan dengan banyaknya garis cabang

atau dengan pemakaian angka (1 dan 1 untuk relasi satu-ke-satu, dan N untuk relasi satu-ke—banyak atau N dan N untuk relasi banyak-ke-banyak).

Kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas Relasi yang terjadi di antara 2 himpunan entitas (misalnya A dan B) dapat berupa:

E Himpunan Entitas E R Himpunan Relasi R

(34)

1. Satu-ke-satu(one-to-one)

Gambar 2.2 Relasi One-to-One

Yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, dan begitu pula sebaliknya setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.

2. Satu-ke-banyak(one-to-many)

Gambar 2.3 Relasi One-to-Many

Entitas 1

Entitas 2 Entitas 2

Entitas 3

Entitas 2 Entitas 2

Entitas 3 Entitas 3

Entitas 4 Entitas 1

B A

(35)

Yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.

3. Relasibanyak-ke-banyak(many-to-many)

Gambar 2.4 Relasi Many-to-many

Yang berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, dan demikian juga sebaliknya, dimana setiap entitas pada himpunan entitas B berhubungan dengan banyak entitas pada himpunan entitas A.

2.3 Data Flow Diagram ( DFD )

DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada atau suatu sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir (misalnya

Entitas 1

Entitas 2 Entitas 2

Entitas 3

Entitas 4

Entitas 3

Entitas 4 Entitas 1

(36)

lewat telepon, surat dan sebagainya) atau lingkungan fisik dimana data tersebuat akan disimpan (misalnya file kartu, hardisk, dan sebagainya). DFD merupakan alat yang digunakan pada metodologi pengembangan sistem yang terstruktur (struktured Analysis and design) (Jogiyanto, 1999). DFD merupakan alat yang cukup populer sekarang ini, karena dapat menggambarkan arus data di dalam sistem dengan terstruktur dan jelas.

Berikut ini simbol-simbol yang sering digunakan dalam diagram arus data : 1. Kesatuan luar

Merupakan suatu kesatuan di lingkungan luar sistem yag dapat berupa orang, organisasi atau sistem lainnya yang berada di lingkungan luarnya yang akan memberikan input atau menerima output dari sistem. Suatu kesatuan luar dapat disimbolkan dengan suatu notasi kotak.

Gambar 2.5 Simbol kesatuan luar User 2. Arus data

Arus data di DFD diberi simbol suatu panah. Arus data ini mengalir diantara proses, simpanan data dan kesatuan luar. Arus data ini menunjukkan arus dari data yang dapat berupa masukan untuk sistem atau hasil dari proses sistem.

(37)

Gambar 2.6 Simbol arus data dengan nama Laporan SIPK

3. Proses

Merupakan kegiatan atau kerja yang dilakukan orang, mesin atau komputer dari hasil suatu arus data yang masuk ke dalam proses untuk menghasilkan arus data yang akan keluar dari proses. Pada proses terjadi berbagai kemungkinan arus data. Untuk physical data flow diagram ( PDFD ), proses dapat dilakukan pleh orang, mesin atau komputer, sedangkan untuklogical data flow diagram ( LDFD ), suatu proses hanya menunjukkan proses dari komputer. Suatu proses dapat ditunjukkan dengan simbol lingkaran atau dengan simbol empat persegi panjang dengan sudut-sudutnya yang tumpul.

Setiap proses harus diberi penjelasan yang lengkap meliputi : a. Identifikasi proses

Identifikasi ini umumnya berupa angka yang menunjukkan nomor acuan dari proses dan ditulis pada bagian atas simbol proses.

b. Nama proses

Nama proses menunjukkan apa yang dikerjakan oleh proses tersebut. Nama proses harus jelas dan lengkap menggambarkan kegiatan proses.

(38)

Nama proses biasanya berbentuk suatu kalimat yang diawali dengan kata kerja dan letaknya berada di bawah identifikasi proses.

c. Pemroses

Untuk PDFD yang menunjukkan proses yang tidak hanya dari komputer, tetapi juga proses manual, maka pemroses harus ditunjukkan. Pemroses ini menunjukkan siapa dan dimana suatu proses dilakukan. Untuk LDFD yang prosesnya hanya menunjukkan proses komputer saja, maka pemroses tidak perlu disebutkan. Untuk LDFD, bila pemroses akan disebutkan dapat juga untuk menyebutkan nama dari program yang melakukan prosesnya. Keterangan pemroses ini dapat diletakkan di bawah nama proses.

Gambar 2.7 Simbol proses Lihat Kategori

4. Media penyimpanan data, dapat berupa file / basis data di sistem komputer, arsip / catatan manual, kotak tempat data di meja seseorang, tabel acuan manual, agenda buku.

Gambar 2.8 Simbol media penyimpanan data Lihat

Kategori 2

(39)

2.4 Web / Homepage

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. Hompage merupakan dokumen pertama yang akan dilihat oleh user, setiap kali mengakses sebuah Web Server. Web dapat dirancang dengan menggunakan bahasa pemrograman web yang banyak tersedia di pasaran. Apabila situs yang dibangun telah hampir selesai dibangun, maka yang perlu dilakukan adalah memilih domain yang akan digunakan untuk situs tersebut.

(40)

Web hosting merupakan tempat dimana seseorang dapat menyimpan data atau dokumen di sebuahweb server.Data atau dokumen ini terhubung ke internet dengan harapan dapat diakses orang lain.

2.5 Hypertext Markup Language ( HTML )

Merupakan salah satu format yang digunakan dalam pembuatan dokumen dan aplikasi yang berjalan di halamanweb.Merupakan protokol yang digunakan untuk mentransfer data antara web server ke web browser. Protokol ini mentransfer dokumen-dokumen web yang ditulis atau berformat HTML. Dikatakan markup language karena HTML berfungsi untuk memformat file dokumen teks biasa untuk bisa ditampilkan pada web browser dengan bantuan tanda-tanda yang sudah ditentukan. Hal tersebut dapat dilakukan dengan menambah elemen atau yang sering disebuttag.

(41)

2.6 PHP

PHP merupakan bahasa standar yang digunakan dalam dunia web site. PHP adalah bahasa program yang berbentuk script yang diletakkan di dalam server web. Jika kita lihat dari sejarah, mulanya PHP diciptakan dari ide Rasmus Lerdof yang membuat sebuah script perl. Script tersebut sebenarnya dimaksudkan untuk digunakan sebagai program untuk dirinya sendiri. Akan tetapi, kemudian dikembangkan lagi sehingga menjadi sebuah bahasa yang disebut “Personal Home Page”. Inilah awal mula munculnya PHP sampai saat ini.

PHP telah dicipta terutama untuk kegunaan web dan boleh menghubungkan query basis data dan menggunakan simple task yang boleh diluruskan dengan 3 atau 4 baris kod saja. PHP sebenarnya merupakan program yang berjalan pada platform LINUX sehingga membuat program ini free ware. Selanjutnya PHP mengalami perkembangan yakni dibuat dalam versi windows (Bunafit Nugroho, 2004)

2.7 MySQL

SQL ( Structured Query Language ) adalah bahasa yang berisi perintah-perintah untuk memanipulasi basis data, seperti menghapus, mengubah, memilih, menggabungkan data. SQL yang secara tidak resmi menjadi bahasa standar basis data adalah bahasa yang efisien, mudah untuk mempelajari dibandingkan dengan semua bahasa basis data ((Marlinda, 2004).

(42)

Pada DDL hal terpenting adalah pembentukan basis data dengan objek utama tabel, indeks, mengubah tabel, menghapus tabel dan membuat domain. Domain dalam hal ini adalah kemampuan basis data untuk membentuk suatu tipe baru yang pada dasarnya mengacu pada tipe dasar.

Creating tables;untuk membuat tabel

Creating indices; untuk membuat indeks.

Altering tables; untuk mengubah tabel.

Dropping tables; untuk menghapus tabel.

Creating domain; untuk membuat tipe data baru.

2. DML (Data Manipulation Language)

Pada DML yang terpenting adalah melakukan operasi atau manipulasi terhadap basis data dengan objek utama insert, delete, selection, pembentukan view dan update. Pembentukan view sebenarnya tidak dilakukan dalam servis DDL karena view bukan merupakan base tables. Dalam hal ini tak ada tabel yang secara fisik terbentuk dengan digunakan view.

Inserting ;penyisipan data

Updating; pengubahan data

Deletion ; penghapusan data

Selection ; seleksi data

Creating views; membuat tabel maya.

(43)

Pada DCL hal terpenting adalah memberi otoritas, konfirmasi penyimpanan basis data, menunda perubahan dan menghapus otoritas yang telah diberikan. Pada beberapa basis data juga dapat diatur basis data spaceper user.

Commit ;konfirmasi penyimpanan data dimemorykebasis data

Rollback ; mengembalikan status transaksi sebelum penyimpanan

Grant ; pemberian haka dari satu user ke user lain

Revoke ; penghapusan hak yang diberikan

MySQL (My Structure Query Language) adalah sebuah program pembuat basis data yang bersifat open source, artinya siapa saja boleh menggunakannya dan tidak dicekal. MySQL sebenarnya produk yang berjalan pada platform Linux. Karena sifatnya yang open source, dia dapat dijalankan pada semua platform baik Windows maupun Linux. Selain itu, MySQL juga merupakan program pengakses basis data yang bersifat jaringan sehingga dapat digunakan untuk aplikasi Multi User. Saat ini basis data MySQL telah digunakan hampir oleh semua programer basis data, apalagi dalam pemrograman web.

(44)

hampir semua program aplikasi baik yang open source seperti PHP maupun yang tidak, yang ada pada platform seperti Visual Basic, Delphi, dan lainnya.

Pada pertengahan tahun 2001, MySQL mendapatkan penghargaan dari Linux Magazine Editor Choice Award karena kemudahan instalasi, fleksibilitas dan ketersediaannya dalam berbagai platform. Hal ini semakin mengukuhkan keberadaan MySQL dalam berbagai aplikasi berbasis basis data. Bukan hanya pada sistem operasi Linux, tapi juga menyebar pada sistem operasi lain.

2.7.1Basis data,tabel, baris, dan kolom

Dalam konteks bahasa SQL, pada umumnya informasi tersimpan dalam tabel-tabel yang secara logik merupakan struktur dua dimensi yang terdiri atas baris-baris data yang berada dalam satu atau lebih kolom. Baris pada tabel sering disebut sebagai instance dari data, sedangkan kolom sering disebut sebagai attributes atau field. Keseluruhan tabel itu dihimpun dalam satu kesatuan yang disebutbasis data.

2.7.2 Tipe Data pada MySQL

Berikut ini tabel tipe data yang dapat digunakan untuk field-field tabel padabasis data MySQL:

Tipe

Data Keterangan Ukuran

INT[(M)]

[UNSIGN

Data numeris yang tidak memiliki komponen desimal atau disebut juga bilangan

bulat. Signed range –2147483648 – 2147483647

(45)

ED]

[ZEROFI

LL]

Unsigned range 0 – 4294967295.

TIMEST

AMP[(M)

]

Timestamp/tanda waktu otomatis. Berisi waktu pada saat tabel diakses, dalam

UNIX time.

4

DATE Untuk menyimpan informasi tanggal.

Format : ‘YY-MM-DD’, ‘YYYY-MM-DD’, dan ‘YYMMDD’.

Range 0000-00-00 to 9999-12-31.

4

TIME Untuk menyimpan informasi waktu.

Format : ‘HH:MM:SS, ‘HHMMSS’, ‘HHMM’, ‘HH’

3

DATETI

ME

Untuk menyimpan informasi tanggal dan waktu.

Format : “YYYY-MM-DD HH:MM:SS”.

Range ‘0000-01-01 00:00:00’ – ‘9999-12-31 23:59:59’.

8

YEAR Informasi tahun. 1

CHAR(M

)[binary]

String dengan panjang tetap, selalu tersimpan sesuai dengan panjang yang

ditentukan. Range 1 – 255 karakter. Seluruh space akhiran dibuang saat di-retriev.

Di-sortir dan dibandingkan secara case insentive kecuali jika diberikan binary

keyword.

M

VARCH

AR(M)

[binary]

String dengan panjang variable, tersimpan sesuai dengan panjangnya saat itu.

Range 1 – 255 karakter. Seluruh space akhiran dibuang saat di-retriev. Di-sortir

dan dibandingkan secara case insentive kecuali jika diberikan binary keyword

L+1

TINYBL

OB

TINYTE

XT

Teks dengan ukuran yang pendek.

Dengan panjang maksimum 255 karakter

L+1

BLOB

TEXT

Deretan karakter yang panjang. Biasa dipakai sebagai pengganti format data text

karena keterbatasan ukuran format text. Dengan panjang maksimum 65535

karakter

L+2

(46)

BLOB

Teks dengan ukuran yang panjang.

Dengan panjang maksimum 4294967295 karakter

L+4

SET Objek string yang dapat mempunyai lebih dari satu nilai dari nilai yang

dimungkinkan (atau NULL).

1 - 8

Tabel 2.1 Tipe data pada MySQL (Bertha Sidik, Ir , 2005) 2.7.3 MembuatBasis data

Untuk membuat basis data gunakan perintah berikut ini : mysql>CREATE BASIS DATA nama_basis data;

2.7.4 Membuka Basis data

Untuk membuka suatu basis data gunakan perintah berikut ini : mysql>USE nama_basis data

2.7.5 Membuat Tabel

Setelah basis data terbuat dan kita telah membukanya, kita seharusnya membuat tabel yang akan menyimpan data yang kita butuhkan. Setiap perintah SQL pada MySQL harus diakhiri dengan titik koma (;). Pada prompt mysql ketikkan perintah berikut untuk membuat tabel.

(47)

mysql>nama_field2 tipe_data2, . . .

mysql>);

2.7.6 Insert Query

Untuk mengisi data pada suatu tabel, kita gunakan perintah INSERT. Sintaks penulisannya adalah sebagai berikut :

mysql>INSERT INTO nama_tabel (field1, field2, ... ) VALUES (nilai_field1, nilai_field2, ... );

2.7.7 Select Query

Perintah ini digunakan untuk melihat data dari satu atau beberapa tabel. Sintaks penulisannya adalah sebagai berikut :

mysql>SELECT (fieldx, fieldx, ... ) FROM nama_tabel;

Untuk melihat semua kolom / field pada suatu tabel, sintaks penulisannya adalah sebagai berikut :

mysql>SELECT * FROM nama_tabel;

2.7.8 Menyaring Hasil Select Query dengan WHERE

Kita dapat membatasi hasil select query dengan keyword WHERE sehingga record-record yang dikeluarkan hanyalah record yang sesuai dengan kriteria yang diinginkan. Sintaks penulisannya adalah sebagi berikut :

(48)

Operator Keterangan

= Operan kiri sama dengan operan kanan <> atau != Operan kiri tidak sama dengan operan kanan > Operan kiri lebih besar dari operan kanan

>= Operan kiri lebih besar atau sama dengan dari operan kanan < Operan kiri lebih kecil dari operan kanan

<= Operan kiri lebih kecil atau sama dengan dari operan kanan

Tabel 2.2 Tabel operatorEqualitydanInequality

Operator Keterangan

And Operator logika ‘dan’ Or Operator logika ‘atau’

Tabel 2.3 Tabel operator logika

2.7.9 Mensortir Data

Hasil query dapat disortir sesuai dengan kebutuhan dengan keyword ORDER BY. Sintaks penulisannya adalah sebagai berikut :

mysql>SELECT (fieldx, fieldx, ... ) FROM nama_tabel ORDER BY kriteria;

(49)

Sintaks penulisannya adalah sebagai berikut :

mysql>SELECT (fieldx, fieldx, ... ) FROM nama_tabel ORDER BY kriteria DESC;

2.7.10 Delete Query

Berfungsi untuk menghapus suatu record dengan kriteria tertentu. Sintaks penulisannya adalah sebagai berikut :

mysql>DELETE FROM nama_tabel WHERE kriteria;

Untuk menghapus seluruh record pada suatu tabel, gunakan perintah DELETE tanpa menentukan kriterianya.

mysql>DELETE FROM nama_tabel WHERE kriteria;

2.7.11 Update Query

Berfungsi untuk memodifikasi nilai kolom / field dari suatu record. Sintaks penulisannya adalah sebagai berikut :

mysql>UPDATE nama_tabel SET nama_field1=nilai_baru1, nama_field2=nilai_baru2, ... WHERE kriteria;

Untuk memodifikasi nilai suatu kolom /field secara keseluruhan gunakan perintah UPDATE tanpa menentukan kriterianya.

mysql> UPDATE nama_tabel SET nama_field1=nilai_baru1, ...;

(50)

Apache merupakan web server yang paling banyak dipergunakan di Internet. Program ini pertama kali didisain untuk sistem operasi lingkungan UNIX. Namun demikian, pada beberapa versi berikutnya Apache mengeluarkan programnya yang dapat dijalankan di Windows.

Berdasarkan sejarahnya, Apache dimulai oleh veteran developer NCSA httpd (National Center for Supercomputing Application ). Saat itu pengembangan NCSA httpd sebagaiweb servermengalami stagnasi. Rob Mc Cool meninggalkan NCSA dan memulai sebuah proyek baru bersama para webmaster lainnya, menambal bug, dan menambahkan fitur pada NCSA httpd. Mereka mengembangkan program ini lewat mailing list. Dengan berpijak pada NCSA httpd versi 1.3, Team Apache mengeluarkan rilis pertama kali secara resmi Apache versi 0.6.2. Nama Apache diambil dari “ A Patchy Server”, server perbaikan yang penuh dengan tambalan ( patch ). Tambalan yang dimaksud adalah penambahan fitur dan penambalanbugdari NCSA httpd Versi 1.3.

Saat ini Apache dipergunakan secara luas. Hal ini disebabkan karena programnya yang gratis dengan kinerja relatif stabil. Dalam pengembangannya pun mempergunakan sistem terbuka, yakni tiap orang dibuka kesempatan seluas-luasnya untuk dapat memberikan kontribusi dalam mengembangkan program. Kontribusi dikomunikasikan lewat mailing list. Apache mempunyai program pendukung yang cukup banyak. Hal ini memberikan layanan yang cukup lengkap bagi penggunanya.

(51)

Kontrol ini dapat dijalankan berdasarkan nama hostatau nomor IP.

2. CGI (Common Gateway Interface), yang paling terkenal untuk digunakan adlah Perl ( Practical Extraction and Report Language ), didukung oleh Apache dengan menempatkannya sebagai modul (mod_perl).

3. PHP ( PHPHypertext Processor), program dengan metode semacam CGI, yang memproses teks dan bekerja di server. Apache mendukung PHP dengan menempatkannya sebagai salah satu modulnya (mod_php). Hal ini membuat kinerja PHP menjadi lebih baik.

Platform yang didukung oleh Apache saat ini antara lain Linux, SunOS, UnixWare, FreeBSD, Solaris, AIX, OpenBSD, IRIX, SCO, NetBSD, HPUX, BSDI, Digital Unix.

2.9 Konsep-konsep Transaksi untuk Recovery dan Concurency Control Konsep-konsep transaksi ini diambil dari buku Sistem Basis Data (Marlinda,2004).

a. Operasi Read dan Write dari suatu transaksi

Read_item(X) : membaca item X dari basis data dan memasukkannya ke dalam program X

Write_item(X) : menulis isi dari suatu program X ke dalam item basis data X.

b. State-state dari Transaksi

Perlu diketahui kapan suatu transaksi mulai, selain melakukan operasi apa saja, dan commit untuk keperluan recovery.

(52)

• READ/WRITE : operasi-operasi pada transaksi

• END_TRANSACTION : akhir transaksi, diperiksa apakah perubahan yang disebabkan suatu transaksi dapat dibuat permanen atau harus digagalkan.

• COMMIT_TRANSACTION : memberi signal bahwa suatu transaksi sukes sehingga perubahan-perubahan yang dilakukan dapat dibuat permanen di basis data.

• Selain itu, diperlukan juga beberapa operasi:

• ROLLBACK(abort) : memberi signal bahwa suatu transaksi gagal sehingga semua perubahan pada basis data harus dihapuskan.

• UNDO : sama seperti roolback, tetapi hanya untuk satu operasi saja.

• REDO : mengulang operasi-operasi tertentu dari suatu transaksi

Diagram transaksi state dari suatu transaksi adalah sebagai berikut:

Gambar 2.9 Diagram Transaksi State

Setelah transaksi selesai, maka akan masuk ke partially commited state. Dicek apakah:

(53)

§ Tidak ada kegagalan sistem pada saat menyimpan perubahan-perubahan karena suatu transaksi secara permanen

Bila kedua test tersebut di atas sukses, maka transaksi akan masuk ke state COMMIT. UPDATE dibuat permanen dan transaksi kemudian selesai. Bila salah satu/kedua test gagal, maka transaksi masuk ke state FAILED. Transaksi juga bisa masuk ke state FAILED kalau digagalkan (abort) pada AKTIVE state. Transaksi yang berada di state FAILED harus dirollback untuk meniadakan efek update terhadap basis data, baru transaksi selesai.

Sifat-sifat transaksi:

a) Atomicity : transaksi adalah unit prosessing yang unik. Transaksi harus dilaksanakan secara keseluruhan atau tidak sama sekali.

b) Consistency: eksekusi yang tepat dari suatu transaksi membawa basis data dari suatu konsisten ke state konsisten state yang lain.

c) Permanency: perubahan basis data yang sudah commit harus tetap ada, meski ada kegagalan-kegagalan setelah itu.

d) Isolasi : update transaksi yang belum commit tidak boleh dilihat oleh transaksi lain.

e) Seriability : efek pelaksanaan transaksi-transaksi secara bersamaan harus ekivalen dengan pelaksanaan transaksi-transaksi secara serial.

Ada 3 hal masalah yang dapat disebabkan oleh concurency, salah satunya adalah sebagai berikut:

a) Masalah hilangnya data yang diubah (the lost update problem)

Suatu operasi update yang sukses oleh seorang user dapat disampingkan oleh user yang lain. Sebagai contoh :

Waktu T1 T2 balx

t1 begin_transaction 100

(54)

t3 read(balx) balx=balx+100 100

t4 balx=balx-10 write(balx) 200

t5 write(balx) commit 90

t6 commit 90

Solusi dari problem adalah mencegah transaksi T1 membaca nilai balx sampai transaksi T2 selesai melakukan perubahan data.

2.10 Tipe Level Isolasi Transaksi

Level isolasi adalah setting yang menetukan level sebuah transaksi menerima data yang tidak konsisten, yaitu tingkatan sebuah transaksi diisolasi dari transaksi lain (Martina, Ir. Inge., 2003). Ada empat level isolasi, yaitu :

1. Serializable merupakan level isolasi tertinggi. Transaksi terisolasi dari transaksi lainnya. Hasil yang diperoleh dari transaksi konkuren pada sebuah database sama dengan jika transaksi dijalankan secara serial (satu per satu)

2. Read Committed merupakan level default dari SQL Server. Pada level ini, pembacaan data diperbolehkan hanya pada data yang telah di-commit. 3. Read Uncomitted merupakan level terendah. Pada level ini transaksi

diisolasi hanya untuk menjadi data yang rusak fisik tidak dapat dibaca. 4. Repeatable read merupakan pembacaan berulang pada data yang dipakai

(55)

2.11 Timestamp

Sebuah kolom TIMESTAMP bermanfaat karena merekam tanggal dan waktu dari suatu operasi INSERT atau UPDATE. Secara default, kolom pertama TIMESTAMP di suatu tabel akan diset secara otomatis pada tanggal dan waktu saat operasi dijalankan jika nilainya tidak dimasukkan. kolom TIMESTAMP pada tanggal dan waktu yang ada dengan memberikan suatu nilai NULL

Suatu nilai TIMESTAMP dikembalikan sebagai suatu string di dalam bentuk 'YYYY-MM-DD HH:MM:SS' dengan lebar 19 karakter.

Waktu TIMESTAMP akan terisi secara otomatis pada saat operasi INSERT atau UPDATE dengan current_timestamp atau waktu saat operasi tersebuat dijalankan dijalankan. (MySQL 5.0 Reference Manual,2006)

Contoh dari penggunaan timestamp adalah sebagai berikut:

CREATE TABLE t2 (ts TIMESTAMP NULL DEFAULT '0000-00-00 00:00:00');

INSERT INTO t2 VALUES (CURRENT_TIMESTAMP);

2.12 Store Procedure

Store Procedure adalah suatu sub program atau sekelompok perintah SQL yang tersimpan dan menyatu dalam suatu basis data. Store Procedure disimpan dalam Mysql server bukan di komputer client dan akan menyatu dengan sebuah basis data dalam server. (M. Agus J. Alam, 2005)

(56)

Create procedure <namaStoredProcedure> <isiStoreProcedure>;

Sedangkan untuk menjalankan Store Procedure dalam lingkungan MySQL server, dapat digunakan perintahCall, dengan penulisannya secara sederhana seperti berikut ini :

(57)

33 3.1 Analisa Sistem

3.1.1 Analisa Sistem Lama

PT. Konimex khususnya bagian Human Resources Development selama ini menangani komplain-komplain secara manual. Adapun yang menjadi latar belakang sehingga penyusun harus mengembangkan sistem ini adalah karena sistem yang lama masih diolah dengan menggunakan Spreadsheet dengan sistem operasi Linux. Sistem ini menangani adanya komplain yang terjadi di bagian Human Resources Development.

Kekurangan-kekurangan yang ada pada sistem lama yang ditemukan dan dianalisis oleh penyusun adalah sebagai berikut:

1. Dalam sistem yang lama belum diberikan fasilitas untuk melakukan pencarian berdasarkan kata kunci.

2. Dalam sistem yang lama belum diberikan fasilitas panduan untuk mengisi analisa komplain.

3. Belum adanya pembagian hak akses dalam penggunaan Sistem informasi penanganan komplain-komplain-komplain.

(58)

menyelesaikan masalah di atas antara lain dengan membuat desainuser interface berbasis Web yang mudah-mudahan dapat dirasa lebih menarik daripada yang lama.

3.1.2 Gambaran Umum Sistem Sistem informasi penanganan komplain-komplain yang baru

Sistem Sistem informasi penanganan komplain-komplain ini dibuat untuk membantu PT. Konimex Solo khususnya Divisi Human Resources Development (HRD). Sistem ini merupakan pengembangan dari Kerja Praktek di HRD PT. Konimex . Dengan sistem ini, divisi HRD bisa menangani komplain yang ada dengan akurat dan secepat mungkin.

Adapun gambaran dari Sistem informasi penanganan komplain-komplain yang akan dibuat adalah sebagai berikut:

Sistem ini digunakan oleh lebih satu user dengan pertimbangan untuk sharing data dan mendukung penggunaan secara multiuser, karena menggunakan teknologi manajemen transaksi dan teknik timestamp. Fasilitas yang diperoleh oleh user jika mengakses sistem adalah bisa menambah kategori, mengupdate kategori dan analisa komplain, menambah analisa komplain, melihat laporan analisa komplain menurut periode serta kategori, melakukan searching data-data kategori berdasarkan keyword , bantuan untuk mengisi analisa komplain, serta melakukan backup dan restore database.

(59)

pemrograman, Apache sebagai Web Server, dan databasenya menggunakan MySql.

(60)

3.1.3.1 Proses pengumpulan kebutuhan

Pihak-pihak yang menggunakan Sistem informasi penanganan komplain-komplain ini antara lain adalah :

1. Admin

Admin bertugas untuk menangani user yang menggunakan Sistem informasi penanganan komplain-komplain yaitu operator dan user bank. Fasilitas untuk admin antara lain menambah user serta menghapus user.

2. Operator

Fasilitas operator dalam SIPK ini antara lain dapat menambah kategori, mengupdate kategori, menambah analisa komplain, mengupdate analisa komplain, melihat laporan SIPK, membackup data, merestore data, dan melakukan pencarian. Fasilitas ini dapat diakses jika telah melakukan proses login dan valid.

3. User Bank

Fasilitas user bank dalam SIPK ini antara lain dapat menambah kategori, mengupdate kategori, menambah analisa komplain, mengupdate analisa komplain, melihat laporan SIPK, dan melakukan pencarian. Fasilitas ini dapat diakses jika telah melakukan proses login dan valid.

4. Manager

(61)

operator

user_bank

admin login

depends on

melihat laporan penanganan

komplain-komplain

membackup data

merestore data menambah kategori

update kategori

tambah user

pencarian

logout

update analisa komplain menambah analisa

komplain

update user

manager

(62)

3.1.2.2 Pemodelan proses (Data Flow Diagram (DFD))

(63)
(64)
(65)

Gambar 3.5 Proses 1 level 1

(66)

Gambar 3.7 Proses 3 level 1

(67)

Gambar 3.9 Proses 5 level 1

6p pencarian user_bank

operator

keyword,kategori,komplain Hasil pencarian

D4 kategori

Data kategori yang dibaca

keyword,kategori,komplain

Hasil pencarian

1

User valid

6

D5 analisa komplain

Data analisa yang dibaca

manager

keyword,kategori,komplain Hasil pencarian

(68)

7.1p

Gambar 3.11 Proses 7 level 1

Gambar 3.12 Proses 8 level 1

manajer

(69)
(70)
(71)

3.2.1 Desain Database (Logical Database Design)

Gambar 3.15 Relational Model SIPK

Keterangan : * = primary key ** = secondary key

(72)

Entitas-entitas yang ada adalah sebagai berikut :

1. Login, dengan atribut-atributnya adalah id_login, username, password, hak dan status.

2. Kategori, dengan atribut-atributnya adalah kode_ktg, deskripsi, dan jam. 3. Analisa, dengan atribut-atributnya adalah id_analisa, tanggal, narasumber,

kode_ktg, id_login, isi_komp, jawaban, tindakan, sebab, preventif, protektif, sistem_info dan jam.

4. Kunci, dengan atribut-atributnya adalah id_kunci dan kata kunci

3.2.2 Physical Database Design Tabel Login

Primary Key : id_login

Field Name Data Type Field Size Description

id_login int 10 Id login

username varchar 25 Nama user

password varchar 25 Password user

hak int 10 Hak user

status int 1 Status User

Tabel 3.1 Tabel Login

Tabel Kategori

Primary Key : kode_ktg

Field Name Data Type Field Size Description

kode_ktg int 11 Kode kategori

deskripsi varchar 30 Deskripsi kategori

jam timestamp Timestamp

(73)

timestamp. Field ini digunakan untuk teknik timestamp yang digunakan untuk merekam tanggal dan waktu dari suatu proses insert atau update.

Tabel Analisa

Primary Key : id_analisa

Field Name Data Type Field Size Description

id_analisa int 9 Id analisa

tanggal date 20 Tanggal analisa

narasumber varchar 30 Nara sumber analisa

kode_ktg int 11 Kode kategori

id_kunci int 11 Id kunci

isi_komp text - Isi komplain

jawaban text - Jawaban dari komplain

tindakan text - Tindakan terhadap

komplain

sebab text - Sebab dari komplain

preventif text - Preventif

protektif text - Protektif

sistem_info text - System info

jam timestamp Timestamp

Tabel 3.3 Tabel Analisa

(74)

Primary Key : id_kunci, id_analisa

Field Name Data Type Field Size Description

id_kunci int 11 Id kunci

Kata kunci varchar 30 Kata kunci

(75)

komplain

Gambar 3.16 Hierarki Modul Untuk Admin

menu_login.html

index.html

cek_login.php

admin.php

tambahuser.php prosestambahuser.ph p

lihatuser.php formhapususer.php proseshapususer.php

(76)

Gambar 3.17 Hierarki Modul Operator

menu_login.html

cek_login.php

operator.php

tambahktg.php prosestambahktg.php

lihatktg.php formeditktg.php proseseditktg.php

formhapusktg.php proseshapusktg.php

lihatanalisa.php formeditanalisa.php proseseditanalisa.php

formhapusanalisa.php proseshapusanalisa.php tambahanalisa.php prosestambahanalisa.php

Pesan tidak valid

laporananalisa.php laporananalisapilih.php proseslap_analisa_pil ihkategori.php

proseslap_analisa_pil ihkategoriperiode.ph proseslap_analisa_pil ihperiode.php

logout.php

backup.php tbl_dump.php

restore.php read_dump.php

(77)

Gambar 3.18 Hierarki Modul User_Bank

menu_login.html

cek_login.php

user.php

tambahktg.php prosestambahktg.php

lihatktg.php formeditktg.php proseseditktg.php

formhapusktg.php proseshapusktg.php

lihatanalisa.php formeditanalisa.php proseseditanalisa.php

formhapusanalisa.php proseshapusanalisa.php tambahanalisa.php prosestambahanalisa.php

Pesan tidak valid

laporananalisa.php laporananalisapilih.php proseslap_analisa_pil ihkategori.php

proseslap_analisa_pil ihkategoriperiode.ph proseslap_analisa_pil ihperiode.php

logout.php

(78)

Gambar 3.19 Hierarki Modul Untuk Manager

manager.php

laporananalisa.php laporananalisapilih.p hp

proseslap_analisa_pi lihkategori.php

proseslap_analisa_pi lihkategoriperiode.p hp

proseslap_analisa_pi lihperiode.php

pencarian.php prosescari.php

menu_login.html

index.html

cek_login.php

(79)

komplain-komplain

Gambar 3.20 Menu Untuk User

Gambar 3.21 Menu Untuk Operator tambah kategori

lihat kategori analisa complaint

lihat analisa

laporan bank of complaint

Handling Of Complaints

KONIMEX

Pharmaceutical laboratoriesSolo-Indonesia

pencarian logout

tambah kategori lihat kategori analisa complaint

lihat analisa

laporan bank of complaint

Handling Of Complaints

KONIMEX

Pharmaceutical laboratoriesSolo-Indonesia

(80)

Gambar 3.22 Menu Untuk Admin

Gambar 3.23 Menu Untuk Manager

Gambar 3.24 Menu Untuk Login tambah user

lihat user

ADMIN AREA

KONIMEX

Pharmaceutical laboratoriesSolo-Indonesia

logout

laporan SIPK

pencarian

Handling Of

Complaints

KONIMEX

Pharmaceutical laboratoriesSolo-Indonesia

KONIMEX

Pharmaceutical laboratoriesSolo-Indonesia

username

password

(81)

Gambar 3.25 Menu untuk login

Gambar 3.26 Tambah user

Gambar 3.27 Input Untuk Kategori

username

password

login reset

username :

password :

simpan reset

hak :

<<home | tambah user

Kode kategori

Deskripsi

simpan reset

(82)

Gambar 3.28 Edit Kategori

Gambar 3.29 Tambah kata kunci

Gambar 3.30 edit kata kunci

Kode kategori

Deskripsi

proses reset

Id kunci

Kata kunci

simpan reset

<<home | tambah kata kunci

Id kunci

Kata kunci

proses reset

(83)

Gambar 3.31 Input Untuk Analisa Komplain

Tanggal

Sumber

-Kategori

Komplain

Jawab

Tindakan

Sebab yang mungkin

Preventi

Protektif

Sistem info

submit reset

panduan

<<home | analisa komplain

(84)

Gambar 3.32 Edit Analisa

Tanggal

Sumber

-Kategori

Komplain

Jawab

Tindakan

Sebab yang mungkin

Preventif

Protektif

Sistem info

proses reset

<<home |lihat analisa| edit analisa

(85)

Gambar 3.33 Melihat laporan berdasarkan kategori

Gambar 3.34 Melihat laporan berdasarkan periode

Gambar 3.35 Melihat laporan berdasarkan kategori dan periode kategori :

print save

Silahkan pilih kategori di bawah ini :

<<home |laporan analisa komplain | laporan berdasarkan kategori

Kategori :

Tanggal:

save reset

print

- - s/d -

-Silahkan pilih kategori dan isi periode tanggal di bawah ini : <<home |laporan analisa komplain | laporan berdasarkan kategori dan periode

Tanggal:

save reset

print

- - s/d -

-Silahkan isi periode tanggal di bawah ini :

(86)

Gambar 3.36 Pencarian

Gambar 3.37 Restore data

cari

Masukkan kata kunci :

reset

berdasarkan

restore

Silahkan klik tombol browse untuk melakukan restore database :

browse

(87)

Gambar 3.38 lihat kategori

username Password hak status hapus

admin 43e9a4ab75570f5b 0 aktif hapus

lijun 75cf8d3826b07d68 1 tidak aktif hapus

sima 6b5f0f306accea57 2 tidak aktif hapus

Gambar 3.39 Lihat user

tanggal kategori komplain jawaban tindakan

08-01-2005 undangan undangan hasil training tidak diberi cc nya

minta maaf, segera mengirimkan cc undangannya

cek ke PA kalau memang belum dikirm, beri teguran

lisan supaya tidak terjadi lagi

sebab preventif Kata

kunci

protektif sistem edit hapus

nama, SKU

training - - edit hapus

Gambar 3.40 lihat analisa

kode kategori deskripsi edit kategori hapus kategori

1 undangan edit hapus

2 admisnistrasi edit hapus

<<home | lihat kategori

<<home | lihat user

(88)

LAPORAN ANALISA KOMPLAIN

kategori komplain jawaban tindakan

08-01-2005 training SKU undangan undangan hasil training tidak

cek ke PA kalau memang belum dikirm, beri teguran lisan supaya tidak terjadi lagi

sebab preventif protektif sistem

nama, SKU terlewatkan Buat daftar nama penerima undangan, termasuk ccnya untuk

diacc oleh atasan

-

-Gambar 3.41 Laporan analisa komplain berdasarkan kategori

LAPORAN ANALISA KOMPLAIN Untuk periode01-01-2000 sampai dengan31-12-2005

tanggal Kata

kunci

Nara sumber

kategori komplain jawaban tindakan

08-01-2005 training SKU undangan undangan hasil training tidak

sebab preventif protektif sistem

nama, SKU terlewatkan Buat daftar nama penerima undangan, termasuk ccnya untuk

diacc oleh atasan

-

(89)

LAPORAN ANALISA KOMPLAIN

Untuk kategoriundangandan periode01-01-2000sampai dengan31-12-2005

tanggal Kata

kunci

Nara sumber

kategori komplain jawaban tindakan

08-01-2005 training SKU undangan undangan hasil training tidak

sebab preventif protektif sistem

nama, SKU terlewatkan Buat daftar nama penerima undangan, termasuk ccnya untuk

diacc oleh atasan

-

-Gambar 3.43 Laporan analisa komplain berdasarkan kategori dan periode

Hasil pencarian dengan kata kuncitraining:

deskripsi tanggal komplain jawaban tindakan

undangan 08-01-2005 undangan hasil training tidak diberi cc nya

minta maaf, segera mengirimkan cc undangannya

cek ke PA kalau memang belum dikirm, beri teguran lisan supaya tidak terjadi lagi

sebab preventif protektif Kata kunci sistem

nama, SKU terlewatkan Buat daftar nama penerima undangan, termasuk ccnya untuk

diacc oleh atasan

- training

(90)

tanggal Nara sumber kategori komplain jawaban tindakan

08-01-2005 SKU undangan undangan hasil training tidak

sebab preventif protektif Kata kunci sistem

nama, SKU terlewatkan Buat daftar nama penerima undangan, termasuk ccnya untuk

diacc oleh atasan

- training

-Gambar 3.45 Panduan mengisi analisa

Hasil pencarian dengan kata kuncitrainingtidak ditemukan!

Gambar 3.46 Hasil pencarian jika tidak ditemukan

Gambar 3.47 Output jika proses restore data berhasil

Gambar 3.48 Output jika login tidak valid <<home |pencarian | hasil pencarian

<<home |restore data | proses restore data

Anda telah sukses melakukan restore file

Login anda tidak valid!!!

(91)

IMPLEMENTASI SISTEM

4.1 KARAKTERISTIK SISTEM

Sistem Informasi ini dibangun untuk Human Resources Development (HRD) PT. Konimex Solo.Sistem ini akan digunakan secaramulti user.

Sistem ini dapat mendukung penggunaan secara multi user dikarenakan sistem ini menggunakan TeknikTimestampdan teknologi Manajemene Transaksi dengan level isolasiSerializable.

Pada sistem ini terdapat manajer yang mempunyai fasilitas melihat laporan SIPK dan melakukan pencarian. Admin bertugas untuk menangani user yang menggunakan Sistem Informasi Penanganan Komplain yaitu operator, user, dan manager. Fasilitas untuk admin antara lain menambah user serta menghapus user. Kemudian Operator yang mempunyai fasilitas menambah dan mengupdate kategori, menambah dan mengupdate analisa komplain, melihat laporan SIPK, membackup data, merestore data, dan melakukan pencarian. User mempunyai fasilitas dapat menambah kategori, mengupdate kategori, menambah dan mengupdate analisa komplain, melihat laporan SIPK, dan melakukan pencarian. Semua fasilitas ini bisa diakses jika telah melakukan proses login dan valid.

4.2 KEBUTUHAN SISTEM

Gambar

Gambar 2.2 Relasi One-to-One
Gambar 3.1 Use Case SIPK
Gambar 3.2 Context Diagram
Gambar 3.3 Decompotion Diagram
+7

Referensi

Dokumen terkait

merugikan secara material namun jika untuk pasien BPJS merugikan material.Jika pasien BPJS mendapatkan kamar yang tidak sesuai dengan kelas BPJS nya maka hal tersebut

Trauma kepala adalah suatu trauma yang mengenai daerah kulit kepala, tulang tengkorak atau otak yang terjadi akibat injury baik secara langsung maupun tidak langsung pada

Sebelum melakukan analisa ada baiknya kita mengetahui jenis material yang akan dianalisa minimal penggunaan dari material ini agar saat dianalisa dengan

Hal ini dibuktikan dengan hasil rata – rata aktivitas peserta didik pada siklus I yaitu 3.3 yang termasuk kategori (baik) dan hasil rata – rata aktivitas guru pada siklus I

1) Untuk menekan prosentase serangan hama Kepinding Pengisap Buah Kakao (Helopeltis sp), yaitu dengan perlakuan kombinasi Pemangkasan Tanaman Kakao, dan Aplikasi pupuk,

Guru menyampaikan uraian singkat, kemudian menyampaikan pertanyaan-pertanyaan yang mengajak peserta didik untuk berpikir tingkat tinggi. Menemukan pokok kajian , contoh

Penulis berharap dan berencana untuk menciptakan buku tentang alusista yang dimiliki oleh Tentara Nasional Indonesia (TNI) untuk memberi wawasan kepada warga negara Indonesia

Posisi benda langit : Bulan atau hilal maupun matahari dinyatakan dalam besaran sudut Bujur Ekliptika (  ) dan Lintang Ekliptika (  ) dalam satuan derajat