• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI"

Copied!
67
0
0

Teks penuh

(1)

LANDASAN TEORI

2.1 Teori Umum

Pada subbab ini akan dijelaskan mengenai definisi sistem, definisi data dan informasi, internet, basis data, Database Management System (selanjutnya disingkat DBMS), Web Database System, Structure Query Language (selanjutnya disingkat SQL), dan UML.

2.1.1 Definisi Sistem

Sistem adalah suatu cara untuk mengumpulkan, mengatur, mengendalikan, dan menyebarkan informasi ke seluruh organisasi (Connolly dan Begg, 2005, p282).

Menurut O’Brien dan Marakas (2006, p22), sistem adalah kumpulan elemen yang saling terhubung atau berinteraksi membentuk suatu kesatuan atau sekumpulan komponen yang saling terhubung dan bekerja sama untuk mencapai sasaran dengan menerima input dan menghasilkan output dalam sebuah proses transformasi yang terorganisir.

Sedangkan menurut Hoffer et. al. (1999, p41), sistem merupakan suatu set yang terkait antar komponen dengan batasan teridentifikasi dan mampu bekerjasama untuk beberapa tujuan.

Jadi, sistem adalah sekumpulan objek yang saling berhubungan dan berkumpul bersama-sama untuk melakukan suatu kegiatan atau menyelesaikan suatu masalah tertentu.

(2)

2.1.2 Definisi Data dan Informasi

Menurut Whitten et. al. (2004, p27), data adalah fakta mentah tentang orang, tempat, kejadian, dan barang yang penting dalam suatu organisasi di mana setiap fakta itu hampir tidak mempunyai arti.

Berdasarkan O’Brien dan Marakas (2006, p29), data adalah hasil observasi atau fakta mentah, biasanya mengenai kejadian atau transaksi bisnis.

Sedangkan menurut Turban et. al. (2005, p38), data adalah deskripsi dasar dari suatu benda, kejadian, kegiatan, dan transaksi yang direkam, diklasifikasikan, dan disimpan tetapi tidak diorganisasikan untuk menyampaikan arti yang spesifik.

Turban et. al. (2005, p38) juga mengungkapkan bahwa informasi adalah data yang telah diorganisasikan agar data itu mempunyai arti dan nilai bagi penerima.

Menurut Whitten et. al. (2004, p27), informasi adalah data yang telah diproses atau diorganisasikan menjadi bentuk yang lebih berarti bagi seseorang. Informasi dibentuk dari kombinasi data yang mempunyai arti bagi penerima.

Menurut Laudon dan Laudon (2010, p46), informasi adalah data yang sudah diolah menjadi bentuk yang berarti dan berguna bagi manusia.

Jadi, dapat disimpulkan bahwa data adalah sesuatu yang belum memiliki arti atau makna bagi penerimanya dan memerlukan suatu pengolahan melalui berbagai analisis sehingga dapat melahirkan berbagai informasi, sedangkan informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan berarti bagi penerimanya.

(3)

2.1.3 Definisi Internet

Menurut Turban et. al. (2005, p478), internet adalah jaringan besar yang menghubungkan jaringan komputer dari bisnis, organisasi, lembaga pemerintah, dan sekolah di seluruh dunia dengan cepat, langsung, dan hemat.

Sedangkan pengertian internet menurut Strauss et. al. (2003, p8) adalah sebuah jaringan global dari jaringan-jaringan yang saling berhubungan. Banyak dari komputer dalam jaringan tersebut menyimpan banyak file, seperti halaman website, yang nantinya dapat diakses oleh semua jaringan komputer.

Dapat disimpulkan, internet (Interconnected-Networking) merupakan hubungan antar berbagai jenis komputer dan jaringan di dunia dengan berbagai sistem operasi maupun aplikasi yang dapat berfungsi sebagai sarana komunikasi data yang berupa suara, gambar, video, dan juga teks. Hubungan tersebut memanfaatkan kemajuan media komunikasi, yaitu dengan menggunakan protokol standar dalam berkomunikasi (protokol TCP/IP).

2.1.4 Basis Data

Dalam subbab ini akan dibahas mengenai definisi basis data, siklus basis data, arsitektur basis data, elemen-elemen basis data, tahapan perancangan basis data, dan keuntungan basis data.

(4)

2.1.4.1 Definisi Basis Data

Menurut Connolly dan Begg (2005, p15), basis data adalah kumpulan data yang saling berhubungan satu sama lain secara logis yang digunakan secara bersama-sama dan kumpulan data ini dirancang untuk memenuhi kebutuhan informasi suatu organisasi. Selain itu, Whitten et. al. (2004, p548) mengemukakan definisi basis data secara sederhana yaitu sebagai kumpulan file yang saling terkait.

Sedangkan menurut Turban et. al. (2005, p37), basis data adalah sekumpulan file, tabel, dan relasi yang saling terkait dan menyimpan data serta mengasosiasikannya di antara mereka.

Dan menurut Date (2000, p10), basis data adalah kumpulan data yang tersimpan dan digunakan oleh sistem aplikasi suatu organisasi.

Jadi menurut penulis, basis data adalah sekumpulan data yang terintegrasi dan diorganisasikan untuk memenuhi kebutuhan organisasi.

(5)

2.1.4.2 Siklus Basis Data

Menurut Connolly dan Begg (2005, p284-309), sebuah basis data dianalisis dan dirancang berdasarkan siklus hidup yang tergambar pada Gambar 2.1 berikut:

Sumber: Database Systems A Practical Approach to Design, Implementation, and

Management (2005, p284)

(6)

Penjelasan dari Gambar 2.1 adalah sebagai berikut: a. Database Planning

Tahap ini melakukan perencanaan sehingga tahapan-tahapan perancangan berikutnya dapat direalisasikan secara efektif dan efisien.

b. System Definition

Tahap ini menspesifikasikan jangkauan dan batasan-batasan aplikasi yang akan dibuat, seperti penggunaannya dan lingkungan tempat aplikasi akan diimplementasikan.

c. Requirement Collection and Analysis

Tahap ini merupakan suatu proses mengumpulkan dan menganalisis informasi tentang bagian dari organisasi yang akan didukung oleh sistem basis data dan menggunakan informasi ini untuk mengidentifikasi kebutuhan sistem baru.

Ada banyak teknik untuk mengumpulkan informasi ini yang disebut Fact Finding Techiques, yaitu:

1) Mempelajari Dokumentasi

Mempelajari dokumentasi sangat berguna untuk memperoleh wawasan mengenai bagaimana kebutuhan basis data muncul, mengidentifikasi bagian dari organisasi yang terkait dengan masalah, dan memahami sistem yang berjalan sekarang.

2) Wawancara

Teknik fact finding ini sangat populer dan umum digunakan. Teknik ini memungkinkan pengumpulan informasi secara individual secara tatap muka.

(7)

3) Observasi

Observasi merupakan teknik yang efektif untuk mengerti sistem. Ketika melakukan observasi, pengamat dimungkinkan untuk berpartisipasi atau menonton kegiatan tiap orang dalam menggunakan sistem. Teknik ini mudah digunakan untuk mengumpulkan data terhadap berbagai pertanyaan dan kompleksitasnya sesuai kebutuhan sistem berdasarkan penjelasan pengguna akhir.

4) Penelitian

Teknik ini mudah digunakan untuk mengkaji masalah dan penerapan. Penelitian dapat menggunakan informasi terkini seperti jurnal komputer, buku referensi, dan internet. Selain itu, dapat juga menggunakan informasi bagaimana orang lain memecahkan masalah yang sama.

5) Kuesioner

Penyebaran kuesioner memungkinkan fakta disimpulkan dengan cepat dari banyak responden yang dikelola dengan beberapa kontrol. Ada dua tipe pertanyaan yakni format bebas dan format terikat.

d. Database Design

Pada tahap ini dilakukan perancangan basis data secara konseptual, logikal, dan fisikal.

e. DBMS Selection (Optional)

Memilih DBMS yang cocok untuk digunakan bersama dengan aplikasi yang akan dibuat.

(8)

f. Application Design

Tahap ini dilakukan untuk merancang tampilan bagi pengguna, kemudian merancang program aplikasi yang akan digunakan untuk memproses basis data. g. Prototyping (Optional)

Tahap ini ditujukan untuk membuat prototype dari aplikasi basis data. Hasil prototype ini memungkinkan perancang atau pengguna untuk memvisualisasikan serta mengevaluasi bentuk akhir sistem.

h. Implementation

Dalam tahap ini, dilakukan implementasi basis data fisikal dan rancangan aplikasinya.

i. Data Convertion and Loading

Melakukan konversi data dari sistem lama ke sistem baru. j. Testing

Melakukan uji coba untuk mencari kesalahan pada aplikasi. Selain itu, dilakukan validasi atas kebutuhan yang telah dispesifikasikan sebelumnya oleh pengguna. k. Operational Maintenance

Sistem diimplementasi secara penuh serta diawasi dan dipelihara secara berkala. Jika diperlukan kebutuhan-kebutuhan baru, dapat dikerjakan setelah melalui tahapan perancangan basis data.

(9)

2.1.4.3 Arsitektur Basis Data

