Post on 16-Mar-2019
7
BAB 2
LANDASAN TEORI
2.1 Teori Umum
2.1.1 Pendekatan File – Based (File Based Approach)
Menurut Connolly dan Begg (2002, p7), File–Based System adalah suatu
koleksi program aplikasi yang melaksanakan pelayanan untuk end–users seperti
laporan produksi. Setiap program mendefinisikan dan mengatur data sendiri.
2.1.2 Pendekatan Basis data
2.1.2.a Data
Menurut Turban (2003, p15), Data adalah fakta mentah atau deskripsi dasar
dari sesuatu, kejadian, aktifitas, dan transaksi yang didapat, dicatat, disimpan, dan
dikelompokkan, namun tidak terorganisasi sehingga tidak memberikan suatu arti
yang spesifik.
Menurut Whitten (2004, p23), Data adalah fakta mentah mengenai orang,
tempat, kejadian dan hal-hal yang peting dalam organisasi.
Menurut Hoffer (2005, p5), Data adalah menyimpan deskripsi dari objek yang
penting dalam lingkungan pengguna.
2.1.2.b Basis Data
Menurut Atzeni (2005, p2), Basis data adalah kumpulan dari data yang
digunakan untuk merepresentasikan informasi dari suatu sistem informasi.
8
Menurut Connolly dan Begg (2002, p14), Basis data adalah sekumpulan data
yang terhubung secara logical, dan deskripsi dari data tersebut, yang dapat digunakan
oleh banyak user, dan dibentuk untuk dapat menghasilkan informasi yang dibutuhkan
oleh organisasi.
Menurut Mannino (2001, p4), Basis data adalah sekumpulan data yang secara
terus menerus yang dapat digunakan oleh banyak user dan saling berkaitan.
Menurut Date (2000, p10), Basis data adalah sekumpulan data yang secara
terus menerus dapat digunakan untuk sistem aplikasi suatu perusahaan.
Sehingga secara keseluruhan Basis data adalah sekumpulan data yang
digunakan oleh banyak user dan terhubung secara logical untuk menghasilkan suatu
sistem informasi yang dibutuhkan oleh perusahaan.
2.1.2.c Database Management System (DBMS)
a. Pengertian DBMS
Menurut Connolly dan Begg (2002, p16), DBMS adalah sebuah sistem
piranti lunak yang memperbolehkan pengguna untuk mendefinisikan, membuat,
memelihara dan mengontrol akses ke basis data.
Menurut Atzeni (2005, p3), DBMS adalah sebuah sistem piranti lunak yang
dapat digunakan untuk mengelola kumpulan dari data dalam jumlah besar, dapat
digunakan bersama–sama dan secara terus menerus, dan untuk memastikan data
tersebut dapat dipercaya dan rahasia.
Menurut Korth dan Silberschatz (2002, p21), DBMS adalah kumpulan dari
data yang saling berkaitan dan program untuk mengakses data tersebut.
9
Menurut Mannino (2001, p4), DBMS adalah kumpulan dari piranti lunak
yang mendukung pembuatan, penggunaan dan pemeliharaan basis data.
Sehingga dapat disimpulkan DBMS adalah sebuah sistem piranti lunak
yang digunakan untuk mendefinisikan, membuat, mengelola, memelihara dan
mengontrol akses ke basis data.
b. Keuntungan DBMS
Menurut Conolly dan Begg (2002, p26), terdapat beberapa keuntungan
DBMS, yaitu :
1) Pengendalian Data Redundan (Control of Data Redudancy)
Pemborosan ruang dengan penyimpanan informasi yang sama di dalam file
lebih dari satu. Pendekatan usaha basis data untuk menghapuskan
pemborosan dengan pengintegrasian file yang sedemikian rupa sehingga
berbagai salinan data yang sama tidaklah tersimpan.
2) Konsistensi Data (Data Consistency)
Dengan mengeliminir atau mengendalikan redudan, resiko inkonsistensi
dapat dikurangi. Jika suatu jenis data disimpan lebih dari sekali, sistem dapat
memastikan bahwa semua salinan dijaga konsistensinya.
3) Informasi Lebih dari Jumlah Data yang Sama (More Information from the
Same Amount of Data)
Dengan pengintegrasian data operasional, memungkinkan bagi organisasi
untuk memperoleh informasi tambahan dari data yang sama.
10
4) Berbagi Data (Sharing of Data)
File dimiliki oleh orang–orang atau departemen yang menggunakannya.
Pada sisi lain, basis data kepunyaan seluruh organisasi dan dapat digunakan
bersama oleh semua pengguna yang diberi hak akses. Dengan demikian,
para pengguna berbagi lebih banyak data.
5) Integritas Data Ditingkatkan (Improved Data Integrity)
Integritas basis data mengacu pada konsistensi dan validitas dari data yang
disimpan.
6) Keamanan yang Ditingkatkan (Improved Security)
Keamanan basis data adalah perlindungan basis data dari para pengguna
yang tidak sah. Format nama pengguna dan kata sandi digunakan untuk
mengidentifikasikan orang–orang yang diberi hak untuk menggunakan basis
data.
7) Standar Pelaksanaan (Enforcement of Standards)
Pengintegrasian mengijinkan Database Administrator (DBA) untuk
mengidentifikasikan dan menguatkan standard yang perlu.
8) Skala Ekonomi (Economy of Scale)
Kombinasi semua data organisasi operasional ke dalam suatu basis data dan
menciptakan satu set aplikasi yang bekerja pada sumber data, yang dapat
mengakibatkan uang tabungan biaya. Anggaran yang akan secara normal
11
dialokasikan dapat dikombinasikan dan mendorong ke suatu skala ekonomi.
Anggaran yang dikombinasikan dapat digunakan untuk membeli suatu
konfigurasi sistem yang lebih disesuaikan untuk kebutuhan organisasi.
9) Menyeimbangkan Ketidaksesuaian Kebutuhan (Balance of Conflicting
Requirements)
Masing–masing pengguna atau departemen mempunyai kebutuhan yang
mungkin tidak sesuai dengan kebutuhan pengguna yang lain. Basis data ada
di bawah kendali DBA, sehingga DBA dapat membuat keputusan tentang
desain dan penggunaan operasional basis data yang menyediakan pengguna
sumber daya organisasi yang terbaik secara keseluruhan.
10) Mengembangkan Akses Data (Improved Data Accessibility and
Responsiveness)
Sebagai hasil pengintegrasian, data lintas batas per departemen, secara
langsung dapat diakses kepada end-users.
11) Meningkatkan Produktifitas (Increased Productivity)
DBMS menyediakan banyak dari fungsi standar bahwa programmer akan
secara normal harus memberi suara dengan menulis dalam suatu file–based
system. DBMS juga menyediakan suatu fourt–generation yang terdiri dari
tools untuk menyederhanakan pengembangan aplikasi basis data. Hal ini
menyebabkan produktivitas programmer ditingkatkan dan mengurangi
waktu pengembangan (penghematan biaya).
12
12) Mengembangkan Pemeliharaan Melalui Data Independent (Improve
Maintenance Through Data Independence)
Deskripsi data dan logika untuk mengakses data dibangun ke dalam program
aplikasi masing–masing dan membuat program tergantung pada data.
13) Meningkatkan Persetujuan (Increased Concurrency)
Jika dua atau lebih para pengguna diijinkan untuk mengakses file yang sama
secara serempak, memungkinkan bahwa akses akan bertentangan satu sama
lain, yang dapat menghasilkan hilangnya informasi atau bahkan hilangnya
integritas.
14) Mengembangkan Backup dan Pelayanan Recovery (Improved Backup and
Recovery Services)
Tanggung jawab pada penggguna dengan menyediakan ukuran untuk
melindungi data dari kegagalan sistem komputer atau program aplikasi. Hal
ini dapat melibatkan pengambilan suatu backup data, backup direstore dan
pekerjaan yang telah berlangsung sejak backup ini hilang dan harus dire-
entered. DBMS menyediakan fasilitas untuk memperkecil jumlah
pengolahan yang hilang beserta kegagalannya.
c. Kerugian DBMS
Menurut Conolly dan Begg (2002, p29), terdapat beberapa kerugian DBMS
diantaranya :
13
1) Kompleksitas (Complexity)
Ketetapan kemampuan yang diharapkan dari suatu DBMS yang baik adalah
pembuatan DBMS suatu potongan piranti lunak yang sangat kompleks. Para
perancang basis data dan pengembang data dan DBA, dan end–users harus
memahami kemampuan ini untuk mengambil keuntungan.
2) Ukuran (Size)
Kompleksitas dan kemampuan yang luas membuat DBMS suatu potongan
piranti lunak yang sangat besar, menduduki banyak megabytes ruang disk
dan sejumlah memori yang substansial menuntut untuk menjalankan secara
efisien.
3) Biaya DBMS (Cost of DBMS)
Biaya DBMS bervariasi secara signifikan, tergantung pada kemampuan dan
lingkungan yang disajikan.
4) Tambahan Biaya Perangkat Keras (Additional Hardware Costs)
Kebutuhan disk penyimpanan untuk DBMS dan basis data mengharuskan
pembelian ruang penyimpanan tambahan. Untuk mencapai performance
yang diperlukan, memungkinkan untuk membeli suatu mesin yang lebih
besar.
14
5) Biaya Konversi (Cost of Conversion)
Biaya konversi aplikasi yang sedang berjalan untuk menjalankan DBMS
yang baru dan perangkat keras. Biaya ini meliputi biaya pelatihan staf untuk
menggunakan sistem baru, dan juga tenaga kerja staf spesialis untuk
membantu konversi dan berjalannya sistem.
6) Pekerjaan (Performance)
Suatu file–based system ditulis untuk suatu aplikasi spesifik, untuk
performance yang lebih baik.
7) Dampak Kegagalan yang Lebih Tinggi (Higher Impact of a Failure)
Pemusatan sumber daya meningkatkan sifat mudah terkena masalah pada
sistem. Sejak semua pengguna dan aplikasi berstandar pada ketersediaan
DBMS, kegagalan tentang segala komponen dapat membawa operasi kepada
suatu pemberhentian.
d. Fungsi – Fungsi DBMS
1) Data Storage, Retrieval dan Update (Data Storage, Retrieval, and Update)
Merupakan fungsi pokok DBMS, suatu DBMS harus melengkapi para
pemakai dengan kemampuan untuk menyimpan, mendapatkan kembali, dan
memperbaharui data di dalam basis data.
15
2) Katalog Akses Pengguna (a User-Accessible Catalog)
Suatu DBMS harus melengkapi suatu katalog dimana deskripsi data item
disimpan dan mana yang dapat diakses ke para pemakai.
3) Mendukung Transaksi (Transaction Support)
Suatu DBMS harus melengkapi suatu mekanisme yang akan memastikan
bahwa semua pembaharuan sesuai dengan transaksi yang ditentukan.
4) Pelayanan Kontrol Persetujuan (Concurrency Control Services)
Suatu DBMS harus melengkapi suatu mekanisme untuk memastikan bahwa
basis data diperbaharui dengan tepat ketika para pengguna sedang
memperbaharui basis data secara bersamaan.
5) Pelayanan Recovery (Recovery Services)
Suatu DBMS harus melengkapi suatu mekanisme untuk mengendalikan
basis data apabila terjadi kerusakan pada basis data.
6) Pelayanan Hak Akses Pengguna (Authorization Services)
Suatu DBMS harus melengkapi suatu mekanisme untuk memastikan bahwa
hanya para pengguna yang diberi hak untuk dapat mengakses basis data.
7) Pendukung Komunikasi Data (Support for Data Communication)
Suatu DBMS harus mampu mengintegrasikan dengan piranti lunak
komunikasi.
16
8) Pelayanan Integritas (Integrity Services)
Suatu DBMS melengkapi makna untuk memastikan data di dalam basis data
dan mengubah data mengikuti aturan tertentu.
9) Pelayanan Untuk Memajukan Data Independen (Services to Promote Data
Independence)
Suatu DBMS harus meliputi fasilitas untuk mendukung independen program
dari struktur basis data yang nyata.
10) Pelayanan Penggunaan (Utility Services)
Suatu DBMS perlu menyediakan seperangkat utilitas penggunaan.
e. Komponen DBMS
Menurut Connolly dan Begg (2002, p18), terdapat lima komponen DBMS :
1) Perangkat Keras (Hardware)
Perangkat keras yang digunakan untuk menjalankan DBMS dan aplikasi-
aplikasi.
2) Perangkat Lunak (Software)
Komponen perangkat lunak yang terdiri dari perangkat lunak DBMS itu
sendiri dan program–program aplikasi, bersama dengan sistem operasi
termasuk perangkat lunak jaringan jika DBMS menggunakan jaringan.
17
3) Data
Komponen yang paling penting dari DBMS, khususnya dari sudut pandang
end-user mengenai data.
4) Prosedur (Procedure)
Cara untuk menjalankan sistem yang mengacu pada instruksi dan aturan
untuk mendesain dan menggunakan basis data.
5) Manusia (People)
Kompenen DBMS yang terakhir adalah manusia yang terlibat dengan
sistem.
2.1.2.d Database Environment
a. Database Languages
1) Data Definition Language (DDL)
Menurut Connolly dan Begg (2002, p40), DDL adalah suatu bahasa
yang memperbolehkan database administrator atau pengguna untuk membuat
spesifikasi tipe data, mendefinisikan basis data, struktur data dan constraint
data untuk disimpan dalam basis data. Hasil dari kompilasi perintah DDL
adalah kumpulan tabel yang disimpan dalam file khusus yang disebut Kamus
Data (Data Dictionary).
Menurut McLeod (2001, p387), kamus data adalah suatu penjelasan
tertulis mengenai data yang berada di dalam basis data. Kamus data ini
18
dimaksudkan untuk melengkapi pembuatan model proses yang menggunakan
diagram alir data (Data Flow Diagram).
2) Data Manipulation Language (DML)
Menurut Connolly dan Begg (2002, p41), DML memperbolehkan
pengguna untuk memasukkan, memperbaharui, menghapus dan mengirim
atau mengambil data dari suatu basis data.
b. Data Model
Menurut Connolly dan Begg (2002, p44), Data Model adalah sekumpulan
konsep terintegrasi yang menggambarkan dan memanipulasi data, relasi diantara
data dan batasan–batasan dari data yang ada di dalam suatu organisasi.
c. Aturan dalam Lingkungan Database (Role in the Database Environment)
Menurut Connolly dan Begg (2002, p21), dapat diidentifikasikan empat
jenis perbedaan orang–orang yang mengambil bagian lingkungan DBMS, yaitu :
1) Data dan Database Administrators
Basis data dan DBMS adalah sumber daya perusahaan yang harus
diatur seperti umumnya sumber daya lain.
Data dan Administrasi Database adalah peran yang biasanya
berhubungan dengan manajemen dan pengendalian suatu DBMS dan
datanya.
Data Administrator (DA) adalah penanggung jawab untuk manajemen
sumber daya data yang mencakup perencanaan basis data, pengembangan
19
dan standar pemeliharaan, kebijakan dan prosedur, dan desain basis data
konseptual/logikal.
DBA bertanggung jawab untuk realisasi fisik basis data, mencakup
desain fisik basis data dan implementasi, keamanan dan integritas
pengendalian, pemeliharaan sistem yang operasional dan memastikan
prestasi yang memuaskan aplikasi untuk para pengguna.
2) Pendesain Database (Database Designers)
Dalam mendesin proyek basis data besar, dapat dibedakan dua jenis
perancang basis data, yaitu :
a) Para Perancang Logikal Basis data
Berkaitan dengan mengidentifikasikan data (entitas dan attribute),
hubungan antara data dan batasan pada data untuk disimpan dalam basis
data. Perancang logikal basis data harus seksama mempunyai dan
melengkapi pemahaman data organisasi aturan bisnisnya.
b) Para Perancang Fisikal Basis data
Memutuskan bagaimana desain basis data logikal diharapkan untuk
secara fisik direalisir.
3) Pengembang Aplikasi (Application Developers)
Program aplikasi yang menyediakan kemampuan yang diperlukan
untuk end–users yang harus diterapkan ketika basis data telah diterapkan.
Hal ini menjadi tanggung jawab pengembangan aplikasi.
20
Pengembang aplikasi bekerja dari suatu spesifikasi yang diproduksi
oleh analis sistem. Masing–masing program berisi pernyataan yang meminta
DBMS untuk melaksanakan beberapa operasi pada basis data, yang meliputi
mendapatkan kembali data, memasukkan, memperbaharui, dan menghapus
data.
4) Pengguna Akhir (End–Users)
End-Users adalah “klien” untuk basis data yang telah dirancang dan
diterapkan dan dirawat untuk melayani kebutuhan informasi.
End–Users dapat digolongkan menurut jalan mereka dengan
menggunakan sistem :
a) Para Pengguna Naif (Naive Users)
Para pengguna yang secara khusus menggunakan DBMS. Mereka
mengakses basis data melalui/sampai secara khusus menulis program
aplikasi mencoba untuk membuat operasi itu sesederhana mungkin.
b) Para Pengguna Canggih (Sophisticated Users)
End–Users yang canggih menjadi terbiasa dengan struktur basis data
dan fasilitas yang ditawarkan oleh DBMS. Sophisticated End- Users
dapat menggunakan suatu bahasa query tingkat tinggi seperti SQL untuk
melaksanakan operasi yang diperlukan.
21
2.1.2.e Database Application LifeCycle
a. Siklus Hidup Sistem Informasi (The Information Systems Lifecycle)
Menurut Connolly dan Begg (2002, p271), Information System adalah
informasi sumber daya yang memungkinkan manajemen mengkoleksi,
mengendali dan menyebarkan sistem informasi pada seluruh organisasi.
Gambar skema dari langkah–langkah The Database Application Lifecycle :
Gambar 2.1 The Database Application Lifecycle
22
b. Siklus Hidup Aplikasi Database (The Database Application Lifecycle)
Langkah–langkah The Database Application Lifecycle :
1) Perencanaan Basis Data (Database Planning)
Aktifitas manajemen yang mengijinkan langkah–langkah aplikasi
perencanaan basis data untuk direalisir secara efisien dan efektif.
2) Definisi Sistem (System Definition)
Uraian batasan–batasan dan lingkup aplikasi basis data dan views pengguna
utama.
3) Pengumpulan dan Analisis Kebutuhan (Requirement Collection and
Analysis)
Proses mengumpulkan dan menganalisis informasi tentang organisasi yang
akan didukung oleh aplikasi basis data, dan menggunakan informasi ini
untuk mengidentifikasi kebutuhan pengguna sistem yang baru.
4) Desain Basis Data (Database Design)
Proses menciptakan suatu desain untuk suatu basis data yang akan
mendukung sasaran dan operasi perusahaan.
5) Pemilihan DBMS (DBMS Selection)
Pemilihan DBMS yang sesuai untuk mendukung aplikasi basis data.
23
6) Desain Aplikasi (Application Design)
Desain dari User Interface dan program aplikasi yang menggunakan proses
basis data.
7) Prototyping
Membangun model kerja suatu aplikasi basis data.
8) Implementasi (Implementation)
Realisasi fisikal dari basis data dan applikasi desain.
9) Data Konversi dan Loading (Data Convertion and Loading)
Pengiriman data apapun ke dalam basis data yang baru dan mengubah
aplikasi apapun yang berjalan untuk kemajuan basis data yang baru.
10) Uji Coba (Testing)
Proses melaksanakan program aplikasi dengan tujuan menemukan
kesalahan.
11) Pemeliharaan Operasional (Operational Mantenance)
Proses memantau sistem dan pemeliharaan untuk instalasi berikutnya.
2.1.2.f Relational Database Management System (RDBMS)
Menurut Connolly dan Begg (2002, p72), The Relational Model terdiri dari :
24
a. Struktur Data Relational (Relational Data structure)
1) Relasional
Relasional adalah suatu tabel dengan kolom dan baris.
2) Attribut
Attribut adalah sesuatu yang dinamakan kolom dari suatu relasi.
3) Domain
Domain adalah satuan nilai–nilai yang dapat diijinkan untuk satu attribut
atau lebih.
4) Tuple
Tuple adalah suatu baris dari suatu relasi.
5) Degree
Degree adalah suatu hubungan dari banyaknya attribut yang berisi.
6) Cardinality
Cardinality adalah suatu hubungan dari banyaknya tuple yang berisi.
7) Relasional Database
Relasional database adalah suatu koleksi dari relasi yang telah dinormalisasi
dengan nama relasi yang berbeda.
25
b. Terminologi Alternatif (Alternative Terminology)
Secara fisik, terminologi berasal dari fakta, RDBMS dapat menyimpan
relasi masing–masing dalam suatu file. Berikut adalah ringkasan terminologi
yang berbeda untuk relasional model :
Tabel 2.1 Relasional Model
Formal Terms Altenative 1 Alternative 2
Relation Table File
Tuple Row Record
Attribute Column Field
c. Relational Keys
Menurut Connolly dan Begg (2002, p78), tidak ada salinan tuples di dalam
suatu hubungan. Oleh karena itu, perlu mengidentifikasikan satu atau lebih
attribut (kunci relasional) bahwa dengan uniknya mengidentifikasikan masing–
masing tuple di dalam suatu relasi.
1) Super Key
Suatu attribut, atau set attribut yang dengan uniknya mengidentifikasi suatu
tuple di dalam suatu relasi.
2) Candidate Key
Suatu superkey seperti tidak ada subset yang sesuai adalah suatu superkey di
dalam hubungan itu.
26
3) Primary Key
Candidate key yang terpilih untuk mengidentifikasikan tuples dengan
uniknya di dalam suatu relasi.
4) Foreign Key
Suatu attribut, atau set attribut di dalam suatu relasi yang memenuhi
beberapa candidate key (yang mungkin sama) dalam suatu relasi.
5) Composite Key
Suatu candidate key yang terdiri dari dua atau lebih attribut.
d. Relational Integrity
Menurut Connolly dan Begg (2002, p81), Suatu data model mempunyai
dua bagian, bagian manipulatif, yang merupakan penjelasan jenis operasi yang
diijinkan pada data dan satuan aturan integritas, yang memastikan bahwa data itu
adalah akurat.
1) NULL
Menampilkan suatu nilai untuk suatu attribut yang tidak dikenal atau yang
tidak diterapkan untuk tuple ini.
2) Integritas Entity
Di dalam suatu relasi dasar, tidak ada attribut suatu kunci utama (primary
key) dapat menjadi null.
27
3) Referensi Integritas
Jika suatu foreign key yang ada adalah suatu relasi, apapun foreign key
nilainya harus sesuai dengan suatu nilai candidate key beberapa tuple dalam
relasi berada atau nilai foreign key secara keseluruhan harus null.
4) Constraint Perusahaan
Batasan aturan tambahan perusahaan yang ditetapkan oleh para pengguna
atau pengurus database suatu DBA.
5) Relasi Dasar (Base Relation)
Sebuah nama relasi yang sesuai dengan suatu entity di dalam bagan
konseptual, tuples secara fisik disimpan dalam basis data. Dapat
menggambarkan Views dalam kaitan dengan Base Relation.
a) Views
Satu hasil yang dinamis atau lebih operasi operasional yang beroperasi pada
Base Relation untuk menghasilkan relasi lain. Suatu Views adalah suatu
relasi yang sebenarnya tidak perlu ada dalam basis data, tetapi dapat
diproduksi atas permintaan oleh pengguna tertentu, pada saat permintaan.
(1) Keuntungan–keuntungan dari Views :
(a) Independent Data (Data Independence)
Suatu Views konsisten dapat menyajikan suatu gambaran struktur basis
data yang tidak berubah–ubah, sekalipun mendasari tabel sumber
diubah.
28
(b) Currency
Perubahan bagi tabel dasar manapun dalam mendefinisikan query
dengan seketika direfleksikan dalam Views.
(c) Mengembangkan Keamanan (Improved Security)
Masing–masing pemakai dapat diberi perlakuan khusus untuk
mengakses basis data hanya melalui suatu satuan kecil satuan Views
yang berisi data yang sesuai dengan pengguna, dengan demikian
pembatasan dan mengendalikan masing–masing akses pengguna kepada
basis data.
(d) Mengurangi Kompleksitas (Reduced Complexity)
Suatu Views dapat menyederhanakan query, dengan gambar dari
beberapa tabel ke dalam tabel tunggal, dengan mentransformasikan
query multi–tabel ke dalam single–queries.
(e) Kenyamanan (Convenience)
Views dapat menyediakan keamanan lebih kepada para pengguna
dengan pengecualian bagian dari basis data. Hal ini dapat mengurangi
kompleksitas dari segi Views pengguna.
29
(f) Customization
Views menyediakan suatu metode ke customize suatu penampilan basis
data, sehingga tabel dasar dapat dilihat oleh para pengguna yang
berbeda dalam cara yang berbeda.
(g) Integritas Data (Data Integrity)
Pendefinisian query ditambahkan untuk mendasari dasar tabel–tabel
melalui Views, dengan demikian dapat memastikan integritas Views
tersebut.
(2) Kerugian – kerugian dari Views :
(a) Pembatasan Pembaharuan (Update Restriction)
Dalam beberapa hal, suatu Views tidak dapat diperbaharui.
(b) Pembatasan Struktur (Structure Restriction)
Struktur suatu Views ditentukan pada waktu dibuatnya struktur Views.
(c) Pekerjaan (Performance)
Ada suatu pelanggaran pekerjaan untuk dibayar ketika penggunaan
suatu Views. Resolusi Views memerlukan tambahan sumber daya
komputer, sehingga dapat dibuatkan suatu pendekatan alternatif untuk
memelihara Views yang mencoba menanggulangi kerugian ini.
30
2.1.2.g Entity-Relationship Modeling (ER Models)
Menurut Connolly dan Begg (2002, p330), ER Models adalah suatu
pendekatan top–down ke desain basis data yang dimulai dengan mengidentifikasi
data yang penting disebut entity dan relasi antara data yang harus mempresentasikan
model.
a. Tipe Entity
Menurut Connolly dan Begg (2002, p331), Tipe Entity adalah suatu
kelompok objek dengan properti yang sama, yang dikenali oleh perusahaan,
seperti mempunyai keberadaan mandiri (independen).
Menurut Connolly dan Begg (2002, p333), Kejadian Entity adalah suatu
objek yang bisa diidentifikasi dari suatu tipe entity.
Menurut Connolly dan Begg (2002, p342), Tipe entity digolongkan sebagai
berikut :
1) Tipe Entity Kuat (Strong Entity Types)
Suatu entity yang tidak bergantung keberadaannya pada beberapa jenis entity
lain.
2) Tipe Entity Lemah (Weak Entity Types)
Suatu entity keberadaannya bergantung pada beberapa jenis entity lain.
b. Tipe Relationship
Menurut Connolly dan Begg (2002, p334), Tipe Relationship adalah satu
set assosiasi penuh arti antara tipe entity.
31
Menurut Connolly dan Begg (2002, p334), Kejadian Relationship adalah
suatu assosiasi yang dapat diidentifikasi, meliputi satu kejadian dari masing–
masing yang mengambil bagian tipe entity.
Menurut Connolly dan Begg (2002, p335), Tingkat Tipe Relationship
adalah jumlah partisipan tipe entity dalam suatu reletionship.
Menurut Connolly dan Begg (2002, p337), Relationship Berulang adalah
suatu jenis relationship dimana tipe entity yang sama mengambil bagian lebih
dari sekali di dalam peran yang berbeda.
c. Structure Constraints
Menurut Connolly (2002, p344), Multiplicity adalah jumlah (cakupan)
kejadian/peristiwa yang mungkin terjadi pada tipe entity, dapat merupakan reaksi
untuk kejadian/peristiwa tunggal tipe entity melalui relationship tertentu.
1) Relationship Satu ke Satu (1:1) (One – to – One Relationship)
2) Relationship Satu ke Banyak (1:*) (One – to – Many Relationship)
3) Relationship Banyak ke Banyak (*:*) (many –to–many relationship)
2.1.2.h Normalisasi
a. Pengertian Normalisasi
Menurut Connolly dan Begg (2002, p376), Normalisasi adalah sebuah
teknik untuk memproduksi seperangkat hubungan (relasi) dengan properties yang
diinginkan, jika diketahui kebutuhan data dari suatu perusahaan.
32
b. Ketergantungan Fungsional
Menurut Connolly dan Begg (2002, p379), Ketergantungan Fungsional
adalah menggambarkan relationship antara attribut di dalam suatu relasi.
Menurut Connolly dan Begg (2002, p380), Determinant adalah mengacu
pada attribut atau kelompok attribut pada sisi kiri anak panah dari suatu
ketergantungan fungsional.
c. Proses Normalisasi
1) First Normal Form (1NF)
Unnormalized Form (UNF) merupakan bentuk awal dari form sebelum
dilakukan proses normalisasi. UNF adalah suatu tabel yang mengandung satu
atau lebih kelompok yang berulang.
1NF adalah suatu relasi dimana perpotongan dari tiap baris dan kolom
berisi hanya satu nilai. Prosesnya dimulai dengan memindahkan data dari sumber
ke dalam format tabel dengan baris dan kolom.
2) Second Normal Form (2NF)
Full Fungtional Dependency mengindikasikan bahwa jika A dan B adalah
attribut suatu relasi, B secara fungsional bergantung secara penuh pada A, tetapi
tidak pada subset manapun dari A.
2NF adalah sebuah relasi dalam format normal pertama dan setiap attribut
yang bukan primary key sepenuhnya tergantung secara fungsional kepada
primary key.
33
3) Third Normal Form (3NF)
Transitive Dependency adalah sebuah kondisi dimana A, B dan C
merupakan attribut dari suatu relasi sedemikian rupa sehingga jika A B dan B
C, maka C tergantung secara transitif kepada A melalui B (jika A tidak
tergantung secara fungsional kepada B atau C). Normalisasi relasi–relasi 2NF
menjadi 3NF melibatkan penghilangan ketergantungan transitif, jika terdapat
ketergantungan secara transitif, dapat dihilangkan attribut yang tergantung secara
transitif tersebut dari sebuah relasi dengan menggantikan attribut tersebut pada
sebuah relasi yang baru dengan determinantnya.
3NF adalah sebuah relas i pada format normal pertama dan normal kedua,
dimana setiap attribut yang bukan primary key tergantung secara transitif kepada
bukan primary key.
2.1.3 Perancangan Basis Data (Phase of Database design)
2.1.3.a Perancangan Desain Basis Data Konseptual (Conceptual Database Design)
Menurut Connolly dan Begg (2002, p419), Konseptual Basis Data Design
adalah proses konstruksi model informasi dengan menggunakan sumber dari
perusahaan secara independen.
Langkah–Langkah Konseptual Database Design :
Langkah 1 Membangun model konseptual data lokal untuk setiap user view
Untuk membangun model konseptual data lokal dari perusahaan untuk
setiap view yang khusus ada beberapa langkah sebagai berikut.
34
Langkah 1.1 Identifikasi tipe entity
Untuk mengidentifikasi tipe entity utama yang dibutuhkan
oleh view.
Langkah 1.2 Identifikasi tipe relationship
Untuk mengidentifikasi hubungan penting yang ada
diantara tipe entity yang telah diidentifikasi.
Langkah 1.3 Identifikasi tipe dan menggabungkan attributes pada tiap
entiti
Untuk menggabungkan attribut dengan entity yang sesuai
atau tipe relationship.
Langkah 1.4 Menentukan domain attribute
Untuk menentukan daerah asal atribut pada konseptual
data model.
Langkah 1.5 Menentukan attributes candidate and primary key
Untuk mengidentifikasi candidate key setiap tipe entity,
jika terdapat lebih dari satu candidate key, maka dipilih
satu menjadi primary key.
Langkah 1.6 Mempertimbangkan konsep pemodelan enhanced
(optional step)
Untuk mempertimbangkan penggunaan dari konsep
pemodelan enhanced, seperti spesialisasi/generalisasi,
pengumpulan, dan komposisi.
Langkah 1.7 Cek model dari perulangan data
Untuk mengecek adanya perulangan data di dalam model.
35
Langkah 1.8 Validasi model konseptual lokal terhadap transaksi
pengguna
Untuk memastikan bahwa model konseptual lokal
mendukung transaksi yang dibutuhkan oleh view
Langkah 1.9 Review model konseptual data lokal terhadap pengguna
Untuk meninjau model konseptual data lokal dengan
pengguna untuk memastikan bahwa model representasi
dari view ”benar”.
2.1.3.b Perancangan Desain Basis Data Logikal (Logical Database Design)
Menurut Connolly dan Begg (2002, p419), Logical Database Design adalah
Proses konstruksi model informasi dengan menggunakan spesifik model basis data
perusahaan (relasional), tapi tidak tergantung kebutuhan DBMS dan pertimbangan
fisikal.
Logikal Database Design untuk model relational :
Langkah 2 Membangun dan memvalidasi model logikal data lokal untuk setiap user
view
Untuk membangun model logikal data lokal dari model konseptual data
lokal yang mewakili view tertentu dari perusahaan dan juga validasi
model ini untuk memastikan struktur yang digunakan adalah benar
(menggunakan teknik normalisasi) dan untuk memastikan mendukung
transaksi yang diperlukan.
36
Langkah 2.1 Menghilangkan features tidak compatible terhadap model
relational (optional step)
Untuk memperbaiki model konseptual data lokal untuk
menghilangkan features yang tidak compatible terhadap
model relational.
Langkah 2.2 Menentukan relasi untuk model logikal data lokal
Untuk membuat relasi model logikal data lokal untuk
mewakili entiti, relationship, dan atribut yang sudah
teridentifikasi.
Langkah 2.3 Validasi relasi dengan menggunakan normalisasi
Untuk validasi relasi model logikal data lokal
menggunakan teknik normalisasi.
Langkah 2.4 Validasi relasi terhadap transaksi user
Untuk memastikan relasi di model logikal data lokal
mendukung transaksi yang dibutuhkan oleh view.
Langkah 2.5 Menentukan kendala integrity
Untuk menjelaskan kendala integrity yang diberikan oleh
view.
Langkah 2.6 Review model logikal data lokal terhadap pengguna
Untuk memastikan model logikal data lokal dan
dokumentasi pendukung yang menggambarkan model
adalah representasi dari view.
37
Langkah 3 Membangun dan memvalidasi model logikal data global
Untuk menggabungkan individu model logikal data lokal menjadi satu
model logikal data global yang direpresentasikan perusahaan.
Langkah 3.1 Menggabungkan model logikal data lokal kedalam model
logikal data global
Untuk menggabungkan individu model logikal data lokal
ke dalam model logikal data global ke perusahaan.
Langkah 3.2 Memvalidasi model logikal data global
Untuk validasi relasi yang dibuat dari model logikal data
global menggunakan teknik normalisasi dan untuk
memastikan relasi mendukung transaksi yang dibutuhkan.
Langkah 3.3 Cek model terhadap perkembangan selanjutnya
Untuk menentukan apakah ada perubahan yang sinifikan
dalam waktu dekat dan untuk menilai apakah model
logikal data global dapat mengakomodasi perubahan-
perubahan ini.
Langkah 3.4 Review model logikal data global terhadap pengguna
Untuk memastikan bahwa model logikal data global
merupakan representasi dari perusahaan.
2.1.3.c Perancangan Desain Database Fisikal (physical Database Design)
Menurut Connolly dan Begg (2002, p419), Physical Database Design adalah
proses memproduksi penjelasan implementasi basis data pada secondary storage,
menguraikan basis relasi, organisasi file, rancangan indeks agar akses data menjadi
38
efisien, semua yang berhubungan dengan kendala integritas, dan
peralatan/mekanisme security.
Fisikal Database Design Untuk Relational Databases :
Langkah 4 Menerjemahkan model logikal data global menjadi target DBMS
Untuk menghasilkan skema relasi basis data dari model logikal data
global yang dapat diimplementasikan ke target DBMS.
Langkah 4.1 Merancang basis relasi
Untuk memutuskan bagaimana mewakili basis relasi yang
teridentifikasi di model logikal data global pada target
DBMS.
Langkah 4.2 Merancang representasi kebutuhan data
Untuk memutuskan bagaimana mewakili setiap data yang
diperoleh di model logikal data global pada target DBMS.
Langkah 4.3 Merancang kendala perusahaan
Untuk merancang kendala perusahaan untuk target DBMS.
Langkah 5 Merancang representasi fisikal
Untuk menentukan optimal organisasi untuk menyimpan basis relasi dan
indeks yang dibutuhkan untuk mencapai hasil yang dapat diterima.
Langkah 5.1 Analisis Transaksi
Untuk memahami kemampuan dari transaksi yang akan
dijalankan oleh basis data dan untuk menganalisa transaksi
yang penting.
39
Langkah 5.2 Memilih organisasi file
Untuk menentukan organisasi file yang efisien untuk setiap
basis relasi.
Langkah 5.3 Pemilihan indeks
Untuk menentukan apakah menambahkan indeks dapat
mengembangkan hasil dari sistem.
Langkah 5.4 Estimasi kebutuhan disk space
Untuk memperkirakan banyaknya disk space yang
dibutuhkan oleh basis data.
Langkah 6 Perancangan user view
Untuk merancang user view yang telah teridentifikasi selama
pengumpulan persyaratan dan tahap menganalisa dari database
application lifecycle.
Langkah 7 Perancangan mekanisme security
Untuk merancang langkah-langkah kemanan untuk basis data yang
ditentukan oleh pengguna.
Langkah 8 Mempertimbangkan kontrol redundancy
Untuk memutuskan apakah memperkenalkan redundancy dengan aturan
normalisasi akan mengembangkan hasil dari sistem.
40
Langkah 9 Monitor dan merubah sistem operasional
Untuk memonitor sistem operasional dan mengembangkan hasil dari
sistem yang tidak sesuai dengan keputusan desain atau mencerminkan
perubahan kebutuhan.
2.1.4 Microsoft SQL Server 2000
2.1.4.a Sejarah SQL
Menurut Connolly dan Begg (2002, p112), Pada tahun 1974, D. Chamberlin
dan San Jose dari IBM laboratory mendefinisikan suatu bahasa yang disebut the
Structures English Query Language, atau SEQUEL. Suatu versi ditinjau kembali
SEQUEL/2 telah didefinisikan pada tahun 1976.
Nama sub–sequently yang diubah dengan SQL untuk alasan yang syah
(Chamberlin dan Boyce, 1974). IBM memproduksi prototype DBMS dasar dalam
SEQUEL/2 yang disebut sistem R (Astrahan et al, 1976). Tujuan prototype ini adalah
untuk memvalidasi kelayakan realsional model, dan hasil yang lainnya untuk
pengembangan SQL. Akar SQL adalah SQUARE yang dirancang sebagai bahasa riset
untuk menerapkan relasional algebra dengan kalimat inggris (Boyce et al, 1975).
Pada tahun 1970, sistem basis data Oracle telah diproduksi dengan apa yang
kini disebut Oracle Corporation.
Di tahun 1982, the American Nationals Standards Institute bekerja pada suatu
Bahasa Database Relational (Relational Database Language/RDL) dasar dalam suatu
konsep tulisan dari IBM. ISO bergabung dalam perkerjaan ini pada tahun 1983 dan
bersama mereka mendefinisikan standar untuk SQL.
41
Pada tahun 1989, ISO menerbitkan suatu tambahan yang mendefinisikan corak
peningkatan integritas “Integrity Enhancement Feature” (ISO. 1989). Pada tahun
1992, terjadi revisi besar yang pertama untuk standar ISO, yang dikenal sebagai
SQL–2 atau SQL–92 (ISO. 1992), sampai 1999 pelepasan/release standar yang telah
disusun, biasa dikenal sebagai SQL3 (ISO. 1999a).
2.1.4.b Manipulasi Data
Menurut Connolly dan Begg (2002, p115), SQL DML yakni :
a. SELECT : Untuk query data di dalam basis data.
b. INSERT : Untuk memasukkan (insert) data ke dalam suatu tabel.
c. UPDATE : Untuk memperbaharui (update) data dalam suatu tabel.
d. DELETE : Untuk menghapus (delete) data dari suatu tabel.
2.1.4.c Queries
Menurut Damopolii (2002, p66), Query adalah sarana untuk mengatur data
yang disimpan dalam tabel, sehingga hanya data tertentu yang akan dimunculkan
dalam tabel. Karena query menyertakan unsur urutan proses, maka query
dikelompokkan dalam lingkup pemrograman.
Menurut Connolly dan Begg (2002, p116), tujuan pernyataan SELECT adalah
untuk mendapat kembali dan menampilkan data dari satu atau lebih tabel basis data.
SELECT adalah perintah yang paling sering SQL gunakan. Untuk memproses suatu
pernyataan SELECT adalah :
a. FROM : Menetapkan tabel atau untuk menggunakan tabel.
b. WHERE : Menyaring baris kepada beberapa kondisi.
42
c. GROUP BY : Membentuk kelompok baris dengan kolom yang sama nilainya.
d. HAVING : Menyaring kelompok kepada beberapa kondisi.
e. SELECT : Menetapkan kolom untuk ditampilkan pada keluaran (output).
f. ORDER BY : Menetapkan pesanan (order) pada output.
2.1.4.d SQL Aggregate Functions
Menurut Connolly dan Begg (2002, p127), standar ISO mendefinisikan lima
kumpulan fungsi :
a. COUNT
Mengembalikkan banyaknya nilai–nilai di dalam suatu kolom yang ditetapkan.
b. SUM
Mengembalikkan penjumlahan nilai–nilai di dalam suatu kolom yang ditetapkan.
c. AVG
Mengembalikkan rata–rata nilai di dalam suatu kolom yang ditetapkan.
d. MIN
Mengembalikkan nilai yang paling kecil di dalam suatu kolom yang ditetapkan.
e. MAX
Mengembalikkan nilai yang paling besar di dalam suatu kolom yang ditetapkan.
2.2 Teori Khusus
2.2.1 PHP
Dalam membangun sistem berbasis basis data, diperlukan software–software
yang khusus untuk sistem tersebut. Salah satu software yang banyak digunakan
43
adalah PHP. Untuk dapat menggunakan software ini perlu dilakukan instalasi dan
konfigurasi.
Menurut Nugroho (2004, p140) PHP adalah bahasa standar yang digunakan
dalam dunia website. PHP adalah bahasa pemrograman yang berbentuk script yang
diletakkan di dalam server web.
PHP bermula dari ide Rasmus Lerdolf yang membuat script perl. Script
tersebut sebenarnya digunakan sebagai program untuk dirinya sendiri, tetapi
kemudian dikembangkan lagi menjadi bahasa yang disebut “Personal Home Page”,
dari sinilah awal mula munculnya PHP.
2.2.2 Adobe Dreamweaver CS3
Dreamweaver adalah sebuah HTML editor professional yang digunakan untuk
mendesain secara visual dan mengelola situs web maupun halaman web.
Dreamweaver menyediakan tool–tool yang sangat berguna dalam meningkatkan
kemampuan dan pengalaman dalam membuat web.
Dreamweaver mengikutsertakan banyak tool untuk kode–kode dalam halaman
web beserta fasilitas–fasilitasnya, antara lain : HTML, CSS, Javascript debugger dan
editor code yang mengijinkan pengeditan kode Javascript, XML, PHP, JSP, ASP dan
dokumen text lainnya.
2.2.3 Internet
Menurut Turban (2001, p208) Internet adalah sebuah interkoneksi jaringan
yang besar dari jaringan–jaringan komputer dan komputer–komputer di seluruh
44
penjuru dunia, lewat saluran telepon, satelit, dan sistem komunikasi lainnya guna
melakukan pertukaran informasi.
2.2.4 Web
Menurut Betha, Husni (2007, p5), Web Browser adalah piranti lunak yang
digunakan untuk menampilkan informasi dari web server. Web Browser
berkomunikasi melalui jaringan (termasuk jaringan internet) dengan web server,
menggunakan HTTP. Browser akan mengirimkan request ke server untuk meminta
dokumen atau layanan lain yang disediakan oleh server. Server memberikan dokumen
atau layanannya jika tersedia juga dengan menggunakan protokol HTTP.
2.2.5 Protokol
Menurut Lukas (2006, p14) Protokol adalah proses kontrol komunikasi antar
komputer atau antar jaringan komputer yang memerlukan satu konsep sistem yang
mengendalikan proses pemindahan data. Protokol digunakan untuk berkomunikasi
antara entitas dalam sistem yang berbeda. Entitas adalah segala sesuatu yang
mempunyai kemampuan mengirim atau menerima informasi.
2.2.5.a TCP/IP
Menurut Lukas (2006, p21) TCP/IP adalah model protokol yang paling luas
digunakan dalam arsitektur jaringan. TCP/IP merupakan hasil penelitian yang
dibuat dan dikembangkan oleh DARPA (Defence Advanced Research Project
Agency) yang digunakan pada jaringan paket. TCP/IP merupakan kumpulan
protokol yang banyak dikeluarkan pemakai internet. Tidak ada standar yang pas
45
untuk TCP/IP, tetapi dibangun dengan standar dasar yang mempunyai lima layer,
yaitu Application Layer, Host to Host (transport layer), Internet Layer, Network
Access Layer dan Physical Layer.
2.2.5.b HTTP
Suatu protokol yang menentukan aturan yang perlu diikuti oleh web browser
dalam meminta atau mengambil suatu dokumen dan web server dalam
menyediakan dokumen yang diminta oleh web browser.
2.2.6 Enhanced ER Models
2.2.6.a State Transition Diagram (STD)
Menurut Pressman (2002), STD adalah suatu model diagram yang tergantung
pada definisi suatu state. State adalah suatu kumpulan model dari tingkah laku yang
dapat diobservasi. STD mewakili suatu tingkah laku dari suatu sistem dengan
menggambarkan state dan kejadian yang menyebabkan sistem berubah ke state lain.
2.2.6.b Entity Relationship Diagram (ERD)
Menurut Jeffrey L. Whitten(2004, p281), ERD adalah model data yang
menggunakan beberapa notasi untuk menggambarkan data dalam konteks entitas dan
hubungan yang dideskripsikan oleh data tersebut.
46
2.2.6.c Data Flow Diagram (DFD)
Menurut Jeffrey L. Whitten(2004, p326), DFD adalah model proses yang
digunakan untuk menggambarkan aliran data melalui sebuah sistem dan tugas atau
pengolahan yang dilakukan oleh sistem.
2.2.6.d Flowchart
Menurut Mulyadi (2001, p60) aliran dokumentasi yag didapat atau
dihasilkan dari system dalam suatu perusahaan daoat digambarkan dengan
symbol-simbol docment flowchart atau bagan aliran dokumen.
2.2.7 Teori Sistem
Menurut Connolly dan Begg (2002, p274), Sistem adalah penjelasan ruang
lingkup dan batasan-batasan dari aplikasi basis data dan user view utama.
2.2.8 Standard Operation Procedure (SOP)
SOP adalah sistematika penyusunan yang dibuat sesederhana mungkin agar
mudah dipahami dengan tetap mengedepankan sasaran utama dibentuknya SOP
PMO.
47
2.2.9 Project Management Methodology (PMM)
PMM adalah proses-proses yang berguna untuk pelaksanaan proyek-proyek TI
secara individual.
2.2.10 Teori PMO
Program Management Office (PMO) adalah suatu program yang dibuat untuk
mengatur proyek–proyek yang ada di PT PLN (Persero).
PMO terdiri dari dua sistem yang saling berhubungan, yaitu PMO Timesheet
dan PMO Library.
2.2.10.a Teori PMO Timesheet
PMO Timesheet adalah sistem aplikasi pengelolaan manajemen proyek yang
dapat mencatat proses kegiatan dan inisialisasi proyek terhadap suatu proyek
khususnya difokuskan pada sumber daya manusia dalam proyek tersebut. Pada
dasarnya akan banyak proses pencatatan data menjadi sebuah informasi profil proyek
tersebut termasuk resources yang berpartisipasi. Aplikasi ini nantinya akan
terintegrasi yaitu menghubungkan antara dua sistem antara PMO Timesheet dan
PMO Library (Aplikasi Perpustakaan Dokumen Proyek) yaitu dengan
mengintegrasikan kebutuhan referensi data yang berhubungan dengan proyek pada
PMO Timesheet.
2.2.10.b Teori PMO Library
PMO Library merupakan perpustakaan bagi PMO Timesheet, karena semua
yang berhubungan dengan PMO Timesheet disimpan di sini. Mulai dari dokumen–
48
dokumen proyek sampai dokumen–dokumen pekerja yang menangani proyek
tersebut.