LANDASAN TEORI - Teknokrat Repositoryrepository.teknokrat.ac.id/19/9/11 BAB II.pdf · 1.Menurut...
Transcript of LANDASAN TEORI - Teknokrat Repositoryrepository.teknokrat.ac.id/19/9/11 BAB II.pdf · 1.Menurut...
BAB IILANDASAN TEORI
2.1 Tinjauan Pustaka
2.1.1 Penelitian Terdahulu
Penelitian ini diambil dari berbagai hal yang berkaitan dengan teori
rancang bangun inventori. Penelusuran dilakukan melalui berbagai sumber baik
itu internet maupun studi literatur. Berdasarkan penelusuran diatas, didapat
beberapa pendapat tentang teori yang berkaitan dengan sistem informasi
penjualan, yaitu :
1. Penelitian Moch Arifin, (2010), melakukan penelitian mengenai “Rancang
bangun sistem informasi inventory & prediksi jumlah pembelian Barang
pada koperasi pegawai telekomunikasi”. Hasil penelitian adalah
berdasarkan hasil uji coba dengan Menggunakan metode single moving
avegare dapat Diketahui bahwa metode ini dapat diterapkan dalam
Aplikasi untuk membantu mengambil keputusan Jumlah prediksi
pembelian barang periode kedepan.
2. Penelitian Dewi Sawitri (2010), yang melakukan penelitian mengenai
“Perancangan Sistem Informasi Manajemen di CV Momentum Teknik”,
guna menerapkan perancangan tersebut maka digunakan metode SDLC
mulai dari perencanaan sistem hingga tahap perancangan sistem yang
rinci, mencakup perancangan database, perancangan kontrol, perancangan
input output, hingga teknologinya.
6
3. Penelitian Wahyu Dwiyantoro (2009), yang melakukan penelitian
mengenai “Analisis Aplikasi Sistem Informasi Manajemen Inventori pada
PT Trans Coffee”, Dengan adanya sistem inventori diharapkan dapat
memudahkan perusahaan tersebut dalam melaksanakan prose inventori
secara terencana, terkontrol, sistematis dan saling terhubung.
4. Penelitian Imam Nursalim (2010), dengan judul “Sistem Informasi
Persediaan Barang pada Apotik Madukoro Menggunakan Java”, Aplikasi
ini dapat mengelola stok inventory barang. Sistem ini juga mampu
mencatat secara otomatis tentang perubahan stok barang. Terutama saat
terjadi transaksi pembelian barang. Penjualan barang dan transaksi retur
barang.
5. Penelitian Budi Mochamad Noviandi (2012), dengan judul “Perancangan
Sistem Informasi Inventori Barang di Bank Sampah Garut”, dijelaskan
bahwa Perancangan sistem informasi inventori ini meliputi tahap
Analisis dan desain sistem dengan menggunakan metodologi berorientasi
objek dari Ali Bahrami (1999) yaitu dengan menggunakan metode
Unified Approach.
2.2 Rancang Bangun
Berikut definisi dari beberapa ahli mengenai pengertian dari rancang
bangun :
1. Menurut Pressman (2002) menjelaskan bahwa rancang bangun
merupakan serangkaian prosedur untuk menerjemahkan hasil analisa
dari sebuah sistem ke dalam bahasa pemrograman untuk
7
mendeskripsikan dengan detail bagaimana komponen-komponen
sistem diimplementasikan
2. Menurut Mc Leod (2002) menjelaskan bahwa rancangan sistem adalah
penentuan proses dan data yang diperlukan oleh sistem baru.
3. Menurut Ladjamudin (2005) menjelaskan bahwa perancangan adalah
kegiatan yang memiliki tujuan untuk mendesain sistem baru yang
dapat menyelesaikan masalah-masalah yang dihadapi perusahaan yang
diperoleh daari pemilihan alternatif sistem yang terbaik
4. Menurut Whitten Et El (2004) menjelaskan bahwa bangun sistem
adalah membangun sistem informasi dan komponen yang didasarkan
pada spesifikasi desain.
Dengan demikian pengertian rancang bangun merupakan kegiatan
menerjemahkan hasil analisa ke dalam bentuk paket perangkat lunak
kemudian menciptakan sistem tersebut ataupun memperbaiki sistem yang
sudah ada.
2.3 Aplikasi
Berikut beberapa pendapat para ahli mengenai definisi dari aplikasi :
1. Menurut Shelly dkk (2009) menjelaskan bahwa aplikasi adalah
seperangkat instruksi khusus dalam komputer yang dirancang agar
kita menyelesaikan tugas-tugas tertentu.
2. Menurut Kamus Besar Bahasa Indonesia (2005) pengertian aplikasi
adalah suatu perangkat lunak yang dijalankan oleh para pengguna
untuk mencapai tujuan tertentu. Misalnya, menjelajah Internet dengan
8
menggunakan aplikasi “Browser”, atau mengubah sebuah berkas
dengan aplikasi “E
3. Menurut Dhanta (2009), aplikasi (application) adalah software yang
dibuat oleh suatu perusahaan komputer untuk mengerjakan tugas-
tugas tertentu, misalnya Microsoft Word, Microsoft Excel.
Berdasarkan penjelasan mengenai pengertian aplikasi oleh para ahli maka
penulis dapat menyimpulkan bahwa aplikasi adalah sebuah unit perangkat lunak
(software) yang dirancang untuk mengerjakan tugas-tugas tertentu dengan maksud
tujuan tertentu. Klasifikasi aplikasi dapat dibagi menjadi 2 (dua) yaitu :
1. Aplikasi software spesialis, program dengan dokumentasi tergabung
yang dirancang untuk menjalankan tugas tertentu.
2. Aplikasi paket, dengan dokumentasi tergabung yang dirancang untuk
jenis masalah tertentu
Sedangkan macam-macam data yang digunakan untuk membuat aplikasi adalah :
1. Data sumber (sourcedata) ialah fakta yang disimpan di dalam basis
data misalnya: nama, tempat lahir, tanggal lahir dan lain-lain.
2. Meta Data, digunakan untuk menjelaskan struktur dari basis data, tipe
dan formal penyimpanan data perunit dan berbagai pembatas pada
data.
3. Data Dictionary atau data Repository, digunakan untuk menyimpan
informasi katalog skema dan pembatas serta data lain seperti:
pembakuan, deskripsi program aplikasi dan informasi pemakai.
9
4. Overhead Data, berisi linked list, indeks dan struktur data lain yang
digunakan untuk menyajikan relationship record.
2.4 Inventori
Inventory atau persediaan merupakan simpanan material yang berupa
bahan mentah, barang dalam proses dan barang jadi. Dari sudut pandang sebuah
perusahaan maka persediaan adalah inventasi modal yang dibutuhkan untuk
penyimpanan material pada kondisi tertentu. (Sumayang, 2003).
Pengedaliaan persediaan adalah soal yang besar dan penting.Ia minta
perhatian lebih besar daripada yang telah diberikan dewasa ini. Ia merupakan anak
dari industri dan perdagangan yang tidak disenangi selama kurun waktu yang
sangat panjang. Terdapat banyak pandangan yang berbeda-beda mengenai
kegiatan ini, sebagian menganggap tidak perlu dan merupakan kegiatan yang
mahal, sedang sebagian lain berpendapat bahwa kegiatan itu merupakan
kebutuhan yang sangat vital dan menggunakan metode yang paling mutakhir
untuk mengendalikan setiap segi dari perusahaan yang amat kecil
sekalipun.(Warman,2012).
Barang persediaan adalah sejumlah material yang disimpan dan dirawat
menurut aturan tertentu dalam tempat persediaa agar selalu dalam keadaan siap
pakai dan ditatausahakan dalam buku perusahaan. (Indrajit dan Pranoto, 2003).
Sediaan (Inventory) adalah sejumlah bahan atau barang yang tersedia
untuk digunakan sewaktu-watu di masa yang akan datang. Sediaan terjadi apabila
jumlah bahan atau barang yang diadakan (dubeli atau dibuat sendiri). Dengan kata
lain, sediaan adalah kelebihan jumlah yang diadakan di atas jumlah yang
10
digunakan. Selama sebelum digunakan, sediaan ini sebenarnya merupakan
sumberdaya yang menganggur. Namun demikian itu tidak berarti bahawa
sumberdaya yang menganggur itu tidak bermanfaat. Sediaan itu berguna untuk
berjaga-jaga agar tidak ada permintaan atau kebutuhan i masa depan yang tidak
dapat dipenuhi. (Pardede, 2005).
2.5 Metode Pengembangan Perangkat Lunak
Menurut Rosa A. S Dan M. Shalahuddin dalam bukunya yang berjudul
Modul Pembelajaran Rekayasa Perankat Lunak (Terstruktur Dan Berorientasi
Objek), menjelaskan bahwa:
“Pengembangan perangkat lunak atau yang lebih dikenal dengan Sofware Development Life Cycle (SDLC) adalah proses mengembangkan atau mengubah suatu sistem perangkat lunak dengan menggunakan model-model dan metodologi yang digunakan orang untuk mengembangkan sistem-sistem perangkat lunak sebelumnya (berdasarkan best practice atau cara-cara yang sudah teruji baik)” (2011:24).
Pada umumnya tahapan model-model yang digunkan dalam tahapan SDLC
mengacu pada tahapan analisi, desain, implementasi, dan pemeliharaan dalm
merancang atau mengembangkan perangkat lunak dimana pada
perkembangnannya, tahapan tersebut dikemas dalam model SDLC yang lebih
lengkap.
Adapun beberapa model SDLC yang dapat digunakan salah satunya model
prototipe dapat digunakan untuk menyambung ketidak pahaman pelanggan
mengenai hal teknis dan memper jelas spesifikasi kebutuhan yang diinginkan
pelanggan kepada pengembangg perangkat lunak.
11
Model prototipe dapat digunakan untuk menyambungkan ketidak pahaman
pelanggan mengenai hal teknis dan memperjelas spesifikasi kebutuhan yang
diinginkan pelanggan kepada pengembang perangkat lunak. Model protipe
dimulai dari mengumpulkan kebutuhan pelanggan terhadap perangkat lunak
yang akan dibuat. Lalu, dibuatlah program prototipe agar pelanggan lebih
terbayang dengan sebenarnya apa yang diinginkan. Program prototipe biasanya
merupakan program yang belum jadi. Program ini biasanya menyediakan
tampilan dengan simulasi alur perangkat lunak seperti perangkat lunak yang sudah
jadi. Program prototipe ini dievaluasioleh pelanggan atau user sampai ditemukan
spesifikasi yang sesuai dengan keinginan pelanggan atau user.
Gambar 2.1 Ilustrasi model PrototipeSumber : A. S. Rosa, dkk (2011)
langkah-langkat yang penting dalam model ini adalah sebagai berikut :
a. Prototype Paradigma dimulai dengan mengumpulkan kebutuhan-kebutuhan
customer.
b. Developer dan customer bertemu dan mendefinisikan obyektif software
secara menyeluruh, mengidentifikasi kebutuhan-kebutuhan yang diketahui
dari area pekerjaan.
12
c. Setelah itu dibuat Quick Design.
d. Quick Design difokuskan pada representasi aspek software yang bisa dilihat
customer/user (misal: format input dan output).
e. Quick Design cenderung ke pembuatan prototype.
f. Prototipe dievaluasi customer/user dan digunakan untuk menyempurnakan
kebutuhan software yang akan dikembangkan.
2.6 Unified Modelling Language (UML)
Menurut A.S Rosa dkk (2011;118) UML merupakan bahasa visual untuk
pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan
diagram dan teks-teks pendukung. UML muncul karena adanya karena adanya
kebutuhan pemodelan visual untuk menspesifikasikan, menggambarkan,
membangun dan mendokumentasi dari sistem perangkat lunak.
Pada diangram UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan
dalam 3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat
dilihat pada gambar dibawah ini.
Gambar 2.2. Diagram UML
Berikut ini adalah penjelasan mengenai berbagai diagran UML serta
tujuannya :
2.6.1 Use Case Diagram
Use Case diagram secara garis besar menggambarkan interaksi antara
sistem, sistem eksternal dan pengguna. Dengan kata lain Use Case diagaram
UML Diagram
Composite Structure Diagram
Behaviour Diagram
Interaction Diagram
Structure Diagram
Component Diagram
Class Diagram
Object Diagram
Use Case Diagram
Activity Diagram
Package Diagram
Deployment Diagram
State Machine Diagram
Sequence Diagram
Communication Diagram
Timing Diagram
Interaction Overview Diagram
13
secara grafis mendeskripsikan siapa yang akan menggunakan sistem dan dalam
cara apa pengguna (user) mengharapkan interaksi dengan sistem itu.
Tabel 2.1. Simbol-simbol Use Case
Nama dan Simbol Deskripsi
Use Case
Fungsionalitas yang disediakan sistem sebagai unit-unit
yang saling bertukar pesan antar unit atau aktor;
biasanya dinyatakan dengan menggunakan kata kerja di
awal di awal frase nama use caseAktor/Actor
Aktor
Orang, proses, atau sistem lain yang berinteraksi dengan
sistem informasi yang akan dibuat di luar sistem
informasi yang akan dibuat itu sendiri, jadi walaupun
simbol dari aktor adalah gambar orang, tapi aktor belum
tentu merupakan orang; biasanya dinyatakan
menggunakan kata benda di awal frase nama aktorAsosiasi/Association Komunikasi antara aktor dan use case yang
berpartisipasi pada use case atau use case memiliki
interaksi dengan aktorEkstensi / Extend Relasi use case tambahan ke sebuah use case dimana
use case yang ditambahkan dapat berdiri sendiri walau
tanpa use case tambahan itu; mirip dengan prinsip
inheritance pada pemrograman berorientasi objek;
biasanya use case tambahan memiliki nama depan yang
sama dengan use case yang ditambahkan
Nama Usecase
<< extend >>
14
Generalisasi /
generalization
Hubungan generalisasi dan spesialisasi (umum - khusus)
antara dua buah use casedimana fungsi yang satu adalah
fungsi yang lebih umum dari lainnya
2.6.2 Class Diagram
Menggambarkan struktur objek sistem. Diagram ini menunjukkan class
object yang menyusun sistem dan juga hubungan antara class object tersebut.
Tabel 2.2. Simbol-simbol Class Diagram
Nama dan Simbol Deskripsi
Package
Package1
Package merupakan sebuah bungkusan dari satu atau
lebih kelas
Kelas / Class
Class1Kelas pada struktur sistem
antarmuka / interface Sama dengan konsep interface dalam pemrograman
berorientasi objek
asosiasi berarah / directed association
Relasi antar kelas dengan makna kelas yang satu
digunakan oleh kelas yang lain, asosiasi biasanya
juga disertai dengan multiplicity
15
Generalisasi / generalization
Relasi antar kelas dengan makna generalisasi-
spesialisasi (umum khusus)
kebergantungan / dependency
Relasi antar kelas dengan makna kebergantungan
antar kelas
agregasi / aggregation
-End3
1
-End4
*
Relasi antar kelas dengan makna semua-bagian
(whole-part)
2.6.3 Activity Diagram
Diagram aktivitas atau activity diagram menggambarkan workflow (aliran
kerja) atau aktivitas sebuah sistem atau operasi bisnis. Yang perlu diperhatikan
disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa
yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem.
Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal
berikut :
a. Rancangan proses bisnis dimana setiap urutan aktivitas yang
digambarkan merupakan proses bisnis sistem yang didefinisikan.
b. Urutan atau pengelompokan tampilan dari sistem / user interface
dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka
tampilan.
c. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan
sebuah pengujian yang perlu didefinisikan kasus ujinya.
16
Berikut adalah simbol-simbol yang ada pada diagram aktivitas :
Tabel 2.3 Activity Diagram
Nama dan Simbol Deskripsi
Status awal Status awal aktivitas sistem, sebuah diagram aktivitas
memiliki sebuah status awal
AktivitasActionState1
Aktivitas yang dilakukan sistem, aktivitas biasanya
diawali dengan kata kerja
Percabangan / Decision
Asosiasi percabangan dimana jika ada pilihan
aktivitas lebih dari satu
Penggabungan / Join Asosiasi penggabungan dimana lebih dari satu
aktivitas digabungkan menjadi satu status
Status Akhir Status akhir yang dilakukan sistem, sebuah diagram
aktivitas memiliki sebuah status akhir
17
Swimlane
Nama Swimlane
Memisahkan organisasi bisnis yang bertanggung
jawab terhadap aktivitas yang terjadi
2.6.4 Sequence Diagram
Diagram sekuen menggambarkan kelakuan objek pada use case dengan
mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima
antar objek. Oleh karena itu untuk menggambarkan diagram sekuen maka harus
diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode
yang dimiliki kelas yang diinstansiasi menjadi objek itu.
Banyak diagram sekuen yang harus digambar adalah sebanya pendefinisian
use case yang memiliki proses sendiri atau yang penting semua use case yang
telah didefinisikan interkasi jalannya pesan sudah dicakup pada diagram sekuen
sehingga semakin banyak use case yang didefinisikan maka diagram sekuen yang
harus dibuat juga semakin banyak.
Berikut adalah simbol-simbol yang ada pada diagram sekuen:
Tabel 2.4 Sequence Diagram
Nama dan Simbol Deskripsi
18
Aktor/Actor
Aktor
Orang, proses, atau sistem lain yang berinteraksi
dengan sistem informasi yang akan dibuat di luar
sistem informasi yang akan dibuat itu sendiri, jadi
walaupun simbol dari aktor adalah gambar orang, tapi
aktor belum tentu merupakan orang; biasanya
dinyatakan menggunakan kata benda di awalfrase
nama aktor
Objek
Object1Menyatakan objek yng berinteraksi pesan
Activation
Menyatakan objek dalam keadaan aktif dan
berinteraksi pesan
Nama dan Simbol Deskripsi
Pesan tipe create
<< create >>
Menyatakan suatu objek membuat objek yang lain,
arah panah mengarah pada objek yang dibuat.
Pesan tipe call
1: nama_metode()
Mengatakan suatu objek memanggil operasi/metode
yang ada pada objek lain atau dirinya sendiri, arah
panah mengarah pada objek yang memiliki operasi/
metode, karena ini memanggil operasi/metode maka
operasi/metode yang dipanggil harus ada pada diagram
kelas sesuai dengan kelas objek yang berinteraksi.
19
Pesan tipe send
1 : masukan
Menyatakan bahwa suatu objek mengirimkan
data/masukan/ informasi ke objek lainnya, arah panah
mengarah pada objek yang dikirimi
Pesan tipe return
1 : keluaran
Menyatakan bahwa suatu objek yang telah
menjalankan suatu operasi atau metode menghasilkan
suatu kembalian ke objek tertentu, arah panah
mengarah pada objek yang menerima kembalian
Pesan tipe destroy
Message3Menyatakan suatu objek mengakhiri hidup objek yang
lain, arah panah mengarah pada objek yang diakhiri,
sebaiknya jika ada create maka ada destroy
Penomoran pesan berdasarkan uraian interkasi pesan. Penggambaran letak pesan
harus berurutan, pesan yang lebih atas dari lainnya adalah pesan yang berjalan
terlebih dahulu.
2.7 Java
Java adalah suatu teknologi di dunia software komputer, yang merupakan
suatu bahasa pemrograman, dan sekaligus suatu platform. Sebagai bahasa
pemrograman, Java dikenal sebagai bahasa pemrograman tingkat tinggi. Java
mudah dipelajari, terutama bagi programmer yang telah mengenal C/C++. Java
merupakan bahasa pemrograman berorientasi objek yang merupakan paradigma
pemrograman masa depan. Sebagai bahasa pemrograman Java dirancang menjadi
20
handal dan aman. Java juga dirancang agar dapat dijalankan disemua platform.
Juga dirancang untuk menghasilkan aplikasi-aplikasi dengan performansi yang
terbaik, seperti aplikasi database Oracle 8i/9i yang corenya dibangun
menggunakan bahasa pemrograman Java. Sedangkan Java bersifat neutral
architecture, karena Java Compiler yang digunakan untuk mengkompilasi kode
program Java dirancang untuk menghasilkan kode yang netral terhadap semua
arsitektur perangkat keras yang disebut sebagai Java Bytecode. Sebagai sebuah
platform, Java terdiri atas dua bagian utama, yaitu:
Java Virtual Machine (JVM) Dan Java Application Programming Interface (Java
API).
2.7.1 Arsitektur Java
Sun membagi arsitektur Java membagi tiga bagian, yaitu:
1. Enterprise Java (J2EE) untuk aplikasi berbasis web, aplikasi sistem
tersebar dengan beraneka ragam klien dengan kompleksitas yang
tinggi. Merupakan superset dari Standar Java.
2. Standar Java (J2SE), ini adalah yang biasa dikenal sebagai bahasa
Java.
3. Micro Java (J2ME) merupakan subset dari J2SE dan salah satu
aplikasinya yang banyak dipakai adalah untuk wireless device/mobile
device.( Abdul Kadir, Belajar Pemrograman Java.)
2.8 Basis Data
21
Menurut A. S. Rosa, dkk (2011) dalam bukunya yang berjudul Modul
Pembelajaran Rekayasa Perangkat Lunak (Terstruktur dan Berorientasi Objek),
menjelaskan bahwa :
“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.”
Kebutuhan basis data dalam sistem infomasi meliputi :
1. Memasukkan, menyimpan, dan mengambil data.
2. Membuat laporan berdasarkan data yang telah disimpan.
Berikut beberapa pendapat para ahli mengenai definisi dari basisdata:
Menurut Ramez (2000), Data merupakan fakta mengenai suatu objek seperti manusia, benda, peristiwa, konsep, keadaan, dan sebagainya yang dapat dicatat dan mempunyai arti secara implisit. Data dapat dinyatakan dalam bentuk angka, karakter atau simbol, sehingga bila data dikumpulkan dan saling berhubungan maka dikenal dengan istilah basis data (database).
Dari beberapa definisi-definisi tersebut, menurut Waliyanto (2000) dapat dikatakan bahwa basis data mempunyai berbagai sumber data dalam pengumpulan data, bervariasi derajat interaksi kejadian dari dunia nyata, dirancang dan dibangun agar dapat digunakan oleh beberapa user untuk berbagai kepentingan.
2.8.1 Database Management System (DBMS)
DBMS dapat diartikan sebagai program komputer yang digunakan untuk
memasukkan, mengubah, menghapus, memodifikasi, dan memperoleh
data/informasi dengan praktis dan efisien.
22
Kelebihan dari DBMS antara lain adalah:
1. Kepraktisan. DBMS menyediakan media penyimpan permanen yang
berukuran kecil namun banyak menyimpan data jika dibandingkan dengan
menggunakan kertas.
2. Kecepatan. Komputer dapat mencari dan menampilkan informasi yang
dibutuhkan dengan cepat.
3. Mengurangi kejemuan. Pekerjaan yang berulang-ulang dapat
menimbulkan kebosanan bagi manusia, sedangkan mesin tidak
merasakannya.
4. Update to date. Informasi yang tersedia selalu berubah dan akurat setiap.
Menurut Waliyanto (2000), Keuntungan-keuntungan dalam penggunaan
DBMS antara lain adalah:
Pemusatan kontrol data. Dengan satu DBMS di bawah kontrol satu orang atau
kelompok dapat menjamin terpeliharanya standar kualitas data dan keamanan
batas penggunaannya serta dapat menetralkan.
1. konflik yang terjadi dalam persyaratan data dan integritas data dapat
terjaga.
2. Pemakaian data bersama (Shared Data). Informasi yang ada dalam basis
data dapat digunakan lebih efektif dengan pemakaian beberapa user
dengan kontrol data yang terjaga.
3. Data yang bebas (independent). Program aplikasi terpisah dengan data
yang disimpan dalam komputer.
4. Kemudahan dalam pembuatan program aplikasi baru.
23
5. Pemakaian secara langsung. DBMS menyediakan interface yang
memudahkan pengguna dalam mengolah data.
6. Data yang berlebihan dapat dikontrol. Data yang dimasukkan dapat
terjadi kerangkapan (redudant), untuk itu DBMS berfungsi untuk
menurunkan tingkat redudancy dan pengelolaan proses pembaruan data.
7. Pandangan user (user view). Ada kemungkinan basis data yang diakses
adalah sama, maka DBMS mampu mengatur interface yang berbeda dan
disesuaikan dengan pemahaman tiap user terhadap basis data menurut
kebutuhan.
Kelemahan-kelemahan DBMS antara lain:
1. Biaya. Kebutuhan untuk medapatkan perangkat lunak dan perangkat keras
yang tepat cukup mahal, termasuk biaya pemeliharaan dan sumber daya
manusia yang mengelola basis data tersebut.
2. Sangat kompleks. Sistem basis data lebih kompleks dibandingkan dengan
proses berkas, sehingga dapat mudah terjadinya kesalahan dan semakin
sulit dalam pemeliharaan data.
3. Resiko data yang terpusat. Data yang terpusat dalam satu lokasi dapat
beresiko kehilangan data selama proses aplikasi.
2.8.2 MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL
(Database management system) atau DBMS yang multithread, multi-user, dengan
sekitar 6juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia
sebagai perangkat lunak gratis dibawah lisensi GNU General Public License
24
(GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus – kasus
dimana penggunaanya tidak cocok dengan penggunaan GPL.
Kelebihan yang dimiliki MySQL :
1. Portabilitas, MySQL dapat berjalan stabil pada berbagai sistem operasi
seperti, Windows, Linux, FreeBSD, Mac OS X Server, Solaris, Amiga, dan
masih banyak lagi.
2. Perangkat lunak sumber terbuka, MySQL didistribusikan sebagai
perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat
digunakan secara gratis.
3. Multi-user, MySQL dapat digunakan oleh beberapa pengguna dalam
waktu yang bersamaan tanpa mengalami masalah atau konflik.
4. Ragam tipe data, MySQL memiliki ragam tipe data yang sangat kaya,
seperti signed / unsigned integer, float, double, char, text, date, timestamp,
dan lain – lain.
5. Perintah dan fungsi, MySQL memiliki operator dan fungsi secara penuh
yang mendukung perintah Select dan Where dalam perintah (query).
6. Keamanan, MySQL memiliki beberapa lapisan keamanan seperti level
subnetmask, nama host, dan izin akses user dengan sistem perizinan yang
mendetail serta sandi terenkripsi.
7. Skalabilitas dan Pembatasan, MySQL mampu menangani basis data dalam
skala besar, dengan jumlah rekaman (record) lebih dari 50 juta dan 60 ribu
serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung
mencapai 32 indeks pada tiap labelnya.
25
8. Antar muka, MySQL memiliki antar muka (interface) terhadap berbagai
aplikasi dan bahasa pemrograman dengan menggunakan fungsi API
(application programming interface).
9. Struktur tabel, MySQL memiliki struktur tabel yang lebih fleksibel dalam
menangani ALTER TABLE, dibandingkan basis data lainnya semacam
Postgree SQL.
2.9 Pengujian Perangkat Lunak
Menurut A. S. Rosa, dkk (2011), pengujian perangkat lunak adalah sebuah
elemen sebuah topik yang memiliki cakupan luas dan sering dikaitkan dengan
verifikasi (verification) dan validasi (validation). Verifikasi mengacu pada
sekumpulan aktifitas yang menjamin bahwa perangkat lunak
mengimplementasikan dengan benar sebuah fungsi yang spesifik. Validasi
mengacu pada sekumpulan aktifitas yang berbeda yang menjamin bahwa
perangkat lunak yang dibangun dapat ditelusuri sesuai dengan kebutuhan
pengguna. Verifikasi dan validasi meliputi beberapa aktifitas yang sering disebut
sebagai jaminan kualitas perangkat lunak (Software Quality Assurance (SQA)).
Menurut A. S. Rosa, dkk (2011), pengujian untuk validasi memiliki
beberapa pendekatan sebagai berikut:
1. Black-Box Testing (pengujian kotak hitam)
Black-Box Testing yaitu menguji perangkat lunak dari segi spesifikasi
fungsional tanpa menguji desain dan kode program. Pengujian dimaksudkan
26
untuk mengetahui apakah fungsi-fungsi, masukan, dan keluaran dari
perangkat lunak sesuai dengan spesifikasi yang dibutuhkan.
2. White-Box Testing (pengujian kotak putih)
White-Box Testing yaitu menguji perangkat lunak dari segi desain dan kode
program apakah mampu menghasilkan fungsi-fungsi, masukan dan keluaran
yang sesuai dengan spesifikasi kebutuhan. Pengujian kotak putih dilakukan
dengan memeriksa logika dari kode program. Pembuatan kasus uji bisa
mengikuti standar pengujian dari standar pemrograman yang seharusnya.
Contoh dari pengujian kotak putih misalkan menguji alur (dengan
menelusuri) pengulangan (looping) pada logika pemrograman.