7 BAB 2 LANDASAN TEORI 2.1 Teori Umum Berikut ini disertakan

advertisement
7
BAB 2
LANDASAN TEORI
2.1 Teori Umum
Berikut ini disertakan teori-teori umum yang digunakan dalam penulisan skripsi
ini.
2.1.1 Data
Menurut Connolly dan Begg (2005, p20), data merupakan jembatan
yang menghubungkan komponen mesin dengan komponen manusia.
Menurut sifatnya data terbagi atas dua bagian, yaitu:
a.
Data Kualitatif
Data kualitatif adalah data yang dikategorikan menurut
gambaran kualitas objek yang dipelajari. Misalnya kuesioner
pertanyaan tentang suasana kerja, kualitas pelayanan sebuah tempat
makan atau gaya kepemimpinan.
b.
Data Kuantitatif
Data kuantitaif adalah data yang memiliki harga yang
berubah-ubah atau bersifat variable. Misalnya harga saham,
besarnya pendapatan.
8
Menurut sumbernya data terbagi atas:
a.
Data Intern
Data intern adalah data yang diperoleh atau bersumber dari
alam suatu instansi (lembaga atau organisasi).
b.
Data Ekstern
Data ekstern adalah data yang diperoleh atau bersumber dari
luar instansi atau instansi yang lain.
Data ekstern terbagi lagi atas 2 bagian yaitu:
1. Data Primer
Data
primer
adalah
data
yang
langsung
dikumpulkan oleh orang yang berkepentingan atau yang
menggunakan data tersebut. Data yang diperoleh seperti
hasil wawancara yang biasa dilakukan peneliti. Dalam
metode pengumpulan data primer, peneliti / observer
melakukan sendiri penelitian / observasi di lapangan.
Pelaksanaannya dapat berupa survey atau percobaan
(eksperimen).
2. Data Sekunder
Data sekunder adalah data yang tidak secara
langsung dikumpulkan oleh orang yang berkepentingan
dengan data tersebut. Data sekunder pada umumnya
digunakan oleh peneliti untuk memberikan gambaran
tambahan, gambaran pelengkap atau diperoses lebih
9
lanjut. Data sekunder didapat dari hasil penelitian
lembaga / instansi seperti BPS, media massa, lembaga
pemerintahan atau swasta dan sebagainya.
Yang menjadi perhatian dalam penggunaan data
sekunder adalah sumber data, batasan konsep yang
digunakan, serta tingkat ketelitian dalam pengumpulan
data.
Sedangkan menurut jenisnya data dapat dibagi menjadi dua bagian yaitu:
a.
Data Kontinu
Data kontinu adalah data yang diperoleh dari hasil
pengukuran.
b.
Data Diskrit
Data diskrit merupakan data yang diperoleh dari hasil
perhitungan.
2.1.2 Basis Data
Menurut Connolly dan Begg (2005, p15), basis data adalah
sekumpulan data yang saling berhubungan antara satu dengan lainnya secara
logikal dan suatu deksripsi data yang dirancang untuk memenuhi kebutuhan
informasi suatau perusahaan atau organisasi.
2.1.3Database Management System (DBMS)
Menurut Connolly dan Begg (2005, p16), Database Management
System (DBMS) adalah suatu sistem piranti lunak yang memungkinkan user
untuk mendefinisikan, membuat, merawat, dan mengontrol akses ke dalam
basis data.
10
Fasilitas yang disediakanoleh DBMS adalah:
a.
Data Definition Language(DDL)
Menurut Connolly dan Begg (2005, p40), Data Definition
Language (DDL) adalah bahasa pemrograman yang mengijinkan
Database Administrator (DBA) atau user untuk menggambarkan
nama dari entitas, atribut, serta hubungan-hubungan
yang
diperlukan pada aplikasi, bersamaan dengan asosiasi integritas dan
keamanan data.
b.
Data Manipulation Language (DML)
Menurut Connolly dan Begg (2005, p40), Data Manipulation
Language (DML) adalah bahasa pemrograman yang menyediakan
fasilitas untuk menyokong operasi manipulasi basis data yang
disimpan dalam basis data.
Adapun operasi manipulasi basis data meliputi:
1. Penginputan data baru kedalam basis data.
2. Modifikasi data baru yang disimpan didalam basis data.
3. Pengambilan data simpanan dari basis data.
4. Penghapusan data yang ada didalam basis data.
DML
memungkinkan
penggunanya
memasukkan,
memperbaharui, menghapus, mengirim dan mengambil data dari
basis data. Contohnya insert, update, delete dan select.
11
Komponen DBMS dibagi menjadi lima jenis menurut Connolly dan
Begg (2005, p18-21) yaitu:
a.
Hardware
Dalam
menjalankan
DBMS
dan
aplikasi,
hardware
merupakan komponen yang paling penting yang berupa komputer,
mainframe atau server.
b.
Software
Dalam menjalankan DBMS, software merupakan program
penggerak atau aplikasi yang akan dijalankan.
c.
Data
Merupakan komponen terpenting dalam DBMS karena data
merupakan penghubung komputer dengan manusia.
d.
Procedures
Merupakan
instruksi
dan
aturan
yang
menentukan
perancangan dan penggunaan basis data dimana pengguna sistem
dan pengolahan basis data memerlukan dokumentasi untuk
menjalankan dan menggunakan sistem.
e.
People
Merupakan komponen terakhir yang juga berperan penting
dalam merancang sampai dengan menggunakan DBMS tersebut.
12
DBMS memiliki keuntungan sebagai berikut:
a.
Mengurangi Pengulangan Data
Pengulangan data terjadi disebabkan oleh data yang tersimpan
terpisah pada setiap aplikasi komputer. Pada DBMS duplikasi data
dibatasi hanya pada field yang memerlukan penggabungan dua
table.
b.
Mencapai Independensi Data
Spesifikasi data disimpan dan dipelihara dalam basis data itu
sendiri. Perubahan dapat dibuat pada struktur data tanpa
mempengaruhi program-program aplikasi untuk mengakses data.
c.
Mengintegrasikan Data dan Informasi Secara Cepat
Hubungan logis antar data dan SQL memungkinkan pengguna
mengambil data dalam hitungan detik atau menit. DBMS
menyediakan sarana khusus untuk mengakses data yaitu SQL.
d.
Meningkatkan Keamanan
DBMS dapat menerapkan beberapa lapis keamanan seperti
penggunaan kata sandi, pengaturan hak akses dan enkripsi.
Sedangkan kerugian DBMS adalah sebagai berikut:
a.
Membutuhkan perangkat lunak yang mahal.
b.
Membutuhkan perangkat keras dalam jumlah yang besar.
c.
Perlunya menyewa atau memperkerjakan Database Administrator
(DBA).
13
2.1.4 Database Design
Gambar 2.1 Tahapan Database System Development Lifecycle
Menurut Connolly dan Begg (2005, p.320), perancangan basis data
merupakan proses pembuatan suatu desain untuk sebuah basis data yang
akan mendukung operasional dan sasaran suatu perusahaan. Terdapat 11
tahap dalam merancang basis data :
14
1.
Database Planning
Menurut Connoly
dan Begg (2005, p.285), Database
planning merupakan kegiatan pengelolaan yang memungkinkan
tahapan dari siklus hidup sistem pengembangan basis data untuk
dapat direalisasikan dengan se-efisien dan se-efektif mungkin. Pada
tahapan inilah ditentukannya bagaimana metode pengumpulan
datanya, bagimana format yang dibutuhkan, dokumen penting apa
saja yang dibutuhkan, bagaimana desain dan implementasi yang
akan dijalankan.
2. System Definition
Menurut Connoly dan Begg (2005, p.286), System Definition
merupakan tahapan untuk menentukan ruang lingkup dan batasanbatasan dari sistem basis data yang akan dibuat dan juga user view
nya. User view didefinisikan sebagai kebutuhan database dilihat
dari perspektif :
•
Aturan kerja secara umum (seperti manager atau
supervisor).
• Daerah
penerapan
perusahaan
(seperti
marketing,
personnel, atau stock control).
Dengan dilakukannya identifikasi user view, dapat
membantu menjamin tidak ada kebutuhan yang dilupakan saat
pengembangan sistem database.
15
3.
Requirements Collection and Analysis
Menurut Connoly
dan Begg (2005, p.288), Requirements
Collection and Analysis merupakan tahapan untuk mengumpulkan
dan menganalisa infromasi mengenai bagian – bagian dari
perusahaan
yang
di-support
oleh
sistem
basis
data
dan
menggunakan informasi ini untuk mengidentifikasikan kebutuhan –
kebutuhan untuk sistem yang baru. Metode yang dilakukan untuk
mengumpulkan informasi tersebut adalah dengan menggunakan
teknik pencarian fakta (Fact-Finding Techniques). Informasi
dikumpulkan untuk setiap user view yang ada, termasuk :
• Deskripsi dari data yang dipakai atau dihasilkan.
• Rincian bagaimana data tersebut akan dipakai atau
dihasilkan.
• Segala kebutuhan tambahan untuk sistem database yang
baru.
Kegiatan penting lainnya selain pengumpulan informasi
adalah bagaimana cara untuk mengatasi situasi yang dimana
terdapat lebih dari satu user view untuk sistem basis data. Terdapat
3 pendekatan utama untuk mengelola kebutuhan sistem basis data
dengan multiple user views (user view lebih dari satu), yaitu :
16
1) Centralized Approach
Kebutuhan untuk setiap user view digabungkan
menjadi satu set kebutuhan untuk sistem basis data yang
baru. Model data yang mengawali semua user views
dibuat pada tahap desain basis data.
2) View Integration Approach
Kebutuhan
untuk
setiap
user
view
tetap
terpisah.Model data yang mengawali setiap user view
dibuat dan digabungkan nanti pada tahap desain basis
data.
4.
Database Design
Menurut Connoly dan Begg (2005, p.291), Database Design
adalah proses pembuatan suatu rancangan untuk sistem basis data
yang akan mendukung kegiatan operasional dan tujuan dari
perusahaan. Ada 2 pendekatan untuk merancang sebuah basis data,
yaitu:
• Pendekatan bottom-up
Dimulai pada tingkat awal dari atribut (yaitu
properti dari entity dan relationship) yang mana melalui
analisis dari asosiasi antar atribut, dikelompokkan
menjadi hubungan yang merepresentasikan jenis – jenis
entity dan hubungan antar entity. Pendekatan ini cocok
17
untuk merancang basis data yang sederhana dengan
jumlah atribut yang tidak banyak.
• Pendekatan top-down
Digunakan pada basis data yang lebih kompleks,
yang dimulai dengan pengembangan dari model data
yang mengandung beberapa entitas dan hubungan tingkat
tinggi dan kemudian memakai perbaikan top-down
berturut-turut untuk mengidentifikasi entitas, hubungan
dan atribut berkaitan tingkat rendah. Pendekatan ini
biasanya digambarkan melalu ER (Entity Relationship).
Perancangan basis data terbagi ke dalam tiga komponen yang
meliputi Conceptual Database Design, Logical Database Design,
Physical Database Design.
1) Conceptual Database Design.
Menurut Connolly dan Begg (2005, p.322), hal yang pertama
dilakukan dalam membuat conceptual design adalah dengan membuat
model data secara konseptual dari perusahaan yang bersangkutan.
Conceptual database design seluruhnya independent dari implementasi
seperti target DBMS software, program aplikasi, bahasa pemograman,
atau physical consideration lainnya. Data tersebut merupakan
informasi-informasi mengenai perusahaan. Dalam conceptual database
design, data yang ada dikembangkan dengan representasi secara
konseptual yang mencakup mengidentifikasi entity, relationship, dan
atribut yang sangat penting dalam perancangan bisnis tersebut.
18
19
Langkah-langkah untuk membuat data model lokal yang
konseptual untuk setiap user view dapat digambarkan sebagai berikut :
a. Penentuan Jenis Entitas.
Tujuannya adalah untuk mengidentifikasi dan membuat
kelas-kelas dari obyek yang ada berikut penjelasannya serta
menentukan entitas utama yang dibutuhkan. Salah satu metode
untuk mengidentifikasi entity adalah dengan menguji spesifikasi
kebutuhan
dari
pengguna.
Dari
spesifikasi
ini
dapat
mengidentifikasikan noun dan noun phrases yang disebutkan.
Selain itu juga dapat melihat objek utama seperti orang, tempat
atau konsep dari ketertarikan diluar noun lainnya yang
merupakan kualitas dari objek lain.
b. Penentuan Jenis Hubungan Antar Entitas.
Tujuannya adalah untuk mengidentifikasi hubunganhubungan yang ada antara entitas yang telah diidentifikasikan.
Dalam
mengidentifikasi
tipe
relasi
yang
ada
dengan
menggunakan Entity Relationship Diagram (ERD), mencari
batasan dari tipe relationship, memeriksa fan dan chasm traps,
memeriksa masing masing entity ikut serta setidaknya dalam satu
relationship, dan dokumentasikan tipe relationship.
c.
Penentuan dan Penghubungan Atribut Dengan Entitas.
20
Tujuannya
adalah
untuk
mengidentifikasikan
dan
menghubungkan atribut-tribut yang berkaitan dengan entitas atau
tipe relationship yang telah sesuai.
d.
Penentuan Domain Terhadap Atribut.
Tujuannya adalah untuk menetapkan domain untuk tiaptiap
atribut
dalam
model
data
konseptual
lokal
dan
mendokumentasikan setiap detail dari domain. Suatu domain
adalah suatu kelompok nilai yang dari mana satu atau lebih
atribut mengambil nilainya.
e.
Penentuan Atribut Candidate Key, Primary Key, dan Alternate
Key.
Tujuannya adalah untuk menentukan candidate key dan
primary key dari kumpulan atribut-atribut yang telah ditentukan
pada tiap entitas. Candidate key adalah satu atau lebih atribut dari
suatu entitas yang dapat dijadikan primary key. Primary key
adalah satu atribut dari suatu entitas yang dipakai sebagai ciri
yang paling unik dari entitas tersebut.
f.
Mempertimbangkan Kegunaan Dari Konsep Enhanced Modeling
(optional).
Tujuannya adalah untuk mengembangkan ER model
dengan menggunakan konsep enhanced modeling, seperti
spesialisasi,
generalisasi,
penggabungan
komposisi (composition).
g.
Pemeriksaan Model Terhadap Redudansi.
(aggregation)
dan
21
Tujuannya adalah untuk memeriksa konsep model data
apakah masih mengandung data maupun entitas serta atribut yang
berulang atau tidak. Hal pertama yang dilakukan adalah
memeriksa kembali hubungan-hubungan yang ada apabila
terdapat suatu hubungan yang mirip.
h.
Validasi Model Konseptual Lokal Terhadap Transaksi Pengguna.
Tujuannya untuk memastikan model konseptual local
mendukung transaksi yang dibutuhkan oleh view. Diuji dua
pendekatan untuk memastikan model data konseptual lokal
mendukung transaksi yang dibutuhkan, dengan cara:
1.
Mendeskripsikan
Transaksi-
transaksi.
Memeriksa seluruh informasi (entity, relationship, dan
atribut) yang dibutuhkan oleh setiap transaksi yang telah
disediakan oleh model, dengan mendokumentasikan setiap
kebutuhan transaksi.
2.
Mengunakan
Jalur-jalur
Transaksi.
Untuk validasi model data terhadap transaksi yang
dibutuhkan
termasuk
representasi
diagram
jalur
yang
digunakan oleh setiap transaksi langsung pada ER diagram.
i.
Review Model Data Konseptual Dengan Pengguna.
Tujuannya untuk mengkaji ulang model data konseptual
lokal dengan penggunauntuk memastikan model tersebut adalah
22
representasi sebenarnya dari view.Model data konseptual ini
termasuk ER diagram dan dokumentasi pendukung yang
mendeskripsikan model data.Bila ada kejanggalan (anomaly)
dalam model data, maka harus dibuat perubahan yang sesuai yang
mungkin
membutuhkan
pengulangan
langkah-langkah
sebelumnya.
2)
Logical Database Design.
Menurut Connolly dan Begg (2005, p.323), logical database
design merupakan proses pembuatan model data dengan menggunakan
informasi yang diperoleh dari perusahaan serta berdasarkan pada
model data spesifik. Model data yang telah diperoleh dalam conceptual
database design diubah dalam bentuk logical model dimana data yang
ada dipengaruhi oleh model data yang menjadi tujuan database.
Hal ini dilakukan untuk menerjemahkan representasi konseptual
ke dalam bentuk struktur logic dalam database yang akan dijadikan
sumber informasi dalam merancang physical database design serta
memberikan sarana yang membantu para perancang database dalam
merancang physical database.
Hasil akhir dari logikal database design ini berupa sebuah kamus
data yang berisi atribut-atribut beserta key-nya (primary key, alternate
key, dan foreign key) dan ERD keseluruhan dengan atribut key-nya.
Langkah-langkah untuk membuat logikal database design dapat
digambarkan sebagai berikut :
a)
Menentukan relasi – relasi untuk model data logikal
23
Tujuan dari dilakukannya tahap ini adalah membuat relasi
untuk model data logikal untuk merepresentasikan entitas, relasi
dan atribut yang telah diidentifikasi pada tahap konseptual. Tahap
ini terdiri dari 9 langkah, yaitu :
1. Identifikasi Strong Entity
Menurut Connolly dan Begg (2005, p354), Strong
Entity adalah entity yang dapat berdiri sendiri tanpa
bergantung pada entity lainnya. Untuk setiap strongentity
yang ada dalam model data, buat relasi yang berisi semua
atribut yang simple dari entity tersebut.
2. Identifikasi Weak Entity
Menurut Connolly dan Begg (2005, p355), Weak
entity adalah entity yang tidak dapat berdiri sendiri dan
memiliki ketergantungan yang tinggi pada entity lainnya.
Untuk setiap weak entity yang ada dalam model data, buat
relasi yang berisi semua atribut yang simple dari entity
tersebut. Primary key dari weak entity baru dapat
ditentukan setelah semua relasi terhadap owner entity
selesai ditentukan.
3. Pembentukan Relasi biner one to many (1:*)
Pada setiap relasi biner 1:*, entity pada bagian “1”
dari relasinya adalah merupakan parent entity dan entity
pada bagian “*” dari relasinya merupakan child entity.
Untuk merepresentasikan relasi ini, atribut primary key
24
yang ada pada parent entity disalin ke child entity yang
nantinya akan dijadikan sebagai foreign key pada child
entity.
4. Pembentukan Relasi biner one to one (1:1)
Pembentukan relasi 1:1 akan lebih sulit dari 1:*
karena pada pembentukan relasi 1:1 ini cardinality dari
relasi tidak dapat digunakan untuk mengidentifikasi mana
yang parent entity dan mana yang child entity tetapi
menggunakan
participation
constraint
untuk
menentukannya. Participation constraint terbagi menjadi
3, yaitu:
•
Mandatory participation pada kedua sisi dari
relasi 1:1.
Menurut Connolly dan Begg (2005, p466),
pada kasus ini, kita harus menggabungkan
setiap entity yang terlibat kedalam satu relasi
dan memilih salah satu dari primary key dari
setiap original entity untuk menjadi primary key
dari relasi yang baru, sedangkan yang lainnya
dijadikan alternate key.
•
Mandatory participation pada salah satu sisi
dari relasi 1:1.
25
Menurut Connolly dan Begg (2005, p466),
pada kasus ini entity yang mempunyai optional
participation dalam relasi dianggap sebagai
parent entity, dan entity yang mempunyai
mandatory participation dalam relasi dianggap
sebagai
child
entity.Seperti
yang
telah
disebutkan diatas, salinan primary key dari
parent entity ditempatkan dalam relasi yang
merepresentasikan child entity. Jika ada lebih
dari satu atau lebih atribut dalam suatu relasi,
atribut
ini
harus
menyertakan
penyalinan
primary key ke relasi child.
•
Optional participation pada kedua sisi dari
relasi 1:1.
Menurut Connolly dan Begg (2005, p467),
kita dapat memilih primary key mana yang
dipilih tergantung dari kasus yang ada.
Participation merupakan angka minimum (angka
paling kiri) dari multiplicity dalam kedua sisi dari relasi
(lihat gambar 2.2).Participation dikatakan mandatory
apabila angka minimum dari participation adalah 1,
sedangkan dikatakan optional apabila angka minimum
dari participation adalah 0.
26
Gambar 2.2Cardinality dan Participation yang diambil dari Multiplicity pada relasi
27
5. Relasi 1..1 Recursive
Menurut Connolly dan Begg (2005, p467), Tahap
ini sama dengan tahap yang diatas, yaitu relasi 1..1 biasa.
Untuk relasi 1:1 recursive dengan mandatory participation
pada kedua sisi, representasikan relasi recursive sebagai
relasi tunggal dengan dua salinan primary key.Seperti
sebelumnya,
salah
satu
salinan
dari
primary key
merepresentasikan foreign key dan harus diubah namanya
untuk menandakan relasi yang direpresentasikan.
Untuk relasi 1:1 recursive dengan mandatory
participation pada salah satu sisi, kita mempunyai pilihan
untuk menciptakan relasi tunggal dengan dua salinan
primary
key
atau
merepresentasikan
menciptakan
relasi.
Relasi
relasi
baru
untuk
baru
hanya
akan
mempunyai dua atribut, yang keduanya merupakan salinan
dari primary key.
Untuk relasi 1:1 recursive dengan optional
participation pada kedua sisi, kita menciptakan relasi baru
seperti yang telah diuraikan diatas.
6. Tipe Relasi Superclass / Subclass
Menurut Connolly dan Begg (2005, p467), untuk
setiap relasi superclass / subclass dalam model data
konseptual, kita mengidentifikasikan superclass entity
28
sebagai parent entity dan subclass entity sebagai child
entity.Terdapat banyak pilihan dalam merepresentasikan
relasi sebagai salah satu atau lebih relasi – relasi. Pilihan
yang paling sesuai tergantung dari sejumlah factor seperti
disjointness dan participation constraints pada relasi
superclass / subclass, apakah subclasses tersebut terlibat
dalam distinct relationship dan jumlah participants dalam
relasi superclass / subclass.
7. Relasi biner many to many (*:*)
Menurut Connolly dan Begg (2005, p469), untuk
tiap relasi biner *:* buat relasi untuk merepresentasikan
relasi dan memasukkan semua atribut yang merupakan
bagian dari relasi tersebut. Selanjutnya adalah menyalin
salinan primary key dari entity yang berhubungan di dalam
relasi kedalam relasi yang baru untuk berlaku sebagai
foreign key.
8. Tipe Relasi Kompleks
Menurut Connolly dan Begg (2005, p470), untuk
setiap relasi kompleks, ciptakan sebuah relasi untuk
merepresentasikan relasi dan memasukkan semua atribut
yang merupakan bagian dari relasi tersebut. Selanjutnya
adalah menyalin salinan primary key dari entity yang
berhubungan di dalam relasi kompleks kedalam relasi baru
untuk berlaku sebagai foreign key.
29
9. Atribut Multivalue
Menurut Connolly dan Begg (2005, p471), untuk
setiap atribut multi-valued dalam entity, ciptakan sebuah
relasi yang merepresentasikan atribut – atribut multivalued dan menyalin salinan primary key dari owner entity
kedalam relasi baru untuk menjadi foreign key.
b)
Validasi model dengan normalisasi
Menurut Connolly dan Begg (2005, p473), tujuannya
adalah untuk memvalidasi relasi – relasi dalam model data
konseptual menggunakan teknik normalisasi.
Menurut Connoly dan Begg (2005, p388), normalisasi
adalah teknik untuk menghasilkan sekumpulan relasi – relasi
dengan properti – properti yang diinginkan, sesuai dengan
kebutuhan data – data yang diberikan oleh perusahaan. Tujuan
dari normalisasi ini adalah untuk meminimalkan redudansi data
(perulangan data) dan update anomalies, menciptakan representasi
data, hubungan antar data dan constraint yang akurat, serta
meningkatkan stabilitas. Untuk mencapai tujuan tersebut maka
harus dilakukan identifikasi dengan benar atas relasi – relasi yang
ada. Pada dasarnya, proses normalisasi ini dilakukan karena
terjadinya redudansi data atau kejanggalan pengubahan (update
anomaly).
30
Update anomaly ada tiga jenis, yaitu insert anomaly,
delete anomaly dan modification / update anomaly. Insert
anomaly adalah kejanggalan yang terjadi terhadap sebuah tabel
pada saat dilakukannya penambahan suatu record, yaitu berupa
pelanggaran terhadap integrity constraint. Delete anomaly adalah
kejanggalan yang terjadi terhadap suatu tabel pada saat dilakukan
penghapusan suatu record, penghapusan bermaksud untuk
menghapus suatu data tertentu tetapi menyebabkan kehilangan
informasi lain dari tabel tersebut. Modification / update anomaly
adalah kejanggalan yang terjadi terhadap suatu tabel pada saat
dilakukan pengubahan suatu record, pengubahan terhadap suatu
nilai tertentu harus dilakukan lebih dari sekali. Hal ini amat
memungkinkan terjadinya inkonsistensi data.
Menurut Connolly dan Begg (2005, p401), proses
normalisasi meliputi langkah – langkah sebagai berikut :
-
Unnormalized Form (UNF), bentuk awal sebelum
proses normalisasi dilakukan yang berisi satu atau
lebih repeating groups.
-
First Normal Form (1NF), proses pertama dari
normalisasi yang bertujuan untuk menghilangkan
repeating groups.
-
Second
Normal
Form
(2NF),
bertujuan
untuk
menghilangkan partial dependency dalam primary key.
31
-
Third
Normal
Form
(3NF),
bertujuan
untuk
menghilangkan transitive dependency antara atribut
non- primary key.
c)
Memvalidasi relasi dengan user transaction
Menurut Connolly dan Begg (2005, p474), tahap ini
bertujuan untuk menjamin bahwa relasi – relasi dalam model data
logikal mendukung transaksi – transaksi yang dibutuhkan oleh
user.
d)
Mendefinisikan integrity constraint
Menurut Connolly dan Begg (2005, p474), tahap ini
bertujuan
untuk
memeriksa
integrity
constraint
yang
direpresentasikan dalam model data logikal. Integrity constraint
terdiri dari 5 type, yaitu :
•
Required Data
Beberapa atribut harus selalu memiliki nilai yang
valid. Dengan kata lain, tidak diperbolehkan bernilai
NULL.
•
Attribute Domain Constraints
Tiap atribut mempunyai domain, yaitu kumpulan
nilai – nilai yang legal. Sebagai contoh, ada dua jenis
kelamin yaitu ‘M’ dan ‘F’, jadi domain untuk atribut
jenis kelamin adalah karakter string tunggal yang
terdiri
dari ‘M’ dan ‘F’. Batasan ini harus
32
diidentifikasikan ketika melakukan pemilihan domain
atribut untuk model data.
•
Multiplicity
Multiplicity
merepresentasikan
batasan
yang
diletakkan pada relasi antara data di dalam basis data.
•
Entity Integrity
Primary Key dari suatu entity tidak dapat bernilai
NULL. Batasan ini harus dipertimbangkan saat kita
melakukan identifikasi primary key untuk setiap tipe
entity.
•
Referential Integrity
Foreign Key menghubungkan tiap tuple dalam
relasi child ke tuple dalam relasi parent yang meliputi
nilai candidate key yang sesuai. Referential integrity
berarti bahwa jika foreign key memiliki nilai, maka
nilai tersebut harus menunjuk pada tuple yang ada
pada relasi parent. Terdapat lima strategi untuk
mempertahankan
referential
integrity
pada
saat
penghapusan tuple pada relasi parent, yaitu :
-
NO ACTION
Mencegah penghapusan dari relasi parent jika
terdapat child tuples yang ditunjuk.
33
-
CASCADE
Ketika parent tuple dihapus, childtuple yang
ditunjuk akan secara otomatis ikut terhapus.
-
SET NULL\
Ketika ada parent tuple yang dihapus, nilai
foreign key dalam semua child tuples yang
berhubungan akan secara otomatis diubah
menjadi NULL.
-
SET DEFAULT
Saat parent tuple dihapus, nilai foreign key
pada semua child tuples yang berhubungan
akan secara otomatis diubah menjadi nilai
awalnya.
-
NO CHECK
Saat parent tuple dihapus, tidak melakukan
apapun untuk menjamin referential integrity
tetap terjaga.
•
General Constraints
Pengubahan – pengubahan pada entities mungkin
diatur oleh batasan – batasan yang memerintah
transaksi pada ‘real world’ yang direpresentasikan
oleh pengubahan tersebut.
e)
Me-review model data logikal dengan user
34
Menurut Connolly dan Begg (2005, p478), tahap ini
bertujuan untuk menjamin bahwa pengguna mempertimbangkan
model data logikal untuk menjadi representasi yang sebenarnya
dari kebutuhan data perusahaan.
f)
Menggabungkan model data logikal ke dalam global model
(optional).
Menurut Connolly dan Begg (2005, p479), tahap ini
bertujuan untuk merepresentasikan semua user views dari basis
data.
g)
Memeriksa untuk perkembangan lebih lanjut
Menurut Connolly dan Begg (2005, p473), tahap ini
bertujuan untuk menentukan apakah terdapat perubahan yang
signifikan pada masa depan yang dapat diramalkan dan untuk
menilai apakah model data logikal dapat mengakomodasi
perubahan tersebut.
3)
Physical Database Design.
Menurut Connolly dan Begg (2005, p.324), physical database
design merupakan proses pembuatan deskripsi dari suatu implementasi
basis data pada secondary storage. Hal ini mendeskripsikan base
relation, organisasi data, dan indeks yang digunakan untuk mencapai
efisiensi akses ke dalam data, dan associated integrity constraints yang
lainnya dan security measures. Physical database design merupakan
fase ketiga dan terakhir dalam desain basis data. Tujuan utama dari
physical database design adalah untuk mendeskripsikan bagaimana
35
perancang bermaksud untuk mengimplementasikan secara fisik dari
logical database design. Langkah-langkah dalam pembuatan physical
database design adalah sebagai berikut:
a) Menerjemahkan model data logikal untuk DBMS yang dipilih
Menurut Connolly dan Begg (2005, p497), tahap ini
bertujuan untuk menghasilkan relational database schema dari
model data logikal yang nantinya dapat diimplementasikan
kedalam DBMS target. Untuk dapat menyelesaikan proses ini,
designer membutuhkan pengetahuan yang mendalam tentang
fungsionalitas yang diberikan dari DBMS target. Sebagai contoh :
-
Bagaimana cara untuk menciptakan relasi dasar
-
Mengetahui apakah sistem tersebut dapat mensupport primary keys, foreign keys, alternate
keys yang telah didefinisi.
-
Mengetahui apakah sistem tersebut dapat mensupport pendefinisian dari required data (yaitu,
apakah sistem memperbolehkan suatu atribut
didefinisikan sebagai NOT NULL).
-
Mengetahui apakah sistem tersebut dapat mensupport pendefinisian dari domain – domain
yang telah dibuat.
-
Mengetahui apakah sistem tersebut dapat mensupport relational integrity constraints.
36
-
Mengetahui apakah sistem tersebut dapat mensupport pendefinisian dari integrity constraints.
Terdapat tiga aktifitas untuk melakukan tahap ini, yaitu :
1. Merancang Relasi – relasi Dasar
Menurut Connolly dan Begg (2005, p498),
tujuannya
adalah
merepresentasikan
untuk
memutuskan
relasi–relasi
bagaimana
dasar
yang
diidentifikasikan dalam model data logikal dalam DBMS
yang dipilih. Untuk tiap relasi yang diidentifikasi dalam
model data logikal, kita mempunyai definisi yang terdiri
atas :
• Nama dari relasi
• Daftar atribut–atribut sederhana dalam
golongan–golongan.
• Primary key dan alternate key dan foreign
key jika ada.
• Referential
semua
integrity
foreign
constraints
keys
yang
untuk
telah
diidentifikasi.
sedangkan dari data dictionary, tiap atribut juga
memiliki :
37
• Domain-nya, yang berisi tipe data, panjang
dan semua batasan dalam domain.
• Nilai optional default untuk atribut
• Apakah atribut dapat mempunyai nilai
NULL.
• Apakah atribut tersebut diturunkan, dan
jika iya, maka atribut tersebut harus
dikomputasi.
2. Merancangan Representasi Untuk Data Turunan
Menurut Connolly dan Begg (2005, p499),
tujuannya
adalah
untuk
memutuskan
bagaimana
merepresentasikan semua data derived yang ada dalam
model data logikal dalam DBMS yang dipilih . Atribut
yang nilainya dapat dicari dengan memeriksa nilai – nilai
dari atribut–atribut lainnya dikenal dengan sebutan derived
atau calculated attribute.
3. Merancang General Constraint
Menurut Connolly dan Begg (2005, p501),
tujuannya adalah untuk merancang general constraint
untuk DBMS yang dipilih.
b) Merancang file organization dan indexes.
Menurut Connolly dan Begg (2005, p501), tahap ini
bertujuan untuk menentukan file organization yang optimal untuk
38
menyimpan relasi–relasi dasar dan indeks–indeks yang dibutuhkan
untuk mencapai performa yang dapat diterima, dengan begitu,
relasi dan tuple akan disimpan pada secondary storage.
Menurut Connolly dan Begg (2005, p.532), Terdapat
beberapa factor yang dapat digunakan untuk mengukur efisiensi,
yaitu :
•
Transaction throughput adalah jumlah transaksi yang
dapat diproses dalam jangka waktu tertentu. Diukur pada
kondisi peak.
•
Response time, adalah waktu yang diperlukan untuk
menyelesaikan satu transaksi. Dari pandangan pengguna,
kita sedapat mungkin ingin meminimalkan response time.
Response time ini biasanya dipengaruhi waktu untuk
mengakses data yang diperlukan, system load, OS
Scheduling, communication delay.
•
Disk storage, adalah jumlah disk space yang dibutuhkan
untuk menyimpan file-file basis data. Para perancang
sistem biasanya ingin meminimalkan disk storage yang
digunakan.
Ada 4 aktifitas dalam melakukan tahap ini, yaitu :
1. Menganalisa transaksi
Menurut Connolly dan Begg (2005, p.502),
tujuannya adalah untuk mengerti fungsi dari transaksi
39
yang akan diterapkan pada basis data dan untuk
menganalisa semua transaksi yang penting.
2. Memilih organisasi file
Menurut Connolly dan Begg (2005, p.506),
tujuannya adalah untuk menentukan organisasi file yang
efisien untuk setiap relasi dasar.
3. Memilih indexes
Menurut Connolly dan Begg (2005, p.508),
tujuannya adalah
untuk
mempertimbangkan
apakah
dengan menambahkan index akan meningkatkan performa
dari sistem.
4. Estimasi kebutuhan disk space
Menurut Connolly dan Begg (2005, p.514),
tujuannya adalah untuk memperkirakan jumlah
disk space yang dibutuhkan oleh basis data.
c) Merancang user view
Menurut Connolly dan Begg (2005, p.515), tahap ini
bertujuan untuk merancang user view yang diidentifikasikan saat
pengumpulan
kebutuhan
dan
tahap
analisis
dari
system
development lifecycle.
d) Merancang mekanisme keamanan
Menurut Connolly dan Begg (2005, p.516), tahap ini
bertujuan untuk merancang mekanisme keamanan untuk basis data
40
seperti yang ditentukan oleh user pada tahap pengumpulan
kebutuhan
dari
system
development
lifecycle.
Mekanisme
keamanan yang dirancang dalam basis data yaitu mekanisme
keamanan sistem dan mekanisme keamanan data.
e) Mempertimbangkan pengenalan redundancy control
Menurut Connolly dan Begg (2005, p.519), tahap ini
bertujuan untuk menentukan apakah pengenalan redundancy yang
dikontrol dengan aturan – aturan normalisasi akan meningkatkan
performa sistem.
f)
Mengawasi dan mengendalikan sistem operasional
Menurut Connolly dan Begg (2005, p.532), tahap ini
bertujuan untuk mengawasi sistem operasional dan meningkatkan
performa dari sistem untuk memperbaiki keputusan perancangan
yang tidak sesuai atau merefleksikan perubahan kebutuhan.
5.
DBMS Selection
Menurut Connolly dan Begg (2005, p.295), DBMS Selection
merupakan tahap pemilihan DBMS yang sesuai untuk mendukung
sistem basis data yang sedang dibuat. Langkah – langkah dalam
menentukan DBMS :
1. Menggambarkan cakupan tugas berdasarkan kebutuhan
perusahaan.
2. Membuat perbandingan mengenai 2 atau 3 produk DBMS.
3. Mengevaluasi produk – produk DBMS tersebut.
41
4. Merekomendasikan
pemilihan DBMS dan membuat
laporan hasil dari evaluasi produk DBMS tersebut.
Secara khusus DBMS menyediakan fasilitas – fasilitas sebagai
berikut :
•
Mengijinkan pengguna untuk menentukan basis data,
biasanya melalui DDL (Data Definition Language). DDL
mengijinkan pengguna untuk menspesifikasikan tipe data,
struktur dan batasan – batasan data yang bisa disimpan
dalam basis data.
•
Mengijinkan pengguna untuk insert, update, delete atau
retrieve data dari basis data, biasanya melalui DML (Data
Manipulation Language).
•
DMBS menyediakan akses kontrol ke basis data. Sebagai
contohnya DBMS menyediakan :
1. Security System, dimana mencegah autorisasi
pengguna untuk mengakses basis data.
2. Integrity
System,
dimana
menangani
konsistensi penyimpanan data.
3. Concurrency
Control
System,
dimanan
mengijinkan basis data untuk diakses secara
share.
6.
Application Design
42
Menurut Connolly dan Begg (2005, p.299), Application
Design merupakan tahap mendesain user interface dan program
aplikasi yang menggunakan dan memproses basis data. Berdasarkan
Gambar 2.1, dapat dilihat bahwa database design dan application
design merupakan aktifitas yang paralel dalam database lifecycle.
Dalam kebanyakan kasus, tidak mungkin dapat menyelesaikan
application design sebelum menyelesaikan database design.
Dengan kata lain basis data ada untuk mendukung aplikasi sehingga
harus ada aliran informasi antara application design dan database
design.
7.
Prototyping (Optional)
Menurut Connolly dan Begg (2005, p.303), Prototyping
merupakan tahap pembuatan contoh model dari sistem basis
data.Ada 2 strategi dalam membuat prototype, yaitu requirements
prototyping dan evolutionary prototyping.Untuk requirements
prototyping digunakan prototype untuk menentukan kebutuhan
suatu aplikasi basis data yang diusulkan dan ketika kebutuhan
dirasakan sudah lengkap maka prototype tersebut tidak lagi
digunakan.Evolutionary prototyping digunakan untuk tujuan yang
sama, perbedaannya adalah bahwa prototype-nya tidaklah dibuang
tapi dikembangkan lebih lanjut sehingga menjadi sistem basis data
yang siap digunakan.
8.
Implementation
43
Menurut Connolly dan Begg (2005, p.304), Implementation
merupakan tahap merealisasikan basis data dan desain aplikasi yang
telah dibuat (dengan atau tanpa prototype). Implementasi basis data
dicapai dengan menggunakan DDL (Data Definition Language)
dari DMBS yang telah dipilih atau dengan menggunakan GUI
(Graphical User Interface), masing – masing menyediakan fungsi
ketika menyembunyikan statement DDL yang low – level.
Pernyataan DDL digunakan untuk menciptakan struktur basis data
dan mengosongkan file yang terdapat dalam basis data tersebut.
User View juga diterapkan dalam langkah ini.
Program aplikasi diterapkan dengan menggunakan bahasa
generasi keempat atau ketiga (4GL atau 3GL). Bagian dari program
aplikasi
ini
adalah
transaksi
basis
data
yang
diterapkan
menggunakan DDL (Data Manipulation Language).
9.
Data Conversion and Loading
Menurut
Connolly
dan
Begg
(2005,
p.305),
Data
Conversion and Loading merupakan tahap pemindahan semua data
yang telah dikumpulkan ke dalam sistem basis data dan mengubah
semua aplikasi yang ada untuk dijalakankan pada sistem basis data
yang baru.
10. Testing
Menurut Connolly dan Begg (2005, p.305), Testing
merupakan tahap pelaksanaan proses aplikasi dengan tujuan untuk
menemukan kesalahan yang ada. Dalam melakukan testing, para
44
pengguna harus dilibatkan untuk menguji proses aplikasi dan basis
data tersebut. Situasi yang ideal untuk pengujian sistem adalah
mempunyai suatu tes basis data pada suatu sistem perangkat keras,
tetapi ini sering tidak tersedia. Jika data real yang diharapkan untuk
digunakan, maka adalah penting untuk mempunyai backup. Setelah
pengujian diselesaikan, maka sistem aplikasi dan basis data ini telah
siap digunakan.
11. Operational Maintenance
Menurut Connolly dan Begg (2005, p.299), Operational
Maintenance merupakan tahap pengawasan dan pemeliharaan yang
melibatkan aktivitas – aktivitas berikut :
• Monitoring performance dari sistem. Jika performa berada
di suatu tingkatan yang bisa diterima, penyetelan atau
menyusun kembali basis data mungkin diperlukan.
•
Memelihara dan meningkatkan mutu aplikasi basis data.
Kebutuhan baru disatukan ke dalam aplikasi basis data
dengan mengikuti langkah – langkah sebelumnya yang
terdapat dalam database lifecycle.
Monitoring process akan terus berlanjut sepanjang seluruh
hidup suatu aplikasi basis data tesebut dan pada waktu tertentu
boleh melakukan penyusunan kembali basis data untuk mencukupi
kebutuhan dari sistem. Perubahan ini menyediakan informasi pada
evolusi sistem dan sumber daya pada masa yang akan datang yang
mungkin diperlukan. Hal ini memungkinkan seorang DBA untuk
45
terlibat dalam perencanaan kapasitas dan untuk memberitahu staff
senior siaga untuk melakukan penyesuaian rencana jika DBMS
kekurangan kegunaan tertentu, DBA dapat mengembangkan
kegunaan yang diperlukan akan memberi tools tambahan jika
tersedia.
2.1.5 Interaksi Manusia dan Komputer (IMK)
Menurut Dastbaz (2003, p108), interaksi manusia komputer tidak
terlepas dari istilah antar muka pemakai (user interface). Dastbaz juga
menjelaskan bahwa antarmuka pemakai adalah semua saluran informasi
yang memungkinkan pemakai dan komputer dapat saling berkomunikasi.
Interaksi Manusia dan Komputer (IMK) atau Human-Computer Interaction
(HCI) adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi,
dan implementasi sistem komputer interaktif untuk digunakan oleh manusia,
serta studi fenomena-fenomena besar yang berhubungan dengannya.
Delapan aturan emas (Shneiderman, 1998, p74-75):
1. Berusaha untuk konsisten
Urutan aksi yang konsisten diperlukan pada situasi yang
sama. Konsistensi juga harus digunakan pada prompt, menu, dan
layar bantu. Warna, tampilan layar, kapitalisasi, huruf dan
sebagainya juga harus konsisten.
2. Memungkinkan penggunaan shortcut
Memungkinkan
pemakai
untuk
mengurangi
interaksi dan untuk meningkatkan kecepatan interaksi.
3. Memberikan umpan balik yang informatif
jumlah
46
Untuk setiap tindakan yang dilakukan pemakai, diharapkan
adanya respon dari system.
4. Merancang dialog yang memberikan penutupan (keadaan akhir)
Urutan aksi harus disusun ke dalam kelompok awal,
tengah, dan akhir. Suatu umpan balik yang informatif pada akhir
pekerjaan sebaiknya dibuat untuk mengindikasikan bahwa
pekerjaan telah selesai dan siap untuk melanjutkan ke aksi
berikutnya.
5. Memberikan pencegahan kesalahan dan penanganan kesalahan
yang sederhana.
Sebisa
mungkin
dibuat
system
yang
tidak
akan
menghasilkan kesalahan yang serius jika digunakan oleh
pemakai. Jika pemakai membuat kesalahan, system tersebut
harus dapat mendeteksi kesalahan dan menawarkan instruksi
yang sederhana, konstruktif, dan spesifikasi untuk perbaikan.
6. Memungkinkan pembalikan aksi yang mudah.
Aksi yang telah dilakukan harus dapat dikembalikan ke
keadaan awal.
7. Mendukung pusat kendali internal (internal locus of control).
Menjadi pemakai sebagai pemberi aksi, bukan sebagai
orang yang merespon aksi.
8. Mengurangi beban ingatan jangka pendek.
47
Karena keterbatasan manusia dalam pemrosesan informasi
pada ingatan jangka pendek, sebaiknya tampilan dibuat
sederhana,
beberapa
halaman
dijadikan
satu,
frekuensi
pergerakan window dikurangi, dan harus ada waktu yang cukup
untuk mempelajari kode-kode, singkatan, serta urutan aksi.
Informasi seperti singkatan atau kode sebaiknya juga tersedia.
2.2 Teori Khusus
Teori-teori pendukung yang digunakan penulis dalam penulisan skripsi ini
antara lain:
2.2.1 Penjualan
Menurut Mulyadi ( 2001 , p202 ), kegiatan penjualan terdiri dari penjualan
barang dan jasa, baik secara kredit maupun secara tunai. Dalam transaksi
penjualan kredit, jika order dari pelanggan telah dipenuhi dengan pengiriman
barang atau penyerahan jasa, untuk jangka waktu tertentu perusahaan
memiliki piutang kepada pelanggannya. Dalam sistem penjulan secara tunai,
barang atau jasa baru diserahkan oleh perusahaan kepada pembeli jika
perusahaan telah menerima kas dari pembeli.
Menurut Mulyadi ( 2001 , p219 ), sistem dan prosedur yang bersangkutan
dengan sistem penjualan kredit adalah :
a. Prosedur order penjualan
Dalam prosedur ini, fungsi penjualan menerima order dari
pembeli dan menambahkan informasi penting pada surat order dari
pembeli. Fungsi penjualan kemudian
membuat surat order
pengiriman dan mengirimkannya kepada berbagai fungsi yang lain
48
untuk memungkinkan fungsi tersebut memberikan kontribusi dalam
melayani order dari pembeli.
b. Prosedur persetujuan kredit
Dalam prosedur ini, fungsi penjualan meminta persetujuan
penjualan kredit kepada pembeli tertentu dari fungsi kredit.
c. Prosedur pengiriman
Dalam prosedur ini, fungsi pengiriman mengirimkan barang
kepada pembeli sesuai dengan informasi yang tercantum dalam surat
order pengiriman yang diterima dari fungsi pengiriman.
d. Prosedur penagihan
Dalam prosedur ini, fungsi penagihan membuat faktur penjualan
dan mengirimkannya kepada pembeli. Dalam metode tertentu faktur
penjualan dibuat oleh fungsi penjualan sebagai tembusan pada waktu
bagian ini membuat surat order pengiriman.
e. Prosedur pencatatan puitang
Dalam prosedur ini, fungsi akuntansi mencatat tembusan faktur
penjualan ke dalam kartu piutang atau dalam metode pencatatan
tertentu mengarsipkan dokumen tembusan menurut abjad yang
berfungsi sebagai catatan piutang.
f. Prosedur distribusi penjualan
Dalam prosedur ini, fungsi akuntansi mendistribusikan data
penjualan menurut informasi yang diperlukan oleh manajemen.
g. Prosedur pencatatan harga pokok penjualan
49
Dalam prosedur ini, fungsi akuntansi mencatat secara periodik
total harga pokok produk yang dijual dalam periode akuntansi
tertentu.
2.2.2 Pembelian
Menurut Mulyadi ( 2001 , p299 ), sistem akuntansi pembelian
digunakan dalam perusahaan untuk pengadaan barang yang diperlukan oleh
perusahaan. Transaksi pembelian dapat digolongkan menjadi dua : pembelian
lokal dan impor. Pembelian lokal adalah pembelian dari pemasok dalam
negeri, sedangkan impor adalah pembelian dari pemasok luar negeri.
Menurut Mulyadi ( 2001 , p299 ), fungsi yang terkait dalam sistem
akuntansipembelian adalah :
1. Fungsi Gudang
Dalam sistem akuntansi pembelian, fungsi gudang bertanggung
jawab untuk mengajukan permintaan pembelian sesuai dengan posisi
persediaan yang ada digudang untuk menyimpan barang yang telah
diterima oleh fungsi penerimaan. Untuk barang–barang yang
langsung pakai (tidak diselenggarakan persediaan barang di gudang),
permintaan pembelian diajukan oleh pemakai barang.
2. Fungsi Pembelian
Fungsi pembelian bertanggung jawab untuk memperoleh
informasi mengenai harga barang, menentukan pemasok yang dipilih
50
dalam pengadaan barang, dan mengeluarkan order pembelian kepada
pemasok yang dipilih.
3. Fungsi Penerimaan
Dalam sistem akuntansi pembelian, fungsi ini bertanggung jawab
untuk melakukan pemeriksaan terhadap jenis, mutu, dan kuantitas
barang yang diterima dari pemasok guna menentukan dapat atau
tidaknya barang tersebut diterima oleh perusahaan.
4. Fungsi Akuntansi
Fungsi akuntansi yang terkait dalam transaksi pembelian adalah
fungsi pencatat utang dan fungsi pencatat persediaan. Dalam sistem
akuntansi pembelian, fungsi pencatat utang bertanggung jawab untuk
mencatat transaksi pembelian kedalam register bukti kas keluar dan
untuk menyelenggarakan arsip dokumen sumber (bukti kas keluar)
yang berfungsi sebagai catatan utang atau menyelenggarakan kartu
utang sebagai buku pembantu utang. Dalam sistem akuntansi
pembelian, fungsi pencatatan persediaan bertanggung jawab untuk
mencatat harga pokok persediaan barang yang dibeli ke dalam kartu
persediaan.
Menurut Mulyadi ( 2001 , p301 ), sistem dan prosedur yang bersangkutan
dengan sistem penjualan kredit adalah :
1. Prosedur permintaan pembelian
Dalam prosedur ini fungsi gudang mengajukan permintaan
pembelian dalam formulir surat permintaan pembelian kepada fungsi
pembelian. Jika barang itu tidak disimpan di gudang, misalnya untuk
51
barang–barang yang langsung dipakai, fungsi yang memakai barang
mengajukan permintaan pembelian langsung ke fungsi pembelian
dengan menggunakan surat permintaan pembelian.
2. Prosedur permintaan penawaran harga dan pemilihan pemasok
Dalam prosedur ini, fungsi pembelian mengirimkan surat
permintaan penawaran harga kepada pemasok untuk memperoleh
informasi mengenai harga barang dan berbagai syarat pembelian
yang lain, untuk memungkinkan pemilihan pemasok yang akan
ditunjuk sebagai pemasok barang yang diperlukan oleh perusahaan.
3. Prosedur order pembelian
Dalam prosedur ini fungsi pembelian mengirim surat order
pembelian kepada pemasok yang dipilih dan memberitahukan kepada
unit - unit organisasi lain dalam perusahaan (misalnya fungsi
penerimaan, fungsi yang memintabarang, dan fungsi pencatat utang)
mengenai order pembelian yang sudah dikeluarkan oleh perusahaan.
4. Prosedur penerimaan barang
Dalam prosedur ini, fungsi penerimaan melakukan pemeriksaan
mengenai jenis, kuantitas, dan mutu barang yang diterima dari
pemasok, dan kemudian membuat laporan penerimaan barang untuk
menyatakan penerimaan barang dari pemasok tersebut.
5. Prosedur pencatatan utang
Dalam prosedur ini fungsi akuntansi memeriksa dokumen–
dokumen yang berhubungan dengan pembelian (surat order
pembelian, laporan penerimaan barang, dan faktur dari pemasok) dan
52
menyelenggarakan pencatatan utang atau mengarsipkan dokumen
sumber sebagai catatan utang.
6. Prosedur distribusi pembelian
Prosedur ini meliputi distribusi rekening yang didebit dari
transaksi
pembelian
untuk
kepentingan
pembuatan
laporan
manajemen. Menurut Mulyadi (2001,p335), adapun barang yang
sudah diterima dari pemasok terkadang tidak sesuai dengan barang
yang dipesan menurut surat order pembelian. Ketidaksesuaian itu
terjadi kemungkinan karena barang yang diterima tidak cocok dengan
spesifikasi yang tercantum dalam surat order pembelian, barang
mengalami kerusakan dalam pengiriman, atau barang diterima
melewati tanggal pengiriman yang dijanjikan oleh pemasok.
2.2.3 PHP
PHP (PHP : Hypertext Preprocessor) merupakan skrip untuk membuat
suatu aplikasi yang dapat diintegrasikan ke dalam halaman HTML, sehingga
suatu halaman web tidak lagi bersifat statis, namun menjadi bersifat dinamis
Wahyono (2005, p3). Penemu PHP (dulu Personal Home Pages) adalah
Rasmus Lerdorf. Pada tahun1995, versi pertama PHP dirilis ke masyarakat
umum Allen dan Hornberger ( 2002,XIX).
Keunggulan dari PHP Wahyono (2005, p4) :
1. Source program tidak dapat dilihat dengan menggunakan fasilitas view
HTML source yang ada pada web browser.
53
2. Script tersebut dapat memanfaatkan sumber-sumber aplikasi yang
dimiliki oleh server, seperti untuk keperluan database connection.
3. Aplikasi tidak memerlukan kompatibilitas browser atau harus
menggunakan browser tertentu, karena server yang akan mengerjakan
skrip PHP dan hasilnya akan dikirim kembali ke web browser.
4. PHP dapat melakukan semua aplikasi program CGI, seperti mengambil
nilai form, mengirimkan dan menerima cookie.
2.2.4 MySQL
MySQL adalah salah satu jenis database server yang sangat terkenal.
Kepopulerannya disebabkan MySQL menggunakan SQL sebagai bahan dasar
untuk mengakses database-nya. Selain itu, ia bersifat freeware pada berbagai
platform (kecuali pada windows, yang bersifat shareware). Perangkat lunak
MySQL
sendiri
bisa
di-download
dari
http://www.mysql.org
atau
http://www.mysql.com.MySQL termasuk jenis RDBMS (Relational Database
Management System). Itulah sebabnya istilah seperti table, baris, dan kolom
digunakan pada MySQL. Pada MySQL, sebuah database mengandung satu
atau sejumlah table. Tabel terdiri atas sejumlah baris dan setiap baris
mengandung satu atau beberapa kolom (Nugroho2004, p29)
Dulu, MySQL dikenal dengan mini SQL yang dikembangkan oleh
MySQL AB (Perusahaan IT Swedia) sejak tahun 1979 dibawah komando
Michael Widenius Monty. MySQL release 1.0 dikeluarkan Mei 1996 secara
terbatas untuk kalangan sendiri. Baru dilepas untuk publik bulan Oktober 1996
setelah muncul versi 3(Wahyono 2005, p5).
2.2.5 StateTransitionDiagram (STD)
54
Menurut Pressman ( 2001 , p302 ), State Transition Diagram merupakan
suatu diagram yang menggambarkan bagaimana state dihubungkan dengan
state yang lain pada satu waktu. State Transition Diagram menunjukkan
bagaimana sistem bekerja sebagai akibat dari kejadian eksternal. Untuk
melakukan hal itu, State Transition Diagram menampilkan model yang
bermacam-macam dari tindakan sebuah sistem dan dibuat dari state ke state.
Komponen dasar State Transition Diagram antara lain:
State1
State
Transition
Menyatakan state tertentu.
Menyatakan perubahan state.
Download