• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI"

Copied!
51
0
0

Teks penuh

(1)

LANDASAN TEORI

2.1 Teori – Teori Dasar 2.1.1 Pengertian Data

Menurut Hoffer, Prescott, dan McFadden (2005, p5), data adalah representasi dari objek-objek dan event-event yang tersimpan, yang penting dan mempunyai arti di dalam lingkungan pengguna.

2.1.2 Pengertian Sistem

Menurut McLeod, Raymond Jr (1996, p11), sistem adalah sekelompok elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan.

2.1.3 Pengertian Basis Data

Menurut Connolly and Begg (2002, p14), basis data adalah kumpulan data yang terhubung secara logikal, dan sebuah deskripsi data yang dirancang untuk memenuhi kebutuhan informasi suatu organisasi.

Menurut Post, Gerald V (2005, p2), basis data adalah sekumpulan data yang disimpan dalam bentuk tertentu yang dirancang agar dapat digunakan oleh pengguna yang beragam.

(2)

Berdasarkan definisi di atas, maka dapat disimpulkan bahwa basis data adalah kumpulan data yang terhubung secara logikal, yang dirancang untuk memenuhi kebutuhan informasi dari pengguna yang beragam.

2.1.4 Pengertian Sistem Basis Data.

Menurut Date, C.J (2000, p5), suatu sistem basis data adalah suatu sistem yang pada dasarnya menyimpan record-record di dalam suatu sistem yang dilakukan secara komputerisasi yang tujuannya secara keseluruhan untuk memelihara informasi dan untuk membuat infomasi tersebut tersedia berdasarkan permintaan.

2.1.5 Karakteristik Basis Data

Menurut Mannino (2001, p4-5), basis data mempunyai beberapa karakteristik, yaitu:

a) Persistent

Sebuah variabel dalam program komputer tidak akan ada terus menerus (persistent) karena berada dalam memori utama dan akan hilang setelah program dimatikan. Ketika data tidak diperlukan atau tidak relevan lagi, maka data dapat dihilangkan atau tetap disimpan.

b) Shared

Basis data dapat digunakan oleh multiple user. Sebuah basis data menyediakan memori yang secara umum mempunyai banyak fungsi dalam organisasi. Misalnya, basis data dapat mendukung perhitungan

(3)

c) Interrelated

Data yang disimpan dalam unit-unit yang terpisah dapat dihubungkan untuk mendapatkan suatu gambaran secara keseluruhan. Misalnya basis data konsumen menghubungkan dengan data order untuk memfasilitasi proses order (pemesanan).

2.1.6 Kelebihan dan Kekurangan Basis Data

Menurut Hoffer, Prescott, dan McFadden (2005, p23-25) basis data mempunyai beberapa kelebihan antara lain:

1. Program Data Independence

Dengan adanya basis data, maka deskripsi data disimpan dalam lokasi pusat yaitu repository. Properti sistem basis data memungkinkan data untuk diubah dan dikembangkan tanpa mengubah aplikasi program yang akan memproses data.

2. Minimal Data Redundancy

Tujuan dari basis data adalah mengintegrasikan data yang dulunya tersebar menjadi satu struktur logikal. Basis data tidak menghilangkan semua redundancy tetapi membantu perancang untuk mengontrol tipe dan jumlah redundancy itu.

3. Improved Data Consistency

Dengan mengontrol atau menghilangkan redundancy data, maka akan meningkatkan konsistensi antar data. Misalnya, jika alamat konsumen hanya disimpan dalam satu tempat, maka alamat tersebut tidak dapat

(4)

4. Improved Data Sharing

Sebuah basis data didesain untuk digunakan sebagai sumber informasi perusahaan yang dapat digunakan oleh semua orang. Pengguna yang terotorisasi internal maupun eksternal dapat menggunakan basis data yang sama, tetapi dengan kemampuan yang berbeda dalam menggunakan fasilitas basis data ini.

5. Increased Productivity of Application Development

Keuntungan utama dari basis data adalah dapat meningkatkan produktivitas untuk pengembangan aplikasi bisnis baru.

6. Enforcement of Standards

Ketika basis data diimplementasikan dengan dukungan penuh dari manajemen, maka administrator basis data seharusnya akan berfungsi sebagai orang yang bertanggungjawab untuk menghasilkan suatu standarisasi data untuk organisasi.

7. Improved Data Quality

Dengan adanya basis data maka sistem dapat diberikan batasan-batasan (integrity constraints) sehingga kualitas data dapat terjamin. 8. Improved Data Accessibility and Responsiveness

Dengan basis data relasional, end users yang tidak mempunyai kemampuan ataupun pengalaman programming bisa mendapatkan dan menampilkan data bahkan melewati batasan departemen.

9. Reduced Program Maintenance

(5)

adanya tambahan data yang baru, format data berubah dan sebagainya.

Selain itu penggunaan basis data menurut Hoffer, Prescott, dan McFadden (2002, p23-24) mempunyai beberapa kekurangan, antara lain:

1. New, Specialized Personnel

Sering kali, organisasi yang menggunakan basis data perlu untuk mempekerjakan atau melatih orang untuk mendesain dan mengimplementasikan basis data, menyediakan servis basis data, dan mengatur staf yang terdiri dari orang-orang baru.

2. Installation and Management Cost and Complexity

Multiuser database management system adalah software yang sangat

kompleks dan mempunyai harga initial yang tinggi, memerlukan staf yang telah terlatih untuk meng-install, mengoperasikan serta setiap tahun memerlukan hardware yang lebih baik, dan sistem komunikasi dalam organisasi.

3. Conversion Cost

Biaya juga diperlukan untuk mengkonversi sistem lama menjadi sistem basis data yang modern, yang dapat diukur dengan uang dan waktu.

4. Need for Explicit Backup and Recovery

Basis data yang digunakan secara bersama haruslah akurat dan dapat digunakan setiap saat. Hal ini mengharuskan prosedur-prosedur seperti itu dikembangkan dan digunakan untuk menyediakan backup

(6)

5. Organizational Conflict

Penggunaan basis data secara bersama dalam satu perusahaan memerlukan kesepakatan dalam hal definisi data dan kepemilikan data, seperti halnya juga pertanggungjawaban terhadap keakuratan dalam pemeliharaan data. Pengalaman membuktikan bahwa konflik terjadi pada definisi data, format data, pemrograman data (coding), dan kemampuan untuk update data menjadi masalah sulit untuk diselesaikan. Untuk menangani masalah ini memerlukan komitmen dalam organisasi bisnis.

2.1.7 Struktur Data dalam Sistem Basis Data

Tingkatan struktur di dalam basis data antara lain:

a) Field, unit terkecil dari record yang disimpan dalam basis data.

b) Record, kumpulan field-field yang disimpan, yang saling berelasi membentuk data yang mempunyai arti.

c) File, kumpulan seluruh occurrence dari satu tipe record tersimpan. d) Database, kumpulan terintegrasi dari occurrence file atau tabel yang

merupakan representasi data dari suatu model enterprise.

2.1.8 DBMS (Database Management System)

Menurut Post, Gerald V (2005, p2) Database Management System (DBMS) adalah sebuah piranti lunak yang mendefinisikan database, menyimpan data, mendukung query language, menghasilkan laporan dan

(7)

Menurut Connolly dan Begg (2002, p16) DBMS adalah sebuah piranti lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara dan mengontrol akses ke basis data.

Dari definisi-definisi tersebut, dapat disimpulkan bahwa DBMS adalah sebuah piranti lunak yang mendukung query language untuk mendefinisikan, membuat, memelihara dan mengontrol akses ke basis data.

Menurut Connolly dan Begg (2002, p16) secara khusus DBMS menyediakan fasilitas – fasilitas berikut:

• Mengijinkan pengguna untuk menentukan basis data, biasanya melalui

Data Definition Language (DDL). DDL menyediakan fasilitas untuk

menspesifikasi tipe data, struktur, dan batasan data yang bisa disimpan di basis data.

• Mengijinkan pengguna untuk memasukkan, mengupdate, menghapus dan mengambil data dari basis data, yang dilakukan melalui Data

Manipulation Language (DML).

• DBMS juga menyediakan akses kontrol terhadap basis data. Contoh akses kontrol yang tersedia di DBMS :

a) Security system, yang dapat mencegah pengguna yang tidak terotorisasi mengakses basis data.

b) Integrity system, menangani konsistensi penyimpanan data.

