bab 2 landasan teori 2.1 teori – teori dasar / umum...
TRANSCRIPT
9
BAB 2
LANDASAN TEORI
2.1 Teori – teori dasar / umum
Teori dasar merupakan teori yang digunakan untuk mendukung dalam
pembuatan skripsi. Teori-teori yang digunakan didapatkan dari berbagai sumber
buku dan jurnal yang menjadi acuan dalam metodologi pembuatan skripsi.
2.1.1 Data
Data merupakan komponen yang sangat penting dalam suatu database.
Sesuai dengan pepatah “Garbage in, garbage out”, yaitu apabila data yang masuk
adalah data “sampah” atau tidak berguna, maka output yang akan dihasilkan juga
tidak berguna dan begitu pula sebaliknya apabila data yang masuk adalah data yang
memiliki kualitas bagus, maka output yang dihasilkan akan berkualitas.
Seperti yang dikemukakan oleh Connolly & Begg (2010: 70) data adalah
“komponen yang paling penting dalam DBM (Database Management), berasal dari
sudut pandang end user”. Data berguna sebagai jembatan antara mesin dan
pengguna. Sedangkan menurut Kroenke & Auer (2010: 13) data adalah “fakta dari
kumpulan record dan number”. Pernyataan tersebut diperkuat oleh Yuniarto (2011:
200) yang mendefinisikan “data merupakan kenyataan yang menggambarkan suatu
kejadian atau kesatuan yang nyata”.
Dari pengertian data di atas dapat disimpulkan bahwa data merupakan
sesuatu yang belum memiliki arti maupun nilai karena belum diolah sedemikian rupa
agar menghasilkan suatu nilai. Data juga merupakan komponen yang paling penting
dalam DBM, data yang memiliki kualitas bagus akan menghasilkan output yang
10
berguna sedangkan data yang tidak memiliki kualitas yang bagus akan menghasilkan
output yang tidak berguna.
2.1.2 Fact Finding Technique
Data merupakan suatu fakta, untuk mengumpulkan fakta tersebut, tentunya
ada beberapa teknik yang digunakan agar fakta tersebut dapat diperoleh dengan
tepat. Ada beberapa definisi Fact Finding Technique seperti yang dikemukakan oleh
Bennett, McRobb, & Farmer (2010: 42-150) yang membagi teknik tersebut menjadi
lima teknik utama dalam fact finding technique yang digunakan oleh para analis
untuk meneliti kebutuhan, yaitu :
1. Background Reading
Jika seorang analis dipekerjakan dalam organisasi yang menjadi subjek
dari pelaksanaan dalam pengumpulan fakta, maka kemungkinan bahwa
mereka akan memiliki pemahaman yang baik tentang organisasi dan
tujuan usahanya. Namun jika mereka sebagai konsultan dari luar, maka
salah satu tugas pertamanya adalah mencoba untuk memperoleh
pemahaman tentang organisasi. Background reading atau penelitian
merupakan bagian dari proses tersebut. Jenis dokumen yang cocok untuk
sumber informasi tersebut adalah :
a. Laporan perusahaan
b. Struktur organisasi
c. Kebijakan pengguna
d. Uraian pekerjaan
e. Laporan
f. Dokumentasi sistem yang ada
11
2. Interviewing
Wawancara mungkin merupakan teknik pencarian fakta yang paling
banyak digunakan, namum juga salah satu yang memerlukan
keterampilan yang paling sensitif.
3. Observation
Observasi merupakan teknik pengumpulan fakta yang dilakukan dengan
terjun langsung ke lapangan. Observasi atau pengamatan juga
memungkinkan seorang analis untuk dapat melihat apa yang orang
lakukan dengan menggunakan informasi untuk melaksanakan pekerjaan
mereka.
4. Document Sampling
Document sampling dapat digunakan dengan dua cara yang berbeda.
Pertama analisis akan mengumpulkan salinan dokumen dan diselesaikan
selama wawancara dan sesi obeservasi. Kedua, analis dapat melakukan
analisis dokumen statistik dalam rangka untuk mengetahui tentang pola
data.
5. Questionnaires
Kuesioner merupakan suatu instrumen penelitian yang dapat diterapkan
untuk mencari fakta dalam proyek pengembangan sistem. Pernyataan
tersebut diperkuat oleh Connolly & Begg (2010: 341) yang
mendefinisikan Fact finding Techiques sebagai “proses formal yang
menggunakan beberapa cara seperti wawancara dan kuisioner untuk
mengumpulkan fakta tentang sistem, kebutuhan dan preferensi”.
12
Lima teknik umum yang digunakan adalah :
a. Examining documentation
Examining documentation sangat berguna ketika mencoba untuk
mendapatkan keuntungan dari beberapa wawasan seperti bagaimana
mendapatkan kemunculan suatu database.
b. Interviewing
Teknik interview merupakan teknik yang paling sering digunakan dan
cara paling bisa digunakan untuk fact finding.
c. Observing the enterprise in operation
Merupakan satu dari banyak teknik fact-finding teknik untuk
memahami sistem. Teknik ini memungkinkan untuk salah satu
partisipan atau melihat aktifitas performa seseorang untuk
mempelajari sistem tersebut.
d. Research
Teknik Fact finding yang berguna untuk mencari aplikasi dan
problem.
e. Quisioner
Teknik fact finding untuk melakukan survey dengan melalui
kuesioner.
Dari definisi diatas dapat disimpulkan bahwa teknik fact-finding tersebut
merupakan suatu teknik untuk mengumpulkan data, data tersebut digabungkan
sehingga memberikan sebuah informasi yang dibutuhkan oleh para bisnis.
13
2.1.3 Basis data
Basis data atau kumpulan data digunakan oleh perusahaan kecil maupun
besar. Basis data diperoleh dari hasil transaksi-transaksi yang terjadi dalam proses
bisnis perusahaan. Seperti yang dikemukakan oleh Connolly & Begg (2010: 65)
basis data adalah “koleksi berbagai data secara logis terkait dan deskripsi, yang
dirancang untuk memenuhi kebutuhan informasi dari sebuah organisasi”. Pernyataan
tersebut diperkuat oleh Cahyono (2009: 83) yang mendefinisikan “basis data
merupakan salah satu komponen sistem informasi yang mempunyai posisi yang
sangat menentukan dalam menunjang keberhasilan suatu sistem informasi”.
Basis data berisi data-data transaksi maupun data histori dari hasil transaksi
organisasi. Dalam basis data, semua data terintegrasi satu sama lainnya, pernyataan
ini diperkuat oleh Hoffer, Prescott, & Topi (2009: 46) yang mendefinisikan “basis
data adalah sebuah kumpulan data yang terorganisasi secara logis dan data tersebut
berhubungan”.
Dengan demikian dapat disimpulkan bahwa basis data merupakan
sekumpulan banyak data yang ada di dalam suatu organisasi di mana data tersebut
saling terkait atau terhubung secara logis dan digunakan untuk memenuhi kebutuhan
informasi organisasi.
2.1.4 Activity Diagram
Dalam merancang sebuah sistem informasi diperlukan sebuah diagram UML.
Diagram UML terdapat berbagai macam salah satunya adalah activity diagram.
Activity diagram sering digunakan untuk analisis, activity diagram merupakan alur
kerja atau workflow yang menjelaskan berbagai macam aktifitas sistem dan
pengguna. Seperti yang dikemukakan oleh Satzinger, Jackson, & Burd (2009: 141-
14
142) activity diagram merupakan “suatu jenis diagram alur kerja yang
menggambarkan kegiatan pengguna atau user serta urutan sekuensialnya”.
Pernyataan tersebut diperkuat oleh Whiten & Benntley (2007: 390-391) yang
mendeskripsikan “activity diagram sebagai sebuah diagram dapat digunakan untuk
grafis yang menggambarkan aliran proses bisnis, langkah-langkah dari use case, atau
logika perilaku objek”.
Gambar 2.1 Simbol Activity Diagram
(Sumber: Satzinger, Jackson, & Burd, 2009: 142)
Simbol-simbol pada aktivity diagram adalah :
1. Swimlane
Swimlane merupakan area persegi panjang pada activity diagram yang
merepresentasikan kegiatan yang dilakukan oleh aktor.
2. Starting activity (Pseudo)
Starting activity berbentuk lingkaran penuh yang menggambarkan awal dari
proses.
3. Transition arrow
15
Transition arrow berbentuk tanda panah yang menunjukkan perkembangan
dari suatu kegiatan yang dilakukan oleh aktor.
4. Activity
Activity menggambarkan kegiatan-kegiatan yang dilakukan oleh aktor.
5. Ending activity (Pseudo)
Ending activiy berbentuk lingkaran dengan bulatan penuh di tengah lingkaran
yang menunjukkan akhirnya sebuh proses.
6. Synchronization bar (split)
Synchronization bar (split) merupakan bar hitam dengan satu aliran masuk
dan dua atau lebih arus keluar.
7. Synchronization bar (Join)
Synchronization bar (join) bar hitam dengan dua atau lebih aliran masuk dan
satu aliran keluar, tidak ada akhir dalam pemrosesan yang bersamaan.
8. Decision activity
Decision activity berbentuk berlian dengan satu aliran masuk dan dua atau
lebih arus keluar.
9. Another way to show decision
Merupakan sebuah proses kegiatan, dimana proses tersebut dapat
menyebabkan terjadinya kegiatan atau activity lebih dari satu.
Dari pernyataan diatas dapat disimpulkan bahwa activity diagram merupakan
sebuah diagram yang menunjukkan seluruh aktivitas yang dilakukan oleh aktor,
proses awal aktivitas yang dilakukan oleh aktor ditandai dengan starting activity dan
diakhiri dengan ending activity.
16
2.1.5 Data Flow Diagram (DFD)
Data flow Diagram atau diagram aliran data merupakan suatu diagram yang
menggambarkan tentang proses data yang terjadi dalam bisnis suatu perusahaan.
Aliran data itu dideskripsikan agar pihak perusahaan dapat melihat aliran data yang
keluar maupun yang masuk dalam proses bisnis yang terjadi pada perusahaan.
Menurut Fadlil, Firdausy, & Hermawan (2008: 69) “Data flow diagram (DFD)
merupakan diagram yang menggunakan notasi-notasi untuk menggambarkan aliran
data secara logis dari sistem”.
Data flow diagram digunakan untuk menganalisis kebutuhan yang diperlukan
oleh sistem dan juga menggambarkan aliran data dari sistem. Seperti yang
dikemukakan oleh Ibrahim & Yen (2011: 60) Data flow diagram (DFD) sering
digunakan pada saat tahap analisis untuk mengambil beberapa kebutuhan sistem”.
Sedangkan menurut Satzinger, Jackson, & Burd (2009: 206) “DFD adalah diagram
yang merepresentasikan kebutuhan sistem seperti proses, agen eksternal, aliran data
dan penyimpanan data “.
17
Gambar 2.2 Simbol Data Flow Diagram
(Sumber: Satzinger, Jackson, & Burd, 2009: 207)
Simbol-simbol pada data flow diagram (DFD) adalah :
1. Process
Proses merupakan simbol yang digunakan untuk memproses pengolahan
data, proses merupakan suatu pekerjaan maka penamaan sebuah proses
menggunakan kata kerja yang diikuti oleh objek.
2. Data flow
Data flow merupakan simbol yang digunakan untuk menggambarkan
aliran data yang berjalan.
3. External agent
External agent merupakan simbol yang digunakan untuk menggambarkan
asal atau tujuan data.
18
4. Data store
Data store merupakan simbol yang digunakan untuk data yang telah
disimpan.
5. Real-time link
Real time link merupakan simbol yang menggambarkan aliran
komunikasi antara agen eksternal dan proses sebagai proses pelaksanaan
atau eksekusi.
Dari pengertian DFD diatas maka dapat disimpulkan bahwa DFD berfokus
pada keluar-masuknya aliran data sehingga pihak perusahaan dapat mengetahui
dengan jelas proses apa yang terjadi dalam perusahaan tersebut. Data flow diagram
juga merupakan sebuah model yang sering digunakan pada fungsi yang kompleks.
2.1.6 The Database System Development Life cycle
Database yang terintegrasi tidak begitu saja terjadi tanpa dilakukan
perancangan, dalam membuat perancangan database diperlukan metode
perancangan. Metode perancangan tersebut berupa siklus hidup, di mana dalam
merancang database perlu dilakukan sebuah perencanaan. Seperti yang dikemukakan
oleh Connolly & Begg (2010: 313) yang mendefinisiskan bahwa “sistem database
merupakan komponen dasar sistem informasi dari perusahaan besar, sistem
pengembangan siklus database secara melekat terkait dengan siklus hidup sistem
informasi”. Pentingnya untuk mengakui bahwa tahapan pengembangan siklus
database tidak harus berurutan tetapi melibatkan beberapa jumlah pengulangan
tahapan sebelumnya melalui feedback loop.
“System development life cycle adalah metode tradisional yang digunakan
untuk mengembangkan, memelihara dan mengganti sistem informasi” (Hoffer,
19
Prescott, & Topi,2009: 85). Database System Development Life cycle ini merupakan
tahapaan siklus dalam perancangan database, di mana terdiri beberapa tahapan yang
dimulai dengan perencanaan, pengumpulan informasi hingga perancangan database.
Dari penjelasan di atas dapat diambil kesimpulan bahwa database system
development life cycle berkaitan dengan siklus hidup sistem informasi,
pengembangan database terdiri dari beberapa tahap dan bisa saja terjadi beberapa
pengulangan tahapan sebelumnya.
Gambar 2.3 The Database System Development Life cycle
(Sumber: Connolly & Begg, 2010: 314)
20
2.1.6.1 Database Planning
Dalam membangun sebuah database, tentunya diperlukan terlebih dahulu
suatu perencanaan agar masalah maupun resiko yang akan terjadi pada tahap
implementasi dapat dihilangkan ataupun diminimalisir.
Seperti yang dikemukakan oleh Connolly & Begg (2010: 313) “Database
planning merupakan kegiatan manajemen yang memungkinkan tahapan dari siklus
hidup pengembangan sistem database untuk direalisasikan seefisien mungkin.
Database planning harus diintegrasikan dengan strategi sistem informasi dari
keseluruhan organisasi”. Ada tiga isu utama yang terlibat dalam merumuskan strategi
informasi, yaitu :
1. Identifikasi rencana dan tujuan perusahaan dengan penentuan kebutuhan
sistem informasi.
2. Evaluasi sistem informasi pada saat ini untuk menentukan kekuatan dan
kelemahan yang ada.
3. Menilai kesempatan atau peluang teknologi informasi yang mungkin
menghasilkan keuntungan kompetitif.
Dari penjelasan di atas, maka dapat disimpulkan bahwa Database planning
bertujuan untuk menentukan rencana-rencana dalam merancang sebuah database.
2.1.6.2 System Definition
Sebelum merancang suatu sistem database, hal utama yang dilakukan adalah
mengidentifikasi batas-batas dari sistem yang sedang diselidiki dan bagaimana
interface dengan bagian dari sistem informasi organisasi. Seperti yang didefinisikan
oleh Connolly & Begg (2010: 316) “System definition menjelaskan ruang lingkup
dan batas-batas dari sistem database dan pendangan pengguna utama”.
21
Dari pengertian system definition dapat disimpulkan bahwa system definition
merupakan batasan-batasan dalam membuat database yang diperlukan oleh
perusahaan. System definition digunakan untuk mengidentifikasi scope dari sistem
perusahaan.
User View
Sebelum melakukan perancangan database organisasi, langkah pertama yang
harus dilakukan adalah mengumpulkan informasi yang diperlukan oleh organisasi,
karena informasi merupakan hal yang penting dalam perancangan database.
Informasi merujuk pada apa yang diperlukan oleh pengguna database.
Seperti yang didefinisikan oleh Connolly & Begg (2010: 316) “User view
adalah mendefinisikan apa yang dibutuhkan dari sistem database dari perspektif
peran pekerjaan tertentu (seperti manajer atau supervisor) atau area aplikasi
enterprise (seperti pemasaran, personalia atau kontrol stok)”.
Dapat disimpulkan bahwa sebelum melakukan perancangan database
diperlukan terlebih dahulu pengumpulan informasi-informasi yang dibutuhkan oleh
organisasi.
2.1.6.3 Requirements Collection and Analysis
Setelah menentukan sistem definisi, tahap selanjutnya adalah mengumpulkan
informasi yang diperlukan dan melakukan analisis data. “Requirements collection
and analysis adalah proses pengumpulan dan menganalisis informasi tentang bagian
dari organisasi yang harus didukung oleh sistem database dan menggunakan
informasi untuk mengidentifikasi persyaratan untuk sistem baru” (Connolly & Begg,
2010: 316).
22
Dari pengertian Requirements collection and analysis dapat disimpulkan
bahwa Requirements collection and analysis bertujuan untuk mengumpulkan
kebutuhan-kebutuhan yang diperlukan oleh perusahaan dalam pengembangan
database dan menganalisis sistem perusahaan untuk mendukung sistem database.
2.1.6.4 Database Design
Setelah menentukan Requirements collection and analysis tahap selanjutnya
adalah perancangan database. Perancangan database yang dilakukan berdasarkan
data yang telah dikumpulkan dan yang telah dianalisis. Pendekatan dalam
perancangan database terdiri dua pendekatan yaitu bottom-up dan top-down. Seperti
yang dikemukakan oleh Connolly & Begg (2010: 320-324) “database design
merupakan proses menciptakan desain yang akan mendukung pernyataan misi dan
tujuan perusahaan pada sistem database yang diperlukan”. Pendekatan desain
database ada dua yaitu bottom-up dan top-down. Pendekatan bottom-up dimulai pada
tingkat dasar atribut, yang melalui analisis asosiasi yang dikelompokkan ke dalam
hubungan yang mewakili jenis entitas dan hubungan antar entitas. Pendekatan
Buttom-up tepat untuk digunakan mendesain database sederhana dengan jumlah
yang atribut relatif kecil. Namun pendekatan ini akan menjadi sulit bila diterapkan
pada desain database yang lebih kompleks dengan jumlah atribut yang besar, dimana
sulit untuk membuat semua dependensi fungsional antara atribut.
Pendekatan Top-down dimulai dengan pengembangan model data yang berisi
entitas level tinggi dan hubungan kemudian berturut-turut diterapkan perbaikan Top-
down untuk mengidentifikasi entitas tingkat bawah, hubungan, dan atribut yang
terkait. Pendekatan Top-down diilustrasikan dengan menggunakan konsep dari model
23
relasional entitas (ERD), dimulai dengan identifikasi entitas dan hubungan antara
entitas yang merupakan penting bagi organisasi.
Dalam merancang sebuah basis data dibutuhkan sebuah metodologi.
Metodologi perancangan basis data berguna untuk memudahkan dalam perancangan.
Seperti yang dikemukakan oleh Connolly & Begg (2010: 466) “Metodologi
perancangan basis data merupakan pendekatan terstruktur yang menggunakan
prosedur, teknik, tools dan alat bantu dokumentasi untuk mendukung dan
memfasilitasi proses desain”. Metodologi perancangan harus dibuat secara pertahap
dari awal sampai akhir sesuai dengan struktur metodologinya. Metodologi
perancangan basis data terdiri dari tiga tahap yaitu :
1. Conceptual database design
2. Logical database design
3. Physical database design
2.1.6.4.1 Conceptual database design
Conceptual database design merupakan tahap yang pertama dalam
metodologi perancangan database. Seperti yang dikemukakan oleh Connolly & Begg
(2010: 467) “Conceptual database design adalah adalah proses membangun model
data yang digunakan dalam suatu perusahaan, yang terlepas dari semua pertimbangan
fisik (Physical)”. Pembuatan model konseptual berdasarkan proses bisnis yang
sedang berjalan pada suatu organisasi, sesuai dengan data-data apa yang dibutuhkan
oleh organisasi.
Conceptual database design memiliki beberapa langkah, yaitu :
1. Mengidentifikasi tipe entitas.
Untuk mengidentifikasi apa yang diperlukan oleh jenis entitas.
24
2. Mengidentifikasi tipe hubungan.
Untuk mengidentifikasi hubungan yang penting diantara tipe entitas.
3. Mengidentifikasi dan menghubungkan atribut dengan tipe entitas dan tipe
hubungan.
Untuk menghubungkan atribut sesuai dengan tipe entitas dan tipe
hubungan.
4. Menentukan atribut domain.
Untuk menentukan domain dari atribut di dalam model data konseptual.
Domain adalah sebuah nilai dari satu atau lebih atribut yang
menggambarkan nilai dari atribut.
5. Menentukan atribut candidate, primary, dan alternate key.
Untuk mengidentifikasi candidate key pada setiap tipe entitas dan jika
lebih dari satu candidate key, pilih salah satu untuk menjadi primary key
dan yang lain sebagai candidate key.
6. Mempertimbangkan penggunaan tingkatan konsep pemodelan (langkah
tambahan).
Untuk mempertimbangkan penggunaan konsep pemodelan seperti
generalisasi, agregasi dan komposisi.
7. Mengecek model yang redudansi.
Bertujuan untuk mengecek adanya redudansi dalam model. Tahap nya
ada 3 yaitu : Memeriksa kembali hubungan One-to-One (1:1),
Menghilangkan hubungan yang redudansi, dan mempertimbangkan
dimensi waktu.
25
8. Memvalidasi model data konseptual terhadap transaksi pengguna.
Untuk memastikan model data konseptual mendukung transaksi yang
dibutuhkan.
9. Meninjau model data konseptual dengan pengguna.
Untuk meninjau model data konseptual dengan pengguna untuk
memastikan pertimbangan model “benar” yang merupakan reprensentasi
dari persyaratan data perusahaan.
2.1.6.4.2 Logical database design
Logical database design merupakan tahap kedua dalam metodologi
perancangan database setelah konseptual. ”Logical database design merupakan
suatu proses membangun model data yang digunakan dalam suatu perusahaan
berdasarkan pada model data yang spesifik, tetapi tidak tergantung pada DBMS dan
pertimbangan fisik lainnya” (Connolly & Begg, 2010: 467). Perancangan logikal
merupakan lanjutan dari perancangan konseptual, perancangan logikal ini
menjelaskan struktur informasi basis data serta aturan-aturan dalam proses
perancangan basis data.
Logical database design memiliki beberapa langkah, yaitu :
1. Mengambil hubungan dari model data konseptual.
Untuk membuat hubungan model data logikal untuk menyatakan entitas,
hubungan, dan atribut yang telah diidentifikasi. Pada tahap ini akan
ditentukan : Strong entity types, weak entity types, one-to-many (1:*)
binary relationship types, one-to-one (1:1) binary relationship types,
one-to-one (1:1) recursive relationship types, superclass/subclass
26
relationship type, many-to-many (*:*) binary relationship types, complexs
relationship types, dan multi-valued attributes.
2. Memvalidasi hubungan dengan normalisasi.
Tujuan dari normalisasi untuk memastikan suatu hubungan paling sedikit
memerlukan atribut untuk mendukung kebutuhan data perusahaan.
3. Memvalidasi hubungan terhadap transaksi pengguna.
Untuk memastikan bahwa hubungan di dalam model data logikal
mendukung keperluan transaksi.
4. Mengecek integrity constraint.
Untuk mengecek apakah hambatan integritas menggambarkan model data
logikal. Ada 6 tipe integrity constraint :
a. Required data
Beberapa atribut harus mengandung nilai yang benar, dengan kata lain
setiap atribut tidak boleh kosong.
b. Attribute domain constraints
Setiap atribut memiliki domain, yaitu sekumpulan nilai atau values
yang sah.
c. Multiplicity
Multiplisitas mewaliki hambatan yang ditempatkan pada hubungan
antara data dalam database.
d. Entity integrity
Primary key dari sebuah entitas tidak boleh kosong.
e. Referential integrity
Jika foreign key mengandung sebuah nilai atau value, nilai tersebut
harus mengacu pada tuple yang ada didalam relasi parent.
27
f. General constraint
Memperbaharui entitas yang dapat dikendalikan hambatan yang
mengatur transaksi dunia nyata diwakili oleh perbaharuan.
5. Meninjau data model logikal dengan pengguna.
Untuk meninjau data model logical dengan pengguna untuk memastikan
data model sesuai dengan pernyataan yang diperlukan oleh perusahaan.
6. Menggabungkan model data logikal kedalam model global (langkah
tambahan).
Menggabungkan model data logikal ke dalam model data logikal global
yang mewakili semua pengguna dari database.
7. Mengecek perkembangan yang akan datang.
Untuk menentukan apakah ada kemungkinan signifikan perubahan di
masa mendatang dan menilai apakah model data logical dapat
mengakomodasi perubahan.
2.1.6.4.3 Physical database design
Physical database design merupakan metodologi perancangan database yang
terakhir setalah logical database design. Setelah melakukan perancangan pada
logical database design tahap selanjutnya adalah Physical database design.
“Physical database design adalah suatu proses menghasilkan sebuah gambaran yang
menunjukkan pelaksanaan database pada penyimpanan sekunder, menggambarkan
hubungan dasar, file organisasi dan indeks yang digunakan untuk mencapai akses
yang efisien terhadap data, dan setiap integritas terkait dengan kendala dan tindakan
keamanan” (Connolly & Begg, 2010: 523). Perancangan fisik ini bertujuan untuk
menentukan struktur penyimpanan basis data pada suatu organisasi.
28
Pysical database design memiliki beberapa langkah, yaitu :
1. Menterjemahkan model data logical untuk sasaran DBMS.
Untuk menghasilkan hubungan skema database dari model data logikal
dapat diimplementasikan ke dalam DBMS.
1. Merancang hubungan dasar.
Untuk memutuskan bagaimana untuk merepresentasikan identifikasi
hubungan dasar dalam model data logical dalam DBMS.
2. Merancang perwakilan atau representasi dari data yang diperoleh.
Untuk memutuskan bagaimana untuk merepresentasikan data yang
diperoleh dalam model data logikal dalam DBMS.
3. Merancang general constraints.
Untuk merancang general constraint ke dalam DBMS.
2. Merancang file organisasi dan indeks.
Menentukan file organisasi yang optimal untuk menyimpan hubungan
dasar dan indeks yang diperlukan untuk mencapai kinerja yang dapat
diterima, yaitu cara dimana hubungan dan tuple akan dilaksanakan pada
penyimpanan sekunder.
1. Menganalisis transaksi.
Untuk memahami fungsi dari transaksi yang akan berjalan pada
database dan untuk menganalisis transaksi yang penting.
2. Memilih file organisasi.
Untuk menentukan sebuah efisiensi file organisasi untuk setiap
hubungan dasar.
29
3. Memilih indeks.
Untuk menentukan apakah penambahan indeks akan meningkatkan
performa sistem.
4. Mengestimasikan kapasitas kebutuhan.
Untuk memperkirakan jumlah kapasitas yang akan dibutuhkan oleh
database.
3. Merancang tampilan pengguna.
Untuk merancang tampilan pengguna yang diidentifikasi selama
pengumpulan kebutuhan dan menganalisis tahapan database system
development lifecycle.
4. Merancang mekanisme keamanan.
Untuk merancang mekanisme keamanan untuk database dispesifikasikan
selama pengumpulan kebutuhan dan pengumpulan tahapan dari database
system development lifecycle.
Dari pengertian database desisgn dapat disimpulkan bahwa database design
merupakan sebuah desain yang mendukung atau sesuai dengan misi dan tujuan yang
diperlukan oleh perusahaan.
2.1.6.5 DBMS Selection
Setelah melakukan perancangan database, tahap selanjutnya adalah memilih
DBMS yang cocok untuk sistem database. Seperti yang dikemukakan oleh Connolly
& Begg (2010: 3125-329) “DBMS selection merupakan pemilihan suatu DBMS
yang tepat untuk mendukung sistem database”. Ada empat tahap dalam pemilihan
DBMS yaitu :
30
1. Menentukan kerangka acuan penelitian. Menentukan kerangka acuan
penelitian dari DBMS adalah menetapkan, menyatakan tujuan dan ruang
lingkup dan tugas-tugas yang perlu dilakukan.
2. Daftarkan pada list dua atau tiga produk. Salah satu kriteria keberhasilan
implementasi adalah dapat menghasilkan daftar awal produk DBMS
untuk dilakukan evaluasi.
3. Mengevaluasi produk. Dalam mengevaluasi produk banyak variasi cara
yang dapat dilakukan untuk mengevaluasi produk DBMS, untuk tujuan
evaluasi fitur ini dapat dinilai sebagai kelompok atau individu.
4. Merekomendasikan pemilihan dan menghasilkan laporan. Merupakan
langkah terakhir dalam pemilihan DBMS untuk mendokumentasikan
proses dan untuk memberikan pernyataan temuan dan rekomendasi untuk
produk DBMS tertentu.
Dari pengertian DBMS Selection dapat disimpulkan bahwa pada tahap ini
dilakukan pemilihan DBMS untuk mendukung sistem database perusahaan.
Pemilihan DBMS sangat penting bagi perusahaan karena akan mempengaruhi sistem
DBMS.
2.1.6.6 Application Design
Tahap selanjutnya setelah pemilihan DBMS adalah merancang aplikasi yang
mendukung penggunaan database. Seperti yang dikemukakan oleh Connolly & Begg
(2010: 329-333) “application design merupakan desain user interface dan program
aplikasi yang digunakan untuk mengelola database”.
31
Dari pengertian Application Design dapat disimpulkan bahwa application
design merupakan sebuah desain user interface dari sebuah program aplikasi,
aplikasi tersebut berhubungan dengan database.
2.1.6.6.1 Transaction design
Transaction design adalah tindakan atau serangkaian tindakan yang
dilakukan oleh single user atau program aplikasi, yang mengakses atau mengubah isi
dari database.
2.1.6.6.2 User Interface Design Guidelines
Sebelum menerapkan laporan hal yang pertama yang harus dilakukan adalah
merancang layout atau tata letak, Guidelines digunakan untuk merancang layout dan
laporan, yaitu :
• Meaningful title, agar form atau laporan bersih dari kata-kata ambigu.
• Dapat dengan mudah memahami instruksi
• Pengelompokan yang logis dan pengurutan field
• Menarik secara visual tata letak dari bentuk atau laporan
• Mengenal label field, seperti Sex harus digantikan dengan Gender untuk
memudahkan user mengisi form.
• Consistent terminology and abbreviations
• Menggunakan warna secara konsisten
• Visible space dan batas-batas untuk kolom data entry
• Kursor nyaman bila digerakkan
• Kesalahan koneksi untuk karakter individu dan seluruh kolom
32
• Pesan kesalahan tidak dapat menerima nilai
• Kolom opsional ditandai dengan jelas
• Pesan yang jelas untuk kolom
• Penyelesaian sinyal
2.1.6.7 Prototyping
Tahap selanjutnya setelah merancang aplikasi database adalah membuat
prototyping. Prototyping didefinisikan sebagai pembangun sebuah model kerja
sistem database. “Prototyping merupakan sebuah model kerja yang biasanya tidak
memiliki semua fitur yang diperlukan atau memberi semua fungsi dari sistem final”
(Connolly & Begg, 2010: 333). Ada dua strategi prototyping yang digunakan pada
saat ini yaitu requirement prototyping dan evolutionary prototyping.
Requirement prototyping menggunakan prototipe untuk menentukan
kebutuhan sistem database yang diusulkan dan sekali kebutuhan lengkap prototipe
akan dibuang. Evolutionary prototyping digunakan untuk tujuan yang sama, yang
berbeda terpenting adalah prototipe ini tidak dibuang tetapi dengan pengembangan
lebih lanjut menjadikan sistem database dapat bekerja.
Dari pengertian prototyping dapat disimpulkan bahwa prototyping merupakan
model kerja sistem database. Prototyping terbagi ada dua jenis yaitu requirement
prototyping dan evolutionary prototyping.
2.1.6.8 Implementation
Setelah membuat model prototyping, tahap selanjutnya adalah
mengimplementasikan aplikasi yang telah dibuat. “Implementasi merupakan realisasi
33
fisik dari database dan desain aplikasi” (Connolly & Begg, 2010: 333). Pada
penyelesaian tahap desain sekarang dalam posisi untuk menerapkan database dan
program aplikasi. Implementasi database dicapai dengan menggunakan DDL (Data
Definition Language) dari DBMS yang dipilih atau GUI, yang menyediakan fungsi
yang sama pada tingkatan DDL.
Bagian dari program aplikasi adalah transaksi database yang
diimplementasikan dengan menggunakan DML (Data Manipulation Language) dari
target DBMS, mungkin tertanam dalam bahasa pemrograman seperti Visual Basic
(VB), Delphi, C, C + +, C #, Java, COBOL, Fortran Ada , Pascal.
Dari pengertian implementasi dapat disimpulkan bahwa implementasi
merupakan suatu penerapan aplikasi yang mendukung desain aplikasi dan database.
2.1.6.9 Data Conversion and Loading
Setelah mengimplementasikan aplikasi, tahap selanjutnya adalah memasukan
data ke dalam database yang baru atau data conversion and loading. “Data
conversion and Loading didefinisikan sebagai mentransfer data yang ada ke dalam
database baru dan mengkorversi setiap aplikasi yang ada untuk menjalankan
database baru” (Connolly & Begg, 2010: 334). Pada tahap ini diperlukan hanya bila
sistem database baru menggantikan sistem lama. Utilitas biasanya membutuhkan
spesifikasi dari sumber file dan target database dan kemudian secara otomatis
mengubah data ke format yang diperlukan dari file database baru. Setiap kali
konversi dan loading yang diperlukan, proses harus benar-benar direncanakan untuk
memastikan kelancaran transisi operasi penuh.
34
Dari pengertian data conversion and loading dapat disimpulkan bahwa data
conversion and Loading merupakan sebuah proses di mana data operasional yang
ada di dalam perusahaan ditransfer ke dalam database baru dan dilakukan konversi.
2.1.6.10 Testing
Setelah memasukkan data ke dalam database baru, tahap selanjutnya adalah
melakukan pengujian sistem database dengan tujuan untuk menghindari kesalahan
sebelum sistem database diterapkan. Seperti yang dikemukakan oleh Connolly &
Begg (2010: 334) “testing merupakan sebuah proses menjalankan sistem database
dengan maksud untuk menemukan kesalahan”. Sebelum program database
diterapkan di dalam perusahaan, sistem database yang baru dikembangkan harus
benar-benar teruji. Dicapai dengan menggunakan strategi uji yang direncanakan dan
data yang realistis, sehingga seluruh proses pengujian yang ketat dan metode
dilakukan.
Dari pengertian testing dapat disimpulkan bahwa testing merupakan tahap
dimana aplikasi yang telah dirancang dites untuk menemukan kesalahan secara dini
guna untuk meminimalkan kesalahan-kesalahan pada saat aplikasi diterapkan.
2.1.6.11 Operational Maintenance
Operational Maintenance merupakan suatu tahap di mana sistem database
telah diterapkan, sistem database tersebut dilakukan pemantauan dan pemeliharaan
sistem agar dapat berjalan dengan baik. “Operational Maintenance merupakan
sebuah proses pemantauan dan pemeliharaan sistem database” (Connolly & Begg,
2010: 335). Pada tahap sebelumnya, sistem database telah sepenuhnya dilaksanakan
35
dan diuji. Sistem ini sekarang bergerak ke tahap pemeliharaan, yang melibatkan
kegiatan:
1. Memantau kinerja sistem. Jika kinerja turun di bawah pada tingkat yang
memadai, reorganisasi database mungkin diperlukan.
2. Mempertahankan dan meningkatkan sistem database. kebutuhan baru
dimasukkan ke dalam sistem database melalui tahap-tahap sebelumnya
dalam siklus hidup.
Sebuah DBMS biasanya menyediakan berbagai utilitas untuk membantu
administrasi database, termasuk utilitas untuk memuat data ke dalam database dan
untuk memonitor sistem. Proses pemantauan berlanjut sepanjang kehidupan sistem
database dan dalam waktu dapat menyebabkan reorganisasi database puas dalam
perubahan kebutuhan. Perubahan ini pada gilirannya memberikan informasi pada
evolusi kemungkinan dari sistem dan sumber daya masa depan yang mungkin
diperlukan. Ketika sistem database baru dibawa online, pengguna harus
mengoprasikannya secara paralel dengan sistem lama untuk periode waktu.
Dari pengertian Operasional Maintenance dapat disimpulkan bahwa tahap ini
merupakan tahap terakhir dalam siklus hidup perencanaan database, dimana pada
tahap ini dilakukan memantauan dan pemeliharaan sistem yang bertujuan agar sistem
dapat berjalan dengan baik.
2.1.7 Normalisasi
Normalisasi merupakan aktivitas yang dilakukan untuk menguji suatu relasi.
Pengujian itu dilakukan untuk melihat apakah relasi tersebut telah cukup baik atau
tidak. Seperti yang dikemukakan oleh Kolahi (2007: 636) “normalisasi merupakan
36
suatu tindakan penyempurnaan suatu skema ke skema yang lebih baik dengan
mempertimbangkan tiga kriteria yaitu menjaga data, mempertahankan atau menjaga
dependensi, dan menghilangkan redudansi”.
Baik buruknya suatu relasi dapat dilihat dari bagaimana keintegritasan data
dalam relasi tersebut. Seperti yang dikemukakan oleh George C (2007: 488),
“Normalisasi memainkan peran penting baik dalam teori dan praktek desain
database”. Dalam bentuk normalnya digambarkan dengan istilah table dimana table
tersebut berisi data yang kurang lengkap, kemudian dilakukan tahap pertama dari
1NF hingga 3NF yang bertujuan untuk mengilangkan duplikasi data.
Normalisasi merupakan teknik yang mempunyai tahapan-tahapan yang
bertujuan untuk meminimalkan data yang tidak konsisten, seperti yang didefinisikan
oleh Connolly & Begg (2010: 416) bahwa “normalization adalah sebuah sebuah
teknik untuk menghasilkan sebuah hubungan dengan properties yang diinginkan,
memberikan permintaan data dari sebuah perusahaan. Normalisasi adalah teknik
formal untuk dasar hubungan analisis dalam primary key dan functional
dependecies”.
Dari pengertian normalisasi di atas, maka dapat disimpulkan bahwa
normalisasi merupakan suatu teknik yang digunakan untuk memecah suatu tabel
menjadi dua tabel maupun lebih untuk mengatasi masalah yang ada pada relasi
tersebut. Ketidaknormalan yang biasanya terjadi dan menjadi masalah adalah data
yang redudansi maupun ketidakkonsistenan.
Proses normalisasi sebagai berikut :
1. Unnormalized Form (UNF), sebuah tabel berisi satu atau lebih group
diulangi.
37
2. First Normal Form (1NF), sebuah hubungan dimana perpotongan dari
setiap baris dan kolom berisi satu dan hanya satu value.
3. Second Normal Form (2NF), hubungan yang didalam first normal form
dan setiap non-primary key attribute adalah fully functionally dependent
dalam primary key.
4. Third Normal Form (3NF), hubungan yang didalam first dan second
normal form dan yang non-primary key attribute adalah transitively
dependent dalam primary key.
2.1.8 Entity Relationship Modeling
Entity relationship modeling merupakan suatu model relasi yang
menggambarkan data dalam bentuk entitas, relasional, atribut serta hubungan antara
entitas. Seperti yang dikemukakan oleh Hoffer, Prescott, & Topi (2009: 137) “Entity
relationship model adalah representatif logis dari data untuk suatu organisasi atau
area bisnis dengan menggunakan entitas untuk kategori data dan hubungan untuk
berhubungan dengan antar entitas lainnya”.
“Aspek yang sulit dalam perancangan basis data adalah kenyataan bahwa
perancangan, programmer, dan pemakai akhir cenderung melihat sebuah data dengan
cara yang saling berbeda” (Connolly & Begg, 2010: 371). Untuk memastikan
pemahaman secara ilmiah dari data dan bagaimana data digunakan oleh perusahaan,
dibutuhkan sebuah komunikasi yang non teknis dan lepas dari kebingungan.
2.1.8.1 Entity Type
Entitas merupakan objek yang berbentuk fisik.dan memiliki atribut dapat
berupa objek maupun abstrak, seperti yang dikemukakan oleh Hoffer, Prescott, &
38
Topi (2009: 141) “entity type adalah kumpulan entitas yang bersifat umum atau
karakteristik”. Tipe entitas bagian dari entitas yang memiliki atribut unik agar dapat
membedakannya dari entitas lainnya di dalam Entity Relationship Modeling.
Untuk menentukan tipe entitas di dalam sebuah proses bisnis, hal pertama
yang dilakukan adalah mengidentifikasi objek, kejadian atau tempat yang mungkin
penting dibutuhkan oleh suatu organisasi. Connolly & Begg, (2010: 372)
mendefinisikan “entity type sebagai sebuah grup dari objek dengan properti yang
sama, yang diidentifikasi oleh perusahaan seperti mendapatkan sebuah eksistensi
independen”.
Dengan demikian, dapat disimpulkan bahwa entity type dapat berupa objek,
orang, kejadian, dan tempat.
2.1.8.2 Relationship Type
Tipe hubungan digambarkan sebagai hubungan diantara entitas, seperti yang
didefinisikan oleh Hoffer, Prescott, & Topi (2009: 151) “relationship type adalah
hubungan antara (atau diantara) tipe entitas”. Pernyataan tersebut diperkuat oleh
Connolly & Begg, (2010: 374) yang mendefinisikan “relationships type sebagai
sebuah set dari assosiasi yang bermakna di antara type entitas”.
Dari pernyataan Connolly & Begg dapat disimpulkan bahwa tipe hubungan
atau relationship type merupakan gambaran hubungan antara satu entitas dengan
entitas lainnya yang saling terikat satu sama lain.
Dapat disimpulkan bahwa tipe hubungan adalah hubungan yang terjadi di
antara satu entitas atau lebih.
39
2.1.8.3 Attribute
Atribut merupakan isi dari entitas yang memiliki karakteristik yang unik,
seperti dikemukakan oleh Hoffer, Prescott, & Topi (2009: 145) “attribute adalah
sebuah properti atau karakteristik suatu entitas atau hubungan yang menarik dari
organisasi”. Pernyataan tersebut diperkuat oleh Connolly & Begg (2010: 379) yang
mendefinisikan “attribute sebagai sebuah properti dari sebuah entitas atau tipe
hubungan”. Atribut yang ada pada entitas terdiri dari tiga bagian, yaitu :
1. Candidate key merupakan set minimal dari attribut yang unik, diidentifikasi
setiap kejadian dari sebuah tipe entitas.
2. Primary key merupakan candidate key yang dipilih yang unik, diidentifikasi
setiap kejadian dari sebuah tipe entitas.
3. Composite key merupakan candidate key yang terdiri dari dua atau lebih
atribut.
Dari pengertian diatas dapat disimpulkan bahwa atribut bagian dari entitas,
setiap entitas memiliki atribut yang unik dan berbeda. Atribut dapat berupa candidate
key, primary key dan composite key.
2.1.8.4 Strong Entity
Di dalam sebuah entity relationship model terdapat berbagai tipe entitas, tipe
entitas tersebut memiliki sifat yang berbeda-beda, salah satunya adalah strong entity.
Strong entity merupakan entitas yang dapat berdiri sendiri, Seperti yang
dikemukakan oleh Hoffer, Prescott, & Topi (2009: 142) “strong entity adalah suatu
entitas yang keberadaannya yang tidak tergantung dari jenis entitas lainnya”.
Pernyataan tersebut diperkuat oleh Connolly & Begg (2010: 383) yang
mendeskripsikan “Strong Entity sebagai suatu entitas yang keberadaanya tidak
40
bergantung pada beberapa entitas yang lain”. Karakter dari entitas ini adalah bahwa
setiap kejadian, entitas teridentifikasi secara unik menggunakan atribut primary key.
Dari pengertian diatas dapat disimpulkan bahwa Strong entity merupakan
entitas yang dapat berdiri sendiri dan tidak tergantung pada entitas lain.
2.1.8.5 Weak Entity
Di Dalam entity relationship model juga terdapat weak entity. Weak entity
merupakan entitas yang tidak dapat berdiri sendiri, seperti yang dikemukakan oleh
Hoffer, Prescott, & Topi (2009: 142) “weak entity adalah suatu entitas yang
keberadaanya tergantung pada beberapa entitas lainnya, weak entity ini tidak
memiliki arti bisnis dalam ER diagram tanpa entitas yang bergantung”. Pernyataan
tersebut diperkuat oleh Connolly & Begg (2010: 383) yang mendefinisikan bahwa
“weak entity merupakan entitas yang keberadaanya tergantung pada beberapa entitas
yang lain”.
Dari pengertian diatas dapat disimpulkan bahwa Weak entity merupakan
entitas yang tidak dapat berdiri sendiri tanpa entitas lain. Entitas ini memiliki
hubungan dengan beberapa entitas sehingga tidak dapat berdiri sendiri tanpa entitas
lainnya.
2.1.8.6 Multiplicity
Multiplicity menggambarkan keterikatan hubungan di antara tipe entitas,
seperti yang didefinisikan oleh Connolly & Begg (2010: 385) “multiplicity adalah
sejumlah kejadian yang mungkin dari suatu tipe entitas yang dapat berhubungan
dengan tipe entitas tunggal melalui hubungan tertentu”. Multipllicity memiliki 3 tipe,
yaitu :
41
1. Hubungan One-to-One (1:1)
Hubungan antara entitas yang paling banyak berpasangan dengan satu
entitas saja.
2. Hubungan One-to-Many (1:*)
Hubungan antar entitas di mana satu entitas dapat berhubungan
dengan banyak entitas lainnya. Contohnya entitas A dapat
berhubungan banyak dengan entitas B tetapi entitas B hanya dapat
berhubungan dengan entitas A.
3. Hubungan Many-to-Many (*:*)
Hubungan antar entitas di mana entitas C dapat berhubungan banyak
dengan entitas D dan entitas D dapat berhubungan banyak dengan
entitas C.
Dapat disimpulkan bahwa multiplicity merupakan kejadian kemungkinan
yang berhubungan dengan tipe entitas dan memiliki hubungan tertentu seperti one-
to-one (1:1), one-to-many (1:*), dan many-to-many (*:*).
2.1.9 DBMS
Dengan adanya database, tentunya dibutuhkan suatu software atau perangkat
lunak yang digunakan untuk mendefinisikan, membuat, dan memelihara data yang
berada dalam database tersebut. Seperti yang dikemukakan oleh Hoffer, Prescott, &
Topi (2009: 49) “DBMS adalah sebuah sistem perangkat lunak yang digunakan
untuk membuat, memelihara dan menyediakan akses kontrol ke pengguna basis
data”.
42
Penjelasan diatas diperkuat oleh pernyataan Connolly & Begg ( 2010: 66)
“DBMS adalah perangkat lunak yang berinteraksi dengan program-program
pengguna aplikasi dan database”.
Fasilitas yang disediakan oleh DBMS adalah sebagai berikut :
1. Memungkinkan pengguna untuk mendefinisikan database, biasanya
melalui DDL. DDL memungkinkan pengguna untuk menentukan tipe
data dan struktur dan kendala pada data yang akan disimpan dalam
database.
2. Memungkinkan pengguna untuk insert, update, delete, dan mengambil
data dari database, biasanya melalui DML (Data Manipulation
Language).
3. Menyediakan akses kontrol ke database, seperti :
• Sistem keamanan
• Sistem integrasi
• Sistem konkuransi kontrol
• Sistem pemulihan kontrol
• User accessible catalog
2.1.9.1 Komponen Database Management System (DBMS)
Dalam menjalan tugasnya, DBMS memiliki beberapa komponen dalam
menjalankan tugasnya. komponen-komponen DBMS memerlukan perangkat keras
seperti komputer, CPU, dan lainnya, perangkat lunak seperti software dalam
menjalankan sistemnya, DMBS juga memerlukan data-data, desain, dan orang-orang
43
yang menangani DBMS. Pernyataan tersebut diperkuat oleh Connolly & Begg (2010:
68-71) yang menjelaskan bahwa komponen DBMS terdiri dari 5 komponen, yaitu :
1. Hardware
DBMS dan aplikasi memerlukan perangkat keras untuk beroperasi.
Perangkat keras dapat berkisar dari komputer pribadi tunggal untuk
mainframe tunggal atau jaringan komputer. Perangkat keras tertentu
tergantung pada kebutuhan organisasi dan DBMS yang digunakan.
Beberapa DBMS yang hanya berjalan pada hardware tertentu atau sistem
operasi, sementara lain yang berjalan di berbagai perangkat keras dan
sistem operasi. Sebuah DBMS memerlukan sejumlah minimum memori
utama dan ruang disk untuk dijalankan, tapi konfigurasi ini minimal
belum tentu memberikan kinerja yang dapat diterima.
2. Software
Komponen perangkat lunak terdiri dari perangkat lunak DBMS itu sendiri
dan program aplikasi, bersama dengan sistem operasi, termasuk perangkat
lunak jaringan jika DBMS digunakan oleh pengguna melalui jaringan.
3. Data
Data merupakan komponen yang penting di dalam DBMS. Data berperan
sebagai jembatan antara komponen perangkat lunak dan komponen
manusia. Database berisi data operasional atau data transaksi dan
metadata. Struktur database disebut dengan skema, di dalam skema
terdapat tabel-tabel dan atribut dari sebuah objek.
4. Procedure
Prosedur mengacu pada instruksi dan aturan yang mengatur desain dan
penggunaan database. Pengguna sistem dan staf yang mengelola
44
database memerlukan prosedur terdokumentasi tentang cara
menggunakan atau menjalankan sistem.
5. People
People merupakan user atau orang yang terlibat didalam sebuah sistem.
2.1.9.2 Keuntungan Database Management System (DBMS)
Penggunaan database management system dapat memberikan keuntungan
pada pengguna, keuntungannya adalah :
1. Mengontrol redudansi data, sistem basis file tradisional menyimpan
informasi yang sama di dalam beberapa file, pendekatan database
digunakan untuk menghilangkan redudansi data dengan mengintegrasikan
file sehingga beberapa salinan data yang sama tidak disimpan.
2. Konsistensi data, dengan menghilangkan atau mengendalikan redudansi
berarti mengurangi resiko tidak konsistensi yang terjadi. Jika data
disimpan hanya sekali dalam database setiap update nilai harus dilakukan
hanya sekali dan nilai baru yang tersedia langsung digunakan untuk user,
jika data yang disimpan lebih dari satu kali dan sistem meyadari hal ini
maka sistem dapat memastikan bahwa semua salinan data yang disimpan
harus konsisten.
3. Informasi lebih lanjut dari jumlah data yang sama, dengan integrasi data
operasional memungkinkan organisasi untuk mengarahkan informasi
tambahan dari data yang sama.
4. Berbagi data, biasanya file yang dimiliki oleh satu orang atau departemen
yang menggunakannya, di sisi lain database dimiliki oleh seluruh
45
organisasi dan dapat digunakan bersama oleh semua pihak yang
berwenang.
5. Meningkatkan integritas data, integritas database mengacu pada validasi
dari konsistensi data yang tersimpan, Integritas biasanya dinyatakan
dalam hal kendala yaitu konsistensi aturan di mana database tidak
diperbolehkan untuk melakukan pelanggaran.
6. Meningkatkan keamanan, keamanan database merupakan melindungi
database dari pengguna yang tidak sah atau unauthorized user.
7. Menegakkan standar, integrasi memungkinkan DBA untuk
mendefinisikan dan DBMS menegakkan standar yang diperlukan,
memungkinkan departemen, organisasi, standar nasional atau
internasional untuk hal seperti format data untuk memfasilitasi pertukaran
data antara sistem, penamaan conventions, standar dokumentasi, prosedur
update dan aturan akses.
8. Skala ekonomi, menggabungkan semua data operasional organisasi atau
perusahaan ke dalam satu database dan menciptakan suatu aplikasi yang
bekerja pada satu sumber data yang dapat memberikan penghematan
biaya.
9. Neraca persyaratan yang saling bertentangan, setiap pengguna atau
departemen memiliki kebutuhan yang mungkin bertentangan dengan
kebutuhan pengguna lain karena database berada dibawah kendali DBA,
DBA dapat membuat keputusan tentang penggunanaan desain dan
operasional database memberikan sumber daya yang baik bagi pengguna
dan organisasi secara keseluruhan.
46
10. Meningkatkan aksesibilitas data dan responsif, hasil dari integrasi data
yang melintasi batas-batas departemen adalah diakses langsung oleh
pengguna akhir.
11. Meningkatkan produktivitas, DBMS menyediakan banyak fungsi standar
yang biasanya programmer harus menulis di dalam aplikasi berbasis file.
12. Meningkatkan pemeliharaan melalui independensi data, dalam sistem
berbasis file, gambaran data dan logika untuk mengakses data yang
dibangun kedalam setiap program aplikasi membuat program bergantung
pada data.
13. Meningkatkan konkurensi, dalam beberapa sistem berbasis file jika ada
dua atau lebih pengguna yang diizinkan untuk mengakses rule yang sama
secara bersamaan adalah mungkin bahwa akses akan mengganggu satu
sama lain, sehingga kehilangan informasi atau bahkan hilangnya
integritas.
14. Meningkatkan backup dan pemulihan layanan, banyak sistem berbasis file
menempatkan tanggung jawab pada pengguna untuk memberikan ukuran
untuk melindungi data dari kegagalan untuk sistem komputer atau
program aplikasi.
2.1.9.3 Kekurangan Database Management System (DBMS)
Kekurangan-kekurangan database management system adalah sebagai
berikut:
1. Kompleksitas, kompleksitas dapat menyebabkan kegagalan untuk
memahami sistem dapat menyebabkan keputusan yang buruk yang dapat
memliki konsekuensi serius bagi suatu organisasi.
47
2. Ukuran, kompleksitas dan luasnya fungsi membuat ukuran DBMS
menjadi sangat besar untuk suatu software, DBMS dapat menampati
megabyte dari disk dan membutuhkan sejumlah memori yang besar agar
dapat berjalan secara efisien.
3. Biaya dari DBMS sangat bervariasi dan tergantung pada lingkungan dan
fungsi yang disediakan oleh DBMS.
4. Biaya tambahan untuk perangkat keras, DBMS memerlukan disk dalam
penyimpanan dan memungkinkan pembelian ruang penyimpanan
tambahan.
5. Biaya konversi, dalam beberapa situasi biaya dari DBMS dan perangkat
keras relatif kecil dibandingkan dengan biaya mengkonversi aplikasi
untuk beroperasi dalam DBMS baru dan perangkat keras.
6. Kinerja, DBMS ditulis lebih umum untuk melayani aplikasi bukan hanya
satu tapi lebih dari satu.
7. Dampak yang besar untuk gagal, sentralisasi sumber daya meningkat
kerentanan dari sistem karena semua pengguna dan aplikasi bergantungan
pada ketersediaan DBMS, kegagalan komponen tertentu dapat membawa
operasi berhenti.
2.1.10 Structure Query Language
Structure Query Language atau SQL merupakan bahasa pemrograman di
mana user dapat membuat database, melakukan query database, menambah
database baru dan memperbaharui database, seperti dikemukakan oleh Connolly &
Begg (2010: 221) “SQL adalah nonproducedural language terdiri dari kata english
standar seperti SELECT, INSERT, dan DELETE yang digunakan oleh profesional dan
48
non-profesional”. Keduanya menggunakan bahasa yang standar untuk
mendefinisikan dan memanipulasi hubungan database.
Pengertian Structure Query Language diperkuat oleh Hall (2011: 787) yang
mendefinisikan, “SQL adalah suatu alat pengolahan data untuk pengguna dan
programmer profesional untuk mengakses data dalam basis data secara langsung
tanpa membutuhkan program konvensional”.
SQL (Structure Query Language) terdiri dari dua bahasa, yaitu data
definition language (DDL) dan data manipulation language (DML). Data Definition
Language merupakan bagian dari Structure Query Language, Data Definition
Language selalu digunakan oleh DBA (Database Administrator) untuk proses
pembuatan suatu aplikasi basis data. Seperti yang dikemukakan oleh Connolly &
Begg (2010: 92) yang mendefinisikan “DDL sebagai bahasa yang memungkinkan
DBA atau pengguna untuk mendeskripsikan dan menamai entitas, atribut dan
hubungan yang diperlukan untuk aplikasi bersama dengan integritas yang terkait dan
kendala kemanan”.
DML yang merupakan singkatan dari Data Manipulation Language. Dari
kepanjangan tersebut dapat dilihat bahwa DML digunakan untuk memanipulasi data
maupun objek-objek yang ada, pernyataan tersebut diperkuat oleh Connolly & Begg
(2010: 92) yang mendefinisikan “DML adalah bahasa yang menyediakan
seperangkat operasi untuk mendukung operasi manipulasi database”.
SQL dari penjelasan diatas merupakan suatu alat operasi yang dapat
digunakan untuk memanipulasi data yang ada pada database seperti select, insert,
update dan delete. Select merupakan statement yang cukup penting yang ada didalam
language dan digunakan untuk ekspres query. Insert merupakan statement untuk
insert sebuah single row dari data sampai memasukan sebuah tabel nama atau untuk
49
insert jumlah dari baris untuk satu atau lebih beberapa tabel. Update merupakan
statement untuk update satu atau lebih nilai dalam specified kolom atau beberapa
kolom dari tabel nama. Dan delete merupakan statement untuk delete satu atau lebih
baris dari tabel nama. SQL juga terdiri dari dua bahasa yaitu DDL dan DML, DDL
digunakan untuk Create, Use, Drop objek, sedangkan DML digunakan untuk insert,
update, delete, dan select.
2.1.11 Program C#
Visual studio 2010 merupakan microsoft’s integrated development
environment (IDE) untuk membuat, menjalankan dan debugging program (aplikasi)
yang ditulis dalam berbagai bahasa pemrograman .NET. Seperti yang dikemukakan
oleh Deitel & Deitel (2008: 12) “microsoft memiliki tiga bahasa pemrograman
seperti Visual Basic (On the original BASIC), Visual C++ (dasarnya dari bahasa
C++ ), dan Visual C# yang merupakan bahasa pemrograman baru dari C++ dan
dikembangkan dengan sengaja oleh java untuk platform .NET”.
C# (dibaca C-Sharp) merupakan bahasa pemrograman yang dibuat khusus
untuk platform .NET. Deitel & Deitel (2011: 19) mendefinisikan C# sebagai
pemrograman object oriented, C# sebagai event driven karena di dalam C# dapat
merespon pengguna dengan event klik atau dengan penekanan tombol, dan C#
sebagai bahasa pemrograman visual.
Dari penjelasan di atas dapat disimpulkan bahwa bahasa pemrograman C#
merupakan cabang dari bahasa C, C++ dan java, di mana bahasa pemrograman C#
khusus digunakan untuk platform .NET oleh microsoft.
50
2.2 Teori Khusus
Teori-teori khusus digunakan untuk mendukung hasil analisis yang telah
dilakukan. Teori-teori khusus harus berhubungan dengan topik yang dibahas untuk
menjelasakan atau mendefinisikan teori-teori yang dipakai dalam pembahasan skripsi
ini.
2.2.1 Apotek
Salah satu usaha pembangunan nasional diarahkan kepada tercapainya
kemampuan hidup sehat yang tertujuan memajukan kesejahteraan umum dan
mencerdaskan bangsa. Tingkat kesehatan yang optimal merupakan modal dalam
melaksanakan pembangunan nasional karena mempunyai peran yang besar dalam
pengembangan kualitas sumber daya manusia. Untuk itu diperlukann sarana
kesehatan yang memadai, salah satunya seperti apotek. Letak apotek berada di
tengah-tengah masyarakat yang siap untuk menjadi sarana kesehatan bagi
masyarakat.
Seperti yang dikemukakan oleh Spillane (2010:164) apotek “merupakan
sarana untuk memberikan pelayanan farmasi termasuk pengobatan serta peralatan
kesehatan”. Pernyataan tersebut diperkuat oleh Firmansyah (2009:25-26) yang
mendefinisikan apotek “sebagai tempat dilakukan pekerjaan kefarmasian, penyaluran
persediaan farmasi dan pembekalan kesehatan lainnya kepada masyarakat”.
Apotek menyediakan sarana-sarana kesehatan seperti obat bebas ataupun obat
resep dokter. Seperti yang dikemukakan oleh Sitepoe (2008: 206) apotek
“merupakan sarana yang menyediakan obat yang diresepkan para dokter dan obat
bebas, apotek juga menyediakan obat racik yang dibuat oleh apoteker sesuai dengan
permintaan dokter”. Apotek dinamakan kefarmasian karena apotek tidak hanya
51
menjual obat tetapi juga mengembangkan sikap lebih berorientasi pada pelayanan
konsumen serta memberi informasi yang dibutuhkan tentang obat-obatan.
Dari pengertian apotek diatas dapat disimpulkan bahwa apotek merupakan
suatu sarana kesehatan yang menyediakan obat bebas maupun obat resep dokter,
selain itu apotek juga merupakan tempat dilakukannya kegiatan kefarmasian dimana
tidak hanya menyediakan obat-obat yang dibutuhkan oleh pelanggan tetapi juga
memberikan pelayanan dan memberikan informasi tentang obat-obat yang
dibutuhkan oleh masyarakat dan apotek juga merupakan suatu sarana dalam
meningkatkan kesejahteraan dan mengembangkan kualitas sumber daya manusia.
2.2.2 Pembelian
Pembelian merupakan suatu proses transaksi bisnis dimana sebuah
perusahaan bisnis membeli barang dari supplier atau pemasok. Pembelian barang
tersebut dilakukan untuk memenuhi kebutuhan pelanggan.
Pembelian barang juga didasarkan untuk menambahkan stok atau persediaan
barang yang ada di gudang. Seperti yang dikemukakan oleh Reeve (2009: 281)
“pembelian adalah didebit dari jumlah faktur pembelian”. Pengertian pembelian
diperkuat oleh Albecht, Stice, Stice, & Swain (2008: 291) yang mendefinisikan
“pembelian adalah dengan sistem perpetual, semua pembelian ditambahkan secara
langsung ke persediaan”.
Jadi dari penjelasan pembelian di atas maka dapat disimpulkan bahwa
pembelian juga disebut sebagai pengadaan barang. Pengadaan barang itu didapatkan
dari supplier dan berfungsi untuk mendukung terjadinya proses bisnis.
52
2.2.3 Persediaan
Setiap perusahaan memiliki persediaan barang atau stok barang, Persediaan
barang tersebut bertujuan agar pelanggan yang membutuhkan suatu barang dapat
diperoleh secara langsung dari perusahaan. Seperti yang dikemukakan oleh
Stevenson (2009: 549) “Persediaan adalah stok dari barang yang disimpan”.
Pernyataan tersebut diperkuat oleh Alfredson (2007: 342) yang mendefinisikan
“persediaan sebagai asset yang tersedia untuk dijual dalam proses bisnis biasa, aset-
aset yang ada dalam proses produksi seperti untuk dijual atau aset dalam bentuk
material atau supplier untuk digunakan dalam proses produksi atau dalam
memberikan pelayanan”.
Dari pengertian persediaan di atas dapat disimpulkan bahwa persediaan
merupakan stok barang yang ada dalam proses produksi, barang-barang tersebut
kemudian akan dijualkan kepada pelanggan yang membutuhkan barang. Persediaan
barang atau stok sangat penting bagi perusahaan yang bergerak dalam bidang
penjualan, stok barang bisa saja dapat meningkatkan kepuasan pelanggan.
2.2.4 Penjualan
Setiap proses bisnis memerlukan transaksi penjualan untuk mendapatkan
keuntungan. Penjualan merupakan transaksi bisnis yang dilakukan oleh perusahaan
bisnis di mana melakukan penjualan barang kepada pelanggan atau calon pelanggan.
Seperti yang dikemukakan oleh Reeve (2009: 255) “penjualan merupakan total biaya
yang diberikan oleh pelanggan untuk barang yang dijual termasuk penjualan tunai
maupun penjualan kredit”.
Penjualan biasanya diterbagai mencari dua macam yaitu dapat dilihat dari
perpetual atau periodik. Seperti yang didefinisikan oleh Albecht, Stice, Stice, &
53
Swain (2008: 292) “penjualan mencerminkan perbedaan antara utama dari perpetual
dan periodik, yang mana sistem periodik tidak dibuat tanpa adanya usaha”.
Dari penjelasan penjualan di atas, dapat disimpulkan bahwa penjualan
memiliki tujuan utama yaitu mendatangkan laba dari produk atau jasa yang
ditawarkan kepada pelanggan. Penjualan ini tidak dapat dilakukan apabila tidak
terdapat pelaku yang bekerja di dalamnya. Pelaku tersebut dinamakan dengan
stakeholder. Penjualan dapat dilihat dari perpetual dan periodik, di mana perpetual
ada catatan mengenai harga barang dan jumlahnya sedangkan periodik tidak
diketahui harga dan jumlah barang yang dibutuhkan hanyalah jumlah penjualannya.
2.2.5 Kerangka Berpikir
Untuk merancang sistem basis data pada apotek Newton, penulis menyusun
suatu bagan yang merupakan kerangka berpikir. Kerangka berpikir yang digunakan
dalam merancang sistem basis data pada Apotek Newton adalah menggunakan teori
Connolly & Begg (2010) yaitu The Database System Development Life cycle.
Database System Development Life cycle terdiri dari perencanaan basis data dengan
menentukan mission objective dan mission statement, system definition yaitu
menentukan batas-batasan sistem dalam perancangan basis data, pengumpulan
kebutuhan dan informasi yang dibutuhkan oleh organisasi dalam merancang basis
data, database design atau perancangan basis data yang terdiri dari tiga metodologi
yaitu konseptual, logikal dan fisikal, kemudian menentukan tempat penyimpanan
basis datanya, melakukan implementasi sistem basis data yang dirancang, melakukan
konversi data ke dalam basis data baru, melakukan testing pada basis data dan
aplikasinya dan yang terakhir adalah melakukan maintenance untuk memelihara atau
menjaga performa basis data.