7 BAB 2 LANDAS AN TEORI
2.1 Pengertian Data Data adalah sesuatu yang mewakilkan objek dan peristiwa yang memiliki arti dan sangat penting bagi pemakai (user) (Hoffer, Prescott dan M cFadden ,2005 , p5). Data adalah fakta yang dapat disimpan dan memiliki arti (Navathe dan Elmasri, 2000, p4). Sehingga dapat disimpulkan bahwa data adalah fakta yang telah terjadi, memiliki arti, dan dapat disimpan serta dapat diatur sedemikian rupa sehingga dapat menjadi sebuah form yang dapat digunakan untuk berbagai tujuan. 2.2 Pengertian Basis Data Basis data adalah suatu koleksi data yang saling berhubungan secara logikal, dan sebuah deskripsi data yang dirancang untuk memenuhi kebutuhan informasi suatu organisasi (Connolly, 2002, p14). Dapat dikatakan juga basis data adalah kumpulan file yang saling berhubungan, hubungan tersebut biasa ditunjukkan dengan kunci dari tiap file yang ada. Suatu basis data menunjukkan satu kumpulan data yang dipakai dalam satu lingkup organisasi. Basis data menjadi salah satu bagian penting dari perusahaan untuk menyimpan informasi-informasi yang diinginkan perusahaan tersebut. 2.3 Pengertian Sistem Basis Data Sistem basis data pada dasarnya adalah sekumpulan aplikasi yang berinteraksi dengan basis data yaitu DBM S dan basis data itu sendiri (Connolly,
8 2005, p4). Keseluruhan system terkomputerisasi tersebut membolehkan pengguna menelusuri kembali dan mengubah informasi tersebut sesuai kebutuhan. 2.4 Database Management System (S istem Pengaturan Basisdata) Sistem Pengaturan Basisdata adalah sebuah sistem perangkat lunak yang memungkinkan pengguna untuk menjelaskan, membuat, memelihara dan melakukan kontrol akses terhadap basisdata (Connolly dan Begg, 2002, p16). Sistem Pengaturan Basisdata adalah sebuah sistem perangkat lunak yang digunakan untuk membuat,memelihara dan menyediakan akses kontrol kepada pengguna basisdata (Hoffer, Prescott dan M cFadden ,2005 , p7). Sehingga secara keseluruhan DBM S dapat disimpulkan bahwa sistem pengaturan basis data merupakan suatu sistem perangkat lunak yang digunakan untuk menjelaskan, membuat, memelihara, dan mengontrol semua akses ke basis data. 2.5 Database Application LifeCycle (S iklus Hidup Aplikasi Basisdata) Sistem basisdata merupakan sebuah komponen dasar dari sistem informasi organisasi besar, Database Applicattion LifeCycle (Siklus Hidup Aplikasi Basisdata) sering dihubungkan dengan lifecycle dari sistem informasi. Penting untuk mengetahui tahapan – tahapan dati Database Applicattion LifeCycle (Siklus Hidup Aplikasi Basisdata) yang tidak secara sempurna berurutan, tetapi meliputi sejumlah repetisi / pengulangan dari tahap – tahap sebelumnya melalui putaran balik (feedback loops). Untuk aplikasi basis data yang kecil, dengan jumlah pengguna yang sedikit, lifecycle yang dibutuhkan tidak terlalu kompleks. Bagaimanapun, ketika mendesain
9 aplikasi basis data medium ke aplikasi basis data yang besar dengan sepuluh sampai ribuan pengguna, menggunakan ratusan query dan program aplikasi, lifecycle dapat menjadi sangat kompleks (Connolly dan Begg, 2002, p271). Tahapan – tahapan tersebut terlihat pada gambar 2.1.
10
Gambar 2.1 Siklus Basisdata (Connolly, 2002, p272)
11 2.5.1 Database Planning (Perencanaan Basisdata) Database Planning merupakan aktifitas yang berupa tahapantahapan didalam aplikasi basisdata agar dapat di realisasikan se-efisien dan se-efektif mungkin. Tahapan yang paling penting pada Database Planning adalah untuk mendefinisikan mission statemen t serta meng-identifikasi mission objective pada proyek basisdata yang ada (Connolly dan Begg, 2002, p274). • Mission statement menjelaskan tujuan utama dari aplikasi basisdata. Mission statement
juga membantu menjelaskan tujuan dari proyek
basisdata dan juga menyediakan jalur yang lebih jelas dalam pembuatan aplikasi basisdata yang lebih efisien dan efektif (Connolly dan Begg, 2002, p274). • Mission objective menjelaskan suatu tugas tertentu yang mana harus didukung oleh basisdata. Dengan asumsi jika basisdata mendukung mission objetive maka mission statement-nya juga akan sesuai (Connolly dan Begg, 2002, p274). 2.5.2 System Definition (Definisi Sistem) System Definition mendeskripsikan ruang lingkup dan batasanbatasan dari aplikasi basisdata serta pandangan utama dari pengguna (user view) (Connolly dan Begg, 2002, p274). User view mendefinisikan kebutuhan aplikasi basisdata dari sisi peranan jabatan tertentu (seperti Manager atau Supervisor) atau aplikasi
12 perusahaan untuk bidang tertentu (seperti Marketing, personnel, atau stock control) (Connolly dan Begg, 2002, p275). 2.5.3 Requirements Collection and Analysis Requirements collection and analysis merupakan suatu proses mengumpulkan
dan
menganalisa informasi mengenai bagian
dari
organisasi yang didukung dengan aplikasi basisdata, dan menggunakan informasi ini untuk mengidentifikasi kebutuhan user dari sistem yang baru (Connolly dan Begg, 2002, p276). Terdapat beberapa cara dalam mengumpulkan informasi-informasi tersebut, disebut juga fact-finding techniques. Fact-finding techniques adalah proses formal dalam menggunakan teknik tertentu, seperti wawancara dan kuisioner untuk mengumpulkan fakta mengenai sistem serta kebutuhan-kebutuhannya (Connolly dan Begg, 2002, p302). Ada 5 macam teknik yang biasa digunakan didalam Fact-finding techniques yaitu: 1. Memeriksa berkas-berkas atau dokumen-dokumen yang telah ada M emahami jalannya sistem yang ada diperusahaan saat ini akan sangat membantu dalam pengembangan analisis yang dibutuhkan oleh basisdata perusahaan tersebut. Dengan cara memeriksa berkas-berkas, dokumen-dokumen, laporan-laporan dan file-file yang berhubungan dengan sistem yang sedang berjalan (Connolly dan Begg, 2002, p305). 2. Wawancara Teknik wawancara dapat mengumpulkan informasi seperti pengumpulan fakta-fakta yang ada, memeriksa fakta, mengklarifikasi fakta,
membangkitkan
semangat,
melibatkan
pengguna
akhir,
13 mengidentifikasi kebutuhan-kebutuhan, dan mengumpulkan ide-ide dan pendapat (Connolly dan Begg, 2002, p306). 3. Pengamatan pada sistem yang sedang berjalan M elakukan pengamatan pada sistem yang sedang berjalan merupakan salah satu dari beberapa fact-finding techniques yang cukup efektif. Teknik ini sangat berguna pada saat pemeriksaan kelengkapan data yang dikumpulkan melalui metode lain dalam bentuk pertanyaan ataupun dapat digunakan untuk pencegahan apabila terdapat penjelasan yang kurang dipahami. 4. Penelitian Fact-finding techniques yang sangat berguna adalah melakukan penelitian terhadap aplikasi dan masalah yang ada. Jurnal komputer, buku-buku referensi dan internet merupakan sumber informasi yang cukup baik (Connolly dan Begg, 2002, p307). 5. Kuesioner Teknik terakhir didalam fact-finding techniques adalah dengan cara menggunakan survey berupa kuesioner. Kuesioner adalah dokumen dengan tujuan khusus yang memungkinkan fakta-fakta terkumpul dari orang banyak sambil menjaga kontrol dari tanggapan yang diberikan (Connolly dan Begg, 2002, p307).
Informasi-informasi tersebut kemudian akan dianalisa untuk mengidentifikasi
kebutuhan-kebutuhan
atau
fitur-fitur
yang
akan
14 dimasukkan ke aplikasi basisdata. Kebutuhan-kebutuhan ini dideskripsikan dalam dokumen, yang disebut requirements spesifications. Tahap ini merupakan tahap awal sebelum masuk ke tahap database design (perancangan basisdata). Banyaknya data yang dikumpulkan tergantung dari masalah perusahaan itu sendiri. Data yang dikumpulkan pada tahap ini mungkin masih belum terstruktur dan terdapat permintaanpermintaan lainnya, sehingga harus dikonversi menjadi data-data yang lebih terstruktur. Hal ini bisa dicapai dengan menggunakan requirements spesifications techniques, seperti DataFlow Diagram (DFD). Hal penting lainnya pada tahap ini adalah bagaimana mengatasi situasi dimana terdapat lebih dari satu user view yang menggunakan aplikasi basisdata. Beberapa pendekatan untuk mengatasi masalah tersebut, antara lain: • Centralized Approach Kebutuhan untuk setiap user view digabungkan menjadi satu untuk aplikasi basisdata yang baru. • View Integration Approach Kebutuhan untuk setiap user view digunakan untuk membuat model data yang terpisah untuk mewakilkan user view tersebut. • Gabungan dari keduanya 2.5.4 Database Design (Desain Basisdata) Database design adalah proses dalam membuat rancangan basisdata yang akan mendukung kegiatan dan tujuan-tujuan perusahaan (Connolly
15 dan Begg, 2002, p279). Pada tahap ini terdapat tiga fase, yaitu perancangan konseptual, logical, dan fisikal. Ada dua pendekatan utama dalam merancang basisdata, yaitu bottom-up dan top-down. Pendekatan bottom-up cocok untuk merancang basisdata yang sederhana, dengan jumlah atribut yang kecil. Sedangkan pendekatan top-down merupakan strategi yang cocok digunakan untuk merancang basisdata yang kompleks. 2.5.5 DBMS Selection (Seleksi DBMS) DBMS Selection merupakan pemilihan DBM S yang sesuai untuk mendukung aplikasi basisdata (Connolly dan Begg, 2002, p284). Pemilihan DBM S yang tepat untuk mendukung aplikasi database dapat dilakukan kapanpun sebelum menuju desain logical asalkan terdapat cukup informasi mengenai kebutuhan sistem. Tahap - tahap utama untuk memilih DBM S : • M endefinisikan terminologi studi referensi Terminologi referensi untuk pemilihan DBM S dibuat, menentukan tujuan dan ruang lingkup studi, dan tugas yang perlu diambil alih. Data tersebut juga termasuk deskripsi dari kriteria (berdasarkan spesifikasi permintaan pengguna) untuk digunakan dalam mengevaluasi produk DBM S. • M endaftar dua atau tiga produk Kriteria dipertimbangkan sebagai ‘kritis’ untuk mencapai implementasi yang sukses.
16
• Evaluasi produk Fitur-fitur yang digunakan
dalam evaluasi produk-produk DBM S
dikelompokkan menjadi definisi data, definisi fisik, kemampuan akses, penanganan keperluan-keperluan, pengembangan, dan fitur-fitur lainnya. • Rekomendasi pilihan dan laporan produk Langkah terakhir dari pemilihan DBM S adalah mendokumentasikan prosesnya dan membuat pernyataan dalam penemuan dan rekomendasi atas produk DBM S tertentu. 2.5.6 Application Design (Desain Aplikasi) Desain interface user dan program aplikasi yang menggunakan dan memproses database. Desain database dan aplikasi merupakan aktifitas parallel yang meliputi dua aktifitas penting, yaitu : • Transaction Design Transaksi adalah satu aksi atau serangkaian aksi yang dilakukan oleh user tunggal atau program aplikasi, yang mengakses atau merubah isi dari database. Kegunaan dari desain transaksi adalah untuk menetapkan dan keterangan karakteristik high level dari suatu transaksi yang dibutuhkan pada database, diantaranya : •
Data yang akan digunakan oleh transaksi
•
Karakteristik fungsional dari suatu transaksi
•
Output transaksi
17 •
Keuntungan bagi user
•
Tingkat kegunaan yang diharapkan
Terdapat tiga tipe transaksi yaitu : •
Retrieval Transaction Digunakan untuk pemanggilan (retrieve) data untuk ditampilkan di layar atau menghasilkan suatu laporan.
•
Update Transaction Digunakan untuk menambah record baru, menghapus record lama, atau memodifikasi record yang sudah ada didalam database.
•
Mixed Transaction M eliputi pemanggilan dan perubahan data.
•
User Interface Design Beberapa aturan pokok dalam pembuatan user interface : •
Meaningful Title
•
Comprehensible Instructions
•
Logical Grouping and Sequencing of Fields
•
Visually Appealing Layout of the Form/Report
•
Familiar Fields Labels
•
Consistent Terminology and Abbreviation
•
Consistent Use of Color
•
Visible Space and Boundaries for data entry fields
•
Convenient cursor movement
•
Error correction for individual characters and entire fields
18 •
Error messages for unacceptable values
•
Optional fields marked cleary
•
Explanatory messages for fields
•
Completion signal
2.5.7 Prototyping (Bentuk Dasar) Prototyping adalah membuat model kerja suatu aplikasi database Sebuah prototyping merupakan sebuah model kerja yang tidak normal mempunyai semua yang mecakup bagian-bagian atau melengkapi semua fungsinya terhadap sistem akhir (Connolly dan Begg, 2002, p291). Tujuan utama dari pembuatan prototyping adalah : • Untuk mengidentifikasikan feature dari sistem yang berjalan dengan baik atau tidak • Untuk memberikan perbaikan-perbaikan atau penambahan fitur baru • Untuk klarifikasi kebutuhan user • Untuk evaluasi feasibilitas (kemungkinan yang akan terjadi) dari desain sistem khusus. Terdapat dua macam strategi prototyping yang digunakan saat ini, yaitu : • Requirements Prototyping M enggunakan prototype untuk menentukan kebutuhan dari aplikasi database yang diinginkan dan ketika kebutuhan itu terpenuhi maka prototype akan dibuang.
19 • Evolutionary Prototyping Digunakan untuk tujuan yang sama. Perbedaannya, prototype tidak dibuang tetapi dengan pengembangan lanjutan menjadi aplikasi database yang digunakan. 2.5.8 Implementation (Implementasi) Implementation merupakan realisasi fisik dari database dan desain aplikasi (Connolly dan Begg, 2002, p292). Implementasi database dicapai dengan menggunakan : • DDL (Data Definition Language) untuk membuat skema basisdata dan dokumen basisdata kosong. • DDL (Data Definition Language) untuk membuat user view yang diinginkan. • 3GL dan 4GL untuk membuat program aplikasi. Termasuk transaksi database disertakan dengan menggunakan DM L (Data Manipulation Languange), atau ditambahkan pada bahasa pemrograman. 2.5.9 Data Conversion and Loading (Perubahan dan Pengambilan Data) Data Conversion and Loading adalah pemindahan data yang ada kedalam database baru dan mengkonversikan aplikasi yang ada agar dapat digunakan pada database yang baru (Connolly dan Begg, 2002, p292). Tahapan ini dibutuhkan ketika sistem database baru menggantikan sistem yang lama. DBM S biasanya memiliki utilitas yang memanggil ulang file yang sudah ada kedalam database baru. Dapat juga mengkonversi dan
20 menggunakan program aplikasi dari sistem yang lama untuk digunakan oleh sistem yang baru. 2.5.10 Testing (Pengujian) Testing adalah suatu proses eksekusi program aplikasi dengan tujuan untuk menemukan kesalahan (Connolly dan Begg, 2002, p293). Dengan menggunakan strategi tes yang direncanakan dan data yang sesungguhnya. Pengujian hanya akan terlihat jika terjadi kesalahan software. M endemostrasikan database dan program aplikasi terlihat berjalan seperti yang diharapkan. 2.5.11 Operational Maintenance (Perawatan Operasional) Operational Maintenance adalah suatu proses pengawasan dan pemeliharaan sistem setelah instalasi (Connolly dan Begg, 2002, p293). M eliputi aktifitas : • Pengawasan performa sistem, jika performa menurun maka memerlukan perbaikan atau pengaturan ulang database. • Pemeliharaan dan pembaharuan aplikasi database (jika dibutuhkan) • Penggabungan kebutuhan baru kedalam aplikasi database. 2.6 Perancangan Basis Data Perancangan basis data adalah suatu proses dalam membuat rancangan basis data yang mendukung kegiatan dan tujuan-tujuan perusahaan (Conno;;y dan Begg, 2002, p279). Terdapat tiga fase dalam tahap ini, yaitu perancangan konseptual, logical, dan fisikal.
21 Dua pendekatan utama dalam merancang basis data yaitu top-down dan bottom-up. Pendekatan top-down merupakan strategi yang tepat digunakan dalam merancang basis data yang kompleks. Sedangkan pendekatan bottom-up tepat untuk merancang basis data yang sederhana dan dalam jumlah atribut yang kecil. 2.6.1 Perancangan Konseptual Perancangan konseptual adalah suatu proses dalam membuat sebuah model informasi yang digunakan pada sebuah peusahaan, dan terlepas dari semua pertimbangan-pertimbaangan fisik perusahaan tersebut (Connolly dan Begg, 2002, p419). Tujuan dari perancangan konseptual adalah untuk membangun representasi konseptualdari basis data, yand didalamnya termasuk identifikasi dari entity yang terpenting, relationship
dan attribute
(Connolly dan Begg, 2002, p417). Langkah-langkah dalam pembuatan perancangan konseptual basis data adalah sebagai berikut : •
Langkah 1
Membangun Local Conceptual Data Model untuk setiap
pandangan user 1. Identifikasi tipe entity Dengan mengidentifikasi kata benda pada requirements specification (spesifikasi kebutuhan pengguna) suatu entity dapat dikenali. 2. Identifikasi tipe relationship Dengan mencari kata kerja tipe relationship dapat diidentifikasikan. Tujuan dari identifikasi tipe relationship adalah menentukan relasi antar entity yang telah diidentifikasi sebelumnya.
22 3. M engidentifikasikan dan menghubungkan attribute-attribute
dengan
entity dan tipe relationship Tujuannya dalah menhubungka atribut-atribut dengan entity atau tipe relasi yang sesuai. Karakteristik atribut yang harus dimiliki oleh setiap entity dan relationship yaitu simple, singlemulti, dan derived attribute. 4. M enentukan domain attribute Dalam menentukan domain untuk atribut-atribut dalam model data lokal konseptual adalah tujuannya. Domain adalah sekumpulan nilai yang didalamnya terdapat satu atau lebih atribut yang memperoleh nilai (Connolly dan Begg, 2002, p430). 5. M enentukan attribute dari candidate dan primary key Tujuannya adalah untuk mengidentifikasi candidate key untuk setiap tipe entity, apabila terdapat lebih dari satu candidate key, untuk dipilih menjadi primary key. Untuk memilih primary key di antara candidate key, terdapat beberapa panduan yang dapat kita gunakan (Connolly dan Begg, 2002, p431), yaitu: -
Candidate key dengan sekumpulan atribut-atribut yang minimal
-
Candidate key yang nilainya tidak berubah
-
Candidate key dengan karakter-karakter yang paling sedikit (untuk textual atributes)
-
Candidate key dengan nilai maksimum paling sedikit (untuk numerical atributes)
-
Candidate key yang paling mudah digunakan dari sisi user
23 6. M empertimbangkan penggunaan enhanced modeling concepts (optional) Tujuannya adalah
untuk
mempertimbangkan
penggunaan
konsep
enhanced modelling, seperti spesialisasi, generalisasi, agregasi, dan komposisi. Spesialisasi merupakan proses memaksimalkan perbedaan-perbedaan antar anggota dari sebuah entity dengan cara mengidentifikasikan karakteristik yang membedakan entity tersebut (Connolly dan Begg, 2002, p362). Generalisasi merupakan proses meminimalkan perbedaan-perbedaan antar entity dengan mengidentifikasikan karakteristik umum entity (Connolly dan Begg, 2002, p363). Agregasi menggambarkan hubungan ‘mempunyai’ atau ‘merupakanbagian-dari’ antara tipe-tipe entity dimana yang satunya mewakili ‘whole’ (seluruhnya) dan yang satunya lagi mewakili ‘part’ (bagian) (Connolly dan Begg, 2002, p371). Komposisi
merupakan
bentuk
spesifik
dari
agregasi
yang
menggambarkan sebuah hubungan antar entities, dimana terdapat kepemilikan yang kuat dan waktu hidup yang sama antara ‘whole’ dan ‘part’ (Connolly dan Begg, 2002, p372). 7. M emeriksa model dari redundancy Tujuannya adalah untuk memeriksa adanya redundansi (pengulangan) dalam model. M odel data konseptual lokal akan diperiksa, dengan tujuan spesifiknya adalah mengidentifikasi apakah terdapat redundansi dan
24 menghilangkannya jika ada. Aktifitas pada tahap ini adalah memeriksa kembali one-to-one relationships dan menghilangkan redundansi. 8. M emvalidasi local conceptual model dengan transaksi pengguna Tujuannya adalah untuk meyakinkan bahwa model konseptual lokal mendukung transaksi yang dibutuhkan oleh view. 9. M eninjau kembali local conceptual data model bersama pengguna Tahap ini dilakukan untuk meyakinkan bahwa model data konseptual yang telah dibuat merupakan representasi yang sebenarnya dari view. 2.6.2 Perancangan Logikal Logical database design adalah suatu proses membangun sebuah model dari informasi yang digunakan di perusahaan berdasarkan sebuah model data spesifik, tapi terlepas dari DBMS dan pertimbangan fisik lain (Connoly, 2002, p441).
Langkah 2 Membangun dan validasi Local Logical Data Model untuk setiap pengguna 1. M enghilangkan fitur-fitur yang tidak cocok dengan model relasional (optional) Tujuan dari langkah ini adalah untuk menghilangkan many to many (*:*) binary relationship types, menghilangkan many to many (*:*) recursive relationship types, menghilangkan complex relationship types, dan menghilangkan multivalued attributes. 2. M enghasilkan relasi-relasi untuk local logical data model
25 Tujuannya adalah menciptakan relasi-relasi untuk local logical data
model
untuk
mempresentasikan
entity-entity,
relationship-
relationship, dan atribut-atribut yang telah diidentifikasikan. 3. Validasi dengan menggunakan normalisasi Normalisasi adalah suatu teknik untuk menghasilkan himpunan relasi dengan properti yang diinginkan berdasarkan kebutuhan-kebutuhan data suatu organisasi (Connolly dan Begg, 2002, p376). Proses normalisasi dimulai dengan memindahkan data sumber ke bentuk tabel dengan format baris dan kolom. Tabel ini berbentuk tidak normal dan disebut dengan unnormalized table (Connolly dan Begg, 2002, p388). Unnormalized form (UNF) adalah suatu tabel yang terdiri dari satu atau lebih kelompok yang berulang (repeating group) (Connolly dan Begg, 2002, p387). Repeating group adalah sebuah atribut atau himpunan atribut di dalam tabel yang memiliki lebih dari satu nilai (multiple value) untuk sebuah primary key pada tabel tersebut (Connolly dan Begg, 2002, p388). Tingkatan normalisasi terdiri dari tiga tahap yaitu : 1) First Normal Form (1NF) Suatu relasi dikatakan 1NF jika titik temu tiap baris dan kolom pada relasi tersebut mengandung satu dan hanya satu nilai (Connolly dan Begg, 2002, p388). Sebuah relasi akan berada dalam bentuk 1NF jika repeating groupnya sudah hilang. Ada dua pendekatan untuk menghilangkan repeating group pada tabel yang tidak normal, yaitu :
26 1. Dengan memasukkan data yang sesuai ke dalam kolom yang kosong dari baris yang mengandung data berulang. 2. Dengan menempatkan data yang berulang bersama salinan atribut kunci
pada
relasi
yang terpisah.
Sebuah
primary
key
diidentifikasikan ke dalam relasi yang baru. 2) Second Normal Form (2NF) Relasi dikatakan 2NF jika relasi tersebut berada pada 1NF dan setiap atribut yang bukan primary key bergantung penuh (fully functionally dependent) terhadap primary key (Connolly dan Begg, 2002, p392). Full functional dependency terjadi jika A dan B merupakan atribut dari suatu relasi, dan B dikatakan bergantung penuh terhadap A (A→B), jika B bergantung terhadap A, namun bukan subset dari A (Connolly dan Begg, 2002, p391). Untuk menghasilkan relasi dalam bentuk 2NF melibatkan penghilangan ketergantungan sebagian (partial dependency) dan menempatkannya pada relasi yang baru bersama salinan atribut penentunya (determinant attribute). 3) Third Normal Form (3NF) Suatu relasi dikatakan 3NF jika relasi tersebut berada dalam bentuk 1NF dan 2NF, dan tidak ada atribut bukan primary key bergantung secara transitif (transitively dependent) terhadap primary key (Connolly dan Begg, 2002, p394).
27 Transitive dependency ialah sebuah kondisi dimana A, B, dan C merupakan atribut dari relasi yang jika A→B dan B→C maka C disebut bergantung secara transitif (transitively dependent) terhadap A melalui B (A tidak functionally dependent terhadap B atau C) (Connolly dan Begg, 2002, p394). 4. Validasi relasi dengan transaksi user Tujuan pada tahap ini adalah untuk meyakinkan bahwa model data logikal mendukung transaksi yang diperlukan oleh view. 5. M enetapkan integrity constraint Batasan integrity merupakan batasan yang digunakan untuk melindungi basisdata dari keadaan yang tidak konsisten. Ada lima jenis batasan integriti (Connolly dan Begg, 2002, p457), yaitu :
Required Data (data yang diminta) Beberapa attribute harus memiliki nilai yang valid, dengan kata lain tidak diperbolehkan memiliki nilai null (kosong) (Connolly dan Begg, 2002, p457).
Attribute Domain Constraints Setiap attribute memiliki domain, yaitu sekumpulan nilai yang diperbolehkan (legal) (Connolly dan Begg, 2002, p457).
Entity Integrity Primary key pada entity tidak boleh barupa nulls (kosong) (Connolly dan Begg, 2002, p458).
28
Referential Integrity Referential integrity berarti, apabila foreign key memiliki nilai, maka nilai tersebut harus sudah berada dalam hunbungan dengan induk (parent relation) (Connolly dan Begg, 2002, p458).
Enterprise Constraints Kegiatan update entity dapat pemerintah atau organisasi
dibatasi oleh peraturan
yang mengatur transaksi yang
direpresentasikan oleh update yang dilakukan tersebut. 6. M eninjau kembali local logical data model bersama pengguna Tujuan dari tahap ini adalah untuk memastikan local logical data model telah lengkap dan didokumentasikan.
Langkah 3 Membangun dan validasi Global Logical Data Model 1. M enggabungkan beberapa local logical data model menjadi global model Pada tahap ini,ada beberapa langkah yang harus dilakukan antara lain (Connolly dan Begg, 2002, p463): 1. M elihat kembali nama dan isi dari entity / relations dan candidate key yang ada. 2. melihat kembali nama dan isi dari relationships / foreign key. 3. M enggabungkan beberapa entity / relation yang ada pada local data model. 4. M emasukkan (tanpa menggabungkan) entity / relation yang unik ke setiap local data model. 5. M enggabungkan beberapa relationship / foreign key yang ada pada local data model.
29 6. M emasukkan (tanpa menggabungkan) relationship / foreign key yang unik ke setiap local data model. 7. M emeriksa untuk entity / relation dan relationship / foregn key yang lepas (tertinggal). 8. M emeriksa foreign key. 9. M emeriksa integrity constraint. 10. menggambar ER / relation diagram global. 11. Update dokumentasi. 2. Validasi global logical data model Tujuan pada tahap ini adalah untuk melakukan validasi terhadap relation yang dibuat dari global logical data model dengan mengunakan teknik normalisaasi dan untuk meyakinkan bahwa model tersebut mendukung kebutuhan dari transaksi-transaksi yang ada. 3. M emeriksa perkembangan di masa yang akan datang Tujuan dari tahap ini adalah untuk menentukan adanya perubahan pada waktu mendatang dan memperkirakan global logial data model tersebut dapat menyesuaikan dengan perubahan tersebut. 4. M eninjau kembali global logical data model dengan pengguna Tujuan dari tahap ini adalah untuk meyakinkan bahwa global logical data model tersebut adalah representasi yang benar untuk organisasi yang membutuhkan. 2.6.3 Perancangan Fisikal Physical Database Design adalah suatu proses untuk menghasilkan gambaran dari implementasi suatu basisdata pada tempat penyimpanan
30 secondary, juga menggambarkan base relation, pengaturan data, dan indeks yang digunakan untuk pencapaian akses data yang efisien, dan hubungan integrity constraint dan tingkat keamanan (Connolly dan Begg, 2002, p478).
Langkah 4
Menterjemahkan Global Logical Data Model untuk target
DBMS Tujuan dari tahap ini adalah untuk menghasilkan sebuah relational databse schema dari global logical data
model yang dapat
di
implementasikan ke dalam target dari DBM S (Connolly dan Begg, 2002, p479). Tiga kegiatan yang dilakukan pada tahap ini yaitu : a. M erancang base relations Tujuan dari tahap ini adalah untuk memutuskan bagaimana cara untuk mewakilkan base relation yang teridentifikasi di dalam global logical data model ke dalam target DBM S. b. M erancang representasi dari derive data Tujuan
dari
tahap
ini
adalah
untuk
memutuskan
bagaimana
menggambarkan data turunan di dalam model data logikal global pada target DBM S. c. M erancang batasan perusahaan Tujuan dari tahap
ini adalah untuk merancang batasan-batasan
perusahaan untuk target DBM S.
31
Langkah 5
Merancang Representasi Fisikal
Tujuannya adalah
untuk memeriksa organisasi file yang optimal
untuk menyimpan base relations dan indexnya yang diperlukan untuk mencapai performa yang diinginkan, yaitu cara relasi dan tuples disimpan pada secondary storage (Connolly dan Begg, 2002, p484). Faktor-faktor yang untuk mengukur efisiensi penyimpanan data yaitu: •
Transaction throughput Transaction throughput adalah jumlah transaksi yang dapat diproses pada rentang waktu yang diberikan (Connolly dan Begg, 2002, p484).
•
Response time Response time adalah waktu yang diperlukan untuk menyelesaikan sebuah transaksi (Connolly dan Begg, 2002, p484).
•
Disk storage Disk storage adalah besarnya ukuran penyimpanan untuk menyimpan basisdata (Connolly dan Begg, 2002, p484). Untuk meningkatkan kinerja, perancang basisdata fisik harus
memperhatikan bagaimana cara interaksi keempat komponen dasar perangkat keras karena berpengaruh terhadap kinerja sistem (Connolly dan Begg, 2002, p485). Komponen-komponen tersebut yaitu : •
Main memory Akses main memory lebih cepat dibandingkan dengan akses secondary storage, terkadang puluhan atau ratusan bahkan ribuan kali lebih cepat.
32 Pada umumnya, semakin banyak main memory dipakai untuk DBM S dan aplikasi basisdata, aplikasi akan berjalan semakin cepat. •
CPU CPU mengontrol perintah-perintah dari sumber daya sistem lain dan mengeksekusi proses yang diminta oleh user. Komponen ini harus dijaga agar tidak terjadi bottleneck.
•
Disk I/O Dengan DBM S yang besar, berarti disk I/O terlibat dalam penyimpanan dan pengembalian data. Penyimpanannya harus didistribusikan secara merata ke semua drive yang ada untuk mengurangi masalah pada untuk kerja sistem. Prinsip dasar dalam pendistribusian data yaitu : •
File sistem operasi harus dipisahkan dari file basisdata
•
File utama basisdata harus dipisahkan dari file indeks
•
File log recovery harus dipisahkan dari basisdata yang sedang tidak digunakan.
•
Network Ketika jumlah lalu-lintas data menjadi besar, atau ketika jumlah tabrakan di dalam jaringan menjadi besar, akan terjadi bottleneck di dalam jaringan. Kegiatan yang harus dilakukan pada tahap representasi perancangan fisikal yaitu : •
Analisis transaksi Tujuan dari tahap ini adalah untuk memahami fungsi dari transaksi yang sedang berjalan basisdata dan untuk menganalisa tranksaksi-
33 transaksi yang penting. Dalam menganalisa transaksi-transaksi, kriteria kinerja yang harus diidentifikasikan yaitu : •
Transaksi yang sering dijalankan dan yang memiliki dampak yang signifikan terhadap kinerja
•
Transaksi yang penting untuk kegiatan operasi bisnis
•
Waktu selama hari atau minggu dimana akan ada permintaan yang tinggi terhadap basisdata atau peak load (Connolly dan Begg, 2002, p486).
Informasi ini digunakan untuk mengidentifikasikan bagian-bagian dari basisdata yang mungkin mempunyai masalah kinerja. Untuk fokus pada daerah yang menjadi masalah, proses yang dilakukan adalah : •
M erencanakan
semua
langkah-langkah
transaksi
untuk
dihubungkan •
M enentukan hubungan dari akses yang sering dipakai dalam transaksi
• •
M enganalisa pemakaian data transaksi terpilih yang terlibat
M emilih file organisasi Tujuan dari tahap ini adalah untuk menentukan organisasi file yang efisien untuk setiap hubungan dasar (base relation). Yang utama dalam perancangan basisdata fisik adalah penyimpanan data pada jalur yang efisien. Untuk memahami organisasi file dan indeks secara lengkap, petunjuk untuk memilih dasar organisasi file yaitu :
34
•
•
Heap
•
Hash
•
Indexed Sequential Access Method (ISAM)
•
+ B -tree
•
Clusters
M emilih indeks Tujuan tahap ini adalah menentukan apakah penambahan indeks akan meningkatkan unjuk kerja sistem. Ada tiga jenis indeks yaitu : • Primary index Pengindeksan dilakukan pada kolom kunci (key field), yang diurutkan terlebih dahulu secara sekuensial. • Clustering index Pengindeksan dilakukan pada kolom bukan kunci (non-key field), yang sudah diurutkan terlebih dahulu secara sekuensial. Kolom bukan kunci itu disebut juga dengan clustering attribute (Connolly dan Begg, 2002, p1155). •
Secondary index Pengindeksan yang dilakukan pada kolom yang tidak terurut di dalam file data (Connolly dan Begg, 2002, p1155).
•
M emperkirakan ruang yang dibutuhkan untuk penyimpanan Tujuan tahap ini adalah untuk memperkirakan besarnya ruang penyimpanan yang dibutuhkan untuk mendukung implementasi basisdata pada tempat penyimpanan kedua. Hal ini sangat tergantung
35 pada target DBMS dan perangkat keras yang digunakan. Perkiraan ukuran dapat dilakukan dengan mengukur besar data tiap baris dan jumlah baris pada setiap relasi.
Langkah 6 Merancang Pandangan Pengguna (user views) Tujuannya adalah untuk
merancang pandangan
pengguna yang di
identifikasikan selama tahap pengumpulan dan analisa kebutuhan pada aplikasi basisdata relasional lifecycle (Connolly dan Begg, 2002, p502).
Langkah 7 Merancang Mekanisme Keamanan Tujuannya adalah untuk merancang mekanisme keamanan basisdata. Keamanan bagi basisdata sangat diperlukan karena basisdata merupakan sumber daya perusahaan yang penting. Dua tipe keamanan basisdata (Connolly dan Begg, 2002, p502), yaitu : •
Keamanan sistem M emberikan perlindungan terhadap akses dan penggunaan basisdata pada tingkat sistem, seperti user name dan password.
•
Keamanan data M emberikan perlindungan akses dan penggunaan objek basisdata, sepeti relasi dan view dan aksi terhadap objek yang dapat dimiliki oleh pemakai.
Langkah 8 Mempertimbangkan Pengenalan Pengontrolan Redundancy Tujuan tahap ini adalah untuk menentukan apakah pengenalan pengontrolan redundancy dengan mengendurkan aturan normalisasi akan meningkatkan kinerja sistem.
36
Langkah 9 Memantau Operasi Sistem Bertujuan untuk memantau operasional sistem dan meningkatkan unjuk kerja sistem untuk memperbaiki keputusan desain yang tidak sesuai atau menggambarkan kebutuhan-kebutuhan perubahan.
2.7 Entity, Attribute dan Relationship Entity (entitas) merupakan penyajian objek, kejadian atau konsep dunia nyata yang keberadaanya secara eksplisit didefinisikan dan disimpan dalam basis data. Attribute (atribut) adalah keterangan-keterangan yang menjelaskan karakteristik dari suatu entitas. Sedangkan relationship (hubungan) merupakan hubungan atau interaksi antara satu entitas dengan yang lainnya. 2.8 Entity-Relationship Modelling (E-R Modelling) Entity Relationship Modeling (ER) model adalah pendekatan secara keseluruhan terhadap desain database yang diawali dengan mengidentifkasi data penting yang disebut entity dan relationship antar data yang kita representasikan kedalam model. Saat kita akan menambahkan detil dari suatu informasi, kita harus mengetahui tentang entity - entity dan hubungannya yang biasa disebut attributes dan semua constraints di dalam entity, hubungan, dan atribut - atributnya. (Connoly dan Begg, 2002,p330). 2.9 Keys Candidate key
adalah himpunan atribut yang minimal secara unik
mengidentifikasikan setiap occurrence dari sebuah tipe entitas (Connolly, 2005, p352). Composite key adalah sebuah candidate key yang terdiri atas dua atau lebih atribute (Connolly, 2005, p353).
37 Primary key adalah candidate key yang terpilih untuk mengidentifikasikan secara unik setiap occurrence dari sebuah tipe entitas (Connolly, 2005, p353). Pada sebuah tipe entitas biasanya terdapat lebih dari satu candidate key yang salah satunya harus dipilih untuk menjadi primary key. Pemilihan primery key didasarkan pada panjang atribut, jumlah minimal atribut yang diperlukan, dan keunikannya. Alternate key dalah setiap candidate key yang tidak terpilih menjadi primary key, atau biasa disebut dengan secondary key (Whitten, 2004, p298). Foreign key adalah sebuah primary key pada sebuah entitas yang digunakan pada entitas lainnya untuk mengidentifikasikan sebuah relationship (Whitten, 2004, p301).
Gambar 2.2 Reprentasi diagram entitas Pegawai dan Cabang beserta atribut dan primary key-nya (Connolly, 2005, p354) 2.10 Data Flow Diagram (Diagram Aliran Data) Data Flow Diagram (Diagram Aliran Data) adalah suatu model proses yang digunakan untuk menggambarkan aliran data melalui sebuah sistem dan proses kerja
38 yang dilakukan oleh sistem (Whitten, Bentley dan Dittman, 2004, p344). Berikut ini adalah simbol-simbol yang digunakan dalam DAD pada penulisan skripsi ini : Tabel 2.1 Tabel Simbol-simbol DAD dan Keterangannya Bentuk Simbol
Nama
Keterangan
Terminal
Penanda untuk memulai, mengakhiri,
ataupun
interupsi. Digunakan juga untuk
mengindikasikan
partai eksternal Dokumen / Laporan
Dokumen
dapat
ditulis
secara manual atau dapat dicetak dari computer Jumlah kopian dari sebuah dokumen
Digambarkan
dengan
menumpuk
Simbol
Dokumen
dan
jumlah
kopian
dokumen
dituliskan dari
di
setiap
proses
yang
lembarnya Operasi M anual
Operasi
dilakukan secara manual
39 File permanen
File
/
dokumen
yang
disimpan secara permanen dan dapat dicari Dokumen sementara / Jurnal / Ledger
Digunakan
untuk
menandakan dokumen yang bersifat
sementara,
mengindikasikan
jurnal
akuntansi ataupun ledger Penghubung dalam satu halaman
Digunakan
untuk
menghubungkan
alur
proses untuk halaman yang sama Penghubung beda halaman
Digunakan
untuk
menghubungkan
alur
proses untuk halaman yang berbeda Anotasi
Digunakan
untuk
penambahan deskripsi
komentar atau
penjelasan Alternative
M erepresentasikan alternative
catatan
40 Seleksi
Digunakan
untuk
proses
pemilihan (seleksi)
2.11 Pengertian Sumber Daya Manusia Sumber daya manusia adalah kemampuan terpadu dari daya pikir dan daya fisik yang dimiliki seseorang individu. Perilaku dan sifatnya ditentukan oleh keturunan dan lingkungannya, sedangkan prestasi kerjanya dimotivasi oleh keinginan untuk memenuhi kepusannya (M alayu Hasibuan, 1997, p269). M enurut sumber dari internet http://id.wikipedia.org, sumber daya manusia adalah potensi yang terkandung dalam diri manusia untuk mewujudkan perannya sebagai makhluk sosial yang mampu mengelola dirinnya sendiri serta seluruh potensi yang terkandung di alam menuju tercapainya kesejahteraan kehidupan dalam tatanan yang seimbang dan berkelanjutan. 2.12 Pengertian Manajemen S umber Daya Manusia M anajemen sumber daya manusia adalah bekerja dengan orang-orang untuk menentukan, menginterpretasikan dan mencapai tujuan-tujuan organisasi dengan pelaksanaan fungsi-fungsi perencanaan (planning), pengorganisasian (organizing), penyusunan personalia atau kepegawaian (staffing), pengarahan dan kepemimpinan (leading), dan pengawasan (controlling). (M artoyo, 1987, p3). 2.13 Pengertian Perekrutan atau Seleksi M enurut sumber dari internet http://en.wikipedia.org, perekrutan atau recruitment adalah proses menemukan kandidat untuk suatu pekerjaan tertentu.
41 M enurut sumber dari internet http://organisasi.org, persiapan dan seleksi tenaga kerja yang dilakukan perusahaan diantaranya: 1. Persiapan, dilakukan perencanaan akan kebutuhan sumber daya manusia dengan menentukan pekerjaan yang mungkin timbul, dengan melakukan perkiraan atau forecast akan pekerjaan yang lowong, jumlah, waktu dan sebagainya. 2. Rekrutmen tenaga kerja, suatu proses untuk mencari calon atau kandidat pegawai, atau tenaga kerja baru untuk memenuhi kebutuhan sumber daya manusia oraganisasi atau perusahaan. Dalam tahapan ini diperlukan analisis jabatan yang ada untuk membuat deskripsi pekerjaan atau job description dan juga spesifikasi pekerjaan atau job specification. 3. Seleksi tenaga kerja, adalah suatu proses menemukan tenaga kerja yang tepat dari kandidat yang ada. Tujuan seleksi adalah untuk mendapatkan tenaga kerja yang paling tepat untuk memangku sesuatu jabatan tertentu. (M artoyo, 1987, p39). 2.14 Cuti Jenis cuti yang merupakan hak dari setiap karyawan adalah 1. Cuti istri melahirkan 2. Cuti perkawinan 3. Cuti khitanan/ Pembabtisan anak 4. Cuti kematian 5. Cuti perkawinan anak 6. Cuti melahirkan
42 7. Cuti tahunan 2.15 Absensi M enurut Jean dan M ary (1985,p14), banyak perusahaan khawatir melihat angka absen yang tinggi. Dalam hal ini harus diadakan catatan sederhana, berupa catatan perorangan. Ini akan menunjukan luasnya persoalan, alasan-alasannya (misalnya sakit tanpa keterangan), pengaruhnya pada bagian atau pada kategori karyawan (misalnya golongan wanita yang sudah nikah). 2.16 Promosi, Mutasi dan Demosi Promosi berarti perpindahan dari suatu jabatan ke jabatan yang lain yang mempunyai status dan tanggungjawab yang lebih tinggi. (M artoyo, 1987, p67). Promosi adalah perpindahan yang memperbesar authority dan responsibility karyawan ke jabatan yang lebih tinggi di dalam satu organisasi sehingga kewajiban, hak, status dan penghasilannya semakin besar. (M alayu Hasibuan, 1997, p121 ). M utasi adalah
suatu perubahan
posisi/jabatan/tempat/pekerjaan
yang
dilakukan baik secara horizontal maupun vertikal (promosi/demosi) didalam suatu organisasi. (M alayu Hasibuan, 1997, p114) Demosi adalah penurunan pangkat atau jabatan seorang karyawan yang dilakukan di dalam suatu organisasi (M alayu Hasibuan, 1997, p129 ). 2.17 Pengertian Pemutusan Hubungan Kerja (PHK) Pemberhentian adalah pemutusan hubungan kerja seseorang karyawan dengan suatu organisasi perusahaan. Dengan pemberhentian ini berarti berakhirnya keterikatan kerja karyawan terhadap perusahaan tersebut. (M alayu Hasibuan, 1997, p231). Pemberhentian harus didasarkan atas Undang Undang Nomor 12 tahun 1964. ( M alayu Hasibuan, 1997, p230 ).
43 2.18 Surat Perjalanan Dinas. M erupakan surat pengantar karyawan yang ditujukan untuk perusahaan dan digunakan sebagai keterangan melaksanakan tugas di suatu cabang perusahaan tersebut.