c) Concurrency and Control system, yang memungkinkan pembagian akses penggunaan ke basis data.

(8)

d) Recovery control system, yang dapat mengembalikan basis data ke keadaan konsisten awal apabila terjadi kesalahan pada perangkat lunak maupun perangkat keras.

e) User accesible catalog, yang berisi deskripsi data yang terdapat dalam basis data.

a. Komponen DBMS

Menurut Connolly dan Begg (2002, p18), terdapat 5 (lima) komponen utama di dalam lingkungan DBMS, yaitu:

a) Perangkat Keras

DBMS membutuhkan jumlah minimum memori utama dan disk

space, namun yang harus diperhatikan adalah kapasitas penyimpanan

karena basis data membutuhkan kapasitas yang besar. b) Piranti Lunak

Komponen piranti lunak terdiri dari piranti lunak DBMS itu sendiri, piranti lunak jaringan (jika diperlukan) dan program aplikasi pendukung lainnya.

c) Data

Data dalam basis data berperan sebagai jembatan antara mesin dengan manusia. Data pada sebuah basis data, baik itu yang berupa data yang

single-user (hanya satu pengguna yang mengoperasikan basis data)

maupun multi-user (satu atau lebih pengguna mengoperasikan basis data secara bersamaan), harus terintegrasi dan dapat dipakai bersama. Pengertian terintegrasi di sini adalah suatu basis data dapat dipandang

(9)

menghilangkan redundansi yang ada. Pengertian dipakai bersama adalah setiap bagian data yang terdapat dalam basis data dapat digunakan oleh lebih dari satu pengguna dengan fungsi yang sama atau berbeda satu sama lain.

d) Prosedur

Prosedur menunjuk ke instruksi-instruksi dan aturan-aturan yang mengatur perancangan dan penggunaan basis data. Pengguna dari sistem dan staf yang mengatur basis data membutuhkan instruksi-instruksi untuk menggunakan atau menjalankan sistem.

e) Pengguna

Ada 3 (tiga) kelas pengguna basis data, yaitu:

1. Pemrogram aplikasi, bertanggung jawab dalam penulisan program aplikasi yang diperlukan dalam manajemen basis data dengan menggunakan berbagai bahasa pemrograman.

2. Pengguna akhir (end-user), menggunakan data dalam basis data untuk keperluan tugas atau fungsinya.

3. Administrator Basis Data (DBA atau Database Administrator), bertanggung jawab pada keseluruhan sistem basis data.

b. Keuntungan dan Kerugian DBMS

Menurut McLeod, Raymond Jr (2004, p193), keuntungan DBMS antara lain :

1. Mengurangi pengulangan data

(10)

2. Mencapai independensi data

Spesifikasi data disimpan di dalam skema dari dalam tiap program aplikasi. Perubahan dapat dibuat pada struktur data tanpa mengurangi program yang mengakses data.

3. Mengintegrasikan data dari beberapa file

Ketika file dibentuk sehingga menyediakan kata login, organisasi fisik tidak lagi menjadi kendala.

4. Mengambil data dan informasi secara cepat

Hubungan-hubungan login dan DML (Data Manipulation Language) serta query language memungkinkan pemakai mengambil data dalam hitungan detik atau menit, yang sebelumnya memungkinkan memerlukan beberapa jam atau hari.

5. Meningkatkan keamanan

Baik DBMS mainframe maupun komputer mikro, dapat menyertakan

beberapa lapis keamanan seperti kata sandi (password), direktori pemakai, dan bahasa sandi (encryption).

Sedangkan, menurut McLeod, Raymond Jr (2004, p152), DBMS memiliki kerugian antara lain:

1. Mempergunakan perangkat lunak yang mahal

DBMS mainframe masih sangat mahal. DBMS berbasis komputer mikro, walaupun biayanya hanya beberapa ratus dolar, dapat menggambarkan pengeluaran yang besar bagi organisasi yang kecil. 2. Memerlukan konfigurasi perangkat keras yang besar

(11)

DBMS yang memerlukan kapasitas penyimpanan primer dan sekunder yang lebih besar daripada yang diperlukan oleh program aplikasi lain. Kemudahan yang dibuat oleh DBMS dalam mengambil informasi juga mendorong lebih banyak terminal pemakai yang disertakan dalam konfigurasi.

3. Memperkerjakan staf Database Administrator (DBA)

DBMS memerlukan pengetahuan khusus agar dapat dimanfaatkan secara maksimal. Pengetahuan khusus ini disediakan paling baik oleh para pengelola basis data (DBA).

2.1.9 RDBMS (Relational Database Management System )

Database relational adalah sebuah kumpulan dari relasi dengan

membedakan nama relasi. Database disimpan dalam tabel dan tabel mengandung data yang berhubungan atau entity, seperti orang, produk, pesanan, dan lain-lain. Tujuannya adalah menjaga tabel tetap kecil dan dapat dikelola serta entity-entity yang terpisah disimpan di dalam tabel-tabel yang tersendiri.

Relational database management atau relational DBMS (RDBMS)

secara sederhana dapat diartikan sebagai suatu sistem dimana data dilihat oleh penggunanya hanya sebagai tabel dan operator yang digunakan oleh pengguna, misalnya untuk mengambil data adalah operator yang dapat menghasilkan tabel baru dari tabel yang lama.

(12)

generasi ke-2 DBMS yang berdasarkan model relasional data. Di dalam model relasional, semua data terstruktur secara logika di dalam tabel. Setiap tabel mempunyai nama yang merupakan nama attribut data. Setiap baris mengandung 1 (satu) nilai per atribut.

2.1.10 Data Definition Language (DDL)

Menurut Connolly dan Begg (2002, p40) DDL adalah bahasa yang memungkinkan seorang administrator basis data atau pengguna untuk mendeskripsikan dan menentukan entiti, atribut, dan relasi yang dibutuhkan aplikasi, bersama dengan semua batasan – batasan integritas dan keamanan (integrity and security constraints). Hasil dari kompilasi statement DDL adalah kumpulan dari tabel yang disimpan di file khusus yang disebut system catalog. Sementara istilah data dictionary dan data directory digunakan untuk mendeskripsikan system catalog.

2.1.11 Data Manipulation Language (DML)

Menurut Connolly dan Begg (2002, p41) DML adalah bahasa yang menyediakan sekumpulan operasi untuk mendukung operasi manipulasi data dasar dari data yang tersimpan di basis data. Secara umum, operasi DML mencakup:

• Pemasukan data baru ke dalam basis data (insert)

• Pemodifikasian dari data yang telah tersimpan dalam basis data (update) • Pengambilan data yang terdapat dalam basis data (select)

(13)

• Penghapusan data yang terdapat dalam basis data (delete)

2.1.12 Entity Relationshiop Modelling a. Entity

Menurut Connolly dan Begg (2002, p331), entity type (tipe entitas) adalah sekumpulan objek-objek dengan property yang sama, yang diidentifikasikan dengan keberadaan yang independent di perusahaan.

Sebuah entity (entitas) mempunyai kumpulan property dan nilai dari

property tersebut mengidentifikasikan entity secara unik.

b. Relationship

Menurut Connolly dan Begg (2002, p334), relationship type (tipe relasi) adalah sebuah kumpulan yang memiliki arti antara entity type. Setiap

relationship type memiliki nama yang menjelaskan fungsinya.

c. Attribute

Menurut Connolly dan Begg (2002, p338), atribut adalah property dari sebuah entity atau tipe relationship. Jenis-jenis atribut, antara lain:

1. Attribute domain adalah sebuah kumpulan nilai yang diperbolehkan untuk satu atau lebih atribut.

2. Simple dan Compose Attributes

• Simple attribute adalah atribut yang terdiri dari satu komponen tunggal dengan keberadaan yang bebas dan tidak dapat dibagi menjadi bagian yang lebih kecil lagi. Dikenal juga dengan nama

(14)

• Compose attribute adalah atribut yang terdiri dari beberapa komponen, di mana masing-masing komponen memiliki keberadaan yang bebas. Contohnya, atribut alamat dapat terdiri dari jalan, kota, kode pos.

3. Single-value attribute adalah atribut yang mempunyai nilai tunggal untuk setiap kejadian. Sedangkan multi-value attribute adalah atribut yang mempunyai beberapa nilai untuk setiap kejadian.

4. Derived attribute adalah atribut yang memiliki nilai yang dihasilkan dari satu atau beberapa atribut lainnya, dan tidak harus berasal dari satu entity.