Menurut Connolly dan Begg (2005, p34), terdapat tiga tingkat arsitektur basis data (Three-Level ANSI-SPARC Architecture), yaitu:

a. Tingkat Eksternal (External Level)

Tingkat ini merupakan cara pandang pengguna terhadap basis data. Tingkat ini menggambarkan bagian dari basis data yang relevan bagi pengguna tertentu.

b. Tingkat Konseptual (Conceptual Level)

Tingkat ini menggambarkan data yang tersimpan dalam basis data dan hubungan antara data tersebut.

c. Tingkat Internal (Internal Level)

Tingkat ini merupakan representasi fisik dari basis data yang menggambarkan bagaimana data disimpan di dalam basis data dan bagaimana basis data disimpan secara fisik di dalam peralatan penyimpanan yang berkaitan erat dengan tempat penyimpanan.

Tujuan utama dari tiga level ini adalah untuk mendapatkan dan memelihara kemandirian data (data independence) agar perubahan yang terjadi pada tingkat yang lebih rendah tidak mempengaruhi tingkat yang lebih tinggi, sehingga aplikasi yang sudah ada tidak terpengaruh oleh perubahan-perubahan yang terjadi pada basis data.

(10)

2.1.4.4 Elemen-Elemen Basis Data

Menurut Whitten et. al. (2004, p550-552), dalam sebuah basis data terdapat beberapa elemen sebagai berikut:

a. Field merupakan unit terkecil dari data yang berarti, untuk disimpan pada sebuah basis data. Ada empat macam tipe field yang dapat disimpan, yaitu:

1) Primary key merupakan field yang secara unik mengidentifikasi record pada tabel. Contohnya PELANGGAN_ID secara unik mengidentifikasi sebuah record tunggal pada tabel PELANGGAN di basis data.

2) Secondary key merupakan sebuah field yang mengidentifikasi record tunggal atau sebuah subset dari record yang terkait. Misalnya, semua PESANAN yang memiliki STATUS ‘lunas’. Untuk memfasilitasi pencarian dan pengurutan, maka dibuatlah index untuk kunci-kunci tersebut.

3) Foreign key merupakan field yang menunjuk kepada record pada tabel lain dalam basis data. Contohnya, pada tabel PESANAN, berisi foreign key PELANGGAN_ID untuk mengidentifikasikan record PELANGGAN yang diasosiasikan dengan PESANAN.

4) Descriptive field merupakan semua field lainnya (nonkey) yang menyimpan data. Misalnya, pada tabel KARYAWAN, ada field NAMA, ALAMAT, GAJI, dan lain-lain.

b. Record merupakan kumpulan field yang disusun dalam format yang telah ditetapkan. Contohnya, record PELANGGAN dapat dideskripsikan dengan field berikut. Field yang digaris bawahi merupakan primary key. Contoh:

(11)

c. Table merupakan kumpulan record yang sama. Misalnya, record yang berisi data tentang pelanggan akan diorganisasikan membentuk tabel PELANGGAN.

Menurut Connolly dan Begg (2005, p342), sebuah basis data memiliki elemen-elemen yang dijelaskan dalam Entity Relationship Modeling (selanjutnya disingkat ERM). ERM didasarkan pada persepsi terhadap dunia nyata yang tersusun atas kumpulan objek-objek dasar yang disebut entitas (entity) dan relasi (relationship).

Berikut ini adalah contoh notasi ERM pada Gambar 2.2:

Gambar 2.2 Notasi ERM

ERM memiliki elemen-elemen, yaitu: a. Tipe Entitas

Tipe entitas adalah kumpulan objek-objek dengan properti yang sama, yang didefinisikan oleh organisasi. Konsep dasar dari bentuk relasi entitas adalah tipe entitas. Sebuah tipe entitas memiliki keberadaan yang bebas dan bisa menjadi objek dengan keberadaan fisik maupun menjadi objek dengan keberadaan konseptual. Hal ini berarti dengan perancang yang berbeda memungkinkan mengidentifikasi entitas yang berbeda. Entity Occurrence adalah objek dan tipe entitas yang dapat diidentifikasi secara unik.

(12)

b. Tipe Relasi

Tipe relasi adalah gabungan dari tipe entitas yang mempunyai arti. Setiap tipe relasi diberi nama sesuai dengan fungsinya. Relationship Occurence adalah suatu gabungan yang dapat diidentifikasi secara unik, yang meliputi suatu kejadian dari setiap tipe entitas yang berpartisipasi.

Entitas yang berkaitan dalam sebuah tipe relasi dikenal sebagai partisipan dan jumlah partisipan dalam relasi disebut sebagai derajat dari relasi. Oleh karena itu, derajat dari sebuah relasi menunjukkan jumlah dari entitas terkait dalam relasi. Sebuah relasi berderajat dua disebut binary, sedangkan relasi berderajat tiga disebut ternary, dan relasi berderajat empat disebut quarternary.

c. Atribut

Atribut adalah sebuah sifat atau karakteristik yang melekat pada sebuah entitas dan relasi. Atribut menyimpan sebuah nilai dari setiap Entity Occurence dan mewakili bagian utama dari data yang akan disimpan dalam basis data.

Simple Attribute adalah atribut yang terdiri dari satu komponen tunggal dengan keberadaan yang bebas. Composite Attribute adalah atribut yang terdiri dari beberapa komponen dengan keberadaan yang bebas. Dalam hal ini, beberapa atribut dapat dipisahkan menjadi beberapa komponen yang lebih kecil lagi dengan keberadaan yang bebas.

Single Value Attribute adalah atribut yang memiliki nilai tunggal untuk masing-masing kejadian dari entitas. Multi Value Attribute adalah atribut yang memiliki banyak nilai untuk masing-masing kejadian dari entitas.

Derived Attribute adalah atribut yang nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut atau tabel lain yang berhubungan.

(13)

d. Strong and Weak Entity Type

Strong entity type adalah tipe entitas yang keberadaannya tidak bergantung pada tipe entitas yang lain. Karakteristiknya adalah setiap kejadian entitas tersebut secara unik mampu diidentifikasi menggunakan atribut primary key pada entitasnya.

Weak entity type adalah tipe entitas yang bergantung pada tipe entitas yang lain. Karakteristiknya adalah setiap kejadian entitas tersebut tidak bisa diidentifikasi secara unik menggunakan atribut yang bergantung pada entitasnya.

e. Structural Constraints

Tipe utama dari batasan hubungan di dalam relasi disebut multiplicity. Multiplicity adalah sejumlah kemungkinan kejadian-kejadian dari sebuah tipe entitas di dalam sebuah hubungan n-ary ketika nilai-nilai yang lain (n-1) ditentukan. Multiplicity biasanya terdiri dari dua batasan terpisah, yaitu:

1) Cardinality: mendeskripsikan jumlah maksimum dari kemungkinan kejadian-kejadian yang saling berhubungan untuk sebuah partisipasi entitas pada proses penentuan tipe relasi.

2) Participation: menentukan apakah semua kejadian-kejadian entitas akan ikut berpartisipasi dalam sebuah relasi atau hanya beberapa saja yang ikut berpartisipasi.

(14)

Jenis-jenis multiplicity menurut Connolly dan Begg (2005, p356) adalah: 1) One-to-One (1:1) Relationship

Gambar 2.3 berikut ini merupakan contoh dari relasi one-to-one:

Gambar 2.3 One-to-One Relationship

Pada Gambar 2.3, dapat terlihat bahwa A hanya terhubung one-to-one (1:1) dengan C, dan B hanya terhubung one-to-one (1:1) dengan D. Jadi dari gambar di atas dapat dituliskan notasi multiplicity–nya dengan Gambar 2.4:

(15)

2) One-to-Many (1:*) Relationship

Berikut ini merupakan contoh dari relasi one-to-many pada Gambar 2.5:

Gambar 2.5 One-to-Many Relationship

Pada Gambar 2.5, dapat terlihat bahwa B terhubung one-to-many (1:*) dengan D dan E. Jadi dari Gambar 2.5 dapat dituliskan notasi multiplicity-nya seperti Gambar 2.6:

(16)

3) Many-to-Many (*:*) Relationship

Berikut ini merupakan contoh relasi many-to-many seperti pada Gambar 2.7:

Gambar 2.7 Many-to-Many Relationship

Pada Gambar 2.7, dapat terlihat bahwa A terhubung one-to-many (1:*) dengan D dan E, sedangkan E terhubung one-to-many (1:*) dengan A dan B. Jadi dari entitas Group 1 (nilainya A dari Gambar 2.7) dan Group 2 (nilainya E dari Gambar 2.7) terhubung many-to-many (*:*). Dari Gambar 2.7, dapat dituliskan notasi multiplicity-nya seperti Gambar 2.8:

(17)

f. Keys

Key memiliki peran yang sangat penting untuk menghubungkan satu objek dengan objek yang lainnya. Key diletakkan pada suatu atribut yang telah ditentukan kedudukannya agar dapat dihubungkan dengan atribut pada entitas yang lain. Beberapa jenis key yang bisa digunakan antara lain:

1) Candidate key, yaitu himpunan atribut minimal yang secara unik mengidentifikasikan tiap-tiap keberadaan suatu entitas.

