BAB 2 LANDASAN TEORI 2.1 Analisis dan Perancangan 2.1.1 Pengertian...
Transcript of BAB 2 LANDASAN TEORI 2.1 Analisis dan Perancangan 2.1.1 Pengertian...
8
BAB 2
LANDASAN TEORI
2.1 Analisis dan Perancangan
2.1.1 Pengertian Analisis
Pengertian analisis sistem adalah penguraian dari suatu sistem
informasi yang utuh ke dalam bagian-bagian komponennya dengan
maksud untuk mengidentifikasikan dan mengevaluasi berbagai
permasalahan, kesempatan dan hambatan yang terjadi dan kebutuhan yang
diharapkan sehingga dapat diusulkan suatu perbaikan.
Beberapa penulis lain yang ikut memperkuat pernyataan diatas yakni
sebagai berikut :
• Menurut McLeod, Raymon, Schell dan George P (2004,p5), analisis
sistem adalah penelitian atas sistem yang telah ada dengan tujuan
merancang sistem yang baru.
• Menurut Laudon (2007,p128), analisis sistem adalah memeriksa
sebuah masalah yang ada yang akan diselesaikan oleh perusahaan
dengan menggunakan sistem informasi. Analisis sistem mencakup
beberapa langkah yang harus dilakukan, yaitu :
1. Menentukan masalah
2. Mengidentifikasi penyebab dari masalah tersebut
3. Menentukan pemecahan masalahnya
9
4. Mengidentifikasikan kebutuhan informasi yang dibutuhkan untuk
memecahkan masalah tersebut.
• Menurut Lonnie D. Bentley dan Jeffrey L. Whitten(2007,p160),
analisis sistem adalah suatu teknik untuk menyelesaikan suatu
masalah yang ada pada suatu system dengan cara membagi masalah
tersebut ke beberapa bagian dengan maksud agar mudah dicari
penyelesaiannya.
2.1.2 Pengertian Perancangan
Pengertian perancangan sistem diawali dengan menentukan segala
keperluan yang akan memenuhi apa yang akan dibutuhkan oleh sistem,
siapa yang mengambil langkah ini dan bagaimana mereka akan
disesuaikan. Umumnya, perancangan bergerak dari input ke output.
Keluaran (output) sistem, yang terdiri dari reports dan file untuk
memuaskan kebutuhan organisasi harus dibatasi dengan jelas.
Hal tersebut dapat diperkuat oleh beberapa penulis lain yang
mengungkapkan bahwa :
• Menurut Lonnie D. Bentley dan Jeffrey L.Whitten (2007,p160),
perancangan sistem adalah suatu teknik menggabungkan kembali bagian-
bagian informasi yang telah dipisahkan oleh analisis sistem.
2.2 Pengantar Database
2.2.1 Pengertian Data
10
Pengertian data adalah fakta-fakta mengenai segala sesuatu yang
dapat diolah untuk menghasilkan suatu informasi yang akan dipakai
dalam melakukan transaksi-transaksi di perusahaan / organisasi. Hal
tersebut dapat diperkuat oleh beberapa penulis lain yang mengungkapkan
bahwa :
• Menurut Connolly and Begg(2010,p19), data adalah komponen yang
paling penting dalam DBMS, berasal dari sudut pandang end-user.
Data bertindak sebagai jembatan antara mesin dan pengguna.
• Menurut Lonnie D. Bentley dan Jeffrey L.Whitten (2007,p518), data
adalah kumpulan dari fakta-fakta yang serupa.
• Menurut James A. O’Brien (2005,p206), data adalah sumber daya
penting organisasi yang perlu dikelola seperti mengelola aset penting
dalam bisnis lainnya.
2.2.2 Pengertian Database
Pengertian database adalah kumpulan data atau koleksi file atau
record yang menyimpan data yang berhubungan dan terstruktur sehingga
mudah untuk disimpan, diperoleh kembali, dimanipulasi dan dapat
memenuhi kebutuhan informasi dari suatu organisasi. Hal tersebut dapat
diperkuat oleh beberapa penulis lain yang mengungkapkan bahwa :
• Menurut Connolly and Begg (2010,p65), Database adalah kumpulan
data yang terhubung satu sama lain secara logical, dan deskripsi dari
11
data tersebut, yang dapat digunakan oleh banyak user, dan dibentuk
untuk dapat menghasilkan informasi yang dibutuhkan oleh organisasi.
• Menurut Lonnie D. Bentley dan Jeffrey L. Whitten(2007,p518),
database adalah kumpulan file yang saling terkait.
• Menurut Gerald V. Post (2005, p12) database adalah kumpulan dari
data yang disimpan dalam format yang telah distandarisasi, dirancang
untuk dibagikan oleh banyak pengguna.
2.2.3 Database Management System
Database Management System (DBMS) adalah suatu sistem
piranti lunak yang menyediakan fasilitas yang memungkinkan pengguna
untuk mendefinisikan, membuat, memelihara, mengendalikan dan
menangani seluruh akses terhadap database. Hal tersebut dapat diperkuat
oleh beberapa penulis lain yang mengungkapkan bahwa :
• Menurut Connolly and Begg (2010,p66), Database Management
System adalah sebuah sistem piranti lunak yang memperbolehkan
pengguna untuk menggambarkan / mendefinisikan, membuat, menjaga
dan mengontrol akses ke database.
• Menurut Lonnie D. Bentley dan Jeffrey L.Whitten (2007,p525),
Database Management System (DBMS) adalah perangkat lunak khusus
yang digunakan untuk membuat, mengontrol dan mengelola sebuah
database.
12
• Menurut Ramakrishnan dan Gehrke (2000, p3) database adalah
koleksi data-data yang terdiri atas entiti dan relasi yang saling
berhubungan satu sama lain.
DBMS juga memberikan fasiltas-fasilitas antara lain :
1. DDL (Data Definiton Language), DDL memberikan fasilitas kepada
user untuk mendefinisikan tipe data dan strukturnya serta batasan
aturan mengenai data yang bisa disimpan ke dalam basis data
tersebut.
2. DML (Data Manipulation Language), DML memberikan fasilitas
kepada user untuk menambah, mengedit, menghapus serta
memperoleh kembali data.
3. Query Language, Query Language memberikan fasilitas kepada user
untuk mengakses data. Structured Query Language (SQL)
merupakan bahasa Query yang paling diakui dan merupakan
standard bagi DBMS.
4. Pengendalian Akses ke dalam basis data, meliputi :
• Keamanan Sistem : mencegah user yang tidak memiliki hak
akses untuk memasuki basis data.
• Integritas Sistem : menjaga konsistensi data di dalam basis data.
• Pengendalian Share data.
• Backup dan Recovery System : Mengendalikan data kedalam
kondisi semula apabila terjadi kegagalan dalam perangkat keras
ataupun perangkat lunak.
13
• Terdapat catalog yang dapat diakses user yang berisi deskripsi
data dalam basis data.
5. Mekanisme View, berfungsi untuk menampilkan data yang hanya
diinginkan dan diperlukan oleh user.
2.2.4 Metodologi siklus hidup aplikasi database (Database Application
Lifecycle)
Tahapan database application lifecycle, dapat dilihat dari gambar berikut
ini :
Gambar 2.1. Tahapan Database Lifecycle
(Connoly and Begg ,2010,p313-336)
14
1. Perencanaan Basis Data (Database planning)
Perencanaan Basis Data (Database planning) adalah aktivitas
manajemen yang memperkenankan tahapan database application
lifecycle direlasikan seefektif dan seefisien mungkin. Perencanaan
basis data harus diintegrasikan dengan semua strategi sistem
informasi organisasi.
2. Definisi System (System Definition)
Pada tahap ini, dijelaskan batasan dan cakupan dari aplikasi basis data
dan sudut pandang user (User View) yang utama. User View
mendefinisikan apa yang diwajibkan dari suatu aplikasi basis data
dari perspektif aturan kerja khusus (seperti manager atau supervisor)
atau area perusahaan (seperti marketing, personel atau stok control).
Aplikasi basis data dapat memiliki satu atau lebih sudut pandang
pengguna. Identifikasi user view membantu memastikan bahwa tidak
ada user utama dari suatu basis data yang terlewatkan ketika
pembuatan aplikasi basis data yang baru dibutuhkan. User view juga
membantu dalam pengembangan aplikasi basis data yang kompleks
sehingga memungkinkan permintaan-permintaan dipecah menjadi
bagian-bagian yang lebih sederhana.
15
3. Analisis dan pengumpulan kebutuhan (Requirement Collection and
Analysis)
Analisis dan pengumpulan kebutuhan (requirement collection and
analysis) adalah proses pengumpulan dan menganalisis informasi
tentang bagian dari organisasi yang akan didukung oleh aplikasi basis
data dan menggunakan informasi untuk mengidentifikasi kebutuhan
pengguna dalam sistem yang baru.
4. Perancangan Basis data (Database Design)
Perancangan basis data adalah proses membuat rancangan basis data
yang akan mendukung misi dan sasaran perusahaan untuk sistem
basis data yang dibutuhkan. Ada dua pendekatan utama pada
perancangan basis data yaitu :
• Bottom-up approach
Pendekatan ini dimulai dari tingkat paling dasar yaitu atribut
(property dari entitas dan hubungan relasional) dimana melalui
analisis gabungan antara atribut-atribut, dikelompokkan ke dalam
relasi-relasi yang merepresentasikan tipe-tipe entitas dan
hubungan entitas. Pendekatan ini biasanya digunakan ketika akan
basis data yang sederhana dengan atribut dalam jumlah yang
sedikit.
16
• Top-down approach
Pendekatan ini dimulai dari pengembangan model data yang
terdiri dari beberapa hubungan relasional dan entitas tingkat
tinggi. Pendekatan ini biasanya digunakan ketika akan
merancang basis data yang kompleks dengan jumlah atribut yang
banyak.
Perancangan basis data dibagi menjadi tiga tahapan utama, yaitu :
• Conceptual database design (perancangan basis data konseptual)
Proses membangun suatu model data dari informasi yang
diperoleh dari sebuah perusahaan atau organisasi, tetapi bebas
dari semua pertimbangan fisik.
• Logical database design (perancangan basis data logikal)
Proses membangun suatu model dari informasi yang diperoleh
dari sebuah organisasi berdasarkan model data khusus, tetapi
bebas dari hal yang berkaitan dengan DBMS dan pertimbangan
fisik lainnya.
• Physical database design (perancangan basis data fisikal)
Proses pembuatan deskripsi dari suatu implementasi basis data
pada penyimpanan sekunder (secondary storage), yang
menggambarkan struktur penyimpanan dan metode akses yang
akan digunakan untuk mencapai akses yg efisien ke data. Dapat
dikatakan juga, desain fisikal merupakan suatu cara pembuatan
menuju sistem DBMS tertentu.
17
5. Pemilihan DBMS (DBMS Selection) bersifat optional
Pemilihan DBMS (DBMS Selection) adalah proses memilih DBMS
yang sesuai untuk mendukung aplikasi basis data.
Tujuan dari pemilihan DBMS adalah untuk mencukupi kebutuhan
sekarang maupun kebutuhan masa yang akan dating pada perusahaan,
membuat keseimbangan biaya termasuk pembelian produk aplikasi
basis data.
6. Perancangan Aplikasi (Application Design)
Perancangan aplikasi (application design) adalah perancangan
antarmuka pengguna dan program aplikasi yang menggunakan dan
memproses basis data.
Perancangan basis data dan Perancangan aplikasi adalah aktivitas
yang dilakukan bersamaan dalam database application lifecycle.
Desain basis data dan aplikasi merupakan aktivitas yang mencakup
dua aspek penting yaitu :
1. Perancangan transaksi (Transaction design)
Transaksi merupakan satu atau serangkaian transaksi yang
dilakukan oleh pengguna atau program aplikasi yang
mengakses atau merubah isi dari basis data.
Tujuan dari perancangan transaksi adalah menetapkan dan
mendokumentasikan karakteristik tingkat tinggi dan transaksi
yang dibutuhkan pada basis data
Terdapat tiga jenis transaksi antara lain sebagai berikut :
18
1. Retrieval transaction
Digunakan untuk mendapatkan kembali data untuk
ditampilkan dalam laporan
2. Update transaction
Digunakan untuk menambah data, menghapus data lama
atau mengubah data yang sudah ada dalam basis data.
3. Mixed transaction
Merupakan kombinasi antra Retrieval transaction dan
Update transaction
2. Perancangan antarmuka (Userinterface design)
Beberapa aturan pokok dalam perancangan antarmuka
(userinterface design) yaitu :
a. Diusahakan pemberian nama suatu form yang jelas
menerangkan kegunaan dari suatu form atau laporan.
b. Pemberian instruksi yang dapat dimengerti
c. Pengelompokkan secara logikal dan pengurutan field
d. Tampilan form / report secara visual
e. Nama field yang familiar
f. Pemakaian istilah dan singkatan yang konsisten
g. Penggunaan warna secara konsisten
h. Ruang yang tersedia dan cakupan untuk field pemasukkan
data
i. Perpindahan kursor yang tepat
19
j. Perbaikan kesalahan untuk karakter individual maupun
untuk field secara keseluruhan
k. Pesan kesalahan untuk nilai yang tidak dapat diterima
l. Field pilihan ditandai dengan jelas
m. Pesan penjelasan untuk field
n. Penanda akhir yang menjadi indikator bahwa suatu proses
telah selesai.
7. Prototyping (Optional)
Prototyping adalah membuat model kerja dari aplikasi basis data.
Model kerja memungkinkan perancang atau pengguna untuk
mengevaluasi hasil akhir sistem, baik dari segi sistem maupun fungsi
yang dimiliki sistem.
Tujuan utama dari pengembangan protoytype adalah untuk
memungkinkan pengguna memakai prototype tersebut dalam
mengidentifikasi kelebihan atau kelemahan sistem dan
memungkinkan perancang untuk memperbaiki atau melengkapi fitur-
fitur aplikasi basis data yang baru.
8. Implementasi (Implementation)
Implementation (implementasi) adalah realisasi fisik dari basis data
dan rancangan aplikasi.
20
Implementasi basis data dapat dicapai dengan menggunakan Data
Definiton Language(DDL) dari DBMS yang dipilih atau graphical
user interface(GUI).
9. Konversi Data dan Loading (Data Conversion and Loading)
Data Conversion and Loading adalah memindahkan data yang sudah
ada ke dalam basis data yang baru dan mengubah aplikasi yang sudah
ada untuk dijalankan pada basis data yang baru.
Tahapan ini diperlukan ketika sistem basis data yang baru akan
menggantikan sistem basis data yang lama. Pada masa sekarang,
DBMS umumnya memiliki fungsi untuk memasukkan file ke dalam
basis data yang baru. Fungsi ini memungkinkan pengembang untuk
mengkonversi dan menggunakan program aplikasi yang lama dalam
sistem yang baru.
10. Testing
Testing adalah suatu proses mengeksekusi program aplikasi dengan
tujuan menemukan kesalahan.
Beberapa keuntungan melakukan testing antara lain :
a. Menemukan eror dalam program aplikasi, dan mungkin juga eror
dalam struktur basis data
b. Testing mendemonstrasikan apakah basis data dan program
aplikasi terlihat berjalan seperti yang diharapkan dan sesuai dengan
spesifikasi yang diinginkan.
21
11. Pemeliharaan Operasional (Operational Maintenance)
Operational Maintenance adalah proses pemantauan dan
pemeliharaan sistem setelah instalasi dilakukan.
Proses tersebut meliputi beberapa aktivitas yakni :
a. Memonitor kinerja sistem
b. Memelihara dan meng-upgrade aplikasi basis data jika dibutuhkan
c. Penggabungan kebutuhan baru ke dalam aplikasi basis data.
2.2.5 Normalisasi
Menurut Connoly dan Begg (2010, p416) normalisasi adalah
sebuah teknik untuk menghasilkan sejumlah relasi dengan sifat-sifat yang
diinginkan, memenuhi kebutuhan data pada perusahaan.
Tujuan utama dalam pengembangan model data logical pada
sistem database relasional adalah menciptakan sebuah representasi yang
akurat dari suatu data, relasi antar data dan batasan-batasannya. Untuk
mencapai tujuan ini, maka harus ditetapkan sekumpulan relasi.
Empat bentuk normal yang biasa digunakan yaitu, first normal
form (1NF), second normal form (2NF), third normal form (3NF), dan
Boyce-Codd normal form (BCNF). Konsep utamanya terkait dengan
functional dependencies, dimana menjelaskan hubungan antar atribut
yang ada. Sebuah relasi dapat dinormalisasikan kedalam bentuk tertentu
untuk mengatasi kemungkinan terjadinya pengulangan dari update yang
tidak baik.
22
Aturan Normalisasi:
1. Unnormalized form (UNF)
Proses awal dari normalisasi adalah dengan membuat sebuah
unnormalized form, yaitu sebuah tabel yang berisi satu atau lebih
kelompok yang berulang. Unnormalized form dibuat dengan cara
memindahkan data dari sumber kedalam tabel dengan baris dan
kolom.
2. First normal form (1NF)
Merupakan sebuah relasi dimana setiap irisan dari masing-masing
baris dan kolom berisi satu dan hanya satu nilai. Untuk merubah
tabel dari UNF ke 1NF, dilakukan dengan cara menunjuk satu atau
sekumpulan atribut sebagai key untuk tabel unnormalized. Lalu
dilakukan identifikasi dan menghilangkan kelompok yang berulang
di dalam tabel. Ada dua pendekatan untuk menghilangkan kelompok
yang berulang, yaitu :
a. Pada pendekatan yang pertama, kelompok yang berulang
dihilangkan dengan cara memasukkan data yang sesuai kedalam
kolom yang kosong pada baris yang berisikan data yang
berulang.
b. Pada pendekatan kedua, kelompok yang berulang dihilangkan
dengan cara menggantikan data yang ada dengan salinan dari
kunci atribut yang sesungguhnya ke dalam relasi terpisah.
23
3. Second normal form (2NF)
Second normal form didasarkan pada konsep full functional
dependency, yaitu jika A dan B merupakan atribut, B dikatakan fully
functional dependency terhadap A jika B functionally dependent
terhadap A, tetapi tidak ada proper subset dari A.
2NF sendiri memiliki pengertian sebuah relasi dalam 1NF dan
setiap atribut non-primary-key bersifat fully functionally dependent
terhadap primary key.
Proses merubah tabel 1NF ke 2NF yaitu dengan cara, pertama-
tama identifikasi primary key untuk relasi 1NF. Kemudian
identifikasi functional dependencies dalam relasi. Jika terdapat
partial dependencies terhadap primary key, maka hapus dengan
menempatkannya dalam relasi yang baru bersama dengan salinan
determinannya.
4. Third normal form (3NF)
Berdasarkan pada konsep transitive dependency, yaitu suatu
kondisi dimana A, B dan C merupakan atribut dari sebuah relasi,
maka jika A →B dan B →C, maka C transitively dependent pada A
melalui B. (Jika A tidak functionally dependent pada B atau C).
3NF sendiri memiliki pengertian sebuah relasi dalam 1NF dan
2NF, dan dimana tidak ada atribut non-primary-key yang bersifat
transitively dependent terhadap primary key.
Untuk merubah dari 2NF ke 3NF dilakukan dengan
mengidentifikasi primary key dalam relasi 2NF. Kemudian
24
mengidentifikasi functional dependencies dalam relasi. Jika terdapat
transitive dependencies terhadap primary key, hapus dengan
menempatkannya dalam relasi yang baru bersama dengan salinan
determinannya.
5. Boyce-Codd normal form (BCNF)
Boyce-Codd normal form didasarkan pada functional
dependencies yang dimasukkan ke dalam hitungan seluruh candidate
key dalam suatu relasi. Namun, BCNF juga memiliki batasan
tambahan dibandingkan dengan definisi umum dari 3NF.
Sebuah relasi dikatakan BCNF, jika dan hanya jika, setiap
determinan adalah candidate key.
Perbedaan antara 3NF dan BCNF yaitu untuk functional
dependency A → B, 3NF memungkinkan dependency ini dalam
suatu relasi jika B adalah atribut primary-key dan A bukan
merupakan candidate key. Sedangkan BCNF menetapkan dengan
jelas bahwa untuk dependency ini agar ditetapkan dalam relasi maka
A harus merupakan candidate key.
Setiap relasi dalam BCNF juga berada dalam 3NF. Namun, relasi
yang berada di 3NF belum tentu berada di dalam BCNF.
2.2.6 Entity-Relationship Modelling
2.2.6.1 Entity types
Menurut Connoly dan Begg (2010, p372) entity types
adalah kumpulan dari objek-objek dengan sifat (property) yang
25
sama, yang di identifikasi oleh perusahaan mempunyai
eksistensi yang independen.
Entity occurrence adalah sebuah objek yang bisa
diidentifikasi secara unik dari sebuah entity type.
2.2.6.2 Relationship types
Menurut Connolly and Begg(2010,p374), relationship types
adalah sekumpulan hubungan antara satu atau lebih entity
types yang berpartisipasi. Setiap relationship type diberikan
nama yang mendeskripsikan fungsinya. Untuk relationship
type juga dikenal dengan relationship occurrence.
Gambar 2.2. Relationship types
2.2.6.3 Attribute types
Menurut Connolly(2010,p379), Attribute adalah sifat-sifat
(property) dari sebuah entitas atau relation type.. Setiap
attribute diperbolehkan untuk memiliki nilai yang disebut
26
dengan domain. Attribute domains adalah kumpulan dari nilai-
nilai yang diperbolehkan untuk satu atau lebih attribute.
Ada beberapa jenis attribute antara lain :
• 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 entity jalan, entity kode_pos dan entity
kota.
• 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. Contoh dari single-valued attribute
adalah Nim, nama_mhs, tanggal_lahir dan lain-lain.
Sedangkan untuk multi-valued attribute adalah
hobi,jam_kerja dan lain-lain.
27
• Derived attribute
Derived attribute adalah attribute yang nilai-nilainya
diperoleh dari hasil perhitungan atau dapat diturunkan
dari attribute lain yang berhubungan. Contoh adalah
attribute umur pada entity mahasiswa dimana attribute
tersebut diturunkan dari attribute tanggal_lahir dan
tanggal_hari_ini.
2.2.6.4 Keys
Berikut adalah jenis-jenis key :
1. Super key, atribut unik untuk mengidentifikasi baris.
2. Candidate key, atribut unik untuk mengidentifikasi
tabel. Jumlah minimal dari atribut yang
mengidentifikasi setiap kejadian di dalam entity type
secara unik.
3. Primary key, atribut unik untuk mengidentifikasi setiap
baris dalam tabel. Candidate key yang terpilih untuk
mengidentifikasi setiap kejadian dalam entity type akan
disebut sebagai primary key.
4. Alternate key, candidate key yang tidak terpilih menjadi
primary key.
5. Composite key, candidate key yang terdiri dari dua atau
lebih atribut.
28
6. Foreign key, atribut sebuah tabel yang menggabungkan
diri ke tabel lain.
2.2.6.5 Kuat dan Lemahnya Entity Type (Strong and Weak Entity
Types)
Menurut Connolly and Begg(2010,p383), Strong Entity Type
adalah entitas yang keberadaannya tidak bergantung pada
beberapa entitas lain. Karakter entity ini adalah bahwa setiap
kejadian entitas teridentifikasi secara unik menggunakan
atribut primary key. Strong Entity Type biasa disebut dengan
parent atau owner dominant
Weak Entity Type adalah entitas yang keberadaannya
tergantung pada beberapa entitas yang lain. Karakter dari
entitas ini adalah bahwa setiap kejadian entitas tidak dapat
teridentifikasi secara unik hanya dengan menggunakan
attribute yang berhubungan dengan entitas tersebut. Weak
Entity Type biasa disebut dengan child, dependent,
subordinate.
2.2.6.6 Structural constraint
Batasan utama pada relationship adalah multiplicity.
Multiplicity adalah jumlah kejadian yang mungkin dari entitas
yang berhubungan dengan kejadian tunggal dari sebuah
hubungan entitas melalui relationships tertentu. Ini merupakan
29
kebijakan bisnis yang dibuat dari perusahaan. Memastikan
bahwa semua batasan perusahaan yang sesuai teridentifikasi
dan tergambar merupakan bagian penting dari permodelan
perusahaan. Beberapa jenis relationships antara lain :
• Hubungan one-to-one (1 : 1)
Setiap relationships menggambarkan hubungan antara
sebuah entity occurance pada entitas yang satu dengan
entity occurance pada entitas lainnya yang ikut serta
dalam relationships tersebut. Hubungan 1:1 dapat terjadi
bila setiap entitas dalam himpunan entitas A berhubungan
paling banyak satu entitas dengan satu entitas pada
himpunan entitas B. Dan sebaliknya, setiap entitas dalam
himpunan entitas B berhubungan paling banyak satu
entitas dengan entitas dalam himpunan entitas A.
Gambar 2.3. Multiplicity pada Staff manage Branch
dengan tipe relasi 1:1
30
Gambar 2.4. Multiplicity dengan tipe relasi 1:1
• Hubungan one-to-many (1 : *)
Setiap relationship menggambarkan hubungan antara
sebuah entity occurance pada entitas yang satu dengan
satu atau lebih entity occurance pada entitas lainnya yang
ikut serta dalam relationship tersebut. Berarti setiap
entitas pada pada himpunan entitas A dapat berhubungan
dengan banyak entitas pada himpunan entitas B. Namun,
setiap entitas pada himpunan entitas B hanya dapat
berhubungan dengan paling banyak satu entitas pada
himpunan entitas A.
Gambar 2.5. Multiplicity pada Staff overseas PropertyForRent
dengan tipe relasi 1 : *
31
• Hubungan many-to-many (* : *)
Setiap relationship menggambarkan hubungan antara satu
atau lebih entity occurance pada entitas yang satu dengan
satu atau lebih entity occurance pada entitas lainnya yang
ikut serta dalam relationship tersebut. Berarti setiap
entitas pada himpunan entitas A dapat berhubungan
dengan banyak entitas pada himpunan entitas B, dan
sebaliknya, setiap entitas pada himpunan entitas B dapat
berhubungan dengan banyak entitas pada himpunan
entitas A.
Gambar 2.6. Multiplicity dengan tipe relasi *:*
2.3 Perancangan Basis data Konseptual
Dalam penyajian metodologi perancangan basis data terdapat 3 langkah utama
proses perancangan yakni : konseptual, logikal dan fisikal.
32
Langkah 1. Membangun Model data Konseptual Lokal untuk setiap view
Tujuan dilakukannya langkah ini adalah untuk membangun sebuah model data
konseptual lokal dari sebuah perusahaan untuk setiap view yang spesifik
Langkah-langkah dalam membuat model data konseptual :
1. 1 Mengidentifikasikan tipe-tipe dari entitas
Langkah pertama dalam membangun suatu model data lokal konseptual
adalah untuk mendefinisikan objek utama dimana user memang
membutuhkannya. Salah satu metode untuk mengidentifikasi tipe
entitas adalah dengan mengidentifikasi kata benda atau frase kata benda
yang telah disebutkan oleh pengguna.
1. 2 Mengidentifikasikan tipe-tipe dari relationship
Pada tahap ini dilakukan identifikasi relasi yang penting antara berbagai
tipe entitas yang telah diidentifikasikan. Relasi diidentifikasikan dengan
menggunakan kata kerja atau frase kata kerja. Namun harus
diperhatikan relasi yang kompleks yang melibatkan lebih dari dua
entitas dan relasi recursive yang hanya melibatkan satu entitas.
Menurut Connoly dan Begg (2010, p473-474), langkah-langkah dalam
mengidentifikasikan tipe relasi adalah sebagai berikut :
1. Menggunakan entity-relationship diagram (ERD).
2. Menentukan multiplicity constraint dari relationship type.
3. Memeriksa fan dan chasm trap.
4. Memeriksa bahwa setiap entitas masuk ke sedikitnya satu relasi.
33
1. 3 Mengidentifikasikan dan menghubungkan atribut dengan tipe-tipe
entitas atau relationship.
Pada tahap ini, atribut dengan entitas atau tipe relasi yang sesuai saling
dihubungkan.
1. 4 Menentukan domain dari atribut
Domain adalah penampung dari nilai yang dapat ditampung oleh
atribut. Tujuan dari langkah ini adalah untuk menentukan domain dari
atribut yang ada dalam model data lokal konseptual.
1. 5 Menentukan atribut-atribut, candidate key dan primary key serta
alternate key
Langkah ini menitikberatkan dalam pengidentifikasian candidate key
untuk sebuah entitas dan pemilihan primary key. Sebuah candidate key
adalah seperangkat atribut dari suatu entitas yang secara unik
mengidentifikasi setiap kemunculan dari entitas tersebut. Candidate key
dapat diidentifikasikan lebih dari satu, namun primary key harus
diidentifikasikan hanya satu. Sementara candidate key yang tersisa
disebut alternate key.
Ketika memilih sebuah primary key diantara candidate key, kita dapat
menggunakan petunjuk berikut :
1 Candidate key dengan sekumpulan atribut yang minimal.
2 Candidate key yang nilainya paling jarang berubah.
3 Candidate key dengan karakter yang paling sedikit.
4 Candidate key dengan nilai maksimun yang paling kecil.
34
5 Candidate key yang paling mudah digunakan dari sudut pandang
user.
1. 6 Mempertimbangkan penggunakan dari konsep enhanced modeling
(Optional)
Mempertimbangkan penggunaan konsep-konsep seperti spesialisasi /
generalisasi, agregasi atau komposisi dalam melanjutkan
pengembangan model ER.
1. 7 Pengecekan adanya redudansi pada model
Bertujuan untuk memeriksa conceptual model dan menghindari
redudansi informasi. Yang dilakukan pada langkah ini adalah :
• Memerika 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 redudansi
Untuk menekan jumlah model data, maka relationship data yang
redudan harus dihilangkan.
1. 8 Menvalidasi conceptual model dengan transaksi
Bertujuan untuk menjamin bahwa conceptual data model mendukung
kebutuhan transaksi dengan memerika penjelasan transaksi dan alur
transaksi.
35
1. 9 Meninjau kembali model data konseptual dengan pengguna
Sasaran dalam langkah ini adalah meninjau kembali model data
konseptual terhadap pengguna untuk memastikan bahwa mereka
mempertimbangkan model tersebut menjadi gambaran yang tepat dari
kebutuhan data perusahaan. Jika terdapat perbedaan maka harus
dilakukan perubahan
2.4 Perancangan Basis data Logikal
Langkah 2. Membangun model data logikal
Tujuan dilakukannya langkah ini adalah untuk membuat sebuah model data logikal
lokal dari model data konseptual lokal yang merepresentasikan sebuah view utama
dari perusahaan dana kemudian memvalidasi model ini untuk memastikan bahwa
model ini secara struktur adalah benar (menggunakan teknik normalisasi) dan
untuk memastikan model mendukung transaksi yang dibutuhkan.
2.1. Membangun dan Menvalidasi Model data Logikal
Perancangan logikal basis data adalah proses konstruksi sebuah model
dari data yang digunakan dalam perusahaan berdasarkan pada suatu model
data yang spesifik kemudian memvalidasi model ini untuk memastikan
bahwa model ini secara struktur adalah benar (menggunakan teknik
normalisasi) dan untuk memastikan model mendukung transaksi yang
dibutuhkan.Pada perancangan model logikal terhadap tahap-tahapan antara
lain :
36
2.1.1. Memperoleh relasi-relasi untuk model data logikal.
Sasaran dari langkah ini adalah membuat relasi untuk model data
logikal untuk menggambarkan entitas, relasi, dan atribut yang
telah diidentifikasi. Komposisi dari setiap relasi dideskripsikan
dengan menggunakan Database Definition Language (DBDL)
untuk basis data relasional.
2.1.2. Validasi relasi dengan normalisasi
Tujuan dilakukannya langkah ini adalah untuk memvalidasi relasi
yang berada di dalam model data logikal lokal menggunakan
teknik normalisasi.
2.1.3. Memvalidasikan relasi-relasi terhadap transaksi pengguna.
Tujuan dari langkah ini adalah untuk memastikan bahwa relasi di
dalam model data logikal mendukung transaksi yang dibutuhkan
oleh pengguna.
2.1.4. Menentukan integrity constraint.
Tujuan dilakukannya langkah ini adalah untuk mendefinisikan
batasan integritas yang diberikan di dalam view.
Tipe dari batasan integritas menurut Connolly and Begg (2010,
p502), yaitu :
1. Data yang dibutuhkan
2. Batasan domain atribut
3. Multiplicity
4. Integritas entitas
5. Integritas referensial
37
6. Batasan umum
2.1.5. Meninjau kembali model data logikal dengan pengguna
Sasaran dalam langkah ini adalah meninjau kembali model data
logikal dengan pengguna untuk memastikan bahwa mereka
mempertimbangkan model tersebut untuk menjadi gambaran yang
benar dari kebutuhan data perusahaan.
2.1.6. Menggabungkan model data logikal ke dalam model global
(optional)
Langkah ini hanya diperlukan untuk perancangan dari suatu basis
data dengan banyak pandangan pengguna yang telah diatur
dengan pendekatan integrasi pandangan. Untuk memfasilitasi
deskripsi dari proses penggabungan, digunakan persyaratan model
data logikal lokal dan model data logikal global. Sebuah model
data logikal lokal menggambarkan satu atau lebih namun tidak
seluruh pandangan pengguna dari suatu basis data sementara
model data logikal global menggambarkan keseluruhan
pandangan pengguna dari basis data.
2.1.7. Memeriksa pertumbuhan masa depan
Sasaran dari langkah ini adalah menentukan apakah ada
perubahan-perubahan signifikan dalam perkiraan masa depan dan
mengakses apakah model data logikal dapat mengakomodasi
perubahan- perubahan ini. Perancangan basis data logikal
menyimpulkan dengan pertimbangan apakah model data logikal
38
mampu diperluas untuk mendukung perkembangan masa yang
akan datang.
2.5 Perancangan Basis Data Fisikal
Langkah 3 Menterjemahkan model data logikal global ke DBMS target
Secara umum langkah ini memiliki sasaran untuk menghasilkan suatu skema basis
data relasional dari model data logikal yang dapat diimplementasikan dalam
DBMS target.
3. 1 Mendesain relasi dasar
Sasaran dari langkah ini adalah menetukan bagaimana
menggambarkan relasi dasar diidentifikasikan pada model data
logikal dalam DBMS target. Pada awal langkah ini, informasi
tentang relasi yang dihasilkan selama perancangan basis data
logikal disusun dan diolah. Informasi penting dapat diambil dari
kamus data dan definisi dari relasi dapat dideskripsikan dengan
Database Design Language (DBDL). Untuk setiap informasi yang
diidentifikasi dalam model data logikal, sebuah definisi terdiri dari:
• Nama relasi
• Daftar atribut-atribut sederhana dalam kelompok
• Primary key yang tepat, alternate key, dan foreign key
• Batasan integritas referensial untuk setiap foreign key yang
diidentifikasi
39
3. 2 Mendesain representasi dari data yang diperoleh.
Sasaran dari langkah ini adalah menentukan bagaimana
menggambarkan data yang diperoleh pada model data logikal dalam
DBMS target. Atribut yang nilainya dapat ditemukan dengan
pemeriksaan nilai dari atribut lain dikenal sebagai atribut yang
diperoleh atau diperhitungkan.
3. 3 Mendesain batasan umum
Sasaran dari langkah ini adalah merancang batasan umum
untukDBMS target. Dalam langkah ini, dirancang sejumlah batasan
umum: data yang dibutuhkan, batasan domain, entitas dan integritas
referensial.
Langkah 4 Mendesain organisasi file dan indeks
Secara umum memiliki sasaran menentukan organisasi file optimal untuk
menyimpan relasi dasar dan indeks yang dibutuhkan untuk mencapai performansi
yang dapat diterima.
4. 1 Menganalisis transaksi
Sasaran dari langkah ini adalah memahami fungsionalitas dari transaksi
yang akan dijalankan pada basis data dan menganalisis transaksi-transaksi
penting
Dalam langkah ini dilakukan aktivitas-aktivitas berikut:
1. Memetakan seluruh jalur transaksi pada relasi
2. Menentukan relasi mana yang paling sering diakses oleh transaksi
3. Menganalisis penggunaan data dari transaksi yang dipilih yang
mempengaruhi relasi ini.
40
4. 2 Memilih organisasi file
Salah satu sasaran utama dari perancangan basis data fisikal adalah
menyimpan dan mengakses data dengan cara yang efisien. Sasaran dalam
langkah ini adalah memilih sebuah organisasi file optimal untuk setiap
relasi, jika DBMS target memperbolehkan itu. Dalam banyak kasus, sebuah
DBMS relasional dapat memberi sedikit atau tak ada sama sekali pilihan
dalam pemilihan organisasi file, kendati beberapa dapat ditetapkan sebagai
indeks yang dispesifikasikan.
4. 3 Memilih indeks
Sasaran dari langkah ini adalah menentukan apakah penambahan indeks
akan meningkatkan perfomansi dari sistem. Sebuah pendekatan dalam
pemilihan organisasi file yang tepat untuk suatu relasi adalah dengan
menjaga tuple yang tidak diinginkan dan membuat banyak indeks secondary
sesuai kebutuhan.
4. 4 Mengestimasi kebutuhan kapasitas disk
Sasaran utama dari langkah ini adalah memperkirakan jumlah disk space
yang akan dibutuhkan untuk mendukung implementasi basis data pada
secondary storage. Secara umum, perkiraan didasarkan pada ukuran dari
setiap tuple dan jumlah tuple dalam relasi.
Langkah 5 Mendesain user views
Tujuan dilakukannya langkah ini adalah untuk merancang user view yang
diidentifikasikan selama pengumpulan kebutuhan dan menganalisa tahapan dari
siklus hidup aplikasi database relasional.
41
Langkah 6 Mendesain mekanisme keamanan
Secara umum memiliki sasaran merancang mekanisme pengamanan untuk basis
data yang ditetapkan oleh pengguna selama tahap kebutuhan dan pengumpulan
dari daur hidup pengembangan basis data.
Langkah 7 Mempertimbangkan penggunaan redundansi terkontrol
Menentukan apakah penggunaan redundansi secara terkontrol akan dapat
meningkatkan performansi sistem.
Langkah 8 Memonitor dan memasang sistem operasional
Mengawasi sistem operasional dan meningkatkan performansi sistem untuk
memperbaiki rancangan-rancangan yang kurang sesuai atau sebagai refleksi
adanya perubahan kebutuhan. Tahap perancangan basis data fisikal mendukung
perancang dalam pembuatan keputusan mengenai bagaimana basis data akan
diimplementasikan. Oleh karena itu, rancangan fisikal disesuaikan pada DBMS
yang spesifik. Ada umpan balik antara rancangan fisikal dan logikal, karena
keputusan yang diambil selama rancangan fisikal untuk peningkatan performansi
dapat mempengaruhi model data logikal.
2.6 Data Flow Diagram
Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan
profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses
fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual
maupun komputerisasi. DFD ini sering disebut juga dengan nama Bubble chart,
Bubble diagram, model proses, diagram alur kerja, atau model fungsi. DFD ini
adalah salah satu alat pembuatan model yang sering digunakan, khususnya bila
42
fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks dari pada
data yang dimanipulasi oleh sistem. Dengan kata lain, DFD adalah alat pembuatan
model yang memberikan penekanan hanya pada fungsi sistem
Dalam DFD terdapat tiga simbol dan satu koneksi :
a. Persegi empat tumpul, lingkaran atau lonjong menyatakan proses atau
bagaimana tugas dikerjakan. (PROSES)
b. Persegi empat menyatakan agen eksternal batasan sistem tersebut.
(INTERFACE)
c. Kotak dengan ujung terbuka menyatakan data store atau disebut file atau
database. (DATA)
43
d.Panah menyatakan aliran data atau input dan output ke dan dari proses tersebut.
2.7 State Transition Diagram
State Transition Diagram (STD) adalah suatu tools permodelan yang
menggambarkan sifat ketergantungan pada suatu waktu dari suatu sistem. Adapun
simbol yang digunakan adalah :
state / keadaan
perubahan state / aksi
Untuk melengkapi suatu STD diperlukan dua hal lagi , yaitu condition (kondisi),
merupakan sebuah sinyal yang menyebabkan perubahan terhadap state dari suatu
state satu ke state yang berikutnya dan action (aksi), adalah yang hal dilakukan
sistem bila terjadi perubahan state atau merupakan suatu reaksi terhadap kondisi.
2.8 Perancangan User Interface
Interaksi manusia dengan komputer adalah suatu ilmu yang berhubungan dengan
perancangan, evaluasi, serta implementasi sistem komputer interaktif yang akan
44
digunakan oleh manusia. Dalam merancang antarmuka pemakai ( user interface )
perlu menggunkan delapan aturan emas ( 8 golden rule ) yang terdiri atas :
1. Konsisten.
2. Memungkinkan frequent user menggunakan shortcut.
3. Memberikan umpan balik (feedback) yang informatif.
4. Merancang dialog untuk menghasilkan keadaan akhir.
5. Memberikan pencegahan kesalahan dan penanganan kesalahan yang
sederhana.
6. Memungkinkan pembalikan aksi ( undo yang mudah ).
7. Mendukung internal focus of control.
8. Mengurangi beban ingatan jangka panjang.
2.9 Teori khusus
2.9.1 Teori pembelian
Menurut Mulyadi (2001,p299) kegiatan pembelian digunakan dalam
perusahaan untuk pengadaan barang yang diperlukan untuk perusahaan.
Transaksi pembelian dapat digolongkan menjadi dua, antara lain :
1. Pembelian local
Adalah pembelian barang dari pemasok dalam negeri
2. Pembelian Import
Adalah pembelian barang dari pemasok luar negeri
Fungsi yang terkait dalam sistem pembelian adalah:
1. Fungsi pembelian
45
Dalam sistem pembelian, fungsi ini bertanggung jawab untuk
memperoleh informasi mengenai harga barang, menentukan pemasok
yang dipilih dalam pengadaan barang dan mengeluarkan order
pembelian kepada pemasok yang dipilih.
2. Fungsi penerimaan
Bertanggung jawab untuk melakukan pemeriksaan terhadap jenis,
mutu dan kuantitas barang yang diterima dari pemasok untuk
menentukan dapat atau tidaknya barang tersebut diterima oleh
perusahaan.
2.9.2 Teori Penjualan
Menurut Mulyadi (2001,p202), sistem penjualan adalah system yang
melibatkan sumber daya dalam suatu organisasi, prosedur, data serta
sarana pendukung untuk mengoperasikan system penjualan sehingga
menghasilkan informasi yang bermanfaat bagi pihak manajemen dalam
pengambilan keputusan.
2.9.3 Teori Persediaan
Menurut Mulyadi (2001,p18), system persediaan dirancang untuk
menangani transaksi yang bersangkutan dengan mutasi persediaan yang
disimpan di gudang. Persediaan barang pada perusahaan dagang adalah
persediaan barang dagang yang dibeli dengan tujuan untuk dijual kembali.
2.9.4 Teori Pengiriman
Pengiriman bisa diartikan sebuah proses fisikal dari pengiriman barang
dan kargo melalui jalur darat, air dan udara.
46
2.9.5 Structure Query Language (SQL)
SQL adalah suatu bahasa yang dirancang untuk operasi pengaksesan data
pada struktur relational database yang mentransformasikan input menjadi
output yang diinginkan pengguna operasi pengaksesan data meliputi
penginputan data (insert), pengubahan data (update), pengambilan data
(select), dan penghapusan data (delete).
2.9.6 Microsoft SQL Server
Menurut Allen G.Taylor (2003,p2), Microsoft SQL Server adalah sebuah
system manajemen basis data relasional (RDBMS) produk Microsoft.
Bahasa query utama yang digunakan adalah Transact-SQL yang
merupakan implementasi dari SQL standar ANSI/ISO yang digunakan
oleh Microsoft. Umumnya SQL Server digunakan di dunia bisnis yang
memiliki basis data berskala kecil sampai dengan menengah, tetapi
kemudian berkembang dengan digunakannya SQL Server pada basis data
besar.
2.9.7 Visual Basic .NET (VB.Net)
Menurut Alistair Mcmonnies (2004,p5), Visual Basic. NET (VB. NET)
adalah versi dari Microsoft Visual Basic sebagai bagian produk dari
Microsoft. NET, ditujukan untuk membuat aplikasi lebih mudah
dikembangkan dikarenakan dapat mensupport hampir semua bahasa.