d. Key

Menurut Silberschatz (2002, p35), key digunakan untuk mengidentifikasi kumpulan atribut yang dapat membedakan entity satu dengan yang lainnya.

Menurut Silberschatz (2002, p35), superkey adalah sebuah set satu atau lebih atribut untuk mengidentifikasi secara unik untuk sebuah entity di dalam entity set.

Menurut Connolly dan Begg (2002, p340), candidate key adalah jumlah minimal atribut-atribut yang dapat mengidentifikasi tiap kejadian atau record secara unik.

Menurut Silberschatz (2002, p35) primary key adalah candidate key yang dipilih oleh perancang basis data sebagai yang utama untuk mengidentifikasikan entity-entity di dalam entity set. Primary key harus

(15)

merupakan field-field yang benar-benar unik dan tidak boleh ada nilai NULL.

Foreign key adalah primary key dari entity yang digunakan oleh entity

lain untuk mengidentifikasikan kejadian dari suatu relationship. e. Strong and weak entity types

Menurut Connolly dan Begg (2002, p342), strong entity adalah entiti yang keberadaannya tidak tergantung dengan entiti lain. Karakteristik dari entiti dapat diidentifikasikan dengan primary key dari tipe entiti itu.

Menurut Connolly dan Begg (2002, p343), weak entity adalah entiti yang keberadaannya tergantung dari entiti lain. Karakteristik dari weak

enitity adalah atribut yang terdapat pada entiti tersebut tidak dapat

mengidentifikasikan tipe entiti itu secara unik. f. Structural constraints

Menurut Connolly dan Begg (2002, p344), multiplicity merupakan jumlah kemunculan (occurence) yang mungkin dari sebuah tipe entiti yang berhubungan dengan kemunculan tunggal dari sebuah tipe entiti yang berhubungan melalui relasi tertentu.

Tingkat relasi yang umum antar entiti adalah binary. Berikut ini adalah relasi binary yang sering terjadi:

1. Relasi One-to-One (1 : 1)

Relasi dimana setiap entiti yang ada hanya dapat mempunyai maksimal 1 (satu) relasi dengan entiti yang lain.

(16)

Staf mengatur Cabang (Entiti) (tipe relasi) (Enititi)

Gambar 2.1 Relasi one-to-one antara staf dan cabang

Pada gambar diatas relasi yang terjadi adalah one-to-one, dimana setiap staf yang ada hanya dapat mengatur satu cabang.

2. Relasi One-to-Many (1 : *)

Relasi dimana setiap entiti yang ada dapat mempunyai satu relasi atau lebih dari satu relasi dengan entiti yang lain.

Staf melayani Konsumen (Entiti) (tipe relasi) (Entiti)

Gambar 2.2 Relasi one-to-many antara staf dan konsumen

Pada gambar diatas relasi yang terjadi adalah relasi one-to-many dimana setiap staf dapat melayani lebih dari 1 konsumen.

Joe Lila Rika R1 R2 A B Joe Lila Rika R1 R2 R3 Free Res Sul

(17)

3. Relasi Many-to-Many (* : *)

Relasi dimana setiap entiti dapat mempunyai lebih dari satu relasi dengan entiti lainnya.

Koran mengiklankan Rumah (Entiti) (tipe relasi) (Entiti)

Gambar 2.3 Relasi many-to-many antara koran dan rumah • Cardinality dan Participation Constraints

Multiplicity terdiri dari dua batasan yaitu cardinality dan

participation. Cardinality menggambarkan jumlah maksimum relasi

yang mungkin terjadi dari sebuah entiti yang berpartisipasi dalam tipe relasi. One-to-one (1:1), one-to-many (1:*), dan many-to-many (*:*) merupakan cardinality dari relasi binary. Participation menentukan apakah semua atau hanya sebagian dari entiti yang berpartisipasi dalam relasi.

2.1.13 Normalisasi

Normalisasi adalah teknik untuk memproduksi sekumpulan relasi dengan properti yang diinginkan, dengan kebutuhan data yang diberikan perusahaan.

Kompas Tempo Media R1 R2 R3 R4 P1 P2 P3

(18)

Proses pembentukan tabel Norman (normalisasi) bertujuan untuk: • Membuat sekecil mungkin terjadinya data rangkap.

• Menghindarkan adanya data yang tidak konsisten terutama bila dilakukan penghapusan atau penambahan data sebagai akibat adanya data rangkap. Empat bentuk normal yang biasa digunakan, yaitu:

1. Bentuk Normal Pertama (First Normal Form / 1NF)

Aturan bentuk normal pertama (1NF) menurut Connolly dan Begg (2002, p388) adalah sebuah relasi di mana setiap irisan antara baris dan kolom berisikan satu dan hanya satu nilai.

2. Bentuk Normal Kedua (Second Normal Form / 2NF)

Yaitu relasi yang terdapat di dalam 1NF dan tiap atribut non-primary key bersifat bergantung fungsional penuh terhadap primary key.

3. Bentuk Normal Ketiga (Third Normal Form / 3NF)

Yaitu relasi yang terdapat pada 1NF dan 2NF, dimana tidak ada atribut

non-primary key yang bergantung transitif terhadap primary key.

4. Bentuk Normal Boyce-Codd (Boyce-Codd Normal Form / BCNF)

Sebuah relasi dikatakan BCNF jika dan hanya jika setiap determinan merupakan candidate key. Setiap relasi dalam BCNF juga merupakan 3NF, tetapi relasi dalam 3NF belum tentu termasuk ke dalam BCNF.

2.1.14 Siklus Hidup Basis Data (Database Aplication Lifecycle)

Siklus hidup sebuah aplikasi basis data menurut Connolly dan Begg (2002, p271) digambarkan sebagai berikut:

(19)

Gambar 2.4 Siklus hidup basis data (Database Aplication Lifecycle) a. Perencanaan Basis Data (Database Planning)

Menurut Connolly dan Begg (2002, p273), perencanaan basis data adalah aktivitas manajemen yang mengatur atau merencanakan bagaimana tahapan-tahapan dalam siklus hidup basis data dapat diterapkan seefektif dan seefisien mungkin. Ada 3 (tiga) masalah pokok yang harus diperhatikan dalam merumuskan strategi sistem informasi, yaitu:

(20)

• Mengidentifikasikan rencana dan tujuan perusahaan dengan menentukan sistem informasi mana yang diperlukan.

• Mengevaluasi sistem informasi yang ada untuk melihat kelebihan dan kekurangannya.

• Penilaian mengenai peluang IT yang mungkin menghasilkan keuntungan yang kompetitif.

b. Definisi Sistem Basis Data (System Definition)

Menurut Connolly dan Begg (2002, p274), aktivitas utama dalam pendefinisian sistem basis data adalah mendeskripsikan ruang lingkup dari aplikasi basis data yang akan dibuat termasuk pengguna dan tempat aplikasi diterapkan.

Sebelum mencoba untuk merancang suatu aplikasi basis data, sangat penting untuk mengidentifikasikan batasan-batasan sistem yang ada dan bagaimana sistem tersebut berinteraksi dengan bagian sistem informasi yang lain dalam suatu perusahaan. Penting juga untuk mengikutsertakan di dalam batasan-batasan sistem yang telah dibuat, tidak hanya untuk aplikasi dan pemakai saat ini saja, tetapi juga bisa digunakan di masa yang akan datang.

c. Analisis dan Pengumpulan Kebutuhan (Requirements Collection and Analysis)

Menurut Connolly dan Begg (2002, p276), analisa dan pengumpulan kebutuhan adalah proses mengumpulkan dan menganalisis informasi mengenai bagian dari organisasi yang akan mendukung aplikasi basis data

(21)

dan menggunakan informasi ini untuk mengidentifikasi kebutuhan pengguna pada sistem baru. Untuk melaksanakan proses itu digunakan teknik yang disebut dengan fact finding techniques. Terdapat 5 (lima) fact

finding techniques yang umum digunakan:

1. Mengevaluasi dokumen-dokumen yang ada, 2. Wawancara,

3. Mengobservasi jalannya kegiatan kerja pada perusahaan, 4. Penelitian, dan

5. Kuisioner.

d. Perancangan Basis Data (Database Design)

Menurut Connolly dan Begg (2002, p279), perancangan basis data adalah proses membuat sebuah perancangan untuk sebuah basis data yang mendukung kegiatan operasional dan tujuan dari suatu perusahaan. Proses ini dibagi menjadi 3 (tiga) tahap, yaitu:

