9 BAB 2 TINJAUAN PUSTAKA 2.1 Teori Umum 2.1.1 Data Menurut

advertisement
BAB 2
TINJAUAN PUSTAKA
2.1 Teori Umum
2.1.1 Data
Menurut Hoffer (2007, p6), data mengacu pada fakta mengenai
objek maupun kejadian yang dapat direkam dan disimpan ke dalam
media komputer. Sedangkan informasi didefinisikan sebagai hasil
dari data yang telah diproses untuk meningkatkan pengetahuan
pengguna yang menggunakan data tersebut. Menurut Forouzan
(2007, p4), data mengacu pada informasi yang direpresentasikan
dalam berbagai bentuk, yang disetujui baik oleh pembuat dan
pengguna data.
Jadi data adalah fakta yang mengacu pada fakta maupun objek
dengan berbagai representasi yang dapat direkam dan disimpan ke
dalam media komputer.
2.1.2 Basis data
Menurut Connolly (2010, p65), basis data adalah sebuah
kumpulan yang terdiri dari data yang terhubung secara logis dan
deskripsinya, dirancang untuk memenuhi kebutuhan informasi dari
sebuah organisasi. Menurut Whitten dan Bentley (2007, p523), basis
data adalah sekumpulan file yang saling terinterrelasi. Terinterrelasi
berarti record dalam satu file dapat berasosiasi atau terhubung
dengan record yang ada di dalam file yang lain.
Dari pernyataan, pernyataan tersebut, kita dapat menyimpulkan
definisi dari basis data adalah sebuah kumpulan data yang saling
terhubung antar file guna memnuhi kebutuhan informasi bagi
pengguna maupun organisasi.
2.1.3 Program Aplikasi Basis Data
Menurut Connolly (2010, p67), program aplikasi basis data
(database aplication program) adalah program komputer yang
berinteraksi dengan
basis
data,
dengan
cara
memunculkan
permintaan yang sesuai dengan pernyataan SQL (Structured Query
Language) pada sistem manajemen basis data.
9
10
Program aplikasi basis data ini dibuat dengan bahasa
pemrograman. Pengguna akan berinteraksi dengan program ini untuk
membuat dan memelihara basis data serta untuk menghasilkan
informasi.
2.1.4 Views
Menurut Connolly (2010, p67), Views adalah sebuah
fungsional
Database
Management
System
(DBMS)
yang
memungkinkan pengguna untuk dapat memiliki format tampilan
yang diingkan dari sebuah basis data. Beberapa keuntungan dari
views adalah :
a. Menyediakan tingkat keamanan.
b. Menyediakan mekanisme untuk pengaturan tampilan dari
basis data.
c. Menampilkan konsistensi.
2.1.5 Peran Dalam Lingkungan Basis Data
Menurut Connolly (2010, p68), terdapat 4 peran dalam
lingkungan DBMS, yaitu:
2.1.5.1 Data Administrator dan Database Administrator
Menurut Connolly (2010, p72), data administrator
adalah seseorang yang bertanggung jawab untuk pengaturan
sumber data, termasuk perencanaan, pengembanagan, dan
pemeliharaan standar, kebijakan dan prosedur serta
rancangan basis data baik secara konseptual maupun logis.
Menurut
Connolly
(2010,
p72),
database
administrator adalah seseorang yang bertanggung jawab
untuk masalah realisasi fisik dari database, meliputi
rancangan dan implementasi physical database, kontrol
keamanan dan integritas, pemeliharaan sistem operasi, dan
memastikan kepuasan performa aplikasi untuk pengguna.
2.1.5.2 Database Designer
Menurut Connolly (2010, p72), Database designer
terdapat 2 bagian, yaitu logical database designer dan
physical database designer.
11
Logical database designer adalah desainer yang lebih
fokus pada identifikasi data, hubungan antara data dengan
syarat pada data yang hendak disimpan dalam basis data.
Physical database designer adalah desainer yang harus
memahami secara menyeluruh mengenai data organisasi
dan semua syarat pada data ini (aturan bisnis).
2.1.5.3 Application Developer
Menurut Connolly (2010, p73), application developer
adalah orang yang bertanggung jawab untuk menyediakan
fungsional
yang
dibutuhkan
pengguna
untuk
diimplementasikan pada program aplikasi.
2.1.5.4 End-User
Menurut Connolly (2010, p73), end-user adalah klien
dari basis data. yang telah didesain dan diimplementasi serta
dipelihara untuk mempertahankan kebutuhan informasi.
Terdapat 2 macam end-user yaitu naive user dan
sophosticated user. Naive user merupakan pengguna yang
menggunakan program aplikasi untuk melakukan operasi
sesederhana mungkin. Sophisticated user adalah pengguna
yang familiar dengan struktur basis data dan fasilitas yang
ada di dalamnya.
2.1.6 Keuntungan Menggunakan Basis Data
Menurut Connolly (2010, p77), keuntungan menggunakan
basis data adalah:
a. Control of redudancy data
b. Data consistency
c. More information from the same amount of data
d. Sharing of data
e. Improved data integrity
f. Improved security
g. Enforcements of standards
h. Economy of scale
12
i. Balance of conflicting requirements
j. Improved data accessibility and responsiveness
k. Increased productivity
l. Improved maintenance through data independence
m. Improved concurrency
n. Improved backup and recovery services
2.1.7 Kerugian Menggunakan Basis Data
Menurut Connolly (2010, p80), penggunaan basis data juga
memiliki beberapa kerugian, yaitu:
a. Complexity
b. Size
c. Cost of DBMS
d. Additional hardware costs
e. Cost of convertion
f. Performance
g. Greater impact of a failure
2.1.8 Bahasa Basis Data
Menurut Connolly (2010, p91), data sublanguage terdiri dari 2
bagian, Data Definition Language (DDL) dan Data Manipulation
Language (DML). DDL adalah sebuah bahasa yang memungkinkan
DBA atau penggunna untuk mendeskripsikan dan memberi nama
entitas, atribut, dan hubungan yang dibutuhkan untuk aplikasi,
bersama dengan integritas dan syarat-syarat keamanan yang saling
terhubung. DML adalah sebuah bahasa yang menyediakan
sekumpulan operasi untuk mendukung operasi dasar untuk
memanipulasi data yang ada di dalam basis data.
2.1.9 Data Model
Menurut Connolly (2010, p95), data model adalah sebuah
koleksi terintegrasi dari beberapa konsep untuk mendeskripsikan dan
memanipulasi data, hubungan antar data, dan syarat-syarat pada data
di
dalam
organisasi.
Tujuan
data
model
adalah
untuk
merepresentasikan data dan untuk membuat data dapat dimengerti.
13
2.1.10 Database Management System (DBMS)
Menurut Whitten dan Bentley
(2007,
p524),
DBMS
merupakan perangkat lunak komputer yang digunakan untuk
membuat, mengakses, mengontrol, dan mengatur basis data..
Menurut Connolly (2010, p66), Database Management System
(DBMS) adalah sebuah sistem perangkat lunak yang memungkinkan
pengguna untuk mendefinisikan, membuat, memelihara, dan
mengontrol akses ke dalam basis data.
2.1.10.1 Komponen dari Lingkungan DBMS
Connolly (2010, p68) mengidentifikasi
bahwa
komponen yang ada di dalam lingkungan DBMS dibagi
menjadi 5, yaitu:
a. Hardware
Sebuah
DBMS
membutuhkan
sejumlah
minimum memori utama dan ruang penyimpanan
untuk berjalan. Namun, konfigurasi minimum ini
mungkin tidak memberikan performa yang dapat
diterima sesuai kebutuhan.
b. Software
Perangkat lunak ini meliputi perangkat lunak
DBMS itu sendiri dan program aplikasi serta
sistem operasi, termasuk juga pernagkat lunak
jaringan DBMS yang diterapkan pada jaringan.
c. Data
Merupakan
komponen
terpenting
dalam
sebuah DBMS, menjembatani antara kompnen
mesin (pernagkat keras dan perangkat lunak) dan
komponen manusia (prosedur dan orang).
d. Procedures
Mengacu kepada instruksi dan aturan yang
mempengaruhi desain dan kegunaan dari basis
14
data. Misalnya pengguna sistem dan staf yang
mengatur
basis
dokumentasi
data
untuk
mebutuhkan
prosedur
menjalankan
atau
menggunakan sistem.
e. People
Merupakan orang-orang yang terlibat dengan
sistem, yaitu database administrator, database
designer, application developer, dan end-user.
2.1.10.2 Komponenen Database Management System (DBMS)
Menurut Connolly (2010, p127), komponenkomponen yang ada di dalam DBMS adalah sebagai
berikut:
a. Query processor
Merupakan komponen DBMS yang bersifat
mayor, berfungsi untuk mengubah banyak query
menjadi serangkaian instruksi tingkat rendah terarah
ke basis data.
b. Database manager (DM)
Menjembatani antara program aplikasi usersubmitted dengan banyak query. DM menerima
query
dan
memeriksa
faktor
eksternal
dan
conceptual schema untuk menentukan apakah
conceptual record dibutuhkan untuk memenuhi
request. Lalu DM akan menempatkan call kepada
file manager untuk mengerjakan request.
c. File manager
Berfungsi memanipulasi underlying storage
file dan mengatur alokasi ruang penyimpanan
pada disk.
d. DML processor
15
Modul ini mengubah pernyataan DML untuk
ditanamkan dalam program aplikasi menjadi fungsi
standar dalam bahasa pemrograman yang dipakai.
e. DDL compiler
Berfungsi
mengubah
pernyataan
DDL
menjadi serangkaian tabel yang berisi metadata.
f. Catalog manager
Mengatur akses dan memelihara sistem
katalog.
2.1.10.3 Fungsi Database Management System (DBMS)
Connolly (2010, p100) menambahkan 2 layanan yang
seharusnya disediakan oleh DBMS dari 8 layanan menurut
Codd. 10 layanan yang menjadi fungsi dari DBMS adalah
sebagai berikut :
a. Data Storage, retrieval, and update
b. A user accessible catalog
c. Transaction support
d. Concurrency control services
e. Recovery services
f. Authorization services
g. Support for data communication
h. Integrity services
i. Services to promote data independence
j. Utility services
2.1.11Database System Development Lifecycle
Menurut Thomas Connolly dan Carolyn Begg (2010, p313),
waktu basis data dianalisis dan dirancang berdasarkan siklus hidup
seperti pada gambar dibawah ini.
16
Gambar 2.1 The Stages of the database system developments lifecycle
17
2.1.11.1 Database Planning
Database planning adalah aktivitas manajemen yang
memungkinkan tahapan dari database system development
lifecycle untuk direalisasikan secara efektif dan efisien.
Database planning harus terintegrasi dengan keseluruhan
strategi sistem informasi pada sebuah organisasi.
Langkah awal yang penting dalam database
planning
adalah secara jelas mendefinisikan mission
statement untuk sistem basis data.
Mission statement ini menjelaskan tujuan utama dari
sistem basis data dan membantu untuk menjelaskan tujuan
dari sistem basis data dan menyediakan alur yang lebih
jelas secara efektif dan efisien yang dibutuhkan oleh
sistem basis data.
Langkah
selanjutnya
mission objective.
adalah
mengidentifikasi
Setiap mission objective harus
mengidentifikasi beberapa tugas yang mendukung sistem
basis data.
2.1.11.2 System Definition
System definition mendeskripsikan ruang lingkup
dan batasan dari aplikasi basis data dan user view yang
utama. User view mendefinisikan apa yang dibutuhkan
dari sistem basis data melalui sudut pandang dari berbagai
peranan pekerjaan.
2.1.11.3 Requirements Collection and Analysis
Requirements collection and analysis merupakan
proses pengumpulan dan analisis informasi tentang bagian
dari suatu perusahaan yang perlu didukung oleh sistem
basis data dan menggunakan informasi ini untuk
mengidentifikasi kebutuhan-kebutuhan untuk sistem yang
baru.
2.1.11.4 Database Design
18
Database design adalah proses pembuatan desain
yang akan membantu tujuan dari perusahaan dan tujuan
objektif untuk kebutuhan sistem basis data. Ada dua
pendekatan yang digunakan dalam merancang desain basis
data yaitu :
a. Bottom up approach
Pendekatan bottom up dimulai
tahapan
fundamental
atribut
pada
(entities
dan
relationships) yang dianalisa antara atributatribut,
kemudian
menjadi
merepresentasikan
tipe
relations
dari
yang
entities
dan
relationships antar entities.
b. Top-down approach
Pendeketan
pengembangan
top-down
data
model
dimulai
yang
dengan
berisikan
beberapa high-level entities dan relasi yang
kemudian menerapkan perbaikan top-down untuk
mengidentifikasikan
lower-level
entities,
relationships, dan atribut-atribut yang berasosiasi.
Terdapat tiga fase dalam merancang sebuah
desain basis data yaitu :
1. Conceptual database design
Merupakan suatu proses pembentukkan
model dari suatu data yang digunakan dalam
perusahaan yang independen dari semua
physical considerations.
2. Logical database design
Merupakan suatu proses pembentukkan
model dari suatu data yang digunakan pada
perusahaan berdasarkan data model yang
spesifik, tetapi bersifat independen terhadap
19
DBMS tertentu dan physical considerations
lainnya.
3. Physical database design
Merupakan
suatu
proses
yang
menghasilkan deskripsi sebuah implementasi
dari sebuah basis data pada penyimpanan
sekunder, yang menjelaskan base relations,
file organizations, dan indexes yang digunakan
untuk mencapai akses kepada data yang efisien
dan associated integrity constraints, dan
mengukur keamanan.
2.1.11.5 DBMS Selection
DBMS selection merupakan kegiatan pemilihan
DBMS yang akan digunakan untuk mendukung sistem
basis data.
Langkah – langkah dalam pemilihan DBMS adalah :
a. Define terms of reference of study
b. Shortlist two or three products
c. Evaluate products
d. Recommend selection and produce report
2.1.11.6 Application Design
Application design merupakan perancangan user
interface dan program aplikasi yang menggunakan dan
memproses basis data. Terdapat dua aspek dalam
mendesain aplikasi yaitu :
1. Transaction design
Merupakan
suatu
tindakan,
atau
beberapa
tindakan, yang dilakukan oleh pengguna atau program
aplikasi yang akan mengakses atau mengganti konten
dari suatu basis data.
Ada 3 tipe utama dalam transaction yaitu:
1. Retrieval transactions
20
Digunakan untuk mengambil data untuk
ditampilkan pada layar atau di dalam sebuah
laporan.
2. Update transactions
Digunakan untuk memasukan data-data
baru, menghapus data-data
lama, atau
memodifikasi data yang telah ada di dalam
basis data.
3. Mixed transactions
Merupakan kombinasi dari retrieval dan
update transactions.
2. User interface design
Berikut pedoman – pedoman untuk merancang
tampilan formulir/laporan:
a. Meaningful title
b. Comprehensible instructions
c. Logical grouping and sequencing of fields
d. Visuallyappealing layout of the form/report
e. Familiar filed labels
f. Consistent terminology and abbreviations
g. Consistent use of color
h. Visible space and boundaries for data entry
fields
i. Convenient cursor movement
j. Error correction for individual characters and
entire fields
k. Error messages for unacceptable values
l. Optional field marked clearly
m. Explanatory messages for fields
n. Completion signal
2.1.11.7
Prototyping
21
Membangun suatu model kerja dari sebuah sistem
basis data. Prototype adalah sebuah model kerja yang
secara normal tidak mempunyai semua fitur kebutuhan
atau menyediakan semua fungsionalitas dari sistem akhir.
2.1.11.8
Implementation
Merupakan realisasi fisik dari basis data dan
perancangan
aplikasi.
Implementasi
basis
data
menggunakan Data Definition Language (DDL) dari
pemilihan DBMS atau Graphical User Interface (GUI).
2.1.11.9 Data Conversion and Loading
Suatu proses mentransfer data apa saja yang ada ke
dalam sebuah basis data baru dan mengkonversi aplikasi
apa saja yang ada untuk dijalankan pada basis data yang
baru.
2.1.11.10 Testing
Testing merupakan proses menjalan sistem basis
data
dengan
tujuan
untuk
menemukan
kesalahan-
kesalahan. Sebelum digunakan sepenuhnya, sistem basis
data baru yang sedang dikembangkan harus diuji terlebih
dahulu
2.1.11.11 Operational Maintance
Merupakan proses pengawasan dan pemeliharaan
sistem basis data berdasarkan instalasi. Setelah Sistem
basis data yang sepenuhnya diimplementasi dan diuji,
sistem basis data akan masuk ke tahapan pemeliharaan.
2.1.12 Design Methodology
Menurut Connolly (2010, p466), Design methodology adalah
pendekatan terstruktur yang menggunakan prosedur, teknik-teknik,
peralatan,
dan
fitur
dokumentasi
untuk
mendukung
dan
memfasilitasi proses desain. Terdiri dari beberapa fase yang masingmasing fase memiliki sejumlah langkah-langkah, yang memberi
arahan bagi desainer dalam penggunaan teknik yang tepat pada
masing-masing tahapan projek.
22
Menurut Connolly (2010, p467), desain dari sebuah basis data
terdapat 3 tahapan:
a. Conceptual database design
Conceptual
database
design
adalah
proses
pembuatan model data yang digunakan di dalam sebuah
perusahaan, terbebas dari segala pertimbangan fisikal.
Tujuan dari conceptual database design adalah untuk
membangun model data konseptual dari permintaan data
sebuah perusahaan.
Berikut ini adalah langkah-langkah untuk membuat
conceptual database design:
1. Identify entity types
Langkah
mengidentifikasi
ini
bertujuan
tipe-tipe
entitas
untuk
yang
dibutuhkan. Untuk mengidentifikasi entitas, hal
yang dapat dilakukan adalah dengan memeriksa
spesifikasi kebutuhan pengguna. Dari spesifikasi
ini, didapatkan beberapa kata atau frasa benda.
Dari kata atau frasa ini dapat dibentuk objek
mayoritas tanpa kata-kata benda yang masuk ke
dalam objek lain. Setelah entitas teridentifikasi,
berikan nama secara jelas dan mudah dipahami
pengguna. Simpan nama dan deskripsi pada
kamus data.
2. Identify relationship types.
Langkah
ini
bertujuan
untuk
mengidentifikasi hubungan penting yang ada
antar tipe-tipe entitas. Untuk memudahkan dalam
mengidentifikasi
tipe-tipe
hubungan
dapat
digunakan Entity-Relationship diagram. Setelah
itu, perlu untuk mengetahui multiplicity dari
23
masing-masing hubungan. Batasan multiplicity
digunakan untuk memastikan dan memelihara
kualitas data. Hal tersebut akan membuat model
data
merepresentasikan
semantik
hubungan
secara eksplisit dari kebutuhan data sebuah
perusahaan.
3. Identify and associate attributes with entity or
relationship types
Langkah
ini
bertujuan
untuk
menghubungkan atribut-atribut dengan entitas
atau tipe keterkaitan yang sesuai. Cara yang perlu
dilakukan adalah dengan bertanya pada pengguna
mengenai informasi hubungan tersebut.
4. Determine attribute domains
Langkah ini menentukan domain untuk
atribut-atribut di dalam model data konseptual.
Domain adalah kumpulan semua nilai dari satu
atau lebih atribut untuk mengambil nilai-nilai
mereka.
5. Determine candidate, primary, and alternate key
Langkah
ini
bertujuan
untuk
mengidentifikasi kunci kandidat untuk tiap tipe
entitas, dan jika terdapat lebih dari satu kunci
kandidat, maka akan dipilih satu kunci primer dan
yang lain akan dijadikan sebagai kunci alternatif.
Kunci
kandidat
adalah
sekumpulan
atribut
minimal dari sebuah entitas yang unik. Dari kunci
kandidat akan dipilih satu kunci primer dan yang
lainnya menjadi kunci alternatif.
Panduan dalam memilih kunci primer dari
beberapa kunci kandidat:
24
a. The candidate key with the minimal
set of attributes.
b. The candidate key that is least likely
to have values changed.
c. The
candidate
key
with
fewest
characters (for those with textual
attribut(s)).
d. The candidate key with smallest
maximum value (for
those with
numerical attributes(s)).
e. The candidate key that is easiest to
use from the users’ point of view.
6. Consider use of enhanced modeling concept
(optional
step,
such
as
specialization/generalitation, aggragation, and
composition)
Langkah
penggunaan
ini
konsep
mempertimbangkan
permodelan
bertingkat,
seperti spesialisasi, generalisasi, agregasi, dan
komposisi. Jika memilih pendekatan spesialisasi,
maka kita akan menandai perbedaan antar entitas
dengan mendefinisikan satu atau lebih sub kelas
dari entitas super kelas. Jika memilih pendekatan
generalisasi, maka kita akan mengidentifikasi
fitur-fitur
umum
antar
entitas
untuk
mendefinisikan entitas super kelas.
Pendekatan
merepresentasikan
agregasi
sebuah
hubungan
untuk
adalah
bagian dari antar entitas. Pendekatan komposisi
untuk merepresentasikan sebuah asosiasi antar
tipe entitas yang memiliki kepemilikan yang kuat.
25
7. Check model for redudancy
Langkah ini bertujuan untuk mengecek
ada atau tidaknya redudansi di dalam model.
Dalam identifikasi dari entitas-entitas, mungkin
terdapat dua entitas yang merepresentasikan
objek yang sama. gabungkan kedua entitas itu
dan jika kunci primernya berbeda, pilih salah
satu. Sebuah hubungan dikatakan redundan jika
informasi yang sama diperoleh melalui hubungan
yang lain. Model data yang diperlukan adalah
yang minimal.
8. Validate our conceptual data model againts user
transaction
Langkah ini dilakukan untuk memastikas
model konseptual mendukung transaksi yang
dibutuhkan,
yaitu
dengan
mencoba
untuk
menunjukkan operasi secara manual. Jika semua
transaksi dapat diselesaikan secara manual,
berarti model data konseptual telah mendukung
transaksi yang dibutuhkan. Jika tidak, berarti ada
yang salah dengan model data yang harus
diperbaiki.
9. Review conceptual data model with user
Langkah ini dilakukan untuk meninjau
kembali model data konseptual dengan para
pengguna
untuk
memastikan
bahwa
para
pengguna telah mempertimbangkan model yang
telah dibuat sebagai representasi yang benar dari
kebutuhan
data
perusahaan.
Model
data
konseptual memuat diagram hubungan entitas
dan dokumentasi yang mendukungnya. Jika
26
terdapat penyimpangan, maka harus dilakukan
perbaikan yang sesuai.
b. Logical database design
Tujuan dari logical database design adalah untuk
menerjemahkan model data konseptual menjadi model data
logis, lalu melakukan validasi untuk mengecek apakah
model ini sudah benar dan dapat mendukung transaksi yang
dibutuhkan atau tidak.
Berikut ini adalah langkah-langkah untuk membuat
logical database design:
1. Derive relations for logical data model
Langkah ini bertujuan untuk membuat
relations pada logical data model sebagai
representasi entitas, keterkaitan, dan atribut yang
telah diidentifikasi.
Deskripsi bagaimana relation diturunkan
terhadap struktur berikut yang mungkin tejadi
dalam sebuah model data konseptual:
a. Strong entity types
Untuk setiap entitas yang kuat
dalam sebuah model data, buat sebuah
relasi yang termasuk semua atribut
sederhana dari entitas tersebut.
Untuk atribut yang komposit,
masukkan hanya attribut pembentuk
yang sederhana dalam relasi tersebut.
Misalkan atribut nama yang dibuat
menjadi dua nama depan dana nama
belakang dalam sebuah relasi.
b. Weak entity types
27
Untuk setiap entitas yang lemah
(jumlah
model
atributnya
data,
termasuk
buat
sedikit),
dalam
sebuah
relasi
atribut-atribut
sederhana
dalam entitas tersebut. Kunci primer
dari
entitas
yang
lemah
tersebut
sebagian atau sepenuhnya diturunkan
dari
setiap
pemilik
entitas.
Jadi,
idemtifikasi dari entitas yang lemah
tidak dapat dibuat sampai seluruh
hubungan
dari
tiap
entitas
telah
dipetakan.
c. One-to-many (1:*) binary relationship
types
Untuk setiap hubungan 1:*,
entitas 1 adalah parent entity pada
entitas *. Untuk itu diperlukan salinan
kunci primer dari parent entity untuk
disalin menjadi kunci referensi pada
child entity.
d. One-to-one binary relationship types
Pilihan hubungan dengan tipe
1:1 adalah sebagai berikut:
i. Mandatory participation on
both
sides
of
1:1
relationship.
ii. Mandatory participation on
one side of 1:1 relationship
iii. Optional
participation
on
both sides of 1:1 relationship
e. One-to-one recursive relationship types
28
Jika
kedua
etitas
memiliki
partisipasi mandatori 1:1 yang sama
bobotnya, maka masing-masing kunci
primer akan disalin untuk dijadikan
kunci referensi pada entitas yang lain.
f. Superclass/subclass relationship types
Terdapat empat macam relasi
yang dapat dibentuk melalui syarat
partisipasi dan penguraian, yaitu:
i. Mandatory participation nondisjoint
(And)
Relasi
terdapat
tunggal
satu
(di
mana
atau
lebih
discriminators untuk membedakan
tipe setiap tuple).
ii. Optional participation nondisjoint
(And)
Dua relasi, satu relasi untuk
superclass dan satu relasi untuk
seluruh subclass (terdapat satu atau
lebih
discrimnators
untuk
membedakan tipe setiap tuple).
iii. Mandatory
participation
disjoint
(Or)
Banyak relasi, satu relasi yang
ditujukan untuk kombinasi yang
terdapat dari superclass/subclass.
iv. Optional participation disjoint (Or)
Banyak
relasi,
satu
relasi
ditujukan pada superclass dan satu
untuk masing-masing subclass.
29
g. Many-to-many binary relationship types
Buat salinan kunci primer dari
masing-masing
entitas
untuk
dimasukkan ke dalam relasi baru
sebagai
kunci
referensi
yang
menghubungkan kedua entitas tersebut
terhadapt relasi yang baru.
h. Complex relationship types
Untuk
hubungan
yang
kompleks, buatlah sebuah relasi dan
masukkan semua atribut yang menjadi
bagian dari hubungan tersebut. Salin
kunci
primer
dari
masing-masing
entitas untuk kemudian menjadi kunci
referensi.
i. Multi-valued attributes
Jika sebuah atribut dari suatu
entitas memiliki banyak nilai untuk
satu kunci primer maka diperlukan
sebuah relasi baru yan memuat atribut
tersebut dengan kunci referensi dari
kunci primer entitas tersebut.
2. Validate relations using normalization
Langkah ini bertujuan untuk melakukan
validasi dalam logical data model menggunakan
normalisasi.
3. Validate relations againsts user transaction
Langkah ini bertujuan untuk memastikan
relations
dalam
model
data
logis
mendukung transaksi yang dibutuhkan.
4. Check integrity constraints
dapat
30
Langkah ini bertujuan untuk mengecek
batasan integritas yang diwakilkan dalam logical
data model.
Sebuah
logical
data
model
yang
mencakup semua syarat integritas penting adalah
representasi dari kebutuhan data perusahaan. Ada
beberapa jenis syarat-syarat integritas:
a. Required data
Adanya beberapa atribut yang
harus memiliki nilai untuk setiap kunci
primer.
b. Attribute domain constraints
Setiap atribut pasti memiliki
domain, yaitu sekumpulan nilai-nilai
yang legal.
c. Multiplicity
Merupakan representasi syaratsyarat
yang
ditempatkan
pada
hubungan antar data di dalam basis
data.
d. Entity integrity
Kunci primer dalam sebuah
entitas tidak boleh bernilai null (tidak
memiliki nilai).
e. Referential integrity
Kunci
referensial
menghubungkan setiap tuple dalam
child relation pada tuple dalam parent
relation.
f. General constraints
31
Perubahan
entitas
dapat
disebabkan oleh syarat0syarat yang
mengatur transaksi yang sebenarnya
yang
direpresentasikan
dengan
perubahan.
5. Review logical data model with user
Langkah ini bertujuan untuk meninjau
logical data model dengan para pengguna untuk
memastikas
bahwa
mempertimbangkan
para
model
pengguna
apakah
sudah
merepresentasikan dengan benar dari kebutuhan
data perusahaan.
Adapun hubungan antar logical data
model dan data flow diagram adalah sebagai
berikut:
a. Logical
data
struktur
model
data
merefleksikan
tersimpan
dalam
perusahaan.
b. Data
flow
diagram
menunjukkan
pergerakan data suatu perushaaan yang
tersimpan dalam penyimpanan data.
c. Semua atribut seharusnya terlihat dalam
sebuah
entitas
yang
dimiliki
perusahaan dan akan dilihat alurnya
sebagai data flow.
6. Merge logical data model into global model
(optional step)
Langkah
ini
bertujuan
untuk
menggabungkan model-model data logis menjadi
satuan
model
data
logis
global
yang
32
merepresentasikan tampilan semua pengguna di
dalam basis data.
Local
logical
data
models
merepresentasikan satu atau lebih tetapi tidak
semua tampilan pengguna dari sebuah basis data.
Global
logical
data
model
merepresentasikan semua tampilan pengguna
dalam basis data.
Hasil dari global logical data model
dikenakan pada beberapa validasi yang sama
untuk ditunjukkan pada local data models.
Validasi-validasi tersbut diperlukan dan harus
berfokus pada area model yang dikenakan pada
hampir
seluruh
perubahan
selama
proses
penggabungan.
Langkah-langkahnya
adalah
sebagai
berikut:
a. Merge local logical data models into
global logical data model
b. Validate global logical data model
c. Review global logical data model with
users
7. Merge local logical data models into global
logical data model
Langkah
ini
bertujuan
untuk
menetukan apakah terdapat perubahan
yang signifikan pada waktu mendatang
dan untuk menilai apakah model data
logis
dapat
menerapkan
tersebut atau tidak.
c. Physical database design
perubahan
33
Physical database design adalah proses memproduksi
deskripsi implementasi basis data pada penyimpanan
sekunder.
Langkah-langkah
metodologi
physical
database
design adalah
1. Conceptual database design methodology
2. Logical database design methodology
3. Translate logical data models for target DBMS
Langkah ini bertujuan untuk menghasilkan
skema
basis
data
relasional
yang
dapat
diimplementasikan ke dalam sasaran DBMS.
Langkah ini terbagi menjadi 3 bagian,
yaitu:
i. Design base relations
Langkah ini bertujuan untuk
memutuskan cara merepresentasikan
base relations yang telah diidentifikasi
pada logical data model dalam sasaran
DBMS.
Kumpulkan
dan
uraikan
informasi mengenai relations yang
dihasilkan selama mendesain logical
database.
Informasi penting
dapat
diperoleh dari kamus data dan definisi
dari relations didefinisikan dengan
menggunakan
Database
Design
Language (DBDL). Desain dari base
relations
seharusnya
didokumentasi
secara penuh untuk kepentingan seleksi
desain yang diusulkan.
ii. Design representation of derived data
34
Langkah ini bertujuan untuk
memutuskan cara merepresentasikan
data awal sekarang pada logical data
model dalam sasaran DBMS. Atributatribut dengan nilai yang ditemukan
dengan pemeriksaan nilai-nilai atribut
yang lain
disebut
sebagai
atribut
turunan atau atribut terkalkulasi.
iii. Design general constraint
Langkah ini bertujuan untuk
mendesain batasan-batasan umum pada
sasaran DBMS.
4. Desing file organization and indexes
Langkah
ini
bertujuan
untuk
mendeterminasi file organization yang optimal
untuk menyimpan base relations dan indexes yang
dibutuhkan untuk mencapai performa yang dapat
diterima yang merupakan cara relations dan tuples
disimpan dalam penyimpanan sekunder.
Langkah ini terbagi menjad 4 bagian, yaitu:
i. Analyze transactions
Langkah ini bertujuan untuk
memahami fungsionalitas dari transaksi
yang akan berjalan pada basis data dan
untuk menganalisa transaksi penting.
Untuk menghasilkan physical database
secara efektif, diperlukan pengetahuan
transaksi atau queries yang akan
berjalan pada basis data. Hal itu
mencakup informasi kualitatif dan
kuantitatif.
35
Dalam menganalisis transaksi,
perlu
adanya
identifikasi
untuk
beberapa kriteria performa, seperti:
1. Transaksi
yang
berjalan
secara
teratur dan akan memiliki dampak
yang besar pada performa.
2. Transaksi yang bersifat kritis pada
operasi bisnis.
3. Waktu untuk sekian hari atau sekian
minggu ketika akan ada permintaan
yang banyak pada basis data.
ii. Choose file organizations
Langkah ini bertujuan untuk
menentukan file organization yang
efisien untuk setiap base relation.
Dalam
beberapa
kasus,
sebuah
relational database dapat memberikan
sedikit atau tidak sama sekali pilihan
untuk
memilih
meksipun
file
beberapa
organization,
telah
dibuat
menjadi indeks yang terspesifikasi. Jika
sasaran DBMS tidak membolehkan
pilihan dari file organization, langkah
ini dapat dihilangkan.
iii. Choose indexes
Langkah ini bertujuan untuk
menentukan
apakah
index
akan
meningkatkan performa sistem atau
tidak. Jika atribut terurut terpilih adalah
sebuah kunci dari suatu relasi, maka
indeks akan menjadi indeks primer.
36
Jika
tidak,
maka
akan
menjadi
clustering index.
iv. Estimate disk space requirements
Langkah ini bertujuan untuk
memperkirakan jumlah ruang disk
yang dibutuhkan oleh basis data.
5. Design user views
Langkah ini bertujuan untuk mendesain
tampilan pengguna yang diidentifikasi selama
pengumpulan kebutuhan dan analisis tahapan
siklus pengembangan sistem basis data. Dalam
DBMS yang mandiri pada sebuah PC, tampilan
pengguna merupakan sebuah kenyamanan yang
didefinisikan untuk menyederhanakan permintaan
basis data. Meskipun demikian, dalam sebuah
DBMS
dengan
pengguna
banyak
memiliki
pengguna,
peranan
tampilan
penting
dalam
mendefinisikan struktur basis data dan menjaga
keamanan. Keuntungan dari tampilan pengguna
adalah
untuk
menjaga
independensi
data,
mengurangi kompleksitas, dan mempermudah
kostumisasi.
6. Design security mechanisms
Langkah ini bertujuan untuk mendesain
mekanisme sekuritas untuk basis data yang telah
dispesifikasi oleh para penggguna selama the
requirements and collection stage dari siklus
pengembangan istem basis data.
Sistem sekuritas mencakup akses dan
penggunaan basis data pada tingkat sistem.
Sekuritas data mencakup akses dan penggunaan
37
objek basis data dan aksi-aksi yang dimiliki
pengguna pada beberapa objek.
7. Consider the introduction of controlled redudancy
Langkah ini bertujuan untuk menetukan
apakah pengenalan redudansi dalam cara terkontrol
dengan
merelaksasi
normalisasi
dapat
meningkatkan kinerja sistem atau tidak.
8. Monitor and tune the operational system
Langkah ini bertujuan untuk memonitor
sistem operasional dan meningkatkan kinerja
sistem untuk mengkoreksi keputusan rancangan
yang tidak sesuai atau mencerminkan perubahan
kebutuhan.
2.1.13 Normalisasi
Menurut Conolly dan Begg (2010, p416), sebuah teknik yang
dapat kita gunakan untuk mengidentifikasi hubungan antar data
disebut dengan normalisasi. Normalisasi adalah sebuah pendekatan
bottom-up terhadap perancangan basis data dengan memulai
memeriksa relasi dan atribut.
Karakteristik dari sekumpulan hubungan yang sesuai termasuk
sebagai berikut :
a. Jumlah minimal dan atribut – atribut yang dibutuhkan untuk
mendukung data yang dibutuhkan oleh perusahaan.
b. Atribut – atribut dengan hubungan logikal yang dekat
ditemukan dalam hubungan yang sama.
c. Redudansi minimal dengan setiap atribut yang digambarkan
hanya sekali dengan pengecualian yang sangat penting dari
setiap atribut yang membentuk keseluruhan atau sebagian
dari foreign key, dimana dibutuhkan untuk penggabungan
hubungan yang saling terkait.
2.1.13.1 Proses Normalisasi
38
Menurut Conolly dan Begg (2010, p428), proses
normalisasi terdiri dari :
a. Unnormalized Form (UNF)
UNF adalah tabel yang memiliki satu atau lebih
kelompok perulangan.
b. First Normal Form (1NF)
1NF merupakan bentuk normalisasi di mana data
yang dikumpulkan menjadi satu field yang sifatnya
tidak akan berulang dan tiap field mempunyai satu nilai.
c. Second Normal Form (2NF)
2NF merupakan bentuk normalisasi di mana field
yang bukan kunci tergantung secara fungsi pada suatu
primary key.
d. Third Normal Form (3NF)
3NF merupakan bentuk normalisasi di mana tidak
ada field yang bukan primary key tergantung transitive
kepada primary key.
2.1.14 Model SDLC (System Development Life Cycle)
Menurut Schwalbe (2010, p60), SDLC (System Development
Life Cycle) merupakan suatu kerangka kerja untuk mendeskripsikan
fase-fase yang terlibat dalam pengembangan sistem informasi.
SDLC (System Development Life Cycle) terdiri atas 5 tahap
utama, yaitu:
1.
Planning,
merupakan
langkah
pertama
dalam
proses
pengembangan sistem, yang terdiri dari identifikasi, seleksi
dan perencanaan sistem.
2.
Analysis, merupakan seluruh analisa kebutuhan sistem untuk
usulan sistem informasi. Untuk proyek perkembangan yang
besar, produk ini mengambil bentuk dari laporan kebutuhan
sistem, dengan menetapkan kemampuan yang diperlukan
untuk kebutuhan informasi pengguna akhir.
39
3.
Design, menjelaskan sistem apa yang harus memenuhi
informasi yang dibutuhkan oleh para pengguna, rancangan ini
terdiri
dari
rancangan
logika
dan
fisik
yang
dapat
menghasilkan spesifik sistem yang memenuhi persyaratan
sistem yang dikembangkan pada tahap analisa.
4.
Implementation, merupakan tahapan yang harus dilakukan
sebelum sistem benar-benar dapat diterapkan dengan melalui
testing atau uji kehandalan dari sistem.
5.
Maintenance
and
Support,
merupakan
tahapan
untuk
memperbaiki error pada sistem, memodifikasi sistem untuk
beradaptasi terhadap lingkungan, dan menjaga sistem dari
kemungkinan masalah di masa yang akan datang.
2.1.15 Model Waterfall
Metode rekayasa peranti lunak yang digunakan adalah Metode
waterfall. Menurut Pressman (2010, p39) waterfall adalah model
klasik yang bersifat sistematis, berurutan dalam membangun
software. Berikut ini adalah gambaran dari waterfall model.
Fase-fase dalam model waterfall menurut referensi Pressman:
Gambar 2.2 Tahapan Waterfall
1. Communication
Langkah ini merupakan analisis terhadap kebutuhan
software, dan tahap untuk mengadakan pengumpulan data
dengan melakukan pertemuan dengan customer, maupun
40
mengumpulkan data-data tambahan baik yang ada di
jurnal, artikel, maupun dari internet.
2. Planning
Proses planning merupakan lanjutan dari proses
communication (analysis requirement). Tahapan ini akan
menghasilkan dokumen user requirement atau bisa
dikatakan
sebagai
data
yang
berhubungan
dengan
keinginan user dalam pembuatan software, termasuk
rencana yang akan dilakukan.
3.
Modeling
Proses modeling ini akan menerjemahkan syarat
kebutuhan ke sebuah perancangan software yang dapat
diperkirakan sebelum dibuat coding. Proses ini berfokus
pada
rancangan
struktur
data,
arsitektur
software,
representasi interface, dan detail (algoritma) prosedural.
Tahapan ini akan menghasilkan dokumen yang disebut
software requirement.
4.
Construction
Construction merupakan proses membuat kode.
Coding merupakan penerjemahan desain dalam bahasa
yang bisa dikenali oleh komputer. Programmer akan
menerjemahkan transaksi yang diminta oleh user. Tahapan
inilah yang merupakan tahapan secara nyata dalam
mengerjakan suatu software, artinya penggunaan komputer
akan dimaksimalkan dalam tahapan ini. Setelah coding
selesai maka akan dilakukan testing terhadap sistem yang
telah dibuat tadi. Tujuan testing adalah menemukan
kesalahan-kesalahan
terhadap
kemudian bisa diperbaiki.
sistem
tersebut
untuk
41
5.
Deployment
Tahapan ini bisa dikatakan final dalam pembuatan
sebuah software atau sistem. Setelah melakukan analisis,
desain dan coding maka sistem yang sudah jadi akan
digunakan oleh user. Kemudian software yang telah dibuat
harus dilakukan pemeliharaan secara berkala.
Kelebihan dari model ini adalah selain karena pengaplikasian
menggunakan model ini mudah, kelebihan dari model ini adalah
ketika semua kebutuhan sistem dapat didefinisikan secara utuh,
eksplisit, dan benar di awal proyek, maka Software Engineering
(SE) dapat berjalan dengan baik dan tanpa masalah. Meskipun
seringkali kebutuhan sistem tidak dapat didefinisikan se-eksplisit
yang diinginkan, tetapi paling tidak, problem pada kebutuhan sistem
di awal proyek lebih ekonomis dalam hal uang (lebih murah), usaha,
dan waktu yang terbuang lebih sedikit jika dibandingkan problem
yang muncul pada tahap-tahap selanjutnya.
Kekurangan yang utama dari model ini adalah kesulitan dalam
mengakomodasi perubahan setelah proses dijalani. Fase sebelumnya
harus lengkap dan selesai sebelum mengerjakan fase berikutnya.
Masalah dengan waterfall :
1.
Perubahan sulit dilakukan karena sifatnya yang kaku.
2.
Karena sifat kakunya, model ini cocok ketika kebutuhan
dikumpulkan secara lengkap sehingga perubahan bisa ditekan
sekecil mungkin. Tapi pada kenyataannya jarang sekali
konsumen/pengguna yang bisa memberikan kebutuhan secara
lengkap, perubahan kebutuhan adalah sesuatu yang wajar
terjadi.
3.
Waterfall pada umumnya digunakan untuk rekayasa sistem
yang besar yaitu dengan proyek yang dikerjakan di beberapa
42
tempat berbeda, dan dibagi menjadi beberapa bagian subproyek.
2.1.16Teknik Fact Finding
Menurut Thomas Connolly dan Carolyn Begg (2010, p341)
fact finding adalah sebuah proses formal yang menggunakan teknik
seperti wawancara dan pertanyaan untuk mengumpulkan fakta–fakta
tentang sistem, kebutuhan, dan referensi. Seorang pengembang basis
data biasanya menggunakan beberapa fact finding selama projek
basis data. Terdapat lima fact finding sering digunakan yaitu :
a. Examining documentations
Memeriksa dokumen akan sangat berguna ketika mencoba
untuk menambah beberapa wawasan yang sebagaimana yang
dibutuhkan untuk basis data muncul.
b. Interviewing
Wawancara adalah cara yang paling banyak digunakan, dan
biasanya
sangat
berguna
sebagai
teknik
mencari
fakta.
Wawancara dapat digunakan untuk mengumpulkan informasi dari
orang secara tatap muka.
c. Observing the enterprise in operation
Obsevasi adalah cara yang paling efektif dalam teknik fact
finding untuk memahami sebuah sistem. Memungkinkan untuk
berpartisipasi atau hanya melihat seseorang melakukan aktifitas
untuk mempelajari tentang sistem.
d. Research
Sebuah teknik yang sangat berguna dalam fact finding
adalah untuk meneliti aplikasi dan masalah. Komputer jurnal,
buku referensi, dan intenet adalah sumber informasi yang bagus
karena
mereka
menyajikan
informasi
bagaimana
mempunyai penyelesaian masalah yang serupa.
e. Questionaires
lainnya
43
Teknik fact finding lainnya adalah melakukan survei
melalui kuisioner. Kuisioner adalah tujuan spesial dokumen yang
mengizinkan fakta untuk dikumpulkan dari orang – orang yang
banyak ketika me-maintaining beberapa response.
2.1.17State Transition Diagram
Menurut Pressman (2005, p302) state transition diagram
merepresentasikan
beberapa tingkah laku model yang dipanggil
dengan states dari sebuah sistem yang merupakan perilaku hasil dan
tingkah laku yang dimana transisi tersebut dibuat dari satu state ke
state lainnya. STD atau state transition diagram mengindikasikan
bagaimana sistem bertingkah sebagai konsekuen kejadian – kejadian
dari luar.
Beberapa komponen – komponen dari STD adalah :
a. State
State menggambarkan suatu keadaan pada suatu waktu
Gambar 2.3 STD State
b. Perubahan State
Perubahan state menunjukan arah dari state satu ke state
lainnya.
Gambar 2.4 Perubahan State
2.1.18Flowchart
44
Menurut Pressman (2010, p299), flowchart adalah activity
diagram
yang
merepresentasikan
sequence,
kondisi,
dan
pengulangan semua elemen dari pemrograman terstruktur, juga
merupakan sebuah turunan dari representasi desain bergambar
sebelumnya yang masih digunakan secara luas. Sebuah kotak
mengindikasikan
langkah
proses.
Sebuah
diamond
merepresentasikan kondisi logis, dan anak panah menunjukan aliran
kontrol. Sequence direpresentasikan dengan dua kotak pemrosesan
yang terhubung dengan garis (anak panah) dari kontrol. Kondisi
digambarkan dengan decision diamond. Jika benar, menyebabkan
suatu bagian pemrosesan. Jika salah, maka memanggil bagian
pemrosesan yang lain untuk berjalan. Perulangan adalah sebuah
kondisi yang jika benar akan melakukan suatu bagian proses lalu
akan kembali pada pengujian kondisi hingga menemukan kondisi
yang salah untuk keluar dari perulangan. Seleksi adalah perluasan
dari kondisi. Sebuah parameter akan diuji hingga muncul keputusan
yang bernilai benar untuk kemudian melakukan bagian pemrosesan
pada jalurnya.
45
Gambar 2.5 Contoh flowchart
2.1.19Entity Relationship Modelling
Menurut Thomas Connolly dan Carolyn Begg (2010, p371)
entity relationship modeling adalah sebuah pendekatan top-down
untuk merancang basis data yang dimulai dengan mengidentifikasi
data penting yang dinamakan entitas dan relasi di antara data yang
harus direpresentasikan di dalam model.
2.1.19.1 Entity Type
Entity type adalah sekumpulan objek dengan properti
yang sama, yang diidentifikasi oleh perusahaan yang
mempunyai eksistensi yang independen.
2.1.19.2 Relationship Types
Tipe relasi adalah sebuah penggabungan tipe entitas
yang memiliki arti. Tipe relasi merupakan penggabungan
antara satu atau lebih tipe entitas yang berpartisipasi.
2.1.19.3 Attributes
Atribut adalah properti dari suatu entitas atau tipe
relasi. properti tertentu dari tipe entitas di namakan atribut.
2.1.19.4 Keys
Keys memiliki peran penting untuk menghubungkan
satu objek dengan objek yang lainnya. Beberapa jenis tipe
dari keys adalah:
1. Candidate key
Kumpulan atribut minimal yang secara unik
mengidentifikasi setiap kejadian suatu tipe entitas.
2. Primary key
Candidate key yang dipilih secara unuk untuk
mengidentifikasikan setiap kejadian entitas,
3. Composite key
Candidate key yang terdiri daru dua atau lebih atribut
2.1.19.5 Strong and Weak Entity Types
Dapat mengklasifikasi tipe entitas menjadi dua
yaitu:
46
1. Strong entity type
Tipe entitas yang kuat adalah sebuah
entitas yang keberadaannya tidak bergantung
pada beberapa tipe entitas lainnya.
2. Weak entity type
Tipe
entitas
keberadaanya
yang
bergantung
lemah
kepada
yang
beberapa
entitas lainnya.
2.1.19.6 Structural Constraint
Memeriksa batasan yang dapat mungkin ditempatkan
pada tipe entitas yang berpartisipasi di dalam sebuah relasi.
batasan seharusnya mencerminkan pembatasan pada relasi
sebagai penerimaan pada dunia nyata. Tipe utama dari
batasan pada relasi dinamakan multiplicity.
Multiplicity adalah sejumlah kemungkinan kejadian
– kejadian dari sebuah tipe entitas yang mungkin
berhubungan kepada kejadian tunggal dari penggabungan
tipe entitas melalui relasi tertentu. Derajat yang umumnya
digunakan untuk relasi yaitu binary, yang terdiri atas one
to one relationship, one to many relationship dan many to
many relationship. Multiplicity terdiri dari dua batasan
yang terpisah yaitu:
a. Cardinality
Mendeskripsikan
jumlah
maksimum
yang
memungkinkan kejadian untuk entitas berpartisipasi
pada tipe relasi yang diberikan.
b. Participation
Menentukan apakah semua atau hanya beberapa
kejadian entitas berpartisipasi di dalam sebuah relasi.
2.1.19.7 Permasalahan pada ER Models
Permasalahan yang memungkinkan muncul ketika
membuat suatu ER model ini dinamakan sebagai
47
connection traps dan normalnya terjadi karena salah
menafsirkan arti dari relasi tertentu. Terdapat dua tipe dari
connection traps yaitu:
1. Fan traps
Fan
traps
terjadi
ketika
sebuah
model
direpresentasikan sebuah relasi di antara tipe entitas,
tetapi jalan antara kejadian entitas tertentu adalah
ambigu. Fan traps dapat mungkin terjadi dimana dua
atau lebih relasi one to many keluar dari entitas yang
sama.
2. Chams traps
Chams traps terjadi ketika sebuah model
menyarankan adanya relasi diantara tipe entitas, tetapi
jalan tersebut tidak ada diantara kejadian entitas
tertentu. Chasm traps dapat terjadi dimana ada satu
atau lebih relasi dengan minimum multiplicity of zero
membentuk bagian dari jalan antara entitas yang
berelasi.
2.2 Teori Khusus
2.2.1 Internet
Intenet adalah jaringan global komputer dunia yang besar dan
sangat luas sekali dimana komputer yang satu saling terhubung
dengan komputer lainnya diseluruh dunia dan berisikan berbagai
macam informasi seperti teks, gambar, audio, video. Dalam
mengatur
integrasi
dan
komunikasi,
jaringan
komputer
menggunakan TCP/IP TCP yaitu transmission control protocol
bertugas memastikan semua hubungan bekerja dengan benar. IP
yaitu internet protocol yang bertugas mentransmisikan data dari satu
komputer ke komputer lainnya.
Manfaat internet semakin terasa bagi para penggunanya yang
lekat sekali dengan dunia internet ini, seperti contoh internet
marketing, blogger, maupun toko online yang semakin mempunyai
48
tempat di mata para konsumen. Intenet bisa memberikan dampak
bagi penggunanya, baik dari dampak negatif maupun dampak posiitif
tergantung dari cara penggunaanya. Dampak negatif yaitu situs
mesum, game online yang membuat terutama pelajar lupa waktu dan
lupa untuk belajar, dan media sosial yang banyak menelan korban
dengan berbagai cara yang di lakukan pelaku untuk menjerat
korbannya. Dampak positif yang didapat dari internet yaitu
menambah wawasan dan pengetahuan dari berbagai pengetahuan
diseluruh dunia, menambah ide – ide baru yang mempunyai prospek
bagus untuk masa depan, dan sebagai sarana komunikasi yang tidak
terbatas ruang dan tempat.
2.2.2 Web
Web adalah sebuah penyebaran informasi melalui media
internet. WWW atau world wide web dan web adalah sama, karena
banyak yang menyingkat www menjadi web. Web tidak dapat
dipisahkan dari dunia internet. Melalui web, setiap pemakai internet
bisa mengakses informasi – informasi di situs web yang tidak hanya
berupa teks saja, tetapi juga bisa gambar, suara, film maupun
animasi. Web merupakan kumpulan-kumpulan dokumen yang
banyak tersebar di beberapa komputer server yang berada di seluruh
penjuru dunia dan terhubung menjadi satu jaringan melalui jaringan
yang disebut dengan internet.
2.2.2.1 Web Statis dan Web Dinamis
Menurut Connolly dan Begg (2010, p1033), dokumen
HTML yang disimpan dalam file merupakan halaman web
statis, isinya tidak pernah akan pernah berubah kecuali file
tersebut diubah, sedangkan isi dari halaman ini berupa web
dinamis yang selalu dibuat setiap kali diakses.
2.2.3 Pedoman Perancangan Antarmuka Pengguna
Menurut Shneiderman dan Plaisant (2005, p74), ada delapan
aturan yang dapat digunakan sebagai pedoman dalam merancang
antarmuka pengguna. Delapan aturan ini lebih dikenal dengan
49
sebutan Eight Golden Rules of Interface Design. Isi dari kedelapan
aturan tersebut adalah sebagai berikut:
1. Berusaha untuk konsisten
Konsistensi
dilakukan
pada
urutan
tindakan,
perintah, dan istilah-istilah yang digunakan pada prompt,
menu, serta layar bantuan.
2. Memungkinkan pengguna untuk menggunakan shortcut.
Ada kebutuhan dari pengguna yang sudah ahli untuk
meningkatkan kecepatan interaksi sehingga diperlukan
adanya singkatan (shortcut), tombol fungsi, dan fasilitas
makro.
3. Memberikan umpan balik yang informatif
Untuk
setiap
tindakan
pengguna,
sebaiknya
disertakan suatu sistem umpan . Untuk tindakan yang
sering dilakukan dan tidak terlalu penting, dapat umpan
balik yang sederhana. Tetapi ketika tindakan tersebut
merupakan hal yang penting, maka umpan balik sebaiknya
lebih substansial.
4. Merancang dialog yang memberikan penutupan (keadaan
akhir)
Urutan tindakan sebaiknya diorganisir dalam suatu
kelompok dengan bagian awal,tengah, dan akhir. Umpan
balik yang informatif akan mengindikasikan bahwa cara
yang dilakukan sudah benar dan dapat mempersiapkan
kelompok tindakan selanjutnya.
5. Memberikan pencegahan kesalahan
Sebaiknya sistem dilengkapi dengan pencegahan
kesalahan agar tidak terjadi kesalahan yang fatal oleh
pengguna. Jika terjadi kesalahan, sistem dapat mendeteksi
kesalahan
tersebut
dengan
cepat
dan
memberikan
50
pencegahan kesalahan, serta umpan balik yang mudah
dipahami oleh pengguna.
6. Memungkinkan pembalikan aksi yang mudah
Dengan adanya pembalikan aksi yang mudah,
kekhawatiran pada pengguna akan berkurang, karena
pengguna mengetahui bahwa kesalahan yang dilakukan
dapat dibatalkan. Dengan demikian pengguna tidak takut
untuk mengeksplorasi pilihan - pilihan lain yang belum
biasa digunakannya.
7. Mendukung pusat kendali internal
Pengguna lebih menginginkan menjadi pengontrol
sistem dan sistem akan merespon tindakan yang dilakukan
pengguna, daripada sistem yang mengontrol pengguna.
Sebaiknya sistem dirancang sedemikian rupa sehingga
pengguna
tidak
menjadi
responden,
melainkan
inisiatornya.
8. Mengurangi beban ingatan jangka pendek
Manusia memiliki keterbatasan ingatan jangka
pendek sehingga membutuhkan tampilan yang sederhana,
serta diberikan waktu yang cukup untuk pelatihan kode, ,
dan urutan tindakan
2.2.4 Structured Query Language
Menurut Whitten et. al. (2004, p556), SQL merupakan bahasa
standar yang telah digunakan secara resmi dan luas sebagai DDL
dan DML pada DBMS. SQL ini merupakan bahasa non-prosedural
yang mengandung kata dalam Bahasa Inggris sederhana seperti
CREATE,
SELECT,
digunakan oleh
mendefinisikan
INSERT
profesional
dan
dan
maupun
DELETE
yang
dapat
non-profesional.
Selain
memanipulasi basis data, SQL juga
mendukung trigger dan stored procedure. Trigger merupakan
sebuah program yang dilekatkan pada sebuah tabel dan akan
dijalankan secara otomatis dengan memperbarui tabel lain,
51
sedangkan stored procedure adalah program- program yang
dilekatkan di dalam sebuah tabel yang dapat dipanggil dari program
aplikasi.
Jadi menurut penulis, SQL adalah bahasa pemrograman yang
digunakan untuk mengakses dan memanipulasi basis data.
2.2.5 JSP (Java Server Pages)
Menurut Whanger dan Darren (2010, p1), JSP adalah teknologi
server-side scripting untuk mengirimkan konten yang bersifat
dinamis. JSP menggunakan bahasa Java sebagai scripting language
dan dapat dengan mudah menggunakan komponen-komponen Java
Beans yang mengenkapsulasi bisnis proses.
Cara kerja JSP adalah dengan memproses berkas JSP sebelum
pengiriman konten terjadi pada web klien. Berkas ini terlinaht seperti
campuran antara konten HTML dan server-side scripting yang dapat
diidentifikasi dengan special tag yang menunjuk pada kode-kode
yang akan dieksekusikan pada server.
2.2.6 XML (eXtensible Markup Language)
Menurut Handoko (2005, p15), XML adalah turunan dari
SGML
(Standardized
General
Markup
Language)
yang
dioptimalkan. XML menyediakan aturan-aturan untuk membuat
suiatu daftar menjadi susunan yang terstruktur. Fasilitas yang
disediakan XML ini membuat isi sebuah data menjadi lebih mudah
dimengerti.
HTML memiliki banyak keterbasan, sedangkan pada XML
dapat didefinisikan kumpulan tag yang tidak terbatas. Untuk
mengubah isi tag dari XML, dapat digunakan stylesheet, yaitu XSL
(eXtensible Stylesheet Language). XSL terdiri dari tiga bagian, dan
tiap bagian mempunyai standar masing-masing dari W3C (Wide
World Web Consortium), yaitu (a) Xpath (XML Path Language),
bahasa untuk menunjukkan sebuah bagian dari dokumen XML; (b)
52
XMLT (XML Transformation), bahasa untuk mengubah sebuah
dokumen XML ke dokumen lain; dan (c) XSL, yaitu XSLT yang
ditambah dengan kumpulan penjelasan mengenai formatting objects
dan formatting properties.
2.2.7 Oracle Database 10g Express Edition
Menurut Otey (2006, p22), Oracle Database 10g XE
merupakan Oracle Database sebagai entry-level database. Versi ini
dapat diperoleh secara gratis untuk diunduh, dikembangkan, serta
disebarkan. Perangkat lunak ini cepat untuk diinstal dan dapat
dikelola serta digunakan dengan mudah. Oracle Database versi Xe
ini memiliki batasan penyimpanan data pengguna sebesar 4GB
(tidak termasuk data sistem Oracle) dan 1GB RAM. Perangkat lunak
ini hanya dapat memanfaatkan satu Control Processor Unit (CPU),
sekalipun sistem itu memiliki banyak CPU. Oracle Database Xe
merupakan produk yang bersifat multiplatform.
Proses instalasi Oracle sederhana. Dengan bantuan wizard
yang menanyakan destinasi dan kata sandi untuk akun administratif
SYS dan SYSTEM yang telah dibangun di dalamnya. Nama basis
datanya adalah XE.
2.2.8 HTML
Menurut chuck musciano dan bill kennedy (2000, p8) HTML
adalah sebuah tampilan dokumen dan bahasa hyperlink-spesification.
HTML mendefinisikan syntax dan peletakan khusus, arahan – arahan
yang tertanam yang tidak ditampilkan oleh browser, tetapi
memberitahu browser bagaimana isi dari dokumen, termasuk teks,
gambar, dan media lainnya. Bahasa tersebut juga memberitahu
bagaimana membuat dokumen menjadi interaktif melalui Hypertext
links khusus, dimana menghubungkan antar dokumen pada computer
sendiri maupun computer orang lain sebagaimana dengan sumber
internet lainnya.
2.2.9 Javascript
53
Javascript adalah bahasa pemrograman yang khusus untuk
halaman web agar halaman web terlihat menjadi lebih hidup.
Javascript dibentuk dari dua suku kata yaitu Java yang berarti
bahasa pemrograman berorientasi objek dan Script yang berarti
serangkaian instruki program. Hal yang harus diperhatikan dalam
Javascript seperti Case sensitive yaitu
JavaScript membedakan
huruf besar dan huruf kecil. Dalam hal ini sama seperti dengan
pemrograman Turbo C atau C++ yaitu huruf ‘T’ tidak sama dengan
huruf ‘t’. Beberapa kelebihan dari javascript yaitu :
1. Ukuran file yang kecil
2. Mudah untuk dipelajari
3. Terbuka
2.2.10 Cascading Style Sheets / CSS
Menurut marty hall dan Larry Brown (2001,p147) Cascading
style sheets atau CSS adalah sebuah cara yang kuat dan fleksibel
dalam menspesifikasi bentuk informasi dari halaman web. CCS
dapat menentukkan font, size, background, foreground color,
backgroung image, margin,
dan karateristik lain untuk setiap
standart dari elemen–elemen HTML. Sebagai tambahan untuk
menspesifikasi bagaimana elemen–elemen standart seharusnya
ditampilkan, CSS memperbolehkan untuk mendefinisikan class
sendiri.
2.2.11 Apache
Apache adalah sebuah nama web server yang bertanggung
jawab pada request dan response HTTP dan logging informasi
secara detail. Apache memiliki fitur–fitur canggih seperti pesan
kesalahan yang dapat di atur, autentikasi berbasis basis data. Apache
juga didukun oleh sejumlah antarmuka pengguna yang berbasis
grafik atau GUI yang memungkinkan penanganan server menjadi
lebih mudah. Beberapa keunggulan yang dimiliki apache yaitu:
1. Apache merupakan software yang bersifat open source.
54
2. Apache
sangat
mudah
untuk
proses
instalasinya
jika
dibandingkan dengan web server lainnya.
3. Mampu beroperasi pada berbagai platform sistem operasi.
4. Mudah untuk pengaturan konfigurasi karena apache hanya
mempunyai empat file konfigurasi.
5. Mudah dalam menambahkan peripheral lainnya ke dalam
platform web servernya.
2.2.12 Apache Struts 2
Merupakan kerangka kerja ekstensibel elegan yang digunakan
untuk membuat aplikasi web Java. Kerangka kerja ini didesain untuk
menyederhanakan kode pengembangan penuh dari pembuatan
aplikasi, untuk kepentingan penerapan, pemeliharaan aplikasi.
Kerangka kerja aplikasi web ini berbasis pada pola desain MVC.
Tujuan
penggunaan
kerangka
kerja
ini
adalah
untuk
menawarkan perluasan dan peningkatan efisiensi waktu untuk
mengembangkan web lebih mudah bagi para pengembang aplikasi.
2.2.13MVC (Model View Controller)
Arsitektur Model-View-Controller adalah sebuah pola yang
terbukti membangun proyek secara lebih efektif. Hal itu dilakukan
dengan memilih komponen antara model, view dan controller pada
bagian-bagian dalam proyek. MVC berhubungan erat dengan
arsitektur dari Web Framework.
55
Gambar 2.6 MVC (Model, View, Controller)
Diagram di atas menunjukan tiga komponen yang terdapat
dalam pola MVC dan interaksi yang terjadi.
2.2.13.1
Model
Pola MVC memiliki layer yang disebut dengan
Model yang merepresentasikan data yang digunakan oleh
aplikasi sebagaimana proses bisnis yang diasosiasikan
terhadapnya
2.2.13.2
View
Layer ini mengandung keseluruhan detail dari
implementasi
keseluruhan
persistence.
Di
sini,
komponen grafis menyediakan representasi proses
internal aplikasi dan menuntun alur interaksi user
terhadap aplikasi. Tidak ada layer lain yang berinteraksi
dengan user , hanya View.
2.2.13.3
Controller
Terakhir,
arsitektur
MVC
memiliki
layer
Controller. Layer ini menyediakan detail alur program
dan transisi layer, dan juga bertanggung jawab atas
penampungan event yang dibuat oleh user dari View dan
56
melakukan
update
terhadap
komponen
Model
menggunakan data yang dimasukkan oleh user.
2.2.14Toad
Menurut Winkler (2006, p7),
toad salah satu tools untuk
meningkatkan produktivitas dari seorang administrator basis data
(DBA) dan pengembang aplikasi dengan menyediakan lingkungan
pengembangan yang mudah digunakan. Alat semacam ini sering
disebut dengan Database Administratition and Development Tools.
Fitur-fitur umum yang terdapat pada alat ini adalah membuat,
menjalankan, mengetes, dan code debuging, serta dapat digunakan
untuk memonitor aktifitas basis data.
2.2.15Penilaian
Menurut Dyah Ayu Lestari (2006, p1), penilaian (prestasi
kerja) merupakan sistem yang digunakan untuk menilai dan
mengetahui apakah karyawan memahami dan melaksanakan
pekerjaannya masing-masing secara keselutuhan (kemampuan kerja,
disiplin kerja, hubungan kerja, dan kepemimpinan) dan hal-hal
khusus sesuai dengan bidang dan tingkat pekerjaan yang dijabatnya.
Alasan menilai kinerja karyawan adalah sebagai berikut:
1. Penilaian
memberikan
informasi
tentang
dapat
dilakukannya promosi dan penetapan gaji.
2. Penilaian memberi satu peluang bagi seseorang untuk
meninjau
perilaku
yang
berhubungan
dengan
kerja
bawahan.
3. Penilaian memberikan satu peluang untuk meninjau karir
seseorang
dari
kekuatan
dan
kelemahan
yang
diperlihatkannya.
Tujuan menilai kinerja adalah untuk mengetahui jumlah
prestasi kerja karyawan di waktu yang lalu dan sebagai prediksi
prestasi kerja di waktu yang akan datang
Manfaat dilakukannya penilaian kinerja adalah:
1. Perbaikan kinerja perusahaan secara efektif
57
2. Penyesuaian kompensasi
3. Keputusan penempatan secara tepat
4. Mengetahui
kebutuhan
pelatihan,
perencanaan,
dan
pengembangan karir
5. Mengetahui tantangan-tantangan eksternal
Pengukuran efektifitas kerja merupakan elemen dalam
melakukan peniliana kinerja. Pengukuran tersebut berorientasi pada
perhatian atas pencapaian tujuan jangka panjang dan jangka pendek
serta kesehatan dan kelangsungan hidup organisasi. Jadi, konsep
efektifitas
organisasional
itu
perlu
dipertimbangkan
dalam
penganalisaan, penilaian strategi, kebijaksanaan, dan praktek
personalia termasuk di dalamnya penilaian kerja.
2.2.16Penugasan
Menurut Alice (2010, p2), penugasan didefinisikan sebagai
pemberian tugas kepada seseorang yang prakteknya berdasarkan
deskripsi pekerjaan dan kebijakan-kebijakan yang ada, sedangkan
pendelegasian merupakan pemberian tugas kepada seseoran dari
praktek sang pendelegasi. Pengklarifikasian terhadap perbedaan
antara penugasan dan pendelegasian dapat membantu karyawan
memahami mengapa seseorang tidak dapat mengembangkan daftar
pekerjaan sederhana dari apa yang dapat didelegasikan kepada orang
lain.
2.2.17Performance Appraisal
Menurut Dick Grote (2002, p1), performance appraisal adalah
sistem manajemen formal yang menyediakan evaluasi untuk kualitas
dari kinerja individu di dalam organisasi. Prosedur pelaksanaan
appraisal membutuhkan supervisor untuk mengisi formulir penilaian
terstandarisasi yang mengevaluasi individu pada beberapa dimensi
yang berbeda dan kemudian mendiskusikan hasil evaluasi dengan
employee.
58
Menurut Grote (2002, p1), performance appraisal memiliki 4
model fase, yaitu:
a. Performance planning
Pada awal tahu, supervisor dan employee berkumpul
bersama untuk sebuah performance-planning meeting.
Dalam pertemuan ini, supervisor dan employee akan
mendiskusikan personil yang bagaimanakah yang akan
mendapat penghargaan 12 bulan kedepan (meupakan
kunci pertanggungjawaban dari pekerjaan seseorang
dan tujuan serta proyek yang akan dikerjakan) dan
bagaiamana seseorang akan mengerjakan pekerjaannya
(merupakan perilaku dan kompetensi yang diharapkan
organisasi)
b. Performance execution
Setelah berjalan setahun, employee bekerja untuk
meraih
target,
objectifitas,
pertanggungjawaban
dari
dan
pekerjaan.
kunci
Supervisor
menyediakan pelatihan dan umpan balik pada individu
untuk
meningkatkan
probabilitas
kesuksesan.
Supervisor menciptakan kondisi yang memotivasi dan
membenahi permasalahan kinerja yang muncul.
c. Performance assessment
Saat mendekati performance appraisal, supervisor
merefleksikan bagaimana tingkatan baiknya employee
telah terlihat melalui pekerjaann yang telah dikerjakan
selama setahun, mengumpulkan berbagai formulir dan
lembar kerja yang disediakan organisasi untuk
membuat
penilaian.
merekomendasikan
perubahan
Supervisor
dalam
dapat
kompensasi
individu berdasarkan kualitas pekerjaan individu.
59
Biasanya, formulir penilaian yang telah terisi akan
ditinjau kembali dan diterima oleh appraiser’s boss.
d. Performance review
Supervisor dan employee bertemu untuk meninjau
forumilir appraisal yang telah diisi dan dibicarakan
mengenai seberapa baiknya seseorang bekerja selama
12 bulan oleh supervisor. Pada akhir peninjauan,
superisor dan employee akan mendiskusikan mengenai
pertemuan
berikutnya
untuk
melakukan
diskusi
performance-planning untuk proses manajemen kinerja
yang baru.
60
Gambar 2.7 Overall Organization Strategy
Menurut Dick Grote (2002, p4), tujuan dilakukannya
performance appraisal adalah:
a. Providing feedback to employees about their performance
b. Determining who gets promoted
c. Facilitating layoff or downsizing decisions
d. Encouraging performance improvement
e. Motivating superior performance
f. Setting and measuring goals
61
g. Counseling poor performers
h. Determining compensations changes
i. Encouraging coaching and mentoring
j. Supporting manpower planning or succession planning
k. Determining individual training and development neexs
l. Determining organizational training and development
needs
m. Confirming that good hiring decisions are being made
n. Providing legal defensibility for personnel decisions
o. Improving overall organizational performance
Menurut Dick Grote (2002, p15), formulir performance yang
ideal akan mengevaluasi individu dalam 5 area, yaitu:
a. Organizational core competencies
Dalam hal ini, kompetensi yang dimaksud adalah
kemampuan, ciri, karakter, perilaku yang diharapkan
setiap individu di dalam organisasi
b. Job family competencies
Kompetensi dalam hal ini adalah kompetensi terapan
pada major job families. Job families adalah cara yang
nyaman untuk memikirkan pengelompokan pekerjaan
individu yang saling berbagi karakteristik. Beberapa job
family tipikal adalah managerial/ supervisor, sales,
professional/ technical, dan operations.
c. Key job responsibilities
Merupakan tugas atau pertanggungjawaban mayor
dari posisi individu. Job description yang ideal akan
memberikan spesifikasi secara jelas mengenai apa yang
menjadi kunci pertanggungjawaban dari pekerjaan.
d. Projects and goals
62
Merupakan aktifitas individu yang dilakukan lebih
dari spesifikasi tugas dan kewajiban yang tercatat dalam
job description.
e. Major achivements
Setiap formulir performance appraisal harus
membutuhkan supervisor untuk mengidentifikasikan
sejumlah penyelesaian mayor dari individu yang telah
didapat sepanjang tahun.
Menurut Grote (2005, p154), keuntungan dalam menggunakan
performance appraisal system adalah:
a. The process ensures a level playing field
b. Rating errors are reduced
c. The probability that managers will take performance
management
responsibilities
seriously
is
greatly
increased.
d. Participating in a rater reliability produce makes it
easier for managers to deliver lower-than-expected
performance appraisals.
63
Download