BAB 2 LANDASAN TEORI 2.1 Pengertian Sistem Informasi Sisttem informasi adalah suatu sistem yang menyediakan informasi untuk manajemen dalam mengambil keputusan atau kebijakan dan menjalankan operasional dari kombinasi orang-orang, teknologi informasi dan prosedurprosedur yang terorganisasi atau sistem informasi diartikan sebagai kombinasi dari teknologi informasi dan aktivitas orang yang menggunakan teknologi untuk mendukung operasi dan manajemen. Sedangkan dalam arti luas, sistem informasi diartikan sebagai sistem informasi yang sering digunakan menurut kepada interaksi antara orang, proses, algoritmik, data dan teknologi. 2.2 Pengertian Database dan 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 nama-nama, kelas-kelas, alamat-alamat. Semua data tersebut dikumpulkan menjadi satu menjadi kelompok data baru, sebut saja sebagai data- data mahasiswa.
21 Demikian juga, kumpulan dari data-data mahasiswa, data-data dosen, datadata keuangan dan lainnya dapat dikumpulkan lagi menjadi kelompok besar, misalkan data-data teknik informatika. Bahkan dalam perkembangannya, data- data 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 :
22 1. Berdasarkan kecepatannya, banyak ahli memberikan pendapat bahwa MySQL merupakan server tercepat. 2. MySQL memiliki performa tinggi namun merupakan database yang simple sehingga mudah di-setup dan dikonfigurasi. 3. MySQL cenderung gratis untuk pengguna tertentu. 4. MySQL mengerti bahasa SQL (Structured Query Language) yang merupakan pilihan sistem database modern. 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 mudah didapatkan dan memiliki source code yang boleh sebarluaskan sehingga bisa dikembangkan lebih lanjut. 8. Dapat dikoneksikan pada bahasa C, C++ Java Perl, PHP, dan Phyton. 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.
23 2.3 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 menginstalasi dan mengkonfigurasikannya secara otomatis untuk anda atau auto konfigurasi. 2.4 HTML5 HTML (Hypertext Markup Language) merupakan bahasa markup yang digunakan untuk mengubah dokumen teks menjadi halaman web. Pengembangan terbaru dari HTML yaitu HTML5 yang dirancang oleh WHATWG (Web Hypertext Application Technology Working Group) dan direkomendasikan oleh W3C (World Wide Web Consortium) untuk digunakan. HTML5 menyediakan banyak fitur-fitur baru untuk mempermudah developer dalam pengembangan web. Beberapa API (Application Programming Interfaces) yang bisa digunakan dalam HTML5 yaitu Media API, Canvas API, Drag and Drop API, Geolocation API, dan lainnya.
24 2.5 CSS3 CSS (Cascading Style Sheets) merupakan standar W3C (World Wide Web Consortium) untuk memperindah web secara visual. Terdapat banyak elemen baru yang ditambahkan W3C dalam CSS yang disebut dengan CSS3. Di dalam CSS3, memungkinkan developer untuk melakukan animasi pada elemen web dan merancang website yang responsif yaitu dengan menggunakan media queries. Fitur tersebut banyak digunakan developer untuk merancang web untuk ukuran layar yang berbeda-beda baik di komputer maupun mobile. 2.6 Sublime Text Sublime Text merupakan code editor yang dibuat dengan menggunakan Python API yang memudahkan programmer untuk menyunting source code yang dikerjakan. Kelebihan Sublime Text dibandingkan code editor lain adalah kemudahan dan banyak plugin yang tersedia untuk menunjang penulisan kode. Kinder (2013) menjelaskan bahwa Sublime Text merupakan code editor yang sangat cocok dan mampu menunjang cross-platform banyak bahasa pemrograman. Sublime Text merupakan code editor yang cocok untuk pengembangan aplikasi manajemen keuangan pribadi karena mampu mendukung banyak bahasa pemrograman sekaligus tidak menghabiskan banyak sumber daya dari pengguna.
25 2.7 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.8 Javascript Javascript adalah bahasa pemrograman (skrip) yang ditempelkan pada kode HTML & proses disisi klien. Dengan adanya bahasa ini, kemampuan dokumen HTML menjadi semakin luas. Sebagai contoh, dengan menggunakan Javascript dimungkinkan untuk memvalidasi masukan-masukan pada formulir sebelum formulir dikirimkan ke server.
26 Dalam perkembangan selanjutnya, JavaScript tidak hanya berguna untuk validasi form, namun untuk berbagai keperluan yang lebih modern. Berbagai animasi untuk mempercantik halaman web, fitur chatting, efek-efek modern, games, semuanya bisa dibuat menggunakan JavaScript. Akan tetapi karena sifatnya yang dijalankan di sisi client yakni di dalam web browser yang digunakan oleh pengunjung situs, user sepenuhnya dapat mengontrol eksekusi JavaScript. Hampir semua web browser menyediakan fasilitas untuk mematikan JavaScript, atau bahkan mengubah kode JavaScript yang ada. Sehingga kita tidak bisa bergantung sepenuhnya kepada JavaScript. 2.9 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.
27 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. Trapecium Simbol untuk inputoutput. 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.
28 Tabel 2.1. Lanjutan No. Nama Simbol Fungsi 8. Connector Simbol untuk keluarmasuk atau penyambungan proses pada halaman yang berbeda. 9. Manual Input Simbol untuk pemasukkan data secara manual melalui keyboard. 10. Manual Operatin Simbol yang menunjukkan pengolahan yang tidak dilakukan oleh komputer. 11. Predefine Process Simbol untuk pelaksanaan suatu bagian (sub-prosedur)
29 12. Display Simbol yang menyatakan peralatan output yang digunakan seperti layar, printer, plotter, dan sebagainya. 13. Magnetic Disk Simbol yang digunakan untuk penyimpanan data ke database. 14. Storage Data Simbol yang menyatakan input yang berasal dari disk atau disimpan ke disk. 2.10 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.
30 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. Tabel 2.2 Komponen ERD No. Nama Simbol Fungsi 1. Persegi panjang Entitas 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.
31 2.11 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 aliran-aliran data utama, baik dari dan menuju sistem. 2. Diagram Nol (DFD Level 1) Diagram nol merupakan satu lingkaran besar yang mewakili lingkaranlingkaran 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.
32 Berikut merupakan simbol-simbol standar menurut Yourdan dan DeMarco yang digunakan untuk membuat sebuah Data Flow Diagram. Tabel 2.3 Simbol Data Flow Diagram No. Nama Simbol Fungsi 1. Kesatuan Luar Sebagai kesatuan (entitas) di lingkungan luar sistem yang dapat berupa orang, organisasi, sumber asli transaksi, atau penerima akhir. 2. Arus Data Berfungsi untuk menghubungkan antara proses, simpanan data, dan kesatuan luar. 3. Proses Berupa kegiatan atau proses yang sedang berakhir 4. Simpanan Data Menunjukkan informasi yang disimpan