6
BAB II
LANDASAN TEORI
2.1.Konsep Dasar Program
Program adalah kata, ekspresi, penyataan atau kombinasinya yang disusun
dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk
menyelesaikan masalah yang diimplementasikan dengan menggunakan bahasa
pemrograman sehingga dapat dieksekusi oleh komputer.
Program menurut Nugroho dalam (Fridayanthie, 2015) mengemukakan
bahwa:
“Program dapat diartikan suatu cara baru dalam berfikir serta berlogika untuk
menghadapi masalah-masalah yang dicoba atasi dengan bantuan komputer”.
Bahasa pemrograman merupakan notasi untuk memberikan perintah secara tepat
program komputer. Berbeda dengan bahasa, misalkan Bahasa Indonesia dan
Inggris yang merupakan bahasa alamiah (natural language), sintaksis dan
semantik bahasa pemrograman komputer ditentukan secara jelas dan terstruktur,
sehingga bahasa pemrograman juga disebut sebagai bahasa formal (formal
language).”
2.1.1. Program
Menurut (Sahyar, 2016) “Program komputer adalah perintah-perintah atau
intruksi yang disusun berdasarkan algoritma dengan menggunakan bahasa
pemrograman untuk penyelesaian suatu masalah”.
Sedangkan menurut (Supardi, 2015) “Program sendiri pengertiannya adalah
algoritma yang ditulis dalam bahasa komputer”. Bahasa Pemrograman (Language
Programming) merupakan bahasa komputer yang digunakan dalam menulis
program. Berdasarkan tujuan aplikasinya bahasa pemrograman dikelompokkan
menjadi dua, yaitu :
7
1. Bahasa pemograman bertujuan khusus (Spesific Purpose Programming
Languange). Contohnya : COBOL, ForTran, Assembly, Prolog, dan lain-
lainnya.
2. Bahasa pemograman bertujuan umum (General Purpose Programming
Languange). Contohnya : Pascal, BASIC, C, C++, Java dan lain-lain.
Sedangkan kedekatan dengan bahasa manusia, bahasa pemograman dibagi
dua kelompok, yaitu :
1. Bahasa Tingkat Rendah (Low Level Languange). Contohnya : Assembly
2. Bahasa Tingkat Tinggi (High Level Languange). Contohnya : Pascal, PL/I,
Ada, COBOL, BASIC, ForTran, C, C++ dan lainnya.
2.1.2. Bahasa Pemrograman
Menurut (Sahyar, 2016) “Bahasa Pemograman adalah perangkat lunak yang
digunakan untuk menerjemahkan atau menuliskan algoritma dalam bentuk teks
perintah-perintah yang dapat dimengerti oleh komputer untuk menyelesaikan
suatu masalah”.
1.Java
Menurut (Mardiani, 2017) “Java adalah bahasa pemograman yang dapat
dijalankan di berbagai komputer, termasuk telepon genggam.”
Menurut (Sukamto & Shalahuddin, 2018) “Java merupakan bahasa
pemograman yang paling konsisten dalam mengimplementasikan paradigma
pemograman berorientasi objek.”
2.1.3. Basis Data
Menurut Dr.Said Mirza Pahlevi dalam (Hidayat, et al, 2017) “basis data
adalah sekumpulan data yang saling berhubungan secara logis dan terorganisir
dengan baik. Basis data merupakan salah satu komponen utama pendukung
8
program aplikasi yang melibatkan pengolahan data dapat dipastikan menggunakan
basis data sebagai tempat penyimpanan datanya”.
1.MySQL
Menurut Faisal dalam (Risdiansyah, 2017) mengemukakan bahwa:
“MySQL merupakan database server yang bersifat multiuser dan multi-
threaded. SQL adalah bahasa database standar yang memudahkan
penyimpanan, pengubahan dan akses informasi. Pada MySQL dikenal istilah
database dan tabel. Tabel adalah sebuah struktur data dua dimensi yang terdiri
dari baris-baris record dan kolom.”
Menurut Madcoms dalam (Risdiansyah, 2017) yaitu “MySQL merupakan
salah satu software database (basis data) open source yang dikembangkan
sebuah komunitas bernama MySQL AB dengan tujuan membantu user untuk
menyimpan data dalam tabel-tabel”.
Tabel terdiri atas field atau kolom yang mengelompokan data-data
berdasarkan kategori tertentu, seperti nama, alamat, nomor telepon, dan
sebagainya. Bagian lain dari tabel adalah record atau baris yang berisikan data
yang sebenarnya. MySQL maupun software database yang lain dapat
hubungkan oleh aplikasi-aplikasi yang berbeda, baik dari sisi tujuan maupun dari
sisi bahasa pemrograman yang digunakan oleh masing-masing aplikasi yang
bersangkutan. Ada empat instruksi dasar yang digunakan dalam sql (structured
query language), yaitu :
a. Select Digunakan untuk menampilan data yang telah ada atua tersimpan.
b. Insert Digunakan untuk menambahkan data yang baru kedalam database.
c. Update Digunakan untuk mengubah data yang telah disimpan sebelumnya
pada database.
d. Delete Digunakan untuk menghapus data yang telah ada pada database.
9
2.PhpMyAdmin
Menurut Madcoms dalam (Hidayat et al., 2017) mengemukakan bahwa:
“PhpMyAdmin adalah sebuah aplikasi open source yang berfungsi untuk
memudahkan manajemen MySQL. PhpMyAdmin dapat membuat database,
membuat table, menginsert, menghapus dan mengupdate data dengan GUI dan
terasa lebih mudah, tanpa perlu mengetikkan perintah SQL secara manual”.
Karena berbasis web, maka PhpMyAdmin dapat dijalankan dibanyak Operating
System, selama dapat menjalankan web server dan MySQL.
3.Xampp
Menurut Aditya dalam (Pratiwi & Arifin, 2017) mengemukakan bahwa:
“XAMPP adalah perangkat lunak bebas yang mendukung banyak sistem operasi,
merupakan kompilasi dari beberapa program: fungsinya adalah sebagai server
yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server,
MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa
pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat
sistem operasi apapun), Apache, MySQL, PHP dan Perl. Program ini tersedia
dalam GNU (General Public License dan bebas). Merupakan web server yang
mudah digunakan yang dapat melayani tampilan halaman web yang dinamis”.
2.1.4. Model Pengembangan Perangkat Lunak
Metode yang digunakan pada pada pengembangan perangkat lunak ini
menggunakan model Waterfall Menurut Prayitno & Safitri dalam (Priyadi &
Lestari, 2018) yang terbagi menjadi empat tahapan, yaitu:
Sumber (Puspitasari, 2016)
Gambar II.1
Rancangan Waterfall
10
1.Analisa
Analisa kebutuhan perangkat lunak Proses pengumpulan kebutuhan dilakukan
secara intensif untuk mespesifikasikan kebutuhan perangkat lunak agar dapat
dipahami perangkat lunak seperti apa yang dibutuhkan oleh user. Spesifikasi
kebutuhan perangkat lunak pada tahap ini perlu untuk 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 representasi desain
agar dapat diimplementasikan menjadi program pada 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 yang telah dibuat pada
tahap desain.
4.Pengujian
Pengujian fokus pada perangkat lunak secara segi logika 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.
2.2.Tools Program
2.2.1. ERD (Entity Relationship Diagram)
Menurut (Sukamto & Shalahuddin, 2018) “ERD pemodelan awal basis data
yang dikembangkan berdasarkan teori himpunan dalam bidang matematika”. ERD
11
digunakan untuk pemodelan basis data relasional. Komponen-komponen yang
digunakan dalam ERD terdiri dari :
1.Entitas/entity
Merupakan data inti yang akan disimpan, bakal tabel pada basis data, benda
yang memiliki data dan harus disimpan datanya agar dapat diakses oleh
aplikasi komputer, penamaan entitas biasanya lebih ke kata benda dan belum
merupakan nama tabel.
2.Atribut
Field atau kolom data yang butuh disimpan dalam suatu entitas.
3. Atribut kunci primer
Field atau kolom data yang butuh disimpan dalam suatu entitas dan
digunakan sebagai kunci akses record yang diinginkan, biasanya berupa id,
kunci primer dapat lebih dari satu kolom, asalkan kombinasi dari beberapa
kolom tersebut dapat bersifat unik (berbeda tanpa ada yang sama).
4.Atribut multi nilai / multivalue
Field atau kolom data yang butuh disimpan dalam suatu entitas yang dapat
memiliki nilai lebih dari satu.
5.Relasi
Relasi yang menghubungkan antar entitas, biasanya diawali dengan kata
kerja.
6.Asosiasi / association
Penghubung antara relasi dan entitas dimana dikedua ujungnya memiliki
multiplicity kemungkinan jumlah pemakaian. Kemungkinan jumlah
maksimum keterhubungan antara entitas satu dengan entitas yang lain disebut
12
kardinalitas. Misalkan ada kardinalitas 1 ke M atau sering disebut dengan one
to many menghubungkan entitas A dan entitas B.
Dalam pembuatan program, setelah membuat ER-Diagram langkah
selanjutnya adalah membuat LRS (Logical Record Structure).
Sumber (Fandi, et al, 2017)
Gambar II.2
Rancangan ERD
13
2.2.2. LRS (Logical Record Structure)
Menurut (Muhamad, 2014) “Logical Record Structure terdiri dari link-link
diantara tipe record. Link ini menunjukkan arah dari satu tipe record
lainnya.Banyak link dari LRS yang diberi tanda field-field yang kelihatan pada
kedua link tipe record”. Penggambaran LRS mulai dengan menggunakan model
yang dimengerti. Dua metode yang dapat digunakan, dimulai dengan hubungan
kedua model yang dapat dikonverensikan ke LRS, metode yang lain dimulai
dengan ER-diagram dan langsung dikonversikan ke LRS.
Sumber : (Sukamto & Shalahuddin, 2014)
Gambar II.3
Rancangan LRS
14
2.2.3. Pengkodean
Menurut (Melan, 2016) “Pengkodean sistem informasi merupakan proses
penulisan bahasa program agar sistem informasi tersebut dapat dijalankan oleh
mesin.”
Sumber : (Cahyadi Cepi, 2018)
Gambar II.4
Rancangan Pengkodean
Di dalam merancang suatu kode harus diperhatikan beberapa hal, yaitu
sebagai berikut :
1.Harus mudah di ingat
Agar kode mudah di ingat, 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 diwakili. Unik berarti tidak
ada kode yang kembar.
3.Harus fleksibel
Kode harus fleksibel sehingga memungkinkan perubahan-perubahan atau
penambahan item baru dapat tetap diwakili oleh kode.
15
4.Harus efisien
Kode harus sependek mungkin, sehingga mudah di ingat dan juga akan
efisien bila direkam disimpan diluar komputer.
5.Harus konsisten
Bilamana mungkin, kode harus konsisten dengan kode yang telah
dipergunakan.
6.Harus distandarisasi
Kode harus distandarisasi untuk seluruh tingkatan dan departemen dalam
organisasi. Kode yang tidak standar akan mengakibatkan kebingungan, salah
pengertian dan cenderung dapat terjadi kesalahan pemakaian begitu juga
dengan yang menggunakan kode tersebut.
7.Hindari spasi
Spasi di dalam kode sebaiknya dihindari, karena dapat menyebabkan
kesalahan dalam 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
Masing-masing kode yang sejenis harus mempunyai panjang yang sama.
Ada beberapa macam tipe kode yang dapat digunakan didalam sistem
informasi diantaranya yaitu :
1.Kode Mnemonik (Mnemonic Code)
Kode Mnemonik (Mnemonic Code) digunakan untuk tujuan supaya kode
mudah di ingat, dibuat dasar singkatan atau mengambil sebagian karakter dari
item yang yang akan diwakili dengan kode ini.
16
2. Kode Blok (Block Code)
Kode blok (Block Code) mengkasifikasikan item kedalam kelompok blok
tertentu yang mencerminkan satu klasifikasi tertentu atas dasar pemakaian
maksimum yang diharapkan.
2.2.4. HIPO (Hierarky Input Proses Output)
1.Pengertian
Merupakan alat dokumentasi program. Akan tetapi sekarang, banyak
digunakan sebagai alat desain dan teknik dokumentasi dalam siklus
pengembangan sistem yang berbasis pada fungsi, yaitu tiap-tiap modul di dalam
sistem digambarkan oleh fungsi utamanya. Menurut Fatta dalam (Risdiansyah,
2017) HIPO merupakan teknik untuk mendokumentasikan pengembangan suatu
sistem yang dikembangkan oleh IBM.
17
Sumber (Risdiansyah, 2017)
Gambar II.5
Rancangan HIPO
HIPO dapat digunakan sebagai alat pengembangan sistem dan teknik
dokumentasi program. Penggunaannya mempunyai beberapa sasaran, yaitu:
a. Untuk menyediakan suatu struktur guna memahami fungsi-fungsi dari
sistem.
b. Untuk lebih menekankan fungsi-fungsi yang harus diselesaikan oleh
program.
c. Untuk menyediakan penjelasan yang jelas dari input yang harus digunakan
dan output yang dihasilkan.
2.Tingkatan diagram HIPO
18
Paket HIPO terdiri dari 3 jenis diagram, yaitu diagram daftar isi visual (visual
table of content), diagram ringkas (overview diagram), dan diagram rinci (detail
diagram).
a. Daftar Isi Visual (DIV)
Diagram ini memuat semua modul yang ada dalam sistem berikut dan
nomornya, yang nantinya akan diperinci dalam diagram ringkas dan
diagram rinci. Dalam DIV juga bias dilihat fungsi-fungsi utama yang
menyusun sebuah sistem dan hubungan antar fungsi tersebut.
b. Diagram Ringkas
Diagram ringkas menerangkan input, proses, dan output dari sistem.
Diagram ringkas menggambarkan input dan output dari fungsi-fungsi yang
telah didefinisikan dalam daftar isi visual.
c. Diagram Rinci
Diagram rinci HIPO digunakan untuk memperinci input, proses, dan ouput
yang telah digambarkan dalam diagram ringkasan.
2.2.5. Diagram Alir Program (Flowchart)
1.Pengertian
Menurut (Wibawanto, 2017) “Flowchart adalah suatu bagan dengan simbol-
simbol tertentu yang menggambarkan urutan proses secara mendetail dan
hubungan antara suatu proses (instruksi) dengan proses lainnya dalam suatu
program”.
Menurut (Sukamto & Shalahuddin, 2018) “Flowchart dapat dimengerti dari
asal katanya adalah sebuah flow atau aliran dan chart atau bagan, sehingga
19
didapat jika dari asal katanya flowchart adalah sebuah bagan aliran dari sesuatu,
dan sesuatu itu dapat juga berupa aliran proses”.
Sumber (Risdiansyah, 2017)
Gambar II.6
Rancangan Flowchart
2.Bentuk Flowchart
a. Program Flowchart
Menurut (Mukhtar, 2018) “Program Flowchart merupakan diagram alir
yang menggambarkan urutan logika dari suatu prosedur pemecahan
masalah”.
b. Sistem Flowchart
20
Menurut (Mukhtar, 2018) “Sistem flowchart merupakan diagram alir
yang menggambarkan suatu sistem peralatan yang digunakan dalam proses
pengolahan data serta hubungan antar peralatan tersebut.
3. Teknik Pembuatan
Adapun teknik pembuatan program flowchart ini dibagi menjadi 2 (dua)
bagian yaitu sebagai berikut :
a. General Way
Teknik pembuatan flowchart yang lazim digunakan didalam penyusunan
logika suatu program, yang menggunakan proses pengulangan secara tidak
langsung (NON DIRECT LOOP).
b. Iteration Way
Teknik pembuatan flowchart dengan cara ini, biasanya dipakai untuk
logika program cepat serta bentuk permasalahan yang komplek, dimana
pengulangan proses yang terjadi bersifat langsung (DIRECT LOOP).
2.2.6. Implementasi dan Pengujian Unit
Menurut (Sukamto & Shalahuddin, 2018) “Black-Box Testing (pengujian
kotak hitam) yaitu menguji perangkat lunak dari segi spesifikasi fungsional tanpa
menguji desain dan kode program.
Pengujian dimaksudkan untuk mengetahui apakah fungsi-fungsi, masukan,
dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan.
Pengujian kotak hitam dilakukan dengan membuat kasus uji yang bersifat
mencoba semua fungsi dengan memakai perangkat lunak apakah sesuai dengan
spesifikasi yang dibutuhkan. Kasus uji yang dibuat untuk melakukan pengujian
kotak hitam harus dibuat dengan kasus benar dan kasus salah, misalkan untuk
kasus proses login maka kasus uji yang dibuat adalah :
21
1. Jika user memasukkan nama pemakai (username) dan kata sandi (password)
yang benar.
Jika user memasukkan nama pemakai (username) dan kata sandi (password)
yang salah, misalnya nama pemakai benar tapi kata sandi salah, atau sebaliknya,
atau keduanya salah.
Sumber (Ramdhani, Gaja, & Ratnawati, 2018)
Gambar II.7
Rancangan Black Box