8
BAB 2
LANDASAN TEORI
2 bab2
2.1 Pendekatan Basis Data
2.1.1 Basis Data
Menurut Connolly dan Begg (2005,p15), Database adalah
kumpulan data yang terbagi dan terhubung secara logikal dan deskripsi dari
data yang dirancang untuk memenuhi kebutuhan informasi suatu
organisasi.
Menurut C.J.Date (2000,p9), Database terdiri dari beberapa
kumpulan dari data tetap yang digunakan oleh sistem aplikasi untuk
diberikan kepada perusahaan.
Dari kutipan di atas, dapat disimpulkan bahwa basis data adalah
sekumpulan data yang saling berhubungan dan dirancang untuk memenuhi
kebutuhan informasi dari suatu organisasi.
2.1.2 Sistem Basis Data
Menurut C.J.Date (2000,p9), Sistem Basis Data adalah sistem
terkomputerisasi yang tujuan utama adalah memelihara informasi dan
membuat informasi tersedia saat dibutuhkan. Sebuah sistem database dapat
memiliki beberapa database. Setiap database dapat berisi/memiliki
sejumlah objek database, yang antara lain yaitu :
9
a. Field
Field adalah sekumpulan kecil dari kata atau sebuah deretan angka-
angka.
b. Record
Record adalah kumpulan dari field yang berelasi secara logis. Contoh:
nama,alamat,nomor telepon, dan sebagainya
c. File
File atau berkas adalah kumpulan record yang berelasi secara logis.
d. Entity
Entity adalah orang, tempat, benda, atau kejadian yang berkaitan
dengan informasi yang disimpan. Contoh : pelanggan, pekerja, dan
sebagainya
e. Attribute
Attribute adalah setiap karakteristik yang menjelaskan suatu entity.
Contoh : nama pelanggan, umur pekerja, dan sebagainya.
f. Primary Key
Primary key adalah sebuah field yang nilainya unik yang tidak sama
antara satu record dan record lain. Primary Key digunakan sebagai
tanda pengenal suatu field.
g. Foreign Key
Foreign Key adalah sebuah field yang nilainya berguna untuk
menghubungkan primary key lain yang berada pada table yang berbeda.
10
2.1.3 Database Management System (DBMS)
Menurut Connoly dan Begg (2005, p17) Database Management
System (DBMS) adalah suatu sistem perangkat lunak yang memungkinkan
pengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol
akses ke basis data.
Biasanya DBMS memiliki fasilitas-fasilitas sebagai berikut :
1. Fasilitas untuk mendefinisikan database, biasanya menggunakan
sebuah Data Definition Language (DDL). DDL mengizinkan
pengguna untuk menspesifikasikan tipe, struktur, dan batasan aturan
mengenai data yang bisa disimpan ke dalam basisdata tersebut.
2. Fasilitas untuk mengizinkan pengguna menambah, mengedit,
menghapus, dan mendapatkan kembali data dari database, biasanya
menggunakan Data Manipulation Language (DML). Ada pula suatu
fasilitas yang melayani pengaksesan data yang disebut query language.
Bahasa yang diakui adalah Structured Query Language (SQL), yang
merupakan standard dari DBMS.
3. Fasilitas untuk mengontrol ke basis data (DCL). Contoh :
a) Suatu sistem keamanan yang mencegah user yang tidak punya
autoritas untuk mengakses data
b) Suatu sistem terintegrasi yang memelihara konsistensi penyimpanan
data.
c) Suatu sistem kontrol pengembalian data yang mana dapat
mengembalikan data ke keadaan sebenarnya apabila terjadi
kegagalan perangkat keras atau perangkat lunak.
11
d) Terdapat suatu katalog yang dapat diakses oleh pengguna, yang
menjelaskan data di dalam basisdata tersebut.
Menurut Connoly Dan Begg (2005,p18), komponen DBMS terbagi
menjadi lima yaitu :
A. Hardware
Hardware dapat berkisar dari komputer tunggal, mainframe
tunggal, hingga jaringan komputer. Hardware tertentu tergantung
pada kebutuhan organisasi dan Database Management System
(DBMS) yang digunakan. Sebuah DBMS memerlukan jumlah
minimum memori dan hardisk untuk bekerja, tetapi konfigurasi yang
minimum tidak memberikan performa yang handal.
B. Software
Komponen ini terdiri dari DBMS dan program aplikasi
bersama sistem operasi dan software jaringan, jika DBMS digunakan
melalui jaringan. Biasanya, program aplikasi ditulis dalam third-
generation programming language (3GL) seperti 'C', C + +, Java,
Visual Basic, COBOL, Fortran, Ada, atau Pascal, atau menggunakan
bahasa generasi keempat (4GL), seperti SQL.
C. Data
Merupakan komponen yang terpenting dalam DBMS. Data
berfungsi sebagai jembatan antara komponen mesin dan komponen
manusia. Database berisi data operasional dan metadata. Struktur
database disebut skema, skema terdiri dari banyak tabel, di dalam
tabel terdapat lebih dari satu atribut.
12
D. Prosedur
Mengacu pada instruksi dan aturan yang memerintahkan
perancangan dan pengguna database. Pengguna sistem dan petugas
yang mengatur database memerlukan dokumentasi prosedur
bagaimana untuk menggunakan dan menjalankan sistem. Instruksi
tersebut seperti :
a. Bagaimana cara masuk ke dalam DBMS
b. Bagaimaan menggunakan fasilitas DBMS tertentu
c. Memulai dan menghentikan DBMS
d. Bagaimana menangani kesalahan hardware dan
software tertentu
E. Manusia
Komponen manusia terdiri dari :
1. Programer Aplikasi : Yang bertanggung jawab untuk membuat
aplikasi database dengan menggunakan bahasa pemrograman
yang ada.
2. End User : Siapapun yang berinteraksi dengan sistem secara
online atau tidak melalui komputer atau jaringan.
3. Data Administrator : Seseorang yang berwenang membuat
keputusan dan kebijakan strategis mengenai data yang ada.
4. Database Administrator : Menyediakan dukungan teknis untuk
implementasi keputusan tersebut, dan bertanggung jawab atas
keseluruhan kendali sistem pada tingkat teknis.
13
Beberapa keuntungan dan kerugian dari DBMS menurut Connoly
dan Begg (2005,p26-30) :
1. Keuntungan DBMS
a. Kontrol terhadap pengulangan data (data redudancy)
Database berusahan untuk menghilangkan pengulangan
dengan mengintegrasikan file sehingga berbagai copy dari data
yang sama tidak tersimpan. Bagaimanapun juga pendekatan ini
tidak menghilangkan pengulangan secara menyeluruh, tetapi
mengendalikan jumlah pengulangan dalam database.
b. Data yang konsisten
Dengan adanya pengendalian dan penghilangan
redudancy, inkonsistensi data dapat dihindari. Jika item di
basisdata hanya dsimpan pada suatu tempat, maka update yang
dilakukan cukup sekali saja, dan nilai yang baru akan langsung
tersedia bagi user.
c. Semakin banyak infomasi yang didapat dari data yang sama
Dengan data operasional yang terintegrasi, hal ini
memungkinkan bagi organisasi untuk mendapatkan informasi
tambahan dari data yang sama.
d. Pembagian data (sharing of data)
Database termasuk bagian dari keseluruhan organisasi dan
dapat dibagikan oleh semua pengguna yang berotoritas. Dalam hal
ini banyak pengguna membagikan lebih banyak data.
e. Meningkatkan integritas data
14
Integritas database mengacu pada validitas dan konsistensi
data yang disimpan. Integritas biasanya diekspresikan dalam
istilah batasan, yang berupa aturan konsisten yang tidak boleh
dilanggar oleh database. Integrasi memungkikan Database
Administrator (DBA) untuk menjelaskan, dan memungkinkan
DBMS untuk membuat batasan integritas
f. Meningkatkan keamanan data
Keamanan database yaitu melindungi database dari
pengguna yang tak berotoritas. Hal ini dapat dilakukan dengan
menggunakan sistem username dan password untuk
mengindentifikasi orang yang berotoritas untuk menggunakan
database. Akses pengguna yang berotoritas pada database
mungkin dibatasi oleh jenis operasi seperti pengambilan, insert,
update, dan delete data.
g. Penetapan Standardisasi
Integrasi memungkinkan DBA untuk mendefinisikan dan
membuat standar yang diperlukan. Standar ini termasuk standar
departemen, organisasi, nasional, atau internasional dalam hal
format data ,untuk memfasilitasi pertukaran data antara sistem,
ketetapan penanaman, standar dokumentasi, prosedur update, dan
aturan akses.
h. Pengurangan Biaya
Biaya pengembangan dan pemeliharaan sistem pada setiap
departemen akan menghasilkan total biaya yang lebih rendah.
15
Sehingga biaya lainnya dapat digunakan untuk membeli
konfigurasi sistem yang sesuai bagi kebutuhan organisasi.
i. Menyeimbangkan konflik kebutuhan
Setiap pengguna mempunyai kebutuhan yang mungkin
bertentangan dengan kebutuhan pengguna lain, oleh karena itu
database menyediakan penggunaan terbaik bagi keseluruhan
organisasi.
j. Meningkatkan kemampuan akses dan respon pada data
User dapat mengakses ke basisdata untuk melihat
informasi dari data yang diperlukan cukup dengan command
SQL.
2. Kerugian DBMS
a. Pada distribusi DBMS yang digunakan adalah replikasinya.
DBMS yang asli tidak digunakan untuk operasional, hal
ini untuk menjaga reliabilitas dari suatu data. Karena yang
digunakan replikasinya maka hal ini menimbulkan berbagai
macam masalah yang sangat kompleks dimana Database
Administrator (DBA) harus dapat menyediakan pengaksesan
dengan cepat, keandalan dan keberadaan dari basisdata yang
up to date. Jika aplikasi di dalam DBMS yang digunakan tidak
dapat menangani hal-hal tersebut maka akan terjadi penurunan
pada tingkat kinerja, keandalan dan keberadaann dari DBMS
tersebut, sehingga kerugian DBMS terjadi.
b. Ukuran
16
Fungsi yang kompleks dan luas membuat DBMS menjadi
software yang sangat besar, memerlukan banyak ruang
hardisk dan jumlah memory yang besar untuk berjalan dengan
baik.
c. Biaya dari sebuah DBMS
Harga piranti lunak DBMS yang mahal, serta terdapat
biaya pemeliharaan taruhan yang juga membuat biayadari
sebuah DBMS menjadi tinggi
d. Biaya penambahan perangkat keras
Kebutuhan tempat penyimpanan bagi DBMS dan database
memerlukan pembelian tempat penyimpanan tambahan. Lebih
lanjut, untuk mencapai performa yang diperlukan, mungkin
diperlukan untuk memberli mesin yang lebih besar dsb. Hal
ini tentu memerlukan tambahan biaya
2.1.4 Database Application Life Cycle
Menurut Connolly (2005, p283), untuk merancang aplikasi sistem
basis data diperlukan tahapan-tahapan yang dinamakan dengan siklus hidup
aplikasi basis data (database application lifecycle). Tahapan-tahapan dari
DBLC yaitu :
- Database planning
- System definition
- Requirements collection and analysis
- Database design
17
Conceptual database design
Logical database design
Physical database design
- DBMS selection (optional)
- Application design
- Prototyping (optional)
- Implementation
- Data conversion and loading
- Testing
- Operational maintenance
18
Database Planning
System Definition
Requirements Collection and Analysis
Conceptual Database Design
Logical Database Design
DatabaseDesign
Physical Database Design
DBMS Selection(Optional)
Application Design
Prototyping(Optional) Implementation
Data Conversion andLoading
Testing
Operational Maintenance
Gambar 2.1 Database Application Life Cycle
19
2.1.4.1 Database Planning
Tahapan ini merencanakan bagaimana langkah-langkah
dalam daur hidup basis data agar dapat diwujudkan se-efisien dan
se-efektif mungkin. Langkah pertama yang paling penting dalam
perencanaan basis data adalah menggambarkan dengan jelas
mission statement dari proyek basis data, kemudian menentukan
mission objectives di mana tiap-tiap mission objectives dapat
mengidentifikasi tugas-tugas tertentu yang didukung oleh basis
data.
Perencanaan basis data harus dapat diintegrasikan dengan
keseluruhan strategi sistem informasi suatu organisasi. Terdapat
tiga isu utama dalam merumuskan strategi sistem informasi,
diantaranya:
1. Identifikasi rencana dan sasaran perusahaan dengan
menentukan kebutuhan sistem informasi yang diperlukan.
2. Evaluasi sistem informasi yang ada sekarang untuk
menentukan kekuatan-kekuatan dan kelemahan-kelemahan
yang ada.
3. Penilaian terhadap peluang teknologi informasi yang dapat
menghasilkan keuntungan yang kompetitif.
2.1.4.2 System Definition
System definition adalah mendeskripsikan jangkauan dan
batasan dari aplikasi basis data dan pandangan - pandangan utama
20
para pengguna aplikasi. Sebelum mendesain suatu aplikasi basis
data, terlebih dahulu mengindentifikasikan batasan - batasan dari
sistem yang sedang diteliti dan bagaimana kaitannya dengan
bagian lain dari sistem informasi perusahaan. Hal tersebut
dilakukan untuk memastikan bahwa tidak ada pengguna utama
basis data yang terlupakan ketika dilakukan pengembangan
aplikasi.
2.1.4.3 Requirement Collection and Analysis
Requirement collection and analysis merupakan proses
pengumpulan dan analisis informasi tentang bagian perusahaan
yang akan didukung oleh aplikasi basis data, dan menggunakan
informasi ini untuk mengindentifikasikan kebutuhan pengguna
aplikasi terhadap sistem baru.
Informasi yang dikumpulkan diantaranya :
1. Penjabaran dari data yang digunakan.
2. Detail mengenai bagaimana data digunakan.
3. Kebutuhan tambahan apapun untuk aplikasi basis data yang
baru.
Informasi ini kemudian dianalisis untuk
mengindentifikasikan kebutuhan yang dimasukkan untuk aplikasi
basis data yang baru.
21
Ada 3 macam pendekatan untuk mengatur kebutuhan dari
sebuah aplikasi basis data dengan berbagai cara pandang
pengguna, yaitu:
1. Pendekatan Centralized
Kebutuhan untuk tiap pandanganpengguna
disatukan menjadi satu set kebutuhan untuk aplikasi basis
data. Umumnya pendekatan ini dipakai jika basis datanya
tidak terlalu kompleks.
2. Pendekatan View Integration
Kebutuhan untuk tiap pandangan pengguna
digunakan untuk membangun sebuah model data terpisah
yang merepresentasikan tiap pandangan. Hasil dari data –
data model tersebut kemudian disatukan di bagian desain
basis data.
3. Kombinasi keduanya.
2.1.4.4 Database Design
Database design merupakan proses pembuatan suatu
desain untuk sebuah basis data yang akan mendukung
operasional dan sasaran suatu perusahaan.
Ada 2 pendekatan untuk mendesain sebuah basis data,
yaitu :
1. Pendekatan bottom-up
22
Dimulai pada tingkat awal dari atribut (yaitu, properti dari
entitas dan relationship), melalui analisis dari asosiasi antar
atribut, dikelompokkan menjadi hubungan yang
merepresentasikan jenis-jenis entitas dan hubungan antar
entitas. Pendekatan ini cocok untuk mendesain basis data
yang sederhana dengan jumlah atribut yang tidak banyak.
2. Pendekatan top-down
Digunakan pada basis data yang lebih kompleks. Dimulai
dengan pengembangan dari model data yang mengandung
beberapa entitas dan hubungan tingkat tinggi, kemudian
menggunakan perbaikan top-down berturut-turut untuk
mengindentifikasikan entitas, hubungan dan atribut berkaitan
tingkat rendah. Pendekatan ini biasanya digambarkan melalui
ER (Entity Relationship).
Pada tahap ini ada bagian yang disebut data modeling.
Data modelling digunakan untuk membantu pemahaman dari data
dan untuk memudahkan komunikasi tentang kebutuhan informasi.
Kriteria untuk model data (data modelling), yaitu :
1. Structural validity, konsistensi dengan cara yang
didefinisikan perusahaan dalam menyusun informasi.
2. Simplicity, kemudahan untuk pemahaman baik bagi yang
profesional di bidang sistem informasi maupun pengguna
yang non teknis.
23
3. Expressibility, kemampuan untuk membedakan antara data
yang berbeda dan hubungan antar data.
4. Nonredudancy, pembuangan informasi yang tak ada
hubungannya; khususnya, representasi dari tiap potongan
informasi tepatnya hanya sekali.
5. Shareability, tidak spesifik untuk aplikasi dan teknologi
khusus apapun sehingga dapat digunakan oleh banyak
orang.
6. Extensibilty, kemampuan pengembangan untuk
mendukung kebutuhan baru dengan efek yang minimal
bagi pengguna yang ada.
7. Integrity, konsistensi terhadap cara yang digunakan
perusahaan dalam mengatur informasi.
8. Diagramatic representation, kemampuan untuk
merepresentasikan sebuah model menggunakan notasi
diagram yang dapat dipahami dengan mudah.
Ada 3 fase dalam membuat database design yaitu :
1. Conceptual database design
Merupakan suatu proses membangun model informasi yang
digunakan di dalam perusahaan, bebas dari semua
pertimbangan fisikal.
2. Logical database design
24
Merupakan suatu proses membangun model informasi yang
digunakan perusahaan berdasarkan dari beberapa model data
yang spesifik, tetapi bebas dari fakta DBMS dan pertimbangan
fisikal lainnya.
3. Physical database design
Merupakan proses yang menghasilkan sebuah deskripsi
mengenai implementasi dari simpanan kedua database,
mendeskripsikan relasi dasar, organisasi file, dan index yang
digunakan untuk pengaksesan data yang efisien dan
penggabungan beberapa batasan dan sistem keamanan.
2.1.4.5 DBMS Selection (Optional)
Seleksi DBMS adalah kegiatan memilih DBMS yang
akan digunakan dalam pembuatan basis data. Pemilihan DBMS
yang tepat sangat mendukung aplikasi basis data.
Langkah utama dalam pemilihan DBMS :
1. Mendefinisikan waktu untuk melakukan studi referensi.
2. Mencatat 2 atau 3 jenis produk yang akan dievaluasi untuk
digunakan.
3. Mengevaluasikan produk tersebut.
4. Merekomendasikan produk yang dipilih dan buat laporan
yang mendukungnya.
25
2.1.4.6 Application Design
Application Design adalah proses merancang user
interface atau antarmuka pengguna dan program aplikasi yang
menggunakan dan memproses database. Terdapat dua aspek
dalam perancangan aplikasi, yaitu:
1. Perancangan Transaksi
Tujuan utama dari perancangan transaksi adalah
untuk menetapkan dan mendokumentasikan karakteristik
tingkat tinggi dari transaksi yang dibutuhkan pada
database, meliputi:
a. Data yang digunakan dalam transaksi.
b. Karakteristik fungsional dari transaksi.
c. Keluaran (output) dari transaksi.
d. Kepentingan pengguna.
e. Rata – rata pengguna yang diharapkan.
Ada tiga tipe transaksi :
a) Retrieval transactions digunakan untuk mengambil
data untuk ditampilkan di layar atau untuk pembuatan
laporan.
b) Update transactions digunakan untuk memasukkan
data baru, menghapus data lama, atau memodifikasi
data yang ada pada database.
26
c) Mixed transactions merupakan penggabungan antara
retrieval transactions dan update transactions.
2. Perancangan User Interface
Beberapa langkah dalam membuat rancangan
antarmuka yang baik bagi aplikasi database yaitu :
a. Judul yang berarti.
b. Instruksi yang komprehensif.
c. Rancangan laporan.
d. Label field yang dikenal.
e. Singkatan dan istilah yang konsisten.
f. Penggunaan warna yang konsisten.
g. Batasan dan ruang yang terlihat bagi field data-entry.
h. Pergerakan kursor yang baik.
i. Perbaikan kesalahan bagi karakter individu dan
keseluruhan field.
j. Pesan kesalahan bagi nilai yang tidak sesuai.
k. Penandaan field opsional yang jelas.
l. Pesan penjelasan bagi field.
m. Sinyal penyelesaian.
2.1.4.7 Prototyping (Optional)
Prototyping merupakan pembuatan model kerja dari
aplikasi basis data, yang membolehkan perancang atau user untuk
27
mengevaluasi hasil akhir sistem, baik dari segi tampilan maupun
fungsi yang dimiliki sistem.
Tujuan utama dari prototyping yaitu :
1. Menuntun user menggunakan prototype untuk
mengidentifikasikan fitur-fitur agar sistem berjalan dengan
baik.
2. Sebagai saran pengembangan atau mungkin menambah fitur
baru pada aplikasi basis data.
Ada 2 strategi prototyping yang umum digunakan yaitu :
1. Requirement prototyping, menggunakan prototype untuk
menetapkan kebutuhan dari tujuan aplikasi basis data. Ketika
kebutuhan sudah terpenuhi, prototype tidak digunakan lagi
atau dibuang (discard).
2. Evolutionary prototype, menggunakan prototype untuk
menetapkan kebutuhan yang selanjutnya dikembangkan
menjadi aplikasi basis data yang bekerja.
2.1.4.8 Implementation
Pengertian implementasi yaitu membuat definisi basis data
secara eksternal, konseptual, dan internal termasuk program
aplikasi. Implementasi merupakan realisasi dari basis data dan
perancangan aplikasi. Implementasi basis data dicapai
menggunakan Data Definition Language (DDL) dari DBMS yang
28
dipilih atau Graphical User Interface (GUI). Pandangan
pengguna (userview) lainnya juga diimplementasikan dalam
tahapan ini. Bagian lain aplikasi program adalah transaksi basis
data yang diimplementasikan dengan meggunakan Data
Manipulation Language (DML) dari sasaran DBMS.
2.1.4.9 Data Conversion and Loading
Data Conversion and Loading mencakup pengambilan
data dari system yang lama untuk dipindahkan ke dalam sistem
yang baru. Tahapan ini memungkinkan pengembang (developer)
untuk mengkonversi dan meggunakan aplikasi program lama
untuk digunakan pada sistem baru. Ketika conversion and loading
dibutuhkan, prosesnya harus direncanakan untuk memastikan
kelancaran transaksi untuk keseluruhan operasi.
2.1.4.10 Testing
Testing adalah proses menjalankan aplikasi untuk
menemukan kesalahan-kesalahan. Sebelum digunakan, aplikasi
basis data yang baru dikembangkan harus diuji secara
menyeluruh. Dalam kenyataan testing tidak luput dari kesalahan.
Di dalam merancang basis data, user dari sistem baru seharusnya
terlibat di dalam proses testing. Jika data yang asli digunakan,
perlu backup untuk mengantisipasi kesalahan atau error. Setelah
testing selesai, sistem aplikasi siap digunakan oleh pengguna.
29
2.1.4.11 Operational Maintenance
Operational maintenance adalah proses memantau dan
memelihara sistem setelah di install. Pada tahap ini sistem beralih
ke tahapan pemeliharaan. Yang termasuk aktivitas dari tahapan
pemeliharaan diantaranya :
1. Memantau kinerja dari sistem.
2. Pemeliharaan dan upgrade aplikasi basis datanya (jika
diperlukan).
Ketika basis data sepenuhnya bekerja, pemantauan harus
memastikan kinerjanya dapat berada dalam tingkat yang dapat
diterima. Sebuah DBMS biasanya menyediakan berbagai
kegunaan (utilities) untuk membantu administrasi basis data
termasuk kegunaan (utilities) untuk mengisi data ke dalam basis
data dan untuk memantau sistem. Kegunaan ini memperbolehkan
sistem pemantauan untuk memberikan informasi seperti tentang
penggunaan basis data, dan strategi eksekusi query. Database
administrator dapat menggunakan informasi ini untuk
memperbaiki sistem agar dapat memberikan kinerja yang lebih
baik.
2.1.5 Entity Relationship Modelling
Menurut Connolly dan Begg (2005, p342) Entity-Relationship
Modeling (ER Modeling) adalah pendekatan top-down pada perancangan
30
basisdata, yang dimulai dengan idetifikasi data yang penting, disebut juga
entitas, dan hubungan antar entitas yang harus direpresentasikan model.
2.1.5.1 Entity Type
Menurut Connolly (2005, p342), entity type merupakan
sekumpulan objek di dunia yang memiliki properti yang sama.
Entity direpresentasikan dalam bentuk diagram berupa persegi
panjang berlabel nama dari entity.
Gambar 2.2 Representasi Diagram dari Entity Type
2.1.5.2 Relationship Types
Menurut Connolly (20025, p346), relationship types
merupakan suatu hubungan antar entity types. Relationship types
direpresentasikan dalam bentuk diagram berupa garis lurus yang
menghubungkan dua buah entity types, ditandai dengan nama dari
relasi tersebut. Pada umumnya, relasi dinamai dengan kata kerja.
Staff Cabang
Nama Entity
31
Gambar 2.3 Representasi Diagram dari Relationship Types
Menurut Connolly dan Begg (2005, pp347-349), derajat
tipe hubungan (Degree of a Relationship) yaitu jumlah entitas
yang berpartisipasi dalam sebuah hubungan. Derajat tipe
Hubungan (Degree of a Relationship) terdiri dari :
a. Binary Relationship merupakan keterhubungan antara dua tipe
entitas.
Gambar 2.4 Binary Relationship
b. Ternary Relationship merupakan keterhubungan antara tiga
tipe entitas.
Staf Kantor ◄ Mempunyai
Nama
32
Gambar 2.5 Ternary Relationship
c. Quarternary Relationship merupakan keterhubungan antara
empat tipe entitas.
Gambar 2.6 Quarternary Relationship
d. Unary relationship merupakan keterhubungan antara satu tipe
entitas dimana tipe entitas tersebut berpartisipasi lebih dari
satu kali dengan peran yang berbeda. Kadang disebut juga
recursive relationship.
33
Gambar 2.7 Unary Relationship
2.1.5.3 Attributes
Menurut Connolly (2005, p350), atribut merupakan
properti dari suatu entitas atau tipe relasi. Atribut menampung
nilai yang mendeskripsikan setiap entitas dan mempresentasikan
bagian utama dari data yang disimpan di dalam basis data.
Setiap atribut dihubungkan dengan suatu kumpulan nilai
yang disebut domain. Domain atribut merupakan sekumpulan
nilai yang diperoleh bagi satu atau lebih atribut.
Atribut dapat diklasifikasikan menjadi :
1. Simple attribute merupakan sebuah atribut yang terdiri dari
sebuah komponen tunggal yang tidak dapat dipisahkan. Oleh
karena itu, simple attribute sering disebut dengan atomic
attribute. Contoh dari simple attribute yaitu jabatan dan gaji
dari entitas staf.
2. Composite attribute merupakan sebuah atribut yang terdiri dari
banyak komponen, dan tiap komponen itu tidak dapat
34
dipisahkan lagi. Beberapa atribut bisa dibagi menjadi
komponen yang lebih kecil. Contoh dari composite attribute
yaitu atribut alamat dari entitas kantor cabang yang memiliki
nilai (Jl. Kebon Jeruk, Jakarta Barat, 15123). Atribut tersebut
dapat dipisah menjadi atribut jalan (Jl. Kebun Jeruk), kota
(Jakarta Barat), dan kode pos (15123).
3. Single-valued attribute merupakan sebuah atribut yang hanya
memiliki sebuah nilai pada sebuah tipe entitas. Contoh dari
single-valued attribute yaitu atribut no kantor cabang dari
entitas kantor cabang yang memiliki satu nilai, misalnya
KC001.
4. Multi-valued attribute merupakan sebuah atribut yang memiliki
banyak nilai pada sebuah tipe entitas. Contoh dari multi-valued
attribute yaitu atribut no telp dari entitas kantor cabang
memiliki dua nilai, misalnya 021-5512345 dan 021-5554321.
5. Devired attribute merupakan sebuah atribut yang
mempresentasikan sebuah nilai yang berasal dari perhitungan
nilai atribut yang saling terkait atau kumpulan dari beberapa
atribut, tanpa harus berasal dari tipe entitas yang sama. Contoh
dari devired attribute yaitu lama penyewaan dari entitas
penyewaan berasal dari perhitungan lama waktu antara tanggal
penyewaan dan tanggal pengembalian.
35
2.1.5.4 Keys
Menurut Connolly dan Begg (2005, p354), keys berfungsi
untuk menghubungkan objek satu dengan yang lainnya.
Keys yang sering digunakan yaitu :
1. Candidate Key
Candidate Key merupakan kumpulan minimal dari atribut-
atribut yang secara unik mengidentifikasikan suatu entity.
2. Primary Key
Primary Key merupakan candidate key yang dipilih untuk
secara unik mengidentifikasikan suatu entity.
3. Composite Key
Composite Key merupakan candidate key yang terdiri atas
dua atau lebih atribut.
4. Alternate Key
Alternate Key merupakan candidate key yang tidak terpilih
menjadi primary key, atau biasa disebut dengan secondary
key.
5. Foreign Key
Foreign Key merupakan sebuah primary key pada sebuah
entitas yang digunakan pada entitas lainnya untuk
mengidentifikasi sebuah.
36
2.1.5.5 Structural Constraints
Menurut Connolly dan Begg (2005, p356), batasan utama
pada relationship disebut multiplicity. Multiplicity adalah jumlah
atau range dari kejadian yang mungkin terjadi pada suatu entitas
yang terhubung ke satu kejadian dari entitas lain yang
berhubungan melalui suatu relasi.
Relasi yang umum adalah binary relationship. Macam-
macam binary relationship, yaitu :
• One-To-One.
Sebuah entity A diasosiasikan pada sebuah entity B, dan
sebuah entity B diasosiasikan dengan paling banyak sebuah
entity A.
a1
a4
a3
a2
b1
b4
b3
b2
A B
Gambar 2.8 Diagram One to One
• One-To-Many
Sebuah entity A diasosiasikan dengan sejumlah entity B,
tetapi entity B dapat diasosiasikan paling banyak satu entity
A.
37
a1
a2
b1
b4
b3
b2
A B
b5a3
Gambar 2.9 Diagram One to Many
• Many-To-Many.
Suatu entity A dapat diasosiasikan dengan sejumlah entity B
dan entity B dapat diasosiasikan dengan sejumlah entity di A.
a1
a4
a3
a2
b1
b4
b3
b2
A B
Gambar 2.10 Diagram Many to Many
Menurut Connolly dan Begg (2005, p363), multiplicity
dibentuk dari dua macam batasan pada relationship, yaitu :
a) Cardinality yaitu batasan yang menjelaskan jumlah
maksimum dari kejadian relasi yang mungkin untuk entitas
yang berpartisipasi di dalam relasi tersebut.
b) Participation yaitu batasan yang menetapkan apakah seluruh
atau hanya sebagian entitas yang berpartisipasi dalam suatu
relasi.
38
2.1.6 Metodologi Perancangan Basis Data
Menurut Connolly dan Begg (2002, p438-518), metodologi
perancangan basisdata merupakan pendekatan terstruktur yang
menggunakan bantuan prosedur, teknik, tools, dan dokumentasi untuk
mendukung dan memfasilitasi proses perancangan basisdata.
Metodologi perancangan basisdata terbagi atas 3 tahap perancangan
yaitu perancangan konseptual, perancangan logikal, dan perancangan
fisikal.
2.1.6.1 Perancangan Konseptual
Perancangan konseptual merupakan proses membangun
model data yang digunakan oleh suatu perusahaan, bebas dari
segala pertimbangan fisik.
Langkah-langkah dalam membangun model data
konseptual yaitu :
1. Identifikasi tipe entitas
Untuk menentukan objek – objek utama atau entitas –
entitas yang dibutuhkan.
2. Identifikasi tipe hubungan
Mengindentifikasi hubungan-hubungan (relationship)
yang penting antara entitas-entitas yang ditemukan pada tahap
sebelumnya. Dalam tahap ini juga ditentukan batasan
multiciply dari relationship tersebut dan pengecekan adanya
fan atau chasm traps dalam model tersebut
39
3. Identifikasi dan asosiasi atribut dengan tipe entitas atau
tipe hubungan tertentu
Menghubungkan atribut-atribut dengan entitas atau
relationship yang tepat. Mengidentifikasi simple/composite
attributes, singlevalued / multi-valued attributes, dan derived
attributes. Setelah itu, lakukan dokumentasi atribut.
4. Menentukan domain atribut
Menentukan wilayah atribut dalam model konseptual.
Yang dimaksud wilayah adalah sekumpulan nilai-nilai dimana
suatu atribut menggambarkan nilainya. Contoh : nilai yang
mungkin untuk atribut Jenis Kelamin dari entitas Karyawan
adalah ‘M’ atau ’F’, wilayah dari atribut ini adalah single
character string yang berisi nilai ‘M’ atau ‘F’.
5. Menentukan atribut candidate, primary, dan alternate keys
Mengidentifikasi candidate key untuk tiap-tiap entitas dan
jika ada lebih dari satu candidate key, pilih salah satu untuk
menjadi primary key dan lainnya menjadi alternate key.
6. Mempertimbangkan penggunaan Enhanced Modelling
Concept (Optional Step)
Mempertimbangkan penggunaan konsep permodelan,
seperti specialization / generalization, aggregation, dan
composition.
40
a. Specialization, adalah proses memaksimalkan perbedaan
antara anggota entitas dengan mengidentifikasi
karakteristik yang membedakan seluruh entitas.
b. Generalization, adalah proses meminimalkan perbedaan
antara entitas dengan mengidentifikasi karakteristik yang
sama dari masing-masing entitas.
c. Aggregation, adalah mempresentasikan hubungan ‘has-a’
atau ‘is-part-of’ antara tipe-tipe entitas, dimana salah satu
adalah sebagai ‘whole’ dan yang lainnya sebagai ‘part’.
d. Composition, adalah sebuah bentuk spesifik dari
aggregration yang mempresentasikan penggabungan
antara entitas dimana ada kepemilikan yang kuat dan
kesamaan lifetime antara ‘whole’ dan ‘ part’.
7. Memeriksa redudansi pada model
Memeriksa keberadaan redudansi dalam model. Dilakukan
pemeriksaan secara spesifik terhadap hubungan one-to-one
(1:1), menghilangkan hubungan (relationship) yang redundan,
dan mempertimbangkan penggunaan dimensi waktu.
8. Validasi model data konseptual dengan transaksi user
Memastikan bahwa konseptual data telah mendukung
transaksi yang dibutuhkan. Dapat dilakukan dua cara yaitu :
a. Mendeskripsikan transaksi secara detail, dengan
pendekatan ini berarti akan diperiksa semua informasi
(entitas, relationship, dan atribut) yang dibutuhkan oleh
41
setiap transaksi apakah telah disediakan dalam model,
dengan mendokumentasikan setiap kebutuhan transaksi.
b. Menggunakan jalur transaksi (transaction pathways),
pendekatan ini untuk validasi model data terhadap
transaksi yang dibutuhkan termasuk representasi diagram
jalur yang digunakan oleh setiap transaksi langsung pada
diagram ER.
9. Melakukan review model data konseptual dengan user
Memeriksa model data konseptual dengan pengguna
sistem untuk memastikan bahwa model data tersebut secara
tepat menggambarkan transaksi dan kebutuhan dara secara
nyata dalam perusahaan.
2.1.6.2 Perancangan Logikal
Perancangan logikal basis data merupakan proses
membangun sebuah model informasi yang digunakan dalam
sebuah perusahaan berdasarkan pada sebuah model data yang
spesifik, tetapi tidak bergantung pada sebuah DBMS tertentu dan
pertimbangan-pertimbangan fisik lainnya.
Langkah-langkah dalam membangun model data logikal
yaitu :
1. Penurunan relasi untuk model data logikal
42
Membuat hubungan untuk model data logikal lokal untuk
menggambarkan entitas, relationship, dan atribut yang telah
diidentifikasikan.
2. Validasi relasi menggunakan normalisasi
Memvalidasi relasi dalam model data logikal lokal
menggunakan teknik normalisasi.
3. Validasi relasi terhadap transaksi user
Memastikan bahwa relasi dalam model data logikal lokal
mendukung transaksi yang dibutuhkan.
4. Memeriksa integrity contraints
Memeriksa integrity constraints yang ditampilkan pada
model data logikal yang meliputi required data, attribute
domain constraints, multiplicity, entity integrity, referential
integrity, general constraints.
5. Melakukan review model data logikal dengan user
Untuk meninjau model data logikal dengan pengguna
untuk memastikan bahwa mereka menganggap model yang
ditampilkan sesuai dengan dari persyaratan data dari
perusahaan.
6. Merge logical data models into global model (optional step)
Untuk menggabungkan model data logikal lokal ke dalam
model data logikal global yang mewakili pandangan semua
pengguna database.
7. Mempertimbangkan perkembangan di masa depan
43
Untuk menentukan apakah ada perubahan signifikan di
masa mendatang dan untuk menilai apakah model data logis
dapat mengakomodasi perubahan ini.
2.1.6.3 Perancangan Fisikal
Perancangan fisikal basis data merupakan proses
menghasilkan deskripsi implementasi basis data pada secondary
storage. Deskripsi yang menghasilkan meliputi relasi utama,
organisasi file, dan index yang digunakan untuk mencapai akses
yang efisien terhadap data, dan segala batasan integritas dan
aturan keamanan yang digunakan.
Langkah-langkah dalam membangun model data logikal
yaitu :
1. Menerjemahkan model data logikal untuk DBMS yang
digunakan.
Untuk menghasilkan skema database relasional dari model
data logikal yang dapat diimplementasikan dalam DBMS yang
diinginkan. Langkah – langkah yang dilakukan dalam tahap
ini :
1. Merancang relasi dasar
Menentukan bagaimana representasi relasi dasar
yang telah diidentifikasi pada model data logikal global,
agar dapat diimplementasikan pada DBMS tujuan.
Informasi yang dibutuhkan dapat diperoleh dari kamus
44
data dan definisi dari relasi dideskripsikan
menggunakan database design language (DBDL).
2. Merancang representasi derived data
Menentukan bagaimana representasi derived data
yang ada pada model data logikal global, agar dapat
diimplementasikan pada DBMS tujuan. Atribut yang
mana nilainya didapatkan dari mengkaji nilai atribut
lain dinamakan derives atau calculated attributes.
3. Merancang general constraints
Merancang batasan – batasan umum untuk DBMS
yang akan digunakan.
2. Merancang organisasi file dan index.
Untuk menentukan organisasi file yang optimal untuk
menyimpan relasi dasar dan indeks yang diperlukan untuk
mencapai kinerja yang dapat diterima. Langkah – langkah
yang dilakukan dalam tahap ini :
1. Menganalisa transaksi
Memahami fungsionalitas transaksi yang
dijalankan pada basisdata dan menganalisis transaksi –
transaksi yang penting
2. Memilih organisasi file
Tujuan langkah ini adalah menentukan organisasi
file yang efisien untuk tiap–tiap relasi dasar jika
diperoleh DBMS yang akan digunakan.
45
3. Memilih indeks
Tujuan langkah ini untuk menentukan apakah
kegunaan index akan meningkatkan kinerja sistem.
4. Memperkirakan kebutuhan disk space
Memperkirakan besarnya ruang disk (disk space)
yang dibutuhkan untuk mendukung implementasi
basisdata. Estimasi pemakaian disk tergantung pada
DBMS dan perangkat keras yang digunakan untuk
mendukung basisdata. Perkiraan ukuran dapat
dilakukan dengan mengukur besar data tiap baris dan
jumlah baris pada setiap relasi.
3. Merancang user views.
Merancang view pengguna yang telah diidentifikasi
selama tahap pengumpulan kebutuhan dan tahap analisa pada
Daur Hidup Pengembangan Sistem Basisdata Relasional
(System Development life cycle).
4. Merancang mekanisme keamanan
Merancang mekanisme keamanan untuk sistem basisdata,
sesuai yang dibutuhkan pengguna, ada dua macam keamanan
basisdata yang disediakan oleh DBMS relational yaitu
keamanan sistem mencakup akses dan penggunaan basisdata
pada level sistem sepert username dan password. Keamanan
bagi sistem basisdata sangat diperlukan karena basisdata
merupakan sumber daya perusahaan yang penting
46
5. Mempertimbangkan adanya redudasi terkontrol.
Menentukan apakah adanya redudansi yang terkontrol
dengan cara melonggarkan aturan normalisasi akan
meningkatkan kinerjasistem. Misalnya, mempertimbangkan
duplikasi atribut–atribut atau join relasi bersama.
6. Mengawasi dan melakukan setting terhadap sistem
operasi.
Mengawasi sistem operasional dan meningkatkan kinerja
system untuk memperbaiki keputusan perancangan yang
kurang tepat atau dalam mengatasi kemungkinan adanya
perubahan.
2.1.7 Normalisasi
Menurut Connolly dan Begg (2005,p387), normalisasi merupakan
suatu teknik formal untuk menghasilkan kumpulan hubungan dengan
kepemilikan yang dikehendaki, yang memiliki kebutuhan dari sebuah
perusahaan, dan berfungsi untuk menganalisis relasi berdasarkan primary
key atau candidate key dan fungtional dependency.
Tahapan-tahapan normalisasi menurut Connolly dan
Begg(2005,p403-411),yaitu :
1. Unnormalized form, merupakan sebuah table yang mengandung 1 atau
lebih kelompok perulangan.
47
2. First Normal Form (1NF), merupakan suatu relasi dimana perpotongan
antara setiap baris dan kolom memiliki tepat 1 nilai.Fungsi 1NF adalah
untuk :
a) Menghilangkan perulangan (redudansi) dan perhitungan
b) Memecahkan data yang redudansi menjadi table yang baru
c) Menentukan primary key
3. Second Normal Form (2NF), merupakan sebuah relasi di dalam 1NF
dan pada setiap atribut yang non-primary key memiliki ketergantungan
fungsional secara penuh terhadap primary key.Fungsi 2NF adalah untuk
menghilangkan ketergantungan yang bersifat parsial (ketergantungan).
4. Third Normal Form (3NF), merupakan sebuah relasi yang terdapat pada
1NF dan 2NF dan tidak memiliki atribut yang bukan primary key yang
memiliki ketergantungan transitif terhadap primary key.Fungsi 3NF
adalah untuk menghilangkan ketergantungan transitif yang
bersangkutan.
2.1.8 Tools yang Digunakan
2.1.8.1 SQL
Menurut Connolly dan Begg (2005, p113), SQL adalah
contoh dari bahasa berorientasi transformasi, atau bahasa yang
dirancang untuk menggunakan hubungan untuk mengubah input
menjadi output yang diinginkan.
SQL memiliki 2 komponen utama, yaitu :
48
1. Data Definition Language (DDL)
DDL digunakan untuk mendefinisikan struktur basis data dan
mengontrol akses ke data. Contohnya :
- CREATE TABLE : digunakan untuk membuat tabel
- ALTER TABLE : digunakan untuk menambah /
memindahkan kolom
- DROP TABLE : digunakan untuk menghapus tabel
- CREATE VIEW : digunakan untuk membuat view
- DROP VIEW : digunakan untuk menghapus view
2. Data Manipulation Language (DML)
DML digunakan untuk pengambilan dan perubahan data.
Contohnya :
- SELECT : digunakan untuk menampilkan data dalam basis
data
- INSERT : digunakan untuk memasukkan data ke dalam
tabel
- UPDATE : digunakan untuk memperbarui data dalam tabel
- DELETE : digunakan untuk menghapus data dari tabel
2.1.8.2 Data Flow Diagram (DFD)
DFD adalah suatu diagram yang menggunakan notasi-
notasi untuk menggambarkan arus dari data sistem, yang
penggunaannya sangat membantu untuk memahami sistem secara
logika, tersruktur dan jelas.
49
Komponen – komponen yang dimiliki DFD :
Yourdan dan Demarco Keterangan Gene dan Serson
ENTITAS LUAR
PROSES
DATA FLOW
DATA STORE
Keterangan :
- Entitas luar : Komponen ini menggambarkan entitas di
luar sistem yang berkomunikasi langsung dengan sistem.
- Proses : Komponen ini menggambarkan tranformasi input
menjadi output.
- Data Flow : Komponen ini digunakan untuk menerangkan
perpindahan data / paket data dari satu bagian ke bagian
lainnya/
- Data Store : Komponen ini digunakan untuk membuat
model sekumpulan paket data.
2.1.8.3 Flow Chart
Flowchart adalah penggambaran secara grafik dari
langkah-langkah dan urut-urutan prosedur dari suatu program /
sistem.
50
Simbol – simbol pada flowchart :
• Flow direction symbols
Digunakan untuk menghubungkan simbol satu dengan
yang lain.
Simbol Keterangan
Simbol arus / flow
Menyatakan jalannya arus suatu proses
Simbol communication link
Menyatakan transmisi data dari satu lokasi ke lokasi lain
Simbol connector
Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang sama
Simbol offline connector
Menyatakan sambungan dari proses ke proses lainnya dalam halaman yang berbeda
• Processing symbols
Menunjukan jenis operasi pengolahan dalam suatu proses /
prosedur .
Simbol Keterangan
Simbol process, yaitu menyatakan suatu
tindakan (proses) yang dilakukan oleh
komputer
Simbol manual, yaitu menyatakan suatu
tindakan (proses) yang tidak dilakukan
51
oleh komputer
Simbol decision, yaitu menujukkan suatu
kondisi tertentu yang akan menghasilkan
dua kemungkinan jawaban : ya / tidak
Simbol predefined process, yaitu
menyatakan penyediaan tempat
penyimpanan suatu pengolahan untuk
memberi harga awal
Simbol terminal, yaitu menyatakan
permulaan atau akhir suatu program
Simbol keying operation, Menyatakan
segal jenis operasi yang diproses dengan
menggunakan suatu mesin yang
mempunyai keyboard
Simbol offline-storage, menunjukkan
bahwa data dalam simbol ini akan
disimpan ke suatu media tertentu
Simbol manual input, memasukkan data
secara manual dengan menggunakan online
keyboard
• Input / Output symbols
Menunjukkan jenis peralatan yang digunakan sebagai
media input atau output.
Simbol Keterangan
Simbol input/output, menyatakan proses
input atau output tanpa tergantung jenis
peralatannya
Simbol magnetic tape, menyatakan input
52
berasal dari pita magnetis atau output
disimpan ke pita magnetis
Simbol disk storage, menyatakan input
berasal dari dari disk atau output disimpan
ke disk
Simbol document, mencetak keluaran
dalam bentuk dokumen (melalui printer)
Simbol display, mencetak keluaran dalam
layar monitor
2.2 Pemahaman Objek Studi
2.2.1 Pembelian
2.2.1.1 Pengertian Pembelian
Menurut Render (2004, p414), pembelian adalah
perolehan barang dan jasa. Secara umum,definisi pembelian
adalah suatu usaha pengadaan barang atau jasa dengan tujuan
yang akan digunakan sendiri, untuk kepentingan proses produksi
maupun untuk dijual kembali.
Jenis transaksi dalam pembelian dibedakan menjadi dua,
yaitu :
• Pembelian tunai, adalah proses pembayaran yang dilakukan
secara langsung pada saat barang diterima.
• Pembelian kredit, adalah proses pembayaran yang tidak
dilakukan langsung pada saat barang diterima, tetapi
pembayaran dilakukan selang beberapa waktu setelah barang
53
diterima, sesuai dengan tenggang waktu yang telah disepakati
oleh kedua belah pihak.
Hal-hal yang harus diperhatikan dalam proses pembelian
adalah :
• Kualitas
• Harga
• Waktu Proses
2.2.1.2 Tujuan Pembelian
Tujuan pembelian menurut Render (2001, p414), tujuan
dari kegiatan pembelian adalah :
• Membantu identifikasi produk dan jasa yang dapat diperoleh
secara eksternal
• Mengembangkan, mengevaluasi, dan menentukan pemasok,
harga, dan pengiriman yang terbaik bagi barang dan jasa
tersebut.
2.2.1.3 Fungsi – fungsi Pembelian
Fungsi-fungsi yang Terkait Dalam Sistem Pembelian
a) Fungsi Gudang
Bertanggung jawab untuk mengajukan permintaan pembelian
sesuai dengan persediaan barang yang ada di gudang.
b) Fungsi Pembelian
54
Bertanggung jawab untuk mengeluarkan order pembelian pada
pemasok.
c) Fungsi Penerimaan
Bertanggung jawab untuk menerima barang yang dikirim dari
pemasok dan melakukan pemeriksaan guna menentukan layak
tidaknya barang untuk diterima.
d) Fungsi administrasi
Fungsi yang terkait dalam hal ini adalah fungsi pencatat utang dan
fungsi pencatat persediaan.
2.2.2 Persediaan
2.2.2.1 Pengertian Persediaan
Menurut Freddy Rangkuti (1998, p1), persediaan adalah
sebuah aktivitas yang meliputi barang-barang milik perusahaan
dengan maksud untuk dijual dalam satu periode waktu tertentu
atau persediaan barang-barang yang masih dalam pengerjaan /
proses atau persediaan bahan baku yang menunggu penggunaanya
dalam suatu proses produksi.
Menurut Mulyadi (2001, p553), sistem persediaan
bertujuan untuk mencatat mutasi setiap jenis persediaan yang
disimpan di gudang. Sistem ini berkaitan erat dengan sistem
pembelian, sistem retur pembelian, dan sistem akuntansi biaya
produksi. Dalam perusahaan produksi / manufaktur, persediaan
terdiri dari persediaan bahan baku,persediaan bahan baku
55
cadangan,persediaan produk dalam proses,persediaan produk
jadi,dan persediaan barang gagal hasil produksi.
2.2.2.2 Sistem dan Prosedur Persediaan
Menurut Mulyadi (2001, p560), sistem dan prosedur yang
bersangkutan dengan sistem persediaan adalah :
a) Prosedur pencatatan produk jadi
Prosedur ini merupakan salah satu prosedur dalam sistem
akuntansi biaya produksi.Dalam prosedur ini dicatat harga
pokok produk jadi yang didebitkan kedalam rekening
persediaan produk jadi dan dikreditkan ke dalam rekening
barang dalam proses.
b) Prosedur pencatatan harga pokok produk jadi yang dijual
Prosedur ini merupakan salah satu prosedur dalam sistem
penjualan disamping prosedur lainnya seperti prosedur order
penjualan, prosedur persetujuan kredit, prosedur pengiriman
barang, prosedur penagihan, dan prosedur pencatatan piutang.
c) Prosedur pencatatan harga pokok persediaan yang dibeli
Prosedur ini merupakan salah satu prosedur yang membentuk
sistem retur pembelian. Dalam prosedur ini dicatat harga
pokok persediaan yang dibeli.
d) Prosedur pencatatan harga pokok persediaan yang
dikembalikan kepada pemasok
56
Prosedur ini merupakan salah satu prosedur yang membentuk
sistem retur pembelian. Jika persediaan yang telah dibeli
dikembalikan kepada pemasok, maka transaksi retur
pembelian ini akan mempengaruhi persediaan yang
bersangkutan.
e) Prosedur permintaan dan pengeluaran barang
Prosedur ini merupakan salah satu prosedur yang membentuk
sistem akuntansi biaya produksi. Dalam prosedur ini dicatat
harga pokok persediaan bahan baku, bahan baku cadangan,
bahan habis pakai pabrik, dan suku cadang yang dipakai
dalam kegiatan produksi dan non produksi.
f) Prosedur pencatatan tambahan harga pokok persediaan
karena pengembalian barang gudang
Dalam prosedur ini, transaksi pengembalian barang gudang
mengurangi biaya dan menambah persediaan barang di
gudang.
2.2.2.3 Tujuan Persediaan
Menurut Render, Haizer yang diterjemahkan oleh
Kresnohadi Ariyoto (2001, p314), fungsi dari persediaan adalah
sebagai berikut :
a) Untuk menyediakan suatu stok barang agar dapat memenuhi
permintaan yang diantisipasikan akan timbul dari konsumen.
b) Untuk mengambil keuntungan dari potongan jumlah.
57
c) Untuk melakukan hedging terhadap inflasi dan perubahan
harga.
d) Untuk menghindari dari kekurangan stok yang dapat terjadi
karena cuaca, kekurangan pasokan, masalah mutu, atau
pengiriman yang tidak tepat.
e) Untuk menjaga agar operasi dapat berlangsung dengan baik
dengan menggunakan “barang dalam proses” dalam
peresediaannya.