2) Primary key, yaitu candidat key yang dipilih secara unik untuk mengidentifikasikan tiap-tiap keberadaan suatu entitas.

3) Foreign key, yaitu himpunan atribut dalam suatu relasi yang cocok dengan candidat key dari beberapa relasi.

4) Alternate key, yaitu candidat key yang tidak terpilih menjadi primary key.

Masalah yang akan timbul dari model tipe entitas adalah:

a. Fan Traps, terjadi karena sebuah model merepresentasikan sebuah relasi antara tipe-tipe dari entitas, tetapi jalur yang terdapat di antara kejadian-kejadian entitas masih ambigu.

b. Chasm Traps, terjadi ketika sebuah model menganjurkan keberadaan sebuah relasi di antara tipe-tipe dari entitas, tetapi tidak terdapat jalur di antara kejadian-kejadian entitas tersebut.

(18)

2.1.4.5 Tahapan Perancangan Basis Data

Metodologi perancangan basis data didefinisikan oleh Connolly dan Begg (2005, p438) menjadi tiga tahapan, yaitu:

a. Perancangan Basis Data Konseptual

Tahap ini adalah proses pembuatan model informasi yang digunakan agar tidak tergantung pada semua masalah fisik. Tahap ini dimulai dengan pembuatan model data konseptual organisasi yang secara keseluruhan terbebas dari detail implementasi DBMS, program aplikasi, bahasa pemrograman, platform untuk hardware, tingkat kinerja, maupun bentuk masalah fisik lainnya.

Langkah-langkah yang dilakukan adalah:

Langkah 1: Membuat model data konseptual lokal untuk setiap tampilan. 1) Mengidentifikasi tipe entitas

Langkah pertama dalam membangun model data konseptual lokal adalah menentukan objek utama untuk membangun basis data. Setelah menentukan objek, maka dapat dilakukan identifikasi entitas yang diperlukan untuk membangun basis data tersebut.

2) Mengidentifikasi tipe relasi

Setelah mengidentifikasi semua entitas yang diperlukan, langkah selanjutnya adalah menentukan relasi dari semua entitas yang ada.

3) Mengidentifikasi dan menghubungkan atribut dengan entitas atau relasi

Dalam langkah ini dilakukan identifikasi atribut yang dapat mewakili entitas dan relasi yang telah dibuat.

(19)

4) Menentukan domain atribut

Tujuan dari langkah ini adalah untuk menentukan semua batasan nilai dari atribut yang telah dibuat.

5) Menentukan atribut yang termasuk candidate key dan primary key

Pada langkah ini dilakukan pemilihan candidate key dari semua atribut pada setiap entitas yang ada, kemudian dari candidate key tersebut dipilih satu atribut yang akan menjadi primary key.

6) Pertimbangkan penggunaan konsep enhanced modelling (optional)

Dalam langkah ini, model entitas yang telah ada dapat dikembangkan, misalnya membuat spesifikasi, generalisasi, agregasi, maupun komposisi dari entitas yang ada.

7) Memeriksa model dari redundansi

Pada tahap ini dilakukan pengecekan redundansi dari model data konseptual lokal yang telah dibuat.

8) Memvalidasikan model konseptual lokal terhadap transaksi pengguna

Langkah ini bertujuan untuk memastikan bahwa model data konseptual lokal yang telah dibuat dapat mendukung semua transaksi yang dilakukan oleh pengguna.

9) Meninjau model data konseptual lokal dengan pengguna

Sebelum menyelesaikan langkah pertama, maka harus dilakukan peninjauan kembali dari model data konseptual lokal dengan pengguna. Dalam model data konseptual terdapat Entity Relationship Diagram (selanjutnya disingkat ERD) dan dokumen yang menjelaskan model data.

(20)

b. Perancangan Basis Data Logikal

Setelah melakukan langkah-langkah perancangan basis data konseptual, langkah selanjutnya adalah membuat perancangan basis data logikal, yaitu:

Langkah 2: Membangun dan memvalidasikan model data logikal lokal untuk setiap tampilan.

1) Menghilangkan fitur-fitur yang tidak sesuai dengan model data relasional Pada langkah ini harus menghilangkan many-to-many binary relationship types, many-to-many recursive relationship types, complex relationship types, dan multi-valued attributes.

2) Membuat relasi untuk model data logikal lokal

Langkah ini bertujuan agar dapat membuat relasi untuk model data logikal lokal yang menggambarkan entitas, relasi, dan atribut yang telah diidentifikasi. Berikut ini yang harus dibuat untuk menunjukkan struktur relasi pada model data:

a) Strong entity types; b) Weak entity types;

c) One-to-many (1:*) binary relationship types; d) One-to-one (1:1) binary relationship types; e) Superclass/subclass relationship types;

f) Many-to-many (*:*) binary relationship types; g) Complex relationship types;

h) Multi-valued attributes;

3) Memvalidasi relasi menggunakan normalisasi. 4) Memvalidasi relasi terhadap transaksi pengguna.

(21)

5) Menentukan integrity constraints.

6) Meninjau model data logikal lokal dengan pengguna.

Langkah 3: Membangun dan memvalidasi model data logikal global. 1) Menggabungkan model data logikal lokal ke model global. 2) Memvalidasi model data logikal global.

3) Mengecek perkembangan di masa yang akan datang. 4) Meninjau model data logikal global dengan pengguna. c. Perancangan Basis Data Fisikal

Perancangan ini merupakan sebuah proses pembuatan deskripsi dari implementasi database secondary storage yang menjelaskan basis relasi, organisasi file, indeks yang digunakan untuk memperoleh akses pada data yang efisien, masalah integritas lainnya yang berkaitan, serta menentukan mekanisme keamanan.

Tahap ini memungkinkan perancang untuk menentukan bagaimana basis data diimplementasikan. Oleh karena itu, rancangan fisikal dirancang untuk DBMS yang khusus. Antara rancangan logikal dan fisikal terdapat keterkaitan, hal ini disebabkan karena keputusan yang diambil selama perancangan fisikal untuk meningkatkan kinerja bisa mempengaruhi model data logikal.

Langkah selanjutnya yang harus dilakukan untuk merancang basis data pada tahap basis data fisikal yaitu:

Langkah 4: Menerjemahkan model data logikal global untuk target DBMS. 1) Merancang relasi-relasi dasar;

2) Merancang representasi dari derived data; 3) Merancang enterprise constraints.

(22)

Langkah 5: Merancang representasi fisik. 1) Menganalisis transaksi;

2) Memilih organisasi file; 3) Memilih indeks;

4) Estimasi kebutuhan disk space. Langkah 6: Merancang user views.

Langkah 7: Merancang mekanisme keamanan.

Langkah 8: Mempertimbangkan pengenalan dari kontrol redundansi. Langkah 9: Mengawasi dan menyesuaikan sistem operasional.

2.1.4.6 Keuntungan Basis Data

Menurut Date (2000, p15), keuntungan dari penggunaan basis data yaitu: a. Compactness: penggunaan kertas dapat dikurangi;

b. Speed: mengambil dan mengubah data lebih cepat; c. Less drudgery: penulisan dengan tangan dapat dikurangi; d. Currency: basis data lebih akurat dan up to date.

2.1.5 Database Management System

Pada subbab ini, akan dijelaskan mengenai definisi Database Management System (selanjutnya disingkat DBMS), fungsi DBMS, serta keuntungan dan kerugian DBMS.

(23)

2.1.5.1 Definisi Database Management System

Menurut Anonimus (2005, p1), DBMS adalah sebuah perangkat lunak yang dapat membantu pengguna untuk membuat dan memelihara suatu basis data.

Menurut Connolly dan Begg (2005, p16), DBMS merupakan sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, merawat, dan mengontrol akses basis data.

Berdasarkan Whitten et. al. (2004, p554), DBMS adalah sistem perangkat lunak komputer khusus yang disediakan oleh vendor-vendor komputer yang digunakan untuk membuat, mengakses, mengontrol, dan mengelola basis data. DBMS bekerja seperti mesin dengan merespon perintah-perintah khusus untuk membuat struktur basis data, kemudian membuat, membaca, memperbarui, dan menghapus record-record pada basis data tersebut. Oleh karena itu, DBMS sering disebut database engine. DBMS dapat dibeli dari sebuah vendor teknologi basis data seperti Oracle, IBM, Microsoft, atau Sybase.

Dari pengertian-pengertian di atas, penulis menyimpulkan bahwa DBMS adalah perangkat lunak yang dapat menangani semua pengaksesan basis data dan mempunyai fasilitas menyimpan, mengakses, memanipulasi, serta memelihara basis data.

Dalam DBMS dikenal dua istilah, yaitu Data Definition Language (selanjutnya disingkat DDL) dan Data Manipulation Language (selanjutnya disingkat DML). DDL merupakan sebuah bahasa yang digunakan oleh DBMS untuk menentukan sebuah basis data atau melihat isi basis data. Dalam menentukan sebuah basis data, DDL digunakan untuk menetapkan secara fisik tipe, record, field, dan hubungan struktural. Sedangkan DML merupakan bahasa DBMS yang digunakan untuk membuat, membaca,

(24)

memperbarui, dan menghapus record-record serta untuk menjelajahi record-record yang ada walaupun tipenya berbeda-beda.

