7 bergabung sun microsystem - repository.bsi.ac.id · bisa digunakan, diantaranya notepad,...
TRANSCRIPT
6
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Program
A. Program
“Program adalah serangkaian instruksi yang ditulis untuk melakukan suatu
fungsi spesifik pada komputer, sedangkan pemograman adalah segala kegiatan
pembuatan program menggunakan komputer. Komputer membutuhkan keberadaan
program agar bisa menjalankan fungsinya sebagai komputer” (Kawengian, Mingkid,
2017).
B. Bahasa Pemograman
“Pada saat ini terdapat puluhan bahasa pemograman di antara lain bahasa rakitan
(assembly), Fortan, Cobol, Basic, Pascal, C++, Java, PHP, dan masih banyak lagi yang
lain”(Prasetio, 2015). Dalam pengertian lebih sempit, pemograman merupakan
pengkodean (coding atau program writing = penulisan program) dan pengujiannya
(testing) berdasarkan rancangan tertentu. Pemahaman lebih sempit ini sering
digunakan dalam pembuatan program terapan komersial yang membedakan antara
sistem analis yang bertanggung jawab menganalisa kebutuhan, perencanaan dan
perancangan program dengan pemograman.
1. Java
“Bahasa pemograman java merupakan salah satu dari sekian banyak bahasa
pemograman yang dapat dijalankan di sebagian sistem operasi termasuk telepon
gengam. Bahasa pemogram ini pertama kali dibuat oleh James Gosling saat masih
7
bergabung Sun Microsystem” (Harumy, 2018) Bahasa pemograman ini merupakan
pengembangan C++, saat ini java merupakan bahasa pemograman yang paling populer
digunakan, dan secara luas dimanfaatkan dalam pengembangan berbagai jenis
perangkat lunak aplikasi ataupun aplikasi berbasis web.
Kelebihan java dari bahasa pemograman yang lain adalah bisa dijalankan
diberbagai jenis sistem operasisehingga dikenal juga bahasa pemograman
multiplafrom, bersifat pemrograman berorientasi object (PBO), memiliki library yang
lengkap.
2. Netbeans IDE 8.2.
Dalam pembuatan aplikasi untuk penyusunan tugas akhir ini penulis
menggunakan aplikasi Netbeans IDE 8.2 dimana Netbeans merupakan bagian dari
IDE. IDE (Integrated Development Environment) IDE merupakan sebuah teks editor
untuk menuliskan script bahasa pemrograman Java. Ada beberapa teks edîtor yang
bisa digunakan, diantaranya Notepad, Jcreator, Netbeans, Eclips.
Netbeans IDE adalah IDE open source yang ditulis sepenuhnya dengan bahasa
pemogaman java menggunakan platfrom Netbeans. Netbeans IDE mendukung
pengembangan semua tipe aplikasi java (J2SE, web, EJB, dan aplikasi mobile) (Petojo,
2019). Fitur lainnya adalah sistem proyek berbasis Ant, control version, dan
refactoring. Sementara paket tambahannya, Netbeans Enterprise Pack mendukung
pengembangan aplikasi perusahaan java EE 5, meliputi alat desain visual SOA, skema
XML, web service dan pemodelan UML, Netbeans C/C++ pack mendukung proyek
C/C++.
8
3. Absensi
“Absensi adalah suatu pembatasan kehadiran, bagian dari pelaporan aktivitas
suatu institusi, suatu komponen institute itu sendiri yang berisi data-data kehadiran
yang disusun dan diatur sedemikian rupa sehingga mudah untuk dicari dipenggunakan
apabila sewaktu-waktu diperlukan oleh pihak yang berpentingan” (Safitri, 2018).
4. Mysql
MySQL digunakan untuk menyimpan data di dalam database dan memanipulas i
data-data yang diperlukan memanipulasi data tersebut berupa menambah, mengubah,
dan menghapus data yang berada di dalam database. Dalam pembuatan penyimpanan
data, penulis menggunakan local server database MySQLdengan menggunakan
paketXAMPP.Untuk mengeloladatabase, penulis akan menggunakan tool
phpMyAdmin dan fasilitas ini sudah tersedia di paket XAMPP.
“MySQL adalah sebuah perangkat lunak sistem managemen basis data SQL atau
yang dikenal dengan DBMS (database management system), database ini multi thread,
multi-user”(Petojo, 2019). MySQL sebenernya merupakan turunan salah satu konsep
utama dalam database sejak lama, yaitu SQL (Struktured Query Language. SQL
adalah sebuah konsep pengoperasian database, terutama untuk memilihan atau seleksi
dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan
mudah secara otomatis.
5. I-Report 5.6.0
“I-Report merupakan report designer visual yang dibangun pada JasperReport.
I-Report bersifat intuitif dan mudah digunakan pembangun laporan desaigner untuk
JasperReport dan tertulis dalam buku Java. Sebagai alternatif, terdapat tools I-Report
(dengan library JasperReport) yang dapat membantu dalam pembuatan laporan.
Library JasperReport sendiri merupakan Java Library (JAR) yang bersifatopen dan
9
dirancang untuk menambahkan kemampuan pelaporan (reporting capabilities) pada
aplikasi java” (Petojo, 2019).
C. Basis Data
Basis Data (database) dapat dibayangkan sebagai sebuah lemari arsif. Jika kita
memiliki sebuah lemari arsip dan berwenang/bertugas untuk mengelolanya, maka
kemungkinan besar kita akan melakukan hal-hal seperti: memberi sampul/map pada
kumpulan arsip yang disimpan, menentukan kelompok/jenis arsip, memberi
penomoran dengan pola tertentu yang nilainya unik pada setiap sampul/map, lalu
mendapatkan arsip-arsip tersebut dengan cara/urutan tertentu di dalam lemari.
“Basis Data memiliki 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, hewan, peristiwa, konsep, keadaan dan
sebagainnya yang direkam dalam bentuk angka, huruf, simbol teks, gambar, bunyi,
atau kombinasinya” (Fathansyah, 2015). Sistem basis data terdapat komponen-
komponen utama yaitu perangkat keras (hardware), sistem operasi (operating system),
basis data (database), program aplikasi (application program), database management
system (DBMD), pemakai (user), dan aplikasi perangkat lunak) lain .
1. Perangkat Keras
Perangkat keras (hardware) yang biasanya terdapat dalam sebuah sistem basis
data adalah komputer untuk sistem stand alone, sistem jaringan (network),
memori sekunder yang online (harddisk), memori sekunder yang offline (disk),
dan perangkat komunikasi untuk sistem jaringan.
10
2. Sistem Operasi
Sistem operasi merupakan program yang mengatifkan/memfungsikan sistem
komputer, mengendalikan seluruh sumber daya (resouce) dalam komputer dan
melakukan operasi-operasi dasar dalam komputer (operasi I/O, pengelolahan file
dan lainnya). Sejumlah sistem operasi yang banyak digunakan seperti: MS-DOS,
MS-Windows 3,1, MS-Windows 95 (untuk komuter stand-alone atau untuk
komputer client dalam sistem jaringan), atau Noval-Netware, MS-Windows NT,
Unix dan program pengelolahan basis data hanya dapat aktif (running) jika
sistem operasi yang dihendakinya (sesuai) telah aktif
3. Basis Data
Sebuah sistem basis data dapat memiliki beberapa data. Setiap basis data dapat
berisi/memiliki sejumlah objek basis data (seperti file/tabel, indeks, dan
lainnya). Di samping berisi/menyimpanan definisi struktur (baik untuk basis data
maupun objek-objeknya secara detaile).
4. Database Management System (DBMS)
Database Management System (DBMS) merupakan kumpulan program aplikas i
yang digunakan untuk membuat dan mengelola basis data. DBMS berisi suatu
koleksi data dan satu set program untuk mengakses data. DBMS merupakan
perangkat lunak (Software) yang menentukan bagaimana data tersebut
terorganisasi, disimpan, diubah dan diambil kembali. Perangkat lunak ini juga
menerapkan mekanisme pengamanan data, pemakaian data bersama, dan
konsistensi data.
5. Pemakai (user)
User atau pemakai adalah beberapa jenis atau tipe pemakai pada sistem basis
data, berdasarkan cara mereka berinteraksi pada basis data, diantaranya program
11
aplikasi, pemakai akhir, pemakai umum dan pemakai khusus.
6. Alikasi Perangkat Lunak Lain.
Aplikasi Perangkat Lunak Lain ini bersifat opsional. Artinya, ada/tidaknya
tergantung pada kebutuhan kita. DBMS yang kita gunakan lebih berperan dalam
penganisasian data dalam basis data, sementara bagi pemakai basis data
(khususnya yang menjadi end-user/naive-user) dapat dibuatkan/disediakan
program khusus/lain untuk melakukan pengisian, pengubahan dan pengambilan
data. Program ini ada yang sudah disediakan bersama dengan DBMS-nya, ada
yang harus dibuat sendiri dengan menggunakan aplikasi lain yang khusus untuk
itu (devolepment tools).
D. Model Pembangunan Perangkat Lunak
Model air terjun (waterfall) adalah “Model sekuensial linier (sequential Linear)
atau alur hidup klasik (classic life cycle). Model air terjun menyediakan pendekatan
alur hidup perangkat lunak secara sekuential atau terurut dimulai dari analisa, desain,
pengkodean, pengujian dan tahap pendukung (support)” (Sukamto & Shalahudd in,
2016).
Agar lebih cepat dan tepat dalam mendeskripsikan solusi dan mengembangkan
perangkat lunak, juga hasilnya mudah dikembangkan dan dipelihara, maka
pengembangan perangkat lunak memerlukan suatu metode khusus. Dalam
membangun perangkat lunak diperlukan sebuah cara atau metodologi yang dijadikan
sebagai panduan untuk mendapatkan perangkat lunak yang diharapkan. Pada
kesempatan ini penulis membangun perangkat lunak program absensi menggunakan
Metode Waterfall (air terjun).
12
Sumber : (Sukamto & Shalahuddin, 2016).
Gambar Waterfall II.1.
Ilustrasi Model Waterfall
1. Analisa Kebutuhan Perangkat Lunak
Proses pengumpulan kebutuham dilakukan secara intensif untuk
menspesifikasikan 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 antar muka, dan pengkodean. Tahap ini mentrans las i
kebutuhan perangkat lunak dari tahap analisa kebutuhan ke prepresentasi desain
agar dapat diimplementasikan menjadi program pada tahap selanjutnya. Desain
perangkat lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan.
13
3. Pembuatan Kode Program
Desain harus ditranslasikan ke dalam program perangkat lunak. Hasil dari tahap
ini adalah program komputer susai dengan desain yang telah dibuat pada tahap
desain.
4. Pengujian
Pengujian fokus pada perangkat lunak dari segi logic dan fungsional untuk
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) dan Pemeliharaan (Maintenance)
Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan
ketika sudah dikirim ke user. Perubahan bisa terjadi karena adanya kesalahan
yang muncul dan tidak terdeteksi saat pengujian atau perangkat lunak yang harus
beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan dapat
mengulangi proses pengembangan mulai dari analisa spesifikasi untuk
perubahan perangkat lunak yang sudah ada, tetapi tidak untuk membuat
perangkat lunak yang baru.
2.2. Peralatan Pendukung (Tool Program)
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. Adapun peralatan
pendukung (tools system) yang dijelaskan sebagai model sistem yang akan dirancang
adalah sebagai berikut :
14
A. Entity Relantionship Diagram (ERD)
“Model Entity Relantionship diperkenalkan pertama kali oleh P.P. Chan pada
tahun 1976. Model ini dirancang untuk menggambarkan persepsi dari pemakai dan
berisi objek–objek dasar yang disebut entitas dan hubungan antara entitas - entitas
tersebut yang disebut Relantionship” (Subiyantoro, 2014).
Pemodelan basis data yang paling banyak digunakan adalah Entity
Relantionship Diagram (ERD). ERD dikembangankan berdasarkan teori himpunan
dalam bidang matematika. ERD digunakan untuk pemodelan basis data relasiona l
sehingga jika penyimpanan basis data menggunakan OODBMS maka perancangan
basis data tidak perlu menggunakan ERD.
Sumber: (Subiyantoro, 2014).
Gambar II.2.
Entity Relationship Diagram
ERD juga menggambarkan hubungan antara satu entitas yang memiliki sejumlah
atribut dengan entitas yang lain dalam suatu sistem yang terintegrasi.
1. Entitas
Menunjukan obyek - obyek dasar yang terkait di dalam sistem. Obyek dasar
dapat berupa orang, benda atau hal lain yang keterangannya perlu disimpan
dalam basis data.
15
2. Relasi
Relasi atau hubungan adalah kejadian atau transaksi yang terjadi di antara dua
entitas yang keterangannya perlu disimpan dalam basia data.
3. Atribut
Atribut sering disebut juga sebagai properti (property), merupakan keterangan–
keterangan yang terkait pada sebuah entitas yang perlu disimpan sebagai basis
data.
4. Garis
Garis berfungsi sebagai penghubung antar relasi dengan entitas, relasi dan
entitas dengan atribut.
Menentukan kardinalitas, jumlah table dan Foreign Key (FK) sebagai berikut:
1. One-to-one
Yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling
banyak dengan satu entitas pada himpunan entitas B, dan begitu juga sebaliknya
setiap entitas pada himpunan entitas B berhubungan dengan paling banyak
dengan satu entitas pada himpunan entitas A.
2. One-to-many
Yang berarti setiap entitas himpunan entitas A dapat berhubungan dengan
banyak entitas pada hubungan entitas B, tetapi tidak sebaliknya, dimana setiap
entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu
entitas pada himpunan entitas A.
3. Many-to-many
Yang berarti setiap entitas pada himpunan entitas A berhubungan dengan paling
banyak dengan satu entitas pada himpunan entitas B, tetapi tidak sebaliknya,
16
dimana setiap entitas pada himpunan entitas A berhubungan dengan paling
banyak satu entitas pada himpunan entitas.
B. Logical Record Structure (LRS)
Logical Record Structure (LRS) adalah “Sebuah model sistem yang
digambarkan dengan sebuah diagram ERD (Entity Relationship Diagram) akan
mengikuti pola atau aturan pemodelan tertentu dalam kaitannya dengan konvensi ke
LRS” (Sarkawi, 2018).
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.
C. Pengkodean
Setiap data mempunyai kode yang berbeda satu sama lain. Kode berupa
kumpulan simbol khusus yang digunakan untuk membentuk sebuah data. Sekumpulan
simbol khusus yang digunakan untuk mewakili sebuah data atau kode data merupakan
sekumpulan bilangan atau angka yang memiliki aturan tertentu. Sistem bilangan yang
dipakai pada komputer adalah biner (2 simbol), octal (8 simbol), heksadesimal (16
simbol).
“ Bentuk lain adalah untuk efisiensi ruang penyimpanan dan cara untuk
ditempuh untuk menyatakan suatu data dalam bentuk lain itu adalah melalui
pengkodean (data coding)” (Fathansyah, 2015).
17
Suatu cara penggambaran himpunan simbol yang digunakan dalam komunikas i
data agar data yang dikirimkan oleh peralatan pengirim dapat diterima dan dimenger t i
oleh peralatan penerima.
Ada beberapa macam tipe dari kode yang dapat digunakan adalah:
1. Kode Mnemonik (Mnemonic Code)
Digunakan untuk tujuan supaya mudah diingat. Kode mnemonik dibuat dengan
dasar singkatan atau mengambil sebagian karakter dari item yang akan diwakili
dengan kode ini. Kebaikan dari kode ini adalah mudah diingat dan
kelemahannya adalah kode dapat terlalu panjang.
2. Kode Urut (Sequential Code)
Disebut juga dengan kode seri (serial code) merupakan kode yang nilainya urut
antara satu kode dengan kode berikutnya. Kebaikan dari kode ini adalah mudah
diterapkan kode ini unik dan baik untuk pengendalian karena kode yang hilang
dapat mudah diketahui sedangkan kelemahannya adalah tidak fleksibel bila
terjadi perubahan kode.
3. Kode Blok (Block Code)
Mengklasifikasikan item ke dalam kelompok blok tertentu yang mencerminkan
satu klasifikasi tertentu atas dasar pemakaian maksimum yang diharapkan.
Kebaikan kode ini adalah mudah diperluas dan kode dapat ditambah atau
dibuang sebagian sedangkan kelemahannya adalah tidak mudah diingat.
4. Kode Grup (Group Code)
Merupakan kode yang berdasarkan field-field dan tiap-tiap field kode
mempunyai arti. Kebaikan kode ini nilai dari kode mempunyai arti dan dapat
menunjukan jenjang data sedangkan kelemahannya kode dapat menjadi panjang.
18
5. Kode Desimal (Decimal Code)
Mengklasifikasikan kode atas dasar 10 unit angka decimal dimulai dari angka 0
sampai dengan angka 9 atau dari 00 sampai dengan 99 tergantung dari
banyaknya kelompok.
D. Diagram Alur Program (Flowchart)
Flowchart atau Diagram alur adalah “Diagram alur dapat menunjukan secara
jelas arus pengendalian suatu algoritma, yakni melaksanakan suatu rangkaian kegiatan
secara logis dan sistematis. Suatu diagram alur dapat memberi gambaran dua dimensi
berupa simbol-simbol grafis. Masing masing simbol telah ditetapkan lebih dahulu
fungsi dan artinya” (Sutabri, 2015). Simbol-simbol tersebut dipakai untuk
menunjukkan berbagai kegiatan operasi dan jalur pengendalian. Arti khusus dari
sebuah flowchat adalah simbol yang digunakan untuk mengambarkan urutan proses
yang terjadi di dalam suatu program komputer secara sistematis dan logis.
Flowchart diawali dengan penerimaan input dan diakhiri dengan penampilan
output. Flowchart merupakan suatu gambaran yang menjelaskan urutan :
1. Pembacaan Data.
2. Pemprosesan Data.
3. Pengambilan keputusan terhadap data.
4. Penyajian hasil pemrosesan data
Adapun tujuan Pembuatan Flowchart adalah:
1. Merancang sebuah algoritma awal suatu program.
2. Untuk dapat menunjukan secara jelas arus pengendalian suatu algoritma dengan
cara melaksanakan suatu rangkaian kegiatan secara logis dan sistematis.
19
3. Dapat memberikan gambaran dua dimensi yang berupa simbol - simbol grafis,
dimana masing–masing simbol mempunyai arti dan fungsinya sendiri.
4. Dengan simbol tersebut dipakai untuk menunjukan berbagai kegiatan operasi
dan jalur pengendaliannya.
Bentuk-bentuk diagram alur (flowchart) yang sering digunakan dalam proses
pembuatan proses komputer adalah sebagai berikut:
1. Program Flowchart
Simbol-simbol yang mengambarkan proses secara rinci dan detail antara
instruksi yang satu dengan instruksi yang lainnya. Dalam suatu program
komputer yang bersifat logis.
2. System Flowchart
Simbol-simbol yang mengambarkan urutan prosedur secara detail dalam suatu
sistem komputerisasi bersifat fisik.
3. Teknik Pembuatan Flowchart
Jenis flowchart yang sering digunakan adalah program flowchart teknik
pembuatan program flowchart ini dibagi menjadi 2 (dua) bagian, yaitu:
1. General Way
Tehnik pembuatan flowchart dengan cara ini lazim digunakan dalam menyusun
logika atau suatu program. Teknik ini menggunakan pengulangan proses secara
tidak langsung (Non-Direct-loop).
2. Interation Way
Tehnik pembuatan flowchart dengan cara ini biasanya dipakai untuk logika
program yang cepat dan juga bentuk permasalahan yang kompleks. Pengulangan
proses yang terjadi bersifat langsung (Direct-loop).
20
E. HIPO (Hierarky Input Proses Output)
“HIPO (Hierarky Input Proses Output) merupakan metodologi yang
dikembangkan dan didukung oleh IBM. Akan tetapi sekarang HIPO juga banyak
digunakan sebagai alat desain dan teknik dokumentasi dalam siklus pengemban gan
sistem” (Mustakini, 2014).
Sedangkan sasaran utama HIPO sebagai berikut:
1. Untuk menyediakan suatu struktur guna memahami fungsi- fungsi dari sistem
2. Untuk lebih menekankan fungsi-fungsi yang harus diselesaikan oleh program,
bukannya menunjukan elemen-elemen program yang digunakan untuk
melaksanakan fungsi tersebut.
3. Untuk menjelaskan 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 sesuati dengan kebutuhan pemakai
F. Implementasi dan Pengujian Unit
“Black Box Testing atau Pengujian Unit adalah metode pengujian perangkat
lunak yang menguji fungsional aplikasi yang bertentangan dengan struktur interna l
atau kerja. Metode uji dapat diterapkan pada semua tingkat pengujian perangkat lunak:
Unit, Integrasi, Fungsional, Sistem dan penerimaan” (Sukamto & Shalahuddin, 2016).
Blackbox Testing yaitu perangkat lunak dari segi spesifikasi fungsional tanpa menguji
desain dank ode program. Pengujian dimaksudkan untuk mengetahui apakah fungs i-
fungsi masukan dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang
dibutuhkan.