BAB II LANDASAN TEORI 2.1 Konsep Dasar Program Di dalam sub bab berikut menjelaskan mengenai pengertian dari program, bahasa pemrograman, basis data, model pengembangan perangkat lunak dan tools program yang digunakan 2.1.1 Program Menurut Mustakini (2016:22) menyimpulkan bahwa Program adalah kegiatan-kegiatan prinsip yang telah ditentukan untuk dilaksanakan oleh organisasi dengan maksud untuk menerapkan strategi-strategi yang telah disusun. 2.1.2 Microsoft Visual Basic 6.0 Menurut Stefano (2014:2) mengemukakan bahwa visual basic merupakan sebuah bahasa pemrograman yang menawarkan Intergrated Development Environment (IDE) visual untuk membuat program perangkat lunak berbasis operasi Microsoft windows menggunakan model pemrograman (COM). Adapun alasan penulis menggunakan program Microsoft visual basic 6.0 antara lain: 1. Bahasa pemrograman ini berbasis Windows sehingga programmer dapat membuat penampilan semenarik mungkin. 7
8 2. Program ini sangat User Friendly. 3. Mudah dalam membuat database dan dalam membuat laporan. 4. Cara penggunaannya sangat mudah untuk programmer pemula. Dengan adanya Microsoft Visual Basic 6.0 ini dapat memudahkan para programmer untuk membuat program yang familier untuk pemakai (User) karena menggunakan visualisasi dan animasi yang cukup tinggi serta tampilan yang menarik untuk dilihat. Karena kemiripannya dengan pemrograman basic, bahasa pemrograman Microsoft Visual Basic ini menjadi lebih mudah untuk dipahami dan dipelajari. Microsof Visual Basic 6.0 ini mempunyai kemampuan yang sangat besar dalam membuatb program-program yang lebih kompleks. Microsoft Visual Basic terdiri dari beberapa versi dan Microsoft Visual Basic 6.0 merupakan penyempurnaan dari versi sebelumnya. 1. Keunggulan dari Microsoft Visual Basic 6.0. Sejak diciptakan versi pertamanya pada tahun 1991, Microsoft Visual Basic kini telah mencapai versi yang keenam yang memilki keunggulan dari versi sebelumnya. Berikut ini beberapa keunggulan dari Microsoft Visual Basic 6.0: a. Kemampuan membuat ActiveX dan fasilitas internet yang lebih banyak. b. Memiliki compiler yang dapat menghasilkan output file executable (.exe). c. Memiliki beberapa tambahan sarana wizard yang lebih lengkap.
9 d. Membuat flat form pembuatan program yang diberi nama developer studio. e. Sarana akses data yang lebih cepat dan handal untuk membuat aplikasi database yang berkemampuan tinggi dan kompleks. f. Penambahan kontrol baru yang lebih canggih serta peningkatan kaidah struktur bahasa Microsoft Visual Basic 6.0. 2. IDE Microsoft Visual Basic 6.0. Untuk dapat menggunakan fasilitas dalam Microsoft Visual Basic 6.0 dengan baik dan benar, maka diperlukan penguasaan tentang IDE (Integrated Development Environment) atau lingkungan kerja Microsoft Visual Basic 6.0 itu sendiri. Tampilan fasilitas-fasilitas atau IDE Microsoft Visual Basic 6.0 berisi komponen-komponen. 2.1.3 Basis Data Dalam pembuatan sistem informasi basis data (database) merupakan hal penting sebagai penyimpatan data untuk mendukung suatu informasi tersebut. Menurut Sukamto dan M. Salahuddin (2013:43). Sistem basis data adalah sistem terkomputerisasi yang tujuan utamanya adalah memelihara data yang sudah diolah atau informasi dan membuat informasi tersedia saat dibutuhkan. Berikut beberapa software pendukung untuk membuat dan mengakses basis data (database) yaitu:
10 1. XAMPP (System Operation Apache MySQL PHP Perl) Menurut Anhar (2010:21) menerangkan bahwa MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (Database Management System) atau DBMS dari sekian banyak DBMS, seperti Oracle, MS SQL, Postagre SQL, dan lain-lain. MySQL merupakan DBMS yang multithread, multiuser yang bersifat gratis dibawah lisensi GNU General Public Licence (GPL). Beberapa kelebihan MySQL antara lain: 1. MySQL dapat berjalan stabil pada berbagai sistem operasi. 2. Bersifat Open Source, MySQL didistribusikan secara Open Source. 3. Bersifat multiuser 2. MySQL (Structures Query Languages) Menurut Arief (2011d:152) MySQL adalah salah satu jenis database server yang sangat terkenal dan banyak digunakan untuk membangun aplikasi web yang menggunakan database sebagai sumber dan pengolahan datanya. 3. PHPMyAdmin Menurut Arief (2011c:43) PHP adalah Bahasa server-side scripting yang menyatu dengan HTML untuk membuat halaman web yang dinamis. Karena PHP merupakan server-side-scripting maka sintaks dan perintahperintah PHP akan diesksekusi diserver kemudian hasilnya akan dikirimkan ke browser dengan format HTML.
11 2.1.4 Model Rekayasa Perangkat Lunak Menurut Sukamto dan M. Shalahudin (2013:28) menjelaskan Model SDLC air terjun (waterfall) sering juga disebut model sekuensial linier (sequential linear) atau alur hidup klasik (classic life cycle). Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengkodean, pengujian dan tahap pendukung (support). Berikut ini adalah gambar model air terjun (waterfall) Gambar II.2 Ilustrasi Model Waterfall
12 Penjelasan gambar diatas adalah sebagai berikut: 1. Analisis kebutuhan perangkat lunak Proses pengumpulan kebutuhan dilakukan secara intensif untuk menspesifikasi kebutuhan perangkat lunak agar dapat dipahami seperti apa yang dibutuhkan oleh user. Spesifikasi kebutuhan perangkat lunak pada tahap ini perlu didokumentasikan. 2. Desain Desain perangkat lunak adalah proses multi langkah yang fokus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur perangkat lunak, representasi antarmuka, dan prosedur pengkodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke tahap selanjutnya. Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan. 3. Pembuatan kode program Desain harus ditranslasikan ke dalam program perangkat lunak. Hasil dari tahap ini adalah program komputer sesuai dengan desain dibuat pada tahap desain. 4. Pengujian Pengujian fokus pada perangkat lunak secara dari segi logical dan Fungsional. Dan memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan. 5. Pendukung (support) atau pemeliharaan (maintenance) Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan ketika sudah dikirimkan ke user, perubahan bias terjadi karena adanya kesalahan
13 yang muncul dan tidak terdeteksi saat pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis spesifikasi untuk perubahan perangkat lunak yang sudah ada, tetapi tidak untuk membuat perangkat lunak baru. 2.2 Peralatan pendukung Program (Tools Program) Fungsi dari peralatan pendukung (tools program) adalah untuk menjelaskan kepada user bagaimana fungsi dari sistem informasi dapat bekerja dengan suatu bentuk logical dan model physical. 2.2.1 ERD (Entity Relationship Diagram) Menurut Rosa A.S dan Shalahuddin (2014:50), bahwa pemodelan basis data yang paling banyak digunakan adalah menggunakan entity relationship diagram (ERD). ERD digunakan untuk pemodelan basis data relasional. Menurut Sutanta (2011:91) dalam bukunya yang berjudul "Basis Data Dalam Tinjauan Konseptual" menjelaskan bahwa "Entity Relationship Diagram (ERD) merupakan suatu model data yang dikembangkan berdasarkan objek." Masih dalam buku Edhy Sutanta (2011:91) menjabarkan Komponen Entity Relationship Diagram adalah sebagai berikut : 1. Entitas Entitas merupakan suatu objek yang dapat dibedakan dari lainnya yang dapat diwujudkan dalam basis data. Objek dasar dapat berupa orang, benda, atau hal
14 yang keterangannya perlu disimpan dalam basis data. Untuk menggambarkan sebuah entitas digunakan aturan sebagai berikut: a. Entitas dinyatakan dengan simbol persegi panjang b. Nama entitas dituliskan didalam simbol persegi panjang c. Nama entitas berupa kata benda, tunggal d. Nama entitas sedapat mungkin menggunakan nama yang mudah dipahami dan dapat menyatakan maknanya dengan jelas. 2. Atribut Atribut merupakan keterangan-keterangan yang terkait pada sebuah entitas yang perlu disimpan dalam basis data. Atribut berfungsi sebagai penjelas pada sebuah entitas. Untuk menggambarkan atribut digunakan aturan sebagai berikut: a. Atribut digambarkan dengan simbol ellips b. Nama atribut dituliskan didalam simbol ellips c. Nama atribut merupakan kata benda, tunggal d. Nama atribut sedapat mungkin menggunakan nama yang mudah dipahami dan dapat menyatakan maknanya dengan jelas 3. Relasi Relasi merupakan hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Aturan penggambaran relasi adalah sebagai berikut: a. Relasi dinyatakan dengan simbol belah ketupat b. Nama relasi dituliskan didalam simbol belah ketupat.
15 c. Nama relasi berupa kata kerja aktif d. Nama relasi sedapat mungkin menggunakan nama yang mudah dipahami dan dapat menyatakan maknanya dengan jelas. 2.2.2 LRS (Logical Record Structure) Menurut Hasugian dan Shidiq (2012:608) memberikan batasan bahwa LRS adalah sebuah model sistem yang digambarkan dengan sebuah diagram-er akan mengikuti pola atau aturan permodelan tertentu dalam kaitanya dengan konvensi ke LRS. Perubahan yang terjadi yaitu mengikuti aturan-aturan sebagai berikut: 1. Setiap entitas akan diubah kebentuk kotak. 2. Sebuah atribut relasi disatukan dalam sebuah kotak bersama entitas jika hubungan yang terjadi pada diagram-er 1:M (relasi bersatu dengan cardinality M) atau tingkat hubungan 1:1 (relasi bersatu dengan cardinality yang paling membutuhkan referensi). 3. Sebuah relasi dipisah dalam sebuah kotak tersendiri (menjadi entitas baru) jika tingkat hubunganya M:M (many to many) dan memiliki foreign key sebagai primary key yang diambil dari kedua entitas yang sebelumnya saling berhubungan.
16 2.2.3 Pengkodean Menurut Mustakini (2014:384) bahwa Kode digunakan untuk tujuan mengklasifikasikan data, memasukkan data ke dalam komputer dan untuk mengambil bermacam-macam informasi yang berhubungan dengannya. Kode dapat di bentuk dari kumpulan angka, huruf, dan karakter-karakter khusus (misalnya %, /, -, $, #, &, :, dan lain sebagainya). Menurut Mustakini (2014:386) ada beberapa macam tipe kode, antara lain: 1. Kode Mnemonik (Mnemonic Code) Kode Mnemonik digunakan untuk tujuan supaya mudah diingat. 2. Kode Urut (Sequntial Code) Kode Urut merupakan kode yang nilainya urut antara satu kode dengan kode berikutnya. 3. Kode Blok (Block Code) Kode Blok mengklasifikasikan item kedalam kelompok blok tertentu yang mencerminkan satu klasifikasi tertentu atas dasar pemakaian maksimun yang di harapkan. 4. Kode Group (Group Code) Kode Group merupakan kode yang berdasarkan field-field dan tiap-tiap field kode mempunyai arti 5. Kode Desimal (Decimal Code)
17 Kode Desimal mengklasifikasikan kode atas dasar 10 unit angka desimal dimulai dari angka 0 sampai angka 9 atau dari 00 sampai dengan 99 tergantung dari banyakanya kelompok. Menurut Mustakini (2014:384) syarat-syarat yang harus diperhatikan dalam pembuatan kode antara lain: 1. Harus mudah diingat Supaya kode mudah diingat, maka dapat dilakukan dengan cara menghubungkan kode tersebut dengan obyek yang diwakili dengan kodenya. 2. Harus unik Kode harus unik untuk masing-masing item yang diwakilinya. 3. Harus fleksibel Kode harus fleksibel sehingga memungkinkan perubahan-perubahan atau penambahan item baru dapat tetap diwakili oleh kode. 4. Harus efisien Kode harus efisien sependek mungkin, selain mudah diingat juga akan efisien bila direkam disimpan diluar komputer. 5. Harus konsisten Kode harus konsisten dengan kode yang telah digunakan 6. Harus standardisasi
18 Kode harus standardisasi untuk seluruh tingkatan dan departemen dalam organisasi. 7. Spasi hindari Spasi didalam kode sebaiknya dihindari, karena dapat menyebabkan kesalahan didalam menggunakannya. 8. Hindari karakter yang mirip Karakter-karakter yang hampir serupa bentuk dan bunyi pengucapannya sebaiknya tidak digunakan dalam kode. 9. Panjang kode harus sama 2.2.4 HIPO (Hierarchy Input Procces Output) Menurut Mustakini (2016:787) menyimpulkan bahwa HIPO (Hierarchy Input Process Output) merupakan metodologi yang dikembangkan dan didukung oleh IBM. Akan tetapi sekarang, HIPO juga banyak digunakan sebagai alat disain dan teknik dokumentasi dalam siklus pengembangan sistem. HIPO dapat digunakan sebagai alat pengembangan sistem dan teknik dokumentasi program dan penggunaan HIPO ini mempunyai sasaran utama sebagai berikut ini: 1. Untuk menyediakan suatu struktur guna memahani fungsi-fungsi dari sistem. 2. Untuk lebih menenkankan fungsi-fungsi yang harus diselesaikan oleh program, bukannya menunjukkan statemen-statemen program yang digunakan untuk melaksanakan fungsi tersebut.
19 3. Untuk menyediakan penjelasan yang jelas dari input yang harus digunakan dan output yang harus dihasilkan oleh masing-masing fungsi pada tiap-tiap tingkatan dari diagram-diagram HIPO. 4. Untuk menyediakan output yang tepat dan sesuai dengan kebutuhankebutuhan pemakai. 2.2.5 Diagram Alir Data (Flowchart) Menurut Mustakini (2016:795) bahwa Flowchart adalah bagan (chart) yang menunjukan alir (flow) didalam program atau prosedur sistem secara logika. Menurut Mustakini (2016:796) bentuk-bentuk flowchart yang sering digunakan didalam proses pembuatan program komputer antara lain: 1. Bagan Alir Sistem (Systems Flowchart) Merupakan bagan yang menunjukan arus pekerjaan secara keseluruhan dari sistem. 2. Bagan Alir Dokumen (Document Flowchart) Disebut juga bagan alir formulir (form flowchart) atau paperwork flowchart merupakan bagan alir yang menujukkan arus dari laporan dan formulir termasuk tembusan-tembusannya. 3. Bagan Alir Skematik (Schematic Flowchart) Merupakan bagan alir yang mirip dengan bagan alir sistem, yaitu untuk menggambarkan prosedur didalam sistem. 4. Bagan Alir Program (Program Flowchart) Merupakan bagan yang menjelaskan secara rinci langkah-langkah dari proses program. 5. Bagan Alir Proses (Process Flowchart)
20 Merupakan bagan alir yang banyak digunakan diteknik industri. Bagan alir ini juga berguna bagi analisis sistem untuk menggambarkan proses dalam suatu prosedur. 2.2.6 Pengujian (Black-Box) Menurut Pressman (2010) Black-Box testing berfokus pada persyaratan fungsional perangkat lunak yang memungkinkan engineers untuk memperoleh set kondisi input yang sepenuhnya akan melaksanakan persyaratan fungsional untuk sebuah program. Black-Box testing berusaha untuk menemukan kesalahan dalam kategori berikut: 1. Fungsi yang tidak benar atau fungsi yang hilang 2. Kesalahan antarmuka 3. Kesalahan dalam struktur data atau akses database eksternal 4. Kesalahan perilaku (behavior) atau kesalahan kinerja