Menurut Connolly dan Begg (2005, p18), terdapat lima komponen penting DBMS, yaitu:

a. Data

Merupakan komponen terpenting yang menghubungkan antara komponen mesin (hardware dan software) dan komponen manusia (procedures dan people).

b. Software

Meliputi aplikasi software, DBMS, dan sistem operasi. Jika dalam penggunaannya menggunakan jaringan, maka sistem jaringan juga termasuk.

c. Hardware

Untuk menjalankan DBMS dan aplikasi-aplikasinya, dibutuhkan hardware yang meliputi Personal Computer (selanjutnya disingkat PC), mainframe, dan jaringan komputer.

d. Procedures

Prosedur adalah instruksi dan aturan yang mengatur perancangan dan penggunaan basis data.

e. People

Komponen ini meliputi database administrators, database designers, application developers, dan end users.

Ada beberapa tipe DMBS menurut cara menyusun record, salah satunya adalah Relational Database Management System (selanjutnya disingkat RDBMS) yang mengimplementasikan data pada satu seri tabel dua dimensi yang dihubungkan satu dengan yang lain melalui foreign key. Ada pula Object Oriented Database Management

(25)

System (selanjutnya disingkat OODBMS) yang menggunakan konsep pemrograman berbasis objek serta Object Relational Database Management System (selanjutnya disingkat ORDBMS) yang merupakan gabungan dari konsep RDBMS dan OODBMS. Vendor RDBMS terkemuka saat ini seperti Oracle, Microsoft, dan IBM mulai mengembangkan sistem mereka menjadi ORDBMS.

Tiga istilah kunci yang sering digunakan pada RDBMS adalah relasi, atribut, dan domain. Relasi merupakan tabel dengan kolom dan baris (disebut juga tuple), sedangkan atribut disebut kolom dan domain merupakan nilai yang boleh dimiliki atribut. Konsep dasar dari RDBMS adalah database schema yang merupakan struktur logis dari sekumpulan tabel yang berhubungan satu sama lain dalam basis data. Schema selalu dikaitkan dengan pengguna dan dapat didefinisikan juga sebagai koleksi objek yang dimiliki seorang pengguna.

2.1.5.2 Fungsi Database Management System

Menurut Anonimus (2005, p1), fungsi dari DBMS yaitu menspesifikasi tipe data, struktur dan konstrain data, menyimpan data, manipulasi basis data seperti query basis data, update basis data, dan membuat laporan dari data yang tersimpan dalam basis data.

Menurut Connolly dan Begg (2005, p48), DBMS seharusnya memiliki fungsi-fungsi sebagai berikut:

a. Data Storage, Retrieval, dan Update

DBMS memungkinkan pengguna untuk menyimpan, mengambil, dan mengubah data.

(26)

b. A User-Accessible Catalog

Katalog yang berisikan deskripsi data item dan dapat diakses oleh pengguna. c. Transaction Support

Mekanisme yang akan menjamin seluruh perubahan data yang berhubungan dengan transaksi yang sudah ada maupun yang akan dibuat.

d. Concurrency Control Services

Mekanisme yang menjamin perubahan data secara benar ketika beberapa pengguna melakukan perubahan terhadap data yang sama secara bersama-sama.

e. Recovery Services

Mekanisme untuk pemulihan basis data ke keadaan semula ketika terjadi kerusakan atau kesalahan pada suatu basis data.

f. Authorization Services

Mekanisme yang menjamin bahwa hanya pengguna yang terotorisasi yang dapat mengakses basis data.

g. Support for Data Communication

Terintegrasi dengan sofware komunikasi sehingga basis data dapat diakses dari lokasi yang jauh.

h. Integrity Services

Memiliki sarana yang menjamin semua data di dalam basis data maupun perubahan-perubahan terhadap data tersebut mengikuti aturan-aturan yang berlaku (constraint). i. Services to Promote Data Independent

Mendukung kemandirian data sehingga software tidak terpengaruh terhadap struktur aktual dari basis data.

(27)

j. Utility Services

Menyediakan berbagai program, seperti program analisis statistik, pengawasan fasilitas, fasilitas reorganisasi indeks, dan lain-lain.

Beberapa fasilitas yang disediakan dalam DBMS, yaitu:

a. DBMS memungkinkan pengguna untuk mendefinisikan struktur atau kerangka suatu basis data dengan DDL, yang memungkinkan pengguna untuk menspesifikasikan tipe dan struktur data serta batasan-batasan data yang akan disimpan dalam basis data.

b. DBMS memungkinkan pengguna untuk melakukan insert, update, delete, dan retrieve terhadap data-data yang ada di dalam basis data melalui DML dengan query language.

c. DBMS menyediakan kontrol terhadap pengaksesan suatu basis data, dengan mencegah pengaksesan basis data oleh pengguna yang tidak terotorisasi.

2.1.5.3 Keuntungan dan Kerugian Database Management System

Menurut Connolly dan Begg (2005, p26), DBMS memiliki keuntungan dan kerugian sebagai berikut:

a. Keuntungan DBMS

1) Kontrol terhadap redundansi data

Basis data berusaha untuk menghilangkan pengulangan dengan mengintegrasikan file sehingga berbagai copy dari data yang sama tidak tersimpan. Bagaimanapun juga, pendekatan ini tidak menghilangkan

(28)

pengulangan secara menyeluruh, tetapi mengendalikan jumlah pengulangan dalam basis data.

2) Data yang konsisten

Dengan menghilangkan atau mengendalikan pengulangan, resiko ketidak-konsistenan yang terjadi telah dikurangi. Jika item data disimpan hanya sekali di dalam basis data, maka berbagai update bagi nilai data tersebut harus dibuat hanya sekali dan nilai baru tersebut harus tersedia dengan segera kepada semua pengguna. Jika item data disimpan lebih dari sekali, sistem dapat memastikan bahwa semua copy dari item tersebut tetap konsisten.

3) Semakin banyak informasi yang didapat dari data yang sama

Dengan data operasional yang terintegrasi, hal ini memungkinkan bagi organisasi untuk mendapatkan informasi tambahan dari data yang sama.

4) Pembagian data

Basis data termasuk bagian dari keseluruhan organisasi dan dapat dibagikan ke semua pengguna yang terotoritas.

5) Meningkatkan integritas data

Integritas basis data mengacu pada validitas dan konsistensi data yang disimpan. Integritas biasanya diekspresikan dalam istilah batasan, yang berupa aturan konsisten yang tidak boleh dilanggar oleh basis data. Integritas memungkinkan Database Administrator (selanjutnya disingkat DBA) untuk menjelaskan dan memungkinkan DBMS untuk membuat batasan integritas. 6) Meningkatkan keamanan data

Keamanan basis data dilakukan dengan cara melindungi data dari pengguna yang tak terotoritas. Hal ini dapat dilakukan dengan menggunakan ID pengguna

(29)

dan kata sandi untuk mengidentifikasi siapa saja yang terotoritas untuk menggunakan basis data. Akses pengguna yang terotoritas pada basis data mungkin dibatasi oleh jenis operasi seperti select, insert, update, dan delete. 7) Penetapan standarisasi

Integrasi memungkinkan DBA untuk mendefinisikan dan membuat standar yang diperlukan. Standar ini termasuk standar departemen, organisasi, nasional, atau internasional dalam hal format data untuk memfasilitasi pertukaran data antar sistem, ketetapan penamaan, standar dokumentasi, prosedur update, dan aturan akses.

8) Pengurangan biaya

Dengan menyatukan semua data operasional organisasi ke dalam satu basis data dan pembuatan sekelompok aplikasi yang bekerja pada satu sumber data dapat menghasilkan pengurangan biaya. Penyatuan biaya pengembangan dan pemeliharaan sistem pada setiap departemen akan menghasilkan total biaya yang lebih rendah, sehingga biaya lainnya dapat digunakan untuk membeli konfigurasi sistem yang sesuai bagi kebutuhan organisasi.

9) Menyeimbangkan konflik kebutuhan

Setiap pengguna mempunyai kebutuhan yang mungkin bertentangan dengan kebutuhan pengguna lain. Basis data dikendalikan oleh DBA dan dapat membuat keputusan berkaitan dengan perancangan dan penggunaan operasional basis data yang menyediakan penggunaan terbaik dari sumber daya bagi keseluruhan organisasi.

(30)

10) Meningkatkan kemampuan akses dan respon pada data

Adanya pengintegrasian data yang meliputi beberapa departemen membuat sistem memiliki lebih banyak fungsi dan dapat menyediakan data yang diperlukan oleh pengguna akhir. Banyak DBMS menyediakan query language yang memungkinkan pengguna untuk menanyakan pertanyaan ad-hoc dan memperoleh informasi yang diperlukan dengan segera pada terminal mereka, tanpa memerlukan programmer menulis beberapa software untuk mengubah informasi ini dari basis data.

11) Meningkatkan produktivitas

DBMS menyediakan banyak fungsi standar dimana biasanya programmer harus menulis dalam suatu aplikasi berbasis file. DBMS juga menyediakan alat untuk menyederhanakan aplikasi pengembangan basis data. Hal ini menyebabkan produktivitas pemrograman meningkat dan mengurangi waktu pengembangan.

