BAB 2. LANDASAN TEORI

advertisement
BAB 2.
LANDASAN TEORI
2.1. Pengenalan UML
Unified Modeling Language (UML) merupakan satu kumpulan konvensi pemodelan yang
digunakan untuk menentukan atau menggambarkan sebuah sistem software yang terkait
dengan objek (Whitten L. Jeffery et al, 2004). Sementara menurut Henderi (2007: 4)
Unified Modeling Language (UML) adalah sebuah bahasa pemodelan yang telah menjadi
standar dalam industri software untuk visualisasi, merancang, dan mendokumentasikan sistem
perangkat lunak. Bahasa Pemodelan UML lebih cocok untuk pembuatan perangkat lunak
dalam bahasa pemrograman berorientasi objek (C++, Java, VB.NET), namun demikian tetap
dapat digunakan pada bahasa pemrograman prosedural (Ziga Turck, 2007)
Unified Modeling Language (UML) biasa digunakan untuk (Henderi, 2007 :11)
1. Menggambarkan batasan sistem dan fungsi-fungsi sistem secara umum, dibuat dengan
use case dan actor
2. Menggambarkan kegiatan atau proses bisnis yang dilaksanakan secara umum, dibuat
dengan interaction diagram
3. Menggambarkan representasi struktur statik sebuah sistem dalam bentuk class diagram
4. Membuat model behavior ”yang menggambarkan kebiasaan atau sifat sebuah sistem”
dengan state transition diagram
5. Menyatakan arsitektur implementasi fisik menggunakan component and development
diagram
6. Menyampaikan atau memperluas fungsionality dengan stereotypes (Ziga Turck, 2007)
Unified Modeling Language (UML) merupakan salah satu alat bantu yang sangat handal
dalam bidang pengembangan sistem berorientasi objek karena UML menyediakan bahasa
pemodelan visual yang memungkinkan pengembang sistem membuat blue print atas visinya
dalam bentuk yang baku. UML berfungsi sebagai jembatan dalam mengkomunikasikan
beberapa aspek dalam sistem melalui sejumlah elemen grafis yang bisa dikombinasikan
menjadi diagram. UML mempunyai banyak diagram yang dapat mengakomodasi berbagai
sudut pandang dari suatu perangkat lunak yang akan dibangun. (Syafei 2006)
4
http://digilib.mercubuana.ac.id/
Diagram-diagram tersebut digunakan untuk (Henderi et al, 2008:71) :
1. Mengkomunikasikan ide
2. Melahirkan ide-ide baru dan peluang-peluang baru
3. Menguji ide dan membuat prediksi
4. Memahami struktur dan relasi-relasinya
2.1.1
Definisi Use Case Diagram
Use Case diagram adalah model fungsional sebuah sistem yang menggunakan actor
dan use case. Use Case adalah layanan (services) atau fungsi-fungsi yang disediakan oleh
sistem untuk pengguna-penggunanya (Henderi et al, 2008). Use Case adalah suatu pola atau
gambaran yang menunjukan kelakukan atau kebiasaan sistem. Setiap Use Case adalah suatu
urut-urutan sequence) transaksi yang saling berhubungan dan dilakukan oleh sebuah actor
dan sistem dalam bentuk sebuah dialog (Henderi, 2007). Use Case Diagram dibuat untuk
memvisualisasikan / menggambarkan hubungan antara Actor dan Use Case. Use Case
diagram mempresentasikan kegunaan atau fungsi-fungsi sistem dari perspektif pengguna.
(Syafei 2006)
Simbol dan notasi dasar use case diagram :
Sistem
Gambar batasan (boundries) sebuah sistem menggunakan empat
persegi panjang yang berisi use case-use case. Tempatkan actoractor yang terlibat pada setiap use case pada bagian luar
boundaries sistem (gambar 2.1)
Use Case
Gambar use cases menggunakan lingkaran berbentuk bulat telur
(ovals) Beri nama ovals tersebut dengan kata kerja (verbs) yang
menggambarkan fungsi-fungsi sistem (gambar 2.2)
Actors
Actors adalah para pengguna (users) dari sebuah sistem.
Kadangkala sebuah sistem adalah merupakan actors bagi sistem
yang lain, beri nama actors sistem tersebut dengan streotipe
(bentuk klise/tiruan) actor (gambar 2.3). Actor adalah seseorang
atau sesuatu yang harus berinteraksi dengan sistem atau sistem
5
http://digilib.mercubuana.ac.id/
yang dibangun/dikembangkan.
Relationships
Ilustrasikan atau gambaran relasi/hubungan antara sebuah actor
dan use case dengan sebuah garis sederhana. Untuk relasi-relasi
antara use cases, gunakan tanda anak panah-anak panah pada
”uses” yang lainnya atau gunakan ”extends”. Suatu relasi ”uses
mengindikasikan bahwa ada use case yang dibutuhkan oleh use
case yang lain untuk melakukan sebuat permintaan (task).
Sementara suatu relasi ”extends” mengindikasikan beberapa
alternatif opsi (pilihan) tertentu pada tingkatan yang lebih bawah
yang ada pada use case (gambar 2.4)
2.1.2
Definisi Activity Diagram
Activity diagram adalah diagram yang menggambarkan sifat dinamis secara alamiah
sebuah sistem dalam bentuk model aliran dan kontrol dari aktivitas ke aktivitas lainnya
(Henderi, 2007). Sebuah aktivitas merepresentasikan suatu operasi pada beberapa class
dalam sistem yang menghasilkan suatu perubahan keadaan (state) dari sistem tersebut.
Secara khusus, activity diagram biasa digunakan untuk memodelkan diagram alir sebuah
sistem kerja (workflow) atau proses bisnis (prosedur bisnis) dan operasi-operasi secara
internal (Miller Randy, 2008). Sementara menurut Whitten L. Jeffery el al (2004: 428),
activity diagram adalah sebuah diagram yang dapat digunakan untuk menggambarkan
secara grafis aliran proses bisnis, langkah-langkah sebuah use case atau logika behavior
(metode) object. Karena sebuah activity diagram adalah bentuk khusus dari statechart
diagram, maka activity diagram kadangkala digunakan untuk memodelkan suatu kebiasaan
sesuai dengan ketentuan/kaedah bisnis. (Syafei 2006)
Untuk dapat pembangun activity diagram yang baik, berikut proses yang unggul untuk
membangun activity diagram:
1.
Tambahkan poin awal dan akhir pada sebuah use case
2.
Tambahkan sebuah kegiatan untuk tiap langkah utama pada use case (atau tiap langkah
utama setiap pelaku yang menginisialisasi)
3.
Tambahkan transisi dari setiap kegiatan ke kegiatan lain, poin keputusan, atau poin
akhir
6
http://digilib.mercubuana.ac.id/
4.
Tambahkan bar sinkronisasi di mana kegiatan dilakukan secara paralel.
Simbol dan notasi Activity Diagram
Action states
Action state adalah representasi/gambaran dari aksi yang tidak bisa
diganggu oleh aksi yang berasal dari objek-objek. Action state
digambarkan dalam bentuk empat persegi panjang yang pada sudutsudutnya melingkar (Gambar 2.6 ).
Action Flow
Action digambarkan dalam bentuk anak panah yang
mengilustrasikan relasi antara action pada state ( Gambar 2.7 ).
Object Flow
Object flow menunjuk kepada kegiatan penciptaan (mengcreate)
dan memodifikasi oleh objek melalui activities. Sebuah tanda
panah objek flow dari suatu aksi kepada suatu objek berarti bahwa
aksi tersebut meng-create atau mempengaruhi objek tersebut.
Sementara suatu tanda panah dari objek kepada suatu aksi
mengindikasikan bahwa aksi state tersebut menggunakan objek (
Gambar 2.8 ).
2.2. Pengertian Web Server
Web server adalah perangkat lunak (software) pada sebuah server yang berperan untuk
menerima permintaan data melalui protokol HTTP, HTTPS dan Websocket kemudian
mengirimkan data atau berkas kepada klien dalam beentuk HTML pada umumnya.
Protokol yang sering kita jumpai pada penggunaan web server adalah HTTP dan HTTPS,
namun pada perkembangan website yang semakin modern dan aneka fitur, websocket juga
banyak dipakai untuk aplikasi live chat atau push notification yang bersifat real time.
Klien yang dimaksudkan disini pada umumnya adalah web browser seperti google crome,
mozilla firefox, safari, internet explorer, ataupun opera. Namun istilah klien bagi para software
enginer atau programmer bisa juga aplikasi crawlr atau scraper seperti wget dan curl yang
sering dipakai untuk mengambil data dari sebuah website.
Sebagaimana istilah klien bagi para sysadmin, software enginer atau programmer, data
yang dikirimkan dari web server kepada klien tidak hanya berupa HTML, namun ada juga
7
http://digilib.mercubuana.ac.id/
yang berbentuk XML, maupun JSON, kedua format ini banyak digunakan oleh API (
Application Programming interface ). (Bastian 2007)
Berkas-berkas yang di transfer bisa berupa teks, video, gambar, file, musik, dan masih
banyak lagi yang lain.
2.2.1
Cara Kerja Web Server
Sederhananya, alur cara kerjanya adalah Klien meminta data, Web Server mengolah
data, Web Server mengirim data. Ayo kita bedah satu per satu alur kerja diatas.
1.
Klien meminta data
Klien, bisa berupa web browser, atau aplikasi crawler (Wget, Curl) meminta data kepada
Web Server melalui alamat IP atau URL. Biasanya, web server yang bersifat publik akan
menerima data dari URL untuk alasan keamanan, biar website tidak diretas, scaling up web
server dengan load balancer lebih mudah ataupun perubahan DNS tidak mempengaruhi
fungsi web server.
2.
Web Server mengolah data
Permintaan dari Klien diteruskan oleh web server kepada aplikasi web sesuai dengan
URL atau alamat IP yang diminta. Dari aplikasi web akan memberikan data kepada web
server. Kemudian, web server meneruskan datanya kepada klien.
Perlu diketahui bahwa aplikasi web dan web server ini berbeda. Misal, pembaca
memiliki website dengan CMS WordPress dan web server Apache. Apache ini adalah web
server, sedangkan WordPress adalah aplikasi web. Nah, ketika klien mengetikkan website
pembaca, maka yang pertama kali melalukan respon adalah web server, kemudian web
server meneruskannya kepada WordPress. WordPress mengolah data, kemudian diberikan
kepada web server untuk meneruskannya.
Mungkin muncul pertanyaan, “Kalau seperti ini, berarti aplikasi web / web appplication
lah yang mengolah data, bukan Web Server. Iya kan?”.
Pertanyaan ini ada benarnya, tetapi data yang diolah oleh web server ini adalah respon
dari data yang diberikan oleh WordPress itu ada / berhasil, data tidak ditemukan, atau
wordpress tidak dapat mengolah data tersebut. Kita bahas respon data ini pada tahap
berikutnya.
3.
Web Server mengirim data
Pengiriman data dari web server kepada klien ini adalah Data + Responnya. Respon
yang penulis maksud disini adalah HTTP Status code 200, 403, 404, 500, dan sebagainya.
8
http://digilib.mercubuana.ac.id/
Untuk lebih jelasnya mengenai HTTP Status Code bisa dilihat di Wikipedia. Pada
artikel ini, penulis hanya memberikan beberapa HTTP Status Code yang sering muncul.
200 OK : Server berhasil mengolah data.
301 Moved Permanently : halaman website atau URI yang kita minta telah di redirect.
400 Bad Request : Server tidak bisa atau tidak akan memproses respon karena
kesalahan klien. Error ini sering muncul ketika kita mengupload berhasil ke server
dengan ukuran yang sangat besar menurut server atau ukurannya melebihi batas yang
diwajibkan oleh server.
403 Forbidden : Server menolak request. Kode ini muncul jika kita mengakses sesuatu
yang tidak diperbolehkan server seperti mengakses berhasil di server sekaligus, melihat
direktori server, dll.
404 Not Found : Respon yang paling sering ditemui jika tidak dapat menemukan
request / permintaan kepada server.
500 Internal Server Error : Bagi sysadmin, software enginer ataupun programmer
pasti sering mendapatkan respon ini jika kodingan atau konfigurasi server ada yang
salah.
Kode-kode ini dan data permintaan yang nantinya dikirim oleh Web Server kepada Klien.
2.2.2
Contoh Web Server
Ada banyak jenis web server yang dipakai karena memiliki fungsi dan kelebihan
masing-masing. Pada artikel kali ini, penulis hanya memberikan beberapa web server yang
populer digunakan.
1. XAMP
XAMPP adalah aplikasi open source yang mendukung banyak sistem operasi (multi
platform) dan banyak digunakan oleh developer karena sudah lengkap. di dalam
XAMPP terdapat Web server Apache, bahasa pemrograman PHP dan Perl, database
MySQL dan MariaDB, PHP Myadmin dan masih banyak lagi.
9
http://digilib.mercubuana.ac.id/
XAMPP cocok digunakan pada tahap development, tetapi penulis tidak
merekomendasikan penggunaan XAMPP pada proses production karena XAMPP Lack
of Memory. Memory (RAM) yang dibutuhkan untuk melakukan satu request dari klien
cukup menyita memory.
2. Apache
Apache adalah aplikasi web server yang bersifat open source yang kini banyak
digunakan di internet karena konfigurasi yang mudah. Apache dapat dijalankan di
sistem operasi yang populer seperti Windows, Linux, Unix, BSD, dan lain-lain.
Pada awalnya, apache merupakan perangkat lunak sebagai alternatif Netscape. Sejak
April 1996, Apache menjadi server web terpopuler di Internet. Pada Mei 1999, Apache
digunakan di 57% dari semua web di seluruh dunia. Pada November 20005, presentasi
ini naik menjadi 71%. (sumber: Netcraft Web Server Survey, November 2005).
Nama Apache berasala dari sebuah server web populer yang dikembangkan pada
awal tahun 1995 yang bernama NCSA HTTPd 1.3 mimiliki sejumlah perubahan besar
terhadap kode sumber (patch). Karena terlalu banyaknya patch pada perangkat lunak
tersebut sehingga disebut sebah server yang memiliki banyak patch (“a patchy” server).
Tetapi pada halaman FAQ situs web resminya, kata “Apache” dipilih untuk
menghormati suku asli Indian Amerika Apache, yang dikenal karena keahlian dan
strategi perangnya.
Apache cocok digunakan bagi anda yang butuh konfigurasi yang mudah dan cepat,
namun sayangnya memori yang digunakan juga besar. Jika anda tidak terlalu penting
dengan memori yang digunakan, maka Apache bisa menjadi pilihan bagi web server
anda.
3. Nginx
Nginx adalah web server terpopuler kedua setelah Apache yang juga bersifat open
source. Nginx ditulis oleh seorang warna negara Rusia yang bernama Igor Sysoev pada
tahun 20002 dan dirilis ke publik pada tahun 2004. Nginx terkenal karena stabil,
memiliki performa tinggi dan minim mengonsumsi sumber daya (memory).
10
http://digilib.mercubuana.ac.id/
Bagi pembaca yang memiliki website dengan trafik tinggi bisa menggunakan Nginx
sebagai web server daripada Apache untuk mengatasi masalah sumber daya. Namun,
menurut penulis, konfigurasi Nginx sedikit lebih sulit daripada Apache. Tetapi kalau
sudah terbiasa ya mudah sebenarnya, hehe.
Contoh Website – website besar yang menggunakan Nginx sebagai core web server
mereka adalah WordPress, Github, Sourceforge, sedangkan Website-website di
Indonesia yang pakai Nginx adalah Bukalapak, Tokopedia, Lazada, dan masih banyak
lagi. Untuk Lazada mengkombinasikan Nginx dan Apache, jadi tidak pure hanya
Nginx.
4. LiteSpeed
LiteSpeed Web Server (LSWS) adalah web server pengganti Apache (kebanyakan
code nya merupakan optimasi dari Apache) dengan high performance. Banyak fitur
LiteSpeed yang serupa dengan apache seperti mod_rewrite, htaccess, mod_security.
Pada halaman websitenya, LiteSpeed dapat meningkatkan kinerja dan stabilitas
karena konsumsi minimal memori dan penggunaan CPU. Pada hasil banchmark
LiteSpeed dan Apache, LiteSpeed memiliki kecepatan 6 kali dibandingkan dengan
Apache.
LiteSpeed juga dapat menahan serangan DDOS Attack yang banyak ditakuti pemilik
website, namun DDOS ini hanya berskala kecil – menengah saja. Meskipun begitu,
LiteSpeed juga patut diperhitungkan dari segi keuntungan atau manfaat yang diberikan.
LiteSpeed ada yang gratis, ada pula yang berbayar. Yang membedakan antara yang
gratis dan berbayar tentunya fitur dan optimasi yang diberikan oleh LiteSpeed.
2.3. Web Browser dan HTML
Web browser adalah aplikasi untuk menampilkan halaman yang berbentuk kode
HTML, “HTML (Hypertext Markup Language) adalah protokol yang digunakan untuk
mentransfer data atau dokumen dari web server kedalam web browser.sebagai mana kita
ketahui HTML adalah standar untuk membuat halaman-halaman web, walaupun beberapa
file mempunyai ekstensi yang berbeda seperti (.html dan .php), dalam penggunaanya
11
http://digilib.mercubuana.ac.id/
sebagian besar kode HTML tersebut terletak diantara tag container, yaitu diawali dengan
nama tag dan di akhiri dengan nama tag yang sama dengan tanda (/), HTML mempunyai
tiga buah tag utama yang membentuk struktur dari dokumen tersebut seperti ( tag HTM,
HEAD, dan BODY ). (Priyanto 2007)
2.4. Database dan MySQL
Database adalah sebuah struktur yang umumnnya terbagi dalam 2 hal, yaitu sebuah
database flat dan database relasional. Database relasional lebih mudah dipahami daripada
database flat karena database relasional mempunyai bentuk yang sederhana serta mudah
dilakukan operasi data. Mysql sendiri adalah sebuah database relasional, database yang
memiliki struktur relasional terdapat tabel-tabel untuk menyimpan data pada setiap tabel
terdiri dari kolom dan baris serta sebuah kolom untuk mendefinisikan jenis informasi apa
yang harus disimpan. (Kristanto 1994)
2.3.1 Database Relasional
Konsep model database relasional pertama kali diusulkan oleh para peneliti IBM, Dr.
Edgar F.Codd pada tahun 1969, dan model database yang paling banyak di gunakan saat
ini. Dr. Codd awalnya mencari cara baru untuk menangani data dalam jumlah besar.
Namun, karena keterbatasan model jaringan hirarki dan umum digunakan prinsip-prinsip
matematika diterapkan dalam penyusunan data-nya. Dan karena memiliki keahlian dalam
bidang matematika, Dr.Codd mencoba untuk menemukan cara untuk mengatasi, sering
muncul dalam database model masalah saat ini, relasional redundansi data, data dan
ketertiban ketergantungan pada media penyimpanan, seperti antara. Dr.Codd
mempresentasikan makalah berjudul Pengekspor Juni 1970 makalah konsep model
database relasional dari model relasional dari dua cabang matematika “basis data bersama
besar model relasional data”: teori set dan orde pertama logika predikat. Database
relasional untuk menyimpan data ‘relasi’ atau disebut juga tabel. Setiap tabel terdiri dari
tupel atau record dan atribut atau field. Dalam penyusunan urutan media penyimpanan
fisik tidak berpengaruh pada model ini, dan setiap record terdiri dari bidang yang unik
diidentifikasi dalam tabel.
Model database relasional adalah database saat ini paling populer dan banyak
digunakan dalam berbagai aplikasi, termasuk Oracle dan MySQL. Relasional aplikasi
12
http://digilib.mercubuana.ac.id/
database Model, juga dikenal sebagai sistem manajemen database relasional (RDBMS).
Sistem manajemen database relasional (RDBMS) software adalah aplikasi
menggunakan relasional model database sebagai dasarnya. Sejak 1970an, RDBMS sudah
digunakan oleh berbagai pengguna, hardware dan pilihan berbagai sistem. sda RDBMS
pertama adalah sistem relational, Yang dikembangkan oleh IBM, Dan INGRES (grafis
interaktif sistem pencarian), University of California, Keduanya pada tahun 1970an.
Keunggulan data relasional dikenal perusahaan Mulai berlalih dari model database
jaringan hirarki dan cabang model database relasional. Pada tahun 1980an, Oracle
RDBMS lahir, Dan diikuti oleh pesaingnya saat itu, IBM DB2 database relasional.
Jika pada tahun 1980an RDBMS hanya dapat digunakan pilihan Menteri Perusahaan
sistem host, namun Saat ini dengan Semakin majunya Perkembangan teknologi hardware,
berbasis pc RDBMS sudah berjalan, Jumlah: Tersedia. MySQL RDBMS dapat diinstal di
komputer servis biasa / laptop.
Ketika mengggunakan software sistem manajemen database terkomputerisasi,
umumnya menggunakan database relasional. Prinsip database relasional adalah informasi
dibagi menjadi beberapa data yang terpisah secara logis. Data-data yang terpisah tersebut
diletakan dalambentuk tabel. Tabel adalah objek dasar yang merupakan jantung dari
database relasional. Tabel adalah dasar penyimpanan informasi dan pengambilannya.
Ketika informasi sudah tersimpan di tabel-tabel yang terpisah anda nantinya dapat melihat,
mengedit, menambah, dan menghapus informasi dengan berbagai metode. Selain itu juga
bisa
mengambil
informasi
mengggunakan
query
dan
menampilkan
informasi
menggunakan report. (Fardhin 2015)
Keunggulan penyimpanan data menggunakan database relasional sengat banyak
dibandingkan dengan penyimpanan kesatu tabel ukuran besar dua dimensi seperti di
dokument word atau spreedsheet excel
Salah satu utama keunggulan database relasional adalah kekuranganya redundansi data.
Konsekuensinya tidak hanya penyimpanan hardisk menjadi berkurang, tetapi kecepatan
pemprosesan data juga berkurang. Selain itu, ada kelebihan lainnya, yaitu :
13
http://digilib.mercubuana.ac.id/

