bab ii landasan teori · dan “data” adalah sinyal input untuk diolah menjadi informasi. f....
TRANSCRIPT
8
BAB II
LANDASAN TEORI
2.1. Konsep Dasar Sistem
Dalam mendefinisikan sistem, terdapat dua kelompok pendekatan dalam
sistem yaitu menekan kan pada prosedur dan menekankan pada elemen atau
komponen. Pengertian sistem dengan pendekatan prosedur dapat didefinisikan
sebagai kumpulan dari prosedur-prosedur yang mempunyai tujuan tertentu
(Jogiyanto. 2008:34). Sedangkan pengertian pendekatan sistem yang lebih
menekankan pada komponen sistem, merupakan kumpulan dari komponen yang
saling berhubungan satu dengan yang lainnya membentuk satu kesatuan untuk
mencapai tujuan tertentu (Jogiyanto. 2008: 34).
Dari pengertian diatas bisa disimpulkan bahwa, sistem adalah suatu
kesatuan yang terdiri atas beberapa komponen atau elemen yang saling
berhubungan atau saling terkait satu sama lain yang secara bersama dan mencapai
tujuan yang sama.
A. Sistem
1. Definisi sistem
Secara sederhana suatu sistem dapat diartikan sebagai suatu kumpulan atau
himpunan dari unsur, komponen atau variabel-variabel yang terorganisir,
saling berinteraksi, saling ketergantungan satu sama lainnya dan terpadu.
Sistem juga merupakan suatu kesatuan yang terdiri dari dua atau lebih
komponen atau subsistem yang berinteraksi untuk mencapai tujuan. Ada
9
beberapa pakar yang berlainan pendapat dalam mendefinisikan suatu sistem
namun tetap pada satu tujuan.
Menurut Hartono (2013:9) “Sistem adalah kumpulan dari berbagai bagian
atau elemen, yang saling berhubungan secara terorganisasi berdasarkan
fungsi-fungsinya, menjadi satu kesatuan”. Sedangkan menurut Taufiq
(2013:2) “Sistem adalah kumpulan dari sub-sub sistem abstrak maupun fisik
yang saling terintegrasi dan berkolaborasi untuk mencapai suatu tujuan
tertentu”.
Berdasarkan kedua definisi diatas, maka penulis menyimpulkan sistem adalah
sekelompok unsur yang saling terhubung satu sama lain yang berfungsi
bersama-sama untuk mencapai suatu tujuan tertentu.
2. Karakteristik Sistem
Menurut Sutabri (2012:10) “Model umum sebuah sistem adalah input, proses,
dan output. Hal ini merupakan konsep sebuah sistem yang sangat sederhana
sebab sebuah sistem dapat mempunyai beberapa masukan dan keluaran”.
Selain itu, sebuah sistem memiliki karakteristik atau sifat-sifat tertentu, yang
mencirikan bahwa hal tersebut bisa dikatakan sebagai suatu sistem adapun
karakteristik yang dimaksud adalah:
a. Komponen Sistem (Component)
Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi,
artinya saling bekerja sama membentuk satu kesatuan. Komponen-
komponen sistem tersebut dapat berupa suatu bentuk subsistem. Setiap
subsistem memiliki sifat dari sistem yang menjalankan suatu fungsi
tertentu dan mempengaruhi proses sistem secara keseluruhan. Suatu
10
sistem dapat mempunyai sistem yang lebih besar, yang disebut “Supra
Sistem”.
b. Batasan Sistem (Boundary)
Ruang lingkup sistem merupakan daerah yang membatasi antara sistem
dengan sistem yang lain atau sistem dengan lingkungan luarnya. Batasan
sistem ini memungkinkan suatu sistem dipandang sebagai satu kesatuan
yang tidak dapat dipisah-pisahkan.
c. Lingkungan Luar Sistem (Enviroment)
Bentuk apa pun yang ada di luar ruang lingkup atau batasan sistem yang
memengaruhi operasi sistem tersebut disebut lingkungan luar sistem.
Lingkungan luar sistem ini dapat bersifat menguntungkan dan dapat juga
bersifat merugikan sistem tersebut. Lingkungan luar menguntungkan
merupakan energi bagi sistem tersebut. Dengan demikian, lingkungan
luar tersebut harus ada harus tetap dijaga dan dipelihara. Lingkungan luar
merugikan harus dikendalikan. Kalau tidak, maka akan menganggu
kelangsungan hidup sistem tersebut.
d. Penghubung Sistem (Interface)
Media yang menghubungkan sistem dengan subsistem lain disebut
penghubung sistem atau interface. Penghubung ini memungkinkan
sumber-sumber daya mengalir dari suatu subsistem ke subsistem lain.
Bentuk keluaran dari satu subsistem akan menjadi masukan untuk
subsistem lain melalui penghubung tersebut. Dengan demikian, dapat
terjadi suatu integerasi sistem yang membentuk satu kesatuan.
11
e. Masukan Sistem (Input)
Energi yang dimasukkan ke dalam sistem disebut masukan sistem yang
dapat berupa pemeliharan (maintenance input) dan sinyal (signal input).
Contoh didalam suatu unit sistem komputer. “Program” adalah
maintenance input yang digunakan untuk mengoperasikan komputernya
dan “Data” adalah sinyal input untuk diolah menjadi informasi.
f. Keluaran Sistem (Output)
Hasil energi yang diolah dan diklasifikasikan menjadi keluaran yang
berguna. Keluaran ini merupakan masukan bagi subsistem yang lain.
Contoh, sistem informasi. Keluaran yang dihasilkan adalah informasi.
Informasi ini dapat digunakan sebagai masukan untuk pengambilan
keputusan atau hal-hal lain yang menjadi input bagi subsistem lain.
g. Pengolah Sistem (Proses)
Suatu sistem dapat mempunyai suatu proses yang akan mengubah
masukan menjadi keluaran. Contoh, sistem akuntansi. Sistem ini akan
mengolah data transaksi laporan-laporan yang dibutuhkan manajemen.
h. Sasaran Sistem (Objective)
Suatu sistem memiliki tujuan dan sasaran yang pasti dan bersifat
deterministic. Kalau sistem tidak memiliki sasaran, maka operasi sistem
tidak ada gunanya. Suatu sistem dikatakan berhasil bila mengenai sasaran
atau tujuan yang telah direncanakan.
12
3. Klasifikasi Sistem
Sistem dapat diklasifikasi dari beberapa sudut pandang. Menurut Yakub
(2012:4) pada buku Pengantar sistem Informasi, sistem dapat diklasifikasikan
dari beberapa sudut pandang, diantaranya:
a. Sistem tak tentu (probabilistic system)
Suatu sistem yang kondisi masa depannya tidak dapat diprediksikan
karena mengandung unsur probabilitas. Sistem arisan merupakan contoh
probabilistic system karena sistem arisan tidak dapat diprediksikan
dengan pasti.
b. Sistem abstrak (abstract system)
Sistem yang berupa pemikiran atau ide-ide yang tidak tampak secara
fisik. Sistem teologia yang berisi gagasan 17 tentang hubungan manusia
dengan Tuhan merupakan contoh abstract system.
c. Sistem fisik (physical system)
Sistem secara fisik, Sistem komputer, sistem akuntansi, sistem produksi,
sistem sekolah, dan sistem transportasi merupakan contoh physical
system.
d. Sistem tertentu (deterministic system)
Sistem yang beroperasi dengan tingkah laku yang dapat diprediksi,
interaksi antara bagian dapat dideteksi dengan pasti sehingga
keluarannya dapat diramalkan. Sistem komputer sudah diprogramkan,
merupakan contoh deterministic system karena program komputer dapat
diprediksi dengan pasti.
13
e. Sistem tertutup (close system)
Sistem yang tidak bertukar materi, informasi, atau energi dengan
lingkungan. Sistem ini tidak berinteraksi dan tidak dipengaruhi oleh
lingkungan, misalnya reaksi kimia dalam tabung terisolasi.
f. Sistem terbuka (open system)
Sistem yang berhubung dengan lingkungan dan dipengaruhi oleh
lingkungan. Sistem perdagangan merupakan contoh open sistem, karna
dapat di pengaruhi oleh sistem
B. Website
1. Definisi Website
World Wide Web (WWW) lebih dikenal dengan Web yang merupakan salah
satu layanan yang didapat oleh pemakai komputer, yang terhubungan ke
internet dengan fasilitas Hypertext untuk menampikan data berupa text,
gambar, suara, animasi, dan data multi media lainnya (Kustiyahningsih.
2011:5).
Halaman website biasanya berupa dokumen yang ditulis dalam format Hyper
Text Markup Language (HTML), yang bisa diakses melalui HTTP, HTTP
adalah suatu protokol yang menyampaikan berbagai informasi dari server
website untuk ditampilkan kepada para user atau pemakai melalui web
browser.
2. Jenis Website
Seiring dengan perkembangan teknologi informasi yang begitu
cepat, website juga mengalami perkembangan yang sangat berarti (Hidayat.
14
2010:3). Dalam pengelompokan jenis web, lebih diarahkan bedasarkan
kepada fungsi, sifat atau style dan bahasa pemrograman yang digunakan.
Adapun jenis-jenis website sebagai berikut:
a. Jenis-jenis web bedasarkan sifat atau style:
1) Website dinamis, merupakan sebuah website yang menyediakan
konten atau isi yang selalu berubah-ubah setiap saat. Bahasa
pemprograman yang digunakan antara lain PHP, ASP, NET dan
memanfaatkan database MySQL.
2) Website statis, merupakan website yang kontennya sangat jarang
berubah. Bahasa pemrograman yang digunakan adalah HTML dan
belum memanfaatkan database.
b. Berdasarkan pada fungsinya:
1) Personal website, merupakan website yang berisi informasi pribadi
seseorang.
2) Commercial website, merupakan website yang dimiliki oleh sebuah
perusahaan yang bersifat bisnis.
3) Government website, merupakan website yang dimiliki oleh instansi
pemerimtah, pendidikan, yang bertujuan memberikan pelayanan
kepada pengguna.
4) Non-profit Organization website, merupakan website yang dimiliki
oleh organisasi yang bersifat non-profit atau tidak bersifat bisnis.
15
c. Ditinjau dari segi bahasa pemrograman yang digunakan, website terbagi
atas:
1) Server Side, merupakan website yang menggunakan bahasa
pemrograman yang tergantung kepada tersedianya server. Seperti
PHP, ASP, .NET dan lain sebagainya. Jika tidak
ada server, website yang dibangun menggunakan bahasa
pemrograman di atas tidak akan berfungsi sebagaimana mestinya.
2) Client Side adalah website yang tidak membutuhkan server dalam
menjalankannya, cukup diakses melalui browser saja, misalnya
HTML.
C. Bahasa Pemprograman
Menurut Munir (2011:13) mengemukakan bahwa “Bahasa pemrograman
adalah bahasa computer yang digunakan dalam menulis program”. Bahasa
pemrograman ini merupakan suatu himpunan dari aturan sintak dan
semantik yang dipakai untuk mendefinisikan program komputer. Bahasa
pemrograman memungkinkan seorang programmer dapat menentukan secara
persis data mana yang akan diolah oleh komputer, bagaimana data ini akan
disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam
berbagai situasi.
Menurut tingkat kedekatan dengan mesin komputer, bahasa pemprogaraman
terdiri dari:
1. Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai
kode bahasa biner, contohnya 01100101100110.
16
2. Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan
( Assembly), yaitu memberikan perintah kepada komputer dengan memakai
kode-kode singkat (kode mnemonic), contohnya kode_mesin MOV, SUB,
CMP, JMP, JGE, JL, LOOP.
3. Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran
instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat
Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {,},?,<<,
>>, &&, ||.
4. Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi
berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for,
while, and, or, dsb. Komputer dapat mengerti bahasa manusia itu diperlukan
program compiler atau interpreter
Berikut bahasa pemprograman yang penulis gunakan dalam tugas akhir ini
diantaranya yaitu:
1. HTML (Hypertext Markup Language)
Menurut Kustiyahningsih (2011:13) menyimpulkan bahwa: “HTML
kependekan Hyper Text Markup Language. Dokumen HTML adalah text
file murni yang dapat dibuat dengan editor teks sembarang. Dokumen ini
dikenal sebagai web page. File-file HTML ini berisi instruksi-instruksi yang
kemudian diterjemahkan oleh browser yang ada di komputer client (user)
sehingga isi informasinya dapat di tampilkan secara visual di komputer
pengguna”.
a. HTML menentukan 2 fungsi:
1) Membentuk tata letak dokumen, dalam hal ini menentukan jenis
17
huruf, gambar, dan komponen dokumen lainnya.
2) Menentukan hubungan ke dokumen lain, HTML merupakan suatu
bahasa komputer yang termasuk dalam kategori SGML (Standart
Generalized Markup Language) dimana bentuknya merupakan file
standart ASCII yang berisi kode-kode untuk mengatur dokumen.
b. Kelebihan HTML (Hyper Text Markup Language) antara lain:
1) Merupakan bahasa pengkodean yang lintas platform (cross
platform), maksudnya HTML dapat digunakan pada berbagai jenis
mesin komputer yang berbeda dan berbagai macam sistem operasi
yang berbeda. Jadi bersifat fleksibel karena ditulis cukup dengan
menggunakan editor karakter ASCII.
2) Dapat disisipi gambar baik gambar statis atau dinamis (animasi)
termasuk menggunakan gambar untuk dijadikan hyperlink. Gambar
di sini digunakan untuk merujuk pada suatu halaman web, dimana
setiap titik-titik yang sudah didefinisikan berupa rectangular
(kotak), poligon (kurva tak beraturan) atau lingkaran digunakan
untuk ‘jump’ ke halaman lain, atau link ke halaman di luar web
yang bersangkutan.
3) Dapat disisipi animasi berupa Java Applet atau file-file animasi
dari Macromedia Flash atau Macromedia Shockwave (untuk
keperluan ini, browser harus memiliki plug-in khusus untuk
menjalankan file-file animasi ini).
4) Dapat disisipi bahasa pemrograman untuk mempercantik halaman
web seperti Javascript, VBScript, Active Server Pages, Perl, Tcl,
18
PHP dan sebagainya. Bukan merupakan bahasa pemrograman jadi
tidak memerlukan kompiler. Cara menjalankannya cukup dengan
menggunakan browser.
c. Kekurangan dari HTML (Hyper Text Markup Language) ini adalah:
1) Menghasilkan halaman yang statis, yang saya tahu untuk
memperoleh halaman yang dinamis harus menggunakan bahasa
pemrograman tertentu seperti Javascript atau VBScript dan animasi
seperti Flash atau Shockwave.
2) Memiliki tag-tag yang begitu banyak sehingga susah dipelajari
untuk yang masih awam.
3) Tidak dapat menghasilkan halaman yang interaktif. Interaktif di
sini maksudnya client dapat berinteraksi dengan server. Untuk
keperluan itu, HTML harus disisipi bahasa pemrograman yang
dapat menangani hal tersebut, contohnya Perl atau Tcl.
2. PHP (Hypertext Prepocessor)
Sebuah bahasa permogaram yang berjalan dalam sebuah web server
(server side). PHP diciptakan oleh programmer Unix dan Perl bernama
Rasmus Lerdoft pada bulan agustus-september 1994 (Raharjo. 2011:3).
Pada Awalnya, PHP merupakan kependekan dari Hypertext Prepocessor
(situs personal). Selanjutnya, Rasmus merilis kode sumber tersebut untuk
umum dan menanamkanya PHP/FI pada sekitar tahun 1995, dan
diperkenalkan kepada beberapa programmer pemula dengan alasan bahasa
yang digunakan oleh PHP cukup sederhana dan mudah dipahami.
Sebagian besar perintah PHP berasal dari bahasa C, Java dan Perl dengan
19
beberapa tambahan fungsi khusus. Bahasa pemprograman ini
memungkinkan para pembuat aplikasi web menyajikan halaman web yang
dinamis dan interaktif dengan mudah dan cepat, yang dihasilkan oleh
server. Teknologi ini juga dimaksudkan untuk menggantikan teknologi
lama seperti CGI (Common Gateway Interface).
Keluwesan PHP yang mampu berinteraksi dengan hampir semua teknologi
web menjadikan PHP sebagai bahasa pemprograman yang popular.
Penulisan skrip PHP dapat dilakukan dengan menggunakan dengan 2 cara,
yaitu dengan embedded script dan non-embedded script. Embedded
script adalah meletakkan skrip PHP diantara tag-tag HTML murni,
sedangkan non-embedded script adalah penulisan script murni PHP,
dimana tag-tag HTML diletakkan didalamnya.
Agar dapat berinteraksi dengan database server MySQL serta database-
database lainnya, PHP memanfaatkan fungsi API MySQL yang sudah
merupakan fungsi built-in. Dengan demikian untuk menggunakan fungsi
ini sudah tidak diperlukan konfigurasi khusus lagi, anda tinggal memakai
fungsi-fungssi yang sudah ada. Selain dukungan terhadap MySQL server,
PHP juga mendukung database server lain seperti PostgreSQL, interBase,
SQLite, Sybase, dan masih banyak lagi.
3. Java Scipt
Menurut Sibero (2012:150) “Java script adalah suatu bahasa pemograman
yang dikembangkan untuk dapat berjalan pada web browser”.
20
a. Kelebihan yang ada pada Java Script yaitu:
1) Tidak membutuhkan resource memory besar (ringan dan kecil)
Javascript membutuhkan resource memory yang relative kecil dan
ringan hal ini tentu sangat membantu para developer dalam
mengembangkan aplikasi-aplikasi ringan, namun tetap namun fitur
dan kegunaan yang sangat banyak bagi user.
2) Mudah untuk dipelajari
Sebuah bahasa pemrograman akan banyak digunakan dan akan
banyak dikembangkan apabila bahasa pemrograman tersebut
adalah bahasa pemrograman yang simple dan mudah untuk
dipahami.
3) Dinamis
Javascript adalah salah satu bahasa pemrograman yang dinamis
diantara banyak bahasa pemrograman lainnya. Dinamis disini
adalah fleksbilitas dari pengembangan aplikasi yang berbasis
Javascript.
4) Multi Platform
Multi Platform berarti basis sistem operasi apapun termasuk
diantaranya adalah sistem operasi yang populer digunakan secara
umum, seperti sistem operasi Windows, Linux, Android, dan
berbagai macam sistem operasi lainnya. Selain berbasis sistem
operasi, aplikasi yang menggunakan bahasa pemrograman berbasis
Javascript juga banyak yang bisa dijalankan pada perangkat
21
komputer dan perangkat komunikasi, seperti handphone yang tidak
menggunakan sistem operasi tertentu.
5) Mudah untuk dikembangkan
Ketika suatu aplikasi sudah selesai dibuat dengan menggunakan
basis bahasa pemrograman Javascript, maka aplikasi tersebut bisa
dengan mudah dikembangkan. Hal ini juga mengacu pada konsep
dinamis yang diusung oleh bahasa pemrograman Javascript ini.
Aplikasi akan lebih mudah untuk diperbaharui dan dikembangkan
sesuai dengan kebutuhan user juga perkembangan teknologi yang
ada.
b. Adapun kekurangan dari javascript sebagai berikut:
1) Script yang digunakan pada Javascript tidak terenkripsi
Aplikasi yang dikembangkan dengan menggunakan bahasa
pemrograman berbasis Javascript memiliki enkripsi yang lemah,
dan cenderung tidak terenkripsi. Hal ini tentu saja menyebabkan
aplikasi yang dibuat dengan menggunakan bahasa pemrograman
Javascript sangat rentan untuk diretas dan dibajak.
2) Bukan untuk pengembangan aplikasi stand alone
Dengan tingkat keamanan yang sangat rendah, hal ini membuat
bahasa pemrograman Javascript hanya bisa dioptimalkan pada
sebuah aplikasi yang tergantung pada aplikasi lain.
3) Memiliki keterbatasan objek
Hal ini juga dipengaruhi oleh kondisi umum dari bahasa
pemrograman Javascript yang sangat simple dan juga sederhana.
22
D. Basis Data
Menurut Eko (2011:53) Basis data adalah “kumpulan data yang saling
berelasi. Data sendiri merupakan fakta mengenai obyek, orang, dan lain-lain. Data
dinyatakan dengan nilai (angka, deretan karakter, atau simbol)”.
Basis data juga dapat di definisikan sebagai himpunan kelompok data yang
saling berhubungan yang diorganisasi sedemikian rupa sehingga kelak dapat
dimanfaatkan dengan cepat dan mudah atau kumpulan data yang saling
berhubungan yang disimpan secara bersama sedemikian rupa tanpa pengulangan
(redundancy) yang tidak perlu untuk memenuhi kebutuhan. Aplikasi Basis Data
yang digunakan antara lain:
1. MySQL
MySQL menurut Raharjo (2015:16) merupakan, “Software RDBMS (server
database) yang dapat mengelola database dengan sangat cepat, dapat
menampung data dalam jumlah sangat besar, dapat diakses oleh banyak user
(multi user), dan dapat melakukan suatu proses secara sinkron atau bersamaan
(multi-threaded).”
Berikut ini beberapa alasan mengapa mereka memilih MySql sebagai server
database untuk aplikasi-aplikasi yang mereka kembangkan:
a. Fleksibel
MySql dapat digunakan untuk mengembangkan aplikasi desktop maupun
aplikasi web dengan menggunakan teknologi yang bervariasi.
b. Peforma Tinggi
MySql memiliki mesin query dengan performa tinggi, dengan demikian
proses transaksional dapat dilakukan dengan sangat cepat.
23
c. Lintas Platform
MySql dapat digunakan pada platform atau lingkungan (dalam hal ini
sistem operasi) yang beragam, bisa Microsoft Windows, Linux, atau
UNIX.
d. Gratis
MySql dapat digunakan secara gratis.
e. Proteksi Data yang Handal
Perlindungan terhadap keamanan data merupakan nomor satu yang
dilakukan secara prefesional dibidang database.
f. Komunitas Luas
Karena penggunanya banyak maka MySql memiliki komunitas yang
sangat luas.
MySQL juga memiliki beberapa kekurangan. Berikut ini adalah beberapa
kekurangan MySQL:
a. Sulit diaplikasikan pada intansi atau perusahan yang besar
Karena merupakan salah satu jenis DBMS yang ramah terhadap
spesifikasi komputer, maka MySQL pun memiliki fitur yang tidak
selengkap Oracle. Hal ini berhubungan dengan implementasi dari DBMS
yang dilakukan, dimana MySQL tidak mampu atau diragukan
kemampuannya untuk melakukan manajemen database dengan jumlah
data yang sangat besar. Sehingga tidak cocok untuk diterapkan pada
instansi atau perusahaan besar.
24
b. Support yang kurang
Technical support dari MySQL juga dianggap kurang baik. Hal ini
mungkin berhubungan dengan status open source yang dimiliki oleh
MySQL. Hal ini membuat user akan mengalami kesulitan dalam
menghubungi technical support cari MySQL ketika dihadapkan pada
suatu kendala atau permasalahan saat menggunakan software ini.
c. Tidak populer untuk aplikasi game dan mobile
DBMS mysql ini sangat kurang digunakan untuk aplikasi Game dan
Mobile application. Jadi jika anda ingin mengembangkan dua jenis
aplikasi ini, MySQL bukan yang tepat.
2. PhpMyAdmin
Menurut Sugiri & Haris (2008:4) PhpMyAdmin adalah “sebuah software
yang berbentuk seperti halaman situs yang terdapat pada web server”.
Fungsi dari halaman ini adalah sebagai pengendali database MySQL sehingga
Pengguna MySQL tidak perlu repot untuk mengunakan perintah-perintah
SQL. Karena dengan adanya halaman ini semua hal tersebut dapat dilakukan
hanya dengan meng-klik menu fungsi yang ada pada halaman PhpMyAdmin.
E. Metode Pengembangan Perangkat Lunak
Air terjun (water fall) 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 analisis,
desain, pengkodean, pengujian, dan tahap pendukung (support) (Sukamto dan
Shalahuddin 2013:28).
25
Berikut adalah gambar model air terjun menurut Sukamto dan Shalahuddin:
Sumber: Sukamto dan Shalahuddin (2013:28)
Gambar II.1
Ilustrasi Model Waterfall
1. Analisis Kebutuhan Perangkat Lunak
Pada sistem absensi siswa ini diperlukan suatu program yang mempermudah
untuk mengolah data. Program tersebut mencakup dari halaman siswa yang
meliputi data siswa, jadwal pelajaran, nilai absensi. Sedangkan halaman
admin meliputi jadwal pelajaran, data siswa, nilai absen.
2. Desain
Sistem Absensi siswa berbasis website ini dibuat atau di rancang sedemikian
rupa agar sesuai kebutuhan user. Penulis menggunakan Bootstrap untuk
rancangan antar muka atau interface dan menggunakan Xampp sebagai web
server, struktur basis data mengunakan ERD dan gambaran dari sebuah situs
web menggunakan struktur navigasi.
3. Pembuatan Kode Program
Desain harus ditranslasikan ke dalam program perangkat lunak. Tahap
pengkodean ini disesuaikan dengan rancangan desain dengan menggunakan
bahasa pemrograman antara lain HTML, Javascript, CSS dan PHP untuk
membuat setiap halaman web agar dapat berjalan sesuai dengan desain yang
26
telah dibuat.
4. Pengujian
Pada tahap pengujian ini yaitu melakukan penyesuaian atau pencocokan
desain dengan pengkodean dengan browser secara keseluruhan. Pengujian ini
menggunakan metode black box testing. Hal ini dilakukan untuk
meminimalisir kesalahan (error) untuk memastikan input dan output yang
dihasilkan sesuai dengan yang diinginkan.
5. Pendukung (Support) atau Pemeliharaan (Maintenance)
Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan
ketika sudah diberikan kepada end 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 analisis
spesifikasi untuk perubahan perangkat lunak yang sudah ada, tetapi tidak
untuk membuat perangkat lunak yang baru.
2.2. Teori Pendukung
Dalam pembuatan suatu program, berhasil tidaknya suatu program
tergantung dari persiapan sebelumnya, misalnya membuat struktur navigasi, ERD,
LRS, Kamus Data, Pengkodean dan Diagram Alir Data. Untuk itu dalam proses
pembuatan program kali ini penulis membutuhkan beberapa peralatan pendukung
(tool system) yang membantu mempermudah penulis dalam membuat suatu
program. Adapun peralatan dalam pembuatan program tersebut diantaranya:
27
A. Diagram Alir Data
Diagram alir data (DAD) adalah suatu network yang menggambarkan suatu
sistem otomatis, manual atau gabungan dari keduanya yang penggambarannya
disusun dalam bentuk komponen sistem yang saling berhubungan. Fungsinya
untuk menjelaskan kepada user bagaimana fungsi dari sistem informasi dapat
bekerja dengan suatu bentuk logical made (menggambarkan sistem Diagram Alir
Data / DAD) dan Phisical Mode (menunjukan kepada user tentang bagaimana
sistem secara fisik akan ditetapkan.
Menurut Kendall dan kendall (2015:263) Diagram Alir Data (DAD)
menggambarkan, “Pandangan sejauh mungkin mengenai masukan, proses, dan
keluaran sistem, yang berhubungan dengan masukan, proses, dan keluaran dari
Tahapan Pembuatan Diagram Alir Data (DAD).
1. Tahapan pembuatan diagram alir data dibagi menjadi tiga tingkat konstriksi
diagram alir data, yaitu:
a. Diagram Konsteks
Tingkatan tertinggi dalam diagram alir data dan hanya memuat satu
proses, menunjukan sistem secara keseluruhan, diberi nomer nol dan
tidak memuat penyimpanan data.
b. Diagram Nol
Menggambarkan detail diagram konteks, masukan dan keluaran yang
ditetapkan dalam konteks tetap konstan dalam semua diagram sub-
urutannya dan sudah menunjukan bentuk penyimpanan.
c. Diagram Detail
Dikembangkan untuk menciptakan diagram anak yang lebih mendetail.
28
Proses pada diagram nol yang dikembangkan disebut perent proses
(Proses Induk) dan diagram yang dihasilkan disebut child diagram.
Apabila proses tersebut tidak dapat dikembangkan maka disebut proses
primitive.
2. Aturan Main Diagram Alir Data (DAD)
Dalam menggunakan diagram alir data ada beberapa aturan main yang harus
diperhatikan dalam membuat sistem, yaitu sebagai berikut:
a. Didalam diagram alir data tidak boleh menghubungkan antara eksternal
entity dengan eksternal entity lainnya secara langsung.
b. Didalam diagram alir data tidak boleh menghubungkan antara data store
dengan data store lainnya secara langsung.
c. Didalam diagram alir data tidak boleh menghubungkan antara data store
dengan eksternal entity secara langsung.
d. Setiap proses harus ada data flow yang masuk dan data flow yang keluar.
B. ERD dan LRS
1. ERD (Entity Relation Diagram)
Menurut Sukamto dan Shalahuddin (2013:53) “ERD adalah bentuk paling
awal dalam melakukan perancangan basis data rasional. Jika menggunakan
OODBMS maka perancangan ERD tidak perlu dilakukan”. ERD juga
merupakan gambaran yang menghubungkan antara objek satu dengan objek
yang lainnya dalam dunia nyata. Bisa dikatakan bahwa bahan yang akan
digunakan untuk membuat ERD adalah dari objek dunia nyata.
29
a. Komponen ERD
Komponen dalam Entity Relationship Diagram adalah sebagai berikut:
1) Entitas
Adalah segala sesuatu yang dapat digambarkan oleh data. Entitas
juga dapat diartikan sebagai individu yang mewakili sesuatu yang
nyata (eksistensinya) dan dapat dibedakan dari suatu yang lain.
Ada dua macam entitas yaitu entitas kuat dan entitas lemah.
Entitas kuat merupakan entitas yang tidak memiliki
ketergantungan dengan entitas lainnya. Contoh entitas anggota.
Sedangkan entitas lemah merupakan entitas yang kemunculannya
tergantung pada entitas lain dalam suatu relasi. Entitas
digambarkan dengan persegi panjang.
Sumber: Sukamto dan Shalahuddin (2013:53)
Gambar II.2
Contoh Gambar Entitas
2) Atribut
Atribut merupakan pendekskripsian karakteristik dari entitas.
Atribut digambarkan dalam bentuk lingkaran atau elips. Atribut
yang menjadi kunci entitas atau key dib-eri garis bawah.
30
Sumber: Sukamto dan Shalahuddin (2013:53)
Gambar II.3
Contoh Gambar Atribut
3) Relasi
Relasi menunjukan adanya hubungan diantara sejumlah entitas
yang berasal dari himpunan entitas yang berbeda. Dalam hal ini
relasi digambarkan dengan garis lurus.
Sumber: Sukamto dan Shalahuddin (2013:53)
Gambar II.4
Contoh Gambar Relasi
2. LRS (Logical Relational Structure).
Menurut Hasugian (2016:608) memberikan batasan bahwa LRS adalah,
“Sebuah model sistem yang digambarkan dengan sebuah diagram- ERD
akan mengikuti pola atau aturan permodelan tertentu dalam 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.
31
C. Kamus Data (Data Dictionary)
1. Konsep Dasar
Kamus data menurut Kristanto (2008:72), yaitu “Kumpulan elemen-elemen
atau simbol-simbol yang digunakan untuk membantu dalam penggambaran
atau pengidentifikasian setiap field atau file di dalam sistem.”
2. Hal yang harus dimuat dalam kamus data :
a. Nama Arus data
Karena kamus data dibuat berdasarkan arus data yang mengalir dari
DAD, maka nama arus data harus dicatat dikamus data untuk
memudahkan para pembaca yang ingin mengetahui penjelasan secara
lebih mendalam.
b. Alias/Nama Lain
Alias atau nama lain dapat dituliskan bila ada nama yang sama.
c. Bentuk Data
Bentuk dari data yang mengalir dapat berupa dokumen dasar, dokumen
hasil cetakan komputer, laporan tercetak dan lain-lain. Bentuk dari data
ini perlu dicatat karena dapat digunakan untuk mengelompokan kamus
data ke dalam kegunaanya sewaktu perancangan sistem.
d. Arus Data
Arus data menunjukan dari mana data mengalir dan kemana data akan
menuju. Keterangan arus data ini perlu dicatat dikamus data untuk
memudahkan mencari arus data ini di DAD.
e. Penjelasan
Isi dari penjelasan adalah keterangan dari data tersebut.
32
f. Periode
Periode menjelaskan kapan terjadinya arus data. Periode perlu dicatat
dikamus data karena data digunakan untuk mengidentifikasi, kapan input
data harus dimasukan ke sistem, kapan proses harus dilakukan dan kapan
laporan harus dihasilkan.
g. Volume
Volume yang harus dicatat adalah volume rata-rata arus data yang harus
mengalir dalam periode waktu tertentu dan volume puncak. Sistem
rekam medis berbasis website ini dibuat atau di rancang sedemikian rupa
agar sesuai kebutuhan user. Penulis menggunakan Bootstrap untuk
rancangan antar muka atau interface dan menggunakan XAMPP sebagai
web server serta Mozilla Firefox sebagai Browser.
olume rata-rata menunjukan banyaknya arus data yang mengalir dalam
suatu periode tertentu, sedangkan volume puncak menunjukan volume
yang terbanyak.
h. Struktur Data
Struktur data menunjukan arus data yang dicatat dikamus data terdiri dari
item-item. Dalam pembangunan sebuah program, biasanya kamus data
hanya menjelaskan mengenai struktur data yang dipakai dalam program
tersebut. Untuk menjelaskan informasi tentang struktur data yang dipakai
maka biasa-nya digunakan notasi-notasi tertentu. Notasi atau simbol
yang digunakan dibagi menjadi dua macam yaitu sebagai berikut :
33
3. Notasi Tipe Data
Notasi Tipe Data digunakan untuk membuat spesifikasi format input maupun output suatu
data notasi yang umum digunakan antara lain adalah :
Tabel II.1.
Notasi Tipe Data
NOTASI ARTI
X Setiap karakter
9 Angka numeric
A Karakter alphabet
Z Angka nol ditampilkan sebagai spasi kosong
. Sebagai pemisah ribuan
, Sebagai pemisah pecahan
- Sebagai tanda penghubung
/ Sebagai tanda pembagi
Sumber: Kendall & Kendall (2010:344)
4. Notasi Struktur Data
Notasi Struktur data digunakan untuk membuat spesifikasi elemen data. Dimana
notasi umum yang digunakan sebagai berikut :
Tabel II.2.
Notasi Struktur Data
NOTASI ARTI
= Terdiri dari
34
+ And (dan)
() Pilihan (boleh Ya atau Tidak)
{} Iterasi (pengulangan proses)
[] Pilih salah satu pilihan
| Pemisah pilihan didalam tanda []
* Keterangan atau catatan
@ Petunjuk (key field)
Sumber: Kendall & Kendall (2010:338)
D. Struktur Navigasi
1. Definisi Struktur Navigasi
Struktur navigasi adalah urutan alur informasi dari suatu aplikasi multimedia.
Dengan menggunakan struktur navigasi yang tepat maka suatu aplikasi
multimedia mempunyai suatu pedoman dan arah informasi yang jelas.
Menurut Binanto (2010:268) “Struktur Navigasi adalah gabungan dari
struktur referensi informasi situs web dan makanisme link yang mendukung
pengunjung untuk melakukan penjelajahan situs”.
a. Struktur Navigasi Linier
Struktur Navigasi Linier hanya mempunyai satu rangkaian cerita yang
berurut yang menampilkan satu demi satu tampilan layar secara berurut
menurut urutanya. Tampilan yang dapat ditampilkan pada struktur jenis
ini adalah satu halaman sebelumnya atau dua halaman sesudahnya,
pengguna akan melakukan navigasi secara berurutan, dalam frame atau
byet informasi satu ke yang lain.
35
Sumber: Binanto (2010:270)
Gambar II.5
Struktur Navigasi Linier
b. Struktur Navigasi Hirarki
Struktur dasar ini juga struktur linier dengan percabangan karena
pengguna melakukan navigasi disepanjang cabang pohon struktur yang
terbentuk oleh logika isi.
Sumber: Binanto (2010:270)
Gambar II.6
Struktur Navigasi Hirarki
c. Struktur Navigasi Tidak Berurut
Struktur navigasi non-linier merupakan pengembangan dari struktur
navigasi linier. Pada struktur ini diperkenakan membuat navigasi
bercabang. Percabangan yang dibuat pada struktur non-linier ini berbeda
dengan percabangan pada struktur hirarki, karena pada percabangan non-
linier ini walaupun terdapat percabangan tetap tiap-tiap tampilan
mempunyai kedudukan yang sama, yaitu tidak ada master page dan slave
page, pengguna akan melakukan navigasi dengan bebas melalui isi
36
proyek dengan tidak terikat dengan jalur yang sudah ditentukan
sebelumnya.
Sumber: Binanto (2010:270)
Gambar II.7
Struktur Navigasi Tidak Berurut
d. Struktur Navigasi Campuran
Struktur navigasi campuran dapat melakukan navigasi dengan bebas
(secara non-linier), tetapi terkadang dibatasi presentasi linier film atau
informasi penting dan pada data yang paling terorganisasi secara logis
pada suatu hirarki.
Sumber: Binanto (2010:270)
Gambar II.8
Struktur Navigasi Campuran
E. Pengkodean
Proses perubahan karakter data yang akan dikirim dari suatu titik ke titik lain
dengan kode yang dikenal oleh setiap termianal yang ada, dan menjadikan setiap
37
karakter data dalam sebuah informasi digital ke dalam bentuk biner agar dapat
ditransmisikan. Suatu terminal yang berbeda menggunakan kode biner yang
berbeda untuk mewakili setiap karakter.
Menurut Kadir (2008:109) “kode adalah suatu kerangka (Framework) yang
menggunakan angka atau huruf kombinasi angka dan huruf memberi tanda
terhadap klasifikasi yang sebelumnya telah dibuat”. Kode digunakan untuk
mengklasifikasi data, memasukan data ke dalam komputer dan mengambil
bermacam-macam informasi yang berhubungan dengannya, dengan cara
menyingkat kata, mengurutkan data dalam block-block tertentu kode dapat dibuat
dalam berbagai struktur kode yang berbeda. Setiap struktur mempunyai kelebihan
dan kelemahan. Oleh karena itu, perlu dipilih suatu struktur kode yang sesuai
sehingga tujuan pemberian kode dapat tercapai. Berikut ini macam-macam kode
yang dapat digunakan diantaranya:
a. Kode Urut (Squential Code)
Kode dapat disusun urut nomer agar setiap kode mempunyai jumlah angka
(digit) yang sama maka perlu direncanakan dulu jumlah digitnya. Kode urut
nomor ini sederhana, tetapi tidak memenuhi persyaratan fleksibilitas. Oleh
karena itu, kode nomor urut ini sebaiknya digunakan untuk memberi nomor
(kode) dokumen atau bukti transaksi. Contoh 001,002,003.
b. Kode Kelompok (Group Code)
Kode kelompok membagi data kedalaman kelompok tertentu. Tiap kelompok
akan diberi kode dengan angka, sehingga masing-masing posisi angka kode
mempunyai arti. Contoh x-xx-xxx pada kode NIM.
38
c. Kode Blok (Block Code)
Dalam kode blok, setiap kelompok data diberi kode dalam blok nomor
tertentu cara pemberian kode ini dapat memenuhi persyaratan fleksibilitas,
sehingga dapat digunakan untuk pemberian kode pada rekening. Contoh
untuk aktiva lanca kodenya: 1000-1999, aktiva tetap kodenya: 2000-2009.