12) Meningkatkan pemeliharaan

DBMS memisahkan deskripsi data dari aplikasi, sehingga membuat aplikasi kebal terhadap perubahan dalam deskripsi data.

13) Meningkatkan konkurensi

DBMS mengelola akses basis data secara bersamaan dan memastikan tidak ada masalah yang akan terjadi.

14) Layanan backup dan recovery

DBMS menyediakan fasilitas untuk meminimalkan jumlah proses yang hilang setelah terjadi kegagalan.

(31)

b. Kerugian DBMS 1) Kompleksitas

Ketentuan dari fungsi yang diharapkan dari DBMS yang baik membuat DBMS menjadi sebuah software yang sangat kompleks.

2) Ukuran

Fungsi yang kompleks dan luas membuat DBMS menjadi software yang sangat besar, memerlukan banyak ruang harddisk dan jumlah memori yang besar untuk berjalan dengan efisien.

3) Biaya dari DBMS

Biaya DBMS bervariasi, tergantung pada lingkungan dan fungsi yang disediakan. Selain itu terdapat pula biaya pemeliharaan tahunan yang juga dimasukkan dalam daftar harga DBMS.

4) Biaya penambahan perangkat keras

Kebutuhan tempat penyimpanan bagi DBMS dan basis data sangat memerlukan pembelian tempat penyimpanan tambahan. Lebih lanjut, untuk mencapai performa yang diperlukan, mungkin diperlukan untuk membeli mesin yang lebih besar lagi. Hal ini tentu memerlukan tambahan biaya yang tidak sedikit, tergantung pada spesifikasi perangkat keras yang diperlukan.

5) Biaya konversi

Dalam beberapa situasi, biaya DBMS dan hardware tambahan mungkin tidak signifikan dibandingkan dengan biaya mengkonversi aplikasi yang ada untuk berjalan di DBMS baru dan perangkat keras. Biaya ini juga mencakup biaya pelatihan staf untuk menggunakan sistem baru dan mungkin kerja dari staf spesialis untuk membantu dengan konversi dan menjalankan sistem.

(32)

6) Kinerja

Umumnya, sistem berbasis file ditulis untuk aplikasi tertentu seperti faktur. Akibatnya, kinerja secara umum sangat baik. Namun, DBMS ditulis untuk menjadi lebih umum, yaitu untuk melayani banyak aplikasi. Efeknya adalah beberapa aplikasi mungkin menjadi tidak secepat dulu.

7) Dampak kegagalan yang tinggi

Sentralisasi sumber daya meningkatkan kerentanan sistem karena semua pengguna dan aplikasi bergantung pada ketersediaan DBMS. Kegagalan komponen tertentu dapat menyebabkan operasi terhenti.

2.1.6 Web Database System

Pada subbab ini akan dibahas mengenai definisi web database dan siklus web database.

2.1.6.1 Definisi Web Database

Menurut Eaglestone dan Ridley (2001, p34), sistem basis data dapat dihubungkan ke internet untuk digunakan melalui web. Berikut ini adalah tipe-tipe dari koneksi yang digunakan:

a. Remote Connections: sebuah sistem basis data yang dapat diakses melalui web dimanapun pengguna berada.

b. Client-Server Architecture: bentuk umum dari program aplikasi basis data yang menggunakan internet.

(33)

c. Distributed Databases: beberapa DBMS mempunyai fasilitas untuk mengizinkan bagian tertentu dari basis data disimpan pada komputer yang berbeda-beda. Data ini didistribusikan dan diletakkan di berbagai tempat berbeda yang tidak disadari oleh pengguna.

d. Multidatabase: teknologi ini membuat beberapa basis data tunggal untuk disatukan sehingga mendukung akses yang terintegrasi ke tempat penyimpanan.

Jadi web database adalah web yang dihubungkan dengan sistem basis data yang menyebabkan transaksi pada web dapat tersimpan pada basis data dan data dapat diakses oleh pengguna dimanapun mereka berada melalui web.

(34)

2.1.6.2 Siklus Web Database

Menurut Eaglestone dan Ridley (2001, p264), web database design digambarkan seperti Gambar 2.9 berikut:

Sumber : Web database systems (2001, p264) Gambar 2.9 Web Database Design

(35)

Tahapan-tahapan dalam web database design yaitu: a. Requirement Analysis

Requirement analysis adalah proses mengumpulkan dan menganalisis informasi tentang bagian dari organisasi yang didukung oleh sistem basis data dan menggunakan informasi ini untuk mengidentifikasi kebutuhan sistem baru.

b. Data Analysis

Data analysis adalah proses yang menggambarkan kegiatan organisasi yang harus disimpan dalam basis data.

Ada beberapa pendekatan, yaitu: 1) Top-Down

Pendekatan yang dimulai dengan mengidentifikasikan entitas, menentukan relasi, dan atribut yang dibutuhkan dalam basis data.

2) Bottom-Up

Pendekatan yang dimulai dengan menganalisis atribut, menentukan relasi antar atribut, dan mengidentifikasi entitas. Pendekatan ini baik digunakan untuk basis data yang sederhana dengan jumlah atribut yang sedikit.

3) Inside-Out

Pendekatan ini hampir sama dengan pendekatan bottom-up, perbedaannya terdapat pada identifikasi pertama dari pembentukan entitas-entitas yang kemudian menyebar dengan membentuk relasi dan atribut yang mengidentifikasikan entitas yang dibentuk

4) Mixed

Pendekatan campuran antara top-down dan bottom-up untuk model-model data yang bervariasi sampai dengan mengkombinasikan semua bagian menjadi satu.

(36)

c. Web Data Analysis

Web data analysis adalah proses mendefinisikan model konseptual dari informasi yang digambarkan dalam halaman web dan dalam basis data.

Tujuan web data analysis adalah sebagai berikut:

1) Memetakan antara informasi yang digambarkan pada halaman web dan disimpan dalam basis data.

2) Memeriksa validitas basis data.

3) Verifikasi detail desain dan implementasi. 4) Menghindari kompleksitas.

d. Logical Database Design

Logical database design adalah proses mendefinisikan model data logikal yang mengimplementasikan model konseptual basis data.

Langkah-langkahnya yaitu:

1) Mengubah model data konseptual ke dalam relational database dengan beberapa aturan.

2) Normalisasi.

Output database design berupa ERD normal. e. Logical Web Data Design

Logical web data design adalah proses mendefinisikan struktur data halaman web, termasuk link antar bagian dengan halaman web lain.

f. Physical Database Design

Physical database design adalah fase dalam proses desain dimana desainer memutuskan bagaimana basis data disimpan dalam DBMS.

(37)

g. Physical Web Data Design

Physical web data design adalah proses mengimplementasikan halaman web dan menghubungkannya ke sistem basis data.

2.1.7 Structured Query Language

Menurut Whitten et. al. (2004, pp556-557), SQL merupakan bahasa standar yang telah digunakan secara resmi dan luas sebagai DDL dan DML pada DBMS. SQL ini merupakan bahasa non-prosedural yang mengandung kata dalam Bahasa Inggris sederhana seperti CREATE, SELECT, INSERT dan DELETE yang dapat digunakan oleh profesional maupun non-profesional. Selain mendefinisikan dan memanipulasi basis data, SQL juga mendukung trigger dan stored procedure. Trigger merupakan sebuah program yang dilekatkan pada sebuah tabel dan akan dijalankan secara otomatis dengan memperbarui tabel lain. Sebagai contoh, jika sebuah record dihapus dari tabel PELANGGAN, trigger dapat secara otomatis menghapus semua record yang terkait pada tabel PESANAN pelanggan tersebut, sedangkan stored procedure adalah program-program yang dilekatkan di dalam sebuah tabel yang dapat dipanggil dari program-program aplikasi. Contohnya, sebuah algoritma validasi data dapat dilekatkan pada sebuah tabel untuk menjamin bahwa record-record baru dan yang telah diperbarui berisi data yang valid sebelum record itu disimpan. Stored procedure pada Microsoft disebut Transact SQL, sedangkan pada Oracle disebut programming language/SQL.

Jadi menurut penulis, SQL adalah bahasa pemrograman yang digunakan untuk mengakses dan memanipulasi basis data.

(38)

2.1.8 Unified Modeling Language

Pada subbab ini akan dibahas mengenai definisi dari UML dan sembilan deliverables UML.

2.1.8.1 Definisi Unified Modeling Language

Menurut Whitten et .al. (2004, p30), UML adalah satu kumpulan konvensi pemodelan yang digunakan untuk menentukan atau menggambarkan sebuah sistem software yang terkait dengan objek.

Sedangkan menurut Silberschatz et. al. (2002, p68), UML adalah standar yang dibuat untuk menciptakan spesifikasi dari berbagai komponen sistem software.

Jadi dapat disimpulkan bahwa UML merupakan bahasa yang telah menjadi standar untuk visualisasi, merancang, dan mendokumentasikan sistem software.

2.1.8.2 Deliverables Unified Modeling Language

Menurut Whitten et. al.(2004, p441-442), UML menawarkan sembilan diagram yang dikelompokkan menjadi lima perspektif berbeda untuk memodelkan suatu sistem informasi. Diagram-diagram tersebut yaitu:

