BABII

24
7 BAB II TINJAUAN PUSTAKA 2.1. Pengenalan dan Elemen Sistem Sistem adalah kumpulan dari objek-objek seperti orang, sumber daya, konsep dan prosedur untuk menjalankan fungsi yang sama untuk mencapai suatu. 1 2 Elemenelemen yang menyusun sebuah sistem adalah : a. Tujuan, merupakan tujuan dari sistem yang dipakai antara lain yaitu: komputer yang digunakan dengan tujuan untuk mengurangi tugas-tugas yang dilakukan oleh manusia dalam melakukan pengolahan data. b. Batasan, merupakan batasan kemampuan dari komputer atau tenaga manusia yang mengoperasikannya. c. Kontrol, merupakan elemen dari sistem komputer yang bertugas mengawasi segala tugas-tugas yang dapat dilakukannya. d. Input, yaitu elemen pada sistem komputer yang bertugas untuk menerima data masukan. e. Proses, merupakan bagian yang memproses masukan data hingga menghasilkan informasi sesuai dengan yang diinginkan. f. Output, merupakan elemen sistem komputer yang bertugas menghasilkan keluaran. 1 Efraim Turban dan Jay E. Aronsun,1990 : 2 2 Jogiyanto HM, 1999:11, pengertian sistem

description

Bab 2 laporan skripsi

Transcript of BABII

7

BAB II

TINJAUAN PUSTAKA

2.1. Pengenalan dan Elemen Sistem

Sistem adalah kumpulan dari objek-objek seperti orang,

sumber daya, konsep dan prosedur untuk menjalankan fungsi

yang sama untuk mencapai suatu.1

2Elemen–elemen yang menyusun sebuah sistem adalah :

a. Tujuan, merupakan tujuan dari sistem yang dipakai antara lain

yaitu: komputer yang digunakan dengan tujuan untuk

mengurangi tugas-tugas yang dilakukan oleh manusia dalam

melakukan pengolahan data.

b. Batasan, merupakan batasan kemampuan dari komputer atau

tenaga manusia yang mengoperasikannya.

c. Kontrol, merupakan elemen dari sistem komputer yang

bertugas mengawasi segala tugas-tugas yang dapat

dilakukannya.

d. Input, yaitu elemen pada sistem komputer yang bertugas

untuk menerima data masukan.

e. Proses, merupakan bagian yang memproses masukan data

hingga menghasilkan informasi sesuai dengan yang

diinginkan.

f. Output, merupakan elemen sistem komputer yang bertugas

menghasilkan keluaran.

1 Efraim Turban dan Jay E. Aronsun,1990 : 2

2 Jogiyanto HM, 1999:11, pengertian sistem

8

2.2. Pengenalan Informasi

Informasi adalah data yang diolah menjadi bentuk yang

lebih berguna dan lebih berarti bagi yang menerimanya.3

Informasi adalah data yang telah diproses menjadi bentuk yang

memiliki arti bagi penerima dan dapat berupa fakta, suatu nilai

yang bermanfaat. Jadi ada suatu proses transformasi data

menjadi suatu informasi terdiri dari input, proses dan output.

2.3. Sistem Informasi

Sistem informasi adalah suatu sistem di dalam suatu

organisasi yang mempertemukan kebutuhan pengolahan

transaksi harian, mendukung operasi, bersifat manajerial dan

kegiatan strategi dari suatu organisasasi dan menyediakan pihak

luar tertentu dengan laporan-laporan yang diperlukan.4

2.3.1. Klasifikasi Sistem Informasi

Klasifikasi pengelompokkan sistem informasi (Kadir, A.

2002) berdasarkan pada :

a. Sistem Informasi Menurut Level Organisasi : sistem

informasi departemen, sistem informasi perusahaan dan

sistem informasi antar organisasi.

b. Sistem Informasi Fungsional : sistem informasi akuntansi,

sistem informasi keuangan, sistem informasi manufaktur,

sistem informasi pemasaran dan sistem informasi sumber

daya manusia.

c. Sistem Informasi Berdasarkan Dukungan Yang Tersedia :

sistem pemrosesan transaksi (TPS), sistem informasi

3 Pengertian Sistem, Jogiyanto HM, 1990:8

4 Analisis dan Desain Sistem Informasi, Jogiyanto, 2005:11

9

d. manajemen (MIS), sistem pendukung keputusan (DSS),

