BAB 2 LANDASAN TEORI 2.1 Sekilas Website World Wide Web (WWW) atau lebih dikenal dengan web merupakan salah satu layanan yang didapat oleh pemakai komputer yang terhubung dengan internet. Web pada awalnya adalah ruang informasi dalam internet, dengan menggunakan teknologi hypertext. Pemakai dituntut untuk menemukan informasi dengan mengikuti link yang disediakan dalam dokumen web yang ditampilkan dalam browser web. Kini internet identik dengan web, karena kepopuleran web sebagai standar interface pada layanan yang ada pada internet, dari awalnya sebagai penyedia informasi, kini digunakan juga untuk komunikasi dari email sampai dengan chatting, sampai dengan melakukan transaksi bisnis (commerce). Kini, web seakan lebih popular dari pada email, walaupun secara statistik email masih merupakan aplikasi terbanyak yang digunakan oleh pengguna internet. Web lebih popular bagi khalayak umum dan pemula, terutama untuk tujuan pencarian informasi dan melakukan komunikasi email yang menggunakan web sebagai interface-nya. Interface identik dengan web, karena popularitas sebagai penyedia informasi dan interface yang digunakan oleh pengguna internet dari masalah informasi sampai dengan komunikasi. Web memudahkan pengguna komputer untuk berinteraksi dengan pelaku internet lainya dan menelusuri (informasi) di internet. Selain itu web telah diadopsi Universitas Sumatera Utara 7 oleh perusahaan sebagai bagian dari stategi teknologi informasi, karena beberapa alasan: a) Akses informasi yang mudah. b) Setup server yang lebih mudah. c) Informasi mudah didistribusikan. d) Bebas platform atau informasi dapat disajikan oleh web browser pada system mana saja karena adanya standar dokumen berbagai tipe data dapat disajikan. 2.1.1 Sejarah Web Tahun 1989, Trimothy Berners-Lee seorang ahli komputer dari Inggris dan penelitilain di European Particle Physics Lab Consei European Pour la Recherche Nucleaire(CERN) di Geneva Swiss, mengembangkan satu cara untuk membagi data antar koleganya menggunakan sesuatu yang di sebut dengan hypertext. Pemakai di CERN dapat menampilkan dokumen pada layar komputer dengan menggunakan software browser baru. 2.1.2 Aplikasi Web Browser web adalah software yang digunakan untuk menampilkan informasi dari server web. Software ini kini telah berkembang dengan menggunakan user interface grafis, sehingga pemakai dapat dengan mudah memakai poin atau klik untuk pindah antar dokumen. Link adalah browser web yang masih menggunakan mode teks, yang akibatnya adalah tidak ada gambar yang dapat ditampilkan. Linx ini ada pada lingkungan Disk Operation System(DOS). Akan tetapi pengembangan dari browser Universitas Sumatera Utara 8 mode teks ini adalah tidak secepat browser web dengan Grafic User Interface(GUI). Disaat perkembangan WWW ada dua browser web yang paling populer yaitu Internet Explorer (IE) dan Netscape Navigator. Namun saat ini bermunculan browser web lain yang turut meramaikan persaingan untuk merebut para pengguna internet. Diantara browser web yang telah banyak digunakan pada saat peluncurannya adalah Microsoft Network, Opera, dan Mozilla Firefox. Diantara web browser ini terdapat kelebihan dan kekurangan sehingga pengguna dapat memilih sesuai dengan keinginan dan kemudahan yang ditawarkan. 2.1.3 Server Web Server web adalah komputer yang digunakan untuk menyimpan dokumen-dokumen web, komputer ini akan melayani permintaan dokumen web dari kliennya. Browser web seperti Opera berkomunkasi melalui jaringan (termasuk jaringan internet) dengan server web, menggunakan HyperText Transfer Protocol(HTTP). Browser akan mengirimkan request kepada server untuk meminta dokumen tertentu atau layanan lain yang disediakan oleh server. Server memberikan dokumen atau layanan jika tersedia juga dengan menggunakan HTTP. 2.2 Database MySQL Database adalah suatu kumpulan data-data yang disusun sedemikian rupa sehingga membentuk informasi yang sangat berguna. Database terbentuk dari sekelompok data-data yang memiliki jenis/sifat yang sama. Ambil contoh, data-data berupa Universitas Sumatera Utara 9 nama-nama, kelas-kelas, alamat-alamat. Semua data tersebut dikumpulkan menjadi satu menjadi kelompok data baru, sebut saja sebagai data-data mahasiswa. Demikian juga, kumpulan dari data-data mahasiswa, data-data dosen, datadata keuangan dan lainnya dapat dikumpulkan lagi menjadi kelompok besar, misalkan data-data politeknik elektronika. Bahkan dalam perkembangannya, datadata tersebut dapat berbentuk berbagai macam data, misalkan dapat berupa program, lembaran-lembaran untuk entry (memasukkan) data, laporan-laporan. Kesemuanya itu dapat dikumpulkan menjadi satu yang disebut dengan database. Salah satu bahasa database yang populer adalah SQL. MySQL biasa dibaca mai-es-ki-el atau mai-se-kuel adalah suatu perangkat lunak database relasi (Relational Database Management System atau RDBMS) seperti halnya Oracle, Postgresql, MS SQL dan sebagainya. SQL atau singkatan dari Structured Query Language ialah suatu sintaks perintah-perintah tertentu atau bahasa pemrograman yang digunakan untuk mengelola suatu database. Jadi, MySQL dan SQL tidaklah sama. Singkatnya, MySQL ialah perangkat lunaknya dan SQL adalah bahasa perintahnya. Ketika dibandingkan antara MySQL dengan sistem database yang lain, maka perlu difikirkan apa yang paling penting sesuai kebutuhan. Apakah tampilan, support, fitur-fitur SQL, kondisi keamanan dalam lisensi, atau masalah harga. Dengan pertimbangan tersebut, MySQL memiliki banyak hal yang bisa ditawarkan, antara lain : 1. Berdasarkan kecepatannya, banyak ahli memberikan pendapat bahwa MySQL merupakan server tercepat. Universitas Sumatera Utara 10 2. MySQL memiliki performa tinggi namun merupakan database yang simpel sehingga mudah di-setup dan dikonfigurasi. 3. MySQL cenderung gratis untuk penggunaan tertentu. 4. MySQL mengerti bahasa SQL (Structured Query Language) yang merupakan pilihan sistem database moderen. 5. Banyak klien dapat mengakses server dalam satu waktu. Mereka dapat menggunakan banyak database secara simultan. 6. Database MySQL dapat diakses dari semua tempat di internet dengan hak akses tertentu. 7. MySQL dapat berjalan dalam banyak varian Unix dengan baik, sebaik seperti saat berjalan di sistem non-Unix. 8. MySQL mudah didapatkan dan memiliki source code yang boleh disebarluaskan sehingga bisa dikembangkan lebih lanjut. 9. Dapat dikoneksikan pada bahasa C, C++, Java, Perl, PHP dan Python. Jika hal-hal diatas ialah kelebihan yang dimiliki oleh MySQL, maka MySQL juga memiliki kekurangan seperti : 1. Untuk koneksi ke bahasa pemrograman visual seperti visual basic, delphi, dan foxpro, MySQL kurang mendukung. Karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut. Dan ini yang menyebabkan MySQL jarang dipakai dalam program visual. 2. Data yang ditangani belum begitu besar. Universitas Sumatera Utara 11 2.3 IDE IDE (Integrated Development Environment) adalah program komputer yang memiliki beberapa fasilitas yang diperlukan dalam pembangunan perangkat lunak. Tujuan dari IDE adalah untuk menyediakan semua utilitas yang diperlukan dalam membangun perangkat lunak. Sebuah IDE, atau secara bebas dapat diterjemahkan sebagai Lingkungan Pengembangan Terpadu, setidaknya memiliki fasilitas: 1. Editor, yaitu fasilitas untuk menuliskan kode sumber dari perangkat lunak. 2. Compiler, yaitu fasilitas untuk mengecek sintaks dari kode sumber kemudian mengubah dalam bentuk binari yang sesuai dengan bahasa mesin. 3. Linker, yaitu fasilitas untuk menyatukan data binari yang beberapa kode sumber yang dihasilkan compiler sehingga data-data binari tersebut menjadi satu kesatuan dan menjadi suatu program komputer yang siap dieksekusi. 4. Debuger, yaitu fasilitas untuk mengetes jalannya program, untuk mencari bug/kesalahan yang terdapat dalam program. Sampai tahap tertentu IDE modern dapat membantu memberikan saran yang mempercepat penulisan. Pada saat penulisan kode, IDE juga dapat menunjukan bagian-bagian yang jelas mengandung kesalahan atau keraguan. 2.4 XAMPP Control Panel XAMPP merupakan tool yang menyediakan paket perangkat lunak ke dalam satu buah paket. Dengan menginstall XAMPP maka tidak perlu lagi melakukan instalasi dan konfigurasi web server Apache, PHP dan MySQL secara manual. XAMPP akan Universitas Sumatera Utara 12 menginstalasi dan mengkonfigurasikannya secara otomatis untuk anda atau auto konfigurasi sehingga lebih mudah dalam pemakaian. 2.5 PHP: Hypertext Preprocessor Menurut dokumen resmi PHP, PHP adalah singkatan dari PHP Hypertext Preprocessor. Ia merupakan bahasa pemrograman yang berbentuk skrip yang ditempatkan didalam server dan diproses di server. Hasilnyalah yang akan dikirimkan ke klien, tempat pemakai menggunakan browser. Secara khusus, PHP dirancang untuk membentuk android dinamis. Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini. Misalnya, untuk menampilkan isi database ke halaman android. PHP bersifat bebas dipakai. Tidak perlu membayar apapun untuk menggunakan perangkat lunak ini. 2.5.1 PHP dan MySQL Sebagai Web Service Web service merupakan sesuatu yang berbeda jika dibandingkan dengan website. Website sendiri dirancang dengan tampilan atau user interface yang baik sedangkan web service tidak. Web service tidak dirancang untuk berinteraksi langsung dengan pengguna. Sesuai dengan namanya, web service hanya menyediakan layanan saja. Sehingga, web service sendiri dapat disebut sebagai sebuah aplikasi yang dibuat agar dapat dipanggil atau diakses oleh aplikasi lain melalui internet dengan menggunakan format pertukaran data sebagai pengiriman pesan. Web service juga memungkinkan untuk dipanggil dengan menggunakan protokol lain seperti SMTP (Simple Mail Transfer Protocol), namun yang paling umum digunakan ialah HTTP. Universitas Sumatera Utara 13 Karena web service menggunakan protokol HTTP, tentu PHP sebagai bahasa pemrograman web menjadi salah satu kekuatan dalam bahasa pemrogaman yang mengelola web service. Banyak teknik dan metode untuk menghasilkan web service dengan PHP, pembuatan web service dengan format XML dan JSON yang diambil dari database MySQL lewat bahasa pemrograman PHP. 2.6 Flowchart Flowchart merupakan bagan atau gambar yang memperlihatkan hubungan antarproses beserta instruksinya. Gambaran ini dinyatakan dengan simbol yang mana dari tiap-tiap simbol mewakili proses tertentu. Sedangkan hubungan antar-proses tadi digambarkan dengan garis-garis. Flowchart merupakan langkah awal pembuatan program. Setelah flowchart selesai disusun, selanjutnya pemrogram menerjemahkannya ke dalam bentuk program menggunakan bahasa pemrograman. Berikut ini adalah simbol-simbol standar pada sebuah flowchart beserta fungsinya. Tabel 2.1. Simbol Flowchart No Nama Simbol Fungsi 1 Terminator Digunakan untuk mewakili simbol start atau end. 2 Arrow Menunjukkan alur proses. 3 Rectangle Menunjukkan langkah pemrosesan. 4 Trapezium Simbol untuk inputoutput. Universitas Sumatera Utara 14 5 Document Digunakan untuk mewakili output. 6 Decision Simbol yang berfungsi untuk menyatakan keputusan. 7 Preparation Simbol yang berfungsi untuk proses inisialisasi atau pemberian harga awal. Tabel 2.1. Lanjutan No Nama Simbol Fungsi Simbol untuk keluarmasuk atau penyambungan proses pada halaman yang berbeda. 8 Connector 9 Manual Input Simbol untuk pemasukkan data secara manual melalui keyboard. 10 Manual Operation Simbol yang menunjukkan pengolahan yang tidak dilakukan oleh komputer. 11 Predefine Process Simbol untuk pelaksanaan suatu bagian (subprosedur) Display Simbol yang menyatakan peralatan output yang digunakan seperti layar, printer, plotter, dan sebagainya. 12 Universitas Sumatera Utara 15 13 14 Magnetic Disk Simbol yang digunakan untuk penyimpanan data ke database. Storage Data Simbol yang menyatakan input yang berasal dari disk atau disimpan ke disk. 2.7 Data Flow Diagram Data Flow Diagram adalah alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi yang dapat digunakan untuk penggambaran analisa maupun perancangan sistem yang mudah dikomunikasikan ke pengguna ataupun ke pembuat program. Didalam DFD terdapat tiga level, yaitu : 1. Diagram Konteks (DFD Level 0) Diagram konteks menggambarkan satu lingkaran besar yang dapat mewakili seluruh proses yang terdapat dalam suatu sistem. Diagram konteks merupakan tingkatan tertinggi dalam Data Flow Diagram dan biasanya diberi penomoran nol. Semua entitas eksternal ditunjukkan dalam diagram konteks beserta dengan aliranaliran data utama, baik dari dan menuju sistem. 2. Diagram Nol (DFD Level 1) Diagram nol merupakan satu lingkaran besar yang mewakili lingkaran-lingkaran kecil yang ada pada diagram konteks. Dengan kata lain diagram nol merupakan pemecahan dari diagram konteks. 3. Diagram Rinci Lebih rinci lagi, diagram rinci adalah diagram yang menguraikan proses-proses yang terdapat di dalam diagram nol. Universitas Sumatera Utara 16 Berikut merupakan simbol-simbol standar menurut Yourdan dan DeMarco yang digunakan untuk membuat sebuah Data Flow Diagram. Tabel 2.2. Simbol Data Flow Diagram No Nama 1 Kesatuan Luar 2 Arus Data 3 Proses 4 Simpanan Data Simbol Media Nama data store Fungsi Sebagai kesatuan (entitas) di lingkungan luar sistem yang dapat berupa orang, organisasi, sumber asli transaksi, atau penerima akhir. Berfungsi untuk menghubungkan antara proses, simpanan data, dan kesatuan luar. Berupa kegiatan atau proses yang sedang dilakukan. Menunjukkan informasi yang tersimpan. 2.8 Entity Relationship Diagram Entity Relationship Diagram merupakan suatu model untuk menjelaskan hubungan antar-data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar-relasi. Menurut salah satu para ahli, Brady dan Loonam (2010), Entity Relationship Diagram (ERD) merupakan salah satu teknik yang digunakan untuk memodelkan kebutuhan data dari suatu organisasi. Komponen penyusun ERD adalah sebagai berikut. Universitas Sumatera Utara 17 Tabel 2.3. Komponen ERD No Nama Simbol Fungsi 1 Entitas Persegi panjang untuk entitas 2 Atribut Ellips untuk atribut 3 Relasi Belah ketupat mewakili relasi 4 Garis Garis menghubungkan Entitas adalah objek dalam dunia nyata yang dapat dibedakan dengan objek lain, seperti mahasiswa, dosen, departemen. Sedangkan setiap entitas pasti memiliki elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakter dari entitas tersebut. Misalnya, atribut dari mahasiswa adalah nim dan nama. Relasi merupakan gambaran antar-entitas. Universitas Sumatera Utara