BAB 2 LANDASAN TEORI
2.1
Teori – Teori Dasar / Umum 2.1.1
Definisi Basis Data M enurut Connolly dan Begg (2005, p15), pengertian basis data adalah kumpulan data yang dipakai bersama dan terhubung secara logis dan deskripsi dari data ini dirancang untuk memenuhi kebutuhan informasi dari sebuah organisasi. M enurut Wikipedia, pengertian basis data adalah suatu koleksi dari data atau informasi yang disimpan secara sistematis dalam komputer. Jadi basis data adalah kumpulan data yang telah terorganisasi secara menyeluruh sehingga memiliki koneksi logis dan diterapkan secara sistematis di dalam komputer.
2.1.2
Database Lifecycle M enurut Connolly dan Begg (2005, p283), sistem basis data merupakan komponen pokok dalam sistem informasi dari organisasi yang besar, siklus pengembangan basis data tak terpisahkan dengan siklus sistem informasi. Aktivitas-aktivitas yang ada dalam siklus pengembangan basis data diantaranya :
7
8
1. Database Planning M erencanakan bagaimana bagian-bagian dalam siklus dapat direalisasikan dengan efektif dan efisien. 2. System Definition M enspesifikasikan jangkauan dan batasan dari sistem basis data, meliputi major user views, user itu sendiri, dan area aplikasi. 3. Requirements Collection and Analysis M engumpulkan dan menganalisis kebutuhan untuk sistem basis data baru. 4. Database Design M erancang desain konseptual, logikal, dan fisikal dari basis data. 5. DBMS Selection (optional) M emilih DBM S yang sesuai dengan sistem basis data. 6. Application Design M erancang antarmuka user
dan
program aplikasi yang
menggunakan dan memproses basis data. 7. Prototyping (optional) M embangun model kerja dari sistem basis data dimana mengizinkan perancang atau user untuk memvisualisasikan dan mengevaluasi bagaimana sistem akhir akan terlihat dan berfungsi. 8. Implementation M enciptakan definisi basis data fisikal dan program aplikasi.
9
9. Data Conversion and Loading M emuat data dari sistem lama ke sistem baru dan, jika memungkinkan, mengubah beberapa aplikasi yang sudah ada untuk dijalankan pada basis data baru. 10. Testing Sistem basis data diuji terhadap kesalahan-kesalahan dan memvalidasi dengan kebutuhan yang diinginkan user. 11. Operational and Maintenance Sistem basis data diimplementasikan secara penuh. Sistem ini diawasi dan dipelihara secara terus menerus. Jika diperlukan, kebutuhan baru akan dimasukkan ke dalam sistem basis data melalui tahapan siklus sebelumnya.
10
Berikut ini adalah siklus hidup aplikasi basis data :
Gambar 2.1 Siklus Hidup Aplikasi Basis Data
2.1.3
Entity-Relationship Modelling M enurut Connolly & Begg (2005,p342) Entity Relationship Modelling adalah pendekatan Top-Down pada perancangan basis data yang dimulai dengan mengidentifikasi data penting yang disebut dengan
11
Entitas dan hubungan di antara data yang harus di representasikan dalam model. 2.1.3.1 Entity Type Entity Type adalah kumpulan dari obyek yang memiliki sifat yang sama (Connolly, 2005, p343) Sebuah entity memiliki keadaan bebas dan bisa merupakan obyek fisik atau nyata seperti (staf, pelanggan dan lain-lain) atau merupaka obyek konseptual atau abstrak (seperti penjualan, inspeksi, dan lain-lain). Entity Occurance adalah objek yang secara unik diidentifikasikan oleh sebuah entity type (Connolly, 2005, p345)
Entity Name
Staff
Branch
Gambar 2.2 Entity Dari Staff Dan Branch
2.1.3.2 Relationship Type Relationship Type adalah kumpulan hubungan antar tipe entiti.
Relationship
occurance
adalah
hubungan
yang
diidentifikasikan secara unik, yang termasuk sebuah kemunculan dari setiap entity type yang berpartisipasi (Connolly, 2005,
12
p346).Jumlah entity type yang berpartisipasi pada sebuah hubungan (relationship) disebut sebagai dgree of a relationship type. Beberapa macam hubungan antar entiti adalah sebagai berikut:
1.
Binary,
hubungan
dengan
2 entity berpartisipasi di
dalamnya. POwns Private Owner
PropertyForRent
Gambar 2.3 Binary Relationship Sumber: Connolly & Begg (2005, p348)
2. Ternary, hubungan tiga entity berpartisipasi di dalamnya.
Staff
Regist
Branch
Client
Gambar 2.4 Ternary Relationship. Sumber: Connolly & Begg (2005, p348)
13
3.
Quaternary, hubungan dengan 4 entity berpartisipasi di dalamnya. Staff
Staff
Registe
Staff
Staff
Gambar 2.5 Quaternary Relationship Sumber: Connolly & Begg (2005, p349)
4. Recursive, relationship type dimana entity yang sama berpartisipasi lebih dari satu kali dengan aturan yang berbeda. Role
Supervises Supervises
Staff
Role
Supervises
Gambar 2.6 Recursive Relationship Sumber: Connolly & Begg (2005, p349)
14
2.1.3.3 Attribute M enurut Connolly
(Connolly, 2005, p350), atribut
(attribute) adalah property dari sebuah entity atau relationship type. Attribute domain adalah himpunan nilai untuk satu atau lebih atribut (Connolly, 2005, p350) Domain mendefinisikan nilai potensial data yang disimpan oleh sebuah atribut. Beberapa macam atribut : 1. Simple attribute, atribut yang terdiri dari sebuah komponen tunggal dan tidak dapat di bagi menjadi bagian yang lebih kecil lagi. Contohnya adalah jabatan, gaji, dan sebagainya. 2. Composite attribute, atribut yang terdiri dari berbagai komponen lain yang lebih kecil. Contohnya adalah atribut alamat. Atribut ini bisa terdiri dari berbagai komponen lainnya, misalnya jalan, kota, dan kode pos. 3. Single-valued attribute, atribut yang menyimpan sebuah nilai tunggal untuk setiap kemunculan dari entity type. Contohnya adalah nomor induk pegawai pada entity pegawai. 4. Multi-valued attribute, atribut yang menyimpan beberapa nilai untuk setiap kemunculan dari entity type. Contohnya adalah nomor telepon dari suatu pelanggan yang lebih dari satu.
15
5. Derived attribute, atribut yang merepresentasikan nilai yang diturunkan dari sebuah nilai atau beberapa atribut yang lain.
2.1.3.4 Key M odel entity
relationship
memiliki beberapa key.
Diantaranya mirip dengan model relasional. Key yang ada pada model ini adalah (Connolly, 2005, p352-353): 1. Candidate Key, jumlah minimal atribut-atribut yang dapat mengidentifikasikan setiap kejadian dari sebuah entiy type secara unik. 2. Primary
Key,
candidate
key
yang
dipilih
untuk
mengidentifikasikan setiap kejadian dari suatu entity secara unik. 3. Composite Key, candidate key yang terdiri dari 2 atau lebih atribut. 4. Foreign Key, turunan dari Primary Key.
2.1.3.5 Strong and Weak Entity type M enurut Connolly (2005, p354-355), entity type dapat diklarifikasikan sebagai berikut : 1. Strong Entity Type, suatu entity type yang keberadaannya tidak bergantung pada entity lainnya.
16
2. Weak Entity Type, suatu entity type yang keberadaannya bergantung pada entity lainnya.
2.1.3.6 Cardinality and participation constraint Cardinality menjelaskan jumlah maksimum kemunculan dari entity yang berpartisipasi pada sebuah relationship (Connolly, 2005, p362-363). Cardinality dari binary relationship adalah one-to-one (1:1), one-to-many (1:*), many-to-many (*:*). Participation menjelaskan apakah seluruh atau hanaya beberapa kemunculan entity yang berpartisipasi pada sebuah relationship (Connolly, 2005, p363) partisipation terdiri dari mandatory dan optional.
2.1.3.7 Masalah pada model entity relationship M enurut Connolly (2005, p364-p367) ada dua masalah pada model entity relationship yaitu : 1. fan trap M asalah
ini
terjadi
dimana
sebuah
model
merepresantasikan hubungan antar entity tapi jalurnya ambigu. 2. chasm trap M asalah ini terjadi jika sebuah model memperlihatkan ada sebuah hubungan antar entity tapi ternyata jalurnya tidak ada.
17
3. Normalisasi M enururt Connolly dan begg (2005, p388) normalisasi adalah
suatu
teknik
untuk
menghasilkan
sekumpulan
hubungan dengan property yang dikehendaki, yang memenuhi kebutuhan data dari perusahaan. Ada beberapa tahap dalam normalisasi yaitu (Connolly dan begg, 2005, p403-410) : 1. Bentuk normal pertama (first normal form/ 1NF) Sebuah relasi dimana setiap baris dan kolom hanya berisi satu nilai. Untuk mengubah bentuk tidak normal menjadi 1 NF, identifikasikan dan pindahkan grup yang berulang dari dalam tabel. Grup yang berulang dari table yang tidak normal yaitu : a. Pendekatan pertama, pindahkan grup
yang
berulang dengan memasukkan data yang cocok ke dalam kolom yang kosong dari baris yang berisi data yang berulang. b. Pendekatan kedua, pindahkan grup yang berulang dengan menempatkan data yang berulang, dengan meniru atribut kunci yang asli, dalam relas i yang terpisah. Primary key diidentifikasikan untuk sebuah relasi yang baru.
18
2. Bentuk normal kedua (scond normal form /2 NF) Sebuah relasi yang ada pada 1 NF, dan setiap atribut yang bukan primary key ketergantungan fungsional
secara
penuh
pada
primary
key.
Ketergantungan fungsional adalah secara penuh adalah suatu kondisi bila A dan B merupakan atribut dari sebuah relasi, B dikatakan ketergantungan fungsional secara penuh terhadap A jika B ketergantungan fungsional pada A dan bukan pada subset mana pun dari A. Normalisasi
dari
menghilangkan
1NF
ke
ketergantungan
2NF parsial.
dengan Jika
ketergantungan parsial eksis, maka pindahkan attribute yang bergantung secara fungsional dari relasi dengan memindahkan ke relasi yang baru beserta dengan salinan determinan. 3. Bentuk normal ketiga (Third Normal Form/ 3NF) Sebuah relasi yang ada pada 1NF dan 2NF, dan tidak ada atribute bukan primary key bergantung secara transitif pada primary key. Ketergantungan transitif adalah suatu kondisidimana A, B, dan C merupakan attribute dari sebuah relasi, maka jika A ->
19
B dan B -> C, maka C ketergantungan transitif pada A melalui B. Normalisasi menghilangkan ketergantungan
dari
2NF
ke
3NF
ketergantungan transitif
eksis,
dengan
transitif. maka
Jika
pindahkan
atribute yang bergantung secara transitif dari relasi dengan memindahkan attribute ke relasi yang baru beserta dengan salinan determinan.
2.1.4 Metodologi database. 2.1.4.1 Perancangan Basis Data Perancangan
basis
data
konseptual
adalah
proses
membangun sebuah model data yang digunakan di dalam perusahaan, bebas dari segala pertimbangan fisik (Connolly dan Begg, 2005, p439). Tahap-tahap dalam perancangan basis data konseptual diantaranya (Connolly dan Begg, 2005, p442) : Langkah 1 : Membangun model data konseptual Tujuannya adalah
untuk
membangun
model data
konseptual dari kebutuhan data dalam perusahaan.Tahapantahapan dari membangun model data konseptual diantaranya:
20
1.
Mengidentifikasikan tipe entitas Tujuannya untuk mengidentifikasikan tipe entitas yang dibutuhkan.
Gambar 2.7 Kamus Data Entity (Connolly dan Begg, 2005, p444)
2.
Mengidentifikasikan tipe relasi Tujuannya untuk mengidentifikasikan relasi yang penting yang ada diantara tipe-tipe entitas.
Gambar 2.8 Kamus Data Relationship (Connolly dan Begg, 2005, p447)
21
3.
Mengidentifikasikan
dan
mengasosiasikan
atribut
dengan entitas atau tipe relasi Tujuannya untuk mengasosiasikan atribut dengan tipe-tipe entitas atau relasi yang tepat.
4.
Menentukan domain atribut Tujuannya untuk menentukan domain dari atribut di dalam model data konseptual lokal.
5.
Menentukan atribut-atribut candidate, primary, dan alternate key Tujuannya untuk mengidentifikasikan candidate key dari setiap tipe entitas dan jika ada lebih dari 1 candidate key, salah satu akan terpilih menjadi primary key dan yang lain menjadi alternate key. Primary key adalah candidate key yang dipilih untuk secara unik mengidentifikasikan suatu tipe entitas (Connolly dan Begg, 2005, p451). Candidate key adalah kumpulan minimal dari atribut yang secara unik mengidentifikasikan setiap tipe entitas (Connolly dan Begg, 2005, p451).
22
Untuk memilih sebuah primary key dari antara candidate key yang ada maka sebaiknya menggunakan tahapan-tahapan di bawah ini : 1. Candidate key dengan satu set atribut yang paling sedikit. 2. Candidate key yang paling sedikit mempunyai nilai yang sering berubah. 3. Candidate key yang memiliki karakter yang paling sedikit. 4. Candidate key dengan nilai maksimum yang paling kecil. 5. Candidate key yang paling mudah digunakan dari sudut pandang user.
6.
Mempertimbangkan penggunaan konsep enhanced modeling (optional) Tujuannya untuk mempertimbangkan penggunaan konsep
enhanced
modeling
seperti
spesialisasi/generalisasi, agregasi, dan komposisi.
7.
Memeriksa model untuk redundansi Tujuannya untuk memeriksa adanya redundansi di dalam model.
23
Dua aktivitas yang ada didalam tahapan ini adalah : 1. Memeriksa kembali one-to-one(1:1) relationship Dalam mengidentifikasikan entitas kita mungkin telah
mengidentifikasikan
dua
entitas
yang
merepresentasikan objek yang sama di perusahaan.
2. Menghapus relationship yang berlebihan Sebuah
relationship disebut
berlebihan
atau
redundant bila informasi yang sama dapat diperoleh melalui relationship yang lain.
8.
Memvalidasi model konseptual dengan transaksi user Tujuannya untuk
memastikan
model konseptual
mendukung kebutuhan transaksi. Ada dua pendekatan yang dapat memastikan bahwa model data konseptual mendukung kebutuhan transaksi:
1. Menjelaskan transaksi tersebut M emeriksa semua informasi yang ada (entity, relationship, dan semua atribut) yang dibutuhkan oleh setiap transaksi yang disediakan oleh model, dengan mendokumentasikan sebuah deskripsi setiap kebutuhan transaksi.
24
2. Menggunakan jalur transaksi Pendekatan
kedua
ini
untuk
memvalidasikan model data dengan transaksi yang dibutuhkan. 9.
Mengkaji ulang model data konseptual dengan user Tujuannya untuk mengkaji ulang model data konseptual dengan user untuk memastikan bahwa mereka akan
mempertimbangkan
model
tersebut
menjadi
perwakilan yang sebenarnya dari kebutuhan data dalam perusahaan.
2.1.4.2 Perancangan basis data logical Perancangan basis data logikal adalah proses membangun sebuah model dari data yang digunakan oleh perusahaan yang berdasar pada data model yang spesifik, tetapi tidak terikat pada DBM S tertentu dan pertimbangan fisikal lainnya. (Connolly dan Begg, 2005, p439)
Langkah 2 : Membangun dan memvalidasi model data logikal Tujuannya untuk menerjemahkan model data konseptual menjadi model data logikal dan kemudian untuk memvalidasi model ini untuk memeriksa bahwa model tersebut benar secara struktural dan dapat digunakan untuk mendukung transaksi yang
25
dibutuhkan. Tahapan-tahapan dari membangun model data logikal diantaranya : 1.
Menciptakan relasi untuk model data logikal Tujuannya untuk menciptakan hubungan atau relasi untuk model data logikal untuk mewakili entitasentitas, hubungan-hubungan, dan atribut-atribut yang sudah diidentifikasi. Pendeskripsian bagaimana relasi dapat diturunkan dari struktur data model yang ada, antara lain : •
tipe strong entity
•
tipe weak entity
•
tipe relasi binary one-to-many (1:*)
•
tipe relasi binary one-to-one (1:1) Terdiri dari : 1. mandatory
participation on both sides of 1:1
relationship 2. mandatory participation on one side of 1:1 relationship 3. optional participation on both sides of 1:1 relationship •
tipe relasi rekursif one-to-one (1:1)
•
tipe relasi superclass/subclass
•
tipe relasi binary many-to-many
•
tipe relasi kompleks
•
attribut multi-value
26
2.
Memvalidasi hubungan menggunakan normalisasi Tujuannya untuk memvalidasi hubungan di dalam model data logikal menggunakan normalisasi. Tahapan dari normalisasi antara lain : •
First Normal Form (1NF), menghilangkan grup yang berulang.
•
Second Normal Forn (2NF), menghilangkan partial dependencies
atau
ketergantungan
parsial
pada
primary key. •
Third Normal Form (3NF), menghilangkan transitive dependencies
atau
ketergantungan
transitif
pada
primary key.
3.
Memvalidasi hubungan dengan transaksi user Tujuannya untuk memastikan bahwa hubungan di dalam model data logikal mendukung kebutuhan transaksi (biasanya penggambaran dalam bentuk view).
4.
Memeriksa integrity constraint Tujuannya untuk memeriksa integrity constraint yang diwakili di dalam data model logikal. Beberapa tipe dari integrity constraint adalah sebagai berikut :
27
•
Required data Beberapa atribut harus selalu berisi data yang resmi sehingga atribut tersebut tidak diperbolehkan berupa null.
•
Attribute domain constraint Setiap atribut mempunyai domain yang merupakan sekumpulan nilai yang sah.
•
Multiplicity Multiplicity mewakili constraint yang ditempatkan pada hubungan diantara data di dalam basis data.
•
Entity integrity Primary key di dalam sebuah entitas tidak dapat menerima null.
•
Referential integrity Jika foreign key berisi nilai maka nilai tersebut harus menunjuk kepada tuple yang ada.
28
•
General constraint Update pada entitas akan dikontrol oleh constraint yang menentukan transaksi yang “real world” dimana diwakili oleh update itu sendiri.
•
Document all integrity constraint M endokumentasikan semua integrity constraint di dalam kamus data untuk pertimbangan selama desain fisikal.
5.
Mengkaji ulang model data logikal dengan user Tujuannya untuk meninjau ulang model data logikal dengan user untuk memastikan bahwa mereka mempertimbangkan
model
tersebut
untuk
menjadi
representasi nyata dari kebutuhan data di dalam sebuah perusahaan.
6.
Menggabungkan data model logikal menjadi model global (optional) Tujuannya untuk menggabungkan model data logikal menjadi model data global single yang mewakili semua user view dari basis data.
29
7.
Memeriksa pertumbuhan lebih lanjut Tujuannya
untuk
menentukan
apakah
ada
perubahan yang signifikan untuk masa depan yang sudah dapat diduga sebelumnya dan menilai apakah model data logikal dapat mengakomodasi perubahan ini.
2.1.4.3 Perancangan basis data fisikal Perancangan basis data fisikal adalah proses memproduksi sebuah deskripsi dari implementasi dari basis data pada secondary storage, yang juga akan mendeskripsikan dasar dari suatu relasi, organisasi file, dan index yang digunakan untuk mencapai akses efisien menuju ke data dan beberapa batasan-batasan integritas serta ukuran keamanan.(Connolly dan Begg, 2005, p496).
Langkah 3 : Menerjemahkan model data logikal ke dalam target DBMS Tujuannya untuk memproduksi skema relasi basis data dari model data logikal yang dapat diimplementasikan di dalam target DBM S
1. Mendesain relasi dasar Tujuan dari langkah ini adalah untuk memutuskan bagaimana
merepresentasikan
relasi
dasar
yang
30
diidentifikasikan di dalam model data logikal ke dalam target DBM S. Untuk setiap relasi yang diidentifikasi pada model data logikal global, definisinya terdiri dari: •
Nama relasi
•
Suatu list untuk atribut yang sederhana
•
Primary key, alternate key, dan foreign key
•
Suatu daftar dari atribut turunan dan bagaimana pembuatannya.
•
Batasan integrasi untuk setiap foreign key yang diidentifikasi.
Dari kamus data, dari setiap atributnya dapat diketahui : •
Domain atribut tersebut, yang terdiri dari tipe data, panjang, dan berbagai batasan dalam domain.
•
Sebuah optional nilai default untuk atribut.
•
Atribut boleh bernilai null.
•
Atribut diperoleh dan bagaimana atribut tersebut dikomputerisasi.
2. Merancang representasi dari data turunan Tujuannya adalah untuk memutuskan bagaimana untuk merepresentasikan berbagai data turunan pada model data logikal di dalam DBM S.
31
3. Merancang batasan general Tujuannya adalah
untuk
merancang
batasan
general untuk DBM S yang digunakan.
Langkah 4 : Merancang organisasi file dan index Tujuannya untuk menentukan organisasi file yang optimal untuk menyimpan relasi dasar dan indeks yang dibutuhkan untuk mencapai performance yang dapat diterima, dimana setiap relasi dan tuple akan disimpan di dalam penyimpanan kedua (secondary storage).
1. Menganalisis transaksi Tujuannya adalah untuk memahami fungsionalitas dari transaksi tersebut yang akan berjalan di dalam basis data dan untuk menganalisis transaksi yang penting. Dalam menganalisa transaksi,
dapat
diidentifikasi
kriteria performansi sebagai berikut : •
Transaksi yang sering digunakan berdampak
besar
terhadap
dan
akan
keseluruhan
performance. •
Transaksi yang merupakan operasi bisnis yang bersifat kritis.
32
•
Durasi waktu dalam hari/minggu dimana akan ada permintaan yang tinggi pada basis data (peak load). Untuk fokus ke dalam area yang mungkin akan bermasalah,
maka
salah
satu
cara
untuk
memprosesnya antara lain : •
Petakan semua jalur transaksi ke relasi
•
M enentukan relasi mana yang lebih sering diakses oleh transaksi tersebut.
•
M enganalisis penggunaan data dari transaksi yang dipilih dimana transaksi tersebut terlibat dengan relasi yang dimaksud.
2. Memilih index Tujuannya untuk menentukan apakah dengan menambah indeks akan meningkatkan performa sistem. Biasanya, pemilihan atribut untuk ordering atau clustering tuple adalah sebagai berikut : •
Sebuah atribut yang dipake paling sering untuk operasi gabungan, hal ini akan membuat operasi penggabungan menjadi lebih efisien.
•
Sebuah atribut yang digunakan lebih sering untuk mengakses tuple di dalam relasi yang ada.
33
3. Memperkirakan kapasitas disk yang dibutuhkan Tujuannya untuk memperkirakan kira-kira berapa besar kapasitas disk yang akan dibutuhkan oleh basis data.
Langkah 5 : Merancang user views Tujuannya adalah untuk merancang user view yang diidentifikasikan
selama
tahap
pengumpulan
dan
analisa
kebutuhan dari sistem siklus pengembangan basis data.
Langkah 6 : Merancang mekanisme keamanan Tujuannya adalah untuk merancang mekanisme keamanan untuk basis data yang dispesifikasikan berdasarkan user selama tahapan requirements and collection pada siklus pengembangan sistem basis data.
2.2
Tool yang dpakai 2.2.1
Entity Relationship Diagram (ERD) 2.2.1.1 Pengertian ERD M enurut Hoffer, Prescott, dan M cFadden (2005, p93), ERD (Entity Relationship Diagram) adalah representasi grafis dari entity-relationship model. Entity Relationship Model (E-R
34
Model) adalah representasi logikal dari data untuk sebuah organisasi atau untuk sebuah area bisnis. M enurut Whitten (2004, p295), ERD adalah model data yang menggunakan beberapa notasi untuk menggambarkan data dalam hubungan antar entity dan relationship yang digambarkan oleh data tersebut. M enurut Rob, Coronel (2002, p815), ERD adalah diagram yang menggambarkan entity, atribut, dan relasi dalam ERM (Entity Relational Model).
2.2.1.2
Komponen ERD 1. Entitas (Entity) M enurut Rob, Coronel (2002, p814), entitas adalah sesuatu yang digunakan untuk tempat penyimpanan data biasanya data-data tersebut berupa orang, tempat, objek, kejadian atau konsep. Strong Entity adalah entitas yang keberadaannya tidak bergantung pada entitas lain. Entity
Gambar 2.9 Simbol Strong Entity Weak Entity adalah entitas yang keberadaannya bergantung
35
pada entitas lain.
Entity
Gambar 2.10 Simbol Weak Entity Composite Entity adalah
entitas yang dihasilkan dari
relationship many to many.
STUDENT
Enrolls in
CLASS
Gambar 2.11 Contoh Composite Entity
36
2. Relasi (Relationship) M enurut Rob,Coronel (2002, p124), relasi adalah asosiasi hubungan antara entitas. Entitas yang berhubungan dalam relasi disebut participants. Konektivitas antar relasi, antara lain:
a. Relasi 1:1 User
Password has
Gambar 2.12 Contoh Relasi 1:1
b. Relasi 1:M Lecturer
teaches
Class
Gambar 2.13 Contoh Relasi 1:M
37
c. Relasi M :M Student
takes
Class
Gambar 2.14 Contoh Relasi M :M Relationship Participants terdiri dari 2 jenis, antara lain: a. Optional Entitas yang ada tidak memerlukan occurrence yang sama di dalam entitas yang berhubungan. Ditunjukkan
dengan
menggambar
sebuah
lingkaran kecil di salah satu sisi dari entitas optional di dalam ERD.
PROFESSOR
teaches
CLASS
Gambar 2.15 Contoh Optional Relationship
b. Mandatory Entitas memerlukan occurrence yang sama di dalam entitas yang saling berhubungan. Jika tidak
38
ada simbol optional yang ditunjukkan di dalam ERD, maka itu adalah mandatory.
COURSE
generates
CLASS
Gambar 2.16 Contoh Mandatory Relationship
Derajat relasi ada 3 yaitu : a. Unary M erupakan single entitas, bersifat rekursif, dan terjadi pada entitas yang sama.
COURSE
requires
Gambar 2.17 Contoh Unary Relationship
b. Binary M erupakan 2 entitas yang saling berhubungan.
39 PROFESSOR
teaches
CLASS
Gambar 2.18 Contoh Binary Relationship
c. Ternary M erupakan 3 entitas yang saling berhubungan.
Gambar 2.19 Contoh Ternary Relationship 3. Atribut (Attribute) M enurut Rob & Coronel (2002, p808), atribut adalah karakter dari sebuah entitas atau objek. Atribut memiliki nama dan tipe data.
40
a. Simple Attribute M enurut Rob, Coronel (2005, p121), Simple Attribute adalah atribut yang tidak dapat dibagi lagi. Contohnya umur, jenis kelamin. STUDENT Stu_Name Stu_Initial Stu_Email
Gambar 2.20 Simbol Atribut b. Composite Attribute M enurut Rob, Coronel (2002, p121), Composite Attribute adalah atribut yang dapat dibagi menjadi atribut tambahan. Contohnya atribut Alamat dapat dibagi menjadi jalan, kota, propinsi, dan kode pos.
c. Single-valued Attribute M enurut Rob, Coronel (2002, p121), Single-valued Attribute adalah atribut yang hanya dapat memiliki 1 nilai. Contohnya 1 orang hanya dapat memiliki 1 nomor KTP.
d. Multi-valued Attribute M enurut Rob, Coronel (2002, p121), Multi-valued Attribute adalah atribut yang dapat memiliki banyak nilai.
41
Contohnya seseorang dapat memiliki banyak nomor telepon (HP, kantor, rumah).
e. Derived Attribute M enurut Rob, Coronel (2002, p123), Derived Attribute tidak butuh disimpan secara fisikal di dalam database. Derived Attribute adalah atribut yang memiliki nilai yang merupakan nilai turunan dari atribut lainnya. Contohnya atribut EM P_AGE bisa didapatkan dari atribut lain yaitu dari tanggal sekarang dikurangi dengan nilai EM P_DOB kemudian dibagi dengan 365 hari.
42
2.2.1.3 Contoh ERD
Gambar 2.21 Contoh ERD (Rob, Coronel, 2002, p159)
43
2.2.2
Data Flow Diagram (DFD) M enurut Whitten (2004, p344), Data Flow Diagram adalah model proses yang digunakan untuk menggambarkan aliran data yang melalui sebuah sistem dan proses yang ditampilkan oleh sistem tersebut. Ada 3 buah simbol dan 1 buah koneksi di dalam DFD : • Sebuah bujur sangkar yang dibulatkan yang mewakili proses atau pekerjaan yang sudah diselesaikan. • Sebuah persegi yang mewakili perantara eksternal-batas dari sebuah sistem. • Sebuah kotak yang terbuka mewakili penyimpanan data, yang kadang-kadang disebut juga arsip atau basis data. • Anak panah mewakili aliran data, atau input dan output, ke dan dari proses.
2.2.2.1 Proses M enurut Whitten (2004, p347), proses adalah pekerjaan yang sedang berjalan, atau respon pada sebuah aliran data atau kondisi yang akan datang. Sinonimnya adalah perubahan bentuk atau transformasi.
44
Gambar 2.22 Simbol-Simbol dari proses (Whitten, 2004, p 347)
2.2.2.2 Aliran Data atau Data Flow M enurut Whitten (2004, p357), aliran data atau data flow adalah sebuah aliran data mewakili sebuah input data ke dalam proses atau output data (atau informasi) dari sebuah proses. Aliran data ini juga digunakan untuk mewakili
kreasi,
pembacaan,
penghapusan,
atau
memperbaharui data di dalam sebuah arsip atau basis data.
Gambar 2.23 Simbol dari data flow (Whitten, 2004, p357)
2.2.2.3 External Agent M enurut Whitten (2004, p363), external agent adalah orang, unit organisasi, sistem, atau organisasi yang berinteraksi dengan sebuah sistem.
45
Gambar 2.24 Simbol-Simbol dari external agent (Whitten, 2004, p365)
2.2.2.4 Data Store Data store adalah sebuah penyimpanan data-data. Data store menyimpan data yang akan digunakan untuk masa mendatang.
Gambar 2.25 Simbol-Simbol dari data store (Whitten, 2004, p366)
46
2.2.2.5 Contoh DFD
Gambar 2.26 Contoh DFD (Whitten, 2004, p346)
2.2.2.6 Context DFD M odel
proses
yang
digunakan
untuk
mendokumentasikan ruang lingkup dari sebuah sistem. Disebut juga model environmental. Sistem context DFD dibuat untuk membangun inisialisasi ruang lingkup proyek.
47
Gambar 2.27 Contoh Context DFD (Whitten, 2004, p373)
2.2.3
State Transition Diagram (S TD) 2.2.3.1
Pengertian S TD M enurut p199/602),
Booch,
state
Jacobson,
transition
dan
Rumbaugh
(2005,
diagram
digunakan
untuk
menunjukkan keadaan/s tate dari suatu kelas atau konteks, kondisi atau keadaan yang menyebabkan peralihan dari suatu state ke state yang lain, dan aksi yang mengakibatkan perubahan state. State transition diagram digunakan untuk menyatakan sifat
48
dinamis dari sistem. Dua elemen pokok state transition diagram adalah state dan state transition.
2.2.3.2
Komponen S TD 1. State State dari suatu objek menggambarkan hasil kumulatif dari perilaku objek itu sendiri. (Booch, Jacobson, dan Rumbaugh, 2005, p200) 2. State Transition Event merupakan kejadian yang dapat menyebabkan state sistem berubah. Perubahan state ini disebut state transition. Setiap state transition menghubungkan dua state. (Booch, Jacobson, dan Rumbaugh, 2005, p201)
name
State Icon
actions Event [guard] / action
State Transition
Start Stop
Gambar 2.28 Simbol STD
49
2.2.3.3
Contoh S TD Temperature drop or rise / dj
()
Define Climate
Idle
Daytime Terminate Cli
Terminate
Sunrise /
Cli
i h
Sunset /
()
i h
ff()
Nighttime
Temperature drop or rise / dj
()
Gambar 2.29 Contoh STD (Booch, Jacobson, dan Rumbaugh, 2005, p203)
2.3 Teory khusus 2.3.1
Data Dalam pendekatan basis data tidak hanya berisi basis data itu sendiri tetapi juga termasuk definisi atau deskripsi dari data yang disimpan. Data adalah informasi yang disimpan dalam sistem katalog, yang berisi informasi tentang struktur tiap berkas, tipe dan format
50
peryimpanan tiap item data, dan berbagai hambatan dari data. Semua informasi yang disimpan dalam sistem catalog ini biasa disebut metadata. M enurut Turban (2003, p15), data adalah fakta mentah atau deskripsi dasar dari sesuatu, kejadian, aktivitas, dan transaksi yang didapat, dicatat, disimpan, dan dikelompokkan, namun tidak terorganisasi sehingga tidak memberikan suatu arti yang spesifik.
2.3.2
Customer Relationship Management Suatu jenis manajemen yang secara khusus membahas teori mengenai penanganan hubungan antara perusahaan dengan pelanggannya dengan tujuan meningkatkan nilai perusahaan di mata para pelanggannya. Pengertian lain mengatakan bahwa ia adalah sebuah sistem informasi yang terintegrasi yang digunakan untuk merencanakan, menjadwalkan, dan mengendalikan aktivitas-aktivitas prapenjualan dan pascapenjualan dalam sebuah organisasi. CRM
melingkupi semua aspek yang
berhubungan dengan calon pelanggan dan pelanggan saat ini, termasuk di dalamnya adalah pusat panggilan (call center), tenaga penjualan (sales force), pemasaran, dukungan teknis (technical support) dan layanan lapangan (field service).
51
2.3.2.1 S asaran dan Tujuan Sasaran utama dari CRM adalah untuk meningkatkan pertumbuhan jangka panjang dan profitabilitas perusahaan melalui pengertian yang lebih baik terhadap kebiasaan (behavior) pelanggan. CRM bertujuan untuk menyediakan umpan balik yang lebih efektif dan integrasi yang lebih baik dengan pengendalian return on investment (ROI) di area ini. Otomasi Tenaga Penjualan (Sales force automation/SFA), yang mulai tersedia pada pertengahan tahun 80-an adalah komponen pertama dari CRM . SFA membantu para sales representative untuk mengatur account dan track opportunities mereka, mengatur daftar kontak yang mereka miliki, mengatur jadwal kerja mereka, memberikan layanan training online yang dapat menjadi solusi untuk training jarak jauh, serta membangun dan mengawasi alur penjualan mereka, dan juga membantu mengoptimalkan
penyampaian
informasi
dengan
news
sharing.SFA, pusat panggilan (bahasa inggris : call center) dan operasi lapangan otomatis ada dalam jalur yang sama dan masuk pasaran pada akhir tahun 90-an mulai bergabung dengan pasar menjadi CRM . Sama seperti ERP (bahasa Inggris : Enterprise Resource
Planning),
CRM
adalah
sistem
yang
komprehensif dengan banyak sekali paket dan pilihan.
sangat
52
M erujuk kepada Glen Petersen, penulis buku "ROI: Building the CRM Business Case," sistem CRM yang paling sukses ditemukan dalam organisasi yang menyesuaikan model bisnisnya untuk profitabilitas, bukan hanya merancang ulang sistem informasinya. CRM mencakup metoda dan teknologi yang digunakan perusahaan untuk mengelola hubungan mereka dengan pelanggan. Informasi yang disimpan untuk setiap pelanggan dan calon pelanggan dianalisa dan digunakan untuk tujuan ini. Proses otomasi dalam CRM digunakan untuk menghasilkan personalisasi pemasaran otomatis berdasarkan informasi pelanggan yang tersimpan di dalam sistem.
2.3.2.2 Fungsi-fungsi dalam CRM Sebuah sistem CRM harus bisa menjalankan fungsi: •
M engidentifikasi
faktor-faktor
yang
penting
bagi
pelanggan. •
M engusung falsafah customer-oriented (customer centric)
•
M engadopsi pengukuran berdasarkan sudut pandang pelanggan
•
M embangun proses ujung ke ujung dalam melayani pelanggan
•
M enyediakan dukungan pelanggan yang sempurna
•
M enangani keluhan/komplain pelanggan
53 •
M encatat dan mengikuti semua aspek dalam penjualan
•
M embuat informasi holistik tentang informasi layanan dan penjualan dari pelanggan.
2.3.3
Remote Authentication Dial-In User Service (RADIUS ) Sebuah protokol keamanan komputer yang digunakan untuk melakukan autentikasi, otorisasi, dan pendaftaran akun pengguna secara terpusat untuk mengakses jaringan. RADIUS didefinisikan di dalam RFC 2865 dan RFC 2866, yang pada awalnya digunakan untuk melakukan autentikasi
terhadap
akses
jaringan
secara
jarak
jauh
dengan
menggunakan koneksi dial-up. RADIUS, kini telah diimplementasikan untuk melakukan autentikasi terhadap akses jaringan secara jarak jauh dengan menggunakan koneksi selain dial-up, seperti halnya Virtual Private Networking (VPN), access point nirkabel, switch Ethernet, dan perangkat lainnya. Radius banyak dipakai oleh Provider dan ISP internet untuk authentikasi dan billingnya. Radius juga bisa dipakai oleh jaringan RT/RW-Net
untuk
authentikasi
para
penggunanya
dan
untuk
mengamankan jaringan RT/RW-Net yang ada. Di indonesia sudah ada service radius, namun berbayar seperti indohotspot.net. Ada juga service yang tidak berbayar, dan dikelola oleh luar negeri seperti chillidog.org Selain lebih menghemat budget, dan juga menghemat biaya maintenance,
54
sistem Radius yang di host di internet merupakan salah satu solusi murah untuk para penggagas sistem HotSpot.
2.3.4
Sistem M enurut joseph w.wilkinson (2000, p3) system adalah suatu kerangka kerja terpadu yang mempunyai satu sasaran atau lebih. M enurut mulyadi (2001, p8) mendefinisikan,”system adalah suatu jaringan yang dibuat menurut pola yang terpadu untuk melaksanakan kegiatan pokok perusahan” (p6) menurut mc leod yang diterjemahkan oleh teguh, H. (2001) menulis, “system adalah sekelompok elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan tertentu” (p.11), tetapi menurut mathiassen, et al., 200, (p.9) “system adalah kumpulan komponen yang mengimplementasikan model requerment, function, dan interface”. Jadi dapat disimpulkan bahwa system adalah sekumpulan elemenelemen yang saling berkaitan, berintegrasi dan bekerja sama untuk mencapai suatu tujuan tertentu.
2.3.5 Biling M enurut hunter dan thiebaud (2000, p164), customer service atau bagian operasional bertanggung jawab dalam membangun dengan pelanggan, termasuk dalam hal mengatur tagihan (billing). Sering kali persepsi pelanggan terbentuk pada suatu perusahaan, bisa ditentukan atau
55
berkaitan dengan cara menangani billing atau tagihannya. Kemampuan untuk melihat catatan-catatan transaksi yang dilakukan pelanggan sebelumnnya, biasanya berdampak positif terhadap penilaian pelanggan. Billing merupakan operasi/proses memasukan, menggabungkan serta menghitung semua beban tagihan, khusus untuk pelangga untuk selanjutnya dicetak dan menerima pembayaran dari tagihan tersebut. (Hunter, jane.p.164). Operasi billing bertanggung jawab untuk bisa mengelola secara akurat informasi-informasi yang didapat dan dikumpulkan menjadi bentuk tagihan-tagihan. Dengan system billing, maka perusahaan bisa memperoleh banyak informasi
mengenai
pelanggan,
pelayanaan
serta
produk yang
dipesannya. Selain itu perusahaan juga bisa memperoleh informasi pembayaran yang dilakukan pelanggan, megumpulkan dan menyimpan data-data pembayaran yang bisa mendukung bisnis, pembuatan laporan keuangan dan melakukan analisa.
2.3.6
Konsep Teknlogi Informasi M enurut senn (1998, p12) teknologi informasi mengarah pada banyak item dan kemampuan yang digunakan yang digunakan dalam membuat, menyimpan dan penyebaran dari data dan informasi yang sama baik dengan penciptaan pengetahuan. Data merupakan fakta mentah, figures, dan detil. Informasi adalah pengorganisasian, pemaknaan dan
56
interpretasi berguna dari data, sedangkan pengetahuan merupakan kesadaran dan pengertian dari suatu kumpulan iinformasi dan bagaimana informasi tersebut dapat digunakan dengan tepat dan baik. M enurut whitten al (2000, p45) teknologi informasi merupakan istilah kontemporer yang menggambarkan kombinasi dari teknologi komputer (perangkat keras dan lunak) dengan teknologi telekomunikasi (data, gambar dan jaringan suara).
2.3.7
Prinsip Teknologi Informasi M enurut senn (1998, p21) prinsip teknologi informasi ada 2 yaitu : 1.
Teknologi informasi menjelaskan tujuan dari teknologi informasi, yaitu kegunaan utama dari teknologi informasi adalah pemecah masalah, memberi kebebasan dalam berkreatifitas dan membetuk manusia
menjadi
lebih
efektif
daripada
mereka
tidak
mengaplikasikan teknologi informasi dalam aktifitasnya jadi yang sama penting dengan aplikasi teknologi informasi ialah prinsip teknologi tinggi : semakin canggih teknologi informasi yang diinginkan, semakin penting untuk mempertimbangkan aspek penggunaannnya. 2.
Prinsip lain yang menekankan : selalu menempatkan teknologi informasi ke orang bukan meminta orang untuk beradaptasi dengan teknologi.
57
2.3.7.1 Fungsi Teknologi Informasi M enurut senn (1998, p21) menjabarkan lima fungsi teknologi informasi, yaitu : 1.
Capture Hal ini sering berguna untuk mengkompilasi detil catatan dari aktifitas. Proses ini disebut pengambilan data yang dilakukan ketika data yang diinginkan akan berguna.
2.
Processing Aktivitas
ini
sering
diasosiasikan
dengan
computer, processing, biasanya tujuan dari orang-orang dan organisasi yang membeli computer. Fungsi proses terdiri dari konversi, analisa, computing dan sintesisasi semua bentuk data dari informasi. 3.
Generation Teknologi informasi sering digunakan untuk menghasilkan informasi melalui pemprosesan. Hasil merupakan informasi yang mengarah pada data organisasi dan informasi menjadi suatu bentuk yang bermanfaat.
4.
Storage and retrival Storage mengijinkan computer untuk menyimpan data dan informasi untuk keperluan masa depan. Retrival merupakan mencari dan menyalin data atau informasi
58
yang tersimpan untuk proses lebih lanjut atau untuk ditransmisikan pada pengguna lain. 5.
Transmission M engirimkan data dan informasi dari satu lokasi ke lokasi yang lain disebut tranmisi.
2.3.7.2 Keunggulan Teknologi Informasi M enurut senn (1998, p25) ada empat keunggulan teknologi informasi, sebagai berikut : 1.
Kecepatan (speed) Komputer melakukan semua hal dalam hitungan detik. Komputer lebih cepat dibanding dengan manusia untuk mengerjakan banyak tugas. Komputer dapat melakukan kalkulasi rumit, memanggil kembali informasi yang tersimpan, mengirim informasi dari satu tempat ke tempat lain.
2.
Konsisten (Consistency) M anusia sering mendapat kesulitan mengulangi tindakan mereka yang sama persis, sedagkan computer melakukan sesuatu sekali tidak sulit dan melakukannya lagi dengan hasil yang sama berulang-ulang kali. Computer sangat baik dalam mengulangi aksi secara konsisten.
59
3.
Tepat (Precision) Untuk menjadi cepat dan konsisten, computer sangat cepat. Computer dapat menemukan perbedaanperbedaan yang tidak dapat manusia lihat.
4.
Dapat dihandalkan (Reliability) Dengan kecepatan, konsistensi, dan ketepatan munculan keandalan. Ketika dketahui prosedur yang sama akan diikuti, secara cepat, konsisten dan tepat, maka bisa ditemukan keandalan hasil, yang mana bentuk lain dari kehandalan yaitu keandalan penggunaan.
2.3.8
Web Based Application 2.3.8.1 Pengertian Web Application atau yang sering disebut dengan web app adalah aplikasi yang dapat diakses web browser melalui jaringan seperti internet dan intranet, Web application menjadi popular dikarenakan kemampuan ubiquity browser sebagai klien, biasanya disebut thin klien. Kemampuan untuk mengubah dan memelihara aplikasi web tanpa mengganggu dan menginstall perangkat lunak terhadap ribuan dari computer klien secara potensial adalah alasan kunci dari kepopularitasannya. Aplikasi web digunakan untuk mengimplementasikan web mail, penjualan online, pelelangan
60
online, wikis, forum diskusi, web blog, MM ORPGs, dan banyak fungsi-fungsi lainnya.
2.3.8.2
S truktur Walaupun
banyak
variasi
yang
memungkinkan,
kebanyakan strutur aplikasi web adalah aplikasi three-tired. Dalam bentuk umumnya, web browser adalah first tier, mesin yang menggunakan
beberapa isi teknologi web dinamik
(contohnya CGI, PHP, Java Servlet, ataupun ASP) menjadi second tier, yang akan melayani request tersebut dengan membuat query dan mengubah database (basis data) serta me-generate interface pemakai.
2.3.9
Jaringan dan Komponen – komponennya 2.3.9.1 Internet M enurut Thomas Connolly, “Internet adalah jaringan intranet dunia yang saling terhubung”. Internet terdiri dari banyak bagian tetapi melalui jaringan yang dimiliki komersil, pendidikan dan organisasi pemerintahan, dan Internet Service Providers (ISPs).
Pelayanan yang terdapat di Internet meliputi surat
elektronik (e-mail), conferencing dan chat services, begitu juga kemampuan untuk mengakses computer jarak jauh, dan mengirim serta menerima files.
61
2.3.9.2 Intranet M enurut Thomas Connolly, “intranet adalah sebuah web site atau group of sites yang di miliki oleh suatu organisasi, dan hanya bisa di akses oleh anggota dari organisasi tersebut”.
2.3.9.3
World Wide Web M enurut Thomas Connolly, ”The Web adalah sistem yang berbasis hypermedia yang menyediakan penjelajahan informasi di internet
dengan
cara
yang
tidak
berkelanjutan
dengan
menggunakan hyperlinks”.
2.3.9.4 HyperText Markup Language (HTML) M enurut Thomas Connolly, ”Format bahasa dari dokumen yang banyak digunakan untuk merancang halaman Web”.
2.3.9.5
HyperText Transfer Protocol (HTTP) M enurut Thomas Connolly, ”HTTP yaitu sebuah protocol yang digunakan untuk mentransfer web pages melalui internet”.
2.3.9.6
Web Browser Web Browser adalah perangkat lunak aplikasi yang digunakan untuk mengalokasikan dan menampilkan halaman web. Web Browser yang sering digunakan adalah M icrosoft Internet
62
Explorer dan M ozilla Firefox. Keduanya adalah browser grafikal, yang maksudnya adalah ia dapat menampilkan gambar sebaik menampilkan
teks.
Kebanyakan
modern
browser
dapat
mempresentasikan informasi multimedia, termasuk suara dan video, walaupun mereka membutuhkan plug-in untuk beberapa format.
2.3.9.7
TCP/IP TCP/IP
adalah
salah
satu
jenis
protocol
yang
memungkinkan kumpulan computer untuk berkomunikasi dan bertukar data di dalam suatu jaringan. Layanan yang diberikan oleh TCP/IP antara lain adalah: -
File Transfer.
-
Remote Login.
-
Komputer mail.
-
Network File Sistem.
-
Remote Execution.
-
Name Server.
63
2.3.10 Rekayasa Piranti Lunak 2.3.10.1 Karakteristik 1. Perangkat lunak yang dikembangkan atau dirancang, bukan diproduksi seperti pada pengertian klasik. M eskipun terdapat
kemiripan
antara pengembangan
perangkat lunak dan perangkat keras (hardware), namun pada dasarnya kedua hal tersebut adalah berbeda. Keduanya memerlukan desain yang baik untuk mencapai kualitas tinggi, namun produksi perangkat keras dapat menemukan masalah dalam kualitas, sedangkan dalam pengembangan perangkat lunak, hal tersebut tidak terjadi (jika terjadi maka mudah diperbaiki).
2. Perangkat lunak tidak akan habis dipakai. Pada perangkat keras yang rusak, terdapat spare_part yang dapat menggantikannya. Sedangkan pada perangkat lunak, tahap pemeliharaan tidak semudah perangkat keras karena tidak memiliki spare_part apapun. Saat perangkat lunak menemukan kegagalan, berarti terjadi kesalahan pada desain atau proses.
64
3. Kebanyakan
perangkat
lunak
dibuat
berdasarkan
pesanan walaupun industri mengarah pada perakitan berbasiskan komponen. Suatu komponen perangkat lunak harus dirancang dan mampu diterapkan pada berbagai jenis program. Dengan demikian,
komponen
digunakan
berulang
perangkat kali
dan
lunak
tersebut
dimanipulasi,
dapat
sehingga
memungkinkan untuk menghasilkan suatu perangkat lunak yang berbeda.
2.3.11 Interaksi Manusia dan Komputer Seiring dengan perkembangan Teknologi Informasi, berbagai macam program baru bermunculan dengan perancangan yang menarik. Namun hal itu belumlah cukup, karena bisanya user lebih menginginkan adanya interaksi dengan program-program yang mudah dioperasikan (user friendly), agar mereka dapat lebih mudah dalam menjalankan program tersebut. Hal inilah yang mendasari lahirnya sebuah ilmu baru yang disebut interaksi manusia dan computer. Secara garis besar, interaksi manusia dan computer merupakan suatu disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer yang interaktif untuk digunakan oleh manusia, serta merupakan suatu study terhadap fenomena–fenomena besar yang berhubungan dengannya. Ilmu ini secara khusus menitikberatkan
65
pada perancangan dan evaluasi antar pemakai (user interface) dengan tujuan seseorang dapat membuat sistem interaksi dengan memperhatikan kaedah interkasi dan komunikasi.
2.3.11.1 Delapan Aturan Emas Perancangan User Interface Delapan aturan emas perancangan user interface yaitu: 1. Berusaha untuk konsisten. Rangkaian konsisten dari aksi harus dipenuhi dalam situasi yang sama, terminologi sama harus digunakan dalam prompts, menu-menu, dan layar help, dan perintah konsisten harus di pekerjakan seluruhnya.
2. Memungkinkan frekuensi user menggunakan shortcuts. Pada saat frekuensi dari user meningkat, user juga berkeinginan untuk mengurangi jumlah dari interaksi dan untuk meningkatkan langkah dari interaksi, singkatan, function keys, perintah tersembunyi, dan fasilitas makro sangat membantu untuk pengguna ahli.
3. Memberikan umpan balik yang informatif. Untuk semua tindakan operator, harus ada beberapa umpan balik sistem, untuk tindakan yang sering dan minor, respon dapat menjadi sederhana, sementara untuk tindakan yang
66
jarang dan utama, respon harus lebih banyak.
4. Merancang
dialog
yang
memberikan
keadaan
akhir/penutupan. Rangkaian dari tindakan harus disusun kedalam grup dengan permulaan, pertengahan, dan akhiran. Feedback yang informatif
pada penyelesaian
dari
kumpulan
tindakan
memberikan operator kepuasan dari prestasi, perasaan lega, sinyal untuk meletakan kemungkinan rencana dan pilihan dari pikiran mereka, dan indikasi yang caranya adalah bersih untuk mempersiapkan tindakan dari grup berikutnya.
5. Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana. Sebanyak mungkin, mendesain sistem sehingga user tidak bisa membuat kesalahan yang serius. Apabila kesalahan dibuat, sistem harus mampu untuk mendeteksi kesalahan dan menawarkan mekanisme untuk mengatasi kesalahan yang simpel.
6. Memungkinkan pembalikkan aksi yang mudah Fitur ini mengurangi kegelisahan, sejak user mengetahui bahwa kesalahan tidak bisa diselesaikan. Demikian hal itu
67
akan mendorong eksplorasi dari pilihan yang tidak familiar. Unit dari reversibility mungkin menjadi tindakan tunggal, data entry, atau kumpulan tindakan yang lengkap.
7. Mendukung pusat kendali internal (internal focus of control ) Operator yang berpengalaman berkeinginan kuat mengenai rasa yang mereka berkuasa dari sistem dan sistem merespon kepada tindakan mereka. M endesain sistem untuk membuat user menjadi inisiator dari tindakan dibandingkan responder.
8. Mengurangi beban ingatan jangka pendek Pembatasan dari proses informasi manusia dalam ingatan waktu yang pendek membutuhkan tampilan menjadi simpel, tampilan beberapa halaman menjadi gabungan, frekuensi windows-motion menjadi dikurangi, dan waktu latihan yang cukup menjadi alot untuk kode, mnemonic, dan rangkaian dari tindakan.
68
2.3.12 Alat Bantu Pengembangan Sistem 2.3.12.1 PHP PHP adalah teknologi server-side scripting yang digunakan untuk aplikasi web yang dinamis dan interaktif. Sebuah halaman PHP adalah sebuah halaman HTM L yang memiliki server-side scripts yang ditempatkan dalam server dan diproses oleh webserver sebelum dikirim ke browser pemakai. Server-side scripts dijalankan ketika browser melakukan permintaan file.php dari serer. PHP dipanggil oleh webserver, dimana proses script perintah yang ada di suatu halaman di eksekusi mulai dari awal sampai akhir di dalam mesin PHP setelah script PHP tersebut di olah, hasilnya akanditampilkan kepada client melalui web browser berupa tampilan HTM L. Penulisan script PHP diawali tanda . Kelebihan-kelebihan dari PHP:
Kecepatan akses yang tinggi.
Dapat bekerja dalam web server yang berbeda dan sistem operasi yang berbeda.
PHP adalah freeware dan open source.
M erupakan bahasa pemrograman yang embedded.
Dapat berjalan pada berbagai platform : Apache, IIS, M icrosoft Personal Web Server.
69
Alasan mengapa menggunakan PHP dan berbasis web adalah :
Bahasa pemrograman PHP terbukti sangat handal dalam membangun sebuah program berbasis web.
Waktu yang digunakan untuk memproses data dan menjalankan perintah-perintah query yang sangat cepat.
Dengan berjalan dalam sebuah web server, maka secara otomatis program ini bersifat multi user.
Database MySQL menyimpan data di dalam direktori khusus yang terpisah dari file program PHP sehingga keamanan data lebih terjamin.
Web server dan database server terpisah sehingga menyulitkan pihak luar untuk mengakses data yang terdapat di dalam database.
•
Bahasa program PHP dan database M ySQL lebih fleksibel karena dapat diakses oleh system operasi Windows ataupun Linux.
•
Program dapat diakses dari komputer manapun tanpa harus menginstall program client. Program bantuan untuk mengakses sistem ini hanyalah sebuah browser.
70
2.3.12.2 MySQL MySQL
merupakan
suatu
Relational
Database
Management System (RDBM S) yang cepat dan kuat. (Luke, 2001, p3). MySQL memungkinkan secara efisien menyimpan, mencari, mengurutkan dan mendapatkan data. MySQL menggunakan Structured Query Language (SQL) sebagai standar query basisdata. Kelebihan-kelebihan M ySQL menurut Indrajit (2002, p5), yaitu : a. Tidak membutuhkan ruang harddisk yang besar untuk aplikasinya. b. Standards supported. MySQL mendukung level masukan ANSI SQL-92 dan ODBC level 0-2 standar SQL. c. Language
support.
Database
server
MySQL
dapat
menampilkan pesan error dalam banyak bahasa. d. Large table. MySQL menyimpan masing-masing tabel dalam database seperti file, terpisah dalam direktori database. Ukuran maksimum tabel berkisar antara 4GB. e. Kecepatan, kekuatan dan kemudahan untuk digunakan. MySQL lebih cepat tiga atau empat kali dari database komersial lain. M ySQL sangat mudah untuk dikendalikan dan tidak membutuhkan database administrator terlatih untuk menginstalnya.
71
f. Cost advantage. MySQL adalah database relasional yang open source sehingga dapat digunakan secara gratis.
2.3.12.3 Web S erver Web server adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HTTP atau HTTPS dari client dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk dokumen HTM L. Web server yang terkenal adalah Apache dan M icrosoft Internet Information Services (IIS). Apache merupakan web sever antar-platform, sedangkan IIS hanya dapat beroperasi di sistem operasi Windows.
2.3.12.4 Macromedia Dreamweaver 8 M acromedia Dreamweaver 8 merupakan suatu editor HTM L
professional
untuk
perancangan
peng_kodean,
pengembangan website, halaman web, dan aplikasi web. M acromedia Dream weaver 8 juga menyediakan tools yang sangat
membantu
meningkatkan
pengalaman
dalam
pembuatan web yang powerfull. Berbagai fitur visual editing pada macromedia Dreamweaver 8 mengijinkan anda untuk membuat halaman web dengan cepat tanpa harus menuliskan satu baris kode.