sistem informasi eksekutif (EIS), sistem pendukung kelompok

(GSS) dan sistem pendukung cerdas (ESS).

e. Sistem Informasi Menurut Aktivitas Manajemen : sistem

informasi pengetahuan, sistem informasi operasional, sistem

informasi manajerial dan sistem informasi strategis.

f. Sistem Informasi Menurut Arsitektur Sistem : Sistem

berbasis mainframe, sistem komputer pribadi (PC) tunggal

dan sistem komputasi jaringan.

g. Sistem Informasi Geografis.

h. Sistem ERP (Enterprise Resource Planning).

2.4. Kartu Rencana Studi

Kartu Rencana Studi atau KRS adalah kartu yang berisi

daftar mata kuliah yang akan diikuti oleh setiap mahasiswa dalam

setiap semester. Dalam KRS tercantum data mahasiswa seperti :

Nama, NIM, Kelas, Jurusan, Jumlah Semester, Tahun Akademik,

Kode Mata Kuliah, Mata Kuliah, SKS.

2.5. Flowchart

Flowchart atau diagram alir merupakan sebuah diagram

dengan simbol-simbol grafis yang menyatakan aliran algoritma

atau proses yang menampilkan langkah-langkah yang

disimbolkan dalam bentuk kotak beserta urutannya dengan

menghubungkan masing masing langkah tersebut menggunakan

tanda panah. Diagram ini bisa memberi solusi selangkah demi

10

selangkah untuk penyelesaian masalah yang ada di dalam

proses atau algoritma tersebut.

Tabel 2.1 Simbol-Simbol Flowchart

11

2.6. Normalisasi

―Normalisasi adalah proses untuk mengorganisasikan

file untuk menghilangkan grup elemen yang berulang-ulang‖.5

Bentuk-bentuk normalisasi adalah sebagai berikut :

1. Bentuk normalisasi pertama (1NF)

Dikenakan pada tabel yang sama sekali belum

ternomalisasi. Tabel yang belum ternomalisasi adalah tabel yang

mempunyai atribut berulang.

2. Bentuk Normal 2NF

Bentuk ini didefinisikan berdasarkan dependensi

fungsional dengan syarat adalah :

a. Berada pada bentuk normal pertama

b. Semua atribut bukan kunci memiliki dependensi

sepenuhnya terhadap kunci primer.

3. Bentuk normal ketiga (3NF)

Berfungsi menghilangkan anomaly-anomaly hasil dari

ketergantungan fungsional.

5 Analisa dan Desain Sistem Informasi, Jogiyanto (2005:403)

12

4. Bentuk normal Boyce-Codd (BCNF)

Berfungsi menghilangkan ketergantungan multi value.

5. Bentuk normal keempat (4NF)

Berfungsi menghilangkan anomaly-anomaly yang

tersisa.

6. Bentuk normal kelima

Berfungsi menggambarkan rancangan database

dengan alat Bantu ERD dan normalisasi.

2.7. DFD

Diagram Arus Data digunakan untuk menggambarkan

suatu sistem yang telah ada atau sistem baru yang akan

dikembangkan secara logika tanpa mempertimbangkan

lingkungan fisik dimana data tersebut mengalir.

Tabel 2.2 Simbol DFD

13

2.8. ERD

ERD adalah model konseptual yang mendeskripsikan

hubungan antara penyimpanan (dalam DFD). ERD digunakan

untuk memodelkan struktur data dan hubungan antar data.

Tabel 2.3 Notasi ERD

Notasi Keterangan

Entitas adalah suatu objek yang

dapat didefinisi dalam lingkungan

pemakai.

Relasi melanjutkan adanya hubungan

di antara sejumlah entitas yang

berbeda.

Atribut berfungsi mendeskripsikan

karakter entitas (atribut yang

berfungsi sebagai key diberi garis

bawah).

Garis sebagai penghubung antara

relasi dengan entitas, relasi dan

entitas dengan atribut.

2.9. Jasperreport

Konsep report sangat penting dalam aplikasi bisnis

perusahaan, bahkan salah satu alasan kenapa semua transaksi

harus dicatat adalah untuk membuat laporan keuangan, dengan

menggunakan library report seperti jasper, jasper bisa mendesain

report dengan bantuan tools visual seperti iReport. Alasan kedua

adalah report bisa langsung di cetak karena formatnya sudah

14

ready for print selain itu setelah report selesai, dengan jasper

