bab 2 landasan teori - core.ac.uk · landasan teori 2.1 teori umum ... untuk membuat index pada...

43
7 BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Basis Data Menurut Post (2002, p2), “A database is a collection of data stored in a standardized format, designed to be shared by multiple users” yang berarti basis data adalah sebuah koleksi data yang tersimpan dalam format yang terstandar, yang didesain untuk digunakan oleh banyak pengguna. M enurut Connolly (2002, p14), “Basis data adalah suatu kumpulan data yang berhubungan secara logika dan dapat digunakan bersama-sama, serta deskripsi dari data-data tersebut, yang dirancang untuk memenuhi kebutuhan dari sebuah organisasi”. Kumpulan data yang berhubungan adalah data yang terintegrasi dengan redundansi atau duplikasi seminimum mungkin. Berhubungan secara logika maksudnya adalah hubungan data dibuat berdasarkan data model tertentu tanpa memperhatikan pertimbangan fisik. Data model yang digunakan misalnya pemodelan hubungan entitas / entity-relationship modeling ( ERM). Pertimbangan fisik misalnya penggunaan sistem manajemen basis data / Database Management System (DBMS) tertentu. ERM dan dan DBMS akan dibahas lebih lanjut dalam bab ini. Basis data dapat digunakan bersama-sama oleh banyak departemen dan pengguna sehingga basis data tidak lagi hanya memenuhi kebutuhan departemen melainkan kebutuhan dari sebuah organisasi. Selain menyimpan data-data

Upload: hakhanh

Post on 01-Apr-2019

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

7

BAB 2

LANDASAN TEORI

2.1 Teori Umum

2.1.1 Basis Data

Menurut Post (2002, p2), “A database is a collection of data stored in a

standardized format, designed to be shared by multiple users” yang berarti basis

data adalah sebuah koleksi data yang tersimpan dalam format yang terstandar,

yang didesain untuk digunakan oleh banyak pengguna.

Menurut Connolly (2002, p14), “Basis data adalah suatu kumpulan data yang

berhubungan secara logika dan dapat digunakan bersama-sama, serta deskripsi

dari data-data tersebut, yang dirancang untuk memenuhi kebutuhan dari sebuah

organisasi”.

Kumpulan data yang berhubungan adalah data yang terintegrasi dengan

redundansi atau duplikasi seminimum mungkin. Berhubungan secara logika

maksudnya adalah hubungan data dibuat berdasarkan data model tertentu tanpa

memperhatikan pertimbangan fisik. Data model yang digunakan misalnya

pemodelan hubungan entitas / entity-relationship modeling (ERM). Pertimbangan

fisik misalnya penggunaan sistem manajemen basis data / Database Management

System (DBMS) tertentu. ERM dan dan DBMS akan dibahas lebih lanjut dalam

bab ini.

Basis data dapat digunakan bersama-sama oleh banyak departemen dan

pengguna sehingga basis data tidak lagi hanya memenuhi kebutuhan departemen

melainkan kebutuhan dari sebuah organisasi. Selain menyimpan data-data

Page 2: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

8

operasional milik organisasi, basis data juga menyimpan data tentang data-data

tersebut, yang sering disebut sistem katalog atau kamus data atau meta-data atau

data definition language (DDL).

2.1.2 Sistem Manajemen Basis Data / Database Management System (DBMS)

Database Management System (DBMS) merupakan pengantara bagi

pemakai dengan basis data dalam disk. Menurut Post (2002, p2), DBMS adalah

perangkat lunak yang mendefinisikan sebuah basis data, menyimpan data,

mendukung query language, menghasilkan laporan, dan membuat tampilan input

data.

Menurut Connolly dan Begg (2002, p16), Database management system

(DBMS) adalah suatu sistem piranti lunak yang membuat pemakai dapat

mendefinisikan, menciptakan, mengatur dan mengontrol akses ke dalam basis

data. DBMS menyediakan beberapa fasilitas sebagai berikut :

• Data Definition Language (DDL)

Menurut Connoly (2002, p40), DDL (Data Definition Language) adalah

suatu bahasa yang memungkinkan Database Administrator atau pengguna untuk

mendefinisikan, menerangkan dan memberi nama entiti, atribut dan hubungan

yang dibutuhkan untuk aplikasi. DDL berfungsi untuk menjalankan perintah

(mengubah suatu data yang dapat berguna bagi pengguna).

Beberapa statement DDL (Connolly,2002, p167) :

1. Create Table

Untuk membuat tabel dengan mengidentifikasikan tipe data

untuk tiap kolom.

Page 3: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

9

2. Alter Table

Untuk menambah atau membuang kolom dan constrain.

3. Drop Table

Untuk membuang atau menghapus tabel beserta semua data

yang terkait di dalamnya.

4. Create Index

Untuk membuat index pada suatu tabel.

5. Drop Index

Untuk membuang atau menghapus index yang telah dibuat

sebelumnya.

• Data Manipulation Language (DML)

Menurut Connoly (2002, p41), DML (Data Manipulation Language)

adalah suatu bahasa yang menyediakan kumpulan operasi yang akan diinginkan

untuk mendukung operasi manipulasi data utama pada data yang diperoleh dalam

basis data. Menyediakan operasi dasar manipulasi data pada data yang ada dalam

basis data, yaitu :

- Penyisipan data baru ke dalam basis data (insertion).

- Mengubah atau memodifikasi data yang disimpan di dalam basisdata

- Pemanggilan data yang ada dalam basis data (retrieve).

- Menghapus data dari basis data (delete).

Menurut Connoly (2002, p41-42), kita dapat membedakan DML menjadi 2

tipe yang berbeda yaitu :

- Prosedural DML

Prosedural DML adalah suatu bahasa yang memungkinkan pengguna

(umumnya programmer) untuk memberi instruksi ke sistem mengenai data apa

Page 4: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

10

yang dibutuhkan dan bagaimana cara pemanggilannya (retrieve). Artinya

pengguna harus menjelaskan operasi pengaksesan data yang akan digunakan

dengan menggunakan prosedur yang ada untuk mendapatkan informasi yang

dibutuhkan.

- Non-Prosedural DML

Non-prosedural DML adalah bahasa yang memungkinkan pengguna

untuk menentukan data apa yang dibutuhkan dengan menyebutkan

spesifikasinya tanpa menspesifikasikan bagaimana cara mendapatkannya.

• Menyediakan akses yang terkontrol ke basis data, misalnya :

- Sistem keamanan

- Sistem integrasi

- Keamanan sistem kontrol akses

- Sistem kontrol perbaikan (recovery control)

- Katalog user-accessible

2.1.2.1 Komponen Lingkungan DBMS

1. Query Processsor

Komponen yang merubah bentuk query ke dalam instruksi tingkat rendah

ke database manager

2. Database Manager

Database manager menerima query dan menguji skema eksternal dan

konseptual untuk menentukan apakah record-record dibutuhkan untuk

memenuhi permintaan. Kemudian DM memanggil file manager untuk

menyelesaikan permintaan

3. File Manager

Page 5: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

11

Memanipulasi penyimpanan file dan mengatur alokasi ruang

penyimpanan pada disk.

4. DML Preprocessor

Modul yang merubah perintah DML embedded ke dalam program