a. Diagram Model Use Case

Diagram use case secara grafis menggambarkan interaksi antara sistem, sistem eksternal, dan pengguna. Dengan kata lain, secara grafis mendeskripsikan siapa yang akan menggunakan sistem dan dalam cara apa pengguna mengharapkan interaksi dengan sistem ini.

(39)

Contoh use case diagram seperti Gambar 2.10 berikut:

Gambar 2.10 Use Case Diagram

b. Diagram Struktur Statis

UML menawarkan dua diagram untuk memodelkan struktur sistem informasi statis, yaitu:

1) Class Diagram

Class diagram menggambarkan struktur objek sistem yang menunjukkan kelas objek yang menyusun sistem dan juga hubungannya antara kelas objek tersebut.

(40)

Contoh class diagram seperti pada Gambar 2.11 berikut:

Gambar 2.11 Class Diagram

2) Object Diagram

Object diagram memodelkan instance objek aktual dengan menunjukkan nilai-nilai saat ini dari atribut instance. Contoh object diagram seperti pada Gambar 2.12 berikut:

(41)

c. Diagram Interaksi

Diagram interaksi menggambarkan sebuah interaksi yang terdiri dari satu set objek, hubungan-hubungannya, dan pesan yang terkirim di antara objek. Model diagram ini memodelkan kebiasaan sistem yang dinamis dan UML memiliki dua diagram untuk tujuan ini, yaitu:

1) Sequence Diagram

Sequence diagram secara grafis menggambarkan bagaimana objek berinteraksi satu sama lain melalui pesan pada eksekusi sebuah use case atau operasi. Diagram ini mengilustrasikan bagaimana pesan terkirim dan diterima di antara objek dalam suatu sekuensi.

Contoh sequence diagram seperti pada Gambar 2.13 berikut:

(42)

2) Collaboration Diagram

Collaboration diagram menggambarkan interaksi atau kolaborasi antara objek dalam sebuah format jaringan. Contoh collaboration diagram seperti pada Gambar 2.14 berikut:

Gambar 2.14 Collaboration Diagram

d. State Diagram

Diagram state memodelkan tingkah laku dinamis dari sistem dengan: 1) Statechart Diagram

Statechart diagram digunakan untuk memodelkan tingkah laku objek khusus yang dinamis dan mengilustrasikan siklus hidup objek, berbagai keadaan yang dapat diasumsikan oleh objek, dan kejadian-kejadian yang menyebabkan objek beralih dari satu state ke state lain.

(43)

Contoh statechart diagram seperti pada Gambar 2.15 berikut:

Gambar 2.15 Statechart Diagram

2) Activity Diagram

Activity diagram secara grafis digunakan untuk menggambarakan rangkaian aliran aktivitas baik proses bisnis atau use case, memodelkan tindakan yang akan dilakukan saat sebuah operasi dieksekusi, dan memodelkan hasil dari action tersebut.

Contoh activity diagram seperti pada Gambar 2.16 berikut:

(44)

e. Diagram Implementasi

Diagram implementasi juga memodelkan struktur sistem informasi, yakni: 1) Component Diagram

Component diagram digunakan untuk menggambarkan organisasi dan ketergantungan komponen-komponen sistem software. Diagram ini dapat digunakan untuk menunjukkan bagaimana kode pemrograman dibagi menjadi modul-modul. Contoh component diagram seperti pada Gambar 2.17 berikut:

Gambar 2.17 Component Diagram

2) Deployment Diagram

Deployment diagram mendeskripsikan arsitektur fisik dalam istilah “node” untuk hardware dan software dalam sistem. Diagram ini menggambarkan konfigurasi komponen-komponen software run-time, prosesor, dan peralatan yang membentuk arsitektur sistem.

(45)

Contoh deployment diagram seperti pada Gambar 2.18 berikut:

Gambar 2.18 Deployment Diagram

2.2 Teori Khusus

Pada teori khusus akan dibahas mengenai website, interaksi manusia dan komputer, pendidikan, e-Learning, PHP, MySQL, dan normalisasi.

2.2.1 Website

Menurut Sardi (2004, p4), website adalah sekumpulan dokumen yang dipubikasikan melalui jaringan internet sehingga dapat diakses oleh pengguna melalui browser.

(46)

Terdapat dua jenis website, yaitu: a. Website Statis

Bentuk website yang isinya tetap, jarang berubah, dan isi dari informasi website tersebut bersifat satu arah.

b. Website Dinamis

Bentuk website yang secara struktur diperuntukkan untuk dilakukan update informasi/isi sesering mungkin.

Dapat disimpulkan bahwa website merupakan kumpulan halaman yang dapat menampilkan informasi data teks, data gambar diam atau gerak, data animasi, suara, video, dan gabungan dari semuanya baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait di mana masing-masing dihubungkan dengan jaringan-jaringan halaman (hyperlink).

Website application adalah jenis aplikasi yang dibangun dengan berbasiskan web. Website application memungkinkan pengguna untuk mengakses aplikasi dengan hanya terhubung dengan internet. Umumnya, website application adalah website dinamis yang dibangun sebagai sebuah sistem informasi yang dapat diakses melalui jaringan internet.

Web ini diharuskan untuk ditempatkan pada suatu server yang disebut dengan web server. Untuk menjadikan sebuah komputer menjadi web server, diperlukan program/aplikasi web server yang dapat menerima request informasi dari client.

Adapun istilah-istilah yang berhubungan antara internet dan web yaitu: a. Browser

Menurut Turban et. al. (2005, p483), browser adalah aplikasi perangkat lunak yang digunakan oleh pengguna untuk mengakses web. Browser menjadi alat akses umum karena memberikan tampilan yang sama pada berbagai sistem operasi.

(47)

Dan menurut Kamarga (2002, p22), browser merupakan suatu program yang dirancang untuk mengambil informasi-informasi dari suatu server komputer pada jaringan internet.

Sehingga, dapat disimpulkan bahwa browser adalah sebuah aplikasi perangkat lunak yang memungkinkan pengguna untuk melihat, menampilkan, dan berinteraksi dengan tulisan, gambar, video, musik, dan berbagai informasi lainnya yang terdapat pada halaman web.

b. URL

Sebuah nama yang terhubung pada sebuah alamat IP (Internet Protocol) dalam DNS (Domain Name Service) disebut juga dengan URL, yang mengidentifikasikan sebuah node pada internet secara unik. (Zeid, 2000, p10).

Sedangkan menurut penulis, URL adalah serangkaian karakter yang digunakan untuk menunjukkan alamat suatu sumber di internet.

c. WWW (World Wide Web)

World Wide Web juga disebut web, www, dan w3 adalah ruang informasi di internet, tempat dokumen-dokumen hypermedia disimpan dan dapat diambil melalui suatu skema alamat yang unik. Web menyediakan metode untuk menyimpan dan mengambil dokumen-dokumennya (McLeod dan Schell, 2001, p55).

Menurut penulis, www adalah layanan yang paling sering digunakan dan memiliki perkembangan yang sangat cepat karena dengan layanan ini, seseorang dapat menerima informasi dalam berbagai format.

d. HTTP (Hypertext Transfer Protocol)

Menurut Simarmata (2010, p49), HTTP adalah protokol komunikasi stateless yang berbasiskan TCP (Transmission Control Protocol) yang awalnya digunakan untuk

(48)

mengambil kembali file Hypertext Markup Language (selanjutnya disingkat HTML) dari server web.

Sedangkan menurut penulis, HTTP adalah suatu protokol internet yang digunakan oleh World Wide Web. Dengan protokol ini, sebuah web client (dalam hal ini browser) dapat melakukan pertukaran data hypermedia, seperti teks, gambar, suara, bahkan video dengan web server.

e. HTML

HTML merupakan sebuah dokumen yang memuat kalimat-kalimat yang diproses oleh browser, sehingga ditayangkan ketika dipanggil dari internet. HTML sendiri merupakan sebuah dokumen dalam format ASCII dan dapat dibuat dengan sembarang perangkat lunak pengedit naskah (Bustani, 1999, p13-14).

Jadi, HTML adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi di dalam sebuah browser internet.

2.2.2 Interaksi Manusia dan Komputer

Dalam subbab ini akan dibahas mengenai definisi interaksi manusia dan komputer (selanjutnya disingkat IMK), delapan aturan emas perancangan antarmuka, dan sepuluh kesalahan utama website.

2.2.2.1 Definisi Interaksi Manusia dan Komputer

IMK adalah ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk digunakan oleh manusia, serta studi

(49)

fenomena-fenomena besar yang berhubungan dengannya (Shneiderman dan Plaisant, 2010, p22).

Berdasarkan penulis, IMK adalah ilmu yang digunakan untuk merancang antarmuka pengguna untuk mempermudah pengguna mengoperasikan komputer selama ia sedang bekerja pada sebuah sistem komputer.

2.2.2.2 Delapan Aturan Emas Perancangan Antarmuka

Menurut Shneiderman dan Plaisant (2010, p88-89), dalam merancang suatu situs web yang baik harus memperhatikan suatu aturan, yang disebut Eight Golden Rules of Interface Design atau delapan aturan emas perancangan antarmuka, yaitu sebagai berikut: a. Berusaha untuk konsisten