dapat diexport hasilnya ke berbagai format dokumen seperti PDF,

OpenOfice, Excel dan Words, bahkan bisa juga diexport menjadi

HTML.

JasperReports adalah library reporting paling populer

pada pemrograman Java, kepopuleran JasperReports sangat

ditunjang dengan adanya tools visual designer yaitu iReport.

Dengan menggunakan iReports, membuat report menjadi sangat

cepat dan akurat.

Feature-feature JasperReports juga sudah sangat

lengkap, berikut ini adalah daftar feature dari Jasperreport:6

1. Pixel-perfect page-oriented atau continuous output untuk web

atau print.

2. Dashboards, tables, crosstabs, charts dan gauges.

3. Web-based and pixel-perfect report.

4. Report output dalam format PDF, XML, HTML, CSV, XLS,

RTF, TXT.

5. Sub-reports dapat dengan mudah digunakan untuk

menampilkan layout yang kompleks.

6. Support barcode.

7. Dapat melakukan rotasi posisi text secara visual

8. Styles library.

9. Drill-down / hypertext link, termasuk support untuk PDF

bookmarks.

10. Tidak ada batasan ukuran report.

11. Conditional printing.

6 http://jasperforge.org/projects/jasperreports

15

12. Multi datasource dalam satu report.

13. Internationalized dan Localizable.

2.10. Netbeans IDE

Perangkat lunak yang digunakan untuk membangun

perangkat lunak yang lain. Netbeans dapat digunakan untuk

membangun perangkat lunak berbasis Java Standard Edition,

Java Enterprise Edition, Java Micro Edition, JavaFx, PHP,

C/C++, Ruby, Groovy dan Python.

Gambar 2.1 Flash Screen Netbeans IDE 7.4

Gambar 2.2 Interface Netbeans IDE

16

Keterangan gambar :

1. Menu Bar

Menu Bar adalah baris yang berisi kumpulan menu

yang telah dikelompokan dan memiliki kemampuan masing-

masing, isi dari menu bar antara lain : file, edit, view, navigate,

source, refactor, run, debug, profile, team, tool, windows dan

help. Adapun sub-sub menu dari menu-menu diatas juga masih

banyak.

2. Toolbar

Toolbar merupakan jalan pintas yang digunakan untuk

memanggil aksi yang sering digunakan dalam sub menu bar.

Seperti new file, new project, open project, save, undo, redo,

build project dan lain-lain.

3. Project Explorer

Project Explorer menampilkan project secara detail, dari

form-form sampai library yang digunakan dalam project tersebut.

4. Daftar Komponen

Daftar komponen menampilkan semua komponen yang

digunakan dalam mendesain form yang dibuka dan ditampilkan di

jendela utama.

5. Jendela Utama

Jendela utama adalah tempat untuk menampilkan form

yang akan didesain atau form yang dibuka pada tab desain dan

juga tempat penulisan script pada tab source.

6. Kontrol Komponen (Componen Pallete)

Kontrol komponen atau pallete berisi komponen-

komponen yang digunakan dalam mendesain suatu form, pallete

17

dapat ditambah dengan komponen lain sesuai dengan

kebutuhan, karena pallete default dari netbeans IDE 6.9.1 masih

kurang komplit.

7. Jendela Properties

Jendela properties menampilkan pengaturan-

pengaturan dari komponen-komponen yang digunakan dalam

desain form pada jendela utama. Jendela properties akan

menampilkan pengaturan dari komponen yang terseleksi saja,

dan pada masing-masing komponen memiliki properties berbeda-

beda.

8. Jendela Keluaran (debuging)

Jendela debugging menampilkan laporan-laporan ketika

project dijalankan, apakah terjadi kesalahan atau tidak akan

ditampilkan dalam jendela debuging.

2.11. JAVA

Teknologi Java telah berusia 10 tahun lebih. Dalam usia

tersebut, suatu teknologi dapat dikatakan telah matang. Populasi

penggunanya relatif besar, sehingga apabila kita menemui

masalah, banyak referensi dan tutorial tentang cara

mengatasinya.

Sepanjang perjalanannya, Java telah mengalami dua

kali perubahan signifikan. Pertama pada waktu transisi dari versi

1.3 menjadi 1.4, dan kemudian 1.4 menjadi 1.5 atau dikenal juga

dengan 5.0. Dalam transisi tersebut, ada perubahan signifikan

dalam teknik pemrograman maupun library yang disediakan.

