BAB 2 LANDASAN TEORI

advertisement
BAB 2
LANDASAN TEORI
2.1
Teori-Teori Umum
Pada subbab ini akan dijelaskan mengenai berbagai teori umum tentang
pengertian Database, Database Lifecycle, Entity Relationship Modeling, Normalisasi,
Metodologi Database Desain, serta penjelasan mengenai Tools dalam Database yang
akan dijelaskan di bawah ini.
2.1.1 Pengertian Database
Database adalah suatu koleksi data logical yang saling berhubungan dan
mendeskripsikan data tersebut, serta di desain untuk berelasi pada suatu
informasi yang dibutuhkan dalam suatu organisasi (Connolly, 2010: 65).
2.1.2 Pengertian Database Lifecycle
Database Lifecycle (Connoly, 2010: 314) merupakan tahapan dalam
merancang suatu sistem basis data. Siklus hidup basis data digambarkan seperti
berikut ini :
9
Gambar 2.1 Database Lifecycle
1. Database Planing
Suatu kegiatan pengelolaan yang dilakukan agar tiap tahap dalam daur
pembuatan dapat dijalankan secara efisien dan efektif.
2. System Definition
Menjelaskan tentang cakupan dan batasan dari aplikasi database, dan
menggambarkan kebutuhan user akan aplikasi database secara umum.
10
3. Ruquirements Collection and Analysis
Proses mengumpulkan dan menganalisa informasi tentang bagian dari
organisasi yang nantinya akan didukung oleh aplikasi database, dan
kemudian menggunakan informasi ini untuk mengetahui kebutuhan user
terhadap sistem yang baru.
4. Database Design
Perancangan dibagi menjadi tiga tahap yaitu konseptual, logikal, dan fisikal.
5. DBMS Selection
Memilih DBMS yang tepat untuk mendukung aplikasi database.
6. Application Design
Proses mendesain user interface dan membuat program aplikasi yang
digunakan untuk mengakses database.
7. Prototyping
Membuat suatu model dari aplikasi database, yang digunakan agar
perancang dan pemakai bisa mengevaluasi bagaimana sistem nantinya akan
berjalan dan juga melihat tampilannya.
8. Implementation
Merupakan wujud nyata dari database dan desain aplikasi. Implementasi
database dapat dilakukan dengan menggunakan Data Definition Language
dari DBMS yang sudah dipilih. Program aplikasi dapat diimplementasikan
dengan menggunakan bahasa pemograman generasi ketiga atau keempat.
11
9. Data Conversion and Loading
Mentransfer semua data yang ada ke dalam database yang baru dan konversi
semua aplikasi agar dapat berjalan pada database yang baru.
10. Testing
Proses menjalankan program aplikasi dengan tujuan agar menemukan
kesalahan dalam program.
11. Operational Maintenance
Proses merawat dan mengamati sistem setelah sepenuhnya dijalankan. Ketika
diperlukan permintaan baru akan dimasukan ke dalam database melalui
berbagai tahap dalam daur pembuatan atau lifecycle.
2.1.3
Entity Relationship Modeling
Entity
Relationship
mengidentifikasikan
hubungan
Modeling
antara
adalah
entitas.
suatu
Tujuannya
teknik
adalah
untuk
untuk
menghilangkan redudansi data (Connolly, 2010: 371).
2.1.4 Normalisasi
Normalisasi adalah suatu teknik dalam mendesain suatu database yang
dimulai dengan memeriksa hubungan (disebut functional dependency) antar
atribut (Connolly, 2010: 415).
Tujuan dari normalisasi adalah untuk mengidentifikasi sekumpulan yang
cocok hubungan yang mendukung persyaratan data perusahaan karakteristik
sekumpulan yang cocok hubungan meliputi berikut ini.:
12
•
Jumlah minimal atribut yang diperlukan untuk mendukung kebutuhan
data perusahaan.
•
Atribut dengan hubungan logis dekat (digambarkan sebagai
ketergantungan fungsional) ditemukan dalam hubungan yang sama.
•
Redundansi minimal, dengan atribut masing-masing diwakili hanya
sekali, dengan expection penting dari atribut bahwa dari seluruh atau
sebagian dari foreign key, yang penting untuk bergabung hubungan
yang terkait.
Jenis-jenis normalisasi:
1. First Normal Form(1NF)
UNF (bentuk unnormalized) tabel yang berisi satu atau lebih
kelompok berulang (Connolly, 2010: 430).
First normal form(1NF) suatu hubungan di mana persimpangan setiap
baris dan kolom berisi satu dan hanya satu nilai (Connolly, 2010:
430).
2. Second Normal Form (2NF)
Hubungan yang dalam bentuk normal pertama dan setiap atribut nonprimary-key sepenuhnya fungsional tergantung pada primary key
(Connolly, 2010: 434).
13
3. Third Normal Form (3NF)
Bentuk normal ketiga relasi adalah dalam bentuk normal pertama dan
kedua dan di mana tidak ada atribut kunci non primer transitif
tergantung pada primary key(Connolly, 2010: 436).
2.1.5 Metodologi Database Desain
Metodologi Database Desain terdiri dari Conceptual, Logical dan
Physical (Connolly, 2010: 465).
Conceptual Database Design adalah proses dari membangun sebuah
model data yang digunakan di perusahaan dan bebas dari detail implementasi
seperti Database Managemenr System (DBMS), program aplikasi, bahasa
pemrograman, platform hardware, masalah performa, dan pertimbangan fisikal
lainnya (Connolly, 2010: 467). Tahap-tahap yang dilakukan dalam conceptual
database design yaitu:
1. Mengidentifikasi tipe entitas.
2. Mengidentifikasi tipe relationship.
3. Mengidentifikasi dan mengasosiasikan atribut sesuai dengan tipe entitas dan
relationship.
4. Menentukan domain atribut.
5. Menentukan atribut candidate key dan primary key.
6. Mempertimbangkan penggunaan konsep enhance modeling (opsional).
7. Memeriksa model terhadap redudansi.
8. Memvalidasi model konseptual local dengan user transaction.
14
9. Me-review model data konseptual local terhadap kebutuhan user.
Logical Database Design adalah proses dari membangun sebuah model
data yang digunakan di perusahaan berdasarkan specific data model yang tidak
bergantung kepada DBMS, program aplikasi, bahasa pemrograman, platform
perangkat keras, masalah performa, dan pertimbangan fisikal lainnya (Connolly,
2004: p467). Tahap-tahap yang dilakukan dalam logical database design yaitu:
1. Hilangkan fitur-fitur yang tidak Kompatibel
2. Bentuk Table atau Relasi untuk Model Data Logikal
3. Memvalidasi Relasi Menggunakan Normalisasi
4. Memvalidasi Relasi dengan transaksi user
5. Tentukan Integrity Constraints
6. Pembentukan dan Memvalidasi Model Data Logikal Global
Physical Database Design adalah proses menghasilkan deskripsi
implementasi database pada penyimpanan sekunder (Connolly, 2010: 467).
Tahap ini menggambarkan relasi dasar organisasi file dan indeks-indeks untuk
mencapai akses yang efisien ke data dan beberapa kendala integritas serta
keamanan data. Tahap-tahap yang dilakukan dalam physical database design
yaitu:
1. Perancangan Base Relation
2. Merancang Constraint
3. Analisis Transaksi
4. Pembuatan index untuk setiap entitas
15
5. Estimasi Disk Space
6. Merancang User View
7. Merancang Mekanisme Keamanan
2.1.6 Tools dalam Database
Tools yang di gunakan dalam sebuah database adalah menggunakan
beberapa alat (tools) seperti DFD (Data Flow Diagram) dan ERD (Entity
Relationship Diagram).
2.1.6.1 DFD (Data Flow Diagrams)
Data flow diagrams adalah alat diagram serbaguna. Dengan hanya
empat simbol, diagram aliran data dapat mewakili physical dan logical
sistem informasi. Empat simbol yang digunakan dalam DFD ini
merupakan data flow, data store, process dan source/sink (atau entitas
eksternal) (Valacich, 2001: 147).
2.1.6.1.1 Komponen Data Flow Diagram
a. Process
Process adalah pekerjaan atau tindakan dilakukan
pada data sehingga mereka berubah, disimpan, atau
di distribusikan (Valacich, 2001: 148).
16
b. Data flow
Data flow adalah data yang bergerak dan berpindah
sebagai satu unit dari satu tempat di dalam sebuah
sistem yang lain (Valacich, 2001: 147).
c. Data Store
Data store adalah data pada saat istirahat. Data
store dapat mewakili salah satu dari banyak lokasi
physical yang berbeda untuk data termasuk folder
file, satu atau lebih file berbasis komputer
(Valacich, 2001: 147).
d. Source / sink
Source / sink adalah asal dan atau tujuan dari data
(Valacich, 2001: 147).
17
2.1.6.2 ERD (Entity Relationship Diagram)
Entity Relationship Diagram (ERD) adalah representasi rinci,
logical, dan grafis dari data untuk suatu organisasi atau area bisnis. Entity
Relationship Diagram (ERD) adalah model entitas dalam lingkungan
bisnis, hubungan atau asosiasi antar entitas, dan atribut atau sifat-sifat
dari kedua entitas dan hubungan mereka (Valacich, 2001: 191).
2.2 Teori-Teori Khusus
Dalam subbab ini akan menerangkan berbagai teori-teori khusus yang
berhubungan dengan topik yang di bahas mengenai pengertian Leadership, pengertian
PHP, pengertian MySQL, pengertian Code Igniter Framework, dan pengertian jQuery
yang akan dijelaskan dibawah ini.
2.2.1 Pengertian Leadership
Leadership atau kepemimpinan dari berbagai pemahaman para ahli
kepemimpinan, secara umum adalah kemampuan mempengaruhi orang lain
untuk melakukan sesuatu dan mencapai tujuan.
Fungsi utama seorang pemimpin adalah menciptakan sebanyak mungkin
pemimpin, bukan pengikut (Afriansyah, 2012: 5).
Pendapat di era modern mengatakan bahwa kepemimpinan adalah suatu
pengetahuan dan keahlian (knowledge and skill), yang dalam implikasinya setiap
18
orang dapat mempelajari ilmu kepemimpinan, asal mereka mau belajar dan
berlatih sehingga menjadi ahli dalam memimpin (Afriansyah, 2012: 8).
2.2.2 Pengertian PHP
PHP adalah bahasa script di sisi server yang didesain secara khusus untuk
jaringan. Dalam halaman HTML, dapat ditambahkan kode PHP yang akan di
eksekusi tiap kali halaman di kunjungi. Kode PHP akan diterjemahkan di
jaringan server dan men-generate HTML atau output yang dilihat oleh
pengunjung (Welling, 2001: 2).
PHP adalah produk open source. Setiap orang dapat menggunakannya,
mengubahnya, dan mendistribusikan ulang semua tanpa perubahan.
Awalnya PHP merupakan kependekan dari Personal Home Page. PHP
dibuat pertama kali oleh Rasmus Lerdorf pada 1994, yang pada awalnya dibuat
untuk menghitung jumlah pengunjung pada homepage nya (Septian, 2011: 4).
2.2.3 Pengertian MySQL
Pengertian MySQL menurut Welling (2001: 3), MySQL adalah relational
database management sistem yang cepat dan kuat. Sebuah basis data dapat
membuat pengguna untuk menyimpan, mencari, mengurutkan dan mendapatkan
data dengan mudah. Server MySQL mengendalikan akses ke dalam data untuk
memastikan bahwa para pengguna dapat bekerja dalam waktu yang bersamaan,
untuk mendukung akses secara cepat dan memastikan hanya pengguna yang
telah terisolasilah yang mendapatkan hak akses.
19
MySQL menggunakan bahasa SQL(Structured Query Language), yaitu
bahasa query basis data yang baku bagi seluruh dunia. MySQL kembali di
duplikasikan sejak tahun 1996, tetapi sejarah pengembangannya telah dilakukan
dari tahun 1979. MySQL tersedia dengan lisensi open source, tetapi lisensi
komersial pun tersedia apabila diperlukan (Welling, 2001: 3).
Kelebihan MySQL menurut Welling (2001: 5), terdapat beberapa
kelebihan dari MySQL, yaitu :
a. Performance
MySQL begitu cepat dalam pemrosesan data.
b. Low Cost
MySQL tersedia dan dapat digunakan tanpa dikenakan biaya,
dibawah lisensi open source. Namun, tersedia dengan biaya yang
sangat murah, dibawah lisensi komersial, jika dibutuhkan untuk
aplikasi pengguna-nya.
c. Ease of Use
Kebanyakan dari berbagai sistem basis data modern menggunakan
SQL. Jika pengguna memilik RDBMS yang lain, pengguna tidak
akan menghadapi masalah yang berarti ketika beradaptasi dengan
SQL. Bahkan MySQL lebih mudah dalam persiapan dibandingkan
dengan produk lain yang sekelas.
20
d. Probability
MySQL dapat digunakan dan diimplementasikan pada berbagai
sistem UNIX dan pada Microsoft Windows.
e. Source Code
Sama seperti pemograman PHP, user dapat mengubah dan
menambahkan source code bagi MySQL.
2.2.4 Pengertian Code Igniter Framework
2.2.4.1 Framework
Framework sebagaimana arti dalam bahasa indonesianya yaitu
kerangka kerja dapat diartikan sebagai kumpulan dari library (class) yang
dapat diturunkan, atau dapat langsung dipakai fungsinya oleh modulmodul atau fungsi yang akan kita kembangkan (Septian, 2011: 7).
2.2.4.2 Framework PHP
PHP Framework adalah sebuah lingkungan pengembangan
aplikasi berbasis php yang berisi sejumlah class yang telah dibuat agar
digunakan kembali untuk membuat aplikasi. Berbagai jenis class ini
tergantung tujuan dari PHP framework tersebut, dan php framework yang
satu dengan framework yang lain kemungkinan berbeda. Sebagian besar
php framework yang tersedia saat ini berbasis MVC (model view
controller). Ini adalah model php framework yang modern (Septian,
2011: 8).
21
2.2.4.3 Code Igniter
Code Igniter adalah aplikasi open source yang berupa framework
dengan model MVC (Model, View, Controller) untuk membangun
website dinamis. Dengan menggunakan PHP Code Igniter akan
memudahkan developer untuk membuat aplikasi web dengan cepat dan
mudah dibandingkan dengan membuat dari awal (Septian, 2011: 9).
2.2.4.4 MVC (Model View Controller)
MVC
adalah
sebuah
pendekatan
perangkat
lunak
yang
memisahkan aplikasi logika dari presentasi. Ini meminimalkan script dari
halaman-halaman web sejak script presentasi (HTML, CSS, JavaScript,
dsb) dipisahkan dari PHP scripting, istilah umum yang familiar adalah
menghindari terjadinya spaghetti code (Septian, 2011: 9).
a. Model
Model merepresentasikan struktur data yang dibangun.
Umumnya kelas model berisi fungsi-fungsi yang membantu
developer untuk mengelola, memasukkan, dan mengupdate
informasi dalam database (Septian, 2011: 9).
b. View
View adalah informasi yang disajikan untuk user, berupa
tampilan atau user interface. View umumnya adalah tampilan
sebuah halaman web itu sendiri, tetapi dalam Code Igniter,
view dapat juga menjadi bagian-bagian atau penggalanpenggalan halaman seperti header atau footer. View dapat juga
22
sebagai halaman RSS, atau tipe-tipe halaman lainnya (Septian,
2011: 9).
c. Controller
Controller bertugas sebagai penghubung antara Model, View,
dan beberapa resource lainnya yang dibutuhkan untuk
memproses HTTP request untuk meng-generate sebuah
halaman web (Septian, 2011: 9).
2.2.5 Pengertian jQuery
jQuery merupakan library Java Script yang banyak digunakan saat ini.
jQuery di buat oleh John Resig pada tahun 2006. Banyak website yang
memanfaatkan library ini untuk menyederhanakan fungsi-fungsi yang ada pada
JavaScript atau Ajax. Sesuai dengan slogannya jQuery sendiri “Write less, do
more”, menulis sedikit namun dapat mengerjakan banyak hal, sehingga anda
dapat menghemat coding program anda (Utomo, 2012: 62).
2.2.6 Pengertian HTML ( Hypertext markup Language)
Menurut Connolly, Dan Begg (2010: 1031) HTML adalah Format
Dokumen bahasa yang digunakan untuk merancang halaman web. HTML adalah
sistem untuk membuat naik atau menandai, sebuah dokumen sehingga dapat
dipublikasikan di web. HTML mendefinisikan apa yang umumnya ditularkan
antara node dalam network. HTML telah dikembangkan dengan maksud agar
berbagai macam jenis perangkat harus dapat memanfaatkan informasi di web: PC
dengan tampilan grafis dari kedalaman resolusi dan warna yang bervariasi,
23
telepon seluler, perangkat genggam, perangkat untuk pidato untuk input dan
output, dan sebagainya.
24
Download