• Desain konseptual basis data

Proses membangun model informasi yang digunakan dalam sebuah

enterprise, terbebas dari semua pertimbangan fisik.

• Desain logikal basis data

Proses membangun model informasi yang digunakan dalam sebuah enterprise yang didasarkan oleh data model spesifik, dan terbebas dari DBMS tertentu dan pertimbangan fisik lainnya.

(22)

Proses memproduksi sebuah deskripsi dari implementasi basis data dalam secondary storage, yang menjelaskan relasi dasar, organisasi file, dan indeks yang digunakan untuk mencapai akses yang efisien ke data, dan setiap integrity constraint yang saling berhubungan dan juga pengukuran keamanan (security).

e. Pemilihan DBMS (DBMS Selection)

Menurut Connolly dan Begg (2002, p284), pemilihan DBMS dilakukan untuk memilih DBMS yang sesuai dengan aplikasi basis data. Berikut ini adalah langkah-langkah utama dalam memilih DBMS :

1. Menggambarkan cakupan tugas berdasarkan kebutuhan perusahaan. 2. Membuat perbandingan mengenai dua atau tiga produk DBMS. 3. Mengevaluasi produk-produk DBMS tersebut.

4. Merekomendasikan pemilihan DBMS dan membuat laporan hasil dari evaluasi produk DBMS tersebut.

f. Perancangan Aplikasi (Application Design)

Menurut Connolly dan Begg (2002, p287), perancangan aplikasi adalah merancang antar muka pemakai (user interface) dan program aplikasi, yang akan memproses basis data. Dalam siklus hidup aplikasi basis data, perancangan basis data dan perancangan aplikasi adalah aktivitas yang dilakukan bersamaan. Dalam kasus sebenarnya, tidak mungkin untuk menyelesaikan perancangan aplikasi sebelum perancangan basis data selesai.

(23)

perancangan aplikasi program, mengakses basis data dan merancang transaksi, yaitu cara akses ke basis data dan perubahan terhadap isi basis data (retrieve, update dan kegiatan keduanya). Artinya, bagaimana fungsi yang dibutuhkan bisa terpenuhi dan merancang antar muka pemakai yang tepat. Antar muka yang dirancang harus memberikan informasi yang dibutuhkan dengan cara yang user friendly. Kebanyakan antar muka pemakai yang diabaikan akan membuat masalah. Bagaimanapun antar muka harus diakui komponen penting dari sistem. Jika antar muka mudah dipelajari dan mudah digunakan, pemakai akan cenderung mendayagunakan informasi yang disajikan.

g. Pembuatan Model Kerja (Prototyping)

Menurut Connolly dan Begg (2002, p291), aktivitas utama pembuatan model kerja adalah membangun suatu model kerja dari aplikasi basis data. Tujuan mengembangkan suatu prototype aplikasi basis data adalah mengijinkan para pemakai untuk menggunakan prototype guna menguji apakah fitur-fitur sistem bekerja dengan baik sesuai dengan spesifikasi pengguna dan jika memungkinkan memberikan perbaikan-perbaikan atau mungkin fitur-fitur baru untuk aplikasi basis data. Dengan cara ini, dapat diperjelas kebutuhan pemakai dan pengembang sistem dalam mengevaluasi kelayakan perancangan sistem tertentu.

Menurut Connolly dan Begg (2002, p292), ada dua strategi membuat

prototype yaitu requirements prototyping dan evolutionary prototyping.

(24)

lengkap, maka prototype tersebut tidak digunakan lagi. Evolutionary

prototyping digunakan untuk tujuan yang sama, perbedaannya adalah

bahwa ketika kebutuhan sudah lengkap prototype tidak dibuang tetapi dikembangkan lebih lanjut sehingga menjadi aplikasi basis data tersebut. h. Implementasi (Implementation)

Menurut Connolly dan Begg (2002, p292), implementasi merupakan perwujudan fisik dari basis data dan perancangan aplikasi. Tahap implementasi basis data dan program aplikasi dilakukan setelah menyelesaikan tahap perancangan (dengan atau tanpa prototype). Implementasi basis data dicapai dengan menggunakan Data Definition

Language (DDL) dari DBMS yang telah dipilih atau dengan menggunakan

Graphical User Interface (GUI), yang menyediakan fungsional yang sama

dengan pernyataan DDL yang low level. Pernyataan DDL digunakan untuk menciptakan sruktur basis data dan mengosongkan file yang terdapat di dalam basis data tersebut.

Program aplikasi diterapkan dengan menggunakan bahasa generasi ketiga atau keempat (3GL atau 4GL). Bagian dari program aplikasi ini adalah transaksi basis data, yang diterapkan dengan menggunakan Data

Manipulation Language (DML). Transaksi basis data juga dapat dibuat

dalam bahasa pemrograman, seperti Visual Basic, Delphi, C, C++, Java, COBOL, Fortran, Ada, atau Pascal. Komponen lain dari perancangan aplikasi, seperti layar menu, format masukan data dan laporan juga diterapkan.

(25)

Pengendalian keamanan dan integritas untuk aplikasi juga diimplementasikan. Sebagian dari kendali ini telah diterapkan dengan menggunakan DDL, tetapi yang lain mungkin perlu untuk digambarkan di luar dari DDL, sebagai contoh, kegunaan yang disediakan DBMS atau kendali sistem operasi.

i. Data Conversion and Loading

Menurut Connolly dan Begg (2002, p292), data conversion and

loading adalah pemindahan data yang ada ke dalam basis data yang baru

dan mengubah aplikasi yang sedang berjalan agar dapat digunakan dalam basis data yang baru. Tahap ini dibutuhkan ketika sistem basis data baru menggantikan sistem yang lama. Pada masa sekarang, umumnya DBMS memiliki kegunaan untuk memasukkan file ke dalam basis data baru. Biasanya membutuhkan spesifikasi dari sumber file dan sasaran basis data-nya. Kegunaan ini memungkinkan pengembang untuk mengkonversi dan menggunakan aplikasi program lama untuk digunakan oleh sistem baru. Ketika conversion and loading dibutuhkan, prosesnya harus direncanakan untuk memastikan kelancaran transaksi untuk keseluruhan operasi.

j. Pengujian (Testing)

Menurut Connolly dan Begg (2002, p293), pengujian adalah suatu proses melaksanakan program aplikasi dengan tujuan menemukan kesalahan. Dalam melakukan pengujian, para pemakai sistem yang baru harus dilibatkan untuk menguji proses aplikasi dan basis data tersebut. Situasi yang ideal untuk pengujian sistem adalah memiliki suatu tes basis

(26)

tersedia. Jika data riil diharapkan untuk digunakan, maka penting untuk memiliki backup. Setelah pengujian diselesaikan, maka sistem aplikasi dan basis data ini telah siap digunakan.

k. Pemeliharaan Operasional (Operational Maintenance)

Menurut Connolly dan Begg (2002, p293), operational maintenance merupakan sebuah proses pengawasan dan pemeliharaan sistem setelah proses instalasi, yang melibatkan aktivitas yang berikut:

a. Mengawasi kinerja dari sistem. Jika kinerja jatuh di bawah suatu tingkatan yang bisa diterima, penyetelan atau reorganisasi basis data mungkin diperlukan.

b. Memelihara dan meningkatkan mutu aplikasi basis data (ketika dibutuhkan). Kebutuhan baru disatukan ke dalam aplikasi basis data dengan mengikuti langkah-langkah sebelumnya yang terdapat dalam siklus hidup basis data.

Ketika aplikasi basis data sedang beroperasi, perlu dilakukan pengawasan secara dekat untuk memastikan bahwa kinerja sistem dalam tingkatan yang bisa diterima.

Pengawasan proses akan terus berlanjut sepanjang seluruh hidup suatu aplikasi basis data tersebut dan pada waktu tertentu boleh melakukan reorganisasi basis data untuk mencukupi kebutuhan dari sistem. Hal ini memungkinkan DBA untuk terlihat dalam perencanaan kapasitas dan untuk memberitahu staf senior siaga untuk melakukan penyesuaian rencana. Jika DBMS kekurangan kegunaan tertentu, DBA dapat mengembangkan

(27)

2.1.15 Desain Konseptual, Logikal, dan Fisikal Basis Data

Menurut Connolly dan Begg (2002, p273), terdapat 3 (tiga) tahapan atau fase utama dalam perancangan basis data, yaitu :