Transisi ini berjalan relatif mulus, menunjukkan bahwa teknologi

18

Java cukup solid dan dibangun di atas dasar yang kokoh. Semua

transisi mempertahankan binary backward compatibility, artinya

semua aplikasi yang sudah kita kompilasi dan berjalan mulus di

Java versi lama akan terus berjalan dengan baik walaupun kita

melakukan upgrade.

Sebagai bahasa yang manampung hampir seluruh

kemampuan terbaik bahasa pemrograman yang pernah

dikembangkan umat manusia, maka bahasa ini memang menjadi

tidak mudah, sedikit rumit dan kompleks.

Java tidak lagi hanya untuk pemanis di web sebagai

applet yang membuat duke berdansa. Java adalah kakas, tetap

hanya perangkat, bagaimanapun hanya orang hebat yang dapat

memberi arti penting kakas seperti dikatakan James Gosling,

tokoh penting di Java.

2.12. Metode Pengembangan Perangkat Lunak

Pengembangan sistem dapat berarti menyusun suatu

sistem yang baru untuk menggantikan sistem yang lama secara

keseluruhan atau memperbaiki sistem yang telah ada.

Sistem yang lama perlu diperbaiki disebabkan karena

beberapa hal, yaitu :

1. Adanya permasalahan-permasalahan (problems) yang timbul

di sistem yang lama.

2. Untuk meraih kesempatan-kesempatan (opportunities).

3. Adanya instruksi-instruksi (directives).

Adapun metode pengembangan perangkat lunak yaitu :

1. Model Sekuensial Linier / Waterfall Method

19

Model Sekuensial Linier sering disebut Model Air Terjun

merupakan paradigma rekayasa perangkat lunak yang paling tua

dan paling banyak dipakai. Model ini mengusulkan sebuah

pendekatan perkembangan perangkat lunak yang sistematik dan

sekunsial yang dimulai pada tingkat dan kemajuan sistem pada

seluruh analisis, desain, kode, pengujian dan pemeliharaan.

2. Model Prototipe

Sebuah prototipe adalah bagian dari produk yang

mengekspresikan logika maupun fisik antarmuka eksternal yang

ditampilkan. Konsumen potensial menggunakan prototipe dan

menyediakan masukan untuk tim pengembang sebelum

pengembangan skal besar dimulai. Melihat dan mempercayai

menjadi hal yang diharapkan untuk dicapai dalam prototipe.

Dengan menggunakan pendekatan ini, konsumen dan tim

pengembang dapat mengklarifikasi kebutuhan dan interpretasi

mereka.

3. Rapid Aplication Development (RAD)

Adalah sebuah model proses perkembangan perangkat

lunak sekuensial linier yang menekankan siklus perkembangan

yang sangat pendek (kira-kira 60 sampai 90 hari). Model RAD ini

merupakan sebuah adaptasi kecepatan tinggi dari model

sekuensial linier dimana perkembangan cepat dicapai dengan

menggunakan pendekatan konstruksi berbasis komponen.

4. Model Spiral

Pada awalnya diusulkan oleh Boehm, adalah model

proses perangkat lunak evolusioner yang merangkai sifat iteratif

dari prototype dengan cara kontrol dan aspek sistematis model

20

sequensial linier. Model literatif ditandai dengan tingkah laku yang

memungkinkan pengembang mengembangkan versi perangkat

lunak yang lebih lengkap secara bertahap. Perangkat lunak

dikembangkan dalam deretan pertambahan. Selama awal iterasi,

rilis inkremantal bisa berupa model/prototype kertas, kemudian

sedikit demi sedikit dihasilkan versi sistem yang lebih lengkap.

2.12.1. Metode Waterfall

Model Waterfall adalah sebuah metode pengembangan

software yang bersifat sekuensial. Metode ini dikenalkan oleh

Royce pada tahun 1970 dan pada saat itu disebut sebagai

siklus klasik dan sekarang ini lebih dikenal dengan sekuensial

linier. Selain itu model ini merupakan model yang paling banyak

dipakai oleh para pengembang software. Inti dari metode

waterfall adalah pengerjaan dari suatu sistem dilakukan secara

berurutan atau secara linear. Jadi jika langkah satu belum

dikerjakan maka tidak akan bisa melakukan pengerjaan langkah

2, 3 dan seterusnya. Secara otomatis tahapan ke-3 akan bisa

