7 bergabung sun microsystem - repository.bsi.ac.id · bisa digunakan, diantaranya notepad,...

15
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 pengujia nnya (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

Upload: others

Post on 01-Dec-2020

0 views

Category:

Documents


0 download

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.