Conceptual database design adalah proses membangun suatu model berdasarkan informasi yang digunakan oleh perusahaan atau organisasi, tanpa pertimbangan perencanaan fisik (Connolly,2002,p419).
Langkah
pertama : Membuat local conceptual data model untuk setiap
pandangan yang spesifik. Local conceptual data model terdiri
dari :
A. Entitiy types
Menurut
Connoly (2002,p331), entity types adalah kumpulan objek yang
mempunyai karakteristik yang sama, dimana telah diidentifikasi oleh
perusahaan.Menurut Silberschatz (2002,p27), entity types adalah
kumpulan dari entity yang memiliki tipe dan karakteristik yang
sama.
Entity dapat dibedakan menjadi dua
yaitu :
- · Strong Entity : entity yang keberadaannya tidak tergantung kepada entity lain (Fathansyah,1999,p94).
- · Weak entity : entity yang keberadaannya tergantung dari entity lain (Fathansyah,1999,p94).
Contohnya
adalah entity mahasiswa dan orang tua. Dimana mahasiswa
merupakan strong entity dan orang tua merupakan weak entity karena
keberadaan entity orang tua tergantung dari entity mahasiswa.
B. Relationship types
Menurut Connolly
(2002,p334) definisi dari relationship types adalah kumpulan
antar entity yang saling berhubungan dan mempunyai arti.
C. Attribute dan attribute
domains
Attribute adalah karakteristik dari
suatu entity atau relasi (Connolly,2002,p338). Setiap attribute diperbolehkan
untuk memiliki nilai yang disebut dengan domain. Attribute
domains adalah kumpulan dari nilai-nilai yang diperbolehkan untuk satu
atau lebih attribute.
Ada beberapa
jenis dalam attribute :
- Simple attribute dan Composite attribute
Simple
attribute adalah attribute yang
terdiri dari komponen tunggal dimana attribute tersebut tidak
dapat dipisahkan lagi, sedangkan composite attribute adalah attribute yang
masih dapat dipisahkan menjadi beberapa bagian. Contoh dari simple
attribute adalah nama_barang sedangkan untuk composite
attribute adalah alamat pada entity mahasiswa, karena
dalam alamat bisa dibagi menjadi bagian entiti jalan, entiti kode_pos dan
entiti kota (Silberchatz,2002,p29).
- Single-valued attribute dan Multi-valued attribute
Single-valued
attribute adalah attribute yang
memiliki satu nilai pada setiap entity, sedangkan multi-valued
attribute adalah attribute yang mempunyai beberapa
nilai pada setiap entity (Connolly,2002,p340). Contoh
dari single-valued attribute adalah Nim, nama_Mhs,
tanggal_lahir, dan lain-lain. Sedangkan untuk multi-valued attribute contohnya
adalah jam_pelajaran, hobi, dan lain-lain.
- Derived attribute
Derived
attribute merupakan attribute yang
nilai-nilainya diperoleh dari hasil perhitungan atau dapat diturunkan
dari attribute lain yang berhubungan (Silberschatz,2002,p30).
Contohnya adalah attribute umur pada entity mahasiswa
dimana attribute tersebut diturunkan dari attribute tanggal_lahir
dan tanggal_hari_ini.
D. Primary key dan alternate
keys
Primary key adalah key yang
telah menjadi candidate key yang dipilih secara unik untuk
mengidentifikasi suatu entity types. Candidate key adalah
kumpulan attribute minimal yang unik untuk mengidentifikasikan
suatu entity types (Connolly,2002,p340).
Alternate
key adalah key yang
digunakan sebagai alternatif dari key yang telah didefinisikan
(Fathansyah,1999,p104).
E. Integrity constraints
Integrity
constraints adalah
batasan-batasan yang menentukan dalam rangka melindungi basis data untuk
menghindari terjadinya inconsistent. (Connolly,2002,p457).
Pada
tahap conceptual model, langkah-langkah yang dilakukan adalah
sebagai berikut :
a. Mengidentifikasi entity types
Bertujuan
untuk menentukan entity types utama yang dibutuhkan.
Menentukan entity dapat dilakukan dengan memeriksa user’s
requirement specification. Setelah terdefinisi, entity diberikan
nama yang tepat dan jelas seperti mahasiswa, dosen, mata_kuliah
b. Mengidentifikasikan relationship
types
Bertujuan
untuk mengidentifikasi suatu relationship yang penting yang
ada antar entity yang telah diidentifikasi. Nama dari
suatu relationship menggunakan kata kerja seperti mempelajari,
memiliki mempunyai dan lain-lain.
c. Mengidentifikasi dan
menghubungkan attribute dengan entity atau relationship
types
Bertujuan
untuk menghubungkan attribute dengan entity atau relationship yang
tepat. Attribute yang dimiliki setiap entity atau relationship memiliki
identitas atau karakteristik yang sesuai dengan memperhatikan attribute berikut
: simple/composite attribute, single/multi-valued attribute dan derived
attribute
d. Menentukan attribute domain
Bertujuan
untuk menentukan attribute domain pada conceptual data
model. Contohnya yaitu menentukan nilai attribute jenis_kelamin
pada entity mahasiswa dangan ‘M’ atau ‘F’ atau nilai attribute sks
pada entity mata_kuliah dengan ‘1’, ’2’, ‘3’ dan ‘4’.
e. Menentukan candidate
key dan primary key attributes
Bertujuan
untuk mengidentifikasi candidate key pada setiap entity dan
memilih primary key jika ada lebih dari satu candidate key.
Pemilihan primary key didasari pada panjang dari attribute dan
keunikan key di masa datang.
f. Mempertimbangkan
penggunaan enhance modeling concepts (pilihan)
Pada langkah
ini bertujuan untuk menentukan specialization, generalization, aggregation, composition.
Dimana masing-masing pendekatan dapat dilakukan sesuai dengan kebutuhan yang ada.
Specialization dan generalization adalah
proses dalam mengelompokan beberapa entity dan
menghasilkan entity yang baru. Beda dari keduanya adalah cara
prosesnya, dimana spesialisasi menggunakan proses top-down dan
generalisasi menggunakan proses bottom-up.
Aggregation menggambarkan sebuah entity
types dengan sebuah relationship types dimana suatu
relasi hanya akan ada jika telah ada relationship lainnya
g. Mengecek redundansi
Bertujuan
untuk memeriksa conceptual model untuk menghindari dari adanya
informasi yang redundan. Yang dilakukan pada langkah ini adalah :
- Memeriksa kembali one-to-one relationship.
Setelah entity diidentifikasikan
maka kemungkinan ada dua entity yang mewakili satu objek.
Untuk itu dua entity tersebut harus di-merger bersama.
Dan jika primary key-nya berbeda maka harus dipilih salah satu dan
lainnya dijadikan alternate key.
- Menghilangkan relasi yang redundansi.
Untuk
menekan jumlah model data, maka relationship data yang
redundan harus dihilangkan
h. Memvalidasi conceptual
model dengan transaksi
Bertujuan
untuk menjamin bahwa conceptual data model mendukung kebutuhan
transaksi. Dengan menggunakan model yang telah divalidasi tersebut, dapat
digunakan untuk melaksanakan operasi secara manual. Ada dua pendekatan yang
mungkin untuk mejamin bahwa local conceptual data model mendukung
kebutuhan transaksi yaitu :
- · Mendeskripsikan transaksi
Memeriksa
seluruh informasi (entities, relationship, dan attribute)
yang diperlukan pada setiap transaksi yang disediakan oleh model dengan
mendokumentasikan penggambaran dari tiap kebutuhan transaksi.
- · Mengunakan transaksi pathways
Pendekatan
kedua, untuk memvalidasi data model dengan keperluan transaksi yang melibatkan
diagram yang mewakili pathways diambil dari tiap transaksi
secara langsung yang terdapat pada E-R diagram menggambarkan komponen-komponen
dari entity dan relasi yang masing-masing dilengkapi
dengan attribute-attribute yang merepresentasikan seluruh
fakta dari real-world yang kita tinjau (Fathansyah,1999,p79).
Sedangkan menurut Silberschartz (2002,p42), E-R diagram dapat menyatakan
keseluruhan struktur logical dari basis data dengan
menggunakan bagan.
i. Melihat kembali conceptual data
model dengan pengguna.
Bertujuan
untuk melihat kembali conceptual model dan memastikan bahwa
data model tersebut sudah benar.
0 comments:
Post a Comment