a. Perancangan Basis Data Konseptual (Conseptual Database Design) Proses mengkonstruksikan atau membangun model informasi yang digunakan dalam sebuah enterprise, terbebas dari semua pertimbangan fisik. Pada desain konseptual basis data ini, terdiri dari langkah-langkah sebagai berikut:

Langkah 1: Membangun data model konseptual lokal untuk setiap view

1.1 Mengidentifikasi tipe entity

Pada tahapan ini, dilakukan identifikasi tipe entitas utama yang diperlukan oleh sebuah view. Salah satu metode dalam mengidentifikasi tipe entitas adalah dengan memeriksa kebutuhan pengguna. Dari kebutuhan pengguna ini, kita dapat mengidentifikasi kata benda atau frase yang ada (misalnya nama staf, alamat rumah), selain itu kita bisa mendapatkan objek utama seperti orang (people), tempat (place), benda (thing) atau konsep (concept).

Cara lain dalam mengidentifikasi entity adalah dengan melihat objek-objek yang akan tetap ada dan keberadaannya tidak tergantung pada objek lain, misalnya staf merupakan entity karena staf tetap akan ada walaupun kita tidak mengetahui nama, posisi, dan tanggal lahirnya.

(28)

Pada tahapan ini dilakukan identifikasi relasi penting yang ada antara tipe entitas yang telah teridentifikasi. Ketika mengidentifikasi relasi kita dapat menggunakan kata kerja dalam spesifikasi kebutuhan

user, misalnya:

• Staf mengatur property

• PrivateOwner mempunyai property

Dengan adanya kebutuhan pengguna, membuktikan bahwa relasi-relasi yang terjadi adalah penting dan harus dimasukkan dalam model.

1.3 Mengidentifikasi dan menghubungkan atribut dengan entitas atau tipe entitas

Pada tahapan ini, atribut dihubungkan dengan entitas atau tipe entitas yang tepat.

1.4 Menentukan domain atribut

Domain adalah sebuah penampung dari nilai yang dapat ditampung oleh atribut, misalnya domain atribut dari nomor staf hanya dapat menggunakan 5 (lima) karakter string dengan 2 (dua) karakter pertama adalah huruf dan 3 (tiga) karakter berikutnya adalah angka.

1.5 Menentukan candidate dan primary key dari atribut

Candidate key adalah set atribut minimal dari sebuah entitas

yang secara unik mengidentifikasi setiap kemunculan dari entitas tersebut. Candidate key dapat diidentifikasikan lebih dari satu, tetapi

(29)

lain disebut alternate key. Berikut ini adalah acuan dalam menentukan primary key dari candidate key :

• Candidate key dengan set atribut yang minimal.

• Candidate key dengan nilai yang berubah paling sedikit. • Candidate key dengan karakter paling sedikit.

• Candidate key dengan isi maksimum yang paling sedikit. • Candidate key yang termudah digunakan dari sudut pandang

pengguna.

1.6 Mempertimbangkan penggunaan konsep model yang lebih tinggi (enhanced modeling concepts)

Tahap ini bersifat opsional, apakah akan digunakan pengembangan dari entitas model dengan menggunakan enhanced

modeling concepts, seperti spesialisasi atau generalisasi.

1.7 Memeriksa redundansi pada model

Tahapan ini memeriksa model data konseptual lokal apakah terjadi duplikasi atau tidak dengan 2 (dua) langkah yaitu:

• Memeriksa ulang relasi one-to-one.

• Menghilangkan relasi yang terduplikasi (redundant). 1.8 Memvalidasi model data konseptual lokal terhadap transaksi

pengguna

Memeriksa model yang telah dihasilkan apakah mendukung transaksi pada view. Pemeriksaan ini dapat menggunakan 2 (dua) langkah yaitu:

(30)

• Mendeskripsikan transaksi. • Menggunakan jalur transaksi.

1.9 Memeriksa model data konseptual lokal dengan pengguna

Memeriksa model data konseptual lokal termasuk ER, jika terjadi ketidakcocokan (anomaly) maka harus dilakukan perubahan. b. Perancangan Basis Data Logikal (Logical Database Design)

Proses membangun model informasi yang digunakan dalam sebuah

enterprise yang didasarkan pada data model spesifik, dan terbebas dari

DBMS dan semua pertimbangan fisik.

Pada desain logikal basis data terdiri dari langkah-langkah sebagai berikut:

Langkah 2: Membangun dan memvalidasi model data logikal lokal

untuk setiap view

Dari model data konseptual lokal yang telah dibangun pada tahapan pertama akan diubah menjadi model data logikal lokal yang terdiri dari

entity relationship diagram, sebuah skema relationship dan

dokumentasi-dokumentasi pendukung.

2.1 Menghilangkan hal-hal yang tidak sesuai dengan model relasional Model data konseptual lokal yang telah ada dapat mengandung struktur yang tidak dapat dimodelkan oleh DBMS konvensional, oleh karena itu pada tahap ini dilakukan perubahan menjadi bentuk yang lebih mudah ditangani olah sistem ini.

(31)

• Menghilangkan relasi binary many-to-many (* : *) • Menghilangkan relasi rekursif many-to-many (* : *) • Menghilangkan tipe relasi yang kompleks

• Menghilangkan atribut multi-valued 2.2 Mendapatkan relasi untuk model data logikal

Membentuk relasi dari model data logikal lokal untuk merepresentasikan relasi antar entitas dan atribut yang telah diidentifikasikan.

Untuk mendapatkan relasi dari data model yang ada maka digunakan cara-cara berikut ini:

• Tipe entitas yang kuat • Tipe entitas yang lemah

• Relasi binary one-to-many (1 : *) • Relasi binary one-to-one (1 : 1) • Relasi rekursif one-to-one (1 : 1) • Tipe relasi superclass atau subclass 2.3 Memvalidasi relasi menggunakan normalisasi

Normalisasi digunakan untuk meningkatkan model yang telah terbentuk agar duplikasi data yang tidak diperlukan dapat dihindari. 2.4 Memvalidasi relasi dengan transaksi pengguna

Memastikan relasi yang telah ada pada model data logikal dapat mendukung transaksi yang diperlukan oleh view.

(32)

Integrity constraints adalah batasan yang digunakan untuk

menjaga agar basis data tidak menjadi inkonsisten. Ada 5 (lima) tipe integrity constraints, yaitu: • Required data (data atau nilai yang valid). • Batasan domain atribut.

• Entity integrity (primary key tidak boleh null).

• Referential integrity (foreign key pada suatu entitas harus sesuai dengan candidate key pada entitas lain).

• Enterprise constraint (batasan pada organisasi). 2.6 Memeriksa model data logikal lokal dengan pengguna

Memeriksa model data logikal lokal yang terbentuk merupakan representasi dari user view. Untuk memvalidasi model data logikal ini, digunakan Data Flow Diagram (DFD). DFD dapat menunjukkan aliran data dari suatu organisasi.

Langkah 3: Membangun dan memvalidasi model data logikal global Pada tahap ini, digabungkan semua model data logikal lokal menjadi sebuah model data logikal global yang merepresentasikan organisasi tersebut.

3.1 Menggabungkan model data logikal lokal ke dalam model global Menggabungkan model data logikal individual ke dalam model data logikal global organisasi.

(33)

Memvalidasi relasi yang telah dibuat dari model data global menggunakan teknik normalisasi dan memastikan relasi ini mendukung transaksi yang diperlukan. Langkah ini sama dengan langkah 2.3 dan 2.4 yang memvalidasi setiap model data logikal lokal.

3.3 Memeriksa perkembangan yang akan datang

Memastikan apakah ada perubahan yang signifikan yang dapat diperkirakan dan memastikan apakah model data logikal global ini dapat mendukung perubahan-perubahan ini.

3.4 Memeriksa model data logikal global dengan pengguna

Memastikan bahwa model data logikal global merupakan representasi nyata dari organisasi.

c. Perancangan Basis Data Fisikal (Physical Database Design)

Proses memproduksi sebuah deskripsi dari implementasi basis data dalam secondary storage, yang menjelaskan akses yang efisien ke data, serta setiap integrity constraint yang saling berhubungan dan juga pengukuran security.

Pada desain fisikal basis data terdiri dari langkah-langkah sebagai berikut:

Langkah 4: Menerjemahkan model data logikal global untuk DBMS yang akan digunakan

