bab 2 landasan teori -...
TRANSCRIPT
6
BAB 2
LANDASAN TEORI
2.1 Teori-teori Utama
2.1.1 Sistem Informasi
2.1.1.1 Pengertian Sistem
Menurut Jogiyanto (1995, p1) terdapat dua pendekatan yang
digunakan untuk mendefinisikan sistem. Yang pertama adalah
pendekatan yang menekankan pada prosedur.
“Suatu sistem adalah suatu jaringan kerja dari prosedur-
prosedur yang saling berhubungan, berkumpul bersama-sama untuk
melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang
tertentu.”
Pendekatan yang kedua adalah pendekatan yang menekankan
pada urutan-urutan operasi dalam sistem.
“Suatu prosedur adalah suatu urutan-urutan operasi klerikal
(tulis-menulis) biasanya melibatkan beberapa orang di dalam satu atau
lebih departemen, yang diterapkan untuk menjamin penanganan yang
seragam dari transaksi-transaksi bisnis yang terjadi.”
2.1.1.2 Karakteristik Sistem
Suatu sistem mempunyai karakteristik atau sifat-sifat yang
tertentu, yaitu :
7
• Komponen-komponen (components)
• Batas sistem (boundary)
• Lingkungan luar sistem (environments)
• Penghubung (interface)
• Masukan (input)
• Keluaran (output)
• Pengolah (process)
• Sasaran (objectives)
• Tujuan (goal)
2.1.1.3 Pengertian Informasi
Menurut Jogiyanto (1995, p8), informasi adalah data yang
diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang
menerimanya. Sumber dari informasi adalah data. Data adalah
kenyataan yang menggambarkan suatu kejadian-kejadian dan kesatuan
nyata.
2.1.1.4 Pengertian Sistem Informasi
Menurut Jogiyanto (1995, p11), sistem informasi adalah suatu
sistem di dalam suatu organisasi yang mempertemukan kebutuhan
pengolahan transaksi harian, mendukung operasi, bersifat managerial,
dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar
tertentu dengan laporan-laporan yang diperlukan.
8
2.1.2 Basisdata
2.1.2.1 Pengertian Basisdata
Menurut Connolly (2002, p14), database adalah suatu
kumpulan logikal data yang terhubung satu sama lain, dan deskripsi
dari suatu data yang di rancang sebagai informasi yang dibutuhkan oleh
organisasi.
Jadi dapat disimpulkan bahwa basisdata adalah sekumpulan data
yang saling terelasi dan dapat diolah untuk memenuhi kebutuhan suatu
organisasi. Untuk dapat memahami basisdata kita dapat
mengilustrasikan basis data sebagai sebuah lemari file yang berisi
macam-macam kumpulan file data.
Pemilik dari basisdata dapat melakukan berbagai macam operasi
untuk mengolah data-data yang dimilikinya seperti menambah file-file
baru, menambahkan data pada file yang telah ada, mengambil data,
serta menghapus data.
2.1.2.2 Komponen Sistem Basisdata
Sistem basisdata memiliki 4 komponen utama, yaitu:
1. Data yang ada harus terintegrasi (integrated) dan terbagi (shared)
2. Perangkat keras (hardware) sebagai media penyimpanan data
3. Perangkat lunak (software)
4. Pemakai (user)
2.1.2.3 Keuntungan Penggunaan Basisdata
9
Adapun beberapa keuntungan yang dapat diperoleh dengan
menggunakan basisdata, yaitu :
1. Dapat mengurangi pengulangan karena data sama pada beberapa
aplikasi cukup disimpan sekali saja.
2. Integrity; sehingga data yang disimpan secara akurat
3. Menghindari ketidak-konsistenan karena pengulangan berkurang
sehingga umumnya updata hanya sekali
4. Penggunaan data bersama
5. Standarisasi terhadap keseragaman penyajian data
6. Adanya jaminan sekuriti karena data hanya dapat diakses oleh
yang berhak
7. Menyeimbangkan kebutuhan
2.1.2.4 Kerugian Penggunaan Basisdata
Selain keuntungan yang diperoleh, juga terdapat beberapa
kerugian, yaitu :
1. Memerlukan hardware tambahan
2. Biaya performance yang lebih besar
3. Sistem tampak lebih kompleks
4. Rawannya tingkat keberhasilan operasi
2.1.3 Data Flow Diagram
Menurut Yourdon (1989, p139), diagram aliran data adalah model atau
alat yang digunakan untuk menggambarkan sistem sebagai jaringan dari
10
sekumpulan proses fungsional, yang dihubungkan satu dengan lainnya oleh
suatu aliran data dan meneruskannya menjadi data.
Ada tiga tingkatan dalam diagram aliran data, yaitu:
1. Diagram Konteks
Merupakan tingkatan yang paling pertama, yang menggambarkan ruang
lingkup sistem dari sistem yang digunakan. Diagram ini hanya
memiliki satu proses yang menggambarkan sistem secara keseluruhan
dan hubungan antara sistem dengan unit-unit di luar sistem tersebut.
2. Diagram Nol
Diagram yang menggambarkan proses-proses dan aliran data yang terjadi
di dalam suatu sistem. Proses-proses ini dapat dipecah menjadi proses-
proses dan aliran data yang lebih terperinci.
3. Diagram Rinci
Diagram yang menggambarkan rincian proses-proses yang ada pada
diagram nol dan rincian proses-proses ini dapat dipecah lagi
menjadi proses-proses yang lebih terperinci.
Menurut Yourdon (1989, p141-152), diagram aliran data terdiri dari
simbol-simbol sebagai berikut:
1. Proses (Bubble atau function atau transformation)
Proses menggambarkan bagian dari sistem yang mengolah masukan
menjadi keluaran. Proses digambarkan dengan sebuah lingkaran.
Gambar 2.1 Simbol Proses Dalam DFD
11
2. Aliran (flow)
Aliran menggambarkan perpindahan informasi dari satu bagian ke
bagian lain dari sistem. Awal panah menggambarkan asal data
sedangkan awah panah menggambarkan tujuan.
Gambar 2.2 Simbol Aliran Data Dalam DFD
3. Store
Simbol ini digunakan untuk menggambarkan penyimpanan data.
Gambar 2.3 Simbol Data Store Dalam DFD
d. Terminator
Merupakan simbol yang menggambarkan entitas yang dapat berupa
orang, kelompok, atau organisasi yang berhubungan dengan sistem.
Gambar 2.4 Simbol Terminator Dalam DFD
2.1.4 State Transition Diagram
Menurut Jeffrey A. et al (1996, p364), State Transition Diagram adalah
suatu diagram yang menggambarkan bagaimana suatu proses dihubungkan satu
sama lain dalam waktu yang bersamaan. State Transition Diagram
digambarkan dengan sebuah state yang berupa komponen sistem yang
menunjukan bagaimana kejadian-kejadian tersebut dari satu state ke state lain.
12
State Transition Diagram merupakan suatu modeling tool yang
menggambarkan sifat ketergantungan pada waktu dari suatu sistem.
State Transition Diagram adalah diagram yang terdiri dari:
- State (keadaan)
- Event atau tindakan yang menyebabkan perpindahan dari satu state ke
state lainnya.
Ada dua macam simbol yang menggambarkan proses dalam State
Transition Diagram (STD), yaitu:
1. Gambar persegi panjang menunjukan state dari sistem
2. Gambar panah menunjukan transisi antar state. Tiap panah diberi label
dengan ekspresi aturan. Label yang di atas menunjukan kejadian yang
menyebabkan transisi yang terjadi. Label dibawah menunjukan aksi
yang terjadi akibat dari kejadian tadi.
Simbol Nama Keterangan
State
Transition
State melambangkan keadaan sebuah objek, baik
atribut itu sendiri maupun hubungan objek
tesebut dengan objek lain dari sistem.
Transition melambangkan suatu kejadian yang
menyebabkan perubahan state dalam sistem.
Setiap state Transition merupakan penghubung 2
buah state.
13
Gambar 2.5 Simbol yang Digunakan Pada State Transition
Diagram
2.1.5 Siklus Basisdata
Menurut Connoly (2002, p272), suatu basisdata dianalisis dan
dirancang berdasarkan siklus hidup seperti tergambar pada gambar berikut:
Database Planning
System Definition
Requirement Collection and Analysis
Application Design
Database Design
Conceptual Database Design
Logical Database Design
Physical Database Design
DBMS Selection
Prototyping (Optional)
Implementation
Data Conversion
Testing
Operational Maintenance
14
Gambar 2.6 Siklus Aplikasi Basis Data
a. Database Planning
Dalam tahap ini dilakukan perencanaan bagaimana tahapan-tahapan
perancangan berikutnya dapat direalisasikan secara paling efektif dan
efisien.
b. System Definition
Tahap ini menjabarkan spesifikasi jangkauan dan batasan dari aplikasi
basis data, penggunaannya dan lingkungan tempat aplikasi
diimplementasikan.
c. Requirement Collection and Analysis
Pada tahap ini dilakukan pengumpulan dan analisis kebutuhan pengguna
dan lingkungan aplikasi.
d. Database Design
Pada tahap ini dilakukan perancangan basis data secara konseptual, logikal,
dan fisikal.
e. DBMS Selection (optional)
DBMS yang paling cocok dipilih untuk aplikasi basis data.
f. Application Design
Tahap ini dilakukan untuk merancang interface bagi pengguna dan
program aplikasi yang menggunakan dan memproses basis data.
g. Prototyping (optional)
Tahap ini ditujukan untuk membangun prototype dari aplikasi basis data.
Hasil prototype ini memungkinkan perancang atau pengguna untuk
15
memvisualisasikan dan mengevaluasi bagaimana bentuk dan fungsionalitas
sistem akhir.
h. Implementation
Dalam tahap ini dilakukan pembuatan definisi basis data eksternal,
konseptual dan internal, serta program aplikasi.
i. Data Convertion and Loading
Pada tahap ini dilakukan konversi data dari sistem lama ke sistem baru.
j. Testing
Aplikasi basis data yang telah selesai akan diuji coba dengan tujuan untuk
mencari error pada aplikasi. Selain itu, dilakukan pula validasi aplikasi
atas kebutuhan yang telah dispesifikasikan sebelumnya oleh pengguna.
k. Operational Maintenance
Pada tahap ini aplikasi basis data diimplementasikan sepenuhnya. Sistem
diawasi dan dipelihara secara berkelanjutan. Jika diperlukan, kebutuhan-
kebutuhan baru dimasukan dalam aplikasi basis data melalui tahapan basis
data terdahulu.
2.1.6 Tahapan Perancangan Basisdata
Connolly (2002, p417-476), mendefinisikan metodologi perancangan
basisdata atas tiga tahapan, yaitu:
1. Perancangan basisdata konseptual
Tahap ini merupakan proses pembuatan model informasi yang digunakan
dalam sebuah perusahaan yang tidak tergantung pada semua masalah fisik.
Awal tahap ini dimulai dengan pembuatan conceptual data model
16
perusahaan yang secara keseluruhan bebas dari detail implementasi seperti
DBMS yang digunakan, program aplikasi, bahasa pemrograman, platform
untuk hardware, tingkat kinerja, maupun bentuk masalah fisik lainnya.
Perancangan ini terdiri dari tiga langkah sebagai berikut:
a. Penentuan entity (entitas) pada basis data
b. Pendefinisian relationship (hubungan) antar entitas
c. Penerjemahan hubungan ke dalam entity
Langkah-langkah diatas melibatkan komponen-komponen sebagaimana
diperlihatkan pada gambar berikut ini:
Gambar 2.7 Komponen-komponen Pada Perangkat Basis Data Konseptual
Penjelasan mengenai komponen-komponen di atas adalah sebagai berikut:
Logical Data Model
ConstrainEntity
Foreign Key
RelationAttribute
Candidate Key
Referential Integrity
Primary Key Alternative Key UpdateInsert
ValueLength FormatTypeName
Delete
Domain
17
a. Entity (entitas)
Entity merupakan sekumpulan objek yang memilik property yang sama,
yang oleh perusahaan dianggap memiliki keberadaan yang tidak
terikat oleh objek lainnya.
PELANGGAN, PEGAWAI, DEPARTEMEN, PENGARANG, BUKU,
BARANG, MATAKULIAH merupakan contoh entity. Pada
model relasional, entity akan menjadi tabel.
Menurut Connoly & Berg (2002, p342-343), entity dapat
diklasifikasikan atas strong entity (entitas kuat) dan weak entity (entitas
lemah). Strong entity merupakan entitas yang keberadaannya
tidak tergantung pada keberadaan entity lainnya. Sedangkan weak
entity adalah entity yang keberadaannya tergantung pada
keberadaan entity lain, sehingga bila strong entity-nya dihilangkan
maka weak entity yang tergantung padanya akan ikut hilang.
b. Attribute (atribut)
Atribut adalah property atau item data yang menjadi bagian dari suatu
entity. Nama Pegawai dan NIP adalah contoh atribut yang terdapat
pada entity PEGAWAI. Jumlah SKS dan code mata kuliah merupakan
contoh atribut pada entity MATAKULIAH.
c. Relation (hubungan)
Relation adalah seperangkat hubungan atau kaitan yang memiliki arti
antara dua entity. Misalnya, antara DOSEN dan MAHASISWA
terdapat hubungan berupa bimbingan. Pada model relasional, relation
akan menjadi foreign key (kunci tamu).
18
d. Constraint (batasan)
Constraint digunakan untuk melindungi integritas data, misalnya
melindungi kesalahn sewaktu pengisian data.
e. Domain
Domain adalah himpunan nilai yang berlaku bagi suatu atribut. Batasan
domain mendefinisikan Nama (name), Tipe (type), Format, Panjang
(length), dan Nilai (value) masing-masing item data. Pada berbagai
perangkat lunak basis data akan sering ditemui tipe seperti CHAR dan
NUMERIC, dimana CHAR menyatakan tipe alphanumeric atau
karakter (dapat berupa gabungan huruf, simbol, dan angka) dan
NUMERIC yang menyatakan tipe bilangan.
f. Referential Integrity (integritas referensial)
Integritas referensial merupakan aturan-aturan yang mengatur
hubungan antara primary key dengan foreign key milik tabel-tabel yang
berada dalam suatu basis data relasional untuk menjaga konsistensi
data.
Berdasarkan operasi yang akan dilakukan, integritas referential dapat
dibagi menjadi tiga macam, yaitu:
1. insert,
2. update, dan
3. delete
Tujuan integritas referential ini adalah untuk menjamin agar elemen
dalam suatu tabel yang menunjuk ke suatu pengenal unik pada suatu
basis pada tabel lain benar-benar menunjuk ke suatu nilai yang memang
19
ada. Sebagai contoh, dapat didefinisikan suatu aturan yang tidak
memperkenankan data pelanggan pada tabel Pelanggan dihapus jika ada
data pelanggan tersebut dipakai pada tabel lain (integritas referential
untuk delete). Contoh lain, seorang mahasiswa tidak diizinkan
mendaftar matakuliah yang tidak ditawarkan pada semester ini
(intergritas referential untuk insert). Integritas referential pada update
memungkinkan pengubahan suatu key pada suatu tabel akan
menyebabkan suatu nilai pada tabel lain yang tergantung pada tabel
tersebut juga akan diubah, kemampuan ini disebut juga dengan cascade
update.
g. Key (kunci)
Penentuan kunci (key) merupakan hal yang paling esensial pada basis
data relasional. Kunci bukan hanya sebagai metode untuk mengakses
suatu baris tertentu, tetapi sekaligus juga dapat menjadi pengenal unik
dalam suatu table. Akan tetapi perlu juga diketahui bahwa tidak semua
kunci dapat menjadi pengenal yang unik karena terdapat beberapa
istilah kunci. Kunci dapat berupa sebuah atribut atau gabungan dari
beberapa atribut. Berikut ini adalah penjelasan jenis-jenis kunci yang
digunakan dalam perancangan:
1. Simple key
Kunci sederhana merupakan kunci yang dibentuk oleh sebuah
elemen data (atribut).
2. Composite key
20
Kunci komposit adalah kunci yang tersusun atas lebih dari satu
atribut.
3. Candidate key
Kunci kandidat adalah kunci yang secara unik (tidak ada
kembarannya) dapat dipakai sebagai pengenal unik untuk
mengidentifikasikan suatu baris dalam tabel.
4. Primary key
Kunci primer adalah kunci yang dipilih di antara kunci kandidat
untuk menjadi kunci utama untuk mengidentifikasikan baris dalam
tabel.
5. Alternate key
Kunci alternatif adalah semua kunci kandidat yang tidak bertindak
sebagai kunci primer.
6. Foreign key
Kunci tamu adalah sembarang atribut pada suatu tabel yang menjadi
kunci primer pada tabel lainnya.
2. Perancangan basisdata logikal
Perancangan basis data secara logikal merupakan proses pembuatan model
informasi yang digunakan perusahaan berdasarkan pada model data khusus,
tapi bebas dari DBMS tertentu dan masalah fisik lainnya. Tahap ini
memetakan model konseptual pada sebuah model logikal yang dipengaruhi
oleh data model untuk database tujuan. Model data logikal merupakan
sumber informasi untuk tahap perancangan physical, menyediakan suatu
21
kendaraan bagi perancang physical database untuk melakukan pertukaran
yang sangat penting untuk perancangan basis data yang efisien.
3. Perancangan basisdata fisikal
Perancangan basis data secara fisik merupakan proses pembuatan deskripsi
dari implementasi database pada secondary storage yang menjelaskan basis
relasi, organisasi file, dan indeks yang digunakan untuk memperoleh akses
pada data yang efisien, dan masalah integritas lainnya yang berkaitan, dan
menentukan mekanisme security. Tahap ini memungkinkan perancang
untuk menentukan bagaimana basis data diimplementasikan. Oleh karena
itu, rancangan fisikal dirancang untuk DBMS yang khusus. Antara
rancangan logical dan fisikal terdapat keterkaitan, hal ini disebabkan karena
keputusan yang diambil selama perancangan fisikal untuk meningkatan
kinerja bisa mempengaruhi logical data model.
Kegiatan-kegiatan yang dilakukan, antara lain:
a. Mendefinisikan seluruh kolom untuk semua tabel.
b. Mendefinisikan kebutuhan integritas referensial.
c. Mendefinisikan view.
d. Mendefinisikan indeks.
2.1.7 ERD (Entity Relationship Diagram)
2.1.7.1 Entity Type
Menurut Connolly (2002, p331), entity type adalah sekelompok
objek-objek dengan property yang sama, yang diidentifikasikan dengan
keberadaan yang independent di perusahaan. Konsep dasar dari ER
22
model adalah entity type, yang merepresentasikan grup dari objek-objek
dalam dunia nyata dengan property yang sama. Sebuah entity type
mempunyai keberadaan yang tidak terikat dan dapat menjadi objek
dengan keberadaan fisik atau objek dengan keberadaan konseptual.
Entity occurrence adalah objek dari sebuah entity type yang
diidentifikasikan dengan unik. Pada buku Connolly digunakan
pengertian entity type dan entity occurrence tetapi kita disini
menggunakan pengertian umum yaitu ‘entity’.
2.1.7.2 Relationship
Menurut Connolly (2002, p334), relationship type adalah
sebuah kumpulan yang memiliki arti antara entity type. Relationship
occurrence adalah suatu kumpulan objek yang diidentifikasikan dengan
unik, yang termasuk satu kejadian dari tiap-tiap entity yang ada. Pada
buku Connolly digunakan pengertian relationship type atau relationship
occurrence tetapi kita disini menggunakan pengertian yang umum yaitu
‘relationship’.
2.1.7.3 Attribute
Menurut Connolly (2002, p338), attribute adalah sebuah entity
atau tipe relationship. Attribute domain adalah kumpulan nilai yang
diperbolehkan untuk satu atau lebih atribut. Attribute simple adalah
suatu atribut yang terdiri atas komponen tunggal dengan keberadaan
yang tidak terikat. Atribut ini tidak dapat dibagi lagi menjadi komponen
23
yang lebih kecil. Attribute composite adalah atribut yang terdiri atas
banyak komponen, tiap-tiap komponen dengan keberadaan yang tidak
terikat. Atribut tertentu dapat dibagi lagi menjadi komponen yang lebih
kecil dengan keberadaan masing-masing yang tidak terikat. Attribute
single valued adalah atribut yang menampung nilai tunggal untuk tiap-
tiap kejadian dari suatu entity type. Sebagian besar atribut adalah
bernilai tunggal. Attribute multi valued adalah atribut yang menampung
banyak nilai untuk setiap kejadian dari suatu entity type, contoh
attribute multi valued adalah telephone. Derived attribute adalah atribut
yang mempresentasikan sebuah nilai yang dapat diturunkan dari nilai
atribut yang berelasi atau kumpulan atribut, tidak dibutuhkan dalam
entitas yang sama.
2.1.8 Normalisasi
2.1.8.1 Pengertian Normalisasi
Menurut Connolly (2002, p376) “A technique for producing a
set of relations with desirable properties, given the data requirements
of an enterprise.” Yang dapat diartikan normalisasi adalah sebuah
teknik untuk membuat sebuah set relasi dengan properti yang
diinginkan, dengan kebutuhan data perusahaan.
Sebuah tabel yang belum dinormalisasi disebut dengan
Unnormalize form (UNF). UNF adalah sebuah tabel yang memiliki satu
atau lebih repeating groups.
24
1. Bentuk normal pertama (First Normal Form / 1NF)
Aturan bentuk normal pertama (1NF) menurut Connolly (2002,
p388), “A relation in which the intersection of each row and column
contains one and only one value”, yang dapat diartikan, “Sebuah
relasi dimana tiap baris dan kolom hanya berisi satu nilai.” Bentuk
normal pertama dicapai bila tiap nilai atribut adalah tunggal.
Kondisi ini dapat diperoleh dengan melakukan eliminasi terjadinya
data ganda (repeating groups). Pada kondisi normal pertama ini
kemungkinan masih terjadi adanya data rangkap.
2. Bentuk normal kedua (Second Normal Form / 2NF)
Aturan bentuk normal kedua (2NF) menurut Connolly (2002, p392),
“A relation that is in first normal form and every non-primary key
attribute is fully function dependent on the primary key”, yang dapat
diartikan, “Sebuah relasi dalam bentuk normal pertama dan setiap
atribut bukan primary key yang bergantung secara fungsional
kepada primary key”. Bentuk normal kedua adalah berdasarkan
konsep ketergantungan fungsional penuh (full functional
dependency).
3. Bentuk normal ketiga (Third Normal Form / 3NF)
Aturan bentuk normal ketiga (3NF) menurut Connolly (2002,
p394), “A relation that is in first and second normal form, and in
which non-primary key attribute is transitively dependent on the
primary key”, yang dapat diartikan, “Sebuah relasi dalam bentuk
normal pertama dan kedua serta setiap atribut bukan primary key
25
yang bergantung secara transitif kepada primary key”. Bentuk
normal ketiga adalah berdasarkan pada konsep peralihan
ketergantungan (transitive dependency).
4. Bentuk normal Boyce-Codd (Boyce-Codd Normal Form / BCNF)
Aturan bentuk normal Boyce-Codd (BCNF) menurut Connolly
(2002, p398), “A relation is in BCNF, if and only if, every
determinant is a candidate key”, yang dapat diartikan, “Sebuah
relasi disebut BCNF, jika dan hanya jika setiap determinannya
adalah sebuah candidate key”. Untuk menguji apakah suatu relasi
sudah dalam BCNF, dilakukan identifikasi semua determinan dan
memastikan bahwa determinan tersebut adalah candidate key.
Determinan adalah sebuah atribut, atau kumpulan atribut, dimana
beberapa atribut yang lain masih bergantung secara fungsional
penuh (fully functionally dependent).
5. Bentuk normal keempat (Fourth Normal Form / 4NF)
Aturan bentuk normal ke-empat (4NF) menurut Connolly (2002,
p407-408), “A relation that is in Boyce-Codd normal form and
contains no nontrivial multi-valued dependencies”, yang dapat
diartikan, “Sebuah relasi di BCNF dan tidak mengandung
ketergantungan multi-valued nontrivial (nontrivial multi-valued
dependency). Bentuk normal ke-empat (4NF) merupakan bentuk
yang lebih kuat dari BCNF dimana 4NF mencegah relasi dari
nontrivial multi-valued dependency dan data redundancy.
Normalisasi dari BCNF ke 4NF meliputi pemindahan multi-valued
26
dependency dari relasi dengan menempatkan atribut dalam sebuah
relasi baru bersama dengan determinan. Multi-valued dependency
menggambarkan ketergantungan antara atribut-atribut dalam suatu
relasi.
6. Bentuk normal kelima (Fifth Normal Form / 5NF)
Aturan bentuk normal kelima (5NF) menurut Connolly (2002,
p410), “A relation that has no join dependency”, yang dapat
diartikan, “Sebuah relasi yang tidak mempunyai ketergantungan
gabungan (join dependency). Join dependency menggambarkan
sebuah tipe ketergantungan.
2.1.9 Database Management System
2.1.9.1 Pengertian DBMS
Connolly (2002, p16) mendefinisikan DBMS sebagai sebuah
sistem software yang memungkinkan pemakai untuk mendefinisikan,
membuat, memelihara, dan mengontrol akses ke basis data.
2.1.9.2 Fungsi DBMS
Connolly (2002, p48-52) menjelaskan fungsi-fungsi dari
DBMS, yaitu:
1. Data storage, retrieval, dan update
DBMS harus melengkapi pengguna dengan kemampuan yang
menyimpan, menelusuri, dan meng-update data dalam basis data.
2. A users-accessible catalog
27
DBMS harus menyediakan sebuah katalog dimana deskripsi dari
data item disimpan dan dapat diakses pengguna.
3. Transaction support
DBMS harus menyediakan suatu mekanisme yang akan menjamin
bahwa semua kegiatan update maupun tidak, sesuai dengan
transaksi yang dilakukan.
4. Concurrency control services
DBMS harus menyediakan mekanisme yang menjamin bahwa basis
data di-update dengan benar ketika lebih dari suatu pemakai meng-
update basis data secara bersamaan.
5. Recovery services
DBMS harus menyediakan mekanisme untuk memperbaiki basis
data yang dalam suatu kesempatan rusak karena suatu hal.
6. Authorization services
DBMS harus menyediakan mekanisme untuk menjamin bahwa
hanya pengguna yang mempunyai hak yang dapat mengakses basis
data.
7. Support for data communication
DBMS harus mampu berintegrasi dengan software komunikasi.
8. Integrity services
DBMS harus menyediakan cara untuk menjamin bahwa data dalam
basis data dan perubahan pada data mengikuti aturan yang telah
ditetapkan sebelumnya.
9. Services to promote data independence
28
DBMS harus mencakup fasilitas yang mendukung independensi
program dari struktur aktual basis data.
10. Utility services
DBMS harus menyediakan satu set fasilitas pelayanan.
2.1.10 Integritas
Date (2000, p249), mengemukakan bahwa integritas menunjukkan
pada keakuratan atau kebenaran data dalam basis data.
a. Entity Integrity
Menurut Connolly (2002, p458), integritas diterapkan pada primary key
pada relasi dasar. Relasi dasar adalah relasi yang menyatakan entity pada
skema konseptual. Penerapan entity integrity adalah bahwa pada relasi
dasar primary key tidak boleh null.
b. Referential Integrity
Menurut Connolly (2002, p458), integritas ini diterapkan pada foreign
key. Jika sebuah foreign key terdapat pada suatu relasi, maka foreign key
tersebut harus menunjuk ke candidate key pada relasi yang lain. Jika
candidate key yang ditunjuk tidak ada, maka foreign key tersebut harus
bernilai null.
c. Enterprise Constraint
Menurut Connolly (2002, p483), enterprise constraint merupakan aturan
tambahan yang dibuat oleh user atau database administrator. Enterprise
constraint pada umumnya merupakan kebijakan-kebijakan yang
diterapkan pada perusahaan.
29
2.2 Teori-teori Pendukung
2.2.1 Pembelian
2.2.1.1 Definisi Pembelian
Menurut Mulyadi (2001, p209), pembelian adalah suatu usaha
yang digunakan dalam perusahaan untuk penggandaan barang yang
diperlukan oleh perusahaan.
Secara umum definisi pembelian adalah merupakan usaha
pengadaan barang atau jasa dengan tujuan yang akan digunakan sendiri,
untuk kepentingan proses produksi maupun untuk dijual kembali, baik
dengan atau tanpa proses, dalam proses pembelian yang ada, agar
kegiatan pembelian dapat dilakukan dengan benar.
2.2.1.2 Jenis-jenis Pembelian
Berdasarkan jenis pemasok, pembelian dapat dibedakan menjadi
dua, yaitu :
a. Pembelian lokal, yaitu pembelian yang dilakukan dari pemasok
dalam negeri.
b. Pembelian impor, yaitu pembelian yang dilakukan dari pemasok
luar negeri.
2.2.1.3 Fungsi yang Terkait Dalam Pembelian
30
Fungsi pembelian pada perusahaan industri adalah melakukan
pembelian bahan baku yang sesuai dengan kebutuhan proses produksi.
Di dalam melaksanakan pembelian ada beberapa faktor yang harus
diperhatikan yaitu mutu bahan baku atau barang jadi, jumlah bahan
yang dibutuhkan, waktu serta harga bahan.
Menurut Mulyadi (2001, p300), fungsi yang terkait dalam
sistem pembelian adalah :
a. Fungsi gudang, bertanggung jawab untuk mengajukan permintaan
sesuai dengan posisi persediaan yang ada di gudang dan untuk
menyimpan barang yang telah diterima oleh fungsi penerimaan.
b. Fungsi pembelian, bertanggung jawab untuk memperoleh informasi
mengenai harga barang, menentukan pemasok yang dipilih dalam
pengadaan barnag dan mengeluarkan order pembelian kepada
pemasok yang dipilih.
c. Fungsi penerimaan, bertanggung jawab untuk melakukan
pemeriksaan terhadap jenis, mutu dan kuantitas bahan yang
diterima dari pemasok guna menentukan dapat atau tidaknya barang
tersebut diterima oleh perusahaan.
d. Fungsi akuntansi yang berkaitan dengan transaksi pembelian adalah
fungsi pencatatan hutang yang bertanggung jawab untuk mencatat
transaksi pembelian ke register bukti kas keluar untuk
menyelenggarakan arsip dokumen sumber bukti kas keluar yang
berfungsi sebagai catatan hutang atau menyelenggarakan kartu
hutang sebagai buku pembantu hutang.
31
2.2.1.4 Jaringan Prosedur yang Membentuk Sistem Pembelian
Menurut Mulyadi (2001, p301-303) jaringan prosedur yang
membentuk sistem pembelian adalah :
a. Prosedur permintaan pembelian
Dalam prosedur ini fungsi gudang mengajukan permintaan
pembelian dalam formulir surat permintaan pembelian kepada
fungsi pembelian.
b. Prosedur permintaan penawaran barang dan pemilihan pemasok
Dalam prosedur ini, fungsi pembelian mengirimkan surat
permintaan penawaran harga kepada para 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.
c. 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
d. Prosedur penerimaan barang
Dalam prosedur ini, fungsi penerimaan melakukan pemeriksaan
mengenai jenis, kuantitas, mutu barang yang diterima dari pamasok
32
dan kemudian membuat laporan penerimaan barang untuk
menyatakan penerimaan barang dari pemasok tersebut.
e. Prosedur distribusi pembelian
Prosedur ini meliputi distribusi rekening yang didebit dari transaksi
pembelian untuk kepentiangn pembuatan laporan manajemen.
2.2.1.5 Informasi yang Diperlukan Dari Kegiatan Pembelian
Menurut Mulyadi (2001, p303-310) informasi yang diperlukan
oleh manajemen dari kegiatan pembelian adalah :
a. Jenis persediaan yang telah mencapai titik pemesanan kembali.
b. Order pembelian yang telah dikirim kepada pemasok
c. Order pembelian yang telah dipenuhi oleh pemasok
d. Total saldo utang dagang pada tanggal tertentu
e. Saldo utang dagang kepada pemasok tertentu
f. Tambahan kuantitas dan harga pokok persediaan dari pembelian
2.2.1.6 Dokumen Yang Digunakan Dalam Pembelian
Berikut dokumen yang digunakan adalah :
a. Surat permintaan pembelian, formulir ini 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 dan biasanya terdiri dari 2 lembar
untuk setiap permintaan, satu lemabr untuk fungsi pembelian dan
tembusannya untuk arsip fungsi yang meminta barang.
33
b. Surat permintaan penawaran harga, digunakan untuk meminta
penawaran harga bagi barang yang pengadaannya tidak bersifat
berulang kali terjadi, yang menyangkut jumlah rupiah pembelian
yang besar.
c. Surat order pembelian, digunakan untuk memesan barang kepada
pemasok yang telah dipilih.
d. Laporan penerimaan barang, dokumen ini dibuat oleh fungsi
penerimaan untuk menunjukan bahwa barang yang diterima dari
pemasok telah memenuhi jenis, spesifikasi, mutu dan kuantitas
seperti yang tercantum dalam surat order pembelian.
e. Surat perubahan order, digunakan bila terjadi perubahan terhadap
ini surat order pembelian yang sebelumnya telah diterbitkan.
f. Bukti kas keluar, dokumen ini dibuat oelh fungsi akuntansi untuk
dasar pencatatan transaksi pembelian dan juga berfungsi sebagai
perintah pengeluaran kas untuk pembayaran utang kepada pemasok
dan yang sekaligus sebagai surat pemberitahuan kepada kreditur
mengenai maksud pembayaran.
2.2.2 Penjualan
2.2.2.1 Definisi Penjualan
Menurut Mulyadi (2001, p202), kegiatan penjualan terdiri dari
transaksi penjualan barang atau jasa baik secara kredit maupun tunai.
Penjualan menurut cara bayarnya dapat dibedakan sebagai berikut :
34
1. Penjualan tunai, yaitu penjualan yang dilaksanakan oleh perusahaan
dengan cara mewajibkan pembeli dengan melakukan pembayaran
harga barang terlebih dahulu sebelum barang diserahkan kepada
pembeli.
2. Penjualan kredit, yaitu penjualan yang dilakukan dengan cara
memenuhi order dari pelanggan dengan mengirimkan barang atau
menyerahkan jasa dan untuk jangka waktu tertentu perusahaan
memiliki piutang kepada pelanggannya.
2.2.2.2 Fungsi yang Terkait Dalam Penjualan
Menurut Mulyadi (2001, p204), fungsi yang terkait dengan
sistem penjualan adalah :
1. Fungsi kredit, bertanggung jawab dalam meneliti status kredit
pelanggan dan memberikan otorisasi pemberian kredit kepada
pelanggan.
2. Fungsi penjualan, bertanggung jawab menerima order, mengedit
order, meminta otorisasi kredit, menentukan segala pengiriman dan
bertanggung jawab atas transaksi penjualan.
3. Fungsi gudang, bertanggung jawab untuk menyimpan dan
menyiapkan barang yang dipesan dan mengirimkan ke bagian
pengiriman.
4. Fungsi pengiriman, bertanggung jawab untuk menyerahkan barang
ke pelanggan berdasarkan surat order pengiriman yang diterima
dari bagian penjualan.
35
5. Fungsi akuntansi, bertanggung jawab untuk mencatat transaksi
penjualan dan mengirimkan pernyataan piutang kepada debitur,
serta membuat laporan penjualan.
6. Fungsi penagihan, bertanggung jawab untuk membuat surat tagihan
secara periode kepada pemegang kartu kredit.
2.2.2.3 Jaringan Prosedur yang Membentuk Sistem Penjualan
Menurut Mulyadi, jaringan prosedur yang membentuk sistem
penjualan adalah :
1. Prosedur order penjualan
Dalam prosedur ini, bagian order penjualan menerima order dari
pembeli dan menambah informasi penting pada surat order. Bagian
ini kemudian mengirimkan kepada bagian kredit untuk meminta
persetujuan kredit. Setelah disetujui bagian penjualan mengisi
faktur penjualan dan surat order pengiriman ke bagian yang terkait.
2. Prosedur pengiriman barang
Bagian pengiriman mengirimkan barang kepada pembeli sesuai
dengan informasi yng tercantum dalam surat order pengiriman yang
diterima dari bagian order penjualan.
3. Prosedur pencatatan piutang
Bagian ini mencatat tembusan faktur penjualan ke dalam kartu
piutang atau dalam metode tertenu mengarsipkan dokumen menurut
abjad yang berfungsi sebagai pencatatan piutang.
4. Prosedur penagihan
36
Bagian penagihan membuat faktur penjualan dan mengirimkan
kepada pembeli atau pelanggan. Dalam metode tertentu faktur
penjualan dibuat oleh bagian penjualan sebagai tembusan pada
waktu membuat surat order pengiriman.
5. Prosedur pencatatan penjualan
Dalam prosedur ini fungsi akuntansi mencatat transaksi penjualan
ke dalam jurnal penjualan.
2.2.2.4 Informasi Yang Diperlukan Dari Transaksi Penjualan
Informasi yang diperlukan oleh pihak manajemen dari transaksi
penjualan adalah sebagai berikut :
a. Jumlah pendapatan penjualan menurut jenis produk atau kelompok
produk persatuan waktu
b. Jumlah piutang kepada setiap debitur dari transaksi penjualan
c. Jumlah harga pokok produk yang dijual selama jangka waktu
tertentu
d. Nama dan alamat pembeli
e. Kuantitas barang yang dijual
f. Nama wiraniaga yang melakukan
g. Otorisasi pejabat yang berwenang
2.2.2.5 Dokumen Yang Digunakan Dalam Penjualan
Dokumen yang digunakan menurut Mulyadi (2001, p214)
adalah sebagai berikut :
37
a. Surat order pengiriman dan tembusannya
b. Faktur dan tembusannya
c. Rekapitulasi harga pokok penjualan
d. Bukti memorial
2.2.2.6 Retur Penjualan
Transaksi retur penjualan terjadi jika perusahaan menerima
pengembalian barang dari pelanggan karena barang tidak sesuai dengan
permintaan. Ketidaksesuaian tersebut terjadi kemungkinan karena
barang yang diterima tidak cocok dengan spesifikasi yang tercantum
dalam surat order, barang mengalami kerusakan dalam pengiriman atau
barang diterima melewati tanggal pengiriman.
2.2.3 Persediaan
2.2.3.1 Definisi Persediaan
Menurut Rangkuti (1995, p7), persediaan adalah merupakan
salah satu unsur yang paling aktif dalam operasi perusahaan yang
secara kontinu diperoleh, diubah kemudian dijual kembali.
Dengan demikian dapat disimpulkan bahwa persediaan adalah
barang-barang yang dibeli untuk diproduksi, serta dijual kembali dan
habis dipakai oleh perusahaan.
Karena pentingnya peranan persediaan barang bagi perusahaan,
kekayaan tersebut haruslah berada dalam pengendalian dan pengawasan
ketat.
38
Tujuan pengawasan menurut Rangkuti (1995, p9) :
a. Menjaga jangan sampai kehabisan persediaan
b. Supaya pembentukan persediaan stabil
c. Menghindari pembelian yang kecil-kecilan / tidak efisien
d. Pemesanan yang ekonomis
2.2.3.2 Jenis-jenis Persediaan
Menurut Rangkuti (1995, p7-8), jenis-jenis persediaan menurut
fungsinya dapat dibedakan :
a. Batch Stock / Lot Size Inventory, yaitu persediaan yang diadakan
karena pembelian atau pembuatan bahan-bahan atau barang-barang
dalam jumlah yang lebih besar dari jumlah yang dibutuhkan saat
ini.
b. Fluctuation Stock, yaitu persediaan yang diadakan untuk
menghadapi fluktuasi permintaan konsumen yang tidak dapat
diramalkan.
c. Anticipation Stock, yaitu persediaan yang diadakan untuk
menghadapi fluktuasi permintaan yang dapat diramalkan,
berdasarkan pola maksimum yang terdapat dalam satu tahun dan
untuk menghadapi penggunaan atau penjualan atau permintaan
meningkat.
Menurut jenis dan posisi barang, menurut Rangkuti (1995, p14)
dapat dibedakan:
39
a. Persediaan bahan baku yaitu persediaan barang-barang berwujud,
seperti besi, kayu serta komponen-komponen lainnya yang
digunakan dalam proses produksi.
b. Persediaan bagian produksi / komponen yang dibeli, yaitu
persediaan barang-barang yang terdiri dari komponen-komponen
yang diperoleh dari perusahaan lain, dimana secara langsung dapat
dirakit menjadi suatu produk.
c. Persediaan barang-barang setengah jadi / barang dalam proses, yaitu
persediaan barang-barang yang merupakan keluaran dari tiap-tiap
bagian dalam proses produksi atau yang telah diolah menjadi suatu
bentuk, tetapi masih perlu diproses lebih lanjut menjadi barang jadi.