Fleksibilitas : jika data berubah, hanya dapatmengupdate nilainya hanya pada
satu tempat, dengan demikian semua query, form dan lainya akan berubah
secara konsekuen dengan nilai yang baru tersebut.

Simple : model penyimpanan tabel yang merupakan dasar dari sistem relasional
memang simple, dan merupakan metode penyimpanan data yang tak redundan,
Tiap tabel didesign relasional untuk objek tungal yang mengandung data , yang
konsekuen terhadap aspek tertentu dari database, seperti pegawai, produk, atau
order.

Power : menyimpan data dalam tabel-tabel yang terpisah lebih memudahkan
adanya pengelompokan searching, dan enngambilan data menggunakan banyak
cara yang tak terbatas.

Kemudahan manajemen : dengan tabel yang kecil dan tidak kompleks,
informasi jadi mudah dilacak dan di atur.
Misalnya menggunakan database untuk menympan data order dari pelanggan,
Jika menggunakan tabel tung gal, ada banyak record yang dibuat untuk tap
order yang dilakukan pelanggan. (S 2010)
Kebutuhan client server arsitektur DBMS, bersama dengan jumlah pengguna dapat
mengakses database mulai muncul sekitar awal 1990-an. Sebuah database terpusat, tetapi
dapat diakses dari komputer remote, sehingga client server arsitektur dikembangkan
banyak RDBMS. Di klien – server arsitektur, komputer bertindak sebagai pusat database
server. Server akan layanan dari komputer (client) permintaan yang membutuhkan akses ke
database. Tapi database fisik itu sendiri juga tidak di server, mungkin di tempat lain, tetapi
koneksi ke server database untuk diproses.
MySQL juga menggunakan client – server arsitektur. Tapi kemudian dalam tutorial ini,
kita akan berjalan pada komputer yang sama sebagai server aplikasi dan klien. Tapi pada
dasarnya, jika Anda menjalankan server MySQL di komputer kita, setiap komputer yang
terhubung ke jaringan dapat mengaksesnya menggunakan klien MySQL. (Fardhin 2015)
14
http://digilib.mercubuana.ac.id/
2.3.2 MySQL
MySQL pertama kali dirintis oleh programmer database bernama Michael Widenius,
menurutnya pertama kali dirintis oleh programmer database bernama Michael Widenius,
menurutnya MySQL databse server adalah RDBMS (Relatsional database management
sistem) yang dapat menangani data yang bervolume besar, Meskipun begitu tidak
menutun resource yang besar, Mysql database yang paling populer diantara databasedatabase lainnya.
MySQL adalah aplikasi atau sistem untuk mengelola database atau management data,
untuk menyimpan data dan informasi kekomputer kita menggunakan data, File data yang
dikelompokan inilah yang disebut database, dan MySQL
bertugas mengatur dan
mengelola struktur atau kerangkan yang berbentuk tabel, dalam tabel-tabel itulah data
diatur dan di kelompokan,
Sama halnya dengan PHP, MySQL merupakan jenis software yang termasuk open
source, perangkat lunak sumber terbuka adalah jenis perangkat lunak yang
kode
sumbernya terbuka untuk dipelajari, diubah, ditingkatkan dan disebarluaskan, Karena sifat
ini umumnya pengembangannya oleh satu kelompok yang bertujuan mengembangkan
perangkat lunak yang bersangkutan,
MySQL sudah cukup lama dikembangkan, beberap fasepenting dalam pengmbangan
MySQL sebagai berikut :
 MySQL dirilis pertama kali secara internal pada 23 Mei 1995.
 Versi windows dirilis pada 8 Januari 1998 untuk windows 95 dan windows NT.
 Versi 3.23 : beta dari Agustus 2002, dan dirilis pada Januari 2001.
 Versi 4.0 : beta dari bulan Agustus 2002, dan si rilis pada Maret 2003 ( un-ions ).
 Versi 4.1 : beta dari bulan Juni 2004, dirilis pada bulan Oktober 2004 ( R-trees dan Btrees, sub queries, prepared statements ).
 Versi 5.0 : beta dari bulan Maret 2005, dirilis pada bulan Oktober 2005 ( cursor, storad
procedure, trigger, views XA transaction ).
 Sun Micosystems membeli MySQL AB pada tanggal 26 Februari 2008.
 Versi 5.1 : dirilis pada tanggal 27 November 2008 ( event Scheduler, partitioning, plugin API, row-based replication, server log table .)
