BAB 2 LANDASAN TEORI 2.1
Teori Utama
2.1.1
Basis Data
2.1.1.1 Pengertian Basis Data Basis data adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu piranti lunak komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil query basis data disebut sistem manajemen basis data (Wikipedia,2008) Basis data adalah kumpulan bersama data yang berhubungan secara logis, dan deskripsi data tersebut, untuk memenuhi kebutuhan informasi dari sebuah organisasi atau perusahaan. (Connoly, 2005, p15) Basis data adalah tempat penyimpanan sekumpulan file – file data yang terkomputerisasi. Jadi, dapat disimpulkan bahwa basis data merupakan sekumpulan data yang terkomputerisasi dan berhubungan secara logis, yang dapat diolah untuk mendapatkan informasi bagi suatu organisasi atau perusahaan.
2.1.1.2
Database Management System Database Management System (DBMS) adalah sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara, dan menyediakan kontrol akses ke basis data. (Connoly, 2005, p16) 7
8 Database Management System adalah kumpulan dari hubungan data – data dan sebuah piranti lunak yang digunakan untuk mengakses data tersebut. (Abraham Silberschatz, 2006, p1) Fasilitas-fasilitas yang biasa disediakan dalam Database Management System adalah : •
Pengguna dapat mendefinisikan basis data dengan menggunakan Data Definition Language (DDL).
•
Pengguna dapat melakukan Insert (menambah), Update (memperbaharui), Delete (menghapus), dan Retrieve (mengambil), biasanya disebut dengan Data Manipulation Language (DML)
•
Menyediakan akses kontrol ke basis data seperti (Connoly, 2005, p16): -
Sistem Keamanan (Security System) , sistem ini untuk mencegah pengguna yang tidak mempunyai hak akses dapat memasuki basis data.
-
Sistem Integritas (Integrity System), sistem ini untuk melihara kekonsistenan data yang disimpan dalam basis data.
-
Sistem akses kontrol bersama (Concurrency Control System), sistem ini untuk mengijinkan akses basis data secara bersamaan.
-
Kontrol sistem perbaikan (Recovery Control System), sistem ini berguna untuk mengembalikan basis data ke kondisi sebelumnya setelah terjadi kegagalan perangkat lunak atau perangkat keras. Ada 5 komponen DBMS (DBMS Environment), yaitu (Connoly, 2005,
p19) :
9
Gambar 2.1 DBMS Environment •
Perangkat Keras (Hardware) Mesin yang digunakan untuk menjalankan DBMS beserta aplikasinya. Contoh hardware meliputi minicomputer dan mainframe.
•
Perangkat Lunak (Software) Komponen perangkat lunak terdiri dari perangkat lunak DBMS itu sendiri, program-program aplikasi, sistem operasi dan perangkat lunak jaringan jika DBMS tersebut menggunakan jaringan.
•
Data Komponen penghubung antara Perangkat keras (Hardware) dan perangkat lunak (Software) kepada prosedur dan manusia (People). Data merupakan komponen yang paling penting dalam DBMS Environment.
•
Prosedur (Procedures) Intruksi dan aturan yang mengatur desain dan penggunaan basis data. Pengguna sistem dan staff yang mengatur basis data membutuhkan prosedur bagaimana cara menjalankan sistem
•
Manusia (People) Komponen terakhir, orang-orang yang terlibat dalam sistem DBMS, seperti :
10 1. Database Administrator Orang yang bertanggung jawab terhadap realisasi fisikal basis data yang ada. 2. Database Designer Orang yang merancang basis data. 3. Application Developers Orang yang menyediakan kebutuhan fungsional untuk End – User yang harus diimplementasikan 4. End – Users End – Users adalah “client” untuk basis data yang telah dirancang.
DBMS memiliki banyak keuntungan, antara lain (Connoly, 2005, p26): 1. Control of Data Redudancy DBMS melakukan pendekatan untuk menghilangkan redudancy atau pengulangan data dengan mengintegrasikan file yang ada di dalam basis data sehingga pemborosan tempat yang dikarenakan penyimpanan informasi pada lebih dari satu file dapat dihilangkan. 2. Data Concistency Dengan melakukan kontrol redundancy. Hal ini dapat mengurangi resiko terjadinya ketidakkonsistenan data. Data yang telah tersimpan didalam basis data apabila diperbaharui nilainya akan langsung secara otomatis mengubah data yang tersimpan di basis data tersebut, dan semua pengguna dapat melihat data yang telah diperbaharui sehingga data tetap konsisten.
11 3. More Information from The Same Amount of Data Dengan adanya integrasi data, memungkinkan organisasi atau perusahaan untuk mendapatkan informasi tambahan dari data tersebut. 4. Sharing of Data Pada dasarnya data yang terdapat pada sistem basis data adalah milik seluruh organisasi dan perusahaan sehingga bisa diakses oleh pengguna yang memiliki hak akses. 5. Improve Data Integrity Integritas basis data menunjuk pada validitas dan konsistensi pada data yang tersimpan. 6. Improve Security Dengan menggunakan DBMS dapat melindungi basis data dari pengguna yang tidak memiliki hak akses. 7. Enforcement of Standards Dengan adanya integrasi, database administrator dapat mendefinisikan dan menjalankan standardisasi yang diperlukan, termasuk departemensial, organisasional, nasional atau standardisasi internasional untuk beberapa hal, seperti format data untuk menfasilitasi pertukaran data antar sistem, konvensi nama, standardisasi dokumen, update terhadap prosedur dan aturan akses. 8. Economy of Scale Mengkombinasikan semua data operasional pada organisasi atau perusahaan ke dalam suatu basis data dan membuat kumpulan set dari
12 aplikasi yang bekerja pada suatu data tersebut sehingga penghematan biaya dapat tercapai. 9. Balance of Conflicting Requirements Setiap pengguna atau departemen memiliki kebutuhan yang mungkin dapat bertentangan dengan kebutuhan dari pengguna yang lain. Sejak basis data dikontrol oleh database administrator. Database Administrator dapat membuat keputusan tentang perancangan dan operasional penggunaan dari basis data yang menyediakan sumber yang terbaik bagi seluruh organisasi. Hal ini dapat mencegah terjadinya kebutuhan yang saling bertentangan. 10. Improved Data Accessbility and Responsiveness Sebagai hasil dari integrasi yang dilakukan, data yang melintasi batasan berbagai departemen secara langsung dapat di akses oleh end – user. 11. Increased Productivity DBMS dapat menyediakan banyak fungsi standar bagi programmer. Hal ini jelas dapat meningkatkan kinerja, mengurangi waktu yang dibutuhkan. 12. Improved Maintenance through Data Independence DBMS memisahkan deskripsi data dari aplikasi. Hal ini membuat aplikasi tidak terganggu terhadap perubahan yang terjadi pada deskripsi data. 13. Increase Concurrency Pada beberapa file – based system, jika dua atau lebih pengguna mengakses file yang sama secara bersamaan, dapat menyebabkan kehilangan informasi yang ada atau kehilangan integritasnya. Pada DBMS sudah dapat mengatur akses basis data secara bersamaan sehingga masalah kehilangan informasi
13 atau integritas dapat dihindari. 14. Improved Backup and Recovery Services DBMS telah menyediakan fasilitas untuk mengembalikan data jika terjadi kesalahan.
Kerugian penggunaan DBMS, antara lain (Connoly, 2005, p29) : 1. Complexitiy DBMS merupakan potongan yang kompleks dari perangkat lunak. Perancang dan pengembang basis data, data dan database administrator, dan end – user harus mengerti fungsionalitasnya untuk mendapatkan keuntungan penuh dari DBMS. 2. Size Kompleksitas dan kerumitan dari DBMS membuat ukurannya menjadi besar sebagai bagian dari perangkat lunak. 3. Cost of DBMS Biaya dari DBMS ini terus berubah, tergantung pada lingkungannya dan fungsi yang disediakannya. 4. Additional Hardware Cost Untuk meningkatkan performanya, dibutuhkan mesin yang lebih besar, bahkan mungkin mesin yang khusus untuk menjalankan DBMS sendiri. 5. Cost of Conversion Dalam beberapa situasi, biaya dari DBMS untuk mengkonversi aplikasi yang sudah ada sehingga dapat dijalankan ke dalam DBMS yang baru dan
14 perangkat keras yang baru besar. 6. Performance DBMS dibuat untuk menangani banyak aplikasi, sehingga bila digunakan untuk menangani sedikit aplikasi menyebabkan mereka tidak berjalan dengan efektif dan efisien. 7. Higher Impact of Failure Sentralisasi sumber meningkatkan sistem mudah terkena dampak. Semua pengguna dan aplikasi bergantung pada DBMS sehingga bila terjadi kesalahan pada komponennya dapat menyebabkan kegagalan operasi.
2.1.1.3
Siklus Basis Data Sebuah sistem basis data adalah komponen pokok dari sebuah sistem informasi dan perkembangan serta pengunaan basis data harus dilihat dari sudut pandang kebutuhan perusahaan yang lebih besar. (Connoly, 2005, p283) Untuk merancang aplikasi sistem basis data diperlukan tahapan – tahapan terstruktur.
15 Database Planning
System Definition
Reguirement Collection and Analysis Database Design Conseptual Database Design DBMS Selection (Optional) Logical Database Design
Application Design
Physical Database Design
Prototyping (Optional)
Implementation
Data Conversion and Loading
Testing
Operational Maintenance
Gambar 2.2 Diagram Siklus Basis Data
a. Perencanaan Basis Data ( Database Planning) Perencanaan memperbolehkan
basis
data
tingkat-tingkat
adalah
aktivitas
pada
aplikasi
manajemen basis
data
yang untuk
direalisasikan seefisien dan seefektif mungkin. (Connoly, 2005, p285) Perencanaan basis data harus terintegrasi dalam strategi sistem infromasi. Tiga hal utama yang ada dalam perumusan strategi sistem informasi adalah :
16 1. Identifikasikan rencana dan tujuan dari perusahaan 2. Evaluasi sistem informasi yang sedang berjalan untuk mengetahui kekuatan dan kelemahannya 3. Temukan kesempatan teknologi informasi, hal ini mungkin dapat menjadi keuntungan dalam persaingan Langkah-langkah penting yang ada dalam perencanaan basis data adalah : •
Mission Statement Mission Statement adalah menjelaskan tujuan utama dari aplikasi basis data, tujuan proyek dan memberikan penjelasan tentang pembuatan aplikasi basis data secara efektif dan efisien dengan tujuan untuk memberikan fokus dan gambaran tentang pekerjaan pada tahap selanjutnya. (Connoly, 2005, p286)
•
Mission Objectives Mission Objectives adalah merumuskan tujuan dari sebuah proyek basis data, menjelaskan tugas-tugas yang harus didukung oleh basis data tersebut. (Connoly, 2005, p286)
b. Sistem Definisi (System Definition) Tahap ini menjabarkan jangkauan dan batasan dari aplikasi basis data, penggunaan
basis
data
dan
lingkungan
tempat
basis
data
diimplementasikan. System Definition sangat penting dilakukan agar perancangan basis data lebih terfokus.
17 c. Pengumpulan Kebutuhan dan Analisis (Requirement Collection and Analysis) Tahap ini dilakukan proses pengumpulan dan analisa informasi tentang bagian suatu organisasi yang didukung oleh aplikasi basis data dan menggunakan informasi tersebut untuk mengidentifikasikan kebutuhan pengguna terhadap sistem baru yang akan dibuat. (Connoly, 2005, p288) Fact-Finding
adalah
teknik-teknik
yang
digunakan
untuk
mengumpulkan fakta-fakta tentang sistem dan kebutuhan- kebutuhannya. Kegiatan-kegiatan yang biasa dilakukan dalam Fact-Finding adalah : 1. Memeriksa Dokumentasi Memeriksa dokumen-dokumen, formulir, laporan dan berkas yang terkait dengan sistem yang sedang berjalan pada perusahaan atau organisasi. 2. Wawancara Wawancara bertujuan untuk mengumpulkan fakta, mengidentifikasikan kebutuhan-kebutuhan dan mengumpulkan ide-ide serta pendapat. (Connoly, 2005, p317) Wawancara membutuhkan kemampuan berkomunikasi yang baik dalam menghadapi pengguna yang berbeda-beda. 3. Mengamati Kegiatan Perusahaan Melakukan pengamatan terhadap aktivitas-aktivitas yang dilakukan oleh perusahaan atau organisasi. 4. Penelitian
18 Penelitian adalah suatu penyelidikan atau suatu usaha pengujian yang dilakukan secara teliti, dan kritis dalam mencari fakta-fakta atau prinsip-prinsip dengan menggunakan langkah-langkah tertentu. 5. Kuesioner Kuesioner adalah suatu dokumen yang bertujuan untuk mengumpulkan fakta-fakta dikumpulkan dari banyak orang sambil menjaga kontrol terhadap tanggapan yang diberikan. (Connoly, 2005, p320) d. Perancangan Basis Data (Database Design) Perancangan basis data adalah proses pembuatan sebuah rancangan untuk basis data yang akan mendukung operasi dan tujuan perusahaan yang dibutuhkan oleh sistem basis data. Tahap ini dilakukan perancangan basis data secara konseptual, logikal dan fisikal. e. Pemilihan DBMS (DBMS Selection (Optional)) DBMS (Database Management System) adalah perangkat lunak khusus yang digunakan untuk membuat, mengakses, mengontrol dan mengatur sebuah basis data. (Whitten, 2004, p760) Tahap ini dilakukan pemilihan DBMS yang paling cocok untuk basis data. Langkah-langkah utama yang dilakukan untuk pemilihan DBMS adalah : 1. Mendefinisikan terminology sebagai referensi 2. Daftar singkat tentang produk, biasanya dua atau tiga produk 3. Evaluasi Produk
19 4. Merekomendasikan pilihan dan membuat laporan f. Perancangan Aplikasi (Application Design) Tahap ini dilakukan untuk merancang interface dan program aplikasi yang menggunakan atau memproses basis data. g. Prototipe (Prototyping (Optional)) Prototipe adalah proses membangun sebuah model kerja dari aplikasi basis data. Tahap ini ditujukan untuk membangun prototype dari aplikasi basis data. Prototype digunakan untuk menvisualisasikan dan mengevaluasi bagaimana bentuk sistem tersebut. Prototyping dibagi menjadi dua strategi umum, yaitu : •
Requirement Prototyping adalah menggunakan prototype untuk menentukan kebutuhan dan tujuan aplikasi basis data. Ketika kebutuhan dan tujuan aplikasi basis data telah terpenuhi maka prototype sudah tidak digunakan lagi.
•
Evolutionary Prototyping mempunyai tujuan yang sama dengan requirement prototyping, tetapi perbedaannya adalah prototype tetap digunakan untuk perkembangan aplikasi basis data.
h. Implementasi (Implementation) Implementasi adalah realisasi fisikal dari desain basis data dan desain aplikasi. Tahap ini dilakukan
pembuatan definisi basis data secara
eksternal, konseptual dan internal beserta program aplikasinya.
20 i. Konversi Data (Data Convertion and Loading) Tahap ini dilakukan pemindahan data yang ada di dalam basis data yang baru dan mengubah aplikasi yang sedang berjalan agar dapat digunakan dalam basis data yang baru. j. Pengujian (Testing) Testing adalah suatu proses mengeksekusi program aplikasi yang bertujuan untuk menemukan kesalahan. Aplikasi basis data yang telah selesai akan diuji coba dengan tujuan mencari masalah yang timbul pada aplikasi tersebut. Dilakukan juga validasi aplikasi atas kebutuhan yang telah dispesifikasikan sebelumnya oleh pengguna. k. Perawatan Operasional (Operational Maintenance) Perawatan
Operasional
adalah
suatu
proses
memonitor
dan
memelihara sistem berdasarkan instalasi. Aktivitas yang biasa dilakukan dalam tahap perawatan operasional adalah : 1. Memantau kinerja sistem. Jika kinerja sistem menurun dibawah level yang dapat diterima, maka basis data perlu ditata ulang. 2. Pemeliharaan dan peningkatan versi terbaru dari aplikasi basis data.
21 2.1.1.4
Tahapan Perancangan Basis Data Metodologi perancangan basis data dibagi dalam 3 tahap (Connoly & Begg): 1. Perancangan Basis Data Konseptual Tahap ini merupakan pembuatan model informasi yang akan digunakan dalam perusahaan tetapi tidak tergantung kepada masalah fisik perusahaan tersebut, seperti DBMS yang digunakan, bahasa pemrograman, hardware yang digunakan, tingkat kinerja, dan masalah fisik lainnya. Langkah – langkah perancangan basis data konseptual secara garis besar : •
Penentuan entitas (entity)
•
Mendefinisikan hubungan (relationship) antar entitas
•
Menerjemahkan hubungan setiap entitas
2. Perancangan Basis Data Logikal Tahap ini merupakan pembuatan model informasi yang digunakan oleh perusahaan berdasarkan pada model data khusus tetapi bebas dari DBMS tertentu dan masalah fisik lainnya. Langkah-langkah yang dilakukan pada tahap ini adalah : •
Membangun sebuah data model logikal lokal dari model data konseptual
lokal yang menggambarkan pandangan tertentu dari
perusahaan dan kemudian model tersebut disahkan untuk memastikan strukturnya telah benar atau dengan kata lain dinormalisasi. •
Membuat kombinasi model data logikal lokal individual ke dalam sebuah model data logikal global tunggal yang menggambarkan
22 perusahaan. Hasil akhir dari tahap ini adalah berupa kamus data yang berisi semua atribut beserta key-nya dan ERD secara keseluruhan dengan sebuah attribut key-nya
3. Perancangan Basis Data Fisikal Tahap ini merupakan proses pembuatan deskripsi dari implementasi basis data pada secondary stage yang menjelaskan basis relasi, organisasi file, dan indeks yang digunakan untuk memperoleh akses pada data. Tahap ini juga perancang menentukan bagaimana basis data diimplementasikan. Tahap-tahap perancangan basis data fisikal adalah : 1. Ubah model data logikal global untuk DBMS 2. Merancang representasi fisik 3. Merancang user views 4. Merancang mekanisme keamanan
Berikut ini merupakan langkah-langkah metodologi dari perancangan basis data : 1. Perancangan Konseptual Basis Data Langkah 1 : membuat data model lokal yang konseptual untuk setiap tampilan 1.1 : Mengidentifikasikan tipe-tipe entity 1.2 : Mengidentifikasikan tipe-tipe dari relationship
23 1.3 : Mengidentifikasikan dan hubungkan atribut dengan tipe-tipe entity atau relationship 1.4 : Menentukan domain-domain dari atribut 1.5 : Menentukan atribut-atribut, candidate key, dan primary key 1.6 : Pertimbangkan penggunaan konsep enhanced modelling (optional) 1.7 : Periksa model dari redudancy 1.8 : Menvalidasikan model konseptual lokal terhadap transaksi pengguna. 1.9 : Melihat kembali data model konseptual dengan pengguna.
2. Perancangan logikal basis data untuk model relasional Langkah 2 : Membuat dan menvalidasi data model lokal yang logikal untuk setiap tampilan. 2.1 : Hilangkan fitur-fitur yang tidak kompatibel dengan model relasional (optional) 2.2 : Turunkan relasi-relasi untuk data model logikal lokal 2.3 : Menvalidasikan relasi-relasi menggunakan normalisasi 2.4 : Menvalidasikan relasi-relasi terhadap transaksi pengguna 2.5 : Menentukan integrity constraints (batasan yang diberlakukan untuk menjaga basis data agar tetap konsisten) 2.6 : Melihat kembali data model logikal lokal dengan pengguna. Langkah 3 : Membuat dan menvalidasikan data model global yang logikal 3.1 : Menggabungkan data model logikal lokal menjadi model global 3.2 : Menvalidasikan data model logikal global
24 3.3 : Periksa untuk perkembangan mendatang 3.4 : Melihat kembali data model logikal global dengan pengguna.
3. Perancangan Fisikal basis data untuk basis data relasional Langkah 4 : Menggubah data model global yang logikal untuk target DBMS 4.1 : Merancang relasi – relasi dasar 4.2 : Merancang representasi data turunan 4.3 : Merancang enterprise constraints Langkah 5 : Merancang representasi fisik 5.1 : Analisa transaksi 5.2 : Memilih pengaturan file 5.3 : Memilih pengindeks-an 5.4 : Memperkirakan kebutuhan disk space Langkah 6 : Merancang tampilan pengguna Langkah 7 : Merancang mekanisme keamanan Langkah 8 : Mempertimbangkan pengenalan dari kontrol Langkah 9 : Mengawasi dan mengatur sistem operasi
2.1.2
Entity Relationship Modelling Salah satu aspek yang sulit dalam perancangan basis data adalah perancang, programmer, dan pemakai cenderung melihat data dengan cara yang berbeda. Jadi untuk memastikan pemahaman secara alamiah dari data
dan
25 bagaimana data digunakan oleh perusahaan, dibutuhkan sebuah bentuk komunikasi non-teknis yang disebut dengan Entity Relationship Modelling. (Connoly, 2005,p45) Dibawah ini adalah contoh gambar notasi Entity-Relationship Modelling :
Gambar 2.3 Notasi Entity-Relationship Modelling
2.1.2.1 Tipe Entitas Tipe Entitas adalah kumpulan objek-objek dengan properties yang sama, yang didefinisikan oleh perusahaan yang keberadaannya tidak bergantung. Tipe Entitas didefinisikan sebagai kumpulan entitas yang memiliki atribut yang sama. Entity Occurrence adalah objek atau tipe entity yang diidentifikasikan secara unik. Tipe entity dapat diklasifikasikan menjadi :
26 -
Tipe Entity Kuat, yaitu tipe entity yang keberadaannya tidak bergantung pada tipe entity lainnya. ( Connolly, 2005, p354 )
-
Tipe Entity Lemah, yaitu tipe entity yang keberadaannya bergantung pada tipe entity lainnya. ( Connolly, 2005, p355 )
Gambar 2.4 Diagram Tipe Entitas Kuat dan Entitas Lemah
2.1.2.2
Tipe Relasi Tipe relasi adalah satu set dari penyatuan antara tipe-tipe entitas. Setiap tipe relasi diberi nama sesuai dengan fungsinya. Relationship Occurence adalah gabungan yang dapat diidentifikasikan secara unik, yang meliputi suatu kejadian dari setiap entity yang ada. Derajat Relationship Derajat dari relationship adalah jumlah dari partisipasi entity dalam sebuah relationship (Connoly, 2005, p347). Lambang belah ketupat
27 menggambarkan relasi yang memiliki derajat lebih dari dua. Nama relationship ditampilkan di dalam belah ketupat. Complex Relationship adalah sebuah relationship antara tiga atau lebih tipe entitas.
Gambar 2.5 Representasi diagram derajat tiga dari suatu tipe relationship (Connoly, 2005, p349)
Recursive Relationship Recursive Relationship adalah sebuah tipe relationship dimana tipe entitas yang sama berpartisipasi lebih dari satu kali pada peran yang berbeda. (Connoly, 2005, p349) Relationship dapat diberikan nama peran untuk menentukan fungsi dari setiap entitas yang terlibat dalam relationship tersebut. Nama peran juga dapat digunakan jika dua buah entitas dihubungkan lebih dari satu relationship. Representasi diagram terhadap recursive relationshp dapat dilihat pada gambar 2.6 dan gambar 2.7
28
Gambar 2.6 Representasi diagram recursive relationship dan nama peran (Connoly, 2005, p349)
Gambar 2.7 Representasi diagram entitas dengan dua relationship berbeda beserta nama peran (Connoly, 2005, p350)
2.1.2.3 Atribut Atribut adalah sifat dari sebuah entity atau sebuah tipe relationship. Atribut menyimpan nilai dari setiap entity occurrence dan mewakili bagian
29 utama dari data yang disimpan dalam basis data. Atribut domain adalah satuan nilai-nilai untuk satu atau beberapa atribut. Setiap atribut yang dihubungkan dengan sejumlah nilai disebut domain. mendefinisikan nilai-nilai yang dimiliki sebuah atribut dan sama
Domain
dengan konsep domain pada model relasional. Atribut dapat diklasifikasika menjadi : •
Simple Attribute adalah atribut yang terdiri dari satu komponen tunggal yang keberadaannya bebas. Simple Attribute tidak dapat dibagi lagi menjadi komponen yang lebih kecil.
•
Composite Attribute adalah atribut yang terdiri dari banyak komponen dengan keadaan yang bebas. Dalam hal ini beberapa atribut dapat dipisahkan menjadi komponen yang lebih kecil. • Single Value Attribute adalah atribut yang memiliki nilai tunggal untuk masing-masing kejadian dari entity. Multi Value Attribute adalah atribut yang memiliki banyak nilai untuk masing-masing kejadian dari entity.
•
Derived Attribute adalah atribut mengantikan nilai yang diturunkan dari nilai sebuah atribut yang berhubungan, tidak perlu pada jenis entity yang sama.(Connoly, 2005, p351)
2.1.2.4 Keys Keys berfungsi untuk menghubungkan suatu objek dengan objek yang lain. Keys diletakan pada atribut yang telah ditentukan kedudukannya, agar dapat
30 dihubungkan dengan atribut pada entity yang lain. Beberapa jenis key yang biasa digunakan : •
Candidate Key adalah himpunan yang mengidentifikasikan tiap-tiap keberadaan suatu entity.
•
Composite Key adalah sebuah candidate key yang terdiri dari dua atau lebih atribut.
•
Primary Key adalah Candidate Key yang dipilih secara unik untuk mengidentifikasikan tiap-tiap keberadaan suatu tipe entity.
•
Foreign Key adalah himpunan atribut dalam suatu relasi yang cocok dengan beberapa candidate key dari beberapa relasi.
•
Alternate Key adalah candidate key yang tidak dipilih menjadi primary key.
Gambar 2.8 Representasi diagram entitas Pegawai dan Cabang beserta atribut dan primary key (Connoly, 2005, p342)
2.1.2.5
Structural Constraint Batasan – batasan yang menggambarkan pembatasan pada relationship
31 seperti yang ada pada ‘ real world ‘ harus diterapkan pada tipe entity yang ikut serta pada sebuah relationship. Jenis utama dari batasan pada suatu relationship dinamakan multiplicity ( Connolly, 2005, p356 ). Multiplicity adalah jumlah occurrence yang mungkin terjadi pada sebuah tipe entity yang berhubungan ke sebuah occurrence dari tipe entity lain pada suatu relationship ( Connolly, 2005, p356 ). Derajat yang biasanya digunakan pada suatu relationship adalah binary relationship, yang terdiri atas :
1.One – to – one ( 1 : 1 ) Relationship Setiap relationship menggambarkan hubungan antara sebuah entity occurrence pada entity yang satu dengan sebuah entity occurrence pada entity lainnya yang ikut serta dalam relationship tersebut. Pegawai tipe entitas ( noPeg
Mengatur tipe relationship
Cabang tipe entitas (
Gambar 2.9 Semantic net menunjukkan dua occurrence dari relationship Pegawai mengatur Cabang ( Connolly, 2005, p357 )
32
Setiap cabang diatur oleh satu orang pegawai
Pegawai noPeg
Seorang pegawai dapat mengatur nol atau satu cabang
Mengatur 1..1
Cabang 0..1
noCab
Multiplicity
Gambar 2.10 Multiplicity dari relationship one – to – one ( 1 : 1 ) ( Connolly, 2005, p358 )
2. One – to –Many (1 : *) Relationship Setiap relationship menggambarkan hubungan antara sebuah entity occurrence pada entity yang satu dengan satu atau lebih entity occurrence pada entity lainnya yang ikut serta dalam relationship tersebut. Pegawai tipe entitas (noPeg)
Melihat tipe relationship
RumahSewa tipe entitas (noRumah)
Gambar 2.11 Semantic net menunjukkan tiga occurrence dari relationship Pegawai melihat RumahSewa ( Connolly, 2005, p361 )
33
Setiap rumah sewa dilihat oleh nol atau satu pegawai
Setiap pegawai melihat nol atau lebih rumah sewa
Melihat
Pegawai
0..1
noPeg
RumahSewa 0..*
noRumah
Gambar 2.12 Multiplicity dan relationship one – to – many ( 1 : * ) ( Connolly, 2005, p359 )
3. Many – to – many ( * : * ) Relationship Setiap relationship menggambarkan hubungan antara satu atau lebih entity occurrence pada entity yang satu dengan satu atau lebih entity occurrence pada entity lainnya yang ikut serta dalam relationship tersebut. Koran tipe entitas ( namaKoran )
Mengiklankan tipe relationship
RumahSewa tipe entitas ( noRumah )
Gambar 2.13 Semantic net menunjukkan empat occurrence dari relationship Koran mengiklankan RumahSewa ( Connolly, 2005, p361 )
34
Setiap rumah sewa diiklankan pada nol atau lebih koran
Koran namaKoran
Setiap koran mengiklankan satu atau lebih rumah sewa
Mengiklankan 0..*
RumahSewa 1..*
noRumah
Gambar 2.14 Multiplicity dari relationship many – to – many ( * : * ) ( Connolly, 2005, p 360 )
2.1.3 Normalisasi Normalisasi adalah sebuah teknik untuk menghasilkan sekumpulan relasi dengan properti yang diinginkan, yang akan memberikan kebutuhan data bagi perusahaan (Connolly, 2005, p388). Relasi adalah sebuah tabel dengan kolom dan baris. Basis data dianggap normal jika basis data tersebut tidak mengulangi data (data redundancy) atau tidak menimbulkan keanehan pada proses update, delete, atau insert. Tujuan normalisasi adalah sebagai berikut : ● Menghilangkan kumpulan relasi dari inserting, updating, dan delete dependency yang tidak diharapkan ● Mengurangi kebutuhan restrukturisasi kumpulan relasi dan meningkatkan life spam program aplikasi ● Membuat model relasional yang lebih informatif.
35 ● Membuat sekecil mungkin terjadinya data rangkap ● Menghindari adanya data yang tidak konsisten terutama bila dilakukan penghapusan atau penambahan data sebagai akibat adanya data rangkap. ● Menjamin bahwa identitas tabel secara tunggal sebagai determinan semua atribut. Hal penting yang perlu diperhatikan dalam proses normalisasi untuk basisdata relational adalah hanya bentuk normal pertama (First normal form / 1NF) yang menjadi kritis dalam membuat relasi. Semua bentuk normal berikutnya adalah optional. Tetapi untuk menghindarkan update anomalies (relasi yang memiliki pengulangan atau redundansi data yang dapat menyebabkan masalah) biasanya dianjurkan sampai pada tahap ketiga (3NF). Normalisasi yang umum dipakai adalah sampai dengan bentuk normal ketiga. Berikut ini adalah proses normalisasi : 1. First Normal Form (1NF) Sebelum memasuki tahap 1NF, status sebelum 1NF disebut dengan Unormalized Form (UNF), yaitu sebuah tabel yang mengandung satu atau lebih kelompok yang berulang. First Normal Form (1NF) adalah sebuah relasi dimana persimpangan dari setiap baris dan kolom yang mengandung satu dan hanya satu nilai saja. Untuk mengubah tabel UNF kedalam 1NF harus mengidentifikasi dan menghilangkan repeating group pada tabel. Sebuah repeating group adalah sebuah atribut atau kumpulan atribut pada suatu tabel yang terdapat lebih dari satu nilai (multiple) untuk sebuah occurrence tunggal dari key atributnya
36 yang ditunjuk dalam tabel. Ada dua pendekatan umum untuk menghilangkan repeating group pada tabel UF, antara lain :
Pendekatan
pertama,
menghilangkan
repeating
group
dengan
memasukan data yang berlebihan ke dalam kolom dan baris yang kosong. Sehingga hasil dari tabel nantinya hanya mengandung nilai atomik (tunggal).
Pendekatan
kedua,
menghilangkan
repeating
group
dengan
menempatkan data yang berlebihan, selanjutnya dengan meng-copy atribut kuncinya yang asli dalam sebuah relasi yang dipisahkan. Kedua pendekatan ini benar. Tetapi pendekatan kedua awalnya menghasilkan relasi yang paling sedikit pada 1NF dengan mengurangi redundansi. Jika menggunakan pendekatan pertama, relasi dari 1NF adalah buruk,
selanjutnya
selama
langkah
normalisasi
berikutnya
akan
menghasilkan relasi yang sama yang dihasilkan oleh pendekatan kedua. Akan tetapi hasil dari normalisasi 1NF masih menyebabkan update anomalies, sehingga diperlukan normalisasi ketahapan selanjutnya yang dinamakan bentuk normalisasi kedua (2NF). 2. Second Normal Form (2NF) Second Normal Form (2NF) adalah sebuah relasi dimana pada bentuk normal pertama dan setiap attribute yang bukan primary key adalah secara fungsional tergantung dengan primary key. Primary key adalah candidate key yang dipilih untuk mengidentifikasi tuple secara unik pada sebuah relasi. Sedangkan tuple adalah baris pada sebuah relasi.
37 Proses normalisasi 1NF ke 2NF melibatkan penghilangan partial dependencies. Jika terdapat partial dependencies, maka atribut functionally dependent dari relasi akan dihilangkan dengan menempatkannya pada sebuah relasi baru bersama dengan copy determinant mereka. Full functional dependency adalah suatu keadaan dimana jika A dan B adalah atribut, B secara fungsional sangat tergantung pada A dan jika B secara fungsional bergantung pada A, tetapi bukan subset dari A. 3. Third Normal Form (3NF) Third Normal Form (3NF) adalah sebuah relasi dimana bentuk normal pertama dan kedua, dan dimana tidak ada attribute yang bukan primary key secara transitif bergantung pada primary key. Transitive dependency adalah sebuah kondisi dimana A, B dan C adalah atribut dari relasi dimana A → B dan B → C, maka C adalah transitive dependency pada A melalui B. Proses normalisasi dari relasi 2NF ke 3NF melibatkan penghilangan dari ketergantungan transitif. Jika sebuah ketergantungan transitif muncul, maka dihilangkan ketergantungan transitif antara atributnya dengan menempatkan atribut tersebut kedalam relasi baru, selanjutnya dengan sebuah salinan dari determinannya.
2.1.4
Denormalisasi Denormalisasi adalah informasi dari sebuah entitas diletakkan dalam sebuah tabel sehingga memungkinkan tabel tersebut memiliki banyak duplikasi data.
38 Denormalisasi adalah pelanggaran terhadap normalisasi yang ditujukan demi pertimbangan perfoma dengan cara mengendalikan redudansi untuk mengurangi perhitungan, kompleksitas perintah dan jumlah table yang di-Join. Konsekuensi : •
Kebutuhan tambahan ruang penyimpanan
•
Proses manipulasi data lebih lambat
Denormalisasi adalah hal mendasar dalam membuat datawarehouse.
2.1.5
SQL SQL adalah suatu bahasa komputer yang mengikuti standard ANSI (American National Standard Institute), yaitu sebuah bahasa standar yang digunakan untuk mengakses dan melakukan manipulasi suatu sistem basis data. Statemen dalam SQL dapat digunakan untuk mengakses data atau meng-update data pada suatu basis data. (Diambil dari web “Seputar internet dan tekhnologi”, 2008) SQL adalah sebuah bahasa yang digunakan dalam setiap hubungan untuk mengubah Input menjadi Output yang dicari. (Connoly, 2005, p 113) Komponen yang ada dalam SQL adalah : •
DDL (Data Definition Language) DDL adalah sebuah bahasa yang memperbolehkan seorang DBA atau user untuk mendeskripsikan dan memberi nama pada entity, attribut dan relationships yang dibutuhkan oleh aplikasi, bersama dengan associated integrity dan security.
39 Beberapa statemen atau sintaks yang sering dijumpai dalam DDL :
•
•
CREATE TABLE, untuk membuat tabel
•
ALTER TABLE, untuk merubah struktur suatu tabel
•
DROP TABLE, untuk menghapus suatu tabel
•
CREATE INDEX, untuk membuat suatu index dalam tabel
•
DROP INDEX, untuk menghapus suatu index dalam tabel
DML (Data Manipulation Language) Data Manipulation Language adalah bahasa pemrograman yang memungkinan pengguna untuk mengakses atau memanipulasi data yang telah disusun oleh data model. (Abraham Silberschatz, 2006, p9) Dua tipe Data Manipulation Language adalah : 1. Procedural DMLs Pengguna harus menspesifikasikan data apa yang dibutuhkan dan bagaimana cara untuk mendapatkan data tersebut. 2. Declarative DMLs Pengguna dapat menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana cara untuk mendapatkan data tersebut. Berikut ini adalah penjelasan singkat dari sintaks-sintaks tersebut : •
SELECT, bertugas untuk mengakses data dari suatu tabel dalam basis data.
•
UPDATE, bertugas untuk merubah data dalam suatu tabel pada basis data.
•
DELETE, bertugas untuk menghapus data dari suatu tabel dalam basis
40 data. •
INSERT, bertugas menambahkan data ke dalam suatu table dalam basis data.
2.1.5.1
MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL atau DBMS yang multithread dan multi-user. (Wikipedia,2008) MySQL adalah suatu perangkat lunak database relasi
2.1.6
Fourth Generation Language 4GL adalah pembaharuan dari Third Generation Language (3GL), inti dari
4GL
adalah
mempersingkat
dan
meminimalkan
perintah
dalam
pemrograman. Sebuah operasi yang membutuhkan ratusan baris perintah dalam 3GL, dalam 4GL jumlah baris perintah menjadi lebih sedikit. Contoh dari 3GL adalah COBOL, contoh dari 4GL adalah SQL. 4GL meliputi : -
Presentation Languages, seperti query languges dan report generators.
-
Speciality Languages, seperti spreadsheets dan database languages.
-
Application Generators, yang mendefinisikan insert, update dan mengambil data dari basis data untuk dibangun menjadi aplikasi
-
Very high-level languages yang digunakan untuk menghasilkan kode-kode aplikasi
41 2.1.7
Diagram Alir Dokumen (DAD) Diagram Alir Dokumen merupakan suatu diagram simbolik yang menunjukkan aliran dokumen dan urutan operasi dalam suatu sistem. Diagram Alir Dokumen menggambarkan aliran dari dokumen dan informasi dalam area yang bertanggung jawab dalam suatu organisasi.
Tabel 2.1 Tabel Diagram Aliran Data (DAD) Gambar
Nama Simbol Arah
Penjelasan Arus proses
Dokumen
Simbol ini digunakan untuk menggambarkan semua jenis dokumen yang merupakan formulir yang digunakan untuk merekam data terjadinya transaksi
Dokumen dan tembusannya Simbol ini digunakan untuk menggambarkan dokumen asli dan tembusannya.
Berbagai dokumen
Simbol ini digunakan untuk menggambarkan berbagai jenis dokumen yang digabungkan dalam satu paket.
42 Gambar
Nama
Penjelasan Simbol ini digunakan untuk menggambarkan catatan akutansi yang digunakan untuk mencatat data yang direkam sebelumnya dalam dokumen atau formulir
Penghubung pada halaman yang sama (on-page connector)
Dalam menggambarkan bagan alir, arus dokumen dibuat mengalir dari atas ke bawah dan dari kiri ke kanan. Karena keterbatasanan ruang halaman kertas menggambar, maka diperlukan simbol penghubung yang untuk memungkinkan aliran dokumen berhenti di suatu lokasi pada halaman tertentu dan kembali berjalan di lokasi lain pada halaman yang sama.
Akhir arus dokumen.
Simbol ini akan mengarahkan pembaca ke simbol penghubung yang sama nomornya.
Awal arus dokumen
Simbol ini menjadi penghubung halaman yang sama.
Catatan
43 Gambar
Nama Penghubung pada halaman yang berbeda (off-page connector)
Penjelasan Jika dalam menggambar bagan alir melebihi satu halaman maka simbol ini digunakan untuk menunjukkan kemana dan bagaimana bagan alir terkait satu sama lain.
Kegiatan Manual
Simbol ini digunakan untuk menggambarkan kegiatan manual.
Keterangan, komentar
Simbol ini digunakan untuk menambahkan keterangan untuk memperjelas pesan yang disampaikan dalam bagan alir
Arsip Sementara
Simbol ini digunakan untuk menunjukkan tempat penyimpanan dokumen.
Arsip Permanen
Simbol ini digunakan untuk menggambarkan arsip permaenn yang merupakan tempat penyimpanan dokumen yang tidak akan diproses lagi. Simbol ini menggambarkan pengolahan data dengan komputer secara online.
Online computer process
2.1.8
State Transition Diagram (STD) State Transition Diagram adalah suatu diagram yang menggambarkan
44 bagaimana suatu proses dihubungkan satu sama lain dalam waktu yang bersamaan. State Transition Diagram digambarkan dengan sebuah state yang merupakan komponen sistem yang menunjukan bagaimana kejadian-kejadian tersebut dari satu state ke state lain. (Jeffery A et al, 1996, p364) State Transition Diagram adalah sebuah perlengkapan yang digunakan utnuk menggambarkan urutan dan variasi dari layar yang terjadi menurut sesi pengguna. (Whitten, Bentley, dan Dittman, 2004, p673) Ada dua macam simbol yang digunakan untuk menggambarkan proses dalam State Transition Diagram, yaitu : •
Gambar persegi panjang yang menunjukan state dari sistem
Gambar 2.15 Simbol State dalam STD
•
Gambar panah menunjukan transisi antar state. Tiap panah diberi label dengan ekspresi aturan. Label yang di atas menunjukkan kejadian yang menyebabkan transisi yang terjadi. Label yang dibawah menunjukkan aksi yang terjadi akibat kejadian tadi.
Gambar 2.16 Simbol Transisi dalam STD
45 Contoh STD : Verifikasi Login Username dan Password
Data Valid
Menu Utama
Data Tidak Valid
Gambar 2.17 Contoh STD
2.1.9 2.1.9.1
Interaksi Manusia dan Komputer (IMK) Pengertian Interaksi Manusia dan Komputer Interaksi Manusia dan Komputer adalah suatu displin ilmu yang berhubungan dengan perancangan, evaluasi, implementasi sistem komputer interaktif untuk digunakan manusia, serta merupakan suatu studi terhadap suatu fenomena-fenomena besar yang berhubungan dengannya. Ilmu ini lebih menekankan pada perancangan dan evaluasi antar pemakai.
Manusia
Antarmuka
Sistem
pemakai
komputer
Gambar 2.18 Interaksi Manusia dan Komputer Untuk saat ini sistem yang interaktif semakin penting dengan perkembangan penggunaan komputer. Maka dari itu ilmu “Interaksi Manusia dan Komputer” sangat dibutuhkan. Lima kriteria yang harus dipenuhi oleh suatu sistem agar user-friendly
46 menurut Scheiderman,1992 : 1. Waktu Belajar Berapa lama waktu yang dibutuhkan oleh user untuk dapat mempelajari cara melakukan tugas yang sesuai dengan sistem tersebut. 2. Kecepatan Kinerja Berapa lama tugas selesai dilakukan? 3. Tingkat Kesalahan Berapa banyak kesalahan yang dilakukan user dalam mengoperasikan sistem dan apa saja kesalahan-kesalahan yang dibuat oleh pemakai? 4. Daya ingat Bagaimana kemampuan pemakai dalam mempertahankan pengetahuan yang telah didapatnya setelah jangka waktu tersebut. 5. Kepuasan Subjektif Bagaimana kepuasan pemakai terhadap berbagai aspek sistem. Tahap ini memberikan kesempatan kepada pemakai untuk memberikan umpan balik.
2.1.9.2 Delapan Aturan Emas Delapan Aturan Emas dalam IMK : •
Berusaha Keras Selalu Konsisten Konsisten dalam kesamaan terminologi dalam membuat menu, tampilan, font dan help screen. Konsisten dalam warna, kapitalisasi dan tampilan itu penting.
•
Memungkinkan Frequent User menggunakan shortcut
47 Seorang user yang sudah tanggap atau ahli dalam mengakses sebuah site, maka user tersebut menginginkan shortcut yang mempercepat geraknya dalam pengaksesan site tersebut. •
Memberikan umpan balik yang informatif Untuk setiap tindakan yang sederhana, harus diberi respon yang juga sederhana,tetapi jika tindakan jarang dan major actions, maka respon juga harus substansial.
•
Merancang dialog untuk menghasilkan keadaan akhir Bertujuan membuat user merasa aman dalam melakukan sebuah tindakan dengan memberikan gambaran hasil akhir dari suatu pilihan, serta pemberian banyak option kepada user sehingga dapat ikut mempengaruhi hasil akhir.
•
Memberikan penanganan kesalahan yang sederhana Sebuah site harus dirancang agar kesalahan yang dibuat seorang user dapat ditekan seminimal mungkin, dan pesan kesalahan yang ditampilkan dapat dimengerti oleh semua user.
•
Mengijinkan Pembalikan aksi dengan mudah Tindakan yang sudah dilakukan dapat dibalikkan menjadi keadaan sebelumnya. Hal ini membuat user merasa aman karena mengetahui bila melakukan suatu kesalahan dapat diperbaiki.
•
Mendukung internal locus of control (pemakai menguasai sistem) Membuat user merasa memegang kendali atas site tesebut. Kesulitan dalam menavigasi site atau mendapatkan data-data yang diinginkan akan
48 menimbulkan rasa tidak puas. •
Mengurangi beban ingatan jangka pendek Manusia hanya dapat mengingat beberapa informasi saja. Maka dalam membuat sebuah situs harus dibuat sesederhana mungkin sehingga seorang user tidak bingung akan terlalu banyaknya informasi.
2.1.9.3
Kesalahan Utama Dalam Desain Web 10 kesalahan desain web menurut Jakob Nielsen , 1996 adalah : •
Penggunaan Frame
•
Penggunaan Teknologi baru secara serampangan
•
Gerakan Teks dan Animasi yang berjalan terus
•
URL yang kompleks
•
Halaman Yatim
•
Halaman yang terlalu panjang gulungannya. Isi terpenting dan navigasi harus tampak di bagian atas.
•
Kurang dukungan navigasi
•
Warna link yang tidak standar
•
Informasi basi
•
Waktu download yang terlalu lama
49 2.2
Teori Pendukng
2.2.1 2.2.1.1
Internet Pengertian Internet Internet merupakan singkatan dari Interconnection Networking atau sering disebut sebagai cyber space. Internet memiliki banyak definisi, pada dasarnya internet adalah sebuah jaringan besar yang dibentuk oleh interkoneksi jaringan komputer dan komputer tunggal diseluruh dunia dengan menggunakan saluran telepon, satelit, dan sistem telekomunikasi lainnya sehingga dapat saling berkomunikasi dan berbagi informasi secara elektronis dengan cepat dimana pun dan kapan pun mereka berada. Jutaan komputer individu, LAN, WAN dihubungkan dengan jaringan kerja computer sehingga membentuk internet. (H.Ellsworth & V.Ellsworth, 1997,p3)
2.2.1.2 Fungsi Internet Melalui keunggulan dalam hal komunikasi, pengembalian informasi dan pencarian informasi, internet bisa dimanfaatkan untuk berbagai macam keperluan bisnis, di antaranya berfungsi sebagai : •
Yellow pages berupa basis data terorganisasi yang memuat aneka ragam informasi produk, perusahaan, iklan, berita, hiburan dan sebagainya.
•
Web traffic control berfungsi sebagai iklan yang menarik perhatian para pemakai internet agar mengunjungi web tertentu.
•
Online store front berupa tempat penjualan virtual yang kini semakin marak dijumpai.
50 •
Standard websites berupa halaman web dan alamat e-mail untuk kontak atau layanan pelanggan.
•
Business-to-business links berupa koneksi pada jaringan bisnis yang dimiliki perusahaan.
•
Community sites seperti ruang ‘ngobrol’ (chatting room) khusus untuk kelompok pelanggan tertentu.
•
Informational / imagesites website yang tidak memiliki fungsi komersial langsung, namun lebih menekankan aspek penyajian informasi.
•
Content based sites dimana pemakai jasa harus membayar biaya keanggotaan agar bisa mendapatkan akses ke dalam website yang bersangkutan.
(Tjiptono & Diana, 2000, p45)
2.2.1.3
Keuntungan Internet Internet memiliki beberapa keuntungan, yaitu : •
Luasnya beragam informasi yang bias diakses tanpa batas.
•
Kecepatan mendapatkan suatu informasi.
•
Informasi dapat diakses dengan biaya yang lebih murah.
(Ed Forrest, 1999, p208)
2.2.1.4
Kerugian Internet Internet memiliki beberapa kerugian, yaitu : •
Kemudahan mengakses informasi dapat menjadi kelemahan bila pengguna
51 tidak memiliki kemampuan dan pengetahuan yang cukup untuk mengevaluasi dan menyaring informasi-informasi tersebut. •
Kemudahan publikasi menimbulkan pertanyaan tentang kualitas dan stabilitas dari informasi-informasi yang tersedia.
(Ed Forrest, 1999, p208)
2.2.1.5
Arsitektur Protokol TCP/IP TCP/IP adalah arsitektur protocol standar yang banyak dipergunakan sebagai dasar atau basis bagi pengembangan standar-standar komunikasi. Lapisan-lapisan yang biasa terdapat dalam Protocol TCP/IP adalah : •
Application Layer : Menyediakan komunikasi diantara proses atau aplikasi pada host-host terpisah.
•
End to End atau Transport Layer : Menyediakan layanan transfer data ujung ke ujung. Lapisan ini meliputi mekanisme-mekanisme keandalan. Menyembunyikan detail-detail jaringan yang mendasari atau jaringanjaringan dari lapisan aplikasi.
•
Internet Layer : Berkaitan dengan routing data dari sumber ke host tujuan melewati satu jaringan atau lebih yang dihubungkan melalui router.
•
Network Access Layer : Berkaitan dengan logical interface diantara suatu ujung sistem dan jaringan.
•
Physical Layer : Menentukan karakteristik-karakteristik media transmisi, rata-rata pensinyalan, serta skema pengkodean sinyal.
52 2.2.1.6 Model OSI Model OSI dikembangkan oleh ISO sebagai model untuk arsitektur komunikasi komputer, serta sebagai kerangka kerja bagi pengembangan standar-standar protocol. Model OSI terdiri dari tujuh lapisan, yaitu : •
Application : Menyediakan akses ke lingkungan OSI bagi user serta menyediakan layanan informasi terdistribusi.
•
Presentation : Menyediakan keleluasaan terhadap proses aplikasi untuk bermacam representasi data.
•
Session : Menyediakan struktur kontrol untuk komunikasi diantara aplikasi-aplikasi; menentukan, menyusun, mengatur dan mengakhiri koneksi sesi diantara aplikasi-aplikasi yang sedang beroperasi.
•
Transport : Menyediakan transfer data yang handal dan transparan diantara titik ujung; menyediakan perbaikan end to end dan flow control.
•
Network : Meyediakan lapisan yang lebih tinggi dengan keleluasaan dari transmisi data dan teknologi-teknologi switching yang dipergunakan untuk menghubungkan sistem; bertugas menyusun, mempertahankan, serta mengakhiri koneksi.
•
Data Link : Menyediakan transfer informasi yang reliable melewati link fisik; mengirimi blok dengan sinkronisasi yang diperlukan, kontrok kesalahan dan konrol aliran.
•
Physical : Berkaitan dengan karakteristik prosedural, fungsi, elektris an mekanis untuk mengakses media fisikal.
53 2.2.1.7 Keamanan Data Keamanan adalah keadaan yang bebas dari bahaya. Data adalah faktafakta yang belum diolah atau gambaran-gambaran lebih lanjut dari bendabenda, kejadian-kejadian, kegiatan-kegiatan dan transaksi-transaksi yang ditangkap, direkam, disimpan dan diklasifikasikan, tetapi tidak disusun untuk menyampaikan arti khusus lainnya. Jadi keamanan data adalah fakta-fakta yang bebas dari bahaya. Berdasar spesifikasi dari OSI, sebuah layanan keamanan meliputi : •
Acces Control : Perlindungan terhadap pemakaian yang ilegal
•
Authentication : Menyediakan jaminan identitas seseorang
•
Confidentiality : Perlindungan terhadap pengungkapan identitas
•
Integrity : Melindungi dari pengubahan data yang ilegal.
•
Non – repudiation : Melindungi terhadap penolakan komunikasi yang sudah pernah dilakukan Untuk mencapai layanan keamanan tersebut, mekanisme-mekanisme
yang dapat diterapkan : •
Enkripsi : Proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus.
•
Digital Signature : sistem pengamanan yang menggunakan public key cryptography system.
54 2.2.2 2.2.2.1
Unsur-unsur Dalam Perancangan Website Hypertext Transfer Protocol (HTTP) HTTP merupakan kependekan dari HyperText Transfer Protocol. Server HTTP umumnya digunakan untuk melayani dokumen hypertext, karena HTTP adalah protokol dengan overhead yang sangat rendah, sehingga pada kenyataan navigasi informasi dapat ditambahkan langsung ke dalam dokumen dan dengan demikian protokolnya sendiri tidak harus mendukung navigasi secara penuh seperti halnya protocol FTP dan Gopher lakukan. (Betha, 2002, p7)
2.2.2.2
World Wide Web (WWW) World Wide Web (WWW) merupakan kumpulan web server dari seluruh dunia yang berfungsi menyediakan data dan informasi untuk dapat digunakan bersama. Berbagai informasi dapat ditemukan pada WWW, seperti informasi politik, ekonomi, sosial, budaya, sastra, sejarah, teknologi, pendidikan, dan sebagainya. Bila diumpamakan maka WWW ini merupakan perpustakaan besar yang menyediakan berbagai buku dengan berbagai informasi yang dibutuhkan. (Ukar, 2002, p2) World Wide Web (WWW), lebih dikenal dengan web merupakan salah satu layanan yang didapat oleh pemakai komputer yang terhubung ke internet. Web pada awalnya merupakan ruang informasi dalam internet, dengan menggunakan teknologi hyperteks, pemakai dituntun untuk menemukan informasi dengan mengikuti link yang disediakan dalam dokumen web yang ditampilkan dalam browser web. Kini internet identik dengan web karena
55 kepopuleran web sebagai standar interface pada layanan-layanan yang ada di internet, dari awalnya sebagai penyedia informasi, kini digunakan juga untuk komunikasi dari e-mail sampai dengan chatting, sampai dengan melakukan transaksi bisnis. (Betha, 2002, pp1-3) Alasan web diadopsi oleh perusahaan sebagai bagian dari strategi teknologi informasinya: •
Akses informasi mudah
•
Setup server lebih mudah
•
Informasi mudah didistribusikan
•
Bebas platform, informasi dapat disajikan oleh web browser pada sistem operasi mana saja karena adanya standar dokumen berbagai tipe data dapat disajikan. WWW adalah sebuah web yang diakses dari client menggunakan web
browser. Halaman web yang akan dibuka dispesifikasikan melalui alamat web dan URL. URL mengandung informasi alamat yang dibutuhkan untuk memperoleh alamat IP dari server yang menangani halaman web tersebut. (Whiteley, 2000, p167)
2.2.2.3
Hypertext Markup Language (HTML) HTML biasanya digunakan untuk membangun sebuah halaman web. Sekalipun lebih banyak orang yang mengenalnya sebagai salah satu dari sekian banyak bahasa pemrograman, tetapi HTML sebenarnya sama sekali bukan bahasa pemrograman, karena seperti yang tersirat dari namanya, HTML lebih
56 merupakan suatu bahasa mark up. HTML digunakan untuk melakukan mark up (penandaan) terhadap suatu dokumen teks. Tanda tersebut digunakan sebagai pedoman untuk menentukan format atau style dari teks yang telah ditandai. (Kurniawan, 2001, p7) HTML adalah suatu bahasa yang dipakai untuk menampilkan informasi pada halaman web. Hal ini karena HTML terdiri dari elemen dan atribut elemen, dimana elemen dan atribut tersebut akan digunakan untuk mengatur tampilan web. Istilah untuk menyebut elemen HTML dapat juga disebut sebagai tag. (H. Kristanto, 2002, p3)
2.2.2.4
E-mail E-mail sejauh ini merupakan aplikasi internet yang paling banyak digunakan. Jumlah pengguna e-mail jauh melebihi pengguna web, dan banyak pengguna baru yang menyatakan bahwa mereka online karena menginginkan e-mail. Popularitas e-mail berarti merupakan alat komunikasi yang punya kemungkinan jelas. Sejumlah bisnis telah menggunakan e-mail sebagai medium untuk komunikasi layanan pelanggan mereka. Mereka memilih menggunakan e-mail daripada telepon atau sebagai tambahan. Layanan pelanggan e-mail bisa lebih efektif dari segi biaya dibanding telepon, karena tarif SLJJ dan SLI tidak ditetapkan dalam e-mail. (Kienan, 2001, p117)
2.2.2.5
Uniform Resource Locators (URL) URL adalah konsep nama file standar yang diperluas dengan jaringannya.
57 Nama file ini tidak hanya menunjukkan direktori dan nama filenya, tetapi juga nama mesinnya dalam jaringan. URL dapat diakses dengan berbagai metode, dan bisa jadi bukan sekedar file, karena URL dapat menunjukkan query-query, dokumen yang disimpan dalam basis data, hasil dari suatu perintah finger atau archie, atau apapun yang berkaitan dengan data hasil proses. (Betha, 2002, p6)
2.2.2.6
Web Browser Web browser merupakan program aplikasi yang digunakan untuk mempermudah navigasi berbagai data dan informasi pada WWW. Web browser yang paling populer saat ini ialah Microsoft Internet Explorer dan Mozilla FireFox.
2.2.2.7
Web Server Web server merupakan sebuah aplikasi yang beroperasi pada sebuah situs web dan bertanggung jawab untuk merespon permintaan file dari web browser. Dalam memproses sebuah permintaan pada suatu situs web, browser melakukan koneksi ke suatu server dengan protocol HTTP. Server akan menanggapi koneksi tersebut dengan mengirimkan isi file yang diminta dan memutuskan koneksi tersebut. Server kemudian akan memformat informasi yang diperoleh dari browser. Pada bagian server, browser yang berbeda dapat melakukan koneksi pada server yang sama untuk memperoleh informasi yang sama. Dalam menampilkan halaman yang diminta, server dapat bekerja sama dengan server lain, seperti application server.
58 2.2.3 2.2.3.1
E-Commerce Pengertian E-Commerce Menurut Esprit yang dikutip oleh Whiteley (2000, p3) e-commerce adalah konsep umum setiap bentuk dari transaksi bisnis atau pertukaran informasi yang dilaksanakan dengan menggunakan teknologi komunikasi dan informasi. E-commerce digunakan antar perusahaan, antara perusahaan dengan pelanggan mereka, atau antara perusahaan dengan administrasi publik. Ecommerce terdiri dari perdagangan produk, jasa dan barang-barang elektronik. Pada dasarnya e-commerce adalah melakukan bisnis online. Dalam bentuknya yang paling jelas, e-commerce menjual produk kepada konsumen secara online, tapi faktanya jenis bisnis apa pun yang dilakukan secara elektronik adalah e-commerce. Sederhananya, e-commerce adalah membuat, mengelola, dan meluaskan hubungan komersial secara online. (Kienan, 2001, p4) Usaha e-commerce yang paling baik dikembangkan bukan untuk menjual kepada konsumen online, melainkan untuk melayani orang atau lembaga lain yang telah ada dalam e-commerce maupun bisnis lapangan yang berharap untuk terlibat di sana. (Kienan, 2001, p7)
2.2.3.2
Kategori E-commerce E-commerce dapat dibagi menjadi 3 kategori yaitu: •
Electronic markets Electronic markets merupakan penggunaan teknologi informasi dan
59 komunikasi untuk menampilkan berbagai penawaran yang tersedia dalam segmen pasar sehingga pembeli dapat membandingkan harga (dan atribut lainnya) dari berbagai penawaran yang ada dan membuat keputusan. Contoh umum dari electronic markets ialah sistem pemesanan tiket pesawat terbang. • EDI (Electronic Data Interchange) EDI menyediakan sistem standar untuk pengkodean transaksi perdagangan sehingga mereka dapat dikomunikasikan secara langsung dari satu sistem komputer ke sistem komputer yang lainnya tanpa membutuhkan perintah tertulis, tagihan, penundaan dan kesalahan dalam penanganan media kertas. EDI digunakan oleh organisasi yang memakai transaksi biasa dalam jumlah besar. Salah satu sektor dimana EDI digunakan secara ekstensif adalah pertukaran di dalam supermarket yang menggunakan EDI untuk bertransaksi dengan supplier mereka. • Internet Commerce Teknologi komunikasi dan informasi juga dapat digunakan untuk periklanan dan membuat satu kali penjualan dalam daerah produk dan jasa yang besar. E-commerce jenis ini dilambangkan dengan pemakaian internet secara komersial. Internet dapat digunakan untuk pembelian buku yang dapat dikirimkan melalui pos atau pemesanan tiket yang dapat dilakukan oleh klien kapan saja mereka ingin. Hal ini dapat ditandai dengan internet bukan sebagai satu-satunya teknologi yang digunakan untuk pelayanan jenis ini dan ini bukan satu–satunya kegunaan internet dalam e-commerce.
60 (Whiteley, 2000, p4)
2.2.3.3
Pemesanan Pemesanan merupakan suatu set rekursif dari kegiatan bisnis dan operasi pemrosesan informasi terkait yang dihubungkan dengan permintaan barang dari pelanggan.
2.2.3.4
Pembelian Pembelian merupakan salah satu kegiatan dari aktivitas bisnis yang meliputi penyedian barang dari pemasok dan juga bagaimana pembayaran akan dilakukan kepada pihak pemasok. Transaksi pembelian dapat digolongkan menjadi dua : pembelian lokal dan impor. Pembelian lokal adalah pembelian dari pemasok dalam negeri, sedangkan impor adalah pembelian dari pemasok luar negeri.
2.2.3.5
Penjualan Penjualan merupakan suatu set rekursif dari kegiatan bisnis dan operasi pemrosesan informasi terkait yang dihubungkan dengan penyediaan barang dan pelayanan pelanggan dan penerimaan pembayaran dari penjualan tersebut. Penjualan ada 2 macam bila dilihat dari cara pembayarannya, yaitu : 1. Penjualan tunai Barang atau jasa baru diserahkan oleh perusahaan kepada pembeli setelah perusahaan menerima pembayaran dari pembeli
61 2. Penjualan kredit Pembayaran barang dilakukan di kemudian hari, jika order pelanggan telah dipenuhi dengan dikirimnya barang atau penyerahan jasa, untuk jangka waktu tertentu perusahaan mempunyai piutang terhadap pelanggan.