BAB II LANDASAN TEORI 2.1 Tinjauan Pustaka Pada tinjauan pustaka ini sebelumnya sudah terdapat naskah publikasi yang dapat dijadikan acuan dengan judul “Pembuatan Sistem Informasi Rental Studio Musik pada Studio Musik Impact Yogyakarta Berbasis Web” yang disusun oleh Isnanto Adi Prasetyo dari jurusan Teknik Informatika Sekolah Tinggi Manajemen Informatika dan Komputer AMIKOM Yogyakarta. Studio Musik Impact merupakan perusahaan yang bergerak dibidang sektor jasa penyewaan studio musik. Studio musik Impact ini menyediakan tempat latihan dengan fasilitas yang memadai dengan alat-alat band yang bekualitas. Sistem Informasi ini sebelumnya sudah ada, namun sudah diperbaharui karena pada sistem lama sering terjadi kesalahan pada proses administrasi, maupun penjadwalan rental studio dikarenakan pemesanan studio bisa di pesan melalui pesan singkat. Sehingga sering menimbulkan masalah seperti keterlambatan informasi, laporan, serta perulangan pencatatan data. Jika dibandingkan dengan sistem yang ditinjau, Sistem Informasi Managemen di Idhan Kreasi ini baru pertama kali di terapkan dalam bentuk web dan di komersialkan secara umum untuk pengguna internet. Sistem ini mampu menampilkan informasi seperti informasi profil sanggar, artis, lagu, jadwal, galeri dan kontak. Selain itu, sistem ini juga dapat mengolah proses administrasi jual-beli lagu yang sudah terdapat hak cipta dari Idhan Kreasi Management serta proses penjadwalan yang meliputi jadwal latihan vokal dan show. Penjadwalan latihan ini dibuat guna memudahkan siswa dan guru dalam menyesuaikan studio yang digunakan serta pemilihan kelas yang meliputi kelas privat, kelas kelompok kecil dan kelas kelompok besar. 2.2 Landasan Teori 2.2.1 5 Sistem Informasi Suatu sistem informasi dapat didefinisikan secara teknis sebagai satuan komponen yang saling berhubungan yang mengunmpulkan atau mendapatkan kembali, memproses, menyimpan, mendistribusikan informasi untuk mendukung pengambilan keputusan, koordinasi, dan kendali. Sistem informasi juga membantu para manajer dan karyawan untuk meneliti permasalahan, memvisualisasikan pokok-pokok yang kompleks, dan menciptakan produk-produk baru. Sistem informasi berisi informasi tentang orang-orang tertentu, tempat-tempat, dan hal-hal di dalam organisasi atau di lingkungan sekitarnya. Informasi berarti data yang telah dibentuk ke dalam suatu format yang mempunyai arti dan berguna bagi manusia. Sebaliknya, data merupakan sekumpulan baris fakta yang mewakili peristiwa yang terjadi pada organisasi atau pada lingkungan fisik sebelum diolah ke dalam suatu format yang dapat dipahami dan digunakan orang. (Loudon dan Kenneth, 2005). 2.2.2 Basis Data Basis data menurut James Martin (1975) yaitu sebagai berikut : “A database may be defined as a collection of interrelated data stored together without harmful or unnecessary redundancy to serve one or more applications in an optimal fashion; the data are stored so that they are independent of programs with use the data; a common and controlled approach its used in adding new data and in modifiying and retrieving existing data within database” (Edhy, 2004). Dengan memahami pengertian di atas, maka istilah basis data dapat dipahami sebagai suatu kumpulan data terhubung (Interrelated data) yang disimpan secara bersama-sama pada suatu media, tanpa menatap stu sama ain atau tidak perlu suatu kerangkapan data (kalaupun ada maka kerangkapan data tersebut harus seminimal mungkin dan terkontrol), data disimpan dengan cara-cara tertentu sehingga mudah untuk digunakan / atau ditampilkan kembali; data dapat digunakan satu atau lebih program-program aplikasi secara optimal; data disimpan sedemikian rupa sehingga proses penambahan, pengambilan dan modofikasi data dpat dilakukan dengan mudah dan terkontrol. (Edhy, 2004). Menurut Fathansyah (2001), basis data terdiri dari dua kata, yaitu basis dan data. Basis kurang lebih dapat diartikan sebagian markas atau gudang, tempat bersarang/berkumpul. Sedangkan data adalah representasi fakta dunia nyata yang mewakili suatu objek. Basis data sendiri dapat didefinisikan dalam sejumlah sudut pandang, seperti : a. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfatkan kembali dengan cepat dan mudah. b. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagia kebutuhan. c. Kumpulan file/arsip/tabel yang saling berhubungan yang disimpan dalam media penyimpanan elektronis. 2.2.3 PHP Hypertext Preprocessor (PHP) PHP adalah bahasa pemrograman berbasis web yang kan memberikan penampilan canggih jika dipadukan dengan webserver yang memberikan keamanan cukup tinggi. Jika terjadi error pada suatu fungsi atau kegagalan akses, PHP mempunyai fungsi khusus yang memungkinkan pengiriman e-mail langsung ke programmer tersebut. Penanganan variabel yang memberikan ‘pelemparan’ variabel antar halaman juga menjadi lebih aman. (M. Syafi’i, 2005). Bagi programmer web yang ingin menggunakan aplikasi autentifikasi user, PHP telah menyediakan tiga jenis autentifikasi yaitu HTTP autentifikasi, penggunaan cookies, penggunaan session. Selain itu, Anda dapat mengenkripsi data yang dikirim dengan menggunakan fungsi-fungsi yang disediakan PHP, diantaranya adalah cr32, crypt, md5, base64-decode, base64-encode, dan lain-lain. (M. Syafi’i, 2005). PHP adalah bahasa server-side scripting yang menyatu dengan HTML untuk membuat halaman web yang dinamis. Maksuda dari server –side scripting adalah sintak dan perintah-perintah yang diberikan akan sepenuhnya dijalankan di server tetapi disertakan pada dokumen HTML. Pembuatan web ini merupakan kombinasi antara PHP sendiri sebagai bahasa pemrograman dan HTML sebagai pembangun halaman web, PHP dapat mengirim HTTP header, dapat mengeset cookies, mengatur authentication dan redirect users. (Bimo, 2002). 2.2.4 Diagram Konteks Diagram konteks adalah sebuah diagram sederhana yang menggambarkan hubungan antara entitas luar, masukan dan keluaran dari sistem. Diagram konteks direpresentasikan dengan lingkaran tunggal yang mewakili keseluruhan sistem. (Kristanto, 2003). Menurut Pressman (2002) Diagram konteks yang disebut juga model sistem fundamentasi atau model konteks, merefresentasikan seluruh elemen sistem sebagai sebuat bubble tungal dengan data input dan output yang ditunjukan oleh anak panah yang masuk dan keluar secara berurutan. 2.2.5 JavaScript dan jQuery JavaScript adalah bahasa script yang dikembangkan oleh Netscape untuk membuat dokumen yang dinamis. JavaScript adalah bahasa script sederhana yang mempunyai kemiripan dengan bahasa pemrograman C. JavaScript juga dikenal sebagai sebuah kode pemrograman berorientasi objek (Object Oriented Programming) disingkat OOP. JavaScript memiliki keistimewaan untuk ditambahkan pada kode HTML dan membuat dokumen menjadi lebih interaktif. (Wahana Komputer, 2001). Jquery adalah library atau kumpulan kode javaScript siap pakai. Keunggulan menggunakan jquery dibandingkan dengan javaScript standar, yaitu menyederhanakan kode javaScript dengan cara memanggil fungsi yang disediakan oleh jquery. Beberapa keunggulan lain jquery, (Aloysius, 2011) : a. Jquery compatible dengan banyak browser. b. Jquery mendukung semua versi CSS. c. Ukuran jquery sangat kecil, sekitar 20kB. d. Dokumentasi jquery yang lengkap. e. Dukungan komunitas terhadap jquery. f. Tersedianya plugin jquery yang sangat beragam. 2.2.6 Data Flow Diagram (DFD) Menurut Pressman (2002) DFD adalah sebuah teknik grafis yang menggambarkan aliran informasi dan transformasi yang diaplikasikan pada saat data bergerak dari input menjadi output. DFD adalah suatu model logika data atau proses yang dibuat untuk menggambarkan darimana asal data dan kemana tujuan data yang keluar dari sistem, dimana data disimpan, proses apa yang menghasilkan data tersebut dan interaksi antara data yang tersimpan dan proses yang dikenakan pada data tersebut.DFD menggambarkan penyimpanan data dan proses yang mentransformasikandata. DFD menunjukkan hubungan antara data pada sistem dan proses pada sistem.(Kristanto, 2003). Simbol-simbol yang digunakan dalam DFD dapat dilihat pada Gambar 2.1 Gambar Simbolsimbol dalam Flow Diagram 2.1. Data 2.2.7 Entity Relationship Diagram (ERD) Entity Relationship Diagram (ERD) adalah suatu model jaringan (network) yang menggunakan susunan data yang disimpan dalam sistem secara abstrak. Tujuan utama dari penggambaran ERD adalah untuk menunjukkan struktur objek data (entity) dan hubungan (relationship) yang ada pada objek tersebut. ERD berguna bagi professional sistem, karena ERD memperlihatkan hubungan antara data store pada DFD. (Fatansyah, 2001). Komponen utama ERD dapat dilihat pada Tabel 2.1. Tabel 2.1. Simbol-simbol dalam Entity Relationship Diagram (ERD) Nama Simbol Keterangan Simbol Entitas Digunakan untuk menggambarkan obyek yang dapat diidentifikasikan dalam lingkungan pemakai. Atribut Digunakan untuk menggambarkan elemen-elemen dari suatu entitas, yang entitas. menggambarkan karakter Hubungan Entitas dapat berhubungan satu sama lain. Hubungan disebut dengan relasi. Garis Digunakan untuk menghubungkan entitas dan entitas dengan atribut. 2.2.7.1 Kardinalitas Relasi Dalam ERD hubungan (relasi) dapat terdiri dari sejumlah entitas yang disebut dengan derajad relasi. Derajad relasi maksimum disebut dengan kardinalitas sedangkan derajad minimum disebut dengan modalitas. Jadi kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas lain. (Fatansyah, 2001). Kardinalitas Relasi dapat ditunjukan dalam Gambar 2.2, Gambar 2.3 dan Gambar 2.4. a. One to One Relationship Hubungan antara file pertama dan file kedua adalah satu berbanding satu. Gambar 2.2 Gambar One-toOne Relationship b. One to Many atau Many to One Relationship Hubungan antara file pertama dan file kedua adalah satu berbanding banyak atau banyak berbanding satu. Gambar 2.3 One-to-Many Relationship c. Many to Many Relationship Hubungan file pertama dan file kedua adalah banyak berbanding banyak. Gambar 2.4 Many-to-Many Relationship 2.2.7.2 Perancangan Teknik E-R Sumber awal data teknik perencanaan database dengan ER adalah data dictionary (kumpulan data). (Fatansyah, 2001). Langkah-langkah perancangan ER: 1. Memilih kelompok atribut yang sama untuk dijadikan sebuah entitas dan menentukan primary key dengan syarat unik dan mewakili entitas 2. Menggambarkan Cardinality dari ER diagram berdasarkan analisa relasi yang didapat. Relasi yang terjadi dapat One to One, One to Many dan Many to Many relationship 3. Membentuk SKEMA DATABASE atau LRS (Logical Record Structure) berdasarkan ER diagram Keterangan : a. Bila relasi One to One maka foreign key diletakkan pada salah satu dari 2 entitas yang ada atau menyatukan ke dua entitas tersebut. b. Bila relasi One to Many maka foreign key diletakkan di entitas yang Many c. Bila relasi many to many maka dibuat “file konektor” yang berisi 2 foreign key yang berasal dari kedua entitas d. Membentuk tabel-tabel berdasarkan primary key yang terpilih dengan syarat sudah mencapai aturan normalisasi sekurang-kurangnya 3NF dari Skema DB/LRS yang ada. 2.2.7.4 Diagram Alur (Flowchart) Diagram Alur (Flowchart). Flowchart merupakan logika atau urut-urutan instruksi program dalam suatu diagram. Diagram Alur dapat menunjukkan secara jelas arus pengendalian Algoritma, yakni bagaimana rangkaian pelaksanaan kegiatan. Suatu Diagram Alur memberi gambaran dua dimensi berupa simbol-simbol grafis. Masingmasing simbol memiliki fungsi dan arti tersendiri. (Fatansyah, 2001). Simbol-simbol tersebut dapat dilihat pada Gambar 2.5, Gambar 2.6, Gambar 2.7, Gambar 2.8, Gambar 2.9, Gambar 2.10 dan Gambar 2.11. 1. Simbol Proses Simbol proses digunakan untuk mewakili suatu proses. Gambar 2.5 Simbol Proses 2. Simbol Masukan / Keluaran Simbol masukan / keluaran digunakan untuk mewakili data masukan atau keluaran. Gambar 2.6 Simbol Masukan / Keluaran 3. Simbol Keputusan Simbol keputusan digunakan untuk suatu penyelesaian kondisidi dalam program. Gambar 2.7 Simbol Keputusan 4. Simbol Garis Alur Simbol garis alur digunakan untuk menunjukkan arus dari proses. Gambar 2.8 Simbol Garis Alur 5. Simbol Penghubung Simbol penghubung untuk menghubungkan Diagram Alur yang terputus disebabkan oleh pergantian halaman. Gambar 2.9 Simbol Penghubung antar halaman Gambar 2.10 Simbol Penghubung satu halaman 6. Simbol Titik Terminal Simbol titik terminal digunakan untuk menunjukkan awal dan akhir dari suatu proses. Gambar 2.11 Simbol Titik Terminal 2.2.8 MySQL (My Structured Query Language) MySQL (My Structured Query Language) adalah sebuah program pembuat dan pengelola database atau yang sering disebut dengan DBMS (Database Management Sistem), sifat dari DBMS ini adalah Open Source, sehingga dapat diperoleh secara gratis. MySQL sebenarnya produk yang berjalan pada platform Linux, dengan adanya perkembangan dan banyaknya pengguna, serta lisensi dari database ini adalah Open Source, maka para pengembang kemudian merilis versi Windows. Kelebihan lain dari MySQL adalah menggunakan bahasa query (permintaan) standar SQL (Structured Query Language) yang merupakan suatu bahasa permintaan yang terstruktur, SQL telah distandarkan untuk semua program pengakses database seperti Oracle, PosgreSQL, SQL Server dan lain-lain (Nugroho, 2008).