Mematuhi aturan ini cukup sulit karena konsistensi mempunyai banyak bentuk. Urutan aksi yang konsisten diperlukan pada situasi yang sama, istilah yang sama harus digunakan pada prompts, menu, dan help screen. Konsistensi pada warna, layout, kapitalisasi, font, dan lainnya juga harus diperhatikan.

b. Memungkinkan pengguna menggunakan shortcut

Saat pengguna sudah sering melakukan suatu aksi, maka mereka akan lebih menginginkan pengurangan jumlah dari interaksi. Respon yang pendek dan tampilan yang cepat adalah hal yang menarik bagi pengguna yang sudah sering menggunakan aplikasi.

c. Memberikan umpan balik yang informatif

Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem umpan balik. Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan

(50)

umpan balik yang sederhana. Tetapi ketika tindakan merupakan hal yang penting, maka umpan balik sebaiknya lebih substansial. Misalnya muncul suatu suara ketika salah menekan tombol pada waktu input data atau muncul pesan kesalahannya. d. Merancang dialog yang memberikan penutupan (keadaan akhir)

Urutan tindakan harus diatur ke dalam kelompok dengan awal, tengah, dan akhir. Umpan balik yang informatif pada penyelesaian sekelompok pengguna tindakan menunjukkan aktivitas mereka telah selesai dengan sukses.

e. Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana Sebisa mungkin membuat sebuah sistem di mana pengguna tidak dapat membuat kesalahan yang serius. Jika pengguna melakukan kesalahan, sistem harus mendeteksi kesalahan dan menawarkan instruksi yang sederhana, membangun, dan spesifik untuk pemulihan.

f. Memungkinkan pembalikan aksi yang mudah Sebanyak mungkin aksi harus dapat diulang.

g. Mendukung pusat kendali internal (internal locus of control)

Operator yang berpengalaman menginginkan mereka yang berkuasa pada sistem dan sistem merespon aksi mereka.

h. Mengurangi beban ingatan jangka pendek

Ingatan manusia terbatas untuk jangka pendek. Oleh karena itu, tampilan harus sederhana. Tampilan untuk beberapa halaman harus dikonsolidasi, animasi windows dikurangi.

(51)

2.2.2.3 Sepuluh Kesalahan Utama Website

Menurut Nielsen (2000, p234), dalam perancangan website seringkali melakukan kesalahan dalam pembuatan rancangan layar. Berikut ini merupakan sepuluh kesalahan utama yang sering terjadi dalam pembuatan website design:

a. Penggunaan frame;

b. Penggunaan teknologi baru dengan serampangan; c. Gerakan teks dan animasi yang berjalan terus; d. URL yang kompleks;

e. Orphan pages;

f. Halaman yang terlalu panjang gulungannya; g. Kurangnya dukungan navigasi;

h. Warna link yang tidak standar; i. Informasi yang tidak up to date; j. Waktu download yang terlalu lama.

(52)

2.2.3 E-Learning

Dalam subbab ini akan dibahas mengenai definisi e-Learning, kebutuhan pendorong e-Learning, internet dan pengajaran, tipe-tipe e-Learning, fitur e-Learning, keuntungan e-Learning, dan kekurangan e-Learning.

2.2.3.1 Definisi E-Learning

E-Learning menurut Turban et. al. (2004, p358) adalah pembelajaran secara online yang mengirimkan informasi untuk tujuan pendidikan, pelatihan, atau manajemen pengetahuan.

Effendi dan Zhuang (2005, p6) mengartikan e-Learning mengacu pada semua kegiatan pendidikan yang menggunakan media elektronik atau teknologi informasi.

E-Learning menurut Allen (2006, p27) adalah suatu aplikasi dan proses seperti pembelajaran berbasis web, pembelajaran berbasis komputer, kelas virtual, dan kolaborasi digital, di mana materi pembelajaran dimasukkan dengan menggunakan internet, intranet/ekstranet (LAN/WAN), audio dan video tape, TV interaktif, dan CD-ROM.

Menurut Polla (2002, p19), e-Learning didefinisikan sebagai suatu cara baru dari pembelajaran di rumah, di tempat kerja, ataupun di sekolah dengan menggunakan jaringan khusus seperti internet, intranet, dan alat teknologi digital.

Menurut Holmes dan Gardner (2006, p1), e-Learning merupakan hal yang sangat penting atau utama dalam sistem pendidikan di seluruh dunia untuk saat ini dan masa yang akan datang, yang bermanfaat untuk mengoptimalkan proses pengajaran dan pembelajaran.

(53)

Jadi, e-Learning merupakan proses pembelajaran yang memanfaatkan teknologi informasi (dalam hal ini adalah internet) sebagai sarana efektif dan memperluas pengetahuan.

2.2.3.2 Kebutuhan Pendorong E-Learning

Anonimus (2000, p33) menyatakan beberapa faktor kebutuhan yang mendorong penggunaan e-Learning secara global, yaitu:

a. Perubahan ekonomi konvensional menjadi ekonomi yang knowledge-based; b. Adanya perubahan paradigma dalam cara penyampaian pendidikan;

c. Adanya permintaan untuk mereformasi sistem pendidikan dikarenakan ada gap pengetahuan;

d. Globalisasi bisnis berakibat pada hadirnya tantangan-tantangan dalam kompetisi korporat;

e. Perubahan sosial dan demografi turut mengubah penyampaian pendidikan bagi pembelajaran masa datang;

f. Pembelajaran telah menjadi suatu proses yang berkelanjutan daripada dianggap sebagai suatu aktivitas sekali waktu (statis);

g. Pertumbuhan provider internet yang pesat menghadirkan adanya saluran pendidikan baru.

(54)

2.2.3.3 Internet dan Pengajaran

Menurut pendapat Prakoso (2005, p5-8), terdapat dua jenis pemanfaatan internet dalam pengajaran, yaitu:

a. Web Enhanced Course

Model ini menggunakan internet sebagai penunjang peningkatan kegiatan belajar-mengajar di kelas. Jadi, peningkatan kualitas pengajaran masih sangat mengutamakan tatap muka di kelas. Model web enhanced course menjadikan internet sebagai penyedia sumber belajar yang bisa diakses secara online. Internet juga menjadi sarana bagi peserta didik untuk meningkatkan komunikasi, baik sesama peserta didik, peserta didik dengan pengajar, atau peserta didik dengan kelompok lain di luar institusi sekolah.

b. Distance Learning

Pada model ini, pengajar dan peserta didik terpisah oleh ruang dan waktu. Walau demikian, diskusi masih bisa dilaksanakan, baik secara sinkron maupun asinkron. Seluruh kegiatan pengajaran dilakukan melalui internet sehingga tatap muka secara fisik tidak diperlukan. Dalam distance learning, internet bukan hanya berperan sebagai pendukung kegiatan pengajaran, melainkan juga faktor utama yang menentukan jalannya pengajaran.

(55)

2.2.3.4 Tipe-Tipe E-Learning

Menurut Effendi dan Zhuang (2005, p7), e-Learning mempunyai dua tipe, yaitu: a. Synchronous Training

Synchronous berarti “pada waktu yang sama”. Jadi, synchronous training adalah tipe pelatihan di mana proses pembelajaran pada saat yang sama ketika pengajar sedang mengajar dan murid sedang belajar. Synchronous training mengharuskan guru dan semua siswa mengakses internet bersamaan. Pengajar memberikan makalah dengan slide presentasi dan peserta web conference dapat mendengarkan presentasi melalui hubungan internet. Peserta pun dapat mengajukan pertanyaan atau komentar melalui chat window. Jadi, synchronous training sifatnya mirip pelatihan di ruang kelas. Namun, kelasnya hanya bersifat maya (virtual) dan peserta tersebar di seluruh dunia dan terhubung melalui internet. Oleh karena itu, synchronous training sering pula dinamakan virtual classroom.

b. Asynchronous Training

Asynchronous berarti “tidak pada waktu yang bersamaan”. Jadi, seseorang dapat mengambil pelatihan pada waktu yang berbeda dengan pengajar memberikan pelatihan. Pelatihan ini lebih popular di dunia e-Learning karena memberikan keuntungan yang lebih bagi peserta pelatihan karena dapat mengakses pelatihan kapanpun dan dimanapun.

(56)

2.2.3.5 Fitur E-Learning

Menurut Clark dan Mayer (2008, p10), fitur yang terdapat dalam e-Learning adalah:

a. Konten yang relevan dengan tujuan pembelajaran.

b. Menggunakan metode instruksional seperti contoh dan praktek untuk membantu pembelajaran.

c. Menggunakan media (seperti teks dan gambar) untuk menyampaikan konten dan metode.

d. Membantu meningkatkan pengetahuan dan keterampilan baru yang terkait dengan tujuan dari pembelajaran.

2.2.3.6 Keuntungan E-Learning

E-Learning dapat menghemat biaya dan waktu pembelajaran. Dengan e-Learning, para siswa harus berpartisipasi lebih aktif lagi karena proses belajar tidak lagi terpusat pada guru tetapi beralih ke siswa. Dengan koneksi ke internet, seorang siswa dapat mengakses berbagai sumber informasi yang tak terbatas. Selain itu, e-Learning bersifat individual sehingga siswa yang aktif dan dapat cepat menyerap materi pelatihan akan bisa maju dengan lebih cepat.

