BAB 2 LANDAS AN TEORI
2.1
Teori Umum
2.1.1 Pendekatan File – Based (File Based Approach) M enurut 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 M enurut 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. M enurut Whitten (2004, p23), Data adalah fakta mentah mengenai orang, tempat, kejadian dan hal-hal yang peting dalam organisasi. M enurut Hoffer (2005, p5), Data adalah menyimpan deskripsi dari objek yang penting dalam lingkungan pengguna.
2.1.2.b Basis Data M enurut Atzeni (2005, p2), Basis data adalah kumpulan dari data yang digunakan untuk merepresentasikan informasi dari suatu sistem informasi.
7
8
M enurut 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. M enurut M annino (2001, p4), Basis data adalah sekumpulan data yang secara terus menerus yang dapat digunakan oleh banyak user dan saling berkaitan. M enurut 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 M enurut Connolly dan Begg (2002, p16), DBM S adalah sebuah sistem piranti lunak yang memperbolehkan pengguna untuk mendefinisikan, membuat, memelihara dan mengontrol akses ke basis data. M enurut Atzeni (2005, p3), DBM S 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. M enurut Korth dan Silberschatz (2002, p21), DBM S adalah kumpulan dari data yang saling berkaitan dan program untuk mengakses data tersebut.
9
M enurut M annino (2001, p4), DBM S adalah kumpulan dari piranti lunak yang mendukung pembuatan, penggunaan dan pemeliharaan basis data. Sehingga dapat disimpulkan DBM S adalah sebuah sistem piranti lunak yang digunakan untuk mendefinisikan, membuat, mengelola, memelihara dan mengontrol akses ke basis data.
b. Keuntungan DBMS M enurut Conolly dan Begg (2002, p26), terdapat beberapa keuntungan DBM S, 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)
M enyeimbangkan Ketidaksesuaian Kebutuhan (Balance of Conflicting Requirements) M asing–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) M engembangkan
Akses
Data
(Improved
Data
Accessibility
and
Responsiveness) Sebagai hasil pengintegrasian, data lintas batas per departemen, secara langsung dapat diakses kepada end-users.
11) M eningkatkan Produktifitas (Increased Productivity) DBM S menyediakan banyak dari fungsi standar bahwa programmer akan secara normal harus memberi suara dengan menulis dalam suatu file–based system. DBM S 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) M engembangkan
Pemeliharaan
M elalui 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) M eningkatkan 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) M engembangkan 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 direentered. DBM S menyediakan
fasilitas
untuk
memperkecil jumlah
pengolahan yang hilang beserta kegagalannya.
c.
Kerugian DBMS M enurut Conolly dan Begg (2002, p29), terdapat beberapa kerugian DBM S diantaranya :
13
1)
Kompleksitas (Complexity) Ketetapan kemampuan yang diharapkan dari suatu DBM S yang baik adalah pembuatan DBM S 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 DBM S suatu potongan piranti lunak yang sangat besar, menduduki banyak megabytes ruang disk dan sejumlah memori yang substansial menuntut untuk menjalankan secara efisien.
3)
Biaya DBM S (Cost of DBMS) Biaya DBM S bervariasi secara signifikan, tergantung pada kemampuan dan lingkungan yang disajikan.
4)
Tambahan Biaya Perangkat Keras (Additional Hardware Costs) Kebutuhan disk penyimpanan untuk DBM S 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 DBM S 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 DBM S, 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) M erupakan fungsi pokok DBM S, suatu DBM S 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 DBM S harus melengkapi suatu katalog dimana deskripsi data item disimpan dan mana yang dapat diakses ke para pemakai.
3)
M endukung Transaksi (Transaction Support) Suatu DBM S harus melengkapi suatu mekanisme yang akan memastikan bahwa semua pembaharuan sesuai dengan transaksi yang ditentukan.
4)
Pelayanan Kontrol Persetujuan (Concurrency Control Services) Suatu DBM S 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 DBM S harus melengkapi suatu mekanisme untuk mengendalikan basis data apabila terjadi kerusakan pada basis data.
6)
Pelayanan Hak Akses Pengguna (Authorization Services) Suatu DBM S 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 DBM S harus mampu mengintegrasikan dengan piranti lunak komunikasi.
16
8)
Pelayanan Integritas (Integrity Services) Suatu DBM S melengkapi makna untuk memastikan data di dalam basis data dan mengubah data mengikuti aturan tertentu.
9)
Pelayanan Untuk M emajukan Data Independen (Services to Promote Data Independence) Suatu DBM S harus meliputi fasilitas untuk mendukung independen program dari struktur basis data yang nyata.
10) Pelayanan Penggunaan (Utility Services) Suatu DBM S perlu menyediakan seperangkat utilitas penggunaan.
e. Komponen DBMS M enurut Connolly dan Begg (2002, p18), terdapat lima komponen DBM S : 1)
Perangkat Keras (Hardware) Perangkat keras yang digunakan untuk menjalankan DBM S dan aplikasiaplikasi.
2)
Perangkat Lunak (Software) Komponen perangkat lunak yang terdiri dari perangkat lunak DBM S itu sendiri dan program–program aplikasi, bersama dengan sistem operasi termasuk perangkat lunak jaringan jika DBM S menggunakan jaringan.
17
3)
Data Komponen yang paling penting dari DBM S, 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)
M anusia (People) Kompenen DBM S yang terakhir adalah manusia yang terlibat dengan sistem.
2.1.2.d Database En vironment a.
Database Languages 1)
Data Definition Language (DDL) M enurut 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). M enurut M cLeod (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) M enurut Connolly dan Begg (2002, p41), DM L memperbolehkan pengguna untuk memasukkan, memperbaharui, menghapus dan mengirim atau mengambil data dari suatu basis data.
b.
Data Model M enurut 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) M enurut Connolly dan Begg (2002, p21), dapat diidentifikasikan empat jenis perbedaan orang–orang yang mengambil bagian lingkungan DBM S, yaitu : 1)
Data dan Database Administrators Basis data dan DBM S 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 DBM S 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 M emutuskan 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. M asing–masing program berisi pernyataan yang meminta DBM S 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 DBM S. M ereka 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 DBM S. 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) M enurut 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 DBM S (DBMS Selection) Pemilihan DBM S 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 M embangun 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 S ystem (RDBMS ) M enurut Connolly dan Begg (2002, p72), The Relational M odel terdiri dari :
24
a.
S truktur 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, RDBM S dapat menyimpan relasi masing–masing dalam suatu file. Berikut adalah ringkasan terminologi yang berbeda untuk relasional model : Tabel 2.1 Relasional M odel
c.
Formal Terms
Altenative 1
Alternative 2
Relation
Table
File
Tuple
Row
Record
Attribute
Column
Field
Relational Keys M enurut 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 M enurut 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 M enampilkan 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) M engembangkan Keamanan (Improved Security) M asing–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) M engurangi 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) M enurut 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 M enurut Connolly dan Begg (2002, p331), Tipe Entity adalah suatu kelompok objek dengan properti yang sama, yang dikenali oleh perusahaan, seperti mempunyai keberadaan mandiri (independen). M enurut Connolly dan Begg (2002, p333), Kejadian Entity adalah suatu objek yang bisa diidentifikasi dari suatu tipe entity. M enurut 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 M enurut Connolly dan Begg (2002, p334), Tipe Relationship adalah satu set assosiasi penuh arti antara tipe entity.
31
M enurut Connolly dan Begg (2002, p334), Kejadian Relationship adalah suatu assosiasi yang dapat diidentifikasi, meliputi satu kejadian dari masing– masing yang mengambil bagian tipe entity. M enurut Connolly dan Begg (2002, p335), Tingkat Tipe Relationship adalah jumlah partisipan tipe entity dalam suatu reletionship. M enurut 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.
S tructure Constraints M enurut 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 M enurut 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 M enurut Connolly dan Begg (2002, p379), Ketergantungan Fungsional adalah menggambarkan relationship antara attribut di dalam suatu relasi. M enurut 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) M enurut 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 M embangun 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
M enentukan domain attribute Untuk menentukan daerah asal atribut pada konseptual data model.
Langkah 1.5
M enentukan 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 M empertimbangkan
konsep
pemodelan
enhanced
penggunaan
dari konsep
(optional step) Untuk
mempertimbangkan
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) M enurut 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 DBM S dan pertimbangan fisikal. Logikal Database Design untuk model relational : Langkah 2 M embangun 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
M enghilangkan 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 M enentukan 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
M enentukan 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 M embangun 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
M enggabungkan 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
M emvalidasi 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 perubahanperubahan 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) M enurut 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 M enerjemahkan model logikal data global menjadi target DBM S Untuk menghasilkan skema relasi basis data dari model logikal data global yang dapat diimplementasikan ke target DBM S. Langkah 4.1
M erancang basis relasi Untuk memutuskan bagaimana mewakili basis relasi yang teridentifikasi di model logikal data global pada target DBM S.
Langkah 4.2
M erancang representasi kebutuhan data Untuk memutuskan bagaimana mewakili setiap data yang diperoleh di model logikal data global pada target DBM S.
Langkah 4.3
M erancang kendala perusahaan Untuk merancang kendala perusahaan untuk target DBM S.
Langkah 5 M erancang 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
M emilih 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
pengumpulan
persyaratan
view
yang
telah
teridentifikasi selama
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 M empertimbangkan kontrol redundancy Untuk memutuskan apakah memperkenalkan redundancy dengan aturan normalisasi akan mengembangkan hasil dari sistem.
40
Langkah 9 M onitor 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 M enurut 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 DBM S 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 M enurut 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 M enurut 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. M enurut 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 : M enetapkan tabel atau untuk menggunakan tabel.
b.
WHERE : M enyaring baris kepada beberapa kondisi.
42
c.
GROUP BY : M embentuk kelompok baris dengan kolom yang sama nilainya.
d.
HAVING : M enyaring kelompok kepada beberapa kondisi.
e.
SELECT : M enetapkan kolom untuk ditampilkan pada keluaran (output).
f.
ORDER BY : M enetapkan pesanan (order) pada output.
2.1.4.d SQL Aggregate Functions M enurut Connolly dan Begg (2002, p127), standar ISO mendefinisikan lima kumpulan fungsi : a.
COUNT M engembalikkan banyaknya nilai–nilai di dalam suatu kolom yang ditetapkan.
b.
SUM M engembalikkan penjumlahan nilai–nilai di dalam suatu kolom yang ditetapkan.
c.
AVG M engembalikkan rata–rata nilai di dalam suatu kolom yang ditetapkan.
d.
M IN M engembalikkan nilai yang paling kecil di dalam suatu kolom yang ditetapkan.
e.
MAX M engembalikkan 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. M enurut 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 CS 3 Dreamweaver adalah sebuah HTM L 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 : HTM L, CSS, Javascript debugger dan editor code yang mengijinkan pengeditan kode Javascript, XM L, PHP, JSP, ASP dan dokumen text lainnya.
2.2.3 Internet M enurut 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 M enurut 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 M enurut 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 M enurut 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 (S TD) M enurut 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) M enurut 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) M enurut 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 M enurut M ulyadi
(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 M enurut Connolly dan Begg (2002, p274), Sistem adalah penjelasan ruang lingkup dan batasan-batasan dari aplikasi basis data dan user view utama.
2.2.8 S tandard Operation Procedure (SOP) SOP adalah sistematika penyusunan yang dibuat sesederhana mungkin agar mudah PM O.
dipahami dengan tetap mengedepankan sasaran utama dibentuknya SOP
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 (PM O) adalah suatu program yang dibuat untuk mengatur proyek–proyek yang ada di PT PLN (Persero). PM O 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 PM O Timesheet dan PM O
Library
(Aplikasi
Perpustakaan
Dokumen
Proyek)
yaitu
dengan
mengintegrasikan kebutuhan referensi data yang berhubungan dengan proyek pada PM O 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. M ulai dari dokumen–
48
dokumen proyek sampai dokumen–dokumen pekerja yang menangani proyek tersebut.