aplikasi dalam bentuk fungsi-fungsi yang memanggil dalam host

language.

5. DDL Compiler

Merubah perintah DDL menjadi kumpulan tabel yang berisi metadata.

6. Dictionary Manager

Mengatur akses dan memelihara data dictionary. Data dictionary diakses

oleh komponen DBMS yang lain.

2.1.3 Sistem Basis Data

terdiri dari basis data dan DBMS

Komponen Sistem Basisdata

Komponen-komponen basisdata :

1. Perangkat keras

2. Pengguna (user)

3. Sistem Operasi

4. Sistem pengelola Basisdata (DBMS)

5. Program Aplikasi Lain

6. Basisdata

2.1.4 Keuntungan dan Kelemahan Basis data

Page 6: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

12

Basis data memiliki keuntungan dan kelemahan:

Keuntungan Basis data

1. Terkontrolnya kerangkapan data

Dalam basis data hanya mencantumkan satu kali saja field yang sama

yang dapat dipakai oleh semua aplikasi yang memerlukannya.

2. Terpeliharanya keselarasan (kekonsistenan) data

Apabila ada perubahan data pada aplikasi yang berbeda maka secara

otomatis perubahan itu berlaku untuk keseluruhan

3. Dapat dipakai secara bersama (shared)

Data dapat dipakai secara bersama-sama oleh beberapa program aplikasi

(secara batch maupun on-line) pada saat bersamaan.

4. Diterapkan standarisasi

Dengan adanya pengontrolan yang terpusat maka DBA dapat

menerapkan standarisasi data yang disimpan sehingga memudahkan

pemakaian, pengiriman maupun pertukaran data.

5. Data terjamin

DBA dapat memberikan batasan-batasan pengaksesan data, misalnya

dengan memberikan password dan pemberian hak akses bagi pemakai

(misal : modify, delete, insert, retrieve)

6. Integritas data

Jika kerangkapan data dikontrol dan kekonsistenan data dapat dijaga

maka data menjadi akurat

7. Keseimbangan antara kebutuhan data yang berbeda dalam setiap aplikasi

Page 7: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

13

Struktur basis data diatur sedemikian rupa sehingga dapat melayani

pengaksesan data dengan cepat

8. Independence (kemandirian data)

Dapat digunakan untuk bermacam-macam program aplikasi tanpa harus

merubah format data yang sudah ada

Kelemahannya dari sistem pemrosesan file ini antara lain :

1. Timbulnya data rangkap (redundancy data) dan Ketidakkonsistensi data

(Inconsistency data)

Karena file-file dan program aplikasi disusun oleh programmer yang

berbeda, sejumlah informasi mungkin memiliki duplikasi dalam beberapa

file. Sebagai contoh nama mata kuliah dan sks dari mahasiswa dapat

muncul pada suatu file memiliki record-record mahasiswa dan juga pada

suatu file yang terdiri dari record-record mata kuliah. Kerangkapan data

seperti ini dapat menyebabkan pemborosan tempat penyimpanan dan

biaya akases yang bertambah. Disamping itu dapat terjadi inkonsistensi

data. Misalnya, apabila terjadi perubahan jumlah sks mata kuliah,

sedangkan perubahan hanya diperbaiki pada file mata kuliah dan tidak

diperbaiki pada file mahasiswa. Hal ini dapat mengakibatkan kesalahan

dalam laporan nilai mahasiswa.

2. Kesukaran dalam Mengakses Data

Munculnya permintaan-permintaan baru yang tidak diantisipasikan

sewaktu membuat program aplikasi, sehingga tidak memungkinkan untuk

pengambilan data.

Page 8: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

14

3. Data terisolir (Isolation Data)

Karena data tersebar dalam berbagai file, dan file-file mungkin dalam

format - format yang berbeda, akan sulit menuliskan program aplikasi

baru untuk mengambil data yang sesuai.

4. Masalah Pengamanan ( Security Problem )

Tidak semua pemakai diperbolehkan mengakses seluruh data. Bagian

Mahasiswa hanya boleh mengakses file mahasiswa. Bagian Mata kuliah

hanya boleh mengakses file mata kuliah, tidak boleh mengakses file

mahasiswa. Tetapi sejak program-program aplikasi ditambahkan secara

ad-hoc maka sulit melaksanakan pengamanan seperti yang diharapkan.

5. Data Dependence

Apabila terjadi perubahan atau kesalahan pada program aplikasi maka

pemakai tidak dapat mengakses data.

Page 9: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

15

2.2 Teori Khusus

2.2.1 Sistem

Menurut Sommerville (2001, p21) sistem adalah sekumpulan komponen-

komponen yang saling berhubungan, yang bekerja sama untuk mencapai suatu

tujuan.

2.2.2 Analisis

Tahap analisis sistem (System Analysis) dilakukan setelah tahap

perencanaan sistem (System Planning) dan sebelum tahap desain sistem (System

Design). Tahap analisis merupakan tahap yang kritis dan sangat penting, karena

kesalahan di dalam tahap ini akan menyebabkan juga kesalahan pada tahap

selanjutnya.

Analisis sistem dapat didefinisikan sebagai (Jogiyanto, 1995, p129):

penguraian dari suatu sistem informasi yang utuh kedalam bagian-bagian

komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi

permasalahan-permasalahan, kesempatan-kesempatan, hambatan-hambatan,

yang terjadi dan kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan

perbaikan-perbaikannya.

2.2.2.1 Langkah-Langkah Pada Analisis Sistem

Langkah-langkah di dalam tahap analisis sistem hampir sama dengan

langkah-langkah yang dilakukan dalam mendefinisikan proyek sistem yang akan

dikembangkan di tahap perencanaan sistem, perbedaannya terletak pada ruang

Page 10: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

16

lingkup tugasnya. Pada analisis sistem ruang lingkup tugasya adalah lebih terinci

(detail) dimana penelitian yang dilakukan oleh analisis sistem merupakan

penelitian terinci, sedangkan pada perancangan sistem, sifatnya hanya penelitian

pendahuluan.

Berdasarkan pendapat Jogiyanto (1995, p130), dalam tahap analisis

sistem terdapat langkah-langkah dasar yang harus dilakukan oleh analis sistem,

yaitu:

1. Identify, yaitu mengidentifikasi masalah.

2. Understand, yaitu memahami kerja dari sistem yang ada

2. Analyze, yaitu menganalisis sistem

3. Report, yaitu membuat laporan hasil analisis

Dari pendapat diatas dapat ditarik kesimpulan bahwa analisis sistem

(System Analysis) adalah suatu penelitian terhadap sistem dan kebutuhan

informasi bagi pemakai yang bertujuan untuk merancang sistem baru dengan

spesifikasi yang telah ditetapkan sesuai dengan yang diinginkan pemakai untuk

memperbaiki kelemahan sistem yang ada sehingga sistem yang baru dapat lebih

diandalkan dan disempurnakan.

2.2.3 Perancangan

Perancangan sistem berdasarkan McLeod (2001a, p192) adalah penentuan

proses dan data yang diperlukan oleh sistem baru. Jika sistem itu berbasis

komputer, perancangan dapat menyertakan spesifikasi jenis peralatan yang akan

digunakan.

Page 11: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

17

Mulyadi (2001, p51) menyatakan bahwa perancangan sistem adalah proses