MySQL dapat berjalan pada personal komputer ( banyak perngembang dari MySQL
terjadi pada sistem yang tidak mahal yaitu Linux System ) tetai MySQL juga poetable dan
dapat berjalan pada sistem operasi yang komersial seperti Windows, Solaris, dan Irix,
15
http://digilib.mercubuana.ac.id/
MySQL menggunakan bahasa SQL ( Strusctured Quesry Langguage ) adalah bahasa
standart yang digunakan untuk mengakses server database. (Setiabudi November 2002)
Dalam penulisan Skripsi ini, penulis merancang sebuah aplikasi web dengan
menggunakan aplikasi MySQL untuk databasenya dikarenakan banyak keunggulan yang
di milikinya, disamping tingkat keamanan yang cukup tinggi akses ke sistem database
yang lebih fleksible dan menjadi pilihan dibandingkan dengan bahasa pemrograman
lainnya yang berorientasi pada server-side-scripting. (Komputer 2010)
Pada design web browser atau website dirancang menggunakan sebuah web server
Apache, Server database MySQL, dan bahasa scripting PHP, secara garis besar hubungan
antara client browser, web server, dan database server dapat di lihat pada gambar berikut.
Gambar 2.9
Arsitektur Aplikasi Web Database MySQL
16
http://digilib.mercubuana.ac.id/
Download