Pada tahap ini akan dihasilkan suatu skema basis data relasional dari model data logikal global yang dapat diimplementasikan ke dalam DBMS

(34)

4.1 Mendesain relasi dasar (base relations)

Memutuskan bagaimana merepresentasikan relasi-relasi yang telah diidentifikasikan pada model data logikal global pada DBMS yang akan dipakai.

4.2 Mendesain representasi dari data yang diturunkan

Memutuskan bagaimana merepresentasikan derived attribute dalam model data logikal global pada DBMS yang akan dipakai. 4.3 Mendesain enterprise constraints

Menentukan enterprise constraints untuk target DBMS. Langkah 5: Mendesain gambaran fisik dari basis data

Menentukan organisasi file yang akan digunakan dan indeks untuk menghasilkan performa yang diinginkan serta menentukan apa saja yang akan disimpan dalam secondary storage.

5.1 Menganalisis transaksi

Memahami fungsi-fungsi dari transaksi yang akan dijalankan pada basis data dan menganalisis transaksi yang penting.

5.2 Memilih organisasi file yang akan digunakan

Menentukan organisasi file yang efisien. Ada 5 (lima) tipe organisasi file:

• Heap • Hash

• Indexed Sequential Access Method (ISAM) • B-Tree

(35)

• Chasters

5.3 Memilih indeks yang digunakan

Memutuskan apakah dengan menggunakan indeks akan meningkatkan performa dari sistem.

Menurut http://www.pcmag.com/encyclopedia_term/0,2542,-t=primary+index&i=49667,00.asp, definisi dari primary index adalah index yang mengontrol proses yang sedang dilakukan pada sebuah file database atau mengatur index dari primary key.

Menurut http://pybsddb.sourceforge.net/ref/am/second.html,

secondary index merupakan cara untuk mengakses record di dalam

database secara efisien dengan mengambil beberapa bagian dari

informasi yang berbeda dengan primary key. Menurut

http://developer.mimer.com/documentation/Mimer_SQL_User_Manu al/Defining_Database9.html, secondary index digunakan secara otomatis selama proses pencarian data yang dapat meningkatkan efisiensi pencarian data.

Setiap kolom dapat dispesifikasikan sebagai secondary index. Kolom-kolom yang berisi primary key, foreign key, atau kolom manapun yang didefinisikan secara unik, secara otomatis diindekskan oleh sistem, dan membuat indeks dari kolom-kolom tersebut tidak akan meningkatkan performa. Sementara secondary index, dapat meningkatkan efisiensi dalam mendapatkan data, tetapi tidak dapat melakukan perintah seperti update, insert, dan delete. Umumnya,

(36)

dalam pencarian. Misalnya, database yang berisi daftar tentang ’student’, masing-masing memiliki ‘student ID number’ yang unik. Biasanya, database akan menggunakan ‘student ID number’ sebagai

key. Namun, sebuah hal yang beralasan jika ingin melihat data

‘student’ menggunakan ‘last name’. Untuk melakukan hal tersebut, maka secondary index yang digunakan sebagai secondary key yang berisi ‘last name’. Di dalam SQL, secondary index dapat dilakukan dengan mengeksekusi perintah di bawah ini:

CREATE TABLE students(

student_id CHAR(4) NOT NULL,

lastname CHAR(15),

firstname CHAR(15),

PRIMARY KEY(student_id)

);

CREATE INDEX lname ON students(lastname);

Sedangkan untuk perintah SELECT dapat dilakukan dengan mengeksekusi perintah di bawah ini:

SELECT * from lname WHERE (lastname = "Churchill");

5.4 Memperkirakan disk space yang diperlukan

Memperkirakan disk storage yang diperlukan untuk

menggunakan sistem basis data, disk storage yang dimaksud adalah

secondary storage.

Langkah 6: Mendesain user view

(37)

Langkah 7: Mendesain pengukuran keamanan (security)

Membatasi pengaksesan basis data oleh para pengguna yang tidak berhak dan menspesifikasikan pengguna terhadap basis data yang dapat diakses.

Langkah 8: Menentukan apakah redundansi data telah dapat dikontrol

Dilakukan normalisasi agar dapat meningkatkan performa dari sistem dan menghilangkan redundansi.

Langkah 9: Memonitor sistem operasional

Memonitor dan meningkatkan performa dari sistem dengan memperbaiki desain yang tidak sesuai atau perubahan kebutuhan.

2.1.16 Oracle Database Express Edition (Oracle XE)

Menurut http://www.oracle.com/corporate/story.html, Oracle pertama kali dibuat pada 1977 oleh Larry Ellison, Bob Miner, dan Ed Oates sebagai

Software Development Laboratories menjadi non-commersial relational

database. Lalu berdiri perusahaan Oracle, yang menjadikan produk commersial

relational database management system (RDBMS) pertama di pasaran.

Oracle sebagai relational database, menyimpan semua data pada

two-dimensional tables yang terdiri dari baris dan kolom. Oracle Database mampu

untuk menyimpan data, meng-update-nya, dan menerimanya dengan efisien.

Database terdiri dari physical dan logical structures di mana sistem, user, dan

(38)

Oracle 10g dengan teknologi grid, dideskripsikan sebagai dynamic

cluster, yang mana aplikasi server dapat ditambahkan menjadi kluster jika

diperlukan, dan resourse kluster dapat disusun ulang sesuai dengan kebutuhan bisnis. Keuntungan dari 10g grid, mencakup fleksibilitas penggunaan

prosessing power dan meningkatkan fault tolerance.

Berdasarkan keterangan dari http://www.oracle.com/global/me/press/me-o/oracle10g_express.html, Oracle Database Express Edition (Oracle XE) merupakan database entry level yang bersifat gratis dari Oracle yang dibuat berdasarkan kode Oracle 10g release 2 tahun 2002 yang diperuntukkan bagi :

• Developer Java, PHP, .Net, XML, dan aplikasi open source lainnya. • Database Administrator yang membutuhkan database server gratis untuk

pembelajaran dan development.

• Institusi pendidikan dan pelajar yang membutuhkan database gratis. Fitur di dalam Oracle XE, antara lain :

1. Dapat digunakan untuk membangun aplikasi yang powerful dan memiliki infrastruktur industri level tinggi.

2. Dapat di-upgrade ke Oracle 10g tanpa perlu banyak mengubah sistem. 3. Mampu menyimpan sampai 4 GB data user data.

4. Hanya menggunakan satu resource prosesor, jika memiliki prosesor dual

core, bebannya tetap di satu prosesor.

5. Menggunakan resource RAM maksimum 1 (satu) GB, jika lebih dari itu, harus upgrade resolusi basis data Oracle lain.

(39)

2.1.17 SQL (Structured Query Language)

Menurut Connolly dan Begg (2002, p111), SQL adalah sebuah contoh dari transform oriented language atau sebuah bahasa yang dirancang untuk menggunakan relasi untuk mengubah input menjadi output yang dibutuhkan. Standar SQL memiliki 2 (dua) komponen utama, yaitu:

a) Data Definition Language (DDL) untuk mendefinisikan struktur basis data dan mengontrol akses ke data, contohnya perintah:

• Create Table

Digunakan untuk membuat table dengan mengidentifikasikan tipe data untuk tiap kolom.

• Alter Table

Digunakan untuk menambah atau membuang kolom dan konstrain. • Drop Table

Digunakan untuk membuang atau menghapus table beserta semua data yang terkait di dalamnya.

b) Data Manipulation Language (DML) untuk menerima dan melakukan perubahan pada data, contohnya perintah:

• Select

Pernyataan select digunakan untuk menampilkan sebagian atau seluruh isi dari suatu tabel dan menampilkan kombinasi isi dari beberapa tabel. • Update

Pernyataan update digunakan untuk mengubah isi dari satu atau beberapa atribut dari suatu tabel.

(40)

• Insert

Pernyataan insert digunakan untuk menambah satu atau beberapa baris nilai baru ke dalam suatu tabel.

• Delete

Pernyataan delete digunakan untuk menghapus sebagian atau seluruh isi dari suatu tabel.

2.1.18 PL/SQL

Menurut http://ns1.cic.ac.id/~marsani.asfi/file/PL_SQL1_2.pdf , PL/SQL adalah bahasa pemrograman yang digabungkan dengan SQL. Dalam PL/SQL dapat digunakan perintah untuk memanipulasi data yang ada dalam database oracle. PL/SQL membentuk pemrograman terstruktur dalam memproses data.

