BAB 2 LANDASAN TEORI
2.1
Teori-teori Sistem Basis Data 2.1.1
Basis Data Menurut Hoffer, Prescott dan McFadden, (2007, p6), data adalah representasi tersimpan dari objek dan kejadian yang memiliki arti dan penting bagi user, sedangkan informasi (Hoffer, Prescott dan McFadden, 2007, p6) adalah data yang telah diproses sedemikian rupa sehingga dapat meningkatkan pengetahuan orang yang menggunakan data tersebut. Menurut Connolly dan Begg(2005, p15) basis data dapat dianggap sebagai sekumpulan data yang saling terkait secara logis yang disertai deskripsi data tersebut, dan dirancang untuk memenuhi kebutuhan informasi perusahaan. Berdasarkan pendapat Hoffer, Prescott dan McFadden(2007, p6), basis data adalah kumpulan data yang saling terkait secara logis.
2.1.2
Data Base Management System (DBMS) Menurut Connolly dan Begg(2005, p16) DBMS adalah sebuah sistem perangkat lunak yang memampukan user untuk mendefinisikan, membuat, memelihara dan mengendalikan akses terhadap sistem basis
7
8 data. Hoffer, Prescott dan McFadden(2007, p8) juga mendefinisikan DBMS sebagai sebuah sistem software yang digunakan untuk membuat, memelihara dan menyediakan akses terkontrol ke database user.
2.1.2.1
Database System Development Lifecycle Database System Development Lifecycle sebagai berikut : Database Planning
System Definition
Requirements Collection and Analysis
Database Design Conceptual Database Design DBMS Selection (optional) Logical Database Design
Application Design
Physical Database Design
Prototyping (optional)
Implementation
Data Conversion and Loading
Testing
Operational Maintenance
Gambar 2.1 Database System Development Lifecycle
9 1.
Database Planning, merupakan aktivitas manajemen yang memungkinkan tahapan dari pengembangan aplikasi sistem basis data untuk dapat direalisasikan seefisien dan seefektif mungkin.
2.
System Definition, merupakan proses menspesifikasikan ruang lingkup dan batasan dari aplikasi sistem basis data dan user view utama.
3.
Requirement Collection and Analysis, merupakan proses mengumpulkan dan menganalisis informasi mengenai bagian dari organisasi yang akan didukung oleh aplikasi sistem basis data dan menggunakan informasi ini untuk mengidentifikasi kebutuhan pengguna pada sistem yang baru.
4.
Database Design, merupakan proses dari pembuatan sebuah rancangan yang mendukung visi dan misi perusahaan yang dibutuhkan untuk sebuah sistem basis data. Menurut Connolly dan Begg (2005, p439), metodologi
perancangan sistem basis data terdiri dari 3 tahap, yakni: a.
Tahap 1 : Perancangan sistem basis data secara konseptual, yaitu, proses membuat model dari data yang digunakan dalam perusahaan tanpa pertimbangan fisikal.
b.
Tahap 2 : Perancangan sistem basis data secara logical, yaitu, proses membuat model dari data yang digunakan dalam perusahaan berdasarkan sebuah model data yang
10 spesifik, tetapi tidak mempertimbangkan DBMS tertentu dan pertimbangan fisikal lainnya. c.
Tahap 3 : Perancangan sistem basis data secara fisikal yaitu,
proses
menghasilkan
sebuah
deskripsi
implementasi dari database pada penyimpanan sekunder. Deskripsi ini menjelaskan relasi dasar, organisasi file, dan indeks-indeks yang digunakan untuk mencapai akses yang efisien ke data, dan seluruh integrity constraint serta langkah-langkah keamanan. 5.
DBMS Selection, merupakan pemilihan DBMS yang sesuai untuk mendukung sistem basis data.
6.
Application Design, merupakan perancangan user interface dan program aplikasi yang menggunakan dan memproses basis data.
7.
Prototyping, merupakan pembuatan model yang bekerja dari suatu sistem basis data.
8.
Implementation, merupakan realisasi fisik dari rancangan basis data dan aplikasi.
9.
Data Conversion and Loading, merupakan pemindahan data yang sudah ada ke dalam basis data baru dan konversi aplikasi yang sudah ada agar dapat bekerja dengan basis data baru.
10. Testing, merupakan proses menjalankan sistem basis data dengan tujuan mencari kesalahan (error).
11 11. Operational Maintanance, merupakan proses memonitor dan merawat sistem basis data setelah instalasi dilakukan.
2.1.2.2
Data Definition Language (DDL) Connolly dan Begg (2005, p40) mendefinisikan DDL sebagai sebuah bahasa yang mengijinkan administrator sistem basis data atau user untuk mengambarkan dan memberi nama entitas, attribut, dan relasi yang dibutuhkan untuk aplikasi disertai dengan batasan-batasan intregritas dan keamanan (integrity constraints dan security constraints). Menurut Hoffer, Prescott dan McFadden (2007, p294) DDL adalah perintah-perintah yang digunakan untuk mendefinisikan sebuah database, termasuk membuat, mengubah, menghapus table dan menetapkan constraints.
2.1.2.3
Data Manipulation Language (DML) Menurut
Connolly dan
Begg
(2005,
p40),
DML
merupakan sebuah bahasa yang menyediakan seperangkat operasi untuk mendukung dasar operasi untuk manipulasi data dasar dari data yang yang tersimpan pada sistem basis data. Sedangkan Hoffer, Prescott dan McFadden (2007, p294), menyatakan bahwa DML merupakan perintah yang digunakan untuk memelihara dan
12 memanipulasi query sebuah sistem basis data, yaitu: select, updating, inserting, modifiying, dan querying data.
2.1.3
Entity Relationship (ER) Modelling ER Modelling menurut Connolly dan Begg (2005, p342) merupakan pendekatan top-down untuk merancang database yang dimulai dengan mengindentifikasi data penting (entitas) dan relasi antar data yang digambarkan dalam sebuah model.
2.1.3.1
Entity Types dan Entity Occurrence Entity type, Connolly dan Begg (2005, p343), merupakan sekumpulan objek berproperti sama yang diidentifikasikan oleh perusahaan sebagai keberadaan yang independen. Entity occurrence menurut Connolly dan Begg (2005, p345) merupakan sebuah objek unik yang dapat diidentifikasi dari sebuah entity type.
2.1.3.2
Relationship Type dan Relationship Occurrence Menurut Connolly dan Begg (2005, p346), relationship type merupakan pasangan asosiasi yang memiliki makna di antara entity types. Relationship Occurrence menurut Connolly dan Begg (2005, p346), merupakan asosiasi yang dapat diidentifikasi secara
13 unik, yang mengandung sebuah occurrence dari tiap entity types yang berpartisipasi. 2.1.3.3
Degree of Relationship Types Menurut Connolly dan Begg (2005, p347), degree of relationship types merupakan jumlah entitiy types
yang
bergabung dalam sebuah relasi. 1. Binary Merupakan relasi tingkat dua. Contoh:
Branch
has
Staff
Gambar 2.2 Binary Degree of Relationship Types
2. Ternary Merupakan relasi tingkat tiga. Contoh : Staff
register
Branch
Client Gambar 2.3 Ternary Degree of Relationship Types
3. Quarternary Merupakan relasi tingkat empat.
14 Contoh : Solicitor
Buyer
Financial Institution
arranges
Bid
Gambar 2.4 Quarternary Degree of Relationship Types
4. Recursive Relationship Menurut Connolly dan Begg (2005, p349), recursive relationship merupakan sebuah relationship type di mana entity types yang sama ikut serta lebih dari sekali dengan peran yang berbeda.
2.1.3.4
Attributes Attribute, menurut Connolly dan Begg (2005, p350), merupakan sifat dari sebuah entitas atau relationship type. Attribute
domain
merupakan
sekumpulan
diperbolehkan bagi satu atau lebih atribut.
Atribut dapat diklasifikasikan menjadi : 1.
Simple Attribute
nilai
yang
15 Simple attribute merupakan atribut yang terdiri dari komponen tunggal di mana komponen tersebut tidak dapat dipisahkan lagi, disebut juga dengan atomic attribute.
2.
Composite Attribute Composite attribute merupakan atribut yang terdiri dari
beberapa
komponen,
dan
keberadaan
setiap
komponen bebas. Beberapa atribut dapat dipisahkan menjadi komponen yang lebih kecil dengan keberadaan yang bebas.
3.
Single-valued Attribute Single-valued attribute merupakan atribut yang memiliki nilai tunggal untuk masing-masing kejadian dari entitas.
4.
Multi-valued Attribute Multi-valued attribute merupakan atribut yang memiliki banyak nilai untuk masing-masing kejadian dari entitas.
5.
Derived Attribute
16 Derived attribute merupakan atribut yang nilainilainya diperoleh atau diturunkan dari atribut lain yang berhubungan.
2.1.3.5
Keys Candidate Key menurut Connolly dan Begg (2005, p352) merupakan kumpulan atribut dengan jumlah minimal yang dapat mengidentifikasi secara unik setiap occurrence dari sebuah entitas. Primary Key menurut Connolly dan Begg (2005, p353) merupakan candidate key yang terpilih untuk mengidentifikasi secara unik setiap occurrence dari sebuah entitas. Composite Key menurut Connolly dan Begg (2005, p353) merupakan candidate key yang terdiri dari dua atau lebih atribut.
2.1.3.6
Structural Constraints Structural constraints (Connolly dan Begg(2005, p356)) merupakan batasan-batasan yang menggambarkan pembatasan pada relationship seperti yang ada pada dunia nyata yang harus diterapkan pada tipe entitas yang ikut serta dalam sebuah relationship.
17 Multiplicity (Connolly dan Begg(2005, p356)) merupakan jumlah occurence yang mungkin terjadi pada sebuah tipe entitas yang berhubungan ke sebuah occurrence dari sebuah tipe entitas lain dari suatu relationship. Derajat yang biasanya digunakan pada suatu relationship adalah binary relationship, yang terdiri atas : 1.
One-to-one (1:1) Relationship Setiap relationship menggambarkan hubungan antara sebuah entity occurrence pada entitas yang satu dengan sebuah entity occurrence pada entitas lainnya yang ikut serta dalam relationship tersebut. Representasi
diagram
terhadap
one-to-one
relationship dapat dilihat pada gambar 2.5 dan gambar 2.6. Pegawai tipe entiti (noPeg)
Mengatur tipe relationship
Cabang tipe entiti (noCab)
SG5
r1
B003
r2
B005
SG37 SL21
Gambar 2.5 Semantic net menunjukkan dua occurrence
18
setiap cabang diatur oleh satu orang pegawai
Pegawai noPeg
seorang pegawai dapat mengatur nol atau satu cabang
Mengatur 1..1
0..1
Cabang noCab
Multiplicity
Gambar 2.6 Multiplicity dari relationship one-to-one
2.
One-to-many (1:*) Relationship Setiap relationship menggambarkan hubungan antara sebuah entity occurrence pada entitas yang satu dengan satu atau lebih entity occurrence pada entitas lainnya yang ikut serta dalam relationship tersebut. Representasi
diagram
terhadap
one-to-many
relationship dapat dilihat pada gambar 2.7 dan gambar 2.8. Pegawai tipe entiti (noPeg)
Melihat tipe relationship
SG5
r1
PG21
r2
PG36
SG37
RumahSewa tipe entiti (noRumah)
PA14 SA9
r3
PG4
Gambar 2.7 Semantic net menunjukkan tiga occurrence
19 setiap rumah sewa dilihat oleh nol atau satu pegawai
Pegawai noPeg
setiap pegawai melihat nol atau lebih rumah sewa
Melihat 0..1
0..*
RumahSewa noRumah
Gambar 2.8 Multiplicity dari relationship one-to-many
3.
Many-to-many (*:*) Relationship Setiap relationship menggambarkan hubungan antara satu atau lebih entity occurrence pada entitas yang satu dengan satu atau lebih entity occurrence pada entitas lainnya yang ikut serta dalam relationship tersebut. Representasi
diagram
terhadap
many-to-many
relationship dapat dilihat pada gambar 2.9 dan gambar 2.10. Koran tipe entiti (namaKoran)
Mengiklankan tipe relationship r1
Glasgow Daily
RumahSewa tipe entiti (noRumah) PG21
r2
PG36
r3
PA14
r4
PG4
The News West Aberdeen Express
Gambar 2.9 Semantic net menunjukkan empat occurrence
20 setiap rumah sewa diiklankan pada nol atau lebih koran
Koran namaKoran
setiap koran mengiklankan satu atau lebih rumah sewa
Mengiklankan 0..* 1..*
RumahSewa noRumah
Gambar 2.10 Multiplicity dari relationship many-to-many
2.1.3.7
Cardinality dan Participation Constraints Multiplicity sebenarnya terdiri atas dua constraint yang berbeda, yaitu: 1.
Cardinality Cardinality
adalah
nilai
maksimum
dari
relationship occurrence yang mungkin terjadi untuk sebuah entitas yang ikut serta pada suatu relationship (Connolly dan Begg, 2005, p363). 2.
Participation Participation menentukan apakah semua atau hanya beberapa entity occurrence yang ikut serta dalam sebuah relationship (Connolly dan Begg, 2005, p363). Participation constraint dibagi menjadi : 1.
Mandatory participation Mandatory
participation
melibatkan
semua entity occurrence pada relationship tertentu (Connolly dan Begg, 2005, p363).
21 2.
Optional participation Optional
participation
melibatkan
beberapa entity occurrence pada relationship tertentu (Connolly dan Begg, 2005, p363).
Representasi diagram terhadap multiplicity sebagai cardinality dan participation constraints dapat dilihat pada gambar 2.11. Cardinality sebuah cabang diatur oleh seorang pegawai
Pegawai noPeg
seorang pegawai mengatur satu cabang
Cabang
Mengatur 1..1
0..1
'semua cabang diatur' (mandatory participation pada Cabang)
noCab
'tidak semua pegawai mengatur cabang' (optional participation pada Pegawai)
Participation
Gambar 2.11 Multiplicity sebagai cardinality dan participation constraints pada relationship one-to-one
2.1.4
Normalisasi Berdasarkan Connolly dan Begg (2005, p388), normalisasi merupakan teknik formal untuk menganalisis relasi berdasarkan primary key (atau candidate key) dan functional dependency.
22 Hoffer, Prescott dan McFadden (2007, p294), bahwa normalisasi merupakan proses mengubah
menyebutkan
relasi yang masih
memiliki anomali menjadi relasi yang lebih kecil dan terstruktur dengan baik. Tujuan normalisasi menurut Hoffer, Prescott dan McFadden (2007, p211), adalah: i)
Mengurangi redundansi data, sehingga menghindari anomali dan menghemat tempat penyimpanan.
ii)
Menyederhanakan
penerapan
referential
intregrity
constraints. iii)
Memudahkan memelihara data.
iv)
Menyediakan
desain
lebih
baik
yang
merupakan
representasi yang sudah dikembangkan dari dunia nyata dan
menyediakan
basis
yang
lebih
kuat
untuk
perkembangan di masa yang akan datang. Tahapan-tahapan normalisasi menurut Connolly dan Begg (2005, p401-411) adalah : 1.
Unnormalized (UNF), merupakan sebuah tabel yang berisi satu atau lebih kelompok yang berulang.
2.
First Normal Form (1NF), merupakan sebuah relasi dimana perpotongan antara setiap baris dan kolom memiliki tepat satu nilai.
23 3.
Second Normal Form (2NF), merupakan sebuah relasi yang sudah berada dalam 1NF dan setiap atribut yang bukan primary key memiliki ketergantungan fungsional penuh terhadap primary key.
4.
Third Normal Form (3NF), merupakan sebuah relasi yang sudah berada dalam 1NF dan 2NF dan tidak mempunyai atribut yang bukan primary key yang memiliki ketergantungan transitif terhadap primary key.
2.1.5
Desain Konseptual, Logikal, Fisikal Sistem Basis Data Langkah-langkah dalam metodologi perancangan basis data adalah sebagai berikut: a)
Perancangan Basis Data secara Konseptual 1.
Membangun data model konseptual i.
Mengidentifikasi entity types Tujuan
langkah
ini
adalah
untuk
mengidentifikasi entity types yang di perlukan. ii.
Mengidentifikasi relationship types Tujuan langkah ini adalah mengidentifikasi hubungan yang penting antar entity types.
iii.
Mengidentifikasi
dan
mengasosiasikan
dengan entitas atau relationship types
atribut
24 Tujuan langkah ini adalah mengidentifikasi dan mengasosiasikan atribut dengan entitas atau relationship types. iv.
Menentukan wilayah artibut Tujuan langkah ini adalah menentukan wilayah untuk atribut-atribut yang ada di dalam model data konseptual lokal. Yang di maksud wilayah adalah sekumpulan nilai-nilai dimana suatu atribut mendapatkan nilainya. Contoh: nilai yang valid untuk jenis kelamin adalah ‘p’ atau ‘w’.
v.
Menentukan atribut candidate key, primary key dan alternate key Tujuan langkah ini adalah mengidentifikasi candidate key untuk tiap entity types dan apabila lebih dari satu candidate key di pilih salah satu untuk menjadi primary key dan lainnya menjadi alternate key.
vi.
Mempertimbangkan konsep pemodelan tingkat lanjut (langkah optional) Tujuan
langkah
ini
adalah
mempertimbangkan pengunaan konsep tingkat lanjut
seperti:
specialization/generalization,
aggregation, dan composition.
25 Specialization, Connolly dan Begg (2005, p374), adalah proses memaksimalkan perbedaan antara
anggota-anggota
entity
dengan
mengidentifikasi karakteristik yang membedakan masing-masing entity. Generalization, Connolly dan Begg (2005, p375), adalah proses meminimalkan perbedaan antara
entitas
dengan
mengidentifikasi
karakteristik yang sama dari masing-masing entity. Aggregation, Connolly dan Begg (2005, p383), merepresentasikan sebuah relasi ‘has-a’ atau ‘is-part-of’ antara entity types dimana yang satu adalah sebagai ‘whole’ dan yang lainnya sebagai ‘part’. Composition, Connolly dan Begg (2005, p384),
adalah
aggregation
sebuah
yang
bentuk
spesifik
merepresentasikan
dari
sebuah
asosiasi antara entitas dimana ada kepemilikan kuat dan kesamaan lifetime antara ‘whole’ dan ‘part’. vii.
Memeriksa redundansi pada model Tujuan ini adalah memeriksa ada atau tidaknya redundansi pada model.
viii.
Validasi model konseptual pada user transaction
26 Untuk memastikan bahwa model konseptual mendukung transaksi yang diperlukan. ix.
Review model data konseptual dengan user. Tujuannya adalah untuk me-review model data konseptual dengan user untuk memastikan mereka menganggap model sebagai representasi yang benar dari kebutuhan data perusahaan.
b)
Perancangan Basis Data secara Logikal 2.
Membangun data model logikal a.
Menurunkan (derive) relasi untuk model data logikal Tujuannya adalah untuk membuat relasi bagi model
data logikal
untuk
merepresentasikan
entitas-entitas, hubungan-hubungan dan atributatribut yang telah diidentifikasi. b.
Memvalidasi relasi-relasi menggunakan normalisai Tujuannya adalah untuk memvalidasi relasirelasi di dalam model data logikal dengan menggunakan normalisasi.
c.
Memvalidasi relasi-relasi terhadap transaksi user Tujuannya adalah untuk memastikan relasirelasi yang ada dalam model data logikal mendukung transaksi yang diperlukan.
d.
Memeriksa batasan-batasan integritas
27 Tujuannya adalah untuk memeriksa batasanbatasan integritas yang di representasikan dalam model data logikal. e.
Review model data logikal dengan user Tujuannya adalah untuk me-review model data logikal dengan user untuk memastikan mereka menganggap model sebagai representasi yang benar dari kebutuhan data perusahaan.
f.
Mengabungkan model data logikal kedalam model global (langkah optional) Tujuannya adalah mengabungkan model data logikal ke dalam satu model data logikal global yang merepresentasikan seluruh user views dari sebuah basis data. User
views
mendefinisikan
apa
yang
dibutuhkan dari sebuah sistem basis data yang dilihat dari perspektif jabatan tertentu (contohnya : manager atau supervisor) atau area aplikasi (marketing atau personalia). g.
Memeriksa untuk perkembangan di masa yang akan datang Tujuannya adalah untuk menentukan apakah akan ada perubahan yang signifikan yang mungkin terjadi dimasa yang akan datang dan untuk menilai
28 apakah
model
data
logikal
mampu
mengakomodasikan perubahan-perubahan ini. c)
Perancangan Basis Data secara Fisikal 3.
Menterjemahkan model data logikal untuk DBMS yang ditargetkan. a.
Merancang base relations Untuk setiap relasi yang diidentifikasikan pada global logical data model, definisinya terdiri dari nama relasi, daftar simple attribute diikuti tanda kurung, primary key berserta alternate key dan foreign key jika ada, dan referential integrity constraint bagi foreign key yang teridentifikasi. Definisi setiap atribut pada kamus data terdiri dari domainnya yang terdiri atas tipe data, panjang data,
setiap
constraint
pada
domain,
nilai
defaultnya jika ada, dan keterangan apakah atribut dapat memiliki nilai null. b.
Merancang representasi dari derived data Bertujuan untuk menentukan cara untuk merepresentasikan derived data yang ada dalam global logical data model ke dalam target DBMS. Biasanya derived attribute tidak terlihat pada logical data model namun didokumentasikan di dalam kamus data. Untuk setiap derived attribute
29 yang ada, tanda ‘/’ digunakan untuk menandakan atribut tersebut adalah derived attribute. c.
Merancang batasan-batasan umum Tujuannya adalah untuk merancang batasan umum bagi DBMS yang akan di pakai.
4.
Merancang organisasi file dan index a.
Menganalisis transaksi Bertujuan untuk memahami fungsi dari transaksi yang dijalankan pada basis data dan menganalisis transaksi-transaksi yang penting.
b.
Memilih organisasi file Untuk menentukan organisasi file yang efisien untuk setiap base relation.
c.
Memilih indeks Untuk
menentukan
apakah
penambahan
indeks akan meningkatkan unjuk kerja sistem. Ada tiga jenis indeks yaitu : i. Primary index Pengindeksan dilakukan pada kolom kunci (key field), yang diurutkan terlebih dahulu secara sekuensial. ii. Clustering index
30 Pengindeksan dilakukan pada kolom bukan kunci (non-key field), yang sudah diurutkan terlebih dahulu secara sekuensial. Kolom bukan kunci itu disebut juga dengan clustering attribute (Connolly dan Begg, 2005, p1277). iii. Secondary index Pengindeksan yang dilakukan pada kolom yang tidak terurut di dalam file data (Connolly dan Begg, 2005, p1277). d.
Memperkirakan kebutuhan ruang penyimpanan Memperkirakan besarnya ruang penyimpanan yang dibutuhkan untuk mendukung implementasi basis data pada tempat penyimpanan kedua. Hal ini sangat
tergantung
pada
target
DBMS
dan
perangkat keras yang digunakan. Perkiraan ukuran dapat dilakukan dengan mengukur besar data tiap baris dan jumlah baris pada setiap relasi.
5.
Merancang user views Bertujuan untuk merancang pandangan pengguna yang
diidentifikasikan
selama
tahap
pengumpulan
kebutuhan dan analisa pada daur hidup aplikasi basis data relasional (database application lifecycle).
31 6.
Merancang mekanisme keamanan Bertujuan untuk menentukan bagaimana kebutuhan keamanan akan direalisasikan. Keamanan bagi basis data sangat diperlukan karena basis data merupakan sumber daya perusahaan yang penting.
7.
Mempertimbangkan pengenalan redundancy terkontrol Untuk menentukan apakah pengenalan redundancy yang terkontrol
dengan
cara melonggarkan
aturan
normalisasi akan meningkatkan kinerja dari sistem.
8.
Memantau operasional sistem Bertujuan untuk memantau sistem operasional dan meningkatkan keputusan
kinerja
perancangan
sistem
untuk
memperbaiki
yang
tidak
sesuai
atau
menggambarkan perubahan kebutuhan-kebutuhan.
2.2
Teori-teori Pendukung 2.2.1
Penjualan Penjualan merupakan komunikasi pribadi untuk menyampaikan suatu informasi dalam rangka membujuk seorang calon pelanggan agar membeli sesuatu yang dapat memuaskan kebutuhannya (Futrell (1993, p52)).
32 Menurut Widjajanto (1999, p122) penjualan adalah transfer hak atas barang untuk mendapatkan sumber daya lainnya, seperti kas atau janji membayar kas (piutang). Mulyadi (1989, p202) mendefinisikan kegiatan penjualan terdiri dari atas dua tipe berdasarkan cara pembayarannya, yakni : -
Penjualan Tunai Penjualan tunai adalah transaksi penjualan dimana barang atau jasa baru diserahkan oleh perusahaan kepada pembeli jika perusahaan telah menerima uang atau pembayaran dari pembeli.
-
Penjualan Kredit Penjualan kredit adalah transaksi penjualan dimana jika pesanan dari pembeli telah terpenuhi dengan mengirim barang atau penyerahan jasa, maka untuk jangka waktu tertentu perusahaan memiliki piutang kepada pembeli tersebut.
2.2.2
Pembelian Menurut Haidar (2001, p352), pembelian adalah mendapatkan sesuatu (barang atau jasa) dengan menukar uang yang senilai. Menurut Barata (2001, p29), pembelian adalah cara memperoleh sesuatu (barang atau jasa) dengan memberikan balas jasa berupa sejumlah uang yang nilainya sama dengan barang atau jasa yang di perolehnya.
33 Menurut Mulyadi (2001, p299), pembelian didefinisikan sebagasi suatu usaha yang digunakan dalam perusahaan untuk pengadaan barang yang diperlukan oleh perusahaan.
2.2.3
Persediaan Menurut Handoko (1994, p333), persediaan adalah suatu istilah umum yang menunjukkan segala sesuatu atau sumber daya-sumber daya organisasi yang disimpan dalam antisipasinya terhadap pemenuhan permintaan. Ini meliputi persediaan bahan mentah (bahan baku), barang dalam proses, barang jadi (produk), bahan penolong, komponenkomponen lain yang menjadi bagian keluaran produk perusahaan. Persediaan, menurut Reiner, Heizer yang diterjemahkan oleh Kresnohadi Ariyoto (2001, p314), merupakan salah satu aset yang paling mahal di banyak perusahaan, mencerminkan 40% dari total modal yang diinvestasikan. Sedangkan menurut Love (1979, p3) persediaan adalah jumlah barang atau bahan baku dalam perusahaan dan disediakan untuk digunakan atau untuk dijual. Sistem persediaan menurut Handoko (1994, p334) adalah serangkaian kebijaksanaan dan pengendalian yang memonitor tingkat persediaan dan menentukan tingkat persediaan yang harus dijaga, kapan persediaan harus diisi, dan berapa besar pesanan yang harus dilakukan.
34 Sistem ini bertujuan untuk menetapkan dan menjamin tersedianya sumber daya yang tepat, dalam kuantitas yang tepat dan pada waktu yang tepat. Handoko (1994, p334) membedakan persediaan atas : -
Persediaan Bahan Mentah (raw materials)
-
Persediaan Komponen-komponen Rakitan (purchased parts / components)
2.2.4
-
Persediaan Bahan Pembantu atau Penolong (supplies)
-
Persediaan Barang dalam proses (work in process)
-
Persediaan Barang Jadi / Produk (finished goods)
Produksi dan Penjadwalan Ditinjau dari segi teknik, produksi adalah kegiatan menghasilkan barang atau jasa dalam arti fisik. Sedangkan ditinjau dari segi ekonomi, produksi dapat diartikan sebagai segala usaha untuk menaikkan faedah dari suatu barang. Faedah suatu barang dapat ditimbulkan karena : alam, bentuk, tempat, waktu, dan hak milik. Menurut Handoko (1994, p3) manajemen produksi merupakan usaha-usaha pengelolaan secara optimal terhadap penggunaan sumber daya-sumber daya atau fakta-fakta produksi (5M yakni : Man, Material, Machine, Money, Method) dalam proses transformasi bahan mentah dan tenaga kerja menjadi berbagai produk / jasa. Penjadwalan (Baroto, 2002, p167) merupakan alat ukur yang baik bagi perusahaan agregat. Pesanan-pesanan aktual pada tahap ini akan ditugaskan pertama kalinya pada sumber daya tertentu, seperti : fasilitas,
35 tenaga kerja, mesin, bahan baku. Sedangkan menurut Silvia Rostianingsih (2006, p57) penjadwalan merupakan proses pengalokasian resource pada periode waktu tertentu untuk menyelesaikan sejumlah pekerjaan dan menentukan kapan suatu proses dapat mulai dan selesai.