Menurut Turban et. al. (2004, p359), ada beberapa keuntungan e-Learning, yaitu: a. Menghemat waktu proses pembelajaran

(57)

b. Volume besar dan keanekaragaman perbedaan

E-Learning dapat menyediakan pelatihan untuk angka pekerja yang banyak dengan bermacam-macam latar belakang budaya dan tingkat pendidikan bahkan dapat berbeda tempat dengan waktu yang berbeda.

c. Mengurangi biaya

E-Learning mampu mengurangi biaya pelatihan. Akan tetapi, pengelola pelatihan pun harus berhati-hati karena manajemen e-Learning yang tidak tepat akan membuat biaya pelatihan semakin membengkak.

d. Mendapat pengetahuan yang lebih banyak

Pelajar yang menggunakan e-Learning biasanya mempunyai inisiatif dan mengambil langkah sendiri. Mereka termotivasi untuk menambah pengetahuan untuk mengembangkan keahliannya.

e. Lebih fleksibel

Kita dapat menggunakan e-Learning di tempat dan waktu yang berbeda, sehingga akan lebih fleksibel untuk mengatur jadwal.

f. Lebih update dan materi yang konsisten

Untuk meng-update infomasi dalam textbook hampir tidak mungkin untuk setiap dua atau tiga tahun. Dengan memakai e-Learning, informasi yang didapat akan lebih update karena bersifat digital teknologi.

g. Hilang rasa kekhawatiran akan kesalahan

E-Learning dapat memfasilitasi pembelajaran untuk pelajar yang sulit untuk bergabung diskusi atau berpartisipasi di kelas karena dalam e-Learning disediakan forum diskusi di mana kita dapat bertanya dan memberikan tanggapan tanpa harus khawatir pertanyaan atau tanggapan yang diberikan salah.

(58)

2.2.3.7 Kekurangan E-Learning

Walaupun e-Learning banyak menawarkan keuntungan, tetapi dengan memakai metode e-Learning juga mempunyai kekurangan dan tantangan yang harus diperhatikan sebelum memakai e-Learning guna mendapatkan hasil yang maksimal. Menurut Turban et. al. (2004, p360), terdapat kekurangan dan tantangan yang harus diperhatikan untuk menggunakan e-Learning, yaitu:

a. Perlu adanya pelatih yang terlatih dalam e-Learning

Banyak pelatih yang tidak mempunyai kemampuan dalam pembelajaran secara e-Learning, sehingga membuat proses pembelajaran dengan e-Learning tidak mencapai hasil yang maksimal. Oleh karena itu, sangatlah penting bila ada pelatih yang sudah dapat menggunakan e-Learning secara maksimal.

b. Diperlukan peralatan dan pelayanan pendukung

Dalam organisasi atau perusahaan, jika ingin menggunakan e-Learning harus membeli peralatan media untuk menyediakan pelayanan pendukung untuk menggunakan, mengkreasikan, dan perawatan e-Learning.

c. Kekurangan untuk berinteraksi tatap muka dalam kelas

Pengajar terkadang berbeda dalam proses pembelajaran secara langsung di kelas dan secara Learning. Apalagi tidak semua materi bisa disampaikan melalui e-Learning seperti kegiatan olahraga dan instrument musik.

d. Penilaian

Dalam lingkungan sekolah atau kampus, pelajar terkadang tidak cukup efektif memakai e-Learning, sehingga tidak menjamin jika ada seseorang yang selesai mengerjakan tugas atau ujian.

(59)

e. Perawatan dan updating

Walaupun bahan atau materi e-Learning lebih mudah untuk di update daripada dengan cara tradisional untuk meng-update bahan atau materi, dalam hal prakteknya sulit untuk dijalankan (contoh: biaya dan waktu) dalam menjaga materi atau bahan tetap up to date. Perawatan e-Learning juga sulit untuk diimplementasikan.

f. Paham komputer

E-Learning tidak dapat disampaikan dengan efektif jika pelajar tidak paham komputer.

2.2.4 PHP

Dalam subbab ini dijelaskan mengenai pengertian PHP dan keuntungan PHP.

2.2.4.1 Pengertian PHP

Menurut Welling dan Thomson (2001, p2), PHP adalah sebuah scripting pada lingkungan server yang dirancang khusus untuk web. Kode PHP dapat disatukan dalam halaman yang berisi tag-tag HTML dan akan dieksekusi setiap halaman tersebut dikunjungi. Kode PHP yang telah dibuat diinterpretasikan oleh web server kemudian akan menghasilkan tag-tag HTML atau output lainnya yang dapat dibaca oleh pengguna. Sebuah website yang hanya dibuat dengan tag-tag HTML bersifat statis. Dengan adanya PHP ini, dapat dibuat suatu website yang dinamis bahkan interaktif.

(60)

2.2.4.2 Keuntungan PHP

Menurut Welling dan Thomson (2001, p4), beberapa keunggulan penting PHP dibandingkan dengan bahasa scripting lainnya adalah sebagai berikut:

a. Performa yang tinggi

PHP sangat efisien, menggunakan sebuah server yang tidak mahal dan dapat melayani jutaan hits setiap hari.

b. Tampilan ke banyak sistem basis data

PHP memiliki hubungan atau koneksi ke banyak sistem basis data. Pengguna dapat langsung terkoneksi ke postgresql, msql, oracle, dbm, filepro, hyperware, informix, interbase, sybase database, dan lain-lain.

c. Memiliki library untuk berbagai web yang umum

PHP dirancang untuk digunakan di web, sehingga menjadikannya dapat dibangun dalam fungsi untuk menampilkan banyak kegiatan web yang berhubungan.

d. Biaya yang murah PHP bersifat gratis.

e. Mudah dipelajari dan digunakan

Sintaks-sintaks PHP berdasarkan bahasa pemrograman, seperti C dan Perl.

f. PHP dapat digunakan hampir di semua sistem operasi, seperti Linux dan Windows. g. PHP bersifat cross platform

Dapat dipakai hampir di semua web server, seperti Apache, AOL Server, dan Micrososft Internet Information Service. Selain itu, PHP dapat juga dijalankan pada berbagai sistem operasi, seperti Linux, Unix, maupun berbagai versi Windows.

(61)

h. Ketersediaan source code

Diberikan akses ke source code PHP. Jika ada sesuatu yang ingin ditambahkan atau dimodifikasi, bebas melakukannya.

i. PHP adalah program yang bersifat open source

Karena bersifat open source, siapapun dapat mengubah atau menambahkan fungsi-fungsi baru secara bebas. Oleh karena itu, PHP memiliki life cycle yang sangat singkat atau selalu up to date dan mengikuti perkembangan teknologi internet.

Jadi, PHP adalah sebuah bahasa pemrograman web yang bekerja di sisi server (server side scripting) yang dapat melakukan konektifitas pada basis data dan banyak dipakai untuk memprogram situs web dinamis.

2.2.5 MySQL

Pada subbab ini akan dibahas mengenai definisi MySQL dan keuntungan MySQL.

2.2.5.1 Definisi MySQL

Menurut Welling dan Thomson (2001, p3), MySQL adalah sistem manajemen basis data yang berhubungan dan sangat cepat. Sebuah basis data memungkinkan untuk menyimpan, mencari, mengurutkan, dan menerima data secara efisien. MySQL adalah multi user, multi thread server, dan menggunakan SQL atau bahasa pemrograman yang terstruktur.

Sedangkan menurut penulis, MySQL merupakan suatu perangkat lunak yang digunakan untuk memanajemen suatu basis data dengan menggunakan perintah dasar SQL.

Gambar

Gambar 2.1 Database Development Lifecycle Diagram
Gambar 2.2 Notasi ERM
Gambar 2.3 berikut ini merupakan contoh dari relasi one-to-one:
Gambar 2.5 One-to-Many Relationship
+7

Referensi

Garis besar

Dokumen terkait

Bagi masyarakat suku DHK, oleh karena sakit di pandang tidak hanya merupakan gejala biolo- gis yang bersifat individual, tetapi di pandang berkaitan secara holistik dengan

Adapun hasil yang didapat dari proses tersebut adalah kelas VII-1 MTs PAB 2 Sampali Tahun Pembelajaran 2017-2018 yang berjumlah 35 orang siswa sebagai kelas

Proses pembuatan elastomer termoplastik dengan cara polimerisasi emulsi telah dilakukan antara karet alam lateks dengan campuran monomer stiren dan metil metakrilat menggunakan

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

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

Dengan demikian perlu dilakukan penelitian untuk mengkaji seberapa besar tingkat pemanfaatan bivalvia oleh masyarakat sehinggga hasilnya dapat digunakan untuk

Turbin angin sederhana terdiri atas sebuah roda atau rotor yang dilengkapi dengan baling-baling (propeller) atau sudu-sudu (blade). Baling-baling atau

Kesimpulan dari hasil penelitian ini didapatkan bahwa proses dekomposisi basa menggunakan NaOH cukup efektif untuk penghilangan pengotor minor seperti Al dan Si, dilihat dari persen