penerjemahan kebutuhan pemakai informasi kedalam alternatif rancangan sistem

informasi yang diajukan kepada pemakai informasi untuk dipertimbangkan.

Dapat diambil kesimpulan bahwa perancangan sistem ( System Design )

adalah penentuan proses dan data yang diperlukan oleh sistem baru yang berbasis

komputer dimana rancangan sistem tersebut menyertakan spesifikasi jenis

peralatan yang digunakan yang bertujuan sesuai dengan kebutuhan pemakai

sehingga pemakai memperoleh gambaran yang jelas serta rancang bangun yang

lengkap dari pihak-pihak yang terlibat didalamnya.

2.2.4 Pelayanan Pegawai

Menurut Kamus Besar Bahasa Indonesia pelayanan adalah usaha melayani

kebutuhan orang lain dengan memperoleh imbalan (uang). Sedangkan pegawai

adalah sekelompok orang yg bekerja sama membantu seorang direktur, ketua, dsb

mengelola sesuatu dalam sebuah perusahaan atau badan pemerintahan.

2.2.5 Internet

Menurut Turban (2003, G-11) internet adalah sebuah jaringan

komunikasi elektronik yang sangat besar yang menghubungkan komputer-

komputer dari bidang bisnis, pelanggan, agensi pemerintahan, sekolah, dan

organisasi lainnya diseluruh dunia, yang saling bertukar informasi dengan

Page 12: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

18

informasi, menggunakan standar dan protokol terbuka sehingga dapat digunakan

siapa saja.

Menurut Strauss (2003, p8), internet adalah sebuah jaringan global dari

jaringan-jaringan yang saling berhubungan. Media penghubung tersebut bisa

melalui kabel, satelit, maupun frekuensi radio. Dengan demikian, komputer-

komputer yang saling terhubung dapat saling berkomunikasi. Internet berasal

dari kata Interconnection Networking yang memiliki arti hubungan berbagai

komputer dengan berbagai tipe yang membentuk suatu sistem jaringan yang

mencakup seluruh dunia (jaringan komputer global) dengan melalui jalur

telekomunikasi seperti telepon. Jaringan internet terbentuk melalui berjuta-juta

komputer yang terintegrasi yang letaknya tersebar diseluruh dunia.

2.2.5.1 Sejarah internet

Dalam bukunya, Turban(2003) mengatakan bahwa internet

bermula dari jaringan yang disebut ARPANET, sebuah jaringan

eksperimen milik pemerintah US yang didirikan tahun 1969 yang

menghubungkan antara militer, agensi pemerintahan, ilmuwan, serta

peneliti akademisi. Tujuan dari proyek ini adalah untuk dapat bertukar

informasi antar peneliti tanpa memperhatikan lokasi mereka,

menciptakan jaringan komunikasi yang luas untuk kepentingan militer.

Pada tahun 1980-an, ARPANET dipecah menjadi 2 jaringan, ARPANET

dan Milnet. Pada tahun-tahun awal, akses terhadap ARPANET terbatas

Page 13: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

19

pada pihak militer, dewan pertahanan, dan universitas yang melakukan

penelitian.

Diawal tahun 1980-an, ARPANET dikenal sebagai “internet” dan

jumlah komputer yang terhubung ke jaringan ini bertambah banyak.

Mulanya internet hanya digunakan untuk pertukaran informasi diantara

para ilmuwan dan digunakan oleh kalangan akademis (UCLA) untuk

keperluan penelitian dan pengembangan teknologi.

Pada awal 1990-an, internet mulai banyak digunakan secara

global diluar Amerika Serikat. Pada saat ini, internet terdiri atas lebih

dari 15.000 jaringan yang mengelilingi dunia, sekitar 25 juta orang dapat

saling mengirim pesan melalui internet dan jaringan-jaringan lain yang

terhubung dengannya. Pemakaiannya sudah bukan murni untuk riset

saja, tetapi mencakup kegiatan sosial, komersial, budaya, dan lainnya

(McLeod, 2001, p73).

2.2.5.2 Teori Internet Service

Pertukaran informasi melalui internet bisa menggunakan aplikasi-

aplikasi sebagai berikut:

2.2.5.2.1 World Wide Web (WWW)

World Wide Web (WWW) adalah aplikasi yang digunakan untuk

transportasi fungsi. Teknologi yang digunakan World Wide Web

(WWW) diciptakan oleh Timothy Berners-Lee yang pada tahun 1989

mengusulkan sebuah jaringan global dari dokumen hypertext yang dapat

memungkinkan para peneliti untuk bekerja bersama. (Turban, 2003,

p214).

Page 14: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

20

2.2.5.2.2 HTML (Hypertext markup language)

HyperText Markup Language (HTML) adalah bahasa standar bagi

web yang memformat dokumen dan menyatukan link dynamic hypertext

ke penyimpanan dokumen lain pada komputer yang sama ataupun

berbeda (The web is based on a standart hypertext language called

HTML, which format documents and incorporates dynamic hypertext link

to other documents stored on the same of different computers). (Turban,

2003, p214).

2.2.5.2.3 Web Browser

Web browser merupakan aplikasi yang dijalankan PC (dalam

internet pada sisi klien) untuk menyediakan antar muka grafis interaktif

untuk mencari, menemukan, dan melihat dokumen-dokumen teks, suara,

animasi, dan sumber-sumber multimedia lain dalam web(Vaughan, 2006,

p294).

Browser mampu untuk berkomunikasi melalui HTTP, mengatur

HTML, dan menampilkan tipe data tertentu seperti GIF (Graphics

Interchange Format) dan JPEG ( Joint Photographic Expert Group)

untuk grafik dan Microsoft Window WAV untuk suara (Turban, 2003,

p214).

2.2.6 Kebutuhan Untuk Implementasi

2.2.6.1 PHP

Page 15: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

21

PHP Hypertext Preprocessor merupakan HTML-embedded

scripting language, maksudnya adalah sebuah bahasa pemrograman yang

bisa dimasukan kedalam penggunaan HTML. PHP mengkombinasikan

fitur-fitur terbaik dari bahasa pemrograman modern untuk menciptaan

pendekatan yang unik untuk membuat aplikasi web. Walaupun banyak

bahasa pemrograman namun PHP didesain dari dasar hingga keatas

dengan menggunakan pemikiran web-development ( Allen, 2002, p xix )

2.2.6.2 MySQL

Menurut Allen dan Hornberger (2002, p220) MySQL merupakan

bahasa pemrograman open source yang paling popular dan banyak

digunakan di lingkungan Linux. Kepopuleran ini karena ditunjang oleh

performansi query dari databasenya yang jarang bermasalah.

Nugroho (2004, p29) mengemukakan, MySQL (My Structure

Query Language) adalah sebuah program pembuat database yang bersifat

open source, artinya siapa saja dapat menggunakannya secara bebas.

Karena sifatnya open source, MySQL dapat berjalan pada semua

platform baik Windows maupun Linux. Selain itu, MYSQL juga

merupakan program pengakses database yang bersifat jaringan sehingga

dapat digunakan untuk aplikasi multiuser (banyak pengguna). Saat ini

database MYSQL telah digunakan oleh hampir semua pemrograman

database , terlebih dalam pemrograman web.

