7 BAB 2 TINJAUAN PUSTAKA 2.1 Teori yang

advertisement
BAB 2
TINJAUAN PUSTAKA
2.1
Teori yang berkaitan dengan Database
2.1.1 Sistem
Menurut Kendall (2010:563) sistem adalah koleksi dari
subsistem yang saling berkait dan bergantung, bekerja sama untuk
mencapai tujuan dan sasaran yang telah ditentukan. Semua sistem
mempunyai input, proses, output dan umpan balik.
2.1.2 Basis data
Menurut Connolly & Begg (2010:65) basis data adalah sebuah
koleksi bersama dari data yang berhubungan secara logis dan
deskripsi dari data yang dirancang untuk memenuhi kebutuhan
informasi dari suatu organisasi, selain itu basis data dapat diartikan
sebagai satu tempat besar untuk menyimpan data yang dapat
digunakan
oleh
sejumlah
departemen
dan
pengguna
secara
bersamaan. Bukan sebagai file yang berhubungan dengan redundan,
melainkan seluruh data terintegrasi dengan jumlah duplikasi
minimum. Basis data tidak lagi dipunyai oleh satu departemen,
melainkan merupakan sumber daya perusahaan bersama.
Menurut Elmasri-Navathe (2010:6) basis data adalah koleksi
dari data yang terkait dengan makna implisit. Sebuah basis data
mempunyai sifat implisit sebagai berikut :
1. Basis data merepresentasikan sejumlah aspek dari dunia nyata.
2. Basis data adalah kumpulan data yang logis dengan beberapa
makna yang melekat.
3. Basis data dirancang, dibangun, dan diisi dengan data untuk tujuan
tertentu.
2.1.3 Database Management System (DBMS)
2.1.3.1 DBMS
Menurut pendapat Ramakrishnan-Gehrke (2005:76)
Database Management System (DBMS) adalah perangkat
lunak yang dirancang untuk membantu dalam memelihara
7
8
dan menggunakan koleksi data yang besar. Kebutuhan untuk
sistem adalah sama dengan penggunaannya yang berkembang
dengan sangat cepat sehingga sebagai alternatif adalah
dengan menggunakan DBMS untuk menyimpan data di
dalam file dan menulis kode spesifik dari aplikasi untuk
menanganinya.
Menurut Connolly & Begg (2010:66) Database
Management
perangkat
System
lunak
(DBMS)
yang
adalah
sebuah
memperbolehkan
sistem
user
untuk
mendefinisikan, membuat, memelihara dan mengendalikan
akses ke dalam basis data. Database Management System
(DBMS) menyediakan sejumlah fasilitas yaitu :
1.
Data Definition Language (DDL)
Data Definition Language (DDL) memperbolehkan
user
untuk
mendefinisikan
basis
data
selain
itu
memperbolehkan user untuk menentukan tipe data, struktur
dan batasan pada data untuk disimpan di dalam basis data.
2.
Data Manipulation Language (DML)
Data
Manipulation
Language
(DML)
memperbolehkan user untuk melakukan insert, update,
delete, dan retrieve data dari basis data. Sebagai tempat
penyimpanan
pusat
untuk
data
dan
deskripsinya
memperbolehkan DML untuk menyediakan fasilitas yaitu
bahasa query.
3.
Query Language
Query language adalah bahasa yang digunakan oleh
user untuk mengakses data pada basis data. DBMS
menyediakan kontrol akses ke dalam basis data, sebagai
contoh :
a.
Sistem keamanan (Security system), yang mana
mencegah
users
yang
tidak
mempunyai
wewenang untuk mengakses basis data.
b.
Sistem integritas (Integrity system), yang mana
menjaga konsistensi dari data yang disimpan.
9
c.
Sistem kontrol konkurensi (Concurrency control
system) yang mana memperbolehkan shared
access terhadap basis data.
d.
Sistem kontrol perbaikan (Recovery control
system) yang mana memperbaiki basis data ke
kondisi sebelumnya apabila terjadi kerusakan
pada hardware atau software.
e.
Katalog yang dapat diakses user (User-accessible
catalog) yang mana berisi deskripsi data di dalam
basis data.
f.
Mekanisme view (View mechanism) yang mana
memungkinkan setiap user memiliki tampilannya
sendiri pada basis data.
2.1.3.2 Komponen dari lingkungan DBMS
Komponen utama dari lingkungan DBMS menurut Connolly
& Begg (2010:68-71) yaitu :
1. Hardware
DBMS dan aplikasi membutuhkan hardware untuk
dijalankan. Hardware dapat berupa personal computer
(PC), mainframe atau jaringan komputer. Pada umumnya
hardware dapat bergantung kepada kebutuhan organisasi
atau penggunaan DBMS.
2. Software
Komponen software terdiri dari software DBMS itu
sendiri, program aplikasi, sistem operasi dan termasuk
software jaringan apabila DBMS sedang digunakan
melalui jaringan.
3. Data
Data merupakan komponen terpenting di lingkungan
DBMS. Data berperan sebagai jembatan di antara
komponen manusia dan komponen mesin.
4. Prosedur
Prosedur merujuk pada instruksi dan aturan yang
mengatur rancangan dan penggunaan basis data. User dari
10
sistem
dan
pegawai
membutuhkan
menangani
prosedur
basis
terdokumentasi
data
yang
mengenai
bagaimana cara untuk menggunakan dan menjalankan
sistem. Hal ini dapat terdiri dari log on ke dalam DBMS,
menggunakan fasilitas DBMS, start dan stop DBMS,
membuat backup dari basis data, menangani kesalahan
software atau hardware.
5. People
Komponen terakhir dari DBMS adalah orang yang
terlibat dengan sistem, seperti Data Administrator (DA),
Database
Administrator (DBA), database designer,
application developer, dan pengguna akhir (end-users).
2.1.3.3 Keuntungan dan Kerugian DBMS
Database
Management
System
(DBMS)
memiliki
keuntungan potensial yang menjanjikan, tetapi terdapat juga
kekurangan.
Keuntungan - keuntungan DBMS menurut Connolly &
Begg (2010:77-80) yaitu :
1. Kontrol terhadap data yang kelebihan
2. Konsistensi data
3. Informasi tambahan dari data yang sama
4. Jumlah data
5. Berbagi Data
6. Meningkatkan integritas data
7. Meningkatkan keamanan
8. Penetapan standardisasi
9. Skala ekonomi
10. Keseimbangan dari kebutuhan data yang berbeda
11. Meningkatkan produktivitas
12. Meningkatkan konkurensi
13. Meningkatkan layanan backup dan recovery
11
Kerugian-kerugian DBMS menurut Connolly & Begg
(2010:80-81) yaitu :
1. Kompleksitas
2. Ukuran
3. Biaya DBMS
4. Biaya tambahan hardware
5. Biaya konversi
6. Kinerja
7. Dampak tinggi dari kegagalan
2.1.3.4
Fungsi DBMS
Menurut Connolly & Begg (2010:99-104) fungsifungsi DBMS adalah :
1. Data Storage, Retrieval and Update
DBMS melengkapi users dengan kemampuan untuk
store, retrieve, dan update data di dalam basis data.
2. An User-accessible catalog
DBMS
harus
menyediakan
mendeskripsikan
memberikan
data
akses
catalog
item disimpan
kepada
yang
dan dapat
users
untuk
menggunakannya.
3. Transaction Support
DBMS harus menyediakan suatu mekanisme yang
memastikan semua perubahan berkoresponden untuk
transaksi yang diberikan dan dibuat atau salah satu dari
itu tidak dibuat.
4. Concurrency control services
DBMS
harus
menyediakan
mekanisme
untuk
memastikan basis data dapat diatur secara tepat ketika
sejumlah user mengubah basis data secara bersamaan.
5. Recovery services
DBMS
harus
menyediakan
mekanisme
untuk
memperbaiki basis data yang pada suatu waktu dapat
rusak karena suatu hal.
6. Authorization services
12
DBMS harus menyediakan untuk memastikan hanya
user yang mempunyai wewenang dapat mengakses ke
dalam basis data.
7. Support for data communication
DBMS harus dapat berintegrasi dengan aplikasi lain
untuk melakukan komunikasi data.
8. Integrity services
DBMS harus menyediakan cara untuk memastikan
datadi dalam basis data dan perubahan pada data
mengikuti sejumlah aturan yang telah ditetapkan.
9. Services to promote data independence
DBMS harus mencakup fasilitas untuk membantu
kemandirian
program
dari
struktur
basis
data
sebenarnya.
10. Utility services
DBMS menyediakan satu set fasilitas pelayanan yang
terdiri dari organisasi index, monitoring, atau garbage
collection.
13
2.1.4 Siklus Hidup Sistem Basis Data
Database planning
System definition
Requirement
collection and analysis
Database design
Conceptual database
design
DBMS selection
Application design
(optional)
Logical database
design
Physical database
desgin
Prototyping
(optional)
Implementation
Data conversion and
loading
Testing
Operational
maintenance
Gambar 2.1 Siklus Hidup Sistem Basis Data
14
2.1.4.1
Database Planning
Menurut Connolly & Begg (2010:313) Database
planning
merupakan
aktivitas
pengaturan
yang
memperbolehkan setiap tahap dari pengembangan siklus
hidup basis data untuk dapat direalisasikan secara efisien
dan efektif. Database planning harus terintegrasi dengan
strategi Information Services (IS) dari organisasi.
Terdapat 3 isu utama yang berkembang dalam
mengatur strategi Information Services, yaitu :
1. Identifikasi rencana dan tujuan dengan determinasi
berikutnya dari kebutuhan sistem informasi
2. Evaluasi sistem informasi yang sekarang digunakan
untuk menentukan kekuatan dan kelemahannya
3. Penilaian dari peluang IT mungkin dapat menjadi
keuntungan untuk bersaing selanjutnya
Terdapat sejumlah metodologi untuk mengatasi isu
yang
berkembang
seperti
yang
telah
disebutkan
sebelumnya yaitu dengan menentukan Mission Statement
untuk sistem basis data dan identifikasi Mission Objectives
berupa tugas-tugas yang harus didukung oleh sistem basis
data tersebut.
2.1.4.2
System Definition
Menurut Connolly & Begg (2010:316) System
definition menjelaskan ruang lingkup dan batasan dari
aplikasi basis data dan User Views. User Views
mendefinisikan apa yang dibutuhkan dari sistem basis
data, dilihat dari perspektif peran pekerjaan tertentu
(seperti manajer atau supervisor) atau wilayah aplikasi
perusahaan (seperti pemasaran, personalia, atau kontrol
stok).
15
Gambar 2.2 Representasi dari Sistem Basis Data dengan Sejumlah User Views
Sistem basis data dapat memiliki satu atau lebih user
views. Identifikasi pandangan pengguna merupakan hal
penting dalam mengembangkan sistem basis data karena
membantu untuk memastikan bahwa tidak ada pengguna
basis data dilupakan ketika mengembangkan persyaratan
untuk basis data yang baru. Pandangan pengguna sangat
membantu dalam pengembangan yang relatif kompleks
sehingga memungkinkan permintaan-permintaan dipecah
ke dalam bagian yang sederhana.
2.1.4.3
Requirement Collection and Analysis
Menurut
Connolly
&
Begg
(2010:316-318)
Requirement Collection and Analysis merupakan proses
mengumpulkan dan menganalisis informasi tentang
pengumpulan dan bagian dari organisasi yang didukung
16
oleh analisis sistem basis data dan menggunakan informasi
ini untuk mengidentifikasi persyaratan sistem baru.
Untuk mendapatkan informasi, dapat digunakan
teknik yang disebut dengan Fact Finding Technique.
Terdapat lima Fact Finding Technique yang umum
digunakan, yaitu :
1. Evaluasi dokumen
2. Wawancara
3. Mengamati jalannya kegiatan di perusahaan (observasi)
4. Penelitian
5. Kuisioner
Informasi dikumpulkan untuk setiap tampilan pengguna
utama yaitu :
1. Deskripsi data yang digunakan atau dihasilkan
2. Detail mengenai bagaimana data yang akan digunakan
atau dihasilkan
3. Persyaratan tambahan untuk sistem basis data yang baru
2.1.4.4
Database Design
Menurut Connolly & Begg (2010:320) Database
design merupakan proses membuat desain yang membantu
pernyataan misi desain aplikasi dan tujuan untuk sistem
basis data yang diperlukan. Database design terdiri dari 3
yaitu desain konseptual, desain logikal dan desain fisikal
dari basis data.
2.1.4.4.1 Data Modelling
Menurut Connolly & Begg (2010:322)
terdapat dua tujuan utama dari pemodelan data
adalah untuk membantu dan memahami makna
(semantik) dari data dan untuk memfasilitasi
komunikasi tentang persyaratan informasi.
Membangun model data memerlukan jawaban
dari pertanyaan mengenai entitas, hubungan
dan atribut.
17
2.1.4.5
DBMS Selection
Menurut Connolly & Begg (2010:325-329) DBMS
selection merupakan pemilihan DBMS yang sesuai untuk
mendukung sistem basis data yang dibutuhkan. Langkahlangkah utama dalam pemilihan DBMS antara lain :
1.
Menggambarkan
tujuan
sistem
basis
data
berdasarkan kebutuhan
2.
Membuat daftar perbandingan dari dua atau tiga
produk DBMS
3.
Mengevaluasi produk-produk DBMS tersebut
4.
Merekomendasikan
pemilihan
DBMS
dan
menghasilkan laporan dari evaluasi produk DBMS
tersebut
2.1.4.6
Application Design
Menurut
Connolly
&
Begg
(2010:329-333)
application design mencakup mengenai desain dari
tampilan antarmuka, aplikasi program dan proses ke
dalam basis data. Dalam sejumlah kasus, tidak mungkin
untuk menyelesaikan desain aplikasi program sebelum
desain basis data diselesaikan. Perancangan basis data dan
aplikasi merupakan aktivitas paralel yang meliputi dua
aktivitas penting, yaitu :
1.
Transaction Design
Transaksi adalah suatu tindakan, atau serangkaian
tindakan yang dilakukan oleh single user atau program
aplikasi, yang mengakses atau mengubah isi basis data.
Transaksi dapat membuat sejumlah operasi seperti
pengiriman
money
bagaimanapun
dari
dilihat
suatu
dari
akun
perspektif
ke
lainnya,
user
ini
merupakan tugas tunggal tetapi apabila dilihat dari
perspektif DBMS, proses transaksi pengiriman dapat
merupakan satu state yang konsisten ke lainnya. Tugas
DBMS adalah memastikan konsistensi dari basis data
walaupun terjadi kesalahan. Kegunaan dari desain
18
transaksi
adalah
untuk
mengartikan
dan
mencatat
karakteristik high level yang dibutuhkan oleh basis data
diantaranya :
a. Data yang digunakan oleh transaksi
b. Karakteristik fungsional dari suatu transaksi
c. Output transaksi
d. Keuntungan bagi user
e. Tingkat kegunaan yang diharapkan.
Terdapat tiga tipe utama dari transaksi yaitu :
a. Retrieval Transactions
b. Update Transactions
c. Mixed Transactions.
2. User Interface Design
Beberapa panduan dalam pembuatan antar muka
pengguna, yaitu:
a. Meaningful title
b. Comprehensible instructions
c. Logical grouping and sequencing of field
d. Visually appealling layout of the form/report
e. Familiar field labels
f. Consistent terminology and abbreviation
g. Consistent use of color
h. Visiblespace and boundaries for data-entity fields
i. Convinient Cursor Movement
j. Error correction for individual characters and entire
fields
k. Error messages for unacceptable values
l. Optional fields marked clearly
m. Explanatory message for fields
n. Completion signal
19
2.1.4.7
Prototyping
Menurut Connolly & Begg (2010:333) prototyping
dapat diartikan sebagai membangun sebuah model dari
sistem basis data.Prototype adalah model kerja yang secara
normal tidak mempunyai semua fitur yang dibutuhkan atau
menyediakan semua fungsionalitas untuk sistem. Terdapat
dua strategi prototyping yang sering digunakan yaitu :
1. Requirement Prototyping
Menggunakan
prototype
untuk
menentukan
kebutuhan sistem basis data yang dibutuhkan dan ketika
kebutuhan telah terpenuhi maka prototype tersebut tidak
digunakan lagi.
2. Evolutionary Prototyping
Digunakan untuk tujuan sama, perbedaannya adalah
bahwa
prototype
tidaklah
dibuang
tetapi
dengan
pengembangan selanjutnya dapat menjadi sistem basis
data yang bekerja.
2.1.4.8
Implementation
Menurut
Connolly
&
Begg
(2010:333-334)
implementation merupakan realisasi fisikal dari basis data
dan desain aplikasi. Implementasi basis data dicapai
dengan menggunakan Data Definition Language (DDL)
dari DBMS yang telah dipilih atau dengan menggunakan
Graphical
User
menyediakan
Interface
fungsi
ketika
(GUI),
yang
menyimpan
mana
secara
tersembunyi pernyataan DDL yang low-level.
Pernyataan (statement) DDL digunakan untuk
menciptakan struktur basis data dan mengosongkan file
yang terdapat dalam basis data tersebut. User view juga
diterapkan pada langkah implementasi. Program aplikasi
diimplementasikan menggunakan bahasa generasi ketiga
atau keempat.
20
2.1.4.9
Data Conversion and Loading
Menurut
Connolly
&
Begg
(2010:334)
data
convertion and loading dapat berarti pemindahan data
yang telah ada ke dalam basis data baru dan mengubah
setiap aplikasi yang telah ada untuk menjalankan basis
data yang baru. Proses ini diperlukan hanya ketika sistem
basis data yang baru akan menggantikan sistem yang lama
2.1.4.10
Testing
Menurut Connolly & Begg (2010:334-335) testing
merupakan proses dari menjalankan sistem basis data
dengan tujuan untuk menemukan kesalahan. Testing harus
dapat melindungi penggunaan dari sistem basis data.
Secara ideal, sebuah evaluasi harus digunakan terhadap
spesifikasi penggunaan.
2.1.4.11
Operational Maintenance
Menurut Connolly & Begg (2010:335) operational
maintenance
meliputi
proses
dari
memantau
dan
memelihara sistem basis data berdasarkan instalasi. Pada
tahap pemeliharaan (maintenance) melibatkan aktivitas
berikut:
1. Monitoring
Performance
dari
sistem.
Jika
performance jatuh dibawah suatu tingkatan yang bisa
diterima, penyetelan atau reorganisasi basis data
mungkin diperlukan.
2. Maintaining dan meningkatkan mutu aplikasi basis
data (apabila diperlukan). Kebutuhan baru disatukan
dalam aplikasi basis data dengan mengikuti langkah
sebelumnya yang terdapat dalam lifecycle.
Ketika suatu sistem basis data sudah berjalan secara
seluruhnya, proses monitoring mengambil tempat untuk
memastikan perfoma berjalan dengan level yang dapat
diterima.
21
2.1.5 Tahap-tahap Perancangan Basis Data
2.1.5.1 Perancangan Konseptual Basis Data
Menurut Connolly & Begg (2010:467) perancangan
konseptual basis data adalah suatu proses perancangan model
dari data yang digunakan di dalam perusahaan, independen
dari semua perkiraan fisikal. Perancangan konseptual dimulai
dengan perancangan data model yang tidak bergantung pada
detail implementasi seperti DBMS yang dituju, aplikasi
program, bahasa pemrograman, hardware platform, isu
performa, atau pertimbangan fisikal lainnya. Menurut
Connolly & Begg (2010:468) tahap perancangan konseptual
basis data dibagi menjadi sembilan bagian, yaitu :
Langkah 1.
Bangun data model konseptual :
Langkah 1.1
Identifikasi tipe entitas
Langkah 1.2
Identifikasi tipe relasi
Langkah 1.3
Identifikasi
dan
hubungkan
atribut
dengan entitas atau relasi
Langkah 1.4
Tentukan domain atribut
Langkah 1.5
Tentukan atribut candidate, primary,
dan alternate key
Langkah 1.6
Pertimbangkan kegunaan dari Enhanced
Modeling Concept (opsional)
Langkah 1.7
Periksa redundansi terhadap model
Langkah 1.8
Validasi
data
model
konseptual
terhadap transaksi pengguna
Langkah 1.9
Periksa
ulang
data
model
dengan
pengguna
2.1.5.2 Perancangan Logikal Basis Data
Menurut Connolly dan Begg (2010:467) perancangan
logikal basis data adalah suatu proses membangun data model
yang digunakan perusahaan berdasarkan data model yang
spesifik tetapi independen terhadap DBMS yang ada atau
perkiraan fisikal lainnya.Perancangan logikal desain basis data
memetakan model konseptual menjadi model logikal, yang
22
mana dipengaruhi oleh model data untuk basis data yang
dituju. Tahap-tahap perancangan logikal basis data dibagi
menjadi tujuh bagian (Connoly & Begg, 2010:468), yaitu:
Langkah 2
Langkah 2.1
Bangun data model logikal :
Turunkan relasi untuk data model
logikal.
Langkah 2.2
Validasi
relasi
menggunakan
normalisasi
Langkah 2.3
Validasi
relasi
terhadap
transaksi
pengguna
Langkah 2.4
Periksa integritas constraint
Langkah 2.5
Periksa
ulang
data
model
logikal
dengan pengguna
Langkah 2.6
Gabung data model logikal ke model
global (opsional)
Langkah 2.7
Periksa untuk perkembangan lebihlanjut
2.1.5.3 Perancangan Fisikal Basis Data
Menurut Connolly dan Begg (2010:467) perancangan
fisikal basis data adalah suatu proses dalam memproduksi
deskripsi dari implementasi basis data di tahap kedua. Hal ini
menjelaskan hubungan dasar, organisasi file, dan index-index
yang digunakan untuk mencapai cara akses data yang efisien
dan terhubung dengan batasan integritas dan keamanan.
Perancangan
fisikal
basis
data
memperbolehkan
perancang untuk membuat keputusan mengenai bagaimana
basis data tersebut diimplementasikan sehingga perancangan
fisikal basis data disesuaikan dengan DBMS. Terdapat umpan
balik diantara fisikal dan desain logikal karena keputusan
diambil selama desain fisikal untuk meningkatkan perfoma
yang dapat mempengaruhi data model logikal. Menurut
Connolly & Begg (2010:468) tahap-tahap perancangan fisikal
basis data dibagi menjadi sebelas bagian,yaitu :
23
Langkah 3. Menerjemahkan data model logikal untuk DBMS
target:
Langkah 3.1
Desain relasi dasar
Langkah 3.2
Desain representasi dari data turunan
Langkah 3.3
Desain batasan umum
Langkah 4. Desain organisasi file dan indeks:
Langkah 4.1
Analisa transaksi
Langkah 4.2
Pilih organisasi file
Langkah 4.3
Pilih indeks
Langkah 4.4
Perkirakan kebutuhan disk space
Langkah 5. Desain tampilan pengguna
Langkah 6. Desain mekanisme keamanan
Langkah 7. Pertimbangkan
tentang
pengenalan
redundan
terkontrol
Langkah 8. Pantau dan tune sistem operasional
2.1.6 Entity Relationship Modelling
Menurut Connolly dan Begg (2010:371) Entity Relationship
Modelling adalah pendekatan secara top-down terhadap desain basis
data yang dimulai dengan mengidentifikasi data yang penting yang
disebut dengan entities dan relationships di antara data yang ingin
direpresentasikan di dalam model. Entity Relationship Modeling
adalah teknik penting untuk setiap database designer untuk master
dan form dari basis metodologi yang dipresentasikan.
2.1.6.1 Tipe Entitas
Menurut Connolly dan Begg (2010:372) tipe entitas
adalah kumpulan obyek dengan properti yang sama, yang
mana diidentifikasi perusahaan sebagai yang mempunyai
eksistensi independen. Konsep dasar dari Entity Relationship
model adalah tipe entitasyang mana merepresentasikan
kumpulan dari obyek di dunia nyata dengan sifat yang sama.
2.1.6.2 Tipe Relasi
Menurut Connolly & Begg (2010:374) tipe relasi
adalah kumpulan keterhubunganantara satu atau lebih tipe
entitas. Sebagai tipe entitas dan entitasnya, diperlukan hal
24
untuk membedakan antara aturan ‘jenis hubungan’ dan
‘hubungan kejadian’. Hubungan kejadian mengindikasikan
kejadian entitas tertentu yang terkait.
Berdasarkan pendapat Connolly dan Begg (2010:376)
derajat relasi adalah jumlah tipe entitas yang berpartisipasi di
dalam relasi. Entitas yang terlibat dalam jenis hubungan
tertentu yang disebut sebagai peserta dalam hubungan. Jumlah
partisipan di dalam tipe hubungan disebut dengan derajat dari
hubungan tersebut.
Derajat relasi dibagi menjadi tiga bagian yaitu:
1.
Binary Relationship: relasi dengan derajat dua
tipe entitas.
2.
Ternary Relationship: relasi derajat tiga tipe
entitas
3.
Quarternary Relationship: relasi derajat empat
tipe entitas
2.1.6.2.1
Recursive Relationship
Recursive
Relationship
adalah
tipe
relasi yang menggambarkan tipe entitas yang
sama berpartisipasi lebih dari satu tujuan yang
berbeda. Recursive Relationship sering disebut
dengan Unary Relationship. Hubungan dapat
diberikan nama peran untuk mengindikasikan
tujuan dari setiap yang berpartisipasi. Nama
peran dapat menjadi penting bagi hubungan
rekursif untuk menentukan fungsi dari masingmasing peserta.
25
Gambar 2.3 Contoh Recursive Relationship
2.1.6.3 Atribut
Menurut Connolly & Begg (2010:379) atribut adalah
sifat dari tipe entitas atau tipe relasi. Atribut domain adalah
kumpulan nilai yang diperbolehkan untuk satu atau lebih
atribut. Menurut Connolly dan Begg (2010:379) macammacam atribut terbagi dapat diklasifikasikan, yaitu :
1.
Simple Attribute or Composite Attribute
Simple Attribute adalah atribut yang terdiri dari
satu
komponen
dengan
independen.Simple
Attribute
keberadaan
tidak
dapat
yang
dibagi
menjadi komponen yang lebih kecil. Simple Attribute
sering disebut sebagai Atomic Attribute.
Composite Attribute adalah atribut yang terdiri
dari banyak komponen dengan keberadaan yang
independen terhadap setiap komponen.
2.
Single-valued Attribute or Multi-valued Attribute
Single-valued Attribute adalah atribut yang
memiliki satu nilai setiap kejadian dari tipe entitas.
Multi-valued Attribute adalah atribut yang
memiliki banyak nilai setiap kejadian dari tipe entitas.
26
3.
Derived Attribute
Derived
Attribute
adalah
atribut
yang
merepresentasikan suatu nilai yang diturunkan dari
suatu atribut atau kumpulan atribut yang berhubungan
tetapi tidak harus dalam tipe entitas yang sama.
2.1.6.4 Key
Berdasarkan pendapat Connolly & Begg (2010:381),
tipe-tipe keydapat dikelompokkan, yaitu :
1.
Candidate Key
Candidate key adalah kumpulan atribut yang minimal yang
secara unik mengidentifikasi kejadian dari tipe entitas yang
sama.
2.
Primary Key
Primary key adalah candidate key yang secara unik
mengidentifikasi setiap kejadian dari tipe entitas Suatu tipe
entitas dapat mempunyai lebih dari satu candidate key.
3.
Composite Key
Composite key adalah candidate key yang memiliki dua atau
banyak attribute. Dalam sejumlah kasus, kunci dari suatu
entitas terdiri dari beberapa atribut yang nilainya sama-sama
unik untuk setiap kejadian entitas tetapi tidak terpisah.
4.
Alternate Key
Alternate key adalah candidate key yang tidak terpilih menjadi
primary key.
5.
Foreign Key
Foreign key menurut Connolly & Begg (2010:380) adalah
sebuah atribut atau kumpulan atribut, dalam satu relasi yang
cocok dengan kunci candidate key dari beberapa hubungan
yang mungkin sama.
27
2.1.6.5 Tipe Entitas Kuat dan Lemah
Menurut Connolly dan Begg (2010:384) tipe entitas
kuat (strong entity type) adalah sebuah entitas yang
keberadaannya
tidak
bergantung
pada
entitas
lainnya.
Karakteristik dari entitas ini adalah bahwa setiap kejadian
entitas secara unik dapat diidentifikasi menggunakan atribut
primary key dari tipe entitas tersebut. Sedangkan tipe entitas
lemah (weak entity type) adalah sebuah entitas yang
keberadaanya bergantung kepada entitas lainnya. Karakteristik
dari entitas ini adalah bahwa setiap kejadian entitas tidak dapat
secara unik diidentifikasi hanya menggunakan atribut yang
digabungkan dengan tipe entitas itu.
2.1.6.6 Struktural Constraint
Menurut Connolly dan Begg (2010:385) constraint
harus merefleksikan batasan di dalam hubungan seperti yang
diterima di dunia nyata. Salah satu tipe utama dari batasan
pada hubungan yaitu multiplicity. Multiplicity dapat diartikan
jumlah kemungkinan kejadian dari suatu entitas yang mungkin
berhubungan dengan kejadian tunggal dari jenis entitas terkait
melalui hubungan tertentu. Tipe hubungan yang paling sering
digunakan adalah hubungan binary. Jenis-jenis hubungan
binary sebagai berikut :
1. One-to-One Relationships (1:1)
Gambar 2.4 Contoh One-to-One Relationship
Setiap branch diatur oleh satu staff manager dan setiap
member staff dapat mengatur nol atau satu branch.
2. One-to-Many Relationships (1:*)
28
Gambar 2.5 Contoh One-to-Many Relationship
Setiap property rent diawasi oleh nol atau satu member
staff dan setiap member staff mengawasi satu atau banyak
property rent.
3. Many-to-Many Relationships (*:*)
Gambar 2.6 Contoh Many-to-Many Relationship
Setiap property rent ditawarkan oleh nol atau banyak
Newspaper dan setiap Newspaper menawarkan satu atau
banyak property rent.
Tabel 2.1 Kesimpulan dari Multiplicity Constraint
Alternatif Multiplicity Constraint
0...1
Arti
Kosong atau satu entity occurence
1…1 (or just 1)
Hanya satu entity occurence
0…* (or just *)
Kosong atau banyak entity occurence
1…*
Satu atau banyak entity occurence
5…10
Minimal lima atau lebih entity occurence
0, 3, 6-8
Kosong, tiga, enam, tujuh, delapan entity
occurrence
29
2.1.6.6.1
Multiplicity for Complex Relationship
Berdasarkan pendapat Connolly dan Begg
(2010:389)
Multiplicity
untuk
Complex
Relationship adalah angka dari kejadian yang
mungkin di setiap tipe entitas pada sebuah
hubungan n-ary ketika nilai lain (n-1) adalah
sama.
2.1.6.6.2
Cardinality and Participation
Menurut Connolly & Begg (2010:390)
Cardinality menjelaskan angka maksimal dari
hubungan kejadian yang mungkin untuk setiap
entitas
yang
hubungan
berpartisipasi
yang
dengan
diberikan
jenis
sedangkan
Participation menjelaskan semua atau sejumlah
entitas kejadian yang berpartisipasi di dalam
hubungan.
2.1.7 Normalisasi
2.1.7.1 Pengertian Normalisasi
Menurut Connolly dan Begg (2010:415) normalisasi
adalah teknik untuk menghasilkan kumpulan dari relasi
dengan
kebutuhan
yang
diinginkan
dan
memberikan
kebutuhan data dari sistem. Tujuan dari normalisasi untuk
mengidentifikasi kumpulan dari relasi yang sesuai untuk
mendukung kebutuhan data dari sistem.
Menurut Hoffer, Prescott & McFadden (2007:211)
terdapat sejumlah tujuan utama dari melakukan proses
normalisasi pada basis data
1. Meminimalkan redundansi data sehingga menghindari
anomali dan melestarikan ruang penyimpanan
2. Menyederhanakan
peraturan
dari
batasan
integritas
referensial
3. Membuat lebih mudah dalam pemeliharaan data (insert,
update, delete)
30
4. Menyediakan
desain
yang
lebih
baik
sehingga
meningkatkan representasi dari dunia sebenarnya dan
membuat basis yang lebih kuat untuk pertumbuhan
kedepannya
2.1.7.2 Proses Normalisasi
Menurut Connolly & Begg (2010:428) normalisasi
merupakan
teknik
formal
untuk
menganalisa
relasi
berdasarkan dari primary key (atau candidate key) dan
ketergantungan fungsional (Codd, 1972b). Teknik tersebut
meliputi beberapa peraturan yang digunakan untuk menguji
relasi individual sehingga basis data dapat dinormalisasi
menjadi derajat apapun.
Tiga bentuk normal yang pernah diajukan adalah First
Normal Form (1NF), Second Normal Form (2NF), dan Third
Normal Form (3NF). E.F. Codd menemukan definisi yang
lebih kuat dari 3NF yakni Boyce-Codd Normal Form (BCNF).
Bentuk normal yang lebih kuat dari BCNF ditemukan yaitu
Fourth Normal Form (4NF) dan Fifth Normal Form (5NF).
Proses normalisasi meliputi langkah sebagai berikut :
1. Unnormalized Form (UNF)
Tahap awal sebelum memulai 1NF adalah unnormalized
form. Bentuk UNF merupakan tabel yang masih memiliki
satu atau lebih grup berulang (repeating groups).
2. First Normal Form (1NF)
Pada tahap ini primary key telah ditentukan, proses
perhitungan telah dihilangkan, setiap baris dan kolom
berisi atribut yang bernilai tunggal, dan atribut dengan
multi value telah dihilangkan.
3. Second Normal Form (2NF)
Second Normal Form adalah bentuk relasi pada 1NF
dimana setiap atribut yang bukan merupakan primary key
bergantung
secara
fungsional
pada
primary
key.
Normalisasi pada tahap 2NF meliputi penghapusan partial
dependencies. Menurut Connolly & Begg (2010:421)
31
partial dependencies adalah ketergantungan antara atribut
primary key yang satu dengan primary key yang lain.
Atribut yang memiliki partial dependencies dihilangkan
dengan cara menempatkan atribut tersebut ke relasi yang
baru.
4. Third Normal Form (3NF)
Third Normal Form adalah relasi dalam 1NF dan dimana
tidak ada atribut non-primary key yang memiliki hubungan
transitively dependent dengan primary key. Menurut
Connolly & Begg (2010:424) transitively dependent
adalah ketergantungan atribut non-primary key pada
atribut primary key.
Gambar 2.7 Langkah-langkah Melakukan Normalisasi
32
2.1.8 Data Flow Diagram (DFD)
Menurut Kendall & Kendall (2010:558) data flow diagram
adalah penggambaran proses data, arus data, dan menyimpan data
dalam suatu sistem bisnis.
2.1.8.1 Diagram Konteks
Menurut Kendall & Kendall (2010:558) diagram
konteks adalah data flow diagram yang paling dasar dari
sebuah organisasi yang menunjukkan bagaimana proses
mengubah data menjadi informasi. Diagram konteks disebut
juga sebagai environment model.
2.1.8.2 Diagram Nol
Menurut Kendall & Kendall (2010:561) diagram nol
adalah penguraian dari diagram konteks yang menunjukkan
tiga hingga delapan proses utama, data flows yang penting,
dan data stores dari sistem yang sedang dipelajari.
2.1.9 State Transition Diagram (STD)
Menurut Whitten & Bentley (2007:635) State Transition
Diagram adalah alat yang digunakan untuk menggambarkan urutan
dan variasi dari layar yang dapat terjadi pada sesi user. STD terdiri
dari segiempat panjang yang menggambarkan tampilan layar dan
panah yang menggambarkan flow of control. Panah berguna untuk
mengaktifkan event yang mengakibatkan layar menjadi aktif atau
menerima fokus.
2.2
Teori yang terkait tema penelitian (tematik)
2.2.1 HTTP
HTTP adalah sebuah protokol yang digunakan untuk
melakukan pengiriman halaman web melalui internet. Menurut
Connolly dan Begg (2010:1029) HTTP mendefinisikan bagaimana
klien dan server berkomunikasi. HTTP didasarkan pada paradigma
request-response. Transaksi dalam HTTP terdiri dari beberapa tahap
1. Connection adalah tahap dimana client menetapkan koneksi
dengan web server.
33
2. Request adalah tahap dimana klien mengirimkan pesan request ke
web server.
3. Response adalah tahap dimana web server mengirimkan response
ke client.
4. Close adalah tahap dimana koneksi diakhiri oleh web server.
2.2.2 Servlet
Servlet adalah suatu teknologi Java yang diintegrasikan di
dalam Web-Server untuk melakukan fungsi-fungsi server-side.
Menurut Schildt, Herbert (2005:889) servlet adalah sebuah program
kecil yang dijalankan pada sisi server (server-side). Siklus hidup dari
servlet terbagi atas tiga metode utama, yaitu init(), service() dan
destroy(). Metode init() dijalankan ketika servlet pertama kali di load
ke memory. Ini merupakan cara untuk mengirimkan parameter
inisialisasi ke servlet agar servlet dapat dikonfigurasi. Selanjutnya,
metode service() dipanggil untuk memproses HTTP request. Hal ini
digunakan servlet untuk membaca data yang telah disediakan dalam
HTTP request. Selain itu, hal ini juga dapat digunakan untuk
menyusun HTTP response untuk klien. Dan untuk metode destroy()
dipanggil oleh server untuk mengembalikan sumber daya seperti file
handles yang dialokasikan untuk servlet.
2.2.3 Apache Struts 2
Struts merupakan sebuah framework open-source yang
digunakan untuk membuat aplikasi web berbasis bahasa pemrograman
Java. Struts menggunakan arsitektur berbasis Model-View-Controller
(MVC) dimana MVC sendiri sudah menjadi salah satu standardisasi
dalam pembuatan aplikasi berbasis web. Menurut Ted Husted
(2003:11) Struts 2 merupakan framework untuk pembuatan aplikasi
web generasi kedua (sebelumnyaStruts 1) yang mengimplementasikan
pola desain Model-View-Controller. Dalam implementasinya, Struts 2
memanfaatkan Java Bean sebagai Model, Servlet sebagai Controller
dan JSP sebagai View.
2.2.4 Hibernate
Hibernate adalah alat pemetaan relasional database untuk Java
yang bersifat open source atau bebas diunduh di internet. Hibernate
34
memetakan obyek dari suatu basis data menjadi sebuah obyek yang
disebut persistence. Persistence inilah yang digunakan oleh Java
sebagaiobyek pengganti untuk melakukanquery kedatabase.Menurut
Joe Walnes (2004:4) hibernate merupakan relasional persistence yang
transparan dan powerful untuk melakukan suatu layanan query.
Dengan
kata
lain,
hibernate
merupakan
penghubung
antara
Javadengan relasional database yang berguna untuk mempermudah
meringankan pekerjaan developer aplikasi dalam melakukan CRUD
(Create, Read, Update, Delete) dalam database.
2.2.5
JavaServer Pages (JSP)
Menurut Deitel (2005:1281) JavaServer Pages atau yang biasa
disebut JSP adalah sebuah perluasan dari teknologi servlet. JSP adalah
suatu cara yang mudah untuk mengimplementasikan mekanisme
request/response
pada
web.
JavaServer
Pages
memudahkan
pengiriman dari konten web yang dinamis.
Tujuan dari JSP adalah untuk menyederhanakan pembuatan
dan manajemen halaman web dinamis dengan memisahkan konten dan
presentasi. JSP pada dasarnya merupakan file yang menggabungkan
bahasa pemrograman web biasa dengan tag scripting JSP sehingga
tampak menyerupai HTML, tetapi JSP diterjemahkan ke dalam Java
servlets pertama kali ketika dipanggil oleh klien. Yang dihasilkan
servlet adalah kombinasi dari HTML dari file JSP dan konten dinamis
yang ditentukan oleh tag baru.
Kelebihan dari penggunaan JSP yang utama adalah dari segi
keamanannya. JSP memisahkan antara logic process (proses logika
suatu aplikasi) dengan interface process (proses penampilan data dari
suatu aplikasi) yang membuat JSP cenderung lebih amandibandingkan
dengan bahasa pemrograman web lainnya seperti PHP ataupun ASP.
2.2.6 JavaScript
JavaScript adalah bahasa scripting yang dirancang untuk
menambahkan fitur interaksi ke halaman Web. Bahasa ini pertama
kali diimplementasikan oleh Netscape Communications Corp di
Netscape Navigator 2 beta (1995). JavaScript dapat digunakan pada
saat terjadinya suatu event di halaman Web, contohnya adalah ketika
35
pengguna membuka halaman web, klik suatu elemen di halaman web
dengan
mouse,
melakukan
pengetikan
dengan
menggunakan
keyboard, atau meninggalkan halaman.
JavaScript merupakan bahasa pemrograman berorientasi
obyek seperti C, C++ dan java dimana dimungkinkan terdapat fungsifungsi yang terdapat pada class seperti inheritance (penurunan sifat)
dan polymorphism. Sintaks-sintaks yang terdapat pada JavaScript
banyak yang mirip dengan bahasa pemrograman C. Namun, untuk
penamaannya lebih mirip dengan bahasa Java.
2.2.7 Cascading Style Sheet (CSS)
Cascading Style Sheet atau yang biasa disebut dengan CSS
merupakan sebuah sekumpulan kode pemrograman web yang
berfungsi untuk mengendalikan beberapa komponen didalam web
sehingga menjadi tampak seragam, berstruktur dan teratur. Menurut
tim dari Wahana Komputer (2013:2) CSS adalah singkatan dari
Cascading Style Sheet atau dalam bahasa yang lebih mudah, yaitu
salah satu dokumen website yang bertujuan untuk mengatur gaya
(style) tampilan website.
Dengan menggunakan CSS, sebuah tampilan website akan
lebih mudah untuk diatur tampilannya karena CSS memisahkan antara
bagian presentasi dan isi dari web yang dibuat.
Berikut adalah kegunaan CSS dalam pembuatan web menurut
tim dari Wahana Komputer (2013:2) :
1. Kode HTML menjadi lebih sederhana dan lebih mudah diatur
2. Ukuran file menjadi lebih kecil sehingga load file lebih cepat.
3. Mudah untuk mengubah tampilan, hanya dengan mengubah file
CSS saja.
4. Dapat berkolaborasi dengan JavaScript dan merupakan pasangan
setia HTML.
5. Digunakan dalam hampir semua web browser.
2.2.8 BIRT
Birt adalah sebuah aplikasi open-source yang digunakan untuk
membuat report atau laporan dari sebuah aplikasi berbasis web,
terutama yang menggunakan bahasa pemrograman Java atau Java EE.
36
BIRT memiliki dua komponen utama yaitu sebuah desainer untuk
laporan berbasis Eclipse, dan komponen runtime yang dapat
ditambahkan ke server aplikasi yang telah dibuat sebelumnya.
Dengan menggunakan BIRT, sebuah aplikasi dapat memuat
beragam jenis laporan diantaranya :
•
Daftar atau List - Merupakan daftar data yang biasa digunakan dalam
pembuatan laporan.
•
Charts - Merupakan jenis laporan yang memuat grafik, dimana data
numerik jauh lebih mudah untuk memahami ketika disajikan sebagai
grafik. BIRT menyediakan diagram lingkaran, garis &bar-chart dan
banyak lagi.
•
Crosstabs - Tabulasi Frekuensi atau yang biasa disebut dengan
tabulasi silang atau matriks. Jenis laporan ini menunjukkan data
dalam dua dimensi, yaitu penjualan per kuartal atau penemuan per
halamanweb.
2.2.9 Model View Controller (MVC)
Model View Controller atau MVC adalah sebuah pola perancangan
untuk mengembangkan aplikasi web. Menurut Sebesta (2011:460)
Arsitektur MVC adalah cara untuk menguraikan suatu aplikasi
menjadi 3 bagian: model, view dan controller. Arsitektur ini bertujuan
untuk mengurangi coupling yang mungkin terjadi pada aplikasi serta
membuat aplikasi lebih mudah untuk dikembangkan dan dipelihara.
2.2.9.1 Model
Menurut Sebesta (2011:460) Model menggambarkan suatu
data aplikasi yang memuat logika untuk mengakses dan
memanipulasi data. Setiap data yang merupakan bagian dari
aplikasi harus terletak di dalam model.
2.2.9.2 View
Menurut Sebesta (2011:460) view adalah bagian dari aplikasi
yang menyediakan dan menampilkan hasil kepada user. View
menerjemahkan isi dari model dan menentukan bagaimana
model ditampilkan kepada user.
37
2.2.9.3 Controller
Menurut Sebesta (2011:460) controller sesuai dengan
namanya berfungsi untuk mengontrol interaksi antara user dan
aplikasi.Sebagai tambahan controller juga menampilkan
berbagai komputasi yang diperlukan.
2.2.10 Oracle Database
Oracle Database adalah basis data relasional dalam suatu sistem
manajemen RDBMS (Relational Database Management System).
Sebuah RDBMS yang mengimplementasikan fitur yang berorientasi
obyek
seperti
tipe-tipe
yang
user
defined,
inheritance
dan
polymorphism disebut sebagai ORDMS (Object Oriented Database
Management System). Oracle Database telah memperluas model
relasional ke model object-relational sehingga memungkinkan untuk
penyimpanan model bisnis yang kompleks di dalam basis data
relasional.
Kelebihan database oracle:
1. Oracle lebih efisien dalam mengontrol penggunaan penyimpanan
disk.
2. Oracle mampu menangani data dalam jumlah yang besar.
3. Oracle mengolah data dalam ukuran yang besar dan mengolahnya
dengan cepat untuk mendapatkan informasi yang akurat sesuai
dengan permintaan user.
4. Oracle
memiliki
kemampuan
fleksibilitas
yang
dapat
menyesuaikan dengan berbagai kebutuhan dan kondisi tertentu
yang dapat berubah-ubah.
5. Oracle memiliki kemampuan skalabilitas yang dapat memenuhi
tuntutan akan data dan informasi yang bervolume besar dan terusmenerus bertambah besar.
2.2.11 Customer Loyalty Program
Menurut Peelen (2003:175) Customer Loyalty Program adalah
kumpulan atau gabungan dari skema skema penyimpanan yang
terhubung dengan sebuah basis data yang mengandung informasi
mengenai data, tingkah laku, serta latar belakang informasi dari
pelanggan. Kesuksesan dari program ini terletak pada penyediaan
38
suatu reward tertentu kepada pelanggan. Tujuannya adalah untuk
memberi reward kepada pelanggan yang loyal dan telah melakukan
pembelian secara berkala.
2.2.12 Model Waterfall
Menurut Pressman (2010:39) model waterfall adalah model
klasik yang sistematis dan berurutan. Tahap-tahap dalam model
waterfall meliputi:
1. Communication
Tahap ini merupakan analisis terhadap kebutuhan software dan tahap
untuk melakukan pengumpulan data baik dengan melakukan
pertemuan dengan user maupun dengan mengumpulkan data-data
tambahan.
2. Planning
Tahap ini merupakan lanjutan dari tahap communication. Tahapan ini
menghasilkan dokumen user requirement atau data yang sesuai
dengan keinginan user.
3. Modeling
Tahapan ini akan menerjemahkan syarat kebutuhan ke sebuah
perancangan sebagai perkiraan sebelum coding. Proses ini berfokus
pada struktur data, arsitektur software, tampilan interface dan detail
prosedural.
4. Construction
Tahap ini merupakan proses membuat kode. Coding merupakan
proses pengkodean sehingga menjadi bahasa yang bisa dikenali
komputer. Setelah pengkodean selesai maka akan dilakukan testing
untuk menemukan kesalahan-kesalahan terhadap sistem untuk bisa
diperbaiki.
39
5. Deployment
Tahap ini adalah tahap final dalam pembuatan sistem. Setelah
melakukan analisis, desain dan coding maka sistem sudah jadi dan
siap digunakan oleh user.
2.2.13 Delapan Aturan Emas
Menurut Shneiderman (2010:88-89) untuk merancang suatu
user interface yang baik terdapat delapan aturan emas yang dapat
digunakan. Hal yang perlu diperhatikan, yaitu:
1. Berusaha untuk konsisten.
Seluruh desain antarmuka harus konsisten mulai dari jenis tulisan,
warna tulisan, bentuk menu yang digunakan, peletakan menu
dalam aplikasi dan sebagainya. Terminologi yang ada dalam
prompt, menu dan layar bantuan harus identik.
2. Memberikan penggunaan yang universal.
Untuk
memenuhi
kebutuhan
user
yang
beragam
maka
perancangan user interface harus mempertimbangkan hal-hal
berikut yang meliputi perbedaan umur, keterbatasan fisik dan
keberagaman teknologi.
3. Memberikan umpan balik yang informatif.
Untuk setiap aksi yang dilakukan, seharusnya ada suatu sistem
yang memberikan umpan balik yang interaktif kepada user.
Tujuan dari umpan balik tersebut juga berfungsi agar user
mengetahui apakah aksi yang diberikan sudah benar dan diterima
dengan baik oleh sistem.
4. Merancang dialog untuk menghasilkan keadaan akhir.
Dalam merancang komunikasi yang baik dengan pengguna, urutan
tindakan harus diatur menjadi bagian awal, tengah dan akhir.
Feedback yang informatif dapat memberikan kepuasan kepada
user dan memberikan suatu indikasi untuk mempersiapkan aksi
selanjutnya.
40
5. Menyediakan pencegahan kesalahan.
Apabila user melakukan kesalahan, user interface harus
mendeteksi kesalahan dan memberikan instruksi yang sederhana
serta spesifik kepada user bagaimana memperbaiki kesalahan
tersebut.
6. Memungkinkan pembalikan aksi yang mudah.
Perancancangan user interface harus dapat mengembalikan aksi
yang dilakukan sebelumnya. Aksi ini dapat menghilangkan
kekhawatiran user. Contohnya user tidak sengaja melakukan aksi
yang tidak diinginkan, maka user dapat melakukan pembatalan
aksi dengan mengembalikan user interface sebelumnya. Selain itu,
aksi ini dapat mendorong user untuk melakukan aksi-aksi yang
belum pernah dijelajahi.
7. Menyediakan internal locus of control.
Pengguna mempunyai kemampuan untuk mengatur program yang
ada di dalam sistem atau user interface.
8. Mengurangi beban ingatan jangka pendek.
User interface harus dibuat sederhana karena keterbatasan
manusia untuk mengingat informasi dalam jangka pendek. User
Interface yang sederhana dapat membuat user tidak perlu banyak
mengingat dalam penggunaanya.
2.3 Hasil Penelitian atau Produk Sebelumnya
Penelitian mengenai Customer Loyalty Program telah dimuat di
beberapa jurnal lokal maupun internasional. Penelitian yang dimuat pada
jurnal dengan judul “Loyalty Programmes: Practices, Avenues and
Challenges“ yang dilakukan oleh Preeta H. Vyas & Piyush K. Sinha
(Desember 2008) menerapkan Customer Loyalty Program dalam bentuk
Loyalty Card. Menurut Preeta H. Vyas & Piyush K. Sinha, Loyalty Card
adalah cara termudah dan termurah dalam menjalankan Loyalty Program.
41
Dengan menerapkan prinsip yang sama seperti kartu debit / kredit atau kartu
spesial yang dapat dibaca scanner dalam penjualan, kartu ini merupakan alat
yang digunakan dalam mekanisme untuk mengidentifikasi dan menghargai
pelanggan yang setia. Kartu ini terdiri dari sejumlah variasi tipe seperti point
cards, coalition/multi retailer cards, co-branded cards, store cards dan
lainnya. Pengoperasian loyalty card adalah dengan memberikan poin kepada
pengeluaran pelanggan pada setiap transaksi. Hal ini akan digunakan untuk
memberikan diskon kepada pembelian saat ini atau yang akan datang untuk
melakukan transaksi, pemberian hadiah, promo untuk pelanggan yang
terdaftar dan memberikan kesempatan untuk pelanggan memenangkan lucky
draw.
Penelitian dengan topik sama pernah dibahas oleh Yulia, Shinta
Wijaya, dan Oviliani Y. Yuliana. Penelitian yang diangkat dalam jurnal
dengan judul“Aplikasi Customer Relationship Management pada H2O
Boutique” (Juni 2013) menerapkan Customer Loyalty Program dalam bentuk
sebuah sistem informasi. Sistem ini mencatat pemberian point reward kepada
pelanggan yang telah memenuhi nominal transaksi. Selain itu sistem juga
memberikan informasi mengenai promo-promo pada H2O Boutique dan
memberikan hadiah kepada pelanggan yang sedang ulang tahun.
Penelitian yang dibahas oleh Syarifuddin Baco dimuat dalam Jurnal
dengan judul “Perancangan Aplikasi CRM Pada Sunshine Cafe” (April 2013)
menerapkan Customer Loyalty Program dalam bentuk pembuatan aplikasi
web.
Kehadiran
aplikasi
tersebut
memberikan
kontribusi
dalam
meningkatkan dan mempertahankan loyalitas pelanggan. Aplikasi ini dapat
digunakan oleh pelanggan yang telah menjadi member untuk melihat produk
yang ditawarkan dan poin yang dimiliki. Dengan menggunakan aplikasi ini,
dapat dihasilkan laporan mengenai loyalitas pelanggan yang diukur dengan
poin yang dimiliki oleh member. Pemberian poin merupakan cara untuk
mempererat hubungan antara pihak restoran dengan pihak customernya.
Penelitian ini menunjukkan bahwa Customer Loyalty Program dalam bentuk
aplikasi web dapat meningkatkan pertumbuhan jangka panjang dan
profitabilitas perusahaan selain dari hasil pemasaran produk yang ditawarkan.
Perbedaan Penelitian “Analisis dan perancangan aplikasi basis data
berbasis web untuk sistem Customer Loyalty Program pada PT. XYZ melalui
42
PT. Adicipta Inovasi Teknologi” dengan tiga penelitian sebelumnya adalah
metode pemberian reward kepada pelanggan. Pada aplikasi ini, pemberian
reward ditentukan oleh pelanggan sendiri. Pelanggan yang memiliki poin
dengan jumlah yang banyak tentu dapat memilih reward yang lebih baik. Hal
ini membuat pelanggan akan termotivasi untuk meningkatkan jumlah
transaksi sehingga dapat memperoleh reward yang lebih baik.
Download