BAB 2 TINJAUAN PUSTAKA
2.1
Teori-Teori Umum 2.1.1 Pengertian Sistem Basis Data Menurut Connolly dan Begg (2010, p54) Sistem Basis Data adalah kumpulan dari program aplikasi yang berinteraksi dengan database bersama DBMS dan database itu sendiri. Dengan demikian dapat disimpulkan bahwa Sistem Basis Data adalah skumpulan data yang berhubungan yang digunakan oleh sistem dengan menggunakan DBMS (Database Management System). 2.1.2 Pengertian Data Menurut Connolly dan Beg (2010, p313) Data merupakan komponen yang paling penting dalam DBMS, berasal dari sudut pandang
end-user.
Data
bertindak
sebagai
jembatan
yang
menghubungkan antara komponen manusia dengan komponen mesin. 2.1.3 Pengertian Database Management System Menurut Management
Connolly
System
dan
adalah
Begg
(2010,
p66)
Database
sebuah
sistem
software
yang
memungkinkan user untuk mendefinisikan, membuat, menjaga, dan memiliki akses ke basis data. DBMS memungkinkan user untuk mendefinisikan basis data dengan menggunakan DDL (Data Definition Language). DBMS juga memungkinkan user dalam melakukan insert, update dan delete, dan mendapatkan data dari basis data melalui DML (Data Manipulation Language).
7
8
2.1.3.1 Komponen DBMS Menurut Connolly dan Begg (2010, p68) ada lima komponenkomponen
dalam
DBMS
yaitu
Hardware,
Software,
Data,
Prosedures, dan People :
Gambar 2.1 Komponen DBMS (Connolly dan Begg, 2010, p68)
1. Hardware (Perangkat Keras) DBMS dan aplikasi membutuhkan hardware untuk dapat dijalankan. 2. Software (Perangkat Lunak) Perangkat-perangkat
lunak
yang
dibutuhkan
dalam
menjalankan DBMS. Perangkat lunak ditulis dengan bahasa pemrograman third-generation, seperti C, C++, C#, Java, Visual Basic atau Pascal. 3. Data Data adalah bagian penting dalam DBMS karena data merupakan penghubung antara komponen mesin dan manusia. 4. Procedure Procedure
adalah
bagaimana
aturan-aturan
dalam
menggunakan basis data. User membutuhkan procedure yang terdokumentasi tentang cara menjalankan sebuah sistem. 5. People Merupakan komponen terakhir yang terlibat dengan sistem, misalnya data administrators, database administrators, database designers, application developers, dan end users.
9
2.1.4 Pengertian Database Lifecycle Menurut Connolly dan Begg (2010,p313) Database Lifecycle merupakan bagian yang terpenting dari sistem basis data karena berhubungan dengan sistem informasi yang ada. Berikut ini adalah langkah-langkah dalam Database Lifecycle:
Gambar 2.2 Database Lifecycle (Connolly dan Begg, 2010, p314)
10
2.1.4.1 Databse Planning Menurut Connolly dan Begg (2010, p313) Database Planning adalah merencanakan bagaimana tahapan dalam Database Lifecycle bisa direalisasikan seefektif dan seefisien mungkin. 2.1.4.2 System Definiton Menurut Connolly dan Begg (2010, p316) System Defnition menggambarkan ruang lingkup dan batasan dari sistem basis data, termasuk user view. User view menggambarkan hal-hal yang dibutuhkan oleh sistem basis data dilihat dari sudut pandang jabatan. 2.1.4.3 Requirement Collection and Analysis Menurut Connolly dan Begg (2010, p316) Requirements Collection and Analysis adalah proses mengumpulkan data dan menganalisa informasi tentang bagian dari organisasi yang akan didukung oleh sistem basis data dan memakai informasi ini untuk mengidentifikasi kebutuhan dari sistem baru yang akan dirancang. Beberapa teknik yang digunakan dalam pengumpulan data dan analisis ini adalah fact-finding techniques yang terdiri dari: 1. Memeriksa Dokumentasi Menganalisis
data-data
yang
telah
dikumpulkan
dari
perusahaan untuk mengetahui sistem yang sedang berjalan. 2. Wawancara Proses pengumpulan informasi berupa fakta-fakta yang dilakukan dengan tanya jawab dengan narasumber. 3. Observasi Metode yang dilakukan dengan cara mengamati langsung jalannya sistem dalam perusahaan untuk mendapatkan informasi yang lebih detail. 4. Penelitian Mencari informasi yang berhubungan menggunakan jurnaljurnal, buku referensi dan sumber internet.
11
5. Kuisioner Pengumpulan
data
dengan
menyediakan
pertanyaan-
pertanyaan yang berhubungan dengan proses bisnis. Ada dua tipe kuisioner yaitu open-ended question dan close-ended question.
2.1.4.4 Database Design Menurut Connolly dan Begg (2010, p320) Database design adalah sebuah proses dalam menciptakan perancangan untuk database yang akan mendukung operasi dan tujuan perusahaan. Ada 4 pendekatan dalam perancangan database yaitu: a. Top-down Pembentukan model data yang berisi entitas high-level dan relasi yang
kemudian
menggunakan
pendekatan top-down
secara
berturut-turut untuk mengidentifikasi entitas lower level, relasi, dan atribut lainnya. b. Bottom-up penggabungan antar atribut yang dikelompokkan ke dalam suatu relasi yang merepresentasikan tipe dari entitas dan relasi antar entitas. c. Inside-out Berhubungan dengan bottom-up tetapi sedikit berbeda dengan identifikasi awal entitas utama yang kemudian menyebar ke entitas, relasi, dan atribut terkait lainnya yang diidentifikasi terlebih dahulu. d. Mixed Menggunakan pendekatan bottom-up dan top-down untuk bagian yang berbeda digabungkan.
Proses perancangan database terdiri dari 3 tahapan yaitu: a.
Conceptual database design Proses pembuatan model yang digunakan agar tidak tergantung pada masalah fisik.
12
b.
Logical database design Proses tahapan model informasi yang digunakan berdasarkan model khusus, dan menggambarkan proses yang terjadi secara rinci dan berurutan.
c.
Physical database design Proses pengukuran performa basis data yang akan dibuat. Dengan mempertimbangkan spesifikasi penyimpanan sekunder yang akan digunakan.
2.1.4.5 DBMS Selection Menurut Connolly dan Begg (2010, p325) DBMS Selection adalah pemilihan DBMS yang sesuai untuk mendukung sistem basis data yang dibuat. Langkah-langkah dalam pemilihan DBMS adalah sebagai berikut: a) Menetapkan kerangka referensi belajar. b) Daftar sederhana dari dua atau tiga topik. c) Mengevaluasi produk. d) Merekomendasikan seleksi dan menghasilkan laporan.
2.1.4.6 Application Design (Perancangan Aplikasi) Perncangan dari user interface dan application programs yang digunakan dan proses dari basis data.
2.1.4.7 Prototyping Menurut Connolly dan Begg (2010, p333) Prototyping adalah membuat model dari sistem basis data. Tujuan utama prototyping ini adalah agar user bisa mengetahui rancangan basis data yang nantinya dibuat memenuhi kebutuhan user atau tidak.
13
2.1.4.8 Implementation Menurut Connoly dan Begg (2010, p333) Implementation adalah realisasi fisik basis data dan aplikasi desain. Implementation
sistem
basis
data
tercapai
dengan
menggunakan Data Definition Language (DDL) dan bagian dari program
aplikasi
ini
adalah
database
transaction
yang
diimplementasikan menggunakan Data Manipulation Language (DML).
2.1.4.9 Data Conversion and Loading Menurut Connolly dan Begg (2010, p334) Data Conversion and Loading adalah mentransfer semua data ke dalam basis data yang baru dan mengkonversi semua aplikasi yang ada untuk dijalankan pada sistem basis data yang baru.
2.1.4.10 Testing Menururt Connolly dan Begg (2010, p334) Testing adalah proses menjalankan sistem basis data baru dengan maksud menemukan kesalahan atau apakah sistem sudah baik atau belum. 2.1.4.11 Operational Maintenance Menurut Connolly dan Begg (2010, p335) Operational Maintenance adalah proses pemantauan dan pemeliharaan sistem basis data. 2.1.4.12 Data Flow Diagram (DFD) Menurut Whitten dan Bentley (2007, p317), Data Flow Diagram adalah model proses yang digunakan untuk menggambarkan aliran data melalui sebuah sistem. Tingkatan dalam DFD:
14
a) Diagram Konteks Megnggambarkan seluruh input atau output ke sistem. Diagram Konteks ini merupakan level tertinggi dari DFD. b) Diagram Nol Megnggambarkan
rincian
dari
diagram
konteks
dan
memperlihatkan data store yang digunakan. c) Diagram Rinci Merupakan rincian diagram diatasnya.
2.1.4.13 Rich Picture Menurut Mathiassen, Munk-Madsen, Andreas, Nielsen, Stage (2000, p26), Rich Picture adalah gambaran informal yang mempresentasikan illustrator tentang sebuah situasi. Rich Picture harus berisi banyak informasi dan terbuka pada interpolasi, juga menyajikan proses dan struktur secara koheren. 2.1.4.14 State Transition Diagram (STD) Menurut O’Brien dan Marakas (2006, p135), State transition diagram
menggambarkan
bermacam-macam
keadaan
sebuah
komponen sistem yang terdapat dalam relasi pada kejadian-kejadian atau kondisi-kondisi yang menyebabkan sebuah perubahan dari sebuah keadaan ke keadaan lainnya. 2.1.4.15 Entitas kuat dan lemah Menurut Connolly dan Begg (2010, p383) Entitas kuat adalah sebuah tipe entitas yang kebradaannya tidak bergantung pada beberapa entitas yang lain. Sedangkan entitas lemah adalah entitas yang keberadaannya bergantung pada entitas yang lainnya.
15
Gambar 2.3 Strong Entity dan Weak Entity 2.1.4.16 Structural Constraint Menurut Connoly dan Begg (2010, p385) Multiplicity adalah sejumlah
kejadian
yang
mungkin
terjadi
dari
entitas
yang
berhubungan dengan kejadian tunggal melalui realtionship tertentu. Multiplicity menggambarkan bagaimana entitas saling berhubungan. Ada tiga tipe relatonship antara lain: 1.
One-to-One (1:1) Relationship terjadi apabila setiap himpunan entitas A hanya berhubungan dengan satu himpunan entitas B.
2.
One-to-Many
(1:*)
Relationship
terjadi
apabila
setiap
himpunan entitas A boleh berhubungan lebih dari satu himpunan entitas B. Sebaliknya setiap himpunan dari entitas B hanya boleh berhubungan dengan satu himpunan entitas A.
3.
Many-to-Many (*:*) Relationship terjadi apabila setiap himpunan entitas A berhubungan lebih dari satu himpunan entitas B, sebaliknya setiap himpunan entitas B juga boleh berhubungan lebih dari satu himpunan entitas A.
16
2.1.4.17 Normalisasi Menurut Connolly dan Begg (2010, p416) Normalisasi adalah teknik yang digunakan untuk memproduksi sekumpulan relasi dengan properti yang diinginkan dan mengingatkan kebutuhan data dari suatu enterprise. Tujuan dari normalisasi adalah untuk mengidentifikasikan seperangkat relasi yang sesuai yang dapat mendukung kebutuhan data pada sebuah perusahaan. Ada beberapa tahap dalam normalisasi yaitu: a) Unnormalized Form (UNF) b) First Normal Form (1NF) c) Second Normal Form (2NF) d) Third Normal Form (3NF)
2.1.5
Metodologi Perancangan Basis Data Menurut Connolly dan Begg (2010, p466), metodologi perancangan
adalah sebuah pendekatan terstruktur yang mana menggunakan prosedur, teknik, peralatan, dan bantuan dokumentasi untuk mendukung dan memfasilitasi proses merancang. Berikut ini dijelaskan mengenai tiga tahap perancangan database: 1. Perancangan Konseptual Proses membangun sebuah data model yang digunakan oleh perusahaan, bersifat independent terhadap seluruh pertimbangan fisikal yang ada. Pada tahapan ini, perancangan dimulai dengan membuat model data konseptual dari perusahaan terhadap rincian implementasi
seperti
target
DBMS,
application
programs,
programmming language, hardware platform, performance issues, atau physical consideration lainnya. (Connolly and Begg, 2010: 471). Langkah-langkah yang terdapat dalam conceptual database design adalah:
17
1. Mengidentifikasi tipe entitas Bertujuan untuk mengidentifikasi tipe entitas dan objek utama yang sesuai dengan kebutuhan user. 2. Mengidentifikasi tipe relasi Bertujuan
untuk
megnidentifikasi
important
relationships yang muncul antar tipe entitas. 3. Mengidentifikasi dan mengasosiasikan atribut dengan entitas atau tipe realsi Bertujuan untuk menghubungkan atribut-atribut terkait dengan entitas atau tipe yang telah disesuaikan.
4. Menentukan domain atribut Bertujuan untuk menentukan domain untuk attribute yang terdapat pada model data konseptual. Domain merupakan sekumpulan
nilai
dari
satu
atau
lebih
atribut
yang
menggambarkan nilainya. 5. Menentukan candidate, primary, dan alternate key attributes Bertujuan untuk mengidentifikasi candidate keys untuk setiap entitas dan jika terdapat lebih dari satu candidate keys, pilih satu sebagai primary key dan yang lainnya sebagai alternate keys. 6. Mempertimbangkan
menggunakan
enhanced
modeling
concepts (optional) Bertujuan untuk mempertimbangkan penggunaan dari modeling concepts seperti specialization atau generalization, aggregation, dan composition. 7. Memeriksa redudansi pada model Bertujuan untuk memeriksa redudansi yang terdapat pada model. 8. Memvalidasi konseptual data model terhadap transaksi user Bertujuan untuk memastikan bahwa conceptual data model mendukung transaksi-transaksi yang diperlukan. 9. Meninjau data model konseptual dengan pengguna
18
Bertujuan untuk memeriksa kembali data model konseptual dan memastikan bahwa data model tersebut sudah benar dan sesuai dengan kebutuhan perusahaan.
2. Perancangan Logikal Proses membangun sebuah data model yang digunakan perusahaan
berdasarkan
sebuah
spesifik
model
data,
tetapi
independent terhadap DBMS tertentu dan pertimbangan fisik lainnya. (Connolly dan Begg 2010, p467) Menurut Connolly dan Begg (2010, p490), langkah-langkah yang terdapat dalam logical databse design adalah: 1. Menurunkan relasi untuk data model logikal Bertujuan untuk membangun relasi logical data model yang mempresentasikan entitas,
relasi, dan atribut yang telah
teridentifikasi. 2. Memvalidasi relasi dengan normalisasi Bertujuan untuk melakukan validasi atas relasi yang terdapat logical data model dengan menggunakan teknik normalisasi. 3. Memvalidasi realsi terhadap transaksi user Bertujuan untuk memastikan bahwa relasi dalam logical data model dapat mendukung transaksi-transaksi yang diperlukan. 4. Memeriksa integritas constraints Bertujuan untuk memeriksa integrity constrains sudah direpresentasikan di dalam logical data model atau belum. 5. Meninjau logikal data model dengan user Bertujuan untuk memeriksa kembali logical data model dengan user untuk meyakinkan bahwa model data yang menjadi representasi yang sesuai dengan kebutuhan perusahaan adalah benar. 6. Menggabungkan logical data models menjadi global model (optional)
19
Bertujuan untuk menggabungkan logical data model ke dalam sebuah global logical data model yang merepresentasikan semua user view dari database. 7. Memeriksa perkembangan Bertujuan untuk menentukan perubahan yang diperlukan pada masa mendatang dan menilai apakah logical data model dapat menyesuaikan terhadap perubahan yang terjadi.
3. Perancangan Fisikal Proses menghasilkan sebuah deskripsi mengenai implementasi dari basis data pada secondary storage yang menjelaskan base relations, file organizations, dan indexes yang digunakan untuk memperoleh akses efisien terhadap data dengan integrity constrains terkait dan security measures. (Connolly dan Begg 2010, p467) Menurut Connolly dan Begg (2010, p524) langkah-langkah yang terdapat dalam physical database design adalah: 1. Menerjemahkan model data logikal ke DBMS yang dituju Bertujuan untuk menghasilkan sebuah skema relasi basis data dari logical data model yang dapat diimplementasikan di DBMS yang dituju. Proses ini terdiri dari 3 langkah yaitu: a) Desain relasi dasar b) Desain representasi dari derrived data c) Desain general constraints 2. Desain organisasi file dan indeks Bertujuan untuk mengoptimalkan file organization untuk menyimpan base relation dan indexes yang diperlukan agar memperoleh kinerja maksimal. Terdapat beberapa aktifitas pada tahap ini sebagai berikut: a) Menganalisa transaksi b) Memilih organisasi file
20
c) Memilih indeks •
Primary Index Menurut Connolly dan Beg (2010, p495), sebuah index disebut primary index jika atribut yang terpilih sebagai index merupakan key dari sebuah relasi.
•
Secondary Index Menurut Connolly dan Beg (2010, p495), secondary index menyediakan mekanisme untuk menentukan sebuah key tambahan untuk sebuah relasi dasar yang bisa digunakan untuk melakukan retreive data secara efisien.
d) Mengestimasi kebutuhan penyimpanan disk
3. Desain user views Bertujuan untuk merancang user view yang diidentifikasikan selama requirement collection dan menganalisa penyimpanan dari Database System Developement Lifecycle. 4. Merancang mekanisme keamanan Bertujuan untuk merancang mekanisme keamanan basis data yang dikhususkan oleh user selama proses requirement dan collection pada Database System Developement Lifecycle. 5. Mempertimbangkan pengenalan dari pengendalian redudansi Bertujuan untuk menentukan pengenalan dari pengendalian redudansi
yang
sesuai
dengan
normalisasi
agar
sistem
memberikan performa yang lebih baik. 6. Memonitor dan mengatur sistem operasional Bertujuan
untuk
memonitor
sistem
operasional
dan
meningkatkan performa sistem dalam memperbaiki pengambilan keputusan.
21
2.1.6
Teori Desain Eight Golden Rules Menurut Shneiderman dan Plaisant (2010, p88), delapan tahapan dalam merancang antar muka untuk pengguna yaitu: a) Konsistensi Layar user interface harus dibuat konsisten antara satu dengan yang lainnya untuk memudahkan user. b) Melayani Kebutuhan Universal Menyediakan fitur bagi pengguna pemula yang dapat memberi kebutuhan universal. c) Memberikan umpan balik yang informatif Setiap
tindakan
yang
dilakukan
oleh
pengguna
harus
mendapatkan umpan balik yang memudahkan pengguna dalam mengetahui feedback dari tindakannya. d) Merancang dialog untuk menghasilkan suatu penutupan Urutan tindakan harus berurutan dari awal, tengah, dan akhir. Feedback yang informatif pada akhir tindakan memberikan kepuasan bagi user. e) Memberikan penanganan kesalahan yang sederhana Sistem harus dibuat untuk meminimalkan kesalahan bagi pengguna. Jika kesalahan terjadi, sistem harus menyediakan mekanisme yang mudah dipahami untuk penanganan kesalahan. f) Memungkinkan Pembalikan Aksi yang Mudah Fitur ini memudahkan pengguna, karena pengguna tahu bahwa kesalahan dapat dibatalkan dan pengguna dapat mengeksplorasi pilihan. g) Mendukung Pengendali Kontrol secara Internal Sistem akan merespon tindakan yang dilakukan pengguna dan pengguna yang mengontrol sistem bukan sistem yang mengontrol pengguna. h) Mengurangi beban ingatan jangka pendek Keterbatasan pemrosesan informasi manusia dalam ingatan jangka pendek mengharuskan tampilan dibuat sederhana.
22
2.1
Teori-Teori Khusus yang Berhubungan dengan Topik 2.2.1
Pengertian Hypertext prpocessor (PHP) Menurut Welling dan Thomson (2009, p2), PHP adalah bahasa
server-side scripting yang didesain khusus untuk web. Dalam halaman HTML, dapat dimasukkan code PHP yang akan dieksekusi setiap kali halaman dikunjungi. PHP code diterjemahkan di web-server dan diubah menjadi HTML atau output lain yang akan dilihat oleh pengguna. PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP banyak dipakai untuk memrogram situs web dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain. 2.2.2 Pengertian MySQL Menurut Welling dan Thomson (2009, p3), MySQL merupakan Relational Database Management System (RDBMS) yang sangat cepat. Server MYSQL mrngatur akses terhadap data untuk memastikan bahwa beberapa pengguna dapat mengakses basis data bersamaan, menyediakan akses yang cepat terhadap data, dan memastikan hanya pengguna yang memiliki hak akses yang dapat mengakses data. 2.2.3
HyperText Markup Language (HTML) Menurut Jon Duckett (2010, p2), HTML merupakan bahasa yang
paling sering digunakan dalam pengembangan sebuah web. HTML adalah Markup Language yang berarti bahasa yang ditambahkan dalam dokumen untuk memberikan arti tersendiri terhadap dokumen. HTML memberitahu web browser bagaimana cara menampilkan konten. HTML memisahkan konten (kata-kata, gambar, audio, video dan lainnya) dari "penampilan".
2.2.4
Pengertian Cascading Style Sheet (CSS) Menurut Jon Duckett (2010, p243), Cascading Style Sheet berfungsi
untuk mengontrol bentuk dari halaman, termasuk warna dan ukuran font, lebar dan warna garis, dan jumlah spasi di antara benda yang berada di dalam halaman. Spesifikasi CSS bekerja sesuai dengan peraturan yang ditentukan bagaimana sejumlah elemen seharusnya muncul di dalam dokumen.
23
2.2.5 Pengertian Three-Tier Menurut Altekar (2004, p13), Dalam arsitektur Three-Tier, database dan application dipisahkan. Setiap layer dijalankan pada host nya masingmasing. Untuk mengoptimasi kinerja pada konfigurasi ini, penambahan user dapat dilakukan. Client membangung komunikasi dengan application server. Application server kemudian menciptakan koneksi ke database server.
2.2
Hasil Penelitian Sebelumnya • Menurut Jurnal JURNAL SIGMATA | LPPM AMIK SIGMA Volume 2 : Nomor : 1 Edisi : Oktober 2013 – Maret 2014 yang dibuat oleh Nurhayani dengan judul “Sistem Informasi Pendaftaran Mahasiswa Baru (PMB) di Amik Sigma Palembang”. Jurnal ini membahas tentang Sistem Informasi pendaftaran mahasiswa baru secara online pada AMIK SIGMA Palembang dengan menggunakan bahasa pemprograman PHP dan MySQL sebagai basis datanya, sehingga proses input dan olah data calon mahasiswa nantinya dapat dihasilkan informasi yang cepat, tepat dan akurat sesuai dengan kebutuhan. Sehingga diperoleh sebuah sistem informasi pendaftaran dengan hasil yang diinginkan berupa laporan yang cepat dan akurat. • Menurut Jurnal Sisitem Informasi STMIK GI MDP yang dibuat oleh Rahmat Gunawan, Erny Chandra, Iis Pradesan pada tahun 2010 dengan judul “Sistem Informasi Pengelolaan Data Kepegawaian pada PT. Sigap Panca Marga” Jurnal ini membahas tentang sebuah Sistem Informasi Pengelolaan Data Kepegawaian pada PT. Sigap Panca Marga yang berbasis web dengan tujuan untuk memudahkan pihak perusahaan dalam melakukan manajemen data dan informasi kepegawaian, dan memudahkan untuk melihat informasi laporan pendataan kepegawaian baik dalam bentuk laporan bulanan maupun laporan tahunan.
24