2.2.7 Database Application Lifecycle

Page 16: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

22

Database life cycle merupakan komponen yang penting dalam sistem

basisdata karena aplikasi dari database life cycle berkaitan dengan sistem

informasi yang ada. Langkah-langkah dalam database life cycle (Connolly, 2002,

p272) dapat dilihat pada gambar berikut:

.

Page 17: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

23

System Definition

Requirement collection and analysis

Conceptual Database

Logical Database Design

Physical Database Design

Application Design

DBMS Selection ( i l)

Prototyping (optimal)

Data Convertion And Loading

Testing

Operational maintainance

Gambar 2.1 Database Application Lifecycle

Implementation

Page 18: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

24

2.2.7.1 Perancangan Basis Data (Database Planning)

Menurut Connolly dan Begg (2002, p273-274), Database Planning

merupakan aktivitas-aktivitas manajemen yang memungkinkan tahap-tahap dalam

aplikasi basis data direalisasikan se-efisien dan seefektif mungkin. Perencanaan

basis data harus diintegrasikan dengan keseluruhan strategi sistem informasi dari

organisasi. Ada 3 permasalahan pokok dalam merumuskan suatu strategi sistem

informasi :

• Identifikasi rencana dan tujuan perusahaan dengan penentuan sistem

informasi yang dibutuhkan.

• Evaluasi sistem informasi yang berjalan untuk memutuskan

kekurangan dan kelemahan yang ada.

• Penilaian dari kesempatan teknologi informasi yang menghasilkan

kekuatan kompetitif.

Langkah penting dari tahap ini adalah mendefinisikan secara jelas tentang

pernyataan misi untuk proyek bisnis data. Pernyataan tersebut mendefinisikan

tujuan utama dari aplikasi basis data. Bila pernyataan tersebut selesai maka

langkah selanjutnya adalah mengidentifikasikan sasarannya. Pernyataan dan

sasaran ini perlu didukung oleh informasiinformasi tambahan yang menentukan

pekerjaan apa saja yang harus diselesaikan, sumber-sumber yang mendukungnya,

dan biaya yang harus dikeluarkan.

Page 19: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

25

2.2.7.2 Definisi Sistem (System definition)

System definition menggambarkan ruang lingkup dan batasan dari

aplikasi basis data dan pandangan pengguna (user view) yang utama (Connolly,

2002, p274). Sebelum merancang aplikasi basis data, maka harus

mengidentifikasikan batasan dari sistem dan bagaimana sistem tersebut

berinteraksi dengan bagian lain dari informasi perusahaan.

User view menggambarkan apa yang dibutuhkan oleh aplikasi basis data

dari sudut pandang jabatan tertentu, seperti manajer atau pengawas, maupun dari

sudut pandang area aplikasi perusahaan, seperti pemasaran, personalia, atau

pengawasan persediaan, dalam hubungannya dengan data yang akan disimpan

dan transaksi yang akan dijalankan terhadap data itu (Connolly, 2002, p275).

2.2.7.3 Pengumpulan dan Analisis Kebutuhan (Requirement Collection And

Analysis)

Pengumpulan dan analisis kebutuhan adalah proses pengumpulan dan

analisis informasi tentang bagian perusahaan yang didukung oleh aplikasi basis

data dan yang menggunakan informasi ini untuk mengidentifikasikan kebutuhan

– kebutuhan user dari sistem yang baru (Connolly, 2002, p276).

Pengumpulan kebutuhan atau fact-finding memiliki 5 jenis teknik yang

penggunaannya sesuai kebutuhan :

1) Memeriksa dokumentasi dan formulir

Page 20: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

26

Pemahaman terhadap jalannya sistem akan cepat diperoleh dengan

memeriksa dokumen – dokumen, formulir, laporan, dan file yang berhubungan

dengan sistem yang sedang berjalan.

2) Wawancara

Bertujuan untuk mengumpulkan fakta – fakta, memeriksa kebenaran

fakta yang ada dan mengklarifikasinya, membangkitkan semangat, melibatkan

pengguna akhir, mengidentifikasi kebutuhan – kebutuhan, dan mengumpulkan

ide – ide dan pendapat (Connolly, 2002, p306). Teknik ini memerlukan

kemampuan komunikasi yang baik untuk menghadapi pengguna yang memiliki

nilai, prioritas,

pendapat, motivasi, dan kepribadian yang beragam.

3) Mengamati Operasional Perusahaan

Memungkinkan untuk ikut serta atau mengamati seseorang dalam

melakukan kegiatan untuk mempelajari sistem. Salah satu factor pengamatan

dapat berhasil adalah dengan mencari informasi sebanyak mungkin tentang

aktivitas yang akan diamati serta orang yang melakukan aktivitas tersebut.

4) Penelitian

Jurnal komputer, buku – buku referensi, dan internet merupakan sumber

informasi yang baik yang menyediakan informasi bagaimana orang lain

memecahkan masalah yang serupa.

5) Kuisioner

Kuesioner adalah suatu dokumen dengan tujuan khusus yang

memungkinkan fakta – fakta dikumpulkan dari banyak orang sambil menjaga

kontrol terhadap tanggapan yang diberikan (Connolly,2002, p308)

Page 21: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

27

2.2.7.4 Database Design (Perancangan Basis data)

Perancangan basis data adalah suatu proses menciptakan perancangan

untuk basis data yang akan mendukung keseluruhan operasi dan tujuan – tujuan

perusahaan (Connolly, 2002, p279).

Terdapat dua pendekatan yang dapat digunakan untuk merancang basis

data, yaitu:

1. Bottom up Approach

Pendekatan bottom up dimulai dari atribut awal (entity dan relationship)

yang dianalisa asosiasi antar atribut, kemudian dibentuk relation yang mewakili

tipe dari entity dan relationship antar entity. Pendekatan ini sesuai untuk

perancangan basis data yang sederhana dengan jumlah atribut sedikit.

2. Top down Approach

Pendekatan Top down dimulai dengan pengembangan data model yang

terdiri dari sedikit atau banyak entity dan relationship, kemudian melakukan

perbaikan top down untuk mengidentifikasikan lower-level entity, relationship,

dan asosiasi antar atribut. Pendekatan ini digambarkan dengan entity relationship

(ER) model, yang dimulai dari identifikasi entity dan relationship antar entity.

Dalam database design terdapat tiga fase utama, yaitu perancangan konseptual

(Conceptual Database Design), perancangan logikal (Logical Database Design),

dan perancangan fisik (Physical Database Design).

Page 22: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

28

2.2.7.4.1 Perancangan Basis Data Konseptual (Conceptual Database Design)

Perancangan basis data konseptual adalah proses membangun sebuah

model dari informasi yang digunakan di perusahaan, yang terlepas dari semua

pertimbangan – pertimbangan fisik (Connolly,2002, p419). Tujuan dari

perancangan konseptual basis data adalah untuk membangun representasi

konseptual dari basis data, yang meliputi identifikasi dari entity penting,

relationship – relationship, dan atribut – atribut (Connolly, 2002, p417).

Conceptual Database Design secara keseluruhan terbebas dari detil

penerapannya, seperti Database Management System (DBMS) software, aplikasi

program, programming language, hardware platform atau pertimbangan fisik