dilakukan jika tahap ke-1 dan ke-2 sudah dilakukan.

Gambar 2.3. Metode Waterfall Presmman

21

Gambar 2.4. Metode Waterfall Sommervile

Keterkaitan dan pengaruh antar tahap ini ada karena

output sebuah tahap dalam waterfall model merupakan input bagi

tahap berikutnya, dengan demikian ketidak sempurnaan hasil

pelaksanaan tahap sebelumnya adalah awal ketidak sempurnaan

tahap berikutnya. Memperhatikan karakteristik ini, sangat penting

bagi tim pengembang dan perusahaan untuk secara bersama-

sama melakukan analisa kebutuhan dan desain sistem

sesempurna mungkin sebelum masuk kedalam tahap penulisan

kode program. Secara garis besar metode waterfall mempunyai

langkah-langkah sebagai berikut : Analisa, Design, Code dan

Testing, Penerapan dan Pemeliharaan.

a. Analisa kebutuhan (Requirement Analysis)

Langkah ini merupakan analisa terhadap kebutuhan

sistem. Pengumpulan data dalam tahap ini bisa malakukan

sebuah penelitian, wawancara atau studi literatur. Seorang

sistem analis akan menggali informasi sebanyak-banyaknya

dari user sehingga akan tercipta sebuah sistem komputer yang

22

bisa melakukan tugas-tugas yang diinginkan oleh user tersebut.

Tahapan ini akan menghasilkan dokumen user requirement atau

bisa dikatakan sebagai data yang berhubungan dengan

keinginan user dalam pembuatan sistem. Dokumen inilah yang

akan menjadi acuan sistem analis untuk menterjemahkan ke

dalam bahasa pemprograman.

b. Design Sistem (System Design)

Proses desain akan menerjemahkan syarat kebutuhan

kesebuah perancangan perangkat lunak yang dapat diperkirakan

sebelum dibuat coding. Proses ini berfokus pada: struktur data,

arsitektur perangkat lunak, representasi interface, dan detail

(algoritma) prosedural. Tahapan ini akan menghasilkan dokumen

yang disebut software requirment. Dokumen inilah yang akan

digunakan programmer untuk melakukan aktivitas pembuatan

sistemnya.

c. Coding & Testing

Coding merupakan penerjemahan design dalam

bahasa yang bisa dikenali oleh komputer. Dilakukan

oleh programmer yang akan meterjemahkan transaksi yang

diminta oleh user. Tahapan inilah yang merupakan tahapan

secara nyata dalam mengerjakan suatu sistem. Dalam artian

penggunaan komputer akan dimaksimalkan dalam tahapan ini.

Setelah pengkodean selesai maka akan

dilakukan testing terhadap sistem yang telah dibuat tadi.

Tujuan testing adalah menemukan kesalahan-kesalahan

terhadap sistem tersebut dan kemudian bisa diperbaiki.

23

d. Penerapan atau Pengujian Program (Integration &

Testing)

Tahapan ini bisa dikatakan final dalam pembuatan

sebuah sistem. Setelah melakukan analisa, design

dan pengkodean maka sistem yang sudah jadi akan digunakan

oleh user.

e. Pemeliharaan (Operation & Maintenance)

Perangkat lunak yang sudah disampaikan kepada

pelanggan pasti akan mengalami perubahan. Perubahan

tersebut bisa karena mengalami kesalahan karena perangkat

lunak harus menyesuaikan dengan lingkungan (periperal atau

sistem operasi baru) baru, atau karena pelanggan membutuhkan

perkembangan fungsional.

2.13. Sistem Basis Data

Basis data adalah penggunaan bersama dari data yang

terhubung secara logis dan deskripsi dari data, yang dirancang

untuk keperluan informasi.7 Integrasi logis dari catatan-catatan

banyak file disebut sebagai konsep basis data.

Tujuan dari konsep basis data yaitu untuk

meminimumkan pengulangan data dan mencapai independensi

data. Pengulangan data merupakan duplikasi data, yang berarti

data yang sama disimpan dalam beberapa file yang berbeda dan

pada tempat yang berbeda. Independensi data adalah

kemampuan untuk membuat perubahan dalam struktur data

tanpa membuat perubahan program yang memproses data.

7 Sistem Basic Data, Connolly et al : 2002

24

Penyusunan suatu basis data digunakan untuk

mengatasi masalah-masalah yang timbul pada penyusunan

