coretan
DESCRIPTION
Landasan TeoriTRANSCRIPT
-
10
BAB 2
LANDASAN TEORI
2.1 Analisis dan Perancangan Sistem
2.1.1 Pengertian Sistem
Menurut Budi Sutedjo Dharma Oetomo (2002), Sistem
merupakan kumpulan elemen yang saling berhubungan satu sama lain
yang membentuk satu kesatuan dalam usaha mencapai suatu tujuan.
Suatu sistem dapat didefinisikan sebagai suatu seri dari bagian-
bagian pekerjaan yang saling berhubungan untuk membentuk kerjasama
dalam usaha mencapai tujuan yang telah ditetapkan bersama.
Dari pengertian sistem diatas dapat diambil kesimpulan bahwa
sistem merupakan suatu jaringan pekerjaan yang berhubungan dengan
prosedur-prosedur yang erat hubungannya satu sama lain untuk
melaksanakan sebagian aktifitas perusahaan untuk mencapai tujuan.
(http://elib.unikom.ac.id/files/disk1/334/jbptunikompp-gdl-ariefrahma-
16695-3-document-2.pdf)
2.1.2 Pengertian Informasi
Menurut Tata Sutabri (2004), Informasi adalah data yang telah
diklasifikasikan atau diolah untuk digunakan dalam proses pengambilan
keputusan. Adapun definisi lain dari Informasi menurut Dr. Azhar
-
11
Susanto (2004), Informasi adalah hasil pengolahan data yang
memberikan arti dan manfaat. Definisi lain dari Informasi adalah
rangkaian data yang mempunyai sifat sementara, tergantung dengan
waktu, mampu memberi kejutan pada penerimanya, intensitas dan
lamanya kejutan dari informasi disebut nilai informasi.
Manfaat Informasi adalah untuk mengurangi ketidakpastian, hal
ini sangat berguna untuk proses pengambilan keputusan. Informasi
bersumber pada data.
(http://elib.unikom.ac.id/files/disk1/334/jbptunikompp-gdl-ariefrahma-
16695-3-document-2.pdf)
2.1.3 Pengertian Sistem Informasi
Menurut Whitten, Bentley, Dittman (2004, p12), Sistem Informasi
(Information System) adalah sekumpulan orang, data, proses dan
teknologi informasi yang saling berinteraksi untuk mengumpulkan,
memproses, menyimpan dan menyediakan informasi yang dibutuhkan
untuk mendukung sebuah organisasi.
2.1.4 Pengertian Analisis Sistem
Menurut Laudon (2003, p394), Analisis Sistem adalah memeriksa
masalah yang ada dan akan diselesaikan oleh perusahaan dengan
menggunakan sistem informasi.
-
12
2.1.5 Pengertian Perancangan Sistem
Menurut Laudon (2003, p394), Perancangan Sistem adalah cara
bagaimana sebuah sistem dapat memenuhi kebutuhan informasi yang
telah ditentukan oleh penganalisa sistem.
2.2 Pendekatan Database
Database saat ini sering digunakan dalam kehidupan sehari-hari. Menurut
Connolly (2005, p15), database adalah kumpulan data yang berelasi yang
dirancang untuk memenuhi kebutuhan informasi sebuah perusahaan dan menurut
Connolly (2005, p16) Database Management System (DBMS) adalah software
untuk mengatur dan mengontrol akses ke database.
Menurut Connolly (2005, p17), aplikasi database adalah program yang
berinteraksi dengan database menggunakan sebuah permintaan sederhana ke
DBMS. Sistem basis data adalah kumpulan program aplikasi yang berinteraksi
dengan database. Contoh aplikasi database, misalnya berbelanja di supermarket
dengan menggunakan bar code untuk mencari harga barang yang terdapat di
database barang.
2.2.1 Pengertian Data
Menurut Atzeni (2003, p2), data adalah informasi yang disimpan,
yang memerlukan terjemahan untuk menghasilkan informasi.
Menurut Hoffer, Prescott, dan McFadden (2005, p5), data adalah
fakta yang telah diketahui, yang dapat dikumpulkan dan disimpan dalam
media komputer.
-
13
Data terdiri dari fakta-fakta dan simbol-simbol yang secara umum
kurang berguna dikarenakan jumlahnya yang besar dan sifatnya yang
kasar atau belum diolah (McLeod dan Schell, 2001, p9).
2.2.2 Pengertian Basis Data
Pengertian Basis Data menurut Connolly (2005, p15) adalah
kumpulan data yang saling berhubungan secara logikal, deskripsi
mengenai data tersebut yang dibuat untuk menemukan informasi yang
dibutuhkan oleh sebuah organisasi.
Menurut C.J. Date (2000, p10) basis data adalah kumpulan data
persistent yang digunakan oleh sistem aplikasi dari perusahaan tertentu.
Persistent maksudnya adalah sekali data telah diterima oleh DBMS untuk
dimasukkan ke dalam basis data, data tersebut hanya bisa dihapus dari
basis data dengan menggunakan permintaan eksplisit ke DBMS.
Menurut Post (2005, p2), basis data adalah kumpulan data yang
disimpan dalam suatu format yang sudah terstandardisasi yang dirancang
agar dapat digunakan oleh banyak pengguna.
2.2.3 Pengertian Sistem Basis Data
Menurut Connolly dan Begg (2005, p4), sistem basis data pada
dasarnya adalah sistem penyimpanan record yang terkomputerisasi di
mana tujuan sebenarnya adalah menyimpan informasi dan membuat
informasi tersebut selalu tersedia pada saat dibutuhkan. Keseluruhan
-
14
sistem terkomputerisasi tersebut memperbolehkan pengguna menelusuri
kembali dan mengubah informasi tersebut sesuai kebutuhan.
2.2.4 Database Management System (DBMS)
Menurut Post (2005, p2), Database Management System adalah
perangkat lunak yang mendefinisikan sebuah basis data, menyimpan data,
mendukung bahasa query, menghasilkan laporan-laporan, dan
menciptakan layar entry-data.
Menurut Connolly dan Begg (2005, p16), Database Management
System (DBMS) adalah sistem perangkat lunak yang memungkinkan
pengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol
akses menuju basis data.
2.2.4.1 Fungsi DBMS
Menurut Connolly (2005, p16), fungsi DBMS terdiri dari :
1. Memungkinkan pengguna untuk mendefinisikan suatu
basis data, biasanya dilakukan melalui Data Definition
Language (DDL).
2. Memungkinkan pengguna untuk melakukan insert, update,
delete dan mendapatkan kembali data yang terdapat dalam
basis data.
3. Dapat mengatur akses ke dalam basis data, diantaranya adalah
adanya sistem keamanan, sistem integritas, sistem konkurensi,
-
15
pemulihan sistem kembali dan katalog yang dapat diakses
oleh pengguna.
2.2.4.2 Komponen DBMS
Gambar 2.1 Komponen DBMS
Menurut Connolly (2005, pp18-21), ada lima komponen DBMS,
yaitu:
1. Perangkat keras (Hardware)
Hal ini berupa komponen tunggal pribadi (PC), mainframe
tunggal hingga jaringan komputer. Perangkat keras dapat
tergantung pada kebutuhan perusahaan dan DBMS yang
digunakan.
2. Perangkat lunak (Software)
Perangkat lunak yang terdiri dari perangkat lunak DBMS
sendiri, program-program aplikasi, dan sistem operasi
termasuk perangkat lunak.
-
16
3. Data
Data merupakan komponen paling penting dalam lingkungan
DBMS. Data berperan penting sebagai penghubung antara
komponen mesin dengan komponen manusia. Basis data
mengandung data operasional dari meta-data. Struktur basis
data disebut skema.
4. Prosedur
Prosedur dalam DBMS adalah sejumlah instruksi dan
pengaturan yang menetukan rancangan dan pengguna dari
basis data. Pemakai sistem dan pegawai yang mengelola basis
data membutuhkan dokumen prosedur tentang bagaimana
menggunakan atau menjalankan sistem. Instruksi-instruksi
tersebut dapat berupa :
a. Masuk ke DBMS.
b. Penggunaan sebagian fasilitas DBMS atau program
aplikasi.
c. Memulai dan menghentikan DBMS.
d. Membuat backup dari basis data.
e. Menangani kegagalan perangkat keras atau perangkat
lunak.
f. Mengubah struktur dari sebuah tabel, mengatur kembali
basis data dalam multiple disk, meningkatkan performa,
atau membuat arsip data pada penyimpanan sekunder.
-
17
5. Orang
Komponen terakhir adalah orang yang terlibat dalam sistem,
termasuk data dan database administrator, perancang basis
data, pengembang aplikasi, dan pengguna akhir.
2.2.4.3 Keuntungan dan Kerugian DBMS
Menurut Connolly dan Begg (2005, p26) keuntungan DBMS
adalah :
1. Mengontrol duplikasi data
Basis data dapat mengurangi data yang ada tetapi tidak semua
duplikasi data dapat dihilangkan, melainkan hanya dapat
dikontrol. Hal ini dikarenakan terkadang duplikasi data tetap
dibutuhkan untuk meningkatkan kemampuan suatu DBMS.
2. Data yang konsisten
Dengan menghilangkan atau mengurangi duplikasi data, kita
mampu mengurangi resiko dari inkonsistensi data.
3. Data yang sama lebih memiliki banyak informasi
Dengan adanya integrasi data operasional maka
memungkinkan sebuah organisasi mendapatkan informasi
tambahan dari data yang sama.
-
18
4. Penggunaan data bersama-sama
Biasanya file dimiliki oleh seseorang atau departemen yang
menggunakannya. Sebaliknya, suatu basis data dimiliki oleh
organisasi secara keseluruhan dan dapat diakses kepada
pengguna yang dimiliki hak akses.
5. Integritas data telah dikembangkan
Integritas data memiliki arti dari konsisten dan keabsahan dari
data yang disimpan. Integritas biasa menegaskan arti dari kata
constraint, yang merupakan aturan yang tidak dapat dilanggar
oleh pemakai basis data.
6. Keamanan telah dikembangkan
Keamanan basis data akan melindungi dari pengguna yang
tidak memiliki hak akses. Hal ini biasanya dilakukan dengan
adanya nama pemakai dan password untuk mengidentifikasi
hak yang dimiliki oleh masing-masing pengguna.
-
19
Menurut Connolly dan Begg (2005, p29) kerugian DBMS adalah :
1. Kompleksitas
Fungsionalitas yang diharapkan dari DBMS membuat DBMS
menjadi piranti lunak yang sangat kompleks. Pengguna
DBMS harus memahami dengan baik setiap fungsi DBMS
untuk mendapatkan keuntungan maksimum dari DBMS
tersebut. Ketidakpahaman atas sistem dapat menyebabkan
pengambilan keputusan perancangan yang buruk dan akan
mengakibatkan dampak serius bagi organisasi.
2. Ukuran
Kompleksitas dan fungsional yang baik membuat DBMS
menjadi sebuah piranti lunak yang berukuran sangat besar dan
membutuhkan disk space yang sangat besar serta jumlah
memory yang besar agar dapat dijalankan seefisien mungkin.
Masalah ukuran yang besar kadang memberatkan perusahaan
untuk menggunakan DBMS.
3. Harga DBMS
Harga DBMS bervariasi tergantung dari lingkungan dan
fungsi yang disediakan termasuk biaya pemeliharaan DBMS.
4. Biaya perangkat keras tambahan
-
20
Kebutuhan penyimpanan untuk DBMS dan basis data
menyebabkan kemungkinan untuk membeli penyimpanan
tambahan. Selain itu, untuk mendapatkan kemampuan yang
diinginkan, dibutuhkan perangkat keras yang cepat dan baik
tetapi harganya mahal.
5. Biaya konversi
Dalam beberapa situasi, biaya yang dibutuhkan untuk
mengubah aplikasi agar dapat berjalan pada DBMS yang baru
dapat jauh lebih mahal dari biaya perangkat keras tambahan.
Biaya tersebut juga termasuk biaya pelatihan pegawai untuk
menggunakan sistem yang baru juga biaya pegawai spesialis
untuk membantu konversi dan pelaksanaan sistem yang baru.
2.2.5 Structured Query Language
Menurut Connolly dan Begg (2005, p113), Structured Query
Language (SQL) adalah bahasa standar untuk mengakses dan
memanipulasi basis data. Berikut merupakan tujuan SQL :
Membuat basis data dan struktur hubungannya. Melakukan pekerjaan dasar manajemen data, seperti memasukkan
data, modifikasi dan penghapusan data dari relasi entitas.
Melakukan query sederhana maupun kompleks.
-
21
Sebagai suatu bahasa, standar SQL dibagi menjadi dua komponen
utama yaitu Data Definition Language (DDL) dan Data Manipulation
Language (DML).
2.2.5.1 Data Definition Language (DDL)
Menurut Connolly dan Begg (2005, p168), Data
Definition Language (DDL) suatu bahasa yang memperbolehkan
pengguna untuk mendeskripsikan dan menamai entitas, atribut,
dan hubungan yang dibutuhkan untuk aplikasi bersamaan dengan
asosiasi integritas dan batasan keamanan lainnya.
Menurut Connolly dan Begg (2005, p40), dari hasil
kompilasi pernyataan DDL adalah sebuah tabel yang tersimpan
dalam file khusus yang dikumpulkan dan dikenal dengan System
Catalog.
System Catalog mengintegrasikan meta-data dimana data
yang mendeskripsikan objek pada basis data dan memudahkannya
untuk mengakses dan memanipulasi objek tersebut. Meta-data
mengandung definisi dari record data item dan objek lainnya yang
menarik bagi pengguna dan dibutuhkan oleh DBMS.
Data Dictionary dan Data Directory juga digunakan untuk
mendeskripsikan System Catalog walaupun penggunaan Data
-
22
Dictionary biasanya mengacu pada sistem perangkat lunak secara
umum daripada catalog untuk DBMS.
2.2.5.2 Data Manipulation Language (DML)
Menurut Connolly dan Begg (2005, p41), Data
Manipulation Language (DML) suatu bahasa yang menyediakan
kumpulan operasi untuk mendukung manipulasi dasar dari data
yang ada di basis data. Manipulasi yang dimaksud adalah seperti
memungkinkan pengguna untuk melakukan insert, update, delete
dan mengambil data dari database.
DML terbagi ke dalam 2 (dua) jenis, yaitu sebagai berikut :
- Procedural DML
Bahasa yang memperbolehkan pengguna untuk
memberitahukan pengguna mengenai data apa saja yang
dibutuhkan dan bagaimana mengambil data tersebut.
- Non-procedural DML
Bahasa yang memperbolehkan pengguna untuk menyatakan
data apa yang dibutuhkan dibandingkan dengan bagaimana
untuk mengambilnya.
-
23
2.2.6 Siklus Hidup Aplikasi Database
Menurut Connolly dan Begg (2005, pp283-310) terdapat beberapa
tahapan dalam Database System Development Lifecycle, diantaranya
adalah :
1. Perencanaan Database
2. Definisi Sistem
3. Analisis dan Pengumpulan
4. Perancangan Database
5. Pemilihan DBMS
6. Perancangan Aplikasi
7. Prototyping
8. Implementasi
9. Pengubahan dan Pemuatan Data
10. Uji Coba
11. Pemeliharaan Operasional
-
24
Gambar 2.2 Siklus Aplikasi Database
-
25
2.2.6.1 Perencanaan Database
Aktivitas manajemen yang memungkinkan tahapan-
tahapan dalam pengembangan sistem basis data dapat diwujudkan
dengan seefisien dan seefektif mungkin. Perancangan basis data
harus terintegrasi dengan semua strategi dari sistem informasi
dalam perusahaan. Ada tiga persoalan yang terkandung dalam
pembuatan strategi sistem informasi, diantaranya adalah :
a. Mengidentifikasi rencana dan tujuan dari perusahaan dengan
penentuan kebutuhan informasi yang dibutuhkan oleh sistem
informasi.
b. Mengevaluasi informasi dari sistem informasi yang ada untuk
menentukan kelebihan dan kekurangan yang dimiliki.
c. Membuat penilaian peluang dalam bidang informasi dan
teknologi yang memungkinkan untuk menjadi keunggulan
yang kompetitif.
2.2.6.2 Definisi Sistem
Membuat batasan-batasan dan cakupan dari basis data
yang meliputi area perancangan aplikasi, kebutuhan utama
pengguna dan pengguna itu sendiri yang dibantu oleh basis data.
Mengidentifikasi sudut pandang pengguna membantu untuk
memastikan tidak ada basis data yang terabaikan ketika
mengembangkan kebutuhan-kebutuhan untuk sistem basis data
yang baru.
-
26
2.2.6.3 Analisis dan Pengumpulan
Menganalisa dan mengumpulkan kebutuhan-kebutuhan
yang diperlukan untuk pembuatan sistem basis data yang baru.
Informasi yang dikumpulkan dari masing-masing sudut pandang
utama pengguna, termasuk :
a. Deskripsi dari data yang digunakan atau yang dihasilkan.
b. Detil bagaimana data digunakan atau dihasilkan.
c. Kebutuhan-kebutuhan untuk sistem database yang baru.
Ada tiga pendekatan untuk mengatur kebutuhan-
kebutuhan dari sistem database dengan banyak pengguna,
diantara lain :
Pendekatan terpusat (Centralized approach). Pendekatan sudut pandang yang terintegrasi (View
integration approach).
Kombinasi dari keduanya.
2.2.6.4 Perancangan Database
Perancangan basis data diperlukan agar memiliki sistem
basis data yang efisien dan efektif. Perancangan basis data juga
berdampak dalam memenuhi kebutuhan-kebutuhan informasi
yang diperlukan. Perancangan database dibagi menjadi tiga
-
27
tahapan, yaitu Perancangan Basis Data Konseptual, Perancangan
Basis Data Logikal, dan Perancangan Basis Data Fisikal.
2.2.6.4.1 Perancangan Basis Data Konseptual
Perancangan Basis Data Konseptual (Conceptual
Database Design) adalah proses membangun sebuah
model dari data yang digunakan dalam perusahaan,
terbebas dari semua pertimbangan fisikal.
Adapun tahapannya adalah sebagai berikut :
a. Mengidentifikasi jenis entitas
Tahapan pertama dalam membuat model data
konseptual adalah dengan mendefinisikan objek utama
yang menarik dari pengguna untuk digunakan. Objek-
objek ini akan menjadi jenis-jenis entitas dalam model
data konseptual.
Salah satu metode untuk mengidentifikasi entitas
adalah dengan memeriksa spesifikasi kebutuhan dari
pengguna. Dari spesifikasi ini, kita dapat mengidentifikasi
kata benda yang sering disebut atau digunakan. Kita juga
dapat melihat objek utama seperti orang, tempat atau
konsep yang sedang menarik.
b. Mengidentifikasi jenis relasi
-
28
Setelah semua entitas teridentifikasi, tahap
selanjutnya adalah menentukan relasi yang ada diantara
entitas-entitas tersebut. Umumnya, relasi diindikasikan
dengan kata kerja. Di beberapa hal, sebuah relasi biasanya
bersifat binary. Dalam kata lain, relasi ada diantara tepat
dua entitas. Namun, kita harus berhati-hati dalam melihat
relasi kompleks yang melibatkan lebih dari dua entitas dan
relasi rekursif yang melibatkan hanya satu entitas.
Kita dapat menggunakan sebuah diagram entitas dan
relasi untuk memudahkan kita memvisualisasikan sebuah
sistem yang kompleks daripada menguraikan deskripsi
teks yang panjang dari sebuah spesifikasi kebutuhan
pengguna.
c. Mengidentifikasi dan mengasosiasikan atribut dengan
jenis entitas atau relasi
Tahapan selanjutnya adalah dengan
mengidentifikasikan jenis dari fakta tentang entitas dan
relasi yang sudah terpilih untuk direpresentasikan di dalam
basis data. Atribut dapat ditemukan sebagai identifier atau
karakteristik pada sebuah entitas atau pada sebuah relasi.
Sebuah atribut dapat berupa simple atau composite atribut,
single atau multi-valued atribut, ataupun derived atribut.
-
29
d. Menentukan domain atribut
Sasaran utama dalam tahap ini adalah menentukan
domain dari semua atribut di dalam model. Sebuah domain
adalah kumpulan nilai-nilai dari mana satu atau lebih
atribut mengambil nilai-nilai tersebut.
e. Menentukan candidate, primary dan alternate key dari
atribut
Tahap ini adalah bagaimana mengidentifikasikan
candidate key lalu memilih salah satunya untuk menjadi
primary key. Sebuah candidate key adalah seperangkat
minimal atribut dari sebuah entitas yang secara unik
mengidentifikasi kemunculan entitas tersebut.
Dalam hal ini, kita dapat mengidentifikasi lebih dari
satu candidate key, maka dari itu kita harus memilih satu
untuk menjadi primary key, candidate key yang tersisa
akan disebut alternate key.
f. Pertimbangan kembali apakah akan menggunakan konsep
permodelan yang lebih rumit (opsional)
Pada tahap ini, kita dapat memilih apakah untuk
melanjutkan pemodelan entitas dan relasi dengan
menggunakan konsep pemodelan yang lebih maju, dengan
-
30
mempertimbangkan apakah secara
spesialisasi/generalisasi, agregasi ataupun komposisi.
g. Pemeriksaan model dari redundansi
Dalam tahap ini kita memeriksa model data
konseptual dengan tujuan spesifik yaitu mengidentifikasi
apakah terdapat redundansi di dalamnya. Tiga aktivitas
yang dilakukan adalah :
1. Memeriksa kembali relasi one-to-one
Dalam mengidentifikasi entitas yang redundan, dapat
ditemukan jika dua entitas merepresentasikan objek
yang sama pada perusahaan. Dalam hal ini, kedua
entitas tersebut harus digabungkan. Jika primary key-
nya berbeda, pilih salah satu untuk menjadi primary
key, sedangkan lainnya menjadi alternate key.
2. Menghilangkan relasi yang redundan
Sebuah relasi dapat dikatakan redundan apabila
informasi yang sama dapat diperoleh dari relasi yang
lain.
3. Mempertimbangkan kembali dimensi waktu
Penting untuk memeriksa apakah setiap relasi yang ada
diantara entitas akan bersifat redundan. Jika sebuah
sifat relasi melekat akan menjadi redundan, relasi itu
harus dihilangkan. Pada akhir tahap ini, model data
-
31
konseptual telah disederhanakan dengan
menghilangkan apapun yang bersifat dapat menjadi
redundan.
h. Memvalidasikan model konseptual terhadap proses
transaksi pengguna
Model data konseptual kini telah merepresentasikan
data-data kebutuhan yang ada pada perusahaan. Tujuan
tahap ini adalah memeriksa apakah model dapat
membantu dalam transaksi yang diperlukan pada
perusahaan. Dengan menggunakan model konseptual
tersebut, kita dapat mencoba apakah model konseptual
yang sudah dibuat dapat membantu transaksi yang
diperlukan.
Jika semua transaksi dapat berjalan sampai selesai
dengan menggunakan model yang sudah dibuat, maka
dapat dipastikan model tersebut dapat membantu transaksi
yang ada pada perusahaan.
Namun, jika terdapat transaksi yang tidak berjalan
hingga selesai, maka harus dilakukan pengecekan kembali
pada entitas, hubungan maupun atribut yang ada pada
model data.
i. Mengulas kembali model data konseptual dengan pengguna
-
32
Setelah dilakukan kembali, model data konseptual
diulas kembali dengan diagram entitas dan relasi dan semua
dokumentasi yang mendukung dalam penggambaran model
data tersebut. Jika terdapat keganjilan yang ditemukan di
dalam model data, perubahan harus dilakukan jika
diperlukan, dimana tahap-tahap sebelumnya akan diulang
kembali.
Tahap ini akan diulang terus menerus hingga pengguna
dapat memastikan bahwa model yang telah dibuat dapat
merepresentasikan secara tepat bagian dari perusahaan.
2.2.6.4.2 Perancangan Basis Data Logikal
Perancangan Basis Data Logikal (Logical
Database Design) adalah proses membangun sebuah
model dari data yang digunakan dalam perusahaan
berdasarkan pada model data yang spesifik tetapi terbebas
dari DBMS dan dari semua pertimbangan fisikal.
Adapun tahapannya adalah sebagai berikut :
a. Menurunkan relasi untuk model data logikal
Pada tahap ini, kita menurunkan relasi dari model
data logikal untuk merepresentasikan entitas, relasi dan
atribut. Penurunan relasi yang dilakukan mungkin juga
terdapat pada model data konseptual, yaitu :
1. Entitas kuat
-
33
Untuk setiap entitas kuat di dalam model data, buatlah
sebuah relasi termasuk semua atribut sederhana dari
setiap entitas.
2. Entitas lemah
Untuk setiap entitas lemah di dalam model data,
buatlah sebuah relasi termasuk semua atribut
sederhana dari setiap entitas. Primary key dari sebuah
entitas lemah adalah sebuah bagian atau penurunan
penuh dari setiap pemilik entitas sehingga pengenalan
dari primary key dari entitas lemah tidak dapat
dilakukan sampai semua relasi dari pemilik entitas
telah dipetakan.
3. Relasi binary one-to-many
Untuk setiap relasi binary one-to-many, entitas yang
bersifat one dirancang sebagai entitas parent dan
entitas yang bersifat many dirancang sebagai entitas
child.
4. Relasi binary one-to-one
Dalam membuat relasi yang merepresentasikan relasi -
one-to-one lebih kompleks secara kardinalitas tidak
dapat digunakan untuk mengidentifikasi entitas parent
dan entitas child di dalam relasi tersebut.
5. Relasi rekursif binary one-to-one
-
34
Sama seperti relasi binary one-to-one, setiap relasi
rekursif one-to-one, tidak dapat digunakan untuk
mengidentifikasi entitas parent dan entitas child di
dalam relasi tersebut.
6. Relasi superclass/subclass
Untuk setiap relasi superclass/subclass di dalam model
data konseptual, entitas superclass diidentifikasikan
sebagai entitas parent dan entitas subclass sebagai
entitas child.
7. Relasi binary many-to-many
Untuk setiap relasi binary many-to-many dibuat relasi
yang merepresentasikan hubungan dan termasuk
atribut mana pun yang merupakan bagian dari
hubungan tersebut.
Atribut-atribut yang berupa primary key dari entitas
yang berpartisipasi dalam hubungan ke dalam relasi
baru harus dianggap juga sebagai foreign key. Salah
satu dari kedua foreign key ini juga akan berupa
primary key dari relasi yang baru, dan kemungkinan
akan bergabung dengan satu atau lebih atribut.
8. Relasi kompleks
Untuk setiap relasi kompleks, dibuat relasi yang
merepresentasikan relasi dan termasuk semua atribut
yang merupakan bagian dari hubungan tersebut.
-
35
Atribut-atribut yang berupa primary key dari entitas
yang berpartisipasi dalam hubungan ke dalam relasi
baru harus dianggap juga sebagai foreign key.
Foreign key manapun yang merepresentasikan many
dalam hubungan tersebut, secara umum juga akan
berperan sebagai primary key dari relasi baru tersebut,
dan kemungkinan akan bergabung dengan beberapa
atribut lain.
9. Atribut multi-valued
Untuk setiap atribut multi-valued di dalam sebuah
entitas, buatlah sebuah relasi baru yang
merepresentasikan atribut multi-valued dan termasuk
primary key-nya ke dalam relasi baru, juga harus
dianggap sebagai foreign key.
Terkecuali jika atribut multi-valued sendiri itulah
alternate key dari entitas, maka primary key dari relasi
yang baru adalah gabungan dari atribut multi-valued
dan primary key dari entitas tersebut.
b. Memvalidasi relasi dengan menggunakan normalisasi
Proses dari normalisasi melibatkan relasi melalui
beberapa langkah pemeriksaan apakah komposisi
atributnya sesuai dengan peraturan bentuk normal. Proses
penurunan relasi dari model data konseptual seharusnya
-
36
sudah memproduksi relasi yang ada pada bentuk
normalisasi tahap ketiga. Namun, jika ternyata
teridentifikasi adanya relasi yang tidak ditemukan di
normalisasi tahap ketiga, dapat diindikasikan bahwa ada
beberapa bagian dari model data logikal ataupun
konseptual yang salah.
Jika diperlukan, perlu dilakukan restrukturisasi ulang
terhadap relasi yang menjadi masalah dan pada model data
untuk menjamin representasi yang tepat terhadap
kebutuhan data dari perusahaan.
c. Memvalidasi relasi terhadap transaksi pengguna
Tujuan dari tahap ini adalah memvalidasi model data
logikal untuk menjamin bahwa model dapat membantu
pada transaksi-transaksi yang diperlukan. Jika semua
transaksi dapat berjalan sampai selesai dengan
menggunakan model yang sudah dibuat, maka dapat
dipastikan model yang sudah dibuat dapat membantu
transaksi yang ada pada perusahaan.
Namun, jika terdapat transaksi yang tidak berjalan
hingga selesai, maka harus dilakukan pengecekan kembali
pada entitas, hubungan maupun atribut yang ada pada
model data.
-
37
d. Memeriksa integrity constraints
Integrity constraints adalah constraint yang
diharapkan dapat menentukan dan menjaga basis data
menjadi tidak lengkap, tidak akurat dan tidak konsisten.
Beberapa jenis integrity constraints yang dipertimbangkan
adalah sebagai berikut :
1. Data yang diperlukan
2. Atribut domain constraints
3. Multiplicity
4. Entity integrity
5. Referential integrity
6. General constraints
e. Meninjau kembali model data logikal dengan pengguna
Model data logikal sudah lengkap dan
didokumentasikan. Namun pengguna diminta untuk
meninjau kembali model data logikal untuk menjamin
bahwa model data logikal sudah sesuai dengan
representasi yang diinginkan oleh perusahaan. Jika
pengguna tidak puas dengan model yang diberikan, maka
tahap-tahap sebelumnya mungkin perlu diulang kembali.
Namun jika pengguna puas dengan model yang
diberikan, maka tahap selanjutnya adalah tergantung
-
38
berapa jumlah pengguna yang akan berasosiasi dengan
basis data, dan bagaimana basis data tersebut akan diatur.
f. Mengubah model data logikal ke dalam model global
(opsional)
Tahap ini diperlukan untuk perancangan basis data
dengan multiple user views yang diatur dengan pendekatan
view integration. Sebuah model data logikal lokal
merepresentasikan satu atau lebih view dari basis data,
namun tidak semua view, sedangkan model data logikal
global merepresentasikan semua user view dari basis data.
Sehingga dalam tahap ini, bisa dilakukan
penggabungan dua atau lebih model data logikal lokal
menjadi sebuah model data logikal global.
g. Memeriksa untuk pertumbuhan di masa depan
Perancangan basis data logikal diakhiri dengan
apakah model data logikal mampu diperluas untuk
membantu adanya perkembangan di masa depan. Jika
model hanya dapat menopang kebutuhan saat ini, maka
hidup dari model tersebut relatif pendek dan pengerjaan
kembali dari model kemungkinan diperlukan untuk
menampung kebutuhan baru.
-
39
Penting untuk mengembangkan model yang dapat
diperluas dan mempunyai kemampuan untuk berevolusi
agar dapat menyangga kebutuhan-kebutuhan baru dengan
efek samping minimal dengan pengguna saat ini. Akan
tetapi, perlu atau tidaknya sebuah model diperiksa atau
diubah untuk dapat dipakai masa depan juga tidak lepas
dari permintaan pengguna.
2.2.6.4.3 Perancangan Basis Data Fisikal
Perancangan Basis Data Fisikal (Physical
Database Design) adalah proses menghasilkan deskripsi
dari implementasi basis data pada penyimpanan sekunder.
Perancangan ini menjelaskan hubungan dasar, organisasi
file, dan beberapa indeks yang digunakan untuk mencapai
pengaksesan data yang efisien dan batasan-batasan
integrasi serta mekanisme keamanan.
Adapun tahapannya adalah sebagai berikut :
a. Menterjemahkan model data logikal untuk DBMS yang
digunakan
Aktivitas pertama dalam perancangan basis data
fisikal adalah melibatkan penerjemahan relasi dalam
model data logikal ke dalam bentuk yang dapat
-
40
diimplementasikan ke target DMBS. Tahapannya meliputi
:
1. Perancangan relasi dasar
Untuk memulai proses perancangan fisikal, yang
utama dilakukan adalah menyatukan dan memahami
informasi mengenai relasi yang dihasilkan dari
perancangan logikal basis data. Informasi yang
diperlukan dapat didapat dari kamus data dan definisi
masing-masing relasi yang dideskripsikan dengan
menggunakan Database Design Language (DBDL).
Untuk merepresentasikan rancangan dari relasi dasar,
dapat digunakan DBDL untuk mendefinisikan domain,
nilai default dan indikator null.
2. Perancangan representasi dari derived data
Atribut yang nilainya dapat ditemukan dengan menguji
nilai dari atribut lain dinamakan derived attribute atau
calculated. Tujuan dari tahap ini adalah agar dapat
menentukan bagaimana sebuah derived data dapat
direpresentasikan yang ada di model data di dalam
target DBMS.
3. Perancangan general constraints
Update terhadap relasi bisa dianggap dibatasi oleh
integrity constraints, yang memimpin dunia nyata
transaksi yang direpresentasikan oleh update. Integrity
-
41
constraints terdiri dari data yang diperlukan, domain
constraints dan entitas dan referential integrity. Tujuan
dari tahap ini adalah merancang constraints umum
untuk target DBMS.
b. Perancangan indeks dan organisasi file
Tujuannya adalah untuk menentukan organisasi file
yang optimal untuk menyimpan relasi dasar dan indeks-
indeks yang diperlukan agar mencapai performa yang
dapat diterima, yang dimana, cara relasi dan tuples akan
disimpan di penyimpanan sekunder. Aktivitas pada tahap
ini dibagi menjadi beberapa, yaitu :
1. Menganalisis transaksi
Agar perancangan basis data fisikal berjalan efektif,
diperlukan pengetahuan mengenai transaksi atau query
yang akan dijalankan di dalam basis data. Hal ini
mencakup baik informasi kualitatif maupun informasi
kuantitatif. Kriteria performa transaksi yang dianalisis
adalah seperti berikut ini :
Transaksi yang sering berjalan dan akan memiliki pengaruh yang signifikan terhadap performa.
Transaksi yang kritikal terhadap operasi bisnis.
-
42
Waktu-waktu tertentu, baik tiap hari maupun tiap minggu, dimana akan ada permintaan yang tinggi
yang dihadapi oleh basis data.
2. Memilih organisasi file
Salah satu tujuan utama dalam perancangan basis data
fisikal adalah untuk menyimpan dan mengakses data
dengan cara yang efisien. Pemilihan organisasi file
dapat dikategorikan ke dalam tipe-tipe file :
Heap Hash Indexed Sequential Access Method (ISAM) B*-tree Clusters
Jika target DMBS tidak memperbolehkan adanya
pemilihan organisasi file, maka tahap ini dapat
dihilangkan.
3. Memilih indeks
Salah satu pendekatan dalam memilih organisasi file
yang tepat untuk sebuah relasi adalah menjaga
unordered tuples dan membuat sebanyak mungkin
indeks sekunder jika diperlukan. Pendekatan lainnya
adalah dengan menentukan sebuah indeks primary
atau clustering.
-
43
4. Mengestimasi kebutuhan disk space
Ada saat dimana konfigurasi hardware menjadi syarat
dalam pengimplementasian basis data fisikal.
Walaupun itu bukan masalah utama, perancang tetap
harus memperkirakan jumlah disk space yang akan
dipakai untuk menyimpan basis data, jika terdapat
hardware baru.
c. Perancangan tampilan untuk pengguna
Tahap pertama dari metode perancangan basis data
melibatkan hasil produksi dari model data konseptual baik
untuk single-user view maupun beberapa gabungan user
view yang diidentifikasikan selama pengumpulan
kebutuhan dan tahap analisis. Tujuan utama dari tahap ini
adalah untuk merancang user view yang diidentifikasikan
di tahap perancangan sebelumnya.
d. Perancangan mekanisme keamanan
Sebuah basis data merupakan sumber daya penting
bagi perusahaan sehingga keamanan sangatlah penting.
Tujuan utama dari tahap ini adalah untuk merancang
mekanisme keamanan untuk basis data sebagaimana telah
ditetapkan oleh pengguna selama tahap pengumpulan
kebutuhan dari siklus hidup sistem basis data. DBMS
-
44
menyediakan dua jenis keamanan basis data yaitu
keamanan sistem dan keamanan data.
Keamanan sistem melindungi akses dan penggunaan
basis data pada tingkat sistem, seperti username dan
password. Keamanan data melindungi akses dan
penggunaan objek basis data, seperti relasi dan views, dan
aksi yang dapat dilakukan pengguna terhadap objek-objek
tersebut. Perancangan hak akses pun tergantung dari target
DBMS, beberapa sistem menyediakan fasilitas lebih dari
yang lain untuk merancang hak akses.
e. Pertimbangan kembali dengan redundansi yang sudah
terkontrol
Normalisasi adalah sebuah teknik untuk menentukan
atribut mana yang sesuai dengan relasinya. Perancangan
basis data logikal adalah hasil dari normalisasi yang sudah
terstruktur secara konsisten dan mempunyai redundansi
yang minimal.
Namun, terkadang menormalisasikan basis data tidak
menyediakan pemrosesan yang efisien dan maksimum.
Secara formal, denormalisasi berhubungan dengan
perbaikan skema relasi. Dalam beberapa hal,
denormalisasi dipakai secara spesifik untuk meningkatkan
-
45
kecepatan proses atau transaksi yang kritikal, yaitu dengan
cara :
1. Menggabungkan relasi one-to-one.
2. Menduplikasikan atribut non-key di dalam relasi one-
to-many untuk mengurangi joins.
3. Menduplikasikan atribut foreign key di dalam relasi
one-to-many untuk mengurangi joins.
4. Menduplikasikan atribut di dalam relasi many-to-many
untuk mengurangi joins.
5. Memperkenalkan repeating groups.
6. Membuat extract table.
7. Mempartisi relasi.
f. Memantau dan menyesuaikan sistem operasional
Tujuan utama dari tahap ini adalah untuk memantau
sistem yang beroperasional dan meningkatkan performa
dari sistem untuk memperbaiki rancangan yang tidak tepat
terhadap keputusan ataupun perubahan kebutuhan. Ada
beberapa faktor yang digunakan untuk mengukur efisiensi
:
1. Transaction Throughput.
2. Response Time.
3. Disk Storage.
-
46
Untuk meningkatkan efisiensi basis data, beberapa
DBMS menyediakan fasilitas bagi Database
Administrator (DBA) untuk melakukan tuning, berikut
beberapa keuntungan dari tuning :
1. Tuning dapat menghindari penambahan hardware.
2. Dapat menurunkan konfigurasi hardware, sehingga
lebih murah dan menghindari maintenance pada
hardware.
3. Sebuah sistem yang sering di-tuning menghasilkan
response time lebih cepat dan throughput lebih baik,
yang membuat pengguna lebih produktif.
4. Meningkatkan response times membuat moral
karyawan juga tinggi.
2.2.6.5 Pemilihan DBMS
Memilih DBMS yang sesuai untuk sistem basis data yang
akan dibuat. Terdapat beberapa tahapan dalam memilih DBMS,
yaitu :
Mendefinisikan waktu pembelajaran. Menuliskan dua atau tiga produk. Mengevaluasi produk. Merekomendasikan hasil dan pemilihan laporan.
-
47
2.2.6.6 Perancangan Aplikasi
Merancang tampilan layar pada aplikasi dan antar muka
pengguna yang akan digunakan untuk memproses basis data.
Dalam perancangan aplikasi yang perlu diperhatikan adalah
rancangan antarmuka untuk pengguna dan rancangan transaksi.
Rancangan transaksi adalah sekumpulan tindakan yang
dibawa oleh pengguna tunggal atau program aplikasi yang
mengakses kandungan dari basis data. Tujuan dari rancangan
transaksi adalah mendefinisikan dan mendokumentasikan
karakteristik tingkat tinggi transaksi yang diperlukan oleh basis
data, meliputi :
Data yang akan digunakan pada transaksi. Karakteristik fungsional dari transaksi. Keluaran dari transaksi. Kepentingan pengguna. Dasar pemakaian yang diharapkan.
Sebelum mengimplementasikan laporan atau faktur,
sebaiknya merancang dahulu tampilan antarmuka untuk
pengguna. Berikut ini adalah pedoman untuk merancang laporan
atau faktur :
Judul relevan. Instruksi yang mudah untuk dipahami.
-
48
Pengelompokan logikal dan bidang secara berurutan. Gambaran laporan atau faktur. Label bidang yang mudah dikenali. Penggunaan singkatan dan istilah konsisten. Penggunaan warna yang konsisten. Adanya jarak dan batas-batas untuk bidang pengisian data. Pergerakan kursor yang nyaman. Koreksi kesalahan untuk satu karakter dan seluruh bidang. Pesan kesalahan untuk nilai-nilai yang tidak dapat
diterima.
Pilihan bidang ditandai dengan jelas. Pesan penjelasan yang jelas untuk bidang-bidang. Adanya penanda penyelesaian.
2.2.6.7 Prototyping
Membangun model kerja dari sistem basis data yang dapat
memungkinkan pengguna untuk menggambarkan dan
mengevaluasi bagaimana sistem akhir dapat berfungsi. Ada dua
pemodelan strategis yang biasa digunakan, yaitu requirements
prototyping dan evolutionary prototyping.
-
49
2.2.6.8 Implementasi
Membuat definisi basis data fisikal dan program aplikasi.
Implementasi database menggunakan Data Definition Language
(DDL) dari DBMS atau Graphical User Interface (GUI) yang
dapat menyembunyikan DDL tingkat rendah secara fungsional.
2.2.6.9 Pengubahan dan Pemuatan Data
Memuat data dari sistem lama ke sistem yang baru dan
mengkonversi aplikasi yang ada serta menjalankannya pada
sistem basis data yang baru. Proses ini harus direncanakan secara
matang untuk memastikan perpindahan yang lancar.
2.2.6.10 Uji Coba
Sistem basis data diuji untuk mengetahui kesalahan-
kesalahan yang ada dan menyempurnakan sesuai dengan
kebutuhan pengguna. Contoh kriteria yang dapat digunakan untuk
mengevaluasi, diantaranya:
Learnability Seberapa lama pengguna baru menjadi produktif dengan sistem?
Performance Bagaimana sistem menanggapi pekerjaan pengguna secara tepat?
Robustness Bagaimana toleransi sistem terhadap kesalahan pengguna?
-
50
Recoverability Seberapa baik sistem melakukan recovery terhadap kesalahan-kesalahan pengguna?
Adaptability Bagaimana sistem mengikat menjadi satu model kerja?
2.2.6.11 Pemeliharaan Operasional
Sistem basis data telah diimplementasikan secara penuh.
Sistem diawasi dan dipelihara secara berkala. Ketika diperlukan,
kebutuhan baru yang diinginkan akan disatukan kedalam sistem
basis data melalui proses awal dari Database System Development
Lifecycle telah diimplementasikan secara penuh dan telah diuji.
Sistem akan dipelihara mengikuti aturan-aturan berikut :
Mengawasi kinerja sistem. Jika sistem turun drastis dibawah tingkatan yang bisa diterima, maka organisasi database
dibutuhkan.
Memelihara dan menaikkan tingkatan sistem database ketika dibutuhkan. Kebutuhan baru disatukan kedalam sistem
database melalui tingkatan sebelumnya dari siklus.
2.2.7 Pemodelan Entitas dan Relasi
Pengidentifikasian entitas direpresentasikan beserta nama entitas,
deskripsi entitas dan kejadian yang terjadi pada entitas tersebut.
-
51
Pengidentifikasian relasi direpresentasikan beserta nama entitas,
multiplicity dan hubungannya.
2.2.7.1 Entitas
Menurut Connolly (2005, p343), entitas adalah
sekumpulan objek yang diidentifikasi oleh sebuah perusahaan
atau perorangan yang mempunyai sifat-sifat yang sama dan
mempunyai keberadaan yang independen. Sebuah entitas
memiliki keberadaannya yang bebas dan bisa menjadi objek
dengan fisik atau menjadi objek dengan keberadaan konseptual.
Artinya perancang yang berbeda mungkin mengidentifikasikan
entitas yang berbeda pula. Sebuah basis data biasanya berisi
banyak tipe entitas yang berbeda pula. Dalam Unified Modelling
Language (UML), huruf pertama dari entitas diawali dengan
huruf kapital.
Sedangkan menurut Connolly (2005, p345), entity
occurrence adalah sebuah objek unik yang dapat diidentifikasikan
dari sebuah tipe entitas. Berikut adalah contoh entitas : karyawan,
perusahaan, pemilik.
-
52
Gambar 2.3 Nama Entitas
2.2.7.2 Relasi
Menurut Connolly dan Begg (2005, p346), relasi
(relationship) adalah sekumpulan hubungan yang berarti antara
satu atau lebih entitas, dimana setiap tipe relationship diberi nama
yang menggambarkan fungsinya.
Sedangkan relationship occurrence adalah hubungan yang
dapat diidentifikasi secara unik, yang termasuk satu kejadian dari
setiap entitas yang berpartisipasi.
Mempunyai
Perusahaan mempunyai karyawan
Gambar 2.4 Relasi antar Entitas
NamaHubungan
Karyawan Perusahaan
Nama Entitas
Karyawan Perusahaan
-
53
2.2.7.3 Derajat Relasi
Menurut Connolly dan Begg (2005, pp347-349), derajat
relasi adalah banyaknya tipe entitas yang terlibat dalam suatu
hubungan. Hubungan derajat dua disebut binary. Hubungan
binary adalah hubungan antara dua entitas. Contoh dari hubungan
binary :
Pemilik memiliki
Gambar 2.5 Hubungan Derajat Dua
Gambar diatas menjelaskan hubungan antara dua entitas
yaitu PemilikPribadi dan PropertiYangDisewakan yang
menjelaskan bahwa PemilikPribadi memiliki
PropertiYangDisewakan.
Hubungan derajat tiga disebut ternary. Ternary
menghubungkan relasi antar tiga entitas. Berikut adalah contoh
dari ternary :
PemilikPribadi PropertiYangDisewakan
-
54
Gambar 2.6 Hubungan Derajat Tiga
Pada gambar tersebut dijelaskan bahwa ada tiga entitas
yang saling berhubungan yaitu Pegawai, Cabang dan Pelanggan.
Ketiga entitas tersebut berhubungan karena mempunyai satu
kegiatan yaitu Mendaftar. Hubungan yang kompleks digunakan
untuk menjelaskan derajat yang lebih besar dari binary.
Suatu tipe hubungan dimana entitas yang sama ambil
bagian lebih dari sekali dalam aturan yang berbeda disebut
hubungan rekursif. Sebagai contoh adalah Supervisor yang
merupakan bagian dari Pegawai mengawasi Pegawai. Diperlukan
adanya aturan untuk menandakan tujuan dari masing-masing
entitas. Berikut adalah contoh gambar hubungan rekursif :
Pegawai Cabang
Pelanggan
Mendaftar
-
55
Mengawasi
Supervisor
Pegawai
Gambar 2.7 Hubungan Rekursif
2.2.7.4 Atribut
Menurut Connolly dan Begg (2005, p350), atribut adalah
sebuah properti atau sifat dari entitas atau tipe hubungan. Sebagai
contoh, entitas karyawan mungkin dapat menjelaskan atribut
sebagai berikut : noKaryawan, nama, posisi dan gaji. Setiap
atribut menyimpan nilai yang menjelaskan setiap entity
occurrence dan menggambarkan bagian utama dari data yang
disimpan didalam basis data.
Sedangkan domain attribute adalah sekelompok nilai yang
diperbolehkan bagi satu atau lebih atribut. Domain
mendefinisikan nilai potensi yang atribut miliki.
2.2.7.5 Keys
Menurut Connolly dan Begg (2005, p352), kumpulan
atribut minimal yang unik yang menggambarkan masing-masing
Pegawai
Aturan
Aturan
-
56
kejadian dari sebuah tipe entitas dinamakan candidate key.
Sedangkan primary key adalah candidate key yang dipilih untuk
menggambarkan secara unik masing-masing kejadian dari suatu
tipe entitas. Tipe entitas memungkinkan untuk memiliki lebih dari
satu candidate key.
Composite key adalah candidate key yang terdiri dari
atribut dua atau lebih. Suatu entitas biasanya memiiliki composite
key dalam menjelaskan atribut-atribut yang dimilikinya. Pada
kondisi tertentu, key dari suatu tipe entitas tersusun dari beberapa
atribut yang mempunyai nilai bersama yang unik tetapi tidak
secara terpisah.
Untuk beberapa sistem basis data sederhana,
memungkinkan untuk menampilkan semua atribut yang dimiliki
dari masing-masing entitas di dalam diagram Entity Relationship
(ER). Sedangkan pada sistem basis data yang kompleks, hanya
menampilkan atribut atau beberapa atribut.
-
57
Mengelola
Memiliki
Gambar 2.8 Keys
2.2.7.6 Entitas Kuat dan Lemah
Menurut Connolly (2005, p354), entitas kuat adalah entitas
yang keberadaannya tidak bergantung pada beberapa entitas yang
lainnya. Karakter dari entitas ini adalah bahwa setiap kejadian
entitas teridentifikasi secara unik dengan menggunakan atribut
primary key. Sebagai contoh, kita dapat mengidentifikasi secara
unik setiap anggota karyawan dengan menggunakan atribut
noKaryawan.
Sedangkan entitas lemah adalah entitas yang
keberadaannya bergantung pada beberapa entitas yang lain.
Karyawan
noKaryawan{PK}
nama
jabatan
gaji
Cabang
noCabang{PK}
alamat
jalan
kota
kodepos
PrimaryKey
CompositeAttribute
-
58
Karateristik dari entitas ini bahwa setiap kejadian entitas tidak
dapat teridentifikasi secara unik hanya dengan menggunakan
atribut entitas tersebut. Kita hanya dapat mengidentifikasi secara
unik entitas melalui hubungan yang dimiliki entitas dengan entitas
klien yang secara unik teridentifikasi menggunakan primary key.
Berikut adalah contoh gambar untuk menjelaskan entitas
kuat dan lemah :
Menyatakan
Gambar 2.9 Entitas Kuat dan Lemah
PelanggannoPelanggan(PK)nama namaDepan namaLengkapnoTelepon
Pilihan
TipePilihan
MaxSewa
Entitaskuat Entitaslemah
-
59
2.2.7.7 Structural Constraints
Structural Constraints berisikan pembatasan (restriction)
dari relasi entitas di dunia nyata. Tipe utama dari constraint di
dalam relationship disebut multiplicity.
Menurut Connolly (2005, p356), multiplicity adalah
jumlah (jangkauan dari kemungkinan kehadiran tunggal dari suatu
entity yang berasosiasi melalui relationship tertentu. Multiplicity
menentukan cara dimana entity dihubungkan yang merupakan
representasi dari aturan bisnis yang diterapkan oleh user di dalam
perusahaan.
2.2.8 Normalisasi
2.2.8.1 Pengertian Normalisasi
Normalisasi adalah teknik untuk menganalisis hubungan
berdasarkan primary key (atau candidate key) dan fungsi yang
berketergantungan. Teknik ini melibatkan serangkaian aturan
yang dapat digunakan untuk menguji hubungan individu sehingga
database dapat dinormalisasi untuk derajat apapun. Bila
persyaratan tidak terpenuhi, hubungan yang melanggar
persyaratan tersebut harus didekomposisi ke dalam hubungan
yang secara individual agar memenuhi persyaratan normalisasi.
Diusulkan tiga bentuk normal yang disebut First Normal Form
(1NF), Second Normal Form (2NF), dan Third Normal Form
(3NF). Normalisasi sering dieksekusi dalam serangkaian langkah.
-
60
Setiap langkah sesuai dengan bentuk normal tertentu yang telah
dikenal karakteristiknya masing-masing. Dengan semakin
lanjutnya normalisasi, hubungan menjadi lebih terbatas (lebih
kuat) dalam bentuk dan juga lebih kurang rentan untuk diperbaiki
jika terdapat penyimpangan atau kelainan.
.
2.2.8.2 Redundansi Data
Tujuan utama dari database relasional adalah untuk
mengelompokkan atribut ke dalam hubungan untuk
meminimalkan redundansi data. Jika tujuan ini tercapai, manfaat
potensial untuk database yang diimplementasikan meliputi :
1. Pembaruan data yang disimpan dalam database dapat
dicapai dengan jumlah minimal operasi sehingga
mengurangi kesempatan untuk data yang inkonsisten
terjadi di dalam database
2. Pengurangan ruang dalam penyimpanan file yang
dibutuhkan oleh relasi dasar sehingga meminimalkan
biaya.
-
61
2.2.8.3 Proses Normalisasi
Gambar 2.10 Proses Normalisasi
Menurut Connolly dan Begg (2005, pp401-402), dalam
normalisasi ada tiga bentuk normal yang dianjurkan yaitu First
Normal Form (1NF), Second Normal Form (2NF), dan Third
Normal Form (3NF). Seiring dengan berjalannya normalisasi,
hubungan menjadi lebih kuat pada bentuk dan juga kurang rentan
tehadap keanehan dalam update. Untuk hubungan model data,
penting untuk diketahui bahwa hanya 1NF yang menjadi elemen
penting dalam membuat sebuah relasi. Untuk mengatasi keanehan
update, umumnya dianjurkan untuk memproses sampai ke dalam
bentuk 3NF.
Kumpulan dari fungsi-fungsi yang bebas diberikan pada
masing-masing relasi dan masing-masing relasi mempunyai
primary key yang telah ada. Penting untuk diperhatikan bahwa arti
-
62
dari atribut-atribut dan relasinya harus dapat dimengerti terlebih
dahulu sebelum memulai proses normalisasi.
2.2.8.4 Relasi Antar Normal Form
2.2.8.4.1 Unnormalized Form (UNF)
Sebuah tabel yang mengandung kelompok
perulangan satu atau lebih. Sedangkan pengertian
kelompok perulangan adalah suatu atribut atau kumpulan
atribut di dalam tabel yang terdapat beberapa nilai pada
satu kejadian yang ditunjuk oleh atribut key dari suatu
tabel.
2.2.8.4.2 First Normal Form (1NF)
Suatu relasi di mana pada tiap persimpangan setiap
baris dan kolom berisi satu dan hanya satu nilai. Ada dua
pendekatan umum untuk menghilangkan kelompok
berulang dari tabel yang belum dinormalisasi :
1. Dengan memasukkan data yang sesuai dalam kolom
kosong yang berisi baris data yang berulang.
2. Dengan menempatkan data berulang, bersama dengan
salinan dari satu atau banyak original key ke dalam
relasi yang terpisah.
-
63
2.2.8.4.3 Second Normal Form (2NF)
Suatu relasi yang ada di dalam First Normal Form
dan setiap atribut non-primary-key, kemampuan
sepenuhnya tergantung pada primary key. Proses
normalisasi hubungan-hubungan di 1NF ke 2NF
melibatkan penghapusan ketergantungan parsial. Jika
ketergantungan parsial ada, kita menghapus atribut yang
berketergantungan secara parsial dari hubungan dengan
menempatkan mereka dalam hubungan baru bersama
dengan salinan dari determinan mereka.
2.2.8.4.4 Third Normal Form (3NF)
Berupa relasi yang terdapat pada First Normal
Form dan Second Normal Form, di mana tidak ada atribut
non-primary key yang bergantung transitif pada primary
key. Proses normalisasi hubungan-hubungan di 2NF ke
3NF melibatkan penghapusan ketergantungan transitif.
Jika ketergantungan transitif ada, kita menghapus atribut
yang berketergantungan secara transitif dari hubungan
dengan menempatkan atribut dalam hubungan baru
bersama dengan salinan determinannya.
-
64
2.3 Tools yang Digunakan
2.3.1 Analisis dan Perancangan
2.3.1.1 Flowchart
Flowchart merupakan penggambaran secara grafik dari
langkah-langkah dan urutan prosedur suatu program. Biasanya
mempermudah penyelesaian masalah, khususnya yang perlu
dipelajari dan dievaluasi lebih lanjut. Flowchart menggunakan
serangkaian simbol standar untuk mendeskripsikan melalui
gambar prosedur pemrosesan transaksi yang digunakan
perusahaan, dan arus data yang melalui sistem. Setiap simbol
dalam flowchart menggambarkan input, output, pemrosesan, serta
media penyimpanan yang dipergunakan.
Flowchart terbagi atas lima jenis, yaitu :
Flowchart Sistem (System Flowchart). Flowchart Paperwork/Flowchart Dokumen (Document
Flowchart).
Flowchart Skematik (Schematic Flowchart). Flowchart Program (Program Flowchart). Flowchart Proses (Process Flowchart).
Berikut adalah simbol-simbol yang digunakan dalam pembuatan
flowchart :
-
65
Gambar 2.11 Simbol-Simbol pada Flowchart
Simbol Keterangan
Merupakan awal atau akhir bagian dari
proses
Proses komputerisasi
Keputusan atau pilihan
Proses manual
Dokumen atau laporan
Alur data
Penyimpanan data
Konektor antara dua halaman
Konektor antara poin yang berbeda
Dokumen dan file utama
-
66
2.3.1.2 Data Flow Diagram (DFD)
Data Flow Diagram (DFD) adalah sebuah alat yang
menggambarkan aliran data sampai sebuat sistem selesai, dan
kerja atau proses dilakukan dalam sistem tersebut. Istilah Data
Flow Diagram dalam bahasa Indonesia biasa disebut diagram
aliran data. Dalam DFD terdapat empat komponen utama, yaitu :
1. External Agents
Agen eksternal mendefinisikan orang atau sebuah unit
organisasi, sistem lain, atau organisasi yang berada di luar
sistem proyek tapi dapat mempengaruhi kerja sistem.
2. Proses
Proses adalah penyelenggaraan kerja atau jawaban, datangnya
aliran data atau kondisinya.
3. Data Stores
Data Stores adalah tempat penyimpanan data.
4. Data Flow
Data Flow merepresentasikan sebuah input data ke dalam
sebuah proses atau output dari data (atau informasi) pada
sebuah proses.
Jenis-jenis DFD adalah sebagai berikut :
1. Level 0 (Diagram Konteks)
-
67
Level ini merupakan sebuah proses yang berada di posisi
pusat.
2. Level 1 (Diagram Nol)
Level ini merupakan sebuah proses yang terdapat di level 0
yang dipecahkan menjadi beberapa proses lainnya. Sebaiknya
maksimum tujuh proses untuk sebuah diagram konteks.
3. Level 2 (Diagram Rinci)
Pada level ini merupakan diagram yang merincikan diagram
level satu. Terdapat tanda * yang digunakan jika proses
tersebut tidak dapat dirincikan lagi. 2.0* artinya proses level
rendah yang tidak dapat dirincikan lagi. Penomoran yang
dilakukan adalah berdasarkan urutan proses.
Simbol-simbol yang digunakan pada DFD
DeMarco and Yourdan Symbols
Keterangan Gane and Sarson Symbols
Source
(Kesatuan Luar)
Proses
Data Flow
(Arus Data)
-
68
Data Store
(Penyimpanan Data)
Gambar 2.12 Simbol-Simbol pada DFD
2.3.1.3 State Transition Diagram (STD)
State Transition Diagram (STD) adalah suatu kondisi
yang menunjukkan keadaan tertentu, dimana suatu sistem dapat
dinyatakan dengan transisi yang menghasilkan keadaan tertentu
yang baru. Biasanya digunakan dalam sistem yang real time.
Simbol yang terdapat dalam STD antara lain :
System State Setiap empat persegi panjang menggambarkan satu
keadaan sistem dari sistem secara keseluruhan.
Changes of State Merupakan perpindahan proses dari alur kejadian yang
perindahan kejadian digambarkan dengan anak panah.
-
69
Gambar 2.13 Changes of State
Conditions dan Actions Conditions dan Actions gambaran jika terdapat suatu
kejadian yang merupakan hubungan sebab dan akibat
dari suatu proses.
Kejadian1
Kejadian2
Kejadian3
-
70
Gambar 2.14 Conditions dan Actions
2.3.2 Programming Tools
2.3.2.1 Microsoft SQL Server
Microsoft SQL Server merupakan produk RDBMS
(Relational Database Management System) yang dibuat oleh
Microsoft. Orang sering menyebutnya dengan SQL Server saja.
Microsoft SQL Server juga mendukung SQL sebagai bahasa
untuk memproses query ke dalam database. Mirosoft SQL Server
banyak digunakan pada dunia bisnis, pendidikan atau juga
pemerintahan sebagai solusi database atau penyimpanan data.
2.3.2.2 Visual Basic.NET
Visual Basic.NET adalah bahasa pemrograman yang
dikembangkan oleh Microsoft. Visual Basic.NET merupakan
Condition
Action
Kejadian1
Kejadian2
-
71
pengembangan dari versi sebelumnya, yaitu Visual Basic 6.0,
yang memiliki karakteristik mudah untuk dipahami., namun
handal dalam mengikuti tren perangkat lunak. Perbedaan
mendasar antara Visual Basic.NET dengan versi-versi
sebelumnya adalah kemampuan Object Oriented Programming
(OOP). Saat ini Visual Basic.NET telah dikolaborasikan dengan
beberapa jenis aplikasi seperti aplikasi desktop.
Visual Basic.NET berorientasi objek artinya program
antarmuka terdiri dari objek-objek. Keunggulannya adalah
pengelompokan objek yang dibagi menjadi beberapa modul
sehingga pengaturan pemrograman difokuskan pada tiap-tiap
modulnya.
Struktur yang ada dalam Visual Basic.NET terdiri dari :
a. Form
Form adalah windows atau jendela kerja (worksheet) yang
digunakan untuk membuat tampilan yang diinginkan.
b. Kontrol
Kontrol merupakan tampilan grafis yang dibuat pada form
untuk interaksi dengan pemakai.
c. Properties
Properties adalah nilai atau karakteristik yang dimiliki oleh
Visual Basic.NET.
d. Metode
-
72
Metode adalah serangkaian perintah yang sudah tersedia pada
suatu objek yang dapat diminta untuk mengerjakan tugas
khusus.
e. Prosedur Kejadian
Prosedur kejadian adalah kode yang berhubungan dengan
suatu objek.
f. Prosedur Umum
Prosedur umum adalah merupakan kode yang tak
berhubungan dengan suatu objek.
g. Modul
Modul adalah sekumpulan dari prosedur umum dan definisi
konstanta yang digunakan oleh aplikasi.
2.4 Pemahaman Objek Studi
2.4.1 Pengertian Persediaan
Menurut Agus Ristono (2009), persediaan dapat diartikan sebagai
barang-barang yang disimpan untuk digunakan atau dijual pada masa atau
periode yang akan datang. Persediaan terdiri dari persediaan bahan baku,
persediaan barang setengah jadi, dan persediaan barang jadi.
Persediaan barang mempunyai fungsi yang sangat penting bagi
perusahaan. Dari berbagai macam persediaan barang yang ada, seperti
bahan baku, barang dalam proses, dan barang jadi, perusahaan melakukan
penyimpanan atas persediaan barang karena berbagai fungsi, yaitu fungsi
-
73
yang memungkinkan perusahaan dapat memenuhi permintaan pelanggan,
fungsi untuk mempertimbangkan penghematan-penghematan, dan fungsi
untuk mengurangi adanya resiko ketidakpastian.
(http://elib.unikom.ac.id/download.php?id=91101)
2.4.1.1 Tujuan Persediaan
Pengendalian persediaan yang dijalankan adalah untuk
menjaga tingkat persediaan pada tingkat yang optimal sehingga
diperoleh penghematan-penghematan untuk persediaan tersebut.
Beberapa hal yang menyangkut suatu perusahaan harus
menyelenggarakan persediaan menurut Ahyari (2003) adalah :
1. Bahan yang akan digunakan untuk pelaksanaan proses
produksi perusahaan tersebut tidak dapat dibeli atau
didatangkan secara satu persatu dalam jumlah unit yang
diperlukan perusahaa serta pada saat barang tersebut akan
dipergunakan untuk proses produksi perusahaan tersebut.
Bahan baku tersebut pada umumnya akan dibeli dalam jumlah
tertentu, dimana jumlah tertentu ini akan dipergunakan untuk
menunjang pelaksanaan proses produksi perusahaan yang
bersangkutan dalam beberapa waktu tertentu pula. Dengan
keadaan semacam ini maka bahan baku yang sudah dibeli oleh
perusahaan namun belum dipergunakan untuk proses produksi
akan masuk sebagai persediaan bahan baku dalam perusahaan
tersebut.
-
74
2. Apabila perusahaan tidak mempunyai persediaan bahan baku,
sedangkan bahan baku yang dipesan belum datang maka
pelaksanaan proses produksi dalam perusahaan tersebut akan
terganggu. Ketiadaan bahan baku tersebut akan
mengakibatkan terhentinya pelaksanaan proses produksi
pengadaan bahan baku dengan cara tersebut akan membawa
konsekuensi bertambah tingginya harga beli bahan baku yang
dipergunakan oleh perusahaan. Keadaan tersebut tentunya
akan membawa kerugian bagi perusahaan.
3. Untuk menghindari kekurangan bahan baku tersebut, maka
suatu perusahaan dapat menyediakan bahan baku dalam
jumlah yang banyak. Tetapi persediaan bahan baku dalam
jumlah besar tersebut akan mengakibatkan terjadinya biaya
persediaan bahan yang semakin besar pula. Besarnya biaya
yang semakin besar ini berarti akan mengurangi keuntungan
perusahaan. Di samping itu, resiko kerusakan bahan juga akan
bertambah besar apabila persediaan bahan bakunya besar.
(http://elib.unikom.ac.id/files/disk1/453/jbptunikompp-gdl-
sukamabins-22618-4-unikom_s-i.pdf)
2.4.1.2 Penggunaan Persediaan
Persediaan barang mempunyai fungsi yang sangat penting
bagi perusahaan. Dari berbagai macam persediaan yang ada,
-
75
seperti bahan baku, barang dalam proses, dan barang jadi.
Menurut T. Hani Handoko (2000, pp335-336), perusahaan
melakukan penyimpanan atas persediaan atas barang karena
berbagai fungsi, yaitu:
1. Fungsi Decoupling
Fungsi penting persediaan adalah memungkinkan operasi-operasi
perusahaan internal dan eksternal mempunyai kebebasan
(independensi).
Persediaan decouples ini memnungkinkan perusahaan dapat
memenuhi permintaan langganan tanpa terganggu pemasok.
2. Fungsi Economic Lot Sizing
Melalui penyimpanan persediaan, perusahaan dapat memproduksi
dan membeli sumber-sumber daya dalam kuantitas yang dapat
mengurangi biaya-biaya per unit. Dengan persediaan lot size ini
akan mempertimbangkan penghematan-penghematan.
3. Fungsi Antisipasi
Sering perusahaan menghadapi fluktuasi permintaan yang dapat
diperkirakan dan diramalkan berdasar pengalaman atau data masa
lalu. Disamping itu, perusahaan juga sering dihadapkan pada
ketidakpastian jangka waktu pengiriman barang kembali sehingga
harus dilakukan antisipasi untuk cara menanggulanginya.
(http://elib.unikom.ac.id/download.php?id=91101)
-
76
2.4.1.3 Prosedur Persediaan
Menurut Mulyadi (2001, p569), deskripsi prosedur ini
merupakan salah satu prosedur yang membentuk sistem
pembelian. Dalam prosedur ini dicatat harga pokok persediaan
yang dibeli.
2.4.1.4 Dokumen Persediaan
Menurut Mulyadi (2001, p569), dokumen sumber yang
digunakan dalam prosedur pencatatan hara pokok persediaan yang
dibeli adalah : laporan penerimaan barang dan bukti kas keluar.
Laporan penerimaan barang digunakan oleh bagian Gudang
sebagai dasar pencatatan tambahan kuantitas barang dari
pembelian ke dalam kartu gudang. Bukti kas keluar yang
dilampiri dengan laporan penerimaan barang, surat order
pembelian dan faktur dari pemasok dipakai sebagai dokumen
sumber dalam pencatatan harga pokok persediaan yang dibeli
dalam register bukti kas keluar. Bukti kas keluar juga dipakai
sebagai dasar pencatatan tambahan kuantitas dan harga pokok
persediaan ke dalam kartu persediaan.
2.4.2 Pengertian Pembelian
Istilah pembelian (purchasing) menurut Saefudin Azwar (1993),
pembelian dapat didefinisikan sebagai Proses terjadinya pengadaan
barang yang tergolong kurang memenuhi kebutuhan yang diperlukan.
-
77
Pada intinya pembelian merupakan kegiatan yang menyeluruh dan
terfokus pada pengadaan material dan jasa yang dibutuhkan untuk
mencapai tujuan organisasi. Bagian pembelian berfungsi dalam
menentukan kebutuhan memilih pemasok, penerimaan material sesuai
waktu, harga, bentuk dan kondisi yang layak, menerbitkan kontrak atau
order dan memastikan pengiriman.
(http://elib.unikom.ac.id/files/disk1/36/jbptunikompp-gdl-s1-2005-
mamansurah-1794-1-jurnal.pdf)
2.4.2.1 Tujuan Pembelian
Menurut Render (2001, p414), tujuan dari kegiatan
pembelian adalah :
a. Membantu identifikasi produk dan jasa yang dapat
diperoleh secara eksternal.
b. Mengembangkan, mengevaluasi dan menentukan
pemasok, harga dari pengiriman terbaik bagi barang
dan jasa tersebut.
Jenis transaksi dalam pembelian dibedakan menjadi dua,
yaitu :
a. Pembelian tunai adalah proses pembayaran yang
dilakukan secara langsung pada saat barang diterima.
b. Pembelian non-tunai adalah proses pembayaran yang
tidak dilakukan langsung pada saat barang diterima,
-
78
tetapi pembayaran dilakukan selang beberapa waktu
setelah barang diterima sesuai dengan perjanjian kedua
belah pihak.
Hal-hal yang harus diperhatikan dalam proses pembelian
adalah :
a. Kualitas.
b. Harga.
c. Waktu Proses.
2.4.2.2 Penggunaan Pembelian
Pengawasan perlu dilakukan terhadap pelaksanaan proses
pembelian, karena pembelian menyangkut investasi dana dalam
persediaan dan kelancaran arus barang ke dalam perusahaan.
Menurut Mulyadi (2001, p299) fungsi yang terkait dalam sistem
pembelian adalah sebagai berikut :
a. Fungsi Gudang
Bertanggung jawab untuk memperoleh informasi
mengenai harga barang, menentukan pemasok yang
dipilih dalam pengadaan barang dan mengeluarkan
order pembelian kepada pemasok yang dipilih.
b. Fungsi Pembelian
Bertanggung jawab untuk memperoleh informasi
mengenai harga barang, menentukan pemasok yang
-
79
dipilih dalam pengadaan barang, dan mengeluarkan
order pembelian kepada pemasok yang dipilih.
c. Fungsi Penerimaan
Bertanggung jawab untuk melakukan pemeriksaan
terhadap jenis, mutu dan kualitas bahan yang diterima
dari pemasok guna menentukan dapat atau tidaknya
barang tersebut diterima oleh perusahaan.
d. Fungsi Akuntansi
Bertanggung jawab dalam pencatatan transaksi
pembelian yang menjadi hutang sebagai dokumen
bukti kas keluar.
2.4.2.3 Prosedur Pembelian
Menurut Mulyadi (2001, pp301-307), terdapat beberapa
tahapan prosedur dalam pembelian, yaitu :
1. Prosedur Permintaan Pembelian
Pada prosedur permintaan pembelian, fungsi gudang
mengajukan permintaan pembelian dalam formulir surat
permintaan pembelian kepada fungsi pembelian. Jika barang
tidak disimpan di gudang, misalnya untuk barang-barang yang
langsung pakai, fungsi yang memakai barang mengajukan
permintaan pembelian langsung ke fungsi pembelian dengan
menggunakan surat permintaan pembelian.
-
80
2. Prosedur Permintaan Penawaran Harga dan Pemilihan
Pemasok
Fungsi pembelian mengirimkan surat permintaan
penawaran harga kepada pemasok untuk memperoleh
informasi mengenai harga barang dan berbagai syarat
pembelian yang lain untuk memungkinkan pemilihan
pemasok yang akan ditunjuk sebagai pemasok barang yang
diperlukan oleh perusahaan.
3. Prosedur Order Pembelian
Dalam prosedur ini fungsi pembelian mengirim surat
order pembelian kepada pemasok yang dipilih dan
memberitahukan kepada unit-unit organisasi lain dalam
perusahaan (misalnya fungsi penerimaan, fungsi yang
menerima barang dan fungsi pencatat utang) mengenai order
pembelian yang sudah dikeluarkan oleh perusahaan.
4. Prosedur Penerimaan Barang
Dalam prosedur ini fungsi penerimaan melakukan
pemeriksaan mengenai jenis, kuantitas dan mutu barang yang
diterima dari pemasok serta kemudian membuat laporan
penerimaan barang untuk menyatakan penerimaan barang dari
pemasok tersebut.
-
81
5. Prosedur Pencatatan Hutang
Dalam prosedur ini akuntansi memeriksa dokumen-
dokumen yang berhubungan dengan pembelian (surat order
pembelian, laporan penerimaan barang, faktur dari pemasok)
dan menyelenggarakan pencatatan hutang atau pengarsipan
dokumen sumber sebagai catatan hutang.
6. Prosedur Distribusi Pembelian
Prosedur ini meliputi distribusi rekening yang didebet
dari transaksi pembelian untuk kepentingan pembuatan
laporan manajemen.
2.4.2.4 Dokumen Pembelian
Menurut Mulyadi (2001, pp301-307), pembagian dokumen pada
pembelian diantaranya:
1. Surat Permintaan Pembelian
Dokumen ini merupakan formulir yang diisi oleh fungsi
gudang atau fungsi pemakai barang untuk meminta fungsi
pembelian melakukan pembelian barang dengan jenis, jumlah
dan mutu seperti yang tersebut dalam surat tersebut. Surat
permintaan pembelian ini biasanya dibuat dua lembar untuk
setiap permintaan, satu lembar untuk fungsi pembelian dan
tembusannya untuk arsip fungsi yang meminta barang.
-
82
2. Laporan Penerimaan Barang
Dokumen penerimaan barang dibuat oleh fungsi
penerimaan untuk menunjukkan bahwa barang yang diterima
dari pemasok telah memenuhi jenis, spesifikasi, mutu dan
kuantitas seperti yang tercantum dalam surat order pembelian.
3. Surat Order Pembelian
Dokumen ini digunakan untuk memesan barang kepada
pemasok yang telah dipilih. Surat order pembelian merupakan
dokumen yang dikirim sebagai order resmi yang dikeluarkan
oleh perusahaan.
2.4.2.5 Retur Pembelian
Mengacu Mulyadi (2001), transaksi retur pembelian terjadi
jika perusahaan menerima pengembalian barang dari pemasok.
Dua dokumen penting yang digunakan dalam transaksi retur
pembelian adalah :
1. Memo Kredit
Dalam pencatatan transaksi retur pembelian, memo
kredit merupakan dokumen sumber (source document)
sebagai dasar pencatatan transaksi tersebut dalam kartu
piutang dan jurnal umum atau jurnal retur pembelian.
Dokumen ini dikeluarkan oleh fungsi pembelian yang
-
83
memberi perintah kepada fungsi penerimaan untuk menerima
barang yang dikembalikan oleh pemasok.
2. Laporan Penerimaan Barang
Dalam transaksi retur pembelian, laporan penerimaan
barang merupakan dokumen pendukung yang melampiri
memo kredit. Dokumen ini dikeluarkan oleh fungsi
penerimaan sebagai laporan telah diterima dan diperiksanya
barang yang diterima dari pemasok.