lainnya. Tahapan yang dilakukan dalam conceptual database design adalah

membangun model data konseptual lokal untuk setiap view, yang dapat diuraikan

sebagai berikut :

• Menentukan tipe entity

Entity ditentukan dengan mencari tahu spesifikasi kebutuhan user.

• Menentukan tipe relationship

Mengidentifikasi hubungan – hubungan yang penting antar tipe –tipe entity yang

telah diidentifikasikan.

• Menentukan dan menghubungkan atribut dengan entity (relationship)

Menentukan atribut – atribut apa saja yang terdapat dalam suatu

entity.

Page 23: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

29

• Menentukan atribut domain

Menentukan domain pada setiap atribut yang ada di dalam model.

• Menentukan atribut candidate dan primary key

Menentukan candidate key dari suatu entity yang kemudian akan dipilih sebuah

primary key dari candidate key yang ada.

• Mempertimbangkan penggunaan enchanced modeling concepts

Mempertimbangkan perlu tidaknya menggunakan konsep model specialization

atau generalisasi, agregation, dan composition.

• Cek model untuk redudansi

Memeriksa model data konseptual lokal dengan spesifikasi objektif dari

pengidentifikasi walaupun ada beberapa redudansi dan kemudian menghilangkan

redudansi tersebut.

• Validasi model konseptual lokal dengan transaksi user

Memeriksa apakah model konseptual lokal sudah dapat memenuhi segala

transaksi yang dilakukan user, jika masih ada transaksi yang tidak dapat

dilakukan secara manual maka perlu dilakukan pembetulan terlebih dahulu.

• Review model data konseptual lokal dengan user

Melakukan pemeriksaan ulang dengan user untuk memastikan apakah model

konseptual ini sudah sesuai.

2.2.7.4.2 Perancangan Basis Data Logikal (Logical Database Design)

Tujuan perancangan logikal basis data adalah untuk menerjemahkan

representasi konseptual ke struktur logikal dari basis data yang meliputi

perancangan relasi – relasi (Connolly, 2002, p417).

Page 24: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

30

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 (Connolly, 2002,

p441).

Tahapan yang dilakukan dalam logical database design adalah sebagai

berikut:

• Membangun dan memvalidasi logical data model untuk setiap view, yang dapat

diuraikan sebagai berikut:

- Menghapus fitur yang tidak sesuai dengan relational model

Menghilangkan relasi biner many-to-many, relasi rekursif many to many, relasi

kompleks, dan atribut multi-valued.

- Menurunkan Relasi untuk Model Data Logikal Lokal

Membuat relasi model data logikal lokal untuk merepresentasikan entity,

relationship, dan atribut yang telah diidentifikasi.

- Validasi relasi – relasi menggunakan normalisasi

Normalisasi digunakan untuk meyakinkan suatu resultant model. Resultant

model adalah model yang sudah konsistent, redundansinya sudah minimal dan

stabilitasnya sudah maksimum.

- Validasi relasi – relasi dengan transaksi user

Memeriksa relasi yang telah dibuat pada tahap sebelumnya apakah mendukung

transaksi ini, untuk memastikan tidak ada kesalahan yang dibuat selama

membuat relasi - relasi.

- Mendefinisikan integrity constraint

Page 25: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

31

Adalah constraint yang kita harapkan untuk menjaga agar basis data tetap

konsisten. Data yang disimpan ke dalam sebuah basis data haruslah valid dan

konsisten. Integrity biasanya diekspresikan sebagai constraint, dimana constraint

merupakan aturan yang tidak boleh dilanggar oleh basis data.

1. Domain Constraint

Domain Constraint adalah aturan yang menentukan

format nilai apa yang diperbolehkan untuk disimpan

dalam attribute dari suatu relation

2. Entity Integrity

Dalam base relation, attribute yang menjadi primary key

dari suatu tabel tidak boleh berisi nilai null.

3. Referential Integrity

Jika terdapat foreign key maka nilai foreign key harus

mengacu pada relasi tabel utamanya.

- Review logical model data lokal dengan user

Memeriksa kembali model logikal dan menyediakan dokumentasi untuk user

• Membangun dan memvalidasi logical data model global, yang dapat diuraikan

sebagai berikut :

- Menggabungkan logical data model lokal ke dalam model global menggunakan

ERD, skema relasional, kamus data, dan dokumentasi yang mendukung untuk

mengidentifikasi persamaan dan perbedaan antara model-model, dan membantu

untuk menggabungkan model – model tersebut.

- Memvalidasi logical data model global

Page 26: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

32

Memvalidasi relasi yang telah dibuat dari model data logikal global

menggunakan teknik normalisasi dan meyakinkan relasi tersebut mendukung

kebutuhan transaksi yang ada.

- Cek untuk perkembangan selanjutnya

Menentukan apakah akan sering terjadi perubahan yang drastic di masa yang

akan datang, dan menilai apakah model data logikal global ini dapat

mengakomodasi perubahan yang terjadi.

- Review logical data model global dengan user

Melakukan pemeriksaan kembali dengan user untuk menentukan apakah model

ini sudah sesuai dengan representasi perusahaan.

2.2.7.4.3 Perancangan Basis data Fisikal (Physical Database Design)

Perancangan basis data fisikal adalah proses untuk menghasilkan

penjelasan dari pengimplementasian suatu basis data pada media penyimpanan

kedua, juga menjelaskan base realtion, pengaturan file, dan indeks yang

digunakan untuk mencapai akses data yang efisien, integrity, constraint, serta

ukuran keamanan (Connolly, 2002, p282).

Tahapan yang dilakukan dalam physical database design adalah sebagai

berikut :

• Menerjemahkan logical data model global untuk target DBMS, yang dapat

diuraikan sebagai berikut :

- Merancang relasi – relasi dasar

Menentukan bagaimana merepresentasikan relasi dasar yang telah

diidentifikasikan di dalam model data logikal global ke dalam DBMS.

Page 27: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

33

- Merancang representasi dari data yang diturunkan

Menentukan bagaimana merepresentasikan beberapa data yang

diturunkan dalam model data logikal global ke dalam DBMS.

- Merancang entreprise constraints

• Merancang representasi physical, yang dapat diuraikan sebagai berikut :

- Menganalisa transaksi

Memahami fungsionalitas dari transaksi yang akan berjalan pada basis

data dan untuk menganalisa transaksi – transaksi yang penting.

- Memilih organisasi file

Menentukan organisasi file secara efisien untuk setiap relasi dasar.

- Memilih indeks – indeks

Menentukan apakah penambahan indeks – indeks akan meningkatkan

performa dari sistem.

- Memperkirakan kebutuhan disk space

Menentukan jumlah disk space yang dibutuhkan oleh basis data.

- Merancang user view

Merancang user view yang telah diidentifikasikan selama tahapan

pengumpulan dan analisis kebutuhan dari relational database application

lifecycle.

- Merancang mekanisme keamanan

Menentukan tingkat keamanan basis data berdasarkan spesifikasi user.

• Mempertimbangkan pengenalan dari kontrol redundansi, yang dapat diuraikan

sebagai berikut :

- Menggabungkan relasi one-to-one (1:1)

Page 28: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

34

- Menduplikasikan atribut non-key dalam relasi one-to-many (1:*) untuk

mengurangi join.

