Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
7
BAB II
LANDASAN TEORI
2.1 Konsep Dasar Program
Berisi tentang teori-teori yang berhubungan dengan definisi program, bahasa
pemrograman, basis data serta peralatan pendukung (tools system) yang digunakan
sebagai landasan.
2.1.1 Program
Menurut Kadir, (2012:2) Program adalah kumpulan instruksi yang digunakan
untuk mengatur komputer agar melakukan suatu tindakan tertentu. Tanpa program,
komputer sesungguhnya tidak dapat berbuat apa-apa. Itulah sebabnya sering dikatakan
bahwa komputer mencakup tiga aspek penting. Hal ini berupa perangkat keras
(hardware), perangkat lunak (software), yang dalam hal ini berupa program, dan
perangkat akal (brainware) atau orang yang berperan terhadap operasi komputer
maupun pengembangan perangkat lunak. Dengan kata lain, program merupakan salah
satu bagian penting pada komputer, yang mengatur komputer agar melakukan tindakan
yang sesuai dengan yang dikehendaki oleh pembuatnya.
2.1.2 Bahasa Pemograman
Menurut Kadir, (2012:2) Bahasa pemograman dapat dianalogikan dengan bahasa
yang digunakan manusia (bahasa manusia). Sebagaimana diketahui, ada bermacam-
macam bahasa manusia, seperti bahasa Inggris, bahasa Indonesia dan bahasa Batak.
8
Kumpulan instruksi dalam bahasa manusia yang berupa sejumlah kalimat dapat
mengerjakan suatu instruksi menurut program. Dalam konteks pemograman, terdapat
sejumlah bahasa pemograman seperti Pascal C, dan BASIC.
1. Java
Menurut Kadir, (2012:56) mengatakan bahwa Java adalah bahasa pemograman
yang terkenal. Java banyak digunakan untuk membangun program, dirilis pertama kali
pada tahun 1995 oleh Sun Microsystems. Penciptanya adalah James Gosling.
2. Netbeans IDE
Menurut Sugiarti (2018:6) Netbeans merupakan IDE yang ditujukan untuk
memudahkan pemrograman Java. Dalam Netbeans, pemrograman dilakukan berbasis
visual. Persis seperti IDE lain, misalnya Borland Delphi dan Microsoft Visual Studio.
Untuk membuat dialog atau user-interface, kita tidak perlu membuat teks program
secara manual baris per baris, tetapi cukup klik pada component-pallete.
Sedangkan Menurut Faizal dan Irnawati (2015:5) dalam (Handayani et al., 2018)
menerangkan NetBeans IDE adalah sebuah lingkungan pengembangan sebuah kakas
untuk memrogram menulis, mengompilasi, mencari kesalahan dan menyebarkan
program.
2.1.3 Basis Data
Menurut (Fathansyah, 2015) Basis Data terdiri atas 2 kata, yaitu Basis dan Data.
Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat
bersarang/berkumpul. Sedangkan Data adalah representasi fakta dunia nyata yang
mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang,
9
hewan, peristiwa, konsep, keadaan dan sebagainya, yang direkam dalam bentuk angka,
huruf, simbol teks, gambar, bunyi, atau kombinasinya.
Basis Data sendiri dapat didefinisikan dalam sejumlah sudut pandang seperti :
1) Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi
sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.
2) Kumpulan data yang saling berhubungan yang disimpan secara bersama
sedemikian rupa dan tanpa pengulangan (redundansasi) yang tidak perlu, untuk
memenuhi berbagai kebutuhan.
3) Kumpulan file/tabel/arsip yang saling berhubungan yang disimpan dalam media
penyimpanan elektronis.
Sedangkan menurut Pahlevi (2013:1) dalam (Supriyatna & Khoirun Nisa, 2015)
“Basis Data (database) adalah sekumpulan data yang saling berhubungan secara logis
dan terorganisir dengan baik”.
Sedangkan Menurut (Sukamto & Shalahuddin, 2015:43) “Sistem basis data adalah
sistem terkomputerisasi yang tujuan utamanya adalah memelihara data yang sudah
diolah atau informasi dan membuat informasi tersedia saat dibutuhkan”. Pada intinya
basis data adalah media untuk menyimpan data agar dapat diakses dengan mudah dan
cepat.
1. MySQL (My Structured Query Language)
Menurut Mustakini dalam (Agus, Sarkawi, & Oktaviani, 2018) MySQL (My
Structured Query Language) adalah “Jenis database server yang sangat populer”.
10
MySQL termasuk jenis RDBMS (Relational Database Management System), itulah
sebabnya istilah seperti table, baris dan kolom digunakan pada MySQL.
Sedangkan Menurut Sibero (2013:97) dalam (Supriyatna & Khoirun Nisa, 2015)
“MySQL atau dibaca “My Sekuel” dengan suatu RDBMS (Relational Database
Management System) merupakan aplikasi sistem yang menjalankan fungsi pengolahan
data. MySQL sendiri pertama dikembangkan oleh MySQL AB yang kemudian diakuisisi
oleh Sun Microsystem dan terakhir dikelola oleh Oracle Coorporation.
2. PHPMyadmin
Menurut Mustakini dalam (Agus et al., 2018) PHPMyadmin adalah “Perangkat
lunak bebas yang ditulis dalam bahasa pemprograman PHP yang digunakan untuk
menangani administrasi MySQL melalui word wide web”. PHPMyadmin mendukung
berbagai operasi MySQL, diantaranya mengelola basis data, tabel-tabel, fields, relasi,
indeks, users, permissions dan lain-lain.
Sedangkan Menurut Rahman (2013:21) dalam (Supriyatna & Khoirun Nisa, 2015)
“PHPMyadmin adalah sebuah software berbasis pemrograman PHP yang dipergunakan
sebagai administrator MySQL melalui browser (web) yang digunakan untuk
managementdatabase”.
3. XAMPP
Menurut Mustakini dalam (Agus et al., 2018) XAMPP adalah “Singkatan dari X
(empat system operasi apa pun), Appache, MySQL, PHP dan Perl”. XAMPP adalah tool
yang menyediakan paket perangkat lunak dalam satu buah paket. Dalam paket XAMPP
sudah terdapat Appache (webserver). MySQL (database), PHP (server side seripting),
11
Perl, FTP server, PHPMyAdmin dan berbagai pustaka bantu lainnya. Dengan Meng-
Install XAMPP, maka anda tidak perlu lagi melakukan instalasi dan melakukan
konfigurasi web server appache, PHP dan MySQL secara manual.XAMPP akan otomatis
menginstalasi dan mengkonfigurasi untuk anda.
Sedangkan Menurut Yudhanto dan Agus Purbaya (2014:11) dalam (Supriyatna &
Khoirun Nisa, 2015) “XAMPP merupakan program paket PHP dan MySQL berbasis
opensource yang saat ini merupakan andalan para programmer PHP dalam melakukan
programming dan melakukan testing hasil programnya”.
2.1.4 Model Pengembangan Perangkat Lunak
Menurut (Sukamto & Shalahuddin, 2015:28) 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 gambar model air terjun :
Sumber: (Sukamto & Shalahuddin, 2015:29)
Gambar II.1
Ilustrasi model waterfall
12
1. Analisis 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 computer sesuai dengan desain yang telah dibuat pada tahap desain.
4. Pengujian
Pengujian fokus pada perangkat lunak secara dari segi lojik dan fungsional dan
memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk
meminimalisir kesalahan (eror) 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 bisa terjadi karena adanya kesalahan yang
13
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, tapi tidak untuk membuat perangkat lunak baru.
2.2 Tools Program
Peralatan pendukung (Tools System) merupakan alat yang digunakan untuk
menggambarkan bentuk logika model dari suatu sistem dengan menggunakan simbol-
simbol, lambang-lambang, diagram-diagram yang menunjukan secara tepat arti dan
fungsinya.
2.2.1 Entity Relationship Diagram (ERD)
Menurut (Sukamto & Shalahuddin, 2015:50) Pemodelan awal basis data yang
paling banyak digunakan adalah menggunakan Entity Relationship Diagram (ERD).
ERD dikembangkan berdasarkan teori himpunan dalam bidang metematika. ERD
digunakan untuk pemodelan basis data relasional. Sehingga jika penyimpanan basis data
menggunakan OODBMS maka perancangan basis data tidak perlu menggunakan ERD.
ERD memiliki beberapa aliran notasi seperti notasi chen (dikembangkan oleh Peter
Chen), Barker (dikembangkan oleh Richard Barker, Ian Palmer, Harry Ellis), notasi
Crow’s Foot, dan beberapa notasi lain. Namun yang banyak digunakan adalah notasi
dari Chen. Berikut adalah simbol-simbol yang digunakan pada ERD dengan notasi chen
:
14
Simbol Deskripsi
Entitas/entity
Entitas merupakan data inti yang akan
disimpan; bakal table pada basis data;
benda yang memiliki data dan harus
disimpan datanya agar dapat diakses oleh
aplikasi komputer; penanaman entitas
biasanya lebih ke kata benda dan belum
merupakan nama tabel
Atribut
Field atau kolom data yang butuh
disimpan dalam suatu entitas
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)
Atribut multinilai / multivalue
Field atau kolom data yang butuh
disimpan dalam suatu entitas yang dapat
memiliki nilai lebih dari satu
Relasi
Relasi yang menghubungkan antar
entitas; biasanya diawali dengan kata
kerja
Nama_entitas
Nama_atribut
Nama_kunci primer
Nama_atribut
Nama_relasi
15
Asosiasi / association
N
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 dengan
kardinalitas. Misalkan ada kardinalitas ¹
ke N atau sering disebut dengan one to
many menghubungkan entitas A dan
entitas B maka
Sumber : (Sukamto & Shalahuddin, 2015:50)
Tabel II.1
Simbol-simbol ERD notasi chen
ERD biasanya memiliki hubungan binary (satu relasi menghubungkan dua buah entitas).
Beberapa metode perancangan ERD menoleransi hubungan relasi ternary (satu relasi
menghubungkan tiga buah relasi) atau N-ary (satu relasi menghubungkan banyak
entitas), tapi banyak metode perancangan ERD yang tidak mengizinkan hubungan
ternary atau N-ary. Berikut adalah bentuk hubungan relasi dalam ERD :
Nama Gambar
Binary
Ternary
E1 R1 E2
E1 E2
E3
R1
16
N-ary
Sumber : (Sukamto & Shalahuddin, 2015:50)
Tabel II.2
Bentuk-bentuk hubungan relasi dalam ERD
Sedangkan Menurut Yasin dalam (Puspitasari, Studi, & Informatika, 2016)
Entity Relationship Diagram (ERD) adalah suatu rancangan atau bentuk hubungan suatu
kegiatan di dalam sistem yang berkaitan langsung dan mempunyai fungsi di dalam
proses tersebut. ERD adalah suatu pemodelan dari basis data relasional yang didasarkan
atas persepsi di dalam dunia nyata, dunia ini senantiasa terdiri dari sekumpulan objek
yang saling berhubungan antara satu dengan yang lainnya. Suatu objek disebut entity
dan hubungan yang dimilikinya disebut relationship. Suatu entity bersifat unik dan
memiliki atribut sebagai pembeda dengan entity lainnya.
2.2.2 Logical Relation Structure (LRS)
Menurut Mustakini dalam (Agus et al., 2018) LRS (Logical Relation Structure)
adalah “Sebuah model sistem yang digambarkan dengan sebuah diagram ERD (Entity
Relationship Diagram) akan mengikuti pola atau aturan permodelan tertentu dalam
E2
E1 R1 E3
E4
17
kaitannya dengan konvensi ke LRS”. Beberapa tipe record digambarkan dengan kotak
empat persegi panjang dengan nama yang unik. LRS juga terdiri dari hubungan antara
tipe record. Salah satu metode pembuatan LRS yaitu dimulai dengan membuat ERD
kemudian konversi ke dalam LRS.
Sedangkan menurut Frieyadie dalam (Pratmanto, Fatakhudin, & Pendahuluan,
2017)“LRS merupakan hasil dari pemodelan Entity Relational Ship (ER) beserta
atributnya sehingga bisa terlihat hubungan-hubungan antar entitas”.
Dalam pembuatan LRS terdapat tiga hal yang dapat mempengaruhi yang meliputi:
1. Jika tingkat hubungan (cardinality) satu pada satu (one-to-many), maka
digabungkan dengan entitas yang lebih kuat (strong entity), atau digabungkan
dengan entitas yang memiliki atribut yang lebih sedikit.
2. Jika tingkat hubungan (cardinality) satu pada banyak (one-to-many), maka
hubungan relasi atau digabungkan dengan entitas yang tingkat hubungannya
banyak.
3. Jika tingkat hubungan (cardinality) banyak pada banyak (many-to-many), maka
hubungan relasi tidak akan digabungkan dengan entitas manapun, melainkan
menjadi sebuah LRS.
2.2.3 Pengkodean
Menurut Mustakini dalam (Agus et al., 2018) Pengkodean adalah “Kode
digunakan untuk tujuan mengklarifikasikan data, memasukkan data ke dalam komputer
dan untuk mengambil bermacam-macam informasi yang berhubungan dengannya”.
18
Kode dapat dibentuk dari kumpulan angka, huruf dan karakter-karakter khusus
(misalnya %, /, -,$, #, &, :, @ dan lain sebagainya). Angka merupakan simbol yang
banyak digunakan pada sistem kode. Akan tetapi, kode yang berbentuk angka yang lebih
dari 6 digit akan sangat sulit untuk diingat. Kode numerik (numeric code) menggunakan
10 macam kombinasi angka di dalam kode. Kode alphabetic (alphaberic code)
menggunakan 26 kombinasi huruf untuk kodenya. Kode alphanumerik
(alphanumericcode) merupakan kode yang menggunakan gabungan angka, huruf dan
karakter-karakter khusus. Meskipun kode numeric, alphabetik dan alphanumerik
merupakan kode yang paling banyak digunakan di dalam sistem informasi, tetapi kode
yang lain juga mulai banyak digunakan, seperti misalnya kode batang (bar code). Ada
beberapa macam tipe dari kode yang dapat digunakan dalam sistem informasi,
diantaranya :
1) Kode Mnemonik (Mnemonik Code)
Kode mnemonik dibuat dengan dasar singkatan atau pengambilan sebagian
karakter dari item yang akan diwakili oleh item tersebut agar mudah diingat.
Misalnya : akun harta dengan kode “A”, akun hutang dengan kode “H”.
2) Kode Urut (Squential Code)
Kode urut disebut juga kode seri (serial code) yang merupakan kode dengan nilai
urut antara satu kode dengan kode berikutnya. Misalnya : dimulai dari nomor 1,2,3
dan seterusnya.
3) Kode Blok (Block Code)
Kode Blok (Block Code) Mengklasifikasikan item kedalam blok tertentu yang
mencerminkan satu klasifikasi tertentu atas dasar pemakaian maksimal yang
19
diharapkan. Misalnya : nomor akun biaya adalah 626, digit pertama menunjukkan
kode biaya operasional.
4) Kode Kelompok (Group Code)
Kode yang berdasarkan field-field dan tiap-tiap field kode mempunyai arti sendiri
5) Kode Desimal (Decimal Code)
Kode desimal mengklasifikasikan kode atas dasar 10 unit angka desimal yang
dimulai dari angka 0 sampai dengan angka 9 atau angka 00 sampai dengan angka
99 tergantung dari banyaknya kelompok.
Di dalam merancang suatu kode harus diperhatikan beberapa hal yaitu :
1. Harus mudah diingat
Supaya kode mudah diingat, maka dapat dilakukan dengan cara menghubungkan
kode tersebut dengan obyek yang diwakili dengan kodenya. Misalnya QGX328
untuk mata kuliah sistem informasi akan sangat sulit untuk diingat. Kode yang
terlalu panjang sebaiknya dipecah menjadi bagian-bagian yang lebih pendek.
Contoh kode 033614625035 menjadi 033-614-625-035.
2. Harus unik
Kode harus unik untuk masing-masing item yang diwakilinya. Unik berarti tidak
ada yang sama.
3. Harus fleksibel
Kode harus fleksibel sehingga memungkinkan perubahan atau penambahan item
baru dapat diwakili oleh kode.
20
4. Harus efisien
Kode harus sependek mungkin, selain mudah diingat juga akan efisien bila
direkam disimpanan luar komputer. Misalnya panjang dari kode cukup sepanjang
4 digit saja dan tidak akan efisien bila dipergunakan kode lebih dari 4 digit.
5. Harus konsisten
Kode harus konsisten dengan kode yang telah dipergunakan. Misalnya perusahaan
hanya membeli barang dagangan dari seorang pemasok (supplier) saja, maka dapat
dipergunakan kode-kode barang yang sudah dipergunakan oleh pemasok.
6. Harus distandarisasikan
Kode harus distandarisasikan untuk seluruh tingkatan dan departemen dalam
organisasi. Kode yang tidak standar akan mengakibatkan kebingungan, salah
pengertian dan cenderung dapat terjadi kesalah pemakaian bagi yang
menggunakan kode tersebut.
7. Spasi harus dihindari
Spasi dalam kode sebaiknya dihindari, karena dapat menyebabkan kesalahan
didalam menggunakannya.
8. Hindari karakter yang mirip
Hindari karakter yang mirip, serupa dan bunyi pengucapan sebaiknya tidak
digunakan kode.
9. Panjang kode harus sama Masing-masing kode harus mempunyai panjang yang
sama.
21
2.2.4 HIPO (Hirarchy Plus Input Proses Ouput)
Menurut (Trisyanto, 2017:82) HIPO (Hirarchy Plus Input Proses Output)
merupakan metodologi yang dikembangkan dan didukung oleh IBM. HIPO sebenarnya
adalah alat dokumentasi program. Akan tetapi sekarang, HIPO juga banyak digunakan
sebagai alat desain dan teknik dokumentasi dalam siklus pengembangan sistem. HIPO
berbasis pada fungsi, yaitu tiap-tiap modul di dalam sistem digambarkan oleh fungsi
utamanya.
Fungsi-fungsi dari sistem digambarkan oleh HIPO dalam tiga tingkatan. Untuk
masing-masing tingkatan digambarkan dalam bentuk diagram tersendiri. Dengan
demikian HIPO menggunakan tiga macam diagram untuk masing-masing tingkatannya,
yaitu sebagai berikut ini:
1. Visual Table Of Contents (VTOC)
Diagram ini menggambarkan hubungan dari fungsi-fungsi di sistem secara
berjenjang.
Sumber : (Trisyanto, 2017:84)
Gambar II.2
Ilustrasi Visual Table Of Contents
22
2. Overview Diagrams
Overview Diagrams menunjukkan secara secara garis besar hubungan dari input,
proses dan output. Bagian input menunjukkan item-item data yang akan
digunakan oleh bagian proses. Bagian proses berisi sejumlah langkah-langkah
yang menggambarkan kerja dari fungsi. Bagian ouput berisi dengan item-item
data yang dihasilkan atau dimodifikasi oleh langkah-langkah proses.
3. Detail Diagrams
Detail Diagrams merupakan diagram tingkatan yang paling rendah di diagram
tingkatan yang paling rendah di diagram HIPO. Digram ini berisi dengan
elemen-elemen dasar dari paket yang menggambarkan secara rinci kerja dari
fungsi.
Sedangkan Menurut (Hartono, 2017) dalam (Rosyida & Riyanto, 2019) HIPO
(Hierarchy plus Input-Proses-Output) adalah alat dokumentasi program. Akan tetapi
sekarang, HIPO (Hierarchy plus Input-Proses-Output) juga banyak digunakan sebagai
alat desain dan teknik dokumentasi dalam siklus pengembangan sistem.
2.2.5. Diagram Alir Program (Flowchart)
1. Pengertian
Menurut Suarga, (2012:9) “Flowchart adalah untaian symbol gambar (chart) yang
menunjukkan aliran (flow) dari proses terhadap data”.
2. Bentuk Flowchart
Menurut Suarga, (2012:10) “Ada dua kategori symbol flowchart, yaitu program
flowchart dari sistem flowchart”.
23
a) Program Flowchart
Yaitu simbol-simbol Flowchart yang digunakan untuk menggambarkan
logik dari pemrosesan terhadap data.
b) Sistem Flowchart
Yaitu simbol-simbol peralatan sistem komputer yang digunkan untuk
menyatakan proses pengolahan data.
3. Tehnik Pembuatan
a. Genaral Way
Teknik pembuatan flowchart yang digunakan pada penyusunan logika dalam suatu
program pengulangan proses secara tidak langsung.
b. Iteration Way
Teknik pembuatan flowchart yang digunakan pada penyusunan logika program
yang cepat dan pengulangan proses yang terjadi bersifat langsung.
2.2.6 Implementasi dan Pengujian Unit
Menurut (Sukamto & Shalahuddin, 201:275) 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
24
dengan kasus benar dan kasus salah, misalkan untuk kasus proses login maka kasus uji
yang dibuat adalah :
a. Jika user memasukkan nama pemakai (username) dan kata sandi (password) yang
benar.
b. 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.