Menurut www.ikom.usd.ac.id/~tatik/sbdt/materi/Prakt_sbdt_2005_3.pdf , PL/SQL digunakan dalam pembuatan:

• Procedure : sekumpulan perintah untuk melakukan suatu proses dan tidak mengembalikan suatu nilai.

• Function : sekumpulan perintah untuk melakukan suatu proses yang mengembalikan suatu nilai / hasil.

• Trigger : procedure yang dijalankan secara otomatis pada saat terjadi. Keuntungan penggunaan PL/SQL:

• Integrasi

Memungkinkan Aplikasi dan Oracle Server menggunakan Library yang dapat digunakan bersama-sama dalam bentuk Stored Procedure.

(41)

• Peningkatan kinerja

Penggunaan PL/SQL, memungkinkan pengiriman perintah secara blok dalam satu perintah yang secara drastis dapat menurunkan trafic jaringan. • Modular

Bentuk modular memungkinkan banyak kemudahan yang dapat diperoleh. • Portable

PL/SQL adalah sarana asli milik Oracle Server, artinya, program PL/SQL dapat dengan mudah dipindahkan dari satu Oracle Server ke Oracle Server lainnya, meskipun dengan OS atau platform yang berbeda.

• Dapat mendeklarasikan variabel

Dapat berupa variable, constant, cursor dan exception. Penggunaan

variable atau identifier sangat memudahkan dalam membuat suatu

perintah, misalnya untuk membaca hasil suatu perintah select untuk diproses dan hasilnya digunakan untuk melakukan proses lainnya.

• Dapat menggunakan struktur kontrol

Struktur kontrol yang dimaksud adalah seperti LOOP, FOR, dan WHILE. • Dapat menangani error

Error bisa dihasilkan atau dibangkitkan oleh Oracle Server atau bisa

dibangkitkan sendiri dengan sengaja. Untuk mengantisipasi berbagai hal yang barangkali sulit untuk ditangani secara langsung menggunakan kontrol program.

(42)

Arsitektur PL/SQL terlihat pada Gambar 2.5. Oracle Database memanggil program kompilasi ke dalam memori dan kemudian PL/SQL

engine dan SQL engine mengeksekusi program yang ada.

Gambar 2.5 Arsitektur PL/SQL

2.1.19 NetBeans

Menurut http://ilmukomputer.com/2007/02/23/netbeans-open-source-java-ide-berbasiskan-swing/ , NetBeans adalah salah satu open source IDE berbasiskan Java yang berjalan di atas swing. Swing sebuah teknologi Java untuk pengembangan aplikasi desktop yang multiplatform. Untuk mengubah program Java secara langsung dibutuhkan Java Integrated Development Environment (IDE), seperti IntelliJIDEA, Oracle JDeveloper, Javelin, NetBeans, Adobe Dreamweaver, dan Borland Jbuilder.

NetBeans 5.5 merupakan free and open source tools untuk membangun aplikasi desktop, enterprise, dan web berbasis Java. Selain itu, NetBeans 5.5 juga cross-platform sehingga program yang dibuat dapat dijalankan pada sistem-sistem operasi Windows, Linux, ataupun Apple MacOS.

(43)

2.1.20 Internet

Internet didefinisikan sebagai jaringan fisik yang menghubungkan

komputer-komputer seluruh dunia, terdiri atas infrastruktur dari server-server jaringan dan hubungan komunikasi untuk area yang luas antar infrastruktur server jaringan tersebut yang digunakan untuk menyimpan dan memindahkan sejumlah besar informasi.

2.1.21 World Wide Web (WWW)

Menurut Ellsworth (1995, p39), WWW adalah:

• Kumpulan dokumen yang sangat banyak yang terhubung bersama.

• Kumpulan protokol yang mendefinisikan bagaimana sistem bekerja dan mengirimkan data.

• Web yang menggunakan tekhnik hypertext dan multimedia ditujukan agar internet menjadi mudah bagi semua orang untuk digunakan dan dikontribusikan.

Berdasarkan definisi di atas, maka dapat disimpulkan bahwa WWW adalah kumpulan dokumen dan protokol yang sangat banyak dan saling terhubung satu sama lain sehingga membuat pengiriman data dan informasi menjadi lancar.

Berikut ini adalah cara kerja WWW menurut Pohan, Sidik (2001, p4): • Informasi web disimpan dalam dokumen yang disebut dengan halaman

(44)

• Web pages adalah file-file yang disimpan dalam komputer yang disebut

web client,

• Web client menampilkan page dengan menggunakan program yang disebut dengan web browser, dan

• Web browser yang popular adalah Internet Explorer dan Netscape Navigator.

2.1.22 HyperText Markup Language (HTML)

Menurut Pohan, Sidik (2001, p9), HTML adalah file teks murni yang dapat dibuat dengan editor teks sembarang. Dokumen ini dikenal sebagai web

page. Dokumen HTML merupakan dokumen yang disajikan dalam browser

web server. Dokumen ini umumnya berisi informasi ataupun interface aplikasi

di dalam internet. Dokumen HTML dapat disiapkan di banyak standar teks

editor, meskipun akan lebih mudah dibuat dengan menggunakan editor yang

didesain untuk pembuatan HTML.

2.1.23 HyperText Transfer Protocol (HTTP)

Menurut Ellsworth (1995, p47), HTTP digunakan oleh World Wide Web untuk mentransfer dan memproses file-file HTML.

Berdasarkan www.terena.nl/library/gnrt/appendix/glossary.html, HTTP adalah protokol dasar world wide web. Merancang aturan untuk menukar antara browser dan server. Menyediakan pengiriman hypertext dan

(45)

Berdasarkan definisi di atas, maka dapat disimpulkan bahwa HTTP adalah komponen dasar World Wide Web yang digunakan untuk menghubungkan antara web server dengan halaman HTML browser dan mentransfer serta memproses file-file HTML.

2.1.24 Web Browser

Menurut Pohan, Sidik (2001, p5), web browser adalah software yang digunakan untuk menampilkan informasi dari web server. Software ini kini telah dikembangkan dengan menggunakan user interface grafis, sehingga pemakai dapat melakukan ‘point and click’ untuk pindah antar dokumen. Berikut ini adalah cara kerja browser:

• Untuk mengambil page, browser mengambil sebuah web pages dari server dengan sebuah request. Sebuah page address terlihat seperti berikut:

http://www.kita.web.id/page.htm.

• Kemudian untuk menampilkan page, seluruh web page berisi instruksi-instruksi bagaimana untuk ditampilkan. Browser menampilkan page dengan membaca instruksi-instruksi ini. Instruksi yang paling umum untuk menampilkan disebut tag HTML.

2.1.25 Web Server

Berdasarkan www.iptv.org/digital/dictionary_internet.cfm, web server adalah aplikasi client ataupun server yang digunakan untuk menyimpan dokumen-dokumen web dan menyajikan halaman web bagi penggunanya

(46)

2.1.26 JavaServer Pages (JSP)

JSP (JavaServer Pages) merupakan teknologi yang didasarkan pada bahasa Java, yang dapat digunakan untuk membentuk halaman web yang bersifat dinamis. Teknologi ini dikembangkan oleh Sun Microsystems. Berbeda dengan applet, suatu fitur pada bahasa Java yang memungkinkan pengembang membuat aplikasi web yang dieksekusi pada sisi klien, JSP menggunakan pendekatan pemrosesan di sisi server (web server). Salah satu keuntungan permodelan ini adalah memungkinkan untuk membuat aplikasi yang independen terhadap keberadaan sistem Java di sisi klien. Alasan penting yang membuat JSP banyak digunakan oleh para pengembang aplikasi web :

1. JSP menggunakan bahasa Java. Bagi para pemrogram yang telah mengenal Java, sangatlah mudah untuk membuat aplikasi web dengan JSP mengingat dasar JSP adalah bahasa Java.

2. JSP mendukung multiplatfom. Keunggulan dari adanya dukungan multiplatform adalah memungkinkan kode dapat dipindah-pindahkan ke berbagai platform tanpa perlu melakukan perubahan apapun pada kode tersebut. Sebagai contoh, kita bisa menulis kode JSP yang pada awalnya ditujukan untuk dijalankan pada lingkungan Windows, dan kemudian dipindahkan ke lingkungan lain, misalnya Linux.

2.1.27 Data Flow Diagram (DFD)