- Menduplikasikan atribut foreign key dalam relasi one-to-many (1:*)

untuk mengurangi join.

- Menduplikasikan atribut – atribut dalam relasi many-to-many (*:*)

untuk mengurangi join.

- Memperkenalkan repeating groups

- Menggabungkan lookup tables dengan base relations.

- Membuat extract tables

• Memonitor dan menjalankan sistem operasional

Memonitor sistem operasional dan meningkatkan performa sistem untuk

memperbaiki keputusan rancangan yang tidak sesuai.

2.2.7.5 Pemilihan DBMS (DBMS Selection)

Menurut Connolly dan Begg (2002, pp287-288), DBMS selection adalah

memilih DBMS yang sesuai dengan aplikasi basis data yang akan dibuat.

Pemilihan DBMS dilakukan antara tahapan conceptual database design dan

logical database design. Tujuan dari pemilihan DBMS adalah untuk

kecukupan sekarang dan kebutuhan masa mendatang pada perusahaan, membuat

keseimbangan biaya termasuk pembelian produk DBMS, piranti lunak/perangkat

keras lainnya untuk mendukung aplikasi basis data, biaya yang berhubungan

dengan perubahan dan pelatihan pegawai.

Langkah utama dalam memilih DBMS adalah :

1. Menggambarkan cakupan tugas berdasarkan kebutuhan perusahaan.

Page 29: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

35

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.

2.2.7.6 Perancangan Aplikasi (Application Design)

Menurut Connolly dan Begg (2002, pp287-288), perancangan aplikasi

adalah merancang user interface dan program aplikasi, yang akan memproses

basis data. Dalam database application lifecycle, perancangan basis data dan

perancangan aplikasi dilakukan secara bersamaan. Dalam kasus sebenarnya,

adalah tidak mungkin untuk menyelesaikan perancangan aplikasi sebelum

perancangan basis data selesai. Pada sisi lain, basis data ada untuk mendukung

aplikasi tersebut, dan demikian harus ada suatu informasi antar desain aplikasi

dan desain basis data.

Dalam perancangan aplikasi harus memastikan bahwa semua kemampuan

menyatakan spesifikasi kebutuhan pemakai hadir di dalam desain aplikasi untuk

aplikasi basis data. Ini melibatkan program aplikasi yang mengakses basis data

akan merancang transaksi tersebut ke dalam metode akses basis data. Artinya

bagaimana fungsi yang dibutuhkan bias terpenuhi dan merancang antarmuka

pemakai yang tepat. Selain itu, antarmuka yang dirancang harus memberikan

informasi yang dibutuhkan secara user-friendly.

Page 30: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

36

2.2.7.7 Prototipe (Prototyping)

Merupakan pembuatan suatu model kerja dari aplikasi basis data. Suatu

prototype adalah model yang bekerja yang tidak mempunyai semua fiturfitur

yang diperlukan atau menyediakan semua fungsionaliti dari sistem terakhir.

Tujuan utama dari pengembangan suatu aplikasi basis data prototype adalah

memungkinkan pengguna menggunakan prototype tersebut untuk menentukan

fitur-fitur dari sistem yang bekerja dengan baik, dan jika mungkin mengusulkan

sistem yang bekerja dengan baik, dan jika mungkin mengusulkan peningkatan

atau bahkan fitur-fitur baru pada aplikasi basis data.

Ada 2 (dua) strategi prototyping pada zaman sekarang:

• Requirements prototyping, menggunakan suatu prototype untuk menentukan

kebutuhan-kebutuhan dari aplikasi basis data yang diusulkan dan suatu waktu

kebutuhan-kebutuhan tersebut lengkap prototype dibuang.

• Evolutionary prototyping, digunakan untuk tujuan yang sama, perbedaan yang

penting adalah bahwa prototype tidak dibuang tetapi dengan perkembangan yang

lebih jauh menjadi aplikasi basis data yang digunakan.

2.2.7.8 Implementasi (Implementation)

Menurut Connolly dan Begg (2002, p292), implementasi adalah membuat

definisi basis data eksternal, konseptual dan internal serta program-program

aplikasi. Implementasi basis data dicapai dengan menggunakan Data Definiton

Languange(DDL) dari DBMS yang dipilih atau graphical user interface(GUI),

dimana menyediakan fungsionalitas yang sama ketika menyembunyikan

Page 31: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

37

pernyataan DDL tingkat rendah. Pernyataan DDL tersebut digunakan untuk

membuat struktur basis data dan file basis data kosong.

Program aplikasi diimplementasikan dengan menggunakan bahasa

generasi ketiga atau keempat (3GL atau 4GL). Bagian dari program aplikasi ini

adalah transaksi basis data, dimana diimplementasikan dengan menggunakan

Data Manipulation Language (DML) dari DBMS tujuan, yang mungkin

disimpan dalam sekumpulan bahasa pemrograman, seperti Visual Basic, Delphi,

C, C++, Java, COBOL, atau Pascal.

2.2.7.9 Konversi dan Pemuatan Data (Data conversion and loading)

Data Conversion and Loading adalah suatu proses menstransfer data

yang ada ke dalam basis data baru dan mengubah apliasi yang ada untuk

dijalankan dalam basis data baru (Connolly, 2002, p292). Tahap ini hanya

dibutuhkan ketika sistem basis data baru menggantikan sistem yang lama

2.2.7.10 Pengujian (Testing)

Merupakan proses pengeksekusian program aplikasi dengan maksud

pencarian kesalahan-kesalahan. Sebelum ditunjukkan secara langsung aplikasi

basis data yang baru dikembangkan seharusnya diuji sepenuhnya.

2.2.7.11 Pemeliharaan Operasional (Operational Maintenance)

Merupakan proses pengawasan dan pertahanan sistem berikut instalasi.

Pada langkah sebelumnya, aplikasi basis data telah diimplementasikan dan diuji

Page 32: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

38

sepenuhnya. Sekarang sistem memasuki langkah perawatan, yang melibatkan

aktivitas-aktivitas berikut:

• mengawasi kinerja sistem

• mempertahankan dan meng-upgrade aplikasi basis data (ketika dibutuhkan)

2.2.8 Normalisasi

Menurut Post (2002, p66), relasi basis data mengoperasikan tabel-

tabel data dan tabel-tabel tersebut harus didefinisikan untuk mendapatkan

keuntungan dari basis data. Proses penentuan dari tabel-tabel yang sesuai

tersebut untuk suatu basis data disebut normalisasi.

Menurut Connoly (2002,p376-377), normalisasi merupakan suatu teknik

untuk menghasilkan kumpulan relasi-relasi dengan properti yang diperlukan,

untuk menyediakan kebutuhan data dari perusahaan. Normalisasi adalah suatu

teknik formal untuk menganalisa relasi berdasarkan primary key dan

ketergantungan fungsional diantara atribut tiap tabelnya. Tujuan normalisasi

adalah terjaminnya struktur yang konsisten, kerangkapan yang minimal, dan

stabilitas struktur data yang maksimal.

Manfaat normalisasi :

1. Meminimalkan jumlah kapasitas penyimpanan yang diperlukan untuk

menyimpan data

2. Meminimalkan resiko data yang tidak konsisten dalam suatu basis data.

