bab 2 landasan teori

advertisement
BAB 2
LANDASAN TEORI
2.1
Teori Umum
2.1.1
Internet
A.
Definisi Internet
Internet adalah kumpulan jaringan yang mempunyai
mekanisme berkemampuan untuk menyebarkan informasi di
seluruh dunia dan sebuah media untuk berkolaborasi dan
berinteraksi antara individu-individu dengan komputernya tanpa
memperhatikan lokasi geografisnya.
( Barry M. Leiner, http://www.isoc.org/internet/history/brief.html)
Internet menurut Oetomo et al (2003, p.157) adalah
sebuah jaringan komputer yang sangat besar yang terdiri dari
jaringan-jaringan kecil yang saling terhubung yang menjangkau
seluruh dunia.
Internet yang digunakan orang saat ini, bermula dari
jaringan komputer yang digunakan oleh departemen pertahanan
Amerika Serikat. Jaringan komputer tersebut dikenal dengan
ARPANET, yang digunakan pada saat terjadinya perang dingin
antara
Amerika
dengan
Rusia.
Selanjutnya
ARPANET
dikembangkan menjadi jaringan yang lebih luas lagi yang disebut
7
internet. Perkembangan internet menjadi sangat pesat, karena
banyak fasilitas yang ditawarkan seperti e-mail, USENET,
newsgroup, file transfer, telnet, bulletin board service, WWW,
Internet Telephony dan Internet Fax.
(Oetomo et al, 2003, p.71)
B.
Mekanisme Internet
Internet bekerja dalam jaringan yang besar, karena itu
untuk melakukan perpindahan data antar komputer dibutuhkan
beberapa hal seperti alamat tujuan dan perantara (Internet Service
Provider) serta sebuah protokol untuk menjamin sampainya data
pada tujuan.
Untuk
menghubungkan
host-host
dalam
internet
digunakan protokol TCP/IP (Transmission Control Protocol /
Internet Protocol). TCP (Transmission Control Protocol)
berfungsi untuk membagi-bagi informasi yang akan dikirim
menjadi paket data yang kecil dan merakitnya kembali menjadi
bentuk aslinya, sedangkan IP (Internet Protocol) berfungsi untuk
menjamin paket yang dikirim mencapai tujuan dimana standar IP
membagi alamat menjadi sepuluh digit dengan setiap kelompok
digit memiliki referensi pengalamatan tersendiri.
TCP/IP dibangun dalam sistem operasi UNIX dan
digunakan oleh internet, menjadikan TCP/IP sebagai standar de
8
facto untuk transmisi data dalam jaringan. Bahkan TCP/IP
didukung oleh sistem operasi jaringan yang memiliki protokol
sendiri (misalnya Netware).
C.
Protokol Aplikasi di Internet
Ada beberapa jenis protokol aplikasi dalam internet yang
dikenal yaitu:
•
File Transfer Protocol (FTP)
Berdasarkan pendapat Oetomo et al (2003, p72) File Transfer
Protocol (FTP) adalah suatu protokol yang memungkinkan
perusahaan dan konsumen berkomunikasi secara interaktif
dengan komputer-komputer lain yang sedang terhubung dalam
internet. FTP menyediakan fasilitas penyalinan file secara
elektronik dari satu komputer ke komputer lainnya melalui
internet.
Berdasarkan pendapat McLeod (2001, jilid 1, p76) File
Transfer Protocol (FTP) adalah perangkat lunak yang
memungkinkan user untuk menyalin file ke komputer dari
Website mana saja.
•
Hypertext Transfer Protocol (HTTP)
Protokol yang digunakan oleh web server untuk mengirim dan
menerima informasi. Bisa digunakan untuk mengirim dan
9
menerima teks, grafik, gambar, suara, video, dan file
multimedia lainnya. (Oetomo et al, 2003, p155)
Menurut
(
Wahana
Komputer
Semarang,
http://www.wahanakom.com/) adalah sebuah protokol yang
berfungsi
sebagai
suatu
sistem
pendistribusian
dan
penggunaan informasi secara bersama di internet.
•
Gopher
Protokol yang dikembangkan oleh Universitas Minnesota
sebagai suatu cara untuk mengambil dokumen. Selanjutnya,
Gopher dimodifikasi menjadi sistem yang digerakkan oleh
menu yang digunakan untuk mengambil file.
(McLeod, 2001, jilid 1, p77)
•
Telnet
Protokol ini digunakan untuk berhubungan dengan komputer
lain di dalam internet. (Oetomo et al, 2003, p2)
D.
WWW (World Wide Web)
Menurut Oetomo (2003, p.13-14) Web merupakan sistem
hypermedia yang mempunyai area luas yang ditujukan untuk
akses secara universal. Web merupakan sistem yang menyebabkan
pertukaran data di internet menjadi mudah dan efisien. Web terdiri
dari atas dua komponen dasar, antara lain:
10
•
Server Web : Sebuah komputer dan software yang menyimpan
dan mendistribusikan data ke komputer lainnya (yang
meminta informasi) melalui internet.
•
Browser Web : Software yang dijalankan pada komputer
pemakai (client) yang meminta informasi dari server web
yang menampilkannya sesuai dengan file data itu sendiri.
Web menjadikan pandangan yang sangat penting terhadap
internet. Pertama, World Wide Web ini menyediakan akses
terhadap huruf, ukuran, gaya huruf dan termasuk gambar dari
layar tanpa memerlukan perawatan yang khusus. Suara dan
gambar juga mungkin, meskipun terlalu besar untuk di-download
dan didengar ataupun dilihat. Kedua, web menyediakan
hypertextual hubungan antara dokumen di segala tempat pada
web, tidak hanya pada mesin tunggal saja.
World Wide Web merupakan jaringan dokumen yang
sangat besar, yang saling menghubungkan satu sama lain, satu set
protokol yang mendefinisikan bagaimana sistem bekerja dan
mentransfer data dan sebuah software yang membuatnya bekerja
dengan
mulus. Web menggunakan
teknik hypertext
dan
multimedia yang membuat internet mudah digunakan, dijelajahi
dan dikonstribusikan.
11
2.1.2
Lelang
Definisi lelang dalam Undang-Undang Nomor 19 Tahun 2000
Pasal 1 sub 17 adalah penjualan barang di muka umum dengan cara
penawaran harga secara lisan dan atau tertulis melalui usaha
pengumpulan peminat atau calon pembeli.
(http://www.pajakindonesia.com)
2.1.3
Lelang Online
Definisi lelang online adalah proses lelang yang terjadi antara
pembeli dan penjual tanpa harus ada sebuah tempat pelelangan yang
nyata tetapi sebuah tempat pelelangan virtual. Keuntungan-keuntungan
lelang online antara lain sebagai berikut:
1. Tidak terbatas oleh waktu
Dengan lelang online, transaksi dapat dilakukan kapanpun, 24
jam sehari dan 7 hari seminggu.
2. Tidak terbatas oleh tempat
Transaksi dapat dilakukan tanpa melihat wajah saingansaingan yang ikut menawar barang karena antar sesama
pembeli dan penjual mungkin saja berada di tempat yang
berbeda, bahkan di benua yang berbeda, tentunya selama
tempat tersebut terjangkau oleh internet.
12
3. Jumlah penawar yang besar
Jika seluruh penawar pada sebuah situs lelang online yang
besar ( misalnya eBay) dikumpulkan menjadi satu, tentunya
tidak akan ada tempat yang nyaman untuk menampung para
penawar. Sementara semakin banyak penawar, maka itulah
yang paling diharapkan oleh pengelola lelang. Lelang online
menyediakan ruang yang cukup sekalipun semua manusia di
dunia berpartisipasi.
4. Jumlah penjual yang besar
Dengan adanya jumlah penawar yang besar, tentunya juga
memicu penjual untuk memasarkan barangnya, tentunya ini
harus didukung oleh kemudahan-kemudahan yang disediakan
pada situs yang bersangkutan.
5. Jaringan ekonomi
Dengan adanya jumlah penawar yang besar, akan memicu
lebih banyak penjual, demikian juga sebaliknya. Hal ini akan
menimbulkan siklus ekonomi permintaan dan persediaan,
menjadikan sebuah sistem yang berguna bagi para peserta
lelang.
(http://www.scriptintermedia.com/view.php?id=693&jenis=ITKnowledge)
13
2.1.4
Basis Data
A.
Definisi Basis Data
Basis data (Database) adalah kumpulan data yang saling
berhubungan secara logikal serta deskripsi dari data-data tersebut,
yang didesain untuk memenuhi kebutuhan informasi suatu
organisasi. Basis data juga sebagai satu tempat penyimpanan data
besar yang digunakan secara berkala oleh banyak departemen dan
pengguna,
daripada
memisahkan
file
yang
menyebabkan
redundansi data, semua data diintegrasikan dengan sedikit
duplikasi. Basis data bukan lagi dimiliki oleh satu departemen,
tetapi menjadi sumber daya bersama perusahaan.
Basis data tidak hanya menyimpan data operasional
organisasi, namun juga deskripsi dari data tersebut. Oleh sebab
itu, Basis data juga didefinisikan sebagai gambaran dari kumpulan
data yang terintegrasi (self-describing collection of integrated
records).
Ketika menganalisa informasi, diperlukan identifikasi
entitas, atribut, dan relationship (hubungan). Entitas adalah obyek
nyata (orang, tempat, benda, konsep, kejadian, dsb) dalam
organisasi yang ingin direpresentasikan dalam basis data. Atribut
adalah properti yang mendeskripsikan beberapa aspek dari obyek
yang ingin disimpan, sedangkan relationship adalah hubungan
14
antar
entitas.
Jadi
basis
data
menggambarkan
atau
merepresentasikan entitas, atribut dan hubungan logikal antar
entitas.
(Thomas Connolly and Carolyn Begg, 2002, p. 14)
B.
Komponen Basis Data
Sistem basis data terdiri dari 4 komponen data, yaitu:
1. Data.
Data dapat berupa data yang single user ataupun data yang
berupa multi user.
2. Perangkat Keras.
Merupakan komponen yang dibutuhkan untuk manajemen
basis data.
3. Piranti Lunak.
Merupakan komponen yang menghubungkan fisik basis data
dengan pengguna.
4. User.
Ada 3 kelas pengguna dalam basis data yaitu:
a. Pemrograman aplikasi.
Bertanggung jawab dalam penulisan program aplikasi
yang diperlukan dalam manajemen basis data dengan
menggunakan berbagai bahasa pemrograman.
15
b. Pengguna akhir.
Menggunakan data dalam basis data untuk keperluan tugas
atau fungsinya.
c. Database Administrator (DBA).
Bertanggung jawab untuk keperluan sistem basis data.
DBA berfungsi untuk mengatur penempatan data,
penggunaan data, pembagian data, pengamanan data,
pemilihan prosedur.
C.
Tingkatan Struktur dalam Basis Data
1. Field
Æ
unit
terkecil
dari
data
record
yang
disimpan dalam basis data.
2. Record
Æ
kumpulan field-field yang disimpan yang
saling berelasi membentuk data yang mempunyai arti.
3. File
Æ
kumpulan seluruh kejadian atau peristiwa
dari 1 tipe tersimpan.
4. Database Æ
kumpulan terintegrasi dari file – file atau
table – table kejadian atau peristiwa yang merupakan
representasi data dari suatu model enterprise.
5. Normalisasi
Æ
sebuah teknik untuk menghasilkan
sekumpulan dari hubungan dengan properti yang diinginkan,
memberikan kebutuhan data untuk enterprise. Normalisasi
adalah
metode
formal
16
yang
dapat
digunakan
untuk
mengidentifikasikan hubungan berdasarkan pada key dan
functional depedencies diantara atribut-atributnya.
D.
DBMS (Database Management System)
DBMS adalah koleksi dari data-data yang berhubungan
dan kumpulan dari program-program untuk mengakses data-data
tersebut. Tujuan dari DBMS adalah menyediakan sebuah cara
untuk menyimpan dan menerima informasi dari basis data yang
mudah dan efisien.
Sistem dari basis data didesain untuk mengolah informasi
yang banyak. Pengolahan data melibatkan penjelasan struktur
tempat penyimpanan informasi dan penyediaan mekanisme untuk
memanipulasi informasi. Di samping itu, sistem basis data harus
memastikan keamanan dari data yang disimpan walaupun sistem
dalam keadaan crash atau percobaan akses yang tidak diijinkan.
Jika data akan dibagikan kepada para user, sistem tersebut harus
menghindari kemungkinan hasil-hasil yang janggal.
Karena informasi sangat penting di setiap organisasi, para
ahli komputer telah mengembangkan sebuah konsep yang besar
dan teknik untuk mengatur data.
(Abraham Silberschatz et al, 2006, p1)
17
2.2
Teori Khusus
2.2.1
ER Modeling (Entity Relationship Modeling)
ER Modeling adalah pendekatan top-down pada sebuah desain
basis data yang dimulai dengan mengidentifikasi data penting yang
disebut entitas dan relationship diantara data yang harus diwakilkan di
model. Kemudian ditambahkan detil-detil seperti informasi yang
menjelaskan entitas dan relationship yang disebut atribut dan batasanbatasan pada entitas, relationship, dan atribut.
2.2.2
Entity Types
Konsep dasar dari ER Model adalah tipe entitas yang mewakilkan
sekelompok obyek di dunia nyata dengan properti yang sama. Sebuah
tipe entitas mempunyai eksistensi yang independen dan dapat menjadi
obyek-obyek yang mempunyai bentuk fisik atau bentuk abstrak.
(Thomas Connolly and Carolyn Begg, 2002, p. 331)
2.2.3
Relationship Types
Sebuah relation type adalah kumpulan dari hubungan antara satu
atau lebih tipe entitas. Setiap relation type diberikan sebuah nama yang
menjelaskan
fungsinya.
Relationship
Occurrence
adalah
sebuah
hubungan unik yang teridentifikasi dimana terdapat sebuah kejadian dari
setiap tipe entitas.
(Thomas Connolly and Carolyn Begg, 2002, p. 334)
18
2.2.4
Keys
Sebuah key dapat mengidentifikasi sekumpulan dari atribut yang
cukup untuk membedakan sebuah entitas dari entitas lainnya. Key juga
dapat mengidentifikasi relationships yang unik dimana membedakan
relationships satu dengan yang lain.
2.2.5
Candidate Key
Candidate Key adalah kumpulan dari atribut yang nilainya secara
unik mengidentifikasi setiap entity occurrence. Candidate Key yang tidak
terpilih sebagai primary key disebut alternate key .
2.2.6
Primary Key
Primary Key adalah candidate key yang terpilih secara unik
mengidentifikasi setiap occurrence dan sebuah entity type. Pemilihan
primary key untuk sebuah entitas berdasarkan atas panjang atribut,
jumlah minimal atribut dan kepastian keunikan di masa depan.
19
2.2.7
Composite Key
Composite Key adalah candidate key yang memiliki 2 atau lebih
atribut.
Gambar 2.1 Penjelasan atribut, primary key, dan composite key.
(Thomas Connolly and Carolyn Begg, 2002, p. 340-342)
2.2.8
Batasan-batasan Struktural
Batasan-batasan
sebaiknya
merefleksikan
aturan
dalam
relationship layaknya kehidupan nyata. Contoh-contoh dalam batasan
yaitu kebutuhan sebuah properti sewaan yang harus dipunyai pemilik dan
setiap departemen harus mempunyai karyawan. Tipe utama pada batasan
dalam relationships disebut multiplicity.
2.2.9
Multiplicity
Angka atau jarak dari kejadian-kejadian yang mungkin pada
sebuah tipe entitas yang berhubungan dengan sebuah kejadian tunggal
dari tipe entitas yang berhubungan melalui sebuah relationship khusus.
20
Batasan-batasan
Pengertian
multiplicity
0..1
Nol atau 1 kejadian entitas
1..1 (atau hanya 1)
Tepat 1 kejadian entitas
0..* (atau hanya *)
Nol atau banyak kejadian entitas
1..*
Satu atau banyak kejadian entitas
5..10
Minimal 5 sampai dengan maksimal 10
kejadian entitas
Nol atau tiga atau enam, tujuh, atau
0, 3, 6-8
delapan kejadian entitas
Tabel 2.1
Ringkasan
yang
menjelaskan
batasan-batasan
multiplicity.
(Thomas Connolly and Carolyn Begg, 2002, p. 344-350)
2.2.10 UML (Unified Modelling Language)
E-R Diagram membantu model dari komponen perwakilan data
dari sistem piranti lunak. Tetapi perwakilan data hanya membentuk satu
bagian dari desain sistem keseluruhan. Komponen-komponen lainnya
termasuk model-model dari pengguna berinteraksi dengan sistem,
21
spesifikasi dari modul-modul fungsional sistem dan interaksinya, dan
sebagainya.
UML adalah sebuah standar yang dikembangkan dibawah
naungan dari Object Management Group (OMG) untuk menciptakan
spesifikasi-spesifikasi dari komponen yang bermacam-macam pada
sistem piranti lunak.
(Abraham Silbershatz et al, 2006, p251-252)
2.2.11 DFD (Data Flow Diagram)
Data Flow Diagram adalah sebuah representasi grafis dari aliran
data melalui sebuah sistem informasi. Yang membedakan DFD dengan
flowchart adalah DFD menunjukkan aliran dari data sedangkan flowchart
menunjukkan aliran kontrol dari suatu program. Sebuah DFD dapat juga
digunakan untuk visualisasi dari proses data
DFD biasa dimulai dengan menggambar Context-level Data Flow
Diagram yang menunjukkan interaksi antara sistem dan entitas eksternal.
DFD juga didesain untuk menunjukkan bagaimana sebuah sistem dibagi
ke dalam porsi-porsi yang lebih kecil dan untuk menyoroti aliran data
pada bagian-bagian tersebut. Context-level DFD ini kemudian dipecah
untuk menunjukkan detail pada sistem yang sedang dibuat. Pembuatan
sebuah DFD membantu dalam mengidentifikasi data transaksi dalam
model data.
22
(http://en.wikipedia.org/wiki/Data_flow_diagram)
2.2.12 Notasi-Notasi DFD
Ada beberapa notasi yang berbeda dalam mendesain DFD.
Notasi-notasi tersebut antara lain:
Gambar 2.2 Notasi-notasi DFD
(http://en.wikipedia.org/wiki/File:Data-flow-diagram-notation.svg)
23
2.2.13 Tingkatan DFD
Tingkatan-tingkatan DFD antara lain:
1. Context Level
Tingkatan ini menunjukkan konteks keseluruhan dari sistem dan
lingkungan proses tersebut dan juga menunjukkan keseluruhan
sistem sebagai sebuah proses. Pada tingkatan ini biasanya tidak
menunjukkan penyimpanan data, kecuali penyimpanan data
tersebut dimiliki oleh sistem eksternal.
Gambar 2.3 Context Level Data Flow Diagram
2. Level 0
Tingkatan
ini
menunjukkan
semua
proses
penomoran,
penyimpanan data, entitas eksternal dan aliran-aliran data. Tujuan
tingkatan ini adalah untuk menunjukkan proses-proses tingkatan
level utama dari sistem dan antar relasi. Sebuah proses model
hanya mempunyai satu diagram level 0. Sebuah diagram level 0
24
harus diseimbangkan dengan context level diagram, contohnya
ada beberapa eksternal entitas dan aliran data yang sama antara
level 0 diagram dan context level diagram. Eksternal entitas dan
aliran data dapat dipecah lebih detail dalam level 0.
Gambar 2.4 Level 0 Data Flow Diagram untuk sistem yang sama
(http://en.wikipedia.org/wiki/Data_flow_diagram)
25
2.2.14
State Transition Diagram(STD)
Menurut Whitten (2004, p673), State Transition Diagram
digunakan untuk menggambarkan urutan dan variasi dari layar yang bisa
ditampilkan ketika pengguna sistem berada pada terminal. Kita dapat
membayangkannya sebagai peta jalan. Setiap layar sebagai analogi dari
setiap kota. Tidak semua jalan melewati semua kota. Segiempat
digunakan untuk mewakili tampilan layar. Panah mewakili aliran kendali
dan kejadian pemicu yang menyebabkan layar menjadi aktif atau
mendapatkan fokus. Segiempat hanya menerangkan apa yang dapat
muncul selama interaksi. Arah panah menandakan urutan dimana layarlayar ini ditampilkan. Setiap panah, masing-masing dengan labelnya
sendiri, digambar dengan arahnya masing-masing karena tindakan
berbeda memicu aliran kendali dari dan kepada sebuah layar yang ada.
2.3
Hypertext Preprocessor (PHP)
PHP
digunakan
sebagai
bahasa
server-side
scripting
dalam
pengembangan Web yang disisipkan dalam dokumen HTML. Penggunaan PHP
memungkinkan Web dapat dibuat dinamis sehingga pemeliharaan situs web
tersebut menjadi lebih mudah dan efisien. PHP merupakan software OpenSource yang disebarkan dan dilisensikan secara gratis serta dapat di-download
secara bebas dari situs resminya (www.php.net).
26
2.4
Perancangan Basis Data
2.4.1
Daur Hidup Basis Data
Database Planning
System Definition
Requirement collection
and analysis
Conceptual database
design
Application design
DBM selection
(optional)
Logical database design
Physical database
design
Implementation
Prototyping (optional)
Data conversion and
loading
Testing
Operational
maintenance
Gambar 2.5 Daur Hidup Basis Data
27
A. Perencanaan Basis Data (Database Planning)
Perencanaan basis data adalah aktivitas yang memungkinkan
tahapan terealisasinya aplikasai basis data dengan seefisien dan seefektif
mungkin.
(Connolly dan Begg, 2005, p273)
Perencanaan basis data harus terintegrasi dengan keseluruhan
strategi system informasi dari organisasi, dimana 3 hal utama yang
berkaitan dengan strategi informasi tersebut adalah:
a. Identifikasi rencana dan tujuan organisasi termasuk mengenai sistem
informasi yang dibutuhkan
b. Evaluasi sistem informasi yang ada untuk menentukan kelebihan dan
kekurangan yang ada.
c. Penafsiran
kesempatan
teknologi
informasi
yang
mungkin
memberikan keuntungan kompetitif.
(Connolly dan Begg, 2005, p273)
B. Definisi Sistem (system definition)
Definisi sistem menjelaskan batasan dan ruang lungkup aplikasi
basis data dan user view utama.
(Connolly dan Begg, 2005, p274).
28
User views mendefinisikan apa saja yang dibutuhkan sebuah
aplikasi basis data mulai dari perspektif (seperti manager atau supervisor)
sampai lingkungan aplikasi (seperti personal, kontrol stok)
(Connolly dan Begg, 2005, p275).
Identifikasi user views merupakan aspek yang penting dalam
mengembangkan aplikasi basis data karena hal tersebut membantuk
untuk memastikan bahwa tidak ada pengguna utama dari basis data yang
terlupakan ketika mengembangkan kebutuhan aplikasi basis data yang
baru. User views juga membantu terutama dalam pengembangan aplikasi
basis data yang kompleks dengan memungkinkan kebutuhan dipecahpecah menjadi bagian-bagian yang lebih dapat diatur.
C. Pengumpulan dan Analisa Kebutuhan (Requirements Collection and
Analysis)
Pada
tahapan
ini
dilakukan
proses
mengumpulkan
dan
menganalisis informasi tentang bagian dari organisasi yang akan
didukung oleh aplikasi basis data dan menggunakan informasi ini untuk
mengidentifikasi kebutuhan user pada sistem yang baru. Teknik yang
digunakan
disebut
dengan
fact-finding
techniques.
Informasi
dikumpulkan untuk masing-masing user view utama meliputi:
a. Deskripsi data yang digunakan atau dihasilkan.
b. Detail mengenai bagaimana data digunakan atau dihasilkan.
c. Beberapa kebutuhan tambahan untuk aplikasi basis data yang baru.
29
Selain itu, perlu juga memutuskan bagaimana mengatur aplikasi
basis data dengan lebih dari satu user view. Terdapat tiga pendekatan
utama untuk mengatur kebutuhan dari aplikasi basis data user view yang
banyak, yaitu sebagai berikut:
a. Pendekatan terpusat (centralized approach)
b. Pendekatan integrasi sudut pandang (view integration approach)
c. Kombinasi dari centralized approach dan view integration approach.
D. Perancangan Basis Data
Perancangan basis data adalah proses membuat rancangan basis
data yang akan mendukung operasi dan sasaran layanan yang ingin
dicapai oleh organisasi.
a. Pendekatan untuk Mendesain Basis Data
Ada
beberapa
pendekatan
yang
dapat
merancang basis data, yaitu sebagai berikut:
a. Pendekatan bottom-up
b. Pendekatan top-down
c. Pendekatan inside-out
d. Pendekatan mixed strategy
30
digunakan
dalam
b. Data Modelling
Ada dua tujuan dari data modelling yaitu membantu dalam
memahami
pengertian
(semantics)
data
dan
memfasilitasi
komunikasi mengenai kebutuhan informasi. Model data dapat
digunakan untuk menyampaikan pemahaman perancang terhadap
kebutuhan informasi dari organisasi. Model data yang paling umum
digunakan dalam database design adalah konsep model EntityRelationship (ER).
c. Fase-Fase dari Desain Basis Data
Perancangan basis data terbentuk dari tiga fase utama, yaitu
sebagai berikut:
1) Conceptual Database Design
2) Logical Database Design
3) Physical Database Design
E. Pemilihan DBMS
Pemilihan DBMS adalah proses memilih DBMS yang cocok
untuk mendukung aplikasi basis data. Langkah-langkah utama yang
digunakan dalam memilih DBMS, yaitu sebagai berikut:
a. Mendefinisikan cakupan tugas yang akan dilakukan.
b. Membandingkan dua atau tiga produk DBMS.
c. Mengevaluasi produk.
31
d. Merekomendasikan pemilihan sistem basis data dan membuat laporan
dari evaluasi produk DBMS.
F. Perancangan Aplikasi
Perancangan aplikasi adalah proses merancang antar muka
pengguna (user interface) dan program aplikasi yang menggunakan dan
melakukan proses terhadap basis data.
G. Prototyping
Prototyping adalah proses membuat model kerja dari aplikasi
basis data. Suatu prototype adalah model kerja yang biasanya tidak
memiliki semua fitur yang dibutuhkan atau fungsi yang diinginkan pada
sistem akhir.
(Connolly dan Begg, 2002, p291)
Tujuan utama dari mengembangkan prototype aplikasi basis data
adalah memungkinkan pengguna untuk mengidentifikasi fitur-fitur dari
sistem yang dirasakan sudah baik atau masih ada yang kurang.
Selain itu, pengguna dapat memberikan saran perbaikan atau
bahkan fitur-fitur baru pada aplikasi basis data sehingga perancang dapat
mengevaluasi kembali. Ada dua jenis strategi prototyping yang
digunakan sekarang ini, yaitu sebagai berikut:
32
a. Requirement prototyping
Strategi ini menggunakan prototype untuk menentukan kebutuhan
dari aplikasi basis data yang diusulkan dan ketika kebutuhan tersebut
sudah diketahui semua, maka prototype dibuang.
b. Evolutionary prototyping
Strategi ini digunakan untuk tujuan yang sama juga, tetapi
prototype tersebut tidak dibuang melainkan digunakan untuk
perkembangan lebih lanjut.
Beberapa analis dan designer lebih memilih pendekatan
prototyping. Pendekatan prototyping adalah proses iteratif yang
melibatkan hubungan kerja yang dekat antara designer dan pengguna.
(Whitten, 2004, p450)
Pendekatan ini memiliki beberapa keuntungan seperti di bawah ini:
a. Prototyping menyarankan dan meminta partisipasi aktif dari
pengguna akhir.
b. Iterasi dan perubahan adalah sebuah konsekuensi alami dari
pengembangan sistem, di mana pengguna akhir cenderung
berubah pikiran.
c. Prototyping
dapat
meningkatkan
kreativitas
karena
memungkinkan umpan balik pengguna yang lebih cepat, yang
dapat mengarahkan kepada solusi yang lebih baik.
33
d. Prototyping mempercepat beberapa fase dari siklus hidup, bahkan
melewati
programmer.
Pada
kenyataannya,
prototyping
mengkonsolidasikan bagian dari fase-fase yang biasanya terjadi
setelah fase lain terjadi.
Masing-masing sistem prototype ditinjau ulang oleh pengguna
akhir dan manajemen, yaitu pihak yang membuat rekomendasi tentang
persyaratan, metode, dan format. Prototype tersebut kemudian dikoreksi,
ditingkatkan, atau diseleksi untuk mencerminkan persyaratan baru.
Teknologi prototyping membuat beberapa perbaikan dalam cara yang
relatif langsung. Revisi dan peninjauan ulang berlanjut sampai prototype
diterima. Pada saat itu, pengguna akhir akan menerima baik persyaratan
maupun desain yang memenuhi persyaratan tersebut.
H. Implementasi
Implementasi merupakan eksekusi dari perancangan sistem yang
telah dibuat. Implementasi basis data dilakukan dengan menggunakan
Data Definition Language (DDL) dari DBMS yang dipilih atau
Graphical User Interface (GUI).
I. Konversi Data dan Loading
Konversi data dan loading adalah memindahkan data yang ada ke
dalam basis data yang baru dan mengubah aplikasi yang ada untuk
34
beroperasi pada basis data yang baru. Tahap ini diperlukan ketika sistem
basis data yang baru akan menggantikan sistem basis data yang lama.
J. Testing
Testing merupakan proses mengeksekusi program aplikasi dengan
tujuan untuk menemukan error (kesalahan).
K. Pemeliharaan Operasional
Pemeliharaan operasional merupakan proses mengawasi dan
memelihara sistem setelah instalasi. Tahap ini meliputi aktivitas-aktivitas
sebagai berikut:
a. Mengawasi performa dari sistem.
b. Memelihara dan mengembangkan aplikasi basis data (optional).
2.4.2
Metodologi Perancangan Basis Data
A. Conceptual Database Design
Conceptual Database Design adalah proses membangun sebuah
model informasi yang lepas dari semua pertimbangan secara fisikal, yang
akan digunakan dalam sebuah sistem organisasi.
Langkah pertama adalah membangun model data konseptual local
untuk setiap view, mencakup:
a. Mengidentifikasi tipe entitas, bertujuan untuk mengidentifikasi tipe
entitas
utama
yang
dibutuhkan
oleh
pengguna.
Untuk
mengidentifikasi tipe entitas dapat dilakukan dengan menelusuri kata
benda, objek yang ada dalam prosedur sistem yang berjalan. Setelah
35
tipe entitas diidentifikasi, dilakukan pemberian nama yang berarti dan
jelas kepada pengguna dan mencatat nama dan deskripsi entitas dalam
kamus data. Apabila memungkinkan, mendokumentasikan jumlah
occurrences yang diharapkan dari tiap entitas. Jika entitas dikenal
dengan nama berbeda, nama tersebut menunjuk kepada sinonim atau
alias, yang dicatat dalam kamus data.
b. Mengidentifikasi tipe relasi, bertujuan untuk mengidentifikasi relasi
yang penting di antara tipe entitas yang telah diidentifikasi. Untuk
mengidentifikasikan tipe entitas dapat dilakukan dengan menelusuri
kata kerja yang ada dalam prosedur sistem yang berjalan.
c. Mengidentifikasi dan menggabungkan atribut dan entitas atau relasi,
bertujuan untuk menggabungkan atribut dan tipe entitas atau relasi
yang sesuai yaitu dengan mengidentifikasi simple/composite attribute,
single/multi-value attribute dan derived attribute. Setelah atribut
diidentifikasi, dilakukan pemberian nama yang berarti kepada
pengguna, kemudian mencatat beberapa informasi untuk tiap atribut.
d. Menentukan domain atribut, bertujuan untuk menentukan domain
atribut dalam model data konseptual.
e. Menentukan atribut primary key dan candidate key, bertujuan untuk
mengidentifikasi candidate key untuk setiap tipe entitas dan bisa ada
lebih dari satu candidate key, perlu memilih sebuah primary key.
f. Mempertimbangkan
penggunaan
enhanced
modeling
concept
(optional), bertujuan untuk mempertimbangkan penggunaan dari
36
enhanced modeling concept, seperti specialization, generalization,
dan composition.
g. Mengecek model redundansi, bertujuan untuk mengecek adanya
redundansi dalam model data dan menghilangkannya jika ada.
h. Memvalidasi model konseptual lokal terhadap user, bertujuan untuk
memastikan bahwa model konseptual local mendukung transaksi
yang dibutuhkan oleh view.
i. Mengecek model data konseptual terhadap pengguna, bertujuan
untuke mengecek model data konseptual dengan pengguna untuk
meyakinkan bahwa model tersebut adalah representasi yang benar
dari view.
Langkah kedua adalah membangun dan memvalidasi data model
logikal local untuk setiap view, mencakup:
a. Menghilangkan fitur yang tidak kompatibel dengan model relasional
(optional), bertujuan untuk memperbaiki model data konseptual lokal
dengan menghilangkan fitur yang tidak kompatibel dengan model
relasional.
b. Menentukan relasi untuk model data logikal lokal, bertujuan untuk
menciptakan relasi untuk model data logikal lokal yang mewakili
entitas, relationship, dan atribut yang sudah diidentifikasi.
c. Memvalidasi relasi dengan menggunakan normalisasi, bertujuan
untuk memvalidasi relasi dalam model data logikal lokal dengan
menggunakan teknik normalisasi.
37
d. Memvalidasi relasi terhadap transaksi user, bertujuan untuk
memastikan bahwa relasi dalam model data logikal lokal mendukung
transaksi yang dibutuhkan view, juga bahwa tidak ada error dalam
relasi yang telah dibuat.
e. Menentukan integrity constraint, bertujuan untuk menetapkan
integrity constraint yang diberikan dalam view.
f. Mengecek model data logikal local dengan user, bertujuan untuk
memastikan model data logikal lokal dan dokumen pendukung yang
menjelaskan model data adalah representasi yang benar dari view.
Apabila pengguna merasa tidak puas dengan model tersebut maka
dilakukan pengulangan kembali langkah-langkah sebelumnya jika
diperlukan.
B. Logical Database Design
Langkah ketiga adalah membangun dan memvalidasi model data
logikal global, mencakup:
a. Menggabungkan model data logikal lokal menjadi model global,
bertujuan untuk menggabungkan individu-individu model data logikal
local ke dalam sebuah model data logikal global.
b. Memvalidasi model data logikal global, bertujuan untuk memvalidasi
relasi yang dihasilkan dari model data logikal global dengan teknik
normalisasi dan memastikan bahwa model data tersebut mendukung
transaksi yang dibutuhkan.
38
c. Mengecek perkembangan yang akan datang, bertujuan untuk
menentukan bila ada perubahan signifikan di masa yang akan datang
dan untuk memeriksa bisa model data logikal global dapat
berakomodasi dengan perubahan tersebut.
d. Mengecek ulang model data logikal global dengan user, bertujuan
untuk memastikan model data logikal global adalah representasi yang
benar dari view.
C. Physical Database Design
Langkah keempat adalah menerjemahkan model data logikal
global untuk target DBMS, mencakup:
a. Mendesain relasi dasar, bertujuan untuk memutuskan bagaimana
menggambarkan relasi dasar yang diidentifikasi dalam model data
logikal global pada target DBMS.
b. Mendesain
representasi
dari
derived
data,
bertujuan
untuk
memutuskan bagaimana merepresentasikan derived data yang ada
dalam model data logikal global pada target DBMS.
c. Mendesain
enterprise
constraint,
bertujuan
untuk
mendesain
enterprise constraint untuk target DBMS.
Langkah kelima adalah mendesain representasi fisikal, mencakup:
a. Menganalisis transaksi, bertujuan untuk memahami fungsionalitas
dari transaksi yang akan dijalankan pada basis data dan menganalisis
transaksi yang penting.
39
b. Memilih organisasi file, bertujuan untuk menentukan organisasi file
yang efisien untuk setiap relasi dasar. Dalam banyak kasus yang ada,
suatu relasional DBMS akan memberikan sedikit bahkan tanpa
pilihan dalam memilih organisasi file, walaupun beberapa akan
mempunyai indeks yang spesifik. Jika DBMS yang dituju tidak
memperbolehkannya adanya pemilihan organisasi file, maka langkah
ini dapat dihilangkan.
c. Memilih indeks, bertujuan untuk menentukan bilamana penambahan
indeks dapat meningkatkan tampilan dari sistem.
d. Memperkirakan kebutuhan disk, bertujuan untuk memperkirakan
jumlah ruang disk yang diperlukan oleh basis data. Perkirakan
kebutuhan disk sangat bergantung pada DBMS yang dituju dan
hardware yang digunakan untuk mendukung basis data. Secara
umum, perkiraan dilakukan berdasarkan ukuran tiap tuple dan jumlah
tuples dalam relasi.
Langkah keenam adalah mendesain user view, dengan tujuan
mendesain user view yang telah diidentifikasi selama tahap pengumpulan
dan analisis dari aplikasi daur hidup basis data.
Langkah ketujuh adalah mendesain mekanisme keamanan, dengan
tujuan mendesain kebutuhan keamanan untuk basis data yang diinginkan
user. Beberapa sistem menawarkan fasilitas keamanan yang berbeda dari
sistem yang lainnya. Relasional DBMS biasanya menyediakan dua
macam keamanan basis data antara lain:
40
a. Keamanan sistem
Keamanan sistem menutupi pengaksesan dan penggunaan basis
data pada tingkat sistem, seperti autentifikasi user name dan
password.
b. Keamanan data
Keamanan basis data adalah suatu mekanisme yang memproteksi
basis data dari suatu kejadian yang tidak diinginkan, baik secara
disengaja maupun tidak.
Langkah kedelapan adalah mempertimbangkan penggunaan
redundansi yang terkontrol. Langkah ini bertujuan untuk menentukan
apakah pengenalan pengontrolan redundansi dengan mengendurkan
aturan normalisasi dapat meningkatkan unjuk kerja sistem.
Langkah kesembilan adalah mengawasi dan mengurus sistem
operasional. Langkah ini bertujuan untuk memantau operasional sistem
dan meningkatkan unjuk kerja sistem untuk memperbaiki keputusan
perancangan yang tidak sesuai atau menggambarkan kebutuhan
pengguna.
Hasil akhir perancangan fisikal basis data adalah suatu proses
yang mendeskripsikan suatu implementasi dari suatu basis data pada
media penyimpanan. Hal ini mendeskripsikan suatu relasional dan
struktur penyimpanan dan metodologi pengaksesan data oleh user yang
efisien, selama batasan integritas dan pengukuran keamanan.
41
Download