data. Masalah-masalah tersebut adalah sebagai berikut :8

a. Redudancy Data

Redudancy data adalah munculnya data-data secara

berulang-ulang pada file basis data yang seharusnya tidak

diperlukan.

b. Inconsistency data

Inconsistency data terjadi karena kesalahan dalam

pemasukan data atau update anomaly, proses update data yang

mengakibatkan munculnya data tidak konsisten.

c. Isolation Data

Isolation data disebabkan oleh pemakaian beberapa file

sehingga program aplikasi yang dipakai tidak mampu mengakses

file tertentu dalam basis data tersebut, sehingga perlu mengubah

atau menambah sehingga seolah-olah ada file yang terpisah

atau terisolasi dengan file yang lainnya.

d. Pengaksesan Data

Pengaksesan data harus siap diakses oleh siapa saja

yang membutuhkan dan mempunyai hak untuk mengaksesnya.

Oleh karena itu perlu dibuat suatu program untuk mengetahui

penolakan dan penerimaan hak akses data, suatu cara untuk

mengakses data dikenal sebagai DBMS.

Konsep dasar dari basis data adalah kumpulan dari

catatan-catatan, atau potongan dari pengetahuan. Sebuah basis

data memiliki penjelasan terstruktur dari jenis fakta yang

8 Waljiyanto, 2003

25

tersimpan di dalamnya, penjelasan ini disebut skema yang

menggambarkan objek yang diwakili suatu basis data, dan

hubungan di antara objek tersebut. Ada banyak cara untuk

memodelkan struktur basis data, ini dikenal sebagai model basis

data atau model data.

Model yang umum digunakan sekarang adalah model

relasional, yang mewakili semua informasi dalam bentuk tabel-

tabel yang saling berhubungan dimana setiap tabel terdiri dari

baris dan kolom. Dalam model ini, hubungan antar tabel diwakili

dengan menggunakan nilai yang sama antar tabel. Model model

jaringan menggunakan cara yang lebih eksplisit untuk mewakili

hubungan antar tabel. Jenis basis data, antara lain basis data

hierarki, basis data jaringan, dan basis data relasional.

Dalam terminologi basis data dikenal istilah seperti

tabel, baris, dan kolom. Tabel (biasa juga disebut relasi)

menyatakan bentuk berdimensi dua yang mewakili suatu

kelompok data yang sejenis. Sebuah tabel berisi sejumlah kolom

yang biasa disebut sebagai field dan baris yang biasa disebut

sebagai record atau tupel. Menurut konsep basis data

relasional, setiap tabel memiliki sebuah kunci primer (primary

key), walaupun dalam praktiknya bisa saja tidak memilikinya.

Primary Key adalah suatu nilai yang bersifat unik (tidak

ada nilai kembar) sehingga dapat digunakan untuk membedakan

suatu baris dengan baris yang lain dalam sebuah tabel. Dengan

kata lain, jika memberikan sebuah nilai berdasarkan primary key

maka maksimum hanya ada satu baris memenuhinya. Selain

Primary Key, kunci disini dibagi menjadi Candidat Key, Alternate

26

Key, Foreign Key serta Composite Key.

a. Candidate Key

Candidate Key adalah satu atau lebih atribut yang

mendefinisikan sebuah baris secara unik yang berfungsi sebagai

calon dari primary key serta mempunyai nilai unik pada hampir

setiap barisnya. Candidat key merupakan kunci yang belum

menjadi kunci primer pada sebuah tabel.

b. Alternate Key

Alternate Key adalah candidat key yang tidak dipilih

untuk mendefinisikan sebuah baris secara unik, tetapi perlu

dicatat meskipun tidak menjadi alternate key di sebuah tabel

akan tetapi tidak tertutup kemungkinan bisa menjadi primary key

di tabel lainnya.

c. Foreign Key

Foreign Key adalah sebarang kolom yang menunjuk

ke kunci primer (primary key) milik tabel lain.

d. Composite Key

Composite Key adalah kunci primer (primary key)

yang tidak terbentuk oleh sebuah kolom, melainkan tersusun

atas beberapa kolom.

2.14. Database dan MySQL

XAMPP merupakan sebuah paket instalasi untuk PHP

APACHE dan MySQL. Dengan menggunakan XAMPP, tidak

perlu repot instal ketiga software itu secara terpisah.

27

XAMPP merupakan sebuah paket instalasi untuk PHP,