Menurut Whitten (2004, p326), DFD merupakan model proses yang digunakan untuk menggambarkan aliran data melalui sebuah sistem dan tugas

(47)

Ada beberapa kumpulan simbol untuk DFD. Penulis memilih menggunakan notasi atau simbol DeMarco dan Yourdon, sebagai berikut:

a. Process

Menyatakan suatu proses atau bagaimana tugas dikerjakan.

b. Data flow

Data yang menjadi input atau output ke atau dari suatu proses.

c. Source atau sink

Orang, unit organisasi, sistem, atau organisasi luar yang berinteraksi dengan sistem. Disebut juga agen eksternal atau entitas eksternal.

d. Data store

Penyimpanan data yang ditujukan untuk penggunaan selanjutnya. Sinonimnya adalah file dan database

Di dalam DFD terdapat istilah balanced DFD dan unbalanced DFD.

Balanced DFD berarti banyaknya input untuk level di bawahnya sama dengan

banyaknya input untuk level yang lebih tinggi atau banyaknya output untuk level di bawahnya sama dengan banyaknya output untuk level yang lebih

(48)

input pada level-0 memiliki dua input, berarti terjadi unbalanced DFD, seperti pada gambar berikut:

Gambar 2.6 Unbalanced DFD

2.2 Teori-teori Khusus

2.2.1 Pengertian Sistem Informasi Sumber Daya Manusia

Menurut Dessler (2003, p5), sistem informasi sumber daya manusia adalah komponen-komponen terkait yang bekerja bersama untuk mengumpulkan, memproses, menyimpan, dan menyebarkan informasi untuk mendukung pengambilan keputusan, koordinasi, kontrol, analisis, dan penggambaran aktifitas manajemen sumber daya manusia pada perusahaan.

2.2.2 Manajemen Sumber Daya Manusia (MSDM)

a. Pengertian Manajemen Sumber Daya Manusia (MSDM)

(49)

dan terlibat ke dalam hubungan kerja mereka, kesehatan dan keamanan, dan masalah kebijakan dan keadilan.

b. Peran Manajemen Sumber Daya Manusia (MSDM)

Peran MSDM dalam mengatur dan menetapkan program kepegawaian, salah satunya mencakup masalah menetapkan program kesejahteraan. Kesejahteraan yang diberikan sangat bermanfaat untuk memenuhi kebutuhan fisik dan mental karyawan beserta keluarganya. Pemberian kesejahteraan akan menciptakan ketenangan, semangat kerja, dedikasi, disiplin, dan sikap loyalitas karyawan terhadap perusahaan, sehingga labour turnover relatif rendah. Besarnya manfaat kesejahteraan karyawan akan mendorong manajer menetapkan program kesejahteraan karyawan yang disusun berdasarkan peraturan legal, berasaskan keadilan dan kelayakan dan berpedoman pada kemampuan perusahaan.

2.2.3 Pengertian Kesejahteraan Karyawan

Menurut Drs. H. Malayu S.P Hasibuan (1997, p202), kesejahteraan karyawan adalah balas jasa pelengkap (material dan nonmaterial) yang diberikan berdasarkan kebijaksanaan, bertujuan untuk mempertahankan dan memperbaiki kondisi fisik dan mental karyawan, agar produktivitas kerjanya meningkat.

Jenis-jenis kesejahteraan yang diberikan adalah finansial dan nonfinansial yang bersifat ekonomis, fasilitas, dan pelayanan. Berikut ini adalah tabel dari jenis-jenis kesejahteraan karyawan:

(50)

Tabel 2.1 Jenis-jenis kesejahteraan karyawan

Ekonomis Fasilitas Pelayanan

- Uang pensiun - Mushala atau masjid - Puskesmas atau dokter - Uang makan - Kafetaria - Jemputan karyawan - Uang transport - Olahraga - Penitipan bayi - Uang Lebaran atau Natal - Kesenian - Bantuan hukum - Bonus atau gratifikasi - Pendidikan atau seminar - Penasihat keuangan - Uang duka kematian - Cuti dan cuti hamil - Asuransi atau Astek - Pakaian dinas - Koperasi dan took - Kredit rumah

- Uang pengobatan - Izin

(Sumber: Drs. H. Malayu S.P Hasibuan (1997, p203). Manajemen Sumber Daya Manusia: Dasar dan Kunci Keberhasilan)

Dari tabel di atas, yang termasuk ke dalam lingkup pembahasan sistem pengobatan adalah uang pengobatan dan puskesmas atau dokter, sedangkan untuk sistem perjalanan dinas adalah uang makan dan uang transport.

2.2.4 Pengertian Sistem Pengobatan

Menurut McLeod, Jr (1996, p11), sistem adalah sekelompok elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan.

Menurut Kamus Besar Bahasa Indonesia (2002), pengobatan adalah proses, perbuatan, atau cara mengobati.

Jadi, sistem pengobatan adalah sekelompok elemen yang terintegrasi dalam hal pengobatan untuk mencapai suatu tujuan.

2.2.5 Pengertian Sistem Perjalanan Dinas

Menurut Kamus Besar Bahasa Indonesia (2002), perjalanan adalah kepergian (perihal bepergian) dari suatu tempat ke tempat lain, dan dinas

(51)

adalah bertugas atau bekerja. Jadi, perjalanan dinas adalah kepergian dari suatu tempat ke tempat lain dalam masa bertugas atau bekerja.

Sistem perjalanan dinas pada PT Iforte Solusi Infotek dikenal dengan istilah Biaya Perjalanan Dinas (BPD). Menurut Surat Keputusan Direksi tahun 2005 PT Iforte Solusi Infotek, perjalanan dinas adalah suatu perjalanan yang dilakukan oleh karyawan ke suatu tempat di luar tempat kerja sehari-hari atau rutin untuk melakukan tugas-tugas yang mempunyai ikatan langsung dengan kegiatan perusahaan, yang dilakukan baik di dalam negeri maupun di luar negeri dan setelah mendapatkan izin dari Kepala Divisi, Kepala Unit, Kepala Departemen, atau Direksi khususnya untuk perjalanan dinas ke luar negeri.

2.2.6 Pengertian Detasering

Menurut Kamus Besar Bahasa Indonesia (2002), detasering (detasiring) adalah penempatan pegawai untuk bertugas di suatu tempat dalam jangka waktu tertentu. Di dalam PT Iforte Solusi Infotek, istilah detasering dikenal dengan istilah “detasiring”.

Gambar

Gambar 2.1 Relasi one-to-one antara staf dan cabang
Gambar 2.3 Relasi many-to-many antara koran dan rumah
Gambar 2.4 Siklus hidup basis data (Database Aplication Lifecycle)  a.  Perencanaan Basis Data (Database Planning)
Gambar 2.5 Arsitektur PL/SQL
+3

Referensi

Dokumen terkait

Kecambah dibungkus dengan kain kasa% kain kasa memiliki pori>pori yang cukup besar sehingga dapat digunakan untuk memberi ruang atau celah yang dapat dilewati oleh oksigen dan

24 Penelitian yang dilakukan adalah penelitian terhadap putusan hakim dalam menjatuhkan vonis terhadap pelaku tindak pidana kekerasan dalam rumah tangga yang

Penulisan Karya Tulis Imiah yang berjudul “Perbedaan Diameter Lumen Arteri Umbilikalis pada Preeklampsia Berat dan Kehamilan Normotensi” ini dilakukan dalam rangka memenuhi

Peserta yang tidak ada atau tidak mendampingi kendaraannya tanpa melapor kepada penyelenggara setelah 2 (dua) kali kunjungan oleh tim juri akan didiskualifikasi. Peserta

(1) Yang  dimaksud  dengan  Surat  Perjanjian  Kerja  Sama  ini  adalah  perjanjian  dimana  PIHAK  KESATU  mengikat  PIHAK  KEDUA    sebagaimana  pula  PIHAK 

 Jika sampai menit ke-8 semua kelompok belum dapat menjawab kedua masalah tersebut, guru dapat membimbing/menuntun siswa secara klasikal dengan memberikan

Sesuai dengan hadits Aisyah ketika beliau ditanya : “Apakah Rosulullah Shallallahu ‘alaihi wa Salam tidur dan dia dalam keadaan junub?”, maka Aisyah menjawab :

Berdasarkan tabel di atas menunjukkan bahwa nilai Adjusted R 2 sebesar 0.233 atau 23.3% sehingga dapat disimpulkan bahwa variabel profitabilitas, risiko bisnis,