3. Meminimalkan kemungkinan update dan delete anomally.

4. Memaksimalkan stabilitas dari struktur data.

Page 33: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

39

2.2.8.1 Tahap-tahap normalisasi

Pada saat belum dinormalisasikan suatu tabel masih dalam bentuk tidak

normal atau unformal form dimana relasi antara tabel masih terdapat repeating

group atau ada kelompok atribut yang berulang.

Untuk mendapatkan bentuk tabel yang normal, yang terstruktur dengan

baik, tanpa ada error harus dilakukam tahapan-tahapan normalisasi sebagai

berikut:

• 1NF (First Normal Form)

Menurut Conolly (2002, p388), First Normal Form adalah relasi dimana

pertemuan antar setiap baris dan kolom terdiri 1 (satu) dan hanya 1 (satu)

nilai. Dalam normalisasi pertama ini, data yang berulang-ulang dihilangkan..

Jadi aturan yang berlaku pada 1 NF :

Mendefinisikan atribut kunci

Tidak adanya group berulang

Semua atribut bukan kunci tergantung pada atribut kunci

• 2NF (Second Normal Form)

Menurut Conolly (2002.p392), Second Normal Form (2NF) adalah

merupakan sebuah relasi dalam 1NF yang setiap atribut non-primarykey

bersifat Full Function Dependency pada primary key dari relasi tersebut.

Dalam normalisasi kedua ini, atribut yang tergantung pada sebagian dari

suatu composite key sebuah tabel dipindahkan ke sebuah

tabel yang terpisah.

Page 34: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

40

Menurut Conolly (2002.p391), Full function dependency adalah

mengindikasikan bahwa jika A dan B adalah atribut dari sebuah relasi, B

adalah fully functional dependent dari A jika B adalah functionally dependent

dari A, bukan merupakan bagian dari A.

Aturan yang berlaku:

Sudah memenuhi dalam bentuk normal pertama

Sudah tidak ada ketergantungan parsial dimana sebuah field hanya

tergantung pada sebagian field kunci.

• 3NF (Third Normal Form)

Menurut Conolly (2002, p394), Third Normal Form (3NF) adalah sebuah

relasi yang memenuhi normal pertama dan normal kedua dimana tidak

terdapat atribut non primary key yang bersifat transitively dependent dari

primary key-nya.

Menurut Conolly (2002.p394), Transitively dependency adalah jika kondisi

A,B, dan C merupakan atribut-atribut dari sebuah relasi seperti jika A→ B

dan B → C, maka C adalah transitively dependent dari A melalui atau via B

(disediakan bahwa A bukan functionally dependent dari B dan C)

Dalam normalisasi ketiga ini, atribut yang tidak memberikan kontribusi

terhadap penjelasan karakteristik primary key, akan dipindahkan kesebuah

tabel yang terpisah

Aturan yang berlaku:

Sudah berada dalam bentuk normal kedua

Page 35: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

41

Tidak ada ketergantungan transitive dimana field bukan key

tergantung pada field bukan key lainnya

2.2.9 Data Flow Diagram (DFD)

Data Flow Diagram adalah model proses yang digunakan untuk

menggambarkan aliran data melalui sebuah sistem dan tugas atau pengolahan

yang dilakukan oleh sistem (Whitten, 2004, p326).

Simbol-simbol yang digunakan dalam DFD antara lain :

• External Entity

Entity yang berada diluar sistem yang memberikan data kepada

sistem (source) atau yang menerima informasi dari sistem (sink). Entity

external tidak termasuk dalam sistem.

Gambar:

• Proses

Proses ialah sesuatu yang mengubah input menjadi output. Proses

sering juga disebut bubble. Proses dapat digambarkan dengan lingkaran,

segi empat, dan segi empat membulat.

Gambar:

• Aliran data (Data Flow)

Menggambarkan aliran data dari suatu entity ke entity lainnya. Simbol

yang digunakan berupa anak panah. Tanda panah tersebut

Page 36: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

42

menggambarkan aliran data yang terjadi bisa antara 2 proses yang

berurutan, dari data store ke proses atau sebaliknya dari proses ke sink.

Gambar :

• Penyimpanan data (Data Store)

Data store berfungsi sebagai tempat penyimpanan data. Proses dapat

mengambil data atau memberikan data ke store.

Gambar :

2.2.10 State Transition Diagram

State Transition Diagram (STD) merupakan suatu tools

pemodelan yang menggambarkan sifat ketergantungan pada waktu dari suatu

sitem. Adapun Simbol yang digunakan :

State / keadaan

Perubahaan State / keadaan

Untuk melengkapi STD masih diperlukan dua hal lagi, yaitu Condition

(kondisi), adalah sebuah sinyal yang menyebabkan perubahan terhadap state dari

state satu ke state berikutnya. Action (aksi), adalah yang dilakukan sistem bila

terjadi perubahan state atau merupakan reaksi terhadap kondisi.

Page 37: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

43

2.2.11 Perancangan User Interface atau layar

Interaksi manusia dengan komputer adalah ilmu yang berhubungan dengan

perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk

digunakan manusia, serta studi fenomena besar yang berhubungan dengannya

(Shneiderman, 1998, p8). Menurut Shneiderman (1998, p74-75) dalam merancang

antarmuka pemakai ( user interface ) perlu menggunkan delapan aturan emas yang

terdiri dari :

• Berusaha konsisten.

Aplikasi yang dirancang harus konsisten, baik dalam tampilan, susunan menu,

teks dan warna

• Memungkinkan frequent user menggunakan shortcut.

Aplikasi yang dirancang sebaiknya mempunyai fasilitas shortcut bagi user untuk

lebih menjelajahi aplikasi

• Memberikan umpan balik yang informatif.

Sebuah aplikasi harus dapat memberikan navigasi ataupun informasi mengenai

tujuan dari sebuah link, sehingga akan dapat mengurangi kesalahan yang

mungkin dilakukan user

• Merancang dialog untuk menghasilkan keadaan akhir

Aksi – aksi yang ada seharusnya diorganisasikan untuk mempunyai suatu

perusahaan, pertengahan, dan tahap akhir, seperti sebuah cerita pendek yang

bagus. Dengan adanya umpan balik yang informatif pada tahap akhir dari suatu

form akan memberithukan user sehingga mereka dapat mengetahui kapan

mereka dapat berpindah ke form berikutnya.

Page 38: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

44

• Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana.

Jika terjadi kesalahan, maka aplikasi mampu memberikan petunjuk sederhana

dan praktis dalam menanganinya. Misalnya disediakan fasilitas help

• Memungkinkan pembalikan aksi ( undo yang mudah ).

Aplikasi harus menyediakan fasilitas bagi user ntuk kembali ke menu dengan

mudah.

• Mendukung internal locus of control.

Memberikan user memutuskan apa yang diperlukan dan kemudian sistem

menyediakan informasi yang dibutuhkan.

• Mengurangi beban ingatan jangka panjang.

Aplikasi harus memudahkan user dalam mengingat hal – hal penting. Misalnya

dengan kombinasi kode – kode, maka kode tersebut diusahakan mudah diingat

dengan kemampuan berpikir manusia. Kode jangan terlalu panjang.

2.2.12 Entity- Relationship Model

Model Entity- Relationship (ER) menggunakan pendekatan top-down dalam

