BAB 2 LANDASAN TEORI

advertisement
BAB 2
LANDASAN TEORI
2.1 Teori-Teori Umum
2.1.1 Pengertian Database
Menurut Connolly dan Begg (2002, p14), database adalah koleksi bersama data
yang secara logis saling berelasi, dan gambaran dari data ini, didesain untuk
memenuhi kebutuhan informasi dari suatu organisasi.
Menurut Mohammad Subekti, MSc (1997, p8), database adalah kumpulan
terintegrasi dari occurrences file atau tabel yang merupakan representasi data dari
suatu model enterprise. Database sendiri dapat digambarkan sebagai kumpulan filefile data yang terkomputerisasi.
Database adalah kumpulan penyimpanan data operasional yang dipakai oleh
sistem aplikasi dari suatu enterprise. Suatu enterprise selalu membutuhkan berbagai
data untuk mendukung operasinya dan oleh karena itu disebut sebagai “data
operasional”.
Contoh :
Enterprise
Data operasional
Pabrik
data produksi, karyawan
Bank
data nasabah, tabungan, kredit.
Rumah sakit
data pasien, dokter, bangsal
Universitas
data mahasiswa, dosen, nilai
2.1.2 Komponen Database
8
Sistem database terdiri dari empat komponen penting yaitu :
1. Data
Dilihat dari konfigurasi sistemnya, maka data dalam database dapat merupakan
data yang single-user (hanya satu pengguna yang beroperasi terhadap database) atau
multi-user dimana satu atau lebih user beroperasi secara bersama ke dalam sistem
database. Sehingga, data dalam database terutama untuk sistem yang besar harus
terintegrasi (integrated) dan dapat dipakai bersama (shared). Pengertian terintegrasi
dalam database dapat dipandang sebagai kumpulan berbagai file yang saling
terhubungdan dengan sebagian atau seluruh redudansi yang diantaranya dihilangkan.
Sedangkan pengertian penggunaan bersama adalah setiap bagian data yang ada
didalam database dapat dipakai oleh lebih dari satu pengguna untuk penggunaan
yang mungkin berbeda.
2. Hardware
Piranti keras yang dibutuhkan untuk manajemen database biasanya masih berupa
mesin standar yang ada dalam arti tidak ada kekhususan tertentu. Akan tetapi karena
sifatnya dalam akses yang lebih sangat bervariasi maka suatu manajemen database
akan lebih banyak membutuhkan media penyimpanan harddisk.
Hardware terdiri dari :
•
Penyimpanan secondary (magnetic disk), I/O device seperti disk drives),
device Controller, I/O Channels, dan lainnya.
9
•
Hardware processor dan main memory, digunakan untuk mendukung saat
eksekusi sistem software database.
3. Software
Antara fisik database (tempat dimana sesungguhnya suatu database tersimpan
dalam media) dengan pengguna terdapat suatu piranti lunak yang disebut sistem
manajemen database (DBMS) atau DB manajer. Semua kebutuhan akses oleh
pengguna seperti pembentukan file (create), penambahan data (insert), penghapusan
(delete atau drop), dan lain-lain, semua dilaksanakan oleh DBMS. Satu hal lagi,
bahwa DBMS juga berfungsi untuk memberikan satu batas agar pengguna database
tidak perlu memikirkan barbagai hal yang berkaitan dengan detil pada level piranti
keras (misalnya metode akses).
Software bisa berupa DBMS, sistem operasi, software jaringan (jika diperlukan)
dan program aplikasi pendukung lainnya.
4. Pengguna (users)
Terdapat tiga kelas pengguna database yaitu :
•
Application Programmers, bertanggungjawab untuk membuat aplikasi
database dengan menggunakan bahasa pemrograman yang ada, seperti : C++,
Java, dan lainnya.
10
•
End Users, Orang yang menggunakan data didalam database untuk
kebutuhan tugas atau fungsinya. Pengguna ini dapat mengakses database
secara on-line dengan memanfaatkan bahasa query (seperti SQL) maupun
proses batch menggunakan program aplikasi yang sudah dipersiapkan oleh
programmer, atau pula menggunakan program utility yang telah disediakan
dalam DBMS.
•
DA (Data Administrator), seseorang yang berwenang untuk membuat
keputusan stategis dan kebijakan mengenai data yang ada, DBA (DataBase
Administrator), menyediakan dukungan teknis untuk implementasi keputusan
tersebut, dan bertanggungjawab atas keseluruhan kontrol sistem pada level
teknis.
2.1.3 Alasan Penggunaan Database
Keuntungan dari penggunaan database sebagai berikut :
•
Kontrol terpusat pada data operasional
•
Redudansi data dapat dikurangi dan dikontrol
•
Data dapat dipakai bersama (shared)
•
Penerapan standarisasi
•
Penerapan pembatasan keamanan data (security)
•
Integritas data dapat terpelihara
•
Independensi data atau program
11
Kerugian dari penggunaan database sebagai berikut :
•
Mahal, karena butuh biaya yang lebih besar untuk keperluan hardware, software,
dan perekrutan personil yang lebih berkualitas.
•
Kompleks, karena dengan kemampuan software yang lebih besar, membuat suatu
pemahaman bahwa terlihat rumit dan butuh penguasaan yang lebih tinggi, seperti
kebutuhan sistem administrasi, prosedur recovery dan back up, penataan
keamanan data.
2.1.4 Pengertian Sistem Database
Menurut Date (2000, p5), sistem database pada dasarnya merupakan sistem
penyimpanan record yang terkomputerisasi dimana tujuan sebenarnya adalah
menyimpan informasi dan membuat informasi tersebut selalu tersedia pada saat
dibutuhkan. Keseluruhan sistem terkomputerisasi itu memperbolehkan pengguna
menelusuri kembali dan mengubah informasi tersebut sesuai kebutuhan.
Menurut Mohammad Subekti, MSc (September 1997, p1), Sistem database
adalah sistem penyimpanan record secara komputer (elektronis).
2.1.5 Pengertian Database Terpusat
Database Terpusat adalah pendekatan yang paling banyak digunakan, sebagian
besar karena keterbiasaan pemakai dengan lingkungan main frame yang terpusat.
Alasan lain dari penggunaan database terpusat adalah biaya yang lebih murah dari
sistem terdistribusi, kontrol database lebih terjamin, data benar-benar terpadu,
12
maintenance dan update lebih mudah, juga keamanannya yang lebih terjaga. Data
diambil dari seluruh sistem operasional dan disimpan di dalam pusat penyimpanan
data.
2.1.6 Pengertian Informasi
Menurut McLeod (1998, p15), informasi adalah data yang telah diproses, atau
data yang memiliki arti.
Sebagai contoh, data dapat berupa jumlah penerbangan setiap pilot. Saat data
ini diproses, ia dapat diubah menjadi informasi. Jika jumlah penerbangan setiap pilot
dikalikan dengan upah per penerbangan akan menghasilkan pendapatan kotor pilot.
Jika angka-angka pendapatan kotor tiap pilot dijumlahkan, hasil penjumlahan
tersebut adalah total biaya gaji plilot bagi perusahaan. Jumlah biaya gaji dapat
menjadi informasi bagi pemilik perusahaan.
2.2 Teori-Teori Khusus
2.2.1 Database Application Life Cycle
Menurut Connolly dan Begg (2002, p271), sistem database merupakan bagian
penting bagi sistem informasi perusahaan, dengan demikian Daur pembuatan
(lifecycle) dalam aplikasi database sering dihubungkan dengan lifecycle dalam sistem
informasi.
13
Tahapan dalam database application lifecycle adalah tidak sepenuhnya harus
berurutan, namun dapat berulang kembali ke tahapan sebelumnya, contohnya adalah
ketika sudah memulai masuk ke tahapan mendesain database namun ada keterangan
yang kurang, sehingga harus dilakukan kembali tahapan analisa kebutuhan.
Jadi dapat dikatakan bahwa database application lifecycle adalah tahapan
dalam mengembangkan sistem aplikasi database. Lifecycle dalam aplikasi database
akan menjadi kompleks jika aplikasi sistem database yang akan dibuat mempunyai
skala menengah atau besar, karena sistem harus dapat mengatasi berbagai kebutuhan
user yang banyak, ratusan query, dan banyaknya program aplikasi, yang
membutuhkan berbagai proses pengulangan dalam lifecycle untuk menganalisa,
mengenali kebutuhan user, merancang kembali, dan banyak lagi. Namun untuk
aplikasi sistem database yang kecil, prosesnya diharapkan untuk tidak terlalu rumit.
Berikut adalah gambar skema tahapan database application lifecycle beserta
penjelasannya.
14
Perencanaan Database
Definisi Sistem
Analisa Kebutuhan
Perancangan Database
Desain
Aplikasi
Perancangan Konseptual
Pemilihan
DBMS
(optional)
Perancangan Logikal
Perancangan Fisikal
Prototyping
(optional)
Implementasi
Konversi dan
Memasukan Data
Testing
Perawatan Operasional
Gambar 2.1
Repro Skema Database Application Lifecycle
Sumber (Connolly, p272)
15
Keterangan dari tiap tahapan dijelaskan sebagai berikut (Connolly dan Begg,
2002, p273-p293):
•
Perencanaan Database
Suatu kegiatan pengelolaan yang dilakukan agar tiap tahap dalam daur
pembuatan dapat dijalankan secara efisien dan efektif.
•
Definisi Sistem
Menjelaskan tentang cakupan dan batasan dari aplikasi database, dan
menggambarkan kebutuhan user akan aplikasi database secara umum.
•
Analisa Kebutuhan
Proses mengumpulkan dan menganalisa informasi tentang bagian dari
organisasi yang nantinya akan didukung oleh aplikasi database, dan kemudian
menggunakan informasi ini untuk mengetahui kebutuhan user terhadap sistem
yang baru.
•
Perancangan Database
Perancangan dibagi menjadi tiga tahap yaitu konseptual, logikal, dan
fisikal.
•
Pemilihan DBMS
Memilih DBMS yang tepat untuk mendukung aplikasi database.
•
Desain Aplikasi
Proses mendesain user interface dan membuat program aplikasi yang
digunakan untuk mengakses database.
16
•
Prototyping
Membuat suatu model dari aplikasi database, yang digunakan agar
perancang dan pemakai bisa mengevaluasi bagaimana sistem nantinya akan
berjalan dan juga melihat tampilannya.
•
Implementasi
Merupakan wujud nyata dari database dan desain aplikasi. Implementasi
database dapat dilakukan dengan menggunakan Data Definition Language dari
DBMS yang sudah dipilih. Program aplikasi dapat diimplementasikan dengan
menggunakan bahasa pemrograman generasi ketiga atau keempat.
•
Konversi dan Memasukkan Data
Mentransfer semua data yang ada ke dalam database yang baru dan
mengkonversi semua aplikasi agar dapat berjalan pada database yang baru.
•
Testing
Proses menjalankan program apalikasi dengan tujuan agar menemukan
kesalahan dalam program.
•
Perawatan Operasional
Proses merawat dan mengamati sistem setelah sepenuhnya dijalankan.
Ketika diperlukan permintaan baru akan dimasukkan ke dalam database melalui
berbagai tahap dalam daur pembuatan atau lifecycle.
17
2.2.2 Tahapan Perancangan Database
Menurut Connolly dan Begg (2002, p281-p283), terdapat tiga tahapan utama
dalam merancang database, yang terdiri dari :
•
Perancangan Konseptual Database
Tahap pertama dari perancangan database adalah perancangan konseptual,
dan melibatkan pembuatan data model konseptual dari bagian organisasi yang
terlibat dalam proses pemodelan. Sebuah data model dibuat dari informasi yang
didapat dari dokumentasi kebutuhan pemakai. Perancangan konseptual harus
bebas dari segala detil implementasi, seperti perangkat lunak DBMS yang akan
digunakan, program aplikasi, bahasa pemrograman, spesifikasi perangkat keras,
dan aspek fisik yang lain.
•
Perancangan Logikal Database
Tahap kedua dalam merancang database adalah perancangan logikal, data
model konseptual yang telah dibuat pada tahapan perancangan sebelumnya
disempurnakan dan dipetakan menjadi data model logikal. Data model logikal
didasarkan pada data model yang dipakai untuk database yang dibuat
(contohnya, data model relasional). Model logikal dibuat dengan mengetahui
data model dari DBMS yang akan dipakai, jadi dengan kata lain struktur dari
DBMS yang akan dipakai sudah diketahui, seperti relasional, jaringan, hirarki,
atau object oriented, walaupun begitu dalam perancangan logikal harus
diabaikan tentang memilih DBMS, semua detail fisik, dan struktur penyimpanan.
Data model logikal merupakan sumber informasi untuk tahap berikutnya.
18
•
Perancangan Fisikal Database
Tahap yang terakhir adalah perancangan fisikal, pada tahap ini perancang
database akan memutuskan bagaimana database akan diimplementasi. Tujuan
utama dari perancangan fisikal adalah untuk menjelaskan bagaimana
mengimplementsi secara fisik sebuah data model logikal, untuk model relasional
meliputi :
o Membuat tabel relasional
o Menentukan struktur penyimpanan data, akses ke data yang disimpan agar
didapat performa yang maksimal dari sistem database
o Membuat desain keamanan untuk sistem
2.2.3 Normalisasi
Menurut M. Subekti (1997, p85), suatu desain database harus memenuhi
kondisi tidak mengandung anomali yaitu suatu kejanggalan dari suatu penempatan
atribut tertentu dari suatu obyek data.
Tujuan lain dari normalisasi adalah mencegah adanya redudansi atau
pengulangan data yang nantinya akan menghemat pemakaian tempat pada
penyimpanan. (Connoly dan Begg, 2002, p377).
Proses dalam normalisasi menurut Connolly dan Begg (2002, p387-p411),
terbagi menjadi beberapa tahapan yaitu :
19
•
Unnormalized Form (UNF)
Suatu tabel dikatakan sebagai bentuk yang unnormalized bila di
dalammnya terdapat kelompok berulang atau biasa dikenal repeating group,
untuk lebih jelasnya dapat dilihat contoh tabel pada tabel 2.1.
NilaiMahasiswa
Nim
Nama
Alamat
Kecamatan
KdPos
Kd_Mtk
Matakuliah
Sks
Nilai
0600666111
Benni
Jl. Satu
Sukapura
14142
G0602
Bahasa Inggris III
1
C
T0992
Kalkulus I
2
B
T1212
Algoritma
2
B
CB112
Character Building
1
A
G0602
Bahasa Inggris III
1
C
T2396
Pemrograman Web
2/1
A
G0602
Bahasa Inggris III
1
B
T0992
Kalkulus I
2
B
0600123321
060025671
Juwita
Ruli
Jl. Dua
JL. Tiga
Sunter
14146
Manggarai
14132
Tabel 2.1 Tabel dalam bentuk Unnormalized
•
Normalisasi Data Pertama (First Normal Form / 1NF)
Untuk mengubah bentuk Unnormalized Form menjadi 1NF, yang harus
dilakukan adalah mengidentifikasi dan menghilangkan kelompok berulang, agar
setiap pertemuan antara baris dan kolom berisi satu dan hanya satu nilai. Dilihat
dari contoh bentuk unnormalized sebelumnya, dapat diidentifikasi kelompok
berulang sebagai berikut : Kd_Mtk, Matakuliah, SKS, Nilai. Hasil dari bentuk
1NF dapat dilihat dalam tabel 2.2
NilaiMahasiswa
Nim
Nama
Alamat
KdPos
Kecamatan
Kd_Mtk
Matakuliah
Sks
Nilai
0600666111
Benni
Jl. Satu
14142
Sukapura
G0602
Bahasa Inggris III
1
C
0600666111
Benni
Jl. Satu
14142
Sukapura
T0992
Kalkulus I
2
B
0600666111
Benni
Jl. Satu
14142
Sukapura
T1212
Algoritma
2
B
20
0600123321
Juwita
Jl. Dua
14146
Sunter
CB112
Character Building
1
A
0600123321
Juwita
Jl. Dua
14146
Sunter
G0602
Bahasa Inggris III
1
C
0600123321
Juwita
Jl. Dua
14146
Sunter
T2396
Pemrograman Web
2/1
A
060025671
Ruli
JL. Tiga
14132
Manggarai
G0602
Bahasa Inggris III
1
B
060025671
Ruli
JL. Tiga
14132
Manggarai
T0992
Kalkulus I
2
B
Tabel 2.2 Tabel dalam bentuk 1NF
•
Normalisasi Data Kedua (Second Normal Form / 2NF)
Pada tahap normalisasi 2NF dihilangkan setiap partial dependece yang ada
pada bentuk 1NF. Yang dimaksud dengan partial dependence adalah atribut non
primary key yang merupakan sebagian fungsi dari primary key, atau dapat
dijelaskan demikian apabila terdapat atribut - atribut dalam suatu relasi yang
memiliki ketergantungan fungsional misalkan atribut A (Kd_dosen, Nm_dosen)
dan atribut B (Kd_Mtk), dikatakan partial dependence apabila ada sebagian
atribut dari A dihilangkan namun ketergantungan masih ada. Gambar 2.2 berikut
ini memperlihatkan ketergantungan fungsional pada tabel Nilai Mahasiswa.
Nim
Nama
Alamat
KdPos
Kecamatan
Kd_Mtk
Matakuliah
Sks
Nilai
(Primary
(Partial Dependence)
(Partial Dependence)
(Transitive Dependence)
Gambar 2.2
Ketergantungan fungsional pada tabel NilaiMahasiswa
21
Setelah dilakukan pengiidentifikasian pada tabel NilaiMahasiswa dan
ditentukan partial dependence-nya, maka dihasilkan tabel baru sebagai berikut :
Mahasiswa
Nim
Nama
Alamat
KdPos
Kecamatan
0600666111
Benni
Jl. Satu
14142
Sukapura
0600623321
Juwita
Jl. Dua
14146
Sunter
0600656711
Ruli
JL. Tiga
14132
Manggarai
Matakuliah
Kd_Mtk
Matakuliah
Sks
G0602
Bahasa Inggris III
1
T0992
Kalkulus I
2
T1212
Algoritma
2
CB112
Character Building
1
T2396
Pemrograman Web
2/1
NilaiMahasiswa
Nim
Kd_Mtk
Nilai
0600666111
G0602
C
0600666111
T0992
B
0600666111
T1212
B
0600123321
CB112
A
0600123321
G0602
C
0600123321
T2396
A
060025671
G0602
B
060025671
T0992
B
Tabel 2.3 Tabel dalam bentuk 2NF
22
•
Normalisasi Data Ketiga (Third Normal Form / 3NF)
Pada tahap normalisasi 3NF dihilangkan setiap transitive dependece yang
terdapat pada bentuk 2NF. Kondisi transitive dependence dapat diterangkan
sebagai berikut: misalkan terdapat atribut A, B, dan C yang mempunyai relasi
A → B dan B → C, C adalah transitive dependence terhadap A melalui B. Dalam
contoh diatas pada tabel Mahasiswa yang mempunyai atribut Nim, Nama,
Alamat, KdPos, Kecamatan atribut Nim dapat mengakses atribut Kecamatan
melalui KdPos. Maka dengan menghilangkan transitive dependence didapat tabel
baru yaitu :
Mahasiswa
Nama Alamat
KdPos
0600666111
Benni
Jl. Satu
14142
0600623321
Juwita
Jl. Dua
14146
0600656717
Ruli
JL. Tiga
14132
Nim
Kd_Mtk
Matakuliah
Matakuliah
Sks
G0602
Bahasa Inggris III
1
T0992
Kalkulus I
2
T1212
Algoritma
2
CB112
Character Building
1
T2396
Pemrograman Web
2/1
NilaiMahasiswa
Nim
Kd_Mtk
Nilai
0600666111
G0602
C
0600666111
T0992
B
0600666111
T1212
B
0600123321
CB112
A
23
0600123321
G0602
C
0600123321
T2396
A
060025671
G0602
B
060025671
T0992
B
Wilayah
KdPos Kecamatan
14142
Sukapura
14146
Sunter
14132
Manggarai
Tabel 2.4 Tabel dalam bentuk 3NF
Proses normalisasi secara umum dilakukan sampai ke tahap 3NF karena
sudah tidak terdapat data redudansi, dan anomali yang ada sudah sangat sedikit.
•
Normalisasi Data Boyce – Codd (Boyce – Codd Normal Form / BCNF)
Sebuah tabel relasi dikatakan BCNF jika dan hanya jika semua determinan
adalah candidate key. Perbedaan antara bentuk 3NF dan BCNF adalah pada 3NF
bila terdapat ketergantungan fungsional A→ B, diijinkan jika B adalah primary
key dan A bukan candidate key, sedangkan pada BCNF A haruslah candidate
key.
•
Normalisasi Data Keempat (Fourth Normal Form / 4NF)
Normalisasi 4NF adalah relasi BCNF yang tidak mengandung Multi Valued
Dependencie(MVD). MVD dapat diterangkan sebagai berikut: terdapat
ketergantungan antara atribut-atribut (A, B, dan C) dalam sebuah relasi, dimana
24
setiap nilai dari A terdapat suatu set nilai B dan set nilai C namun atribut B dan C
saling independen satu sama lain.
2.2.4 Entity Relationship Modelling
Menurut Connolly dan Begg (2002, p330), salah satu aspek yang sulit dalam
perancangan database adalah bahwa perancang, programmer, dan end-user
cenderung melihat data dengan cara yang berbeda. Oleh karena itu untuk
memastikan pemahaman secara alamiah dari data dan bagaimana data digunakan
oleh perusahaan dibutuhkan sebuah komunikasi yang non-teknis dan bebas dari
kebingungan.
2.2.4.1 Entity Type
Tipe Entity (entity type) adalah sebuah kumpulan (group) dari objek
dengan sifat (properties) yang sama, dan keberadaannya tidak tergantung
(independent existence). Sebuah tipe entity memiliki keberadaannya yang
bebas dan bisa menjadi objek dengan fisik (atau ‘real’) atau menjadi objek
dengan keberadaan konseptual (atau ‘abstrak‘). Artinya perancang yang
berbeda mungkin mengindentifikasikan entity yang berbeda pula. Sebuah
database biasanya berisi banyak tipe entity yang berbeda. Dalam UML, huruf
pertama dari nama entity diawali dengan huruf kapital.
Entity
occurrence
adalah
sebuah
indentifikasikan dari sebuah tipe entity.
objek
unik
yang
dapat
di
25
Gambar 2.3 Contoh tipe entity
Sumber (Connoly dan Begg, 2002, p333)
2.2.4.2 Relationship
Adalah sejumlah hubungan yang berarti antara tipe entity yang satu
dengan tipe entity yang lainnya, dimana setiap tipe relationship diberi nama
yang menggambarkan fungsi yang berbeda.
Derajat dari relationship adalah jumlah dari partisipasi tipe entity dalam
sebuah tipe relationship tertentu. Entity yang berkaitan dalam sebuah tipe
relationship disebut participant dan jumlah participant dalam relationship
disebut sebagai derajat relasi. Untuk sebuah relationship berderajat dua disebut
binary, relationship berderajat tiga disebut dengan tenary, dan relationship
berderajat empat disebut quartenary.
Gambar 2.4 Contoh binary Relationship
Sumber (Connolly dan Begg, 2002, p335 )
26
Gambar 2.5 Contoh Tenary Relationship
Sumber (Connolly dan Begg, 2002, p335 )
Gambar 2.6 Contoh Quartenary Relationship
Sumber (Connolly dan Begg, 2002, p335 )
2.2.4.3 Atribute and Key
Atribut adalah sifat dari sebuah entity atau tipe relationship. Sifat tertentu
inilah yang disebut sebagai atribut. Atribut menyimpan nilai dari setiap entity
occurrence dan merupakan bagian utama dari data yang disimpan dalam
database.
Attribute Domain adalah sejumlah nilai yang diperkenankan oleh satu
atau lebih atribut. Setiap atribut yang dihubungkan dengan sejumlah nilai
disebut domain.
27
Simple Attribute atau disebut sebagai atomic attribute adalah sebuah
susunan
atribut
dari
komponen
tunggal
(single
component)
yang
keberadaannya bebas (independent existence). Simple attribute tidak bisa lagi
dipecah kedalam komponen yang lebih kecil lagi misalnya posisi dan gaji dari
entity pegawai.
Single Value Attribute (atribut nilai tunggal) adalah attribute yang hanya
menyimpan nilai tunggal untuk suatu sifat dari entity. Multi-valued attribute
adalah atribut yang bisa menyimpan nilai lebih dari satu untuk suatu sifat dari
entity. Contoh atribut telepon pada entity kantor cabang (branch) yang bisa
memiliki lebih dari satu nomor telepon.
Derived Attribute (atribut turunan) adalah nilai suatu atribut diperoleh
dari atribut yang saling berhubungan atau kumpulan atribut yang saling
berhubungan.
Candidate key adalah sejumlah kecil atribut yang secara unik mengenali
setiap kejadian (occurrence) didalam tipe entity. Sebuah candidate key adalah
jumlah atribut yang paling sedikit nilainya secara unik mengindentifikasikan
setiap entity occurrence atau memiliki nilai yang berbeda oleh setiap entity
occurrence pada tipe entity tertentu. Hal ini mengisyaratkan bahwa candidate
key tidak boleh bernilai null.
28
Primary key adalah candidate key yang digunakan untuk mengenali
secara unik setiap occurrence dari sebuah tipe entity. Entity tipe mungkin
memiliki lebih dari satu candidate key. Pemilihan primary key berdasarkan
pada pertimbangan panjang atribut (attribute length), jumlah minimal dari
kebutuhan atribut dan seterusnya keunikannya. Candidate key yang tidak
terpilih sebagai primary key disebut alternate key.
Foreign key adalah attribute pada satu relasi yang cocok pada candidate
key dari beberapa relasi.
Gambar 2.7 Contoh Representasi Atribut
Sumber (Connoly dan Begg, 2002, p342)
2.2.4.4 Structure and Constraint
Constraint harus mencerminkan pembatasan (testricion) pada relationship
sebagai perkalian (perceived) didalam kenyataan (real-world). Tipe utama dari
constraint di dalam relationship disebut multiplicity.
29
Multiplicity adalah jumlah (disebut juga jangkauan atau range)
kemungkinan occurrence dari sebuah entity yang bisa menghubungkan suatu
occurrence tunggal dari hubungan entity melalui relationship tertentu.
Multiplicity constraint adalah jalan dimana entity dihubungkan. Ini adalah
sebuah representasi dari aturan bisnis (business rules) yang ditetapkan
perusahaan. Seperti yang telah disebutkan sebelumnya bahwa relasi berderajat
dua disebut binary, umumnya binary relationship bisa ditunjukan sebagai
hubungan one to one (1 : 1), one to many (1 : *), atau many to many (* : *).
Multiplicity mengandung dua constraint yang dipisahkan, yang dikenal
sebagai cardinality dan participation. Cardinality menggambarkan jumlah
maksimum kemungkinan relationship occurrence untuk sebuah entity
pengikut-sertaan (entity participation) dalam relationship yang diberikan.
Participation adalah menetapkan semua atau beberapa occurrence yang
diikutsertakan dalam sebuah tipe relationship. Sebuah participation constraint
yang menunjukan semua entity occurrence terkait dalam relationship tertentu
disebut sebagai mandatory participation. Sedangkan yang hanya menunjukan
beberapa disebut optional participation.
30
Gambar 2.8 Contoh one to one (1:1) Relationship
Sumber (Connoly dan Begg, 2002, p346)
Gambar 2.9 Contoh One to Many (1 : *) Representasi
Sumber (Connolly dan Begg, 2002, p347)
Gambar 2.10 Contoh Many to Many (* : *)Representasi
Sumber (Connolly dan Begg, 2002, p348)
31
Gambar 2.11 Contoh Multiplicity yang ditunjuk dengan
Cardinality Constraint dan Participation Constraint
Sumber (Connolly dan Begg, 2002, p351)
Cara alternatif menggambar
Arti
multiplicity constraint
0..1
Nol atau satu entity occurrence
1..1 ( atau 1)
Tepatnya hanya satu entity occurrence
0..* (atau *)
Nol atau banyak entity occurrence
1..*
satu atau banyak entity occurrence
5..10
Minimum 5 dan maksimum 10 entity
occurrence
0,3,6-8
Nol atau tiga atau enam,tujuh atau
delapan entity occurrence
Tabel 2.5
Ringkasan cara alternate menggambarkan multiplicity constraint
Sumber (Connolly dan Begg, 2002, p350)
32
2.2.4.5 Integrity Constraint
Integrity constraint merupakan batasan yang kita inginkan untuk
mencegah database tidak konsisten. Integrity constraint dibagi menjadi empat
bentuk dasar yaitu :
1.) Require Data, beberapa atribut harus selalu mengandung nilai yang valid,
dengan kata lain tidak boleh mengandung nilai null.
2.) Atribut Domain Constraint, setiap atribut mempunyai domain sendiri, yaitu
sekumpulan nilai yang sah untuk suatu atribut contohnya, pada nilai atribut
jenis kelamin hanya terdiri dari “p” dan “l”.
3.) Entity Integrity, primary key dari sebuah entity tidak boleh mengandung
nilai null. Setiap baris harus mempunyai sebuah primary key.
4.) Referential Integrity, sebuah foreign key menghubungkan setiap baris di
dalam relasi anak kepada baris dalam relasi induk yang mengandung nilai
candidate key yang cocok. Secara umum ada dua kondisi pada hubungan
child pada relationship :
-
Mandatory, null tidak diijinkan
-
Optional, null diijinkan
Contoh pada hubungan 1…* jika baris parent dihapus, maka ada
beberapa strategi yang mempengaruhi nilai child, yaitu :
-
No action, jika baris parent dihapus maka nilai child tidak terjadi apaapa atau tidak ada perubahan.
-
Cascade, jika baris parent dihapus maka nilai child dihapus
-
Set null, jika baris parent dihapus maka nilai child di set null
33
-
Set default, jika baris parent dihapus maka nilai child ikut berubah
sesuai nilai default yang sudah diatur
-
No check, jika baris parent dihapus maka tidak dilakukan pengecekan
pada nilai childnya.
2.2.5 Database Management System (DBMS)
DBMS
adalah
sistem
software
yang
memungkinkan
user
untuk
mendefinisikan, membuat, dan memelihara database dan menyediakan kontrol akses
untuk database ini.
Fungsi-fungsi DBMS menurut Connolly dan Begg (2002, p48 – p52) adalah :
•
Data storage, retrieval, dan update
DBMS harus menyediakan user dengan kemampuan untuk menyimpan,
mengambil
kembali,
dan
memperbaharui
data
pada
database.
Dalam
menyediakan fungsi ini, DBMS sebaiknya menyembunyikan detil implementasi
fisik internal (seperti organisasi file dan struktur penyimpanan) dari user.
•
A user-accesible catalog
DBMS harus menyediakan suatu katalog yang menggambarkan data item
yang tersimpan dan bisa diakses oleh user. Sistem katalog yang disebut juga
metadata adalah pendeskripsian informasi dari data dalam database. Jumlah
informasi dan cara informasi digunakan bervariasi dengan DBMS.
34
•
Transaction Support
DBMS harus menyediakan suatu mekanisme yang akan meyakinkan baik
itu semua update corresponding pada pemberian transaksi yang dibuat atau tidak
semua update corresponding dibuat.
•
Concurrency control services
DBMS harus menyediakan suatu mekanisme untuk meyakinkan bahwa
database diperbaharui secara benar ketika multiple user memperbaharui database
secara bersamaan.
•
Recovery services
DBMS harus menyediakan suatu mekanisme untuk memulihkan database
pada saat database menjadi rusak dalam banyak cara.
•
Authorization services
DBMS harus menyediakan suatu mekanisme untuk meyakinkan bahwa
hanya ada satu user yang diijinkan, dapat mengakses database.
•
Support for data communication
DBMS harus dapat mengintegrasikan dengan software komunikasi.
•
Integrity services
DBMS harus menyediakan suatu pengertian untuk meyakinkan bahwa baik
itu data dalam database dan perubahan pada data diikuti beberapa peraturan.
35
•
Services to promote data independence
DBMS harus mengikutsertakan fasilitas untuk mendukung kemandirian
program dari struktur database yang sebenarnya (aktual).
•
Utility services
DBMS harus menyediakan sebuah set dari utility services. Utility program
membantu DBA untuk mengadministrasi database secara efektif.
Keuntungan DBMS menurut Connolly dan Begg (2020, p25) sebagai berikut :
•
Data dapat digunakan bersama
•
Redudansi Data bisa dikurangi
•
Ketidakkonsistenan Data dapat dihindari
•
Integritas Data dapat terpelihara
•
Keamanannya Terjamin
•
Kebutuhan User Yang Kompleks Dapat Teratasi
•
Pelaksanaan Standarisasi
•
Produktivitas meningkat
•
Layanan Back up dan Recovery yang Semakin Baik
36
Kerugian DBMS menurut Connolly dan Begg (2020, p29) sebagai berikut :
•
Rumit
Karena penetapan fungsi dari DBMS yang baik, menyebabkan DBMS
menjadi software yang cukup rumit. Seluruh user harus mengetahui fungsifungsi yang ada dengan baik, sehingga dapat memperoleh manfaatnya.
•
Ukuran
Kerumitan dan banyaknya fungsi yang ada menyebabkan DBMS
memerlukan banyak software pendukung yang mengakibatkan penambahan
tempat penyimpanan dan memory.
•
Biaya dari DBMS
•
Biaya penambahan Hardware
•
Biaya untuk Konversi
•
Kinerja
Pada dasarnya DBMS dibuat untuk menyediakan banyak aplikasi,
akibatnya mungkin beberapa aplikasi akan berjalan tidak seperti biasanya.
•
Akibat yang lebih besar dari suatu kesalahan
Karena sistem yang terpusat, jika seluruh user dan aplikasi terakses dari
DBMS maka kerusakan pada bagian manapun dari sistem, akan menyebabkan
operasi terhenti.
37
2.2.6 Structure Query Language (SQL)
Menurut Connolly dan Begg (2002, p111-p112), idealnya, database language
dapat memungkinkan user untuk :
•
Membuat struktur relasi dan database;
•
Melakukan operasi penyisipan (insertion), perubahan (modification) dan
penghapusan (deletion) data dari relasi;
•
Melakukan query simple dan kompleks.
Database language harus melaksanakan operasi-operasi tersebut dengan usaha
minimal yang dilakukan user dan sintaks atau struktur instruksi harus mudah
dipahami atau dipelajari. Harus portable sehingga memungkinkan untuk pindah dari
satu DBMS ke DBMS lainnya.
SQL merupakan sebuah contoh dari transform-oriented language, sebuah
bahasa yang di desain untuk menggunakan relasi untuk mengubah input menjadi
output yang diperlukan. SQL mempunyai 2 komponen utama sebagai berikut:
•
DDL untuk definisi struktur database dan mengkontrol akses pada data.
a. Create Table
Digunakan untuk membuat tabel baru. Table berbentuk dua dimensi
yaitu berupa baris atau row dan kolom atau atribut.
Sintaks: Create Table Table_Name (Column_Name [,Column_name]
[,Primary_Key_Definition] [,Foreign_Key_Definition])
38
b. Alter Table
Digunakan untuk mengubah struktur table, bisa untuk menambahkan
kolom baru, mengubah standar dari suatu kolom, dan juga menghapus suatu
kolom.
Sintaks: Alter Table Table_name add | drop column_name data_type
c. Drop Table
Digunakan untuk menghapus tabel yang sudah ada.
Sintaks: Drop Table Table_Name
•
DML untuk pengambilan (retrieving) dan perubahan (updating) data.
a. SELECT
Digunakan untuk mengambil baris dan kolom dari suatu table database.
Sintaks: SELECT select_list [INTO new_table] FROM table_source
[WHERE
search_condition]
[GROUP
BY
group_by_expression]
[HAVING search_condition] [ORDER BY order_expression]
b. INSERT
Digunakan untuk menyisipkan satu baris baru ke dalam suatu tabel
database.
Sintaks: INSERT INTO Table_Name (Column_Name [,Column_Name])
VALUES (Column_Value [,Column_Value])
39
c. UPDATE
Digunakan untuk memperbaharui nilai dari suatu baris dalam suatu
tabel database.
Sintaks: UPDATE Table_Name SET (Table_Name.Column_Name =
New_Value [,Table_Name.Column_Name = New_Value] ] ) WHERE
search_condition
d. DELETE
Digunakan untuk menghapus satu atau beberapa atau semua baris
dalam suatu tabel database.
Sintaks: DELETE FROM Table_Name WHERE search_condition
Sampai dengan SQL3, SQL tidak mengandung perintah alih kontrol. Hal ini
diimplementasikan dengan menggunakan bahasa pemrograman atau perintah kontrol
atau secara interaktif, sesuai dengan keputusan user.
SQL merupakan bahasa yang cukup mudah dipelajari , karena:
•
Merupakan bahasa non-procedural – cukup menspesifikasikan informasi apa
yang dibutuhkan daripada bagaimana mendapatkannya.
•
Pada dasarnya mempunyai format yang bebas.
•
Terdiri dari bahasa inggris standar, seperti :
1) CREATE TABLE Staff (staffNo VARCHAR(5), lName ARCHAR(15),
salary DECIMAL(7,2));
2) INSERT INTO Staff VALUES (‘SG16’, ‘Brown’, 8300);
40
3) SELECT staffNo, lName, salary
4) FROM Staff WHERE salary > 10000;
•
Dapat digunakan oleh bermacam-macam user, termasuk DBA, manajemen,
pembuat aplikasi dan user lainnya.
2.2.7 Pengertian “Asuhan Keperawatan”
Asuhan Keperawatan adalah Kegiatan profesional Perawat yang dinamis,
membutuhkan kreativitas dan berlaku rentang kehidupan dan keadaan.(Carpenito,
1998). Adapun tahap dalam malakukan Asuhan Keperawatan yaitu : Pengkajian,
Diagnosa Keperawatan, Rencana, Implementasi, Evaluasi. (sumber : weblog oleh
Munir Kamarullah, www.munir.or.id)
Keperawatan dalam menjalankan pelayanan sebagai Nursing Services
menyangkut bidang yang amat luas sekali, secara sederhana dapat diartikan sebagai
suatu upaya untuk membantu orang sakit maupun sehat dari sejak lahir sampai
meningal dunia dalam bentuk peningkatan Pengetahuan, kemauan dan kemampuan
yang dimiliki, sedemikian
rupa sehingga orang tersebut dapat secara optimal
melakukan kegiatan sehari-hari
secara mandiri tanpa memerlukan bantuan dan
ataupun tergantung pada orang lain (Sieglar cit Henderson, 2000). (sumber : weblog
oleh Munir Kamarullah, www.munir.or.id)
2.2.8 Tujuan “Asuhan Keperawatan”
Proses keperawatan juga ditujukan untuk memenuhi tujuan asuhan
keperawatan, yaitu: untuk mempertahankan keadaan kesehatan pasien yang optimal,
41
dan, jika pernyataan tersebut berubah, untuk membuat suatu jumlah dan kualitas
tindakan keperawatan terhadap kondisinya guna kembali ke keadaan yang normal.
Jika kesehatan yang optimal tidak dapat tercapai, proses keperawatan harus dapat
memfasilitasi kualitas kehidupan yang maksimal berdasarkan keadaannya untuk
mencapai derajat kehidupan yang lebih tinggi selama hidupnya.
2.2.9 Critical Success Factor
Critical Success Factor (CSF) adalah bidang-bidang terbatas yang apabila
hasilnya memuaskan akan memastikan kinerja yang kompetitif untuk individu,
departemen, atau organisasi. CSF merupakan bidang-bidang kunci dimana segala
sesuatunya harus berjalan dengan benar demi lancarnya bisnis dan tercapainya
tujuan manajer. (Martin, 1990, p89)
CSF berbeda dengan objectives (tujuan) atau goal (sasaran), Berikut ini adalah
definisi masing-masing :
•
Objectives (tujuan). Tujuan adalah pernyataan umum tentang arah perusahaan,
tanpa menyatakan target khusus yang harus dicapai pada waktu tertentu.
•
Goals (sasaran). Sasaran adalah target khusus yang cenderung harus dicapai
pada waktu tertentu. Sasaran pada prinsipnya adalah transformasi operasi dari
satu atau lebih objectives.
•
Critical Success Factors (CSF). CSF adalah satu atau beberapa aktivitas
perusahaan
yang
keberhasilannya
akan
mempengarungi
keseluruhan
keberhasilan perusahaan. CSF adalah area kunci dimana “sesuatu harus benar”
42
agar bisnis dan tujuan dari manajer dapat dicapai. Jadi dapat dikatakan bahwa
sebuah perusahaan dikatakan berhasil jika faktor-faktor yang ada dalam CSF
terpenuhi.
Hubungan antara ketiganya dapat dijabarkan sebagai berikut. Sasaran manajer
adalah target yang akan dituju. CSF adalah faktor-faktor yang paling mempengaruhi
sukses atau gagalnya sasaran perusahaan. Sasaran adalah gambaran tujuan yang
mempunyai target; CSF adalah apa yang harus dikerjakan untuk mencapai sasaran.
Analisis CSF dan pengaruh dari analisis CSF
Menurut Martin (1990, p19), analisis CSF mengidentifikasi area yang paling
kritis untuk suksesnya perusahaan. CSF dirancang untuk memfokuskan perhatian
manajemen pada hal-hal yang paling kritis untuk diselesaikan. Analisis CSF
mengidentifikasi keputusan kritis dan informasi kritis, dan seharusnya dilanjutkan
dengan membangun sistem informasi yang sesuai.
Analisis CSF cenderung mempunyai 2 efek untuk manajemen (Martin, p88).
Pertama, CSF membantu manajemen untuk fokus pada aktivitas-aktivitas yang
paling penting. Kedua, CSF membantu manajemen berpikir melalui kebutuhan
informasinya. CSF membantu perencana sistem informasi untuk mengidentifikasi
informasi yang kritis dan memberikan kepada manajemen yang memerlukannya.
Hasil dari analisis CSF sangat berguna, karena hasil tersebut membuat
mekanisasi kontrol manusia menjadi lebih baik dan meyebabkan perusahaan fokus
terhadap apa yang paling kritis atau yang paling penting bagi perusahaan. Dengan
CSF alokasi sumber daya dapat ditingkatkan, khususnya waktu dari manajemen.
Download