APACHE dan MySQL. Dengan menggunakan XAMPP, tidak

perlu install ketiga software itu secara terpisah.

Gambar 2.5 Halaman Index XAMPP

Membuka halaman admin dalam database MySQL

pada XAMPP adalah dengan cara menuliskan alamat

Http://localhost/phpmyadmin/ di address bar mozilla firefox.

28

Gambar 2.6 Interface Phpmyadmin

2.15. MySQL

MySQL adalah suatu perangkat lunak database relasi

(Relational Database Management System atau RDBMS), seperti

halnya ORACLE, Postgresql, MSSQL, dan

sebagainya. MySQL AB menyebut produknya sebagai database

open source terpopuler di dunia.

Berdasarkan riset dinyatakan bahwa bahwa di platform

Web, dan baik untuk kategori open source maupun

umum, MySQL adalah database yang paling banyak dipakai.

Menurut perusahaan pengembangnya, MySQL telah terpasang di

sekitar 3 juta komputer. Puluhan hingga ratusan ribu situs

mengandalkan MySQL bekerja siang malam memompa data bagi

para pengunjungnya.

29

2.15.1 Fitur MySQL

Kalau di seri 3.22 MySQL mulai diadopsi banyak orang

dan meningkat populasi penggunanya, maka di seri 3.23 dan 4.0-

lah terjadi banyak peningkatan dari sisi teknologi. Ini tidak

terlepas dari tuntutan pemakai yang semakin mengandalkan

MySQL, namun membutuhkan fitur-fitur yang lebih banyak lagi.

Seri 3.23. Di seri 3.23 MySQL menambahkan tiga jenis tabel

baru. pertama MyISAM, yang sampai sekarang menjadi tipe tabel

default, kedua BerkeleyDB, yang pertama kali menambahkan

kemampuan transaksi pada MySQL; dan ketiga InnoDB,

primadona baru yang potensial. Seri 4.x. Di seri yang baru

berjalan hingga 4.0 tahap alfa ini, pengembang MySQL berjanji

akan menjadikan MySQL satu derajat lebih tinggi lagi. Fitur-fitur

yang sejak dulu diminta akan dikabulkan, seperti subselek (di

4.1), union (4.0), foreign key constraint (4.0 atau 4.1—meski

InnoDB sudah menyediakan ini di 3.23.x), stored procedure (4.1),

view (4.2), cursor (4.1 atau 4.2), trigger (4.1). MySQL AB tetap

berdedikasi mengembangkan dan memperbaiki MySQL, serta

mempertahankan MySQL sebagai database open source

terpopuler.

Penyebab utama MySQL begitu popular di kalangan

Web adalah karena ia memang cocok bekerja di lingkungan

tersebut.

Pertama, MySQL tersedia di berbagai platform Linux dan

berbagai varian Unix. Sesuatu yang tidak dimiliki Access,

misalnya—padahal Access sangat popular di platform Windows.

Banyak server Web berbasiskan Unix, ini menjadikan Access

30

otomatis tidak dapat dipakai karena ia pun tidak memiliki

kemampuanclient-server/networking.

Kedua, fitur-fitur yang dimiliki MySQL memang yang

biasanya banyak dibutuhkan dalam aplikasi Web. Misalnya,

klausa LIMIT SQL-nya, praktis untuk melakukan paging. Atau

jenis indeks field FULLTEXT, untuk full text searching. Atau

sebutlah kekayaaan fungsi-fungsi builtinnya, mulai dari

memformat dan memanipulasi tanggal, mengolah string, regex,

enkripsi dan hashing. Yang terakhir misalnya, praktis untuk

melakukan penyimpanan password anggota situs.

Ketiga, MySQL memiliki overhead koneksi yang rendah.

Soal kecepatan melakukan transaksi atau kinerja di kondisi load

tinggi mungkin bisa diperdebatkan dengan berbagai benchmark

berbeda, tapi kalau soal yang satu ini MySQL-lah juaranya.

Karakteristik ini membuat MySQL cocok bekerja dengan aplikasi

CGI, di mana di setiap request skrip akan melakukan koneksi,

mengirimkan satu atau lebih perintah SQL, lalu memutuskan

koneksi lagi. Cobalah melakukan hal ini dengan Interbase atau

bahkan Oracle. Maka dengan load beberapa request per detik

saja server Web/database Anda mungkin akan segera menyerah

karena tidak bisa mengimbangi beban ini.