BAB 2 LANDASAN TEORI 2.1 Pendekatan Basisdata Pada bab ini

advertisement
BAB 2
LANDASAN TEORI
2.1 Pendekatan Basisdata
Pada bab ini akan dijelaskan mengenai teori-teori yang digunakan
sebagai dasar dari penelitian ini. Teori-teori tersebut didapat dari sumber-sumber
yang terpercaya seperti jurnal, textbook dan internet.
2.1.1 Database (Basisdata)
Database merupakan data yang saling terhubung dan
deskripsi dari data yang dirancang untuk kebutuhan organisasi
(Connolly dan Begg, 2005, p15). Sedangkan menurut Nilkamal
Surve (2006, p1-1). database adalah kumpulan dari data yang
saling terhubungan.
Dari teori-teori tersebut dapat disimpulkan bahwa
database adalah sejumlah datayang terorganisasi yang saling
terhubung untuk menyediakan informasi yang dibutuhkan oleh
perusahaan.
13
14
2.1.2 DBMS (Database Management System)
DBMS adalah sebuah sistem perangkat lunak yang
mengizinkan pengguna untuk mendefinisikan, membuat,
memelihara, dan mengatur akses ke database (Connolly danBegg,
2005, p16). Menurut Jeffery, Lonnie dan Kevin (2004, p524),
Database Management System (DBMS) adalah perangkat lunak
khusus yang digunakan untuk membuat, mengontrol, dan
mengelola sebuah database.
Menurut Gerald V. Post (2005, p2), Database
Management System (DBMS) merupakan software yang
mendefinisikan database, menyimpan data, mendukung query
language, menghasilkan report, dan membuat data entry screen.
Keuntungan DBMS (Connolly dan Begg, 2005, p26) :
1. Kontrol terhadap pengulangan data
2. Konsistensi data
3. Lebih banyak informasi yang didapat dari jumlah data
yang sama
4. Data dapat dipakai bersamaan
5. Peningkatan integritas data
6. Peningkatan keamanan
7. Penetapan standardisasi
15
8. Skala Ekonomis
9. Keseimbangan konflik requirment
10. Peningkatan data aksesibilitas dan respon
11. Peningkatan produktivitas
12. Peningkatan maintenance melalui data independence
13. Peningkatan concurrency
14. Peningkatan layanan recovery dan backup
Kekurangan DBMS (Connolly dan Begg, 2005, p29):
1. Kompleksitas
2. Ukuran
3. Biaya DBMS
4. Penambahan biaya hardware
5. Biaya konversi
6. Performa
7. Tingkat kegagalan lebih tinggi
2.1.3 Komponen DBMS
Komponen DBMS terdiri dari 5 komponen penting (Connolly
dan Begg, 2005, p18) :
16
1. Perangkat keras
Aplikasi dan DBMS memerlukan perangkat keras untuk
berfungsi. Contoh perangkat keras yang digunakan
DBMS dan aplikasi antara lain personal
computer,mainframe.
2. Perangkat lunak
Komponen dari perangkat lunak terdiri dari DBMS dan
program aplikasi bersamadengan sistem operasi.
Umumnya, program aplikasi ditulis dalam 3GL (bahasa
pemrograman generasi ketiga) seperti java, c++, c, atau
menggunakan 4GL (bahasa pemrograman generasi
keempat), seperti SQL, yang dikombinasikan dengan 3GL.
3. Data
Data adalah komponen terpenting dalam lingkungan
DBMS. Menurut Connollydan Begg(2004, p20), data
bertindak sebagai penghubung antara komponen
mesindan pengguna. Database berisi data operasional dan
metadata (data tentang data).
4. Prosedur
Prosedur berkaitan dengan instruksi dan aturan yang
menentukan rancangan dan penggunaan database.
17
Instruksi-instruksi tersebut umumnya berisi :
a. Instruksi untuk menjalankan dan menghentikan
DBMS.
b. Instruksi untuk menggunakan fasilitas tertentu dari
DBMS.
c. Instruksi untuk membuat salinan backup dari
database.
d. Instruksi untuk menangani kegagalan perangkat
keras atau perangkat lunak.
5. Manusia
Komponen terakhir yaitu manusia yang terlibat dengan
sistem
2.1.4 Fungsi DBMS
Menurut Connolly dan Begg (2005, p48), DBMS memiliki
sepuluh fungsi, yaitu:
1. Data storage, retrieval, and update
DBMS harus dapat memungkinkan user untuk
menyimpan, mengambil, dan mengupdate data di
dalam basis data.
18
2. A user-accessible catalog
DBMS harus memiliki sebuah katalog yang berisi
deskripsi data item dan dapat diakses oleh user.
3. Transaction support
DBMS harus memiliki sebuah mekanisme yang dapat
menjamin baik seluruh update yang berhubungan
dengan sebuah transaksi dapat dilakukan ataupun
keseluruhan update tersebut tidak dilakukan.
4. Concurrency control services
DBMS harus memiliki sebuah mekanisme untuk
menjamin basis data di-update secara benar ketika
banyak user meng-update basis data secara bersamaan.
5. Recovery services
DBMS harus memiliki sebuah mekanisme untuk
pemulihan basis data apabila terjadi bencana.
6. Authorization services
DBMS harus memiliki sebuah mekanisme untuk
menjamin bahwa hanya user yang memiliki otorisasi
yang dapat mengakses basis data.
19
7. Support for data communication
DBMS harus dapat terintegrasi dengan piranti lunak
komunikasi, dapat mengakses database dari lokasi
yang jauh.
8. Integrity services
DBMS harus memiliki sarana untuk menjamin baik
data di dalam basis data maupun pengubahan terhadap
data mengikuti aturan-aturan tertentu (constraint).
9. Services to promote data independence
DBMS harus menyertakan fasilitas-fasilitas untuk
mendukung ketidaktergantungan piranti lunak
terhadap struktur aktual dari basis data.
10. Utility services
DBMS harus menyediakan serangkaian layanan
kegunaan seperti program analisis statistik,
pengawasan fasilitas, fasilitas reorganisasi indeks, dan
lain-lain.
2.1.5 Entity Relationship Modeling
Menurut Connolly dan Begg (2005, p342), ER Modeling
adalah sebuah pendekatan top-down untuk merancang basisdata
yang dimulai dengan mengindentifikasi data penting yang
20
disebut entitas dan relasi antara data yang harus diwakili dalam
model.
ER Modeling terdiri dari 2 tipe :
1. Tipe Entitas
Menurut Connolly dan Begg (2005, p343), tipe entitas
adalah kumpulan dari obyek-obyek dengan sifat atau
properti yang sama, yang mana diidentifikasi oleh
perusahaan yang mempunyai eksistensi yang independen.
Konsep dasar dari bentuk Entity Relationship adalah tipe
entitas. Sebuah tipe entitas memiliki keberadaan yang
bebas dan bisa menjadi obyek dengan keberadaan fisik
atau menjadi obyek dengan keberadaan konseptual. Ini
berarti
perancang
mengidentifikasikan
yang
entitas
berbeda
yang
berbeda.
mungkin
Entity
orrurrence adalah obyek yang dapat dikenal/diidentifikasi
secara unik dari sebuah tipe entitas.
2. Tipe Relasi
Menurut Connolly dan Begg (2005, p346), relationship
type adalah kumpulan keterhubungan yang mempunyai
arti diantara tipe-tipe entitas. Setiap relasi diberi nama
sesuai dengan fungsinya. Relationship occurrence adalah
21
suatu asosiasi/hubungan yang dapat diidentifikasikan
secara unik, yang mana memasukkan satu kejadian dari
setiap tipe entitas yang berpartisipasi.
Contoh:
Gambar 2.1 Relationship Occurrence (Connolly
dan
Begg 2005, p346)
Derajat dari relasi adalah jumlah dari partisipasi tipe
entitas dalam sebuah tipe relasi. Entitas yang berhubungan
dalam sebuah tipe relasi dikenal sebagai participant dalam
relationship dan jumlah participant dalam sebuah tipe
relationship disebut sebagai derajat dari relationship. Oleh
karena itu, derajat dari sebuah relationship berderajat dua
disebut binary, sedangkan relationship berderajat tiga
disebut sebagai ternary, dan seterusnya.
22
3. Attribute
Menurut Connoly dan Begg (2005, p350-352), atribut
adalah
sifat
dari
sebuah entity atau
sebuah
tipe
relationship. Atribut menyimpan nilai dari setiap entity
occurrence dan mewakili bagian utama dari data yang
disimpan dalam basis data. Attribute domain adalah
sejumlah nilai yang diperkenankan untuk satu atau lebih
atribut. Setiap atribut yang dihubungkan dengan sejumlah
nilai disebut domain. Domain mendefinisikan nilai-nilai
yang dimiliki sebuah atribut dan sama dengan konsep
domain pada model relasional. Simple Attribute adalah
atribut yang terdiri dari satu komponen tunggal dengan
keberadaan yang bebas. Simple Attribute tidak bisa dibagi
lagi ke dalam komponen yang lebih kecil. Contohnya,
posisi
dan
gaji
dari
entity
pegawai.
Sedangkan
Composed attribute adalah sebuah susunan atribut dari
banyak komponen dengan sebuah keberadaan yang
bebas dari masing-masingnya. Dalam hal ini beberapa
atribut dapat dipisahkan menjadi komponen yang lebih
kecil lagi dengan keberadaan yang bebas dari masingmasingnya.
Contohnya
atribut
alamat
dari
entity
kantor cabang yang mengandung nilai (jalan, kota, kode
pos) bisa dipecahkan menjadi simple attribute jalan, kota,
23
dan kode pos. Single value attribute adalah atribut yang
hanya menyimpan nilai tunggal untuk suatu sifat dari
entity. Multi-valued attribute adalah atribut yang bisa
menyimpan nilai lebih dari satu untuk suatu sifat dari
entity. Contohnya atribut telepon pada entity kantor
cabang yang bisa memiliki lebih dari satu nomor telepon.
Derived attribute (atribut turunan) adalah atribut yang
menunjukkan
nilai
yang diperoleh dari atribut yang
berhubungan, tidak terlalu dibutuhkan dalam tipe entity
yang sama. Atribut turunan mungkin juga menyangkut
hubungan dari atribut pada tipe entity yang berbeda.
4. Kunci (Key)
Menurut Connoly dan Begg (2005, p78-79), kunci
relasi sangat dibutuhkan untuk mengidentifikasi satu
atau lebih atribut yang memiliki nilai unik setiap
tuple dalam relasi. Macam-macam kunci relasi :
1. Simple Key
Simple Key adalah suatu kunci yang dibentuk oleh
satu atribut.
2. Composite Key
Composite
Key
adalah
kunci
berdasarkan lebih dari satu atribut.
yang
disusun
24
3. Candidate Key
Candidate Key adalah suatu atribut atau satu set
minimal
atribut
yang mengidentifikasikan secara
unik suatu kejadian spesifik dari entity.
4. Primary Key
Primary Key adalah satu atribut atau satu set
minimal
atribut
yang
tidak
hanya
mengidentifikasikan secara unik suatu kejadian
spesifik, tapi juga dapat mewakili setiap kejadian
dari suatu entity.
5. Alternative Key
Alternative Key adalah kunci kandidat yang tidak
terpakai sebagai kunci primer.
6. Foreign key
Foreign key adalah satu atribut yang melengkapi satu
hubungan (relationship) yang menunjukkan ke
induknya.
5. Structural Constraint
Menurut
Connolly
dan
Begg
(2005,
p356-
357),Constraints seharusnya mencerminkan batasan dari
hubungan sebagai suatu tanggapan dalam dunia nyata.
Tipe
utama
constraints
dalam
hubungan
disebut
multiplicity. Multiplicity adalah sejumlah kejadian yang
25
mungkin terjadi pada sebuah tipe entity dimana
memungkinkan berhubungan dengan satu kejadian lain
yang bergantung pada sebuah tipe entity melalui sebuah
hubungan yang nyata. Multiplicity membatasi jalan setiap
entity-entity yang terhubung. Derajat yang paling umum
untuk relationship ialah binary(degree two) Binary
relationship pada umumnya mengarah pada :
1. One-to-One (1:1) Relationship
Pada One-to-one relationship, satu kejadian entity
tunggal hanya dapat berhubungan dengan satu
kejadian entity tunggal dari entity yang lain.
Gambar 2.2 Contoh representasi One-to-One
Relationship (Connolly dan Begg 2005, p357)
(1:1)
26
Gambar 2.3 Multiply One-to-One
(Connolly dan Begg 2005, p358)
(1:1)
Relationship
2. One-to-Many (1:*) Relationship
Pada one-to-many relationship, satu kejadian
entity tunggal dapat berhubungan dengan
lebih dari satu kejadian entity tunggal dari
entity yang lain.
Gambar
2.4
Contoh
representasi
One-to-Many
Relationship (Connolly dan Begg 2005, p358)
(1:*)
27
Gambar 2.5 Multiply One-to-Many (1:*) Relationship
(Connolly dan Begg 2005, p359)
3. Many-to-Many (*:*) Relationship
Pada many-to-many relationship, lebih dari satu
kejadian entity tunggal dapat berhubungan dengan
lebih dari satu kejadian entity tunggal dari entity
yang lain.
28
Gambar 2.6 Contoh representasi Many-to-Many (*:*) Relationship
(Connolly dan Begg 2005, p360)
Gambar 2.7 Multiply Many-to-Many (*:*) Relationship (Connolly
dan Begg 2005, p360)
29
2.1.6 Database Languages
Bahasa dalam basisdata dibedakan menjadi dua bentuk :
1. Data Definition Language (DDL)
Menurut Connolly dan Begg (2005, p40), pengertian Data
Definition Language adalah
memperbolehkan
Database
suatu
bahasa
Administrator (DBA)
yang
atau
pengguna untuk mendeskripsikan dan memberi nama
suatu entitas, atribut, dan relasi data yang dibutuhkan
untuk aplikasi, bersama dengan integritas data yang
diasosiasikan dan batasan (constraint) keamanan data.
2. Data Manipulation Language (DML)
Menurut Connolly dan Begg (2005, p40), pengertian
Data
Manipulation Language adalah suatu bahasa yang
menyediakan
seperangkat
operasi
untuk
mendukung
manipulasi data yang berada pada basis data.Pengoperasian
data yang akan dimanipulasi biasanya meliputi :
1. Penambahan data baru ke dalam basis data.
2. Modifikasi data yang disimpan ke dalam basis data.
3. Pengembalian data yang terdapat di dalam basis data.
4. Penghapusan data dari basis data.
DML dibagi menjadi 2 jenis yaitu Procedural dan Nonprocedural. Menurut Connolly dan Begg (2005, p41),
pengertian Procedural DML adalah suatu bahasa yang
30
memperbolehkan pengguna untuk mendeskripsikan ke
sistem data apa yang dibutuhkan dan
bagaimana
mendapatkan data tersebut secara tepat, sedangkan Nonprocedural DML adalah
sebuah
bahasa
yang
mengizinkan pengguna untuk menentukan data apa yang
dibutuhkan tanpa memperhatikan bagaimana data diperoleh.
2.1.7 Fourth-Generation Language (4GLs)
Menurut Connolly dan Begg (2005, p42), tidak terdapat
persetujuan umum tentang bahasa generasi keempat. Berbeda
dengan bahasa generasi ketiga yang membutuhkan banyak baris
untuk sebuah operasi, generasi keempat ini membutuhkan lebih
sedikit baris untuk sebuah operasi dibanding dengan bahasa
generasi sebelumnya. Sebuah bahasa generasi keempat sangat
diharapkan dapat menjadi tumpuan yang sangat besar untuk
komponenkomponen yang levelnya lebih tinggi yang dikenal
dengan fourth-generation tools. Bahasa generasi keempat
meliputi :
1. Presentation language, seperti query languages dan report
generators
31
2. Speciality language, seperti spreadsheets dan database
language
3. Application generators yang mendefinisi, melakukan insert,
update, delete data dari database ke aplikasi yang sedang
dibangun
4. Very
high-level
languages
yang
digunakan
untuk
mengenerate applicationcode
2.1.8 Siklus Hidup Basisdata
Karena sistem database adalah komponen fundamental
dari sistem informasi organisasi yang lebih besar, siklus
perkembangan sistem database sangat erat kaitannya dengan
siklus dari sistem informasi. Untuk aplikasi basisdata yang kecil
dengan jumlah pengguna yang sedikit, tidak dibutuhkan siklus
hidup basisdata yang kompleks.
Bagaimanapun,
saat
merancang
aplikasi
basisdata
menengah sampai besar dengan jumlah pemakai puluhan hingga
ribuan pemakai, menggunakan ratusan query dan aplikasi
program, siklus hidup dapat menjadi sangat kompleks. Berikut ini
adalah gambar tahapan – tahapan siklus hidup aplikasi basisdata
menurut Conolly dan Begg (2005, p284).
32
Diagram 2.1 Siklus Hidup Aplikasi Basisdata (Connolly dan Begg, 2005,
p284)
33
2.1.8.1
Perencanaan Basisdata (Database Planning)
Merupakan aktifitas yang merencanakan
tahapan dari daur hidup sistem basisdata dapat
direalisasikan secara lebih efisien dan efektif.
Perencanaan basisdata harus terintegrasi dengan
seluruh strategi sistem informasi dari organisasi
bersangkutan. Ada tiga permasalahan pokok dalam
merumuskan suatu strategi sistem informasi
(Connolly dan Begg, 2005, p285), yaitu :
a. Identifikasi rencana dan tujuan perusahaan
dengan penentuan sistem informasi yang
dibutuhkan.
b. Evaluasi sistem informasi yang berjalan untuk
menentukan kelebihan dan kelemahan sistem
yang ada.
c. Penilaian terhadap peluang-peluang informasi
teknologi
yang
mungkin
mendatangkan
keuntungan yang kompetitif.
2.1.8.2
Definisi Sistem (System Definition)
Definisi
sistem
menjelaskan
batasan-
batasan dan ruang lingkup aplikasi basisdata dan
34
sudut pandang mayoritas pengguna (Connoly dan
Begg, 2005, p286).
2.1.8.3
Pengumpulan dan Analisis kebutuhan
(Requirement Collection and Analysis)
Pengumpulan
dan
analisis
kebutuhan
adalah proses pengumpulan dan analisa informasi
tentang bagian perusahaan yang didukung yang
didukung aplikasi basisdata dan menggunakan
informasi
untuk
mengidentifikasi
kebutuhan-
kebutuhan pengguna dari sistem yang baru
(Connolly dan Begg, 2005, p288).
Terdapat banyak teknik untuk menyatukan
informasi yang disebut fact-finding techniques.
Informasi yang dikumpulkan untuk tiap user view
utama (yaitu job role atau enterprise application
area) meliputi:
•
Deskripsi data yang digunakan atau
dihasilkan
•
Rincian bagaimana data digunakan atau
dihasilkan
35
•
Semua kebutuhan-kebutuhan tambahan untuk
aplikasi basisdata yang baru.
2.1.8.4
Perancangan Basisdata (Database Design)
Perancangan basisdata merupakan proses
membuat rancangan basisdata yang mendukung
operasi- operasi dan tujuan-tujauan perusahaan
(Connolly dan Begg, 2005, p291).
Terbagi atas 3 tahap antara lain:
∗
Perancangan Basisdata Konseptual
(Conceptual Database Design)
Proses membuat penjelasan implementasi
database pada penyimpanan sekunder,
menggambarkan
hubungan
dasar,
organisasi file, dan indeks yang digunakan
untuk
mencapai
akses
yang
efisien
terhadap data, dan setiap ruang lingkup
integritas yang terkait dan nilai keamanan.
36
∗
Perancangan Basisdata Logikal
(Logical Database Design)
Proses pembuatan sebuah model data yang
digunakan
dalam
suatu
perusahaan
berdasarkan pada model data yang spesifik,
tetapi independen dari DBMS tertentu dan
pertimbangan fisik lainnya.
∗
Prancangan Basisdata Fisikal
(Physical Database Design)
Proses membuat penjelasan implementasi
database pada penyimpanan sekunder,
menggambarkan
hubungan
dasar,
organisasi file, dan indeks yang digunakan
untuk
mencapai
akses
yang
efisien
terhadap data, dan setiap ruang lingkup
integritas yang terkait dan nilai keamanan.
2.1.8.5
Pemilihan DBMS (DBMS Selection)
Pemilihan DBMS adalah pemilihan DBMS
yang sesuai untuk mendukung aplikasi basisdata
37
(Connolly dan Begg, 2005, 295). Langkahlangkah utama untuk memilih DBMS adalah:
•
Mendefinisikan istilah-istilah yang mengarah
pada pembelajaran
•
Daftar pendek dua atau tiga produk
•
Mengevaluasi produk
•
Merekomendasikan pilihan dan membuat
laporan
2.1.8.6
Perancangan Aplikasi (Application Design)
Perancangan aplikasi adalah perancangan
antarmuka
pengguna
dan
program-program
aplikasi yang digunakan dan memproses basisdata.
2.1.8.7
Prototipe (Prototyping)
Prototipe adalah pembangunan model kerja
aplikasi basisdata (Connolly dan Begg, 2005,
p304). Terdapat dua strategi prototipe yang biasa
digunakan
sekarang
ini,
yaitu
requirement
prototyping dan evolutionary prototyping.
38
Requirement
prototyping menggunakan
prototipe untuk menentukan kebutuhan-kebutuhan
yang diusulkan aplikasi basisdata dan jika
kebutuhan -kebutuhan sudah dilengkapi maka
prototipe
tidak
dipakai
lagi
atau
dibuang.
Sedangkan evolutionary prototyping digunakan
untuk tujuan yang sama, tetapi perbedaannya
requirements prototyping adalah prototipe tidak
dibuang tetapi dengan perkembangan lebih lanjut
menjadi aplikasi kerja basisdata.
2.1.8.8
Implementasi (Implementation)
Implementasi adalah realisasi fisik basis
data dan perancangan aplikasi (Connolly dan Begg,
2005, p304). Implementasi basisdata dicapai
menggunakan DDL (data definition language) dan
aplikasi menggunakan 4GL (Fourth generation
language).
39
2.1.8.9
Konversi Data dan Muatan Data
(Data Conversion and Loading)
Konversi data dan muatan data adalah
memindahkan semua data yang ada kedalam
basisdata yang baru dan mengkonversikan semua
aplikasi yang ada untuk digunakan pada basisdata
yang baru (Connolly dan Begg, 2005, p305).
2.1.8.10
Pengetesan (Testing)
Pengetesan adalah proses mengeksekusi
program-program
dengan
tujuan
untuk
menemukan kesalahan-kesalahan (Connolly dan
Begg, 2005, p305).
2.1.8.11
Pemeliharaan Operasional
(Operational Maintenance)
Pemeliharaan operasional adalah proses
mengawasi dan memlihara sistem yang meliputi
aktifitas mengawasi performa dari sistem dan
40
memelihara dan memperbarui aplikasi basisdata
(Connolly dan Begg, 2005, p306).
2.1.9 Methodology Desain Basisdata
Sebuah
pendekatan
terstruktur
yang
menggunakan
prosedur, teknik, alat-alat, dan bantuan dokumentasi untuk
mendukung dan memfasilitasi proses desain. (Connolly dan Begg,
2005, p306).
Rancangan metodologi terdiri dari beberapa fase yang
masing-masing berisi sejumlah langkah, yang menjadi acuan
perancang menentukan teknik yang tepat pada setiap tahapan
proyek. Sebuah rancangan metodologi juga membantu desainer
untuk
merencanakan,
mengelola,
mengendalikan,
dan
mengevaluasi pengembangan proyek database. Selain itu,
rancangan
ini
merupakan
pendekatan
terstruktur
untuk
menganalisis dan pemodelan persyaratan-persyaratan untuk
database dengan cara standar dan terorganisir.
Dalam metodologi rancangan database, proses rancangan
dibagi menjadi 3 fase:
41
1. Rancangan Basisdata Konseptual
Proses pembangunan sebuah model data yang digunakan
dalam perusahaan, independen dari semua pertimbangan
fisik. Tahap desain konseptual basisdata dimulai dengan
penciptaan data model konseptual perusahaan, yang
sepenuhnya independen dari rincian implementasi seperti
target DBMS, program aplikasi, bahasa pemrograman,
platform
perangkat
keras,
masalah
kinerja,
atau
pertimbangan fisik lainnya.
Langkah 1 Membangun model konseptual data
Tujuan: Untuk membangun sebuah model data konseptual
dari kebutuhan data perusahaan.
Model data konseptional terdiri dari: tipe entitas, tipe
hubungan, atribut dan domain atribut, kunci utama dan
alternative, ruang lingkup terintegritasi. Model dta
konseptual didukung oleh dokumentasi, termasuk diagram
ER dan list data, yang dihasilkan selama perkembangan
model ini.
Langkah 1.1 Mengidentifikasi jenis entitas
Tujuan:
Untuk
dibutuhkan
mengidentifikasi
tipe
entitas
yang
42
Langkah 1.2 Mengidentifikasi jenis hubungan
Tujuan: Untuk mengidentifikasi hubungan penting yang
ada antara tipe-tipe entitas
Langkah 1.3 Mengidentifikasi dan mengasosiasikan
atribut dengan tipe entitas atau hubungan
Tujuan: Untuk mengasosiasikan atribut dengan tipe
entitas atau hubungan yang cocok.
Langkah 1.4 Menentukan domain atribut
Tujuan: Untuk menentukan domain dari atribut pada
model data konseptual.
Langkah 1.5 Tentukan atribut calon kunci, primer,
dan alternative
Tujuan: Untuk mengidentifikasi kandidat kunci untuk
setiap jenis entitas dan, jika ada lebih dari satu kandidat
kunci, untuk dipilih salah satu untuk menjadi kunci utama
dan lainnya sebagai kunci alternatif.
43
Langkah 1.6 Pertimbangkan penggunaan konsep
pemodelan enhanced (langkah opsional)
Tujuan: Untuk mempertimbangkan penggunaan konsep
pemodelan enhanced, seperti spesialisasi /generalisasi,
agregasi, dan komposisi.
Langkah 1.7 Periksa Redundansi Model
Tujuan: Untuk memeriksa keberadaan redudansi pada
model
Langkah 1.8 Validasi model konseptual terhadap
transaksi pengguna
Tujuan: Untuk menyakinkan bahwa model konsepsual
mendukung transaksi yang dibutuhkan.
Langkah 1.9 Review Model data konseptual dengan
pengguna
Tujuan Untuk meninjau model data konseptual dengan
pengguna
untuk
memastikan
bahwa
mereka
mempertimbangkan sebagai representasi yang 'benar' dari
data perusahaan yang dibutuhkan.
2. Rancangan Basisdata Logikal
44
Proses pembuatan sebuah model data yang
digunakan dalam suatu perusahaan berdasarkan pada
model data yang spesifik, tetapi independen dari DBMS
tertentu dan pertimbangan fisik lainnya.
Tahap rancangan database logis memetakan model
konseptual ke model logis, yang dipengaruhi oleh model
data untuk database target (misalnya, model relasional).
Model data logis merupakan sumber informasi untuk fase
desain fisik, menyediakan rancangan database fisik
dengan sarana untuk membuat pengorbanan yang sangat
penting untuk desain database yang efisien.
Langkah 2 Membangun dan memvalidasi model data
logis
Tujuan: Untuk menerjemahkan model data konseptual
menjadi model data logis dan kemudian memvalidasi
model ini dan memeriksa bahwa model ini benar secara
struktural dan mampu mendukung transaksi yang
diperlukan.
Langkah 2.1 Membuat hubungan untuk model data
logis
45
Tujuan: Untuk menciptakan hubungan antara model data
logis untuk mewakili entitas, hubungan, dan atribut yang
telah diidentifikasi.
Langkah 2.2 Validasi relasi dengan menggunakan
normalisasi
Tujuan: Untuk memvalidasi hubungan pada data model
logical menggunakan normalisasi
Langkah 2.3 Validasi relasi terhadap transaksi
pengguna
Tujuan: Untuk meyakinkan bahwa relasi pada data model
logical mensupport transaksi yang diperlukan.
Langkah 2.4 Periksa integritas ruang lingkup
Tujuan:
Untuk
memeriksa
ruang
lingkup
yang
terintegrasi diwakili oleh data model logikal
Langkah 2.5 Review Model data logis dengan
pengguna
46
Tujuan: Untuk meninjau model data logis dengan
pengguna untuk memastikan bahwa mereka menganggap
model menjadi representasi yang benar dari data
perusahaan yang diperlukan.
Langkah 2.6 Menggabungkan model data logis ke
model global (langkah opsional)
Tujuan: Untuk menggabungkan model data logis lokal ke
dalam model data logis global tunggal yang mewakili
pandangan pengguna semua database.
Langkah 2.7 Periksa perkembangan selanjutnya
Tujuan: Untuk menentukan apakah ada perubahan yang
signifikan dalam kemungkinan mendatang dan untuk
menilai apakah model data logis dapat mengakomodasi
perubahan ini.
3. Rancangan Database Fisikal
Proses membuat penjelasan implementasi database
pada penyimpanan sekunder, menggambarkan hubungan
dasar, organisasi file, dan indeks yang digunakan untuk
mencapai akses yang efisien terhadap data, dan setiap
ruang lingkup integritas yang terkait dan nilai keamanan.
47
Tahap desain database fisik memungkinkan
perancang untuk membuat keputusan tentang bagaimana
database diimplementasikan. Oleh karena itu, desain fisik
disesuaikan dengan DBMS tertentu. Ada umpan balik
antara desain fisik dan desain logis, karena keputusankeputusan yang diambil selama membuat desain fisik
untuk meningkatkan kinerja dapat mempengaruhi model
data logis.
Langkah 3 Terjemahkan logis data model untuk
target DBMS
Tujuan: Untuk menghasilkan skema database relasional
dari model data logis yang dapat diimplementasikan
dalam DBMS target.
Langkah 3.1 Desain hubungan dasar
Tujuan:
Untuk
menentukan
bagaimana
mewakili
hubungan dasar yang diidentifikasi dalam Model data
logis pada target DBMS.
Langkah 3,2 Desain representasi asal data
48
Tujuan: Untuk menentukan bagaimana mewakili data
yang diturunkan dalam Model data logis pada DBMS
target.
Langkah 3.3 Desain ruang lingkup umum
Tujuan: Untuk merancang ruang lingkup umum untu
target DBMS
Langkah 4 Desain berkas organisasi dan indeks
Tujuan: Untuk menentukan organisasi file yang optimal
untuk menyimpan hubungan dasar dan indeks yang
diperlukan untuk mencapai kinerja yang dapat diterima,
yaitu, cara di mana hubungan dan tupel akan diungkapkan
pada penyimpanan sekunder.
Langkah 4.1 Menganalisis transaksi
Tujuan: Untuk memahami fungsi dari transaksi yang akan
berjalan pada database dan untuk menganalisis transaksi
yang penting.
Langkah 4.2 Pilih file organisasi
49
Tujuan: Untuk menentukan organisasi file yang efisien
untuk tiap hubungan dasar.
Langkah 4.3 Pilih indeks
Tujuan: Untuk menentukan aakah menambahan indeks
akan meningkatkan kemampuan system.
Langkah
4,4
Perkirakan
harddisk
space
yang
diperlukan
Tujuan: Untuk memperkirakan jumlah space hardisk yang
diperlukan untuk database.
Langkah 5 Desain user views
Tujuan: Untuk merancang pandangan pengguna yang
telah
diidentifikasi
selama
perkembangan
siklus
pengumpulan dan analisis tahap sistem database yang
dibutuhkan.
Langkah 6 Desain mekanisme keamanan
Tujuan: Untuk merancang mekanisme keamanan untuk
database seperti yang ditentukan oleh pengguna selama
perkembangan siklus pengumpulan dan analisis tahap
sistem database yang dibutuhkan.
50
Langkah 7 Pertimbangkan pengenalan redundansi
terkontrol
Tujuan: Untuk menentukan apakah memperkenalkan
redundansi secara terkendali oleh
aturan normalisasi yang ringan akan meningkatkan kinerja
sistem.
Langkah 7.1 Menggabungkan hubungan satu-ke-satu
(1:1)
untuk mengurangi penggabungan
Langkah 7.2 Menduplikasi atribut non-key dalam
hubungan satu-ke-banyak (1: *)
untuk mengurangi penggabungan
Langkah 7.3 Menduplikasi atribut kunci asing dalam
hubungan satu-ke-banyak (1: *)
untuk mengurangi penggabungan
Langkah 7.4 Menduplikasi atribut dalam hubungan
banyak-ke-banyak (*: *) untuk
mengurangi penggabungan
51
Langkah 7.5 Memperkenalkan kelompok pengulangan
untuk meningkatkan perfoma sistem
Langkah 7.6 Membuat tabel ekstrak
untuk membuat dan mengisi tabel dan memprosesnya saat
sistem sedang tidak banyak meloading data.
Langkah 7.7 Hubungan Partisi
untuk menyimpan dan menganalisis sejumlah data yang
besar.
Langkah 8 Monitor dan menyempurnakan sistem
operasional
Tujuan: Untuk memonitor sistem operasional dan
meningkatkan
kinerja
sistem
untuk
memperbaiki
keputusan desain yang tidak tepat atau mencerminkan
perubahan kebutuhan.
2.1.10 Normalisasi
Menurut Connolly dan Begg (2005, p388), normalisasi
adalah sebuah teknik untuk menghasilkan satu set relasi dengan
atribut-atribut
yang
inginkan,
sesuai
dengan
kebutuhan
52
perusahaan.
Tujuan
dari
normalisasi
adalah
untuk
mengidentifikasi suatu set relasi yang sesuai, yang mendukung
permintaan data dari perusahaan. Sedangkan menurut Whitten,
Bentley, dan Dittman (2004, p306), normalisasi adalah teknik
analisis data yang mengatur atribut data dalam kelompok untuk
membentuk entitas yang non-redundan, stabil, fleksibel, dan
mudah beradaptasi.
Unnormalized (UNF) merupakan keadaan dimana sebuah
tabel berisi satu atau lebih grup yang berulang. Grup yang
berulang adalah sebuah atribut atau kumpulan atribut, dalam
sebuah tabel, yang mempunyai multiple value. Untuk membuat
entitas data yang normal, tidak redundan, stabil, dan fleksibel,
diperlukan normalisasi.
Tahapan-tahapan Normalisasi menurut Connolly dan
Begg (2005, p401):
1. First Normal Form (1 NF)
Bentuk normal pertama merupakan sebuah relasi dimana
irisan dari baris dan kolom hanya memiliki 1 nilai. Bentuk
normal pertama ini dicapai apabila setiap nilai atribut adalah
53
tunggal, tidak ada atribut yang dapat memiliki lebih dari satu
nilai untuk contoh entitas tunggal. Untuk mencapai bentuk
normal pertama, yang harus dilakukan adalah:
•
menghilangkan perulangan
•
menghilangkan perhitungan
•
menentukan primary key
2. Second Normal Form (2NF)
Bentuk normal kedua merupakan sebuah relasi dari bentuk
normal pertama dimana setiap atribut yang bukan primary key
harus bergantung sepenuhnya secara fungsional dengan
primary key (fully functional dependency). Untuk mencapai
bentuk
normal
kedua,
yang
harus
dilakukan
adalah
menghilangkan ketergantuan parsial dari atribut-atribut nonprimary key.
3. Third Normal Form (3NF)
54
Bentuk normal ketiga merupakan sebuah relasi dari bentuk
normal pertama dan kedua dimana tidak ada atribut yang nonprimay key tergantung transitif dengan primay key.
2.2 Tools yang digunakan
Dalam penulisan skripsi ini, adapun tools yang digunakan dalam
perancangan sistem basisdata dan aplikasi basisdata antara lain menggunakan
diagramming tools dan software tools.
2.2.1 Diagramming Tools
Dalam merancang dan membuat aplikasi sistem basisdata ini, adapun
diagramming tools yang digunakan sebagai berikut:
1. Flowchart
Flowchart adalah penggambaran secara grafik dari langkah-langkah
dan urut-urutan prosedur dari suatu program. Flowchart menolong
analis dan programmer untuk memecahkan masalah kedalam
segmen-segmen yang lebih kecil dan menolong dalam menganalisis
alternatif-alternatif lain dalam pengoperasian. (meftahul.com, 2011)
Flowchart biasanya mempermudah penyelesaian suatu masalah
khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.
55
Tabel 2.1 Simbol Flowchart (meftahul.com, 2011)
2. Data Flow Diagram (DFD)
Menurut Jeffery L.Whitten (2007, p317), data flow diagram adalah
sebuah model proses yang digunakan untuk menggambarkan aliran
data melalui sebuah sistem dan tugas atau pengolahan yang dilakukan
56
oleh sistem. Konsep untuk modeling DFD terdiri dari (Jeffery
L.Whitten, 2007, p319-322):
•
Eksternal Agen
Persegi empat menyatakan agen eksternal-batasan
sistem
tersebut.
Kedua
model
membedakannya hanya ukurannya
Gambar 2.8 Eksternal Agen
(Jeffery L.Whitten, 2007, p319)
sama,
yang
57
•
Data Store
Untuk model dari DeMarco/Yourdon persegi panjang
dengan kedua ujung terbuka menyatakan data store,
terkadang disebut file atau database. Sedangkan model dari
Gane dan Sareon ditandai dengan warna hijau disebelah kiri
dan terbuka disebelah kanan.
Gambar 2.9 Data Store
(Jeffery L.Whitten, 2007, p320)
58
•
Proses Name
Persegi panjang bersudut (bentuk Gane dan Sarson)
menyatakan nama proses (Process Name) atau bagaimana
tugas dikerjakan.
Gambar 2.10 Process Name
(Jeffery L.Whitten, 2007, p321)
3. State Transition Diagram (STD)
State Transition Diagram (STD) menunjukan bagaimana
sistem bertingkah laku sebagai akibat dari kejadian eksternal.
Untuk melakukannya, STD menunjukkan berbagai model tingkah
laku (disebut state) sistem dan cara di mana transisi dibuat dari state
satu ke state lainnya. STD berfungsi sebagai dasar bagi pemodelan
tingkah laku. (Pressman, 2001, p302)
59
Notasi yang digunakan dalam State Transition Diagram adalah :
− Action (Aksi)
Merupakan suatu tindakan yang dilakukan oleh sistem saat
terjadi perubahan state atau merupakan suatu reaksi terhadap
kondisi. Aksi menghasilkan output seperti pesan pada layar,
cetakan pada printer, dan lain - lain.
− Condition (kondisi)
Merupakan suatu kejadian yang terdapat pada lingkungan
eksternal yang dapat dideteksi oleh sistem yang akan
mengakibatkan perubahan keadaan.
− State
Merupakan suatu simbol yang menyatakan suatu keadaan atau
kondisi dari sebuah sistem.
− Transition State
Merupakan suatu simbol yang menyatakan perubahan dari state
yang satu ke state yang lain.
60
2.2.2 Software Tools
1. PHP
Software ini digunakan untuk melakukan interpretasi data kode PHP
menjadi kode HTML sehingga hasilnya dapat ditampilkan di webbrowser (Budi Raharjo, 2011,246)
2. Database Management System (DBMS)
Kumpulan program yang digunakan untuk mendefinisikan, mengatur,
dan memproses database, sedangkan database itu sendiri esensinya
adalah sebuah struktur yang dibangun untuk keperluan penyimpanan
data. DBMS merupakan alat atau tool yang berperan untuk
membangun struktur tersebut. (Budi Raharjo, 2011,10)
3. MySQL
Merupakan software RDBMS (atau server database) yang dapat
mengelola database dengan sangat cepat, dapat menampung data
dalam jumlah sangat besar, dapat diakses oleh banyak user(multiuser), dan dapat melakukan suatu proses secara sinkron atau
berbarengan(multi-threaded).
61
2.3 Pemahaman Object Studi
Semua penjelasan tentang Object studi yang berkaitan dengan sistem yang
berjalan didalam perusahaan dan berguna sebagai penjelasan dalam perancangan
sistem basis data yang akan dibuat.
2.3.1 Customer
Pelanggan atau Customer merupakan bagian penting dari
perencanaan bisnis, tanpa customer maka tidak ada penjualan dan tidak
ada perusahaan yang akan bertahan lama. Untuk bertahan perusahaan
mengelompokan sesuai dengan dasar kebutuhan, kebiasaan dan atribut
lainnya.(Alexander, Yves, 2010, p20). Dapat disimpulkan bahwa
customer adalah bagian yang penting untuk memulai sebuah usaha yang
kita jalankan.
2.3.2 Produksi
Produksi dapat dikatakan sebagai suatu aktivitas dalam perusahaan
industri berupa penciptaan nilai tambah dari input menjadi output secara
efektif dan efisien sehingga produk sebagai output dari proses penciptaan
nilai tambah itu dapat dijual dengan harga yang kompetitif di pasar global
(Vincent Gaspersz, 2005:167).
62
2.3.3 Pengangkutan
Konunikasi, Distribusi, dan Chanel Pemasaran merupakan bagian
dari penampilan sebuah perusahaan ke Customer(Alexander, Yves, 2010,
p26). Maka dapat disimpulan Distribusi merupakan bagian yang penting
dalam proses binis yang menghubungkan perusahaan dengan customer
atau pelanggan.
2.3.4 Supplier
Relasi dengan supplier dibuat untuk memaksimalkan alokasi dari
barang dan kegiatan perusahaan (Alexander, Yves, 2010, p39). Maka
dapat disimpulkan hubungan dengan supplier merupakan bagian penting
dari proses binis dalam suatu perusahaan.
Dengan adanya relasi dengan supplier dapat memaksimalkan
proses alokasi bahan baku dan meninggkatkan produksi ataupun
penjualan produk.
2.3.5 Penjualan
Penjualan adalah bagaimana menciptakan hubungan jangka
panjang dengan pelanggan melalui produk atau jasa dari sebuah
perusahaan. Dalam hal ini penjualan adalah bagaimana strategi yang
63
akan digunakan untuk mengintegrasikan perusahaan, pelanggan, dan
korelasi antar keduanya (Kertajaya, 2006, p15).
L1
Download