perancangan basis data yang dimulai dengan mengidentifikasikan data yang

penting yang disebut entity dan relationship dan data harus direpresentasikan di

dalam model, kemudian ditambahkan beberapa atribut , dan constraint pada

entity , atribut dan relationship.

Page 39: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

45

2.2.12.1 Entity type

Entitas merupakan individu yang mewakili sesuatu yang nyata

(eksistensinya) dan dapat dibedakan dari sesuatu yang lain. Sekelompok entitas

yang sejenis dan berada dalam lingkup yang sama membentuk sebuah Himpunan

Entitas (Entity Set). Contoh himpunan entitas : semua Pelanggan atau Pelanggan

saja. Dengan entitas Jack, Mike dan seterusnya.

Setiap entitas memiliki atribut yang mendeskripsikan karakteristik

(property) dari entitas tersebut.

Entity type dapat diklasifikasikan menjadi

• Strong entity type, yaitu entity type yang keberadaannya tidak bergantung

pada entity type lain (Connoly dan Begg, 2005, p354). Misalnya, kita dapat

mengidentifikasi setiap anggota staff secara unik menggunakan atribut

noStaff, yang merupakan primary key untuk tipe entity Staff.

• Weak entity type, yaitu entity type keberadaannya bergantung pada entity type

lain (Connoly dan Begg, 2005, p355).

2.2.12.2 Relationship type

Menurut Connolly dan Begg (2002, p334), relationship type adalah

sekumpulan hubungan antara satu atau lebih dari tipe-tipe entiti. Setiap tipe relasi

diberi nama sesuai dengan fungsinya.

Derajat dari relasi adalah jumlah dari partisipasi tipe entiti dalam sebuah

tipe relasi tertentu. Sebuah relasi yang berderajat dua disebut binary relationship,

Page 40: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

46

relasi yang berderajat tiga disebut ternary relationship, dan relasi yang berderajat

empat disebut quartenary relationship.

Recursive relationship adalah sebuah tipe hubungan relasional dimana

entiti yang sama berpartisipasi lebih dari satu dalam peran yang berbeda.

Hubungan relasional dapat diberikan nama peran untuk menandai setiap tipe

entiti yang berpartisipasi dalam hubungan relasional tersebut.

2.2.12.3 Atribut-atribut

Menurut Connolly dan Begg (2002, pp338-342), atribut adalah sifat dari

sebuah entiti atau tipe relasi. Sifat tertentu dari entiti disebut atribut. Atribut

menyimpan nilai dari setiap entity occurrence dan mewakili bagian utama dari

data yang disimpan di dalam basis data.

• Simple / Composite Attribute

Simple attribute adalah susunan atribut yang terdiri dari satu komponen

tunggal dengan keberadaan yang bebas. Simple attribute tidak bisa dibagi

lagi ke dalam komponen yang lebih kecil, misalnya posisi dan gaji dari entiti

pegawai.

Composite attribute adalah susunan atribut yang terdiri dari banyak

komponen dengan sebuah keberadaan yang bebas. Dalam hal ini beberapa

atribut dapat dipisahkan menjadi komponen yang lebih kecil lagi dengan

keberadaan yang bebas. Contohnya atribut alamat dari entity kantor cabang

yang mengandung nilai (jalan, kota, kode pos) bias dipecahkan menjadi

atribut sederhana yaitu jalan, kota, dan kode pos.

Page 41: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

47

• Single / multi-valued attribute

Single-valued attribute adalah atribut yang mempunyai nilai tunggal

untuk setiap kejadian atau sebuah entity type.

Multi-valued attribute adalah atribut yang mempunyai beberapa nilai

untuk setiap kejadian atau sebuah entity type. Contohnya atribut telepon pada

entity kantor cabang yang bisa memiliki lebih dari satu nomor telepon.

• Derived Attribute

Derived Attribute adalah atribut yang memiliki nilai yang dihasilkan

dari satu atau beberapa atribut lainnya, dan tidak harus berasal dari entity

yang sama.

• Attribute domain

Satuan nilai-nilai yang diperkenankan untuk satu atau lebih atribut. Setiap

atribut yang dihubungkan dengan sejumlah nilai disebut domain. Domain

mendefinisikan nilai-nilai yang dimiliki sebuah atribut atau sama dengan

konsep domain pada model relasi.

2.2.12.4 Key

• Candidate Key, adalah sekumpulan atribut minimal yang secara

unik mengenali setiap kejadian dalam tipe entiti Sebuah entiti dapat

mempunyai lebih dari satu candidate key. Sebuah candidate key tidak boleh

NULL.

Page 42: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

48

• Primary Key, kunci primer yang dipilih dari candidate key untuk mengenali

secara unik setiap kejadian dari sebuah tipe entiti. Pemilihan primary key

untuk sebuah entiti adalah berdasarkan pada pertimbangan panjang atribut,

jumlah minimal dari kebutuhan atribut, dan memenuhi syarat unik

• Alternate Key, adalah setiap candidate key yang tidak terpilih menjadi

primary key

• Composite Key, candidate key yang terdiri dari dua atribut atau lebih. Atribut

tersebut jika digabungkan akan menghasilkan sebuah record yang unik dalam

suatu entiti.

• Foreign Key, adalah sebuah kunci primer yang terhubung dengan entiti yang

lain, fungsinya sebagai penghubung antar entiti. Dengan adanya foreign key

maka relasi antar entiti saling berhubungan

2.2.12.5 Structural Constraints

Constraint harus mencerminkan pembatasan (restriction) pada

relationship sebagai perhatian (preceived) di dalam dunia nyata. Tipe utama dari

constraint di dalam relationship disebut multiplicity. Menurut Connolly (2005,

p356), multiplicity adalah jumlah (jangkauan) dari kemungkinan occurence

tunggal dari sebuah entity yang bias menghubungkan sebuah occurence tunggal

dari tipe entity yang berasosiasi melalui relationship tertentu.

Multiplicity menentukan cara dimana entity dihubungkan. Ini adalah

sebuah representasi dari aturan bisnis yang ditetapkan oleh user atau perusahaan.

Seperti yang disebutkan sebelumnya bahwa relationship berderajat dua yang

Page 43: BAB 2 LANDASAN TEORI - core.ac.uk · LANDASAN TEORI 2.1 Teori Umum ... Untuk membuat index pada suatu tabel. 5. Drop Index Untuk membuang atau menghapus index yang telah dibuat

49

disebut dengan binary, umumnya binary relationship bisa ditunjukkan sebagai

hubungan one:to:one (1:1), onet:to:many (1:*), atau many:to:many (*:*).

Multiplicity sesungguhnya mengandung dua constraint yang dipisahkan, yang

dikenal sebagai cardinality dan participation.

• Cardinality menggambarkan jumlah maksimum kemungkinan relationship

occurence untuk sebuah entity pengikutsertaan (participating entity) dalam

relationship yang diberikan.

• Participation adalah menetapkan semua atau beberapa occurrence yang

diikutsertakan dalam sebuah tipe relationship. Sebuah participation constraint

yang menunjukkan semua entity occurrence terkait dalam relationship tertentu

disebut sebagai mandatory participation. Sedangkan yang menunjukkan hanya

bebrapa disebut sebagai optional participation.